:root{font:16px/1.8 system-ui,sans-serif;color:#293f38;background:#faf9f4}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:960px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}a{color:#326c59}h1{font-size:clamp(26px,5vw,38px)}form,.panel,.promotion{background:white;border:1px solid #dce2d4;border-radius:12px;padding:24px;margin:24px 0}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}label{display:block}input,select,textarea{display:block;width:100%;font:inherit;padding:9px;border:1px solid #9aaea1;border-radius:6px}textarea{min-height:130px}button{font:inherit;padding:10px 18px;background:#326c59;color:white;border:0;border-radius:6px;cursor:pointer;margin:8px 8px 8px 0}a:focus-visible,button:focus-visible{outline:3px solid #b67e26;outline-offset:3px}pre{white-space:pre-wrap;font:inherit}footer{font-size:14px;border-top:1px solid #dce2d4}header a,footer a,.related>a,.promotion>a{display:inline-block;padding:6px 0}table{border-collapse:collapse;width:100%}td,th{border:1px solid #acb8ae;padding:7px;text-align:center}article{overflow-wrap:anywhere}main>table td,main>table th,article td,article th{text-align:left;vertical-align:top}main>table th,article th{background:#eef2ea}main>table td:first-child{min-width:6em}#sheets .sheet{background:white;border:1px solid #9aaea1;padding:8mm;margin:20px auto;width:100%;max-width:186mm;break-after:page}#sheets h2{text-align:center}#sheets .stamp{height:14mm}.muted{color:#596b60;font-size:14px}@media(max-width:600px){.fields{grid-template-columns:1fr}main{padding:16px}form{padding:18px}}@media print{@page{size:A4;margin:12mm}body{background:white;color:black}header,footer,form,.promotion,.related,.intro,.actions{display:none!important}main{max-width:none;padding:0}.panel{border:0;padding:0}#sheets .sheet{margin:0;max-width:none;width:100%;min-height:260mm}#sheets .sheet:last-child{break-after:auto}body.envelope #sheets .sheet{width:119mm;min-height:196mm;padding:6mm}body.envelope #sheets .stamp{height:9mm}body.envelope #sheets td,body.envelope #sheets th{padding:1mm}body.envelope #sheets h2{margin:2mm}}
[hidden]{display:none!important}.checks{border:0;padding:0;margin:0;min-width:0;grid-column:1/-1}.checks legend{padding:0;margin-bottom:4px}.checks label{display:inline-flex;align-items:center;gap:6px;margin:0 20px 6px 0}.checks input{display:inline;width:auto;margin:0}.disclaimer{background:#fff8e8;border:1px solid #e5cf9c;border-radius:8px;padding:12px 16px;font-size:15px}.rule-out pre{background:#faf9f4;border:1px solid #e4e8de;border-radius:8px;padding:14px;margin:0}@media print{.disclaimer{display:none!important}body.print-one .rule-out:not(.printing),body.print-one main>.muted,body.print-one #status{display:none!important}body.print-one .rule-out h2{display:none}.rule-out pre{border:0;background:none;padding:0}.rule-out{margin:0 0 8mm}}
/* 年間レッスンカレンダーPDFメーカー（tools/nenkan-calendar/）。A4縦1枚に12か月が入る大きさ。 */
.wide{grid-column:1/-1}.cal-title{margin:0;font-size:22px;text-align:center}.cal-period,.cal-legend{margin:4px 0;text-align:center;font-size:14px}.cal-legend .key{display:inline-flex;align-items:center;gap:4px;margin:0 8px}.swatch{display:inline-block;width:14px;height:14px;border:1px solid #9aaea1}.cal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:12px 0}.cal-month h3{margin:0 0 2px;font-size:15px;text-align:center}.cal-month table{table-layout:fixed;font-size:13px}.cal-month td,.cal-month th{padding:2px 0;border-color:#dce2d4;line-height:1.5}.cal-month th{background:#eef2ea;font-weight:400}.sun{color:#b3261e}.sat{color:#1f5fa8}.hol{color:#b3261e}.k-lesson{background:#cfe6d8;font-weight:700;color:#173d2f}.k-holiday{background:#f8d7d3;text-decoration:line-through}.k-closed{background:#dedede;text-decoration:line-through}.k-fifth-off{background:#ece4f4;text-decoration:line-through}.k-reserve{background:#fff1c9;font-style:italic;box-shadow:inset 0 0 0 2px #d8a62a}.cal-count{font-size:13px;margin:8px 0}.cal-count caption{font-weight:700;text-align:left;padding:4px 0}.cal-count th,.cal-count td{padding:3px 2px}.cal-count .total{font-weight:700}.cal-offlist,.cal-note{font-size:13px;margin:6px 0;line-height:1.6}.cal-note{color:#7a4f00}
@media(max-width:600px){.cal-grid{grid-template-columns:1fr 1fr;gap:8px}.cal-month table{font-size:11px}.cal-count{display:block;overflow-x:auto}}
@media print{:root{background:#fff}#cal-out .cal-note{display:none}#cal-out *{-webkit-print-color-adjust:exact;print-color-adjust:exact}#cal-out~#status,#cal-out~.muted{display:none!important}.cal-title{font-size:16pt}.cal-period,.cal-legend{font-size:9pt;margin:1mm 0}.cal-grid{grid-template-columns:repeat(3,1fr);gap:3mm 5mm;margin:2mm 0}.cal-month{break-inside:avoid}.cal-month h3{font-size:10pt}.cal-month table{font-size:8.5pt}.cal-month td,.cal-month th{padding:0;line-height:1.45}.cal-count{font-size:8pt;margin:2mm 0;break-inside:avoid}.cal-count th,.cal-count td{padding:1px}.cal-offlist,.cal-note{font-size:8pt;margin:1mm 0;line-height:1.4}}
