/* 1ページ目と同じ帯（漫画 2026-10-15）。ほかのページで使う */

    /* ===== 読みやすさ（老眼の方へ・nari 2026-10-15）：文字を濃く・大きく ===== */
    body{font-size:17px;color:#3a3029}
    p,li{color:inherit}
    .note{font-size:.95rem;color:#5f5449}
    section,[id]{scroll-margin-top:1rem}
    @media(max-width:900px){section,[id]{scroll-margin-top:1rem}}
    /* ===== 帯 ===== */
    header.bd{position:relative;top:auto;background:#f7f2fb;border-bottom:1px solid #e7ddf1;font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif}
    .bd-top{max-width:1120px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px 8px}
    .bd-lang{order:-1;width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
    .bd-lang a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 11px;border-radius:999px;border:1.5px solid #cbbde3;background:#fff;color:#4f3f73;font-size:14px;font-weight:700;text-decoration:none;line-height:1.2}
    .bd-lang a.on{background:linear-gradient(135deg,#8e72c0,#6a4fa3);border-color:#6a4fa3;color:#fff}
    .bd-brand{display:flex;align-items:center;gap:8px;text-decoration:none}
    .bd-brand img{width:28px;height:auto}
    .bd-brand b{font-size:16px;font-weight:700;color:#3f3550;letter-spacing:.03em}
    .bd-menubtn{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #cbbde3;border-radius:12px;padding:8px 14px;background:#fff;color:#3f3550;font:inherit;font-size:16px;font-weight:700;cursor:pointer;min-height:44px}
    .bd-menubtn i{font-style:normal;font-size:19px;line-height:1}
    .bd-ctas{max-width:1120px;margin:0 auto;padding:4px 16px 14px;display:grid;grid-template-columns:1fr 1fr;gap:10px;grid-template-areas:"cta cta" "small small" "yoy ng"}
    .bd-cta{grid-area:cta;display:block;text-align:center;color:#fff;text-decoration:none;background:linear-gradient(135deg,#8e72c0,#6a4fa3);border-radius:16px;box-shadow:0 8px 20px rgba(106,79,163,.28);padding:12px 14px}
    .bd-cta .t{display:block;font-size:14.5px;font-weight:700;opacity:.95}
    .bd-cta .m{display:block;font-size:19px;font-weight:800;margin-top:2px;line-height:1.4}
    .bd-cta:hover{color:#fff;filter:brightness(1.05)}
    .bd-small{grid-area:small;display:block;text-align:center;font-size:15px;color:#5a3f96;text-decoration:underline;text-underline-offset:3px;font-weight:700;line-height:1.5;padding:2px 0}
    .bd-yoyaku{grid-area:yoy;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#f1ebfa;border:1.5px solid #c3b2e2;color:#4a337f;font-size:18px;font-weight:800;min-height:62px;text-decoration:none}
    .bd-ng{grid-area:ng;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:#eaf5ed;border:1.5px solid #a9d3b8;color:#24593a;min-height:62px;text-align:center;padding:4px 6px;text-decoration:none;line-height:1.35}
    .bd-ng .t{font-size:13.5px;font-weight:700}.bd-ng .m{font-size:18px;font-weight:800}
    .bd-yoyaku:hover,.bd-ng:hover{filter:brightness(.98)}
    .bd-menu{display:none;max-width:1120px;margin:0 auto;border-top:1px solid #e7ddf1}
    .bd-menu a{color:#3f3550;font-weight:700;text-decoration:none}
    body.menu-open .bd-menu{display:block;padding:4px 16px 0}
    body.menu-open .bd-menu a,.bd-more a{display:flex;justify-content:space-between;align-items:center;padding:13px 4px;font-size:17px;border-bottom:1px solid #ece4f5;color:#3f3550;font-weight:700;text-decoration:none}
    body.menu-open .bd-menu a::after,.bd-more a::after{content:"›";color:#6a4fa3;font-size:20px}
    #sitenav.bd-menu{background:transparent}
    .rh-how{font-size:15.5px!important;color:#4f4459!important}
    @media(min-width:900px){.rh-how{font-size:17px!important}}
    .ad-price.soon-prev{margin-top:1.2rem}
    .bd-more{max-width:1120px;margin:0 auto;padding:4px 16px 14px}
    .bd-more[hidden]{display:none}
    .bd-more-h{font-size:14px;color:#5f5449;margin:10px 0 0;letter-spacing:.06em}
    .bd-more a{font-size:16px;font-weight:600}
    @media(min-width:900px){
      .bd-top{flex-wrap:nowrap;padding:14px 32px}
      .bd-lang{order:0;width:auto;margin-left:auto;justify-content:flex-end}
      .bd-lang a{padding:0 15px;font-size:15px}
      .bd-brand img{width:32px}.bd-brand b{font-size:19px}
      .bd-ctas{grid-template-columns:1.55fr 1fr 1fr;grid-template-areas:"cta yoy ng" "small . .";gap:12px 14px;padding:6px 32px 8px}
      .bd-cta .t{font-size:15px}.bd-cta .m{font-size:22px}
      .bd-yoyaku{font-size:21px}.bd-ng .t{font-size:14.5px}.bd-ng .m{font-size:21px}
      .bd-small{font-size:15.5px}
      .bd-menu{display:flex;flex-wrap:wrap;justify-content:center;margin-top:8px;border-bottom:0}
      .bd-menu a{padding:14px 18px;font-size:16.5px}
      .bd-menu a+a{border-left:1px solid #e7ddf1}
      body.menu-open .bd-menu{display:flex;padding:0}
      body.menu-open .bd-menu a{display:inline-block;border-bottom:0;padding:14px 18px;font-size:16.5px}
      body.menu-open .bd-menu a::after{content:none}
      .bd-more{display:grid;grid-template-columns:repeat(3,1fr);gap:0 24px}
      .bd-more-h{grid-column:1/-1}
    }
    /* ===== 3つの扉（帯） ===== */
    .bd-doors-wrap{max-width:1120px;margin:0 auto;padding:2px 16px 12px}
    .bd-doors-h{text-align:center;font-size:16px;font-weight:800;color:#3f3550;margin:2px 0 8px;letter-spacing:.04em}
    .bd-doors{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
    .bd-door{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 9px;border-radius:16px;border:1.5px solid #cbbde3;background:#fff;color:#3f3550;text-decoration:none;font:inherit;cursor:pointer;line-height:1.3;box-shadow:0 6px 16px -12px rgba(106,79,163,.5)}
    .bd-door img{width:58px;height:58px;border-radius:14px}
    .bd-door .nm{font-size:18px;font-weight:800;margin-top:4px}
    .bd-door .sb{font-size:13.5px;font-weight:700;color:#4f4459}
    .bd-door.free{background:#eaf5ed;border-color:#a9d3b8}.bd-door.free .sb{color:#24593a}
    .bd-door.aks{background:#f1ebfa}
    .bd-door[aria-expanded="true"]{border-color:#6a4fa3;box-shadow:0 0 0 3px rgba(106,79,163,.25)}
    .bd-door[aria-controls]::after{content:"▼ ひらく";font-size:12.5px;font-weight:700;color:#5a3f96;margin-top:3px}
    .bd-door[aria-expanded="true"]::after{content:"▲ とじる"}
    .bd-door.free::after{content:"▶ はじめる";font-size:12.5px;font-weight:700;color:#24593a;margin-top:3px}
    .bd-panel{margin-top:10px;background:#fff;border:1.5px solid #ddd0ef;border-radius:18px;padding:16px 16px 14px}
    .bd-panel[hidden]{display:none}
    .bd-panel .pl{font-size:16.5px;line-height:1.8;color:#3a3029;margin:0}
    .pp-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
    .pp-app{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;background:#faf7fd;border:1px solid #e7ddf1;border-radius:14px;padding:12px 8px;text-decoration:none;color:#3a3029}
    .pp-app img{width:64px;height:64px;border-radius:16px}
    .pp-app .nm{font-size:18px;font-weight:800;color:#3f3550}
    .pp-app .nm small{display:block;font-size:12.5px;color:#5f5449}
    .pp-app .ds{font-size:14.5px;line-height:1.6}
    .pp-app .pr{font-size:15.5px;font-weight:800;color:#5a3f96}
    .pp-app .go{font-size:14.5px;font-weight:700;color:#5a3f96}
    .pp-price{text-align:center;font-size:16px;font-weight:700;color:#5a3f96;margin:12px 0 0;line-height:1.5}
    .pp-price small{display:block;font-weight:500;font-size:13.5px;color:#5f5449}
    .pp-go{display:block;text-align:center;margin:10px auto 0;max-width:360px;padding:12px 10px;border-radius:14px;color:#fff;text-decoration:none;font-weight:800;font-size:17px;background:linear-gradient(135deg,#8e72c0,#6a4fa3)}
    .pp-go:hover{color:#fff}
    .pp-note{font-size:14.5px;color:#4f4459;margin:10px 0 0;text-align:center;line-height:1.6}
    .ak-list{list-style:none;margin:10px 0 0;padding:0}
    .ak-list li{font-size:16px;line-height:1.75;color:#3a3029}
    .bd-links{text-align:center;margin:12px 0 0;font-size:15px;line-height:1.7}
    .bd-links a{color:#5a3f96;font-weight:700;text-underline-offset:3px}
    .bd-links .sep{color:#b9a9d6;margin:0 6px}
    @media(min-width:900px){
      .bd-doors-wrap{padding:6px 32px 8px;max-width:900px}
      .bd-doors{gap:14px}.bd-door{flex-direction:row;justify-content:center;gap:12px;padding:12px}
      .bd-door img{width:56px;height:56px}.bd-door .nm{font-size:21px;margin:0}
      .bd-door{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;text-align:left;column-gap:12px}
      .bd-door img{grid-row:1/4}.bd-door::after{grid-column:2}
      .bd-panel{padding:20px 24px}
    }
    /* ===== ヒーロー（確定コピー） ===== */
    .rh-h1 .ph{display:inline-block}
    .rh-aibou{font-size:17px;line-height:1.8;color:#3f3550;margin:18px 0 0}
    .rh-aibou b{color:#5a3f96}
    .rh-goal2{font-size:16.5px;line-height:1.75;font-weight:700;color:#9a4f84;margin:14px 0 0}
    @media(min-width:900px){.rh-aibou{font-size:20px}.rh-goal2{font-size:19px}}
    /* ===== レインボーはだれ?（ひと目で） ===== */
    .rh-who2{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1.5px solid #ddd0ef;border-radius:18px;padding:14px 16px;margin:18px 0 0;box-shadow:0 8px 22px -16px rgba(106,79,163,.45)}
    .rh-who2 .av{flex:0 0 auto;width:64px;height:64px;border-radius:50%;background:radial-gradient(70% 70% at 50% 35%,#f6f0fc,#ece3f7);padding:6px;object-fit:contain}
    .rh-who2 .tx{min-width:0}
    .rh-who2 .nm{font-size:20px;font-weight:800;color:#3f3550;margin:0;line-height:1.4}
    .rh-who2 .tag{display:inline-block;margin-left:8px;font-size:13.5px;font-weight:700;color:#fff;background:#6a4fa3;border-radius:99px;padding:1px 10px;vertical-align:3px}
    .rh-who2 .rh-aibou{margin:4px 0 0;font-size:16.5px;line-height:1.7}
    .rh-who2 .by{margin:6px 0 0;font-size:15px;line-height:1.7;color:#4f4459}
    @media(max-width:899px){.rh-rei{display:none}}
    @media(min-width:900px){.rh-who2{padding:18px 22px;max-width:640px}.rh-who2 .av{width:76px;height:76px}.rh-who2 .nm{font-size:23px}.rh-who2 .rh-aibou{font-size:19px}.rh-who2 .by{font-size:16.5px}}
    /* ===== ヒーローの動画（レイの場所） ===== */
    .rh-video{margin:0;background:radial-gradient(70% 70% at 50% 35%,#f3ecfa,#efe7f6);border-radius:28px;padding:12px;box-shadow:0 20px 50px rgba(122,95,176,.16)}
    .rh-video video{display:block;width:100%;height:auto;border-radius:16px;background:#000}
    .rh-video .duo-v-v{display:none}
    .rh-video figcaption{text-align:center;font-size:15px;font-weight:700;color:#3f3550;margin:10px 0 2px;line-height:1.5}
    @media(max-width:899px){
      .rh-in{flex-direction:column;align-items:stretch;gap:0}
      .rh-visual{display:block!important;margin:24px auto 0;width:100%;max-width:330px}
      .rh-video .duo-v-h{display:none}.rh-video .duo-v-v{display:block}
    }
    @media(min-width:900px){
      .rh-in{max-width:1140px}
      .rh-visual{flex:0 0 480px!important;display:block!important}
    }
    /* ===== こんなとき ===== */
    .konna-wrap{padding:0 16px 8px;background:#fffdfb}
    .konna{max-width:780px;margin:0 auto;background:#fff;border:1px solid #e7ddf1;border-radius:18px;padding:22px 20px 18px}
    .konna h2{font-size:20px;font-weight:800;color:#3f3550;margin:0 0 10px}
    .konna ul{list-style:none;margin:0;padding:0}
    .konna li{position:relative;padding-left:20px;font-size:17px;line-height:1.8;color:#3a3029}
    .konna li::before{content:"";position:absolute;left:2px;top:.72em;width:9px;height:9px;border-radius:50%;background:#a58fd4}
    .konna .e1{font-size:17px;font-weight:700;color:#5a3f96;margin:14px 0 0;line-height:1.75}
    .konna .e2{font-size:16.5px;font-weight:700;color:#9a4f84;margin:4px 0 0;line-height:1.75}
    @media(min-width:900px){.konna{padding:28px 34px 24px}.konna h2{font-size:23px}.konna ul{display:grid;grid-template-columns:1fr 1fr;gap:2px 28px}}
    /* ===== ご案内（棚） ===== */
    #annai .inner{max-width:1040px}
    .ann-lead{text-align:center;font-size:17.5px;line-height:1.9;color:#3a3029;margin:0 auto 2rem;max-width:32em}
    .ann-g{font-size:20px;font-weight:800;color:#3f3550;margin:2.6rem 0 .3rem;letter-spacing:.04em}
    .ann-g:first-of-type{margin-top:0}
    .ann-gs{font-size:16px;color:#4f4459;margin:0 0 1rem}
    #annai .app-doors{margin-top:.6rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
    .app-door .ad-cta{font-size:1rem!important;color:#5a3f96!important}
    .app-door .ad-price small{color:#5f5449!important;font-size:.85em!important}
    .ad-txt{padding:1.2rem 1.1rem 0;display:flex;flex-direction:column;align-items:center;gap:.4rem}
    .ad-txt img{width:84px;height:84px;border-radius:20px}
    .ad-txt .nm{font-size:19px;font-weight:800;color:#3f3550;line-height:1.4}
    .ad-txt .nm small{display:block;font-size:13px;font-weight:600;color:#5f5449}
    .ad-txt .ds{font-size:15.5px;line-height:1.7;color:#3a3029}
    .ad-note{font-size:14px;color:#4f4459;padding:0 1rem}
    .ann-pick{list-style:none;margin:1.4rem 0 0;padding:18px 20px;background:#faf7fd;border:1px solid #e7ddf1;border-radius:16px}
    .ann-pick .h{font-weight:800;color:#3f3550;font-size:17px;margin-bottom:6px}
    .ann-pick li{font-size:16.5px;line-height:1.8;color:#3a3029;padding:6px 0;border-top:1px dashed #e1d6ee}
    .ann-pick li:first-of-type{border-top:0}
    .ann-pick b{color:#3f3550}
    .ann-pick a{color:#5a3f96;font-weight:700}
    .ann-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
    .ann-card{display:flex;flex-direction:column;gap:.35rem;background:#fff;border:1px solid #e7ddf1;border-radius:16px;padding:18px 18px 16px;text-decoration:none;color:#3a3029;box-shadow:0 6px 18px -14px rgba(90,76,104,.4);transition:transform .2s}
    .ann-card:hover{transform:translateY(-2px);color:#3a3029}
    .ann-card .ic{font-size:26px;line-height:1}
    .ann-card img.ic{width:56px;height:56px;border-radius:14px}
    .ann-card .nm{font-size:18px;font-weight:800;color:#3f3550;line-height:1.45}
    .ann-card .ds{font-size:15.5px;line-height:1.7}
    .ann-card .pr{font-size:15.5px;font-weight:700;color:#5a3f96}
    .ann-card .go{margin-top:auto;padding-top:.3rem;font-size:15.5px;font-weight:700;color:#5a3f96}
    /* 公開前の見本（この印の付いたものは、アップロード用の版から自動で外れます） */
    .soon-prev{position:relative;outline:3px dashed #e0a24a;outline-offset:3px}
    .soon-prev::before{content:"公開前の見本（HPには出ません）";position:absolute;top:-14px;left:12px;background:#e0a24a;color:#fff;font-size:12px;font-weight:700;padding:2px 10px;border-radius:99px;z-index:2}
    /* ===== よくあるご質問 ===== */
    .fq-list{max-width:780px;margin:0 auto}
    .fq-list details{background:#fff;border:1px solid #e7ddf1;border-radius:14px;padding:15px 18px;margin-bottom:10px}
    .fq-list summary{list-style:none;cursor:pointer;display:flex;align-items:flex-start;gap:10px;font-weight:800;color:#3f3550;font-size:17.5px;line-height:1.6}
    .fq-list summary::-webkit-details-marker{display:none}
    .fq-list .q{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#ebe2f7;color:#5a3f96;font-weight:800;font-size:15px}
    .fq-list .pm{margin-left:auto;color:#6a4fa3;font-weight:800;font-size:20px;line-height:1.3}
    .fq-list details[open] .pm::after{content:"−"} .fq-list details:not([open]) .pm::after{content:"＋"}
    .fq-list .a{font-size:16.5px;line-height:1.9;color:#3a3029;margin:10px 0 2px 40px}
    .fq-list .tel{color:#5a3f96;font-weight:800}
  /* ==========================================================================
   HPトップ「最初に目に入るところ」デザイン（漫画 2026-10-15）
   いまの index.html の <style> の«あと»に、この一枚を足すだけで効きます（上書き）。
   言葉・並び・動きは変えていません。読みやすさ第一（本文17px以上・濃い色・押せる所は44px以上）。
   ========================================================================== */

/* ---- 色の名前（3つの扉の色を、扉と中身でそろえる）---- */
:root{
  --ink:#3a3029; --ink2:#3f3550; --pur:#6a4fa3; --pur2:#8e72c0;
  --free:#2f7a4d; --free-bg:#eaf6ee; --free-bd:#9fd0b2;   /* なぎね無料＝若葉 */
  --paid:#23716d; --paid-bg:#e6f4f2; --paid-bd:#94cfc8;   /* なぎね有料＝水 */
  --aks:#5a3f96;  --aks-bg:#efe8fa;  --aks-bd:#b9a6e0;    /* あかし＝夜の藤 */
}

/* ---- 帯：地を少しだけ明るく、蝶が透けて見える余白に ---- */
header.bd{position:relative;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 0%,#fbf7fe 0%,#f4eefb 60%,#efe7f8 100%)}
header.bd>*{position:relative;z-index:1}

/* 言語：スマホでも1段に（枠なしの文字のならび・押せる高さは保つ）*/
.bd-lang{gap:2px}
.bd-lang{flex-wrap:nowrap}
.bd-lang a{border:0;background:transparent;min-height:40px;padding:0 7px;font-size:13.5px;letter-spacing:0;white-space:nowrap;color:#4f3f73;border-radius:999px}
.bd-lang a+a{position:relative}
.bd-lang a+a::before{content:"";position:absolute;left:-1px;top:13px;bottom:13px;width:1px;background:#d6cbe8}
.bd-lang a.on{background:#fff;color:var(--pur);box-shadow:inset 0 0 0 1.5px #b9a6e0}
.bd-lang a.on+a::before,.bd-lang a+a.on::before{display:none}
.bd-lang a:hover{background:#fff}

/* ブランドとメニューを1段に（スマホ）*/
.bd-top{row-gap:2px;padding-top:6px}
.bd-brand b{font-size:17px}
.bd-menubtn{padding:8px 13px;border-radius:14px;box-shadow:0 3px 10px -6px rgba(106,79,163,.5)}

/* ---- 3つの扉：押せる«扉»に ---- */
.bd-doors-h{font-size:17px;color:var(--ink2);margin:6px 0 10px}
.bd-doors-h::before,.bd-doors-h::after{content:"✦";color:#d7b764;font-size:12px;margin:0 8px;vertical-align:2px}
.bd-doors{gap:10px}
.bd-door{position:relative;border-width:2px;border-radius:20px;padding:12px 6px 10px;gap:3px;
  box-shadow:0 10px 22px -14px rgba(70,50,120,.55),0 2px 0 rgba(255,255,255,.9) inset;
  transition:transform .15s ease, box-shadow .15s ease}
.bd-door:hover{transform:translateY(-2px);box-shadow:0 16px 26px -14px rgba(70,50,120,.6)}
.bd-door:active{transform:translateY(0)}
.bd-door:focus-visible{outline:3px solid #f0b46a;outline-offset:3px}
/* アイコン：白いふちと影で«浮かせる»（淡い絵が白地に沈まない）*/
.bd-door img{width:64px;height:64px;border-radius:17px;background:#fff;
  box-shadow:0 0 0 3px #fff,0 6px 14px -4px rgba(60,40,110,.45)}
.bd-door .nm{font-size:19px;margin-top:8px;color:var(--ink2)}
.bd-door .sb{font-size:14px}
/* 扉ごとの色 */
.bd-door.free{background:linear-gradient(180deg,#f3fbf5,var(--free-bg));border-color:var(--free-bd)}
.bd-door.free .sb{color:var(--free)}
.bd-door.paid{background:linear-gradient(180deg,#f2fbfa,var(--paid-bg));border-color:var(--paid-bd)}
.bd-door.paid .sb{color:var(--paid)}
.bd-door.aks{background:linear-gradient(180deg,#f7f3fd,var(--aks-bg));border-color:var(--aks-bd)}
.bd-door.aks .sb{color:var(--aks)}
/* «はじめる／ひらく»を、ボタンの形に（押せることが一目で）*/
.bd-door::after,.bd-door[aria-controls]::after,.bd-door.free::after{
  display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;margin-top:7px;white-space:nowrap;
  border-radius:999px;font-size:13px;font-weight:800;color:#fff;letter-spacing:.02em}
.bd-door.free::after{content:"▶ はじめる";background:#3f8f5f}
.bd-door.paid::after{content:"▼ ひらく";background:#2f8580}
.bd-door.aks::after{content:"▼ ひらく";background:#7258b0}
.bd-door[aria-expanded="true"]::after{content:"▲ とじる"}
.bd-door[aria-expanded="true"]{transform:translateY(-2px)}
.bd-door.paid[aria-expanded="true"]{border-color:#2f8580;box-shadow:0 0 0 4px rgba(47,133,128,.22),0 14px 26px -14px rgba(30,90,90,.6)}
.bd-door.aks[aria-expanded="true"]{border-color:#7258b0;box-shadow:0 0 0 4px rgba(114,88,176,.22),0 14px 26px -14px rgba(70,50,120,.6)}

/* ひらいた中身：どの扉の中身か、色と«しっぽ»でつなぐ */
.bd-panel{position:relative;margin-top:16px;border-width:2px;border-radius:20px;box-shadow:0 14px 30px -20px rgba(70,50,120,.55)}
.bd-panel::before{content:"";position:absolute;top:-11px;width:20px;height:20px;background:inherit;
  border-left:2px solid;border-top:2px solid;border-color:inherit;transform:rotate(45deg);border-radius:4px 0 0 0}
#bdp-paid{background:#fbfefe;border-color:var(--paid-bd);border-top:6px solid #2f8580}
#bdp-paid::before{left:calc(50% - 10px);border-color:#2f8580;top:-13px}
#bdp-aks{background:#fdfbff;border-color:var(--aks-bd);border-top:6px solid #7258b0}
#bdp-aks::before{left:calc(83.33% - 10px);border-color:#7258b0;top:-13px}
.bd-panel .pl{font-size:17px}
.pp-app{border-width:1.5px;border-radius:16px;background:#fff;box-shadow:0 6px 16px -12px rgba(70,50,120,.5)}
.pp-app img{box-shadow:0 0 0 3px #fff,0 5px 12px -4px rgba(60,40,110,.4)}
.pp-app .ds{font-size:15px;color:var(--ink)}
.ak-list li{font-size:17px}
.pp-note{font-size:15px}

/* 文字リンク2つ：やわらかい«小さなボタン»に（折り返しで切れない）*/
.bd-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0 2px}
.bd-links .sep{display:none}
.bd-links a{display:inline-flex;align-items:center;min-height:44px;padding:6px 16px;border-radius:999px;
  background:#fff;border:1.5px solid #d3c5ea;text-decoration:none;font-size:15px;line-height:1.4;color:#4a337f;text-align:center}
.bd-links a:hover{background:#f6f1fd}

/* ---- ヒーロー ---- */
section.rh.rh{background:radial-gradient(90% 60% at 30% 0%,#f8f2fc,#fffdfb 58%),#fffdfb}
.rh>*{position:relative;z-index:1}
section.rh .rh-h1{font-size:25px;line-height:1.55;max-width:none;color:#3f3456}
.rh-h1 .ph{display:block}
.rh-h1 .ph:last-child{background:linear-gradient(transparent 70%,rgba(240,205,130,.45) 70%);display:inline;padding:0 2px}
.rh-who2{border-width:2px;border-radius:22px;padding:16px 16px 16px 14px;
  background:linear-gradient(180deg,#fff,#fcfaff);box-shadow:0 14px 30px -22px rgba(70,50,120,.6)}
.rh-who2 .av{box-shadow:0 0 0 3px #fff,0 6px 14px -6px rgba(90,63,150,.45)}
.rh-who2 .by{font-size:16px;color:#4a4055}
.rh-goal2{font-size:17.5px;color:#93487c}
.rh-how{font-size:16px;color:#4a4055}
/* スマホの縦長動画：少し小さく（«こんなとき»を近くに）*/
@media(max-width:899px){
  .rh-visual{max-width:262px!important}
  .rh-video{padding:9px;border-radius:24px}
  .rh-video figcaption{font-size:15px}
}
@media(min-width:900px){
  .bd-lang a{font-size:15px;padding:0 13px;min-height:40px}
  .bd-door{padding:14px 16px;column-gap:18px!important}
  .bd-door img{width:62px;height:62px}
  .bd-door::after,.bd-door[aria-controls]::after,.bd-door.free::after{margin-top:4px;justify-self:start}
  #bdp-paid::before{left:calc(50% - 10px)} #bdp-aks::before{left:calc(83.33% - 10px)}
  section.rh .rh-h1{font-size:36px}
}

/* ==========================================================================
   小さな蝶たち（透かし）── 帯とヒーローの«地»に、薄く。押すのをじゃましない
   ========================================================================== */
.chou{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.chou i{position:absolute;display:block;width:var(--s,26px);height:var(--s,26px);opacity:calc(var(--o,.16) * 1.35);
  animation:chou-fly var(--t,26s) linear infinite;animation-delay:var(--d,0s)}
.chou i svg{width:100%;height:100%;display:block;animation:chou-flap var(--f,1.1s) ease-in-out infinite alternate;transform-origin:50% 50%}
@keyframes chou-flap{from{transform:scaleX(1)}to{transform:scaleX(.55)}}
@keyframes chou-fly{
  0%  {transform:translate(0,0) rotate(-8deg)}
  25% {transform:translate(calc(var(--dx,60px)*.5),calc(var(--dy,-40px)*.6)) rotate(6deg)}
  50% {transform:translate(var(--dx,60px),var(--dy,-40px)) rotate(-4deg)}
  75% {transform:translate(calc(var(--dx,60px)*.4),calc(var(--dy,-40px)*1.1)) rotate(8deg)}
  100%{transform:translate(0,0) rotate(-8deg)}}
@media (prefers-reduced-motion:reduce){.chou i,.chou i svg{animation:none}}
/* スマホ：目指す先2行が«る。»だけ次の行に落ちないように */
@media(max-width:420px){.rh-goal2{font-size:15.5px;letter-spacing:-.01em}}
