/* ============ 追従CTA（LP下部固定） ============ */
:root{ --pp-cta-h: 76px; }
@media (max-width:640px){ :root{ --pp-cta-h: 68px; } }

.pp-sticky-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:rgba(230,244,251,.94);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-top:1px solid rgba(14,165,233,.18);
  box-shadow:0 -10px 30px -18px rgba(14,27,46,.25);
  padding:12px 20px calc(12px + env(safe-area-inset-bottom));
  transform:translateY(110%);
  transition:transform .3s cubic-bezier(.2,.7,.2,1);
}
.pp-sticky-cta.is-visible{transform:none}
.pp-sticky-cta-inner{
  max-width:680px;margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
}
.pp-sticky-cta a{
  display:flex;align-items:center;justify-content:center;gap:10px;
  height:52px;border-radius:999px;
  font-family:var(--font-round);font-weight:800;font-size:16px;letter-spacing:.02em;
  white-space:nowrap;
  transition:transform .15s ease, background .15s, box-shadow .15s, color .15s;
}
.pp-sticky-cta a svg{flex-shrink:0}
.pp-sticky-cta .pp-cta-doc{
  background:#fff;color:var(--blue-deep);
  border:2px solid var(--blue);
}
.pp-sticky-cta .pp-cta-doc:hover{background:#F2FAFE;transform:translateY(-1px)}
.pp-sticky-cta .pp-cta-contact{
  background:var(--blue);color:#fff;
  border:2px solid var(--blue);
  box-shadow:var(--shadow-blue);
}
.pp-sticky-cta .pp-cta-contact:hover{background:var(--blue-2);border-color:var(--blue-2);transform:translateY(-1px)}
@media (max-width:640px){
  .pp-sticky-cta{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}
  .pp-sticky-cta-inner{gap:8px}
  .pp-sticky-cta a{height:48px;font-size:14.5px;gap:7px}
  .pp-sticky-cta a svg{width:17px;height:17px}
}
@media (max-width:350px){
  .pp-sticky-cta a svg{display:none}
}

/* 最下部コンテンツが隠れないよう余白を確保 */
body.has-sticky-cta footer{padding-bottom:calc(36px + var(--pp-cta-h))}
/* Cookieバナーは追従CTAの上に出す */
body.has-sticky-cta #cookie-banner{bottom:calc(var(--pp-cta-h) + 16px)}
@media (max-width:560px){
  body.has-sticky-cta #cookie-banner{bottom:calc(var(--pp-cta-h) + 10px)}
}
@media print{ .pp-sticky-cta{display:none} }
