:root{--bg:#F3F0E8;--ink:#171717;--green:#596653;--sub:#6D6A63;--light:#FAF9F5;--line:#D7D0C3;--placeholder:#E8E3D9}*{box-sizing:border-box}html,body{width:100%;margin:0;padding:0;overflow-x:hidden}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:'Noto Sans JP',sans-serif;line-height:1.9;letter-spacing:.04em}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;height:72px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;color:var(--light)}.logo{color:inherit;text-decoration:none;font:500 15px Inter,sans-serif;letter-spacing:.16em}.desktop-nav{display:flex;gap:24px;align-items:center}.desktop-nav a,.mobile-menu a{color:inherit;text-decoration:none;font:11px Inter,sans-serif;letter-spacing:.12em}.mobile-menu{display:none}.hero{position:relative;min-height:90vh;display:grid;align-items:end;padding:0 48px 72px}.hero-frame{position:absolute;inset:0;background:var(--placeholder) url('assets/kukuru1.png') center center/cover no-repeat;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#7A746B;letter-spacing:.2em;font:10px Inter,sans-serif}.hero-frame span,.story-main span,.story-sub span,.time-main span,.time-sub span{display:none}.hero-copy{position:relative;z-index:1;color:var(--ink);max-width:680px}.hero:after{content:'古民家cafe KURURU';position:absolute;right:26px;top:50%;z-index:2;color:var(--green);font:10px Inter,sans-serif;letter-spacing:.16em;writing-mode:vertical-rl}.kicker{font:11px/1.7 Inter,sans-serif;letter-spacing:.2em;margin:0 0 28px}.hero h1{font:400 clamp(40px,6vw,80px)/1.5 'Noto Serif JP',serif;letter-spacing:.1em;margin:0 0 28px}.hero-copy>p:last-child{font-size:15px;margin:0}.editorial-section{width:min(100% - 96px,1320px);margin-inline:auto;padding-block:112px}.section-head>span,.section-number{display:block;color:var(--green);font:10px Inter,sans-serif;letter-spacing:.18em;margin-bottom:30px}.section-head h2{font:400 clamp(32px,4vw,34px)/1.7 'Noto Serif JP',serif;letter-spacing:.08em;margin:0 0 32px}.section-head p{font-size:clamp(15px,1.4vw,18px);color:var(--sub);margin:0 0 18px}.image-frame{background:var(--placeholder);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#7A746B;font:10px Inter,sans-serif;letter-spacing:.16em;min-width:0;background-position:center;background-repeat:no-repeat;background-size:cover}.story-main{background-image:url('assets/kukuru5.png')}.story-sub{background-image:url('assets/kukuru7.png')}.story-layout,.time-layout,.space-layout,.access-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start;margin-top:56px}.story-main{grid-column:1/span 8;aspect-ratio:4/5}.story-copy{grid-column:9/span 4;color:var(--sub);font-size:15px;padding-top:40px}.story-copy p{margin:0 0 18px}.story-sub{grid-column:7/span 5;aspect-ratio:3/4}.time{background:#ebe8de}.time-main{grid-column:1/span 9;aspect-ratio:4/5;background-image:url('assets/kukuru1.png')}.time-copy{grid-column:10/span 3;color:var(--sub);font-size:15px;padding-top:40px}.time-copy p{margin:0 0 18px}.time-sub{grid-column:2/span 4;aspect-ratio:4/3;background-image:url('assets/kukuru3.png')}.food{background:#ebe8de}.food-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:40px 24px;align-items:start;margin-top:58px}.food-main{grid-column:1/span 8;grid-row:span 2;aspect-ratio:4/5}.food-sweet{grid-column:9/span 4;aspect-ratio:1}.food-drink{grid-column:8/span 4;aspect-ratio:4/5}.space{background:#E6E8DE}.space-layout{margin-top:58px}.space-main{grid-column:1/span 9;aspect-ratio:4/5}.space-sub{grid-column:8/span 4;aspect-ratio:3/2}.scenes{background:#ebe8de}.scenes-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px 24px;align-items:start;margin-top:58px}.scenes-grid .image-frame{aspect-ratio:4/5}.scene-1{grid-column:1/span 7}.scene-2{grid-column:9/span 4;aspect-ratio:1!important}.scene-3{grid-column:3/span 5;aspect-ratio:3/2!important}.scene-4{grid-column:8/span 5}.access-layout{margin-top:58px}.access-main{grid-column:1/span 8;aspect-ratio:4/5}.access-sub{grid-column:9/span 4;aspect-ratio:3/4}.address{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin-top:58px;display:flex;gap:40px}.address span{font:10px Inter,sans-serif;letter-spacing:.15em;color:var(--green)}.address strong{font-size:15px;font-weight:400}.actions{display:flex;gap:12px;margin-top:32px}.actions a{min-height:54px;padding:15px 24px;border:1px solid var(--ink);color:var(--ink);text-decoration:none;font:11px Inter,sans-serif;letter-spacing:.08em}.actions .primary{background:var(--ink);color:var(--light)}.information{background:var(--green);color:var(--light);padding:112px 48px 0}.info-inner{width:min(100%,1320px);margin-inline:auto}.information .section-number{color:var(--light)}.info-title{display:flex;flex-direction:column;font:500 clamp(56px,9vw,120px)/.95 Inter,sans-serif;letter-spacing:.08em;margin:70px 0}.info-details{border-top:1px solid rgba(250,249,245,.45);padding-top:28px;max-width:620px}.info-details p{margin:0 0 20px;font-size:15px}.info-details small{display:block;font:10px Inter,sans-serif;letter-spacing:.15em;opacity:.75;margin-bottom:4px}.information a{color:inherit;text-decoration:none}.info-end{margin-top:140px}.info-end h2{font:400 clamp(34px,5vw,64px)/1.5 'Noto Serif JP',serif;letter-spacing:.1em;margin:0 0 30px}.info-end p{font:11px Inter,sans-serif;letter-spacing:.18em}.info-end div{margin-top:56px;display:flex;gap:25px}.info-end div a{font:11px Inter,sans-serif;letter-spacing:.1em}footer{background:var(--green);color:rgba(250,249,245,.78);padding:0 48px 48px;font-size:11px;line-height:1.8}footer p{margin:0 0 10px}footer small{display:block;margin-top:24px;font-size:10px;opacity:.75}
@media(max-width:699px){.site-header{height:62px;padding:0 24px}.desktop-nav{display:none}.mobile-menu{display:block;color:var(--light);position:relative}.mobile-menu summary{list-style:none;cursor:pointer;font:11px Inter,sans-serif;letter-spacing:.16em}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:-24px;top:31px;width:190px;background:var(--bg);padding:18px 24px;border:1px solid var(--line)}.mobile-menu nav a{display:block;color:var(--ink);padding:8px 0}.hero{min-height:90svh;padding:0 24px 56px}.hero:after{content:'KURURU / NAKIJIN';right:24px;top:auto;bottom:40px;writing-mode:horizontal-tb;font-size:10px}.hero h1{font-size:42px}.editorial-section{width:auto;margin:0;padding:72px 24px}.section-head>span{margin-bottom:24px}.section-head h2{font-size:32px;margin-bottom:30px}.section-head p{font-size:15px;margin-bottom:16px}.story-layout,.time-layout,.space-layout,.access-layout{display:flex;flex-direction:column;gap:0;margin-top:42px}.story-main{width:88%;aspect-ratio:4/5}.story-copy{padding:0;margin:32px 0 40px;font-size:15px}.story-sub{width:62%;aspect-ratio:3/4;align-self:flex-end}.time-layout{margin-top:42px}.time-main{width:96%;aspect-ratio:4/5}.time-copy{padding:0;margin:32px 0;font-size:15px}.time-sub{width:58%;aspect-ratio:4/3;align-self:flex-end}.food-layout{display:flex;flex-direction:column;gap:0;margin-top:42px}.food-main{width:94%;aspect-ratio:4/5}.food-sweet{width:58%;aspect-ratio:1;margin:48px 0 0 auto}.food-drink{width:58%;aspect-ratio:4/5;margin:44px 0 0}.space-layout{margin-top:42px}.space-main{width:94%;aspect-ratio:4/5}.space-sub{width:62%;aspect-ratio:3/2;align-self:flex-end;margin-top:48px}.scenes-grid{display:flex;flex-direction:column;gap:48px;margin-top:42px}.scenes-grid .image-frame{margin:0}.scene-1{width:90%;aspect-ratio:4/5!important}.scene-2{width:55%;aspect-ratio:1!important;align-self:flex-end}.scene-3{width:68%;aspect-ratio:3/2!important}.scene-4{width:88%;aspect-ratio:4/5!important;align-self:flex-end}.access-layout{margin-top:42px}.access-main{width:94%;aspect-ratio:4/5}.access-sub{width:60%;aspect-ratio:3/4;align-self:flex-end;margin-top:48px}.address{display:block;margin-top:48px;padding:20px 0}.address strong{display:block;margin-top:8px}.actions{display:block;margin-top:32px}.actions a{text-align:center}.actions a+a{margin-top:12px}.information{padding:76px 24px 0}.info-title{margin:58px 0;font-size:62px}.info-details p{font-size:14px}.info-end{margin-top:96px}.info-end div{margin-top:42px;display:block}.info-end div a{display:block;margin-bottom:14px}footer{padding:0 24px 42px}}
.food-main,.food-sweet,.food-drink{background-color:transparent;border:0}
.food-main{background-image:url('assets/kukuru-food.png')}
.food-sweet{background-image:url('assets/kukuru2.png')}
.food-drink{background-image:url('assets/kukuru3.png')}
.food-main span,.food-sweet span,.food-drink span{display:none}
.space-main,.space-sub{background-color:transparent;border:0}
.space-main{background-image:url('assets/kukuru6.png')}
.space-sub{background-image:url('assets/kukuru4.png')}
.space-main span,.space-sub span{display:none}
.scene-1,.scene-2,.scene-3,.scene-4{background-color:transparent;border:0}
.scene-1{background-image:url('assets/kukuru4.png')}
.scene-2{background-image:url('assets/kukuru8.png')}
.scene-3{background-image:url('assets/kukuru9.png')}
.scene-4{background-image:url('assets/kukuru1.png')}
.scene-1 span,.scene-2 span,.scene-3 span,.scene-4 span{display:none}
.access-main,.access-sub{background-color:transparent;border:0}
.access-main{background-image:url('assets/kukuru8.png')}
.access-sub{background-image:url('assets/kukuru6.png')}
.access-main span,.access-sub span{display:none}
.hero-frame{background-image:url('assets/kukuruhero.png');background-position:center center}
@media(max-width:699px){.hero-frame{background-position:60% center}}
.hero-frame:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(12,12,10,.48) 0%,rgba(12,12,10,.30) 30%,rgba(12,12,10,.12) 55%,rgba(12,12,10,0) 78%)}
.hero-copy{color:#FAF9F5}
.hero-copy h1{color:#FAF9F5;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.hero-copy>p:last-child,.kicker{color:#FAF9F5;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.site-header,.site-header a,.mobile-menu summary{ text-shadow:0 1px 6px rgba(0,0,0,.55)}
.hero:after{color:#FAF9F5;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.kicker{font-size:0}
.kicker:after{content:'NAKIJIN / OKINAWA';display:block;color:#FAF9F5;font:11px/1.7 Inter,sans-serif;letter-spacing:.2em;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.site-header{background:rgba(243,240,232,.90);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#171717;border-bottom:1px solid rgba(23,23,23,.08);text-shadow:none}
.site-header a,.mobile-menu summary{color:#171717;text-shadow:none}
.desktop-nav a,.mobile-menu a{font-size:12.5px;font-weight:500;letter-spacing:.1em}
.desktop-nav a:hover,.mobile-menu a:hover{color:#596653}
.mobile-menu{color:#171717}
@media(max-width:699px){.site-header{padding-inline:24px}.mobile-menu nav{background:rgba(243,240,232,.90);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}
@media(max-width:699px){footer{padding-bottom:calc(48px + env(safe-area-inset-bottom));height:auto;min-height:auto;overflow:visible}}
.image-frame{position:relative;overflow:hidden;background-image:none!important}
.frame-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
.image-frame>span{position:relative;z-index:1}
.hero-frame .frame-image{z-index:0}
.hero-frame{background-color:var(--placeholder)}
@media(max-width:699px){.hero-frame .frame-image{object-position:60% center}}
.hero-frame{background-image:url('assets/kukuruhero.png')!important;background-size:cover;background-position:center center;background-repeat:no-repeat}
@media(max-width:699px){.hero-frame{background-position:60% center}}
@media(max-width:767px){
  .site-header{padding-inline:24px}
  .desktop-nav{display:none}
  .mobile-menu{display:block;color:#171717;position:relative}
  .mobile-menu summary{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;cursor:pointer;list-style:none;font-size:0;color:#171717}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .menu-icon{display:flex;flex-direction:column;justify-content:space-between;width:26px;height:18px}
  .menu-icon i{display:block;width:100%;height:2px;background:#171717;transition:transform .2s ease,opacity .2s ease}
  .mobile-menu[open] .menu-icon{justify-content:center;gap:0}
  .mobile-menu[open] .menu-icon i:first-child{transform:translateY(2px) rotate(45deg)}
  .mobile-menu[open] .menu-icon i:nth-child(2){opacity:0}
  .mobile-menu[open] .menu-icon i:last-child{transform:translateY(-2px) rotate(-45deg)}
  .mobile-menu nav{position:fixed;z-index:4;top:72px;right:0;bottom:0;left:0;width:auto;min-height:calc(100svh - 72px);margin:0;padding:40px 24px 48px;background:#F3F0E8;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
  .mobile-menu nav a{display:block;padding:0;margin:0 0 20px;color:#171717;font:400 20px/1.9 Inter,sans-serif;letter-spacing:.1em;text-align:left}
  .mobile-menu nav a:last-child{margin-top:28px;color:#596653}
}
@media(max-width:699px){.mobile-menu nav{top:62px;min-height:calc(100svh - 62px)}}
html.menu-open,html.menu-open body{overflow:hidden}
.hero-frame{background-image:url('/assets/kukuruhero.png')!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important}
@media(max-width:699px){.hero-frame{background-position:60% center!important}}
.hero-frame{background-image:url('/assets/kukuruhero-original.jpg')!important}
.hero-frame{background-image:url('/assets/kururu-hero-original-v2.png')!important}
