/* ==== ippo-migration-additions ==== */
/* ==== いっぽ整骨院：移行コンテンツ用追加スタイル（2026-09-29） ==== */
.pb-section h3, .pb-section .pb-h3 {
  font-size: 22px; line-height: 1.6; font-weight: bold; color: #333;
  margin: 2em 0 0.8em; padding: 0.4em 0.5em 0.4em 14px;
  border-left: 6px solid #003d96; background: #f2f7fc; clear: both;
}
.pb-section h4, .pb-section .pb-h4 {
  font-size: 18px; font-weight: bold; color: #333;
  margin: 1.6em 0 0.6em; padding-bottom: 0.25em;
  border-bottom: 2px solid #d8e2ec; clear: both;
}
.pb-section h5, .pb-section .pb-h5 {
  font-size: 16px; font-weight: bold; color: #333; margin: 1.4em 0 0.5em; clear: both;
}
.pb-section .pb-img img { max-width: 100%; height: auto; }
.pb-section .pb-banner img { max-width: 100%; height: auto; }
.pb-section .pb-2col { display: flex; gap: 1.5em; align-items: flex-start; margin: 1.8em 0; }
.pb-section .pb-2col-t { flex: 1 1 60%; }
.pb-section .pb-2col .pb-img { margin: 0; flex: 1 1 40%; }
.pb-section .pb-frame { border: 2px solid #d8e2ec; border-radius: 8px; padding: 1.2em 1.4em; margin: 1.8em 0; background: #f8fbfe; }
.pb-section .pb-frame-h { font-weight: bold; font-size: 18px; color: #003d96; border-bottom: 2px solid #d8e2ec; padding-bottom: 0.5em; margin-bottom: 0.8em; }
.pb-section .pb-table { width: 100%; border-collapse: collapse; margin: 1.6em 0; }
.pb-section .pb-table th, .pb-section .pb-table td { border: 1px solid #c8d4e0; padding: 0.7em 0.9em; font-size: 14px; line-height: 1.8; text-align: left; vertical-align: top; }
.pb-section .pb-table th { background: #eef4fa; width: 28%; }
.pb-section .pb-ol { padding-left: 1.5em; margin: 1.2em 0; }
.pb-section .pb-ol li { margin: 0.5em 0; }
.pb-section .pb-arrow { text-align: center; margin: 1em 0; }
.pb-section .pb-arrow img { width: 42px; height: auto; }
@media screen and (max-width: 768px) {
  .pb-section h3, .pb-section .pb-h3 { font-size: 19px; }
  .pb-section h4, .pb-section .pb-h4 { font-size: 17px; }
  .pb-section .pb-2col { display: block; }
}

/* ippo-migration-additions-v5 */
.pb-section .pb-list{margin:1em 0 1.5em;padding-left:1.3em;list-style:disc}
.pb-section .pb-list li{margin:.5em 0;list-style:disc}
.pb-section .pb-caption{font-size:12px;color:#666;margin:.3em 0 1.5em;line-height:1.6}

/* ippo-migration-additions-v5 */
.pb-section .pb-list{margin:1em 0 1.5em;padding-left:1.3em;list-style:disc}
.pb-section .pb-list li{margin:.5em 0;list-style:disc}
.pb-section .pb-caption{font-size:12px;color:#666;margin:.3em 0 1.5em;line-height:1.6}
.pb-section .pb-cta{margin:1.5em 0;text-align:center}
.pb-section .pb-cta a{display:inline-block;padding:14px 40px;background:#003d96;color:#fff;font-size:18px;font-weight:bold;text-decoration:none;border-radius:4px}
.pb-section .pb-cta a:hover{opacity:.85}

/* v5: 行間改善 */
.pb-section p{line-height:2}
.pb-section li{line-height:1.9}
.pb-section{line-height:2}

/* v5: サイドバーバナー（WEB予約・お問合せ） */
.ippo-bnr-wrap{margin:0 0 24px}
.ippo-bnr{display:block;text-align:center;text-decoration:none;border-radius:8px;margin:0 0 12px;box-shadow:0 2px 4px rgba(0,0,0,.18)}
.ippo-bnr--yoyaku{background:linear-gradient(#ffa64d,#f97316);padding:14px 8px 16px}
.ippo-bnr--yoyaku .ippo-bnr__lead,.ippo-bnr--yoyaku .ippo-bnr__tail{color:#fff;font-size:13px}
.ippo-bnr--yoyaku .ippo-bnr__main{color:#ffe45c;font-size:26px;font-weight:bold;margin:0 4px;text-shadow:0 2px 3px rgba(0,0,0,.3);display:inline-block;vertical-align:baseline}
.ippo-bnr--yoyaku .ippo-bnr__arrow{font-size:11px;vertical-align:middle}
.ippo-bnr--contact{background:linear-gradient(#f2faff,#d7ecff);padding:22px 8px}
.ippo-bnr--contact .ippo-bnr__main2{color:#ff8c00;font-size:24px;font-weight:bold}
.ippo-bnr--contact .ippo-bnr__arrow2{color:#ff8c00;font-size:22px;font-weight:bold;margin-left:8px}

/* v5: サイドバーバナー（元画像版） */
.ippo-bnr-img{display:block;margin:0 0 20px}
.ippo-bnr-img img{border-radius:6px;box-shadow:0 2px 4px rgba(0,0,0,.15)}
