/* bl-parts v1 (2026-09-24 / 11)
   Blogger sales-template list parts for Cloudflare pages.
   Colors come from the page scope; wording, order and links are untouched. */

.bl-scope-clinic{--bl-accent:#1f3a5f;--bl-deep:#142844;--bl-soft:#f4f6f9;--bl-line:#e4e6eb;--bl-ink:#1a2438;--bl-sub:#232b38;--bl-gold:#8a6d3f;--bl-mark:#b08d57;--bl-serif:"Noto Serif JP","Hiragino Mincho ProN",serif;--bl-num:"Cormorant Garamond","Noto Serif JP",serif;font-variant-numeric:lining-nums}
.bl-scope-corp{--bl-accent:#1b3c8e;--bl-deep:#13245d;--bl-soft:#f2f4f9;--bl-line:#e5e5e5;--bl-ink:#212121;--bl-sub:#3a3a3a;--bl-gold:#1a5fb4;--bl-mark:#5ec8e0;--bl-serif:"Noto Serif JP",serif;--bl-num:"Bitter","Noto Serif JP",serif}
.bl-scope-thrive{--bl-accent:#7D5A8F;--bl-deep:#4A2C4E;--bl-soft:#F5F0F7;--bl-line:#E8DEEC;--bl-ink:#1B1815;--bl-sub:#2B2622;--bl-gold:#7A6636;--bl-mark:#B8A068;--bl-serif:"Noto Serif JP","Hiragino Mincho ProN",serif;--bl-num:"Cormorant Garamond","Noto Serif JP",serif}

/* wide: cards and tiles leave the 900px reading column (CLAUDE.md 11-4) */
.bl-wide{position:relative;left:50%;transform:translateX(-50%);width:min(1120px,calc(100vw - 40px));max-width:none}

/* 1. numbered tiles (#36 sora "reasons"): 01 + top rule */
ul.bl-tiles{list-style:none;margin:28px 0 40px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 32px;counter-reset:bl}
ul.bl-tiles>li{counter-increment:bl;position:relative;margin:0;padding:22px 0 0;border-top:2px solid var(--bl-line);color:var(--bl-ink);font-size:17px;line-height:1.8}
ul.bl-tiles>li::before{content:counter(bl,decimal-leading-zero);display:block;font-family:var(--bl-num);font-size:44px;line-height:1;color:var(--bl-accent);margin:0 0 12px;letter-spacing:.02em}
ul.bl-tiles>li::after{content:"";position:absolute;left:0;top:-2px;width:48px;height:2px;background:var(--bl-accent)}
ul.bl-tiles.bl-2{grid-template-columns:repeat(2,minmax(0,1fr))}

/* 2. check cards (#22 list design): same-size box on the left, line only, no shadow */
ul.bl-checks{list-style:none;margin:24px 0 40px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
ul.bl-checks>li{position:relative;margin:0;display:flex;align-items:center;gap:16px;min-height:72px;padding:14px 18px 14px 14px;border:1.5px solid var(--bl-line);border-radius:8px;background:#fff;color:var(--bl-ink);font-size:17px;line-height:1.7}
ul.bl-checks>li::before{content:"";flex:0 0 44px;width:44px;height:44px;border-radius:8px;background:var(--bl-soft)}
ul.bl-checks>li::after{content:"";position:absolute;left:26px;top:50%;width:20px;height:20px;margin-top:-10px;background:var(--bl-accent);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E") center/contain no-repeat}

/* 3. numbered rows (#34 kugayama / #37 fujinoki "reasons"): 01 | text, rule under each */
ul.bl-rows{list-style:none;margin:24px 0 40px;padding:0;counter-reset:bl;border-top:1px solid var(--bl-line)}
ul.bl-rows>li{counter-increment:bl;display:grid;grid-template-columns:72px 1fr;align-items:baseline;gap:8px;margin:0;padding:20px 4px;border-bottom:1px solid var(--bl-line);color:var(--bl-ink);font-size:17px;line-height:1.8}
ul.bl-rows>li::before{content:counter(bl,decimal-leading-zero);font-family:var(--bl-num);font-size:30px;line-height:1;color:var(--bl-mark)}

/* 4. band card (#37 fujinoki "departments"): colored band header + dotted list */
h2.bl-band{margin:48px 0 0!important;padding:18px 24px!important;background:var(--bl-deep);color:#fff!important;font-family:var(--bl-serif);font-size:21px!important;line-height:1.6;border:0!important;border-radius:8px 8px 0 0}
h2.bl-band::after,h2.bl-band::before{display:none!important}
ul.bl-bandlist{list-style:none;margin:0 0 8px!important;padding:10px 24px 14px!important;border:1.5px solid var(--bl-line);border-top:0;border-radius:0 0 8px 8px;background:#fff}
ul.bl-bandlist>li{position:relative;margin:0;padding:14px 0 14px 26px;border-bottom:1px dashed var(--bl-line);color:var(--bl-ink);font-size:17px;line-height:1.8}
ul.bl-bandlist>li:last-child{border-bottom:0}
ul.bl-bandlist>li::before{content:"";position:absolute;left:4px;top:1.45em;width:7px;height:7px;border-radius:50%;background:var(--bl-mark)}

/* 5. vertical timeline (#35 mori-no-oto "treatment"): circle number + line */
ul.bl-timeline{list-style:none;margin:28px 0 40px;padding:0;counter-reset:bl;position:relative}
ul.bl-timeline>li{counter-increment:bl;position:relative;margin:0;padding:6px 0 26px 64px;color:var(--bl-ink);font-size:17px;line-height:1.8}
ul.bl-timeline>li::before{content:counter(bl,decimal-leading-zero);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:var(--bl-deep);color:#fff;font-family:var(--bl-num);font-size:17px;line-height:40px;text-align:center}
ul.bl-timeline>li::after{content:"";position:absolute;left:19.5px;top:44px;bottom:4px;width:1px;background:var(--bl-line)}
ul.bl-timeline>li:last-child::after{display:none}

/* 6. price (#7 shiro-shift): two amounts side by side, big figures */
.bl-price{display:grid!important;grid-template-columns:1fr 1fr;gap:0;padding:0!important;border:1.5px solid var(--bl-line)!important;border-radius:8px;background:#fff!important;text-align:center;overflow:hidden}
.bl-price>*{margin:0!important}
.bl-price>:first-child{grid-column:1/-1;padding:14px!important;background:var(--bl-soft);letter-spacing:.24em;color:var(--bl-gold)!important;font-size:13px!important}
.bl-price>[class*=amount]{padding:30px 12px 26px!important;font-family:var(--bl-num);font-size:52px!important;line-height:1.1;color:var(--bl-deep)!important}
.bl-price>[class*=amount]+[class*=amount]{border-left:1px solid var(--bl-line)}
.bl-price>[class*=amount] small{display:block;margin-top:8px;font-family:var(--bl-serif);font-size:15px;color:var(--bl-sub);letter-spacing:.06em}
.bl-price>[class*=note]{grid-column:1/-1;padding:14px 20px!important;border-top:1px solid var(--bl-line);font-size:15px!important;color:var(--bl-sub)!important}

/* 7. feature cards from h3+p pairs (#8 shiro-hikaku): 3 columns, number on the heading */
.bl-feature{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;counter-reset:bl}
.bl-feature>h2{grid-column:1/-1}
.bl-feature>h3{grid-row:2;counter-increment:bl;margin:18px 0 0!important;padding:26px 24px 10px!important;border:1.5px solid var(--bl-line);border-bottom:0;border-radius:8px 8px 0 0;background:#fff;font-size:19px!important;line-height:1.6}
.bl-feature>h3::before{content:counter(bl,decimal-leading-zero);display:block;margin-bottom:10px;font-family:var(--bl-num);font-size:34px;line-height:1;color:var(--bl-accent)}
.bl-feature>p{grid-row:3;margin:0!important;padding:0 24px 26px!important;border:1.5px solid var(--bl-line);border-top:0;border-radius:0 0 8px 8px;background:#fff;font-size:16px;line-height:1.85}

@media (max-width:900px){
  ul.bl-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bl-feature{grid-template-columns:1fr}
  .bl-feature>h3,.bl-feature>p{grid-row:auto}
}
@media (max-width:640px){
  ul.bl-tiles,ul.bl-tiles.bl-2,ul.bl-checks{grid-template-columns:1fr}
  ul.bl-tiles>li::before{font-size:36px}
  .bl-price>[class*=amount]{font-size:40px!important}
  ul.bl-rows>li{grid-template-columns:52px 1fr}
}

/* 2026-09-24 07番：クリニックの共通CSSが li に list-style:disc を当てるため、部品の li は印を消す（印は各部品の ::before が持つ） */
ul.bl-tiles>li,ul.bl-checks>li,ul.bl-rows>li,ul.bl-bandlist>li,ul.bl-timeline>li{list-style:none}

/* 2026-09-24 07番：ブログ記事（#single-content）の中の bl-checks は、記事の ul の余白・印を外す */
#single-content ul.bl-checks{margin:24px 0 40px;padding:0;list-style:none}
#single-content ul.bl-checks>li{margin:0}

/* 2026-09-26 07番：料金を「10分 10,000円」の1行へ。金額は1つ、WHAT と HOW を同じ大きさ・同じ色で並べる（640px以下は縦） */
.bl-price>.fee-one{grid-column:1/-1}
.bl-price:has(>.fee-card){max-width:680px!important}
.bl-price:has(>.fee-card)>*{max-width:none!important}
.bl-price>.fee-one small{display:inline;margin:0 0 0 2px}
.bl-price>.fee-card{padding:22px 24px;border-top:1px solid var(--bl-line);text-align:left}
.bl-price>.fee-card+.fee-card{border-left:1px solid var(--bl-line)}
.bl-price .fee-card p.fee-card__ttl{margin:0 0 10px!important;padding:0!important;font-family:var(--bl-serif);font-size:18px!important;line-height:1.6;color:var(--bl-deep)!important}
.bl-price .fee-card p.fee-card__txt{margin:0!important;padding:0!important;font-size:16px!important;line-height:1.85;color:var(--bl-ink)!important}
@media (max-width:640px){.bl-price>.fee-card{grid-column:1/-1}.bl-price>.fee-card+.fee-card{border-left:0}}

/* 2026-09-26 07番：見出しの統一（h3＝21px。600px以下は19px） */
@media(min-width:601px){.bl-feature>h3{font-size:21px!important}}
