信頼・紹介

院長挨拶・スタッフ紹介・患者様の声など、信頼をつくるパーツ

院長挨拶ブロック

写真と挨拶文・署名を組み合わせた、信頼感を伝える院長挨拶パーツです。

コード・使い方を見る
<div class="dg-wrap">
  <h3 class="dg-title">院長挨拶</h3>
  <div class="dg-body">
    <div class="dg-photo">
      <img src="https://placehold.co/280x340" alt="院長 湊 太郎" width="280" height="340" loading="lazy">
    </div>
    <div class="dg-content">
      <p class="dg-text">
        この度は、みなと総合クリニックのウェブサイトをご覧いただき、誠にありがとうございます。
        当院では「話しやすく、頼りになるクリニック」を目指し、一人ひとりの患者様のお話に耳を傾け、
        納得していただけるまで丁寧にご説明することを大切にしています。
      </p>
      <p class="dg-text">
        小さな不調でも気軽にご相談いただける、地域のかかりつけ医でありたいと考えております。
        どうぞ安心してお越しください。
      </p>
      <p class="dg-signature">院長 湊 太郎</p>
    </div>
  </div>
</div>
.dg-wrap {
  --dg-accent: #2f8f9d; /* アクセントカラー(見出し・署名に使用、医院のテーマ色に変更してください) */
  max-width: 760px;
  margin: 0 auto;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 2rem;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
}
.dg-title {
  margin: 0 0 1.4rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--dg-accent);
  letter-spacing: .08em;
  text-align: center;
}
.dg-body {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
.dg-photo {
  flex: 0 0 auto;
}
.dg-photo img {
  display: block;
  width: 140px;
  height: auto;
  border-radius: 10px;
  object-fit: cover;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .1);
}
.dg-content {
  flex: 1 1 auto;
  min-width: 0;
}
.dg-text {
  margin: 0 0 1rem;
  font-size: .92rem;
  line-height: 1.9;
  color: #374151;
}
.dg-text:last-of-type {
  margin-bottom: 1.3rem;
}
.dg-signature {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--dg-accent);
  text-align: right;
}
@media (max-width: 640px) {
  .dg-wrap { padding: 1.5rem 1.2rem; }
  .dg-body {
    flex-direction: column;
    align-items: center;
    gap: 1.2rem;
    text-align: center;
  }
  .dg-photo img { width: 160px; }
  .dg-text { text-align: left; }
}

スタッフ紹介カード

写真・名前・役職・一言コメントを並べる、スタッフ紹介の3列カードグリッドです。

コード・使い方を見る
<div class="sc-wrap">
  <h3 class="sc-title">スタッフ紹介</h3>
  <ul class="sc-grid">
    <li class="sc-card">
      <img class="sc-photo" src="https://placehold.co/240x240" alt="看護師 佐藤 花子" width="240" height="240" loading="lazy">
      <p class="sc-name">佐藤 花子</p>
      <p class="sc-role">看護師</p>
      <p class="sc-comment">笑顔でお迎えできるよう心がけています。</p>
    </li>
    <li class="sc-card">
      <img class="sc-photo" src="https://placehold.co/240x240" alt="受付 鈴木 恵" width="240" height="240" loading="lazy">
      <p class="sc-name">鈴木 恵</p>
      <p class="sc-role">受付</p>
      <p class="sc-comment">お困りごとはお気軽にお声がけください。</p>
    </li>
    <li class="sc-card">
      <img class="sc-photo" src="https://placehold.co/240x240" alt="臨床検査技師 田中 誠" width="240" height="240" loading="lazy">
      <p class="sc-name">田中 誠</p>
      <p class="sc-role">臨床検査技師</p>
      <p class="sc-comment">正確な検査で診療をサポートします。</p>
    </li>
  </ul>
</div>
.sc-wrap {
  --sc-accent: #2f8f9d; /* アクセントカラー(見出し・役職文字に使用、医院のテーマ色に変更してください) */
  --sc-columns: 3;      /* グリッドの列数(PC表示時。2〜4程度を推奨) */
  max-width: 960px;
  margin: 0 auto;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  text-align: center;
}
.sc-title {
  margin: 0 0 1.6rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--sc-accent);
  letter-spacing: .08em;
}
.sc-grid {
  display: grid;
  grid-template-columns: repeat(var(--sc-columns), 1fr);
  gap: 1.4rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sc-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 1.6rem 1.2rem 1.4rem;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
  transition: transform .18s ease, box-shadow .18s ease;
}
.sc-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, .1);
}
.sc-photo {
  display: block;
  width: 96px;
  height: 96px;
  margin: 0 auto .9rem;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .1);
}
.sc-name {
  margin: 0 0 .3rem;
  font-size: 1rem;
  font-weight: 700;
  color: #1f2937;
}
.sc-role {
  margin: 0 0 .8rem;
  font-size: .8rem;
  font-weight: 600;
  color: var(--sc-accent);
  letter-spacing: .04em;
}
.sc-comment {
  margin: 0;
  font-size: .85rem;
  line-height: 1.7;
  color: #6b7280;
}
@media (max-width: 640px) {
  .sc-grid { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .sc-card { padding: 1.3rem .9rem 1.1rem; }
}
@media (max-width: 400px) {
  .sc-grid { grid-template-columns: 1fr; }
}

患者様の声

引用符付きのカードで患者様の声を紹介する、3件並びの体験談紹介パーツです。

コード・使い方を見る
<div class="ts-wrap">
  <h3 class="ts-title">患者様の声</h3>
  <ul class="ts-grid">
    <li class="ts-card">
      <span class="ts-quote-mark" aria-hidden="true">&ldquo;</span>
      <p class="ts-text">初めての来院で緊張していましたが、受付の方も先生も丁寧に対応してくださり、安心して相談できました。</p>
      <p class="ts-attr">50代 女性</p>
    </li>
    <li class="ts-card">
      <span class="ts-quote-mark" aria-hidden="true">&ldquo;</span>
      <p class="ts-text">検査の内容や今後の流れについて、専門用語を使わずわかりやすく説明していただけたので納得して通院できています。</p>
      <p class="ts-attr">40代 男性</p>
    </li>
    <li class="ts-card">
      <span class="ts-quote-mark" aria-hidden="true">&ldquo;</span>
      <p class="ts-text">待ち時間の目安を教えていただけたり、こちらの質問にも一つひとつ丁寧に答えてくださり、気持ちよく通えています。</p>
      <p class="ts-attr">60代 女性</p>
    </li>
  </ul>
</div>
.ts-wrap {
  --ts-accent: #2f8f9d; /* アクセントカラー(見出し・引用符に使用、医院のテーマ色に変更してください) */
  max-width: 960px;
  margin: 0 auto;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  text-align: center;
}
.ts-title {
  margin: 0 0 1.6rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--ts-accent);
  letter-spacing: .08em;
}
.ts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ts-card {
  position: relative;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 2rem 1.4rem 1.4rem;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
  text-align: left;
}
.ts-quote-mark {
  position: absolute;
  top: .3rem;
  left: 1rem;
  font-size: 2.6rem;
  font-family: Georgia, "Times New Roman", serif;
  color: var(--ts-accent);
  opacity: .25;
  line-height: 1;
  user-select: none;
}
.ts-text {
  margin: .6rem 0 1.2rem;
  font-size: .88rem;
  line-height: 1.8;
  color: #374151;
}
.ts-attr {
  margin: 0;
  font-size: .8rem;
  font-weight: 600;
  color: #9ca3af;
  text-align: right;
}
@media (max-width: 720px) {
  .ts-grid { grid-template-columns: 1fr; gap: 1rem; }
}

数字で見る実績

開院年数や患者数などを数字で強調して見せる、静的な実績グリッドです。

コード・使い方を見る
<div class="sn-wrap">
  <h3 class="sn-title">数字で見る、みなと総合クリニック</h3>
  <ul class="sn-grid">
    <li class="sn-item">
      <p class="sn-num"><span class="sn-value">15</span><span class="sn-unit">年</span></p>
      <p class="sn-label">開院からの実績</p>
    </li>
    <li class="sn-item">
      <p class="sn-num"><span class="sn-value">48,000</span><span class="sn-unit">人</span></p>
      <p class="sn-label">累計患者数</p>
    </li>
    <li class="sn-item">
      <p class="sn-num"><span class="sn-value">4</span><span class="sn-unit">名</span></p>
      <p class="sn-label">在籍医師数</p>
    </li>
    <li class="sn-item">
      <p class="sn-num"><span class="sn-value">12</span><span class="sn-unit">台</span></p>
      <p class="sn-label">駐車場台数</p>
    </li>
  </ul>
</div>
.sn-wrap {
  --sn-accent: #2f8f9d; /* 数字・見出しのアクセントカラー(医院のテーマ色に変更してください) */
  --sn-columns: 4;      /* グリッドの列数(PC表示時。2〜4程度を推奨) */
  max-width: 960px;
  margin: 0 auto;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  text-align: center;
}
.sn-title {
  margin: 0 0 1.8rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: #1f2937;
  letter-spacing: .06em;
}
.sn-grid {
  display: grid;
  grid-template-columns: repeat(var(--sn-columns), 1fr);
  gap: 1.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sn-item {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 1.8rem 1rem;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .05);
}
.sn-num {
  margin: 0 0 .5rem;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: .2em;
}
.sn-value {
  font-size: 2.1rem;
  font-weight: 800;
  color: var(--sn-accent);
  line-height: 1;
  font-feature-settings: "tnum";
}
.sn-unit {
  font-size: .95rem;
  font-weight: 600;
  color: var(--sn-accent);
}
.sn-label {
  margin: 0;
  font-size: .82rem;
  color: #6b7280;
  letter-spacing: .02em;
}
@media (max-width: 640px) {
  .sn-grid { grid-template-columns: repeat(2, 1fr); gap: .9rem; }
  .sn-item { padding: 1.4rem .8rem; }
  .sn-value { font-size: 1.7rem; }
}

資格・経歴タイムライン

院長の経歴や資格を年号付きの縦型タイムラインで示す、信頼感を高めるパーツです。

コード・使い方を見る
<div class="ql-wrap">
  <h3 class="ql-title">院長の経歴・資格</h3>
  <ol class="ql-list">
    <li class="ql-item">
      <span class="ql-year">2005</span>
      <p class="ql-text">◯◯大学医学部 卒業</p>
    </li>
    <li class="ql-item">
      <span class="ql-year">2007</span>
      <p class="ql-text">◯◯大学附属病院 内科 入局</p>
    </li>
    <li class="ql-item">
      <span class="ql-year">2011</span>
      <p class="ql-text">医学博士 取得</p>
    </li>
    <li class="ql-item">
      <span class="ql-year">2015</span>
      <p class="ql-text">日本内科学会 認定内科医 取得</p>
    </li>
    <li class="ql-item">
      <span class="ql-year">2018</span>
      <p class="ql-text">みなと総合クリニック 開院</p>
    </li>
  </ol>
</div>
.ql-wrap {
  --ql-accent: #2f8f9d; /* 線・年号の色(医院のテーマ色に変更してください) */
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  max-width: 640px;
  margin: 0 auto;
  box-sizing: border-box;
}
.ql-wrap * { box-sizing: border-box; }
.ql-title {
  margin: 0 0 1.4em;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 700;
  color: #2d3339;
  letter-spacing: .06em;
}
.ql-list {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}
.ql-list::before {
  content: "";
  position: absolute;
  top: 6px;
  bottom: 6px;
  left: 68px;
  width: 2px;
  background: var(--ql-accent);
  opacity: .3;
}
.ql-item {
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 1.4em;
  padding: 0 0 1.4em;
}
.ql-item:last-child { padding-bottom: 0; }
.ql-item::before {
  content: "";
  position: absolute;
  left: 63px;
  top: 4px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--ql-accent);
  border: 2px solid #fff;
  box-shadow: 0 0 0 2px var(--ql-accent);
  z-index: 1;
}
.ql-year {
  flex-shrink: 0;
  width: 56px;
  text-align: right;
  font-weight: 700;
  font-size: .95rem;
  color: var(--ql-accent);
  font-variant-numeric: tabular-nums;
}
.ql-text {
  margin: 0;
  padding-left: 1.4em;
  font-size: .92rem;
  line-height: 1.7;
  color: #2d3339;
}

@media (max-width: 480px) {
  .ql-list::before { left: 48px; }
  .ql-item::before { left: 43px; }
  .ql-item { gap: 1em; }
  .ql-year { width: 40px; font-size: .84rem; }
  .ql-text { font-size: .84rem; padding-left: 1em; }
}