@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--paper:#fff9ee;--lemon:#f8e17c;--green:#173a30;--ink:#283227}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.95 'Noto Sans JP',sans-serif}a{color:inherit;text-underline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}figcaption{font-size:12px;line-height:1.6;margin-top:12px;color:var(--ink)}h1,h2{font-family:'Noto Serif JP',serif;font-weight:500;letter-spacing:.015em}h1 span,h2 span{display:block;white-space:nowrap}h2{font-size:clamp(36px,3.75vw,52px);line-height:1.65;margin-bottom:28px}a:focus-visible{outline:3px solid currentColor;outline-offset:5px}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:15px;z-index:10;background:white;padding:12px}.sample{background:var(--green);color:var(--paper);padding:10px 4vw;display:flex;justify-content:space-between;gap:16px;font-size:12px;line-height:1.6}header{padding:28px 5vw;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--lemon)}.logo{font:500 36px/1.3 'Noto Serif JP',serif;text-decoration:none}.logo span{display:block;font:400 12px/1.8 'Noto Sans JP',sans-serif;letter-spacing:.06em;margin-top:8px}nav{display:flex;gap:28px;font-size:14px}nav a{text-decoration:none}.eyebrow{font-size:13px;letter-spacing:.1em;margin-bottom:24px}.action{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:52px;background:var(--green);color:var(--paper);padding:15px 22px;text-decoration:none;font-size:15px;line-height:1.6}.action:hover{filter:brightness(1.12)}.lemon-hero{position:relative;min-height:800px;background:var(--lemon);padding:45px 5vw 120px;overflow:hidden}.hero-title{position:relative;z-index:2;max-width:470px}.hero-title h1{font-size:clamp(60px,5.5vw,78px);line-height:1.52}.hero-image{position:absolute;right:0;top:35px;width:64%;}.hero-image figure{width:100%;}.hero-image img{height:620px;object-position:57% 50%;}.hero-image figcaption{padding:0 24px}.hero-summary{position:relative;z-index:2;width:335px;margin-top:32px}.hero-summary p{margin-bottom:25px}.hero-display{position:absolute;bottom:-32px;right:4vw;color:rgba(23,58,48,.14);font:500 112px/1.5 'Noto Serif JP',serif;letter-spacing:.03em;white-space:nowrap}.cake-scene{display:grid;grid-template-columns:60% 1fr;gap:6vw;background:#fffdf8;padding:100px 5vw 95px 0;align-items:start;min-height:720px}.cake-image img,.cake-image .image-pending{height:510px}.cake-image figcaption{padding-left:5vw}.cake-copy{max-width:355px;padding-top:72px}.cake-copy h2{font-size:clamp(36px,3.4vw,44px)}.cake-copy p{margin-bottom:22px}.product-notes{margin:30px 0 0;border-top:1px solid #b3b9ac;padding-top:15px}.product-notes div{display:grid;grid-template-columns:55px 1fr;gap:18px;margin:10px 0;font-size:15px}.product-notes dt{font-weight:600}.product-notes dd{margin:0}.gift-scene{display:grid;grid-template-columns:1fr 47%;gap:10vw;padding:75px 8vw 85px;background:#f6eccd;align-items:start}.gift-copy{max-width:430px;padding-top:12px}.gift-copy p{margin-bottom:22px}.gift-image{padding-top:40px}.gift-image img,.gift-image .image-pending{height:500px}.gift-note{border-top:1px solid #b8b69f;margin-top:28px;padding-top:20px}.gift-note h3{font-size:15px;font-weight:500}.gift-note ul{display:flex;flex-wrap:wrap;gap:10px 26px;padding:0;margin:12px 0 0;list-style:none;font-size:15px}.visit-scene{display:grid;grid-template-columns:1fr 1fr;gap:40px 10vw;background:var(--green);color:var(--paper);padding:80px 8vw 55px}.visit-time h2{font-size:clamp(46px,4.5vw,64px);margin-bottom:12px}.hours{font-size:34px;line-height:1.6;letter-spacing:.05em}.hours-note{font-size:14px;margin-top:8px}.visit-check{padding-top:17px}.visit-check p{margin-bottom:22px}.visit-check .action{border:1px solid var(--paper);margin-top:4px}.address{grid-column:1/3;border-top:1px solid rgba(255,249,238,.4);padding-top:30px;display:flex;gap:45px;align-items:center}.address span{font-size:12px;letter-spacing:.15em}.address p{font-size:19px}footer{padding:42px 6vw;font-size:14px}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}footer .logo{font-size:30px}footer details{max-width:780px;margin-bottom:18px;font-size:14px}footer details p{margin:12px 0}summary{cursor:pointer;min-height:44px}.image-pending{background:#eee8d7}
@media(max-width:767px){body{font-size:16px}.sample{flex-wrap:wrap;padding:10px 6vw;gap:4px 16px}.sample a{margin-left:auto}header{padding:24px 6vw;align-items:start}.logo{font-size:29px}.logo span{font-size:11px}nav{flex-direction:column;gap:10px;font-size:12px;line-height:1.5}h2{font-size:31px;line-height:1.7;margin-bottom:22px}.eyebrow{font-size:12px;margin-bottom:18px}.lemon-hero{display:flex;flex-direction:column;min-height:0;padding:32px 0 45px;overflow:hidden}.hero-title{padding:0 6vw;max-width:none}.hero-title h1{font-size:43px;line-height:1.5}.hero-title h1 span:nth-child(2),.hero-title h1 span:nth-child(3){display:inline}.hero-title h1 span:nth-child(2){margin-right:0}.hero-image{position:relative;top:auto;right:auto;width:100%;margin-top:25px}.hero-image img{height:370px;object-position:55% 50%}.hero-image figcaption{padding:0 6vw}.hero-summary{width:auto;margin-top:26px;padding:0 6vw}.hero-summary p{line-height:1.9}.hero-display{display:none}.action{font-size:14px;min-height:50px;gap:20px}.cake-scene{display:flex;flex-direction:column;padding:45px 0 50px;gap:32px;min-height:0}.cake-image{width:100%}.cake-image img,.cake-image .image-pending{height:320px}.cake-image figcaption{padding:0 6vw}.cake-copy{padding:0 6vw;max-width:none}.cake-copy h2{font-size:31px}.gift-scene{display:flex;flex-direction:column;padding:45px 6vw 50px;gap:26px}.gift-copy{padding-top:0;max-width:none}.gift-image{padding-top:0;width:88%;margin-left:auto}.gift-image img,.gift-image .image-pending{height:380px}.gift-note ul{gap:8px 18px}.visit-scene{display:flex;flex-direction:column;padding:48px 6vw 36px;gap:24px}.visit-time h2{font-size:39px}.hours{font-size:29px}.visit-check{padding-top:0}.visit-check br{display:none}.address{display:block;padding-top:22px}.address p{font-size:17px;margin-top:10px}.footer-row{align-items:start}footer{padding:32px 6vw}footer .logo{font-size:26px}}
