@charset "UTF-8";

/* =========================================================
   0. トークン
   ========================================================= */
:root{
	--brand:#0b63d6;
	--brand-deep:#03337d;
	--brand-2:#2b8dff;
	--brand-light:#e6f0ff;
	--accent:#ff7a18;
	--accent-deep:#ef4e00;
	--gold:#ffd400;
	--ink:#0a1a2b;
	--muted:#54687d;
	--line:#d5e5f7;
	--bg:#ffffff;
	--bg-alt:#eef5ff;
	--grad-brand:linear-gradient(135deg,#0b63d6 0%,#2b8dff 100%);
	--grad-brand-deep:linear-gradient(135deg,#03337d 0%,#0b63d6 55%,#2b8dff 100%);
	--grad-accent:linear-gradient(135deg,#ffb020 0%,#ff5a00 100%);
	--grad-gold:linear-gradient(135deg,#ffe44d 0%,#ffab00 100%);
	--shadow-soft:0 12px 32px -16px rgba(3,51,125,.4);
	--shadow:0 26px 56px -22px rgba(3,51,125,.55);
	--shadow-pop:0 20px 44px -16px rgba(255,90,0,.6);
	--radius:18px;
	--ff:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
	--ff-disp:"Outfit","Noto Sans JP",sans-serif;
	--head-h:70px;
}

/* =========================================================
   1. リセット
   ========================================================= */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--head-h) + 16px)}
body{margin:0;font-family:var(--ff);font-size:17px;line-height:1.9;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none}
h1,h2,h3,h4,p,ul,ol,figure,table{margin:0;padding:0}
ul,ol{list-style:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
table{border-collapse:collapse;width:100%}

.micon{font-family:"Material Symbols Rounded";font-weight:normal;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;vertical-align:middle}

.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:8px;top:8px;z-index:9999;background:#fff;padding:10px 16px;border-radius:8px;box-shadow:var(--shadow)}

.container{width:min(1140px,92%);margin-inline:auto}
.container--narrow{width:min(880px,92%)}

/* =========================================================
   2. トップバー
   ========================================================= */
.topbar{position:relative;overflow:hidden;background:var(--grad-brand-deep);color:#fff;font-size:14px;font-weight:700;line-height:1.6;text-align:center;padding:10px 14px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.topbar::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);animation:shine 5.5s linear infinite}
@keyframes shine{0%{left:-60%}60%{left:120%}100%{left:120%}}
.topbar b{color:var(--gold)}
.topbar__live{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.2);border-radius:999px;padding:4px 14px;font-weight:900;font-size:13px}
.topbar__dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgba(74,222,128,.75);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(74,222,128,0)}100%{box-shadow:0 0 0 0 rgba(74,222,128,0)}}
@media(max-width:640px){
	.topbar{padding:8px 8px;gap:6px 8px}
	.topbar__live{font-size:11px;padding:3px 10px;flex:none}
	.topbar__ttl{font-size:12px}
	/* 2行目は必ず幅いっぱいを使って1行に収める */
	.topbar__sub{flex:0 0 100%;white-space:nowrap;font-size:11px;letter-spacing:-.01em}
}
@media(max-width:380px){
	.topbar__live{font-size:10.5px;padding:3px 8px}
	.topbar__ttl{font-size:11px}
	.topbar__sub{font-size:10px}
}

/* =========================================================
   3. ヘッダー
   ========================================================= */
.site-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:2px solid var(--brand-light);box-shadow:0 6px 20px -16px rgba(3,51,125,.6)}
.hdr-inner{display:flex;align-items:center;gap:18px;height:var(--head-h)}
.logo{display:flex;align-items:center;gap:11px;color:var(--ink);flex:none}
.logo__mark{display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:13px;background:var(--grad-brand);color:#fff;font-family:var(--ff-disp);font-weight:900;font-size:20px;line-height:1;letter-spacing:-.04em;box-shadow:0 10px 20px -8px rgba(11,99,214,.95)}
.logo__mark i{font-style:normal;color:var(--gold)}
.logo__name{font-family:var(--ff-disp);font-weight:900;font-size:19px;letter-spacing:.02em;line-height:1.1;color:var(--brand-deep)}
.logo__name small{display:block;font-family:var(--ff);font-weight:800;font-size:11.5px;color:var(--muted);letter-spacing:0;margin-top:3px}

.nav{display:flex;gap:17px;margin-left:auto}
.nav a{font-size:14px;font-weight:800;color:var(--ink);white-space:nowrap;position:relative;padding:5px 0}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;border-radius:3px;background:var(--grad-accent);transition:right .25s}
.nav a:hover::after{right:0}

.hdr-cta{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none}
.hdr-tel{display:flex;align-items:center;gap:8px;color:var(--brand-deep);flex:none}
.hdr-tel .micon{font-size:25px;color:var(--brand)}
.hdr-tel__txt{white-space:nowrap}
.hdr-tel__txt small{display:block;font-size:11px;font-weight:700;color:var(--muted);line-height:1.2}
.hdr-tel__txt b{display:block;font-family:var(--ff-disp);font-size:22px;letter-spacing:0;line-height:1.15;white-space:nowrap}
.hdr-btn{display:inline-flex;align-items:center;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:900;color:#fff;white-space:nowrap;flex:none;transition:transform .2s,box-shadow .2s}
.hdr-btn--line{background:linear-gradient(135deg,#2ade7d,#06b14b);box-shadow:0 12px 22px -12px rgba(6,199,85,.95)}
.hdr-btn--main{background:var(--grad-accent);box-shadow:var(--shadow-pop)}
.hdr-btn:hover{transform:translateY(-2px)}

.burger{display:none;width:44px;height:44px;border-radius:12px;border:2px solid var(--brand-light);padding:0;place-items:center}
.burger span{display:block;width:20px;height:2.5px;border-radius:2px;background:var(--brand-deep);margin:4px auto;transition:.25s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

@media(max-width:1300px){
	.nav{position:fixed;inset:calc(var(--head-h) + 40px) 0 auto 0;flex-direction:column;gap:0;background:#fff;border-bottom:2px solid var(--brand-light);box-shadow:var(--shadow);padding:6px 0;display:none}
	.nav.is-open{display:flex}
	.nav a{padding:16px 7%;font-size:16px;border-bottom:1px solid var(--line)}
	.nav a::after{display:none}
	.burger{display:grid}
}
@media(max-width:900px){
	.hdr-tel,.hdr-btn--line{display:none}
	.logo__name{font-size:17px}
}
@media(max-width:520px){
	.hdr-btn--main{padding:10px 16px;font-size:13.5px}
	.logo__name small{display:none}
}

/* =========================================================
   4. 汎用パーツ
   ========================================================= */
.section{padding:clamp(64px,8vw,108px) 0;position:relative}
.section--alt{background:
	radial-gradient(700px 300px at 88% 0%,rgba(43,141,255,.12),transparent 62%),
	radial-gradient(620px 280px at 4% 100%,rgba(255,122,24,.10),transparent 62%),
	var(--bg-alt)}
.sec-head{text-align:center;max-width:820px;margin:0 auto clamp(34px,4.6vw,56px)}
.eyebrow{display:inline-flex;align-items:center;font-family:var(--ff-disp);font-weight:900;font-size:13px;letter-spacing:.22em;color:#fff;background:var(--grad-brand);border-radius:999px;padding:6px 20px;margin-bottom:16px;box-shadow:0 12px 22px -14px rgba(11,99,214,.95)}
.eyebrow--light{background:var(--grad-gold);color:#4a3400}
.sec-head h2{font-size:clamp(26px,4.6vw,44px);font-weight:900;line-height:1.4;letter-spacing:.005em}
.sec-head p{margin-top:18px;font-size:17px;color:var(--muted);line-height:1.95;font-weight:500}
.sec-head--light h2{color:#fff;text-shadow:0 4px 18px rgba(0,20,60,.4)}
.sec-head--light p{color:rgba(255,255,255,.88)}
.hl{background:linear-gradient(transparent 58%,rgba(255,212,0,.75) 58%);padding:0 3px}
.hl--light{background:linear-gradient(transparent 58%,rgba(255,212,0,.45) 58%);color:#fff}
.figure-note{margin-top:26px;text-align:center;font-size:14px;color:var(--muted);line-height:1.85}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:16px 34px;font-weight:900;font-size:17px;color:#fff;background:var(--grad-brand);box-shadow:var(--shadow-soft);transition:transform .2s,box-shadow .2s,filter .2s}
.btn:hover{transform:translateY(-3px);box-shadow:var(--shadow);filter:brightness(1.06)}
.btn--accent{background:var(--grad-accent);box-shadow:var(--shadow-pop)}
.btn--lg{padding:20px 44px;font-size:19px}
.btn--block{width:100%}
.btn .micon{font-size:23px}

.bridge{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;max-width:900px;margin:46px auto 0;background:var(--grad-accent);color:#fff;border-radius:999px;padding:20px 38px;font-size:clamp(18px,3.1vw,30px);font-weight:900;line-height:1.45;text-align:center;box-shadow:0 24px 48px -16px rgba(255,90,0,.7)}
.bridge b{color:#ffee00;text-shadow:0 2px 10px rgba(120,40,0,.4)}
/* 画像バナー版 */
.bridge-img{display:block;max-width:680px;margin:46px auto 0;border-radius:20px;overflow:hidden;
	box-shadow:0 28px 58px -26px rgba(0,10,35,.85);transition:transform .25s,box-shadow .25s}
.bridge-img:hover{transform:translateY(-4px);box-shadow:0 34px 66px -26px rgba(0,10,35,.9)}
.bridge-img img{width:100%;height:auto;display:block}
.bridge .micon{font-size:1.25em}

/* ---------------------------------------------------------
   スクロール表示エフェクト
   ・JSが動いているときだけ隠す（html.js-anim が付く）
   ・?noanim=1 を付けて開くと全部そのまま表示（スクショ用）
   --------------------------------------------------------- */
.js-anim .reveal{opacity:0;transform:translateY(28px);will-change:opacity,transform;
	transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1);
	transition-delay:var(--d,0ms)}
.js-anim .reveal--left{transform:translateX(-46px)}
.js-anim .reveal--right{transform:translateX(46px)}
.js-anim .reveal--zoom{transform:scale(.88)}
.js-anim .reveal--pop{transform:translateY(20px) scale(.94)}
.js-anim .reveal.is-in{opacity:1;transform:none}
.no-anim .reveal,.no-anim .reveal.is-in{opacity:1!important;transform:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
	.js-anim .reveal{opacity:1!important;transform:none!important;transition:none!important}
}

/* =========================================================
   5. ヒーロー
   ========================================================= */
/* 1枚バナー（横幅いっぱい・PCとスマホで画像を出し分け） */
.hero-media{display:block;line-height:0;background:#0b63d6}
.hero-media img{width:100%;height:auto;display:block}
/* FV直下の訪問買取の帯 */
.visit-band{background:var(--grad-accent);color:#fff;padding:clamp(14px,2vw,20px) 0;
	box-shadow:0 14px 30px -20px rgba(255,90,0,.9)}
.visit-band__txt{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;
	text-align:center;font-size:clamp(18px,3.2vw,30px);font-weight:900;line-height:1.5;
	text-shadow:0 2px 10px rgba(120,40,0,.35)}
.visit-band__txt .micon{font-size:1.25em}
.visit-band__txt b{color:#ffee00}

/* 文字はバナーに入っているので、下のテキストは隠してボタンだけ残す */
.hero{padding:clamp(24px,3vw,40px) 0 clamp(28px,3.5vw,48px)}
.hero__eyebrow,.hero__catch,.hero__badges{display:none}
/* 見出しは検索エンジン向けに残し、画面上は隠す */
.hero__h1{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero__cta{margin-top:0}

.hero{position:relative;overflow:hidden;padding:clamp(50px,6.5vw,88px) 0 clamp(46px,5.5vw,74px);
	background:
	radial-gradient(1100px 500px at 84% -10%,rgba(43,141,255,.28),transparent 60%),
	radial-gradient(820px 440px at 4% 110%,rgba(255,122,24,.20),transparent 62%),
	repeating-linear-gradient(115deg,rgba(11,99,214,.045) 0 12px,transparent 12px 30px),
	#fff}
.hero__glow{position:absolute;inset:auto -16% -50% auto;width:720px;height:720px;border-radius:50%;background:conic-gradient(from 200deg,rgba(11,99,214,.16),rgba(255,212,0,.22),rgba(255,90,0,.14),rgba(43,141,255,.16));filter:blur(50px);pointer-events:none;animation:spin 26s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.hero__inner{position:relative;text-align:center}
.hero__eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--grad-brand-deep);color:#fff;border-radius:999px;padding:9px 24px;font-size:14.5px;font-weight:900;margin-bottom:24px;box-shadow:0 16px 30px -16px rgba(3,51,125,.9)}
.hero__eyebrow .micon{font-size:21px;color:var(--gold)}
.hero__h1{font-weight:900;line-height:1.16;letter-spacing:.005em}
.hero__l1{display:block;font-size:clamp(30px,6vw,58px);color:var(--brand-deep)}
.hero__l2{display:block;font-size:clamp(42px,10vw,96px);margin-top:6px;background:linear-gradient(100deg,#0b63d6,#2b8dff,#0b63d6);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:flow 7s ease-in-out infinite}
@keyframes flow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.hero__l2 b{background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 8px 18px rgba(255,90,0,.35))}
.hero__catch{margin-top:24px;font-size:clamp(16px,2.4vw,22px);line-height:2;font-weight:600}
.hero__catch b{color:var(--brand-deep);font-weight:900;background:linear-gradient(transparent 56%,rgba(255,212,0,.75) 56%)}
.hero__catch em{font-style:normal;font-size:.72em;color:var(--muted)}

.hero__badges{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
.hero__badges li{display:inline-flex;align-items:center;gap:8px;background:#fff;border:2.5px solid var(--brand-light);border-radius:999px;padding:11px 22px;font-size:15.5px;font-weight:900;color:var(--brand-deep);box-shadow:var(--shadow-soft)}
.hero__badges .micon{font-size:22px;color:var(--accent)}

.hero__cta{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin-top:36px}
.cta-btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;gap:13px;border-radius:16px;padding:18px 30px;color:#fff;font-weight:900;box-shadow:var(--shadow);transition:transform .2s,filter .2s;min-width:255px}
.cta-btn:hover{transform:translateY(-4px);filter:brightness(1.07)}
.cta-btn .micon{font-size:32px}
/* 左から右へ流れる光 */
.cta-btn::after{content:"";position:absolute;top:-60%;left:-80%;width:46%;height:220%;
	background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.15) 30%,rgba(255,255,255,.65) 50%,rgba(255,255,255,.15) 70%,transparent 100%);
	transform:skewX(-22deg);pointer-events:none;z-index:-1;
	animation:kirari 3.8s ease-in-out infinite}
.cta-btn:nth-child(2)::after{animation-delay:.45s}
.cta-btn:nth-child(3)::after{animation-delay:.9s}
@keyframes kirari{0%{left:-80%}38%{left:135%}100%{left:135%}}
.cta-btn--tel::after{background:linear-gradient(100deg,transparent 0%,rgba(11,99,214,.12) 30%,rgba(11,99,214,.28) 50%,rgba(11,99,214,.12) 70%,transparent 100%)}
.cta-band .cta-btn--tel::after,.final .cta-btn--tel::after{background:linear-gradient(100deg,transparent 0%,rgba(11,99,214,.10) 30%,rgba(11,99,214,.26) 50%,rgba(11,99,214,.10) 70%,transparent 100%)}
.cta-band--accent .cta-btn--main::after{background:linear-gradient(100deg,transparent 0%,rgba(255,122,24,.14) 30%,rgba(255,122,24,.32) 50%,rgba(255,122,24,.14) 70%,transparent 100%)}
@media(prefers-reduced-motion:reduce){.cta-btn::after{animation:none;opacity:0}}
.cta-btn__t{display:block;font-size:17.5px;line-height:1.3;text-align:left}
.cta-btn__t small{display:block;font-weight:700;font-size:12.5px;opacity:.92;margin-top:3px}
.cta-btn--tel{background:var(--grad-brand-deep)}
.cta-btn--line{background:linear-gradient(135deg,#2ade7d,#06b14b)}
.cta-btn--main{background:var(--grad-accent);box-shadow:var(--shadow-pop);animation:beat 2.6s ease-in-out infinite}
@keyframes beat{0%,100%{transform:none}50%{transform:translateY(-4px) scale(1.02)}}
.cta-btn--main:hover{animation:none}
.hero__note{margin-top:22px;font-size:14px;color:var(--muted)}

@media(max-width:560px){
	.cta-btn{width:100%;min-width:0;justify-content:center}
	.cta-btn__t{text-align:center}
}

/* =========================================================
   5.5 確定買取金額
   ========================================================= */
.fixprice{padding-top:clamp(44px,5vw,72px);background:
	radial-gradient(700px 300px at 88% 0%,rgba(255,122,24,.13),transparent 62%),
	radial-gradient(620px 280px at 4% 100%,rgba(43,141,255,.13),transparent 62%),
	var(--bg-alt)}
.fixprice-term{display:inline-block;margin-top:14px;background:var(--grad-accent);color:#fff;
	border-radius:999px;padding:8px 22px;font-size:clamp(15px,2.2vw,18px);font-weight:900;
	box-shadow:var(--shadow-pop)}
.fixprice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.fixprice-grid{grid-template-columns:1fr}}
.fixprice-card{position:relative;overflow:hidden;isolation:isolate;text-align:center;border-radius:22px;padding:32px 24px 28px;
	border:4px solid transparent;
	background:linear-gradient(#fff,#fff) padding-box,var(--grad-accent) border-box;
	box-shadow:0 22px 46px -24px rgba(255,90,0,.5);transition:transform .2s,box-shadow .2s}
.fixprice-card:hover{transform:translateY(-6px);box-shadow:0 30px 58px -24px rgba(255,90,0,.6)}
.fixprice-card__cond{display:inline-block;background:var(--brand-light);color:var(--brand-deep);
	border-radius:999px;padding:7px 18px;font-size:13.5px;font-weight:900}
.fixprice-card__name{margin:16px 0 12px;font-size:23px;font-weight:900;color:var(--brand-deep);line-height:1.35}
.fixprice-card__name span{display:block;margin-top:5px;font-size:17px;color:var(--muted)}
.fixprice-card__yen{font-family:var(--ff-disp);font-weight:900;font-size:26px;line-height:1;
	background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;color:transparent;
	filter:drop-shadow(0 6px 14px rgba(255,90,0,.35))}
.fixprice-card__yen b{display:inline-block;font-size:clamp(56px,8.6vw,78px);letter-spacing:-.02em;
	background:linear-gradient(180deg,#ffc422 0%,#ff8a1f 42%,#ef4e00 100%);
	-webkit-background-clip:text;background-clip:text;color:transparent;
	filter:drop-shadow(0 8px 20px rgba(255,90,0,.5)) drop-shadow(0 2px 0 rgba(255,255,255,.9));
	animation:yenPop .8s cubic-bezier(.2,1.4,.4,1) both}
@keyframes yenPop{0%{opacity:0;transform:translateY(14px) scale(.82)}60%{opacity:1;transform:translateY(0) scale(1.06)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.fixprice-card__yen b{animation:none}}
/* 数字の後ろのぼんやりした光 */
.fixprice-card::after{content:"";position:absolute;left:50%;bottom:14px;transform:translateX(-50%);
	width:70%;height:70px;border-radius:50%;pointer-events:none;z-index:-1;
	background:radial-gradient(closest-side,rgba(255,122,24,.28),transparent 72%);filter:blur(6px)}
.fixprice-note{margin-top:26px;text-align:center;font-size:14.5px;color:var(--muted);line-height:1.8}

/* =========================================================
   6. スピード比較（濃紺の背景）
   ========================================================= */
.speed{position:relative;overflow:hidden;color:#fff;
	background:
	radial-gradient(900px 420px at 84% -10%,rgba(43,141,255,.22),transparent 62%),
	radial-gradient(760px 380px at 4% 108%,rgba(255,122,24,.14),transparent 62%),
	linear-gradient(165deg,#04101f 0%,#0a1f38 55%,#0c2b4d 100%),
	#08182b}
.speed::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.035) 0 14px,transparent 14px 34px);pointer-events:none}
.speed .container{position:relative}
.speed .eyebrow{background:var(--grad-gold);color:#4a3400;box-shadow:0 14px 26px -16px rgba(255,171,0,.95)}
.speed .sec-head h2{color:#fff;text-shadow:0 5px 20px rgba(0,15,40,.5)}
.speed .sec-head p{color:rgba(255,255,255,.82)}
.speed .hl{background:linear-gradient(transparent 58%,rgba(255,212,0,.5) 58%);color:#fff}
.speed .vs__col--other{filter:none;opacity:1;color:#e3ebf4;
	background:linear-gradient(180deg,#f0f4f9 0%,#dfe7f0 100%);
	border:5px solid #c3d1e0;
	box-shadow:0 22px 44px -26px rgba(0,0,0,.85)}
/* 白いカードの中は濃い文字（紺セクションの白文字を打ち消す） */
.speed .vs__col--ours{color:var(--ink);border-width:6px}
.speed .vs__col--ours .vs__list li{color:var(--ink)}
.speed .vs__col--ours em{color:var(--muted)}
.speed .vs__col--other,.speed .vs__col--other .vs__list li{color:#41556b}
.speed .vs__col--other .vs__tag{background:#c9d6e3;color:#4d6076}
.speed .vs__col--other .vs__num{color:#8b9fb4}
.speed .vs__col--other .vs__num i{color:#7b8fa4}
.speed .vs__col--other .vs__list li{border-top-color:#c9d6e3}
.speed .vs__col--other .micon{color:#a3b4c6}
.speed .vs__col--other em{color:#75879a}
.speed .vs__mark{background:#fff;color:#08182b}
/* 「一般的な宅配買取」カードの右寄せ画像 */
.vs__fig{float:right;width:40%;max-width:200px;height:auto;margin:-4px -6px 10px 18px;
	filter:drop-shadow(0 14px 22px rgba(20,40,70,.28))}
.vs__col .vs__list{overflow:hidden}
.vs__col::after{content:"";display:block;clear:both}
.vs__fig--ours{filter:drop-shadow(0 16px 26px rgba(255,122,24,.32))}
.speed-note{margin-top:18px;text-align:right;font-size:13px;line-height:1.7;color:rgba(255,255,255,.6)}
@media(max-width:600px){.speed-note{text-align:left}}
@media(max-width:600px){
	.vs__fig{width:34%;margin:-2px -2px 8px 14px}
}
.speed-fig{margin:22px auto 4px;width:clamp(96px,15vw,150px)}
.speed-fig img{width:100%;height:auto;filter:drop-shadow(0 16px 30px rgba(255,205,0,.35));animation:alertPulse 2.4s ease-in-out infinite}
@keyframes alertPulse{0%,100%{transform:none}50%{transform:translateY(-6px) scale(1.04)}}
@media(prefers-reduced-motion:reduce){.speed-fig img{animation:none}}

.vs{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:18px}
.vs__col{border-radius:22px;padding:32px 28px;background:#fff;border:2px solid var(--line);box-shadow:var(--shadow-soft)}
.vs__col--other{filter:grayscale(.3);opacity:.92}
.vs__col--ours{position:relative;border:3px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--grad-accent) border-box;box-shadow:0 30px 60px -24px rgba(255,90,0,.55)}
.vs__col--ours::before{content:"BEST";position:absolute;top:-15px;right:22px;background:var(--grad-gold);color:#4a3400;font-family:var(--ff-disp);font-weight:900;font-size:13px;letter-spacing:.14em;border-radius:999px;padding:6px 18px;box-shadow:0 12px 22px -12px rgba(255,171,0,.95)}
.vs__tag{display:inline-block;border-radius:999px;padding:7px 18px;font-size:14px;font-weight:900;background:#e9eef4;color:var(--muted)}
.vs__tag--ours{background:var(--grad-brand);color:#fff}
.vs__num{display:block;margin:18px 0 20px;font-size:clamp(36px,6vw,60px);font-weight:900;line-height:1.15;color:#93a1b1;font-family:var(--ff-disp)}
.vs__num i{font-style:normal;font-size:.38em;font-family:var(--ff);margin-left:8px;color:var(--muted)}
.vs__num--ours{background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;color:transparent}
.vs__num--ours i{color:var(--accent-deep)}
.vs__list li{display:flex;gap:11px;align-items:flex-start;font-size:16.5px;font-weight:800;padding:12px 0;border-top:2px dashed var(--line);line-height:1.65}
.vs__list li:first-child{border-top:0}
.vs__list .micon{font-size:24px;flex:none;margin-top:2px}
.vs__col--other .micon{color:#a9b6c4}
.vs__col--ours .micon{color:#12b76a}
.vs__list em{font-style:normal;font-size:.76em;color:var(--muted);font-weight:600;display:block}
.vs__mark{align-self:center;font-family:var(--ff-disp);font-weight:900;font-size:24px;color:#fff;background:var(--ink);width:62px;height:62px;border-radius:50%;display:grid;place-items:center;box-shadow:var(--shadow)}
@media(max-width:900px){
	.vs{grid-template-columns:1fr}
	.vs__mark{justify-self:center;width:52px;height:52px;font-size:21px}
}

/* =========================================================
   7. 理由
   ========================================================= */
.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:960px){.reason-grid{grid-template-columns:1fr}}
.reason{position:relative;overflow:hidden;background:#fff;border:2px solid var(--line);border-radius:22px;padding:40px 28px 34px;box-shadow:var(--shadow-soft);transition:transform .2s,box-shadow .2s,border-color .2s}
.reason::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--grad-brand)}
.reason:nth-child(2)::before{background:var(--grad-accent)}
.reason:nth-child(3)::before{background:var(--grad-gold)}
.reason:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:var(--brand)}
.reason__no{position:absolute;top:16px;right:22px;font-family:var(--ff-disp);font-size:66px;font-weight:900;color:var(--brand-light);line-height:1}
.reason__ic{display:grid;place-items:center;width:70px;height:70px;border-radius:20px;background:var(--grad-brand);color:#fff;box-shadow:0 18px 30px -14px rgba(11,99,214,.95);margin-bottom:20px}
.reason:nth-child(2) .reason__ic{background:var(--grad-accent);box-shadow:var(--shadow-pop)}
.reason:nth-child(3) .reason__ic{background:var(--grad-gold);color:#4a3400;box-shadow:0 18px 30px -14px rgba(255,171,0,.95)}
.reason__ic .micon{font-size:36px}
.reason h3{font-size:23px;font-weight:900;margin-bottom:14px;color:var(--brand-deep);line-height:1.5}
.reason__img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px;margin:0 0 16px;display:block;box-shadow:0 14px 28px -18px rgba(3,51,125,.6)}
.reason__img--01{object-position:72% 50%}
.reason p{font-size:16.5px;color:#2e4256;line-height:1.9}

/* =========================================================
   8. 買取価格
   ========================================================= */
.price{color:#fff;overflow:hidden;background-color:#03337d;
	background-image:url(../images/price-bg.jpg);
	background-size:cover;background-position:center}
.price::before{content:"";position:absolute;inset:0;pointer-events:none;
	background:linear-gradient(135deg,rgba(3,51,125,.93) 0%,rgba(11,99,214,.88) 55%,rgba(43,141,255,.82) 100%)}
.price::after{content:"";position:absolute;inset:auto -10% -60% auto;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,212,0,.3),transparent 65%);pointer-events:none}
.price-card{position:relative;display:grid;grid-template-columns:1.3fr .9fr;gap:30px;align-items:center;
	background:linear-gradient(135deg,#0f5fc0 0%,#1f7ce6 100%);
	border:2px solid rgba(255,255,255,.3);border-radius:26px;padding:38px 34px;
	box-shadow:0 30px 60px -28px rgba(0,15,45,.85)}
@media(max-width:900px){.price-card{grid-template-columns:1fr;padding:30px 24px}}
.price-card__label{display:inline-flex;align-items:center;gap:7px;background:var(--grad-gold);color:#4a3400;border-radius:999px;padding:7px 20px;font-size:14px;font-weight:900;box-shadow:0 14px 26px -14px rgba(255,171,0,.95)}
.price-card__label .micon{font-size:19px}
.price-card__lead{margin:20px 0 28px;font-size:clamp(21px,3.4vw,34px);font-weight:900;line-height:1.55;text-shadow:0 4px 16px rgba(0,15,45,.35)}
.price-card__pts li{display:flex;gap:11px;align-items:center;font-size:16.5px;font-weight:800;padding:12px 0;border-bottom:2px dashed rgba(255,255,255,.3)}
.price-card__pts li:last-child{border-bottom:0}
.price-card__pts .micon{font-size:22px;color:var(--gold)}

/* =========================================================
   9. こんな方へ
   ========================================================= */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:960px){.case-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.case-grid{grid-template-columns:1fr}}
.case{display:flex;gap:16px;align-items:center;background:#fff;border:2px solid var(--line);border-radius:18px;padding:24px 24px;box-shadow:var(--shadow-soft);transition:transform .2s,border-color .2s,box-shadow .2s}
.case:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow)}
.case .micon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:var(--brand-light);font-size:32px;color:var(--brand);flex:none}
.case p{font-size:16.5px;line-height:1.75;font-weight:600}
.case b{font-weight:900;color:var(--brand-deep)}

/* =========================================================
   10. 買取の流れ
   ========================================================= */
.flow-block{background:#fff;border:2px solid var(--line);border-radius:22px;padding:34px 30px;box-shadow:var(--shadow-soft);margin-bottom:22px}
.flow-ttl{display:flex;align-items:center;gap:13px;font-size:25px;font-weight:900;color:var(--brand-deep);margin-bottom:26px;flex-wrap:wrap;line-height:1.4}
.flow-ttl .micon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--grad-brand);color:#fff;font-size:29px}
.flow-ttl--shop .micon{background:var(--grad-accent)}
.flow-ttl small{font-size:13.5px;font-weight:900;color:#fff;background:var(--accent);border-radius:999px;padding:6px 16px}
.flow-ttl--shop small{background:var(--brand)}
.flow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.flow-steps--3{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.flow-steps,.flow-steps--3{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.flow-steps,.flow-steps--3{grid-template-columns:1fr}}
.flow-steps li{position:relative;background:var(--bg-alt);border:1.5px solid var(--line);border-radius:16px;padding:26px 20px 20px}
.flow-steps__no{position:absolute;top:-14px;left:18px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--grad-brand);color:#fff;font-family:var(--ff-disp);font-weight:900;font-size:18px;box-shadow:0 12px 20px -10px rgba(11,99,214,.95)}
.flow-ttl--shop + .flow-steps .flow-steps__no{background:var(--grad-accent)}
.flow-steps li b{display:block;margin-top:8px;font-size:17.5px;font-weight:900;color:var(--brand-deep);line-height:1.5}
.flow-steps__img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;margin:12px 0 2px;display:block;box-shadow:0 12px 24px -16px rgba(3,51,125,.6)}
/* 同じ写真でも切り取り位置を変えて、並んだときの繰り返し感を減らす */
.flow-steps li:nth-child(1) .flow-steps__img{object-position:32% 46%}
.flow-steps li:nth-child(2) .flow-steps__img{object-position:64% 52%}
.flow-steps li:nth-child(3) .flow-steps__img{object-position:20% 60%}
.flow-steps li:nth-child(4) .flow-steps__img{object-position:78% 40%}
.flow-steps li span:not(.flow-steps__no){display:block;margin-top:8px;font-size:15.5px;color:#37506a;line-height:1.8}

.notice{display:flex;gap:16px;background:linear-gradient(135deg,#fff8ea,#fff3dc);border:2px solid #ffd89a;border-radius:18px;padding:24px 26px}
.notice .micon{font-size:32px;color:var(--accent);flex:none}
.notice b{display:block;font-size:17.5px;font-weight:900;color:#8a4b00;margin-bottom:8px}
.notice p{font-size:15.5px;line-height:1.9;color:#4a3a22}

/* =========================================================
   11. 対応機種（写真の背景＋暗いオーバーレイ）
   ========================================================= */
.models{position:relative;overflow:hidden;color:#fff;background:#0a1a2b}
.models::before{content:"";position:absolute;inset:0;
	background-image:url(../images/models-bg.jpg);
	background-size:cover;background-position:center;
	transform:scale(1.02)}
.models::after{content:"";position:absolute;inset:0;
	background:linear-gradient(180deg,rgba(4,16,31,.78) 0%,rgba(4,16,31,.7) 45%,rgba(4,16,31,.8) 100%)}
.models .container{position:relative;z-index:1}
.models .sec-head h2{color:#fff;text-shadow:0 5px 20px rgba(0,10,30,.6)}
.models .sec-head p{color:rgba(255,255,255,.85)}
.models .hl{background:linear-gradient(transparent 58%,rgba(255,212,0,.5) 58%);color:#fff}
.models .figure-note{color:rgba(255,255,255,.7)}
.models .model{box-shadow:0 26px 54px -24px rgba(0,0,0,.8)}

.model-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}
@media(max-width:900px){.model-grid{grid-template-columns:1fr}}
.model{position:relative;background:#fff;border:2px solid var(--line);border-radius:22px;padding:34px 30px;box-shadow:var(--shadow-soft)}
.model--main{border:3px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--grad-brand) border-box;box-shadow:var(--shadow)}
.model__badge{position:absolute;top:-15px;left:26px;background:var(--grad-accent);color:#fff;border-radius:999px;padding:7px 20px;font-size:14px;font-weight:900;box-shadow:var(--shadow-pop)}
.model h3{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:900;color:var(--brand-deep);margin-bottom:16px}
.model h3 .micon{font-size:31px;color:var(--brand)}
.model__list{font-size:17.5px;font-weight:900;line-height:1.95;color:var(--ink)}
.model__note{margin-top:12px;font-size:15.5px;color:var(--muted);line-height:1.85}

/* =========================================================
   12. 投稿カード
   ========================================================= */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:960px){.post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.post-grid{grid-template-columns:1fr}}
.post-card{display:flex;flex-direction:column;background:#fff;border:2px solid var(--line);border-radius:18px;padding:26px 24px 20px;color:var(--ink);box-shadow:var(--shadow-soft);transition:transform .2s,box-shadow .2s,border-color .2s}
.post-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--brand)}
.post-card__date{font-family:var(--ff-disp);font-size:14px;font-weight:900;color:var(--accent)}
.post-card__ttl{margin:10px 0 16px;font-size:17.5px;font-weight:900;line-height:1.6;flex:1}
.post-card__more{display:flex;align-items:center;gap:6px;font-size:14.5px;font-weight:900;color:var(--brand-deep)}
.post-card__more .micon{font-size:20px;color:var(--accent);margin-left:auto}

/* =========================================================
   13. FAQ
   ========================================================= */
.faq__item{background:#fff;border:2px solid var(--line);border-radius:16px;margin-bottom:14px;overflow:hidden;box-shadow:var(--shadow-soft)}
.faq__item summary{position:relative;list-style:none;cursor:pointer;padding:22px 58px 22px 62px;font-size:17.5px;font-weight:900;line-height:1.6}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::before{content:"Q";position:absolute;left:20px;top:20px;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--grad-brand);color:#fff;font-family:var(--ff-disp);font-weight:900;font-size:17px}
.faq__item summary::after{content:"＋";position:absolute;right:22px;top:20px;color:var(--accent);font-weight:900;font-size:22px}
.faq__item[open] summary::after{content:"−"}
.faq__item[open]{border-color:var(--brand)}
.faq__a{padding:18px 26px 24px 62px;font-size:16.5px;line-height:1.95;color:#2e4256;border-top:2px dashed var(--line)}
.faq__a a{text-decoration:underline;font-weight:800}

/* =========================================================
   14. フォーム
   ========================================================= */
.form{background:#fff;border:2px solid var(--line);border-radius:22px;padding:36px 32px;box-shadow:var(--shadow)}
@media(max-width:600px){.form{padding:26px 20px}}
.form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__row{margin-bottom:20px}
.form__row--2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:600px){.form__row--2{grid-template-columns:1fr}}
.form__label{display:block;font-size:15.5px;font-weight:900;margin-bottom:9px;color:var(--brand-deep)}
.req{display:inline-block;margin-left:9px;background:var(--grad-accent);color:#fff;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:900;vertical-align:2px}
.form__input{width:100%;border:2px solid var(--line);border-radius:13px;padding:15px 17px;font-size:16.5px;background:#fbfdff;transition:border-color .2s,box-shadow .2s}
.form__input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 5px rgba(11,99,214,.14)}
select.form__input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--brand) 50%),linear-gradient(135deg,var(--brand) 50%,transparent 50%);background-position:calc(100% - 22px) 24px,calc(100% - 15px) 24px;background-size:7px 7px,7px 7px;background-repeat:no-repeat}
.form__radios{display:flex;flex-wrap:wrap;gap:11px}
.form__radios label{display:inline-flex;align-items:center;gap:9px;border:2px solid var(--line);border-radius:13px;padding:13px 19px;font-size:15.5px;font-weight:800;cursor:pointer;background:#fbfdff}
.form__radios input{accent-color:var(--brand);width:18px;height:18px}
.form__radios label:has(input:checked){border-color:var(--brand);background:var(--brand-light)}
.form__hint{margin:-10px 0 20px;font-size:14px;color:var(--muted)}
.form__note{margin-top:16px;text-align:center;font-size:14px;color:var(--muted);line-height:1.85}
.form-msg{display:flex;align-items:center;gap:10px;border-radius:14px;padding:17px 22px;margin-bottom:22px;font-weight:900;font-size:16.5px}
.form-msg--ok{background:#e8fbf1;border:2px solid #a7e8c4;color:#0d6b3f}
.form-msg--ng{background:#fdecec;border:2px solid #f5b5b5;color:#9b1c1c}
.form-msg .micon{font-size:25px}

/* =========================================================
   15. テーブル
   ========================================================= */
.table{background:#fff;border:2px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-soft)}
.table th,.table td{padding:18px 22px;font-size:16px;text-align:left;border-bottom:1px solid var(--line);line-height:1.85}
.table tr:last-child th,.table tr:last-child td{border-bottom:0}
.table th{width:190px;background:var(--bg-alt);font-weight:900;color:var(--brand-deep);white-space:nowrap}
.table-note{display:block;margin-top:4px;font-size:14px;font-weight:800;color:var(--accent-deep)}
@media(max-width:600px){
	.table th,.table td{display:block;width:auto;padding:13px 18px;border-bottom:0}
	.table td{border-bottom:1px solid var(--line)}
}

/* =========================================================
   15.2 なぜ高く買えるのか
   ========================================================= */
.why{padding:clamp(48px,6vw,80px) 0}
.why-box{position:relative;overflow:hidden;text-align:center;background:var(--bg-alt);
	border:2px solid var(--line);border-radius:22px;padding:36px 32px;box-shadow:var(--shadow-soft)}
.why-box::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--grad-accent)}
.why-box__label{display:inline-block;background:var(--grad-brand);color:#fff;border-radius:999px;
	padding:8px 22px;font-size:14px;font-weight:900;margin-bottom:16px;line-height:1.5}
.why-box__ttl{font-size:clamp(22px,3.6vw,32px);font-weight:900;color:var(--brand-deep);line-height:1.5;margin-bottom:16px}
.why-box__lead{font-size:16.5px;line-height:1.95;color:#2e4256;text-align:left}
.why-box__lead b{color:var(--accent-deep);font-weight:900;background:linear-gradient(transparent 58%,rgba(255,212,0,.6) 58%)}
@media(max-width:600px){.why-box{padding:28px 20px}}

/* =========================================================
   15.3 その他の買取
   ========================================================= */
.other-buy{padding:0 0 clamp(48px,6vw,80px)}
.other-buy__box{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;text-align:center;
	background:#fff;border:3px dashed var(--line);border-radius:20px;padding:28px 26px;box-shadow:var(--shadow-soft)}
.other-buy__box .micon{font-size:38px;color:var(--brand)}
.other-buy__box p{font-size:clamp(19px,3vw,26px);font-weight:900;line-height:1.6;color:var(--brand-deep)}
.sp-br{display:none}
@media(max-width:600px){
	.other-buy__box{gap:10px;padding:24px 18px}
	.other-buy__box .micon{font-size:32px}
	.sp-br{display:inline}
}

/* =========================================================
   15.5 ページ途中のCTA帯
   ========================================================= */
.cta-band{position:relative;overflow:hidden;text-align:center;color:#fff;padding:clamp(48px,6vw,78px) 0;background:var(--grad-brand-deep)}
.cta-band--accent{background:linear-gradient(135deg,#ffa023 0%,#ef4e00 100%)}
.cta-band::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.06) 0 14px,transparent 14px 34px);pointer-events:none}
.cta-band__glow{position:absolute;inset:-45% auto auto 50%;transform:translateX(-50%);width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 62%);pointer-events:none}
.cta-band .container{position:relative}
.cta-band__eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.18);border-radius:999px;padding:8px 22px;font-size:14.5px;font-weight:900;margin-bottom:16px}
.cta-band__eyebrow .micon{font-size:20px;color:var(--gold)}
.cta-band--accent .cta-band__eyebrow .micon{color:#fff}
.cta-band__ttl{font-size:clamp(25px,5vw,46px);font-weight:900;line-height:1.35;text-shadow:0 6px 22px rgba(0,20,60,.28)}
.cta-band__ttl b{background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta-band--accent .cta-band__ttl b{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:#ffee00;text-shadow:0 2px 10px rgba(120,40,0,.45)}
.cta-band__lead{margin-top:16px;font-size:clamp(15px,2.1vw,19px);font-weight:600;line-height:1.9;color:rgba(255,255,255,.94)}
.cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin-top:30px}
.cta-band .cta-btn--tel{background:#fff;color:var(--brand-deep)}
.cta-band .cta-btn--tel .micon{color:var(--brand)}
.cta-band--accent .cta-btn--main{background:#fff;color:var(--accent-deep);box-shadow:var(--shadow)}
.cta-band--accent .cta-btn--main .micon{color:var(--accent-deep)}

/* =========================================================
   16. 最終CTA
   ========================================================= */
.final{position:relative;overflow:hidden;background:var(--grad-brand-deep);color:#fff;text-align:center;padding:clamp(64px,8vw,104px) 0}
.final::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 14px,transparent 14px 34px);pointer-events:none}
.final__glow{position:absolute;inset:-40% auto auto 50%;transform:translateX(-50%);width:840px;height:840px;border-radius:50%;background:radial-gradient(circle,rgba(255,212,0,.26),transparent 62%);pointer-events:none}
.final .container{position:relative}
.final__eyebrow{display:inline-block;background:rgba(255,255,255,.14);border-radius:999px;padding:8px 22px;font-size:15px;font-weight:900;color:var(--gold);margin-bottom:18px}
.final__ttl{font-size:clamp(30px,6.2vw,58px);font-weight:900;line-height:1.32;text-shadow:0 6px 24px rgba(0,20,60,.35)}
.final__brand{background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.final__lead{margin-top:20px;font-size:clamp(16px,2.2vw,20px);color:rgba(255,255,255,.92);line-height:1.95;font-weight:600}
.final__cta{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin-top:34px}
.final .cta-btn--tel{background:#fff;color:var(--brand-deep)}
.final .cta-btn--tel .micon{color:var(--brand)}

/* =========================================================
   17. フッター
   ========================================================= */
.site-footer{background:#061426;color:rgba(255,255,255,.8);padding:60px 0 28px;font-size:15px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}
@media(max-width:960px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.foot-grid{grid-template-columns:1fr}}
.logo__mark--foot{margin-bottom:14px}
.foot-name{font-weight:900;color:#fff;font-size:18px}
.foot-lead{margin-top:10px;font-size:14.5px;line-height:1.9;color:rgba(255,255,255,.66)}
.foot-col h3{font-size:15px;font-weight:900;color:var(--gold);margin-bottom:14px}
.foot-col a{display:block;padding:6px 0;color:rgba(255,255,255,.78);font-size:15px}
.foot-col a:hover{color:var(--gold)}
.foot-note{display:block;padding:6px 0;font-size:13.5px;color:rgba(255,255,255,.58)}
.foot-note--accent{padding-top:0}
.copyright{margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);text-align:center;font-size:13px;color:rgba(255,255,255,.55)}

/* =========================================================
   18. 固定CTA（スマホ）
   ========================================================= */
.fixed-cta{position:fixed;left:0;right:0;bottom:0;z-index:800;display:none;gap:9px;padding:10px 11px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:2px solid var(--brand-light);box-shadow:0 -10px 28px -14px rgba(3,51,125,.5)}
.fixed-cta__btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:14px;padding:15px 6px;font-size:15px;font-weight:900;color:#fff}
.fixed-cta__btn .micon{font-size:22px}
/* 電話ボタン：広い画面では番号、狭い画面では「電話」 */
.fixed-cta__num{font-family:var(--ff-disp);font-size:16px;letter-spacing:0;white-space:nowrap}
.fixed-cta__short{display:none}
@media(max-width:520px){
	.fixed-cta__num{display:none}
	.fixed-cta__short{display:inline}
}
.fixed-cta__btn--tel{background:var(--grad-brand-deep)}
.fixed-cta__btn--line{background:linear-gradient(135deg,#2ade7d,#06b14b)}
.fixed-cta__btn--main{background:var(--grad-accent)}
@media(max-width:900px){
	.fixed-cta{display:flex}
	body{padding-bottom:80px}
}

/* =========================================================
   19. 下層ページ
   ========================================================= */
.page-head{position:relative;overflow:hidden;background:var(--grad-brand-deep);color:#fff;padding:clamp(44px,5.5vw,70px) 0;text-align:center}
.page-head::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 14px,transparent 14px 34px)}
.page-head .container{position:relative}
.page-head h1{font-size:clamp(24px,4vw,38px);font-weight:900;line-height:1.5}
.page-head__date{display:inline-block;margin-top:12px;font-family:var(--ff-disp);font-size:14.5px;font-weight:900;color:var(--gold)}
.entry{padding:clamp(46px,5.5vw,74px) 0}
.entry__body{font-size:17px;line-height:2.05}
.entry__body h2{margin:46px 0 18px;font-size:26px;font-weight:900;color:var(--brand-deep);border-left:8px solid var(--accent);padding-left:16px;line-height:1.5}
.entry__body h3{margin:36px 0 14px;font-size:21px;font-weight:900;color:var(--brand-deep)}
.entry__body p{margin:0 0 22px}
.entry__body ul,.entry__body ol{margin:0 0 22px;padding-left:1.5em}
.entry__body ul li{list-style:disc;margin-bottom:9px}
.entry__body ol li{list-style:decimal;margin-bottom:9px}
.entry__body table{margin:0 0 26px;border:2px solid var(--line);border-radius:14px;overflow:hidden}
.entry__body th,.entry__body td{border:1px solid var(--line);padding:14px 16px;font-size:16px}
.entry__body th{background:var(--bg-alt);font-weight:900;color:var(--brand-deep)}
.entry__body img{border-radius:14px;margin:0 auto 22px}
.entry__body a{text-decoration:underline}
.back-link{display:flex;justify-content:center;margin-top:44px}

.archive-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:960px){.archive-list{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.archive-list{grid-template-columns:1fr}}
.pagination{display:flex;justify-content:center;gap:9px;margin-top:42px;flex-wrap:wrap}
.pagination .page-numbers{display:grid;place-items:center;min-width:48px;height:48px;padding:0 14px;border-radius:13px;border:2px solid var(--line);background:#fff;font-weight:900;font-size:16px;color:var(--brand-deep)}
.pagination .page-numbers.current{background:var(--grad-brand);color:#fff;border-color:transparent}
