FCPを改善

| 項目 | 状態 |
|------|------|
| GZIP圧縮(必須) | 効果なし(既にBrotli圧縮済み) |
| Public CDNの利用 | 適用済み(実測FCP -576ms) |
| 別ドメインからのCSS配信 | 適用済み(CDN同一ドメイン化の一部) |
| CSSファイルが多い(21本) | 効果なし(結合しても+8ms。HTTP/2で解消済み) |
| 不使用CSS | 効果なし(57%削減しても+6ms。Brotli圧縮済みのため) |
| head内の同期script(26本) | 適用済み(実測FCP -52ms) |
| TTFBが遅い(993ms) | 適用済み(100msに短縮で実測FCP -912ms) |
| preload / prefetch / preconnect | 効果なし(実測+3ms。不採用) |
| CSSの @import | 該当なし(0件) |
| document.write | 該当なし(0件) |
| Google Optimize の async-hide | 該当なし(0件) |
| JSによるCSSの動的追加 | 該当なし(0件) |
| visibility:hidden / opacity:0 による全体非表示 | 該当なし(0件) |

実測FCP: 1718ms → 182ms(-1536ms)

効果があったのは3施策のみで、効果の大きさは桁違いだった。

| プラクティス | 実測FCPの改善 | 実現に必要なこと |
|--------------|--------------|-----------------|
| HTML本体のTTFB短縮(993→100ms) | -912ms | サーバ改修 |
| Public CDNの同一ドメイン化 | -576ms | ファイル配置のみ |
| head内scriptのbody末尾移動 | -52ms | テンプレート修正のみ |

CSS結合・不使用CSS削減・GZIPはいずれも効果がなかった。

CDN同一ドメイン化以降、Lantern(Lighthouseのシミュレーション推定器)が
HTML本体のTTFB 993msと矛盾するFCP 67msを出力するようになったため、
本フェーズの評価はトレース実測値(observedFirstContentfulPaint)で行った。

css/sys/sb_block_goods.css の最後のルールが閉じ括弧なしで終わっている。
単独配信時は無害だが、CSSを結合・バンドルすると後続9ファイルが飲み込まれ
大規模な表示崩れを起こす(実際にDiff 58.80%を観測)。

実測FCP: 182ms
実測LCP: 297ms
実測SI: 280ms
CLS: 0.000
TBT: 0ms
Overall Score: 100