/* カーライフアンテナ 雑誌レイアウト */
.fmag{--red:#d7000f;--ink:#222;--line:#e3e3e3;--sub:#888;--gray:#f1f1f1;margin:0;background:#fff;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif;font-size:14px;line-height:1.6}
.fmag *{box-sizing:border-box}
.fmag a{color:inherit;text-decoration:none}
.fmag h1,.fmag h2,.fmag h3,.fmag p,.fmag ul,.fmag ol{margin:0;padding:0}
.fm-wrap{max-width:1140px;margin:0 auto;padding:0 16px}

.fm-hd{background:#1c1c1c}
.fm-hd .fm-wrap{display:flex;align-items:center;gap:16px;height:52px}
.fmag .fm-logo{color:#fff;font-weight:900;font-size:22px;white-space:nowrap}
.fm-logo span{color:var(--red)}
.fm-search{margin-left:auto}
.fm-search input{background:#3a3a3a;border:0;color:#fff;font-size:12px;padding:7px 12px;width:260px}
.fmag .fm-shop{color:#ddd;font-size:12px;border:1px solid #555;padding:5px 10px;white-space:nowrap}
.fmag .fm-shop:hover{background:var(--red);border-color:var(--red);color:#fff}
.fm-nav{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.fm-nav ul{display:flex;list-style:none;overflow-x:auto}
.fm-nav li{flex:1}
.fm-nav a{display:block;text-align:center;font-size:13px;font-weight:700;padding:10px 12px;white-space:nowrap}
.fm-nav a:hover{color:var(--red)}

.fm-ph{background:#9a9a9a center/cover no-repeat;aspect-ratio:16/10;position:relative;overflow:hidden}
.fm-noimg{background:#a8a8a8}
.fm-new::before{content:"NEW";position:absolute;right:-22px;top:8px;transform:rotate(45deg);background:var(--red);color:#fff;font-size:10px;font-weight:700;width:80px;text-align:center;padding:2px 0}
.fm-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11px;color:var(--sub);margin-top:8px}
.fm-t{border:1px solid #bbb;color:#555;padding:0 6px;font-size:10px}
.fm-d{margin-left:auto}
.fm-au{color:#b08a2e}

.fm-slider{display:grid;grid-template-columns:1fr 1fr;margin-top:16px}
.fm-slider .fm-big{aspect-ratio:16/9}
.fm-sub{position:relative;display:block}
.fm-sub h3{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 14px;color:#fff;font-size:16px;line-height:1.5;background:linear-gradient(transparent,rgba(0,0,0,.75))}
.fm-slider-ad{display:grid;place-items:center;background:#fafafa;overflow:hidden}
.fm-cap{display:block;margin:6px 0 24px}
.fm-cap h2{font-size:19px;line-height:1.5;font-weight:700;margin-top:6px}

.fm-cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;margin-top:16px}
.fm-feat{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}
.fm-feat h3{font-size:14px;line-height:1.55;font-weight:700;margin-top:6px}
.fm-feat a:hover h3,.fm-list a:hover h3{color:var(--red)}
.fm-list-ad{margin:24px 0;text-align:center}
.fm-news{background:var(--gray);padding:0 16px 16px;margin-top:32px}
.fm-sec{padding:14px 0 10px}
.fm-sec h2{font-size:15px;font-weight:900}
.fm-list a{display:grid;grid-template-columns:260px 1fr;gap:18px;background:#fff;padding:14px;margin-bottom:10px}
.fm-list .fm-meta{margin-top:0}
.fm-list .fm-meta+.fm-meta{margin-top:4px}
.fm-list h3{font-size:17px;line-height:1.55;font-weight:700;margin-top:8px}
.fm-pager{text-align:center;margin-top:12px}
.fm-pager .page-numbers{display:inline-block;background:#fff;border:1px solid #ccc;padding:6px 12px;margin:2px;font-weight:700}
.fm-pager .current{background:var(--ink);color:#fff;border-color:var(--ink)}

.fm-side .fm-ad{margin-bottom:16px;text-align:center}
.fm-ad img{max-width:100%;height:auto}
.fm-ad-t{display:none}
.fm-side h3{text-align:center;font-size:15px;font-weight:900;padding:10px 0;border-bottom:2px solid var(--ink);margin-bottom:4px}
.fm-rank,.fm-genre{margin-bottom:24px}
.fm-rank ol{list-style:none}
.fm-rank a{display:grid;grid-template-columns:20px 90px 1fr;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.fm-rank .fm-ph{aspect-ratio:4/3}
.fm-rank .fm-new::before{display:none}
.fm-no{font-size:15px;font-weight:700;text-align:center}
.fm-rank p{font-size:12px;line-height:1.5}
.fm-genre ul{display:grid;grid-template-columns:1fr 1fr;gap:6px;list-style:none;margin-top:6px}
.fm-genre a{display:block;border:1px solid var(--line);padding:8px;font-size:12px;font-weight:700;text-align:center}
.fm-genre a:hover{background:var(--ink);color:#fff}

/* 記事ページ */
.fm-article h1{font-size:24px;line-height:1.5;font-weight:900;margin:10px 0 16px}
.fm-eye img{width:100%;height:auto;display:block;margin-bottom:16px}
.fm-article>.fm-ad{margin:16px 0;text-align:center}
.fm-body{font-size:16px;line-height:1.9}
.fm-body p{margin:0 0 1.4em}
.fm-body h2{font-size:20px;font-weight:900;line-height:1.5;margin:2.2em 0 1em;padding:10px 14px;border-left:6px solid var(--red);background:var(--gray)}
.fm-body h3{font-size:17px;font-weight:900;margin:1.8em 0 .8em;padding-bottom:6px;border-bottom:2px solid var(--ink)}
.fm-body ul,.fm-body ol{margin:0 0 1.4em 1.4em}
.fm-body li{margin-bottom:.3em}
.fm-body img{max-width:100%;height:auto}
.fm-body table{width:100%;border-collapse:collapse;margin:0 0 1.4em;font-size:14px;display:block;overflow-x:auto}
.fm-body th,.fm-body td{border:1px solid #ccc;padding:8px 10px;text-align:left}
.fm-body th{background:var(--ink);color:#fff}
.fm-body tr:nth-child(even) td{background:#fafafa}
.fm-body blockquote{margin:0 0 1.4em;padding:12px 16px;background:#fffbe6;border-left:4px solid #e0c200}
.fm-body a{color:var(--red);text-decoration:underline}
.fm-rel{margin-top:40px}

.fm-ft{background:#1c1c1c;color:#aaa;margin-top:48px;padding:28px 0;font-size:12px}
.fm-ft .fm-logo{font-size:18px;margin-bottom:8px}
.fm-ft a{text-decoration:underline}

@media(max-width:860px){
	.fm-cols,.fm-slider{grid-template-columns:minmax(0,1fr)}
	.fm-slider-ad:empty{display:none}
	.fm-search,.fm-shop{display:none}
	.fm-nav li{flex:none}
	.fm-list a{grid-template-columns:120px 1fr;gap:12px;padding:10px}
	.fm-list h3{font-size:14px}
	.fm-article h1{font-size:20px}
}
@media(max-width:520px){.fm-feat{grid-template-columns:1fr}}

/* PR表記 */
.fm-ad{position:relative}
.fm-pr{display:block;text-align:left;font-size:10px;color:#999;margin-bottom:2px;letter-spacing:.5px}
.fm-ad a+img,.fm-ad img[width="1"]{position:absolute;width:1px;height:1px}
.fm-prnote{font-size:11px;color:var(--sub);margin:-8px 0 14px}
.fm-side .fm-ad>a{display:block;margin-bottom:12px}

/* ===== クリックされやすいリンクボタン（企業提供のバナー画像には当てない） ===== */
.fm-body a[href*="px.a8.net"]:not(:has(img[width]:not([width="1"]))),
.fm-body a[href*="hb.afl.rakuten"]:not(:has(img[width]:not([width="1"]))),
.fm-body a[href*="af.moshimo"]:not(:has(img[width]:not([width="1"]))),
.fm-ad a[href*="px.a8.net"]:not(:has(img[width]:not([width="1"]))){
	display:block !important;max-width:460px;margin:10px auto !important;padding:15px 44px 15px 20px !important;
	background:#d7000f !important;color:#fff !important;font-size:16px !important;font-weight:700 !important;line-height:1.45;
	text-align:center;text-decoration:none !important;border-radius:6px !important;box-shadow:0 4px 0 #8f000a;
	position:relative;transition:transform .08s,box-shadow .08s,background .15s}
.fm-body a[href*="px.a8.net"]:not(:has(img[width]:not([width="1"])))::after,
.fm-body a[href*="hb.afl.rakuten"]:not(:has(img[width]:not([width="1"])))::after,
.fm-body a[href*="af.moshimo"]:not(:has(img[width]:not([width="1"])))::after,
.fm-ad a[href*="px.a8.net"]:not(:has(img[width]:not([width="1"])))::after{
	content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;margin-top:-5px;border-top:3px solid #fff;border-right:3px solid #fff;transform:rotate(45deg)}
.fm-body a[href*="px.a8.net"]:not(:has(img[width]:not([width="1"]))):hover,
.fm-body a[href*="hb.afl.rakuten"]:not(:has(img[width]:not([width="1"]))):hover,
.fm-body a[href*="af.moshimo"]:not(:has(img[width]:not([width="1"]))):hover,
.fm-ad a[href*="px.a8.net"]:not(:has(img[width]:not([width="1"]))):hover{background:#b8000d !important;transform:translateY(2px);box-shadow:0 2px 0 #8f000a}
/* 表の中のボタンはセル幅に合わせる */
.fm-body td a[href*="px.a8.net"]{max-width:none;font-size:14px !important;padding:12px 30px 12px 12px !important;margin:4px 0 !important}
.fm-body td a[href*="px.a8.net"]::after{right:12px}
/* 記事内の案内ボックス */
.fm-body div[style*="border:2px solid #222"]{border:0 !important;border-top:5px solid #d7000f !important;background:#fff6f0 !important;padding:20px 22px !important;border-radius:0 0 8px 8px;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.fm-body div[style*="border:2px solid #222"]>p:first-child{font-size:19px !important;color:#d7000f;line-height:1.5}
.fm-body div[style*="border:2px solid #222"]>p:last-child:has(a[rel~="sponsored"])::before{content:"公式サイトで詳しく見る";display:block;font-size:12px;color:#666;font-weight:700;margin-bottom:2px}
/* 記事下のテキストリンク枠 */
.fm-ad p{margin:0}

/* 著者紹介 */
.fm-author{margin:36px 0 8px;border:1px solid var(--line);border-top:4px solid var(--ink);padding:16px 18px;background:#fff}
.fm-author-label{font-size:12px;font-weight:700;color:var(--sub);margin-bottom:10px}
.fm-author-in{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:start}
.fm-author-img{width:64px;height:64px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:26px;font-weight:900}
.fm-author-name{font-size:17px;font-weight:900}
.fm-author-name span{font-size:12px;font-weight:400;color:var(--sub);margin-left:4px}
.fm-author-role{font-size:12px;color:var(--sub);margin:2px 0 8px}
.fm-author-text{font-size:14px;line-height:1.8}
.fm-author-link{margin-top:8px;font-size:13px}
.fm-author-link a{color:var(--red);text-decoration:underline}

/* 自動車・工具のニュース（トップ） */
.fm-newsfeed{margin-top:28px;border-top:3px solid var(--ink)}
.fm-newsfeed .fm-sec{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.fm-newsfeed .fm-sec small{font-size:11px;color:var(--sub)}
.fm-newsfeed ul{list-style:none}
.fm-newsfeed li{display:grid;grid-template-columns:42px 74px 1fr;gap:8px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5}
.fm-nd{color:var(--sub);font-size:12px}
.fm-ns{font-size:10px;font-weight:700;color:#fff;background:#555;padding:1px 6px;text-align:center;white-space:nowrap}
.fm-newsfeed a:hover{color:var(--red);text-decoration:underline}
@media(max-width:520px){.fm-newsfeed li{grid-template-columns:38px 1fr}.fm-ns{display:none}}

/* ===== トップページ（入口型） ===== */
.fm-front .fm-cols{margin-top:16px}
.fm-hero{position:relative;margin-bottom:8px}
.fm-hero-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.fm-hero-track::-webkit-scrollbar{display:none}
.fm-hero-slide{flex:0 0 100%;scroll-snap-align:start;position:relative;display:block}
.fm-hero-slide .fm-ph{aspect-ratio:16/9}
.fm-hero-cap{position:absolute;left:0;right:0;bottom:0;padding:60px 20px 18px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff}
.fm-hero-cap h2{font-size:22px;line-height:1.45;font-weight:900;margin-top:6px}
.fm-hero-cat{display:inline-block;background:var(--red);font-size:11px;font-weight:700;padding:1px 8px}
.fm-hero-dots{text-align:center;margin-top:10px}
.fm-hero-dots button{width:8px;height:8px;border-radius:50%;border:0;background:#ccc;margin:0 4px;padding:0;cursor:pointer}
.fm-hero-dots button.on{background:var(--red)}
.fm-block{margin-top:36px}
.fm-bhead{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid var(--ink);padding-bottom:6px;margin-bottom:14px}
.fm-bhead h2{font-size:15px;font-weight:700;display:flex;align-items:baseline;gap:10px}
.fm-bhead h2 span{font-size:26px;font-weight:900;font-style:italic;letter-spacing:-.5px;color:var(--ink)}
.fm-bhead a{font-size:12px;color:var(--sub)}
.fm-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 16px}
.fm-grid3 h3{font-size:14px;line-height:1.55;font-weight:700;margin-top:6px}
.fm-grid3 a:hover h3{color:var(--red)}
.fm-more2{display:flex;gap:10px;justify-content:flex-end;margin-top:14px;font-size:13px;font-weight:700}
.fm-more2 a{color:var(--red)}
.fm-morebtn{display:block;text-align:center;border:1px solid var(--ink);padding:11px;margin-top:16px;font-weight:700;font-size:14px}
.fm-morebtn:hover{background:var(--ink);color:#fff}
.fm-gates{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fm-gates a{display:block;border:1px solid var(--line);padding:16px 14px;font-weight:700;font-size:14px;background:#fafafa}
.fm-gates a span{display:block;font-size:18px;font-weight:900;font-style:italic;color:var(--red);letter-spacing:-.3px;margin-bottom:2px}
.fm-gates a:hover{border-color:var(--ink);background:#fff}
.fm-side h3 span{font-size:20px;font-weight:900;font-style:italic;margin-right:8px}
.fm-sidenews,.fm-kw{margin-bottom:24px}
.fm-sidenews h3,.fm-kw h3{text-align:left!important}
.fm-sidenews ul{list-style:none}
.fm-sidenews li{padding:8px 0;border-bottom:1px dotted #ccc;font-size:13px;line-height:1.5}
.fm-sidenews li a{color:#0b4f9c}
.fm-sidenews li a:hover{text-decoration:underline}
.fm-sidenews small{display:block;color:var(--sub);font-size:11px}
.fm-sidenote{font-size:11px;color:var(--sub);margin-top:6px}
.fm-kw div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.fm-kw a{border:1px solid #bbb;padding:4px 10px;font-size:12px;font-weight:700}
.fm-kw a:hover{background:var(--ink);color:#fff}
.fm-nav li.fm-main a{color:var(--red)}
@media(max-width:860px){.fm-grid3{grid-template-columns:1fr 1fr}.fm-gates{grid-template-columns:1fr 1fr}.fm-hero-cap h2{font-size:17px}}

/* 固定ページ */
.fm-page h1{border-bottom:3px solid var(--ink);padding-bottom:10px}
.fm-body input[type=text],.fm-body input[type=email],.fm-body input[type=tel],.fm-body textarea,.fm-body select{width:100%;max-width:560px;border:1px solid #bbb;padding:10px;font-size:15px;font-family:inherit;margin-top:4px}
.fm-body input[type=submit]{background:var(--red);color:#fff;border:0;padding:14px 40px;font-size:16px;font-weight:700;border-radius:6px;cursor:pointer;box-shadow:0 4px 0 #8f000a}
.fm-body .wpcf7 p{margin-bottom:1.1em}
/* 情報提供の入口（サイドバー） */
.fm-tip{display:block;background:var(--ink);color:#fff!important;padding:14px 16px;margin-bottom:24px;font-weight:700;font-size:15px;line-height:1.4}
.fm-tip span{display:block;font-size:18px;font-weight:900;font-style:italic;color:var(--red)}
.fm-tip small{display:block;font-size:11px;font-weight:400;color:#ccc;margin-top:4px}
.fm-tip:hover{background:var(--red)}.fm-tip:hover span{color:#fff}

.fm-gates{grid-template-columns:repeat(4,1fr)}
@media(max-width:860px){.fm-gates{grid-template-columns:1fr 1fr}}

/* ===== フッター ===== */
.fm-ft{background:#1c1c1c;color:#bbb;margin-top:56px;padding:40px 0 0;font-size:13px}
.fm-ft a{color:#ddd;text-decoration:none}
.fm-ft a:hover{color:#fff;text-decoration:underline}
.fm-ft-cols{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:32px}
.fm-ft .fm-logo{font-size:22px;margin-bottom:8px}
.fm-ft-catch{color:#fff;font-weight:700;margin-bottom:8px}
.fm-ft-about p{line-height:1.8}
.fm-ft-tip{display:inline-block;margin-top:12px;border:1px solid #666;padding:7px 12px;font-weight:700}
.fm-ft-tip:hover{background:var(--red);border-color:var(--red);text-decoration:none!important}
.fm-ft h4{color:#fff;font-size:14px;font-weight:900;border-bottom:1px solid #444;padding-bottom:8px;margin:0 0 10px}
.fm-ft ul{list-style:none;margin:0;padding:0}
.fm-ft li{padding:4px 0}
.fm-ft-2col{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
.fm-ft-bottom{border-top:1px solid #333;margin-top:32px;padding:16px 0;font-size:11px;color:#888;line-height:1.8}
@media(max-width:860px){.fm-ft-cols{grid-template-columns:1fr 1fr}.fm-ft-about{grid-column:1/-1}}
@media(max-width:520px){.fm-ft-cols{grid-template-columns:1fr}}

/* 3つの大きな括り */
.fm-big3{margin-top:24px}
.fm-big3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fm-big3-grid a{display:block;border:2px solid var(--ink);padding:18px 16px;background:#fff}
.fm-big3-grid a:hover{background:var(--ink);color:#fff}
.fm-big3-en{display:block;font-size:13px;font-weight:900;font-style:italic;color:var(--red)}
.fm-big3-grid strong{display:block;font-size:26px;font-weight:900;margin:2px 0 6px}
.fm-big3-grid p{font-size:12.5px;line-height:1.6;color:inherit;opacity:.85;min-height:3.2em}
.fm-big3-grid small{display:block;margin-top:10px;font-weight:700;font-size:12px}
.fm-big3-wide{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:12px;background:var(--red);color:#fff!important;padding:14px 18px;font-weight:900;font-size:17px}
.fm-big3-wide span{font-style:italic;font-size:13px;opacity:.85}
.fm-big3-wide small{margin-left:auto;font-size:12px;font-weight:700}
.fm-big3-wide:hover{background:#b8000d}
@media(max-width:860px){.fm-big3-grid{grid-template-columns:1fr}.fm-big3-grid p{min-height:0}}

/* お金の入口（売る・探す・リース・保険） */
.fm-money{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}
.fm-money a{display:block;background:var(--red);color:#fff!important;padding:12px 14px;font-weight:900;font-size:16px;line-height:1.3}
.fm-money a:hover{background:#b8000d}
.fm-money span{display:block;font-size:11px;font-style:italic;opacity:.85}
.fm-money small{display:block;font-size:11px;font-weight:700;opacity:.9;margin-top:2px}
@media(max-width:860px){.fm-money{grid-template-columns:1fr 1fr}}

/* ===== カテゴリの色分け（車＝赤／整備＝オレンジ／工具＝青／ニュース＝黒×黄） ===== */
.fm-t.fm-c-carblog,.fm-hero-cat.fm-c-carblog{background:#d7000f;color:#fff;border-color:#d7000f}
.fm-t.fm-c-maintenance,.fm-hero-cat.fm-c-maintenance{background:#e67300;color:#fff;border-color:#e67300}
.fm-t.fm-c-toolblog,.fm-hero-cat.fm-c-toolblog{background:#1f5fa8;color:#fff;border-color:#1f5fa8}
.fm-t.fm-c-news,.fm-hero-cat.fm-c-news{background:#111;color:#ffd400;border-color:#111}
.fm-t[class*=fm-c-]{font-weight:700}
.fm-big3-grid a:nth-child(1){border-top:6px solid #d7000f}
.fm-big3-grid a:nth-child(2){border-top:6px solid #e67300}
.fm-big3-grid a:nth-child(3){border-top:6px solid #1f5fa8}
.fm-big3-grid a:nth-child(2) .fm-big3-en{color:#e67300}
.fm-big3-grid a:nth-child(3) .fm-big3-en{color:#1f5fa8}
/* ニュース枠 */
.fm-newsbox{background:#f7f7f5;padding:0 16px 16px;border-top:4px solid #111}
.fm-newsbox .fm-bhead{border-bottom-color:#ccc;padding-top:12px}
.fm-newsbox .fm-bhead h2 span{color:#111;background:#ffd400;padding:0 6px}
.fm-newsposts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fm-newsposts a{display:grid;grid-template-columns:120px 1fr;gap:10px;background:#fff;padding:8px}
.fm-newsposts .fm-ph{aspect-ratio:4/3}
.fm-newsposts h3{font-size:13.5px;line-height:1.5;margin-top:2px}
.fm-newsposts a:hover h3{color:var(--red)}
.fm-newsfeed2{margin-top:14px;background:#fff;padding:10px 14px}
.fm-nf-h{font-size:13px;font-weight:900;margin-bottom:4px}.fm-nf-h small{font-weight:400;color:var(--sub);font-size:11px}
.fm-newsfeed2 ul{list-style:none}
.fm-newsfeed2 li{display:grid;grid-template-columns:36px 64px 1fr;gap:6px;padding:7px 0;border-bottom:1px dotted #ccc;font-size:13px;line-height:1.5}
.fm-newsfeed2 li span{color:var(--sub);font-size:11px}
.fm-newsfeed2 li em{font-style:normal;font-size:10px;background:#555;color:#fff;text-align:center;padding:1px 4px;align-self:start}
.fm-newsfeed2 a:hover{text-decoration:underline}
@media(max-width:860px){.fm-newsposts{grid-template-columns:1fr}.fm-newsfeed2 li{grid-template-columns:36px 1fr}.fm-newsfeed2 li em{display:none}}

/* ===== 記事カードの軽い動き（CSSだけ・画像の位置はずらさない） ===== */
.fm-grid3 a,.fm-feat a,.fm-list a,.fm-newsposts a,.fm-rank a{position:relative;transition:transform .18s ease,box-shadow .18s ease}
.fm-grid3 a,.fm-feat a{display:block}
.fm-grid3 a:hover,.fm-feat a:hover,.fm-newsposts a:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgba(0,0,0,.12)}
.fm-list a:hover{box-shadow:0 6px 16px rgba(0,0,0,.10)}
.fm-grid3 .fm-ph,.fm-feat .fm-ph,.fm-list .fm-ph,.fm-newsposts .fm-ph,.fm-rank .fm-ph{overflow:hidden}
.fm-ph{transition:filter .2s ease}
.fm-grid3 a:hover .fm-ph,.fm-feat a:hover .fm-ph,.fm-list a:hover .fm-ph,.fm-newsposts a:hover .fm-ph,.fm-rank a:hover .fm-ph{filter:brightness(1.08) saturate(1.1)}
.fm-big3-grid a,.fm-money a{transition:transform .18s ease,background .18s ease,color .18s ease}
.fm-big3-grid a:hover,.fm-money a:hover{transform:translateY(-3px)}
@media (prefers-reduced-motion:reduce){.fm-grid3 a,.fm-feat a,.fm-list a,.fm-newsposts a,.fm-big3-grid a,.fm-money a{transition:none}.fm-grid3 a:hover,.fm-feat a:hover,.fm-newsposts a:hover,.fm-big3-grid a:hover,.fm-money a:hover{transform:none}}
/* 今週よく読まれている整備記事 */
.fm-picks .fm-bhead h2 span{color:#e67300}
.fm-pick-no{position:absolute;left:0;top:0;z-index:2;background:#e67300;color:#fff;font-weight:900;font-size:16px;width:30px;height:30px;display:grid;place-items:center}
/* 工具えらび診断 */
.fm-quiz{border:2px solid #1f5fa8;background:#f4f8fc;padding:18px 20px}
.fm-quiz-head span{display:block;font-size:12px;font-weight:900;font-style:italic;color:#1f5fa8}
.fm-quiz-head strong{font-size:22px;font-weight:900}
.fm-quiz-head small{display:block;font-size:12px;color:var(--sub);margin-top:2px}
.fm-quiz-q{font-weight:900;font-size:16px;margin:16px 0 10px}
.fm-quiz-q b{background:#1f5fa8;color:#fff;padding:2px 8px;margin-right:8px;font-size:13px}
.fm-quiz-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fm-quiz-opts button{border:1px solid #9bb5d6;background:#fff;padding:12px;font-size:14px;font-weight:700;text-align:left;cursor:pointer;font-family:inherit;color:var(--ink);transition:background .15s,border-color .15s}
.fm-quiz-opts button:hover{background:#1f5fa8;border-color:#1f5fa8;color:#fff}
.fm-quiz-result{margin-top:14px;background:#fff;border-top:4px solid #1f5fa8;padding:16px}
.fm-quiz-r-label{font-size:12px;color:var(--sub)}
.fm-quiz-r-name{font-size:24px;font-weight:900;color:#1f5fa8;margin:2px 0 8px}
.fm-quiz-r-text,.fm-quiz-r-tip{font-size:14px;line-height:1.7;margin-bottom:8px}
.fm-quiz-r-tip{background:#f4f8fc;padding:8px 10px;font-size:13px}
.fm-quiz-r-btn{display:block;text-align:center;background:var(--red);color:#fff!important;font-weight:900;padding:14px;margin:12px 0 8px;box-shadow:0 4px 0 #8f000a;border-radius:6px}
.fm-quiz-r-btn:hover{background:#b8000d}
.fm-quiz-r-guide{font-size:13px;color:#1f5fa8;font-weight:700;margin-right:14px}
.fm-quiz-retry{border:0;background:none;color:var(--sub);font-size:12px;text-decoration:underline;cursor:pointer;font-family:inherit}
.fm-quiz-more{margin-top:14px;border-top:1px dashed #ccc;padding-top:10px;font-size:13px}
.fm-quiz-more p{font-weight:900;margin-bottom:4px}
.fm-quiz-more a{display:inline-block;margin-right:14px;color:var(--red);text-decoration:underline}
.fm-body .fm-quiz{margin:28px 0}
@media(max-width:520px){.fm-quiz-opts{grid-template-columns:1fr}}

/* 修理か買い替えかの判断ボックス */
.fm-body .fm-judge{border:2px solid var(--ink);border-left:8px solid #e67300;background:#fffaf4;padding:18px 20px;margin:32px 0}
.fm-judge-h{font-weight:900;font-size:18px;line-height:1.5;margin:0 0 10px!important}
.fm-judge-h span{display:block;font-size:12px;font-style:italic;color:#e67300}
.fm-body .fm-judge-list{list-style:none;margin:0 0 10px!important;padding:0}
.fm-judge-list li{position:relative;padding:6px 0 6px 28px;font-size:15px;border-bottom:1px dotted #e5d3bf}
.fm-judge-list li::before{content:"";position:absolute;left:2px;top:10px;width:14px;height:14px;border:2px solid #e67300;background:#fff}
.fm-judge-note{font-size:14px;line-height:1.8;margin:0 0 6px!important}
.fm-judge-btn{text-align:center;margin:8px 0!important}
.fm-judge-lease{font-size:13px;color:#555;margin:10px 0 0!important;border-top:1px dashed #ddd;padding-top:8px}
.fm-judge-lease a{color:var(--red);font-weight:700}

/* ===== 1.0.22 情報サイト化 ===== */
.fm-topbar{background:#f4f4f4;border-bottom:1px solid var(--line);font-size:11px;color:#666}
.fm-topbar .fm-wrap{display:flex;justify-content:space-between;height:26px;align-items:center}
.fm-subbar{background:#fff;border-bottom:1px solid var(--line);font-size:12px}
.fm-subbar .fm-wrap{display:flex;gap:20px;align-items:center;min-height:34px;overflow:hidden}
.fm-flash{display:flex;gap:8px;align-items:center;min-width:0;flex:1}
.fm-flash b{background:#ffd400;color:#111;font-size:10px;padding:1px 6px;flex:none}
.fm-flash span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-flash:hover span{text-decoration:underline}
.fm-kw{display:flex;gap:10px;align-items:center;white-space:nowrap;overflow-x:auto;flex:none;max-width:60%}
.fm-kw b{font-size:11px;color:var(--sub)}
.fm-kw a{color:#1f5fa8}
.fm-kw a:hover{text-decoration:underline}
@media(max-width:860px){.fm-subbar .fm-wrap{flex-direction:column;align-items:stretch;gap:4px;padding-top:6px;padding-bottom:6px}.fm-kw{max-width:none}.fm-topbar span+span{display:none}}

.fm-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;border-bottom:1px solid var(--line);padding-bottom:16px}
.fm-top-lead .fm-ph{aspect-ratio:16/9}
.fm-top-lead>div{margin-top:8px}
.fm-top-lead h2{font-size:20px;line-height:1.45;font-weight:900;margin:6px 0}
.fm-top-lead p{font-size:12px;color:#555;line-height:1.7}
.fm-top-lead:hover h2{color:var(--red)}
.fm-top-h{font-size:13px;font-weight:900;border-bottom:2px solid var(--ink);padding-bottom:4px}
.fm-hl{list-style:none}
.fm-hl li{border-bottom:1px solid var(--line)}
.fm-hl a{display:flex;gap:8px;align-items:baseline;padding:8px 0;font-size:13.5px;line-height:1.5}
.fm-hl a:hover .fm-hl-t{color:var(--red);text-decoration:underline}
.fm-hl-d{color:var(--sub);font-size:11px;flex:none;width:34px}
.fm-hl .fm-t{flex:none}
.fm-hl-t{font-weight:700}
.fm-hl-s a{padding:7px 0;font-size:13px}
.fm-hl-s a::before{content:"›";color:var(--sub);flex:none}
.fm-hl-s .fm-hl-t{font-weight:400}
@media(max-width:860px){.fm-top{grid-template-columns:1fr}}

.fm-info .fm-money{margin:16px 0 0}
.fm-info .fm-money a{padding:10px 12px;font-size:15px}

.fm-tlist{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.fm-tlist li{border-bottom:1px solid var(--line)}
.fm-tlist a{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0}
.fm-tlist .fm-ph{aspect-ratio:16/10}
.fm-tlist .fm-new::before{display:none}
.fm-tlist .fm-meta{margin:0 0 4px}
.fm-tlist .fm-d{margin-left:0}
.fm-tlist h3{font-size:13.5px;line-height:1.5;font-weight:700}
.fm-tlist a:hover h3{color:var(--red)}
@media(max-width:600px){.fm-tlist{grid-template-columns:1fr}}

.fm-news2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fm-news2>div{background:#fff;padding:10px 14px}
.fm-news2 .fm-newsfeed2{margin-top:0}
@media(max-width:860px){.fm-news2{grid-template-columns:1fr}}

.fm-cat3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}
.fm-cat3 h2{font-size:15px;font-weight:900;border-bottom:3px solid var(--cc,#222);padding-bottom:4px;margin-bottom:10px}
.fm-cat3 h2 span{font-size:11px;font-style:italic;color:var(--cc,#222);margin-right:8px}
.fm-cat3 .fm-c-carblog{--cc:#d7000f}.fm-cat3 .fm-c-maintenance{--cc:#e67300}.fm-cat3 .fm-c-toolblog{--cc:#1f5fa8}
.fm-cat3-lead h3{font-size:14px;line-height:1.5;font-weight:700;margin:6px 0 4px}
.fm-cat3-lead:hover h3{color:var(--red)}
.fm-cat3-more{display:block;text-align:right;font-size:12px;color:var(--sub);margin-top:8px}
@media(max-width:860px){.fm-cat3{grid-template-columns:1fr}}

.fm-info .fm-rank a{grid-template-columns:22px 72px 1fr}
.fm-info .fm-rank li:nth-child(n+4) a{grid-template-columns:22px 1fr;padding:8px 0}
.fm-info .fm-rank li:nth-child(n+4) a>span:empty{display:none}

/* ===== 1.0.24 警告灯の早見表 [fmag_warning] ===== */
.fm-warn{margin:24px 0}
.fm-warn-lead{font-size:14px;margin-bottom:12px}
.fm-wc{font-weight:700;padding:0 4px}
.fm-wc.fm-wc-red{color:#c4000d}.fm-wc.fm-wc-yellow{color:#b36b00}.fm-wc.fm-wc-green{color:#1b7d3a}
.fm-warn-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.fm-warn-filter button{border:1px solid #ccc;background:#fff;padding:6px 12px;font-size:13px;font-weight:700;cursor:pointer}
.fm-warn-filter button.on{background:#222;color:#fff;border-color:#222}
.fm-warn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.fm-warn-item{text-align:left;background:#fff;border:1px solid #ddd;border-left:6px solid #999;padding:10px 12px;cursor:pointer;font:inherit;color:inherit}
.fm-warn-item.fm-wc-red{border-left-color:#d7000f}.fm-warn-item.fm-wc-yellow{border-left-color:#f0a400}
.fm-warn-item strong{display:block;font-size:14px}
.fm-warn-item small{display:block;font-size:11px;color:#777;line-height:1.4;margin-top:2px}
.fm-warn-item:hover,.fm-warn-item.on{background:#fafafa;box-shadow:0 0 0 2px #222 inset}
.fm-warn-item[hidden]{display:none}
.fm-warn-detail{border:2px solid #222;padding:16px 18px;margin-top:16px;scroll-margin-top:60px}
.fm-warn-h{font-size:19px;font-weight:900;padding-left:10px;border-left:6px solid #999;margin-bottom:8px}
.fm-warn-h.fm-wc-red{border-left-color:#d7000f}.fm-warn-h.fm-wc-yellow{border-left-color:#f0a400}
.fm-warn-lv{font-size:13px;margin-bottom:10px}
.fm-warn-lv b{display:inline-block;color:#fff;padding:2px 10px;margin-right:8px}
.fm-lv-stop b{background:#d7000f}.fm-lv-check b{background:#e67300}.fm-lv-go b{background:#1f5fa8}
.fm-warn dl{margin:0}
.fm-warn dt{font-weight:900;font-size:13px;margin-top:10px}
.fm-warn dd{margin:4px 0 0;font-size:14px}
.fm-warn dd ol{margin:0;padding-left:1.4em}
.fm-warn-rel{margin-top:12px;font-size:13px}
.fm-warn-rel a{display:block;color:#1f5fa8;text-decoration:underline}
.fm-warn-cta{margin-top:12px;background:#fff7e6;padding:10px 12px;font-size:13px}
.fm-warn-cta a{display:inline-block;margin-top:4px;font-weight:700;color:#c4000d;text-decoration:underline}
.fm-warn-src{margin-top:12px;font-size:11px;color:#777}
.fm-warn-src a{display:block;color:#777;text-decoration:underline}
.fm-warn-note{margin-top:16px;font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
.fm-warn-detail.on{box-shadow:0 0 0 4px #ffd400}
.fm-pr{margin-left:6px;font-size:11px;color:#777;font-weight:400}
.fm-warn-banner{display:block;border:2px solid #222;border-left:8px solid #d7000f;background:#fff;padding:12px 16px;margin:16px 0;text-decoration:none!important;color:#222!important}
.fm-warn-banner span{display:inline-block;background:#ffd400;color:#111;font-size:11px;font-weight:900;padding:1px 8px;margin-right:8px}
.fm-warn-banner b{font-size:16px}
.fm-warn-banner small{display:block;font-size:13px;color:#555;margin-top:4px}
.fm-warn-banner:hover b{color:#d7000f}
.fm-warn-tile{display:flex;align-items:center;justify-content:center;background:#151515;border-radius:6px;height:54px;margin-bottom:8px}
.fm-warn-ic{width:64px;height:40px}
.fm-wc-red .fm-warn-tile{color:#ff2a2a}.fm-wc-yellow .fm-warn-tile{color:#f5a800}
.fm-warn-h{display:flex;align-items:center;gap:12px}
.fm-warn-h .fm-warn-tile{width:84px;height:52px;margin:0;flex:none}

/* ===== 1.0.30 DIY整備はじめてガイド ===== */
.fm-guide-toc{border:2px solid #222;padding:12px 16px;margin:20px 0}
.fm-guide-toc p{font-weight:900;margin-bottom:6px}
.fm-guide-toc ol{margin:0;padding-left:1.4em;font-size:14px;line-height:1.9}
.fm-guide-toc a{color:#1f5fa8;text-decoration:underline}
.fm-guide-no{display:inline-block;background:#e67300;color:#fff;font-size:12px;font-weight:900;font-style:italic;padding:2px 8px;margin-right:10px;vertical-align:middle}
.fm-guide-list{list-style:none;padding:0!important;margin:10px 0 28px!important}
.fm-guide-list li{border-bottom:1px solid #e3e3e3}
.fm-guide-list a{display:block;padding:10px 4px 10px 22px;position:relative;font-weight:700;font-size:14px}
.fm-guide-list a::before{content:"›";position:absolute;left:6px;color:#e67300;font-weight:900}
.fm-guide-list a:hover{color:#d7000f;background:#fafafa}
.fm-banner2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.fm-banner2 .fm-warn-banner{margin:0}
.fm-guide-banner{border-left-color:#e67300}
@media(max-width:860px){.fm-banner2{grid-template-columns:1fr}}

/* ===== 1.0.33 タイヤ外径・はみ出し計算 [fmag_tirecalc] ===== */
.fm-calc section{border:2px solid #222;padding:16px 18px;margin:20px 0}
.fm-calc-h{font-size:17px;font-weight:900;margin-bottom:12px}
.fm-calc-h span{display:inline-block;background:#1f5fa8;color:#fff;width:26px;text-align:center;margin-right:8px}
.fm-calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fm-calc-sub{font-weight:700;font-size:13px;border-bottom:1px solid #ddd;margin-bottom:8px;padding-bottom:4px}
.fm-calc label{display:grid;grid-template-columns:7em 90px 1fr;align-items:center;gap:8px;font-size:13px;margin:6px 0}
.fm-calc input{width:90px;padding:6px 8px;border:1px solid #bbb;font-size:16px;text-align:right}
.fm-calc label small{color:#777;font-size:11px}
.fm-calc-ex{font-size:11px;color:#777;margin-top:6px}
.fm-calc-out{background:#f4f7fb;margin-top:14px;padding:12px 14px}
.fm-calc-out dl{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;margin:0;font-size:14px}
.fm-calc-out dt{color:#555}
.fm-calc-out dd{margin:0;font-weight:900;font-size:16px}
.fm-calc-warn{color:#d7000f}
.fm-calc-msg{margin-top:8px;font-size:13px}
.fm-calc-note{font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
.fm-calc-rel{margin-top:12px;font-size:13px}
.fm-calc-rel a{display:block;color:#1f5fa8;text-decoration:underline}
@media(max-width:600px){.fm-calc-grid{grid-template-columns:1fr}}
.fm-calc-banner{border-left-color:#1f5fa8}
.fm-banner2{grid-template-columns:repeat(3,1fr)}
.fm-banner2 .fm-warn-banner b{font-size:15px}
@media(max-width:860px){.fm-banner2{grid-template-columns:1fr}}

/* ===== 1.0.36 季節のメンテナンス [fmag_season] ===== */
.fm-seasons{margin:20px 0}
.fm-season-tabs{display:flex;gap:6px;margin-bottom:12px;position:sticky;top:42px;background:#fff;padding:6px 0;z-index:5}
.fm-season-tabs a{flex:1;text-align:center;border:1px solid #ccc;padding:8px 0;font-weight:900}
.fm-season-tabs a.on{background:#222;color:#fff!important;border-color:#222}
.fm-season{border:2px solid #ddd;border-top:6px solid var(--sc,#999);padding:14px 18px;margin:0 0 18px;scroll-margin-top:100px}
.fm-season.on{border-color:var(--sc,#999)}
.fm-season-winter{--sc:#1f5fa8}.fm-season-spring{--sc:#d4568a}.fm-season-summer{--sc:#e67300}.fm-season-autumn{--sc:#8a5a14}
.fm-season-h{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}
.fm-season-h b{font-size:22px;color:var(--sc)}
.fm-season-h small{color:#777}
.fm-season-h em{font-style:normal;background:var(--sc);color:#fff;font-size:11px;font-weight:900;padding:1px 8px}
.fm-season-lead{font-size:13px;color:#555;margin-bottom:8px}
.fm-season ol{margin:0;padding-left:1.4em}
.fm-season li{padding:8px 0;border-bottom:1px dotted #ddd}
.fm-season li>span{font-weight:700}
.fm-season li div a{display:block;font-size:13px;color:#1f5fa8;text-decoration:underline;margin-top:2px}
.fm-season-note{font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
.fm-season-now{border-top:4px solid var(--sc);padding-top:4px}
.fm-season-now .fm-bhead h2 span{color:var(--sc)}
.fm-season-now ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.fm-season-now li{border-bottom:1px solid #e3e3e3;padding:8px 0}
.fm-season-now li span{display:block;font-weight:700;font-size:14px}
.fm-season-now li a{display:block;font-size:12.5px;color:#1f5fa8;margin-top:2px}
.fm-season-now li a:hover{text-decoration:underline}
@media(max-width:600px){.fm-season-now ul{grid-template-columns:1fr}}

/* ===== 1.0.37 記事ページの回遊 ===== */
.fm-bc ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;font-size:12px;color:#777;margin:0 0 10px;padding:0}
.fm-bc li+li::before{content:"›";margin-right:4px;color:#aaa}
.fm-bc a{color:#1f5fa8}
.fm-bc span{display:inline-block;max-width:28em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
.fm-tools{margin:28px 0;border:2px solid #222;padding:12px 14px}
.fm-tools>p{font-weight:900;font-size:14px;margin-bottom:8px}
.fm-tools div{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.fm-tools a{display:block;background:#f4f4f4;padding:10px 12px;text-decoration:none!important;color:#222!important}
.fm-tools a b{display:block;font-size:14px}
.fm-tools a small{display:block;font-size:11.5px;color:#666;margin-top:2px}
.fm-tools a:hover{background:#fff7e6}

/* ===== 1.0.39 車イベントカレンダー [fmag_events] ===== */
.fm-ev-filter{display:grid;gap:6px;margin:16px 0}
.fm-ev-filter div{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.fm-ev-filter b{font-size:12px;width:3em;color:#555}
.fm-ev-filter button{border:1px solid #ccc;background:#fff;padding:4px 10px;font-size:12px;font-weight:700;cursor:pointer}
.fm-ev-filter button.on{background:#222;color:#fff;border-color:#222}
.fm-ev-cal{border:2px solid #222;padding:10px;margin-bottom:24px}
.fm-ev-cal-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.fm-ev-cal-h b{font-size:17px}
.fm-ev-cal-h button{border:1px solid #ccc;background:#fff;width:36px;height:30px;font-size:18px;cursor:pointer}
.fm-ev-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.fm-ev-wd{text-align:center;font-size:11px;font-weight:700;color:#777;padding:2px 0}
.fm-ev-day{min-height:64px;border:1px solid #eee;padding:2px 3px;font-size:11px;overflow:hidden}
.fm-ev-day>span{font-weight:700;color:#999}
.fm-ev-day.has{background:#fff7e6;border-color:#f0c070}
.fm-ev-day.has>span{color:#d7000f}
.fm-ev-day a{display:block;line-height:1.3;margin-top:2px;color:#1f5fa8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-ev-day small{color:#777}
.fm-ev-month{font-size:16px;font-weight:900;border-bottom:2px solid #222;padding-bottom:4px;margin:20px 0 4px}
.fm-ev-item{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #e3e3e3;scroll-margin-top:60px}
.fm-ev-item[hidden],.fm-ev-month[hidden]{display:none}
.fm-ev-item:target{background:#fffbe0}
.fm-ev-d{font-weight:900;font-size:14px}
.fm-ev-tags{display:flex;flex-wrap:wrap;gap:6px;font-size:11.5px;color:#666}
.fm-ev-type{color:#fff;background:#555;padding:0 6px;font-weight:700}
.fm-ev-show{background:#d7000f}.fm-ev-classic{background:#8a5a14}.fm-ev-meeting{background:#1f5fa8}.fm-ev-race{background:#111}.fm-ev-maker{background:#e67300}.fm-ev-custom{background:#7b3fa0}
.fm-ev-item h4{font-size:16px;margin:4px 0}
.fm-ev-item h4 a{color:#111;text-decoration:underline}
.fm-ev-desc{font-size:13px;color:#444}
.fm-ev-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;font-size:12.5px}
.fm-ev-links a,.fm-body .fm-ev-links a[href*="hb.afl.rakuten"]:not(:has(img[width]:not([width="1"]))){display:inline !important;max-width:none;margin:0 !important;padding:0 !important;background:none !important;color:#1f5fa8 !important;font-size:12.5px !important;font-weight:400 !important;text-decoration:underline !important;border-radius:0 !important;box-shadow:none !important;transform:none !important}
.fm-body .fm-ev-links a[href*="hb.afl.rakuten"]::after{display:none !important}
.fm-ev-links .fm-pr{display:inline;margin:0;font-size:10.5px;color:#999}
.fm-ev-note{margin-top:16px;font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
.fm-ev-soon ul{list-style:none}
.fm-ev-soon li a{display:grid;grid-template-columns:150px 1fr auto;gap:10px;padding:9px 0;border-bottom:1px solid #e3e3e3;font-size:14px}
.fm-ev-soon li a:hover b{color:#d7000f}
.fm-ev-soon small{color:#777}
@media(max-width:600px){.fm-ev-item{grid-template-columns:1fr;gap:2px}.fm-ev-day{min-height:44px}.fm-ev-day a{display:none}.fm-ev-soon li a{grid-template-columns:1fr}}

/* ===== 1.0.40 カテゴリーページの入口 ===== */
.fm-hub{margin:16px 0 28px}
.fm-hub-carblog{--hc:#d7000f}.fm-hub-maintenance{--hc:#e67300}.fm-hub-toolblog{--hc:#1f5fa8}.fm-hub-news{--hc:#111}
.fm-hub-head{background:var(--hc);color:#fff;padding:22px 26px;position:relative}
.fm-hub-news .fm-hub-head{border-bottom:6px solid #ffd400}
.fm-hub-head span{font-size:13px;font-weight:900;font-style:italic;letter-spacing:.05em;opacity:.85}
.fm-hub-head h1{font-size:30px;font-weight:900;margin:2px 0 6px;color:#fff}
.fm-hub-head p{font-size:14px;line-height:1.7;max-width:46em}
.fm-hub-head small{position:absolute;right:22px;top:22px;font-size:12px;font-weight:700;opacity:.9}
.fm-hub-topics{margin:16px 0}
.fm-hub-topics>p,.fm-hub-rank>p,.fm-hub-tools>p{font-weight:900;font-size:14px;margin-bottom:8px}
.fm-hub-topics div{display:flex;flex-wrap:wrap;gap:8px}
.fm-hub-topics a{border:2px solid var(--hc);color:var(--hc)!important;font-weight:900;font-size:14px;padding:6px 14px;background:#fff}
.fm-hub-topics a:hover{background:var(--hc);color:#fff!important}
.fm-hub-cols{display:grid;grid-template-columns:3fr 2fr;gap:24px;margin:20px 0}
.fm-hub-rank ol{list-style:none;padding:0;margin:0}
.fm-hub-rank li a{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:9px 0;border-bottom:1px solid #e3e3e3;font-weight:700;font-size:14px;line-height:1.5}
.fm-hub-rank li a span{font-size:18px;font-weight:900;font-style:italic;color:var(--hc)}
.fm-hub-rank li a:hover{color:#d7000f}
.fm-hub-tools a{display:block;background:#f4f4f4;padding:10px 12px;margin-bottom:8px;border-left:4px solid var(--hc);text-decoration:none!important;color:#222!important}
.fm-hub-tools a b{display:block;font-size:14px}
.fm-hub-tools a small{display:block;font-size:11.5px;color:#666}
.fm-hub-tools a:hover{background:#fff7e6}
.fm-hub-newh{margin-top:8px}
@media(max-width:860px){.fm-hub-cols{grid-template-columns:1fr}.fm-hub-head small{position:static;display:block;margin-top:6px}.fm-hub-head h1{font-size:24px}}

/* ===== 1.0.41 スマホの使いやすさ・LINEオープンチャット ===== */
.fm-body iframe,.fm-body img,.fm-body video{max-width:100%}
.fm-body .wp-embedded-content{max-width:100%!important;width:100%!important}
.fm-body table{max-width:100%}
@media(max-width:600px){.fm-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.fm-line{background:#06c755;color:#fff;padding:14px 16px;margin:20px 0}
.fm-line-h{font-size:12px;font-weight:900;opacity:.9}
.fm-line-h span{background:#fff;color:#06c755;padding:0 6px;margin-right:6px}
.fm-line-t{font-size:16px;font-weight:900;line-height:1.5;margin:6px 0 4px}
.fm-line-s{font-size:12px;line-height:1.6;opacity:.95}
.fm-line a{display:block;background:#fff;color:#06c755!important;text-align:center;font-weight:900;padding:10px;margin-top:10px;text-decoration:none!important}
.fm-line a:hover{background:#eafff2}
.fm-side .fm-line{margin:0 0 16px}
.fm-line-mini{display:inline-block;background:#06c755;color:#fff!important;font-weight:700;padding:6px 12px;margin:10px 0 6px;text-decoration:none!important}
.fm-spbar,.fm-sp-search{display:none}
@media(max-width:860px){
	body.fmag{padding-bottom:62px}
	.fm-spbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:100;background:#fff;border-top:1px solid #ddd;box-shadow:0 -2px 8px rgba(0,0,0,.06);padding-bottom:env(safe-area-inset-bottom)}
	.fm-spbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 0 6px;font-size:10.5px;font-weight:700;color:#333!important;text-decoration:none!important}
	.fm-spbar svg{width:22px;height:22px;color:#222}
	.fm-spbar a:nth-child(3) svg{color:#d7000f}
	.fm-spbar-line svg{color:#06c755!important}
	.fm-sp-search:not([hidden]){display:block;position:fixed;left:0;right:0;bottom:58px;z-index:99;background:#fff;border-top:2px solid #222;padding:12px 16px;box-shadow:0 -4px 12px rgba(0,0,0,.12)}
	.fm-sp-search form{display:flex;gap:6px}
	.fm-sp-search input{flex:1;font-size:16px;padding:9px 10px;border:1px solid #bbb}
	.fm-sp-search button{background:#222;color:#fff;border:0;padding:0 16px;font-weight:700}
	.fm-sp-search p{font-size:12px;margin-top:8px;color:#666}
	.fm-sp-search p a{color:#1f5fa8;margin-left:8px;text-decoration:underline}
}
.fm-body{overflow-x:hidden;position:relative}

/* ===== 1.0.45 作業ごとの道具リスト [fmag_kit] ===== */
.fm-kit-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}
.fm-kit-tabs a{border:2px solid #1f5fa8;color:#1f5fa8!important;font-weight:900;font-size:13px;padding:6px 12px;text-decoration:none!important}
.fm-kit-tabs a:hover{background:#1f5fa8;color:#fff!important}
.fm-kit-sec{border:2px solid #222;padding:14px 18px;margin:18px 0;scroll-margin-top:60px}
.fm-kit-sec h2{font-size:19px;font-weight:900;margin:0 0 6px;padding:0;border:0;background:none}
.fm-kit-lead{font-size:13px;color:#555;margin-bottom:10px}
.fm-kit-h{font-weight:900;font-size:13px;margin:10px 0 4px;color:#555}
.fm-kit-h.fm-kit-must{color:#d7000f}
.fm-kit ul{list-style:none;padding:0!important;margin:0!important}
.fm-kit li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #e3e3e3}
.fm-kit li b{display:block;font-size:15px}
.fm-kit li small{display:block;font-size:12px;color:#666}
.fm-kit-btn{display:flex;gap:6px;flex:none}
.fm-kit-btn a{font-size:12px;font-weight:700;padding:6px 10px;white-space:nowrap;text-decoration:none!important}
.fm-kit-art{border:1px solid #1f5fa8;color:#1f5fa8!important}
.fm-kit-rk{background:#bf0000;color:#fff!important}
.fm-kit-note{font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
@media(max-width:600px){.fm-kit li{flex-direction:column;align-items:stretch}.fm-kit-btn a{flex:1;text-align:center}}
.fm-kit-btn{align-items:stretch}
#fm-kit .fm-kit-btn a.fm-kit-art,#fm-kit .fm-kit-btn a.fm-kit-rk{display:inline-flex!important;align-items:center;justify-content:center;max-width:none!important;margin:0!important;padding:8px 12px!important;font-size:12.5px!important;line-height:1.2!important;border-radius:0!important;box-shadow:none!important;min-width:96px}
#fm-kit .fm-kit-btn a.fm-kit-rk::after,#fm-kit .fm-kit-btn a.fm-kit-rk::before{display:none!important}
#fm-kit .fm-kit-btn a.fm-kit-rk{background:#bf0000!important;color:#fff!important}#fm-kit .fm-kit-btn a.fm-kit-art{background:#fff!important;color:#1f5fa8!important;border:1px solid #1f5fa8!important}

/* ===== 1.0.47 用語集 [fmag_glossary] ===== */
.fm-glo-search input{width:100%;font-size:16px;padding:10px 12px;border:2px solid #222;margin:12px 0}
.fm-glo-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.fm-glo-tabs a{border:2px solid #222;font-weight:900;font-size:13px;padding:5px 12px;text-decoration:none!important;color:#222!important}
.fm-glo-tabs a:hover{background:#222;color:#fff!important}
.fm-glo section{scroll-margin-top:60px}
.fm-glo section[hidden],.fm-glo-item[hidden]{display:none}
.fm-glo h2{font-size:18px;font-weight:900;border-bottom:3px solid #222;padding-bottom:4px;margin:24px 0 6px}
.fm-glo dl{margin:0}
.fm-glo-item{padding:10px 0;border-bottom:1px solid #e3e3e3;scroll-margin-top:60px}
.fm-glo-item:target{background:#fffbe0}
.fm-glo dt{font-weight:900;font-size:16px}
.fm-glo dt small{font-weight:400;font-size:12px;color:#777;margin-left:4px}
.fm-glo dd{margin:4px 0 0;font-size:14px;line-height:1.7}
.fm-glo dd a{color:#1f5fa8;font-weight:700;white-space:nowrap}
.fm-glo-note{margin-top:16px;font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
.fm-body a.fm-glo-link{color:inherit!important;text-decoration:none!important;border-bottom:1px dashed #1f5fa8;background:none!important;padding:0!important;display:inline!important;box-shadow:none!important;font-size:inherit!important;font-weight:inherit!important}
.fm-body a.fm-glo-link::after{display:none!important}
.fm-body a.fm-glo-link:hover{color:#1f5fa8!important}

/* ===== 1.0.48 車の手続きガイド [fmag_procedures] ===== */
.fm-proc-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}
.fm-proc-tabs a{border:2px solid #d7000f;color:#d7000f!important;font-weight:900;font-size:13px;padding:6px 12px;text-decoration:none!important}
.fm-proc-tabs a:hover{background:#d7000f;color:#fff!important}
.fm-proc section{border:2px solid #222;padding:12px 18px;margin:16px 0;scroll-margin-top:60px}
.fm-proc section h2{font-size:18px;font-weight:900;margin:0 0 4px;padding:0;border:0;background:none}
.fm-proc ul{list-style:none;padding:0!important;margin:0!important}
.fm-proc li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e3e3e3}
.fm-proc li:last-child{border-bottom:0}
.fm-proc li b{display:block;font-size:15px}
.fm-proc li small{display:block;font-size:12px;color:#666}
.fm-proc-btn{display:flex;gap:6px;flex:none}
#fm-proc .fm-proc-btn a,.fm-proc-soon{display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;padding:7px 12px;white-space:nowrap;min-width:96px;text-decoration:none!important}
#fm-proc .fm-proc-art{background:#d7000f;color:#fff!important}
#fm-proc .fm-proc-off{border:1px solid #1f5fa8;color:#1f5fa8!important;background:#fff}
.fm-proc-soon{background:#f1f1f1;color:#999}
.fm-proc-sell{display:block;background:#fff7e6;border-left:6px solid #d7000f;padding:12px 16px;margin:20px 0}
.fm-proc-sell b{display:block;font-size:15px}
.fm-proc-sell span{display:block;font-size:13px;color:#444;margin:4px 0 8px}
.fm-proc-sell a{font-weight:900;color:#d7000f!important}
.fm-proc-note{font-size:12px;color:#555;background:#f4f4f4;padding:10px 12px}
@media(max-width:600px){.fm-proc li{flex-direction:column;align-items:stretch}.fm-proc-btn>*{flex:1}}

/* ===== 1.0.50 手続きガイドの案内・広告掲載の募集 ===== */
.fm-banner2{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.fm-proc-banner{border-left-color:#d7000f}
.fm-proc-banner span{background:#d7000f;color:#fff}
.fm-adrec{display:block;border:2px dashed #888;padding:14px 16px;margin:0 0 16px;background:#fafafa;text-decoration:none!important;color:#222!important}
.fm-adrec span{display:inline-block;background:#222;color:#fff;font-size:11px;font-weight:900;padding:1px 8px}
.fm-adrec b{display:block;font-size:16px;margin:6px 0 2px}
.fm-adrec small{display:block;font-size:12px;color:#555;line-height:1.6}
.fm-adrec em{display:block;font-style:normal;font-weight:900;font-size:13px;color:#d7000f;margin-top:6px}
.fm-adrec:hover{background:#fff7e6;border-color:#d7000f}
.fm-advp table{width:100%}

/* ===== 1.0.51 サイト内検索 ===== */
.fm-srch h1{font-size:22px;font-weight:900;margin:16px 0 10px}
.fm-srch h1 small{font-size:13px;color:#777;margin-left:10px;font-weight:700}
.fm-srch-form{display:flex;gap:6px;margin-bottom:14px}
.fm-srch-form input{flex:1;font-size:16px;padding:10px 12px;border:2px solid #222}
.fm-srch-form button{background:#222;color:#fff;border:0;padding:0 18px;font-weight:900;cursor:pointer}
.fm-srch-hit{border:2px solid #1f5fa8;padding:10px 14px;margin-bottom:18px;background:#f4f7fb}
.fm-srch-hit>p{font-weight:900;font-size:13px;margin-bottom:6px;color:#1f5fa8}
.fm-srch-hit a{display:block;padding:8px 0;border-bottom:1px solid #dde5f0;text-decoration:none!important;color:#222!important}
.fm-srch-hit a:last-child{border-bottom:0}
.fm-srch-hit b{display:block;font-size:15px}
.fm-srch-hit small{display:block;font-size:12px;color:#555}
.fm-srch-hit a:hover b{color:#d7000f}
.fm-srch-none>p{font-size:14px;margin:8px 0}
.fm-srch-h{font-weight:900;margin-top:18px!important}
.fm-404-code{font-size:64px;font-weight:900;font-style:italic;color:#d7000f;line-height:1;margin-top:16px}
.fm-404 h1{margin-top:4px}

/* ===== 1.0.54 共有ボタン・役に立ちましたか ===== */
.fm-share{margin:28px 0 12px}
.fm-share>p,.fm-fb>p{font-weight:900;font-size:14px;margin-bottom:8px}
.fm-share>div{display:flex;flex-wrap:wrap;gap:6px}
.fm-share a,.fm-share button{flex:1;min-width:100px;text-align:center;font-size:13px;font-weight:700;padding:10px 6px;color:#fff!important;text-decoration:none!important;border:0;cursor:pointer;font-family:inherit}
.fm-share-line{background:#06c755}.fm-share-x{background:#111}.fm-share-fb{background:#1877f2}.fm-share-hatena{background:#00a4de}
.fm-share-copy{background:#666}
.fm-fb{border:2px solid #222;padding:14px 16px;margin:12px 0 20px;text-align:center}
.fm-fb>div{display:flex;justify-content:center;gap:8px}
.fm-fb button{border:2px solid #222;background:#fff;font-weight:900;font-size:14px;padding:8px 18px;cursor:pointer;font-family:inherit}
.fm-fb button:hover{background:#222;color:#fff}
.fm-fb p[hidden],.fm-fb div[hidden]{display:none}
.fm-fb-yes,.fm-fb-no{font-size:14px;margin-top:4px}
.fm-fb-no a{color:#06c755;font-weight:900}
.fm-logo-wrap{margin:0;font-size:inherit;font-weight:inherit;line-height:1}

/* ===== 1.0.57 上のメニューを目立たせる（カテゴリ色のタブ） ===== */
.fm-nav{background:#fff;border-bottom:3px solid #1c1c1c;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.fm-nav ul.fm-tabs{display:flex;gap:0;padding:0}
.fm-nav .fm-tab{flex:1;--tc:#d7000f}
.fm-nav .fm-tab-carblog{--tc:#d7000f}.fm-nav .fm-tab-maintenance{--tc:#e67300}.fm-nav .fm-tab-toolblog{--tc:#1f5fa8}.fm-nav .fm-tab-news{--tc:#111}.fm-nav .fm-tab-diy{--tc:#1b8a4a}.fm-nav .fm-tab-search{--tc:#555}
.fm-nav .fm-tab a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:9px 8px 8px;font-size:16px;font-weight:900;color:#111!important;border-bottom:5px solid var(--tc);border-left:1px solid #eee;line-height:1.2;transition:background .15s,color .15s}
.fm-nav .fm-tab:first-child a{border-left:0}
.fm-nav .fm-tab a small{font-size:9.5px;font-weight:900;font-style:italic;letter-spacing:.06em;color:var(--tc)}
.fm-tab-news a small{color:#b38f00!important}
.fm-nav .fm-tab a:hover,.fm-nav .fm-tab.on a{background:var(--tc);color:#fff!important}
.fm-nav .fm-tab a:hover small,.fm-nav .fm-tab.on a small{color:#fff!important}
.fm-tab-news a:hover,.fm-tab-news.on a{color:#ffd400!important}
@media(max-width:860px){
	.fm-nav ul.fm-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
	.fm-nav ul.fm-tabs::-webkit-scrollbar{display:none}
	.fm-nav .fm-tab{flex:none}
	.fm-nav .fm-tab a{font-size:14px;padding:7px 14px 6px;border-bottom-width:4px}
	.fm-nav .fm-tab a small{font-size:8.5px}
}
.fm-genre .fm-tab small{display:none}

/* ===== 1.0.59 トップの動き ===== */
.fm-top-lead{min-width:0;position:relative}
.fm-top-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.fm-top-track::-webkit-scrollbar{display:none}
.fm-top-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:block}
.fm-top-slide .fm-ph{aspect-ratio:16/9;background-color:#ddd}
.fm-top-slide>div:last-child{margin-top:8px}
.fm-top-ttl{font-size:20px;line-height:1.45;font-weight:900;margin:6px 0}
.fm-top-slide p{font-size:12px;color:#555;line-height:1.7}
.fm-top-slide:hover .fm-top-ttl{color:var(--red)}
.fm-top-dots{display:flex;justify-content:center;gap:8px;margin-top:8px}
.fm-top-dots button{width:26px;height:5px;border:0;padding:0;background:#ccc;cursor:pointer}
.fm-top-dots button.on{background:var(--red)}
.fm-flash-box{position:relative;flex:1;min-width:0;height:24px;overflow:hidden}
.fm-flash-box .fm-flash{position:absolute;inset:0;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .35s,transform .35s}
.fm-flash-box .fm-flash.on{opacity:1;transform:none;pointer-events:auto}
.fm-flash b.ev{background:#1f5fa8;color:#fff}
.fm-tlist .fm-ph,.fm-cat3-lead .fm-ph,.fm-top-slide .fm-ph{transition:filter .2s}
.fm-tlist a:hover .fm-ph,.fm-cat3-lead:hover .fm-ph,.fm-top-slide:hover .fm-ph{filter:brightness(1.08) saturate(1.1)}
.fm-tlist a,.fm-hl a{transition:background .15s}
.fm-tlist a:hover{background:#fafafa}
.fm-rise{opacity:0;transform:translateY(14px)}
.fm-rise.fm-in{opacity:1;transform:none;transition:opacity .45s ease,transform .45s ease}
@media(prefers-reduced-motion:reduce){.fm-rise{opacity:1;transform:none}.fm-flash-box .fm-flash{transition:none}}
@media(max-width:860px){.fm-flash-box{flex:none;width:100%}}
