/* Public shared chrome, scoped independently from approved page artwork. */
:root{--ok-head:72px;--ok-paper:#f2ecde;--ok-ink:#183138;--ok-green:#253f34;--ok-line:#cbc5b5;--ok-serif:'Yu Mincho','YuMincho','Hiragino Mincho ProN',serif;--ok-sans:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}
.ok-header,.ok-footer,.ok-fields{box-sizing:border-box;font-family:var(--ok-sans);font-weight:400;text-align:left;letter-spacing:.025em}
:is(.ok-header,.ok-footer,.ok-fields) *{box-sizing:border-box}
:is(.ok-header,.ok-footer,.ok-fields) a{color:inherit;text-decoration:none}
:is(.ok-header,.ok-footer,.ok-fields) button{font:inherit;color:inherit;cursor:pointer}
:is(.ok-header,.ok-footer,.ok-fields) :focus-visible,.ok-reading-tools :focus-visible{outline:2px solid #9d773a;outline-offset:5px}
.ok-shell{width:min(1200px,calc(100% - 48px));margin-inline:auto}
.ok-header{position:relative;z-index:100;background:var(--ok-paper);color:var(--ok-ink);border-bottom:1px solid #1831381f;width:100%}
.ok-header-inner{height:var(--ok-head);display:flex;align-items:center;gap:28px}
.ok-header .ok-brand,.ok-footer .ok-brand{display:inline-block;font:500 24px/1.2 var(--ok-serif);letter-spacing:.12em;white-space:nowrap}
.ok-header .ok-brand small,.ok-footer .ok-brand small{display:block;margin-top:5px;font:400 9px/1.5 var(--ok-sans);letter-spacing:.4em}
.ok-nav{display:flex;align-items:center;gap:26px;margin-left:auto;font:400 13px/1.6 var(--ok-sans)}
.ok-nav>a,.ok-service-group>a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
.ok-nav a:hover,.ok-footer a:hover{text-decoration:underline;text-underline-offset:5px}
.ok-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.ok-service-group{position:relative;display:flex;align-items:center}
.ok-service-toggle{width:28px;height:44px;background:none;border:0;font-size:18px!important}
.ok-service-toggle[aria-expanded=true] .ok-service-chevron{display:inline-block;transform:rotate(180deg)}
.ok-service-links{position:absolute;left:-20px;top:100%;width:280px;padding:12px 20px;background:#fbf8f0;border:1px solid var(--ok-line);box-shadow:0 12px 24px #10181a14}
.ok-service-links[hidden]{display:none!important}
.ok-service-links a{display:flex;align-items:center;min-height:48px;padding:8px 0;font-size:13px;border-bottom:1px solid #cbc5b580}
.ok-service-links a:last-child{border-bottom:0}
.ok-actions{display:flex;align-items:center;gap:14px}
.ok-contact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 25px;background:var(--ok-green);color:#fff9ed!important;font:500 13px/1.5 var(--ok-sans);white-space:nowrap}
.ok-contact:hover{background:#183128}
.ok-menu-toggle{display:none;width:44px;height:44px;border:0;background:none;padding:10px;position:relative}
.ok-menu-toggle .ok-menu-line{display:block;width:24px;height:1px;background:currentColor;margin:5px 0;transition:transform .18s}
.ok-menu-toggle[aria-expanded=true] .ok-menu-line:first-child{transform:translateY(3px) rotate(45deg)}
.ok-menu-toggle[aria-expanded=true] .ok-menu-line:nth-child(2){transform:translateY(-3px) rotate(-45deg)}
.ok-footer{padding:58px 0 24px;background:#10181a;color:#e9e0cd;border-top:1px solid #e9e0cd26}
.ok-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px}
.ok-footer h2{margin:0 0 14px;color:#d8c294;font:500 13px/1.7 var(--ok-sans);letter-spacing:.08em}
.ok-footer ul{margin:0;padding:0;list-style:none}.ok-footer li{margin:0;padding:0}
.ok-footer nav a{display:inline-flex;align-items:center;min-height:40px;font:400 13px/1.7 var(--ok-sans)}
.ok-footer-brand p{margin:30px 0 5px;font:400 12px/1.8 var(--ok-sans)}
.ok-footer .ok-email{font:400 13px/1.8 var(--ok-sans);display:inline-flex;align-items:center;min-height:40px}
.ok-footer .ok-copyright{border-top:1px solid #e9e0cd26;margin:30px 0 0;padding-top:22px;font:400 11px/1.8 var(--ok-sans)}
.ok-fields{background:var(--ok-paper);color:var(--ok-ink);border-bottom:1px solid var(--ok-line)}
.ok-fields-inner{display:grid;grid-template-columns:.65fr 1fr 1.5fr 1fr}
.ok-fields a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:12px 14px;border-right:1px solid var(--ok-line);font:400 13px/1.6 var(--ok-sans);text-align:center}
.ok-fields a:first-child{border-left:1px solid var(--ok-line)}
.ok-fields a[aria-current=page]{background:#e7e0cf;box-shadow:inset 0 -2px var(--ok-ink);font-weight:600}
.ok-skip{position:fixed;left:16px;top:-150px;z-index:100000;background:#fbf8f0;color:var(--ok-ink);padding:12px 20px;border:1px solid var(--ok-ink);font:14px/1.5 var(--ok-sans)}
.ok-skip:focus{top:12px}
body .subpages-v2{padding-top:0!important}body:has(.ok-header){padding-bottom:0!important}
body.production-top .ok-header{position:absolute;top:0;left:0;right:0}
body.production-top .stage{height:100dvh!important}
body.production-top #reading-view{inset:var(--ok-head) 0 0!important}
body.production-top .detail{top:var(--ok-head)!important;bottom:76px!important}
body.production-top .journey-nav{display:flex!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:16px!important;width:min(760px,calc(100% - 48px))!important;min-height:54px!important;padding:4px 16px!important;gap:14px!important;background:#faf6ebf5!important;color:#294236!important;border:1px solid #d4c9b4!important;border-radius:0!important}
body.production-top .journey-nav .home-control,body.production-top .journey-nav .next-control{min-width:110px;min-height:44px!important;grid-row:auto!important;grid-column:auto!important;font-size:12px!important}
body.production-top .journey-nav .places-current{display:block!important;position:static!important;margin:auto;text-align:center;font:12px/1.5 var(--ok-sans);white-space:nowrap}
.ok-reading-tools{position:fixed;z-index:101;right:18px;bottom:82px;color:#e9e0cd;font:12px/1.6 var(--ok-sans)}
.ok-reading-tools summary{cursor:pointer;min-height:32px;padding:6px 10px;border:1px solid #e9e0cd66;background:#10181aaa;font-size:11px}
.ok-reading-tools[open]{padding:12px;background:#fbf8f0;color:#183138;border:1px solid #cbc5b5;box-shadow:0 4px 24px #0002;max-width:calc(100vw - 36px)}
.ok-reading-tools[open] summary{background:none;color:inherit;border:0;padding:0 0 8px}
body.production-top .ok-reading-tools #motion,.ok-reading-tools #reading-toggle{display:flex!important;width:100%;justify-content:flex-start!important;min-height:44px!important;margin:6px 0 0!important;padding:8px 12px!important;border:1px solid #cbc5b5!important;background:none!important;color:#183138!important;font:12px/1.6 var(--ok-sans)!important}
.ok-reading-tools #motion[aria-pressed=true]{background:#253f34!important;color:#fff9ed!important}
.ok-reading-tools .view-label-short{display:none!important}
body.production-top[data-scene=intro] .ok-reading-tools,body.production-top[data-reading=true] .ok-reading-tools{bottom:18px}
@media(max-width:1000px){
.ok-nav{display:none;position:absolute;left:0;right:0;top:100%;margin:0;padding:14px 24px;max-height:calc(100dvh - var(--ok-head));overflow-y:auto;background:#f2ecde;border-bottom:1px solid #cbc5b5;box-shadow:0 10px 20px #10181a14;font-size:14px}
.ok-header[data-menu-open] .ok-nav{display:block}
.ok-nav>a{display:flex;min-height:48px;border-bottom:1px solid #cbc5b5}
.ok-service-group{display:flex;flex-wrap:wrap;border-bottom:1px solid #cbc5b5}
.ok-service-group>a{min-height:48px;flex:1}.ok-service-toggle{width:44px}
.ok-service-links{position:static;width:100%;border:0;padding:0 0 10px 18px;box-shadow:none;background:none}
.ok-service-links a{font-size:13px;min-height:44px}
.ok-menu-toggle{display:block}.ok-actions{margin-left:auto;gap:10px}
.ok-footer-grid{gap:36px;grid-template-columns:1fr 1fr}.ok-footer-brand{grid-column:1/-1}
}
@media(max-width:700px){
:root{--ok-head:64px}.ok-shell{width:calc(100% - 40px)}.ok-header-inner{gap:8px}
.ok-header .ok-brand{font-size:20px}.ok-header .ok-brand small{font-size:8px;margin-top:4px}
.ok-contact{font-size:12px;padding:10px 15px}.ok-actions{gap:6px}.ok-nav{padding:8px 20px 18px}
.ok-fields-inner{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}
.ok-fields a{font-size:11px;min-height:58px;padding:10px 8px;line-height:1.65;border-left:0!important}
.ok-fields a:first-child{grid-column:1/-1;min-height:34px;padding:6px 20px;justify-content:flex-start;border-right:0;border-bottom:1px solid #cbc5b5}
.ok-fields a:last-child{border-right:0}
.ok-footer{padding:38px 0 22px}.ok-footer-grid{gap:28px 20px}.ok-footer .ok-brand{font-size:23px}
.ok-footer nav a{font-size:12px;min-height:44px}.ok-footer h2{font-size:12px}.ok-footer-brand p{margin-top:20px}
body.production-top .journey-nav{width:calc(100% - 24px)!important;bottom:10px!important;padding:4px 10px!important;gap:4px!important}
body.production-top .journey-nav .home-control,body.production-top .journey-nav .next-control{min-width:90px;font-size:10px!important;gap:5px!important}
body.production-top .journey-nav .places-current{font-size:10px}body.production-top .detail{bottom:74px!important}
.ok-reading-tools{bottom:76px;right:12px}
body.oookaya-final-v009 .v-ec3b .bighero h1{font-size:clamp(28px,8vw,36px)!important;letter-spacing:.04em!important}
.ok-phrase{display:inline-block;white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){.ok-header *,.ok-reading-tools *{scroll-behavior:auto!important;transition:none!important}}

@media(max-width:700px){.v-ec3b .bighero h1 .nb{white-space:nowrap;display:inline-block}}

@media(max-width:700px){.v-ec3b .bighero h1 .nb{white-space:nowrap;display:inline-block}}

/* Keep the two year marks inside narrow phones. */
@media(max-width:400px){.v-ab2 .abb-years{gap:12px!important}.v-ab2 .abb-years b{font-size:clamp(50px,16vw,64px)!important}}

/* The former mobile location list also hid Home; keep the retained return action available. */
body.production-top .journey-nav .home-control{display:flex!important}

/* 2026-10-25: menu readability, explicit motion state, original artwork retained. */
.ok-header .ok-nav{font-size:16px;font-weight:500;gap:24px}
.ok-header .ok-contact{font-size:16px;min-height:44px}
.ok-header .ok-service-toggle{width:auto;min-height:44px;display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;font-size:16px!important;font-weight:500;white-space:nowrap}
.ok-service-chevron{font-size:18px;transition:transform .18s}
.ok-service-toggle:hover .ok-service-label,.ok-service-toggle[data-current=true] .ok-service-label{text-decoration:underline;text-underline-offset:7px}
.ok-header .ok-service-links a{font-size:15px;min-height:44px}
.ok-header .ok-menu-toggle{width:64px;height:48px;padding:5px 20px 17px}
.ok-menu-label{position:absolute;left:0;right:0;bottom:2px;text-align:center;font:500 10px/1.2 var(--ok-sans);white-space:nowrap}
.ok-motion-controls{position:fixed;z-index:101;right:18px;bottom:82px;display:flex;align-items:center;gap:12px;min-height:44px;padding:4px 6px 4px 14px;border:1px solid #cbc5b5;background:#fbf8f0;color:#183138;box-shadow:0 2px 10px #10181a14;font:500 12px/1.4 var(--ok-sans)}
.ok-motion-states{display:flex;gap:4px}
body.production-top .ok-motion-controls .ok-motion-states button{display:inline-flex!important;align-items:center;justify-content:center;width:48px!important;min-height:36px!important;padding:6px!important;margin:0!important;border:1px solid #cbc5b5!important;background:transparent!important;color:#183138!important;font:500 12px/1.4 var(--ok-sans)!important;white-space:nowrap}
body.production-top .ok-motion-controls .ok-motion-states button[aria-pressed=true]{background:#253f34!important;color:#fff9ed!important;border-color:#253f34!important}
.ok-motion-controls :focus-visible{outline:2px solid #9d773a;outline-offset:3px}
body.production-top[data-scene=intro] .ok-motion-controls,body.production-top[data-reading=true] .ok-motion-controls{bottom:18px}
body.production-top .ok-motion-controls #motion[hidden]{display:none!important}
body.production-top .story-intro .hero-description,.reading-native .reading-hero .hero-description{font:500 20px/1.8 var(--ok-sans)!important;color:#f8f4ea!important}
body.production-top .story-intro .hero-description .hero-meta,.reading-native .reading-hero .hero-description .hero-meta{display:block!important;margin-top:24px!important;font:500 20px/1.6 var(--ok-sans)!important;color:inherit!important}
body.production-top .hero-meta .hero-services,.reading-native .hero-meta .hero-services{display:block!important;font-size:20px!important;font-weight:600!important}
body.production-top .hero-meta .hero-region,.reading-native .hero-meta .hero-region{display:block!important;margin-top:8px;font-size:14px!important;font-weight:400!important;line-height:1.6!important}
@media(max-width:1000px){.ok-header .ok-nav{font-size:16px}.ok-service-group>.ok-service-toggle{flex:1;justify-content:space-between;width:100%;min-height:48px}.ok-header .ok-service-links a{font-size:15px}}
@media(max-width:700px){.ok-header .ok-contact{font-size:14px;padding:10px 12px}.ok-motion-controls{right:12px;bottom:76px;gap:8px;padding-left:10px;font-size:11px}.ok-motion-states{gap:3px}body.production-top .ok-motion-controls .ok-motion-states button{width:42px!important}body.production-top .story-intro .hero-description,.reading-native .reading-hero .hero-description{font-size:17px!important}body.production-top .hero-description .hero-meta,.reading-native .hero-description .hero-meta{font-size:18px!important}body.production-top .hero-meta .hero-services,.reading-native .hero-meta .hero-services{font-size:18px!important}}

/* A2 / 2026-10-26: show all three service fields within the phone viewport. */
@media(max-width:700px){
 body:is(.v16-design,.reading-native) .drawer-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:auto!important;grid-auto-rows:auto!important;grid-auto-flow:row!important;height:auto!important;gap:0!important;overflow:visible!important;-webkit-mask-image:none!important;mask-image:none!important;}
 body:is(.v16-design,.reading-native) .drawer-tabs button{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-start;flex:initial!important;min-width:0!important;width:100%;min-height:96px!important;grid-row:auto!important;grid-column:auto!important;gap:7px!important;padding:12px 6px 14px!important;}
 body:is(.v16-design,.reading-native) .drawer-tabs button>small{font-size:11px;line-height:1.4;}
 body:is(.v16-design,.reading-native) .drawer-copy{min-width:0;width:100%;}
 body:is(.v16-design,.reading-native) .drawer-copy strong{display:block;white-space:normal!important;font-size:clamp(13px,3.6vw,15px)!important;line-height:1.65!important;word-break:normal;overflow-wrap:anywhere;text-wrap:balance;}
 body:is(.v16-design,.reading-native) .drawer-copy>span,body:is(.v16-design,.reading-native) .drawer-tabs i{display:none!important;}
}
/* A6 / 2026-10-26: keep the introduction above the photographed lettering. */
@media(max-width:700px){
 body.production-top .intro-copy{top:calc(var(--ok-head) + 24px)!important;}
 .reading-native .reading-hero-copy{top:24px!important;}
 body.production-top .intro-copy h1,.reading-native .reading-hero h1{margin-bottom:10px!important;}
 body.production-top .story-intro .hero-description,.reading-native .reading-hero .hero-description{margin:12px 0 0!important;}
 body.production-top .story-intro .hero-description .hero-meta,.reading-native .reading-hero .hero-description .hero-meta{margin-top:16px!important;}
}
@media(max-width:360px){body.production-top .intro-copy h1,.reading-native .reading-hero h1{font-size:29px!important;}}
@media(max-width:700px) and (max-height:740px){
 body.production-top .noren-surface{transform:translateX(38%);}
 .reading-native .reading-hero{background-position:center,calc(55% + 38vw) center,center!important;}
}
