*{box-sizing:border-box}body{margin:0;font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Noto Sans JP",sans-serif;background:#fff9f4 radial-gradient(#f3e3d6 1px,transparent 1px) 0 0/18px 18px;color:#4f4038;line-height:1.75}
a{color:inherit;text-decoration:none}nav{position:sticky;top:0;z-index:5;display:flex;gap:12px;overflow-x:auto;white-space:nowrap;padding:10px 14px;background:#fff9f4ee;font-size:13px;border-bottom:2px dashed #f0cfc0}
.cover{height:170px;background:center 30%/cover;border-radius:0 0 40px 40px}
.pcard{max-width:760px;margin:-50px auto 0;background:#fff;border-radius:26px;padding:20px;box-shadow:0 6px 20px #c9806a22;position:relative;display:grid;gap:12px}
.avatar{width:100px;height:100px;border-radius:30px;border:4px solid #fff;margin-top:-60px;box-shadow:0 4px 12px #0002}
.kana{margin:0;font-size:12px;color:#d98b74;letter-spacing:.3em}h1{margin:0;font-size:30px}h1 small{font-size:15px;color:#9a857a}.hello{margin:4px 0 0}
.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;background:#fdf1ec;border-radius:18px;padding:14px;font-size:14px}.facts dt{color:#c06f58;font-weight:bold}.facts dd{margin:0}
main{max-width:860px;margin:auto;padding:0 14px}section{padding:26px 0}h2{font-size:20px;margin:0 0 12px;color:#b5604a}
.music{margin-top:20px;background:#eef2fb;border-radius:22px;padding:16px;text-align:center}.music p{margin:0 0 10px}
.btns{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.b{padding:7px 16px;border-radius:99px;background:#fff;border:1.5px solid #e9c9bb;font-size:14px}.b.big{background:#8fa6d8;color:#fff;border-color:#8fa6d8;font-weight:bold}
.entry{background:#fff;border-radius:22px;padding:14px;margin-bottom:16px;box-shadow:0 4px 14px #c9806a1a}.date{font-weight:bold;color:#c06f58}.date small{color:#a99;font-weight:normal;margin-left:6px}
.photos{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:8px 0}.photos.n1{grid-template-columns:1fr}.photos img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;cursor:zoom-in}
.react{display:flex;gap:6px;flex-wrap:wrap}.react button{border:1.5px solid #f0d5ca;background:#fff8f5;border-radius:99px;padding:3px 10px;font-size:14px;cursor:pointer}.react button.on{background:#ffe1d6}
.cm{margin-top:8px;font-size:14px}.cm form,#gform,#oform{display:flex;flex-wrap:wrap;gap:6px}.cm input,#gform input,textarea{border:1.5px solid #ecd8cf;border-radius:12px;padding:7px 10px;font:inherit;flex:1;min-width:120px}textarea{width:100%;min-height:64px}
button{font:inherit}form button{background:#e9967e;color:#fff;border:0;border-radius:99px;padding:6px 16px;cursor:pointer}
.msgs{list-style:none;padding:0;margin:8px 0 0}.msgs li{background:#fdf6f2;border-radius:12px;padding:6px 10px;margin-top:6px}.msgs b{color:#b5604a;margin-right:6px}.msgs small{color:#aaa;margin-left:6px}
.box{background:#fff;border-radius:22px;padding:16px;box-shadow:0 4px 14px #c9806a1a}.grid2{display:grid;gap:12px}.hp{position:absolute;left:-9999px}
.poll button{display:block;width:100%;text-align:left;margin:6px 0;border:1.5px solid #ecd8cf;background:linear-gradient(90deg,#ffe1d6 var(--p),#fff var(--p));border-radius:12px;padding:6px 10px;cursor:pointer}
.posts{display:grid;gap:10px}.post{background:#fff;border-radius:16px;padding:14px;border:1.5px dashed #f0cfc0}.post p{margin:0}.post small{color:#a99}
.note{font-size:12px;color:#a99}.more{text-align:right}footer{text-align:center;padding:26px 14px;background:#fbe9e1;font-size:13px}
#lb{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9}#lb img{max-width:92vw;max-height:92vh;border-radius:12px}#lb[hidden]{display:none}
@media(min-width:760px){.cover{height:280px}.pcard{grid-template-columns:auto 1fr}.facts{grid-column:1/3}.photos{grid-template-columns:repeat(4,1fr)}.photos.n1{grid-template-columns:1fr 3fr}.grid2{grid-template-columns:1fr 1fr}.posts{grid-template-columns:1fr 1fr}}
