:root{color-scheme:light;--bg:#f7f8f4;--panel:#ffffff;--ink:#1d2522;--muted:#63706a;--line:#dfe5dd;--surface:#fbfcf9;--border:#dfe5dd;--accent:#287a5f;--accent-strong:#155c46;--blue:#2f6f9f;--yellow:#f2bd42;--danger:#b84a4a}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:Arial,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:rgba(40,122,95,.14)}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:22px 16px;position:-webkit-sticky;position:sticky;top:0}.brand{display:block;font-size:18px;font-weight:800;line-height:1.2;margin-bottom:28px}.nav{display:grid;grid-gap:8px;gap:8px}.nav a{border-radius:8px;color:var(--muted);display:block;font-size:14px;font-weight:700;min-height:42px;padding:11px 12px}.nav a.active,.nav a:hover{background:#eef5f0;color:var(--ink)}.nav a.active{border:1px solid #cfe1d7}.sidebar-footer{border-top:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;margin-top:auto;padding-top:18px}.sidebar-footer a{color:var(--muted);font-size:12px;font-weight:700}.sidebar-footer a:hover{color:var(--accent-strong)}.main{max-width:1440px;min-width:0;padding:30px;width:100%}.topbar{align-items:center;display:flex;justify-content:space-between;gap:16px;margin-bottom:24px}.topbar>div{min-width:0}.eyebrow{color:var(--accent);font-size:12px;font-weight:800;letter-spacing:0;margin-bottom:8px}h1,h2,h3{line-height:1.2;margin:0}h1{font-size:30px;letter-spacing:0}h2{font-size:22px}h3{font-size:17px}p{color:var(--muted);line-height:1.7;margin:10px 0 0}.grid{display:grid;grid-gap:16px;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow-x:auto;padding:18px}.card+.card,.card+.grid,.grid+.card,.grid+.grid,.notice+.card,.notice+.grid{margin-top:16px}.metric{color:var(--ink);font-size:30px;font-weight:800;margin-top:10px}.button{align-items:center;background:var(--accent);border:1px solid var(--accent);border-radius:8px;color:white;cursor:pointer;display:inline-flex;font-weight:700;justify-content:center;line-height:1.25;min-height:44px;min-width:44px;padding:0 16px;text-align:center;white-space:nowrap}.button:hover{filter:brightness(.98)}.button.secondary{background:white;color:var(--accent-strong)}.button.danger{background:var(--danger);border-color:var(--danger)}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.stack-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:18px}.button:disabled{cursor:not-allowed;opacity:.5}.action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.form{display:grid;grid-gap:16px;gap:16px}.form>.button{justify-self:start;min-width:160px}.form-inline{align-items:end;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(160px,1fr) minmax(220px,2fr) auto;margin-bottom:14px}.field{display:grid;grid-gap:8px;gap:8px;min-width:0}.field label{color:var(--ink);font-size:13.5px;font-weight:800}.field:has(:required) label:after{color:var(--danger);content:" 必須";font-size:11px;font-weight:800}.field input,.field select,.field textarea{background:white;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:44px;padding:10px 12px;width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(40,122,95,.12);outline:0}.field textarea{min-height:118px;resize:vertical}.field.checkbox-row{align-items:center;display:flex;font-size:13px;font-weight:700}.field.checkbox-row input{min-height:auto;width:auto}.table{border-collapse:collapse;min-width:min(720px,100%);width:100%}.table td,.table th{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top;word-break:break-word}.table th{color:var(--muted);white-space:nowrap}.badge,.table th{font-size:12px;font-weight:800}.badge{background:#eef5f0;border:1px solid #cfe1d7;border-radius:999px;color:var(--accent-strong);display:inline-flex;line-height:1.25;padding:4px 9px}.badge.badge-strong{background:#e8f2ff;border-color:#c8dcf2;color:var(--blue)}.muted{color:var(--muted);font-size:12px}.notice{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:12px 14px}.notice.danger{border-color:rgba(184,74,74,.35);color:var(--danger)}.notice.success{border-color:rgba(40,122,95,.35);color:var(--accent-strong)}.quick-nav{background:rgba(247,248,244,.92);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;margin-bottom:18px;padding:12px}.quick-nav-label{color:var(--muted);font-size:12px;font-weight:800}.quick-nav-links{display:flex;flex-wrap:wrap;gap:8px}.quick-nav .button{min-height:40px;padding:0 12px}.report-filter{align-items:end;display:grid;grid-template-columns:minmax(220px,320px) auto}.report-filter,.report-metrics{margin-bottom:18px}.check-row{align-items:center;display:flex;gap:10px;font-weight:700}.check-row input{height:18px;width:18px}.manual-checklist{display:grid;grid-gap:10px;gap:10px}.google-manual-preview{background:#fbfcf9}.google-manual-preview strong{color:var(--accent-strong)}.print-page{background:#eef1ed;min-height:100vh;padding:24px}.print-actions{display:flex;gap:10px;justify-content:center;margin:0 auto 18px;max-width:820px}.print-sheet{background:#fff;border:1px solid #d7ddd6;box-shadow:0 12px 34px rgba(29,37,34,.12);color:#1d2522;margin:0 auto;max-width:820px;min-height:1080px;padding:52px}.print-header,.print-recipient{display:flex;gap:24px;justify-content:space-between}.print-header{border-bottom:2px solid #1d2522;padding-bottom:24px}.print-header h1{font-size:42px}.print-eyebrow,.print-label{color:#63706a;font-size:12px;font-weight:800;margin:0 0 8px}.print-store{display:grid;grid-gap:6px;gap:6px;min-width:240px;text-align:right}.print-recipient{padding:34px 0}.print-recipient h2{border-bottom:1px solid #1d2522;display:inline-block;min-width:280px;padding-bottom:8px}.print-meta{display:grid;grid-gap:10px;gap:10px;margin:0;min-width:280px}.print-meta div{display:grid;grid-template-columns:90px 1fr}.print-meta dt{color:#63706a;font-weight:800}.print-meta dd{margin:0;text-align:right}.print-table{border-collapse:collapse;margin-left:auto;width:360px}.print-table td,.print-table th{border-bottom:1px solid #dfe5dd;padding:14px 12px}.print-table th{color:#63706a;text-align:left}.print-table td{font-weight:800;text-align:right}.print-total td,.print-total th{border-bottom:3px double #1d2522;font-size:22px}.print-notes{border:1px solid #dfe5dd;margin-top:42px;min-height:150px;padding:18px}.print-notes p{color:#1d2522;white-space:pre-wrap}@media (max-width:1180px){.grid.cols-3,.grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}h1{font-size:28px}}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:16px;position:static}.brand{margin-bottom:14px}.nav{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.nav a{flex:0 0 auto}.sidebar-footer{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:14px;padding-top:12px}.main{padding:22px}.topbar{align-items:flex-start;display:grid}.form-inline,.grid.cols-2,.grid.cols-3,.grid.cols-4,.report-filter{grid-template-columns:1fr}}@media (max-width:760px){body{font-size:14px}.main{padding:16px}h1{font-size:24px}h2{font-size:20px}.card{padding:14px}.button,.form>.button{width:100%}.action-row .button,.button-row .button,.quick-nav .button{width:auto}}@media print{body{background:#fff}.print-actions{display:none}.print-page{background:#fff;padding:0}.print-sheet{border:0;box-shadow:none;margin:0;max-width:none;min-height:auto;padding:0}}.subsection{border-top:1px solid var(--line);display:grid;grid-gap:14px;gap:14px;padding-top:16px}.danger-zone{margin-top:16px}.table.compact td,.table.compact th{padding:10px 8px}.table.compact{min-width:min(560px,100%)}.calendar-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:14px}.calendar-item{border:1px solid var(--line);border-left:6px solid var(--accent);border-radius:8px;padding:14px}.calendar-item-head{align-items:center;display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.channel-instagram{border-left-color:#b64d86}.channel-google-business-profile{border-left-color:var(--blue)}.channel-line{border-left-color:#22a85a}.channel-store-pop{border-left-color:var(--yellow)}.channel-review-reply{border-left-color:#7a5bb8}.preview-card{background:#f8faf8;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:18px;white-space:pre-wrap}.legal-document{display:grid;grid-gap:16px;gap:16px}.help-card h2,.legal-card h2{margin-bottom:12px}.legal-link-card{display:block}.legal-link-card:hover{border-color:#cfe1d7}.copy-box{background:#f8faf9;border:1px solid var(--line);border-radius:8px;color:var(--text);font-family:inherit;min-height:300px;padding:14px;resize:vertical;width:100%}.preview-media{align-items:center;aspect-ratio:4/3;background:#dfe9e3;border-radius:8px;color:var(--muted);display:flex;font-weight:800;justify-content:center}.line-preview{background:#eaf7ee}.line-bubble{background:white;border-radius:8px;color:var(--ink);margin:0;padding:14px}.pop-preview{background:#fff8d9;text-align:center}.google-preview,.mail-preview,.review-preview{background:white}.hero{align-items:flex-end;background:linear-gradient(90deg,rgba(29,37,34,.82),rgba(29,37,34,.22)),url(https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1600&q=80);background-position:50%;background-size:cover;color:white;display:flex;min-height:72vh;padding:56px}.hero p{color:rgba(255,255,255,.86);max-width:680px}.hero h1{font-size:54px;max-width:760px}.stack{display:grid;grid-gap:18px;gap:18px}.result{background:#f3f6f3;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:160px;padding:14px;white-space:pre-wrap}@media (max-width:860px){.shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.form-inline,.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}.main{padding:20px}.hero{min-height:78vh;padding:28px}.hero h1{font-size:38px}}