.home{background:var(--paper);color:var(--ink);min-height:100vh;padding-top:80px}.cover{max-width:1180px;margin:0 auto;padding:5rem 2rem 6rem;border-bottom:1px solid var(--rule)}.cover-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3.5rem;align-items:center}.cover-meta{display:flex;align-items:center;gap:.85rem;margin-bottom:2rem}.meta-num{font-family:var(--font-serif);font-style:italic;font-size:.95rem;color:var(--ink-mute);letter-spacing:.05em}.meta-divider{width:32px;height:1px;background:var(--rule)}.meta-label{font-family:var(--font-sans);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.cover-title{display:flex;flex-direction:column;gap:.25rem;margin-bottom:2rem;line-height:.95}.cover-en{font-family:var(--font-serif);font-size:clamp(4.5rem,10vw,8.5rem);font-weight:500;letter-spacing:-.02em;color:var(--ink)}.cover-ja{font-family:var(--font-mincho);font-size:clamp(1.3rem,2.4vw,1.85rem);font-weight:500;letter-spacing:.4em;color:var(--ink-soft);padding-left:.4em}.cover-tagline{font-family:var(--font-mincho);font-size:1.05rem;line-height:2;color:var(--ink-soft);margin-bottom:2.5rem;max-width:28em}.cover-cta{display:inline-flex;align-items:center;gap:.85rem;font-family:var(--font-serif);font-style:italic;font-size:1.05rem;color:var(--ink);text-decoration:none;padding:.5rem 0;transition:color .3s ease,gap .3s ease}.cover-cta .cta-line{width:36px;height:1px;background:currentColor;transition:width .3s ease}.cover-cta:hover{color:var(--accent);gap:1.25rem}.cover-cta:hover .cta-line{width:48px}.cover-figure{margin:0;position:relative}.cover-photo{width:100%;aspect-ratio:4 / 5;object-fit:cover;display:block;filter:sepia(.18) contrast(.96) saturate(.92);cursor:pointer;transition:filter .6s ease}.cover-photo:hover{filter:sepia(.05) contrast(1) saturate(1)}.cover-caption{font-family:var(--font-serif);font-style:italic;font-size:.82rem;color:var(--ink-mute);margin-top:.85rem;letter-spacing:.04em}.page-section{max-width:1180px;margin:0 auto;padding:5rem 2rem;border-bottom:1px solid var(--rule)}.section-head{display:grid;grid-template-columns:80px 1fr;gap:2rem;align-items:baseline;margin-bottom:3rem}.section-num{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--ink-mute);letter-spacing:.05em}.section-title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,2.85rem);font-weight:500;font-style:italic;color:var(--ink);letter-spacing:-.01em;line-height:1.1}.section-body{display:grid;grid-template-columns:80px 1fr;gap:2rem}.section-body>*{grid-column:2}.about-body{max-width:720px}.about-body p{font-family:var(--font-mincho);font-size:1rem;line-height:2.1;color:var(--ink-soft);margin-bottom:1.25rem}.about-body .lead{font-size:1.2rem;color:var(--ink);font-weight:500}.about-body .signature{font-family:var(--font-serif);font-style:italic;color:var(--ink-mute);margin-top:2rem;font-size:.95rem}.video-frame{position:relative;width:100%;max-width:760px;aspect-ratio:16 / 9;border:1px solid var(--rule);margin-bottom:1.25rem}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%}.text-link{display:inline-block;font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px;transition:color .3s ease,border-color .3s ease}.text-link:hover{color:var(--accent);border-color:var(--accent)}.entry-list{list-style:none;max-width:720px}.entry{display:grid;grid-template-columns:50px 1fr;gap:1.5rem;padding:1.75rem 0;border-top:1px solid var(--rule)}.entry:last-child{border-bottom:1px solid var(--rule)}.entry-num{font-family:var(--font-serif);font-style:italic;font-size:1.1rem;color:var(--ink-mute);padding-top:.3rem}.entry-text h3{font-family:var(--font-mincho);font-size:1.15rem;font-weight:500;color:var(--ink);margin-bottom:.5rem;letter-spacing:.03em}.entry-text p{font-family:var(--font-mincho);font-size:.95rem;color:var(--ink-soft);line-height:1.9}.platform-line{font-family:var(--font-serif);font-size:1.4rem;font-style:italic;color:var(--ink-soft);letter-spacing:.05em}.link-list{list-style:none;max-width:720px}.link-list li{border-top:1px solid var(--rule)}.link-list li:last-child{border-bottom:1px solid var(--rule)}.link-list a{display:grid;grid-template-columns:1fr auto 24px;align-items:baseline;gap:1.5rem;padding:1.5rem .5rem;text-decoration:none;color:var(--ink);transition:padding .3s ease,background-color .3s ease}.link-list a:hover{padding-left:1.25rem;background:var(--paper-warm)}.link-list .link-name{font-family:var(--font-serif);font-size:1.25rem;font-style:italic;color:var(--ink)}.link-list .link-handle{font-family:var(--font-sans);font-size:.85rem;color:var(--ink-mute);letter-spacing:.04em}.link-list .link-arrow{font-family:var(--font-serif);font-size:1.1rem;color:var(--ink-mute);transition:transform .3s ease,color .3s ease}.link-list a:hover .link-arrow{transform:translate(6px);color:var(--accent)}.music-note{position:fixed;font-size:1.5rem;color:var(--accent);pointer-events:none;z-index:9999;animation:fall linear forwards;opacity:.6}@keyframes fall{to{transform:translateY(100vh) rotate(360deg);opacity:0}}.message-bubble{position:fixed;background:var(--paper-warm);color:var(--ink);padding:.75rem 1.25rem;border:1px solid var(--rule);font-family:var(--font-mincho);font-size:.95rem;transform:translate(-50%,-100%);z-index:9999;pointer-events:none;animation:bubbleIn .4s ease}.message-bubble.fade-out{animation:bubbleOut .5s ease forwards}@keyframes bubbleIn{0%{opacity:0;transform:translate(-50%,-90%)}to{opacity:1;transform:translate(-50%,-100%)}}@keyframes bubbleOut{to{opacity:0;transform:translate(-50%,-120%)}}@media(max-width:900px){.cover-grid{grid-template-columns:1fr;gap:2.5rem}.cover-figure{order:-1;max-width:320px}.cover{padding:3rem 1.5rem 4rem}.page-section{padding:4rem 1.5rem}.section-head,.section-body{grid-template-columns:60px 1fr;gap:1.25rem}}@media(max-width:560px){.home{padding-top:70px}.cover{padding:2.5rem 1.25rem 3rem}.cover-meta{margin-bottom:1.5rem}.meta-divider{width:20px}.meta-label{font-size:.7rem}.cover-tagline{font-size:.95rem;line-height:1.9;margin-bottom:1.75rem}.page-section{padding:3rem 1.25rem}.section-head{grid-template-columns:1fr;gap:.5rem;margin-bottom:2rem}.section-body{grid-template-columns:1fr;gap:0}.section-num{font-size:.9rem}.entry{grid-template-columns:36px 1fr;gap:1rem;padding:1.25rem 0}.platform-line{font-size:1.15rem}.link-list a{grid-template-columns:1fr 20px;grid-template-rows:auto auto;padding:1.25rem .5rem;row-gap:.25rem}.link-list .link-arrow{grid-row:1;grid-column:2}.link-list .link-handle{grid-row:2;grid-column:1 / -1}}
