:root{--ink:#09100d;--paper:#fffbee;--green:#007f50;--forest:#004b36;--pink:#ff0075;--yellow:#f3f700;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,input,textarea,select{border-radius:0}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h2,h3{font-weight:900}h2{white-space:pre-line;line-height:1.3;letter-spacing:-.05em}p{line-height:1.95}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #db0060;outline-offset:4px}section{scroll-margin-top:24px}.page{max-width:1200px;margin:auto;background:var(--paper)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}.skip{position:fixed;top:10px;left:20px;z-index:30;background:var(--yellow);padding:14px}.skip:not(:focus){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);top:0;left:0}main:focus{outline:none}header{height:76px;display:flex;gap:26px;align-items:center;background:var(--paper);border-top:5px solid var(--green);padding:4px 26px}.logo{width:106px;flex:none}.logo img{width:106px;max-height:62px;object-fit:contain;mix-blend-mode:multiply}nav{display:flex;gap:26px;align-items:center;margin-left:auto;font-size:13px;font-weight:900}.nav-cta{background:var(--green);color:var(--paper);padding:16px 20px}.languages{display:flex;gap:3px}.languages a{border:0;background:transparent;color:var(--ink);font:700 11px Arial,sans-serif;min-width:30px;height:34px}.languages a[aria-current=page]{background:var(--ink);color:var(--paper)}.hero{position:relative;container-type:inline-size;background:#080b09}.hero-crop{height:53cqw;position:relative;overflow:hidden}.hero-crop img{position:absolute;width:100%;max-width:none;top:0;left:0}.hero-hit{position:absolute;left:2%;top:87%;width:40%;height:11%}.hero-hit:hover{outline:3px solid var(--yellow)}.intro{padding:23px 38px;display:grid;grid-template-columns:180px 1fr;gap:30px;border-bottom:2px solid var(--green);align-items:center}.crumb{font-size:12px;font-weight:900;color:var(--forest);line-height:1.7;border-right:1px solid var(--green);padding-right:20px}.intro>p:last-child{font-size:13px;line-height:1.95;max-width:800px}.formats{display:grid;grid-template-columns:62% 38%;position:relative;background:var(--paper);padding-bottom:0;border-bottom:5px solid var(--ink)}.format-art{position:relative;container-type:inline-size;aspect-ratio:1.78;overflow:hidden;align-self:end}.format-art img{position:absolute;width:147.6923%;max-width:none;left:0;top:-86.5385cqw;mix-blend-mode:multiply}.format-options{position:relative;z-index:1;margin-left:-22px;background:var(--paper);clip-path:polygon(5% 0,100% 0,100% 100%,0 100%);padding:27px 30px 14px 34px;display:flex;flex-direction:column;justify-content:center;gap:22px}.format-options article+article{border-top:4px solid var(--green);padding-top:22px}.format-options h3{font-size:32px;line-height:1.35;letter-spacing:-.06em;transform:rotate(-2deg);margin-bottom:15px}.format-options p{font-size:14px;line-height:1.95}.formats-note{grid-column:1/-1;background:var(--green);color:var(--paper);font-size:11px;line-height:1.8;padding:12px 38px}.format-native{padding:25px 35px;font-size:40px;grid-column:1/-1}.example{padding:45px 38px 40px;border-bottom:7px solid var(--ink);position:relative}.case-grid{display:grid;grid-template-columns:44% 1fr;column-gap:42px;row-gap:12px}.case-heading{grid-column:2;grid-row:1}.kicker{font-size:11px;color:var(--forest);font-weight:900;margin-bottom:10px}.case-art{position:relative;container-type:inline-size;width:100%;aspect-ratio:2.6;overflow:hidden;mix-blend-mode:multiply}.case-art img{position:absolute;width:100%;max-width:none;left:0;top:-69.8cqw}.case-native{font-size:46px;padding:15px 0}.case-grid figure{grid-column:1;grid-row:1/span 2;margin:0;align-self:center;transform:rotate(-2deg);padding:11px;background:var(--paper);box-shadow:8px 10px 0 #004b362b;border:1px solid #004b3640;position:relative}.case-grid figure img{width:100%;height:auto}figcaption{font-size:10px;color:#385547;margin-top:9px;line-height:1.5}.case-copy{grid-column:2;grid-row:2;align-self:start}.case-copy h3{font-size:24px;line-height:1.5;white-space:pre-line;letter-spacing:-.05em;color:var(--forest);border-top:2px solid var(--green);border-bottom:2px solid var(--green);padding:9px 0;margin-bottom:17px}.case-date{font:65px/1 Impact,"Arial Narrow",sans-serif;letter-spacing:-.02em;color:var(--forest);margin:0 0 7px}.case-venue{font-size:18px;font-weight:900;line-height:1.5;margin-bottom:19px}.case-copy>p:not(.case-date):not(.case-venue):not(.case-org):not(.note){font-size:13px;line-height:1.95}.case-org{white-space:pre-line;font-size:10px;line-height:1.9;margin:18px 0}.text-link{display:inline-block;font-size:13px;font-weight:900;color:var(--forest);border:1px solid var(--green);padding:10px 17px;box-shadow:3px 3px 0 var(--green)}.note{font-size:10px;line-height:1.9}.case-copy .note{margin-top:17px;color:#395346}.prepare{padding:29px 27px 0;background:var(--ink)}.planning-ticket{display:grid;grid-template-columns:34% 1fr 58px;background:var(--paper);border:5px double var(--green);position:relative;align-items:stretch}.planning-ticket:before,.planning-ticket:after{content:"";position:absolute;width:19px;height:19px;border-radius:50%;background:var(--ink);top:50%}.planning-ticket:before{left:-12px}.planning-ticket:after{right:-12px}.prepare-heading{background:var(--green);padding:20px 18px;color:var(--paper);position:relative;border-right:2px dashed var(--forest)}.prepare-art{position:relative;container-type:inline-size;width:100%;aspect-ratio:1.55;overflow:hidden;margin:6px 0 14px}.prepare-art img{position:absolute;max-width:none;width:100%;left:0;top:-9.5cqw}.prepare-native{font-size:37px;margin-bottom:20px}.prepare-heading>p{font-size:12px;line-height:1.9;padding:0 8px 6px}.ticket{padding:17px 30px;display:flex;flex-direction:column;justify-content:center}.ticket-row{padding:18px 0}.ticket-row+.ticket-row{border-top:1px solid #527b67}.ticket-row h3{font-size:18px;font-weight:900;color:var(--forest);margin-bottom:8px}.ticket-row p{font-size:13px;line-height:1.9}.ticket-stub{writing-mode:vertical-rl;display:flex;align-items:center;justify-content:center;background:var(--yellow);color:#c90058;font:26px Impact,sans-serif;letter-spacing:.06em;border-left:3px dotted var(--ink);padding:13px 8px}.checks{background:var(--paper);padding:14px 26px;margin-top:15px;border-top:1px solid var(--green)}.checks summary{cursor:pointer;font-size:14px;font-weight:900;color:var(--forest);padding:5px 0;line-height:1.7}.checks-lead{font-size:12px;line-height:1.9;margin:15px 0}.checks-grid{display:block}.checks-grid>div{display:grid;grid-template-columns:150px 1fr;gap:24px;border-top:1px solid #007f5030;padding:15px 0}.checks-grid h3{font-size:13px;color:var(--forest)}.checks-grid p{font-size:12px;line-height:1.95}.faq{display:grid;grid-template-columns:80px 1fr;gap:37px;padding:35px 38px 40px;border-top:5px solid var(--ink);border-bottom:6px solid var(--ink);background:var(--paper)}.faq-heading{background:var(--forest);color:var(--paper);display:flex;align-items:flex-start;justify-content:center;padding:20px 12px;align-self:start;min-height:270px}.faq-heading h2{writing-mode:vertical-rl;font-size:32px;letter-spacing:.06em;line-height:1.5;white-space:normal}.faq-answers{columns:2;column-gap:49px;column-rule:1px solid #007f5040}.answer{break-inside:avoid;padding:1px 0 24px;margin-bottom:5px}.answer h3{display:flex;gap:12px;align-items:baseline;font-size:15px;line-height:1.8;font-weight:900;margin-bottom:10px}.answer:first-child h3{font-size:21px}.q{font:23px/1 Georgia,serif;flex:none;color:var(--forest);font-weight:900}.answer p strong{display:block;font-weight:700;margin-bottom:8px;color:var(--forest)}.answer p{font-size:14px;line-height:2;color:#203b2c;padding-left:34px}.contact{display:grid;grid-template-columns:33% 1fr 205px;gap:30px;background:var(--paper);padding:28px 0 0 30px;position:relative;align-items:stretch;border-bottom:7px solid var(--ink)}.contact-heading{padding:8px 0 30px}.contact-kicker{font-size:11px;letter-spacing:.14em;color:var(--forest);font-weight:900;margin-bottom:13px}.contact-art{container-type:inline-size;position:relative;width:100%;aspect-ratio:1.65;overflow:hidden;margin-bottom:23px}.contact-art img{max-width:none;width:100%;position:absolute;left:0;top:-87cqw}.contact-native{font-size:38px;margin-bottom:25px;color:var(--forest)}.contact-heading>p:last-child{font-size:12px;line-height:2;max-width:290px}.memo-form{padding:7px 0 28px;display:block;min-width:0}.memo-form label{display:block;font-size:11px;font-weight:800;color:var(--forest);margin-bottom:17px}.memo-form label span{display:block;margin-bottom:2px}.memo-form input{width:100%;min-width:0;background:transparent;border:0;border-bottom:1px solid #56856c;color:var(--ink);font-size:14px;padding:8px 2px 11px;line-height:1.6;min-height:43px}.memo-form input::placeholder{font-size:11px;color:#607b6b}.button{background:var(--ink);color:var(--paper);border:0;padding:16px 20px;font-size:14px;font-weight:900;width:100%;text-align:left;line-height:1.6}.button:hover{background:var(--forest)}#memo-result{margin-top:24px}#memo-result[hidden]{display:none}#memo-result label{margin:0 0 10px}#memo-result textarea{background:#fffdf4;border:1px solid #56856c;width:100%;font-size:13px;line-height:1.8;padding:10px;resize:vertical;min-height:220px;color:var(--ink)}#memo-status{font-size:11px;line-height:1.8;color:var(--forest);margin-top:9px}.contact-address{margin-top:-28px;padding:30px 18px 24px;background:var(--yellow);border-left:3px dashed var(--ink)}.contact-address h3{font-size:33px;line-height:1.3;transform:rotate(-4deg);margin-bottom:30px;letter-spacing:-.07em}.email{display:block;font-size:14px;font-weight:900;line-height:1.8;border-bottom:1px solid var(--ink);padding-bottom:15px;margin-bottom:18px}.address{display:block;font:700 14px/1.8 Arial,sans-serif;overflow-wrap:anywhere;letter-spacing:.015em}.contact-address .note{font-size:10px;line-height:1.9;margin-top:25px}footer{padding:28px 32px;background:var(--ink);color:var(--paper);display:flex;align-items:center;gap:32px}.footer-logo{flex:none}.footer-logo img{width:110px;filter:invert(1);mix-blend-mode:screen}footer p{font-size:11px;color:#c4d5ca}footer>a:last-child{margin-left:auto;font-size:11px;white-space:nowrap}.preview-note{background:#18271e;color:#c8d5cc;padding:15px 30px;font-size:9px;line-height:1.9}.noscript{padding:20px;background:var(--paper);color:var(--ink)}html[lang=ja] .format-native,html[lang=ja] .case-native,html[lang=ja] .prepare-native,html[lang=ja] .contact-native{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}html:not([lang=ja]) .case-art,html:not([lang=ja]) .prepare-art,html:not([lang=ja]) .contact-art{display:none}html:not([lang=ja]) .format-native{grid-column:1;grid-row:1;z-index:1;background:var(--green);color:var(--paper);align-self:start;font-size:37px;letter-spacing:-.025em}html:not([lang=ja]) .format-art{grid-column:1;grid-row:1;align-self:end}html:not([lang=ja]) .format-options{grid-column:2;grid-row:1}html:not([lang=ja]) .faq-heading h2{writing-mode:horizontal-tb;font-size:22px;letter-spacing:0;overflow-wrap:anywhere}html:not([lang=ja]) .faq{grid-template-columns:125px 1fr}html:not([lang=ja]) .contact-address h3{font-size:27px;letter-spacing:-.02em}html:not([lang=ja]) .contact-native{font-size:34px}
@media(prefers-reduced-motion:no-preference){.button,.email,.text-link,.nav-cta{transition:transform .15s,background-color .15s}.button:hover,.text-link:hover{transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:1000px){header{padding:4px 20px;gap:16px}nav{gap:17px;font-size:12px}.nav-cta{padding:15px}.intro{padding:20px 28px;grid-template-columns:150px 1fr;gap:25px}.formats{grid-template-columns:58% 42%}.format-options{padding:24px 25px 20px 32px;gap:17px}.format-options h3{font-size:29px}.format-options p{font-size:12px}.format-options article+article{padding-top:17px}.example{padding:32px 28px}.case-grid{gap:15px 29px;grid-template-columns:42% 1fr}.case-copy h3{font-size:21px}.case-date{font-size:55px}.case-venue{font-size:16px}.planning-ticket{grid-template-columns:32% 1fr 42px}.prepare{padding:23px 20px 0}.prepare-heading{padding:17px 12px}.prepare-heading>p{padding:0;font-size:11px}.ticket{padding:10px 22px}.ticket-row{padding:16px 0}.ticket-row h3{font-size:16px}.ticket-row p{font-size:11px}.ticket-stub{font-size:23px;padding:10px 5px}.faq{padding:30px 28px;gap:26px;grid-template-columns:65px 1fr}.faq-answers{column-gap:30px}.faq-heading{padding:15px 8px}.faq-heading h2{font-size:28px}.answer h3{font-size:14px;gap:9px}.answer:first-child h3{font-size:18px}.answer p{font-size:12px;padding-left:29px}.contact{padding-left:25px;grid-template-columns:29% 1fr 170px;gap:22px}.contact-address{padding:25px 14px}.contact-address h3{font-size:29px}.contact-heading>p:last-child{font-size:11px}.address{font-size:17px}.email{font-size:14px}html:not([lang=ja]) .contact-native{font-size:28px}html:not([lang=ja]) .format-native{font-size:29px}}
@media(max-width:640px){header{height:64px;padding:3px 14px;gap:10px}.logo,.logo img{width:82px}.logo img{max-height:52px}nav{margin-left:auto}nav>a:not(.nav-cta){display:none}.nav-cta{font-size:11px;padding:12px 10px}.languages{gap:0}.languages a{min-width:28px;height:36px;font-size:10px}.hero-crop{height:69.8cqw}.hero-hit{left:3%;top:84%;width:58%;height:13%}.intro{display:block;padding:21px 23px}.crumb{border:0;padding:0;margin-bottom:11px;font-size:10px}.intro>p:last-child{font-size:12px;line-height:1.95}.formats{display:flex;flex-direction:column;border-bottom-width:4px}.format-art{width:100%;aspect-ratio:1.78}.format-options{margin-left:0;clip-path:none;padding:25px 23px 23px;gap:24px}.format-options h3{font-size:31px;margin-bottom:12px;transform:none}.format-options p{font-size:13px;line-height:1.95}.format-options article+article{border-top-width:2px;padding-top:23px}.formats-note{font-size:10px;line-height:1.9;padding:13px 23px}.example{padding:26px 23px 32px;border-bottom-width:5px}.case-grid{display:flex;flex-direction:column;gap:25px}.case-heading{order:0;width:100%}.kicker{font-size:10px;margin-bottom:10px}.case-art{width:calc(100% + 32px);margin-left:-16px;aspect-ratio:2.6}.case-grid figure{order:1;width:82%;max-width:290px;align-self:center;padding:8px;box-shadow:6px 7px 0 #004b362b}.case-copy{order:2}.case-copy h3{font-size:24px;line-height:1.45;padding:11px 0;margin-bottom:18px}.case-date{font-size:57px;margin-bottom:8px}.case-venue{font-size:17px;margin-bottom:17px}.case-copy>p:not(.case-date):not(.case-venue):not(.case-org):not(.note){font-size:13px;line-height:2}.case-org{font-size:10px;line-height:1.9;margin:18px 0}.text-link{font-size:12px;padding:10px 13px}.case-copy .note{font-size:10px;margin-top:18px;line-height:1.9}.prepare{padding:24px 18px 0}.planning-ticket{display:flex;flex-direction:column;border-width:4px}.prepare-heading{padding:13px 20px 20px;border-right:0;border-bottom:2px dashed var(--forest)}.prepare-art{width:100%;max-width:330px;margin:0 auto 14px;aspect-ratio:1.55}.prepare-heading>p{font-size:12px;line-height:1.9}.ticket{padding:8px 22px 6px}.ticket-row{padding:21px 0}.ticket-row h3{font-size:18px;margin-bottom:10px}.ticket-row p{font-size:12px;line-height:2}.ticket-stub{writing-mode:horizontal-tb;border-left:0;border-top:3px dotted var(--ink);font-size:19px;letter-spacing:.13em;padding:10px}.checks{padding:15px 15px;margin-top:20px}.checks summary{font-size:13px;line-height:1.8}.checks-lead{font-size:12px}.checks-grid>div{display:block;padding:17px 0}.checks-grid h3{font-size:14px;margin-bottom:10px}.checks-grid p{font-size:12px;line-height:2}.faq,html:not([lang=ja]) .faq{display:block;padding:31px 23px 18px;border-top-width:5px;border-bottom-width:5px}.faq-heading{display:block;background:transparent;color:var(--forest);min-height:0;padding:0 0 20px;border-bottom:3px double var(--green);margin-bottom:27px}.faq-heading h2,html:not([lang=ja]) .faq-heading h2{writing-mode:horizontal-tb;font-size:29px;letter-spacing:-.045em;line-height:1.4}.faq-answers{columns:auto}.answer{padding:0 0 25px;margin-bottom:17px}.answer+.answer{border-top:1px solid #007f5030;padding-top:20px}.answer h3,.answer:first-child h3{font-size:16px;line-height:1.8;gap:11px;margin-bottom:12px}.answer:first-child h3{font-size:20px}.q{font-size:25px}.answer p{padding-left:0;font-size:13px;line-height:2}.contact{display:flex;flex-direction:column;gap:0;padding:28px 23px 0;border-bottom-width:5px}.contact-heading{padding:0 0 25px}.contact-kicker{font-size:10px;margin-bottom:14px}.contact-art{width:100%;aspect-ratio:1.65;margin-bottom:21px}.contact-heading>p:last-child{max-width:none;font-size:12px;line-height:2}.memo-form{padding:0 0 30px}.memo-form label{font-size:12px;margin-bottom:21px}.memo-form input{font-size:15px;min-height:48px;padding:9px 2px 12px}.memo-form input::placeholder{font-size:12px}.button{font-size:14px;padding:17px 18px}#memo-result textarea{font-size:14px}.contact-address{margin:0 -23px;border-left:0;border-top:3px dashed var(--ink);padding:22px 23px 24px;display:grid;grid-template-columns:1fr;gap:0}.contact-address h3{font-size:33px;transform:none;margin-bottom:17px}.email{font-size:16px;padding-bottom:14px;margin-bottom:14px;max-width:320px}.address{font-size:22px;line-height:1.6;letter-spacing:0;overflow-wrap:anywhere}.contact-address .note{font-size:10px;line-height:1.9;margin-top:15px}footer{padding:24px 23px;gap:18px;flex-wrap:wrap}.footer-logo img{width:90px}footer p{font-size:9px;min-width:160px;flex:1}footer>a:last-child{font-size:11px}.preview-note{font-size:9px;padding:16px 23px}html:not([lang=ja]) .format-native{font-size:32px;padding:20px 23px;order:-1}html:not([lang=ja]) .case-native{font-size:35px;line-height:1.25;padding:8px 0}html:not([lang=ja]) .prepare-native{font-size:32px}html:not([lang=ja]) .contact-native{font-size:36px}html:not([lang=ja]) .nav-cta{font-size:10px;padding:12px 7px}}
@media(max-width:359px){header{padding:3px 10px;gap:6px}.logo,.logo img{width:68px}.nav-cta{font-size:10px;padding:11px 8px}.languages a{min-width:26px}.intro,.format-options,.example,.faq,.contact{padding-left:19px;padding-right:19px}.format-options h3{font-size:28px}.case-date{font-size:50px}.case-copy h3{font-size:22px}.prepare{padding-left:14px;padding-right:14px}.prepare-heading{padding-left:17px;padding-right:17px}.ticket{padding-left:19px;padding-right:19px}.faq-heading h2{font-size:27px}.answer h3,.answer:first-child h3{font-size:16px}.answer p{font-size:13px}.contact-address{margin-left:-19px;margin-right:-19px;padding-left:19px;padding-right:19px}.address{font-size:20px}}
.languages a{display:flex;align-items:center;justify-content:center}.hero-native{font-size:35px;line-height:1.3;background:var(--forest);color:var(--paper);padding:23px 38px;font-weight:900}html[lang=ja] .hero-native{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.costs{padding:32px 38px 35px;border-bottom:5px solid var(--ink)}.costs h2{font-size:30px;color:var(--forest);border-bottom:3px double var(--green);padding-bottom:18px;margin-bottom:25px}.cost-grid{display:grid;grid-template-columns:35% 1fr;gap:42px}.venue-sketch{border-right:1px solid #007f5040;padding-right:32px}.sketch-caption{font-size:12px;font-weight:800;color:var(--forest);margin-bottom:16px}.venue-map{border:2px dashed #3e775c;padding:23px 16px 16px;text-align:center;margin:0 0 18px}.ring-square{width:65%;aspect-ratio:1;margin:0 auto 14px;background:var(--forest);border:4px double var(--paper);outline:2px solid var(--forest);color:var(--paper);display:flex;flex-direction:column;justify-content:center;gap:10px;padding:8px}.ring-square span{font-size:12px}.ring-square strong{font-size:24px;white-space:nowrap}.surrounding{display:block;font-size:12px;color:var(--forest);font-weight:700}.venue-sketch>p:last-child,.cost-ledger p{font-size:13px;line-height:1.95}.cost-ledger>div+div{border-top:1px solid #007f5040;padding-top:18px;margin-top:18px}.cost-ledger h3{font-size:14px;color:var(--forest);margin-bottom:9px}.cost-ledger .published-price{font-size:26px;line-height:1.5;letter-spacing:-.025em;font-weight:900;margin-bottom:12px;color:var(--forest)}.cost-ledger .source-line{font-size:11px;line-height:1.8;border-top:1px solid #007f5040;padding-top:15px;margin-top:19px}.source-line a{text-decoration:underline;text-underline-offset:3px;font-weight:700}.source-line span{display:block;color:#466652;margin-top:5px}.process{background:var(--paper);padding:26px 30px 10px;margin-top:19px;border-top:4px double var(--green)}.process>h3{font-size:22px;color:var(--forest);margin:0 0 13px}.process>p{font-size:13px;line-height:1.9;max-width:780px}.process ol{list-style:none;padding:0;margin:19px 0 0}.process li{display:grid;grid-template-columns:32% 1fr;gap:28px;padding:16px 0;border-top:1px solid #007f5040}.process h4{font-size:15px;line-height:1.7;color:var(--forest);margin:0}.process li p{font-size:13px;line-height:1.9}.memo-options{margin:3px 0 21px;border-bottom:1px solid #56856c;padding-bottom:15px}.memo-options summary{cursor:pointer;font-size:12px;line-height:1.8;color:var(--forest);font-weight:700}.memo-options label{margin-top:17px}.memo-options select{width:100%;max-width:100%;font-size:13px;background:var(--paper);color:var(--ink);border:1px solid #56856c;padding:10px 7px;min-height:42px}.memo-options label:last-child{margin-bottom:0}.answer p strong{line-height:1.85}.format-options h3{font-size:29px}.contact-heading>p:last-child{max-width:none}.contact-address{overflow-wrap:anywhere}
@media(max-width:1000px){.costs{padding:28px}.cost-grid{grid-template-columns:35% 1fr;gap:27px}.venue-sketch{padding-right:23px}.ring-square{width:80%}.ring-square strong{font-size:20px}.cost-ledger .published-price{font-size:23px}.format-options h3{font-size:25px}.process{padding:24px 25px 10px}.process li{grid-template-columns:36% 1fr;gap:22px}}
@media(max-width:640px){.hero-native{font-size:26px;padding:20px 23px}.costs{padding:26px 23px 29px;border-bottom-width:5px}.costs h2{font-size:26px;margin-bottom:22px;padding-bottom:16px}.cost-grid{display:flex;flex-direction:column;gap:25px}.venue-sketch{order:1;padding:0;border:0;border-top:3px double var(--green);padding-top:23px}.venue-map{max-width:290px;margin:0 auto 20px;padding:21px 17px 16px}.ring-square{width:58%;max-width:165px}.ring-square strong{font-size:23px}.venue-sketch>p:last-child,.cost-ledger p{font-size:13px;line-height:2}.cost-ledger .published-price{font-size:24px}.cost-ledger h3{font-size:14px}.cost-ledger .source-line{font-size:10px}.process{padding:22px 19px 7px}.process>h3{font-size:21px;line-height:1.6}.process>p{font-size:12px}.process li{display:block;padding:17px 0}.process h4{font-size:15px;margin-bottom:9px}.process li p{font-size:12px;line-height:2}.format-options h3{font-size:29px}.memo-options summary{font-size:12px}.memo-options select{font-size:14px}.contact-heading>p:last-child{font-size:12px;line-height:2}.contact-address .note{max-width:440px}.answer{margin-bottom:9px;padding-bottom:20px}}
@media(max-width:359px){.costs{padding-left:19px;padding-right:19px}.costs h2{font-size:24px}.cost-ledger .published-price{font-size:22px}.format-options h3{font-size:26px}.process{padding-left:16px;padding-right:16px}}
.costs{background:var(--ink);padding:25px 27px 28px;border-bottom:0}.costs>h2{border:0;color:var(--paper);font-size:32px;letter-spacing:-.06em;transform:rotate(-1deg);padding:0 9px;margin:0 0 22px}.cost-grid{position:relative;background:var(--paper);border:5px double var(--green);padding:28px;grid-template-columns:35% 1fr;gap:35px}.cost-grid:before,.cost-grid:after{content:"";position:absolute;width:18px;height:18px;background:var(--ink);border-radius:50%;top:49%}.cost-grid:before{left:-12px}.cost-grid:after{right:-12px}.venue-sketch{border-right:2px dashed #007f5050;padding-right:26px}.cost-ledger .price-entry{border-bottom:3px double var(--green);padding-bottom:22px}.cost-ledger .price-entry+div{border-top:0;padding-top:0;margin-top:20px}.price-entry h3{font-size:12px;letter-spacing:.08em}.cost-ledger .published-price{font-size:18px;line-height:1.35;margin:14px 0 18px;font-weight:800}.published-price strong{font:64px/1.1 Impact,"Arial Narrow",sans-serif;letter-spacing:-.035em;display:inline-block;margin:0 6px}.venue-map{margin-top:20px;padding-top:34px}.ring-square{position:relative;margin-top:8px;margin-bottom:20px}.dimension-x{position:absolute;left:0;right:0;top:-22px;border-top:1px solid var(--forest);height:7px;border-left:1px solid var(--forest);border-right:1px solid var(--forest)}.dimension-x i{position:absolute;left:50%;top:-9px;transform:translateX(-50%);font:12px Arial,sans-serif;background:var(--paper);color:var(--forest);padding:0 7px}.dimension-y{position:absolute;top:0;bottom:0;left:-22px;border-left:1px solid var(--forest);width:7px;border-top:1px solid var(--forest);border-bottom:1px solid var(--forest)}.dimension-y i{position:absolute;top:50%;left:-15px;transform:translateY(-50%) rotate(-90deg);font:12px Arial,sans-serif;white-space:nowrap;background:var(--paper);color:var(--forest);padding:0 6px}.surrounding{line-height:1.6}.cost-ledger .source-line{padding-top:13px;margin-top:18px}
@media(max-width:1000px){.costs{padding:23px 20px}.cost-grid{padding:23px;gap:27px}.venue-sketch{padding-right:20px}.published-price strong{font-size:53px}.cost-ledger .published-price{font-size:16px}}
@media(max-width:640px){.costs{padding:24px 18px}.costs>h2{font-size:27px;margin-bottom:20px;padding:0 3px}.cost-grid{display:flex;padding:22px 20px;gap:27px;border-width:4px}.venue-sketch{padding:25px 0 0;border-right:0}.cost-ledger .published-price{font-size:16px;line-height:1.7;margin:11px 0 15px}.published-price strong{font-size:51px;line-height:1.1;margin:1px 4px}.cost-ledger .price-entry{padding-bottom:20px}.cost-ledger .source-line{font-size:10px}.venue-map{max-width:280px;padding-top:36px;margin-top:19px}.ring-square{width:62%}.cost-grid:before,.cost-grid:after{top:31%}}
@media(max-width:359px){.costs{padding-left:14px;padding-right:14px}.costs>h2{font-size:25px}.cost-grid{padding:21px 17px}.published-price strong{font-size:46px}.cost-ledger .published-price{font-size:15px}.ring-square{width:65%}}
.price-tail{white-space:nowrap}@media(max-width:359px){.price-lead{display:block}.published-price strong{margin-left:0}}
.case-copy .talent-note{font-size:12px!important;line-height:1.9!important;margin-top:21px}.talent-link{display:inline-block;font-size:12px;font-weight:800;color:var(--forest);text-decoration:underline;text-underline-offset:4px;margin-top:9px}.print-action{display:inline-block;margin:16px 0 0;background:transparent;color:var(--forest);border:0;border-bottom:1px solid var(--forest);padding:4px 0;font-size:12px;font-weight:800;line-height:1.8}
/* R2 layout with selected R3 copy and retained utilities. */
.print-only{display:none}.formats-note p{line-height:1.8}.format-source{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:5px}.format-source a{text-decoration:underline;text-underline-offset:3px}.format-options h3{font-size:32px}.contact-intro{font-size:12px;line-height:2;max-width:290px}
@media(max-width:1000px){.format-options h3{font-size:29px}.contact-intro{font-size:11px}}
@media(max-width:640px){.format-options h3{font-size:31px}.answer{padding-bottom:25px;margin-bottom:17px}.contact-intro{font-size:12px;max-width:none}.format-source{gap:3px 14px}}
@media(max-width:359px){.format-options h3{font-size:28px}}
@media print{.print-only{display:block}}
/* Editorial hierarchy, within the retained R2 sections. */
.intro-copy>p{font-size:13px;line-height:1.95;max-width:800px}.price-preview{margin-top:12px;padding-top:11px;border-top:1px solid #007f5040;font-size:13px;line-height:1.8;color:var(--forest)}.price-preview strong{font-weight:800;margin-right:18px}.price-preview a{display:inline-block;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:4px;padding:4px 0}.price-preview p{font-size:12px;line-height:1.8;margin-top:3px;color:#203b2c}.formats-note{font-size:14px}.format-source{font-size:11px;margin-top:8px}.answer-source{padding-left:34px;margin-top:12px;font-size:12px;line-height:1.8;color:var(--forest)}.answer-source a{text-decoration:underline;text-underline-offset:4px}.answer[id]{scroll-margin-top:24px}
@media(max-width:1000px){.answer-source{padding-left:29px}}
@media(max-width:640px){.intro-copy>p{font-size:13px}.price-preview strong{display:block;margin:0}.price-preview a{font-size:13px}.formats-note{font-size:13px;line-height:1.9}.format-source{font-size:11px}.ticket-row p{font-size:13px;line-height:1.9}.answer-source{padding-left:0}}
@media print{.price-preview{display:none}.intro-copy>p{font-size:12px;line-height:1.7;max-width:none}}
/* Strict QA: preserved R2 artwork, bounded image controls and editorial priorities. */
.hero-stage{position:relative;container-type:inline-size}
.format-art img{width:100%;top:0}
.case-art img{top:-.048619cqw}
.prepare-art img{top:-.02734375cqw}
.contact-art img{top:-.0859375cqw}
.case-grid figure{max-width:350px;justify-self:center}
.case-copy .case-lead{font-size:15px!important;line-height:1.9!important;margin:0 0 12px}
.case-copy .note{font-size:12px;line-height:1.9;margin:0 0 18px}
.case-date{font-family:inherit;font-size:14px;font-weight:600;line-height:1.8;letter-spacing:0;margin:0 0 2px}
.case-date span{font:400 12px/1.8 sans-serif;margin-right:8px}
.case-date time{font:700 14px/1.8 sans-serif}
.case-venue{font-size:14px;line-height:1.8;margin:0 0 10px}
.case-org{margin:10px 0}
.memo-form[hidden],.memo-fallback[hidden],.print-action[hidden]{display:none!important}
.memo-fallback{font-size:14px;line-height:1.9;padding:12px 0 24px}
.memo-fallback a{display:inline-block;margin-top:14px;padding:10px 0;text-decoration:underline;text-underline-offset:4px;font-weight:800;color:var(--forest)}
@media(max-width:640px){.case-grid{gap:20px}.case-copy{order:1}.case-grid figure{order:2;width:70%;max-width:230px}.case-date{font-size:14px}.case-venue{font-size:14px}.case-copy .case-lead{font-size:14px!important}.case-copy .note{font-size:12px;margin:0 0 15px}.case-copy .talent-note{margin-top:14px}.ticket-row{padding:17px 0}}
@media print{.memo-fallback{display:none!important}}
/* Optional motion always releases back to the unchanged static composition. */
.case-grid figure a{display:block;overflow:hidden}
.event-motion-active{will-change:transform}
.hero-image-unavailable .hero-stage{display:none}
html[lang] .hero-image-unavailable .hero-native{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip-path:none!important;white-space:normal!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.event-motion-active{transform:none!important}}
@media print{.event-motion-active{transform:none!important}}
/* Full-width R2 lettering; text composed as an editorial page below each image. */
@media screen{
 .intro{grid-template-columns:150px 1fr;padding:38px 44px;gap:38px;align-items:start}
 .crumb{font-size:12px;padding-top:8px;line-height:2}
 .intro-copy>p{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:23px;font-weight:600;line-height:1.85;max-width:36em;letter-spacing:.015em}
 .price-preview{margin-top:24px;padding-top:17px;font-size:16px}
 .price-preview strong{font-size:19px;letter-spacing:-.025em}
 .price-preview p{font-size:13px;max-width:48em;margin-top:8px}
 .formats{display:block}
 .format-art,.case-art,.prepare-art,.contact-art{width:100%;max-width:none;height:auto;aspect-ratio:auto;margin:0;overflow:visible;container-type:normal}
 .format-art img,.case-art img,.prepare-art img,.contact-art img{position:static;width:100%;max-width:100%;height:auto;transform:none!important}
 .format-art{overflow:hidden;aspect-ratio:520/293}
 .case-art{aspect-ratio:724/280}
 .prepare-art{aspect-ratio:16/9;display:flex;align-items:flex-start;justify-content:flex-end;padding:4%;background:#09100d url("assets/delivery/planning-photo.webp") center 58%/cover no-repeat}
 .prepare-art img{width:60%;flex:none}
 html[lang=ja] .prepare-heading{background:#09100d}
 html[lang=ja] .prepare-heading>p{border-top:1px solid #ffffff24}
 .contact-art{aspect-ratio:2/1;display:flex;align-items:center;padding:4%;background:linear-gradient(90deg,#fffbee 25%,#fffbeeee 43%,#fffbee88 58%,#fffbee00 73%),url("assets/delivery/contact-photo.webp") right center/auto 100% no-repeat}
 .contact-art img{width:56%;flex:none}
 .format-options{margin:0;clip-path:none;padding:42px 44px;display:grid;grid-template-columns:1fr 1fr;gap:64px}
 .format-options article+article{border-top:0;border-left:1px solid var(--green);padding:0 0 0 44px}
 .format-options h3{font-size:clamp(30px,3.4vw,47px);line-height:1.3;letter-spacing:-.06em;margin-bottom:22px;transform:none}
 .format-options p{font-size:16px;line-height:2;max-width:35em}
 .formats-note{padding:22px 44px;font-size:14px}
 .format-source{margin-top:12px;font-size:12px}
 .example{padding:0 0 52px}
 .case-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:40px 64px}
 .case-heading{grid-column:1/-1;grid-row:1}
 .kicker{font-size:12px;letter-spacing:.12em;margin:0;padding:25px 44px 13px}
 .case-grid figure{grid-column:1;grid-row:2;align-self:start;width:78%;max-width:360px;margin:20px 0 0 44px;justify-self:center}
 .case-copy{grid-column:2;grid-row:2;padding:0 44px 0 0;min-width:0}
 .case-copy h3{border-top:0;border-bottom:4px solid var(--green);font-size:clamp(29px,3vw,42px);line-height:1.35;padding:0 0 22px;margin-bottom:25px;letter-spacing:-.055em}
 .case-copy .case-lead{font-size:17px!important;line-height:2!important;margin-bottom:20px}
 .case-copy .note{font-size:13px;line-height:1.9;border-left:3px solid var(--green);padding-left:14px;margin-bottom:26px}
 .case-date{padding-top:18px;border-top:1px solid #007f5040}
 .case-date time{font-size:18px;font-variant-numeric:tabular-nums;letter-spacing:.015em}
 .case-venue{font-size:16px;margin-top:6px;line-height:1.7}
 .case-org{font-size:12px;line-height:1.9;margin:16px 0 22px}
 .case-copy .talent-note{font-size:13px!important;line-height:1.85!important}
 .prepare{padding:32px 28px 0}
 .planning-ticket{grid-template-columns:1fr}
 .prepare-heading{padding:0;border:0}
 .prepare-heading>p{padding:24px 36px;font-size:18px;line-height:1.8;max-width:44em}
 .ticket{padding:36px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}
 .ticket-row{padding:0}
 .ticket-row+.ticket-row{border-top:0;border-left:1px solid #527b67;padding:0 0 0 26px}
 .ticket-row h3{font-size:25px;letter-spacing:-.045em;line-height:1.5;margin-bottom:18px;text-wrap:balance}
 .ticket-row p{font-size:15px;line-height:2}
 .ticket-stub{writing-mode:horizontal-tb;border-left:0;border-top:3px dotted var(--ink);font-size:19px;letter-spacing:.18em;padding:10px}
 .checks{padding:20px 30px;margin-top:20px}
 .checks summary{font-size:16px}
 .checks-grid h3,.checks-grid p,.checks-lead{font-size:14px}
 .faq,html:not([lang=ja]) .faq{display:block;padding:48px 44px 20px}
 .faq-heading{display:block;background:none;color:var(--forest);min-height:0;padding:0 0 24px;border-bottom:5px double var(--green);margin-bottom:32px}
 .faq-heading h2,html:not([lang=ja]) .faq-heading h2{writing-mode:horizontal-tb;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(32px,4vw,54px);font-weight:800;letter-spacing:-.045em;line-height:1.3}
 .faq-answers{columns:auto;display:grid;grid-template-columns:1fr 1fr;gap:0 54px}
 .answer{padding:28px 0;margin:0;border-top:1px solid #007f5060}
 .answer:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px 54px;border-top:0;padding:0 0 36px}
 .answer h3{font-size:22px;line-height:1.6;gap:16px;margin-bottom:17px;letter-spacing:-.035em}
 .answer:first-child h3{font-size:36px;line-height:1.4;grid-row:1/span 2;margin:0}
 .q{font-size:39px;line-height:1.1;font-style:italic}
 .answer:first-child .q{font-size:60px}
 .answer h3 span[data-i18n]{text-wrap:balance}
 .question-phrase{display:inline-block;max-width:100%}
 .answer .answer-date{display:block;font-size:12px;font-weight:400;line-height:1.8;margin-top:8px;letter-spacing:0}
 .answer p{font-size:15px;line-height:2;padding-left:0}
 .answer p strong{font-size:17px;line-height:1.85;margin-bottom:12px}
 .answer-source{grid-column:2;padding:0;margin:0;font-size:12px}
 .contact{padding:0;grid-template-columns:minmax(0,1fr) 290px;gap:0 44px}
 .contact-heading{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:0 24px;padding:0 0 24px;align-items:start}
 .contact-art,.contact-native,.contact-kicker{grid-column:1/-1}
 .contact-kicker{font-size:12px;letter-spacing:.15em;margin:0;padding:24px 44px 10px}
 .contact-intro{font-size:16px;line-height:1.9;max-width:44em;margin:16px 0 0 44px}
 .print-action{margin:16px 24px 0 0;font-size:13px;align-self:center;justify-self:start}
 .memo-form{padding:0 0 40px 44px;display:grid;grid-template-columns:1fr 1fr;gap:25px 30px;align-content:start}
 .memo-form label{font-size:14px;margin:0;line-height:1.7}
 .memo-form label span{margin-bottom:9px}
 .memo-form input{font-size:16px;min-height:52px;border-bottom:2px solid #56856c;padding:12px 2px}
 .memo-form input::placeholder{font-size:13px}
 .memo-options,#create-memo,#memo-result{grid-column:1/-1}
 .memo-options{margin:0;padding:0 0 22px}
 .memo-options summary{font-size:14px}
 .memo-options label{margin-top:16px}
 .memo-options select{font-size:16px}
 #create-memo{font-size:19px;padding:23px 26px}
 #memo-result{margin:0}
 #memo-result textarea{font-size:16px}
 .contact-address{margin:0;padding:28px 25px;border-left:3px dashed var(--ink)}
 .contact-address h3{font-size:42px;margin-bottom:26px}
 .address{font-size:19px;line-height:1.6}
 .contact-address .note{font-size:12px;line-height:1.9}
 .email{font-size:17px}
 .memo-fallback{padding:0 0 32px 44px}
 html:not([lang=ja]) .format-native{padding:32px 44px;font-size:48px}
 html:not([lang=ja]) .case-native,html:not([lang=ja]) .prepare-native,html:not([lang=ja]) .contact-native{font-size:clamp(38px,5.7vw,72px);padding:24px 44px;margin:0;line-height:1.15;letter-spacing:-.035em;max-width:18em}
 html:not([lang=ja]) .case-native{padding-top:0}
 html:not([lang=ja]) .contact-address h3{font-size:32px}
 @media(max-width:800px){
  .intro{grid-template-columns:1fr;padding:28px 24px;gap:12px}.crumb{border:0;padding:0;margin:0}
  .intro-copy>p{font-size:21px}.price-preview strong{font-size:17px}
  .format-options{padding:30px 24px;gap:30px}.format-options article+article{padding-left:28px}
  .format-options h3{font-size:32px}.format-options p{font-size:15px}
  .formats-note{padding:22px 24px}
  .case-grid{gap:30px;grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}.case-copy{padding-right:24px}.case-copy h3{font-size:30px}.case-copy .case-lead{font-size:16px!important}.case-grid figure{width:85%;margin-left:20px}.kicker{padding-left:24px}
  .ticket{padding:28px;gap:22px}.ticket-row+.ticket-row{padding-left:20px}.ticket-row h3{font-size:22px}.ticket-row p{font-size:14px}
  .faq{padding:36px 24px 20px}.faq-answers{gap:0 32px}.answer:first-child{gap:14px 32px}.answer:first-child h3{font-size:29px}.answer h3{font-size:20px}
  .contact{grid-template-columns:minmax(0,1fr) 230px;gap:0 28px}.memo-form{padding-left:24px;grid-template-columns:1fr;gap:22px}.contact-address{padding:25px 20px}.contact-address h3{font-size:34px}.address{font-size:17px}
 }
 @media(max-width:640px){
  .intro-copy>p{font-size:19px;line-height:1.9}.price-preview{margin-top:20px}.price-preview strong{display:block;line-height:1.8}.price-preview p{font-size:12px}
  .format-options{display:block;padding:28px 24px 32px}.format-options article+article{border-left:0;border-top:2px solid var(--green);padding:28px 0 0;margin-top:28px}
  .format-options h3{font-size:38px;margin-bottom:17px}.format-options p{font-size:15px}
  .formats-note{font-size:13px}.format-source{font-size:11px}
  .example{padding:0 0 35px}.case-grid{display:flex;gap:24px}.case-heading{width:100%}.kicker{font-size:11px;padding:22px 24px 9px}
  .case-copy{padding:0 24px}.case-copy h3{font-size:31px;line-height:1.45;padding-bottom:19px;margin-bottom:21px}.case-copy .case-lead{font-size:16px!important}.case-copy .note{font-size:12px}
  .case-grid figure{width:70%;max-width:280px;margin:10px auto 0}.case-org{font-size:11px}
  .prepare-art{aspect-ratio:1.05;align-items:flex-end;padding:5%;background-image:linear-gradient(180deg,#09100d00 45%,#09100d 95%),url("assets/delivery/planning-photo.webp");background-size:100% 100%,auto 82%;background-position:center,center top}
  .prepare-art img{width:88%}
  .contact-art{aspect-ratio:1/1;align-items:flex-end;padding:6%;background-image:linear-gradient(180deg,#fffbee00 27%,#fffbeee6 54%,#fffbee 64%),url("assets/delivery/contact-photo.webp");background-size:100% 100%,100% auto;background-position:center,center top}
  .contact-art img{width:92%}
  .prepare{padding:22px 14px 0}.prepare-heading>p{font-size:16px;padding:20px 22px}.ticket{display:block;padding:8px 22px 10px}
  .ticket-row{padding:23px 0}.ticket-row+.ticket-row{padding:23px 0;border-left:0;border-top:1px solid #527b67}.ticket-row h3{font-size:24px;margin-bottom:12px;text-wrap:initial}.ticket-row p{font-size:14px}
  .checks{padding:16px;margin-top:18px}.checks summary{font-size:14px}.checks-grid p,.checks-lead{font-size:13px}
  .faq,html:not([lang=ja]) .faq{padding:34px 24px 12px}.faq-heading{padding-bottom:20px;margin-bottom:24px}.faq-heading h2,html:not([lang=ja]) .faq-heading h2{font-size:36px}
  .faq-answers{display:block}.answer:first-child{display:block;padding-bottom:29px}.answer:first-child h3{font-size:27px;margin-bottom:20px}.answer:first-child .q{font-size:43px}.answer{padding:26px 0}.answer h3{font-size:21px;gap:12px;line-height:1.6}.q{font-size:33px}.answer p{font-size:14px}.answer p strong{font-size:15px}.answer-source{margin-top:14px}
  .contact{display:block;padding:0}.contact-heading{display:block;padding:0 0 24px}.contact-kicker{font-size:11px;padding:22px 24px 9px}.contact-intro{margin:20px 24px 0;font-size:14px;line-height:1.9}.print-action{margin:14px 24px 0}
  .memo-form{padding:0 24px 32px;display:block}.memo-form label{margin-bottom:24px;font-size:14px}.memo-form input{font-size:16px}.memo-options{margin-bottom:24px}.memo-options label:last-child{margin-bottom:0}.button,#create-memo{font-size:16px;padding:20px}#memo-result{margin-top:24px}
  .contact-address{margin:0;padding:26px 24px;border-left:0;border-top:3px dashed var(--ink)}.address{font-size:23px}.contact-address h3{font-size:38px;margin-bottom:20px}.contact-address .note{font-size:12px}.memo-fallback{padding:0 24px 30px}
  html:not([lang=ja]) .format-native{padding:24px;font-size:37px}
  html:not([lang=ja]) .case-native,html:not([lang=ja]) .prepare-native,html:not([lang=ja]) .contact-native{font-size:38px;padding:20px 24px;line-height:1.2}
 }
 @media(max-width:359px){
  .intro-copy>p{font-size:18px}.format-options h3{font-size:34px}.case-copy h3{font-size:27px}.ticket-row h3{font-size:21px}.answer h3{font-size:19px}.answer:first-child h3{font-size:24px}.address{font-size:20px}
 }
}
/* Paper controls: clear hover, pressed and keyboard states, without covering imagery. */
@media screen{
 .languages a{min-width:44px;min-height:44px}
 .nav-cta{min-height:44px;display:flex;align-items:center;justify-content:center}
 .price-preview a,.format-source a,.text-link,.talent-link,.answer-source a,.print-action,.email,footer>a:last-child{min-height:44px;display:inline-flex;align-items:center}
 .checks summary,.memo-options summary{min-height:44px;padding-top:10px;padding-bottom:10px}
 .button{box-shadow:3px 3px 0 var(--green)}
 .nav-cta:active,.languages a:active{background:var(--forest);color:var(--paper)}
 .memo-form input:focus,.memo-options select:focus{background:#fffdf4;border-color:#db0060}
 .checks[open]>summary,.memo-options[open]>summary{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
 .case-grid figure a:active{outline:3px solid #db0060;outline-offset:3px}
 @media(hover:hover) and (pointer:fine){
  .button:hover,.nav-cta:hover{background:var(--forest);box-shadow:3px 5px 0 var(--green);transform:translateY(-2px)}
  .languages a:not([aria-current=page]):hover{background:var(--forest);color:var(--paper)}
  .case-grid figure a:hover{outline:3px solid var(--green);outline-offset:3px}
  .talent-link:hover,.answer-source a:hover,.price-preview a:hover,.format-source a:hover,.print-action:hover{text-decoration-thickness:2px}
 }
 @media(hover:none){.button:hover,.text-link:hover{transform:none}.button:hover{background:var(--ink)}}
 .button:active,.text-link:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--green);background:var(--forest);color:var(--paper)}
 @media(prefers-reduced-motion:no-preference){.button,.text-link,.nav-cta{transition:transform .14s,box-shadow .14s,background-color .14s}}
 @media(prefers-reduced-motion:reduce){.button:hover,.button:active,.text-link:hover,.text-link:active,.nav-cta:hover{transform:none}}
 @media(max-width:640px){
  header{gap:8px}.logo,.logo img{width:64px}.languages a{min-width:44px}
  .hero-hit{top:calc(90.5% - 22px);height:44px}
 }
 @media(max-width:359px){header{gap:6px}.logo,.logo img{width:50px}}
}
@page{size:A4;margin:14mm}
@media print{
 html,body{background:#fff!important;color:#09100d!important;font-size:10pt;scroll-behavior:auto}.page{max-width:none;width:100%;background:#fff}.skip,header nav,.languages,.hero-crop,.hero-hit,.formats,.example,.prepare,.faq,.preview-note,footer,.noscript,.print-action,.contact-heading,.memo-form,.contact-address .note{display:none!important}
 header{height:38px;border-top:0;border-bottom:2px solid #004b36;padding:0 0 7px;margin-bottom:13px}.logo,.logo img{width:70px;max-height:32px}.hero{background:none;container-type:normal}.hero-native,html[lang=ja] .hero-native{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip-path:none!important;white-space:normal!important;background:none;color:#004b36;font-size:23px;line-height:1.3;padding:0;margin:0 0 10px}
 .intro{display:block;padding:0 0 13px;border:0}.crumb{border:0;padding:0;font-size:9px;margin:0 0 6px}.intro>p:last-child{font-size:11px;line-height:1.7;max-width:none}.costs{background:none;padding:0;border:0;break-inside:avoid}.costs>h2{color:#004b36;transform:none;font-size:19px;margin:0 0 11px;padding:0}.cost-grid{display:grid!important;grid-template-columns:32% 1fr!important;gap:18px!important;padding:16px!important;border:1px solid #004b36;background:#fff}.cost-grid:before,.cost-grid:after{display:none}.venue-sketch{order:0;padding:0 14px 0 0!important;border-top:0;border-right:1px dashed #507565}.sketch-caption{font-size:9px;margin:0 0 10px}.venue-map{padding:25px 12px 10px;margin:0 0 14px;border:1px dashed #004b36}.ring-square{width:75%;max-width:none;margin:7px auto 12px;background:#fff;color:#004b36;border:3px double #004b36;outline:none;gap:6px;padding:6px}.ring-square span{font-size:9px}.ring-square strong{font-size:17px}.dimension-x{top:-17px}.dimension-y{left:-17px}.dimension-x i,.dimension-y i{background:#fff;font-size:9px}.dimension-y i{left:-13px}.surrounding{font-size:8px;line-height:1.5}.venue-sketch>p:last-child,.cost-ledger p{font-size:10px;line-height:1.75}.cost-ledger h3,.price-entry h3{font-size:10px;letter-spacing:0;margin-bottom:7px}.cost-ledger .published-price{font-size:12px;line-height:1.4;margin:9px 0 12px}.published-price strong{font-size:36px;margin:0 3px}.price-lead{display:inline}.cost-ledger .price-entry{padding-bottom:13px}.cost-ledger .price-entry+div{margin-top:13px}.cost-ledger>div+div{padding-top:13px;margin-top:13px}.cost-ledger .source-line{font-size:8px;line-height:1.7;margin-top:13px;padding-top:10px}.source-line span{margin-top:4px}.cost-ledger .source-line a{color:#004b36}
 .contact{display:block;padding:0;margin:14px 0 0;border:0;break-inside:avoid}.contact-address{margin:0;border:0;border-top:2px solid #004b36;background:none;padding:12px 0 0;display:block}.contact-address h3{font-size:16px;transform:none;margin:0 0 8px;letter-spacing:0}.email{font-size:10px;display:inline-block;border:0;margin:0 14px 0 0;padding:0}.address{display:inline;font:700 13px/1.6 Arial,sans-serif;letter-spacing:0}.address wbr{display:none}a[href]:after{content:none!important}
}
@media print{.intro>p:last-child,.venue-sketch>p:last-child,.cost-ledger p{font-size:12px;line-height:1.7}.cost-ledger h3,.price-entry h3{font-size:11px}.cost-ledger .source-line{font-size:10px}.source-line a:after{content:" (pw-secretbase.tokyo)"!important;font-size:9px}}
@media print{.contact-address .email{display:none!important}}
/* Evidence-led introduction within the retained R2 composition. */
@media screen{
 .intro-title{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(30px,3.2vw,43px);line-height:1.55;letter-spacing:-.05em;white-space:pre-line;text-wrap:balance;color:var(--forest);margin:0 0 20px;font-weight:800}
 .intro-copy>p.intro-body{font-family:inherit;font-size:16px;line-height:2;font-weight:400;max-width:42em;letter-spacing:0}
 .intro-case-link{display:inline-block;color:var(--forest);font-size:14px;font-weight:700;line-height:1.8;margin-top:14px;text-decoration:underline;text-underline-offset:5px;padding:8px 0}
 .intro-cta{display:inline-block;background:var(--forest);color:var(--paper,#fffbee);font-size:16px;font-weight:800;padding:15px 23px;margin-top:22px;line-height:1.6;border-bottom:4px solid var(--green);transition:background .18s}
 .intro-cta:hover{background:#007f50}
 .event-scenes{grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr;gap:14px 28px;align-items:end;padding-top:4px}
 .event-scenes figure{margin:0;transform:none}
 .event-scenes img{display:block;width:100%;height:auto}
 .scene-side>p{font-size:13px;line-height:1.85;margin:15px 0 0;max-width:30em}
 .scene-side .talent-link{font-size:14px;margin-top:4px;padding:7px 0}
 .scene-caption{grid-column:1/-1;color:#375647;font-size:11px;line-height:1.8;margin:0}
 .case-programme{margin:22px 0 25px;border-top:1px solid #007f5070;border-bottom:1px solid #007f5070;padding:16px 0}
 .case-programme h4{font-size:12px;font-weight:500;line-height:1.8;letter-spacing:.04em;color:var(--forest);margin:0 0 9px}
 .case-programme ol{list-style:none;margin:0;padding:0}
 .case-programme li{display:grid;grid-template-columns:112px 1fr;gap:14px;font-size:15px;font-weight:700;line-height:1.8;padding:8px 0}
 .case-programme time{font-family:Arial,sans-serif;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--forest)}
 .case-record{margin-top:22px;padding:18px 0 0;border-top:3px double var(--green)}
 .case-record p{font-size:13px!important;line-height:1.9!important;margin:0 0 9px}
 .case-record a{display:block;font-size:14px;font-weight:700;line-height:1.8;text-decoration:underline;text-underline-offset:5px;color:var(--forest);padding:9px 0}
 .contact-benefit{grid-column:1/-1;white-space:pre-line;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:30px;font-weight:800;line-height:1.6;letter-spacing:-.035em;margin:26px 44px 0;color:var(--forest)}
}
@media screen and (max-width:1000px){
 .intro-title{font-size:34px}
 .event-scenes{gap:12px 22px}
 .case-programme li{grid-template-columns:1fr;gap:2px}
}
@media screen and (max-width:640px){
 .intro-title{font-size:24px;line-height:1.65;letter-spacing:-.065em;margin-bottom:18px}
 .intro-copy>p.intro-body{font-size:15px;line-height:1.95}
 .intro-case-link{font-size:13px;margin-top:9px}
 .intro-cta{font-size:15px;padding:13px 16px;margin-top:16px}
 .event-scenes{grid-template-columns:1fr;gap:16px;padding-top:0;margin-top:26px}
 .scene-side{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;align-items:start}
 .scene-side figure{grid-row:1/span 2;align-self:center}
 .scene-side>p{font-size:12px;margin:0}
 .scene-side .talent-link{font-size:12px;margin:0;align-self:start}
 .scene-caption{font-size:10px;line-height:1.9}
 .case-programme{margin:18px 0 22px;padding:13px 0}
 .case-programme li{grid-template-columns:105px 1fr;gap:10px;font-size:14px}
 .case-programme time{font-size:13px}
 .case-record a{font-size:13px}
 .contact-benefit{font-size:24px;margin:22px 24px 0;line-height:1.7}
}
@media screen and (max-width:359px){.intro-title{font-size:20px}.case-programme li{grid-template-columns:1fr;gap:2px}.contact-benefit{font-size:21px;margin-left:18px;margin-right:18px}}
@media print{.intro-title,.intro-case-link,.intro-cta,.event-scenes,.contact-benefit{display:none!important}}

/* Direct enquiry form: preserve the ticket composition and keep personal data out of print. */
@media screen {
 .contact-fields{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:25px 30px;min-width:0}
 .contact-fields[hidden],.contact-confirmation[hidden],.form-feedback[hidden]{display:none!important}
 .contact-message,.form-note,.contact-confirmation,.form-feedback{grid-column:1/-1}
 .memo-form .contact-message textarea{display:block;width:100%;min-height:160px;border:2px solid #56856c;background:transparent;color:var(--ink);padding:12px;font:inherit;font-size:16px;line-height:1.8;resize:vertical}
 .memo-form .contact-message textarea:focus{background:#fffdf4;border-color:#db0060}
 .form-note{font-size:12px;line-height:1.9;color:var(--forest)}
 .contact-confirmation h3{font-size:24px;color:var(--forest);margin:0 0 18px}
 .contact-actions{display:flex;gap:16px;align-items:stretch;margin-top:22px}
 .contact-actions .button{flex:1;padding:20px;font-size:16px}
 .secondary-button{background:transparent;border:1px solid var(--forest);color:var(--forest);padding:16px;font-weight:700}
 .contact-actions button:disabled{cursor:wait;opacity:.6}
 .form-feedback{padding:18px;border-left:4px solid #b8244d;background:#fff3ed;font-size:15px;line-height:1.9;overflow-wrap:anywhere}
 .form-feedback[data-state=success]{border-color:var(--green);background:#edf6e9;color:var(--forest)}
 .memo-form [aria-invalid=true]{border-color:#b8244d}
 .memo-form .contact-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
 @media(max-width:900px){.contact-fields{grid-template-columns:1fr;gap:22px}}
 @media(max-width:640px){.contact-fields{display:block}.contact-fields .form-note{margin:18px 0}.contact-actions{flex-direction:column-reverse}.contact-confirmation h3{font-size:22px}}
}
