/* 公式サイトの「表」のページ共通（開催概要・協賛・クラファン・ボランティア・お問い合わせ）。2026-09-19
   🟥 見る人はスマホ。文字は大きく（本文17px〜）、入力欄16px以上、横長の表は使わない。トップ（趣意書）と同じ色と書体 */
:root{
  --paper:#f4ecdc; --paper-2:#efe4cf; --card:#fffcf5; --sumi:#231d18; --stone:#786f60; --rule:#ddcfb4;
  --enji:#8f2b2b; --enji-deep:#651c1c; --kin:#9a7526; --ok:#2e7d4f;
  --mincho:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho",serif;
  --gothic:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--sumi);font-family:var(--gothic);font-size:17px;line-height:1.85;padding-bottom:84px}
a{color:var(--enji-deep)}
.wrap{max-width:720px;margin:0 auto;padding:22px 16px 40px}
.ev{font-family:var(--mincho);font-size:14.5px;color:var(--stone);letter-spacing:.14em}
h1{font-family:var(--mincho);font-weight:700;font-size:29px;line-height:1.4;letter-spacing:.08em;color:var(--enji-deep);margin:4px 0 14px}
h2{font-family:var(--mincho);font-weight:700;font-size:21px;letter-spacing:.08em;color:var(--enji-deep);margin:30px 0 12px;padding-left:12px;border-left:4px solid var(--enji)}
p{margin:0 0 14px}
.lead{font-size:17.5px}
.card{background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:16px}
.kt{width:100%;border-collapse:collapse}
.kt th{width:30%;text-align:left;vertical-align:top;font-weight:500;color:var(--stone);font-size:15px;padding:10px 10px 10px 0;border-bottom:1px solid var(--rule);white-space:nowrap}
.kt td{padding:10px 0;border-bottom:1px solid var(--rule)}
.kt tr:last-child th,.kt tr:last-child td{border-bottom:0}
.big{font-family:var(--mincho);font-size:22px;font-weight:700;color:var(--enji-deep);line-height:1.5}
.note{font-size:15px;color:var(--stone)}
ul.dots{margin:0;padding-left:1.2em}
ul.dots li{margin:0 0 8px}
.cta{display:grid;gap:10px;margin-top:14px}
.btn{display:block;text-align:center;appearance:none;border:0;border-radius:999px;padding:16px 20px;font:700 17.5px var(--gothic);letter-spacing:.06em;cursor:pointer;text-decoration:none;background:var(--enji);color:#fff}
.btn.sub{background:#fff;color:var(--enji-deep);border:1px solid var(--rule)}
.btn:disabled{background:#b9a79a}
.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--kin);outline-offset:2px}

/* フォーム */
form.f{display:grid;gap:16px}
.fld{display:grid;gap:6px}
.fld > span{font-size:16px;font-weight:700}
.fld > span em{font-style:normal;font-size:13px;color:#fff;background:var(--enji);border-radius:4px;padding:0 6px;margin-left:6px;vertical-align:2px;font-weight:500}
.fld > span small{font-weight:400;font-size:14px;color:var(--stone);display:block}
input[type=text],input[type=tel],input[type=email],input[type=number],select,textarea{font:17px var(--gothic);width:100%;padding:12px 12px;border:1px solid var(--rule);border-radius:10px;background:#fff;color:var(--sumi)}
textarea{min-height:110px;resize:vertical}
.checks{display:grid;gap:8px}
.checks label{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--rule);border-radius:10px;padding:12px;font-size:17px}
.checks input{width:22px;height:22px;flex:none}
.calc{background:#fbf1e2;border-radius:10px;padding:12px 14px;font-size:17px}
.calc b{font-family:var(--mincho);font-size:22px;color:var(--enji-deep)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.msg{padding:14px;border-radius:10px;font-size:17px}
.msg.ok{background:#e8f3ec;border:1px solid #bcdcc8;color:var(--ok)}
.msg.ng{background:#fbe4e4;border:1px solid #ecb3b3;color:var(--enji-deep)}

/* 表のナビ（全ページ共通・下に固定） */
.pubnav{position:fixed;left:0;right:0;bottom:0;z-index:5;background:rgba(255,252,245,.97);border-top:1px solid var(--rule);display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:env(safe-area-inset-bottom)}
.pubnav a{flex:0 0 auto;min-width:5.6rem;padding:12px 10px;text-align:center;font-size:14.5px;font-weight:700;color:var(--stone);text-decoration:none;white-space:nowrap;border-top:3px solid transparent}
.pubnav a.active{color:var(--enji);border-top-color:var(--enji);background:rgba(143,43,43,.06)}
.ura-link{display:block;text-align:center;font-size:14px;color:var(--stone);margin:36px 0 0}
footer.pf{margin-top:30px;font-size:14px;color:var(--stone);text-align:center;line-height:1.8}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
