
:root{--paper:#f6efdc;--line:#e6dcc0;--ink:#2b2b2b;--sub:#6b6252;--red:#b93838;--navy:#1e3a5f;--green:#1e5a2a;--mark:#ffe78a}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 "Zen Maru Gothic","Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;
 background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:32px 32px}
a{color:var(--navy)}
.wrap{max-width:760px;margin:0 auto;padding:24px 16px 64px}
header.site{padding:28px 0 8px}
header.site a{text-decoration:none;color:inherit}
h1,h2,h3{font-family:"Klee One","Yu Mincho",serif;font-weight:600;line-height:1.4}
.site h1{font-size:30px;margin:0}
.site p{margin:4px 0 0;color:var(--sub);font-size:14px}
nav.menu{margin:14px 0 6px;display:flex;gap:8px;flex-wrap:wrap}
nav.menu a{background:#fff;border:1.5px solid var(--ink);border-radius:999px;padding:2px 14px;text-decoration:none;color:var(--ink);font-size:14px}
.mark{background:linear-gradient(transparent 60%,var(--mark) 60%)}
.card{background:#fffdf6;border:1.5px solid #cdbf9c;border-radius:6px;padding:16px 18px;margin:18px 0;box-shadow:2px 3px 0 #e3d6b4;position:relative}
.card::before{content:"";position:absolute;top:-9px;left:24px;width:70px;height:18px;background:rgba(185,56,56,.25);transform:rotate(-3deg)}
.date{font-size:13px;color:var(--sub)}
.tags a,.tag{display:inline-block;font-size:12px;border:1px solid var(--green);color:var(--green);border-radius:4px;padding:0 6px;margin:2px 4px 0 0;text-decoration:none}
.tl{display:flex;gap:14px;align-items:flex-start;text-decoration:none;color:inherit}
.tl img{width:110px;height:110px;object-fit:cover;border-radius:4px;border:1px solid #cdbf9c;flex:none;background:#eee}
.tl h3{margin:2px 0 4px;font-size:19px}
.tl p{margin:0;font-size:14px;color:var(--sub)}
figure{margin:14px 0}
figure img{max-width:100%;border-radius:4px;border:1px solid #cdbf9c;background:#fff}
figcaption{font-size:13px;color:var(--sub)}
.entry h2{font-size:20px;margin:26px 0 6px;border-bottom:2px dashed #cdbf9c}
.lessons{background:#fff8d6;border-left:5px solid var(--red);padding:10px 16px;margin:22px 0}
.lessons h3{margin:0 0 4px;color:var(--red);font-size:17px}
.pager{display:flex;justify-content:space-between;gap:10px;margin-top:30px;font-size:14px}
.stats{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
.stats div{background:#fff;border:1.5px dashed var(--sub);border-radius:6px;padding:4px 12px;font-size:14px}
.stats b{font-size:20px;color:var(--navy)}
ol.lesson-list li{margin:6px 0}
footer{margin-top:40px;font-size:12px;color:var(--sub);text-align:center}
@media (max-width:520px){.tl img{width:80px;height:80px}.site h1{font-size:24px}}
