/* ===== 下層ページ / ブログ / TOP導線 用スタイル（LPトークン流用） ===== */

/* ページ共通ヘッダー */
.page-hero{padding:140px 24px 64px;text-align:center;background:linear-gradient(180deg,var(--bg-light-gray),#fff)}
.page-hero .eyebrow{justify-content:center}
.page-hero .page-title{font-family:'DM Sans','Noto Sans JP',sans-serif;font-size:clamp(2rem,4vw,48px);font-weight:900;color:var(--black);line-height:1.3;margin-bottom:14px}
.page-hero .page-lead{font-size:15px;color:rgba(21,21,43,.55);line-height:1.9;max-width:640px;margin:0 auto}
.breadcrumb{max-width:1200px;margin:0 auto;padding:90px 24px 0;font-size:12px;color:var(--gray)}
.breadcrumb a{color:var(--gray)}
.breadcrumb a:hover{color:var(--green)}
.breadcrumb span{margin:0 6px;opacity:.5}

/* ===== TOP「やりたいことから探す」導線 ===== */
.explore{padding:120px 0;background:var(--bg-light-gray)}
.explore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.explore-card{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:18px;padding:28px 24px;transition:all .3s;text-align:left}
.explore-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px rgba(0,0,0,.08);border-color:rgba(21,207,120,.4)}
.explore-card .ec-eyebrow{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;color:rgba(21,207,120,.9);letter-spacing:.04em}
.explore-card .ec-title{font-size:18px;font-weight:900;color:var(--black);line-height:1.4}
.explore-card .ec-lead{font-size:13px;color:rgba(21,21,43,.55);line-height:1.8;flex:1}
.explore-card .ec-arrow{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--green);margin-top:6px}
@media(max-width:1023px){.explore-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:639px){.explore-grid{grid-template-columns:1fr}.explore{padding:64px 0}}

/* ===== 機能トップ（カテゴリー） ===== */
.cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:1040px;margin:64px auto 0;padding:0 24px}
.cat-block{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(21,21,43,.08);border-radius:20px;padding:44px 40px;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .4s}
.cat-block:hover{transform:translateY(-6px);box-shadow:0 28px 64px -24px rgba(21,21,43,.22);border-color:rgba(21,207,120,.45)}
.cat-block-head{display:flex;align-items:flex-start;gap:18px;margin-bottom:20px}
.cat-num{font-family:'DM Sans',sans-serif;font-size:44px;font-weight:800;line-height:.9;color:rgba(21,207,120,.22)}
.cat-eyebrow{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;color:rgba(21,21,43,.4);display:block;margin-bottom:5px}
.cat-block h3{font-family:'DM Sans','Noto Sans JP',sans-serif;font-size:26px;font-weight:900;color:var(--black);line-height:1.3}
.cat-lead{font-size:14px;color:rgba(21,21,43,.6);line-height:1.9;margin-bottom:24px}
.cat-feats{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;flex:1}
.cat-feat{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--black)}
.cat-feat svg{width:18px;height:18px;flex-shrink:0;stroke:var(--green);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.cat-more{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--green);transition:gap .25s}
.cat-block:hover .cat-more{gap:14px}
@media(max-width:767px){.cat-grid{grid-template-columns:1fr;gap:20px}.cat-block{padding:34px 28px}}

/* ===== 機能詳細（LPの .split / .checks を使用） ===== */
.feat-detail .feat-item{padding:76px 0;border-top:1px solid rgba(21,21,43,.07)}
.feat-detail .feat-item:first-child{border-top:none;padding-top:44px}
.feat-visual img{width:100%;border-radius:18px;box-shadow:0 32px 72px -30px rgba(21,21,43,.38);background:#fff}
.feat-name{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.feat-badge{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:800;letter-spacing:.04em;color:#8b5cf6;background:rgba(139,92,246,.12);padding:4px 12px;border-radius:980px}

/* カテゴリー間ナビ（ピル） */
.feat-cat-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:6px 24px 0}
.feat-cat-nav a{font-size:13px;font-weight:700;color:rgba(21,21,43,.5);background:#fff;border:1px solid rgba(21,21,43,.1);padding:10px 20px;border-radius:980px;transition:all .2s}
.feat-cat-nav a:hover{color:var(--green);border-color:rgba(21,207,120,.5)}
.feat-cat-nav a.current{background:var(--black);color:#fff;border-color:var(--black)}

/* ===== コラム（2カラム：本物のtaskul-ai.com/columnに準拠） ===== */
.col-layout{max-width:1180px;margin:0 auto;padding:48px 24px 120px;display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}
.col-main{min-width:0}
.col-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:28px}
@media(max-width:959px){.col-layout{grid-template-columns:1fr}.col-side{position:static}}

/* タイトル入りサムネ（featured画像がない場合のCSS生成カード） */
.cthumb{position:relative;aspect-ratio:16/9;border-radius:14px 14px 0 0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:22px 24px;background:linear-gradient(135deg,#1a1d28,#15152b)}
.cthumb.t1{background:linear-gradient(135deg,#0f9d62,#15cf78)}
.cthumb.t2{background:linear-gradient(135deg,#1a1d28,#2b3350)}
.cthumb.t3{background:linear-gradient(135deg,#1f6feb,#3b82f6)}
.cthumb.t0{background:linear-gradient(135deg,#15152b,#232635)}
.cthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.cthumb-eyebrow{font-size:11px;font-weight:700;color:rgba(255,255,255,.7);letter-spacing:.04em;margin-bottom:8px;position:relative;z-index:1}
.cthumb-title{font-family:'Noto Sans JP',sans-serif;font-size:18px;font-weight:900;color:#fff;line-height:1.5;position:relative;z-index:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cthumb-title .hl{background:var(--green);padding:0 6px;border-radius:3px}
.cthumb-badge{position:absolute;left:18px;bottom:14px;display:flex;align-items:center;gap:5px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:900;color:#fff;letter-spacing:.04em;z-index:1}
.cthumb-badge i{width:13px;height:13px;border:3px solid #fff;border-radius:2px;display:inline-block}

/* 注目記事（大） */
.col-feature{display:block;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:14px;overflow:hidden;transition:all .3s;margin-bottom:32px}
.col-feature:hover{box-shadow:0 12px 32px rgba(0,0,0,.08);transform:translateY(-3px)}
.col-feature .cthumb{aspect-ratio:21/9;padding:32px 36px}
.col-feature .cthumb-title{font-size:26px;-webkit-line-clamp:2}
.col-feature .cf-body{padding:20px 24px 24px}

/* カードグリッド */
.col-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
@media(max-width:539px){.col-cards{grid-template-columns:1fr}}
.ccard{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:14px;overflow:hidden;transition:all .3s}
.ccard:hover{box-shadow:0 12px 32px rgba(0,0,0,.08);transform:translateY(-4px)}
.ccard-body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.ccard-cat{align-self:flex-start;font-size:11px;font-weight:700;color:var(--green);background:rgba(21,207,120,.1);padding:3px 10px;border-radius:980px}
.ccard-date{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;color:var(--gray)}
.ccard-title{font-size:15px;font-weight:900;color:var(--black);line-height:1.55}
.ccard-excerpt{font-size:12.5px;color:rgba(21,21,43,.55);line-height:1.8;flex:1}

/* サイドバー */
.side-banner{display:block;border-radius:14px;overflow:hidden;background:var(--green);padding:22px 22px 24px;text-align:center;color:#fff}
.side-banner .sb-tag{display:inline-block;font-size:11px;font-weight:700;background:rgba(255,255,255,.2);padding:4px 12px;border-radius:980px;margin-bottom:12px}
.side-banner .sb-big{font-family:'DM Sans','Noto Sans JP',sans-serif;font-size:30px;font-weight:900;line-height:1.3}
.side-banner .sb-big em{font-style:normal;font-size:40px}
.side-banner .sb-note{font-size:12px;opacity:.9;margin-top:6px}
.side-banner .sb-btn{display:block;margin-top:14px;background:#fff;color:var(--green);font-weight:700;font-size:13px;padding:11px;border-radius:980px}
.side-box{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:22px 20px}
.side-box h3{font-size:14px;font-weight:900;color:var(--black);margin-bottom:16px;display:flex;align-items:center;gap:8px}
.side-box h3::before{content:"";width:14px;height:14px;border:3px solid var(--green);border-radius:3px}
.side-rank{display:flex;flex-direction:column;gap:14px}
.side-rank a{display:flex;gap:12px;align-items:flex-start}
.side-rank .rk-num{font-family:'DM Sans',sans-serif;font-size:18px;font-weight:900;color:var(--green);line-height:1.2;min-width:18px}
.side-rank .rk-title{font-size:12.5px;font-weight:700;color:var(--black);line-height:1.5}
.side-rank a:hover .rk-title{color:var(--green)}
.side-cats{display:flex;flex-direction:column}
.side-cats a{display:flex;justify-content:space-between;font-size:13px;color:var(--black);padding:11px 0;border-bottom:1px solid rgba(0,0,0,.06)}
.side-cats a:last-child{border-bottom:none}
.side-cats a:hover{color:var(--green)}
.side-cats .sc-count{color:var(--gray);font-size:12px}

/* ===== 記事ページ ===== */
.art-wrap{max-width:1180px;margin:0 auto;padding:24px 24px 120px;display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}
@media(max-width:959px){.art-wrap{grid-template-columns:1fr}}
.art-hero{border-radius:16px;overflow:hidden;margin-bottom:28px}
.art-hero .cthumb{aspect-ratio:21/9;padding:36px 44px;border-radius:16px}
.art-hero .cthumb-title{font-size:30px;-webkit-line-clamp:3}
.art-eyebrow{display:inline-flex;align-items:center;gap:6px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:900;color:var(--green);margin-bottom:14px}
.art-eyebrow i{width:14px;height:14px;border:3px solid var(--green);border-radius:2px}
.art-title{font-size:clamp(1.5rem,3.2vw,32px);font-weight:900;color:var(--black);line-height:1.5;margin-bottom:16px}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}
.art-meta .am-date{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--gray)}
.art-meta .am-cat{font-size:12px;font-weight:700;color:var(--green);background:rgba(21,207,120,.1);padding:4px 12px;border-radius:980px}
.art-author{display:flex;align-items:center;gap:12px;padding:16px 0;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:28px}
.art-author .aa-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#15cf78,#0f9d62);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:16px}
.art-author .aa-name{font-size:14px;font-weight:900;color:var(--black)}
.art-author .aa-role{font-size:12px;color:var(--gray)}
.art-toc{background:var(--bg-light-gray);border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:22px 24px;margin-bottom:36px}
.art-toc .toc-head{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:900;color:var(--black);margin-bottom:14px}
.art-toc .toc-head::before{content:"";width:14px;height:14px;border:3px solid var(--green);border-radius:3px}
.art-toc ol{list-style:none;counter-reset:toc;display:flex;flex-direction:column;gap:10px}
.art-toc li{counter-increment:toc;font-size:13.5px;line-height:1.6;display:flex;gap:10px}
.art-toc li::before{content:counter(toc,decimal-leading-zero);font-family:'DM Sans',sans-serif;font-weight:900;color:var(--green);font-size:12px;min-width:22px}
.art-toc a{color:var(--black)}
.art-toc a:hover{color:var(--green)}
.article-body{font-size:15.5px;line-height:2;color:#2c3445}
.article-body h2{font-size:23px;font-weight:900;color:var(--black);margin:48px 0 18px;padding-bottom:12px;border-bottom:2px solid var(--green);scroll-margin-top:80px}
.article-body h3{font-size:18px;font-weight:800;color:var(--black);margin:34px 0 14px}
.article-body p{margin:0 0 22px}
.article-body ul,.article-body ol{margin:0 0 22px;padding-left:1.4em}
.article-body li{margin-bottom:8px}
.article-body img{border-radius:12px;margin:24px 0}
.article-body a{color:var(--green);text-decoration:underline}
.article-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--green);margin-top:48px}

/* 汎用ページ本文 */
.page-body{max-width:740px;margin:0 auto;padding:24px 24px 120px;font-size:15px;line-height:2;color:#2c3445}
.page-body h2{font-size:22px;font-weight:900;margin:36px 0 14px}

/* 中央CTAバンド（ページ下部共通） */
.page-cta{text-align:center;padding:90px 24px;background:linear-gradient(180deg,#fff,var(--bg-light-gray))}
.page-cta h2{font-size:clamp(1.4rem,3vw,30px);font-weight:900;color:var(--black);margin-bottom:24px}

/* ===== お問い合わせ（Contact Form 7 / TimeRex） ===== */
.contact-intro{max-width:680px;margin:0 auto 36px;font-size:15px;line-height:1.9;color:rgba(21,21,43,.6);text-align:center}
.wpcf7{max-width:680px;margin:0 auto}
.wpcf7 p{margin:0 0 18px}
.wpcf7 label{font-size:14px;font-weight:700;color:#15152b;display:block}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 textarea,.wpcf7 select{width:100%;padding:12px 14px;border:1px solid #ebeef5;border-radius:10px;font-size:15px;font-family:inherit;margin-top:7px;background:#fff;transition:border-color .2s}
.wpcf7 input:focus,.wpcf7 textarea:focus{outline:none;border-color:#15cf78}
.wpcf7 textarea{min-height:150px;resize:vertical}
.wpcf7 input[type=submit]{display:block;margin:8px auto 0;background:#15cf78;color:#fff;border:none;padding:15px 56px;border-radius:980px;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 4px 16px rgba(21,207,120,.3);transition:all .2s}
.wpcf7 input[type=submit]:hover{background:#11b86a;transform:translateY(-1px)}
.timerex-embed{max-width:760px;margin:64px auto 0;padding-top:48px;border-top:1px solid rgba(0,0,0,.08)}
.timerex-embed h2{font-size:22px;font-weight:900;color:#15152b;text-align:center;margin-bottom:20px}
.timerex-embed iframe{width:100%;border:none;min-height:660px}

/* ===== 企業向けプラン（料金非表示・相談誘導） ===== */
.plan-enterprise{max-width:1100px;margin:44px auto 0;background:linear-gradient(95deg,#767f93 0%,#15152b 62%);border-radius:22px;padding:48px 52px;display:grid;grid-template-columns:1.7fr 1fr;gap:48px;align-items:center;color:#fff}
.pe-eyebrow{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.5)}
.pe-title{font-family:'DM Sans','Noto Sans JP',sans-serif;font-size:28px;font-weight:900;margin:6px 0 12px;color:#fff}
.pe-desc{font-size:14px;line-height:1.9;color:rgba(255,255,255,.72);margin-bottom:20px;max-width:560px}
.pe-feats{display:grid;grid-template-columns:1fr 1fr;gap:11px 20px;list-style:none;margin:0;padding:0}
.pe-feats li{display:flex;align-items:center;gap:9px;font-size:13.5px;color:rgba(255,255,255,.9)}
.pe-feats li svg{width:16px;height:16px;flex-shrink:0}
.pe-action{text-align:center;border-left:1px solid rgba(255,255,255,.15);padding-left:40px}
.pe-price{font-size:18px;font-weight:600;line-height:1.6;color:rgba(255,255,255,.7);margin-bottom:18px}
.pe-price strong{display:block;font-size:24px;font-weight:900;color:#fff}
.pe-cta{font-size:15px;padding:15px 32px}
@media(max-width:767px){.plan-enterprise{grid-template-columns:1fr;padding:36px 28px;gap:28px}.pe-feats{grid-template-columns:1fr}.pe-action{border-left:none;border-top:1px solid rgba(255,255,255,.15);padding-left:0;padding-top:28px}}
