/* v045(10/12 本人「これ、ダサくない？」=上の帯の四角いロゴ+明朝の「スリジェ」+灰色の添え書き)
   → 正式ロゴの文字だけの版(10/12 本人「四角の中にある白文字じゃなくて、文字だけ抜いて入れた方が洗練されてる」FB-1307)+細い仕切り+小さな添え書き2行 */
.bar .brand.v45-brand{display:flex;align-items:center;gap:10px;min-width:0}
.v45-wm{display:block;width:auto;height:28px;border-radius:0!important}
.v45-div{flex:none;width:1px;height:24px;background:#ead3db}
.v45-tag{display:block;margin:0;font-size:12px;line-height:1.35;color:#7a6470;letter-spacing:.04em;white-space:normal}
.v45-tag .nw{display:block}
@media (max-width:370px){.v45-div,.v45-tag{display:none}}
footer img.v45-wm{width:auto;height:40px;margin:0 auto 10px;border-radius:0}

/* ---- 札の見出しの共通(しかも！・まだまだ！は v44 の「たとえば！」と同じ型) ---- */
.v45-line{margin:10px 0 0;text-align:center;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;font-size:16px;line-height:1.6;color:#3F2A2E;word-break:keep-all}
.v45-ai{display:inline-block;margin-top:4px;font-size:28px;line-height:1.3;color:#D9506F;background:linear-gradient(transparent 62%,#ffd3df 62%);padding:0 4px;letter-spacing:.02em}

/* ---- ぜ〜〜〜んぶ、AIでつくれる！(本人「テンション高い演出に」) ---- */
.v45-all{position:relative;margin:4px 0 16px;text-align:center;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;color:#3F2A2E}
.v45-all-1{margin:0 0 12px;font-size:20px;line-height:1.5;word-break:keep-all}
.v45-all-1 b{color:#D9506F}
.v45-chips{list-style:none;margin:0 auto 14px;padding:0 10px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:420px}
.v45-chips li{margin:0;padding:5px 14px;border-radius:999px;background:#fff;color:#C23B62;font-size:16px;line-height:1.5;box-shadow:0 0 0 2px #f3a9bd,0 4px 10px #c2456a1f}
.v45-chips li:nth-child(2n){background:#fff0f4}
.v45-all-3{position:relative;display:inline-block;margin:0;font-size:30px;line-height:1.35;color:#D9506F;text-shadow:0 3px 0 #fff,0 0 1px #fff}
.v45-all-3 .v45-z{display:inline-block;letter-spacing:-.04em}
.v45-burst{position:absolute;inset:-18px -26px;pointer-events:none;background:repeating-conic-gradient(from 0deg,#f6b6c788 0 3deg,#0000 3deg 15deg);-webkit-mask-image:radial-gradient(closest-side,#0000 58%,#000 60%,#000 72%,#0000 74%);mask-image:radial-gradient(closest-side,#0000 58%,#000 60%,#000 72%,#0000 74%);opacity:0}
[data-v45-in]:not(.v45-in) .v45-chips li,[data-v45-in]:not(.v45-in) .v45-all-3{opacity:0}
.v45-all.v45-in .v45-chips li{animation:v45pop .45s cubic-bezier(.2,.9,.3,1.25) calc(.15s + var(--k)*.13s) both}
.v45-all.v45-in .v45-all-3{animation:v45big .6s cubic-bezier(.2,.9,.3,1.2) 1s both}
.v45-all.v45-in .v45-burst{animation:v45burst 1.1s ease-out 1.05s both}
@keyframes v45pop{0%{opacity:0;transform:translateY(10px) scale(.6)}100%{opacity:1;transform:none}}
@keyframes v45big{0%{opacity:0;transform:scale(.5) rotate(-4deg)}100%{opacity:1;transform:none}}
@keyframes v45burst{0%{opacity:0;transform:scale(.6)}35%{opacity:1}100%{opacity:0;transform:scale(1.15)}}

/* ---- りかこの吹き出し(本人「テンション高い方がいいし、リカコの吹き出しがあるといいね」) ---- */
.v45-voice{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 16px 4px}
.v45-who{flex:none;margin:0;text-align:center}
.v45-who img{display:block;width:64px;height:64px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #fff,0 0 0 5px #f3a9bd}
.v45-who figcaption{margin-top:6px;font-size:12px;font-weight:700;color:#6E2A3D}
.v45-bub{position:relative;margin:0;padding:14px 20px 15px;border-radius:22px;background:linear-gradient(180deg,#f47a9a,#D9506F);color:#fff;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;font-size:23px;line-height:1.35;letter-spacing:.03em;box-shadow:0 8px 18px #d9506f40;transform:rotate(-2deg)}
.v45-bub::before{content:"";position:absolute;left:-10px;top:50%;margin-top:-9px;border-style:solid;border-width:9px 14px 9px 0;border-color:transparent #e8678a transparent transparent}
.v45-bub .v45-ln{position:absolute;right:-16px;top:-14px;width:30px;height:30px;pointer-events:none}
.v45-voice:not(.v45-in) .v45-bub{opacity:0}
.v45-voice.v45-in .v45-bub{animation:v45say .55s cubic-bezier(.2,.9,.3,1.3) .1s both}
@keyframes v45say{0%{opacity:0;transform:rotate(-2deg) scale(.4);transform-origin:left center}100%{opacity:1;transform:rotate(-2deg) scale(1)}}

/* ---- 覗く(本人「"覗く"って言葉って、めちゃ快感だから、演出入れて」) ---- */
.v45-peek{position:relative;display:inline-block}
.v45-eyes{position:absolute;left:50%;bottom:100%;width:34px;height:20px;margin-left:-17px;margin-bottom:-2px;overflow:hidden;pointer-events:none}
.v45-eyes svg{display:block;width:34px;height:20px;transform:translateY(100%)}
.v43-cta.v43-in .v45-eyes svg{animation:v45eyes 3.2s ease-in-out .2s both}
.v43-cta.v43-in .v45-eyes .v45-pu{animation:v45look 3.2s ease-in-out .2s both}
@keyframes v45eyes{0%{transform:translateY(100%)}18%,82%{transform:translateY(0)}100%{transform:translateY(0)}}
@keyframes v45look{0%,25%{transform:translateX(0)}40%,52%{transform:translateX(-2.4px)}64%,100%{transform:translateX(2.2px)}}
.v43-cta.v43-in .v45-peek .v45-pt{-webkit-mask-image:radial-gradient(circle at center,#000 0 34%,#0003 54%);mask-image:radial-gradient(circle at center,#000 0 34%,#0003 54%);-webkit-mask-size:300% 260%;mask-size:300% 260%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:v45spot 1.6s ease-in-out .25s both}
@keyframes v45spot{0%{-webkit-mask-position:100% 50%;mask-position:100% 50%}80%{-webkit-mask-position:0% 50%;mask-position:0% 50%;-webkit-mask-size:300% 260%;mask-size:300% 260%}100%{-webkit-mask-position:50% 50%;mask-position:50% 50%;-webkit-mask-size:4000% 4000%;mask-size:4000% 4000%}}

/* ---- 私もつくりたい(本人「めちゃワクワクする箇所なので、テキストをめちゃいい感じに演出入れて」) ---- */
.v45-want{position:relative;display:inline-block;color:#D9506F;font-size:1.12em}
.v45-want::after{content:"";position:absolute;left:-2px;right:-2px;bottom:.08em;height:.42em;z-index:-1;border-radius:4px;background:#ffd3df;transform:scaleX(0);transform-origin:left center}
.v43-cta.v43-in .v45-want::after{animation:v45mark .7s ease-out .25s both}
.v45-want .v45-sp{position:absolute;width:14px;height:14px;fill:#f3a9bd;opacity:0}
.v45-want .v45-sp.a{left:-14px;top:-8px}.v45-want .v45-sp.b{right:-12px;top:-10px;width:11px;height:11px}
.v43-cta.v43-in .v45-want .v45-sp{animation:v45tw 1.2s ease-out .8s both}
@keyframes v45mark{to{transform:scaleX(1)}}
@keyframes v45tw{0%{opacity:0;transform:scale(.3) rotate(-20deg)}50%{opacity:1;transform:scale(1.15) rotate(0)}100%{opacity:1;transform:scale(1)}}
.v43-cta .v43-lead{isolation:isolate}

/* ---- 「わたしの「好き」から」(本人「ちょっと小さすぎるかも」) ---- */
.v45-kick{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 16px 6px!important;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;font-size:19px!important;color:#C23B62!important;letter-spacing:.04em}
.v45-kick .v45-suki{background:linear-gradient(transparent 62%,#ffd3df 62%);padding:0 2px}
.v45-kick svg{flex:none;width:16px;height:16px;fill:#f3a9bd}

/* ---- こんな動画も、AIで。(本人「文字が小さすぎる」) ---- */
#gal43-ttl{flex-direction:column;align-items:center;gap:2px}
#gal43-ttl span{font-size:24px}
#gal43-ttl small{font-size:15px;color:#C23B62}

/* ---- まだまだ！ こんな投稿も、AIで。+ 横並びを整える(本人「整えて」「ワクワクする感じに！」) ---- */
.v45-more{margin:6px 0 12px;text-align:center}
#works-2 .sm20-row{padding:6px 16px 12px;scroll-padding-left:16px;gap:10px}
#works-2 .sm20-i{flex:0 0 44%;border-radius:14px;box-shadow:0 6px 16px #4a2a3626}
#works-2 .sm20-note{margin:4px 22px 0;font-size:12px;color:#6a5660}

/* ---- 考えごとの点「……」で「これ、私もつくってみたい」へつなぐ(本人「…... みたいな感じで、繋ぎ演出を入れたい」) ---- */
.v45-dots{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:10px;height:64px;margin:14px 0 0;background:linear-gradient(#0000,#fef3f5)}
.v45-dots i{display:block;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #f3a9bd,0 4px 10px #c2456a26}
.v45-dots i:nth-child(1){width:10px;height:10px;margin-bottom:14px}
.v45-dots i:nth-child(2){width:15px;height:15px;margin-bottom:6px}
.v45-dots i:nth-child(3){width:22px;height:22px;margin-bottom:0}
.v45-dots:not(.v45-in) i{opacity:0}
.v45-dots.v45-in i{animation:v45dot .4s cubic-bezier(.2,.9,.3,1.3) calc(.15s + var(--k)*.38s) both}
@keyframes v45dot{0%{opacity:0;transform:scale(.2)}100%{opacity:1;transform:scale(1)}}

/* ---- 拡大の窓の横送り ---- */
.v45-znav{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#fffbf9e6;border-top:1px solid #e4cad2}
.v45-znav[hidden]{display:none}
.v45-znav button{width:48px;height:44px;border:0;border-radius:999px;background:#fff;box-shadow:0 0 0 1px #e4cad2;color:#C23B62;font-size:26px;line-height:1;cursor:pointer}
.v45-znum{font-size:14px;font-weight:700;color:#6E2A3D}

@media (prefers-reduced-motion:reduce){.v45-all *,.v45-voice *,.v45-dots *,.v45-peek *,.v45-want,.v45-want *{animation:none!important;opacity:1!important}.v45-want::after{transform:none}.v45-eyes{display:none}}

/* ---- ボタンの「無料」(本人「無料!!っていい感じに強調したい」) ---- */
.v43-btn .v45-free{display:inline-block;margin:0 3px 0 0;padding:0 9px 1px;border-radius:8px;background:#FFE45C;color:#0B6B33;font-style:normal;font-size:1.08em;letter-spacing:.04em;transform:rotate(-4deg) translateY(-1px);box-shadow:0 2px 0 #c9a800;text-shadow:none}
main .v43-cta .v43-bl small{font-size:13.5px;letter-spacing:.02em}
@media (max-width:360px){main .v43-cta .v43-bl small{font-size:12px;letter-spacing:0}}

/* ---- しかも、今なら！(本人「繋ぎの演出として、しかも、今なら！！！！！ って入れたい」) ---- */
.v45-now{position:relative;padding:26px 16px 8px;text-align:center;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;background:linear-gradient(#0000,#fef9fb)}
.v45-now-1{margin:0;font-size:20px;color:#3F2A2E}
.v45-now-2{position:relative;display:inline-block;margin:2px 0 0;font-size:42px;line-height:1.25;color:#D9506F;letter-spacing:.02em;text-shadow:0 3px 0 #fff}
.v45-now:not(.v45-in) .v45-now-2,.v45-now:not(.v45-in) .v45-now-1{opacity:0}
.v45-now.v45-in .v45-now-1{animation:v45pop .4s ease-out .05s both}
.v45-now.v45-in .v45-now-2{animation:v45big .55s cubic-bezier(.2,.9,.3,1.25) .4s both}
.v45-now.v45-in .v45-burst{animation:v45burst 1s ease-out .45s both}

/* ---- プロフィールの3行 ---- */
.v45-prof{grid-column:1/-1;grid-row:2;list-style:none;margin:2px 0 0;padding:0;display:grid;gap:8px;text-align:left}
.v45-prof li{position:relative;margin:0;padding:8px 12px 8px 36px;border-radius:12px;background:#fff6f8;box-shadow:0 0 0 1px #f3d3dd;font-size:14px;line-height:1.55;font-weight:700;color:#3F2A2E}
.v45-prof li::before{content:"";position:absolute;left:11px;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:50%;background:#D9506F}
.v45-prof li::after{content:"";position:absolute;left:16px;top:50%;width:6px;height:3.5px;margin-top:-3px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.v45-prof b{color:#D9506F;font-size:1.12em}
.v45-prof small{display:block;font-size:12px;font-weight:500;color:#6a5660}
.v45-prof a{color:inherit;text-decoration:none}

/* ---- 線が下りて、一文字ずつ ---- */
.v45-drop{display:block;width:2px;height:44px;margin:0 auto 10px;background:linear-gradient(#f3a9bd00,#D9506F);transform-origin:top;transform:scaleY(0)}
.v45-drop.v45-in{animation:v45drop .7s ease-out both}
@keyframes v45drop{to{transform:scaleY(1)}}
.v45-type{font-size:17px!important}
.v45-type span{display:inline-block;opacity:0}
.v45-type.v45-in span{animation:v45ch .35s ease-out calc(.5s + var(--i)*.055s) both}
@keyframes v45ch{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:none}}

/* ---- 数字をもっと豪華に ---- */
.v45-numt{margin-bottom:14px}
.v43s:not(.v45-in) .v43s-c{opacity:0}
.v43s.v45-in .v43s-c{animation:v45pop .55s cubic-bezier(.2,.9,.3,1.2) calc(.15s + var(--k)*.18s) both}
.v43s-c{position:relative;overflow:hidden}
.v43s-c::after{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:30%;background:linear-gradient(100deg,#fff0,#ffffffb3,#fff0);transform:translateX(-160%) skewX(-16deg);pointer-events:none}
.v43s.v45-in .v43s-c::after{animation:v45sheen 1.2s ease-in-out calc(1.4s + var(--k)*.2s) both}
@keyframes v45sheen{to{transform:translateX(420%) skewX(-16deg)}}
.v45-cs{position:absolute;fill:#f6c64f;opacity:0;pointer-events:none}
.v45-cs.a{right:12px;top:12px;width:18px;height:18px}.v45-cs.b{left:14px;top:46%;width:12px;height:12px}
.v43s.v45-in .v45-cs{animation:v45tw 1s ease-out calc(1.2s + var(--k)*.2s) both}
.v43s-n b{text-shadow:0 2px 0 #fff,0 0 14px #ffd3df}
@media (prefers-reduced-motion:reduce){.v45-type span,.v43s .v43s-c,.v45-now *{animation:none!important;opacity:1!important}.v45-drop{transform:none}}

/* ---- 先輩たちのタイトルコール ---- */
.v45-senpai{margin:6px 0 16px}
.v45-senpai .v44-rt-t{font-size:22px}
.v45-senpai-s{margin:8px 16px 0;font-size:13px;color:#6a5660;line-height:1.6}

/* ---- 後半の整え(10/12 本人「特に後半！」) ---- */
#friends-2 .v43s{padding:0 16px}
#offer .o21-who{display:flex!important;align-items:center;justify-content:center;gap:10px;width:max-content;max-width:calc(100% - 32px);margin:14px auto 8px!important;padding:6px 18px 6px 6px;border-radius:999px;background:#fff;box-shadow:0 4px 14px #c2456a1f,0 0 0 1px #f3d3dd}
#offer .o21-who img{width:44px!important;height:44px!important;border-radius:50%;object-fit:cover;object-position:50% 18%}
#offer .o21-who p{margin:0;text-align:left;line-height:1.35}
#offer .o21-who b{display:block;font-size:15px!important;color:#3F2A2E}
#offer .o21-who b small{margin-left:6px;font-size:12px;font-weight:500;color:#6a5660}
#offer .o21-who em{display:block;font-style:normal;font-size:12.5px!important;font-weight:700;color:#C23B62}
.v45-corner{margin:4px 0 18px}
.v45-corner .v44-rt-t{font-size:22px}
#safe .v45-type{display:block;text-align:center;font-size:17px!important}
.v45-faqstk{display:table!important;margin:0 auto 10px!important}
#faq{text-align:center}
#faq .faq{text-align:left}
/* 放射線の飾りが狭い画面(320px)で横にはみ出さないように */
.v45-now,.v45-all{overflow:hidden}
.v45-all{padding:8px 0}
/* 10/12 見た目の直し: 吹き出しは1行・お約束の札の大きさ・プロフィールの折り返し */
.v45-bub{flex:0 1 auto;white-space:nowrap}
@media (max-width:360px){.v45-bub{font-size:19px;padding:12px 16px 13px}.v45-who img{width:54px;height:54px}}
#faq .v45-faqstk{font-size:17px!important;line-height:1.5!important;padding:3px 18px 4px!important;margin:0 auto 10px!important}
.v45-prof li{word-break:keep-all;overflow-wrap:anywhere;font-size:13.5px}
.v45-prof li a{display:block;margin:-8px -12px -8px -36px;padding:8px 12px 8px 36px;min-height:44px;box-sizing:border-box;border-radius:12px}
.v45-senpai-s{color:#5c4753}

/* ---- 分身のセリフ(ワンチーム感) ---- */
.v44-stage{height:calc(var(--u)*100)}
.v45-me-say{position:absolute;left:50%;top:calc(var(--u)*88);z-index:4;margin:0;padding:6px 14px;border-radius:999px;transform:translateX(-50%);white-space:nowrap;background:linear-gradient(180deg,#f47a9a,#D9506F);color:#fff;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;font-size:clamp(14px,4.2cqw,17px);box-shadow:0 6px 14px #d9506f40}
.v45-me-say::before{content:"";position:absolute;left:50%;top:-8px;margin-left:-7px;border-style:solid;border-width:0 7px 9px;border-color:transparent transparent #f27394}
.v44-c figcaption{display:grid}
.v44-c figcaption>span{grid-area:1/1;text-align:center}
.v45-say{opacity:0;color:#fff}
.v44-bun.armed:not(.go) .v45-me-say{opacity:0}
.v44-bun.go .v45-me-say{animation:v45saypop .5s cubic-bezier(.2,.9,.3,1.3) 1.25s both}
.v44-bun.go .v44-c figcaption{animation:v45capbg .01s linear calc(1.9s + var(--j)*.22s) both}
.v44-bun.go .v45-role{animation:v45out .25s ease-in calc(1.9s + var(--j)*.22s) both}
.v44-bun.go .v45-say{animation:v45in .3s ease-out calc(1.95s + var(--j)*.22s) both}
.v44-bun.done .v45-role{opacity:0}.v44-bun.done .v45-say{opacity:1}.v44-bun.done .v44-c figcaption{background:var(--rose,#D9506F)}
@keyframes v45saypop{0%{opacity:0;transform:translateX(-50%) scale(.5)}100%{opacity:1;transform:translateX(-50%) scale(1)}}
@keyframes v45capbg{to{background:var(--rose,#D9506F)}}
@keyframes v45out{to{opacity:0;transform:translateY(-4px)}}
@keyframes v45in{from{opacity:0;transform:translateY(4px) scale(.9)}to{opacity:1;transform:none}}

/* ---- 作品の壁: 押しても開かない・止めるボタンは札にかからない所へ ---- */
#wall .v38-wall-open{pointer-events:none;cursor:default}
#works-wall .vp-wall{bottom:52px!important;width:32px!important;height:32px!important;opacity:.8}
/* ---- 広告バナーの流れもマウスでは止めない(指で押さえた時だけ止める) ---- */
.v43-mq.run .v43-row:hover .v43-track{animation-play-state:running}
.v43-mq.run .v43-row.hold .v43-track{animation-play-state:paused}

/* ---- りかこの吹き出しの日付 ---- */
.v45-who figcaption small{display:block;margin-top:1px;font-size:11px;font-weight:500;color:#7a6470;white-space:nowrap}

/* ---- し・か・も！(上の「たとえば！」の札と違う型: 1文字ずつ丸い判が押される) ---- */
.v45-skm{display:flex;justify-content:center;gap:6px;margin:0 0 10px}
.v45-skm span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;color:#D9506F;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;font-size:22px;box-shadow:0 0 0 3px #D9506F,0 5px 0 #e9b3c2;transform:rotate(calc((var(--k) - 1.5) * 6deg))}
.v45-skm span:last-child{background:#D9506F;color:#fff}
.v45-skm:not(.v45-in) span{opacity:0}
.v45-skm.v45-in span{animation:v45stamp .42s cubic-bezier(.2,.9,.3,1.4) calc(.1s + var(--k)*.2s) both}
@keyframes v45stamp{0%{opacity:0;transform:scale(2.2) rotate(calc((var(--k) - 1.5) * 6deg))}60%{opacity:1}100%{opacity:1;transform:scale(1) rotate(calc((var(--k) - 1.5) * 6deg))}}
@media (prefers-reduced-motion:reduce){.v45-skm span{animation:none!important;opacity:1!important}}

/* ---- AIが、自動生成！(本人「めちゃ大事だから、つい読んじゃうように演出入れて」): AIが文字を生成するように一文字ずつ+点滅する入力の印→下線が引かれ、光が走り、きらめく ---- */
.v45-ai{position:relative;background:none!important;overflow:visible}
.v45-ai::after{content:"";position:absolute;left:-4px;right:-4px;bottom:.06em;height:.42em;z-index:-1;border-radius:4px;background:#ffd3df;transform:scaleX(0);transform-origin:left center}
.v45-line{isolation:isolate}
.v45-ai .ch{display:inline-block}
.v45-line:not(.v45-in) .v45-ai .ch{opacity:0}
.v45-line.v45-in .v45-ai .ch{animation:v45type .18s ease-out calc(.35s + var(--i)*.11s) both}
.v45-caret{display:inline-block;width:3px;height:.95em;margin-left:3px;vertical-align:-.08em;border-radius:2px;background:#D9506F;opacity:0}
.v45-line.v45-in .v45-caret{animation:v45blink .5s steps(1) .1s 5 both,v45caretout .3s ease-out 2.6s both}
.v45-line.v45-in .v45-ai::after{animation:v45mark .6s ease-out 1.35s both}
.v45-ai::before{content:"";position:absolute;top:-10%;bottom:-10%;left:0;width:22%;background:linear-gradient(100deg,#fff0,#ffffffcc,#fff0);transform:translateX(-120%) skewX(-16deg);pointer-events:none;mix-blend-mode:soft-light;opacity:0}
.v45-line.v45-in .v45-ai::before{animation:v45gsweep 1s ease-in-out 1.7s both}
.v45-gsp{position:absolute;fill:#f6c64f;opacity:0;pointer-events:none}
.v45-gsp.a{right:-18px;top:-12px;width:20px;height:20px}.v45-gsp.b{left:-16px;bottom:-4px;width:13px;height:13px}
.v45-line.v45-in .v45-gsp{animation:v45tw .9s ease-out 1.9s both}
@keyframes v45type{0%{opacity:0;transform:translateY(5px);filter:blur(3px)}100%{opacity:1;transform:none;filter:blur(0)}}
@keyframes v45blink{0%{opacity:1}50%{opacity:0}}
@keyframes v45caretout{to{opacity:0}}
@keyframes v45gsweep{0%{opacity:1;transform:translateX(-120%) skewX(-16deg)}100%{opacity:1;transform:translateX(520%) skewX(-16deg)}}
@media (prefers-reduced-motion:reduce){.v45-ai .ch{opacity:1!important;animation:none!important}.v45-ai::after{transform:none}.v45-caret{display:none}}

/* ---- つなぎ目(本人「つなぎ目を、全体的にめちゃおしゃれにして」): 下の節の色の波+白い縁+桜の花びら。seams_v045.py が色の差の大きい境目だけに置く ---- */
.v45-seamA{position:relative}
.v45-seam{position:absolute;left:0;right:0;bottom:-1px;height:34px;z-index:3;pointer-events:none}
.v45-seam::before,.v45-seam::after{content:"";position:absolute;left:0;right:0;bottom:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 34' preserveAspectRatio='none'%3E%3Cpath d='M0 34V20C45 8 95 4 145 13S245 31 305 18S372 6 400 12V34Z'/%3E%3C/svg%3E") bottom/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 34' preserveAspectRatio='none'%3E%3Cpath d='M0 34V20C45 8 95 4 145 13S245 31 305 18S372 6 400 12V34Z'/%3E%3C/svg%3E") bottom/100% 100% no-repeat}
.v45-seam::before{top:-4px;background:#ffffffb8}
.v45-seam::after{top:0;background:linear-gradient(90deg,var(--l),var(--m),var(--r))}
.v45-seam i{position:absolute;z-index:1;width:14px;height:10px;border-radius:70% 0 70% 0;background:linear-gradient(135deg,#ffd3df,#f39ab3);box-shadow:0 1px 2px #c2456a33}
.v45-seam .p1{left:22%;bottom:16px;transform:rotate(-24deg)}
.v45-seam .p2{left:71%;bottom:12px;width:11px;height:8px;transform:rotate(38deg)}
/* 無料の札の崩れ(本人「崩れを、直して！ 無料のところ...」): 下がって見える・隙間が広い → 行の中で上下の真ん中にそろえ、隙間を詰める */
main .v43-cta .v43-bl b{display:inline-flex;align-items:center;justify-content:center;gap:5px}
.v43-btn .v45-free{margin:0!important;padding:1px 9px 2px!important;line-height:1.25;font-size:.98em!important;transform:rotate(-3deg)!important;box-shadow:0 2px 0 #c9a800}
.v44-c figcaption>span{white-space:nowrap}

/* ---- 横のはみ出し: 「自動生成！」の光が走り終わって右の外に残っていた → 終わりは見えない所へ戻す ---- */
@keyframes v45gsweep{0%{opacity:1;transform:translateX(-120%) skewX(-16deg)}95%{opacity:1;transform:translateX(420%) skewX(-16deg)}100%{opacity:0;transform:translateX(-120%) skewX(-16deg)}}
/* ---- 分身の下の2人を少し下げて、上の札と重ならないように ---- */
.v44-c1{--y:calc(var(--u)*0)}.v44-c5{--y:calc(var(--u)*0)}

/* ---- プロフィール: 写真が箇条書きに隠れていた(本人「崩れを直して」)・物語の一言・発信の行 ---- */
#teacher .prof19-face{grid-row:1!important;align-self:center}
.v45-story{margin:6px 0 0;font-size:13.5px;font-weight:700;color:#C23B62;line-height:1.5}
.v45-story span{display:inline-block}

/* ---- 数字: 2×2・数字を大きく・余白を詰める(本人「もうちぃ良い文字を大きくできそうね。余白が寂しい」) ---- */
#friends-2 .v43s-g{grid-template-columns:1fr 1fr;gap:10px}
#friends-2 .v43s-c,#friends-2 .v43s-donut{grid-column:auto!important;display:block!important;padding:10px 8px 14px!important;text-align:center!important}
#friends-2 .v43s-c img{width:62%!important;max-width:150px;margin:0 auto 2px!important;grid-row:auto!important}
#friends-2 .v43s-n{padding:0!important}
#friends-2 .v43s-n b{font-size:46px!important;letter-spacing:-.02em}
#friends-2 .v43s-n span{font-size:20px}
#friends-2 .v43s-l{margin:6px 0 0!important;padding:0!important;font-size:15px}
@media (max-width:360px){#friends-2 .v43s-n b{font-size:38px!important}}

/* ---- PC で札の見出しが小さい(本人「PCだと小さくて見づらいので、もうちょいずつ大きく」「全体も俯瞰して、他のこう言う系も大きく」) ---- */
@media (min-width:600px){
  .v44-stk{font-size:21px!important;padding:4px 24px 6px!important}
  .v44-rt-t{font-size:26px!important}
  .v45-senpai .v44-rt-t,.v45-corner .v44-rt-t{font-size:28px!important}
  .v45-senpai-s{font-size:15px}
  .v45-skm span{width:50px;height:50px;font-size:27px}
  .v45-line{font-size:19px}.v45-ai{font-size:36px}
  .v45-all-1{font-size:24px}.v45-chips li{font-size:18px}.v45-all-3{font-size:40px}
  .v45-now-1{font-size:24px}.v45-now-2{font-size:54px}
  main .v43-cta .v43-lead{font-size:20px}
  .v45-kick{font-size:23px!important}
  .v45-type,#safe .v45-type{font-size:20px!important}
  .v45-prof li{font-size:16px}.v45-story{font-size:15px}
  .v45-bub{font-size:28px}
  #gal43-ttl span{font-size:30px}#gal43-ttl small{font-size:17px}
  .v44-k{font-size:19px}
  .v45-me-say{font-size:18px}
  #friends-2 .v43s-n b{font-size:56px!important}#friends-2 .v43s-l{font-size:17px}
}

/* ---- スリジェと、りかこのリアルな発信(本人「この辺、デザイン、めーーーちゃくちゃ美意識高く整えて」) ---- */
#friends-4{padding-left:16px;padding-right:16px}
#friends-4 .c28-row{max-width:600px;margin:30px auto 0}
#friends-4 .c28-h{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #f1d9e1}
#friends-4 .c28-h p{font-family:"Zen Maru Gothic",var(--sans);font-size:16px;letter-spacing:.04em}
#friends-4 .c28-h p::before{content:"";flex:none;width:4px;height:18px;border-radius:2px;background:linear-gradient(#f47a9a,#D9506F)}
#friends-4 .c28-all{min-height:34px;padding:0 12px 0 14px;border-radius:999px;box-shadow:inset 0 0 0 1.5px #f0b7c7;background:#fff;font-size:12.5px}
#friends-4 .c28-cards{gap:14px}
#friends-4 .c28{border-radius:18px;box-shadow:0 10px 26px #c2456a17,0 0 0 1px #f4e3e9}
#friends-4 .c28-fig{aspect-ratio:4/3}
#friends-4 .c28-fig img{object-position:50% 28%}
#friends-4 .c28-t{margin:12px 14px 0;font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#friends-4 .c28-m{margin:8px 14px 14px;font-size:12.5px;color:#6a5660}
#friends-4 .c28-src{margin-bottom:2px;font-size:12px;letter-spacing:.08em}
#friends-4 .c28-ig{background:radial-gradient(120% 90% at 50% 0%,#fff 0%,#fde8ee 55%,#f9d4df 100%);gap:8px}
#friends-4 .c28-ig img{width:76px;height:76px;box-shadow:0 0 0 3px #fff,0 0 0 6px transparent;outline:3px solid #0000;background:#fff;border:3px solid #fff;box-shadow:0 0 0 3px #f58fb0,0 8px 18px #c2456a2e}
#friends-4 .c28-ig b{font-size:13px;letter-spacing:.02em;color:#6E2A3D}
#friends-4 .c28-play{width:34px;height:34px;left:10px;bottom:10px}
#friends-4 .c28-play::after{left:13px;top:10px;border-width:7px 0 7px 11px}
@media (min-width:600px){#friends-4 .c28-h p{font-size:18px}#friends-4 .c28-t{font-size:15px}}

/* ---- 発信: 横にスワイプで6つずつ ---- */
#friends-4 .c28-cards{display:flex!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 14px;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}
#friends-4 .c28-cards::-webkit-scrollbar{display:none}
#friends-4 .c28{flex:0 0 70%;scroll-snap-align:start}
@media (min-width:600px){#friends-4 .c28{flex-basis:44%}}
#friends-4 .c28-t{min-height:3.1em}
.v45-f4note{margin:4px 0 0!important;font-size:12px!important;color:#6a5660!important}

/* ---- 締めの絵のキラキラ ---- */
.v45-glitwrap{position:relative}
.v45-glit{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.v45-bloom{position:absolute;inset:-10%;background:radial-gradient(60% 40% at 50% 38%,#ffffff66,#fff0 70%);animation:v45bloom 6s ease-in-out infinite alternate}
.v45-glit .st{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;background:radial-gradient(circle,#fff 0 18%,#fff0 19%),conic-gradient(from 45deg,#0000 0 20%,#fff 20% 30%,#0000 30% 45%,#fff 45% 55%,#0000 55% 70%,#fff 70% 80%,#0000 80% 95%,#fff 95%);-webkit-mask:radial-gradient(circle,#000 0 22%,#0000 70%);mask:radial-gradient(circle,#000 0 22%,#0000 70%);filter:drop-shadow(0 0 4px #fff) drop-shadow(0 0 8px #ffd7e3);transform:scale(0);animation:v45twk var(--d) ease-in-out var(--w) infinite}
.v45-glit .st:nth-child(3n){background:radial-gradient(circle,#fff 0 25%,#fff0 60%);width:8px;height:8px;margin:-4px 0 0 -4px;-webkit-mask:none;mask:none}
.v45-glit .pe{position:absolute;top:-6%;width:14px;height:10px;border-radius:70% 0 70% 0;background:linear-gradient(135deg,#ffe3eb,#f6a5bc);opacity:.9;animation:v45fall var(--d) linear var(--w) infinite}
@keyframes v45twk{0%,100%{transform:scale(0) rotate(0);opacity:0}45%{transform:scale(var(--s)) rotate(45deg);opacity:1}60%{transform:scale(calc(var(--s)*.6)) rotate(60deg);opacity:.8}}
@keyframes v45fall{0%{transform:translate(0,0) rotate(0)}50%{transform:translate(var(--x),52vh) rotate(160deg)}100%{transform:translate(calc(var(--x)*-.5),110vh) rotate(320deg)}}
@keyframes v45bloom{from{opacity:.4}to{opacity:.9}}
@media (prefers-reduced-motion:reduce){.v45-glit .st,.v45-glit .pe,.v45-bloom{animation:none!important;display:none}}
/* ---- ラジオの札: 題を大きく・音の波・再生の印 ---- */
#friends-4 .v45-radio{display:flex;flex-direction:column;justify-content:center;padding:16px 16px 22px;aspect-ratio:4/3;background:linear-gradient(135deg,#f7a8bf,#d9506f);color:#fff}
#friends-4 .v45-radio[style*="--g:1"]{background:linear-gradient(135deg,#c9b6f0,#8f6fd0)}
#friends-4 .v45-radio[style*="--g:2"]{background:linear-gradient(135deg,#ffc9a8,#f07d8c)}
.v45-rq{position:absolute;left:12px;top:-6px;font-family:Georgia,serif;font-size:64px;line-height:1;color:#ffffff59}
.v45-rt{position:relative;font-family:"Zen Maru Gothic",var(--sans);font-weight:700;font-size:16px;line-height:1.5;text-shadow:0 1px 6px #0002;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.v45-wave{position:absolute;right:14px;bottom:14px;display:flex;align-items:flex-end;gap:3px;height:22px}
.v45-wave i{display:block;width:3px;border-radius:2px;background:#ffffffc9}
.v45-wave i:nth-child(1){height:30%}.v45-wave i:nth-child(2){height:70%}.v45-wave i:nth-child(3){height:45%}.v45-wave i:nth-child(4){height:100%}.v45-wave i:nth-child(5){height:55%}.v45-wave i:nth-child(6){height:80%}.v45-wave i:nth-child(7){height:35%}
#friends-4 .v45-rc .c28-m{margin-top:10px}
@media (min-width:600px){.v45-rt{font-size:18px}}
/* ---- 総点検 r3 の直し(10/12 4時台) ---- */
#friends-4 .c28-t{display:block;-webkit-line-clamp:unset;overflow:visible;min-height:0}
.v45-who figcaption small{font-size:12px;color:#5f4a55}
.v45-f4note{color:#54404a!important}
#friends-4 .c28-all{min-height:44px}
#works-wall .vp-wall{width:44px!important;height:44px!important}
main>footer .f31-links a{display:flex;align-items:center;min-height:44px!important}
/* 光の筋が 320px 幅で一瞬だけ画面の右へ1px出ていた(10/12 本番の点検)→ 行の中で切り、筋は文字の中で消える */
.v45-line{overflow-x:clip;overflow-clip-margin:12px}
@keyframes v45gsweep{0%{opacity:1;transform:translateX(-120%) skewX(-16deg)}85%{opacity:1}100%{opacity:0;transform:translateX(400%) skewX(-16deg)}}
/* ---- フッターのロゴと添え書きを1行に(上の帯と同じ「ロゴ｜添え書き」・改行なし) ---- */
.v45-fbrand{display:flex;align-items:center;justify-content:center;gap:clamp(9px,2.6vw,14px);margin:0 auto 14px;white-space:nowrap}
footer .v45-fbrand img.v45-wm{height:clamp(29px,8.8vw,38px);margin:0}
.v45-fbrand .v45-div{height:clamp(20px,6vw,26px)}
.v45-ftag{font-size:clamp(12px,3.7vw,15px);line-height:1.3;color:#6f5a65;letter-spacing:.02em}
@media (max-width:340px){.v45-ftag{letter-spacing:0}}
.v45-fbrand .v45-div{display:block!important}
/* ---- 上の帯もフッターと同じ「ロゴ｜添え書き」の1行に(10/12 本人「画像1枚目のこのデザインが、ヘッダ？画像2枚目のところにもなってて欲しい」) ---- */
.bar .brand.v45-brand{gap:clamp(9px,2.6vw,13px);white-space:nowrap}
.bar .v45-wm{height:clamp(26px,7.4vw,32px)}
.bar .v45-div{display:block!important;height:clamp(18px,5.4vw,24px)}
.bar .v45-tag{display:block!important;font-size:clamp(12px,3.5vw,14.5px);line-height:1.3;color:#6f5a65;letter-spacing:.02em;white-space:nowrap}
.bar .v45-tag .nw{display:inline}
@media (max-width:340px){.bar .v45-tag{letter-spacing:0}}
.bar img.v45-wm{width:auto!important;max-width:none!important;aspect-ratio:253/120;flex:none}
/* ---- 動画の窓の送り(‹ n / N ›) ---- */
.v45-vnav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#fffbf9;border-top:1px solid #e4cad2}
.v45-vnav button{width:52px;height:44px;border:0;border-radius:999px;background:#fff;box-shadow:0 0 0 1px #e4cad2;color:#C23B62;font-size:26px;line-height:1;cursor:pointer}
.v45-vnum{font-size:14px;font-weight:700;color:#6E2A3D}
#gal43-video{max-height:calc(96dvh - 120px)}
