:root{--paper:#f7f5ef;--ink:#191810;--orange:#ff8200;--gold:#ffda00;--red:#db1424;--green:#008c67;--blue:#064f7c;--pink:#efb1bc;--teal:#00ada5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Zen Kaku Gothic New',sans-serif;font-weight:700;line-height:1.8}img{display:block;max-width:100%}a{color:inherit}p,h2,h3,figure{margin:0}a:hover{opacity:.7}a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.topbar{position:relative;z-index:5;background:var(--paper);font-size:12px;min-height:38px;text-align:center;padding:8px 20px}.topbar a{font-weight:900}.hero{height:900px;position:relative;overflow:hidden}.hero-inner,.hero-card,.hero-content{height:100%;position:relative}.hero-bg{display:none}.eyebrow{position:absolute;top:30px;left:34px;z-index:3;font-size:15px;letter-spacing:1px}.brand .name{position:absolute;left:42%;top:60px;transform:rotate(25deg);font-size:104px;line-height:1.2;letter-spacing:-5px;font-weight:900;z-index:2;color:#7d7d72}.catch{position:absolute;left:21%;top:342px;font-size:56.32px;font-weight:900;line-height:1.3;letter-spacing:-2px;z-index:3}.catch strong{display:block;font-weight:900}.lead{position:absolute;left:21%;top:510px;width:345px;font-size:15px;line-height:1.8;z-index:3}.hero-note{position:absolute;left:21%;top:692px;display:flex;flex-direction:column;gap:5px;z-index:3;font-size:15px}.hero-note span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--orange);margin-right:10px}.hero-bowl{position:absolute;left:59%;top:335px;width:370px;height:290px;transform:rotate(-24deg);z-index:2;border-radius:50%;background:var(--orange);padding:21px;box-shadow:25px 32px 0 var(--orange)}.hero-bowl img{width:100%;height:100%;object-fit:cover;border-radius:50%}.hero-bubbles{position:absolute;inset:0;pointer-events:none}.hero-cut{position:absolute;object-fit:cover;z-index:1}.hero-cut-1{width:190px;height:315px;left:3%;top:-45px;border-radius:48% 48% 42% 42%;transform:rotate(14deg);border:15px solid var(--orange)}.hero-cut-2{width:200px;height:265px;right:-15px;top:38px;border-radius:45% 45% 20% 45%;transform:rotate(-12deg);border:15px solid var(--gold)}.hero-cut-3{width:230px;height:225px;left:-88px;bottom:55px;transform:rotate(-26deg);border-radius:45% 45% 12% 45%;border:15px solid var(--teal)}.shape{position:absolute;display:block}.shape-1{width:610px;height:255px;background:#dfefe4;right:6%;top:-25px;border-radius:50%;transform:rotate(-23deg)}.shape-2{width:490px;height:160px;background:#ffebe9;left:-120px;top:212px;border-radius:50%;transform:rotate(45deg)}.shape-3{width:100px;height:205px;background:var(--red);left:23%;top:110px;border-radius:70% 20% 60% 40%;transform:rotate(-25deg)}.shape-4{width:46px;height:240px;background:var(--teal);left:68%;top:-100px;transform:rotate(-35deg);border-radius:25px}.shape-5{width:200px;height:26px;background:var(--gold);left:1%;top:325px;transform:rotate(18deg);border-radius:20px}.shape-6{width:140px;height:190px;background:var(--green);right:21%;top:-95px;transform:rotate(-8deg);border-radius:0 0 12px 12px}.shape-7{width:275px;height:315px;background:var(--pink);left:64%;top:283px;transform:rotate(15deg);border-radius:44% 44% 35% 25%}.shape-8{width:500px;height:170px;background:#fffaa3;left:30%;bottom:-15px;transform:rotate(8deg);border-radius:50%}.shape-9{width:46px;height:200px;background:var(--teal);right:22%;bottom:-40px;transform:rotate(-30deg);border-radius:30px}.shape-10{width:120px;height:45px;background:var(--green);right:-30px;bottom:65px;transform:rotate(-25deg);border-radius:25px}.shape-11{width:95px;height:95px;border:20px solid var(--orange);border-radius:50%;left:9%;bottom:155px}.shape-12{width:35px;height:35px;background:var(--red);right:9%;bottom:135px;transform:rotate(45deg);border-radius:8px}.hero-bowl,.hero-cut{animation:arrival .9s both}.hero-cut-1{animation-delay:.1s}.hero-cut-2{animation-delay:.2s}.hero-cut-3{animation-delay:.3s}.hero-bowl{--turn:-24deg}.hero-cut-1{--turn:14deg}.hero-cut-2{--turn:-12deg}.hero-cut-3{--turn:-26deg}@keyframes arrival{from{opacity:0;transform:translateY(20px) rotate(var(--turn)) scale(.85)}to{opacity:1;transform:translateY(0) rotate(var(--turn)) scale(1)}}
.section{position:relative}.section-head{position:relative;z-index:2}.section-head .label{font-size:38.4px;font-weight:900;line-height:1.3;margin-bottom:10px;font-family:'Manrope',sans-serif}.section-head h2{font-size:22px;line-height:1.65;font-weight:900}.section-head>p:last-child{font-size:16px;max-width:610px;margin:30px auto 0;line-height:2}.section-head{text-align:center}.section-head .label:last-child{margin:0}#kodawari{padding:192px 0 216px;min-height:1154px;overflow:hidden}#kodawari .section-head{width:650px;max-width:90%;margin:auto}#kodawari .label{font-size:16px;letter-spacing:2px}#kodawari h2{font-size:80px;line-height:1.25;letter-spacing:-4px;font-weight:900}#kodawari h2::first-line{color:var(--green)}#kodawari .section-head>p:last-child{max-width:500px}.intro-cut{position:absolute;width:25%;height:265px;object-fit:cover;border-radius:20px}.intro-cut-1{top:72px;right:-9%;transform:rotate(8deg);border:18px solid var(--gold)}.intro-cut-2{top:440px;left:-10%;transform:rotate(-8deg);border:18px solid var(--teal)}.commit-grid{width:650px;max-width:86%;margin:64px auto 0;position:relative;z-index:2}.process{display:grid;gap:30px}.process-card{display:grid;grid-template-columns:56px 1fr;column-gap:20px}.step{grid-row:1/3;font-family:'Manrope',sans-serif;font-size:40px;line-height:1.2;color:var(--orange)}.process-card h3{font-size:20px;line-height:1.3;margin-bottom:10px}.process-card p{font-size:15px;line-height:1.9}.toppings{margin-top:65px;text-align:center}.toppings h3{font-size:24px}.toppings p{font-size:15px}.badge-row{display:flex;gap:25px;justify-content:center;margin-top:25px}.badge{width:145px;min-height:145px;border-radius:50%;display:grid;place-items:center;background:var(--gold);transform:rotate(-7deg)}.badge:nth-child(2){background:var(--teal);transform:rotate(6deg)}.badge:nth-child(3){background:var(--pink)}.badge strong{display:block;font-size:26px}.badge span{display:block;font-size:16px}.badge br{display:none}#menu{padding:140px 8.5%;background:#fff}.menu-wrap{margin-top:80px}.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;align-items:start}.menu-card{position:relative;padding-top:255px}.menu-card:before{content:'';position:absolute;left:0;top:0;width:100%;height:230px;border-radius:18px;background:var(--gold) url('img/01.jpg') center/cover no-repeat;border:15px solid var(--gold)}.menu-card:nth-child(2):before{background-image:url('img/02.jpg');border-color:var(--teal)}.menu-card:nth-child(3):before{background-image:url('img/03.jpg');border-color:var(--gold)}.menu-card:nth-child(4):before{background-image:url('img/01.jpg');background-position:5% 60%;border-color:var(--teal)}.menu-top{text-align:center}.menu-name{font-size:17px;line-height:1.6;color:#8d4300}.menu-name small{font-size:15px}.price{font-size:24px;font-family:'Manrope',sans-serif;font-weight:800}.menu-card p{font-size:15px;margin-top:18px;line-height:1.9}.menu-info{margin-top:100px;display:grid;grid-template-columns:1fr 1fr;gap:0 70px;align-items:center;background:var(--paper);padding:45px;border-radius:20px}.menu-info strong{font-size:32px;align-self:end}.menu-info p{font-size:16px;align-self:start;grid-column:1}.menu-info img{grid-column:2;grid-row:1/3;width:100%;height:240px;object-fit:cover;border-radius:14px}#photo{padding:140px 8.5% 160px}.gallery-shell{margin-top:60px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px}.photo-main{display:grid;grid-template-columns:1.6fr 1fr;gap:35px;align-items:center;background:var(--orange);border-radius:18px;padding:35px}.photo-main img{width:100%;height:350px;object-fit:cover;border-radius:12px}.photo-main .photo-caption{font-size:28px;line-height:1.7;font-weight:900}.photo-sub img{width:100%;height:240px;object-fit:cover;border-radius:14px}.photo-sub:nth-child(2){transform:translateY(35px)}.photo-caption{font-size:15px;margin-top:18px;line-height:1.8}#info{background:#fff;padding:140px 8.5%}.info-grid{max-width:1062.4px;margin:60px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:65px}.panel h3{font-size:28px;margin-bottom:28px}.info-item{padding:22px 0;border-top:1px solid #d8d7d0;display:flex;flex-direction:column}.info-item span{font-family:'Manrope',sans-serif;font-size:15px;color:#665b46}.info-item strong{font-size:20px}.info-item p{font-size:15px;margin-top:8px}.notice{border-radius:40px;background:var(--gold);padding:15px 25px;display:inline-block;font-size:16px}#noren-direct-reception{--noren-accent:#008663;--noren-accent2:#007456;--noren-on-accent:#fff;--noren-radius:18px;--noren-radius-s:10px;max-width:1100px;margin:100px auto;padding:0 20px}footer{background:var(--gold);padding:70px 8.5%;text-align:center}.footer-card strong{font-size:40px;font-weight:900}.footer-card p{font-size:15px;margin-top:20px}.reveal{opacity:1}.reveal.is-visible .section-head{animation:rise .7s both}@keyframes rise{from{opacity:.1;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.topbar{font-size:11px;padding:8px 12px}.hero{height:880px}.eyebrow{top:15px;left:20px;font-size:12px}.brand .name{font-size:66px;left:22%;top:110px;letter-spacing:-3px;transform:rotate(22deg)}.catch{left:8%;top:364px;font-size:40px;letter-spacing:-1px;line-height:1.35}.lead{left:8%;top:490px;width:76%;font-size:15px;line-height:1.9}.hero-note{left:8%;top:690px;font-size:15px}.hero-bowl{left:57%;top:262px;width:180px;height:145px;padding:9px;box-shadow:13px 14px 0 var(--orange)}.hero-cut-1{width:105px;height:175px;left:-24px;top:70px;border-width:8px}.hero-cut-2{width:95px;height:150px;right:-20px;top:-20px;border-width:8px}.hero-cut-3{width:140px;height:135px;left:-50px;bottom:-55px;border-width:8px}.shape-1{width:330px;height:130px;right:-20%;top:10px}.shape-2{width:310px;height:75px;left:-100px;top:255px}.shape-3{width:43px;height:90px;left:19%;top:240px}.shape-4{width:22px;height:90px;left:69%;top:-35px}.shape-5{width:125px;height:16px;left:0;top:295px}.shape-6{width:55px;height:90px;right:32%;top:-40px}.shape-7{width:130px;height:150px;left:69%;top:245px}.shape-8{width:280px;height:100px;left:32%;bottom:-25px}.shape-9{width:22px;height:110px;right:9%;bottom:0}.shape-10{width:70px;height:22px;bottom:230px}.shape-11{width:50px;height:50px;border-width:10px;left:7%;bottom:80px}.shape-12{width:20px;height:20px;right:18%;bottom:100px}#kodawari{padding:115px 0 90px;min-height:0}#kodawari h2{font-size:42px;letter-spacing:-2px}#kodawari .section-head{width:85%}.section-head>p:last-child{font-size:15px;line-height:1.9}#kodawari .label{font-size:15px}.intro-cut{width:90px;height:100px;border-width:7px}.intro-cut-1{top:0;right:-20px}.intro-cut-2{top:420px;left:-65px}.commit-grid{margin-top:45px;max-width:86%}.process-card{grid-template-columns:38px 1fr;column-gap:12px}.step{font-size:28px}.process-card h3{font-size:20px}.badge-row{gap:8px}.badge{width:99px;min-height:105px}.badge strong{font-size:23px}.badge span{font-size:15px}.toppings{margin-top:45px}#menu,#photo,#info{padding:85px 7%}.section-head .label{font-size:38.4px}.section-head h2{font-size:21px}.menu-wrap{margin-top:45px}.menu-grid{grid-template-columns:1fr 1fr;gap:38px 18px}.menu-card{padding-top:160px}.menu-card:before{height:145px;border-width:8px;border-radius:12px}.menu-name{font-size:16px}.price{font-size:21px}.menu-card p{font-size:15px;line-height:1.8}.menu-info{padding:25px;grid-template-columns:1fr;gap:18px;margin-top:55px}.menu-info strong{font-size:28px}.menu-info p{font-size:15px}.menu-info img{grid-row:auto;grid-column:1;height:210px}.photo-main{display:block;padding:20px}.photo-main img{height:240px}.photo-main .photo-caption{font-size:23px}.photo-grid{grid-template-columns:1fr;gap:30px}.photo-sub:nth-child(2){transform:none}.photo-sub img{height:250px}.info-grid{grid-template-columns:1fr;gap:45px;margin-top:45px}.panel h3{font-size:24px}.info-item strong{font-size:18px}#noren-direct-reception{margin:60px auto;padding:0 12px}footer{padding:50px 7%}.footer-card strong{font-size:32px}.footer-card p{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Reference motion: small pendulum swings; only transform and opacity animate. */
.shape-3{--swing-a:-29deg;--swing-b:-21deg;animation:gentle-swing 5s ease-in-out infinite alternate;transform-origin:50% 0}
.shape-10{--swing-a:-29deg;--swing-b:-21deg;animation:gentle-swing 6s ease-in-out infinite alternate}
.hero-bowl img{transition:transform .4s}.hero-bowl:hover img{transform:scale(1.04)}
@keyframes gentle-swing{from{transform:rotate(var(--swing-a))}to{transform:rotate(var(--swing-b))}}
@media(prefers-reduced-motion:reduce){.shape-3,.shape-10{animation:none}.hero-bowl img{transition:none}}

.eyebrow,.section-head .label,.info-item>span{text-transform:uppercase}

@media(max-width:700px){.shape-11{bottom:10px;left:36%}}
