『Webフォント』って、ぶっちゃけ何のことか、説明できますか?
株式会社Cameen 西村温裕ことおんゆーです。
- Webフォントとは「綺麗なフォントを表示する仕組み」ではなく「デバイス非依存で文字表現を統一する技術」のこと
- 本質は見た目ではなく、ブランド表現の一貫性とCore Web Vitalsへの影響
- Webフォント運用で必須の4設定(サブセット化・font-display・preload・fallback設計)
- 日本語Webフォントが欧文より100倍重い理由とサブセット化の方法
- @font-face→Variable Fontsまでの実装技術の全体像
近年、Webサイト制作の現場ではブランド表現の一貫性が重視されるようになりました。Google Fonts・Adobe Fonts・FONTPLUS・TypeSquare、こういうWebフォントサービスを使うのが標準的な制作工程になっています。
でも、いざ「Webフォントって具体的に何の技術?」「@font-faceとどう違う?」「日本語Webフォントが重いのはなぜ?」と聞かれると、答えに詰まる方が多いんですよね。「フォントをWebで使う仕組み」という認識で止まって、Webフォントの本質的な役割と運用設計まで理解している人は意外と少ない。これ、自分だけだと思ってませんか?
うちの事業ではWordPressサイト6サイトを運用していて、Webフォントの選定・実装・パフォーマンス調整を何度も繰り返してきました。その中で見えてきたのは、Webフォントは単なる「綺麗なフォント表示」ではなく、「デバイスやOSに依存せずブランド表現を統一する技術」だということ。見た目を整えることが目的ではなく、どの端末で見ても同じ印象を与えることが本質です。
もう1つ繰り返し観察したのは、「Webフォントの設定を雑にやってCore Web Vitalsを破壊するサイト」が圧倒的に多いという事実。日本語フルセットのフォントを何も考えずに読み込むと、LCP(Largest Contentful Paint)が5秒を超えてSEO評価が下がります。Webフォントはデザインだけでなくパフォーマンス設計が決定的に重要な領域です。
今回はその「今さら聞けないWebフォント」を、表面的な解説ではなく、デバイス非依存の技術構造と日本語対応の壁、運用上必須の4設定まで一気に深掘りしていきます。読み終わる頃には、自分のサイトでWebフォントをどう設計すべきか、サブセット化からfallback設計まで紙に書き出せるレベルになっているはずです。
結論:Webフォントの核心は「綺麗なフォント」ではなく「デバイス非依存のブランド表現統一」
Webフォントは、よく「Web上で綺麗なフォントを表示する技術」と説明されるんですが、これだとWebフォントの本質が見えません。本当の意味はもっと別のところにあります。
Webフォントの本当の正体は、「ユーザー端末にインストールされているフォントに依存せず、Webサーバーから配信したフォントファイルでブランド表現の一貫性を保証する技術」のことです。単なるデザイン強化技術ではなく、デバイス・OS・ブラウザの違いを吸収して、誰が見ても同じ文字表現を実現する仕組みです。
業界の体感として、Webフォント未使用のサイトはOSごとに全く違う印象になります。Windowsでは「游ゴシック」、macOSでは「ヒラギノ角ゴ」、iOSでは「San Francisco」、Androidでは「Noto Sans」が表示され、同じサイトでもデバイスごとに別物に見えてしまう。Webフォントはこの問題を根本から解決する技術です。
Webフォントの技術的な実装は、CSS3の@font-face仕様(2009年策定)が起点。サーバーに置いたフォントファイル(woff/woff2形式)をブラウザがダウンロードし、ページ内のテキストに適用します。Google Fonts(2010年公開)、Adobe Fonts(旧Typekit)、日本語特化のFONTPLUS・TypeSquareなどのサービスが普及し、現在では大多数のWebサイトがWebフォントを採用しています。
Webフォントの真の価値は見た目ではなく、ブランド体験の一貫性とCore Web Vitalsとの兼ね合いの設計です。日本語Webフォントは欧文と比べて圧倒的にファイルサイズが大きく(後述しますが100倍程度の差があります)、雑に実装するとLCP・FCPが破綻します。デザインとパフォーマンスのバランス設計が、Webフォント運用の決定的な分かれ目です。
なぜ「Web Fonts」と名付けられたのか
もう少し深く掘ります。なぜこの技術は「Webフォント(Web Fonts)」と名付けられたのか。命名の背景を整理します。
「Web Fonts」はそのまま「Web上のフォント」という意味なんですが、命名のニュアンスには「ローカル端末ではなくWeb経由で取得するフォント」という対比が込められています。それまでのWebサイトは、ユーザーのOSにインストール済みのフォント(system fonts)に依存していました。Webフォントは、この依存関係を逆転させる技術です。
Webフォントの技術的起点は、2009年のCSS3仕様策定。W3C(World Wide Web Consortium)が@font-face仕様を正式採択し、ブラウザがフォントファイルをHTTP経由でダウンロードして適用できるようになりました。それ以前は、ブラウザのフォント描画はOS依存で、Webデザイナーは「どの端末でも安全なフォント(Arial・Times New Romanなど)」しか使えませんでした。
業界の転換点は2010年。Google Fonts(当初Google Web Fonts)が無料で多数のフォントを公開し、誰でも簡単にWebフォントを使える環境が整いました。同時期にAdobe Typekit(現Adobe Fonts)が商用フォントのWeb配信を開始し、デザイナーが商用フォントをWebサイトで使えるエコシステムが完成しました。
日本語Webフォントの普及は欧文より遅れて、2012年頃から本格化しました。FONTPLUS(ソフトバンク・テクノロジー)・TypeSquare(モリサワ)などの専門サービスが、日本語フォントのライセンス問題と巨大ファイルサイズ問題を解決するためのサブセット配信技術を整備。これにより、日本語サイトでもWebフォント活用が現実的になりました。
業界の体感として、現在はWebサイトの90%以上が何らかのWebフォントを採用しています。Google Fontsの統計では月間50兆回のリクエストが処理されているという数字もあり、Webフォントは事実上のWeb標準技術になりました。
技術仕様も進化を続けていて、フォントファイル形式はTTF→EOT→WOFF→WOFF2と圧縮効率が改善され、現在の標準WOFF2は元のフォントファイルから30〜50%サイズを削減できます。さらにVariable Fonts(2016年〜)では1ファイルで複数のウェイト・スタイルを扱えるようになり、Webフォントの運用効率が一段階向上しました。
Webフォント実装の現場で何が起きているか
Webフォント実装の現場で、具体的に何が起きているか。5段階で整理します。
ステージ1:フォント選定とブランド設計
制作の最初の段階は、ブランドに合うフォントの選定。和文ゴシック(Noto Sans JP・Source Han Sans・ヒラギノ角ゴ)、和文明朝(Noto Serif JP・Source Han Serif)、欧文サンセリフ(Inter・Roboto・Helvetica)、欧文セリフ(Garamond・Georgia)、こういう選択肢から事業の性格に合わせて2〜3種類を選びます。
フォント選定でよくある失敗は「デザイナーの好み」で決めること。本来は、ブランドガイドラインで定めた「信頼系」「ポップ系」「和風」などのトーンと、可読性(本文用)・表現力(見出し用)のバランスから論理的に選びます。ターゲット読者の年齢層・閲覧端末も判断軸になります。
ステージ2:ライセンス確認と配信方式の決定
フォント選定後は、必ずライセンス確認。Google Fonts(無料・SIL OFL)、Adobe Fonts(契約サブスク)、商用フォント(モリサワ・フォントワークス)、こういう違いを確認します。商用利用可否・ページビュー上限・ドメイン制限、すべてライセンスで規定されています。
配信方式は3パターン。(1)CDN経由(Google Fonts・Adobe Fonts)、(2)セルフホスト(自サーバーに配置)、(3)ハイブリッド(主要フォントはCDN・補助はセルフ)。CDNは設定が簡単だが3rd-partyドメインへのリクエストが発生、セルフホストはパフォーマンス制御しやすいがファイル管理が必要です。
ステージ3:CDN/セルフホスト判断とCSS実装
配信方式が決まったら、CSS実装。CDN経由ならlinkタグで読み込み、セルフホストなら@font-face宣言でフォントファイルパスを指定します。フォントファミリー名・ウェイト・スタイル・サブセット範囲、すべてCSSで明示的に記述します。
業界の事故例として多いのが、不要なフォントウェイトを全部読み込んでしまうケース。Light(300)・Regular(400)・Medium(500)・Bold(700)・Black(900)を全部読み込むと、実際には使わないウェイトでもファイルがダウンロードされます。「使うウェイトだけ明示する」が基本原則です。
ステージ4:font-display設定とfallback設計
Webフォント実装の核心が、font-display設定とfallback設計。font-display: swapを指定すれば、Webフォント読み込み中はシステムフォントで表示し、読み込み完了後にWebフォントに切り替わります。これによりFOIT(Flash of Invisible Text=テキストが見えない時間)を回避できます。
fallback設計は、Webフォント読み込み失敗時の代替手段。font-familyに「Noto Sans JP, ヒラギノ角ゴ ProN, BIZ UDPGothic, sans-serif」のように複数候補を並べておくと、Webフォント取得失敗時もシステムフォントで自然に表示されます。ユーザー体験を守る最後の砦です。
ステージ5:パフォーマンス計測と継続改善
実装後は、必ずパフォーマンス計測。PageSpeed Insights・Lighthouse・WebPageTestで、LCP(Largest Contentful Paint)・FCP(First Contentful Paint)・CLS(Cumulative Layout Shift)を測定します。Webフォントの影響でこれらの指標が悪化していないか確認します。
計測の結果でLCPが2.5秒を超えていたら、サブセット化・preload追加・font-display調整、これらを順次実施して改善。Core Web VitalsはSEOランキングにも影響するため、Webフォントのパフォーマンス影響は継続的に監視する必要があります。実装して終わりではなく、運用フェーズが本番です。
身近な話で全体像をつかむ
ちょっと身近な話で、全体像を掴み直しましょう。
全国チェーン飲食店のメニュー表記統一に置き換えてみます。あなたが全国に1,000店舗ある飲食チェーンの本部担当だとします。各店舗のメニュー表記を、北海道店も沖縄店も、新宿店も大阪店も、全部同じデザイン・同じフォントで統一したい。これが目標です。
選択肢は2つ。(1)各店舗で勝手にメニュー作成→店舗ごとにバラバラ(2)本部が統一テンプレートを配布→全店舗で同じ表記。(1)が「Webフォント未使用のサイト」、(2)が「Webフォント採用のサイト」に対応します。デバイス・OSがバラバラでも、本部(Webサーバー)から配信したフォントを使えば全端末で表記が統一されます。
でも、ここで問題が発生。全店舗に配布するメニューデザインのファイルが大きすぎて、配送に時間がかかってしまったらどうなるか。お客様が来店してもメニューが届くまで待たされる。これがWebフォントで言うLCP遅延・FOITの問題です。
解決策は2つ。(1)メニューを必要な料理だけに絞って軽量化する(=サブセット化)、(2)メニューが届くまで仮メニューで対応する(=font-display: swap+fallback)。この2つを組み合わせることで、統一性とスピードの両立が実現します。
業界の例として、Google Fonts経由でNoto Sans JPフルセットを読み込むと、ファイルサイズが約5MBを超えます。これは欧文フォント1個(約30〜50KB)の100倍の重さ。何も対策せずに使うと、特にモバイル回線でLCPが破綻します。サブセット化やpreload設計が必須になる理由は、この日本語特有のサイズ問題にあります。
逆に、Webフォントを正しく設計したサイトは、ブランド体験の統一とパフォーマンスの両立を実現できます。常用漢字+ひらがな+カタカナだけにサブセット化すれば、5MBが300KB以下に圧縮可能。これに加えてfont-display: swap+preloadを組み合わせれば、LCP 2.5秒以内+ブランド表現統一+SEO評価維持、すべて両立します。設定の有無で天と地ほど結果が変わる領域です。
Webフォント運用で必須の4設定
Webフォント運用で必須の設定は4つあります。どれか1つだけでは不十分で、4つすべてを組み合わせて初めてブランド表現の統一とCore Web Vitals維持を両立できます。1つずつ整理します。
設定1:サブセット化(日本語第一水準のみ抽出)
Webフォントの最重要設定がサブセット化。日本語フォントのフルセットは約2万字を含み、ファイルサイズは数MBに達します。これを「使う文字だけに絞る」のがサブセット化です。常用漢字2,136字+ひらがな83字+カタカナ86字+記号類で約2,400字に絞ると、ファイルサイズは数百KB以下に圧縮可能です。
サブセット化の方法は3パターン。(1)Google Fonts APIのtextパラメータで動的サブセット、(2)pyftsubsetなどのツールで静的サブセット、(3)Adobe Fonts/FONTPLUSの自動サブセット機能。一般的なWordPressサイトなら(1)Google Fonts動的サブセット、コーポレートサイト・LPなど高度な制御が必要なら(2)静的サブセットが現実的な選択肢です。
業界の事故例として、サブセット化未実施のままNoto Sans JP Regularだけを読み込んでも約1MBになります。これにBold・Mediumを加えると3MB超。モバイル回線で読み込むと約5〜10秒のロスです。サブセット化は「やるかやらないか」ではなく「絶対やる」が業界標準です。
設定2:font-display設定(swap/fallback/optional)
font-displayは、Webフォント読み込み中のテキスト表示挙動を制御するCSSプロパティ。値は5種類(auto/block/swap/fallback/optional)で、それぞれFOIT(テキスト不可視時間)とFOUT(フォント切替表示)のバランスが異なります。
業界の標準は「font-display: swap」。Webフォント読み込み中はシステムフォントでテキスト即表示、Webフォント取得後に切り替わる挙動。FOITを完全に回避できるため、LCP指標への悪影響が最小化されます。Core Web Vitals重視のサイトはswapが最適解です。
「font-display: optional」は、Webフォントの取得を待たずに表示を優先する挙動。回線が遅い環境ではWebフォント不適用のままになりますが、ページ表示速度が最大化されます。グローバル展開サイト・回線が不安定な地域向けサイトでは検討の余地があります。
設定3:preload(初期表示優先)
preloadは、Webフォントファイルをページの初期段階で優先的にダウンロードする設定。HTMLのhead内に「<link rel=”preload” href=”font.woff2″ as=”font” type=”font/woff2″ crossorigin>」を記述します。これによりWebフォント取得がHTMLパース直後に開始され、LCP改善に直結します。
preload対象は「ファーストビューで必ず使うフォント」に限定。すべてのフォントをpreloadすると逆効果(初期帯域を圧迫してLCPが悪化)です。本文用Regular・見出し用Boldの2つ程度に絞るのが業界標準。優先度設計が重要な領域です。
preloadとfont-display: swapを組み合わせると効果最大化。「preloadで早期取得開始+swapで読み込み中はシステムフォント表示」の二段構えで、ユーザーは最初からテキストを読めて、Webフォント取得完了時にスムーズに切り替わります。Core Web Vitals完全対応の鉄板組み合わせです。
設定4:fallback設計(local()チェイン)
fallback設計は、Webフォント読み込み失敗時・取得遅延時の代替フォント。font-familyに「Noto Sans JP, ヒラギノ角ゴ ProN, BIZ UDPGothic, 游ゴシック, Meiryo, sans-serif」のように、複数のシステムフォントを優先順位付きで記述します。
高度な設定として、@font-faceのsrc記述に「local()」を追加すると、ユーザー端末にすでにそのフォントがインストールされている場合にダウンロードをスキップできます。「src: local(‘Noto Sans JP’), url(‘font.woff2’) format(‘woff2’)」のような記述で、ダウンロード回避→さらなる高速化を実現します。
fallback設計で重要なのは、Webフォントとfallbackフォントの「字幅・字形が近いもの」を選ぶこと。フォント切替時に文字幅が大きく変わるとCLS(Cumulative Layout Shift)が発生し、ユーザー体験を損ねます。size-adjust・ascent-override・descent-overrideなどのCSSプロパティでfallbackフォントの寸法を調整するのも標準的なテクニックです。
4設定すべての関係を整理すると、(1)サブセット化でファイルサイズ縮小、(2)font-display: swapでFOIT回避、(3)preloadで早期取得、(4)fallback設計でCLS最小化。この4本立てが「Webフォント運用の正解」です。1つでも欠けるとどこかでパフォーマンスかブランド表現のいずれかが破綻します。
Webフォント運用で失敗する典型3パターン
うちの事業でWordPressサイト6サイトを運用してきた中で、ほぼこの3パターンに集約されます。
もっとも多い失敗。サブセット化未実施のままNoto Sans JPなど日本語フォントのフルセット(Regular+Medium+Bold)を読み込み、合計ファイルサイズが3〜5MBに達するパターン。モバイル回線でLCPが5〜10秒、Core Web Vitalsが完全に破綻します。
本来は、サブセット化で常用漢字+ひらがな+カタカナ+記号類に絞ると、合計300〜500KB以下まで圧縮可能。これでLCPは2秒台に改善できます。Google Fonts経由ならtextパラメータで動的サブセット、セルフホストならpyftsubsetで静的サブセットを実行します。「全部入り」を読み込む発想を捨てるのが第一歩です。
2つ目の失敗。font-display未指定だとブラウザのデフォルト挙動は「block」になり、Webフォント読み込み中はテキストが完全に不可視(空白)になります。これがFOIT(Flash of Invisible Text)で、ユーザーは2〜3秒間「何も書かれていないページ」を見ることになります。
本来は、font-display: swapを@font-faceブロック内に必ず記述。Google Fonts経由なら&display=swapパラメータをURLに追加するだけで対応可能。これだけでFOITが解消され、ユーザーはシステムフォントでテキストを即座に読み始められます。設定の手間は1行追加するだけ、効果は絶大です。
3つ目の失敗。商用フォントを無断でWebサイトに使ったり、Adobe Fontsの個人プラン契約のままで商用サイトに使用するパターン。フォントは著作権で保護されており、ライセンス条件を超えた使用は契約違反になります。発覚時には数十万円〜数百万円の使用料請求リスクがあります。
本来は、フォント選定の段階で必ずライセンスを確認。Google Fonts(SIL OFL・商用可)、Adobe Fonts(プラン別範囲)、モリサワTypeSquare・FONTPLUS(商用専用契約)、これらを使い分けます。社内デザイナーが「家にあるフォントだから」と勝手に使うケースが多いので、ライセンス管理ガイドラインを社内整備するのが標準的な対応です。
うちの事業で運用してわかった本音
うちの事業でWordPressサイト6サイトを6年運用してきて、わかった本音をお伝えします。
本音1:日本語Webフォントは欧文より100倍重い
業界の現場で運用していて、最初に直面する壁が日本語Webフォントの重さ。欧文フォント(Inter・Robotoなど)はファイルサイズが30〜50KB程度ですが、日本語フォント(Noto Sans JPなど)はフルセットで5MB前後。約100倍のサイズ差があります。
これは仕様上の必然で、欧文は26文字+記号で完結しますが、日本語は漢字2万字+ひらがな+カタカナ+記号で構成されます。文字数の差がそのままファイルサイズの差として現れる構造です。「Webフォントを使う」という同じ言葉でも、日本語と欧文では運用難易度が全く違うんですよね。
業界の体感として、欧文サイトでは「とりあえずWebフォント使えばOK」で済みますが、日本語サイトでは「サブセット化・font-display・preload・fallback、すべて設計しないとパフォーマンスが破綻する」が前提です。日本語サイト制作者だけが背負う重い責務です。
本音2:サブセット化(常用漢字)で90%削減できる
うちの事業のサイトで実測した数字なんですが、Noto Sans JPフルセット(約5MB)を、常用漢字2,136字+ひらがな+カタカナ+主要記号でサブセット化すると、約400KBまで縮小できます。圧縮率にして約92%削減。これがサブセット化の本気の効果です。
業界の体感として、一般的なブログ記事・LP・コーポレートサイトでは、第二水準漢字(JIS X 0208第二水準)は1記事あたり数文字使うかどうか。第一水準漢字+ひらがな+カタカナがあれば90%以上のテキストはカバーできます。サブセット化は「品質を落とす技術」ではなく「無駄を削る技術」です。
具体的な実行手順は、(1)サイト全体で使うであろう漢字リストをCSV化、(2)pyftsubsetなどのツールでWebフォントファイルをサブセット化、(3)サブセット済みfontファイルをWebサーバーに配置、(4)CSS @font-faceでパス指定。所要時間は1〜2時間程度。1回設定すれば、その後はサイト全体で恒久的にメリットが続きます。
本音3:Google Fonts日本語は無料だがCore Web Vitals悪化リスク
これは業界の現場で運用している人達がよく語る本音なんですが、Google Fonts日本語(Noto Sans JP・Noto Serif JP)は無料で使えて便利な反面、Core Web Vitals悪化のリスクが高い側面があります。3rd-partyドメイン(fonts.googleapis.com・fonts.gstatic.com)へのリクエストが発生し、初回読み込みでDNS解決+TLSハンドシェイクが追加で必要になります。
具体的な数字として、Google Fonts日本語をdisplay=swapで読み込んだ場合、LCPに+0.5〜1秒の影響が出るケースが多い。これがCore Web Vitalsの「Good」(2.5秒以内)から「Needs Improvement」(2.5〜4秒)に格下げされる引き金になることがあります。SEO評価への影響も無視できません。
本格的にCore Web Vitalsを最適化したいサイトでは、Google Fontsをセルフホスト化するのが業界標準。Google Fontsのフォントファイルをダウンロードして、自サーバーに配置して@font-faceで読み込む方式です。3rd-partyリクエストがなくなり、サブセット化・preload・font-displayの設定も自由に制御できます。手間は増えますが、パフォーマンス改善効果は大きい。
もう一つ重要なのが、Adobe Fontsとの使い分け。Adobe FontsはAdobe Creative Cloud契約の付帯サービスで、商用利用範囲がプランに応じて変動します。個人プラン($9.99/月)では商用Webフォント利用に制限があるため、法人サイトで使うなら法人プランへの切替が必須です。「便利だから」と契約範囲外で使うとライセンス違反になるので、運用前の確認が決定的に重要です。
Webフォント導入の5STEP
ここまで読んでくださった方、お疲れさまです。実際の導入手順を5ステップで置いておきます。
ブランドガイドラインで定めたトーンに合うフォントを2〜3種類選定。本文用ゴシック・見出し用ゴシック・装飾用(必要なら明朝)、こういう構成が標準。Google Fonts・Adobe Fonts・モリサワTypeSquareから選びます。
選定したフォントのライセンスを必ず確認。商用可否・ページビュー上限・ドメイン制限を整理します。Google Fonts(無料)、Adobe Fonts(サブスク)、商用フォント(専門契約)から事業形態に合うものを選定。法務確認は必須です。
日本語フォントは必ずサブセット化。常用漢字+ひらがな+カタカナ+記号で約400KBまで圧縮。サブセット済みファイルをセルフホストするか、CDN動的サブセットを利用します。サブセット化は90%以上のサイズ削減を生む決定打です。
CSS @font-faceでフォント読み込みを実装。font-display: swap・preload・fallback設計をすべて適用。優先度の高いフォントはlink rel=”preload”でHTMLに記述。fallbackフォントとのCLS最小化も設計します。
PageSpeed Insights・Lighthouseで定期計測。LCP・FCP・CLSの数値を継続監視。Core Web Vitalsで「Good」レンジを維持できているか確認。悪化していたらサブセット範囲再調整・preload見直しを実施します。運用フェーズが本番です。
シンプルですが、機能するWebフォント運用の骨格が完成します。重要なのは「実装して終わり」ではなく「計測と継続改善」のフェーズに入ること。Core Web Vitalsは継続監視で守る指標です。
- @font-face
- CSS3で導入された規格。Webサーバー上のフォントファイルをブラウザに読み込ませる宣言。Webフォントの根幹技術。
- font-display
- Webフォント読み込み中のテキスト表示挙動を制御するCSSプロパティ。auto/block/swap/fallback/optionalの5値。
- FOIT(Flash of Invisible Text)
- Webフォント読み込み中にテキストが完全に不可視になる現象。font-display: swap指定で回避可能。
- FOUT(Flash of Unstyled Text)
- Webフォント読み込み完了時、システムフォントから切り替わる際の表示揺れ。CLS悪化の原因にもなる。
- Variable Fonts
- 1つのフォントファイルで複数のウェイト・スタイル・幅を表現できる規格。2016年策定。運用効率化に寄与する。
よくある質問(FAQ)
- Google Fonts vs Adobe Fontsの違いは?
-
Google Fontsは無料・SIL OFLライセンス・商用利用無制限。Adobe FontsはCreative Cloud契約付帯・約25,000フォント・商用範囲はプラン依存。デザイン重視ならAdobe Fonts、コスト重視ならGoogle Fontsが業界標準の使い分けです。
- Webフォントのライセンス確認のポイントは?
-
確認項目は5つ。(1)商用利用可否、(2)ページビュー上限、(3)ドメイン制限、(4)再配布可否、(5)埋め込み形式(Web/PDF/アプリ)。Google Fonts(SIL OFL)は商用無制限ですが、商用フォントは個別契約で範囲が変動します。法務確認必須です。
- 日本語対応のWebフォントサービスは?
-
主要サービスは4つ。(1)Google Fonts(Noto Sans JP・Noto Serif JP・無料)、(2)Adobe Fonts(モリサワ・フォントワークス・サブスク)、(3)TypeSquare(モリサワ・商用専門)、(4)FONTPLUS(ソフトバンク・テクノロジー)。商用本格運用なら(3)(4)、コスト重視なら(1)が現実的です。
- WebフォントのCore Web Vitalsへの影響は?
-
影響は3指標。LCP(Largest Contentful Paint・テキスト描画完了時間)、FCP(First Contentful Paint・初回描画時間)、CLS(Cumulative Layout Shift・レイアウト変動)。サブセット化未実施だとLCP+1〜3秒悪化、font-display未設定だとFCP悪化、fallback設計不備だとCLS悪化します。4設定すべてが必須です。
- Webフォントサービスのファイルサイズ比較は?
-
業界で語られる目安は以下です。
フォント種別 フルセット サブセット化後 欧文(Inter Regular) 約30KB 約20KB 日本語Noto Sans JP 約5MB 約400KB 日本語Noto Serif JP 約6MB 約500KB Variable Fonts(可変) 約1〜2MB 約200〜300KB サブセット化は日本語Webフォント運用の必須技術です。
まとめ
で、結局Webフォントとは、こういうことです。
- Webフォントの核心は「綺麗なフォント表示」ではなく「デバイス非依存でブランド表現を統一する技術」
- 本質はデザイン強化ではなく、ユーザー端末・OS・ブラウザを問わない一貫した文字体験の保証
- 4設定(サブセット化・font-display・preload・fallback)すべてを適用してパフォーマンスとブランドを両立する
見た目を整えることが目的なのではなく、誰がどの端末で見ても同じ体験を届けること。これがWebフォントの本来の役割です。サイトを運用しているなら、まず4設定の現状確認から始めてみてください。
ではでは。
