/* Komatsubara Beauty Menu（美容メニューと料金）— 自費＝金の色。角は丸く */
.kbm{--gold:#8A6A1E;--gold-d:#6A5014;--soft:#FBF7EE;--line:#E6D9BF;--ink:#3A3229;--muted:#6B5F50;color:var(--ink);line-height:1.75;max-width:1100px;margin:40px auto 64px}
.kbm *{box-sizing:border-box}
.kbm .kbm-title{font-size:1.6em;color:var(--gold-d);text-align:center;margin:0 0 .2em;letter-spacing:.08em;border:0;padding:0}
.kbm .kbm-title::before,.kbm .kbm-title::after{display:none}
.kbm .kbm-lead{text-align:center;color:var(--muted);margin:0 0 1.4em}
.kbm .kbm-nayami{background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:16px 18px;margin:0 0 22px}
.kbm .kbm-nayami-h{margin:0 0 10px;font-weight:700;color:var(--gold-d)}
.kbm .kbm-chips{display:flex;flex-wrap:wrap;gap:8px}
.kbm .kbm-chip{border:1.5px solid var(--gold);color:var(--gold-d);background:#fff;border-radius:999px;padding:6px 16px;font-size:.95em;font-weight:700;cursor:pointer;font-family:inherit;line-height:1.5}
.kbm .kbm-chip.is-on{background:var(--gold);color:#fff}
.kbm .kbm-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.kbm .kbm-acc{background:#fff;border:1px solid var(--line);border-left:6px solid var(--gold);border-radius:14px;overflow:hidden;margin:0}
.kbm .kbm-acc.is-hide{display:none}
.kbm .kbm-acc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto auto;grid-template-areas:"nm from pm" "sub from pm";align-items:center;gap:0 10px;padding:12px 14px 12px 16px}
.kbm .kbm-acc summary::-webkit-details-marker{display:none}
.kbm .kbm-acc summary::marker{content:""}
.kbm .kbm-nm{grid-area:nm;font-weight:700;color:var(--gold-d);font-size:1.05em;line-height:1.5}
.kbm .kbm-sub{grid-area:sub;font-size:.8em;color:var(--muted);line-height:1.5}
.kbm .kbm-from{grid-area:from;white-space:nowrap;font-weight:700;color:var(--gold-d);font-size:1.1em}
.kbm .kbm-from small{font-size:.7em;font-weight:400;color:var(--muted);margin-left:2px}
.kbm .kbm-pm{grid-area:pm;width:26px;height:26px;border-radius:50%;background:var(--soft);position:relative}
.kbm .kbm-pm::before,.kbm .kbm-pm::after{content:"";position:absolute;left:7px;right:7px;top:12px;height:2px;background:var(--gold-d)}
.kbm .kbm-pm::after{transform:rotate(90deg);transition:transform .2s}
.kbm .kbm-acc[open] .kbm-pm::after{transform:rotate(0)}
.kbm .kbm-acc[open] summary{background:var(--soft)}
.kbm .kbm-ds{padding:10px 16px 4px;margin:0;font-size:.95em}
.kbm .kbm-tb{width:100%;border-collapse:collapse;font-size:.93em;margin:0;border:0}
.kbm .kbm-tb td{padding:7px 16px;border:0;border-top:1px dashed var(--line);background:none;vertical-align:top}
.kbm .kbm-tb td.kbm-p{text-align:right;white-space:nowrap;font-weight:700;width:7.5em}
.kbm .kbm-nt{font-size:.82em;color:var(--muted);padding:6px 16px 10px;margin:0}
.kbm .kbm-links{display:flex;flex-wrap:wrap;gap:8px;padding:4px 16px 16px}
.kbm .kbm-btn{display:inline-block;border:1.5px solid var(--gold);color:var(--gold-d);background:#fff;border-radius:999px;padding:5px 14px;font-size:.88em;font-weight:700;text-decoration:none;line-height:1.5}
.kbm .kbm-btn::after{content:" →"}
.kbm .kbm-btn:hover{background:var(--soft)}
.kbm .kbm-btn.is-case{background:var(--gold);color:#fff}
.kbm .kbm-foot{font-size:.85em;color:var(--muted);margin:18px 0 0;text-align:center}
@media (max-width:700px){
  .kbm{margin:24px auto 48px}
  .kbm .kbm-list{grid-template-columns:1fr}
  .kbm .kbm-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .kbm .kbm-chip{flex:none}
  .kbm .kbm-tb td{padding:7px 12px}
}
