KODANSHAtech の研修制度を活用した R&D(研究開発)の一環として、書体制作に取り組みました。長野県松本市の「松本文字塾」で、ヒラギノ書体などを手がけた鳥海修さんのもと、1年間にわたり仮名書体をデザインする機会に恵まれました。

今回は、古典のリサーチから Glyphs によるデジタルデータ化まで、その取り組みをお届けします。

R&Dとしての自主的な研修への参加を示すバスケットボールのアイコン、長野県松本市の松本文字塾を示すお城のアイコン、1年をかけて仮名をフォント化した書体デザインを示す「あ」のアイコンの3つが並び、今回の取り組みの全体像を表した図解。

前提として

ウェブフォントはデータの読み込みに多少時間がかかるため、表示速度やパフォーマンスを最優先するなら「標準のシステムフォントで十分」と考えるのは合理的だと思っています。また、ウェブフォントを導入したからといって、売上や PV といった数字が直接的に急上昇するわけではない、というのも事実です。

一方で、ブランドのイメージを形作ったり、文章に温かみを持たせたりしたいときには、ウェブフォントはとても有効です。今回は、ニュースサイトのように効率やスピードが求められる場ではなく、「情緒や世界観を伝えたい場」に向けたウェブフォントのお話です。

「コンテンツ」「パフォーマンス・実利」「ブランド・アイデンティティ」の3つの関係性を示した三角形の図。左側にはシステムフォントの領域として「Lighthouse/CWV」「デバイス最適化」「読みやすさ」などの特徴が、右側にはウェブフォントの領域として「世界観の統一」「差別化」「感情的フック」などの特徴が解説されており、それぞれの役割の違いを整理したマトリクス図。

デジタルでお米を味わうために

書体はよく食べ物に例えられますが、明朝体が「お米」だとしたら、ゴシック体は「パン」のような存在かもしれません。ゴシック体は、今のウェブの主食のように、どこでも手に入り誰でも食べやすい良さがあります。

一方で、お米に例えられる明朝体は、本来なら情緒や繊細な味わいをもたらす主食のはずです。しかしウェブ環境では、「細い線がかすれる」「アンチエイリアス(画面表示のボケや潰れ)で消えてしまう」といった理由から、技術的に敬遠されがちでした。

画面の解像度が上がり表示環境が整いつつある今、デジタルでもお米を美味しく味わえるような情緒ある書体を作れないか、と考えました。

「パンのゴシック体」「米の明朝体」「情緒はどこに?」という3つのサークルが並んだ図。日常的に親しまれるゴシック体をパン、本来は情緒や繊細な味わいをもたらす明朝体をお米に例え、デジタル環境でもお米(明朝体)を美味しく味わうために横組みの明朝体を作る、という書体制作の動機を表現したイラスト。

古筆を源流に情緒を求めて

この「情緒」をどう書体へ落とし込むか。まず、その源流を昔の「古筆(古い時代の手書きの文字)」に求めました。

自分の中で「平安時代の優れた書き手」を現代に召喚します(この比喩は、同じ文字塾の中谷可惟さんの受け売りです。ちなみに中谷さんは Oscar Ogg を召喚していました)。その書き手が「もし、いまのようにデジタルが当たり前の時代に、横書きの明朝体を考えたらどうなるか?」──そんな問いをコンセプトに据えました。

左側に平安時代の書き手のイラスト、中央に「ウェブ横組み」「ニュートラル」「情緒ある」「明朝体」というキーワード、右側に「??」という記号が並び、古典の古筆を源流としながら現代のウェブ環境に合わせた書体を模索するコンセプトを表した掛け算の図。

書体制作の過程

プロセスは「リサーチ」「スケッチ」「デザイン」という3つのフェーズに分かれます。まずはリサーチからスタートし、次にスケッチ(試作・下書き)へ。ここまでが手作業の「アナログ」領域です。そこから先のデザインが仕上げの段階で、デジタルデータにして書体として完成させる工程になります。

「リサーチ(文献調査)」「スケッチ(試作・下書き)」「デザイン(仕上げ)」の3つのフェーズが左から右への矢印で並んだ図。リサーチとスケッチが「アナログ」の領域、デザインが「デジタル」の領域として分類されている、書体制作の全体プロセスを示したワークフロー図。

縦書き・横書きの特徴

まずは書道の手本をもとに、縦書きと横書きそれぞれの特徴を分類して分析しました。手本文章の中からひらがなを一文字ずつ収集します。元の文字にはかすれて不鮮明な部分もあるため、一度デジタルデータ(パス)に置き換えて骨格をはっきりさせ、縦横での筆の使い方の違いを並べて比較検証しました。

左側に「縦書き」、右側に「横書き」として、ひらがな「あ・い・う・え・お」のペン習字の手本文字をグリッド上に複数並べて比較した図。縦書きと横書きにおける筆の使い方の違いや骨格の特徴を分類・分析したトレース比較図。

図版内の文字データは、狩田巻山『ペン習字』(1965年、日本習字普及協会)の資料を参考に、筆者がトレース・再構成したものです。

縦書きでは、運筆の終点が次の文字がある「左下」へ向かい、縦の気脈(筆の流れ)が生まれます。一方、横書きでは次の文字が「右」に配置されるため、筆の勢いは左下へ逃げず、水平方向のつながりを意識した形になります。

「縦書き」と「横書き」における、ひらがな「あ」と「す」の運筆の終点(筆の抜け方)の違いを比較した図。縦書きでは次の文字がある下方(左下)へと向かう垂直な気脈が形成され、横書きでは次の文字がある右方向へ引き込まれる水平方向の繋がりを意識した形になることを、矢印で解説した比較図。

文献調査をさらに深めるため、京都の古本屋などに足を運び、江戸時代の和古書『道乃技折』(1814年)をはじめとする昔の和本を調べました。

調査資料として取り上げられた、江戸時代の和古書『道乃技折(みちのしおり、1814年・須原屋)』の上・中・下巻の和本が3冊並んだ写真。万葉集の語彙や地名を解説し、冒頭に大振りのひらがなとバリエーションが豊富に掲載されている特徴を説明した図版。

「さ」という一文字でも、次の文字へのつながりで筆がどう動くのか。当時の「垂直方向への落ち方(縦の流れ)」を参照していきます。

和古書『道乃技折』の本文ページのクローズアップ写真。ひらがなの「さ」など、様々な文字のバリエーションや次の文字へのつながり、当時の「垂直方向への落ち方(縦の流れ)」の筆遣いが記されている紙面の様子。

『携帯かな字典』を開き、平安時代を代表する古筆を中心に、さまざまな昔の文字のバリエーションを参照しました。

また、「あ」の語源である「安」から現代の明朝体に至るまでの変遷をたどり、もともと縦長だった文字が、時代とともに四角いマス目に整然と収まっていく過程を確認しました。

調査資料として取り上げられた、角川書店の『携帯かな辞典(1984年)』の表紙写真。平安時代の代表的な古筆を中心に、「あいうえお」順にひらがなの様々なバリエーションを集めた辞典であることを説明した図版。

画面上の適正値を検証

つづいて、古典の調査と並行して、既存の活字の分析を行いました。

既存の活字の分析として、「游明朝体」の漢字の東、「秀英明朝」のひらがなのあ、「凸版文久明朝」のカタカナのアの3文字を大きく並べ、デジタルスクリーン上での太さやバランス、適正値を検証している図。

画面の上でつぶれない線の太さは、どの程度なのか。数値を測定し、ウェブでの最適な数値を探っていきました。

「游明朝体M」「筑紫明朝R」「凸版文久明朝R」などの書体を対象に、漢字の東、ひらがなのあ、カタカナのアの仮想ボディに対する標準字面率や外枠矩形面積の推測率などの数値を測定・比較し、画面の上でつぶれない最適な線の太さを探っている分析図。

重心と視線移動の検証

横組みで視線が流れたときに生じる偏りやガタつきの傾向、そして重心の移動が読みやすさに与える影響を検証しました。

「あいうえお」から「をん」までの平仮名一覧の上に、視線の流れを表す横線と、各文字の重心のバランスを検証するためのピンク色の多角形が重ねられた図。横組みで視線が流れたときに文字がガタついて見えないよう、スムーズな重心の移動を検証している様子を示した図版。

文字の形状を定量的に測定するため、Python で簡易的な検証プログラムを作成し、各文字の「幾何学的な重心」や「外周の多角形(凸包)」を数値化して分析しました。

from PIL import Image, ImageDraw, ImageFont
import numpy as np
from scipy.spatial import ConvexHull
import cv2

def compute_mass_center(image: Image.Image) -> tuple:
    """重心(質量中心)を濃淡から求める関数"""
    gray = image.convert("L")
    inverted = Image.eval(gray, lambda x: 255 - x)
    arr = np.array(inverted)
    total = arr.sum()
    if total == 0:
        return image.width // 2, image.height // 2
    y, x = np.indices(arr.shape)
    x_center = (x * arr).sum() / total
    y_center = (y * arr).sum() / total
    return x_center, y_center

def draw_convex_mass_visual(
    char: str,
    font_path: str,
    filename: str,
    img_size: int = 512,
    font_size: int = 400
):
    # Step 1: Render glyph
    image = Image.new("L", (img_size, img_size), 255)
    draw = ImageDraw.Draw(image)
    font = ImageFont.truetype(font_path, font_size)
    bbox = draw.textbbox((0, 0), char, font=font)
    x = (img_size - (bbox[2] - bbox[0])) / 2 - bbox[0]
    y = (img_size - (bbox[3] - bbox[1])) / 2 - bbox[1]
    draw.text((x, y), char, font=font, fill=0)

    # Step 2: Generate mask and mass points
    bin_mask = np.array(image) < 200
    points = np.argwhere(bin_mask)
    if len(points) < 3:
        return

    # Step 3: Compute convex hull and center
    hull = ConvexHull(points)
    hull_pts = [(int(p[1]), int(p[0])) for p in points[hull.vertices]]
    x_center, y_center = compute_mass_center(image)

    # Step 4: Draw RGBA canvas
    rgba = Image.new("RGBA", (img_size, img_size), (255, 255, 255, 0))
    draw_rgba = ImageDraw.Draw(rgba)

    # 赤い半透明質量領域
    draw_rgba.polygon(hull_pts, fill=(255, 200, 200, 150))
    # 赤い輪郭線
    draw_rgba.line(hull_pts + [hull_pts[0]], fill=(255, 0, 0, 255), width=1)
    # 黒文字描画(重ね)
    draw_rgba.text((x, y), char, font=font, fill=(50, 40, 40, 255))
    # 青点(質量中心)
    center_radius = 6
    draw_rgba.ellipse(
        [x_center - center_radius, y_center - center_radius,
         x_center + center_radius, y_center + center_radius],
        fill=(0, 0, 255, 255)
    )

    rgba.save(filename)

算出している重心(青点)は、文字の濃淡(ピクセル密度)から機械的に求めた幾何学的な重心(質量中心)です。そのため、人間が文字を見たときに中心だと感じる視覚的な重心(錯視を考慮した中心)とは必ずしも一致しません。文字のハネや払い、フトコロの広さなどによって、数値上の中心と人間の感覚にはズレが生じるためです。

この幾何学的な重心を測定し、書体ごとの傾向を観察しました。

検証の結果、書体によって重心移動の角度差や高低差(落差)が確認できます。そこから、設計上は以下のような傾向の違いが推測できます。

  • 重心の落差が大きい書体:視線が上下に波打ち、独特のリズムや躍動感が生まれる。
  • 重心の落差が少ない書体:視線の上下のぶれが抑えられ、穏やかに横へ流れる安定感が生まれる。

このように、書体ごとの設計や特徴が重心の波形に現れる傾向が確認できました。

一方で、横組みに必要なラインの安定感やメリハリ、リズム、そしてスペーシングのバランスには、幾何学的な数値だけでは測りきれない要素が多く残ります。今回のデータを一つの目安としつつ、実際に文字を並べたときの心地よい揺らぎは、自分の目で確かめる必要があると感じました。

情緒を形にするパラメーター

ここからは、具体的に「情緒のある」かなのスペックを固めていく作業です。文字の内側の空間(フトコロ)の広さによる印象の違いを、「狭い」「広い」などの軸で比較したものです。

鳥海修氏の著書『明朝体の教室』のフレームワークを参考に、ひらがな「あ」「す」の既存書体を並べ、文字の内側の空間(フトコロ)の広さを「狭い・広い」の軸で比較した図。フトコロの広さに応じて「暗い・スマート・大人」「ニュートラル」「子ども・堂々・明るい」と印象が変化することを示したパラメーター検証図。

これらのパラメーター検証にあたっては、鳥海さんの著書『明朝体の教室 日本で150年の歴史を持つ明朝体はどのようにデザインされているのか』(Book&Design)のフレームワークを参考にさせていただきました。

エレメントが「人間的か、機械的か」「情緒があるか、ないか」のマップ上で、位置づけを確認します。

%E6%9B%B8%E4%BD%93%E3%82%B9%E3%83%98%E3%82%9A%E3%83%83%E3%82%AF%E3%81%AE%E7%89%B9%E5%BE%B4_%E3%82%A8%E3%83%AC%E3%83%A1%E3%83%B3%E3%83%88.png

文字の大きさによる印象の違いを、「控えめな」「ニュートラル」「力強い」などの指標で比較したもの。

ひらがな「あ」「す」の既存書体を並べ、文字の大きさによる印象の違いを「小さい・大きい」の軸で比較した図。文字のサイズ感に応じて「控えめな・清楚」「ニュートラル」「剛毅・力強い」と印象が変化することを示したパラメーター検証図。

小塚明朝・游明朝体・築地体三号細仮名を参考に、モダンからクラシックまでの文字の骨格を比較したもの。

「小塚明朝」「游明朝体」「築地体三号細仮名」を並べ、文字の骨格の特徴を「モダン・クラシック」の軸で比較した図。現代的で幾何学的なモダンから、伝統的で筆の抑揚が残るクラシックまで、骨格によって文字の表情が変化することを示したパラメーター検証図。

文游明朝体 S 垂水かな・游明朝体・築地体三十五ポイント仮名をもとに、線のつながりや粘り具合(粘着度)を比較したもの。

「文遊明朝体 S 垂水かな」「游明朝体」「築地体三十五ポイント仮名」を並べ、文字の線のつながりや粘り具合を「弱い・強い」の軸で比較した図。筆の余韻や粘着度によって、文字が持つ情緒や力強さのニュアンスが変化することを示したパラメーター検証図。

平成明朝体・游明朝体・秀英初号明朝をもとに、筆の動く速さ(筆勢)の印象を比較したもの。

「平成明朝体」「游明朝体」「秀英初号明朝」を並べ、筆の動く速さ(筆勢)を「遅い・速い」の軸で比較した図。じっくりと書かれた静的な表情から、勢いよく払われた動的な表情まで、筆勢の印象の違いを示したパラメーター検証図。

といったパラメーターを、一つずつ検証していきました。

下書き・墨入れ

決まったスペックをもとに、ひらがな・カタカナのスケッチ(試作・下書き)を描いていきます。とはいえ、スペックを決めたからといってそう簡単には上手くいきません。フィードバックを受けて修正を重ねながら、本番用の文字を描き進めていきました。

「スケッチ」と「墨入れ」の工程として、青い方眼紙の上にひらがな(「ら」「り」「る」など)やカタカナ(「タ」「チ」「ツ」など)の文字の骨格や輪郭線が、手作業で細かく描き込まれている様子を写したクローズアップ写真。

描き終えたら、次はロットリング(製図ペン)で線を黒く塗りつぶす「墨入れ」を行います。ここで墨入れを丁寧にしておかないと、デジタル化の際に、どの線を基準にパスを引くべきか迷いが生じてしまうためです。

補助線の入った正方形の枠線の中に、手書きで丁寧に墨入れ(黒く塗りつぶし)されたひらがな「あ」「い」「う」「え」「お」「か」の6文字が並んでいる、デジタル化前の原字の図版。

こうして墨入れしたデータを出力し、鳥海さんから具体的なフィードバックを繰り返しいただきました。

テーブルの上に、テスト印刷された様々な文字組み見本(「あいうえお」の一覧など)の紙が何枚も並べられ、実際の紙面での見え方を検証している様子を写した写真。

Glyphs によるデジタルデータ化

墨入れした文字をもとに、フォント制作ツール「Glyphs」でデジタルデータに起こしていきます。

テスト印刷された文字組み見本(「あいうえお」の一覧や検証用の文章など)から、実際の紙面での見え方を検証している様子を写した写真。

漢字と混ぜて並べてみて、スクリーンでかすれないか、太さは適切か、調整を繰り返します。

漢字の「東」とひらがなの「あ」を交互に混ぜて並べ、デジタルスクリーン上でかすれない最適な太さを探るため、「Offset ±0」「Offset +1」「Offset +2」の3段階で線の太さを変化させて視覚的に比較・調整している図。

「調整、書き出し、組版、確認」という工程を繰り返し……

ようやく形になったのが、横組み用仮名書体『あおなみ(青波)』です。

ようやく形になった横組み用仮名書体『あおなみ(青波)』の文字組見本。「あおなみ」「いろはにほへと」「チリヌルヲワカ」という文字が美しく配置され、明朝体をお米に例えた紹介文が添えられている完成図版。

おわりに

この一年を振り返ると、出版における伝統的な書体選択とは対照的な、「ウェブ環境の慣習(システムフォント一辺倒になりがちな現状)」に小さな疑問を抱いたことが、この取り組みの始まりでした。明朝体や仮名表現の可能性を探るために飛び込んだ松本文字塾では、同じ志を持つ仲間たちからたくさんの大きな刺激を受けました。

文章として並んだときの文字同士の関係や全体の均整、デザインの統一性を確かめながら微調整を重ね、何度もやり直しつつ文字と向き合ったぶん、得るものの多い一年でした。

また、こうした社外での R&D 活動を支えてくれる、KODANSHAtech の環境にも深く感謝しています。

仮名書体「あおなみ」特設サイト

「あおなみ」特設サイトでは、文字の試し打ちや、実際の文章に使用した見本をご覧いただけます。実装とインタラクションは、弊社デザインエンジニアの竹本さんが手がけました。今後は、この1年間の制作を記録した制作日誌も順次連載していく予定です。

「あおなみ」は現在も、少しずつ文字数を増やしながらアップデートを続けています。デジタルスクリーンなどでの実用性をさらに検証するため、実際のプロジェクトでテストユース(試用)いただけるクリエイターや企業の方を募集しています。ご興味のある方は、ぜひサイト内のお問い合わせからお気軽にご連絡ください!