/* 専門用語辞典（赤シート付き） */
.g-main{max-width:980px;margin:0 auto}
.post-head h1 small{display:inline-block;margin-left:.4em;padding:2px 12px;font-family:var(--hand);font-size:.5em;color:#fffaf0;background:var(--red);border-radius:4px;transform:rotate(-3deg);vertical-align:middle}
.g-tools{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:26px 0 30px;padding:16px 18px;background:rgba(251,246,234,.96);border-bottom:2px dashed rgba(81,70,60,.3)}
.g-search{display:flex;align-items:center;gap:10px;flex:1 1 260px}
.g-search span{font-family:var(--hand);font-size:20px}
.g-search input{flex:1;padding:9px 12px;font:inherit;font-size:17px;background:#fff;border:2px solid rgba(81,70,60,.35);border-radius:6px}
.g-jump{display:flex;flex-wrap:wrap;gap:6px 14px;flex-basis:100%;font-size:16px}
.g-jump a{font-weight:600;text-decoration:none;color:var(--ink-2)}
.g-jump a:hover{color:var(--red)}
.g-hint{flex-basis:100%;margin:0;font-size:14.5px;color:var(--ink-3)}
.g-group{margin:0 0 46px;scroll-margin-top:170px}
.g-group h2{position:relative;margin:0 0 14px;padding-left:18px;font-size:clamp(26px,3vw,34px);font-weight:600}
.g-group h2::before{content:"";position:absolute;left:0;top:.25em;bottom:.25em;width:7px;border-radius:4px;background:var(--red)}
.g-group h2 small{margin-left:.5em;font-family:var(--type);font-size:.5em;color:var(--ink-3)}
.g-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:12px 18px;margin:0}
.g-item{padding:14px 18px 12px;background:rgba(255,255,255,.78);border:2px solid rgba(81,70,60,.18);border-radius:6px;break-inside:avoid}
.g-item dt{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.g-term{padding:0;font:inherit;font-size:22px;font-weight:600;color:var(--ink);background:none;border:0;cursor:pointer;text-align:left}
.g-read{font-family:var(--type);font-size:13.5px;color:var(--ink-3)}
.g-item dd{margin:6px 0 0}
.g-desc{display:block;font-size:18px;line-height:1.85;color:#f03c2c;font-weight:600}
.g-notes{display:block;margin-top:6px;font-size:14.5px;color:var(--ink-3)}
.g-notes a{margin-left:.5em;color:var(--blue)}
.g-empty{font-size:18px;color:var(--ink-2)}
/* 赤シート：赤い文字は、赤いシートの下で見えなくなる */
.g-redsheet{position:fixed;left:0;right:0;bottom:0;z-index:20;height:58vh;background:rgb(236,0,0);mix-blend-mode:multiply;pointer-events:none;box-shadow:0 -6px 18px rgba(120,20,10,.3)}
.g-redsheet[hidden]{display:none}
.g-handle{position:absolute;top:-34px;left:50%;width:150px;height:34px;margin-left:-75px;padding-top:6px;font-family:var(--hand);font-size:17px;color:#fffaf0;text-align:center;background:#c52a1d;border-radius:10px 10px 0 0;cursor:ns-resize;pointer-events:auto;touch-action:none;mix-blend-mode:normal}
body.sheet-on .g-item.open .g-desc{color:var(--ink)}
body.sheet-on .g-term::after{content:" ▸めくる";font-family:var(--hand);font-size:14px;font-weight:400;color:var(--ink-3)}
body.sheet-on .g-item.open .g-term::after{content:" ▾めくった"}
@media (max-width:640px){.g-term{font-size:20px}.g-desc{font-size:17px}.g-tools{gap:10px}.g-group{scroll-margin-top:230px}}
