/* 夜tax LP スマホ下部の固定CTA：左＝既存の LINE ボタン（画像・リンク・動き・光はそのまま）／右＝固定の説明＋10秒で切り替わる補足（2026-10-25）
   ・表示の条件はテーマと同じ「screen and (max-width:640px)」（.sp_display）。新しい境界は作らない
   ・既存のボタンへの指定は配置（幅・余白）だけ。動き（nt-purun）・光（nt-shine）・角丸・影は lp-refresh.css の
     「footer .wrap-contact .group-btn a」がそのまま効く（.group-btn と a.btn-line の親子を残している）
   ・セーフエリアはバー側で1回だけ（lp-refresh.css の .nt-cta-bar と同じ指定）。本文下の余白はスペーサー1つ（テーマの 68px は外す） */
@media screen and (max-width:640px){
  footer .wrap-contact[data-nt-fixed-cta]{left:0;right:0;padding-bottom:env(safe-area-inset-bottom,0px)}
  /* 隠れているとき：テーマの bottom:-70px では 90px のバーがはみ出すので、実際の高さぶん下げる（出し入れは custom.js の .show のまま） */
  footer .wrap-contact[data-nt-fixed-cta]:not(.show){bottom:calc(-1 * var(--nt-fixed-cta-height, 120px) - 8px)}
  footer .wrap-contact[data-nt-fixed-cta].show{bottom:0}
  /* 横幅は 440px まで（中央）：640px 近くで LINE ボタンが 300px 超・バーが 125px になるのを防ぐ（320〜430px は画面いっぱい） */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__row{display:grid;grid-template-columns:minmax(138px,52fr) minmax(0,48fr);align-items:center;gap:12px;box-sizing:border-box;max-width:440px;margin:0 auto;padding:10px 12px}
  /* 左：既存の LINE ボタン。列の幅を使うための配置だけ（画像の縦横比はそのまま） */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__row > a.btn-line{display:block;width:100%;max-width:none;margin:0}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__row > a.btn-line img{display:block;width:100%;height:auto}
  /* 右：固定の説明＋補足＋停止／再開 */
  /* 字体：LP の本文指定（"Zen Maru Gothic",serif）は字体を読み込んでいないため明朝に落ちる。LP の既存部品（lp-refresh の nt- 部品・テーマの Yu Gothic 指定）と同じゴシックの並びにする */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info{display:grid;grid-template-columns:minmax(0,1fr) 32px;grid-template-areas:"lead lead" "head head" "msg ctrl";min-width:0;text-align:left;font-family:"Yu Gothic","YuGothic","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif}
  /* テーマの「footer p」（著作権の行：中央寄せ・余白・太字・白字・灰色の背景）をこのバーの中だけ打ち消す */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info p{margin:0;padding:0;background:none;text-align:left;font-weight:500;letter-spacing:normal}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info p.nt-fixed-cta__lead{grid-area:lead;font-size:11px;line-height:14px;color:#405d88}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info p.nt-fixed-cta__headline{grid-area:head;font-size:14px;line-height:20px;font-weight:700;color:#c7336d}
  /* 補足3つを同じセルに重ねる：見えない補足も高さの計算に入る（display:none・hidden は使わない）＝切り替えても高さが変わらない */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__messages{grid-area:msg;display:grid;min-width:0;margin-top:4px}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message{grid-area:1 / 1;visibility:hidden;pointer-events:none;min-width:0}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message.is-active{visibility:visible}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message p{font-size:11px;line-height:15px;color:#405d88}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__conditions{font-size:11px;color:#66738a}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message.is-entering{animation:nt-fixed-cta-in .12s ease-out}
  /* 停止／再開：見た目の印は小さく、押せる範囲は 44×44px（右の外側余白にはみ出させて文字の列を狭めない） */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__control{grid-area:ctrl;align-self:end;justify-self:end;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-7px -12px -10px 0;padding:0;border:0;background:transparent;color:#405d88;cursor:pointer;-webkit-tap-highlight-color:transparent}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__control[hidden]{display:none}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__control:focus-visible{outline:3px solid #2f3e58;outline-offset:-6px;border-radius:8px}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__icon{display:block;width:12px;height:12px}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  /* 本文の末尾：テーマの補償余白（footer の padding-bottom:68px）の代わりに、バーの実際の高さ＋8px のスペーサー1つ */
  footer:has(> .wrap-contact[data-nt-fixed-cta]){padding-bottom:0}
  footer .wrap-contact[data-nt-fixed-cta] ~ .nt-fixed-cta-spacer{display:block;height:calc(var(--nt-fixed-cta-height, 100px) + 8px)}
  /* ページトップ：バーの実際の高さ＋12px より上へ（色・形はそのまま） */
  footer .wrap-contact[data-nt-fixed-cta] ~ .back_top{bottom:max(110px, calc(var(--nt-fixed-cta-height, 100px) + 12px))}
}
@media screen and (max-width:350px){
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__row{gap:10px;padding:10px}
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__control{margin-right:-10px}
  /* 320px では補足の列が約107px：「料金・よくある質問を」（11px×10字＝110px）の「を」だけが3行目に落ちるので、補足だけ 10.5px（字の間は詰めない） */
  footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message p,footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__conditions{font-size:10.5px}
}
.nt-fixed-cta-spacer{display:none}
@keyframes nt-fixed-cta-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message.is-entering{animation:none}}
