:root{--color-primary: #2f4f4f;--color-primary-dark: #1f3535;--color-primary-light: #3f6363;--color-accent: #e07f3a;--color-accent-dark: #c66a26;--color-bg: #ffffff;--color-bg-soft: #f7f6f3;--color-text: #1a1a1a;--color-text-muted: #6b6b6b;--color-border: #e6e3dd;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif;--font-serif: "Noto Serif JP", "Yu Mincho", serif;--radius: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow: 0 4px 12px rgba(0,0,0,.06);--shadow-lg: 0 10px 30px rgba(0,0,0,.08);--container: 960px;--container-narrow: 720px}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--container);margin:0 auto;padding:0 24px}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 24px}.site-header{background:var(--color-primary);color:#fff;padding:48px 24px 36px;text-align:center}.site-header h1{margin:0 0 12px;font-family:var(--font-serif);font-size:28px;font-weight:600;letter-spacing:.02em}.site-header p{margin:4px 0;font-size:14px;opacity:.92}.site-header .tagline{margin-top:16px;font-size:13px;opacity:.75}section.block{padding:64px 0}section.block.alt{background:var(--color-bg-soft)}h2.section-title{font-family:var(--font-serif);font-size:26px;font-weight:600;margin:0 0 8px;text-align:center;letter-spacing:.04em}.section-lead{text-align:center;color:var(--color-text-muted);font-size:14px;margin:0 0 36px}.event-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.event-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:12px;transition:box-shadow .2s,transform .2s}.event-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.event-card .date{font-family:var(--font-serif);font-size:18px;color:var(--color-primary);font-weight:600}.event-card .date .weekday{font-size:13px;margin-left:4px;color:var(--color-text-muted)}.event-card .time{font-size:13px;color:var(--color-text-muted)}.event-card h3{margin:0;font-size:16px;font-weight:600;line-height:1.5}.event-card .meta{font-size:12px;color:var(--color-text-muted)}.event-card .cta{margin-top:auto}.empty{text-align:center;padding:32px;color:var(--color-text-muted);font-size:14px;border:1px dashed var(--color-border);border-radius:var(--radius)}.webinar-list{display:grid;gap:16px}.webinar-item{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.webinar-item h3{margin:0 0 6px;font-size:17px;font-weight:600}.webinar-item .subtitle{margin:0;font-size:13px;color:var(--color-text-muted)}@media(max-width:640px){.webinar-item{grid-template-columns:1fr}}.btn{display:inline-block;padding:12px 24px;border-radius:var(--radius);font-size:14px;font-weight:600;text-align:center;cursor:pointer;border:none;transition:background .15s,transform .05s;white-space:nowrap}.btn:hover{text-decoration:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark);color:#fff}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover{background:var(--color-accent-dark);color:#fff}.btn-outline{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff}.btn-block{display:block;width:100%}.notebook-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.notebook-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:16px;transition:box-shadow .2s,transform .2s}.notebook-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.notebook-card-head h3{margin:0 0 4px;font-size:17px;font-weight:600;line-height:1.5}.notebook-card-head .host{margin:0;font-size:12px;color:var(--color-text-muted)}.notebook-dates{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.notebook-dates li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--color-bg-soft);border-radius:var(--radius)}.notebook-dates .datetime{display:flex;flex-direction:column;gap:2px}.notebook-dates .date{font-family:var(--font-serif);font-size:15px;color:var(--color-primary);font-weight:600}.notebook-dates .time{font-size:12px;color:var(--color-text-muted)}.notebook-dates .variant{font-size:11px;color:var(--color-accent-dark);background:#e07f3a14;padding:1px 8px;border-radius:999px;width:fit-content;margin-top:2px}.btn-sm{padding:7px 14px;font-size:12px}.hosts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.host-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:16px 20px}.host-card .host-name{font-family:var(--font-serif);font-size:15px;font-weight:600;color:var(--color-primary);margin-bottom:4px}.host-card .host-name a{color:var(--color-primary)}.host-card .host-community{font-size:12px;color:var(--color-text-muted)}.host-card .host-community a{color:var(--color-text-muted)}.salon{background:#fff;border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:36px;text-align:center;position:relative}.salon:before{content:"サロン";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--color-primary);color:#fff;padding:4px 16px;border-radius:999px;font-size:11px;letter-spacing:.1em;font-weight:600}.salon h3{margin:0 0 6px;font-family:var(--font-serif);font-size:22px;color:var(--color-primary)}.salon .salon-subtitle{margin:0 0 16px;font-size:13px;color:var(--color-text-muted)}.salon .salon-description{margin:0 0 20px;font-size:14px;line-height:1.8}.campaign{background:linear-gradient(135deg,#f9d976,#f39f86);color:#2a2a2a;padding:36px 24px;border-radius:var(--radius-lg);text-align:center}.campaign h3{margin:0 0 8px;font-size:20px}.campaign p{margin:0 0 16px;font-size:14px}.books-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.books-grid img{border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}.books-grid a:hover img{transform:translateY(-3px);box-shadow:var(--shadow)}@media(max-width:640px){.books-grid{grid-template-columns:repeat(2,1fr)}}.profile{background:var(--color-bg-soft);border-radius:var(--radius-lg);padding:36px}.profile h3{margin:0 0 12px;font-family:var(--font-serif);font-size:22px}.profile p{margin:0 0 12px;font-size:14px}.profile .links{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px}.site-footer{background:var(--color-primary);color:#fff;padding:36px 24px;text-align:center;font-size:12px}.site-footer a{color:#fff;opacity:.85;margin:0 12px}.site-footer .copy{margin-top:12px;opacity:.6}
