:root{--bg: #f5f4f0;--bg-2: #ecebe5;--ink: #1b2140;--ink-2: #4a5070;--ink-3: #8a8fa6;--navy: #2b3a7a;--lamp: #e2a23e;--line: #d9d8d0;--max: 1180px;--en: "Outfit", "Zen Kaku Gothic New", sans-serif;--jp: "Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", sans-serif}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);scroll-behavior:smooth}body{margin:0;font-family:var(--jp);font-size:15px;line-height:2;letter-spacing:.04em;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{opacity:.7}img{max-width:100%;height:auto;display:block}h1,h2,h3{margin:0;font-weight:500;line-height:1.5}.en{font-family:var(--en);letter-spacing:.06em}.hdr{position:sticky;top:0;z-index:20;background:#f5f4f0d9;backdrop-filter:blur(10px)}.hdr__in{max-width:var(--max);margin:0 auto;padding:18px 28px;display:flex;align-items:center;gap:24px}.brand__logo{height:26px;width:auto}.pr-chip{font-family:var(--en);font-size:12px;letter-spacing:.12em;border:1px solid var(--ink);padding:0 7px;line-height:20px;border-radius:2px}.nav{margin-left:auto;display:flex;gap:26px;font-family:var(--en);font-size:13px;letter-spacing:.14em}.hero{max-width:var(--max);margin:0 auto;padding:64px 28px 40px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;min-height:72vh}.hero__logo{width:min(520px,80vw)}.hero__copy{margin:44px 0 0;font-size:clamp(22px,3vw,34px);line-height:1.7;font-weight:500;letter-spacing:.06em}.hero__sub{margin:26px 0 0;max-width:520px;color:var(--ink-2);font-size:14px}.hero__keeper{width:min(360px,42vw);justify-self:end}.keeper-say{margin:22px 0 0;max-width:520px;font-size:13.5px;color:var(--ink-2);border-left:2px solid var(--lamp);padding-left:14px}.sec{max-width:var(--max);margin:0 auto;padding:72px 28px}.sec__hd{display:flex;align-items:baseline;gap:22px;margin-bottom:40px}.sec__hd h2{font-family:var(--en);font-size:clamp(36px,6vw,72px);font-weight:600;letter-spacing:.04em;line-height:1}.sec__hd span{font-size:13px;color:var(--ink-3)}.sec__hd .more{margin-left:auto;font-family:var(--en);font-size:13px;letter-spacing:.12em;border-bottom:1px solid var(--ink);padding-bottom:2px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 32px}.card__cover{background:var(--bg-2);aspect-ratio:1 / 1.35;display:grid;place-items:center;padding:10%;overflow:hidden}.card__cover img{width:100%;height:100%;object-fit:contain;box-shadow:0 12px 30px #1b214024;transition:transform .5s}.card:hover .card__cover img{transform:translateY(-4px)}.card__date{margin-top:16px;font-family:var(--en);font-size:12px;letter-spacing:.12em;color:var(--ink-3)}.card h3{margin-top:4px;font-size:15.5px;line-height:1.6;font-weight:500}.card__circle{font-size:12.5px;color:var(--ink-2);margin-top:2px}.card__excerpt{margin:10px 0 0;font-size:13px;color:var(--ink-2);line-height:1.9;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.empty{color:var(--ink-3);font-size:14px}.entry{max-width:920px;margin:0 auto;padding:56px 28px 80px}.entry__top{display:grid;grid-template-columns:300px 1fr;gap:56px;align-items:start}.entry__cover{background:var(--bg-2);padding:28px}.entry__cover img{box-shadow:0 16px 40px #1b214029}.entry__date{font-family:var(--en);font-size:12px;letter-spacing:.14em;color:var(--ink-3)}.entry h1{margin-top:10px;font-size:clamp(22px,3vw,30px);line-height:1.5}.entry__circle{margin-top:8px;font-size:14px;color:var(--ink-2)}.meta{margin:22px 0 0;padding:0;font-size:12.5px;color:var(--ink-2);display:grid;grid-template-columns:auto 1fr;gap:2px 18px}.meta dt{color:var(--ink-3);font-family:var(--en);letter-spacing:.1em}.meta dd{margin:0}.tags{margin-top:16px;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--ink-3)}.warn{margin-top:16px;font-size:13px;color:#9a4a2a}.btn{display:inline-block;margin-top:28px;font-family:var(--en);font-size:13px;letter-spacing:.14em;padding:14px 26px;background:var(--ink);color:#fff;border-radius:2px}.btn:hover{opacity:.85}.diary{margin-top:72px;max-width:680px}.diary__hd{display:flex;align-items:center;gap:14px;margin-bottom:28px}.diary__hd img{width:48px;height:48px;border-radius:50%;background:var(--bg-2);object-fit:contain}.diary__hd b{font-weight:500;font-size:14px}.diary__hd small{display:block;font-size:12px;color:var(--ink-3)}.diary p{margin:0 0 1.6em;font-size:16px;line-height:2.2}.diary-foot{font-size:12px;color:var(--ink-3);margin-top:32px;padding-top:16px;border-top:1px solid var(--line)}.neighbors{display:flex;justify-content:space-between;gap:24px;margin-top:64px;font-size:13px;color:var(--ink-2)}.neighbors small{display:block;font-family:var(--en);font-size:11px;letter-spacing:.12em;color:var(--ink-3)}.month{margin-top:48px}.month h3{font-family:var(--en);font-size:22px;letter-spacing:.08em;margin-bottom:14px}.list{list-style:none;padding:0;margin:0}.list li{display:grid;grid-template-columns:110px 1fr auto;gap:18px;padding:12px 0;border-top:1px solid var(--line);font-size:14px}.list li:last-child{border-bottom:1px solid var(--line)}.list li span{font-family:var(--en);font-size:12px;letter-spacing:.1em;color:var(--ink-3)}.list li em{font-style:normal;font-size:12.5px;color:var(--ink-2)}.prose{max-width:680px}.prose h2{font-size:17px;margin:40px 0 10px;font-weight:500}.prose p{margin:0 0 1.2em;font-size:14.5px}.ftr{max-width:var(--max);margin:0 auto;padding:72px 28px 48px;color:var(--ink-3);font-size:12px}.ftr__pr{color:var(--ink-2);font-size:13px;margin:0 0 18px}.ftr__links{display:flex;flex-wrap:wrap;gap:20px;font-family:var(--en);font-size:12px;letter-spacing:.12em;margin-bottom:20px;color:var(--ink)}.ftr__logo{height:22px;width:auto;margin-bottom:20px;opacity:.8}.age{position:fixed;inset:0;background:#f5f4f0f5;display:none;align-items:center;justify-content:center;z-index:50;padding:20px}.age.is-on{display:flex}.age__box{max-width:420px;text-align:center}.age__box h2{font-family:var(--en);font-size:28px;letter-spacing:.1em}.age__box p{font-size:13.5px;color:var(--ink-2);margin:12px 0 0}.age__btns{display:flex;gap:14px;justify-content:center;margin-top:24px}.age__btns button,.age__btns a{font:inherit;font-size:13px;letter-spacing:.08em;padding:12px 24px;border-radius:2px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}.age__btns button.yes{background:var(--ink);color:#fff}html.js .fade{transform:translateY(14px);transition:transform .8s ease}html.js .fade.in{transform:none}@media(prefers-reduced-motion:reduce){html.js .fade{transform:none;transition:none}}@media(max-width:860px){.grid{grid-template-columns:repeat(2,1fr);gap:36px 20px}.hero{grid-template-columns:1fr;min-height:auto;padding-top:40px}.hero__keeper{justify-self:center;width:min(260px,60vw);order:-1}.entry__top{grid-template-columns:1fr;gap:32px}.entry__cover{max-width:260px}.nav{gap:16px;font-size:12px}.hdr__in{padding:14px 18px}.sec,.entry{padding-left:18px;padding-right:18px}.list li{grid-template-columns:1fr;gap:2px}}
