:root{--red:#7c101d;--bright:#b51f2e;--ink:#130c0d;--ivory:#f4ead7;--gold:#c99b45}*{box-sizing:border-box}html{background:#10090a}body{margin:0;color:var(--ink);font-family:"Noto Serif JP",serif}main,footer{max-width:520px;margin:auto}.hero{min-height:100svh;background:var(--ivory);padding:18px 19px 25px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:37%;background:var(--red);z-index:0}.crest{position:absolute;right:20px;top:17px;width:47px;height:47px;border:1px solid var(--red);border-radius:50%;display:grid;place-items:center;color:var(--red);font-weight:700}.edition{font-size:.63rem;letter-spacing:.22em;margin:12px 0 20px;color:var(--red)}.frame{height:53svh;min-height:390px;margin-right:55px;border-radius:140px 140px 5px 5px;overflow:hidden;position:relative;z-index:1;box-shadow:9px 9px 0 var(--gold)}.frame img{width:100%;height:100%;object-fit:cover;object-position:center 20%;animation:still 18s ease-in-out infinite alternate}.hero-copy{position:relative;z-index:2;margin-top:-100px;margin-left:22px;color:white;text-shadow:0 2px 12px #0009}.hero-copy>span{font-size:.75rem;letter-spacing:.32em;color:#f1c873}.hero-copy h1{font-size:2.15rem;line-height:1.55;margin:7px 0 22px;letter-spacing:.05em}.doors{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative;z-index:3}.doors a{min-height:94px;padding:13px 42px 13px 13px;text-decoration:none;position:relative;display:flex;flex-direction:column;justify-content:center;border:1px solid var(--gold);transition:transform .25s,filter .25s}.doors a:active{transform:translateY(2px)}.doors small{font-size:.63rem;letter-spacing:.12em}.doors strong{font-size:.92rem;margin-top:7px}.doors i{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:27px;height:42px;border-left:1px solid currentColor;display:grid;place-items:center;font-style:normal;font-size:.72rem}.doors .jp{background:var(--ivory);color:var(--red)}.doors .en{background:var(--ink);color:#f0d395}.statement{background:var(--ink);color:var(--ivory);padding:68px 28px;display:grid;grid-template-columns:42px 1fr;gap:23px}.vertical{writing-mode:vertical-rl;margin:0;border-left:1px solid var(--gold);padding-left:12px;letter-spacing:.18em;color:#e3bd6c}.statement span{font-size:.62rem;letter-spacing:.18em;color:var(--gold)}.statement h2{font-size:1.65rem;line-height:1.75;margin:14px 0}.statement div>p{font-size:.9rem;line-height:2;margin:0;color:#dacfc1}.gallery{background:#eadbc2;padding:44px 19px 70px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery figure{margin:0;background:white;padding:7px 7px 12px}.gallery .main{grid-column:1/-1}.gallery img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover}.gallery .main img{aspect-ratio:4/4.7;object-position:center 18%}.gallery figure:nth-child(2) img{object-position:center 22%}.gallery figure:nth-child(3) img{object-position:center 28%}.gallery figcaption{font-size:.72rem;letter-spacing:.08em;padding:9px 4px 0}.gallery b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--red);color:white;margin-right:6px}.obi{background:var(--red);color:white;padding:75px 23px;text-align:center}.obi blockquote{font-size:1.25rem;line-height:2.05;margin:27px 0}.line{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.closing{background:var(--ivory);padding:66px 20px 75px;text-align:center}.seal{margin:auto;width:58px;height:58px;border:2px solid var(--bright);color:var(--bright);display:grid;place-items:center;font-size:1.35rem;transform:rotate(-5deg)}.closing>p{font-size:.63rem;letter-spacing:.23em;color:var(--red);margin-top:27px}.closing h2{font-size:1.75rem;line-height:1.7;margin:11px 0 29px}.bottom{text-align:left}.bottom a{min-height:101px}@keyframes still{to{transform:scale(1.045) translateY(-1%)}}footer{background:var(--ink);color:#d9bd83;text-align:center;padding:20px;font-size:.62rem;letter-spacing:.2em}@media(min-width:521px){body{padding:28px 0}main,footer{box-shadow:0 0 0 1px #ffffff14}}@media(max-width:370px){.hero-copy h1{font-size:1.9rem}.doors strong{font-size:.8rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
