/* ZUBOLAND コラム（自作）。色＝ZUBOLANDのブランド色。HPのv3と同じ書体 */
:root{--p:#2B57AC;--p2:#1E2B57;--a:#F2C63C;--r:#E2382C;--bg:#F6F9FF;--ln:#E3EAF5;--tx:#1E2B57;--sub:#5B6B85}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:"Noto Sans JP",sans-serif;font-weight:500;color:var(--tx);background:#fff;line-height:1.9;letter-spacing:.04em;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}
.wrap{width:1140px;max-width:92%;margin:0 auto}
.hd{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:28px;height:72px;padding:0 28px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);box-shadow:0 2px 14px rgba(30,43,87,.08)}
.hd__logo{display:flex;align-items:center;gap:8px;font-family:Oswald,sans-serif;font-size:19px;letter-spacing:.06em;color:var(--p2)}
.hd__nav{display:flex;gap:24px;flex:1;justify-content:center;font-size:13.5px;font-weight:700}
.hd__cta{padding:10px 20px;border-radius:999px;background:var(--r);color:#fff;font-size:13px;font-weight:800}
.crumb{width:1140px;max-width:92%;margin:18px auto 0;font-size:12px;color:var(--sub)}
.crumb a{color:var(--p)}.crumb span{margin:0 8px;color:#B7C1D1}
.crumb--in{width:auto;margin:0 0 18px}
.sec-en{font-family:Oswald,sans-serif;font-size:13px;letter-spacing:.24em;color:var(--p)}
.chip{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--bg);color:var(--p);font-size:11px;font-weight:800;letter-spacing:.06em}
.chip--w{background:rgba(255,255,255,.18);color:#fff}

/* 文字で組むアイキャッチ（画像生成なし） */
.eye{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,var(--c),#1E2B57);color:#fff;padding:16px 18px;display:flex;flex-direction:column;justify-content:flex-end}
.eye::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:var(--a);opacity:.9}
.eye__en{position:absolute;left:18px;top:14px;font-family:Oswald,sans-serif;font-size:12px;letter-spacing:.2em;opacity:.8}
.eye__t{position:relative;z-index:1;font-size:14px;font-weight:900;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.eye__logo{position:absolute;right:16px;bottom:10px;font-family:Oswald,sans-serif;font-size:10px;letter-spacing:.14em;opacity:.6}
.eye--big{padding:30px 34px}.eye--big .eye__t{font-size:26px;max-width:80%}.eye--big::after{width:220px;height:220px;right:-50px;top:-60px}.eye--big .eye__en{left:34px;top:26px;font-size:14px}

/* 一覧 */
.ix-head{padding:44px 0 40px;background:var(--bg)}
.ix-head h1{margin-top:6px;font-size:36px;font-weight:900}
.ix-head p{margin-top:8px;color:var(--sub);font-size:15px}
.feat{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;margin-top:40px;padding:22px;border:1px solid var(--ln);border-radius:16px}
.feat b{display:block;margin-top:10px;font-size:22px;line-height:1.6}
.feat p{margin-top:8px;font-size:13.5px;color:var(--sub)}.feat time{display:block;margin-top:8px;font-size:12px;color:var(--sub)}
.filter{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:40px;padding-bottom:16px;border-bottom:1px solid var(--ln)}
.tabs{display:flex;flex-wrap:wrap;gap:8px}
.tabs button{padding:8px 16px;border:1px solid var(--ln);border-radius:999px;background:#fff;font:inherit;font-size:13px;font-weight:700;color:var(--p2);cursor:pointer}
.tabs button[aria-pressed=true]{background:var(--p2);border-color:var(--p2);color:#fff}
.search input{width:280px;padding:10px 16px;border:1px solid var(--ln);border-radius:999px;font:inherit;font-size:13px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 24px;margin:28px 0 64px}
.card b{display:block;margin-top:8px;font-size:15.5px;line-height:1.6}
.card p{margin-top:6px;font-size:12.5px;line-height:1.75;color:var(--sub)}
.card time{display:block;margin-top:6px;font-size:11.5px;color:var(--sub)}
.card .chip{margin-top:12px}
.card .eye{transition:transform .3s}.card:hover .eye{transform:translateY(-4px)}
.empty{margin:20px 0 60px;text-align:center;color:var(--sub)}

/* 記事 */
.art-head{margin-top:14px;padding:40px 0 36px;background:linear-gradient(135deg,#1E2B57,#2B57AC);color:#fff}
.art-head h1{margin-top:12px;max-width:900px;font-size:32px;font-weight:900;line-height:1.5}
.art-head .meta{display:flex;flex-wrap:wrap;gap:6px 24px;margin-top:14px;font-size:12.5px;opacity:.9}
.art-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;margin-top:36px}
.art__lead{margin-top:22px;padding:16px 20px;background:var(--bg);border-radius:10px;font-size:14.5px}
.toc{margin-top:26px;padding:22px 26px;border:1px solid var(--ln);border-radius:12px;background:#fff}
.toc__h{font-family:Oswald,sans-serif;letter-spacing:.2em;color:var(--p);font-size:13px}.toc__h span{font-family:"Noto Sans JP";letter-spacing:.04em;color:var(--p2);font-weight:800;margin-left:8px}
.toc ol{list-style:none;margin-top:10px}
.toc>ol>li{padding:7px 0;border-bottom:1px dashed var(--ln);font-size:14px;font-weight:700}
.toc li b{font-family:Oswald,sans-serif;color:var(--p);margin-right:10px}
.toc ol ol{margin:4px 0 0 30px}.toc ol ol li{padding:2px 0;font-size:12.5px;font-weight:500;color:var(--sub)}
.toc ol ol li::before{content:"– ";color:#B7C1D1}
.toc a:hover{color:var(--p)}
.toc--side{margin-top:0;padding:16px 18px}.toc--side ol ol{display:none}.toc--side>ol>li{font-size:12.5px;padding:6px 0}
.body{margin-top:12px;font-size:16px;line-height:2}
.body h2{margin:56px 0 18px;padding:14px 18px;border-left:5px solid var(--p);background:var(--bg);font-size:22px;line-height:1.55;border-radius:0 8px 8px 0}
.body h3{margin:36px 0 12px;padding-bottom:6px;border-bottom:2px solid var(--a);font-size:18px;line-height:1.6;display:inline-block}
.body p{margin:14px 0}
.body ul,.body ol{margin:14px 0;padding:14px 18px 14px 36px;background:#FBFCFE;border:1px solid var(--ln);border-radius:8px}
.body li{margin:4px 0}
.body strong{background:linear-gradient(transparent 62%,rgba(242,198,60,.55) 62%)}
.body a{color:var(--p);text-decoration:underline;text-underline-offset:3px}
.body table{width:100%;margin:18px 0;border-collapse:collapse;font-size:14px}
.body th,.body td{padding:10px 12px;border:1px solid var(--ln);text-align:left}.body th{background:var(--bg)}
.body blockquote{margin:16px 0;padding:14px 18px;border-left:4px solid var(--a);background:#FFFBEA}
.body code{padding:1px 6px;background:var(--bg);border-radius:4px;font-size:.92em}
.body pre{overflow:auto;padding:14px;background:#1E2B57;color:#fff;border-radius:8px}.body pre code{background:none}
.cta-mid{margin:44px 0;padding:24px 26px;border:2px solid var(--p);border-radius:14px;background:#fff}
.cta-mid__lbl{font-size:12px;font-weight:700;color:var(--sub)}
.cta-mid__h{margin-top:4px;font-size:18px;font-weight:900}.cta-mid__h b{color:var(--p)}
.cta-mid__row{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:220px;padding:12px 24px;border-radius:999px;font-weight:800;font-size:14.5px;text-align:center;line-height:1.4}
.btn small{font-size:11px;font-weight:600}
.btn--blue{background:linear-gradient(#3B74DC,#2B57AC);color:#fff;box-shadow:0 8px 18px rgba(43,87,172,.28)}
.btn--line{border:2px solid var(--r);color:var(--r);background:#fff}
.btn--white{background:#fff;color:var(--p2)}.btn--ghost{border:1px solid #fff;color:#fff}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:44px;padding-top:20px;border-top:1px solid var(--ln);font-size:13px}
.share span{font-weight:800;margin-right:6px}
.share a,.share button{padding:6px 16px;border:1px solid var(--ln);border-radius:999px;background:#fff;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.author{display:flex;gap:18px;align-items:center;margin-top:26px;padding:20px 22px;border-radius:12px;background:var(--bg)}
.author img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:none;background:#DDE6F5}
.author__n{font-weight:900}.author__n small{margin-left:10px;font-size:12px;font-weight:500;color:var(--sub)}
.author p{font-size:13px}.author a{color:var(--p);font-weight:800}
.side__sticky{position:sticky;top:92px;display:grid;gap:16px}
.side__cta{display:block;padding:20px;border-radius:12px;background:linear-gradient(135deg,#1E2B57,#2B57AC);color:#fff;font-size:12.5px}
.side__cta b{display:block;font-family:Oswald,sans-serif;font-size:24px;letter-spacing:.04em}
.side__cta span{display:inline-block;margin-top:10px;padding:6px 14px;border-radius:999px;background:var(--a);color:var(--p2);font-weight:800}
.related{margin-top:70px;padding:56px 0 44px;background:var(--bg)}
.related h2{margin-top:4px;font-size:24px;font-weight:900}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px}
.rcard{display:block;padding:14px;background:#fff;border-radius:12px}
.rcard .chip{margin-top:10px}.rcard b{display:block;margin-top:6px;font-size:14px;line-height:1.6}.rcard time{font-size:11.5px;color:var(--sub)}
.back{margin-top:26px;text-align:center}.back a{display:inline-block;padding:12px 30px;border:1px solid var(--p2);border-radius:999px;font-weight:800;font-size:13.5px;background:#fff}
.cta-end{padding:64px 0;text-align:center;background:linear-gradient(135deg,#1E2B57,#2B57AC);color:#fff;border-radius:50% 50% 0 0/50px 50px 0 0}
.cta-end__en{font-family:Oswald,sans-serif;letter-spacing:.24em;font-size:13px;color:#C9D6EE}
.cta-end h2{margin-top:6px;font-size:28px;font-weight:900}.cta-end p{margin-top:8px;color:#DCE6F7;font-size:14px}
.cta-end .cta-mid__row{justify-content:center;margin-top:20px}
.ft{padding:26px 0;text-align:center;font-size:12px;color:var(--sub)}.ft a{margin:0 8px}.ft__c{margin-top:6px}
[hidden]{display:none!important}

@media (max-width:1023px){.art-grid{grid-template-columns:1fr}.side{display:none}.grid,.rgrid{grid-template-columns:repeat(2,1fr)}.hd__nav{display:none}}
@media (max-width:767px){
 .hd{height:58px;padding:0 14px}.hd__cta{padding:8px 14px;font-size:12px}
 .ix-head h1{font-size:26px}.feat{grid-template-columns:1fr;padding:14px}.feat b{font-size:18px}
 .grid,.rgrid{grid-template-columns:1fr}.search input{width:100%}.search{width:100%}
 .art-head h1{font-size:22px}.eye--big{padding:20px}.eye--big .eye__t{font-size:18px}
 .body{font-size:15px}.body h2{font-size:19px}.body h3{font-size:16px}
 .btn{min-width:0;width:100%}
}
/* 本文の中に置いたボタンには、本文リンクの色と下線を掛けない */
.body .btn{text-decoration:none}
.body .btn--blue{color:#fff}
.body .btn--line{color:var(--r)}
.eye{padding-bottom:28px}
.soon{margin:56px auto 72px;max-width:640px;padding:40px 32px;border:1px dashed #B7C1D1;border-radius:16px;text-align:center}
.soon__h{font-size:22px;font-weight:900}.soon p{margin-top:10px;color:var(--sub)}.soon .btn{margin-top:14px;color:#fff}
/* タイトルの折り返し：単語の切れ目で・行の長さをそろえる（1文字だけ次の行に落ちるのを防ぐ） */
.art-head h1,.eye__t,.feat b,.card b,.rcard b,.ix-head h1,.body h2,.body h3,.cta-end h2{word-break:auto-phrase;text-wrap:balance}
/* 文末のサービス紹介 */
.svc{margin-top:48px;padding:28px 30px;border-radius:16px;background:linear-gradient(135deg,#FFFBEA,#fff 60%);border:2px solid var(--a)}
.svc__lbl{font-size:12px;font-weight:800;color:var(--sub)}
.svc__h{margin-top:4px;font-size:24px;font-weight:900}.svc__h small{display:block;font-size:13px;font-weight:700;color:var(--p)}
.svc p{margin-top:10px;font-size:14.5px;line-height:1.9}
.svc ul{margin-top:10px;padding-left:1.3em;font-size:14px;line-height:1.9}
.svc__price{font-weight:800}
.svc__links,.svc__rel{font-size:13px}.svc__links a,.svc__rel a{color:var(--p);text-decoration:underline;text-underline-offset:3px}
.svc .btn{text-decoration:none}.svc .btn--blue{color:#fff}.svc .btn--line{color:var(--r)}
.side__cta--manekiban{background:linear-gradient(135deg,#FFF4D6,#fff);color:var(--p2);border:2px solid var(--a)}
.side__cta--manekiban span{background:var(--r);color:#fff}
/* 下部：カテゴリ・新着 */
.more{padding:52px 0 8px}.more__grid{display:grid;grid-template-columns:1fr 1.4fr;gap:48px}
.more h2{margin-top:4px;font-size:20px;font-weight:900}
.more__cats{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.more__cats a{padding:8px 16px;border:1px solid var(--ln);border-radius:999px;font-size:13px;font-weight:700}
.more__cats span{margin-left:6px;color:var(--p);font-family:Oswald,sans-serif}
.more__news{list-style:none;margin-top:12px}.more__news li{border-bottom:1px solid var(--ln)}
.more__news a{display:block;padding:12px 0;font-size:14px;font-weight:700}.more__news time{display:block;font-size:11.5px;color:var(--sub);font-weight:500}
@media (max-width:767px){.svc{padding:22px 18px}.more__grid{grid-template-columns:1fr;gap:28px}}
/* サイドバーの崩れ直し：目次の1文字落ち・カードのボタンの重なり */
.toc a{word-break:auto-phrase;text-wrap:pretty}
.side__cta span{display:table;margin-top:12px}
.side__cta{word-break:auto-phrase;text-wrap:pretty}
/* 一覧へ戻るボタンと下の相談の帯のあいだを空ける */
.back--solo{margin:56px 0 80px}
.more{padding-bottom:72px}
.related{padding-bottom:64px}
