:root{--bg:#fcf9f3;--ink:#4a2114;--muted:#5f5854;--main:#f6b400;--accent:#db4c00;--white:#fff;--line:#d6d0c8;--container:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans JP",system-ui,-apple-system,"Yu Gothic",Meiryo,sans-serif;line-height:1.85;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(var(--container),calc(100% - 64px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(252,249,243,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(74,33,20,.06)}.header-inner{height:76px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:9px;min-width:200px}.brand img{object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1.05}.brand b{font-family:"Zen Maru Gothic",sans-serif;font-size:15px;letter-spacing:.05em}.brand small{font-size:7px;letter-spacing:.16em;margin-top:4px}.global-nav{display:flex;gap:27px;align-items:center;margin-left:auto}.global-nav a,.site-footer nav a{font-size:13px;font-weight:700;transition:opacity .2s}.global-nav a:hover,.site-footer nav a:hover{opacity:.55}.header-cta{background:var(--accent);color:#fff;border-radius:999px;padding:11px 22px;font-weight:700;font-size:12px;white-space:nowrap;box-shadow:0 10px 22px rgba(219,76,0,.14)}.menu-toggle{display:none}.section-wrap{position:relative;padding:126px 0}.hero{padding-top:72px;padding-bottom:132px;overflow:visible}.hero-grid{display:grid;grid-template-columns:43% 57%;align-items:center;min-height:570px}.hero-copy{position:relative;padding:30px 0 20px 36px}.eyebrow,.section-kicker{font-weight:700;letter-spacing:.08em;margin:0 0 12px;font-size:15px}.hero h1{font-family:"Zen Maru Gothic",sans-serif;font-size:clamp(48px,5.3vw,78px);line-height:1.15;letter-spacing:-.06em;margin:0 0 28px;font-weight:900}.hero h1 span,.hero h1 strong{color:var(--accent)}.hero-lead{font-size:16px;font-weight:500;line-height:1.9;margin:0 0 34px}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:999px;padding:12px 24px;font-size:13px;font-weight:700;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent);color:#fff}.button-outline{border:1px solid #7d7772;background:transparent}.button-outline:hover{background:#fff}.button.large{min-width:390px;min-height:58px;font-size:15px;padding:14px 28px}.button.large img{filter:brightness(0) invert(1)}.hero-visual{position:relative;min-height:530px;display:flex;align-items:center;justify-content:center}.hero-photo{width:100%;max-width:760px;position:relative;z-index:2}.arch{border-radius:48% 52% 45% 55% / 42% 40% 60% 58%;overflow:hidden}.hero-photo img{width:100%;height:auto;aspect-ratio:1254/500;object-fit:cover;object-position:center}.hero-note{position:absolute;font-family:"Zen Maru Gothic",sans-serif;color:var(--accent);font-weight:900;z-index:4;letter-spacing:.06em}.note-top{top:4%;right:13%;font-size:28px;transform:rotate(8deg)}.note-right{right:1%;top:23%;font-size:17px;line-height:1.4;text-align:center;transform:rotate(8deg)}.deco{position:absolute;z-index:3;opacity:.8}.abs-d1{top:0;right:6%;width:120px}.abs-d2{right:0;bottom:7%;width:110px}.abs-d3{left:6%;bottom:0;width:105px}.scribble{position:absolute;left:-10px;top:-8px;opacity:.85}.scribble img{width:90px;height:auto}.section-inner{position:relative}.section-heading{display:flex;align-items:center;justify-content:center;gap:26px;margin-bottom:68px}.section-heading h2,.section-heading>div h2{font-family:"Zen Maru Gothic",sans-serif;font-size:clamp(32px,3.4vw,50px);line-height:1.25;margin:0;font-weight:900;letter-spacing:-.04em}.section-heading h2 span,.section-heading>div h2 span{color:var(--accent)}.section-kicker{margin-bottom:3px}.heading-deco{width:72px!important;height:72px!important;object-fit:contain;opacity:.9}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:54px}.feature-card,.scene-card{text-align:center;padding:0 12px}.circle-photo{width:100%;max-width:245px;aspect-ratio:1;margin:0 auto 30px;border-radius:50%;overflow:hidden}.circle-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.feature-card:nth-child(1) .circle-photo img{object-position:center 48%}.feature-card h3,.scene-card h3{font-family:"Zen Maru Gothic",sans-serif;font-size:19px;margin:0 0 14px;font-weight:900}.feature-card p,.scene-card p{font-size:14px;line-height:1.8;margin:0;color:var(--muted)}.dot-cluster{position:absolute;opacity:.55}.deco-pos-reasons-left{left:-75px;top:12px}.deco-pos-reasons-right{right:-35px;top:70px}.story{padding-top:132px;padding-bottom:142px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.story-copy{padding-left:30px}.story-copy h2,.daily-copy h2{font-family:"Zen Maru Gothic",sans-serif;font-size:clamp(40px,4.2vw,62px);line-height:1.15;letter-spacing:-.06em;margin:8px 0 28px;font-weight:900}.story-copy h2 span,.daily-copy h2 span{color:var(--accent)}.story-copy>p:not(.section-kicker),.daily-copy>p,.shop-copy>p{font-size:15px;line-height:2;margin:0 0 34px;color:var(--muted)}.mini-scribble{height:40px}.mini-scribble img{width:70px;height:auto}.story-photo{width:100%;max-width:620px;justify-self:end}.story-photo img{width:100%;aspect-ratio:1.35;object-fit:cover;object-position:center}.daily{padding-top:105px;padding-bottom:130px}.daily-grid{gap:82px}.daily-photo{max-width:620px}.daily-photo img{width:100%;aspect-ratio:1.47;object-fit:cover;object-position:center 43%}.daily-copy{padding-right:30px}.shop{padding-top:120px;padding-bottom:144px}.shop-grid{gap:80px}.shop-copy{padding-left:34px}.shop-heading{justify-content:flex-start;gap:12px;margin-bottom:38px}.shop-heading h2{font-size:clamp(38px,4vw,56px)}.shop-heading img{width:55px!important;height:55px!important}.shop-photo{max-width:620px}.shop-photo img{width:100%;aspect-ratio:1.45;object-fit:cover;object-position:center}.scenes{padding-top:132px;padding-bottom:150px}.scene-cards{gap:50px}.scene-card .circle-photo{max-width:250px}.scene-card:nth-child(1) .circle-photo img{object-position:center 65%}.scene-card:nth-child(2) .circle-photo img{object-position:center 38%}.scene-card:nth-child(3) .circle-photo img{object-position:center 55%}.contact{padding:118px 0 150px;min-height:430px;overflow:hidden}.contact-inner{text-align:center;position:relative;z-index:5}.contact-inner h2{font-family:"Zen Maru Gothic",sans-serif;font-size:clamp(30px,3.6vw,50px);line-height:1.35;margin:10px 0 45px;font-weight:900;letter-spacing:-.04em}.contact-inner h2 span{color:var(--accent)}.contact-deco{position:absolute;pointer-events:none;opacity:.72}.contact-deco img{object-fit:contain}.left-blob{left:-35px;bottom:-25px}.left-dots{left:40px;bottom:35px}.ribbon{right:45px;top:20px}.sparkle{right:220px;bottom:78px}.right-bubbles{right:45px;bottom:20px}.right-blob{right:-40px;bottom:-35px}.site-footer{padding:34px 0 30px;border-top:1px solid rgba(74,33,20,.08)}.footer-inner{display:grid;grid-template-columns:1.2fr 2fr auto;align-items:center;gap:30px}.site-footer nav{display:flex;justify-content:center;gap:26px}.social{display:flex;gap:10px;justify-content:flex-end}.social img{width:22px;height:22px;object-fit:contain}.copyright{grid-column:3;justify-self:end;font-size:10px;color:#7a736e}.reveal{opacity:0;transform:translateY(18px) scale(.985);transition:opacity .3s ease,transform .3s ease}.reveal.is-visible{opacity:1;transform:none}@media (max-width:900px){.container{width:min(var(--container),calc(100% - 40px))}.header-inner{height:68px;gap:14px}.global-nav{position:fixed;top:68px;left:12px;right:12px;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border:1px solid rgba(74,33,20,.08);border-radius:18px;padding:10px;box-shadow:0 18px 45px rgba(74,33,20,.12)}.global-nav.open{display:flex}.global-nav a{padding:13px 16px;min-height:44px}.header-cta{display:none}.menu-toggle{display:flex;margin-left:auto;width:44px;height:44px;border:0;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-toggle span{width:23px;height:2px;background:var(--ink);border-radius:3px}.hero{padding-top:55px;padding-bottom:80px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-copy{padding:20px 0 0 20px}.hero h1{font-size:clamp(44px,11vw,58px)}.hero-visual{min-height:350px}.hero-photo{max-width:720px}.abs-d1{right:3%;width:80px}.abs-d2{width:80px}.abs-d3{width:80px}.note-top{right:10%;font-size:23px}.note-right{right:0;font-size:15px}.section-wrap{padding:82px 0}.section-heading{margin-bottom:48px;gap:12px}.section-heading h2,.section-heading>div h2{font-size:clamp(31px,7vw,42px);text-align:center}.heading-deco{width:52px!important;height:52px!important}.cards-3,.split-grid{grid-template-columns:1fr;gap:58px}.feature-card,.scene-card{padding:0}.circle-photo{max-width:280px}.story-copy,.daily-copy,.shop-copy{padding:0}.story{padding-top:88px;padding-bottom:95px}.story-photo,.daily-photo,.shop-photo{max-width:700px;justify-self:center}.story-copy{order:1}.story-photo{order:2}.daily-photo{order:1}.daily-copy{order:2}.shop-copy{order:1}.shop-photo{order:2}.daily,.shop,.scenes{padding-top:90px;padding-bottom:100px}.shop-heading{justify-content:center}.deco-pos-reasons-left{left:-60px;top:20px}.deco-pos-reasons-right{right:-50px;top:120px}.contact{padding:95px 0 115px;min-height:460px}.button.large{width:min(100%,360px);min-width:0}.contact-deco{transform:scale(.75)}.ribbon{right:-30px;top:20px}.sparkle{right:80px;bottom:70px}.left-dots{left:-20px}.right-bubbles{right:-20px}.footer-inner{grid-template-columns:1fr;gap:24px;text-align:center}.site-footer nav{flex-wrap:wrap;gap:12px 20px}.social{justify-content:center}.copyright{grid-column:auto;justify-self:center}.brand{justify-content:center}.site-footer .brand{justify-content:center}}@media (max-width:520px){.container{width:calc(100% - 32px)}.brand{min-width:0}.brand b{font-size:13px}.hero-copy{padding-left:4px}.hero h1{font-size:clamp(40px,12vw,52px)}.hero-lead{font-size:15px}.hero-visual{min-height:270px}.hero-photo img{aspect-ratio:1.45;object-fit:cover}.section-wrap{padding:72px 0}.cards-3{gap:48px}.circle-photo{max-width:235px;margin-bottom:24px}.feature-card h3,.scene-card h3{font-size:18px}.story-copy h2,.daily-copy h2{font-size:clamp(36px,10vw,48px)}.contact-inner h2{font-size:30px;margin-bottom:34px}.contact-deco{transform:scale(.56);opacity:.45}.ribbon{right:-80px}.sparkle{right:25px}.left-dots{left:-65px}.right-bubbles{right:-70px}.right-blob{right:-120px}.left-blob{left:-120px}.button{width:100%;max-width:360px}.story-copy .button,.daily-copy .button,.shop-copy .button{max-width:300px}.scene-card p,.feature-card p{font-size:14px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button{transition:none}}

/* 2026-09-07: 基デザイン画像に合わせたPC版の寸法・余白調整 */
@media (min-width:901px){
  :root{--container:1240px}
  .header-inner{height:64px;gap:28px}
  .brand{min-width:230px}
  .global-nav{gap:34px}
  .header-cta{display:inline-flex;align-items:center;gap:8px;padding:10px 20px}
  .header-cta img{width:16px;height:16px;object-fit:contain;filter:brightness(0) invert(1)}

  .section-wrap{padding-block:88px}
  .hero{padding-top:32px;padding-bottom:60px}
  .hero-grid{grid-template-columns:36% 64%;min-height:570px}
  .hero-copy{padding:10px 0 0 18px;z-index:5}
  .hero .eyebrow{display:none}
  .hero h1{font-size:clamp(50px,4.2vw,60px);line-height:1.17;letter-spacing:-.055em;margin-bottom:26px;white-space:nowrap}
  .hero-lead{font-size:15px;line-height:1.75;margin-bottom:24px}
  .hero-visual{min-height:570px;margin-right:-22px}
  .hero-photo{max-width:820px}
  .hero-photo img{aspect-ratio:1.48;object-fit:cover;object-position:center 52%}
  .note-top{top:3%;right:16%;font-size:25px}
  .note-right{right:2%;top:20%}
  .abs-d1{top:1%;right:8%;width:105px}
  .abs-d2{right:0;bottom:8%;width:95px}
  .abs-d3{left:3%;bottom:7%;width:92px}

  .reasons{padding-top:58px;padding-bottom:82px}
  .section-heading{gap:20px;margin-bottom:42px}
  .section-heading h2,.section-heading>div h2{font-size:38px}
  .heading-deco{width:58px!important;height:58px!important}
  .cards-3{gap:44px}
  .circle-photo{max-width:235px;margin-bottom:22px}
  .feature-card h3,.scene-card h3{margin-bottom:9px}
  .deco-pos-reasons-left{left:-70px;top:0}
  .deco-pos-reasons-right{right:-25px;top:45px}

  .story{padding-top:82px;padding-bottom:72px}
  .split-grid{gap:72px}
  .story-copy{padding-left:32px}
  .story-copy h2,.daily-copy h2{font-size:48px;margin:4px 0 20px}
  .story-copy>p:not(.section-kicker),.daily-copy>p,.shop-copy>p{font-size:14px;line-height:1.85;margin-bottom:24px}
  .story-photo{max-width:650px}
  .story-photo img{aspect-ratio:1.38}

  .daily{padding-top:72px;padding-bottom:76px}
  .daily-grid{gap:72px}
  .daily-photo{max-width:610px}
  .daily-copy{padding-right:20px}

  .shop{padding-top:74px;padding-bottom:78px}
  .shop-grid{gap:70px}
  .shop-copy{padding-left:32px}
  .shop-heading{margin-bottom:24px}
  .shop-heading h2{font-size:46px}
  .shop-heading img{width:48px!important;height:48px!important}
  .shop-photo{max-width:610px}

  .scenes{padding-top:82px;padding-bottom:92px}
  .scene-cards{gap:46px}
  .scene-card .circle-photo{max-width:225px}

  .contact{padding:76px 0 86px;min-height:355px}
  .contact-inner h2{font-size:38px;margin:6px 0 30px}
  .button.large{min-width:370px;min-height:54px}
  .ribbon{right:35px;top:10px}
  .site-footer{padding:26px 0 22px}
}

@media (max-width:520px){
  .hero .eyebrow{display:none}
  .hero h1{white-space:normal}
  .header-cta img{display:none}
}

/* 2026-09-07: ヒーローを基デザインへ再調整 */
@media (min-width:901px){
  .global-nav{margin-left:70px}
  .header-cta{margin-left:auto;margin-right:64px}

  .hero{padding-top:32px;padding-bottom:60px}
  .hero-grid{grid-template-columns:36% 64%;min-height:533px}
  .hero-copy{align-self:start;padding:50px 0 0;z-index:5}
  .hero h1{font-size:62px;line-height:1.15;margin-bottom:24px}
  .hero h1>span{color:var(--accent)}
  .hero h1 strong{display:inline-block;margin-left:28px;color:var(--ink)}
  .hero h1 strong span{color:var(--main)}
  .hero-lead{margin-left:2px;margin-bottom:22px}
  .hero-copy .button{min-width:214px}

  .hero-visual{min-height:533px;margin-right:-22px}
  .hero-photo{width:820px;max-width:none;height:520px;border-radius:0;overflow:visible}
  .hero-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center}
  .note-top{top:-10px;right:17%;font-size:25px}
  .note-right{right:6%;top:18%;font-size:17px}
  .abs-d1{top:-5px;right:10%;width:100px}
  .abs-d2{right:2%;bottom:3%;width:92px}
  .abs-d3{left:1%;bottom:5%;width:90px}

  .reasons{padding-top:45px;padding-bottom:115px}
}

@media (max-width:900px){
  .hero h1>span{color:var(--accent)}
  .hero h1 strong{display:inline-block;margin-left:.55em;color:var(--ink)}
  .hero h1 strong span{color:var(--main)}
  .hero-photo{border-radius:0;overflow:visible}
  .hero-photo img{height:auto;aspect-ratio:auto;object-fit:contain}
}

@media (min-width:901px){
  .hero-copy{padding-top:32px}
  .hero h1{font-size:70px;line-height:1.13;letter-spacing:-.025em}
  .hero-lead{font-size:17px;line-height:1.8;margin-bottom:28px}
  .hero-copy .button{min-width:340px;min-height:58px;font-size:15px}
  .hero-photo{width:800px;height:532px}
  .scribble{left:-48px;top:10px}
  .note-top{right:31%}
  .abs-d1{right:29%}
  .abs-d3{left:-8%}
}

/* 2026-09-07: 表示時・ホバー時のアニメーション */
@keyframes header-drop{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
@keyframes bread-float{0%,100%{transform:translateY(0) rotate(-.25deg)}50%{transform:translateY(-8px) rotate(.35deg)}}
@keyframes note-wiggle{0%,100%{transform:rotate(8deg) translateY(0)}50%{transform:rotate(5deg) translateY(-4px)}}
@keyframes deco-pulse{0%,100%{transform:scale(.94) rotate(-3deg);opacity:.62}50%{transform:scale(1.08) rotate(4deg);opacity:.95}}
@keyframes ribbon-sway{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(3deg) translateY(-8px)}}
@keyframes title-pop{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:none}}
@keyframes shine{0%{transform:translateX(-160%) skewX(-24deg)}55%,100%{transform:translateX(260%) skewX(-24deg)}}

.page-ready .site-header{animation:header-drop .65s cubic-bezier(.22,1,.36,1) both}
.global-nav a,.site-footer nav a{position:relative}
.global-nav a::after,.site-footer nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:-5px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--main),var(--accent));transition:left .25s ease,right .25s ease}
.global-nav a:hover::after,.site-footer nav a:hover::after,.global-nav a:focus-visible::after,.site-footer nav a:focus-visible::after{left:0;right:0}
.brand{transition:transform .3s cubic-bezier(.22,1,.36,1)}
.brand:hover{transform:translateY(-2px) rotate(-1deg)}
.brand:hover img{transform:rotate(-7deg) scale(1.06)}
.brand img{transition:transform .35s cubic-bezier(.22,1,.36,1)}

.button,.header-cta{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 8px 20px rgba(219,76,0,.13);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,background-color .28s ease,color .28s ease}
.button::before,.header-cta::before{content:"";position:absolute;z-index:-1;inset:-30% auto -30% -35%;width:24%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);transform:translateX(-160%) skewX(-24deg)}
.button:hover,.header-cta:hover{transform:translateY(-4px) scale(1.025);box-shadow:0 15px 30px rgba(219,76,0,.24)}
.button:hover::before,.header-cta:hover::before{animation:shine .8s ease-out}
.button span{transition:transform .25s ease}
.button:hover span{transform:translateX(5px)}
.button-outline{box-shadow:0 7px 18px rgba(74,33,20,.06)}
.button-outline:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 12px 24px rgba(74,33,20,.12)}
.button:focus-visible,.header-cta:focus-visible,.global-nav a:focus-visible,.site-footer a:focus-visible{outline:3px solid rgba(246,180,0,.5);outline-offset:4px}

.reveal{opacity:0;transform:translateY(34px) scale(.975);filter:blur(4px);transition:opacity .72s ease,transform .78s cubic-bezier(.22,1,.36,1),filter .62s ease;transition-delay:var(--reveal-delay,0ms)}
.reveal.reveal-from-left{transform:translateX(-46px) scale(.98)}
.reveal.reveal-from-right{transform:translateX(46px) scale(.98)}
.reveal.is-visible{opacity:1;transform:none;filter:none}

.hero-copy.is-visible h1{animation:title-pop .72s .08s cubic-bezier(.22,1,.36,1) both}
.hero-copy.is-visible .hero-lead{animation:title-pop .68s .2s cubic-bezier(.22,1,.36,1) both}
.hero-copy.is-visible .button{animation:title-pop .68s .32s cubic-bezier(.22,1,.36,1) both}
.hero-visual.is-visible .hero-photo{animation:bread-float 5.5s 1s ease-in-out infinite}
.hero-note{animation:note-wiggle 3.4s ease-in-out infinite}
.deco,.heading-deco,.mini-scribble img{animation:deco-pulse 3.8s ease-in-out infinite;transform-origin:center}
.heading-deco.right,.section-heading>img:last-child{animation-delay:-1.8s}
.dot-cluster{transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .4s ease}
.reasons:hover .deco-pos-reasons-left{transform:translate(8px,-8px) rotate(4deg)}
.reasons:hover .deco-pos-reasons-right{transform:translate(-8px,8px) rotate(-4deg)}

.feature-card,.scene-card{border-radius:24px;transition:transform .38s cubic-bezier(.22,1,.36,1),background-color .35s ease,box-shadow .35s ease}
.feature-card:hover,.scene-card:hover{transform:translateY(-10px);background:rgba(255,255,255,.55);box-shadow:0 18px 40px rgba(74,33,20,.08)}
.circle-photo{box-shadow:0 10px 28px rgba(74,33,20,.08);transition:transform .38s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}
.circle-photo img,.story-photo img,.daily-photo img,.shop-photo img{transition:transform .7s cubic-bezier(.22,1,.36,1),filter .4s ease}
.feature-card:hover .circle-photo,.scene-card:hover .circle-photo{transform:scale(1.035) rotate(1.5deg);box-shadow:0 18px 38px rgba(219,76,0,.15)}
.feature-card:hover .circle-photo img,.scene-card:hover .circle-photo img{transform:scale(1.08)}
.story-photo,.daily-photo,.shop-photo{transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease;box-shadow:0 12px 34px rgba(74,33,20,.06)}
.story-photo:hover,.daily-photo:hover,.shop-photo:hover{transform:translateY(-7px) rotate(.6deg);box-shadow:0 22px 48px rgba(74,33,20,.13)}
.story-photo:hover img,.daily-photo:hover img,.shop-photo:hover img{transform:scale(1.045);filter:saturate(1.06)}
.contact .ribbon{animation:ribbon-sway 4.8s ease-in-out infinite;transform-origin:50% 35%}
.contact-inner.is-visible .button-primary{animation:title-pop .7s .25s cubic-bezier(.22,1,.36,1) both}

@media (hover:none){
  .feature-card:hover,.scene-card:hover,.story-photo:hover,.daily-photo:hover,.shop-photo:hover,.button:hover,.header-cta:hover,.brand:hover{transform:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important;transition-delay:0ms!important}
  .reveal,.reveal.reveal-from-left,.reveal.reveal-from-right{opacity:1;transform:none;filter:none}
}

/* 2026-09-07: セクション間・タイトル下の余白を統一 */
main>.section-wrap+.section-wrap{margin-top:50px}
.reasons .section-heading,
.scenes .section-heading,
.shop .shop-heading{margin-bottom:50px}
.story .story-copy h2,
.daily .daily-copy h2,
.contact .contact-inner h2{margin-bottom:50px}

@media (max-width:900px){
  main>.section-wrap+.section-wrap{margin-top:37.5px}
  .reasons .section-heading,
  .scenes .section-heading,
  .shop .shop-heading{margin-bottom:25px}
  .story .story-copy h2,
  .daily .daily-copy h2,
  .contact .contact-inner h2{margin-bottom:25px}
}

/* 2026-09-07: 基デザインに合わせて全画像枠を調整 */
.reasons .circle-photo,
.scenes .circle-photo{width:100%;overflow:hidden;border-radius:48% 52% 46% 54% / 44% 43% 57% 56%}
.reasons .circle-photo{max-width:292px;aspect-ratio:1.3}
.scenes .circle-photo{max-width:312px;aspect-ratio:1.33}
.reasons .feature-card:nth-child(2) .circle-photo,
.scenes .scene-card:nth-child(2) .circle-photo{border-radius:52% 48% 55% 45% / 46% 50% 50% 54%}
.reasons .feature-card:nth-child(3) .circle-photo,
.scenes .scene-card:nth-child(3) .circle-photo{border-radius:45% 55% 50% 50% / 52% 42% 58% 48%}
.reasons .circle-photo img,
.scenes .circle-photo img,
.story-photo img,
.daily-photo img,
.shop-photo img{display:block;width:100%;height:100%;object-fit:cover}

.story-photo{width:min(100%,720px);max-width:none;aspect-ratio:1.38}
.daily-photo{width:min(100%,605px);max-width:none;aspect-ratio:1.41}
.shop-photo{width:min(100%,720px);max-width:none;aspect-ratio:1.66}
.story-photo img,.daily-photo img,.shop-photo img{aspect-ratio:auto}

@media (min-width:901px){
  .story .split-grid,.shop .split-grid{grid-template-columns:36% 64%;gap:0}
  .story-photo,.shop-photo{justify-self:end}
  .daily-grid{grid-template-columns:605px 1fr;gap:70px}
}

@media (max-width:900px){
  .reasons .circle-photo{max-width:292px}
  .scenes .circle-photo{max-width:312px}
  .story-photo,.daily-photo,.shop-photo{width:100%;justify-self:center}
}

/* 2026-09-07: ヒーロー見出しを基デザインの角度へ調整 */
@keyframes hero-title-slant{
  from{opacity:0;transform:translateY(22px) scale(.96) rotate(var(--hero-title-angle))}
  to{opacity:1;transform:rotate(var(--hero-title-angle))}
}
.hero h1{--hero-title-angle:-5deg;transform:rotate(var(--hero-title-angle));transform-origin:left center}
.hero-copy.is-visible h1{animation:hero-title-slant .72s .08s cubic-bezier(.22,1,.36,1) both}

@media (max-width:900px){
  .hero h1{--hero-title-angle:-4deg}
}

/* 2026-09-07: 購入案内セクションの装飾が画面端で切れないよう調整 */
.contact .ribbon{animation:none}
.contact .ribbon img{animation:ribbon-sway 4.8s ease-in-out infinite;transform-origin:50% 35%}
.contact .left-blob{left:0;bottom:0}
.contact .right-blob{right:0;bottom:0}

@media (max-width:520px){
  .ribbon{right:-35px}
  .left-dots{left:0}
  .right-bubbles{right:0}
  .right-blob{right:0}
  .left-blob{left:0}
}

/* 2026-09-07: ヒーローの配色と装飾バランスを基デザインへ調整 */
.hero{
  --hero-brown:#4b2418;
  --hero-orange:#d65622;
  --hero-yellow:#efb52d;
}
.hero h1,.hero-lead{color:var(--hero-brown)}
.hero h1>span{color:var(--hero-orange)}
.hero h1 strong{color:var(--hero-brown)}
.hero h1 strong span{color:var(--hero-yellow)}
.hero-note{color:var(--hero-orange)}
.hero-note span{color:var(--hero-yellow)}
.hero-copy .button-primary{background:var(--hero-orange)}

@media (min-width:901px){
  .hero-copy{padding-left:42px}
  .hero h1{font-size:65px;line-height:1.12;--hero-title-angle:-4deg}
  .hero-lead{font-size:16px;line-height:1.85;margin-left:0;margin-bottom:26px}
  .hero-copy .button{min-width:310px;min-height:54px}
  .hero-scribble{left:-8px;top:8px}
  .hero-visual{margin-left:-30px;margin-right:0}
  .note-top{right:34%;top:-4px}
  .note-right{right:9%;top:19%}
  .abs-d1{right:32%}
  .abs-d2{right:4%;bottom:5%}
  .abs-d3{left:-1%;bottom:5%}
}

@media (max-width:900px){
  .hero-copy{padding-left:18px}
  .hero-scribble{left:-12px;top:2px}
  .note-top{right:14%}
  .note-right{right:8%;top:31%;font-size:13px}
  .abs-d1{right:0;top:-2%;width:52px}
  .abs-d3{left:10%}
}

@media (max-width:520px){
  .hero-copy{padding-left:8px}
  .hero h1{font-size:clamp(38px,11vw,48px)}
  .hero-scribble{left:-4px;top:4px}
  .note-right{display:none}
}

/* 2026-09-07: 理由セクションのドット装飾を写真の背面へ配置 */
.reasons .section-inner{isolation:isolate}
.reasons .dot-cluster{z-index:0}
.reasons .section-heading,
.reasons .reasons-cards{position:relative;z-index:1}

/* 2026-09-07: 購入ボタン下の余白 */
@media (min-width:901px){
  .contact{padding-bottom:200px}
}

@media (max-width:900px){
  .contact{padding-bottom:100px}
}

/* 2026-09-07: 添付デザインに合わせたヒーロー最終微調整 */
.hero{
  --hero-brown:#512518;
  --hero-orange:#df5a20;
  --hero-yellow:#dba41e;
}
.hero .note-right{color:var(--hero-brown)}
.hero .note-top::before,
.hero .note-top::after{display:none;position:absolute;color:#f2bd2d;font-weight:700;line-height:1;pointer-events:none}
.hero .note-top::before{content:"｜";left:-24px;top:-9px;transform:rotate(-8deg)}
.hero .note-top::after{content:"";right:-43px;top:22px;width:4px;height:27px;border-radius:999px;background:#f2bd2d;box-shadow:17px 5px 0 #f2bd2d;transform:rotate(35deg)}

@media (min-width:901px){
  .hero{padding-top:0;padding-bottom:0}
  .hero-grid{min-height:500px}
  .hero-copy{padding-top:53px;padding-left:36px}
  .hero h1{font-size:68px;line-height:1;letter-spacing:-.11em;margin-bottom:21px}
  .hero-lead{line-height:1.42;margin-bottom:21px}
  .hero-copy .button{min-width:264px;min-height:50px;padding:8px 22px}
  .hero-scribble{left:0;top:30px}
  .hero-scribble img{width:50px}

  .hero-visual{min-height:500px;top:-50px;margin-left:20px}
  .hero-photo{width:676px;height:536px;flex:0 0 676px}
  .note-top{top:72px;right:19%}
  .note-top::before,.note-top::after{display:block}
  .note-right{top:27%;right:0}
  .abs-d1{display:none}
  .abs-d2{right:0;bottom:12%;width:70px}
  .abs-d3{left:-6%;bottom:12%;width:70px}
}

/* 2026-09-07: 購入案内の見出しとボタンの間隔 */
.contact .contact-inner h2{margin-bottom:100px}

/* 2026-09-07: 「おいしさのひみつ」以降へドット装飾を追加 */
@keyframes dot-cluster-drift{
  0%,100%{transform:translateY(0) rotate(-2deg)}
  50%{transform:translateY(-10px) rotate(3deg)}
}
.story,.daily,.shop,.scenes{isolation:isolate}
.story>.container,.daily>.container,.shop>.container,.scenes>.container{position:relative;z-index:1}
.story::before,.story::after,
.daily::before,.shop::after,
.scenes::before,.scenes::after{
  content:"";
  position:absolute;
  z-index:0;
  display:block;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  pointer-events:none;
  opacity:.3;
  animation:dot-cluster-drift 7s ease-in-out infinite;
}
.story::before{top:28px;right:36px;width:190px;aspect-ratio:1;background-image:url("../assets/images/deco-5-dots-large.png")}
.story::after{left:50px;bottom:24px;width:92px;aspect-ratio:1.18;background-image:url("../assets/images/deco-6-dots-small.png");animation-delay:-2.5s}
.daily::before{top:46px;left:34px;width:145px;aspect-ratio:1.03;background-image:url("../assets/images/deco-7-dots-medium.png");animation-delay:-4s}
.shop::after{right:46px;bottom:26px;width:170px;aspect-ratio:1;background-image:url("../assets/images/deco-5-dots-large.png");animation-delay:-1.5s}
.scenes::before{top:30px;left:42px;width:135px;aspect-ratio:1.03;background-image:url("../assets/images/deco-7-dots-medium.png");animation-delay:-3s}
.scenes::after{right:58px;bottom:30px;width:76px;aspect-ratio:.8;background-image:url("../assets/images/deco-8-dots-small-right.png");animation-delay:-5s}

@media (max-width:900px){
  .story::before{top:18px;right:12px;width:125px}
  .story::after{left:14px;bottom:18px;width:68px}
  .daily::before{top:24px;left:12px;width:100px}
  .shop::after{right:12px;bottom:18px;width:115px}
  .scenes::before{top:20px;left:12px;width:95px}
  .scenes::after{right:16px;bottom:18px;width:58px}
  .story::before,.story::after,
  .daily::before,.shop::after,
  .scenes::before,.scenes::after{opacity:.22}
}

/* 2026-09-07: 「こんなシーンにおすすめ」タイトルの3本線装飾 */
.scenes .section-heading{gap:18px}
.scenes .section-heading>img{display:none}
.scenes .section-heading::before,
.scenes .section-heading::after{
  content:"";
  display:block;
  flex:0 0 48px;
  width:48px;
  height:42px;
  background:url("../assets/images/deco-title-rays.svg") center/contain no-repeat;
  opacity:.95;
}
.scenes .section-heading::after{transform:scaleX(-1)}

@media (max-width:900px){
  .scenes .section-heading{gap:8px}
  .scenes .section-heading::before,
  .scenes .section-heading::after{flex-basis:34px;width:34px;height:30px}
}

/* 2026-09-07: 透明追従ヘッダー・ヘッダー下余白・トップへ戻るボタン */
.site-header{
  position:sticky;
  top:0;
  background:transparent;
  backdrop-filter:none;
  border-bottom:0;
  box-shadow:none;
}
.site-header+main{padding-top:100px}
.back-to-top{
  position:fixed;
  right:clamp(16px,2.2vw,32px);
  bottom:clamp(16px,2.2vw,32px);
  z-index:80;
  display:flex;
  width:58px;
  height:58px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  border:1px solid rgba(255,255,255,.7);
  border-radius:50%;
  background:var(--accent);
  color:#fff;
  box-shadow:0 10px 25px rgba(74,33,20,.18);
  line-height:1;
  transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease,background-color .25s ease;
}
.back-to-top span{font-size:23px;line-height:.9;transform:translateY(1px)}
.back-to-top small{margin-top:4px;font-size:8px;font-weight:700;letter-spacing:.1em}
.back-to-top:hover{transform:translateY(-5px) scale(1.05);background:#ef6a29;box-shadow:0 16px 30px rgba(74,33,20,.24)}
.back-to-top:focus-visible{outline:3px solid rgba(246,180,0,.55);outline-offset:4px}

@media (max-width:520px){
  .back-to-top{width:50px;height:50px;right:14px;bottom:14px}
  .back-to-top span{font-size:20px}
  .back-to-top small{font-size:7px;margin-top:3px}
}

/* 2026-09-07: 「おいしさのひみつ」テキストを右へ調整 */
@media (min-width:901px){
  .story-copy{padding-left:64px}
}

/* 2026-09-07: 「お店のご案内」の本文左端をタイトルへ揃える */
@media (min-width:901px){
  .shop-copy>p,
  .shop-copy>.button{margin-left:60px}
}

/* 2026-09-07: 理由タイトル下の余白を+20px */
.reasons .section-heading{margin-bottom:70px}
@media (max-width:900px){
  .reasons .section-heading{margin-bottom:45px}
}

/* 2026-09-07: リボン素材下端の切れた黄色装飾を隠す */
.contact .ribbon{isolation:isolate}
.contact .ribbon img{position:relative;z-index:0}
.contact .ribbon::after{
  content:"";
  position:absolute;
  z-index:1;
  left:78px;
  bottom:-1px;
  width:142px;
  height:34px;
  background:var(--bg);
  pointer-events:none;
}

/* 2026-09-07: ヒーローパンを表示時にズームイン */
@keyframes bread-pop-in{
  0%{opacity:0;transform:scale(.62)}
  68%{opacity:1;transform:scale(1.07)}
  100%{opacity:1;transform:scale(1)}
}
.hero-visual.is-visible .hero-photo img{
  animation:bread-pop-in .86s .12s cubic-bezier(.16,1,.3,1) both;
  transform-origin:center center;
}

/* 2026-09-07: 「こんなシーンにおすすめ」タイトル下の余白を+20px */
.scenes .section-heading{margin-bottom:70px}

@media (max-width:520px){
  .contact .ribbon::after{left:44px;bottom:-1px;width:80px;height:20px}
}

@media (max-width:900px){
  .scenes .section-heading{margin-bottom:45px}
}

/* 2026-09-07: 購入案内背景を小さなクリームパンで彩る */
@keyframes floating-bread-drift{
  0%,100%{transform:translate3d(0,0,0) rotate(var(--bread-rotate))}
  50%{transform:translate3d(var(--bread-shift),-14px,0) rotate(calc(var(--bread-rotate) + 8deg))}
}
.contact .floating-breads{position:absolute;inset:0;z-index:1;pointer-events:none}
.contact .floating-bread{
  position:absolute;
  width:var(--bread-size);
  height:auto;
  opacity:.82;
  filter:drop-shadow(0 5px 6px rgba(97,52,22,.13));
  animation:floating-bread-drift var(--bread-duration) ease-in-out infinite;
}
.contact .bread-1{--bread-size:160px;--bread-rotate:-16deg;--bread-shift:10px;--bread-duration:5.6s;left:2%;top:11%}
.contact .bread-3{--bread-size:150px;--bread-rotate:-8deg;--bread-shift:11px;--bread-duration:5.1s;left:35%;bottom:5%}
.contact .bread-5{--bread-size:156px;--bread-rotate:-18deg;--bread-shift:10px;--bread-duration:5.8s;right:3%;bottom:12%}

@media (max-width:900px){
  .contact .bread-1{--bread-size:104px;left:0;top:12%}
  .contact .bread-3{--bread-size:96px;left:29%;bottom:6%}
  .contact .bread-5{--bread-size:102px;right:0;bottom:14%}
}

/* 2026-09-07: ヒーロー手書きテキストまわりの光線装飾 */
.hero .note-top::before{
  content:"";
  display:block;
  left:-22px;
  top:-9px;
  width:4px;
  height:42px;
  border-radius:999px;
  background:#f2bd2d;
  box-shadow:none;
  transform:rotate(-8deg);
}
.hero .note-top::after{
  display:block;
  right:-64px;
  top:31px;
  width:4px;
  height:27px;
  border-radius:999px;
  background:#f2bd2d;
  box-shadow:16px 7px 0 #f2bd2d,29px 20px 0 #f2bd2d;
  transform:rotate(38deg);
}
.hero .note-right::before,
.hero .note-right::after{
  content:"";
  position:absolute;
  display:block;
  width:3px;
  border-radius:999px;
  background:#f2bd2d;
  pointer-events:none;
}
.hero .note-right::before{
  right:-18px;
  top:-11px;
  height:13px;
  box-shadow:10px -4px 0 #f2bd2d,18px 2px 0 #f2bd2d;
  transform:rotate(24deg);
}
.hero .note-right::after{
  right:-20px;
  bottom:-17px;
  height:17px;
  box-shadow:-7px 11px 0 #f2bd2d,-17px 18px 0 #f2bd2d;
  transform:rotate(63deg);
}

@media (max-width:900px){
  .hero .note-top::before{left:-17px;top:-6px;width:3px;height:30px}
  .hero .note-top::after{right:-46px;top:24px;width:3px;height:20px;box-shadow:12px 5px 0 #f2bd2d,22px 15px 0 #f2bd2d}
  .hero .note-right::before{right:-15px;top:-9px}
  .hero .note-right::after{right:-16px;bottom:-13px}
}

/* 2026-09-07: ヒーローの黄色装飾をテキスト周辺だけに整理 */
.hero .abs-d2,
.hero .abs-d3{display:none}

/* 2026-09-07: リボン素材に混ざった黄色の断片を画像ごと除外 */
.contact .ribbon img{clip-path:inset(0 0 34px 0)}
.contact .ribbon::after{display:none}

@media (max-width:520px){
  .contact .ribbon img{clip-path:inset(0 0 20px 0)}
}

/* 2026-09-07: セクション境界で切れる黄色の星形装飾を削除 */
.contact .sparkle{display:none}
.contact .right-blob{display:none}

/* 2026-09-07: 「やさしい甘さ」右下の黄色い3本線を削除 */
.hero .note-right::after{display:none}

/* 2026-09-07: ヒーロー説明文の右側へ手書きの黄色い3本線を追加 */
.hero .hero-lead{position:relative;display:inline-block}
.hero .hero-lead::after{
  content:"";
  position:absolute;
  right:-39px;
  top:51%;
  width:5px;
  height:15px;
  border-radius:999px;
  background:#f2bd2d;
  box-shadow:10px 7px 0 #f2bd2d,19px 16px 0 #f2bd2d;
  transform:rotate(-36deg);
  pointer-events:none;
}

@media (max-width:900px){
  .hero .hero-lead::after{right:-28px;width:4px;height:12px;box-shadow:8px 6px 0 #f2bd2d,15px 13px 0 #f2bd2d}
}

/* 2026-09-07: 基デザインに合わせてヒーロー装飾を再構成 */
.hero .hero-scribble{left:-10px;top:18px}
.hero .hero-scribble img{width:46px}
.hero .note-top::after,
.hero .note-right::before,
.hero .note-right::after,
.hero .hero-lead::after{
  height:auto;
  border-radius:0;
  background-color:transparent;
  background-image:
    linear-gradient(#f2bd2d,#f2bd2d),
    linear-gradient(#f2bd2d,#f2bd2d),
    linear-gradient(#f2bd2d,#f2bd2d);
  background-repeat:no-repeat;
  background-position:left 3px bottom 2px,center center,right 3px top 2px;
  background-size:4px 55%,4px 70%,4px 55%;
  box-shadow:none;
}
.hero .note-top::after{
  right:-70px;
  top:27px;
  width:48px;
  height:42px;
  aspect-ratio:48/42;
  transform:rotate(18deg);
}
.hero .note-right::before{
  right:-38px;
  top:-17px;
  width:31px;
  height:27px;
  aspect-ratio:48/42;
  transform:scaleX(-1) rotate(-8deg);
}
.hero .note-right::after{
  display:block;
  right:-37px;
  bottom:-31px;
  width:34px;
  height:30px;
  aspect-ratio:48/42;
  transform:rotate(87deg);
}
.hero .hero-lead::after{
  right:-48px;
  top:42%;
  width:38px;
  height:33px;
  aspect-ratio:48/42;
  transform:rotate(82deg);
}
.hero .abs-d2{display:block;right:-1%;bottom:8%;width:62px;opacity:.7}
.hero .abs-d1{display:none}
.hero .abs-d3{display:none}

@media (max-width:900px){
  .hero .hero-scribble{left:-12px;top:2px}
  .hero .hero-scribble img{width:38px}
  .hero .hero-lead::after{right:-38px;top:43%;width:30px;height:26px}
  .hero .note-top::after{right:-48px;top:22px;width:34px;height:30px}
  .hero .note-right::before{right:-29px;top:-14px;width:25px;height:22px}
  .hero .note-right::after{right:-28px;bottom:-24px;width:27px;height:24px}
  .hero .abs-d2{display:none}
}

/* 2026-09-07: ヒーロー内の黄色い線装飾をすべて削除 */
.hero .hero-scribble,
.hero .abs-d1,
.hero .abs-d2,
.hero .abs-d3,
.hero .note-top::before,
.hero .note-top::after,
.hero .note-right::before,
.hero .note-right::after,
.hero .hero-lead::after{display:none}

/* 2026-09-07: 添付をもとにヒーローの手書き3本線を配置 */
.hero .hero-scribble{display:block;left:-18px;top:13px;opacity:1}
.hero .hero-scribble img{width:60px;transform:rotate(-8deg)}
.hero .hero-lead::after,
.hero .note-top::before,
.hero .note-top::after,
.hero .note-right::before,
.hero .note-right::after{
  content:"";
  display:block;
  position:absolute;
  border:0;
  border-radius:0;
  background:url("../assets/images/deco-hero-rays.svg") center/contain no-repeat;
  box-shadow:none;
  pointer-events:none;
}
.hero .hero-lead::after{right:-61px;top:43%;width:52px;height:45px;transform:rotate(180deg)}
.hero .note-top::before{left:-56px;top:-3px;width:44px;height:38px;transform:rotate(-51deg)}
.hero .note-top::after{right:-64px;top:7px;width:52px;height:45px;transform:scaleX(-1) rotate(-34deg)}
.hero .note-right::before{right:-50px;top:-18px;width:42px;height:36px;transform:rotate(5deg)}
.hero .note-right::after{right:-52px;bottom:-25px;width:44px;height:38px;transform:scaleX(-1) rotate(16deg)}
.hero .abs-d2{display:block;right:-2%;bottom:5%;width:66px;opacity:1;transform:rotate(180deg)}

@media (max-width:900px){
  .hero .hero-scribble{left:-12px;top:5px}
  .hero .hero-scribble img{width:44px}
  .hero .hero-lead::after{right:-45px;width:38px;height:33px}
  .hero .note-top::before{left:-42px;width:33px;height:29px}
  .hero .note-top::after{right:-47px;width:39px;height:34px}
  .hero .note-right::before{right:-37px;width:31px;height:27px}
  .hero .note-right::after{right:-39px;width:32px;height:28px}
  .hero .abs-d2{display:none}
}

/* 2026-09-07: 「素材が生み出す、やさしいおいしさ」の手書き配置 */
.story-copy{position:relative}
.story .mini-scribble{
  position:absolute;
  left:-4px;
  top:4px;
  width:52px;
  height:auto;
  transform:rotate(-6deg);
}
.story .mini-scribble img{width:100%;height:auto}
.story .section-kicker{
  position:relative;
  display:inline-block;
  margin:3px 0 18px 13px;
  font-size:17px;
  line-height:1.45;
  transform:rotate(-9deg);
  transform-origin:left center;
}
.story .section-kicker::after{
  content:"";
  position:absolute;
  right:-57px;
  top:4px;
  width:49px;
  height:42px;
  background:url("../assets/images/deco-hero-rays.svg") center/contain no-repeat;
  transform:scaleX(-1) rotate(-6deg);
}

@media (max-width:900px){
  .story .mini-scribble{left:-8px;top:2px;width:41px}
  .story .section-kicker{margin-left:10px;font-size:15px}
  .story .section-kicker::after{right:-43px;top:3px;width:37px;height:32px}
}

/* 2026-09-07: 素材写真上の手書きメッセージ */
.story-photo{position:relative}
.story-photo-note{
  position:absolute;
  z-index:1;
  top:10%;
  right:12%;
  margin:0;
  color:#b66a31;
  font-family:"Zen Maru Gothic",sans-serif;
  font-size:clamp(19px,2.05vw,30px);
  font-weight:700;
  line-height:1.5;
  letter-spacing:.08em;
  text-align:center;
  transform:rotate(-8deg);
}

@media (max-width:900px){
  .story-photo-note{top:10%;right:11%;font-size:clamp(18px,5vw,27px)}
}

/* 2026-09-07: 製パン写真上の手書きメッセージ */
.daily-photo{position:relative}
.daily-photo-note{
  position:absolute;
  z-index:1;
  left:8%;
  bottom:9%;
  margin:0;
  color:#fff;
  font-family:"Zen Maru Gothic",sans-serif;
  font-size:clamp(18px,1.85vw,28px);
  font-weight:700;
  line-height:1.55;
  letter-spacing:.08em;
  text-align:center;
  text-shadow:0 2px 8px rgba(64,37,25,.28);
  transform:rotate(-8deg);
}

@media (max-width:900px){
  .daily-photo-note{left:8%;bottom:9%;font-size:clamp(18px,4.8vw,26px)}
}

/* 2026-09-07: 素材写真の左端の不要部分を除き、文字との重なりを解消 */
.story-photo{aspect-ratio:1.32}
.story-photo>img{
  width:108%;
  max-width:none;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:right center;
  transform:translateX(-7.5%);
}
.story-photo-note{
  top:18%;
  right:7%;
  max-width:31%;
  font-size:clamp(18px,1.8vw,26px);
  line-height:1.45;
}

@media (max-width:900px){
  .story-photo-note{top:18%;right:7%;max-width:31%;font-size:clamp(16px,4.3vw,24px)}
}

/* 2026-09-07: 製パン写真の白文字を暗い背景部分へ移動 */
.daily-photo-note{
  left:5%;
  bottom:38%;
  font-size:clamp(19px,1.95vw,29px);
  text-shadow:0 2px 4px rgba(46,26,18,.72),0 5px 14px rgba(46,26,18,.38);
}

@media (max-width:900px){
  .daily-photo-note{left:5%;bottom:37%;font-size:clamp(17px,4.7vw,26px)}
}

/* 2026-09-07: セクションタイトルのオレンジ〜黄色グラデーション */
.reasons .section-heading h2 span,
.story-copy h2 span,
.daily-copy h2 span,
.shop-heading h2 span,
.scenes .section-heading h2 span,
.contact-inner h2 span{
  color:#df5a20;
  background:linear-gradient(100deg,#d95420 0%,#e86f18 48%,#f0b51c 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* 2026-09-07: ヒーローの旧3本線を外し、ポップ装飾へ刷新 */
.hero .hero-scribble,
.hero .abs-d1,
.hero .abs-d2,
.hero .abs-d3,
.hero .hero-lead::after,
.hero .note-top::before,
.hero .note-top::after,
.hero .note-right::before,
.hero .note-right::after{display:none}

.hero{isolation:isolate}
.hero-grid{position:relative;z-index:2}
.hero-pop-layer{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.hero-pop{position:absolute;display:block;animation:hero-pop-float 5.5s ease-in-out infinite}
@keyframes hero-pop-float{
  0%,100%{translate:0 0;rotate:-4deg}
  50%{translate:0 -12px;rotate:5deg}
}
.pop-star{font-family:serif;line-height:1;color:#f2b82e;text-shadow:0 5px 14px rgba(242,184,46,.2)}
.pop-star-1{left:3.2%;top:12%;font-size:44px}
.pop-star-2{right:4.5%;top:67%;font-size:35px;color:#ec7447;animation-delay:-2.1s}
.pop-ring{border:5px solid rgba(241,189,52,.52);border-radius:50%}
.pop-ring-1{left:46%;top:7%;width:28px;height:28px;animation-delay:-1.2s}
.pop-ring-2{right:2%;top:38%;width:38px;height:38px;border-color:rgba(237,116,71,.35);animation-delay:-3.4s}
.pop-dots{width:10px;height:10px;border-radius:50%;background:#f1bd34;box-shadow:20px 6px 0 #f6cf72,7px 25px 0 #ec7447,29px 29px 0 #f1bd34}
.pop-dots-1{left:2.5%;bottom:12%;animation-delay:-2.7s}
.pop-dots-2{right:12%;top:9%;transform:scale(.8);animation-delay:-4.1s}
.pop-confetti{width:7px;height:30px;border-radius:999px;background:#f6a997;box-shadow:22px 8px 0 #f1bd34,-18px 13px 0 #ec7447}
.pop-confetti-1{left:39%;bottom:7%;transform:rotate(42deg);animation-delay:-1.8s}
.pop-confetti-2{right:8%;bottom:8%;transform:rotate(-28deg);animation-delay:-3s}

.hero .note-top{font-size:36px}
.hero .note-right{font-size:22px;line-height:1.35}

@media (min-width:901px){
  .hero .note-top{right:22%;top:8%}
  .hero .note-right{right:2%;top:27%}
}

@media (max-width:900px){
  .hero .note-top{font-size:28px}
  .hero .note-right{font-size:16px}
  .pop-star-1{left:2%;top:8%;font-size:31px}
  .pop-star-2{right:4%;top:75%;font-size:27px}
  .pop-ring-1{left:76%;top:6%;width:21px;height:21px;border-width:4px}
  .pop-ring-2{right:1%;top:47%;width:28px;height:28px;border-width:4px}
  .pop-dots-1{left:3%;bottom:8%;transform:scale(.72)}
  .pop-dots-2{right:12%;top:44%;transform:scale(.65)}
  .pop-confetti-1{left:7%;bottom:42%;transform:scale(.72) rotate(42deg)}
  .pop-confetti-2{right:7%;bottom:6%;transform:scale(.72) rotate(-28deg)}
}

@media (max-width:520px){
  .hero .note-right{display:none}
  .hero-pop-layer{opacity:.78}
}

/* 2026-09-07: シーン見出しの装飾を「お店のご案内」と統一 */
.scenes .section-heading::before,
.scenes .section-heading::after{
  flex-basis:55px;
  width:55px;
  height:55px;
  transform:none;
}
.scenes .section-heading::before{background-image:url("../assets/images/deco-10-sunburst-e.png")}
.scenes .section-heading::after{background-image:url("../assets/images/deco-11-sunburst-f.png")}

@media (max-width:900px){
  .scenes .section-heading::before,
  .scenes .section-heading::after{flex-basis:42px;width:42px;height:42px}
}

/* 2026-09-07: ヘッダー下の余白を20px追加し、ポップ装飾を配置 */
.site-header+main{
  position:relative;
  padding-top:120px;
}
.hero-gap-deco{
  position:absolute;
  inset:0 0 auto;
  height:120px;
  overflow:hidden;
  pointer-events:none;
  z-index:1;
}
.gap-pop{position:absolute;display:block;animation:hero-pop-float 5.5s ease-in-out infinite}
.gap-star{left:8%;top:24px;color:#f2b82e;font:42px/1 serif;text-shadow:0 5px 14px rgba(242,184,46,.2)}
.gap-ring{left:31%;top:55px;width:25px;height:25px;border:5px solid rgba(236,116,71,.3);border-radius:50%;animation-delay:-1.7s}
.gap-dots{left:52%;top:27px;width:9px;height:9px;border-radius:50%;background:#f1bd34;box-shadow:19px 5px 0 #f6cf72,7px 23px 0 #ec7447,27px 27px 0 #f1bd34;animation-delay:-3.2s}
.gap-spark{right:21%;top:58px;color:#ec7447;font:30px/1 serif;transform:rotate(18deg);animation-delay:-2.4s}
.gap-confetti{right:7%;top:23px;width:7px;height:27px;border-radius:999px;background:#f6a997;box-shadow:21px 8px 0 #f1bd34,-18px 13px 0 #ec7447;transform:rotate(-28deg);animation-delay:-4s}

@media (max-width:900px){
  .site-header+main{padding-top:120px}
  .gap-star{left:5%;top:28px;font-size:31px}
  .gap-ring{left:34%;top:66px;width:20px;height:20px;border-width:4px}
  .gap-dots{left:60%;top:30px;transform:scale(.72)}
  .gap-spark{display:none}
  .gap-confetti{right:8%;top:62px;transform:scale(.72) rotate(-28deg)}
}

/* 2026-09-07: スマホ版「お店のご案内」の本文左端をタイトルへ揃える */
@media (max-width:900px){
  .shop-copy>p{
    width:calc(100% - 20px);
    margin-left:20px;
  }
}

/* 2026-09-07: 素材写真上のメッセージを読みやすく調整 */
.story-photo-note{
  color:#98491f;
  text-shadow:
    -1px -1px 0 rgba(255,252,242,.96),
    1px -1px 0 rgba(255,252,242,.96),
    -1px 1px 0 rgba(255,252,242,.96),
    1px 1px 0 rgba(255,252,242,.96),
    0 4px 8px rgba(72,35,18,.32),
    0 8px 18px rgba(72,35,18,.16);
}

/* 2026-09-07: 店舗案内の本文とボタンを10px右へ移動 */
.shop-copy>p,
.shop-copy>.button{
  position:relative;
  left:10px;
}

/* 2026-09-07: 新しい素材写真と職人写真と同じホバー動作 */
.story-photo{
  border-radius:48% 52% 45% 55% / 42% 40% 60% 58%;
}
.story-photo>img{
  width:100%;
  max-width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:scale(1.12);
}
.story-photo:hover{
  transform:translateY(-7px) rotate(.6deg);
  box-shadow:0 22px 48px rgba(74,33,20,.13);
}
.story-photo:hover img{transform:scale(1.165);filter:saturate(1.06)}

/* 2026-09-07: 背景透過の追従ヘッダー */
.site-header{
  position:fixed;
  inset:0 0 auto;
  width:100%;
  background:transparent;
  backdrop-filter:none;
  border:0;
  box-shadow:none;
}

/* 2026-09-07: ヘッダーのロゴと文字を拡大 */
.site-header .brand img{width:54px;height:auto}
.site-header .brand b{font-size:17px}
.site-header .brand small{font-size:8px}
.site-header .global-nav a{font-size:14px}
.site-header .header-cta{font-size:13px}

@media (max-width:900px){
  .site-header .brand img{width:48px}
  .site-header .brand b{font-size:14px}
  .site-header .brand small{font-size:7.5px}
}

/* 2026-09-07: 透過ヘッダーの文字とロゴを背景上でも見やすく調整 */
.site-header .brand b,
.site-header .brand small,
.site-header .global-nav a{
  text-shadow:
    -1px -1px 0 rgba(255,252,245,.96),
    1px -1px 0 rgba(255,252,245,.96),
    -1px 1px 0 rgba(255,252,245,.96),
    1px 1px 0 rgba(255,252,245,.96),
    0 3px 8px rgba(55,25,14,.34);
}
.site-header .brand img{
  filter:drop-shadow(0 0 3px rgba(255,252,245,.95)) drop-shadow(0 4px 6px rgba(55,25,14,.24));
}
.site-header .header-cta{box-shadow:0 10px 24px rgba(93,39,16,.3),0 0 0 2px rgba(255,255,255,.64)}
.site-header .menu-toggle{filter:drop-shadow(0 0 3px rgba(255,252,245,.95)) drop-shadow(0 3px 5px rgba(55,25,14,.25))}

/* 2026-09-08: ヘッダー下の余白を200pxへ変更 */
.site-header+main{padding-top:200px}
.hero-gap-deco{height:200px}

@media (max-width:900px){
  .site-header+main{padding-top:88px}
  .hero-gap-deco{display:none}

  .hero-visual{order:1}
  .hero-copy{order:2}

  .daily-copy{order:1}
  .daily-photo{order:2}
}

/* 2026-09-08: スマートフォン専用のタイトル改行 */
.sp-break{display:none}

@media (max-width:900px){
  .sp-break{display:initial}
  .pc-break{display:none}
  .story-copy h2{white-space:nowrap}
}
