:root{--bg:#111719;--panel:#1b2021;--border:#393734;--orange:#c56b2d;--light-orange:#d99a58;--paper:#e8d8b8;--text:#e6e0d6;--muted:#aaa49a}*{box-sizing:border-box}html{background:var(--bg)}body{color:var(--text);background-color:var(--bg);overflow-wrap:anywhere;background-image:radial-gradient(#e8d8b806 1px,#0000 1px);background-size:5px 5px;margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;line-height:1.9}button,a{font:inherit}.siteHeader{border-bottom:1px solid var(--border);background:#111719f0}.headerInner{width:min(960px,100% - 48px);margin:auto;padding:22px 0 19px}.brand{color:var(--paper);letter-spacing:.16em;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.2rem;font-weight:700}.brandSub{color:var(--muted);letter-spacing:.08em;margin-top:1px;font-size:.73rem}main{background:var(--panel);border-inline:1px solid #3937348c;width:min(960px,100% - 48px);margin:0 auto;padding:68px 0 72px;box-shadow:0 0 34px #00000029}.intro,.message{width:min(760px,100% - 72px);margin-inline:auto}.eyebrow{color:var(--light-orange);letter-spacing:.18em;margin:0 0 7px;font-size:.78rem;font-weight:700}h1,h2{color:var(--paper);font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-weight:600}h1{letter-spacing:.04em;margin:0;font-size:clamp(1.8rem,4vw,2.65rem);line-height:1.45}.orangeRule{background:var(--orange);width:74px;height:2px;margin:24px 0 31px}.intro p:not(.eyebrow){margin:0 0 21px;font-size:.98rem}.photoSection{text-align:center;margin:47px auto 54px}.photoButton{cursor:zoom-in;background:0 0;border:0;width:min(860px,100% - 48px);margin:auto;padding:0;display:block}.photoButton:focus-visible{outline-offset:5px;outline:3px solid #f3c58c}.photoPrint{background:#f4f1ea;padding:12px;display:block;box-shadow:0 8px 22px #00000059}.photoPrint img{object-fit:contain;width:100%;height:auto;display:block}.caption{color:var(--text);margin:19px 24px 0;font-size:.9rem}.zoomHint{color:var(--muted);margin:2px 24px 0;font-size:.77rem}.downloadArea{color:var(--muted);flex-direction:column;align-items:center;margin-top:32px;font-size:.74rem;display:flex}.downloadButton{color:#fff;background:var(--orange);cursor:pointer;white-space:nowrap;border-radius:2px;justify-content:center;align-items:center;min-height:52px;padding:0 28px;font-weight:700;line-height:1.3;text-decoration:none;transition:background-color .16s;display:flex}.downloadButton:hover{background:#d47a38}.downloadButton:focus-visible,.closeButton:focus-visible{outline-offset:3px;outline:3px solid #f3c58c}.downloadArea span{margin-top:7px}.message{color:#352f27;background:var(--paper);border:1px solid #a88558;margin-top:53px;padding:30px 34px 27px;box-shadow:4px 5px #302f2c}.message h2{color:#342d24;border-bottom:1px solid #61442359;margin:0 0 15px;padding-bottom:11px;font-size:1.28rem}.message p{margin:0;font-size:.9rem;line-height:1.95}.message .signature{text-align:right;margin-top:17px;font-weight:700}footer{border-top:1px solid var(--orange);width:min(960px,100% - 48px);color:var(--muted);margin:auto;padding:29px 0 34px;font-size:.75rem;line-height:1.7}footer strong,footer span{display:block}footer strong{color:var(--paper);letter-spacing:.1em}.fictionNotice{border-top:1px solid var(--border);max-width:760px;color:var(--muted);margin:20px 0 0;padding-top:18px;font-size:.7rem;line-height:1.8}.modal{z-index:1200;background:#000000e0;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.modalImage{object-fit:contain;width:auto;max-width:calc(100vw - 64px);height:auto;max-height:calc(100vh - 64px);display:block}.closeButton{z-index:1;color:#fff;cursor:pointer;background:#141414d9;border:1px solid #ffffff94;border-radius:2px;min-width:72px;min-height:44px;padding:7px 15px;position:fixed;top:20px;right:22px}@media (max-width:600px){.headerInner,main,footer{width:calc(100% - 28px)}.headerInner{padding:17px 0 15px}.brand{font-size:1.06rem}.brandSub{letter-spacing:.04em;font-size:.68rem}main{padding:45px 0 50px}.intro,.message{width:calc(100% - 28px)}h1{font-size:1.72rem}.intro p:not(.eyebrow){font-size:.91rem;line-height:1.85}.photoSection{margin-top:36px}.photoButton{width:calc(100% - 12px);min-height:44px}.photoPrint{padding:6px}.caption{margin-inline:14px;font-size:.82rem}.downloadButton{width:calc(100% - 28px);max-width:360px;padding-inline:14px;font-size:.92rem}.message{padding:24px 20px 22px}.message h2{font-size:1.12rem}.message p{font-size:.84rem}.modal{padding:10px}.modalImage{max-width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.closeButton{top:10px;right:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
