@charset "utf-8";

/* =========================================================
   1. base
   ========================================================= */

html {
  font-size: 100%;
  scroll-behavior: smooth;
  /* PCメインコンテンツ幅に応じた固定値。導出式: PC幅 ÷ (基準幅 / 16) = 520 ÷ 25.875 */
  font-size: 20.0966183575px;
}

body {
  -webkit-font-smoothing: antialiased;
  font-family: "Noto Sans JP", "Zen Kaku Gothic New", sans-serif;
  color: #231700;
}

em {
  font-style: normal;
}
li {
  list-style: none;
}
a {
  text-decoration: none;
  color: inherit;
}

img {
  width: 100%;
  height: auto;
}

/* スマホデザイン基準幅414pxの等倍流動（1rem = デザイン上の16px） */
@media screen and (max-width: 767.98px) {
  html {
    font-size: 3.8647342995vw;
  }
}

:where(.bz) img {
  width: 100%;
}

/* =========================================================
   2. PCシェル
   ========================================================= */

.bz {
}

/* PC背景（Figmaカンプ 1680×913 の全面背景） */
.bz:before {
  content: "";
  background-image: url(../img/pc-bg.webp);
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100vh;
  position: fixed;
  z-index: -1;
}



/* Figmaカンプ 1680px 基準:
   左エリア 0..840.833 / 中央 840.833..1370.833(530px) / 右 1370.833..1680
   → flexの伸長比 840.833 : 309.167 = 2.71956 : 1 */
.bz__inner {
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1920px;
  margin-inline: auto;
}

.bz-pc-logo {
  /* Figma: x=28 y=26 w=381 h=40（1680px基準） */
  position: fixed;
  top: 26px;
  left: 1.6667vw;
  width: min(380px, 22.619vw);
  z-index: 9999;
}
.bz-pc-logo__ttl {
}
.bz-pc-logo__img {
}

/* 左カラム: カラム自体を height:100vh の sticky にし、内側をFlexで縦中央配置 */
.bz-pc-left {
  flex: 2.71956 1 0;
  min-width: 0;
  margin-right: 0;
  position: sticky;
  top: 0;
  align-self: flex-start;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 100vh;
}

.bz-pc-left__inner {
  position: relative;
  container-type: inline-size;
  /* パネル右端 771.7345 → 中央カラムまで 69.0985px（左カラム 840.833px比 8.21785%） */
  margin-right: 8.21785%;
  /* Figmaパネル 518.6057×541.6462 / 縦横比 0.957462。
     4つの上限のmin: Figma実寸 / 画面幅比(518.6057÷1680) / カラムに収まる幅 / 画面高から逆算した幅 */
  width: min(
    518.6057px,
    30.8694vw,
    91.78215%,
    max(0px, calc((100vh - 80px) * 0.957462))
  );
}

.bz-content {
  flex: 0 0 530px;
  /* Figma: image 1201 y=70.4932 / border 5px #fff / radius 30px / shadow */
  margin-top: 70.4932px;
  border: 5px solid #fff;
  border-radius: 30px 30px 0 0;
  overflow: hidden;
  box-shadow: 0 0 46.5px 0 rgba(255, 255, 255, 0.2);
}

.bz-content__inner {
  width: 520px;
  margin-inline: auto;
  overflow: hidden;
  background-color: #fff;
}

.bz-content__inner > * {
  position: relative;
}

.bz-pc-right {
  flex: 1 1 0;
  min-width: 0;
  margin-left: 0;
  position: sticky;
  top: 0;
  align-self: flex-start;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}
.bz-pc-right__inner {
  position: relative;
}

/* 左右カラムは、左パネルが小さくなりすぎる幅で非表示にし中央カラムに寄せる */
@media screen and (max-width: 1059.98px) {
  .bz-pc-right {
    display: none;
  }

  .bz-pc-left {
    display: none;
  }

  .bz-pc-logo{
    display:none;
  }
}

/* SPシェル解除 */
@media screen and (max-width: 767.98px) {
  .bz {
  }

  .bz:before {
    background-image: none;
  }

  .bz:after {
    display: none;
  }

  .bz__inner {
    width: 100%;
    max-width: none;
    display: block;
  }

  .bz-pc-logo {
    display: none;
  }

  .bz-pc-left {
    display: none;
  }

  .bz-pc-left__inner {
  }

  .bz-content {
    margin-top: 0;
    margin-bottom: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .bz-content__inner {
    width: 100%;
  }

  .bz-pc-right {
    display: none;
  }

  .bz-pc-right__inner {
  }
}

/* =========================================================
   3. hover
   ========================================================= */

a {
  transition: 0.3s;
}
a:hover {
  transform: scale(1.03);
}
/* translateX(-50%) 済みの要素は打ち消さないよう個別に再指定 */
.nyaora-cta:hover {
  transform: translateX(-50%) scale(1.03);
}

/* =========================================================
   4. 共通パーツ（CTA / 原材料・成分表ボタン）
   ========================================================= */

/* --- CTAボタン（背景画像の上にabsoluteで重ねる） --- */
.nyaora-cta {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  /* cta-btn.webp の書き出し幅 387.51px（影込み） / 414px */
  width: 86.9565217391%;
  z-index: 2;
}
.nyaora-cta__img {
}

/* --- 原材料・成分表ボタン（タップでポップアップ） --- */
.nyaora-ingredient {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 31.48px;
  height: 1.9675rem;
  padding: 0;
  border: 1px solid #231700;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  transition: 0.3s;
  z-index: 2;
}
.nyaora-ingredient::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(155, 150, 139, 0.18);
  mix-blend-mode: multiply;
}


.bz-pc-left__ingredient.nyaora-ingredient::before{
  border-radius: 6.25rem; 
}

.nyaora-s1__ingredient.nyaora-ingredient::before{
  border-radius: 6.25rem;
}
.nyaora-ingredient:hover {
  opacity: 0.75;
}
.nyaora-ingredient__label {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 14.164px;
  font-size: 0.88525rem;
  line-height: 1.35;
  letter-spacing: 0.9915px;
  letter-spacing: 0.06196875rem;
  color: #231700;
}
.nyaora-ingredient__mark {
  position: absolute;
  right: 11.34px;
  right: 0.70875rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 14.164px;
  font-size: 0.88525rem;
  line-height: 1.35;
  letter-spacing: 0.9915px;
  letter-spacing: 0.06196875rem;
  color: #231700;
}

/* --- 商品情報セクションの白ボタン --- */
.nyaora-ingredient--light {
  height: 54.809px;
  height: 3.42556rem;
  border: 1.6px solid #fff;
  border: 0.1rem solid #fff;
  border-radius: 4px;
  border-radius: 0.25rem;
  background-color: rgba(255, 255, 255, 0.79);
}
.nyaora-ingredient--light::before {
  content: none;
}
.nyaora-ingredient--light .nyaora-ingredient__label {
  font-size: 18.164px;
  font-size: 1.13525rem;
  letter-spacing: 2.5429px;
  letter-spacing: 0.15893125rem;
}
.nyaora-ingredient--light .nyaora-ingredient__mark {
  right: 21.16px;
  right: 0.8225rem;
  font-size: 20.164px;
  font-size: 1.26025rem;
  letter-spacing: 1.4115px;
  letter-spacing: 0.08821875rem;
}

/* --- PC左パネル内のボタン（親パネル幅 518.6057px = 100cqw 基準） --- */
.nyaora-ingredient--pc {
  height: 25.123px;
  height: 4.84427cqw;
  border-width: 0.798px;
  border-width: 0.15387cqw;
}
.nyaora-ingredient--pc .nyaora-ingredient__label {
  font-size: 11.303px;
  font-size: 2.17954cqw;
  letter-spacing: 0.7912px;
  letter-spacing: 0.15256cqw;
}
.nyaora-ingredient--pc .nyaora-ingredient__mark {
  right: 8.368px;
  right: 1.61356cqw;
  font-size: 11.303px;
  font-size: 2.17954cqw;
  letter-spacing: 0.7912px;
  letter-spacing: 0.15256cqw;
}

/* --- PC左カラムの中身 --- */
.bz-pc-left__panel {
}
.bz-pc-left__panel-img {
}
.bz-pc-left__ingredient {
  /* Figma: x=432.055 y=549.573 w=266.490（パネル 253.129/185.813 起点） */
  left: 34.4972%;
  top: 72.8418cqw;
  width: 51.3856%;
  /* ウインドウリサイズ時のサイズ変更は即時、ホバーのopacityだけ維持 */
  transition-property: opacity;
  border-radius: 6.25rem;
}
.bz-pc-left__cta {
  /* Figma: btn bbox x=310.938 y=607.603 w=402.367（書き出しは影込み 439×132） */
  position: absolute;
  left: 11.2497%;
  top: 80.106cqw;
  width: 76.6473%;
  z-index: 2;
  /* ウインドウリサイズ時のサイズ変更は即時、ホバーのtransformだけ維持 */
  transition-property: transform;
}
.bz-pc-left__cta-img {
}

/* =========================================================
   5. セクション別CSS
   ========================================================= */

/* ---------- FV ---------- */
.nyaora-fv {
}
.nyaora-fv__inner {
  position: relative;
}
.nyaora-fv__01 {
}
.nyaora-fv__01-img {
}
.nyaora-fv__main {
  position: relative;
}
.nyaora-fv__02 {
}
.nyaora-fv__02-img {
}
.nyaora-fv__movie {
  position: absolute;
  /* Figma: x=65.1 y=214.1 w=284.2 h=355.3（FVブロック 414×725 基準） */
  left: 15.7246%;
  top: 28.731%;
  width: 68.6473%;
  height: 49.5069%;
  overflow: hidden;
  /* 窓のアーチ形マスク（Figma 111:129 のパス。HTML側のinline SVGを参照） */
  -webkit-clip-path: url(#nyaora-fv-arch);
  clip-path: url(#nyaora-fv-arch);
}
.nyaora-fv__movie-clip {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}
.nyaora-fv__movie-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.nyaora-fv__03 {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
.nyaora-fv__03-img {
}

/* ---------- s1: オファーカード（FV下） ---------- */
.nyaora-s1 {
}
.nyaora-s1__inner {
  position: relative;
}
.nyaora-s1__01,
.nyaora-s1__02,
.nyaora-s1__03,
.nyaora-s1__04,
.nyaora-s1__05,
.nyaora-s1__06 {
}
.nyaora-s1__ingredient {
  /* Figma: x=44.4 y=1468.3 w=326 h=31.5（セクション 775..1868） */
  top: 64.1309%;
  left: 10.7246%;
  width: 78.744%;
  border-radius: 6.25rem;
}
.nyaora-s1__cta {
  top: 83.6174%;
}

/* ---------- s2: 開発ストーリー ---------- */
.nyaora-s2 {
}
.nyaora-s2__inner {
}
.nyaora-s2__01,
.nyaora-s2__02,
.nyaora-s2__03,
.nyaora-s2__04,
.nyaora-s2__05,
.nyaora-s2__06 {
}
.nyaora-s2__03 {
  position: relative;
}
.nyaora-s2__03-video {
  position: absolute;
  top: 0;
  left: 50%;
  width: 22.799375rem;
  height: 13.5625rem;
  display: block;
  transform: translateX(-50%);
  border-radius: 1.25rem;
  background-color: #000;
  object-fit: cover;
}

/* ---------- s3: 獣医師も愛猫に選ぶ理由 ---------- */
.nyaora-s3 {
}
.nyaora-s3__inner {
}
.nyaora-s3__01,
.nyaora-s3__02,
.nyaora-s3__03 {
}
.nyaora-s3__03 {
  position: relative;
}
/* 動画枠（画像 nyaora-16.webp 1242×906 基準: x=90 y=14 w=1062 h=597 / 16:9） */
.nyaora-s3__03-video {
  position: absolute;
  left: 5.1464%;
  top: 0.1453%;
  width: 23.375rem;
  height: 12.9325rem;
  display: block;
  object-fit: cover;
  border-radius: 0.75rem;
  background-color: #000;
}

/* ---------- s4: 愛猫家のみなさまからの声（スライダー） ---------- */
.ugc-top,.ugc-top *{box-sizing:border-box;font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN',sans-serif;color:#2d2416}
.ugc-top{background:#F6F8FB;width:100%;padding:2.5rem 0 2.75rem}
.ugc-top-inner{max-width:75rem;margin:0 auto;padding:0 1.5rem}
.ugc-top-header{text-align:center;margin-bottom:1.5rem}
.ugc-top-title{font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(1.5rem,5.5vw,2.25rem);font-weight:900;letter-spacing:0.04em;color:#02084b;margin:0 0 0.5rem}
.ugc-top-sub{font-size:clamp(0.75rem,3vw,0.875rem);color:#7a6a55;line-height:1.8;font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',sans-serif;font-weight:500}
.ugc-scroll-hint{text-align: center;font-size:0.6875rem;color:#b08850;letter-spacing:0.08em;margin-bottom:0.625rem;padding-right:0.25rem}
.ugc-scroll-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0.25rem 1.5rem 0.75rem calc(1.5rem + 1rem);margin:0 -1.5rem 0 calc(-1.5rem + 1rem)}
.ugc-top-card{flex:0 0 min(16.25rem,72vw);scroll-snap-align:start;background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 0.125rem 0.875rem rgba(0,0,0,0.07);display:flex;flex-direction:column;transition:transform 0.2s ease,box-shadow 0.2s ease}
.ugc-top-card:hover{transform:translateY(-0.1875rem);box-shadow:0 0.5rem 1.5rem rgba(0,0,0,0.11)}
.ugc-top-video{position:relative;display:block;width:100%;aspect-ratio:4/5;background:#1a1a1a;overflow:hidden;cursor:pointer;text-decoration:none}
.ugc-top-video.is-playing{pointer-events:none}
.ugc-yt-mount{position:absolute;inset:0;z-index:2}
.ugc-top-video iframe{position:absolute;top:50%;left:0;width:100%;height:222.3%;transform:translateY(-50%);border:none;z-index:2}
.ugc-play{transition:opacity 0.3s ease}
.ugc-thumb{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:3;transition:opacity 0.3s ease}
.ugc-thumb.hidden{opacity:0;pointer-events:none}
.ugc-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3rem;height:3rem;background:rgba(0,0,0,0.65);border-radius:50%;z-index:4;display:flex;align-items:center;justify-content:center;transition:opacity 0.3s ease;pointer-events:none}
.ugc-play::after{content:'';display:block;width:0;height:0;border-style:solid;border-width:0.5625rem 0 0.5625rem 1rem;border-color:transparent transparent transparent #fff;margin-left:0.25rem}
.ugc-play.hidden{opacity:0}
.ugc-top-tags{display:flex;gap:0.375rem;flex-wrap:wrap;padding:0.5625rem 0.75rem 0.1875rem}
.ugc-top-tag{font-size:0.625rem;padding:0.1875rem 0.5625rem;border-radius:1.25rem;font-weight:500;background:#f0e8d8;color:#7a5c2e}
.ugc-top-tag.age{background:#eaf0fb;color:#4a6fa5}
.ugc-top-tag.sex-girl{background:#fdeef2;color:#c0708c}
.ugc-top-tag.sex-boy{background:#e9f3fa;color:#3f7ba5}
.ugc-top-headline{font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',sans-serif;font-weight:500;font-size:0.875rem;line-height:1.55;color:#02084b;padding:0.3125rem 0.75rem 0;margin:0}
.ugc-top-comment-wrap{padding:0.25rem 0.75rem 0;flex:1;display:flex;flex-direction:column}
.ugc-top-comment{font-size:0.71875rem;line-height:1.7;color:#3d3020;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ugc-top-comment.expanded{display:block;overflow:visible;-webkit-line-clamp:unset}
.ugc-read-more{font-size:0.6875rem;color:#b08850;background:none;border:none;cursor:pointer;padding:0.1875rem 0 0.4375rem;font-family:'Noto Sans JP',sans-serif;display:block;text-align:left;min-height:1.375rem}
.ugc-read-more:hover{text-decoration:underline}
.ugc-top-footer{border-top:0.0625rem solid #f0e8d8;padding:0.4375rem 0.75rem;display:flex;align-items:center;gap:0.5rem}
.ugc-top-avatar{width:1.625rem;height:1.625rem;border-radius:50%;background:#f0e8d8;display:flex;align-items:center;justify-content:center;font-size:0.875rem;flex-shrink:0}
.ugc-top-dog{font-size:0.6875rem;color:#7a6a55}
.ugc-top-stars{margin-left:auto;color:#e0a030;font-size:0.6875rem;letter-spacing:0.0625rem}
.ugc-scroll-track::-webkit-scrollbar{display:none}
@supports not (aspect-ratio:4/5){
.ugc-top-video{height:0;padding-top:125%}
}
@media (prefers-reduced-motion:reduce){
.ugc-top-card,.ugc-top-card:hover{transition:none;transform:none}
.ugc-thumb,.ugc-play{transition:none}
}
@media (min-width:48.0625rem){
.ugc-top-card{flex:0 0 17.5rem}
.ugc-top-headline{font-size:0.9375rem}
.ugc-top-comment{font-size:0.78125rem;line-height:1.8}
.ugc-top-dog{font-size:0.71875rem}
.ugc-scroll-hint{text-align:center;padding-right:0}
.ugc-scroll-track{scrollbar-width:thin;scrollbar-color:#cbd4e3 transparent}
.ugc-scroll-track::-webkit-scrollbar{display:block;height:0.5rem}
.ugc-scroll-track::-webkit-scrollbar-track{background:transparent}
.ugc-scroll-track::-webkit-scrollbar-thumb{background:#cbd4e3;border-radius:0.25rem}
}

/* ---------- s5: 猫は完全肉食動物 ---------- */
.nyaora-s5 {
}
.nyaora-s5__inner {
}
.nyaora-s5__01,
.nyaora-s5__02,
.nyaora-s5__03,
.nyaora-s5__04,
.nyaora-s5__05,
.nyaora-s5__06,
.nyaora-s5__07 {
}

/* ---------- s6: ニュージーランドの牧草牛 ---------- */
.nyaora-s6 {
}
.nyaora-s6__inner {
}
.nyaora-s6__01,
.nyaora-s6__02,
.nyaora-s6__03,
.nyaora-s6__04,
.nyaora-s6__05,
.nyaora-s6__06,
.nyaora-s6__07,
.nyaora-s6__08,
.nyaora-s6__09,
.nyaora-s6__10 {
}

/* ---------- s7: 吸収を高める3段階設計 ---------- */
.nyaora-s7 {
}
.nyaora-s7__inner {
}
.nyaora-s7__01,
.nyaora-s7__02,
.nyaora-s7__03,
.nyaora-s7__04,
.nyaora-s7__05,
.nyaora-s7__06,
.nyaora-s7__07 {
}

/* ---------- s8: 消化吸収が高いと何がいい？ ---------- */
.nyaora-s8 {
}
.nyaora-s8__inner {
}
.nyaora-s8__01,
.nyaora-s8__02,
.nyaora-s8__03 {
}

/* ---------- s9: 厳選した素材 ---------- */
.nyaora-s9 {
}
.nyaora-s9__inner {
}
.nyaora-s9__list {
}
.nyaora-s9__01,
.nyaora-s9__02,
.nyaora-s9__03,
.nyaora-s9__04,
.nyaora-s9__05,
.nyaora-s9__06 {
}

/* ---------- s10: 毎日の健康はあなたの選択 ---------- */
.nyaora-s10 {
}
.nyaora-s10__inner {
}
.nyaora-s10__01,
.nyaora-s10__02,
.nyaora-s10__03,
.nyaora-s10__04 {
}

/* ---------- s11: 発売記念 特別キャンペーン ---------- */
.nyaora-s11 {
}
.nyaora-s11__inner {
  position: relative;
}
.nyaora-s11__01,
.nyaora-s11__02,
.nyaora-s11__03,
.nyaora-s11__04,
.nyaora-s11__05,
.nyaora-s11__06,
.nyaora-s11__07,
.nyaora-s11__08,
.nyaora-s11__09,
.nyaora-s11__10 {
}
.nyaora-s11__ingredient-a {
  /* Figma: x=43.9 y=13776.3 w=326（セクション 12205..14128） */
  top: 44.876%;
  left: 10.6039%;
  width: 78.744%;
  border-radius: 6.25rem;
}

.nyaora-s11__ingredient-a.nyaora-ingredient::before{
  border-radius: 6.25rem;
}
.nyaora-s11__ingredient-b {
  /* Figma: x=35.5 y=14389.7 w=345 */
  top: 67.874%;
  left: 8.5749%;
  width: 83.3333%;
}
.nyaora-s11__cta {
  top: 88.4138%;
}

/* ---------- s12: 他社比較 ---------- */
.nyaora-s12 {
}
.nyaora-s12__inner {
  position: relative;
}
.nyaora-s12__01,
.nyaora-s12__02 {
}
.nyaora-s12__table {
  position: absolute;
  /* Figma: 比較表の書き出し上端 y=15117.5（セクション 14128..15320） */
  top: 17.1148%;
  left: 0;
  width: 100%;
  z-index: 2;
}
.nyaora-s12__table-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.nyaora-s12__table-inner {
  width: max-content;
  padding-inline: 16.2px;
  padding-inline: 1.0125rem;
}
.nyaora-s12__table-img {
  /* hyo.webp の書き出し幅 585px */
  width: 475.91px;
  width: 29.744375rem;
  max-width: none;
}

/* ---------- s13: ニュージーランドの食品基準 ---------- */
.nyaora-s13 {
}
.nyaora-s13__inner {
}
.nyaora-s13__list {
}
.nyaora-s13__01,
.nyaora-s13__02,
.nyaora-s13__03,
.nyaora-s13__04,
.nyaora-s13__05,
.nyaora-s13__06,
.nyaora-s13__07 {
}

/* ---------- s14: よろこびの声 ---------- */
.nyaora-s14 {
}
.nyaora-s14__inner {
}
.nyaora-s14__list {
}
.nyaora-s14__item {
}
.nyaora-s14__media {
  position: relative;
}
.nyaora-s14__video {
  position: absolute;
  top: 0.75rem;
  right: 2rem;
  bottom: 0;
  left: 2rem;
  width: 21.676875rem;
  height: 14.28125rem;
  border-radius: 0.9125rem;
  object-fit: cover;
}
.nyaora-s14__media--third .nyaora-s14__video {
  top: 1.75rem;
  height: calc(100% - 1.75rem);
}
.nyaora-s14__name {
  position: absolute;
  bottom: 0.3rem;
  left: 2.5rem;
  width: auto;
  height: 2.25rem;
  max-width: calc(100% - 5rem);
  object-fit: contain;
}
.nyaora-s14__01,
.nyaora-s14__02,
.nyaora-s14__03,
.nyaora-s14__04,
.nyaora-s14__05,
.nyaora-s14__06,
.nyaora-s14__07,
.nyaora-s14__08,
.nyaora-s14__09,
.nyaora-s14__10,
.nyaora-s14__11,
.nyaora-s14__12 {
}

/* ---------- s15: 3大特典 ---------- */
.nyaora-s15 {
}
.nyaora-s15__inner {
}
.nyaora-s15__01,
.nyaora-s15__02,
.nyaora-s15__03,
.nyaora-s15__04,
.nyaora-s15__05,
.nyaora-s15__06,
.nyaora-s15__07 {
}

/* ---------- s16: 初回限定プレゼント＋CTA ---------- */
.nyaora-s16 {
}
.nyaora-s16__inner {
  position: relative;
}
.nyaora-s16__01 {
}
.nyaora-s16__cta {
  /* Figma: x=18.2 y=20268.9 w=377.5（セクション 19300..19580） */
  top: 55.3532%;
}

/* ---------- s17: NYAORAの与え方 ---------- */
.nyaora-s17 {
}
.nyaora-s17__inner {
}
.nyaora-s17__01,
.nyaora-s17__02,
.nyaora-s17__03,
.nyaora-s17__04,
.nyaora-s17__05,
.nyaora-s17__06 {
}

/* ---------- s18: 保護猫支援活動 ---------- */
.nyaora-s18 {
}
.nyaora-s18__inner {
}
.nyaora-s18__01,
.nyaora-s18__02,
.nyaora-s18__03 {
}

/* ---------- s19: よくあるご質問 ---------- */
.nyaora-s19 {
}
.nyaora-s19__inner {
}
.nyaora-s19__01,
.nyaora-s19__02 {
}

.nyaora-faq {
  /* 上: ピンクの透明ノイズ／下: 下地グラデーション */
  background-image: url(../img/faq-bg-pink.webp),
    linear-gradient(180deg, #fae8ea 0%, #ffede9 100%);
  background-repeat: repeat, no-repeat;
  background-size: 50px 50px, 100% 100%;
  /* ノイズ素材側に透明度が含まれているため、通常合成にする */
  background-blend-mode: normal, normal;
  padding-top: 11px;
  padding-top: 0.6875rem;
  padding-bottom: 38.1px;
  padding-bottom: 2.38125rem;
}
.nyaora-faq__ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-size: 37.511px;
  font-size: 2.34444rem;
  line-height: 1.3;
  letter-spacing: 3.7511px;
  letter-spacing: 0.23444rem;
  text-align: center;
  color: #231700;
  margin-bottom: 24.45px;
  margin-bottom: 1.52813rem;
}
.nyaora-faq__list {
}
.nyaora-faq__item {
  position: relative;
  width: 364px;
  width: 22.75rem;
  margin-inline: auto;
  background-color: #fff;
  border-radius: 10px;
  border-radius: 0.625rem;
}
.nyaora-faq__item + .nyaora-faq__item {
  margin-top: 9px;
  margin-top: 0.5625rem;
}
.nyaora-faq__q {
  position: relative;
  display: block;
  list-style: none;
  cursor: pointer;
  padding: 23.2px 47px 23.2px 45.19px;
  padding: 1.45rem 2.9375rem 1.45rem 2.824375rem;
}
.nyaora-faq__q::-webkit-details-marker {
  display: none;
}
.nyaora-faq__item[open] > .nyaora-faq__q {
  padding-bottom: 18.8px;
  padding-bottom: 1.175rem;
}
.nyaora-faq__q-icon {
  position: absolute;
  left: 10.71px;
  left: 0.969375rem;
  top: 13.4px;
  top: 0.8375rem;
  width: 41.67px;
  width: 2.604375rem;
  height: auto;
  z-index: 0;
}
.nyaora-faq__q-text {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 17px;
  font-size: 1.0625rem;
  line-height: 1.4706;
  letter-spacing: 1.36px;
  letter-spacing: 0.085rem;
  color: #231700;
  position: relative;
}
.nyaora-faq__mark {
  position: absolute;
  top: 23.2px;
  top: 1.45rem;
  right: 19.29px;
  right: 1.205625rem;
  width: 18px;
  width: 1.125rem;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.3889;
  color: #231700;
}
.nyaora-faq__mark::before {
  content: "＋";
}
.nyaora-faq__item[open] .nyaora-faq__mark::before {
  content: "−";
}
.nyaora-faq__a {
  padding: 0 19.85px 15.64px 23.41px;
  padding: 0 1.240625rem 0.9775rem 1.463125rem;
}
.nyaora-faq__a p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
  letter-spacing: 0.56px;
  letter-spacing: 0.035rem;
  color: #231700;
}

/* ---------- s20: 商品情報 ---------- */
.nyaora-s20 {
}
.nyaora-s20__inner {
  position: relative;
}
.nyaora-s20__01,
.nyaora-s20__02 {
}
.nyaora-s20__ingredient-a {
  /* Figma: x=25.25 y(Frame664 local)=606.5 w=363.805（セクション 21509..22228） */
  top: 78.2893%;
  left: 6.099%;
  width: 87.8756%;
}
.nyaora-s20__ingredient-b {
  /* Figma: x=25.25 y(Frame664 local)=668.4 w=363.805 */
  top: 86.8985%;
  left: 6.099%;
  width: 87.8756%;
}

/* ---------- s21: 最終オファー ---------- */
.nyaora-s21 {
}
.nyaora-s21__inner {
  position: relative;
}
.nyaora-s21__01,
.nyaora-s21__02,
.nyaora-s21__03,
.nyaora-s21__04 {
}
.nyaora-s21__ingredient {
  /* Figma: x=34.6 y=24800.7 w=345（セクション 22228..22885） */
  top: 78.9295%;
  left: 8.3575%;
  width: 83.3333%;
}

/* ---------- footer ---------- */
.nyaora-footer {
}
.nyaora-footer__inner {
  position: relative;
}
.nyaora-footer__01 {
}
.nyaora-footer__nav {
  position: absolute;
  /* Figma: x=59.51 y=25017.52（セクション 22885..23127） */
  top: 51.124%;
  left: 14.3744%;
}
.nyaora-footer__link {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 13.132px;
  font-size: 0.820750rem;
  line-height: 1.4;
  letter-spacing: 0.9193px;
  letter-spacing: 0.05745625rem;
  color: #000;
  width: fit-content;
  transform-origin: left center;
}

.nyaora-footer__link:hover{
  opacity:0.6;
  transform:scale(1);
}
.nyaora-footer__link + .nyaora-footer__link {
  margin-top: 8.06px;
  margin-top: 0.50375rem;
}
.nyaora-footer__copy {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 9.923px;
  font-size: 0.62019rem;
  line-height: 1.4;
  letter-spacing: 0.8931px;
  letter-spacing: 0.05581875rem;
  color: #000;
  margin-top: 11.66px;
  margin-top: 1.3125rem;
}

/* =========================================================
   6. 原材料・成分表 ポップアップ
   TODO: 中身のデザイン・原稿が未支給。支給後に体裁を調整する
   ========================================================= */

.nyaora-popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
}
.nyaora-popup[hidden] {
  display: none;
}
.nyaora-popup__overlay {
  position: absolute;
  inset: 0;
  background-color: rgb(40 40 40 / 60%);
  cursor: pointer;
}
.nyaora-popup__dialog {
  position: relative;
  width: 100%;
  max-width: 23.75rem;
  max-height: 83vh;
}
.nyaora-popup__modal {
  position: relative;
  width: 100%;
  max-width: none;
  max-height: 80vh;
  overflow-y: auto;
  background-color: #fff;
  border-radius: 0.75rem;
  padding: 2.25rem 1.5rem 1.75rem;
}
.nyaora-popup__close {
  position: absolute;
  z-index: 1;
  top: -3.5rem;
  right: 0;
  width: 2.75rem;
  height: 2.75rem;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  transition: 0.3s;
}
.nyaora-popup__close:hover {
  opacity: 0.6;
}
.nyaora-popup__close::before,
.nyaora-popup__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.75rem;
  height: 1px;
  background-color: #fff;
}
.nyaora-popup__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.nyaora-popup__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* PCでは背景に対してポップアップが小さく見えないよう横幅を広げる */
@media screen and (min-width: 768px) {
  .nyaora-popup__dialog {
    max-width: min(52rem, calc(100vw - 5rem));
  }
  .nyaora-popup__modal {
    padding: 4rem 4.5rem 3rem;
  }
}
.nyaora-popup__ttl {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.4;
  letter-spacing: 0.0625rem;
  text-align: center;
  color: #231700;
  margin-bottom: 1.25rem;
}
.nyaora-popup__body {
}
.nyaora-popup__st {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-size: 0.9375rem;
  line-height: 1.5;
  letter-spacing: 0.0625rem;
  color: #231700;
  padding-bottom: 0.375rem;
  border-bottom: 1px solid #231700;
  margin-bottom: 0.75rem;
}
.nyaora-popup__st + .nyaora-popup__txt {
  margin-bottom: 1.5rem;
}
.nyaora-popup__txt {
  font-size: 0.8125rem;
  line-height: 1.7;
  letter-spacing: 0.03125rem;
  color: #231700;
  margin-bottom: 1.5rem;
}
.nyaora-popup__spec {
  font-size: 0.8125rem;
  line-height: 1.7;
  letter-spacing: 0.03125rem;
  color: #231700;
}
.nyaora-popup__row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.375rem 0;
  border-bottom: 1px dotted rgba(35, 23, 0, 0.3);
}
.nyaora-popup__row dt {
  font-weight: 500;
}
.nyaora-popup__row dd {
  text-align: right;
}

@media screen and (min-width: 768px) {
  .nyaora-popup__ttl {
    font-size: 1.35rem;
  }
  .nyaora-popup__st {
    font-size: 1rem;
  }
  .nyaora-popup__txt {
    font-size: 0.8125rem;
    line-height: 1.7;
  }
  .nyaora-popup__spec {
    font-size: 0.8125rem;
    line-height: 1.7;
  }
}

/* body固定（ポップアップ表示中） */
body.is-popup-open {
  overflow: hidden;
}

/* =========================================================
   7. PC微調整
   TODO: PCカンプ支給後に調整
   ========================================================= */

@media screen and (min-width: 768px) {
  .bz-content {
  }
}

/* =========================================================
   8. 追従ボタン（SPのみ / FV通過後にフェードイン）
   ========================================================= */

.nyaora-fix {
  position: fixed;
  left: 50%;
  
  /* fix-btn.webp の書き出し幅 387.67px（影込み） / 414px */
  bottom: 0.451875rem;
  transform: translateX(-50%);
  width: 87.884057971%;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.4s ease, visibility 0s linear 0.4s;
}

/* JSで .is-visible を付与してフェードイン */
.nyaora-fix.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.4s ease, visibility 0s linear 0s;
}

.nyaora-fix__btn {
  display: block;
  line-height: 0;
}
.nyaora-fix__img {
}

/* PCでは非表示（SPのみの仕様） */
@media screen and (min-width: 768px) {
  .nyaora-fix {
    display: none;
  }
}
