@font-face{font-family:Maru;src:url('../assets/maru.woff')}@font-face{font-family:Hannotate;src:url('../assets/hannotate.woff');font-weight:700}@font-face{font-family:Karakaze;src:url('../assets/karakaze.woff')}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:#f6f1dd}body{margin:0;color:#633407;font-family:Maru,'Hiragino Maru Gothic ProN',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.site-header{position:fixed;z-index:1000;inset:0 0 auto;height:60px;background:#f7f1df;box-shadow:0 1px 3px #3f2c1933}.header-inner{position:relative;width:960px;height:60px;margin:auto}.brand{position:absolute;left:4px;top:12px;width:188px}.brand img{width:100%}.global-nav{position:absolute;left:289px;top:16px;display:flex;gap:26px;white-space:nowrap}.nav-item{width:82px;text-align:center}.nav-item span{display:block;font-size:12px;line-height:14px;letter-spacing:.1px}.nav-item small{display:block;font-family:Hannotate,cursive;font-weight:700;font-size:9px;line-height:11px;letter-spacing:1px;margin-top:4px}.nav-events small{color:red}.nav-features small{color:#0077cc}.nav-greetings small{color:#41b432}.nav-results small{color:#17289d}.nav-contact small{color:#b10a8f}.line-header{position:absolute;left:828px;top:10px;width:122px;height:40px}.line-header img{width:100%;height:100%;object-fit:contain}
main{padding-top:60px}.hero{height:750px;width:100%;overflow:hidden;background:#d3dec5}.hero img{width:100%;height:100%;object-fit:cover;object-position:center bottom}
.events-section{position:relative;height:690px;background:#f6f1dd;overflow:hidden;scroll-margin-top:60px}.events-inner{position:relative;width:960px;height:100%;margin:auto}.events-script{position:absolute;left:117px;top:64px;font-family:Karakaze,cursive;font-size:100px;line-height:1;white-space:nowrap;color:#fdfbf2;transform:rotate(-2deg)}.events-sidecopy{position:absolute;left:177px;top:137px;height:300px}.events-title{position:absolute;left:90px;top:0;margin:0;height:295px;writing-mode:vertical-rl;text-orientation:upright;font-size:36px;line-height:1.2;letter-spacing:6px;font-weight:400}.events-title-en{position:absolute;left:134px;top:6px;writing-mode:vertical-rl;font:700 15px/1 Hannotate;letter-spacing:3px;color:#c80029}.events-lead{position:absolute;left:0;top:49px;margin:0;height:250px;writing-mode:vertical-rl;text-orientation:upright;font-size:14px;line-height:20px;letter-spacing:2px}
.event-row{position:absolute;left:414px;width:540px;height:174px}.event-row-1{top:188px}.event-row-2{top:393px}.event-image{width:250px;height:173px;object-fit:fill;border-radius:11px}.event-copy{position:absolute;left:270px;top:8px;width:261px}.event-heading{height:22px;display:flex;align-items:center;gap:13px;margin-left:13px;white-space:nowrap}.event-badge{display:inline-flex;align-items:center;justify-content:center;height:22px;padding:0 8px;border-radius:2px;background:#703b0a;color:white;font-size:14px;line-height:22px}.event-heading h3{margin:0;font:700 16px/22px Arial,sans-serif;letter-spacing:.6px}.event-description{margin:7px 0 0;font-size:13px;line-height:19.5px;letter-spacing:.7px}.event-target{margin-top:10px;text-align:center;color:#e44a12;font-size:11px;line-height:16px;letter-spacing:.5px}.event-target span{display:block}.event-target p{margin:0}.events-dots{position:absolute;left:230px;top:481px;width:115px;height:65px}.dot{position:absolute;display:block;border-radius:46% 54% 48% 44%}.dot-yellow-main{left:0;top:0;width:57px;height:58px;background:#ffbb26;transform:rotate(24deg)}.dot-yellow-small{left:85px;top:10px;width:25px;height:25px;background:#ffbb26}.dot-brown{left:36px;top:38px;width:25px;height:25px;background:#7c4c20;transform:rotate(24deg)}.future-anchor{height:0}
.events-section{background:#f7f1df}.events-section:before{content:'';position:absolute;top:0;bottom:0;left:calc(50% - 675px);width:1168px;background:#f5f0dd}
/* Reference comparison, second pass. Values are CSS pixels at 1440px viewport. */
.brand{left:2px;top:4px}.global-nav{top:14.5px}.nav-item small{font-size:8px}
.hero{height:720px}.hero img{height:auto;transform:translateY(-32px)}
.events-script{left:116.72px;top:73.125px;width:521.71875px;height:97.03125px;transform:none}
.events-sidecopy{left:172px;top:131px}.events-lead{top:55px}.events-title{letter-spacing:6px}.events-title-en{left:139px;top:12px;font-size:14px;letter-spacing:3px}
.event-description{letter-spacing:1.2px}.event-badge{font-size:13px;padding:0 7px}.event-heading h3{font-size:16px;letter-spacing:.5px}.event-target{margin-top:6px}
/* Third pass: reference line wraps and decoration outlines. */
.events-title{letter-spacing:7px}.events-lead{letter-spacing:2.1px}
.event-row-2 .event-description{letter-spacing:.7px}
.event-heading h3{transform:translateY(2px)}
.events-dots{left:227.58px;top:478.83px;width:117.42px;height:68.2px}
.events-title{white-space:nowrap;height:310px}
/* Safari screenshot calibration (2026-10-06 20:17), original asset geometry. */
.brand{left:2px;top:11px;width:194px;height:35px}.brand img{width:194px;height:35px}
.global-nav{left:0;top:14.5px;display:block}.nav-item{position:absolute;width:81px}.nav-events{left:292px}.nav-features{left:399px}.nav-greetings{left:515px;width:65px}.nav-results{left:610px}.nav-contact{left:720px}
.line-header{width:123px}
.event-row{left:412.87px}.event-row-1{top:187.59px}.event-row-2{top:391.91px}.event-image{width:249.54px;height:172.8px}
.events-title{left:91.5px;top:8px;letter-spacing:6.8px}.events-title-en{top:10.5px}
.event-target{color:#ed4e16}
/* Second Safari capture: align to the authoritative 19:56 reference. */
.events-inner{left:3px}
.event-row-1{top:186.19px}.event-row-2{top:390.51px}
.event-target{margin-top:10px}
/* PC版：現行ページの980px基準座標に合わせる。 */
body{background:#f7f1df;overflow-x:hidden;min-width:980px}.events-section{height:645px}.reference-section{position:relative;width:980px;margin:0 auto;scroll-margin-top:60px}.section-canvas{position:relative}.section-art{position:absolute;inset:0;width:100%;height:100%}.placed-text{position:absolute;margin:0;padding:0;border:0;white-space:pre;letter-spacing:0}.placed-text[style*="vertical-rl"]{white-space:normal}.image-link{position:absolute;display:block}.access-map{position:absolute;left:360px;top:183px;width:434px;height:321px}.access-map img{width:100%;height:100%}.site-footer{height:127px;margin-top:13px;border-top:1px solid #d2cdbc;box-shadow:0 -1px 3px #3f2c1922;text-align:center;padding-top:22px}.site-footer img{width:228px;height:42px;margin:auto}.site-footer p{font-size:14px;line-height:20px;margin:20px 0 0;color:#5e3c17;font-family:Maru,sans-serif}.placed-text:focus-visible,.image-link:focus-visible,.access-map:focus-visible,a:focus-visible{outline:2px solid #176c93;outline-offset:4px} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@font-face{font-family:DinLight;src:url('../assets/din-light.woff2') format('woff2');font-weight:400;font-style:normal}.site-footer p{font-family:DinLight,sans-serif}

/* October event copy: preserve the three reference lines at the existing size. */
.event-row-1 .event-description{letter-spacing:0}

/* Approved original heading artwork: proportional scaling only. */
.feature-claim{position:absolute;left:37px;top:962px;width:753px;margin:0;padding:0;line-height:0}.feature-claim img{display:block;width:100%;height:auto}

/* Approved original callouts, both axes at 50% of source dimensions. */
.promise-assurance{position:absolute;left:318px;top:446px;width:327px;margin:0;padding:0;line-height:0}.results-instagram{position:absolute;left:131px;top:1436px;width:542px;line-height:0}.promise-assurance img,.results-instagram img{display:block;width:100%;height:auto}

/* Background sampled from the left edge of the approved 2026-10-07 capture. */
:root{--page-beige:#f6f1e1}
html,body,.site-header,.events-section,.site-footer{background:var(--page-beige)}
.events-section:before{background:var(--page-beige)}
