/* クロワッサンたい焼き たいこちゃん（#ohama-taiko）— 渡された css/style.css を、本文の中だけに効く書き方にしたもの。
   tools/import_taiko.py が作る（手で直さない。こちらで足す見た目は taiko-extras.css）。クラス名と @keyframes の名前には tk- を付けた。
   ヘッダー・フッターなど本文に無い部品の決まりは捨てた（共通シェルのものを使う）。html[data-motion]・html[data-sticky-shop] は外枠の印に（D-211） */
#ohama-taiko *,#ohama-taiko ::before,#ohama-taiko ::after{box-sizing:border-box;
  border-width:0;
  border-style:solid;
  border-color:currentColor}
html:has(#ohama-taiko){line-height:1.5;
  -webkit-text-size-adjust:100%;
  tab-size:4}
#ohama-taiko{margin:0}
#ohama-taiko button,#ohama-taiko input,#ohama-taiko select,#ohama-taiko textarea{font:inherit;
  color:inherit;
  background:transparent;
  border-radius:0}
#ohama-taiko button{appearance:button}
#ohama-taiko b,#ohama-taiko strong{font-weight:bolder}
#ohama-taiko small{font-size:80%}
#ohama-taiko svg,#ohama-taiko video{display:block;
  vertical-align:middle}
#ohama-taiko video{max-width:100%;
  height:auto}
#ohama-taiko [hidden]{display:none!important}
#ohama-taiko{--background:#fff9ed;
  --foreground:#493026;
  --card:#fff9ed;
  --card-foreground:#493026;
  --popover:#fff9ed;
  --popover-foreground:#493026;
  --primary:#ba431f;
  --primary-foreground:#fff9ed;
  --secondary:#ffdb57;
  --secondary-foreground:#493026;
  --muted:#f2eadb;
  --muted-foreground:#785f53;
  --accent:#ffdb57;
  --accent-foreground:#493026;
  --border:#d9c8ae;
  --input:#d9c8ae;
  --ring:#ba431f;
  --radius:1rem;
  --ink:#493026;
  --orange:#bd441f;
  --yellow:#ffe37b;
  --cream:#fff9ed;
  --scroll:0}
#ohama-taiko *{box-sizing:border-box}
html:has(#ohama-taiko){scroll-behavior:smooth;
  scroll-padding-top:100px}
#ohama-taiko{margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:'Hiragino Maru Gothic ProN','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;
  font-size:16px;
  font-weight:500;
  -webkit-font-smoothing:antialiased}
#ohama-taiko button,#ohama-taiko a{-webkit-tap-highlight-color:transparent}
#ohama-taiko button{font:inherit;
  cursor:pointer}
#ohama-taiko a{color:inherit;
  text-decoration:none}
#ohama-taiko img{display:block;
  max-width:100%;
  height:auto}
#ohama-taiko button:focus-visible,#ohama-taiko a:focus-visible{outline:3px solid #227179;
  outline-offset:5px}
#ohama-taiko ::selection{background:#ffd652;
  color:#743523}
#ohama-taiko h1,#ohama-taiko h2,#ohama-taiko h3,#ohama-taiko h4,#ohama-taiko p,#ohama-taiko figure{margin:0}
#ohama-taiko h2,#ohama-taiko h3{font-weight:800;
  letter-spacing:.02em}
#ohama-taiko h2{font-size:clamp(32px,4.1vw,62px);
  line-height:1.65}
#ohama-taiko p{line-height:2.1}
#ohama-taiko em{font-style:normal;
  color:var(--orange)}
#ohama-taiko .tk-section{padding:115px max(6.5vw,24px)}
#ohama-taiko .tk-chapter,#ohama-taiko .tk-eyebrow{font-family:Arial,sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.17em}
#ohama-taiko .tk-chapter{display:block;
  margin-bottom:25px}
#ohama-taiko .tk-eyebrow{color:var(--orange)}
#ohama-taiko .tk-mascot{object-fit:contain;
  pointer-events:none;
  user-select:none}
#ohama-taiko .tk-handwritten{font-family:'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif;
  font-weight:800;
  line-height:1.8;
  letter-spacing:.1em}
#ohama-taiko .tk-pill{display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:20px 29px;
  border-radius:50px;
  background:var(--orange);
  color:#fff9ed;
  font-weight:700;
  font-size:15px;
  transition:transform .3s,background .3s;
  min-height:58px}
#ohama-taiko .tk-pill:hover{transform:translateY(-4px);
  background:#91361c}
#ohama-taiko .tk-pill svg{flex:none}
#ohama-taiko .tk-hero{position:relative;
  min-height:740px;
  height:calc(100svh - 99px);
  max-height:960px;
  overflow:hidden;
  background:var(--yellow);
  padding:52px 6.5vw 70px}
#ohama-taiko .tk-hero-kicker{font-size:13px;
  font-weight:700;
  letter-spacing:.14em}
#ohama-taiko .tk-hero-text{position:relative;
  z-index:3;
  margin-top:70px;
  pointer-events:none;
  width:56%}
#ohama-taiko .tk-hero-text a{pointer-events:auto}
#ohama-taiko .tk-hero-small{font-size:19px;
  font-weight:800;
  letter-spacing:.1em}
#ohama-taiko .tk-hero h1{font-weight:900;
  letter-spacing:-.05em;
  font-size:clamp(52px,6vw,93px);
  line-height:1.5;
  margin:12px 0 20px}
#ohama-taiko .tk-hero h1>span{display:block;
  white-space:nowrap}
#ohama-taiko .tk-taiko-title{color:var(--orange)}
#ohama-taiko .tk-hero-text p{font-size:17px;
  line-height:2;
  letter-spacing:.03em}
#ohama-taiko .tk-hero-text p b{display:inline-block;
  margin-top:10px}
#ohama-taiko .tk-hero-cta{margin-top:26px;
  background:var(--ink)}
#ohama-taiko .tk-hero-visual{position:absolute;
  right:-1%;
  top:9%;
  width:59%;
  height:76%;}
#ohama-taiko .tk-hero-photo{position:absolute;
  width:100%;
  height:85%;
  top:8%;
  border-radius:49% 45% 45% 52% / 50% 48% 48% 45%;
  overflow:hidden;
  transform:rotate(-9deg);
  box-shadow:0 25px 50px #8c531913;
  animation:tk-photo-breathe 9s ease-in-out infinite}
#ohama-taiko .tk-hero-photo img{width:100%;
  height:100%;
  object-fit:cover;
  transform:rotate(9deg) scale(1.16);
  object-position:50% 55%}
#ohama-taiko .tk-hero-orbit{position:absolute;
  width:105%;
  height:90%;
  border:1px solid #b2673238;
  border-radius:50%;
  top:5%;
  left:-2%;
  transform:rotate(-18deg)}
#ohama-taiko .tk-hero-note{position:absolute;
  top:0;
  right:17%;
  font-size:18px;
  transform:rotate(8deg);
  color:var(--orange);
  z-index:2}
#ohama-taiko .tk-round-badge{position:absolute;
  right:7%;
  bottom:-2%;
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid #725126;
  border-radius:50%;
  width:144px;
  height:144px;
  background:var(--yellow);
  transform:rotate(12deg);
  outline:5px solid var(--yellow)}
#ohama-taiko .tk-round-badge>span:first-child{font-size:12px}
#ohama-taiko .tk-round-badge strong{font-family:Georgia,serif;
  font-size:59px;
  font-weight:400;
  line-height:1.1}
#ohama-taiko .tk-round-badge strong small{font:700 19px sans-serif}
#ohama-taiko .tk-round-badge>span:last-child{font:8px Arial;
  letter-spacing:.05em;
  margin-top:6px}
#ohama-taiko .tk-hero-mascot{position:absolute;
  bottom:-14%;
  left:1%;
  width:clamp(170px,19vw,275px);
  z-index:5;
  animation:tk-bob 4s ease-in-out infinite;
  filter:drop-shadow(0 10px 5px #73471b13)}
#ohama-taiko .tk-hello{position:absolute;
  bottom:20%;
  left:6%;
  font-size:15px;
  font-weight:800;
  transform:rotate(-15deg)}
#ohama-taiko .tk-hero-bottom{position:absolute;
  bottom:24px;
  left:6.5%;
  right:6.5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:12px;
  letter-spacing:.06em}
#ohama-taiko .tk-scroll-cue{display:flex;
  gap:15px;
  align-items:center;
  font:11px Arial;
  letter-spacing:.14em}
#ohama-taiko .tk-scroll-cue svg{animation:tk-down 2s infinite}
#ohama-taiko .tk-hero-location{font:10px Arial;
  letter-spacing:.1em}
#ohama-taiko .tk-ribbon{height:58px;
  background:var(--orange);
  color:var(--yellow);
  overflow:hidden;
  display:flex;
  align-items:center}
#ohama-taiko .tk-ribbon-track{white-space:nowrap;
  animation:tk-marquee 35s linear infinite;
  font:700 24px/1 Arial,sans-serif;
  letter-spacing:.09em;
  display:flex;
  align-items:center;
  gap:38px}
#ohama-taiko .tk-ribbon-track span{font-size:33px}
#ohama-taiko .tk-intro-top{text-align:center;
  position:relative}
#ohama-taiko .tk-intro-top .tk-eyebrow{margin-bottom:24px}
#ohama-taiko .tk-intro-top h2{font-size:clamp(30px,3.7vw,54px)}
#ohama-taiko .tk-intro-top h2 span{color:var(--orange)}
#ohama-taiko .tk-intro-mascot{position:absolute;
  width:150px;
  right:0;
  top:35px;
  transform:rotate(10deg)}
#ohama-taiko .tk-intro-bubble{position:absolute;
  right:2%;
  top:-26px;
  font-size:13px;
  font-weight:700;
  line-height:1.7;
  transform:rotate(8deg)}
#ohama-taiko .tk-facts{display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:960px;
  margin:60px auto 105px;
  text-align:center}
#ohama-taiko .tk-facts>div{border-right:1px solid #d4bda5}
#ohama-taiko .tk-facts>div:last-child{border:0}
#ohama-taiko .tk-facts span{font-size:13px;
  display:block}
#ohama-taiko .tk-facts strong{font:400 72px/1.5 Georgia,serif;
  color:var(--orange)}
#ohama-taiko .tk-facts small{font:700 19px sans-serif;
  margin-left:5px}
#ohama-taiko .tk-intro-story{display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:10%;
  align-items:center}
#ohama-taiko .tk-intro-picture{position:relative;
  transform:rotate(-4deg)}
#ohama-taiko .tk-intro-picture img{aspect-ratio:1/1.08;
  object-fit:cover;
  border-radius:180px 180px 24px 24px}
#ohama-taiko .tk-intro-picture figcaption{font:10px Arial;
  letter-spacing:.2em;
  margin-top:20px;
  text-align:center}
#ohama-taiko .tk-intro-copy{position:relative;
  padding-bottom:35px}
#ohama-taiko .tk-intro-copy h3{font-size:34px;
  line-height:1.8;
  margin-bottom:22px}
#ohama-taiko .tk-intro-copy p{font-size:15px;
  margin-bottom:20px}
#ohama-taiko .tk-intro-wink{width:135px;
  position:absolute;
  bottom:-50px;
  right:0;
  transform:rotate(12deg)}
#ohama-taiko .tk-crunch-scene{height:165vh;
  position:relative;
  --scene:0;
  background:#352315}
#ohama-taiko .tk-crunch-sticky{height:100svh;
  min-height:630px;
  position:sticky;
  top:0;
  overflow:hidden;
  color:#fff9ed}
#ohama-taiko .tk-crunch-photo{height:100%;
  width:100%;
  object-fit:cover;
  transform:scale(calc(1.2 - var(--scene)*.18));
  object-position:center}
#ohama-taiko .tk-crunch-shade{position:absolute;
  inset:0;
  background:linear-gradient(90deg,#2413099c,transparent 80%),linear-gradient(0deg,#1c110c88,transparent 40%)}
#ohama-taiko .tk-crunch-copy{position:absolute;
  top:23%;
  left:8%;
  transform:translateY(calc(var(--scene)*-35px));
  z-index:2}
#ohama-taiko .tk-crunch-copy h2{font-size:clamp(42px,6vw,90px);
  line-height:1.5}
#ohama-taiko .tk-crunch-copy p{margin-top:30px;
  font-size:17px;
  letter-spacing:.08em}
#ohama-taiko .tk-giant-24{font:400 clamp(180px,27vw,400px)/.9 Georgia,serif;
  position:absolute;
  right:6%;
  bottom:12%;
  color:#fff4d750;
  transform:translateY(calc(60px - var(--scene)*100px))}
#ohama-taiko .tk-giant-24 span{display:block;
  font:11px Arial;
  letter-spacing:.25em;
  text-align:center;
  margin-top:15px;
  color:#fff9ed}
#ohama-taiko .tk-crunch-caption{position:absolute;
  bottom:36px;
  left:8%;
  font-size:13px;
  letter-spacing:.1em}
#ohama-taiko .tk-flavors{background:#f9edd7;
  transition:background .4s}
#ohama-taiko .tk-section-heading{display:flex;
  justify-content:space-between;
  align-items:end;
  gap:30px;
  margin-bottom:42px}
#ohama-taiko .tk-section-heading p{font-size:16px;
  padding-bottom:15px}
#ohama-taiko .tk-flavor-list[data-slot]{width:100%;
  height:auto;
  background:transparent;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  padding:0;
  gap:0;
  border-bottom:1px solid #c8ab87;
  border-radius:0;
  margin-bottom:38px}
#ohama-taiko .tk-flavor-list [data-slot=tabs-trigger]{color:var(--ink);
  font-size:16px;
  padding:22px 6px;
  height:auto;
  border-radius:0;
  font-weight:700;
  background:transparent;
  box-shadow:none;
  border:0;
  border-bottom:3px solid transparent}
#ohama-taiko .tk-flavor-list [data-state=active]{color:var(--orange);
  border-bottom-color:var(--orange);
  background:transparent!important;
  box-shadow:none}
#ohama-taiko .tk-flavor-panel{display:grid;
  grid-template-columns:1.25fr 1fr;
  gap:6%;
  align-items:center;
  animation:tk-fade-in .5s ease}
#ohama-taiko .tk-flavor-panel[hidden]{display:none}
#ohama-taiko .tk-flavor-photo{position:relative;
  border-radius:42% 42% 24px 24px;
  overflow:hidden;
  background:var(--flavor)}
#ohama-taiko .tk-flavor-photo>img{aspect-ratio:1/1;
  object-fit:cover}
#ohama-taiko .tk-flavor-number{position:absolute;
  left:26px;
  top:26px;
  color:white;
  font:italic 35px Georgia}
#ohama-taiko .tk-flavor-description h3{font-size:34px;
  line-height:1.7;
  margin:16px 0}
#ohama-taiko .tk-flavor-description h4{font-size:19px;
  margin-bottom:14px}
#ohama-taiko .tk-flavor-description p{font-size:15px;
  max-width:380px}
#ohama-taiko .tk-flavor-package{display:flex;
  align-items:center;
  gap:20px;
  margin:22px 0}
#ohama-taiko .tk-flavor-package img{width:145px;
  transform:rotate(-5deg);
  mix-blend-mode:multiply}
#ohama-taiko .tk-flavor-package span{font-size:12px;
  line-height:1.8}
#ohama-taiko .tk-flavor-description .tk-pill{min-width:275px}
#ohama-taiko .tk-taiko-movie{background:#a9d8dc;
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr 1.25fr;
  gap:6%;
  align-items:center}
#ohama-taiko .tk-taiko-movie h2{font-size:clamp(32px,3.4vw,49px)}
#ohama-taiko .tk-taiko-movie h2 em{color:#24636a}
#ohama-taiko .tk-movie-intro p{font-size:15px;
  margin-top:23px}
#ohama-taiko .tk-movie-stage{transform:rotate(3deg);
  background:var(--cream);
  padding:13px 13px 15px;
  border-radius:5px;
  box-shadow:0 15px 0 #2f747c13;
  position:relative;
  z-index:1}
#ohama-taiko .tk-movie{width:100%;
  aspect-ratio:16/9;
  display:block;
  object-fit:contain;
  background:#fff3d7;
  border-radius:3px}
#ohama-taiko .tk-movie-tag{position:absolute;
  z-index:2;
  top:-18px;
  left:15%;
  background:var(--yellow);
  padding:10px 25px;
  transform:rotate(-4deg);
  font-size:13px;
  font-weight:700}
#ohama-taiko .tk-movie-duration{display:block;
  text-align:center;
  font:11px Arial;
  letter-spacing:.13em;
  margin-top:15px}
#ohama-taiko .tk-movie-mascot{position:absolute;
  width:140px;
  right:3%;
  bottom:14px;
  z-index:2;
  animation:tk-bob 5s ease-in-out infinite}
#ohama-taiko .tk-howto{background:#fff9ed}
#ohama-taiko .tk-howto-heading{text-align:center;
  position:relative;
  max-width:950px;
  margin:0 auto}
#ohama-taiko .tk-howto-heading p{margin-top:23px;
  font-size:16px}
#ohama-taiko .tk-howto-chef{position:absolute;
  left:0;
  bottom:10px;
  width:190px;
  transform:rotate(-12deg)}
#ohama-taiko .tk-howto-steps{display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:35px;
  margin-top:66px}
#ohama-taiko .tk-step{position:relative;
  border-top:1px solid #bda27e;
  padding-top:30px}
#ohama-taiko .tk-step-num{font:italic 66px/1 Georgia,serif;
  color:var(--orange);
  display:block}
#ohama-taiko .tk-step-en{font:10px Arial;
  letter-spacing:.1em;
  display:block;
  margin:10px 0 20px}
#ohama-taiko .tk-step h3{font-size:27px;
  line-height:1.7;
  margin-bottom:18px}
#ohama-taiko .tk-step p{font-size:15px}
#ohama-taiko .tk-howto-note{font-size:12px;
  margin-top:26px;
  color:#786456}
#ohama-taiko .tk-snack-photo{position:relative;
  margin-top:65px;
  overflow:hidden;
  border-radius:24px}
#ohama-taiko .tk-snack-photo img{width:100%;
  aspect-ratio:2.3;
  object-fit:cover;
  object-position:center 53%}
#ohama-taiko .tk-snack-photo span{position:absolute;
  left:6%;
  top:18%;
  font-size:clamp(25px,3vw,43px);
  font-weight:800;
  line-height:1.8;
  color:#542d1e;
  text-shadow:0 2px 15px white}
#ohama-taiko .tk-mitoyo{background:#ffe07a;
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:8%;
  align-items:center}
#ohama-taiko .tk-mitoyo h2{font-size:clamp(32px,3.9vw,58px)}
#ohama-taiko .tk-mitoyo-copy p{font-size:15px;
  margin-top:28px}
#ohama-taiko .tk-mitoyo-copy>.tk-handwritten{display:block;
  font-size:20px;
  color:var(--orange);
  margin-top:34px;
  transform:rotate(-3deg)}
#ohama-taiko .tk-bus-photo{justify-self:center;
  position:relative;
  max-width:320px;
  padding:22px;
  background:#fff8e5;
  transform:rotate(6deg);
  box-shadow:10px 12px 0 #6644261a;
  border-radius:4px}
#ohama-taiko .tk-wanted{font:900 48px/1.4 Georgia,serif;
  text-align:center;
  letter-spacing:.03em}
#ohama-taiko .tk-bus-photo>img{width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center 35%}
#ohama-taiko .tk-bus-photo figcaption{text-align:center;
  font-size:12px;
  font-weight:700;
  margin-top:16px}
#ohama-taiko .tk-bus-mascot{position:absolute;
  bottom:-45px;
  right:-70px;
  width:160px;
  transform:rotate(-15deg)}
#ohama-taiko .tk-shop-section{background:#f6e6dc}
#ohama-taiko .tk-shop-head{text-align:center;
  margin-bottom:60px}
#ohama-taiko .tk-shop-head p{font-size:17px;
  margin-top:20px}
#ohama-taiko .tk-shop-grid{display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:7%;
  align-items:center}
#ohama-taiko .tk-shop-video{background:#fff9ed;
  padding:12px 12px 18px;
  border-radius:12px;
  transform:rotate(-3deg)}
#ohama-taiko .tk-shop-video>span{display:block;
  text-align:center;
  font-size:13px;
  font-weight:700;
  margin-top:14px}
#ohama-taiko .tk-shop-label{display:inline-block;
  border:1px solid #b99b87;
  border-radius:20px;
  padding:7px 16px;
  font-size:12px;
  margin-bottom:22px}
#ohama-taiko .tk-shop-info h3{font-size:27px;
  line-height:1.7}
#ohama-taiko .tk-shop-info h3>b{font:400 88px/1.3 Georgia,serif;
  color:var(--orange)}
#ohama-taiko .tk-shop-info h3 small{font:800 28px sans-serif;
  margin-left:8px}
#ohama-taiko .tk-shop-info>p{font-size:15px;
  margin:15px 0}
#ohama-taiko .tk-set-equation{display:flex;
  gap:16px;
  align-items:center;
  margin:24px 0 30px}
#ohama-taiko .tk-set-equation>span{font-size:11px;
  text-align:center}
#ohama-taiko .tk-set-equation strong{display:block;
  font-size:25px;
  margin-top:6px}
#ohama-taiko .tk-set-total{color:var(--orange)}
#ohama-taiko .tk-shop-info .tk-pill{width:100%;
  max-width:380px}
#ohama-taiko .tk-text-link{display:flex;
  align-items:center;
  gap:12px;
  font-size:13px;
  font-weight:700;
  margin-top:25px;
  text-decoration:underline;
  text-underline-offset:5px}
#ohama-taiko .tk-shop-note{display:block;
  font-size:12px;
  margin-top:22px;
  color:#7c6458}
#ohama-taiko .tk-faq{display:grid;
  grid-template-columns:1fr 1.45fr;
  gap:7%;
  padding-bottom:100px}
#ohama-taiko .tk-faq h2{font-size:27px;
  line-height:1.8}
#ohama-taiko .tk-faq-heading>.tk-mascot{width:150px;
  margin-top:25px;
  transform:rotate(-8deg)}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger]{font-size:15px;
  padding:24px 0;
  line-height:1.8;
  align-items:center}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger] span{display:flex;
  gap:20px}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger] b{font:italic 24px Georgia;
  color:var(--orange)}
#ohama-taiko .tk-faq-list [data-slot=accordion-content]>div{font-size:14px;
  line-height:2.1;
  padding:0 15px 25px 43px}
#ohama-taiko .tk-fixed-tools{position:fixed;
  z-index:30;
  right:22px;
  bottom:20px;
  display:flex;
  gap:9px;
  align-items:center}
#ohama-taiko .tk-motion-toggle{border:1px solid #bbaa8c;
  border-radius:50%;
  width:37px;
  height:37px;
  background:#fff9edec;
  display:grid;
  place-items:center;
  color:var(--ink)}
#ohama-taiko .tk-floating-shop{display:flex;
  gap:14px;
  align-items:center;
  background:var(--ink);
  color:var(--cream);
  padding:17px 22px;
  border-radius:40px;
  font-size:12px;
  font-weight:700;
  box-shadow:0 5px 22px #49302625;
  transition:transform .25s}
#ohama-taiko .tk-floating-shop:hover{transform:translateY(-4px)}
#ohama-taiko .tk-reveal{opacity:1;
  transform:translateY(0)}
#ohama-taiko[data-motion=on] .tk-reveal:not(.tk-visible){opacity:0;
  transform:translateY(24px)}
#ohama-taiko .tk-reveal.tk-visible{transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.25,1)}
#ohama-taiko[data-motion=off] *,#ohama-taiko[data-motion=off] *:before,#ohama-taiko[data-motion=off] *:after{animation-play-state:paused!important;
  scroll-behavior:auto!important}
#ohama-taiko[data-motion=off] .tk-crunch-photo,#ohama-taiko[data-motion=off] .tk-crunch-copy,#ohama-taiko[data-motion=off] .tk-giant-24{transform:none}
@keyframes tk-bob{0%,100% {
  translate:0 0;
  rotate:-3deg
}
50% {
  translate:0 -16px;
  rotate:4deg
}}
@keyframes tk-photo-breathe{0%,100% {
  transform:rotate(-9deg) translateY(0)
}
50% {
  transform:rotate(-7deg) translateY(-10px)
}}
@keyframes tk-down{0%,100% {
  transform:translateY(0)
}
50% {
  transform:translateY(5px)
}}
@keyframes tk-marquee{to {
  transform:translateX(-50%)
}}
@keyframes tk-fade-in{from {
  opacity:.35;
  transform:translateY(8px)
}
to {
  opacity:1;
  transform:translateY(0)
}}
@media(min-width:1500px){
  #ohama-taiko .tk-section{padding-left:max(8vw,calc((100vw - 1280px)/2));
  padding-right:max(8vw,calc((100vw - 1280px)/2))}
  #ohama-taiko .tk-hero-text{margin-top:90px}
  #ohama-taiko .tk-hero-visual{right:0;
  width:57%}
}
@media(max-width:1050px){
  #ohama-taiko .tk-hero{min-height:740px}
  #ohama-taiko .tk-hero-text{margin-top:80px}
  #ohama-taiko .tk-hero h1{font-size:6.2vw}
  #ohama-taiko .tk-hero-visual{top:15%;
  width:60%;
  height:68%}
  #ohama-taiko .tk-hero-text p{font-size:15px}
  #ohama-taiko .tk-hero-cta{font-size:13px;
  padding:18px 22px}
  #ohama-taiko .tk-hero-location{display:none}
  #ohama-taiko .tk-intro-mascot{width:110px;
  right:-15px;
  top:65px}
  #ohama-taiko .tk-intro-bubble{right:0;
  font-size:11px;
  top:5px}
  #ohama-taiko .tk-intro-story{gap:7%}
  #ohama-taiko .tk-howto-chef{width:150px;
  left:-20px}
  #ohama-taiko .tk-flavor-description h3{font-size:27px}
  #ohama-taiko .tk-bus-mascot{right:-45px;
  width:130px}
  #ohama-taiko .tk-taiko-movie{gap:5%}
  #ohama-taiko .tk-movie-mascot{width:110px}
}
@media(max-width:760px){
  html:has(#ohama-taiko){scroll-padding-top:25px}
  #ohama-taiko .tk-hero{height:auto;
  min-height:860px;
  max-height:none;
  padding:28px 24px 35px}
  #ohama-taiko .tk-hero-kicker{font-size:10px;
  letter-spacing:.05em}
  #ohama-taiko .tk-hero-text{width:100%;
  margin-top:35px;
  z-index:3}
  #ohama-taiko .tk-hero-small{font-size:14px}
  #ohama-taiko .tk-hero h1{font-size:clamp(41px,9.5vw,67px);
  line-height:1.45;
  margin:9px 0 10px;
  letter-spacing:-.04em}
  #ohama-taiko .tk-hero-text p{font-size:13px;
  line-height:1.9;
  margin-top:20px}
  #ohama-taiko .tk-hero-text p b{margin-top:5px}
  #ohama-taiko .tk-hero-cta{position:absolute;
  top:660px;
  left:0;
  width:100%;
  justify-content:center;
  gap:20px;
  margin:0;
  font-size:14px;
  z-index:5}
  #ohama-taiko .tk-hero-visual{width:108%;
  left:3%;
  right:auto;
  top:360px;
  height:345px}
  #ohama-taiko .tk-hero-photo{top:8%;
  left:10%;
  width:90%;
  height:82%;
  border-radius:48% 48% 45% 45%;
  transform:rotate(-9deg)}
  #ohama-taiko .tk-hero-orbit{left:5%;
  width:95%;
  height:86%}
  #ohama-taiko .tk-hero-note{right:14%;
  top:-23px;
  font-size:12px}
  #ohama-taiko .tk-hero-mascot{width:155px;
  left:-5%;
  bottom:-5%}
  #ohama-taiko .tk-hello{bottom:42%;
  left:0;
  font-size:12px}
  #ohama-taiko .tk-round-badge{width:100px;
  height:100px;
  right:13%;
  bottom:-3%}
  #ohama-taiko .tk-round-badge strong{font-size:39px}
  #ohama-taiko .tk-round-badge strong small{font-size:14px}
  #ohama-taiko .tk-round-badge>span:first-child{font-size:9px}
  #ohama-taiko .tk-round-badge>span:last-child{font-size:6px}
  #ohama-taiko .tk-hero-bottom{left:24px;
  right:24px;
  bottom:21px;
  font-size:10px}
  #ohama-taiko .tk-scroll-cue{font-size:8px;
  gap:6px}
  #ohama-taiko .tk-hero-location{display:none}
  #ohama-taiko .tk-ribbon{height:45px}
  #ohama-taiko .tk-ribbon-track{font-size:19px;
  gap:25px}
  #ohama-taiko .tk-ribbon-track span{font-size:24px}
  #ohama-taiko .tk-section{padding:75px 24px}
  #ohama-taiko .tk-chapter{font-size:10px;
  letter-spacing:.13em;
  margin-bottom:20px}
  #ohama-taiko .tk-eyebrow{font-size:11px}
  #ohama-taiko h2{font-size:32px;
  line-height:1.65}
  #ohama-taiko .tk-intro-top{text-align:left;
  padding-top:0}
  #ohama-taiko .tk-intro-top h2{font-size:27px}
  #ohama-taiko .tk-intro-top .tk-eyebrow{margin-bottom:15px}
  #ohama-taiko .tk-intro-mascot{width:87px;
  right:-3px;
  top:-15px}
  #ohama-taiko .tk-intro-bubble{display:none}
  #ohama-taiko .tk-facts{margin:38px -5px 65px;
  gap:4px}
  #ohama-taiko .tk-facts span{font-size:9px;
  white-space:nowrap}
  #ohama-taiko .tk-facts strong{font-size:45px;
  line-height:1.6}
  #ohama-taiko .tk-facts small{font-size:12px;
  margin-left:2px}
  #ohama-taiko .tk-intro-story{grid-template-columns:1fr;
  gap:44px}
  #ohama-taiko .tk-intro-picture{max-width:380px;
  margin:0 22px;
  transform:rotate(-4deg)}
  #ohama-taiko .tk-intro-picture img{aspect-ratio:1.15;
  border-radius:150px 150px 20px 20px}
  #ohama-taiko .tk-intro-picture figcaption{font-size:8px}
  #ohama-taiko .tk-intro-copy{padding:5px 8px 35px}
  #ohama-taiko .tk-intro-copy h3{font-size:29px;
  margin-bottom:22px}
  #ohama-taiko .tk-intro-copy p{font-size:14px}
  #ohama-taiko .tk-intro-wink{width:110px;
  bottom:-20px;
  right:0}
  #ohama-taiko .tk-crunch-scene{height:135svh}
  #ohama-taiko .tk-crunch-sticky{min-height:600px}
  #ohama-taiko .tk-crunch-photo{object-position:51% center}
  #ohama-taiko .tk-crunch-shade{background:linear-gradient(180deg,#28110894,transparent 70%),linear-gradient(0deg,#291c1399,transparent 60%)}
  #ohama-taiko .tk-crunch-copy{top:14%;
  left:7%}
  #ohama-taiko .tk-crunch-copy h2{font-size:44px}
  #ohama-taiko .tk-crunch-copy p{font-size:14px;
  margin-top:25px}
  #ohama-taiko .tk-giant-24{font-size:200px;
  right:6%;
  bottom:13%}
  #ohama-taiko .tk-giant-24 span{font-size:8px}
  #ohama-taiko .tk-crunch-caption{font-size:10px;
  left:7%;
  bottom:35px}
  #ohama-taiko .tk-section-heading{display:block;
  margin-bottom:25px}
  #ohama-taiko .tk-section-heading p{font-size:14px;
  margin-top:20px}
  #ohama-taiko .tk-flavor-list[data-slot]{grid-template-columns:repeat(2,1fr);
  gap:0;
  margin-bottom:28px;
  border-top:1px solid #cfb896}
  #ohama-taiko .tk-flavor-list [data-slot=tabs-trigger]{font-size:13px;
  padding:16px 5px;
  min-height:55px}
  #ohama-taiko .tk-flavor-panel{grid-template-columns:1fr;
  gap:28px}
  #ohama-taiko .tk-flavor-photo{border-radius:120px 120px 17px 17px}
  #ohama-taiko .tk-flavor-photo>img{aspect-ratio:1.17;
  object-position:center}
  #ohama-taiko .tk-flavor-number{font-size:29px}
  #ohama-taiko .tk-flavor-description h3{font-size:28px;
  margin:12px 0}
  #ohama-taiko .tk-flavor-description h4{font-size:17px}
  #ohama-taiko .tk-flavor-description p{font-size:14px}
  #ohama-taiko .tk-flavor-package{margin:20px 0}
  #ohama-taiko .tk-flavor-package img{width:135px}
  #ohama-taiko .tk-flavor-description .tk-pill{width:100%;
  font-size:14px;
  min-height:57px}
  #ohama-taiko .tk-taiko-movie{grid-template-columns:1fr;
  gap:45px;
  padding-bottom:100px}
  #ohama-taiko .tk-taiko-movie h2{font-size:30px}
  #ohama-taiko .tk-movie-intro p{font-size:14px}
  #ohama-taiko .tk-movie-stage{padding:9px 9px 12px}
  #ohama-taiko .tk-movie-tag{font-size:11px;
  padding:9px 16px}
  #ohama-taiko .tk-movie-duration{font-size:9px;
  margin-top:12px}
  #ohama-taiko .tk-movie-mascot{width:100px;
  right:5%;
  bottom:8px}
  #ohama-taiko .tk-howto-heading{text-align:left}
  #ohama-taiko .tk-howto-heading h2{font-size:32px}
  #ohama-taiko .tk-howto-heading p{font-size:14px}
  #ohama-taiko .tk-howto-chef{width:105px;
  left:auto;
  right:-8px;
  bottom:50px;
  transform:rotate(10deg)}
  #ohama-taiko .tk-howto-steps{grid-template-columns:1fr;
  gap:28px;
  margin-top:42px}
  #ohama-taiko .tk-step{padding:24px 0 0 75px;
  min-height:180px}
  #ohama-taiko .tk-step-num{font-size:50px;
  position:absolute;
  top:24px;
  left:0}
  #ohama-taiko .tk-step-en{font-size:9px;
  margin:0 0 10px}
  #ohama-taiko .tk-step h3{font-size:24px;
  margin-bottom:10px;
  line-height:1.5}
  #ohama-taiko .tk-step h3 br{display:none}
  #ohama-taiko .tk-step p{font-size:14px}
  #ohama-taiko .tk-howto-note{font-size:11px}
  #ohama-taiko .tk-snack-photo{margin-top:35px;
  border-radius:17px}
  #ohama-taiko .tk-snack-photo img{aspect-ratio:1.2;
  object-position:56% center}
  #ohama-taiko .tk-snack-photo span{font-size:23px;
  left:7%;
  top:12%;
  text-shadow:0 0 15px #fff}
  #ohama-taiko .tk-mitoyo{grid-template-columns:1fr;
  gap:55px;
  padding-bottom:100px}
  #ohama-taiko .tk-mitoyo h2{font-size:34px}
  #ohama-taiko .tk-mitoyo-copy p{font-size:14px;
  margin-top:25px}
  #ohama-taiko .tk-mitoyo-copy>.tk-handwritten{font-size:18px;
  margin-top:27px}
  #ohama-taiko .tk-bus-photo{max-width:270px;
  margin:0 20px;
  padding:18px}
  #ohama-taiko .tk-wanted{font-size:43px}
  #ohama-taiko .tk-bus-photo>img{aspect-ratio:1/1.13}
  #ohama-taiko .tk-bus-mascot{width:130px;
  right:-42px;
  bottom:-45px}
  #ohama-taiko .tk-shop-head{text-align:left;
  margin-bottom:35px}
  #ohama-taiko .tk-shop-head h2{font-size:30px}
  #ohama-taiko .tk-shop-head p{font-size:14px}
  #ohama-taiko .tk-shop-grid{grid-template-columns:1fr;
  gap:38px}
  #ohama-taiko .tk-shop-video{margin:0 5px}
  #ohama-taiko .tk-shop-info{padding-top:10px}
  #ohama-taiko .tk-shop-label{font-size:12px}
  #ohama-taiko .tk-shop-info h3{font-size:24px}
  #ohama-taiko .tk-shop-info h3>b{font-size:74px}
  #ohama-taiko .tk-shop-info h3 small{font-size:26px}
  #ohama-taiko .tk-set-equation{gap:20px}
  #ohama-taiko .tk-shop-info .tk-pill{font-size:14px}
  #ohama-taiko .tk-shop-info p{font-size:14px}
  #ohama-taiko .tk-shop-note{font-size:11px;
  line-height:1.7}
  #ohama-taiko .tk-faq{grid-template-columns:1fr;
  gap:26px}
  #ohama-taiko .tk-faq-heading{position:relative}
  #ohama-taiko .tk-faq h2{font-size:24px}
  #ohama-taiko .tk-faq-heading>.tk-mascot{position:absolute;
  width:85px;
  right:0;
  bottom:0;
  margin:0}
  #ohama-taiko .tk-faq-list [data-slot=accordion-trigger]{font-size:14px;
  padding:20px 0}
  #ohama-taiko .tk-faq-list [data-slot=accordion-trigger] span{gap:14px}
  #ohama-taiko .tk-faq-list [data-slot=accordion-content]>div{padding-left:34px;
  font-size:13px}
  #ohama-taiko .tk-fixed-tools{right:14px;
  bottom:max(13px,env(safe-area-inset-bottom));
  gap:8px}
  #ohama-taiko .tk-floating-shop{font-size:11px;
  padding:15px 17px;
  gap:10px}
  #ohama-taiko .tk-motion-toggle{width:34px;
  height:34px}
  #ohama-taiko .tk-pill{padding:18px 25px}
  #ohama-taiko .tk-reveal.tk-visible{transition-duration:.6s}
}
@media(prefers-reduced-motion:reduce){
  html:has(#ohama-taiko){scroll-behavior:auto}
  #ohama-taiko *,#ohama-taiko *:before,#ohama-taiko *:after{animation:none!important;
  transition:none!important}
  #ohama-taiko .tk-reveal{opacity:1!important;
  transform:none!important}
  #ohama-taiko .tk-crunch-scene{height:100svh}
}
#ohama-taiko .tk-movie{aspect-ratio:9/16;
  max-height:610px}
#ohama-taiko .tk-movie-stage{width:min(100%,345px);
  justify-self:center}
#ohama-taiko .tk-shop-video{width:min(100%,335px);
  justify-self:center}
@media(max-width:760px){
  #ohama-taiko .tk-movie-stage{width:min(87%,315px)}
  #ohama-taiko .tk-shop-video{width:min(86%,305px)}
  #ohama-taiko .tk-movie-mascot{width:125px;
  bottom:25px}
}
#ohama-taiko .tk-mitoyo{overflow:hidden}
#ohama-taiko .tk-intro-copy p,#ohama-taiko .tk-flavor-description p,#ohama-taiko .tk-movie-intro p,#ohama-taiko .tk-step p,#ohama-taiko .tk-mitoyo-copy p,#ohama-taiko .tk-shop-info>p{font-size:16px}
#ohama-taiko .tk-chapter,#ohama-taiko .tk-eyebrow,#ohama-taiko .tk-hero-kicker,#ohama-taiko .tk-facts span,#ohama-taiko .tk-flavor-package span,#ohama-taiko .tk-howto-note,#ohama-taiko .tk-shop-label,#ohama-taiko .tk-shop-note,#ohama-taiko .tk-text-link,#ohama-taiko .tk-hero-bottom{font-size:12px}
@media(max-width:760px){
  #ohama-taiko .tk-hero-text p{font-size:15px}
  #ohama-taiko .tk-hero-kicker{font-size:11px}
  #ohama-taiko .tk-facts span{font-size:10px}
  #ohama-taiko .tk-chapter{font-size:11px}
  #ohama-taiko .tk-hero-bottom{font-size:10px}
  #ohama-taiko .tk-flavor-description p,#ohama-taiko .tk-intro-copy p,#ohama-taiko .tk-movie-intro p,#ohama-taiko .tk-howto-heading p,#ohama-taiko .tk-step p,#ohama-taiko .tk-mitoyo-copy p,#ohama-taiko .tk-shop-info>p{font-size:16px}
  #ohama-taiko .tk-faq-list [data-slot=accordion-content]>div{font-size:15px}
  #ohama-taiko .tk-howto-note,#ohama-taiko .tk-shop-note{font-size:12px}
}
#ohama-taiko .tk-flavor-shortcuts{display:flex;
  justify-content:center;
  gap:36px;
  flex-wrap:wrap;
  border-top:1px dashed #c9ad8d;
  margin-top:48px;
  padding-top:29px}
#ohama-taiko .tk-flavor-shortcuts a{display:flex;
  align-items:center;
  gap:13px;
  font-size:14px;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:7px}
#ohama-taiko .tk-flavor-shortcuts a:hover{color:var(--orange)}
#ohama-taiko .tk-seasonal{background:#f1eadf}
#ohama-taiko .tk-seasonal-heading{position:relative;
  margin-bottom:52px;
  padding-right:150px}
#ohama-taiko .tk-seasonal-heading p{font-size:16px;
  margin-top:22px}
#ohama-taiko .tk-seasonal-mascot{position:absolute;
  width:180px;
  right:1%;
  bottom:10px;
  animation:tk-bob 5s ease-in-out infinite}
#ohama-taiko .tk-seasonal-grid{display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:34px 25px}
#ohama-taiko .tk-seasonal-card{background:var(--season-color);
  border-radius:140px 140px 24px 24px;
  overflow:hidden;
  transition-delay:var(--delay)!important}
#ohama-taiko .tk-seasonal-card-image{position:relative;
  overflow:hidden}
#ohama-taiko .tk-seasonal-card-image img{width:100%;
  aspect-ratio:1.1;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.2,.7,.25,1)}
#ohama-taiko .tk-seasonal-card:hover .tk-seasonal-card-image img{transform:scale(1.055)}
#ohama-taiko .tk-seasonal-badge{position:absolute;
  bottom:15px;
  right:15px;
  padding:8px 13px;
  border-radius:25px;
  background:#fff9ed;
  color:var(--orange);
  font-size:12px;
  font-weight:700}
#ohama-taiko .tk-seasonal-card-copy{padding:26px 25px 30px}
#ohama-taiko .tk-seasonal-card-copy .tk-eyebrow{font-size:12px;
  letter-spacing:.1em}
#ohama-taiko .tk-seasonal-card-copy h3{font-size:25px;
  margin:9px 0 12px;
  line-height:1.5}
#ohama-taiko .tk-seasonal-card-copy p{font-size:16px;
  line-height:1.9}
#ohama-taiko .tk-seasonal-availability{text-align:center;
  margin-top:45px}
#ohama-taiko .tk-seasonal-availability p{font-size:14px;
  margin-bottom:22px}
#ohama-taiko .tk-seasonal-availability .tk-pill{font-size:14px}
#ohama-taiko .tk-packages{background:#fff8e7;
  position:relative;
  overflow:hidden}
#ohama-taiko .tk-package-heading{text-align:center;
  margin-bottom:52px}
#ohama-taiko .tk-package-heading p{font-size:16px;
  margin-top:23px}
#ohama-taiko .tk-package-grid{display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:35px}
#ohama-taiko .tk-package-card{min-width:0}
#ohama-taiko .tk-package-image{background:var(--package-color);
  border-radius:25px;
  overflow:hidden;
  padding:27px 20px}
#ohama-taiko .tk-package-image img{width:100%;
  aspect-ratio:1.5;
  object-fit:contain;
  mix-blend-mode:multiply;
  transform:rotate(-3deg);
  transition:transform .5s}
#ohama-taiko .tk-package-card:nth-child(even) .tk-package-image img{transform:rotate(3deg)}
#ohama-taiko .tk-package-card:hover .tk-package-image img{transform:rotate(0) scale(1.045)}
#ohama-taiko .tk-package-card figcaption{display:flex;
  gap:15px;
  align-items:center;
  padding:23px 4px 10px}
#ohama-taiko .tk-package-index{font:italic 36px Georgia;
  color:var(--orange)}
#ohama-taiko .tk-package-card .tk-eyebrow{font-size:12px;
  letter-spacing:.08em}
#ohama-taiko .tk-package-card h3{font-size:23px;
  margin-top:5px}
#ohama-taiko .tk-package-caption{margin-left:auto;
  font-size:12px;
  writing-mode:vertical-rl;
  letter-spacing:.06em}
#ohama-taiko .tk-package-signoff{display:flex;
  align-items:center;
  justify-content:center;
  gap:25px;
  margin-top:45px}
#ohama-taiko .tk-package-signoff .tk-mascot{width:120px;
  transform:rotate(-8deg)}
#ohama-taiko .tk-package-signoff>span{font-size:19px;
  font-weight:800;
  line-height:1.8;
  transform:rotate(-4deg)}
@media(max-width:1050px){
  #ohama-taiko .tk-seasonal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #ohama-taiko .tk-seasonal-card{border-radius:155px 155px 24px 24px}
  #ohama-taiko .tk-package-caption{display:none}
  #ohama-taiko .tk-package-image{padding:22px 12px}
  #ohama-taiko .tk-package-card h3{font-size:21px}
}
@media(max-width:760px){
  #ohama-taiko .tk-flavor-shortcuts{justify-content:flex-start;
  gap:24px;
  margin-top:34px;
  padding-top:25px}
  #ohama-taiko .tk-flavor-shortcuts a{font-size:14px;
  line-height:1.8}
  #ohama-taiko .tk-seasonal-heading{padding-right:0;
  margin-bottom:38px}
  #ohama-taiko .tk-seasonal-heading h2{font-size:29px}
  #ohama-taiko .tk-seasonal-heading p{font-size:16px;
  padding-right:60px;
  margin-top:20px}
  #ohama-taiko .tk-seasonal-mascot{width:92px;
  bottom:-15px;
  right:-8px}
  #ohama-taiko .tk-seasonal-grid{grid-template-columns:1fr;
  gap:30px}
  #ohama-taiko .tk-seasonal-card{border-radius:140px 140px 23px 23px}
  #ohama-taiko .tk-seasonal-card-image img{aspect-ratio:1.3}
  #ohama-taiko .tk-seasonal-card-copy{padding:23px 24px 28px}
  #ohama-taiko .tk-seasonal-card-copy h3{font-size:26px}
  #ohama-taiko .tk-seasonal-card-copy p{font-size:16px}
  #ohama-taiko .tk-seasonal-badge{bottom:13px;
  right:13px}
  #ohama-taiko .tk-seasonal-availability p{font-size:14px;
  text-align:left}
  #ohama-taiko .tk-seasonal-availability .tk-pill{font-size:13px;
  padding:18px 20px;
  gap:14px;
  width:100%}
  #ohama-taiko .tk-package-heading{text-align:left;
  margin-bottom:35px}
  #ohama-taiko .tk-package-heading h2{font-size:30px}
  #ohama-taiko .tk-package-grid{grid-template-columns:1fr;
  gap:25px}
  #ohama-taiko .tk-package-image{padding:20px 13px;
  border-radius:20px}
  #ohama-taiko .tk-package-card figcaption{padding:18px 5px 5px;
  gap:13px}
  #ohama-taiko .tk-package-card h3{font-size:23px}
  #ohama-taiko .tk-package-index{font-size:35px}
  #ohama-taiko .tk-package-caption{display:block;
  font-size:12px}
  #ohama-taiko .tk-package-signoff{gap:17px;
  margin-top:38px}
  #ohama-taiko .tk-package-signoff .tk-mascot{width:105px}
  #ohama-taiko .tk-package-signoff>span{font-size:17px}
}
#ohama-taiko .tk-hero-motion{display:none}
@media(max-width:760px){
  #ohama-taiko .tk-intro{overflow:hidden}
  #ohama-taiko .tk-mitoyo{grid-template-columns:minmax(0,1fr)}
  #ohama-taiko .tk-mitoyo-copy{min-width:0}
  #ohama-taiko .tk-bus-photo{width:calc(100% - 40px);
  max-width:270px;
  min-width:0}
  #ohama-taiko .tk-hero-cta{width:calc(100% - 58px);
  gap:13px;
  padding:18px;
  font-size:14px;
  white-space:nowrap;
  min-height:58px}
  #ohama-taiko .tk-hero-motion{display:grid;
  place-items:center;
  position:absolute;
  top:660px;
  right:0;
  width:46px;
  height:58px;
  border:1px solid #9d722f;
  background:#ffe37b;
  border-radius:26px;
  color:var(--ink);
  pointer-events:auto}
  #ohama-taiko .tk-fixed-tools{left:14px;
  right:14px;
  gap:10px;
  transition:transform .28s ease,opacity .28s ease}
  #ohama-taiko .tk-fixed-tools .tk-motion-toggle{width:44px;
  height:44px;
  flex-shrink:0}
  #ohama-taiko .tk-floating-shop{flex:1;
  justify-content:center;
  min-height:52px;
  font-size:12px;
  padding:14px 12px;
  gap:8px}
  #ohama-taiko:not([data-sticky-shop=visible]) .tk-fixed-tools{transform:translateY(130%);
  opacity:0;
  visibility:hidden;
  pointer-events:none}
  #ohama-taiko .tk-seasonal-heading h2{font-size:clamp(25px,7.3vw,29px)}
  #ohama-taiko .tk-seasonal-heading p{padding-right:45px}
  #ohama-taiko .tk-seasonal-mascot{width:78px;
  right:-3px;
  bottom:-12px}
  #ohama-taiko .tk-howto-chef{right:0}
  #ohama-taiko .tk-mitoyo h2{font-size:clamp(28px,8vw,34px)}
}
@media(max-width:359px){
  #ohama-taiko .tk-hero{padding-left:20px;
  padding-right:20px}
  #ohama-taiko .tk-hero h1{font-size:40px}
  #ohama-taiko .tk-hero-bottom{left:20px;
  right:20px}
  #ohama-taiko .tk-hero-bottom>span{font-size:9px}
  #ohama-taiko .tk-scroll-cue{font-size:7px;
  letter-spacing:.08em}
  #ohama-taiko .tk-facts strong{font-size:40px}
  #ohama-taiko .tk-facts span{font-size:9px}
  #ohama-taiko .tk-facts small{font-size:11px}
  #ohama-taiko .tk-intro-top h2{font-size:24px}
  #ohama-taiko .tk-intro-mascot{width:70px;
  top:-10px}
  #ohama-taiko .tk-package-card h3{font-size:21px}
  #ohama-taiko .tk-package-caption{display:none}
  #ohama-taiko .tk-seasonal-availability .tk-pill{font-size:12px;
  gap:9px;
  padding:18px 15px}
}
@media(max-width:760px){
  #ohama-taiko .tk-seasonal-heading p{padding-right:75px}
  #ohama-taiko .tk-seasonal-mascot{width:65px;
  right:0;
  bottom:4px}
}
#ohama-taiko .tk-flavor-tabs{display:flex;
  flex-direction:column;
  gap:8px}
#ohama-taiko .tk-flavor-list [data-slot=tabs-trigger]{display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  transition:color .2s,border-color .2s}
#ohama-taiko .tk-faq-list [data-slot=accordion-item]{border-bottom:1px solid var(--border)}
#ohama-taiko .tk-faq-list [data-slot=accordion-item]:last-child{border-bottom:0}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger]{display:flex;
  width:100%;
  justify-content:space-between;
  gap:16px;
  text-align:left;
  border-radius:6px;
  font-weight:500;
  letter-spacing:normal;
  background:transparent}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger]:hover{text-decoration:underline}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger]>svg{flex-shrink:0;
  transition:transform .2s}
#ohama-taiko .tk-faq-list [data-slot=accordion-trigger][aria-expanded=true]>svg{transform:rotate(180deg)}
#ohama-taiko .tk-faq-list [data-slot=accordion-content]{overflow:hidden}
#ohama-taiko [role=tabpanel]:focus-visible{outline:3px solid #227179;
  outline-offset:6px}
@media(prefers-reduced-motion:reduce){
  #ohama-taiko .tk-reveal{opacity:1!important;
  transform:none!important}
}
