
.ds-pricecard__row{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  padding:14px 0;
  border-bottom:1px dashed var(--line);
  font-size:14px;
  color:var(--ink);
}
.ds-pricecard__row:last-of-type{ border-bottom:none; }
.ds-pricecard__row b{
  color:var(--red);
  font-family:"Noto Serif JP",serif;
  font-size:20px;
}
.ds-pricecard__note{
  font-size:11.5px;
  color:var(--ink-soft);
  margin-top:14px;
  line-height:1.7;
}

.ds-bullets{
  max-width:900px;
  margin:36px auto;
  padding:0;
  list-style:none;
}
.ds-bullets li{
  position:relative;
  padding:18px 20px 18px 56px;
  margin:0 0 12px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:4px;
  font-size:14.5px;
  line-height:1.85;
  color:var(--ink);
  box-shadow:var(--shadow-soft);
}
.ds-bullets li::before{
  content:"\2713";
  position:absolute;
  left:18px; top:18px;
  width:26px; height:26px;
  background:var(--red);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  font-size:13px;
  font-weight:900;
}

/* ========== Reveal / 飛び出しアニメーション ========== */
html.ds-anim .ds-reveal{
  opacity:0;
  transform:translateY(46px) scale(.97);
  transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--rd,0s);
}
html.ds-anim .ds-reveal-l{
  opacity:0;
  transform:translateX(-60px);
  transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--rd,0s);
}
html.ds-anim .ds-reveal-r{
  opacity:0;
  transform:translateX(60px);
  transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--rd,0s);
}
html.ds-anim .ds-pop{
  opacity:0;
  transform:translateY(60px) rotate(-2deg) scale(.9);
  transition:opacity 1s cubic-bezier(.2,.8,.2,1.1),transform 1s cubic-bezier(.2,.8,.2,1.1);
  transition-delay:var(--rd,0s);
}