@charset "UTF-8";
/* fiz-css-bundle e5f845ce28bb4309a1f5ae768503681f */
/* 自動でまとめたファイル（inc/css-bundle.php）。直すときは元のファイルを直す。ここを直しても次に作り直されて消える */

/* ---- /assets/styles/css/page/service-influencer.css ---- */
/* ============================================================
   インフルエンサーマーケティング ページ専用CSS（2026-09-23 まとめ）
   共通ルールは service-common.css に集約。ここには本ページだけのルールが残る。
   色・文字サイズ・太さ・余白・角丸などの決まりの値は fiz-tokens.css（src/tokens.css の写し）を使う。
   ============================================================ */

/* 見出し（.svc-hero__title）と画像の入れ方（.svc-hero__visual img）は5ページ共通のため service-parts/hero.css へ移動（2026-09-24）。
   このページだけ違う所（見出しの折り返し）だけ、ここで上書きする */
.svc-hero__title {
  word-break: keep-all; /* 見出しは途中で折らない。折ってよい位置は HTML の <wbr>（インフルエンサー｜マーケティング）だけ。「グ」だけ落ちると本人指摘（2026-09-17） */
}

/* ここには読み込み待ちの背景色だけ残す */
.svc-hero__visual {
  background: #eee; /* 画像（sns-hero.png）はまだ書き出されていない。読み込みに失敗している間、この背景色が薄い灰色の枠として見える（2026-09-16） */
}

/* ---- 改善フロー図（画像ではなくHTML/CSSで組む。Figma: 白背景＋赤帯タイトル＋黒文字リード＋縦の流れ図） ---- */
.svc-reason__flow {
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  padding: 32px 20px;
  color: var(--color-text);
}

.svc-reason__flow-badge {
  white-space: nowrap; /* 「ー」だけ次の行に落ちるのを防ぐ。折る位置は <br class="svc-br-sp"> で決める（2026-09-17 本人指摘・390px幅） */
  background: var(--color-primary); /* 2026-09-24 本人決定: 赤は差し色として使う（名札の帯） */
  color: var(--color-white);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  border-radius: var(--radius-sm);
  padding: 10px 20px;
  margin: 0 0 16px;
}

.svc-reason__flow-lead {
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  margin: 0 0 24px;
  text-align: center;
}

.svc-flowchart {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.svc-flowchart__step {
  width: 100%;
  max-width: 320px;
  background: var(--color-white);
  color: var(--color-text);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 12px 16px;
  text-align: center;
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  position: relative;
}

/* Figma: 最初の「事業目標」だけ黒地白文字 */
.svc-flowchart__step--dark {
  background: #111111;
  border-color: #111111;
  color: var(--color-white);
}

/* Figma: 途中の「クリエイティブ」だけ赤地白文字（2026-09-24 本人決定: 赤は差し色として使う） */
.svc-flowchart__step--accent {
  background: var(--color-primary); /* 2026-09-24 本人決定: 赤は差し色として使う */
  border-color: var(--color-primary);
  color: var(--color-white);
}

.svc-flowchart__step--branch {
  background: transparent;
  border: none;
  padding: 0;
  max-width: 100%;
}

.svc-flowchart__parallel {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  gap: 12px;
}

.svc-flowchart__parallel li {
  background: var(--color-white);
  color: var(--color-text);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 12px 16px;
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  width: 160px;
  text-align: center;
}

/* 文字揃えの固定（5ページ共通ぶん）は service-parts/text-align.css へ移動（2026-09-24） */

.svc-flowchart__step:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -11px;
  width: 2px;
  height: 10px;
  background: var(--color-border);
  transform: translateX(-50%);
}

/* sns専用: 改善フロー図（BRAND〜UGCの5段）。
   Figma（PC-sns-要素一覧.md 131〜176行）は「箱を積んで線でつなぐ」Meta の図ではなく、
   帯（グラデーション・中央 668px・白 24px）→ 1行のリード → 5行の表（左にグラデーションのタグ 133×38、右に見出し 24px＋説明 15px）。
   行の枠・つなぐ線・赤い強調の段は無い。最初は Meta の作りを流用していたが本人指摘で作り直した（2026-09-16） */
.svc-reason__flow--plain {
  border: 0;               /* Figma は白い面だけで枠線が無い */
  padding: 32px 0;
}

.svc-reason__flow--plain .svc-reason__flow-badge {
  background: var(--color-primary); /* 主ボタンと同じグラデーション（Figma id 3:9213） */
  clip-path: polygon(23px 0, 100% 0, calc(100% - 23px) 100%, 0 100%); /* 平行四辺形（Figma の path：横 23px／縦 33px の傾き） */
  border-radius: 0;
  text-align: center;
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  padding: 6px 16px;
  margin: 0 auto 24px;
  max-width: 668px;
}

.svc-reason__flow--plain .svc-reason__flow-lead {
  font-size: 15px;
  margin-bottom: 32px;
}

.svc-flowchart--detailed {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 20px;
  max-width: 567px;        /* Figma の表の幅 */
  margin: 0 auto;
}

.svc-flowchart--detailed .svc-flowchart__step {
  max-width: none;
  display: grid;
  grid-template-columns: 110px 1fr;
  column-gap: 12px;
  align-items: start;
  background: none;
  border: 0;
  border-radius: 0;
  padding: 0;
  text-align: left;
}

.svc-flowchart--detailed .svc-flowchart__step::after {
  display: none; 
}

/* つなぐ線は無い */
.svc-flowchart__tag {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  background: linear-gradient(90deg, #c10000 0%, #3a3838 100%); /* Figma id 3:9182：左が赤、右が黒 */
  clip-path: polygon(20px 0, 100% 0, calc(100% - 20px) 100%, 0 100%); /* 平行四辺形（Figma の path：横 20px／縦 38px の傾き）。FIZ のロゴと同じ右上がり */
  color: var(--color-white);
  font-family: var(--font-en);
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  letter-spacing: .5px;
  border-radius: 0;
  padding: 3px 8px 0; /* Josefin Sans は字が行の上寄りに置かれるため、上の余白を足して見た目の中央に合わせる。本番の CONTACT ボタン（上15/下12）と同じ考え方（2026-09-17 本人指摘） */
  line-height: 1;
  margin: 2px 0 0;
  grid-row: 1 / span 2;
}

.svc-flowchart__step strong {
  display: block;
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  line-height: 1.3;
  margin: 0 0 4px;
}

.svc-flowchart__step p {
  margin: 0;
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-normal);
  color: var(--color-dark-sub);
  line-height: 1.5;
}

/* Meta 由来の「赤い強調の段」は、この図では使わない */
.svc-flowchart--detailed .svc-flowchart__step--accent {
  background: none;
  color: var(--color-text);
}

/* ============================================================
   「選ばれる理由」下の図（sns.cssには無い新規セクション）
   出典: Figma influencer-02.png（帯 → 赤字4項目(2列) → まとめ1行 → 大アイコン2つ）
   sns.cssの .svc-reason__flow-badge のグラデーション帯スタイルを踏襲しつつ、
   svc-flowchart系（箱を積む図）は使わず、influencer.css側にだけ追加するクラス（2026-09-17）
   ============================================================ */
.svc-reason__combo {
  margin-top: var(--space-8);
  text-align: center;
}

.svc-reason__combo .svc-reason__flow-badge {
  /* sns.css既存の帯スタイル（平行四辺形グラデーション）をそのまま流用。
     元の .svc-reason__flow-badge は1行前提のwhite-space:nowrapだが、この帯は文言が長いため
     normalで上書きして折り返す。念のためbreak-wordも指定（2026-09-17） */
  background: var(--color-primary);
  clip-path: polygon(23px 0, 100% 0, calc(100% - 23px) 100%, 0 100%);
  border-radius: 0;
  font-size: 15px;
  font-weight: var(--font-weight-bold);
  padding: 12px 24px;
  margin: 0 auto 24px;
  max-width: 480px;
  white-space: nowrap; /* 決め台詞なので途中で折らない。スマホは「＝突き抜ける結果」の前だけで折る（2026-09-17 本人指示） */
  overflow-wrap: anywhere;
  line-height: 1.5;
}

.svc-reason__combo-points {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  display: grid;
  gap: 10px 24px;
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.svc-reason__combo-points li {
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  color: #212121; /* 2026-09-24 本人決定: 飾りの赤を減らす */
}

.svc-reason__combo-num {
  margin-right: 2px;
}

.svc-reason__combo-summary {
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  margin: 0 0 32px;
  text-align: center; /* 本番の共通 CSS が全要素を両端揃えにするため、親の中央指定が効かない。段落自身に中央を指定（2026-09-17 本人指摘） */
}

.svc-reason__combo-icons {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: var(--space-48);
  flex-wrap: wrap;
}

.svc-reason__combo-icon-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 140px;
}

.svc-reason__combo-icon {
  display: inline-flex;
  width: 64px;
  height: 64px;
}

.svc-reason__combo-icon svg {
  width: 100%;
  height: 100%;
}

.svc-reason__combo-icon-item p {
  text-align: center; /* 同上 */
  margin: 0;
  font-size: var(--font-size-min);
  font-weight: var(--font-weight-bold);
  color: #212121; /* 2026-09-24 本人決定: 飾りの赤を減らす */
  line-height: var(--line-height-heading);
}

@media (min-width: 768px) {
  .svc-flowchart__step,
    .svc-flowchart__parallel li {
      font-size: 15px;
    
  }

  .svc-reason__combo-points {
      grid-template-columns: repeat(2, 1fr);
    
  }

}

@media (min-width: 1024px) {
  /* グリッド型 flow（.svc-flow--grid）の PC 見た目は service-parts/flow.css へ移動（2026-09-24。SNS・インフルエンサー・クリエイティブの3ページで同じ指定だったため） */

  .svc-reason__flow {
      padding: var(--space-40);

  }

  .svc-reason__flow--plain {
      padding: 40px 0 24px;

  }

  .svc-reason__flow--plain .svc-reason__flow-badge {
      font-size: 24px;
      padding: 4px 16px;   /* Figma: 帯の高さ 33px */
      margin-bottom: 38px;

  }

  .svc-flowchart--detailed {
      gap: 25px;           /* Figma: 行の間隔 25px */

  }

  .svc-flowchart--detailed .svc-flowchart__step {
      grid-template-columns: 133px 1fr;
      column-gap: 14px;

  }

  .svc-flowchart__tag {
      height: 38px;
      font-size: 15px;
      margin-top: 5px;

  }

  .svc-flowchart__step strong {
      font-size: 24px;

  }

  .svc-flowchart__step p {
      font-size: 15px;

  }

  .svc-reason__combo .svc-reason__flow-badge {
      font-size: 20px;
      padding: 10px 24px;
      max-width: 620px;
      margin-bottom: 32px;
    
  }

  .svc-reason__combo-points {
      font-size: 15px;
      margin-bottom: 32px;
    
  }

  .svc-reason__combo-points li {
      font-size: 15px;
    
  }

  .svc-reason__combo-summary {
      font-size: 15px;
      margin-bottom: var(--space-40);
    
  }

  .svc-reason__combo-icon {
      width: 96px;
      height: 96px;
    
  }

  .svc-reason__combo-icon-item {
      width: 200px;
    
  }

  .svc-reason__combo-icon-item p {
      font-size: 18px;
    
  }

}

/* ---- /assets/styles/css/service-parts/motion.css ---- */
/* ============================================================
   サービスの絵の動き・共通の所（2026-10-21 meta から）
   使う場所：サービス各ページのヒーロー（template-parts/service/hero.php）と、サービス一覧の行（service-row.php）。
   飾りの組み方は template-parts/service/motion-<名前>.php、絵ごとの動きは service-parts/motion-<名前>.css。
   飾りのファイルがある絵だけ動く。読み込みは functions.php（飾りのファイルがあるページだけ、この CSS と絵ごとの CSS を読む）。
   決まり：
   - 動きは5秒以内に全部止める。自動で5秒を超えて動き続けるものには止める手段が要るため（WCAG 2.2.2）。
     止めるボタンを付ける案もあったが、見た目を変えずに済む「自動で止める」を本人が選んだ（2026-10-21）
   - 赤は小さな目印だけ（tokens.css の赤の使い方の決まり）
   - 重くしない：画像・JS・書体を足さない。動きは位置と透明度の変化を基本にする
   ============================================================ */

/* 絵と飾りをまとめて包む箱。全体がふわっと1回浮く */
.svc-motion__float {
  position: relative;
  animation: svc-motion-float 4s ease-in-out 1 both;
}

/* ヒーローは画像を枠に絶対配置で入れている（meta は切り抜き）ので、包む箱も枠いっぱいにする */
.svc-hero__visual > .svc-motion__float {
  position: absolute;
  inset: 0;
}

/* 一覧の行は画像が流れの中にあり、最大幅が 460px（service-row.css の .svc-service__img と同じ）。
   包む箱も同じ幅にして、行が 460px より広いときに飾りが画像からずれないようにする */
.svc-service__media > .svc-motion__float {
  width: 100%;
  max-width: 460px;
}

/* 飾りの層（SVG）。絵と同じ枠に重ねる */
.svc-motion__fx {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}

@keyframes svc-motion-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

/* 一覧の行：画像が画面に半分入るまで止めておく（外すのは service-pages.js）。
   一覧は下に長く、読み込んですぐ動かすと、下の行は見る前に5秒たって止まってしまうため。
   JS が動かないときは止まったまま＝静止画で出る（飾りは最初の透明な状態のまま）。
   絵ごとの CSS が後から animation を書くので、クラス2つ分の強さで止める */
.svc-motion__float.svc-motion--wait,
.svc-motion--wait .svc-motion__fx * {
  animation-play-state: paused;
}

/* 端末で「視差効果を減らす」を設定している人には、動きを出さず静止画だけにする */
@media (prefers-reduced-motion: reduce) {
  .svc-motion__float {
    animation: none;
  }
  .svc-motion__fx {
    display: none;
  }
}

/* ---- /assets/styles/css/service-parts/motion-influencer.css ---- */
/* ============================================================
   インフルエンサーマーケティングの絵の動き（2026-10-21）
   飾りの組み方は template-parts/service/motion-influencer.php、どの絵でも同じ所は service-parts/motion.css。
   インフルエンサーマーケティングのページと、サービス一覧で読み込む（functions.php）。一覧では他の絵の CSS と一緒に読むので、クラス名と動きの名前に influencer を入れる。
   見本（fiz-seo-llmo/会社の案件-FIZ/design/絵の動き/見本-インフルエンサー.html）の「おすすめの組み合わせ」と同じ動き。
   見本から変えたのは書き方だけ：Safari でも同じに動くよう、CSS の変数で決めていた始まる時刻を飾りごとの値に直した（ブラウザで実際に当たっていた値を写した）。
   始まる時刻：真ん中の輪 0秒・線を走る光 0.3秒（1.4秒に全員へ届く）・輪を回る光 1.4秒・赤い玉 2.4秒。最後は3つ目の玉の輪が 4.6秒で消える（5秒以内）
   ============================================================ */

/* 輪の飾りは、自分の中心を軸に大きさを変える。最初は見えない */
.svc-motion-influencer__ripple,
.svc-motion-influencer__node,
.svc-motion-influencer__person,
.svc-motion-influencer__ball {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 0;
}
.svc-motion-influencer__run,
.svc-motion-influencer__orbit {
  opacity: 0;
}

/* 真ん中の人から広がる輪（0秒と 0.7秒に1つずつ・2秒） */
.svc-motion-influencer__ripple { animation: svc-motion-influencer-ripple 2s ease-out 1 both; }
.svc-motion-influencer__ripple--2 { animation-delay: .7s; }
@keyframes svc-motion-influencer-ripple {
  0% { opacity: 0; transform: scale(.55); }
  8% { opacity: .9; transform: scale(.62); }
  100% { opacity: 0; transform: scale(1.55); }
}

/* 5本の線を走る光（0.3秒から 2.2秒・線ごとに長さが違うので、動きも線ごと） */
.svc-motion-influencer__run { animation: 2.2s linear .3s 1 both; }
.svc-motion-influencer__run--tl { animation-name: svc-motion-influencer-run-tl; }
.svc-motion-influencer__run--top { animation-name: svc-motion-influencer-run-top; }
.svc-motion-influencer__run--tr { animation-name: svc-motion-influencer-run-tr; }
.svc-motion-influencer__run--br { animation-name: svc-motion-influencer-run-br; }
.svc-motion-influencer__run--bl { animation-name: svc-motion-influencer-run-bl; }
@keyframes svc-motion-influencer-run-tl {
  0% { stroke-dashoffset: 14; opacity: 0; }
  4% { opacity: 1; }
  51.7% { opacity: 1; }
  55.7%, 100% { stroke-dashoffset: -71.8; opacity: 0; }
}
@keyframes svc-motion-influencer-run-top {
  0% { stroke-dashoffset: 14; opacity: 0; }
  4% { opacity: 1; }
  24.62% { opacity: 1; }
  28.62%, 100% { stroke-dashoffset: -30.1; opacity: 0; }
}
@keyframes svc-motion-influencer-run-tr {
  0% { stroke-dashoffset: 14; opacity: 0; }
  4% { opacity: 1; }
  52.64% { opacity: 1; }
  56.64%, 100% { stroke-dashoffset: -73.2; opacity: 0; }
}
@keyframes svc-motion-influencer-run-br {
  0% { stroke-dashoffset: 14; opacity: 0; }
  4% { opacity: 1; }
  33.93% { opacity: 1; }
  37.93%, 100% { stroke-dashoffset: -44.4; opacity: 0; }
}
@keyframes svc-motion-influencer-run-bl {
  0% { stroke-dashoffset: 14; opacity: 0; }
  4% { opacity: 1; }
  55.4% { opacity: 1; }
  59.4%, 100% { stroke-dashoffset: -77.5; opacity: 0; }
}

/* 線の途中の点に出る小さな輪（光が通る時刻に合わせて始まる） */
.svc-motion-influencer__node { animation: svc-motion-influencer-node 2.2s linear 1 both; }
.svc-motion-influencer__node--1 { animation-delay: .39s; }
.svc-motion-influencer__node--2 { animation-delay: .79s; }
.svc-motion-influencer__node--3 { animation-delay: .42s; }
.svc-motion-influencer__node--4 { animation-delay: .53s; }
.svc-motion-influencer__node--5 { animation-delay: 1.02s; }
.svc-motion-influencer__node--6 { animation-delay: 1.3s; }
.svc-motion-influencer__node--7 { animation-delay: .59s; }
.svc-motion-influencer__node--8 { animation-delay: .71s; }
.svc-motion-influencer__node--9 { animation-delay: 1.11s; }
@keyframes svc-motion-influencer-node {
  0% { opacity: 0; transform: scale(.6); }
  2% { opacity: .9; transform: scale(.6); animation-timing-function: ease-out; }
  43.18%, 100% { opacity: 0; transform: scale(2.4); }
}

/* 光が着いた人の丸のまわりに出る輪 */
.svc-motion-influencer__person { animation: svc-motion-influencer-person 2.2s linear 1 both; }
.svc-motion-influencer__person--1 { animation-delay: 1.33s; }
.svc-motion-influencer__person--2 { animation-delay: .73s; }
.svc-motion-influencer__person--3 { animation-delay: 1.35s; }
.svc-motion-influencer__person--4 { animation-delay: .93s; }
.svc-motion-influencer__person--5 { animation-delay: 1.41s; }
@keyframes svc-motion-influencer-person {
  0% { opacity: 0; transform: scale(1); }
  2% { opacity: .9; transform: scale(1); animation-timing-function: ease-out; }
  47.73%, 100% { opacity: 0; transform: scale(1.6); }
}

/* 真ん中をかこむ輪を回る光（1.4秒から 2.6秒でひと回り） */
.svc-motion-influencer__orbit { animation: svc-motion-influencer-orbit 2.6s linear 1.4s 1 both; }
@keyframes svc-motion-influencer-orbit {
  0% { stroke-dashoffset: 90; opacity: 0; }
  3% { opacity: 1; }
  97% { opacity: 1; }
  100% { stroke-dashoffset: -594.3; opacity: 0; }
}

/* 赤い玉のまわりの輪（2.4秒・2.8秒・3.2秒から 1.4秒） */
.svc-motion-influencer__ball { animation: svc-motion-influencer-ball 1.4s linear 1 both; }
.svc-motion-influencer__ball--1 { animation-delay: 2.4s; }
.svc-motion-influencer__ball--2 { animation-delay: 2.8s; }
.svc-motion-influencer__ball--3 { animation-delay: 3.2s; }
@keyframes svc-motion-influencer-ball {
  0% { opacity: 0; transform: scale(.85); }
  8% { opacity: .95; transform: scale(1); animation-timing-function: ease-out; }
  100% { opacity: 0; transform: scale(1.9); }
}
