/* FCサイト共通：ヘッダー・フッター・下の固定ボタン・資料請求の窓（2026-11-01 TAMA「コラムとFCのCTA・フォーム・ヘッダー・フッターを統一」）
 * 元はFCトップ（/fc/）の見た目。コラム・代表コラム・コラム一覧とトップで同じ物を使う
 * 入れる道具：tools/fc_common.py（何度流しても同じ結果） */
:root{--fcc-or:#e4690e;--fcc-or2:#C94E12;--fcc-ink:#3a2e25;--fcc-sub:#6b5d52;--fcc-line:#eadfd3;--fcc-navy:#22262E}
.fcc-nb{display:inline-block}

/* ヘッダー */
.fcc-h{position:sticky;top:0;z-index:9000;background:#fff;box-shadow:0 1px 0 var(--fcc-line);font-family:"Noto Sans JP",sans-serif}
.fcc-h .fcc-in{display:flex;align-items:center;gap:14px;height:64px;max-width:1160px;margin:0 auto;padding:0 16px;box-sizing:border-box}
.fcc-h .fcc-logo{display:block;margin-right:auto;line-height:0}
.fcc-h .fcc-logo img{height:38px;width:auto;max-width:none}
.fcc-h .fcc-nav{display:flex;gap:4px}
.fcc-h .fcc-nav a{display:block;color:var(--fcc-ink);font-weight:700;font-size:15px;text-decoration:none;padding:8px 8px;border-radius:8px;white-space:nowrap}
.fcc-h .fcc-nav a:hover{background:#FFF4EC}
.fcc-h .fcc-nav .fcc-pc{display:none}
.fcc-h .fcc-hcta{display:none}
/* 前の固定ヘッダーの分の空き（WordPressの写し）を詰める */
.fcc-h ~ main{padding-top:12px!important}
@media (min-width:900px){
  .fcc-h .fcc-in{height:88px;padding:0 40px;gap:18px}
  .fcc-h .fcc-logo img{height:58px}
  .fcc-h .fcc-nav .fcc-pc{display:block}
  .fcc-h .fcc-nav a{font-size:16px}
  .fcc-h .fcc-hcta{display:inline-block;background:var(--fcc-or);color:#fff;font-weight:900;font-size:16px;text-decoration:none;padding:9px 20px;border-radius:999px;white-space:nowrap}
}

/* ボタン（トップの .cta と同じ形） */
.fcc-cta{display:block;box-sizing:border-box;max-width:540px;margin:28px auto 0;background:var(--fcc-or);color:#fff!important;text-decoration:none!important;text-align:center;font-weight:900;font-size:21px;line-height:1.5;padding:17px 16px 15px;border-radius:999px;box-shadow:0 6px 0 var(--fcc-or2);position:relative;overflow:hidden;border:0;cursor:pointer;font-family:inherit;width:100%}
.fcc-cta small{display:block;font-size:15px;font-weight:700;opacity:.95}
.fcc-cta:active{transform:translateY(3px);box-shadow:0 3px 0 var(--fcc-or2)}
.fcc-cta::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:fccshine 3.2s ease-in-out infinite}
@keyframes fccshine{0%,60%{left:-60%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.fcc-cta::after{animation:none;display:none}}

/* コラムの資料請求のボタンを、トップと同じオレンジに（めくれる資料の見本はそのまま） */
.fcv2 .v2-btn,.fcv2 .bContent .v2-btn{background:var(--fcc-or)!important;box-shadow:0 6px 0 var(--fcc-or2)!important;font-weight:900!important}
.fcv2 .v2-btn:hover{box-shadow:0 3px 0 var(--fcc-or2)!important}

/* フッター */
.fcc-f{background:var(--fcc-navy);color:#C9CCD3;text-align:center;padding:48px 0 120px;font-size:16px;line-height:1.8;font-family:"Noto Sans JP",sans-serif}
.fcc-f .fcc-in{max-width:760px;margin:0 auto;padding:0 20px;box-sizing:border-box}
.fcc-f .fcc-flogo{display:inline-block;background:#fff;border-radius:12px;padding:10px 18px;line-height:0}
.fcc-f .fcc-flogo img{height:44px;width:auto}
.fcc-f .fcc-copy{color:#fff;font-weight:900;font-size:20px;line-height:1.6;margin:16px 0 18px}
.fcc-f .fcc-co{margin:0 auto;border-collapse:collapse;font-size:16px;text-align:left;max-width:420px;width:100%}
.fcc-f .fcc-co th,.fcc-f .fcc-co td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.12)}
.fcc-f .fcc-co th{color:#9AA0AB;font-weight:700;white-space:nowrap}
.fcc-f .fcc-co td{color:#fff}
.fcc-f .fcc-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:28px 0 0;padding:0;list-style:none}
.fcc-f .fcc-links a{color:#fff;font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:3px}
.fcc-f .fcc-note{font-size:14px;line-height:1.7;opacity:.8;margin:20px 0 8px}
.fcc-f .fcc-small{font-size:14px;margin-top:18px}
@media (min-width:900px){.fcc-f{padding-bottom:48px}}

/* 下の固定ボタン（スマホ） */
.fcc-bar{position:fixed;left:0;right:0;bottom:0;z-index:8000;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);box-shadow:0 -2px 10px rgba(0,0,0,.08);transform:translateY(110%);transition:transform .25s}
.fcc-bar.show{transform:none}
.fcc-bar a{display:block;background:var(--fcc-or);color:#fff!important;text-align:center;font-weight:900;font-size:18px;text-decoration:none!important;padding:13px;border-radius:999px;font-family:"Noto Sans JP",sans-serif}
@media (min-width:900px){.fcc-bar{display:none}}

/* 資料請求の窓（トップと同じ） */
#lpm{--or:#e4690e;--or2:#C94E12;--ink:#3a2e25;--sub:#6b5d52;--line:#eadfd3;font-family:"Noto Sans JP",sans-serif;line-height:1.85;font-size:18px;color:var(--ink)}
#lpm *{box-sizing:border-box}
#lpm h3,#lpm h4,#lpm p{margin:0;padding:0;border:0;background:none}
#lpm h3::before,#lpm h3::after,#lpm h4::before,#lpm h4::after{content:none}
.lpm{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;visibility:hidden;opacity:0;transition:opacity .25s,visibility .25s}
.lpm.on{visibility:visible;opacity:1}
.lpm-bg{position:absolute;inset:0;background:rgba(20,22,28,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.lpm-box{position:relative;background:#fff;color:var(--ink);border-radius:22px;width:100%;max-width:520px;max-height:calc(100vh - 32px);overflow:auto;padding:26px 22px 20px;transform:translateY(24px) scale(.97);transition:transform .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 30px 60px rgba(0,0,0,.35)}
.lpm.on .lpm-box{transform:none}
.lpm-x{position:absolute;right:10px;top:8px;border:0;background:none;font-size:30px;line-height:1;color:var(--sub);cursor:pointer;padding:6px 10px}
.lpm-k{display:inline-block;background:var(--or);color:#fff;font-weight:900;font-size:14px;padding:3px 12px;border-radius:999px;margin:0 0 8px}
#lpm #lpm-h{font-size:24px;font-weight:900;line-height:1.45;margin:0 0 6px;color:var(--ink)}
#lpm .lpm-s{font-size:16px;color:var(--sub);margin:0 0 12px;line-height:1.7}
.lpm-pv{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:auto auto;gap:8px}
.lpm-pv .lpm-pi:first-child{grid-row:1 / span 2}
.lpm-pi{border:0;background:none;padding:0;cursor:pointer;font-family:inherit;display:grid;gap:4px;justify-items:center;align-content:start;color:var(--ink)}
.lpm-pi img{width:100%;height:auto;aspect-ratio:720/790;object-fit:cover;border-radius:8px;border:1px solid var(--line);box-shadow:0 2px 6px rgba(0,0,0,.12);background:#fff;display:block}
.lpm-pi span{font-size:13px;font-weight:700;line-height:1.35;text-align:center;word-break:keep-all;overflow-wrap:anywhere}
.lpm-pv .lpm-pi{animation:fccpop .5s cubic-bezier(.3,1.5,.5,1) both}
.lpm-pv .lpm-pi:nth-child(2){animation-delay:.3s}
.lpm-pv .lpm-pi:nth-child(3){animation-delay:.6s}
.lpm-pv .lpm-pi:nth-child(4){animation-delay:.9s}
.lpm-pv .lpm-pi:nth-child(5){animation-delay:1.2s}
@keyframes fccpop{0%{opacity:0;transform:scale(.7)}100%{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.lpm-pv .lpm-pi{animation:none}}
#lpm .lpm-pvn{font-size:14px;color:var(--sub);margin:8px 0 12px;line-height:1.6}
.lpm-r{border-top:1px solid var(--line);padding-top:14px}
#lpm .form{background:none;color:var(--ink);padding:0;margin:0;max-width:none;border-radius:0;box-shadow:none}
#lpm .form label{display:block;font-weight:700;margin-top:16px;font-size:18px}
#lpm .form label:first-of-type{margin-top:0}
#lpm .form label em{font-style:normal;font-size:14px;color:#fff;background:var(--or);border-radius:4px;padding:1px 6px;margin-left:6px;vertical-align:2px}
#lpm .form label em.opt{background:#9AA0A6}
#lpm .form input,#lpm .form select{display:block;width:100%;height:auto;font-size:18px;padding:13px 14px;border:1px solid #CFC5BB;border-radius:10px;margin-top:6px;font-family:inherit;background:#fff;color:var(--ink)}
#lpm .lpm-ter{font-size:14px;color:var(--or2);font-weight:700;margin:6px 0 10px}
#lpm .lpm-now{font-size:15px;font-weight:900;color:var(--or2);text-align:center;margin:14px 0 0}
#lpm .fcc-cta{margin-top:12px}
#lpm .form-msg{margin-top:10px;font-weight:700;color:var(--or2);text-align:center;min-height:1em}
#lpm .lpm-safe2{text-align:center;font-size:14px;color:var(--sub);margin:10px 0 0;line-height:1.7}
.lpm-zoom{display:grid;gap:10px;justify-items:center;padding-top:8px}
.lpm-zoom[hidden],.lpm-main[hidden]{display:none!important}
.lpm-back{justify-self:start;border:0;background:none;font:inherit;font-weight:900;color:var(--or2);cursor:pointer;padding:4px 0}
.lpm-zoom img{width:100%;max-width:480px;height:auto;border-radius:10px;border:1px solid var(--line)}
#lpm .lpm-zn{font-size:16px;font-weight:900;margin:0}
.lpm-go{max-width:340px;margin:0!important}
#lpm .form-thanks{text-align:center;font-size:18px;line-height:1.9;padding:30px 0}
#lpm .form-thanks b{font-size:22px;color:var(--or)}
#lpm .thanks-step{font-size:16px;color:var(--sub);margin:6px 0 10px}
#lpm .thanks-cal{display:inline-block;border:2px solid var(--or);color:var(--or);font-weight:900;border-radius:999px;padding:10px 22px;text-decoration:none;font-size:17px}
#lpm .thanks-note{font-size:14px;color:var(--sub);margin-top:14px}
#lpm .thanks-line-w{margin-top:26px}
#lpm .thanks-cal,#lpm .thanks-line{width:min(100%,340px);text-align:center}
#lpm .thanks-line-w p{font-size:16px;color:var(--sub);margin:0 0 10px}
#lpm .thanks-line{display:inline-block;border:2px solid #06C755;color:#06a046;font-weight:900;border-radius:999px;padding:10px 22px;text-decoration:none;font-size:17px}
.lpm-q{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);text-align:left}
#lpm .lpm-q h4{font-size:18px;margin:0 0 4px}
#lpm .lpm-q p{font-size:15px;color:var(--sub);margin:0 0 10px;line-height:1.7}
.lpm-qc{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.lpm-qc button{border:1px solid var(--line);background:#FFF4EC;color:var(--ink);font:inherit;font-size:14px;font-weight:700;border-radius:999px;padding:6px 12px;cursor:pointer}
.lpm-q textarea{width:100%;min-height:84px;font:inherit;font-size:18px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}
.lpm-qs{display:block;width:min(100%,340px);margin:10px auto 0;border:2px solid var(--or);background:#fff;color:var(--or);font:inherit;font-weight:900;font-size:17px;border-radius:999px;padding:10px 22px;cursor:pointer}
.lpm-qs:disabled{opacity:.45;cursor:default}
#lpm .lpm-qd{font-size:16px;font-weight:900;color:var(--or2);text-align:center;margin:10px 0 0}
body.lpm-open{overflow:hidden}
@media (min-width:900px){
  .lpm-box{max-width:920px}
  .lpm-main{display:grid;grid-template-columns:400px minmax(0,1fr);gap:24px;align-items:start}
  .lpm-l{background:#FFF4EC;border-radius:14px;padding:18px}
  .lpm-pv{grid-template-columns:200px repeat(2,minmax(0,1fr))}
  .lpm-r{border-top:0;padding-top:0}
}

/* スマホ：下の固定ボタンとAIメキッキーを重ねない（2026-11-01 TAMA）
 * 固定ボタンが出ている間は、ボタンを左に寄せ、右の空いた所にメキッキーを並べる。名札は2行に縮める */
@media (max-width:767px){
  body:has(.bpc-launch:not([hidden])) #fixbar{padding-right:84px}
  body:has(.bpc-launch:not([hidden])) #fixbar a{font-size:16px;white-space:nowrap;padding-left:8px;padding-right:8px}
  body:has(#fixbar.show) .bpc-launch{right:10px;bottom:calc(10px + env(safe-area-inset-bottom))!important}
  body:has(#fixbar.show) .bpc-me,body:has(#fixbar.show) .bpc-me img{width:58px}
  body:has(#fixbar.show) .bpc-bub{margin-bottom:70px}
  body:has(#fixbar.show) .bpc-tag{white-space:normal;width:70px;right:-6px;bottom:-6px;text-align:center;font-size:10px;line-height:1.25;padding:3px 4px}
}

/* 他社FCの記事のPRの枠（tools/column_pr.py・2026-11-01） */
.fcv2 .bContent .cpr{margin:40px 0;padding:24px 16px;border-radius:18px;background:#fff6ee;border:2px solid #f3d9c4}
.fcv2 .bContent .cpr p{margin:0;font-size:16px;line-height:1.7}
.fcv2 .bContent .cpr .cpr-tag{display:inline-block;background:var(--fcc-or);color:#fff;font-weight:900;font-size:14px;line-height:1.4;padding:3px 12px;border-radius:999px;margin-bottom:8px}
.fcv2 .bContent .cpr .cpr-t{font-size:23px;font-weight:900;line-height:1.45;margin-bottom:16px;color:var(--fcc-ink)}
.cpr .nb{display:inline-block}
/* 見比べ */
.cpr-head{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.cpr-head span:first-child{display:none}
.cpr-head span{text-align:center;font-weight:900;font-size:15px;padding:6px 4px;border-radius:10px;line-height:1.4}
.cpr-head .cpr-o{background:#ece6df;color:#5a4d42}
.cpr-head .cpr-me{background:var(--fcc-or);color:#fff}
.cpr-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.fcv2 .bContent .cpr .cpr-k{grid-column:1/-1;font-size:14px;font-weight:900;color:var(--fcc-sub);margin:0}
.cpr-v{border-radius:12px;padding:10px 10px;background:#fff;border:1px solid #eadfd3;min-width:0}
.cpr-v b{display:block;font-size:16px;font-weight:900;line-height:1.45;color:var(--fcc-ink)}
.cpr-v small{display:block;font-size:13px;line-height:1.5;color:var(--fcc-sub);margin-top:2px}
.cpr-v.cpr-me{background:#fff;border:2px solid var(--fcc-or)}
.cpr-v.cpr-me b{color:#b4500a}
.fcv2 .bContent .cpr .cpr-lead{font-weight:900;margin-top:18px;font-size:17px}
.fcv2 .bContent .cpr .cpr-fit{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.fcv2 .bContent .cpr .cpr-fit li{position:relative;margin:0;padding:8px 10px 8px 34px;background:#fff;border-radius:10px;font-size:15px;font-weight:700;line-height:1.6}
.fcv2 .bContent .cpr .cpr-fit li::before{content:"";position:absolute;left:12px;top:15px;width:12px;height:7px;border-left:3px solid var(--fcc-or);border-bottom:3px solid var(--fcc-or);transform:rotate(-45deg)}
.fcv2 .bContent .cpr .cpr-src{font-size:13px;color:var(--fcc-sub);margin-top:12px}
.fcv2 .bContent .cpr .v2-btn{margin-top:16px}
/* 動画と数字 */
.cpr-video{position:relative;display:block;width:100%;padding:0;border:0;border-radius:14px;overflow:hidden;background:#000;cursor:pointer;aspect-ratio:16/9;font-family:inherit}
.cpr-video img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85}
.cpr-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.cpr-play{position:absolute;left:50%;top:42%;width:68px;height:48px;margin:-24px 0 0 -34px;border-radius:14px;background:#e62117}
.cpr-play::after{content:"";position:absolute;left:27px;top:14px;border-left:18px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
.cpr-vt{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font-weight:900;font-size:16px;line-height:1.4;text-align:left}
.cpr-vt small{display:block;font-size:13px;font-weight:700;opacity:.9}
.cpr-nums{display:grid;gap:10px;margin-top:14px}
.cpr-num{container-type:inline-size;min-width:0;background:#fff;border-radius:14px;padding:14px 10px;border:1px solid #eadfd3}
.cpr-owner{display:grid;grid-template-columns:120px minmax(0,1fr);column-gap:12px;align-items:center}
.cpr-owner img{grid-row:1/span 2;width:120px;height:84px;object-fit:cover;border-radius:12px;display:block}
.fcv2 .bContent .cpr .cpr-nk{font-weight:900;font-size:16px;line-height:1.4}
.fcv2 .bContent .cpr .cpr-nk small{display:block;font-size:13px;font-weight:700;color:var(--fcc-sub)}
.cpr-steps{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.cpr-steps li{margin:0;padding:8px 4px;background:#fff6ee;border-radius:10px;text-align:center}
.cpr-steps span{display:block;white-space:nowrap;font-size:clamp(10px,3.7cqi,12px);font-weight:700;color:var(--fcc-sub);line-height:1.4}
.cpr-steps b{display:block;font-size:clamp(13px,5.4cqi,17px);font-weight:900;color:#b4500a;line-height:1.4;white-space:nowrap}
.cpr-steps b.cpr-minus{color:#5a6b7a}
.fcv2 .bContent .cpr .cpr-nn{font-size:14px;font-weight:700;margin-top:8px}
.fcv2 .bContent .cpr .cpr-big{font-size:40px;font-weight:900;color:#b4500a;line-height:1.1}
.fcv2 .bContent .cpr .cpr-big small{font-size:16px;margin-left:2px}
.fcv2 .bContent .cpr .cpr-q{font-size:15px;font-weight:700;line-height:1.6}
.cpr-act{display:grid;justify-items:center;gap:6px}
.fcv2 .bContent .cpr .cpr-more{font-size:15px;font-weight:700;color:var(--fcc-or);text-decoration:underline;text-underline-offset:3px}
@media (min-width:768px){
  .fcv2 .bContent .cpr{padding:28px 24px}
  .cpr-head{grid-template-columns:150px 1fr 1fr}
  .cpr-head span:first-child{display:block}
  .cpr-row{grid-template-columns:150px 1fr 1fr;align-items:stretch}
  .fcv2 .bContent .cpr .cpr-k{grid-column:auto;align-self:center;font-size:15px}
  .cpr-nums{grid-template-columns:1.5fr 1fr 1fr}
  .cpr-owner{grid-template-columns:1fr}
  .cpr-owner img{grid-row:auto;width:100%;height:120px;margin-bottom:8px}
}
