/* ============================================================
   ひかり調剤薬局 — アフターピル解説ページ（/afterpill-guide/）
   デザインガイドライン v3.0（既存サイト準拠版）に基づく実装
   ベース: 白 / クリーム  本文: ダークブラウン  見出し: 金色下線
   アクセント: ペールピンク / 淡ピーチ  CTA: ディープローズブラウン

   ※ 既存テーマ（Bootstrap）と衝突しないよう、全スタイルを
     ルート要素「.apg」配下にスコープしています。
     ヘッダー / フッターは既存サイト共通（テーマ）を使用します。
   ============================================================ */

.apg{
  /* ベース色 */
  --apg-canvas:    #ffffff;
  --apg-cream:     #fdf9f3;
  --apg-cream-2:   #f7efe4;
  --apg-ink:       #241c17;   /* 本文・見出し（#1E1E14〜#281E1E） */
  --apg-ink-soft:  #4a3f38;
  --apg-sub:       #6b6258;   /* 注釈・サブ情報 */
  --apg-gold:      #968c64;   /* 金色アクセント線 */

  /* ロゴアクセント（抑制的に使用） */
  --apg-pink:      #dcaaaa;
  --apg-pink-deep: #c98e8e;
  --apg-beige:     #dcc8aa;
  --apg-peach:     #fae6dc;

  /* CTA / 状態色 */
  --apg-cta:       #b07868;
  --apg-cta-hover: #826450;
  --apg-success:   #7ba486;
  --apg-warning:   #d4a574;
  --apg-error:     #c77866;
  --apg-border:    #e8dcc8;

  --apg-font-jp: "Noto Sans JP", system-ui, sans-serif;
  --apg-font-num: "Inter", "Noto Sans JP", sans-serif;

  --apg-inner: 1200px;
  --apg-text-col: 960px;

  font-family:var(--apg-font-jp); color:var(--apg-ink); background:var(--apg-canvas);
  font-size:16px; line-height:1.85; -webkit-font-smoothing:antialiased;
  font-feature-settings:"palt" 1;
}
/* 固定ナビ分のアンカースクロール余白 */
html{ scroll-behavior:smooth; scroll-padding-top:90px; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

.apg *{ box-sizing:border-box; }
.apg img{ display:block; max-width:100%; }
.apg a{ color:inherit; text-decoration:none; }
.apg strong{ font-weight:700; }
.apg h1,.apg h2,.apg h3,.apg h4{ margin:0; padding:0; font-weight:700; }
.apg p,.apg ul,.apg ol,.apg dl{ margin:0; }

/* ============ ファーストビュー（エディトリアル型 / FV-B） ============ */
.apg .fv{ background:var(--apg-cream); border-bottom:1px solid var(--apg-border); overflow:hidden; }
.apg .fv__in{
  max-width:var(--apg-inner); margin:0 auto; padding:60px 28px 56px;
  display:grid; grid-template-columns:1fr 1.04fr; gap:54px; align-items:center;
}
.apg .fv__eyebrow{ display:flex; flex-direction:column; gap:14px; margin-bottom:26px; }
.apg .fv__eyebrow span{ font-size:16px; font-weight:500; letter-spacing:.14em; color:var(--apg-pink-deep); }
.apg .fv__eyebrow span b{ font-weight:700; color:var(--apg-pink-deep); }
.apg .fv__eyebrow::after{ content:""; width:64px; height:2px; background:var(--apg-gold); }
.apg .fv__title{
  font-size:40px; font-weight:700; line-height:1.42; letter-spacing:.01em; color:var(--apg-ink);
  text-wrap:pretty; margin-bottom:18px;
}
.apg .fv__sub{ font-size:21px; font-weight:500; line-height:1.6; color:var(--apg-ink-soft); margin-bottom:24px; }
.apg .fv__lead{ font-size:15px; line-height:1.95; color:var(--apg-sub); max-width:30em; }
.apg .fv__media{ position:relative; }
.apg .fv__media img{ width:100%; height:440px; object-fit:cover; border-radius:14px; }
.apg .fv__media::before{
  content:""; position:absolute; right:-18px; bottom:-18px; width:66%; height:62%;
  border:2px solid var(--apg-beige); border-radius:14px; z-index:-1;
}

/* ============ 監修者カード（FV直下に帯で配置） ============ */
.apg .author{ background:var(--apg-cream); }
.apg .author__in{ max-width:var(--apg-inner); margin:0 auto; padding:0 28px 36px; }
.apg .author__card{
  background:var(--apg-peach); border-radius:14px; padding:22px 26px;
  display:flex; flex-direction:column; gap:14px;
}
/* 上段：写真＋肩書き/氏名（横並び）、監修日は右寄せ */
.apg .author__head{ display:flex; align-items:center; gap:22px; }
.apg .author__photo{ width:84px; height:84px; border-radius:12px; object-fit:cover; flex:0 0 auto; }
.apg .author__meta{ flex:1 1 auto; min-width:0; }
.apg .author__role{ font-size:12px; font-weight:700; letter-spacing:.1em; color:var(--apg-cta-hover); margin-bottom:5px; }
.apg .author__name{ font-size:19px; font-weight:700; letter-spacing:.04em; }
.apg .author__name span{ font-size:13px; font-weight:500; color:var(--apg-sub); margin-left:10px; }
.apg .author__date{ font-size:12px; color:var(--apg-sub); white-space:nowrap; flex:0 0 auto; align-self:center; }
/* 下段：経歴を横いっぱいに */
.apg .author__bio{ font-size:13px; line-height:1.7; color:var(--apg-ink-soft); }

/* ============ パンくず ============ */
.apg .crumb{ background:var(--apg-cream-2); border-bottom:1px solid var(--apg-border); }
.apg .crumb__in{ max-width:var(--apg-inner); margin:0 auto; padding:11px 28px; font-size:12px; color:var(--apg-sub); letter-spacing:.03em; }
.apg .crumb__in a{ color:var(--apg-sub); }
.apg .crumb__in a:hover{ color:var(--apg-cta); }
.apg .crumb__in span{ margin:0 8px; opacity:.6; }
.apg .crumb__in b{ color:var(--apg-ink-soft); font-weight:500; }

/* ============ 本文コンテナ ============ */
.apg .main{ background:var(--apg-cream); padding:40px 28px 96px; overflow-x:clip; }
.apg .main__wrap{ max-width:var(--apg-inner); margin:0 auto; }

/* 目次（1カラム・H2のみ / 目次-B） */
.apg .toc{
  background:var(--apg-canvas); border:1px solid var(--apg-border); border-radius:14px;
  padding:30px 34px; margin:0 auto 72px; max-width:var(--apg-text-col);
}
.apg .toc__h{ font-size:15px; font-weight:700; letter-spacing:.12em; color:var(--apg-ink); margin-bottom:6px; }
.apg .toc__h::after{ content:""; display:block; width:48px; height:2px; background:var(--apg-gold); margin-top:10px; }
.apg .toc__list{ list-style:none; margin-top:14px; padding:0; }
.apg .toc__list li a{
  display:flex; align-items:baseline; gap:16px; padding:12px 4px;
  border-bottom:1px solid var(--apg-border); font-size:15px; color:var(--apg-ink-soft); transition:color .2s;
}
.apg .toc__list li:last-child a{ border-bottom:0; }
.apg .toc__list li a:hover{ color:var(--apg-cta); }
.apg .toc__list .n{ font-family:var(--apg-font-num); font-weight:700; font-size:14px; color:var(--apg-gold); flex:0 0 26px; }
.apg .toc__list li a:hover .n{ color:var(--apg-cta); }

/* セクション */
.apg .sec{ position:relative; max-width:var(--apg-text-col); margin:0 auto; padding:60px 0; scroll-margin-top:90px; }
/* 先頭のリード文ブロック（div.sec）だけ上余白をなくす。各H2セクション(section.sec)には付けない */
.apg div.sec:first-of-type{ padding-top:0; }

/* 段落（H2セクション）ごとに背景をクリーム⇄濃めクリームで交互（フル幅の帯） */
.apg .main__wrap section.sec:nth-of-type(odd)::before{
  content:""; position:absolute; z-index:0; top:0; bottom:0; left:50%;
  width:100vw; transform:translateX(-50%); background:var(--apg-cream-2);
}
.apg .main__wrap section.sec > *{ position:relative; z-index:1; }
.apg .sec > h2{
  font-size:23px; font-weight:700; line-height:1.5; letter-spacing:.02em; color:var(--apg-ink);
  margin-bottom:8px; text-wrap:pretty;
}
.apg .sec > h2::after{ content:""; display:block; width:56px; height:2px; background:var(--apg-gold); margin-top:14px; margin-bottom:26px; }
.apg .sec h3{
  font-size:20px; font-weight:700; line-height:1.55; letter-spacing:.02em; color:var(--apg-ink);
  margin:42px 0 14px;
}
.apg .sec p{ font-size:16px; line-height:1.95; margin-bottom:16px; color:var(--apg-ink-soft); }
.apg .sec p strong{ color:var(--apg-ink); }
.apg .lead{ font-size:16.5px; line-height:2; color:var(--apg-ink-soft); }

/* リスト */
.apg .list{ list-style:none; margin:6px 0 18px; padding:0; }
.apg .list li{ position:relative; padding-left:24px; font-size:16px; line-height:1.85; color:var(--apg-ink-soft); margin-bottom:9px; }
.apg .list li::before{ content:""; position:absolute; left:4px; top:.62em; width:8px; height:8px; border-radius:50%; background:var(--apg-pink); }

/* テーブル */
.apg .tbl-wrap{ overflow-x:auto; margin:8px 0 22px; -webkit-overflow-scrolling:touch; }
.apg table.t{ width:100%; border-collapse:collapse; font-size:15px; min-width:480px; background:var(--apg-canvas);
  border:1px solid var(--apg-border); border-radius:12px; overflow:hidden; }
.apg table.t thead th{ background:var(--apg-beige); color:var(--apg-ink); font-weight:700; font-size:14px; letter-spacing:.04em;
  padding:13px 16px; text-align:left; }
.apg table.t td, .apg table.t th{ border-bottom:1px solid var(--apg-border); border-right:1px solid var(--apg-border); padding:13px 16px;
  vertical-align:top; line-height:1.65; }
.apg table.t td:last-child, .apg table.t th:last-child{ border-right:0; }
.apg table.t tbody tr:last-child td{ border-bottom:0; }
.apg table.t tbody tr:nth-child(even){ background:var(--apg-cream); }
.apg table.t td.em{ font-weight:700; color:var(--apg-ink); }
.apg table.t td .price{ font-family:var(--apg-font-num); font-weight:700; color:var(--apg-cta-hover); }
.apg table.t .hl{ color:var(--apg-cta-hover); font-weight:700; }
/* 2列の小さな表（例：副作用×発現頻度）。左右の列を均等幅（50%ずつ）にする。
   table-layout:fixed で内容に依存せず等幅を保証。狭い画面でもコンパクトに。 */
.apg table.t--tight{ table-layout:fixed; min-width:340px; }
.apg table.t--tight th,
.apg table.t--tight td{ width:50%; }

/* 妊娠阻止率バー */
.apg .bars{ background:var(--apg-canvas); border:1px solid var(--apg-border); border-radius:12px; padding:24px 26px; margin:8px 0 20px; }
.apg .bar{ display:grid; grid-template-columns:130px 1fr 56px; align-items:center; gap:16px; margin-bottom:16px; }
.apg .bar:last-child{ margin-bottom:0; }
.apg .bar__lab{ font-size:14px; color:var(--apg-ink-soft); font-weight:500; }
.apg .bar__track{ display:block; height:16px; background:var(--apg-cream-2); border-radius:8px; overflow:hidden; }
.apg .bar__fill{ display:block; height:100%; border-radius:8px; background:linear-gradient(90deg,var(--apg-pink),var(--apg-cta)); }
.apg .bar__val{ font-family:var(--apg-font-num); font-weight:700; font-size:16px; color:var(--apg-cta-hover); text-align:right; }

/* 注意ボックス */
.apg .callout{ border-radius:12px; padding:18px 22px 18px 52px; position:relative; margin:8px 0 22px;
  font-size:15px; line-height:1.8; }
.apg .callout::before{ position:absolute; left:18px; top:17px; font-size:20px; }
.apg .callout--warn{ background:#fbf3e8; border:1px solid #e9cfa6; color:#6e5436; }
.apg .callout--warn::before{ content:"⚠"; color:var(--apg-warning); }
.apg .callout--info{ background:var(--apg-peach); border:1px solid #f0d3c4; color:#6e5043; }
.apg .callout--info::before{ content:"ℹ"; color:var(--apg-pink-deep); font-weight:700; }
.apg .callout b{ color:inherit; font-weight:700; }
.apg .callout--warn b{ color:#7a4a2c; }

/* 出典 */
.apg .src{ font-size:13px; color:var(--apg-sub); line-height:1.7; margin:10px 0 4px; padding-left:18px; position:relative; }
.apg .src::before{ content:"※"; position:absolute; left:0; }

/* 外部リンク・厚労省ボックス */
.apg .extbox{ background:var(--apg-canvas); border:1px solid var(--apg-border); border-radius:12px; padding:20px 22px; margin:10px 0 20px; }
.apg .extbox__t{ font-size:14px; font-weight:700; color:var(--apg-ink); margin-bottom:12px; }
.apg .extlink{ display:inline-flex; align-items:center; gap:9px; font-size:14px; font-weight:500; color:var(--apg-cta-hover);
  border:1px solid var(--apg-cta); border-radius:8px; padding:11px 18px; transition:background .2s,color .2s; }
.apg .extlink::after{ content:"↗"; font-size:13px; }
.apg .extlink:hover{ background:var(--apg-cta); color:#fff; }

/* STEP（縦タイムライン / STEP-A） */
.apg .steps{ position:relative; margin:14px 0 8px; }
.apg .step{ position:relative; display:grid; grid-template-columns:56px 1fr; gap:22px; padding-bottom:34px; }
.apg .step:last-child{ padding-bottom:0; }
.apg .step__num{ position:relative; z-index:1; }
.apg .step__num b{ display:flex; flex-direction:column; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:50%; background:var(--apg-cta); color:#fff; line-height:1; }
.apg .step__num b small{ font-family:var(--apg-font-num); font-size:9px; letter-spacing:.14em; opacity:.85; margin-bottom:2px; }
.apg .step__num b span{ font-family:var(--apg-font-num); font-size:22px; font-weight:700; }
.apg .step::after{ content:""; position:absolute; left:27px; top:60px; bottom:6px; width:2px; background:var(--apg-border); }
.apg .step:last-child::after{ display:none; }
.apg .step__body{ padding-top:4px; }
.apg .step__body h3{ margin:0 0 8px; font-size:17.5px; }
.apg .step__body p{ font-size:15px; margin-bottom:10px; }

/* おすすめな人カード（比較） */
.apg .reco{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:18px 0 8px; }
.apg .reco__c{ background:var(--apg-canvas); border:1px solid var(--apg-border); border-radius:12px; padding:22px 22px 24px; }
.apg .reco__c h4{ font-size:16px; font-weight:700; color:var(--apg-ink); margin-bottom:6px; }
.apg .reco__c h4::after{ content:""; display:block; width:36px; height:2px; background:var(--apg-pink); margin-top:10px; }
.apg .reco__c ul{ list-style:none; margin-top:14px; padding:0; }
.apg .reco__c li{ position:relative; padding-left:22px; font-size:14px; line-height:1.7; color:var(--apg-ink-soft); margin-bottom:9px; }
.apg .reco__c li::before{ content:"✓"; position:absolute; left:0; color:var(--apg-cta); font-weight:800; }

/* CTAボタン */
.apg .btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; font-family:var(--apg-font-jp);
  font-size:15px; font-weight:700; letter-spacing:.04em; padding:15px 30px; border-radius:8px; cursor:pointer;
  transition:background .2s ease-out, color .2s ease-out, transform .2s ease-out; border:1.5px solid transparent; }
.apg .btn--primary{ background:var(--apg-cta); color:#fff; }
.apg .btn--primary:hover{ background:var(--apg-cta-hover); color:#fff; }
.apg .btn--primary::after{ content:"→"; }
.apg .btn--ghost{ background:transparent; color:var(--apg-cta-hover); border-color:var(--apg-cta); }
.apg .btn--ghost:hover{ background:var(--apg-cta); color:#fff; }

/* 自薬局への内部リンクバナー */
.apg .servicelink{ background:linear-gradient(120deg,var(--apg-peach),#fdeee6); border:1px solid #f0d3c4; border-radius:14px;
  padding:26px 30px; margin:24px 0 8px; display:flex; align-items:center; gap:24px; }
.apg .servicelink__txt{ flex:1; }
.apg .servicelink__txt b{ font-size:17px; font-weight:700; color:var(--apg-ink); display:block; margin-bottom:6px; }
.apg .servicelink__txt span{ font-size:14px; color:var(--apg-ink-soft); line-height:1.7; }

/* FAQ */
.apg .faq{ border-top:1px solid var(--apg-border); margin-top:14px; }
.apg .faq__item{ border-bottom:1px solid var(--apg-border); }
.apg .faq__q{ display:flex; align-items:flex-start; gap:14px; padding:18px 4px; cursor:pointer; list-style:none; }
.apg .faq__q::-webkit-details-marker{ display:none; }
.apg .faq__q .qi{ flex:0 0 auto; width:26px; height:26px; border-radius:7px; background:var(--apg-cta); color:#fff;
  font-family:var(--apg-font-num); font-weight:700; font-size:12px; display:flex; align-items:center; justify-content:center; }
.apg .faq__q .qt{ flex:1; font-size:16px; font-weight:600; line-height:1.55; color:var(--apg-ink); padding-top:2px; }
.apg .faq__q .pm{ flex:0 0 auto; font-size:22px; color:var(--apg-cta); line-height:1; transition:transform .25s; }
.apg .faq__item[open] .faq__q .pm{ transform:rotate(45deg); }
.apg .faq__a{ padding:0 4px 20px 44px; }
.apg .faq__a p{ font-size:15px; line-height:1.9; color:var(--apg-ink-soft); margin-bottom:10px; }
.apg .faq__a p:last-child{ margin-bottom:0; }
.apg .faq__a a{ color:var(--apg-cta-hover); text-decoration:underline; }

/* 監修者プロフィール（大） */
.apg .prof{ background:var(--apg-canvas); border:1px solid var(--apg-border); border-radius:16px; overflow:hidden;
  display:grid; grid-template-columns:300px 1fr; margin-top:10px; }
.apg .prof__photo{ background:center/cover no-repeat; min-height:380px; }
.apg .prof__body{ padding:34px 38px; }
.apg .prof__name{ font-size:24px; font-weight:700; letter-spacing:.04em; }
.apg .prof__name span{ font-size:14px; color:var(--apg-sub); margin-left:12px; font-weight:500; }
.apg .prof__role{ font-size:13px; color:var(--apg-cta-hover); font-weight:700; letter-spacing:.06em; margin:8px 0 20px; }
.apg .prof__dl{ display:grid; grid-template-columns:96px 1fr; row-gap:14px; column-gap:16px; margin:0; }
.apg .prof__dl dt{ font-size:13px; font-weight:700; color:var(--apg-gold); letter-spacing:.06em; padding-top:2px; }
.apg .prof__dl dd{ font-size:14.5px; line-height:1.75; color:var(--apg-ink-soft); margin:0; }
.apg .prof__dl dd ul{ list-style:none; margin:0; padding:0; }
.apg .prof__dl dd li{ position:relative; padding-left:16px; margin-bottom:4px; }
.apg .prof__dl dd li::before{ content:""; position:absolute; left:0; top:.7em; width:5px; height:5px; border-radius:50%; background:var(--apg-beige); }

/* 最終CTA（店舗情報） */
.apg .final{ background:var(--apg-cream-2); border-top:1px solid var(--apg-border); padding:72px 28px; }
.apg .final__in{ max-width:var(--apg-inner); margin:0 auto; }
.apg .final__head{ text-align:center; margin-bottom:44px; }
.apg .final__head h2{ font-size:28px; font-weight:700; letter-spacing:.04em; color:var(--apg-ink); line-height:1.5; text-wrap:pretty; }
.apg .final__head h2::after{ content:""; display:block; width:60px; height:2px; background:var(--apg-gold); margin:18px auto 0; }
.apg .final__head p{ font-size:15px; color:var(--apg-sub); margin-top:18px; }
.apg .final__grid{ display:grid; grid-template-columns:1.05fr 1fr; gap:40px; align-items:stretch; }
.apg .store{ background:var(--apg-canvas); border:1px solid var(--apg-border); border-radius:16px; padding:32px 34px;
  display:flex; flex-direction:column; }
.apg .store__name{ font-size:20px; font-weight:700; letter-spacing:.04em; margin-bottom:18px; }
.apg .store__name::after{ content:""; display:block; width:44px; height:2px; background:var(--apg-pink); margin-top:12px; }
.apg .store__dl{ display:grid; grid-template-columns:84px 1fr; row-gap:13px; column-gap:14px; font-size:14.5px; margin:0; }
.apg .store__dl dt{ font-size:13px; font-weight:700; color:var(--apg-gold); letter-spacing:.04em; padding-top:2px; }
.apg .store__dl dd{ color:var(--apg-ink-soft); line-height:1.7; margin:0; }
.apg .store__tel{ margin:24px 0 18px; padding-top:22px; border-top:1px solid var(--apg-border); }
.apg .store__tel a{ font-family:var(--apg-font-num); font-size:32px; font-weight:700; color:var(--apg-cta-hover); letter-spacing:.02em; display:inline-flex; align-items:center; gap:12px; }
.apg .store__tel a::before{ content:"☎"; font-size:24px; }
.apg .store__tel span{ display:block; font-size:12px; color:var(--apg-sub); letter-spacing:.08em; margin-top:4px; font-family:var(--apg-font-jp); }
.apg .store__btns{ display:flex; gap:14px; margin-top:auto; padding-top:8px; flex-wrap:wrap; }
.apg .store__btns .btn{ flex:1; min-width:180px; }
.apg .final__media{ display:flex; flex-direction:column; gap:18px; }
.apg .final__media img{ width:100%; height:100%; min-height:240px; object-fit:cover; border-radius:16px; flex:1; }

/* モバイル固定CTA */
.apg-mcta{ display:none; position:fixed; left:0; right:0; bottom:0; z-index:1030;
  background:rgba(255,255,255,.96); backdrop-filter:blur(6px); border-top:1px solid #e8dcc8;
  box-shadow:0 -4px 18px rgba(0,0,0,.06); }
.apg-mcta a{ flex:1; display:flex; align-items:center; justify-content:center; gap:8px; padding:14px 6px;
  font-size:13.5px; font-weight:700; letter-spacing:.02em; white-space:nowrap; font-family:"Noto Sans JP",system-ui,sans-serif; text-decoration:none; }
.apg-mcta .call{ color:#826450; }
.apg-mcta .call::before{ content:"☎"; }
.apg-mcta .go{ background:#b07868; color:#fff; }

/* ============ レスポンシブ ============ */
@media (max-width:980px){
  .apg .fv__in{ grid-template-columns:1fr; gap:34px; padding:44px 24px 44px; }
  .apg .fv__media{ order:-1; }
  .apg .fv__media img{ height:300px; }
  .apg .fv__media::before{ display:none; }
  .apg .fv__title{ font-size:30px; }
  .apg .fv__sub{ font-size:18px; }
  .apg .prof{ grid-template-columns:1fr; }
  .apg .prof__photo{ min-height:300px; }
  .apg .final__grid{ grid-template-columns:1fr; }
  .apg .reco{ grid-template-columns:1fr; }
}
@media (max-width:760px){
  .apg .main{ padding:28px 18px 80px; }
  .apg .fv__in, .apg .author__in{ padding-left:18px; padding-right:18px; }
  .apg .crumb__in{ padding-left:18px; padding-right:18px; }
  .apg .fv__title{ font-size:25px; line-height:1.45; }
  .apg .fv__sub{ font-size:16px; }
  /* モバイル：上段は写真＋肩書き/氏名の横並びを維持し、監修日はその下の行へ。
     経歴は引き続き下段にフル幅。 */
  .apg .author__head{ flex-wrap:wrap; align-items:center; gap:12px 16px; }
  .apg .author__photo{ width:68px; height:68px; }
  .apg .author__date{ flex-basis:100%; order:3; align-self:flex-start; }
  .apg .sec{ padding:46px 0; }
  .apg .sec > h2{ font-size:20px; }
  .apg .sec h3{ font-size:18px; }
  .apg .sec p, .apg .list li{ font-size:15px; }
  .apg .toc{ padding:24px 22px; }
  .apg .final{ padding:52px 18px; }
  .apg .final__head h2{ font-size:22px; }
  .apg .store{ padding:26px 22px; }
  .apg .store__tel a{ font-size:28px; }
  .apg .servicelink{ flex-direction:column; align-items:flex-start; gap:16px; }
  .apg-mcta{ display:flex; }
  body.page-afterpill-guide{ padding-bottom:56px; }
}
