コンポーネントの見本 Components

札幌市の介護福祉施設|株式会社KSサービス

このページはカタログ(catalog/)と1対1対応する視覚カタログです。コンポーネントを追加・変更するときは、このページとカタログJSONの両方を更新してください。各見本の「コピー」ボタンでコードをそのままコピーできます。

1. スペーシング

余白(16remベース、0.125rem単位)

rem値 px値
0.125rem 2px
0.25rem 4px
0.375rem 6px
0.5rem 8px
0.625rem 10px
0.75rem 12px
0.875rem 14px
1rem 16px
1.125rem 18px
1.25rem 20px
1.375rem 22px
1.5rem 24px
1.625rem 26px
1.75rem 28px
1.875rem 30px
2rem 32px
2.125rem 34px
2.25rem 36px
2.375rem 38px
2.5rem 40px
2.625rem 42px
2.75rem 44px
2.875rem 46px
3rem 48px
4rem 64px
5rem 80px
6rem 96px
8rem 128px
10rem 160px
12rem 192px
16rem 256px

大サイズ余白ユーティリティ(4rem / 5rem / 6rem)

Bootstrap の間隔スケール(.p-3 等)より大きい余白を補うユーティリティ。書式は Bootstrap と同じ {property}{sides}-{size}(レスポンシブは {property}{sides}-{lg|xl}-{size})。

py-4rem(上下 4rem の padding)
<div class="py-4rem bg-gray">py-4rem(上下 4rem の padding)</div>

2. カラーパレット

テーマカラー・カラーパレット変数

--main
--main-light
--main-dark
--sub
--sub-light
--sub-dark
--sub2
--sub2-light
--sub2-dark
--gray
--gray-light
--gray-dark

3. 画像比率調整

3:2の他、1:1、4:3、16:9のクラスがあります

はみ出し部分を切らずに収める(object-fit-contain)

<div class="ratio ratio-3x2">
  <img src="noimg.jpg" class="object-fit-contain">
</div>

枠いっぱいに切り抜く(object-fit-cover)

<div class="ratio ratio-3x2">
  <img src="noimg.jpg" class="object-fit-cover">
</div>

4. テキスト

フォントなど

.mincho 明朝体

<p class="mincho">.mincho 明朝体</p>

.lh-lg 行間広め

<p class="lh-lg">.lh-lg 行間広め</p>

テキストリンク

リンク下線あり class="text-decoration-underline"

<p><a href="" class="text-decoration-underline">リンク下線あり class="text-decoration-underline"</a></p>

リンク無効 class="pe-none"

<p><a href="" class="pe-none">リンク無効 class="pe-none"</a></p>

文字色・背景付きテキスト

.text-main

<p class="text-main">.text-main</p>

.bg-main text-white p-3 mb-2 rounded-3

<p class="bg-main text-white p-3 mb-2 rounded-3">.bg-main text-white p-3 mb-2 rounded-3</p>

.bg-sub text-white p-3 mb-2 rounded-3

<p class="bg-sub text-white p-3 mb-2 rounded-3">.bg-sub text-white p-3 mb-2 rounded-3</p>

.bg-sub2 text-white p-3 mb-2 rounded-3

<p class="bg-sub2 text-white p-3 mb-2 rounded-3">.bg-sub2 text-white p-3 mb-2 rounded-3</p>

shadow-sm p-3 mb-2 rounded-3

<p class="shadow-sm p-3 mb-2 rounded-3">shadow-sm p-3 mb-2 rounded-3</p>

.bg-main--light p-3 mb-2 rounded-3

<p class="bg-main--light p-3 mb-2 rounded-3">.bg-main--light p-3 mb-2 rounded-3</p>

.bg-sub--light p-3 mb-2 rounded-3

<p class="bg-sub--light p-3 mb-2 rounded-3">.bg-sub--light p-3 mb-2 rounded-3</p>

.bg-sub2--light p-3 mb-2 rounded-3

<p class="bg-sub2--light p-3 mb-2 rounded-3">.bg-sub2--light p-3 mb-2 rounded-3</p>

.border border-main ボーダー

<p class="border border-main p-3 mb-2 rounded-3">.border border-main ボーダー</p>

白文字+テーマ色背景(text-bg-*)

文字色(白)と背景色をセットで指定するユーティリティ。バッジや帯に。

.text-bg-main

<p class="text-bg-main p-3 mb-2 rounded-3">.text-bg-main</p>

.text-bg-sub

<p class="text-bg-sub p-3 mb-2 rounded-3">.text-bg-sub</p>

.text-bg-sub2

<p class="text-bg-sub2 p-3 mb-2 rounded-3">.text-bg-sub2</p>

行数制限・SP縮小

.line-clamp は2行を超えるテキストを「…」で省略します。

長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。

<p class="line-clamp">長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。長い文章が2行で省略されます。</p>

.text-sm-mobile はSP(575px以下)でフォントサイズを縮小します。

SP(575px以下)でフォントサイズが縮小されます。

<p class="text-sm-mobile">SP(575px以下)でフォントサイズが縮小されます。</p>

注釈(.text-note)

「※〜」の小さめ補足テキスト。折り返し行が記号の後ろに揃います(ぶら下げインデント)。

※ 表示価格はすべて税込です。お住まいの地域によっては別途送料がかかる場合があります。長い注釈でも折り返し行が記号の後ろに揃います。

<p class="text-note">※ 表示価格はすべて税込です。お住まいの地域によっては別途送料がかかる場合があります。長い注釈でも折り返し行が記号の後ろに揃います。</p>

マーカー強調(.text-marker)

テキストの下半分に淡色を敷く蛍光ペン風の強調。太字にする場合は fw-bold を併用します。

本文の中でここが重要なポイントという形で使います。

<p>本文の中で<span class="text-marker">ここが重要なポイント</span>という形で使います。</p>

色はメインカラーとサブカラー2の淡色もあります。

<p>色は<span class="text-marker text-marker--main">メインカラー</span>と<span class="text-marker text-marker--sub2">サブカラー2</span>の淡色もあります。</p>

太字と組み合わせた強調もできます。

<p><span class="text-marker fw-bold">太字と組み合わせた強調</span>もできます。</p>

アラート(Bootstrap .alert の独自バリアント)

alert alert-main--light(メインカラーの淡色アラート)
<div class="alert alert-main--light">alert alert-main--light(メインカラーの淡色アラート)</div>
alert alert-gray--light(グレーの淡色アラート)
<div class="alert alert-gray--light">alert alert-gray--light(グレーの淡色アラート)</div>

5. レイアウト雛形

Bootstrap 5 のグリッドと独自 container-inner-* の組み合わせによるコピペ用雛形です。新規CSSは使いません。

基本形(.container + .container-inner-xl)

container-inner-xl(max-width 1140px)のほか、container-inner-lg(960px)/ container-inner-md(720px)/ container-inner-sm(540px)も同じ書き方で使えます。

ここに内容
<div class="container">
  <div class="container-inner-xl">
    ここに内容
  </div>
</div>

2カラム(.row.g-3 + .col-lg-6 × 2)

カラム1
カラム2
<div class="row g-3">
  <div class="col-lg-6">カラム1</div>
  <div class="col-lg-6">カラム2</div>
</div>

3カラム(.row + .col-lg-4 × 3)

カラム1
カラム2
カラム3
<div class="row">
  <div class="col-lg-4">カラム1</div>
  <div class="col-lg-4">カラム2</div>
  <div class="col-lg-4">カラム3</div>
</div>

6. 見出し

h2 の全バリエーション

h2 .text-main

<h2 class="text-main">h2 .text-main</h2>

h2.headline.bg.bg-main

<h2 class="headline bg bg-main">h2.headline.bg.bg-main</h2>

h2.headline.border-b.border-main

<h2 class="headline border-b border-main">h2.headline.border-b.border-main</h2>

h2.headline.border-s.border-main

<h2 class="headline border-s border-main">h2.headline.border-s.border-main</h2>

h2.headline.border-y.border-main

<h2 class="headline border-y border-main">h2.headline.border-y.border-main</h2>

h2.headline.border-sb.border-main

<h2 class="headline border-sb border-main">h2.headline.border-sb.border-main</h2>

h2.headline.border-b.border-sub

<h2 class="headline border-b border-sub">h2.headline.border-b.border-sub</h2>

h2.headline.border-s.border-sub

<h2 class="headline border-s border-sub">h2.headline.border-s.border-sub</h2>

h2.headline.border-y.border-sub

<h2 class="headline border-y border-sub">h2.headline.border-y.border-sub</h2>

h2.headline.border-sb.border-sub

<h2 class="headline border-sb border-sub">h2.headline.border-sb.border-sub</h2>
h3〜h6 について:上記の h2 と同じクラス(headline + bg bg-main / border-b / border-s / border-y / border-sb × border-main / border-sub)が h3〜h6 でもそのまま使えます。以下は代表例です。

h3.headline.bg.bg-main

<h3 class="headline bg bg-main">h3.headline.bg.bg-main</h3>

h3.headline.border-s.border-main

<h3 class="headline border-s border-main">h3.headline.border-s.border-main</h3>

7. ボタン

default、outline
アイコンを変えたもの(内部リンク、外部リンク、ファイル形式)

標準ボタン

標準ボタン
<a href="" class="btn btn-main">標準ボタン</a>
サブカラーボタン
<a href="" class="btn btn-sub">サブカラーボタン</a>
アウトラインボタン
<a href="" class="btn btn-outline-main">アウトラインボタン</a>
アウトラインボタン
<a href="" class="btn btn-outline-sub">アウトラインボタン</a>
テキストリンク
<a href="" class="btn btn-link">テキストリンク</a>

角丸ボタン(Bootstrap rounded-pill)

角丸メインボタン
<a href="" class="btn btn-main rounded-pill">角丸メインボタン</a>
角丸サブボタン
<a href="" class="btn btn-sub rounded-pill">角丸サブボタン</a>

ボタン無効

ボタン無効
<a href="" class="btn btn-main disabled">ボタン無効</a>

アイコン付きボタン

内部リンク
<a href="/test.html" class="btn btn-main btn-arrow btn-with-icon">内部リンク</a>
内部リンク
<a href="/test.html" class="btn btn-outline-main btn-arrow btn-with-icon">内部リンク</a>
外部リンク
<a href="https://www.google.com/?hl=ja" class="btn btn-main btn-external btn-with-icon" target="_blank" rel="noopener">外部リンク</a>
外部リンク
<a href="https://www.google.com/?hl=ja" class="btn btn-outline-main btn-external btn-with-icon" target="_blank" rel="noopener">外部リンク</a>
PDFリンク
<a href="document.pdf" class="btn btn-main btn-pdf btn-with-icon" target="_blank" rel="noopener">PDFリンク</a>
PDFリンク
<a href="document.pdf" class="btn btn-outline-main btn-pdf btn-with-icon" target="_blank" rel="noopener">PDFリンク</a>

テキストリンク(.btn-link)のアイコン

内部リンク
<a href="/test.html" class="btn btn-link btn-arrow btn-with-icon">内部リンク</a>
外部リンク
<a href="https://www.google.com/?hl=ja" class="btn btn-link btn-external btn-with-icon" target="_blank" rel="noopener">外部リンク</a>
PDFリンク
<a href="document.pdf" class="btn btn-link btn-pdf btn-with-icon" target="_blank" rel="noopener">PDFリンク</a>

サイズバリエーション

小さめボタン
<a href="" class="btn btn-main btn-sm">小さめボタン</a>
幅100%ボタン
<a href="" class="btn btn-main w-100">幅100%ボタン</a>
最小幅リセットボタン
<a href="" class="btn btn-main">最小幅リセットボタン</a>

最小幅指定(min-w-*)

min-w-100 / min-w-150 / min-w-200 / min-w-250 / min-w-300 / min-w-400 が使えます(数値は px)。ボタン以外の要素にも使えます。

min-width ボタン
<a href="" class="btn btn-main min-w-100">min-width ボタン</a>
min-width 200px
<a href="" class="btn btn-main min-w-200">min-width 200px</a>
min-width 300px
<a href="" class="btn btn-main min-w-300">min-width 300px</a>

アイコン付き中央寄せテキストボタン

中央寄せテキスト
<a href="/test.html" class="btn btn-main btn-arrow btn-with-icon">中央寄せテキスト</a>
小さいボタン中央寄せ
<a href="/test.html" class="btn btn-main btn-arrow btn-with-icon btn-sm">小さいボタン中央寄せ</a>
外部リンク中央寄せ
<a href="https://www.google.com/?hl=ja" class="btn btn-outline-main btn-external btn-with-icon btn-sm" target="_blank" rel="noopener">外部リンク中央寄せ</a>
PDF中央寄せ
<a href="document.pdf" class="btn btn-outline-main btn-pdf btn-with-icon btn-sm" target="_blank" rel="noopener">PDF中央寄せ</a>
注意: 以前の属性セレクタ([href$=\".html\"]、[target=\"_blank\"][href^=\"http\"]など)は廃止され、明示的なクラス(btn-arrow、btn-external、btn-pdf)を使用するよう変更されました。

8. テーブル

table class="table"

Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table table--stack">
  <colgroup>
    <col class="w-100px">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table--th-main"

Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table table--th-main table--stack">
  <colgroup>
    <col class="w-100px">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table-lg"(タテ幅広め)

Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table table-lg table--stack">
  <colgroup>
    <col class="w-100px">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table no-responsive"

Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table no-responsive">
  <colgroup>
    <col class="w-100px">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table-bordered"

Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table table-bordered table--stack">
  <colgroup>
    <col class="w-100px">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table-bordered table-color"

Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table table-bordered table-color table--stack">
  <colgroup>
    <col class="w-100px">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table-bordered" thead

thead Header 1 thead Data 1
Header 1 Data 1
Header 2 Data 2
Header 3 Data 3
<table class="table table-bordered">
  <colgroup>
    <col class="w-150px">
    <col class="w-auto">
  </colgroup>
  <thead>
    <tr>
      <th>thead Header 1</th>
      <td>thead Data 1</td>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table--top-header"

Header 1 Header 2 Header 3
Data 1 Data 2 Data 3
<table class="table table--top-header">
  <colgroup>
    <col class="w-150px">
    <col class="w-auto">
    <col class="w-auto">
  </colgroup>
  <thead>
    <tr>
      <th>Header 1</th>
      <th>Header 2</th>
      <th>Header 3</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Data 1</td>
      <td>Data 2</td>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table--has-total"

Header 1 Data 1 Data 1
Header 2 Data 2 Data 2
Header 3 Data 3 Data 3
<table class="table table--has-total table--stack">
  <colgroup>
    <col class="w-150px">
    <col class="w-auto">
    <col class="w-auto">
  </colgroup>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

table class="table table--two-header"

※thead左上のすきまは空タグに反応するようになっているから、thead内左上以外は空タグにしないでね。

Header 2 Header 3 Header 4
Header 1 Data 1 Data 1 Data 1
Header 2 Data 2 Data 2 Data 2
Header 3 Data 3 Data 3 Data 3
<table class="table table--two-header">
  <colgroup>
    <col class="w-150px">
    <col class="w-auto">
    <col class="w-auto">
    <col class="w-auto">
  </colgroup>
  <thead>
    <tr>
      <th></th>
      <th>Header 2</th>
      <th>Header 3</th>
      <th>Header 4</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>Header 1</th>
      <td>Data 1</td>
      <td>Data 1</td>
      <td>Data 1</td>
    </tr>
    <tr>
      <th>Header 2</th>
      <td>Data 2</td>
      <td>Data 2</td>
      <td>Data 2</td>
    </tr>
    <tr>
      <th>Header 3</th>
      <td>Data 3</td>
      <td>Data 3</td>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>

横スクロール対応 div class="js-scrollable"

横幅が広い表をSP(767px以下)で横スクロールさせる場合は js-scrollable の div でテーブルをラップします。.js- プレフィックスのフッククラスですが、現状はCSSのみで動作します(JS実装は不要)。

Header 1 Header 2 Header 3 Header 4 Header 5
Data 1 Data 2 Data 3 Data 4 Data 5
<div class="js-scrollable">
  <table class="table table-bordered">
    <thead>
      <tr>
        <th>Header 1</th>
        <th>Header 2</th>
        <th>Header 3</th>
        <th>Header 4</th>
        <th>Header 5</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Data 1</td>
        <td>Data 2</td>
        <td>Data 3</td>
        <td>Data 4</td>
        <td>Data 5</td>
      </tr>
    </tbody>
  </table>
</div>

9. リスト

  • ul class="list--dot"
  • 丸
<ul class="list list--dot">
  <li>ul class="list--dot"</li>
  <li>丸</li>
</ul>
  • ul class="list--sq"
  • 四角
<ul class="list list--sq">
  <li>ul class="list--sq"</li>
  <li>四角</li>
</ul>
  1. ol
  2. 丸番号
<ol class="list">
  <li>ol</li>
  <li>丸番号</li>
</ol>
  1. ol class="list--round-num"
  2. 丸番号
<ol class="list list--round-num">
  <li>ol class="list--round-num"</li>
  <li>丸番号</li>
</ol>
  1. ol class="list--sq-num"
  2. 四角番号
<ol class="list list--sq-num">
  <li>ol class="list--sq-num"</li>
  <li>四角番号</li>
</ol>

マーカー色の変更(marker--sub)

marker--sub を併用するとリストマーカーの色が --sub になります(dot / sq / round-num / sq-num すべてに使えます)。

  • ul class="list--dot marker--sub"
  • マーカー色がサブカラーになります
<ul class="list list--dot marker--sub">
  <li>ul class="list--dot marker--sub"</li>
  <li>マーカー色がサブカラーになります</li>
</ul>

10. タブ

ul class="nav nav--default nav-pills"

ul class="nav nav--default nav-pills"

これは、ホームタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、プロフィールタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、コンタクトタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、無効タブの関連コンテンツの一部のプレースホルダーコンテンツ。

<!-- ピル部分 -->
<ul class="nav nav--default nav-pills mb-2" id="pills-tab" role="tablist">
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link active" id="pills-home-tab" data-bs-toggle="pill" data-bs-target="#pills-home" role="tab" aria-controls="pills-home" aria-selected="true">ホーム</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="pills-profile-tab" data-bs-toggle="pill" data-bs-target="#pills-profile" role="tab" aria-controls="pills-profile" aria-selected="false">プロフィール</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="pills-contact-tab" data-bs-toggle="pill" data-bs-target="#pills-contact" role="tab" aria-controls="pills-contact" aria-selected="false">コンタクト</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-disabled-tab" data-bs-toggle="pill" data-bs-target="#pills-disabled" type="button" role="tab" aria-controls="pills-disabled" aria-selected="false" disabled>無効</button>
  </li>
</ul>

<!-- パネル部分 -->
<div class="tab-content" id="pills-tabContent">
  <div class="tab-pane fade show active" id="pills-home" role="tabpanel" aria-labelledby="pills-home-tab" tabindex="0">
    ul class="nav nav--default nav-pills"
    <p>これは、<strong>ホームタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab" tabindex="0">
    <p>これは、<strong>プロフィールタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab" tabindex="0">
    <p>これは、<strong>コンタクトタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="pills-disabled" role="tabpanel" aria-labelledby="pills-disabled-tab" tabindex="0">
    <p>これは、<strong>無効タブ</strong>の関連コンテンツの一部のプレースホルダーコンテンツ。</p>
  </div>
</div>

サブカラー ul class="nav nav--default nav-pills tab-sub"

tab-sub を併用するとアクティブ・ホバーの背景色が --sub になります。

ul class="nav nav--default nav-pills tab-sub"

これは、ホームタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、プロフィールタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、コンタクトタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

<!-- ピル部分 -->
<ul class="nav nav--default nav-pills tab-sub mb-2" id="sub-tab" role="tablist">
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link active" id="sub-home-tab" data-bs-toggle="pill" data-bs-target="#sub-home" role="tab" aria-controls="sub-home" aria-selected="true">ホーム</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="sub-profile-tab" data-bs-toggle="pill" data-bs-target="#sub-profile" role="tab" aria-controls="sub-profile" aria-selected="false">プロフィール</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="sub-contact-tab" data-bs-toggle="pill" data-bs-target="#sub-contact" role="tab" aria-controls="sub-contact" aria-selected="false">コンタクト</button>
  </li>
</ul>

<!-- パネル部分 -->
<div class="tab-content" id="sub-tabContent">
  <div class="tab-pane fade show active" id="sub-home" role="tabpanel" aria-labelledby="sub-home-tab" tabindex="0">
    ul class="nav nav--default nav-pills tab-sub"
    <p>これは、<strong>ホームタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="sub-profile" role="tabpanel" aria-labelledby="sub-profile-tab" tabindex="0">
    <p>これは、<strong>プロフィールタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="sub-contact" role="tabpanel" aria-labelledby="sub-contact-tab" tabindex="0">
    <p>これは、<strong>コンタクトタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
</div>

ベルト型 ul class="nav nav--default nav-pills nav--belt"

nav--belt を併用するとタブ同士のボーダーが重ならないベルト状の見た目になります。

ul class="nav nav--default nav-pills nav--belt"

これは、ホームタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、プロフィールタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、コンタクトタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

<!-- ピル部分 -->
<ul class="nav nav--default nav-pills nav--belt mb-2" id="belt-tab" role="tablist">
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link active" id="belt-home-tab" data-bs-toggle="pill" data-bs-target="#belt-home" role="tab" aria-controls="belt-home" aria-selected="true">ホーム</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="belt-profile-tab" data-bs-toggle="pill" data-bs-target="#belt-profile" role="tab" aria-controls="belt-profile" aria-selected="false">プロフィール</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="belt-contact-tab" data-bs-toggle="pill" data-bs-target="#belt-contact" role="tab" aria-controls="belt-contact" aria-selected="false">コンタクト</button>
  </li>
</ul>

<!-- パネル部分 -->
<div class="tab-content" id="belt-tabContent">
  <div class="tab-pane fade show active" id="belt-home" role="tabpanel" aria-labelledby="belt-home-tab" tabindex="0">
    ul class="nav nav--default nav-pills nav--belt"
    <p>これは、<strong>ホームタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="belt-profile" role="tabpanel" aria-labelledby="belt-profile-tab" tabindex="0">
    <p>これは、<strong>プロフィールタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="belt-contact" role="tabpanel" aria-labelledby="belt-contact-tab" tabindex="0">
    <p>これは、<strong>コンタクトタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
</div>

ul class="nav nav--default nav-pills nav--btn"

ul class="nav nav--default nav-pills nav--btn"

これは、ホームタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、プロフィールタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、コンタクトタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、無効タブの関連コンテンツの一部のプレースホルダーコンテンツ。

<!-- ピル部分 -->
<ul class="nav nav--default nav-pills nav--btn mb-2" id="btn-tab" role="tablist">
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link active" id="btn-home-tab" data-bs-toggle="pill" data-bs-target="#btn-home" role="tab" aria-controls="btn-home" aria-selected="true">ホーム</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="btn-profile-tab" data-bs-toggle="pill" data-bs-target="#btn-profile" role="tab" aria-controls="btn-profile" aria-selected="false">プロフィール</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="btn-contact-tab" data-bs-toggle="pill" data-bs-target="#btn-contact" role="tab" aria-controls="btn-contact" aria-selected="false">コンタクト</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="btn-disabled-tab" data-bs-toggle="pill" data-bs-target="#btn-disabled" type="button" role="tab" aria-controls="btn-disabled" aria-selected="false" disabled>無効</button>
  </li>
</ul>

<!-- パネル部分 -->
<div class="tab-content" id="btn-tabContent">
  <div class="tab-pane fade show active" id="btn-home" role="tabpanel" aria-labelledby="btn-home-tab" tabindex="0">
    ul class="nav nav--default nav-pills nav--btn"
    <p>これは、<strong>ホームタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="btn-profile" role="tabpanel" aria-labelledby="btn-profile-tab" tabindex="0">
    <p>これは、<strong>プロフィールタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="btn-contact" role="tabpanel" aria-labelledby="btn-contact-tab" tabindex="0">
    <p>これは、<strong>コンタクトタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane fade" id="btn-disabled" role="tabpanel" aria-labelledby="btn-disabled-tab" tabindex="0">
    <p>これは、<strong>無効タブ</strong>の関連コンテンツの一部のプレースホルダーコンテンツ。</p>
  </div>
</div>

ul class="nav nav--default nav-tabs"

ul class="nav nav--default nav-tabs"

これは、ホームタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、プロフィールタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、コンタクトタブに関連付けられたコンテンツのプレースホルダコンテンツ。...

これは、無効タブの関連コンテンツの一部のプレースホルダーコンテンツ。

<!-- タブ部分 -->
<ul class="nav nav--default nav-tabs mb-2" id="myTab" role="tablist">
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home-tab-pane" role="tab" aria-controls="home-tab-pane" aria-selected="true">ホーム</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile-tab-pane" role="tab" aria-controls="profile-tab-pane" aria-selected="false">プロフィール</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="contact-tab" data-bs-toggle="tab" data-bs-target="#contact-tab-pane" role="tab" aria-controls="contact-tab-pane" aria-selected="false">コンタクト</button>
  </li>
  <li class="nav-item" role="presentation">
    <button type="button" class="nav-link" id="disabled-tab" data-bs-toggle="tab" data-bs-target="#disabled-tab-pane" role="tab" aria-controls="disabled-tab-pane" aria-selected="false" disabled>無効</button>
  </li>
</ul>

<!-- パネル部分 -->
<div id="myTabContent" class="tab-content">
  <div class="tab-pane active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">
    ul class="nav nav--default nav-tabs"
    <p>これは、<strong>ホームタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane" id="profile-tab-pane" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">
    <p>これは、<strong>プロフィールタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane" id="contact-tab-pane" role="tabpanel" aria-labelledby="contact-tab" tabindex="0">
    <p>これは、<strong>コンタクトタブ</strong>に関連付けられたコンテンツのプレースホルダコンテンツ。...</p>
  </div>
  <div class="tab-pane" id="disabled-tab-pane" role="tabpanel" aria-labelledby="disabled-tab" tabindex="0">
    <p>これは、<strong>無効タブ</strong>の関連コンテンツの一部のプレースホルダーコンテンツ。</p>
  </div>
</div>

verticalタブ class="tab-vertical"

<div class="tab-vertical">
  <div class="tab-vertical__inner">
    <div>
      <ul class="tab-vertical__container">
        <li class="tab-vertical__item slug_01 tab-vertical__item--active" data-target="slug_01">カテゴリー01</li>
        <li class="tab-vertical__item slug_02" data-target="slug_02">カテゴリー02</li>
        <li class="tab-vertical__item slug_03" data-target="slug_03">カテゴリー03</li>
      </ul>
    </div>
  </div>

  <div class="tab-vertical__content-wrapper">
    <div class="tab-vertical__content tab-vertical__content--active" data-content="slug_01">
      <ul class="topics-list">
        <li class="topics-item">
          <a href="#" class="topics-link">
            <div class="topics-meta">
              <p class="topics-date text-main fw-bold mb-0">2025/01/01</p>
              <span class="topics-category">カテゴリー01</span>
            </div>
            <div class="topics-content">
              <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.</p>
            </div>
          </a>
        </li>
        <li class="topics-item">
          <a href="#" class="topics-link">
            <div class="topics-meta">
              <p class="topics-date text-main fw-bold mb-0">2025/01/01</p>
              <span class="topics-category">カテゴリー01</span>
            </div>
            <div class="topics-content">
              <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.</p>
            </div>
          </a>
        </li>
      </ul>
    </div>
    <div class="tab-vertical__content" data-content="slug_02">
      <ul class="topics-list">
        <li class="topics-item">
          <a href="#" class="topics-link">
            <div class="topics-meta">
              <p class="topics-date text-main fw-bold mb-0">2025/01/01</p>
              <span class="topics-category">カテゴリー02</span>
            </div>
            <div class="topics-content">
              <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.</p>
            </div>
          </a>
        </li>
        <li class="topics-item">
          <a href="#" class="topics-link">
            <div class="topics-meta">
              <p class="topics-date text-main fw-bold mb-0">2025/01/01</p>
              <span class="topics-category">カテゴリー02</span>
            </div>
            <div class="topics-content">
              <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.</p>
            </div>
          </a>
        </li>
      </ul>
    </div>
    <div class="tab-vertical__content" data-content="slug_03">
      <ul class="topics-list">
        <li class="topics-item">
          <a href="#" class="topics-link">
            <div class="topics-meta">
              <p class="topics-date text-main fw-bold mb-0">2025/01/01</p>
              <span class="topics-category">カテゴリー03</span>
            </div>
            <div class="topics-content">
              <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.</p>
            </div>
          </a>
        </li>
        <li class="topics-item">
          <a href="#" class="topics-link">
            <div class="topics-meta">
              <p class="topics-date text-main fw-bold mb-0">2025/01/01</p>
              <span class="topics-category">カテゴリー03</span>
            </div>
            <div class="topics-content">
              <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.</p>
            </div>
          </a>
        </li>
      </ul>
    </div>
  </div>
</div>

11. アコーディオン

背景色 div class="accordion accordion__bg"

これが最初のアイテムのアコーディオン本体。...

これは2番目のアイテムのアコーディオン本体。...

これは3番目のアイテムのアコーディオン本体。...
<div class="accordion accordion__bg mb-3" id="accordionExample-bg">
  <div class="accordion-item">
    <h3 class="accordion-header">
      <button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#collapseOne-bg" aria-expanded="true" aria-controls="collapseOne-bg">
        アコーディオン・アイテム #1
      </button>
    </h3>
    <div id="collapseOne-bg" class="accordion-collapse collapse show" data-bs-parent="#accordionExample-bg">
      <div class="accordion-body">
        <strong>これが最初のアイテムのアコーディオン本体。</strong>...
      </div>
    </div>
  </div>
  <div class="accordion-item">
    <h3 class="accordion-header">
      <button type="button" class="accordion-button collapsed" data-bs-toggle="collapse" data-bs-target="#collapseTwo-bg" aria-expanded="false" aria-controls="collapseTwo-bg">
        アコーディオン・アイテム #2
      </button>
    </h3>
    <div id="collapseTwo-bg" class="accordion-collapse collapse" data-bs-parent="#accordionExample-bg">
      <div class="accordion-body">
        <strong>これは2番目のアイテムのアコーディオン本体。</strong>...
      </div>
    </div>
  </div>
  <div class="accordion-item">
    <h3 class="accordion-header">
      <button type="button" class="accordion-button collapsed" data-bs-toggle="collapse" data-bs-target="#collapseThree-bg" aria-expanded="false" aria-controls="collapseThree-bg">
        アコーディオン・アイテム #3
      </button>
    </h3>
    <div id="collapseThree-bg" class="accordion-collapse collapse" data-bs-parent="#accordionExample-bg">
      <div class="accordion-body">
        <strong>これは3番目のアイテムのアコーディオン本体。</strong>...
      </div>
    </div>
  </div>
</div>

下線 div class="accordion accordion__line"

これが最初のアイテムのアコーディオン本体。...

これは2番目のアイテムのアコーディオン本体。...

これは3番目のアイテムのアコーディオン本体。...
<div class="accordion accordion__line" id="accordionExample-line">
  <div class="accordion-item">
    <h3 class="accordion-header">
      <button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#collapseOne-line" aria-expanded="true" aria-controls="collapseOne-line">
        アコーディオン・アイテム #1
      </button>
    </h3>
    <div id="collapseOne-line" class="accordion-collapse collapse show" data-bs-parent="#accordionExample-line">
      <div class="accordion-body">
        <strong>これが最初のアイテムのアコーディオン本体。</strong>...
      </div>
    </div>
  </div>
  <div class="accordion-item">
    <h3 class="accordion-header">
      <button type="button" class="accordion-button collapsed" data-bs-toggle="collapse" data-bs-target="#collapseTwo-line" aria-expanded="false" aria-controls="collapseTwo-line">
        アコーディオン・アイテム #2
      </button>
    </h3>
    <div id="collapseTwo-line" class="accordion-collapse collapse" data-bs-parent="#accordionExample-line">
      <div class="accordion-body">
        <strong>これは2番目のアイテムのアコーディオン本体。</strong>...
      </div>
    </div>
  </div>
  <div class="accordion-item">
    <h3 class="accordion-header">
      <button type="button" class="accordion-button collapsed" data-bs-toggle="collapse" data-bs-target="#collapseThree-line" aria-expanded="false" aria-controls="collapseThree-line">
        アコーディオン・アイテム #3
      </button>
    </h3>
    <div id="collapseThree-line" class="accordion-collapse collapse" data-bs-parent="#accordionExample-line">
      <div class="accordion-body">
        <strong>これは3番目のアイテムのアコーディオン本体。</strong>...
      </div>
    </div>
  </div>
</div>

12. カード

Bootstrap の .card をテーマトークンへ接続したもの(罫線は淡グレー、角丸4px)。複数件をグリッドで並べる一覧に使います。見本の画像部分はプレースホルダ(ratio + bg-gray)です。実使用では <img class="card-img-top"> に差し替えてください。

基本カード

カードタイトル

カードの本文テキスト。カードの本文テキスト。

<div class="card">
  <div class="card-body">
    <h3 class="card-title">カードタイトル</h3>
    <p class="card-text mb-0">カードの本文テキスト。カードの本文テキスト。</p>
  </div>
</div>

画像付きカード

カードタイトル

カードの本文テキスト。

<div class="card">
  <div class="card-img-top ratio ratio-3x2 bg-gray"></div>
  <div class="card-body">
    <h3 class="card-title">カードタイトル</h3>
    <p class="card-text mb-0">カードの本文テキスト。</p>
  </div>
</div>

リンクカードのグリッド(a.card.card-hover + .row)

カード全体をリンクにする場合は a タグに card card-hover を付けます(ホバーで軽く浮きます)。高さを揃えるには h-100 を併用します。

<div class="row g-3">
  <div class="col-md-4">
    <a href="#" class="card card-hover h-100">
      <div class="card-img-top ratio ratio-3x2 bg-gray"></div>
      <div class="card-body">
        <h3 class="card-title">カード1</h3>
        <p class="card-text mb-0">カードの本文テキスト。</p>
      </div>
    </a>
  </div>
  <div class="col-md-4">
    <a href="#" class="card card-hover h-100">
      <div class="card-img-top ratio ratio-3x2 bg-gray"></div>
      <div class="card-body">
        <h3 class="card-title">カード2</h3>
        <p class="card-text mb-0">カードの本文テキスト。カードの本文テキスト。</p>
      </div>
    </a>
  </div>
  <div class="col-md-4">
    <a href="#" class="card card-hover h-100">
      <div class="card-img-top ratio ratio-3x2 bg-gray"></div>
      <div class="card-body">
        <h3 class="card-title">カード3</h3>
        <p class="card-text mb-0">カードの本文テキスト。</p>
      </div>
    </a>
  </div>
</div>

14. ステップ

順序のあるプロセス(利用の流れ・手順など)を番号丸と接続線で示します。番号は自動採番です。単なる箇条書きには .list を使ってください。

基本(ol class="step")

  1. お問い合わせ

    フォームまたはお電話でご連絡ください。
  2. お打ち合わせ

    ご要望をうかがい、内容とお見積りをご提案します。
  3. ご契約・着手

    ご契約後、制作に着手します。
  4. 納品

    検収後、納品となります。
<ol class="step">
  <li class="step__item">
    <p class="step__title">お問い合わせ</p>
    <div class="step__body">フォームまたはお電話でご連絡ください。</div>
  </li>
  <li class="step__item">
    <p class="step__title">お打ち合わせ</p>
    <div class="step__body">ご要望をうかがい、内容とお見積りをご提案します。</div>
  </li>
  <li class="step__item">
    <p class="step__title">ご契約・着手</p>
    <div class="step__body">ご契約後、制作に着手します。</div>
  </li>
  <li class="step__item">
    <p class="step__title">納品</p>
    <div class="step__body">検収後、納品となります。</div>
  </li>
</ol>

本文なし(タイトルのみ)

  1. お問い合わせ

  2. お打ち合わせ

  3. 納品

<ol class="step">
  <li class="step__item">
    <p class="step__title">お問い合わせ</p>
  </li>
  <li class="step__item">
    <p class="step__title">お打ち合わせ</p>
  </li>
  <li class="step__item">
    <p class="step__title">納品</p>
  </li>
</ol>

15. バッジ

新着マーク・カテゴリー表示などの小さなラベル。Bootstrap 標準の .badge に、配色は utilities の text-bg-* を併用します(badge 単体では色が付きません)。角丸4pxは bootstrap-map.css で適用済みです。

基本(span class="badge text-bg-*")

NEW
<span class="badge text-bg-main">NEW</span>
カテゴリー
<span class="badge text-bg-sub">カテゴリー</span>
重要
<span class="badge text-bg-sub2">重要</span>

ピル型(rounded-pill 併用)

ピル型バッジ
<span class="badge text-bg-main rounded-pill">ピル型バッジ</span>

使用例(見出し・テキストの横に付ける)

バッジの文字サイズは親要素に対する相対値(0.75em)なので、付けた先の見出しに合わせて自動で大きさが変わります。

お知らせのタイトル NEW

<h3 class="mb-0">お知らせのタイトル <span class="badge text-bg-main">NEW</span></h3>

重要 本文テキストの先頭に付ける例。

<p class="mb-0"><span class="badge text-bg-sub2">重要</span> 本文テキストの先頭に付ける例。</p>

18. もっと見る

長い本文や補足の続きを畳んで「もっと見る」で開閉します(Bootstrap collapse 利用・JS追加不要)。id と data-bs-target はページ内で一意にしてください。読み飛ばしても支障のない補足だけを畳み、Q&A形式の開閉には .accordion を使います。

基本(div class="more" + collapse)

導入のテキストはそのまま見せておき、続きだけを畳みます。

ここが畳まれている続きの本文です。開いた状態ではボタンが「閉じる」に切り替わり、矢印が上向きになります。

<div class="more">
  <p>導入のテキストはそのまま見せておき、続きだけを畳みます。</p>
  <div class="collapse" id="moreDemo1">
    <p>ここが畳まれている続きの本文です。開いた状態ではボタンが「閉じる」に切り替わり、矢印が上向きになります。</p>
  </div>
  <button type="button" class="more__toggle collapsed" data-bs-toggle="collapse" data-bs-target="#moreDemo1" aria-expanded="false" aria-controls="moreDemo1">
    <span class="more__label more__label--open">もっと見る</span>
    <span class="more__label more__label--close">閉じる</span>
  </button>
</div>

中央寄せ(text-center 併用)

畳まれている本文。トグルを中央に置きたいときは囲みに text-center を付けます。

<div class="more">
  <div class="collapse" id="moreDemo2">
    <p>畳まれている本文。トグルを中央に置きたいときは囲みに text-center を付けます。</p>
  </div>
  <div class="text-center">
    <button type="button" class="more__toggle collapsed" data-bs-toggle="collapse" data-bs-target="#moreDemo2" aria-expanded="false" aria-controls="moreDemo2">
      <span class="more__label more__label--open">もっと見る</span>
      <span class="more__label more__label--close">閉じる</span>
    </button>
  </div>
</div>