/* tsushincolumn.css【1カラム版】内蔵サイドバーなし・サイト側の右メニューと併用する用 ／ すべて .tsushincolumn 配下にスコープ済み */
.tsushincolumn{box-sizing:border-box}
.tsushincolumn{
    /* clean white base */
    --bg:#FFFFFF;
    --bg-2:#F7F5F1;
    --paper:#ffffff;
    --paper-warm:#FBF7EF;    /* very light cream for soft sections */
    --paper-peach:#FBF1E6;   /* gentle peach for empathy/CTA */
    --paper-cream:#F8F4EA;
    --card:#F7F7F4;          /* cement neutral for card bg */

    /* ink */
    --ink:#1F2A24;
    --ink-2:#4A554E;
    --ink-3:#7A857E;
    --ink-4:#B4BCB6;

    /* primary: mint green for CTA */
    --pri:#1DAA64;
    --pri-dk:#168A52;
    --pri-soft:#D2EEDE;
    --pri-tint:#E8F7EE;

    /* teal: bridge color used in hero & accents */
    --teal:#1B7E72;
    --teal-dk:#13675D;
    --teal-soft:#DCEDEA;
    --teal-tint:#EAF3F1;

    /* accent: same green family, used for section headers (mint tint) */
    --grn:#1DAA64;
    --grn-dk:#168A52;
    --grn-soft:#D2EEDE;
    --grn-tint:#E8F7EE;

    /* warm accent — gold for occasional highlights */
    --gold:#C68B3D;
    --gold-dk:#A0701F;
    --gold-soft:#FBEFD3;

    /* lemon yellow: testimonials / highlight */
    --lemon:#FFFBE0;
    --lemon-border:#F0E5B5;
    --lemon-ink:#7A6A22;

    /* gentle warm tone for empathy block */
    --rose:#B97456;
    --rose-soft:#FAE9DE;

    /* lines */
    --line:#E6E2D8;
    --line-2:#EFEBE0;

    --shadow-sm:0 1px 2px rgba(80,50,20,.06);
    --shadow:0 6px 20px -10px rgba(120,70,30,.18), 0 2px 6px rgba(120,70,30,.05);
    --shadow-lg:0 24px 48px -24px rgba(120,70,30,.25);

    --r-sm:8px;
    --r:14px;
    --r-lg:20px;
    --r-xl:28px;

    --content:760px;
    --content-wide:1100px;

    --font-jp:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",system-ui,sans-serif;
    --font-rd:"Zen Maru Gothic","Noto Sans JP",sans-serif;
  }

  .tsushincolumn *, .tsushincolumn *::before, .tsushincolumn *::after{box-sizing:border-box}
  .tsushincolumn{scroll-behavior:smooth;scroll-padding-top:80px}
  .tsushincolumn{
    margin:0;
    font-family:var(--font-jp);
    /*color:var(--ink);*/
    background:var(--bg);
    /*line-height:1.85;
    font-size:15px;*/
    letter-spacing:.02em;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    text-wrap:pretty;
  }
  .tsushincolumn img{max-width:100%;display:block}
  .tsushincolumn a{color:var(--pri-dk);text-decoration:none}
  .tsushincolumn a:hover{text-decoration:underline}
  .tsushincolumn button{font-family:inherit}

  /* ============ HEADER ============ */
  .tsushincolumn .site-header{
    position:sticky;top:0;z-index:50;
    background:rgba(255,255,255,.96);
    backdrop-filter:saturate(140%) blur(8px);
    border-bottom:1px solid var(--line);
  }
  .tsushincolumn .header-inner{
    max-width:var(--content-wide);
    margin:0 auto;
    padding:10px 16px;
    display:flex;align-items:center;justify-content:space-between;gap:12px;
  }
  .tsushincolumn .brand{display:flex;align-items:center;gap:10px;min-width:0}
  .tsushincolumn .brand-mark{
    width:34px;height:34px;border-radius:50%;
    background:linear-gradient(135deg,var(--pri),var(--pri-dk));
    display:grid;place-items:center;color:#fff;font-weight:900;font-family:var(--font-rd);
    flex:0 0 auto;
    box-shadow:inset 0 -2px 0 rgba(0,0,0,.08);
  }
  .tsushincolumn .brand-name{font-weight:700;font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .tsushincolumn .brand-name small{display:block;font-weight:400;font-size:11px;color:var(--ink-3);letter-spacing:.06em}
  .tsushincolumn .nav-main{display:none;gap:18px;align-items:center}
  .tsushincolumn .nav-main a{font-size:13px;font-weight:500}
  .tsushincolumn .nav-main a:hover{color:var(--pri);text-decoration:none}
  .tsushincolumn .header-cta{display:flex;gap:8px;align-items:center}
  /*.tsushincolumn .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-weight:700;font-size:13px;
    padding:9px 14px;border-radius:999px;
    border:1px solid transparent;cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
    text-decoration:none;
    line-height:1.2;
  }
  .tsushincolumn .btn:hover{text-decoration:none;transform:translateY(-1px)}
  .tsushincolumn .btn-pri{background:var(--pri);color:#fff;box-shadow:0 6px 14px -8px rgba(34,166,90,.55)}
  .tsushincolumn .btn-pri:hover{background:var(--pri-dk);color:#fff}
  .tsushincolumn .btn-line{background:var(--grn);color:#fff;box-shadow:0 6px 14px -8px rgba(34,166,90,.55)}
  .tsushincolumn .btn-line:hover{background:var(--grn-dk);color:#fff}
  .tsushincolumn .btn-ghost{background:#fff;border-color:var(--line)}
  .tsushincolumn .btn-ghost:hover{background:var(--bg)}*/
  .tsushincolumn .menu-toggle{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;background:transparent;border:1px solid var(--line);color:var(--ink-2)}
  .tsushincolumn .menu-toggle svg{width:18px;height:18px}

  @media (min-width:900px){
    .tsushincolumn .nav-main{display:flex}
    .tsushincolumn .menu-toggle{display:none}
    .tsushincolumn .brand-name{font-size:15px}
    .tsushincolumn .brand-name small{font-size:12px}
  }

  /* ============ PAGE LAYOUT ============ */
  .tsushincolumn main{display:block}
  .tsushincolumn .crumbs{
    max-width:var(--content-wide);margin:0 auto;padding:12px 16px 0;
    font-size:12px;color:var(--ink-3);
  }
  .tsushincolumn .crumbs a{color:var(--ink-3)}
  .tsushincolumn .crumbs span{margin:0 6px;color:var(--ink-4)}

  .tsushincolumn .layout{
    max-width:var(--content-wide);margin:0 auto;padding:18px 16px 80px;
    display:block;
  }
  .tsushincolumn .sidebar{display:none !important}
  @media (min-width:1000px){
    .tsushincolumn .layout{padding:24px 24px 100px}
  }
  /* 本文の読みやすい横幅をキープ（サイト側の右メニューと併用前提の1カラム版） */
  .tsushincolumn .layout>main{max-width:840px;margin:0 auto}

  /* ============ HERO — flat ============ */
  .tsushincolumn .hero{background:transparent;color:var(--ink);padding:0;margin:0 0 14px}
  .tsushincolumn .hero .tag{
    display:inline-flex;gap:6px;align-items:center;
    background:var(--lemon);color:var(--lemon-ink);border:1px solid var(--lemon-border);
    border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:.04em;
    margin-bottom:14px;
  }
  .tsushincolumn .hero h1{
  font-size:23px;line-height:1.5;font-weight:700;
    margin:0 0 12px;color:var(--ink);
  }
  .tsushincolumn .hero h1 em{font-style:normal;color:var(--pri-dk);background:none;padding:0}
  .tsushincolumn .hero-meta{font-size:12px;color:var(--ink-3)}
  .tsushincolumn .hero-meta span+span{margin-left:14px}
  .tsushincolumn .hero-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
  .tsushincolumn .hero-tags .tag{margin:0}
  @media (min-width:760px){.tsushincolumn .hero h1{font-size:30px;line-height:1.45}}
  /* author profile card */
  .tsushincolumn .author-card{
    display:flex;gap:14px;align-items:flex-start;
    padding:14px;
    background:#fff;border:1px solid var(--line);border-radius:12px;
    margin-bottom:22px;
  }
  .tsushincolumn .author-card .photo{
    width:64px;height:64px;border-radius:50%;
    background:linear-gradient(135deg,#D2EEDE,#DCEDEA);
    flex:0 0 auto;
    display:grid;place-items:center;font-size:30px;line-height:1;
    overflow:hidden;
  }
  .tsushincolumn .author-card-body{flex:1;min-width:0;font-size:11.5px;line-height:1.55}
  .tsushincolumn .author-card .role{
    font-size:11px;font-weight:700;margin:0 0 1px;letter-spacing:.02em;
  
  }
  .tsushincolumn .author-card .name{
  font-size:15px;color:var(--ink);font-weight:700;
    margin:0 0 3px;display:inline-flex;align-items:center;gap:4px;line-height:1.3;
  }
  .tsushincolumn .author-card .name::after{
    content:"";width:15px;height:15px;border-radius:50%;
    background:var(--pri);
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='4,8 7,11 12,5'/></svg>");
    background-size:11px;background-position:center;background-repeat:no-repeat;
    display:inline-block;
  }
  .tsushincolumn .author-card .bio{margin:0;font-size:11.5px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;}

  .tsushincolumn .meta-row{
    display:flex;flex-wrap:wrap;align-items:center;gap:12px;
    padding:14px;border:1px solid var(--line);border-radius:var(--r);
    background:var(--paper);
    margin-bottom:24px;
  }
  .tsushincolumn .author{display:flex;align-items:center;gap:10px;min-width:0}
  .tsushincolumn .avatar{
    width:44px;height:44px;border-radius:50%;
    background:radial-gradient(circle at 35% 30%,#fff,var(--paper-peach) 60%,var(--paper-cream));
    border:2px solid #fff;
    box-shadow:0 0 0 1px var(--line);
    display:grid;place-items:center;font-family:var(--font-rd);font-weight:700;color:var(--pri-dk);
    flex:0 0 auto;
    font-size:14px;
  }
  .tsushincolumn .author-info{font-size:12px;color:var(--ink-3);line-height:1.5}
  .tsushincolumn .author-info b{display:block;color:var(--ink);font-size:13px;font-weight:700}
  .tsushincolumn .meta-dates{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--ink-3);margin-left:auto}
  .tsushincolumn .meta-dates span{display:inline-flex;align-items:center;gap:4px}
  .tsushincolumn .meta-dates b{font-weight:700;color:var(--ink-2)}

  /* ============ EMPATHY INTRO — flat ============ */
  .tsushincolumn .empathy{
    background:transparent;border:none;padding:0;margin:0 0 18px;
  }
  .tsushincolumn .empathy-quote{
  font-weight:700;
    color:var(--ink);font-size:22px;
    border:none;padding:0;
    margin:0 0 14px;
    line-height:1.55;
  }
  @media (min-width:760px){.tsushincolumn .empathy-quote{font-size:28px;line-height:1.5}}
  .tsushincolumn .empathy p{margin:0 0 10px;/*font-size:16px;*/line-height:1.85}
  .tsushincolumn .empathy p:last-child{margin-bottom:0}

  /* ============ STATS ============ */
  .tsushincolumn .stats{
    display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;
  }
  .tsushincolumn .stat{
    background:var(--paper);
    border:1px solid var(--line);border-radius:14px;
    padding:18px 7px;text-align:center;
    box-shadow:var(--shadow-sm);
    position:relative;overflow:hidden;
  }
  .tsushincolumn .stat::after{display:none}
  .tsushincolumn .stat .num{
  font-weight:900;
    color:var(--pri);font-size:40px;line-height:1;
    letter-spacing:.01em;
    display:inline-flex;align-items:baseline;gap:2px;
  }
  .tsushincolumn .stat .num .unit{font-size:18px;color:var(--pri-dk);font-weight:700;margin-left:2px}
  .tsushincolumn .stat .label{display:block;margin-top:10px;/*font-size:11.5px;color:var(--ink-3);*/line-height:1.55}
  @media (min-width:600px){
    .tsushincolumn .stat .num{font-size:42px}
  }

  .tsushincolumn .lead-tail{/*font-size:14px;*/margin:0 0 8px;}

  /* ============ PATH STACK (進路カード 縦並び) ============ */
  .tsushincolumn .path-stack{display:flex;flex-direction:column;gap:14px;margin:0 0 18px}
  .tsushincolumn .path-card{
    background:#fff;border:1px solid var(--line);border-radius:14px;
    padding:18px 16px;display:grid;gap:8px 16px;
    grid-template-columns:auto 1fr;
    align-items:start;
    position:relative;
  }
  .tsushincolumn .path-card.is-pick{border-color:var(--pri);background:#FAFFFB;box-shadow:0 0 0 1px var(--pri)}
  .tsushincolumn .path-card.is-pick::before{
    content:"おすすめ";
    position:absolute;top:-10px;left:14px;
    background:var(--pri);color:#fff;font-size:10.5px;font-weight:700;
    padding:3px 10px;border-radius:999px;font-family:var(--font-rd);letter-spacing:.04em;
  }
  .tsushincolumn .path-no{
    width:46px;height:46px;border-radius:12px;
    background:var(--pri-tint);color:var(--pri-dk);
  font-weight:900;font-size:18px;
    display:grid;place-items:center;line-height:1;
    grid-row:span 2;
  }
  .tsushincolumn .path-no small{display:block;font-size:9.5px;letter-spacing:.08em;margin-top:2px;font-weight:700}
  .tsushincolumn .path-title{
    grid-column:2;
  font-weight:700;font-size:15.5px;color:var(--ink);margin:0;
    line-height:1.5;
    align-self:center;
    display:block;
  }
  .tsushincolumn .path-title::before{display:none !important;content:none}
  .tsushincolumn .path-body{grid-column:2;margin:0;/*font-size:13.5px;*/line-height:1.8}
  .tsushincolumn .path-tags{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
  .tsushincolumn .path-tag{/*font-size:13px;*/color:#47504a;background:#e4e4bf;border:1px solid var(--line-2);padding:5px 8px;border-radius:6px}
  @media (min-width:760px){
    .tsushincolumn .path-card{padding:22px 22px;gap:10px 20px}
    .tsushincolumn .path-no{width:54px;height:54px;font-size:20px}
    .tsushincolumn .path-title{font-size:17px}
  }

  /* ============ TOC — flat text-links ============ */
  .tsushincolumn .toc{background:transparent;border:none;padding:0;margin:18px 0 30px}
  .tsushincolumn .toc-head{
    display:flex;align-items:center;gap:8px;margin:0 0 20px;
  font-weight:700;/*color:var(--ink);font-size:14px;*/
  }
  .tsushincolumn .toc-head .ico{display:none}
  .tsushincolumn .toc-head::before{content:"";width:5px;height:16px;background:var(--pri);border-radius:3px;display:inline-block}
  .tsushincolumn .toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;display:grid;gap:13px; line-height: 1.4rem;}
  .tsushincolumn .toc li{counter-increment:toc;display:flex;gap:6px;align-items:baseline;/*font-size:14px*/}
  .tsushincolumn .toc li::before{content:counter(toc) ".";color:var(--pri);font-family:var(--font-rd);font-weight:700;/*font-size:13px;*/flex:0 0 22px}
  .tsushincolumn .toc li a{color:var(--pri-dk);text-decoration:underline;text-decoration-color:rgba(22,138,82,.35);text-decoration-thickness:1px;text-underline-offset:3px}
  .tsushincolumn .toc li a:hover{text-decoration-color:var(--pri-dk)}

  /* ============ SECTION HEADER — flat, green text ============ */
  .tsushincolumn .sec{margin:44px 0 0;scroll-margin-top:80px}
  .tsushincolumn .sec-head{background:transparent;border:none;padding:0;margin:0 0 16px;border-radius:0}
  .tsushincolumn .sec-num{display:none}
  .tsushincolumn .sec-title{
  font-weight:700;font-size:19px;line-height:1.5;
    margin:0;color:var(--pri-dk);
    padding:2px 0;
  }
  .tsushincolumn .sec-title .sec-no{display:none}
  @media (min-width:760px){.tsushincolumn .sec-title{font-size:24px}}
  .tsushincolumn .sec h3{
        font-family: var(--font-rd);
  font-weight:700;/*font-size:16px;*/
    margin:10px 0 12px;color:var(--ink);
    display:flex;align-items:center;gap:8px;
  }
  .tsushincolumn .sec h3::before{
    content:"";width:6px;height:18px;border-radius:3px;background:var(--pri);
    display:inline-block;
  }


  /* ============ SECTION 1: signs (cards) ============ */
  .tsushincolumn .sign-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin:0 0 18px}
  @media (min-width:900px){.tsushincolumn .sign-grid{grid-template-columns:repeat(4,1fr);gap:14px}}
  .tsushincolumn .sign{
    background:linear-gradient(180deg,#FFF7EA,#FFEFD9);
    border:1px solid #F4DFBC;border-radius:14px;
    padding:18px 12px 14px;text-align:center;
    display:flex;flex-direction:column;align-items:center;gap:6px;
  }
  .tsushincolumn .sign .ico-circle{display:none}
  .tsushincolumn .sign-emoji{font-size:32px;line-height:1;margin-bottom:4px}
  .tsushincolumn .sign h4{margin:0;font-family:var(--font-rd);/*font-size:13.5px;*/color:var(--ink);font-weight:700;/*line-height:1.45*/}
  .tsushincolumn .sign p{margin:0;/*font-size:12px;line-height:1.7*/}

  .tsushincolumn .callout-note{
    background:var(--grn-tint);
    border:1px dashed var(--grn);
    border-radius:var(--r);
    padding:14px 16px;
    /*color:var(--grn-dk);
    font-size:13.5px;*/
    display:flex;gap:10px;align-items:flex-start;
    margin:18px 0;
  }
  .tsushincolumn .callout-note .ico{
    width:22px;height:22px;border-radius:50%;background:#fff;color:var(--grn-dk);
    display:grid;place-items:center;flex:0 0 auto;
  }
  .tsushincolumn .callout-note .ico svg{width:13px;height:13px}
  .tsushincolumn .callout-note b{color:var(--grn-dk)}

  /* ============ SECTION 2: cause cards ============ */
  .tsushincolumn .cause-grid{
    display:grid;gap:12px;grid-template-columns:1fr;
    margin:0 0 18px;
  }
  @media (min-width:760px){.tsushincolumn .cause-grid{grid-template-columns:repeat(3,1fr)}}
  .tsushincolumn .cause{
    background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
    padding:16px;box-shadow:var(--shadow-sm);
    display:flex;flex-direction:column;gap:10px;
  }
  .tsushincolumn .cause-head{
    display:flex;align-items:center;gap:10px;
    padding-bottom:10px;border-bottom:1px dashed var(--line);
  }
  .tsushincolumn .cause-head .badge{
  font-weight:700;color:#fff;
    background:var(--pri);border-radius:6px;padding:3px 8px;/*font-size:11px;letter-spacing:.05em;*/
  }
  .tsushincolumn .cause-head h4{margin:0;font-family:var(--font-rd);/*font-size:14.5px;*/color:var(--ink);font-weight:700;line-height:1.45}
  .tsushincolumn .cause .feel{
    /*font-size:13px;*/color:#47504a;
    background:#e4e4bf;border:1px solid var(--line-2);
    border-radius:6px;padding:5px 8px;display:inline-block;
    align-self:flex-start;
  }
  .tsushincolumn .cause p{margin:0;/*font-size:13px;*/line-height:1.75}

  /* ============ CTA BLOCK — white card, yellow tag ============ */
  .tsushincolumn .cta-block{
    background:#fff;
    border:1.5px solid var(--line);
    border-radius:14px;
    padding:20px 18px;
    margin:28px 0;
  }
  .tsushincolumn .cta-tags{/*display:flex;*/gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
  .tsushincolumn .cta-tag{/*font-size:11px;*/font-weight:700;letter-spacing:.04em;/*line-height:1.4;*/border-radius:999px}
  /* CTA Pattern B — with author photo */
  .tsushincolumn .cta-block.with-author .cta-author{
    display:flex;gap:14px;align-items:flex-start;margin:8px 0 12px;
  }
  .tsushincolumn .cta-block.with-author .cta-photo{
    width:54px;height:54px;border-radius:50%;
    background:#FFE9A8;border:2px solid #fff;box-shadow:0 0 0 1px var(--lemon-border);
    flex:0 0 auto;
    display:grid;place-items:center;font-size:30px;line-height:1;
    overflow:hidden;
  }
  .tsushincolumn .cta-block.with-author .cta-author-text{flex:1;min-width:0}
  .tsushincolumn .cta-block.with-author .cta-author-text .cta-title{margin:0 0 4px}
  .tsushincolumn .cta-block.with-author .cta-role{font-size:12px;color:var(--ink-3);margin:0}
  .tsushincolumn .cta-block.with-author .cta-role b{font-weight:700}
  .tsushincolumn .cta-tag.warm{background:transparent;color:var(--ink-3);/*font-size:11px;*/font-weight:500;padding:4px 0}
  .tsushincolumn .cta-tag.cool{background:transparent;color:var(--ink-3);/*font-size:11px;*/font-weight:500;padding:4px 0}
  .tsushincolumn .cta-block-inner{display:block;margin-bottom:4px}
  .tsushincolumn .cta-illustration{display:none}
  .tsushincolumn .cta-title{
  font-weight:700;/*color:var(--ink);font-size:16px;line-height:1.55;*/
    margin:0 0 4px;
  }
  .tsushincolumn .cta-title em{font-style:normal;color:var(--pri-dk)}
  .tsushincolumn .cta-sub{/*font-size:12.5px;color:var(--ink-3);*/margin:0}
  /*.tsushincolumn .cta-buttons{display:grid;gap:10px;margin-top:14px;grid-template-columns:1fr}*/
  .tsushincolumn .cta-btn{
    display:flex;align-items:center;justify-content:center;gap:8px;
    padding:14px 16px;border-radius:14px;
    font-weight:700;font-size:14.5px;
    text-decoration:none;
    transition:transform .15s, box-shadow .15s, background .15s;
    border:none;cursor:pointer;font-family:inherit;
    line-height:1.3;
    text-align:center;
  }
  .tsushincolumn .cta-btn:hover{transform:translateY(-2px);text-decoration:none}
  .tsushincolumn .cta-btn.pri{background:var(--pri-dk);color:#fff;box-shadow:0 4px 10px -6px rgba(22,138,82,.5)}
  .tsushincolumn .cta-btn.pri:hover{background:var(--teal-dk)}
  .tsushincolumn .cta-btn.line{background:var(--pri);color:#fff;box-shadow:0 4px 10px -6px rgba(29,170,100,.45)}
  .tsushincolumn .cta-btn.line:hover{background:var(--pri-dk)}
  .tsushincolumn .cta-btn .arrow{margin-left:auto}
  .tsushincolumn .cta-btn small{display:block;font-size:10.5px;font-weight:500;opacity:.85;margin-top:2px}
  .tsushincolumn .cta-foot{text-align:center;/*font-size:11px;color:*/var(--ink-3);margin-top:10px}

  /* ============ NG list (warning) ============ */
  .tsushincolumn .ng-list{
    background:var(--rose-soft);
    border:1px solid #F5D2C5;
    border-radius:var(--r);
    padding:16px 14px;
    display:grid;gap:10px;grid-template-columns:1fr;
    margin-bottom:18px;
  }
  .tsushincolumn .ng-head{
    grid-column:1/-1;display:flex;align-items:center;gap:8px;
    color:var(--rose);font-weight:700;/*font-size:13.5px;*/font-family:var(--font-rd);
    padding-bottom:8px;border-bottom:1px dashed #E8B7A6;margin-bottom:2px;
  }
  .tsushincolumn .ng-head .ico{
    width:24px;height:24px;border-radius:50%;background:#fff;color:var(--rose);
    display:grid;place-items:center;
  }
  .tsushincolumn .ng-head .ico svg{width:13px;height:13px}
  .tsushincolumn .ng-item{
    display:flex;gap:10px;align-items:flex-start;/*font-size:13px;*/color:#5C3A2D;line-height:1.7;
    padding:6px 0;
  }
  .tsushincolumn .ng-item::before{
    content:"";
    width:18px;height:18px;border-radius:50%;background:#fff;color:var(--rose);
    flex:0 0 auto;margin-top:3px;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23C97A66' stroke-width='2' stroke-linecap='round'><line x1='4' y1='4' x2='12' y2='12'/><line x1='12' y1='4' x2='4' y2='12'/></svg>");
    background-size:14px;background-position:center;background-repeat:no-repeat;
  }
  .tsushincolumn .ng-item b{color:#7A3F2E;font-weight:700}

.tsushincolumn .ng-item {
  /* ▼ flexを解除して、1つの文章として自然に折り返るようにする ▼ */
  display: block !important; 
  position: relative;
  
  /* 左側の×アイコンのスペースを空ける */
  padding-left: 28px; 
  padding-top: 6px;
  padding-bottom: 6px;
  
  color: #5C3A2D;
  line-height: 1.7;
}

/* 左端の×アイコンの位置を、文章の1行目の文頭にビシッと固定する */
.tsushincolumn .ng-item::before,
.tsushincolumn .ng-item img,
.tsushincolumn .ng-item svg {
  position: absolute;
  left: 0;
  top: 9px; /* アイコンの上下位置を文字の1行目と綺麗に合わせる微調整（お好みで増減してください） */
  margin: 0;
}


  /* ============ STEPS ============ */
  .tsushincolumn .steps{position:relative;display:grid;grid-template-columns:1fr;gap:0;margin-bottom:18px}
  .tsushincolumn .steps::before{content:"";position:absolute;left:26px;top:24px;bottom:30px;width:2px;background:var(--pri-soft);z-index:0}
  .tsushincolumn .step{
    background:#fff;border:1px solid var(--line);border-radius:14px;
    padding:16px;
    display:flex;gap:14px;align-items:flex-start;
    position:relative;margin-bottom:14px;z-index:1;
  }
  .tsushincolumn .step:last-child{margin-bottom:0}
  .tsushincolumn .step-num{
    flex:0 0 auto;width:38px;height:38px;border-radius:50%;
    background:var(--pri);color:#fff;
  font-weight:900;font-size:18px;
    display:grid;place-items:center;
    box-shadow:0 0 0 4px #fff;
    position:relative;z-index:2;
  }
  .tsushincolumn .step-body{flex:1;min-width:0}
  .tsushincolumn .step-body h4{margin:0 0 6px;font-family:var(--font-rd);/*font-size:15px;*/color:var(--ink);font-weight:700;line-height:1.5}
  .tsushincolumn .step-body p{margin:0;/*font-size:13.5px;*/line-height:1.8}
  .tsushincolumn .step-pill{display:inline-block;/*font-size:10.5px;font-weight:700;*/color:var(--pri-dk);background:var(--pri-tint);padding:5px 8px;border-radius:999px;margin-top:8px;letter-spacing:.04em}

  .tsushincolumn .quote-soft{
    background:var(--paper-warm);border:1px dashed var(--line);
    border-radius:var(--r);padding:14px;/*font-size:13px;*/
    display:flex;gap:10px;align-items:flex-start;
  }
  .tsushincolumn .quote-soft .ico{
    width:24px;height:24px;border-radius:50%;background:var(--gold-soft);color:var(--gold-dk);
    display:grid;place-items:center;flex:0 0 auto;
  }
  .tsushincolumn .quote-soft .ico svg{width:13px;height:13px}

  /* ============ COMPARE TABLE ============ */
  .tsushincolumn .compare{
    background:var(--paper-warm);
    border:1px solid var(--line);
    border-radius:var(--r);
    padding:14px;
    margin-bottom:14px;
  }
  .tsushincolumn .compare-head{
    display:flex;align-items:center;gap:8px;
  font-weight:700;color:var(--grn-dk);font-size:13.5px;
    padding-bottom:8px;border-bottom:1px dashed var(--line);margin-bottom:8px;
  }
  .tsushincolumn .compare-head .ico{width:22px;height:22px;border-radius:50%;background:#fff;color:var(--grn-dk);display:grid;place-items:center}
  .tsushincolumn .compare-head .ico svg{width:12px;height:12px}
  .tsushincolumn .compare ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
  .tsushincolumn .compare li{
    display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.7;
  }
  .tsushincolumn .compare li::before{
    content:"";
    width:18px;height:18px;border-radius:50%;flex:0 0 auto;margin-top:3px;
    background:var(--grn-soft);
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236E8F69' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='3,8 7,12 13,4'/></svg>");
    background-size:13px;background-position:center;background-repeat:no-repeat;
  }

  /* ============ TESTIMONIALS ============ */
  .tsushincolumn .testimonials{display:grid;gap:14px;grid-template-columns:1fr;margin-bottom:18px}
  @media (min-width:760px){.tsushincolumn .testimonials{grid-template-columns:1fr 1fr}}
  .tsushincolumn .test{
    background:#FFFCEB;border:1px solid var(--lemon-border);border-radius:14px;
    padding:18px 18px;
    display:flex;flex-direction:column;gap:12px;
  }
  .tsushincolumn .test-head{display:flex;gap:12px;align-items:center}
  .tsushincolumn .test-av{
    width:42px;height:42px;border-radius:50%;background:#FFE9A8;
    flex:0 0 auto;border:none;box-shadow:none;
  }
  .tsushincolumn .test-name{/*font-size:13px;color:var(--ink);*/font-weight:700;line-height:1.4}
  .tsushincolumn .test-name small{display:block;color:var(--ink-3);font-weight:400;font-size:11px;margin-top:8px}
  .tsushincolumn .test-quote{
    background:transparent;border:none;border-radius:0;padding:0;
  font-weight:700;color:var(--ink);font-size:15px;
    line-height:1.7;margin:0;
  }
  .tsushincolumn .test p{margin:0;/*font-size:13px;*/line-height:1.85}
  .tsushincolumn .test-more{margin-top:auto;/*font-size:12px;*/color:var(--pri-dk);align-self:flex-end;font-weight:500}
  .tsushincolumn .test-more::after{content:"›";margin-left:4px}

  /* ============ FAQ ============ */
  .tsushincolumn .faq-list{display:grid;gap:12px;margin-bottom:18px}
  .tsushincolumn .faq{
    background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
    padding:0;overflow:hidden;box-shadow:var(--shadow-sm);
  }
  .tsushincolumn .faq summary{
    list-style:none;cursor:pointer;padding:14px 44px 14px 14px;
    display:flex;gap:12px;align-items:flex-start;
  font-weight:700;/*font-size:14px;color:var(--ink)*/;
    position:relative;/*line-height:1.55*/;
  }
  .tsushincolumn .faq summary::-webkit-details-marker{display:none}
  .tsushincolumn .faq summary::after{
    content:"+";position:absolute;right:14px;top:14px;
    width:24px;height:24px;border-radius:50%;
    background:var(--pri-tint);color:var(--pri-dk);
    display:grid;place-items:center;font-weight:700;font-size:16px;line-height:1;
    transition:transform .2s ease, background .2s ease;
  }
  .tsushincolumn .faq[open] summary::after{content:"−";background:var(--pri);color:#fff}
  .tsushincolumn .faq-q{
    flex:0 0 auto;width:24px;height:24px;border-radius:6px;
    background:var(--pri);color:#fff;display:grid;place-items:center;
    font-size:12px;font-weight:900;font-family:var(--font-rd);
  }
  .tsushincolumn .faq-body{
    padding:0 14px 14px 50px;/*font-size:13px;line-height:1.8;*/
    display:flex;gap:12px;align-items:flex-start;
  }
  .tsushincolumn .faq-body::before{
    content:"A";flex:0 0 auto;width:24px;height:24px;border-radius:6px;
    background:var(--grn);color:#fff;display:grid;place-items:center;
    font-size:12px;font-weight:900;font-family:var(--font-rd);
    margin-left:-36px;
  }

  /* ============ SUMMARY — soft mint ============ */
  .tsushincolumn .summary{
    background:#F2F9F4;border:1px solid #D8ECDE;border-radius:14px;
    padding:18px 18px;margin-bottom:18px;
  }
  .tsushincolumn .summary ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
  .tsushincolumn .summary li{
    display:flex;gap:10px;align-items:flex-start;/*font-size:13.5px;*/line-height:1.75;
  }
  .tsushincolumn .summary li::before{
    content:"";
    width:18px;height:18px;border-radius:50%;flex:0 0 auto;margin-top:3px;
    background:var(--grn-soft);
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236E8F69' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='3,8 7,12 13,4'/></svg>");
    background-size:13px;background-position:center;background-repeat:no-repeat;
  }
  .tsushincolumn .summary li b{/*color:var(--ink);*/font-weight:700}

.tsushincolumn .summary li {
  /* ▼ flexを解除して、文章が自然に折り返るようにする ▼ */
  display: block; 
  position: relative;
  
  /* 左側にチェックアイコンを置くためのスペース（余白）を空ける */
  padding-left: 28px; 
  margin-bottom: 10px; /* リスト同士のたての隙間 */
  
  /*font-size: 14px;
  line-height: 1.75;*/
}

/* チェックマーク（アイコン）が入っているタグがある場合、それを左端に固定する */
.tsushincolumn .summary li img,
.tsushincolumn .summary li svg,
.tsushincolumn .summary li::before {
  position: absolute;
  left: 0;
  top: 3px; /* チェックマークの上下位置を文字の1行目と合わせる微調整 */
  margin: 0;
}
 



  /* renne-promo — soft lemon */
  .tsushincolumn .renne-promo{
    background:#FFFBE6;
    border:1px solid var(--lemon-border);border-radius:14px;
    padding:18px 18px;margin-bottom:18px;
  }
  .tsushincolumn .renne-promo h3{
    margin:0 0 12px;display:flex;align-items:center;gap:8px;
  /*font-size:14.5px;*/color:var(--pri-dk);font-weight:700;
  }
.tsushincolumn .renne-promo h3::before{content:none}
.tsushincolumn .renne-promo h3 .renne-leaf{width:20px;height:20px;flex:0 0 auto;color:var(--pri)}
  .tsushincolumn .renne-promo ul{
    margin:0;padding:0;list-style:none;
    display:grid;gap:10px;grid-template-columns:1fr;
  }
  .tsushincolumn .renne-promo li{
    display:flex;gap:10px;align-items:flex-start;/*font-size:13.5px;*/line-height:1.75;
  }
  .tsushincolumn .renne-promo li b{/*color:var(--ink)*/;font-weight:700;font-family:var(--font-rd);margin-right:4px}
  .tsushincolumn .renne-promo li::before{
    content:"";flex:0 0 auto;
    width:18px;height:18px;margin-top:4px;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231DAA64' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='3,8 7,12 13,4'/></svg>");
    background-size:16px;background-position:center;background-repeat:no-repeat;
  }


/* ピンクと黄色のリスト共通の調整 */
.tsushincolumn .renne-promo li {
  /* ▼ flexを解除して、文章が自然に折り返るようにする ▼ */
  display: block !important; 
  position: relative;
  
  /* 左側のアイコン（×マークやチェック）のスペースを空ける */
  padding-left: 28px; 
  margin-bottom: 10px;
  
  /*font-size: 14px;
  line-height: 1.75;*/
}

/* 左側のアイコン（×や✓）の位置を、1行目の文頭にビシッと固定する */
.tsushincolumn .renne-promo li::before,
.tsushincolumn .renne-promo li img,
.tsushincolumn .renne-promo li svg {
  position: absolute;
  left: 0;
  top: 4px; /* アイコンの上下位置を文字の1行目と綺麗に合わせる微調整 */
  margin: 0;
}



  /* related */
  .tsushincolumn .related{margin-top:40px}
  .tsushincolumn .related h3{/*font-family:var(--font-rd);font-size:16px;*/color:var(--ink);font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:10px}
  .tsushincolumn .related h3::before{content:"";width:6px;height:18px;border-radius:3px;background:var(--pri);display:inline-block}
  .tsushincolumn .rel{padding:10px 12px 10px 10px;gap:12px}
  .tsushincolumn .rel-thumb{
    flex:0 0 auto;width:64px;height:48px;border-radius:8px;
    background:var(--pri-tint);
    background-image:linear-gradient(135deg,#E8F7EE 30%,#DCEDEA 70%);
    position:relative;overflow:hidden;
  }
  .tsushincolumn .rel-thumb::after{
    content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    width:18px;height:18px;border-radius:4px;
    background:#fff;opacity:.6;
  }
  .tsushincolumn .rel-title{flex:1;min-width:0;/*font-size:13px;line-height:1.6;color:var(--ink);*/font-weight:500}
  .tsushincolumn .rel-tag{
    flex:0 0 auto;/*font-size:10.5px;*/font-weight:700;color:var(--pri-dk);
    background:var(--pri-tint);border-radius:6px;padding:3px 7px;letter-spacing:.04em;
    align-self:flex-start;margin-top:2px;
  }

  /* final CTA — soft mint, layered */
  .tsushincolumn .final-cta{
    margin:40px 0 0;
    background:#EAF3EE;
    border:1px solid #CCDFD2;
    border-radius:16px;
    padding:22px 18px 22px;
    color:var(--ink);
  }
  .tsushincolumn .final-cta-inner{max-width:560px;margin:0 auto}
  .tsushincolumn .final-cta-label{
    /*display:flex;*/align-items:center;justify-content:space-between;gap:8px;
    /*font-size:11px;*/color:var(--ink-3);margin:0 0 12px;letter-spacing:.04em;
  }
  .tsushincolumn .final-cta-label .key{
    background:#FDDED3;color:#A4502F;
    border-radius:6px;padding:3px 8px;font-weight:700;letter-spacing:.06em;font-size:10.5px;
  }
  .tsushincolumn .final-cta-title{
  font-size:21px;font-weight:700;color:var(--ink);
    margin:0 0 10px;line-height:1.5;
  }
  .tsushincolumn .final-cta-sub{/*font-size:13.5px;*/margin:0 0 16px;line-height:1.85}
  .tsushincolumn .final-cta-card{
    background:#fff;border:1px solid #D8E4DC;border-radius:14px;
    padding:14px 14px;display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;
  }
  .tsushincolumn .final-cta-av{
    width:44px;height:44px;border-radius:50%;
    background:#D2EEDE;color:var(--pri-dk);
    display:grid;place-items:center;font-family:var(--font-rd);font-weight:700;font-size:18px;
    flex:0 0 auto;
  }
  .tsushincolumn .final-cta-card-body{flex:1;min-width:0;/*font-size:12.5px;line-height:1.7*/}
  .tsushincolumn .final-cta-card-body b{display:block;color:var(--pri-dk);font-weight:700;font-size:12.5px;margin-bottom:2px}
  .tsushincolumn .final-cta-card-foot{color:var(--ink-3);font-size:11.5px;margin-top:4px;display:block}
  .tsushincolumn .final-cta-tags{/*display:flex;*/flex-wrap:wrap;gap:6px;margin-bottom:14px}
  .tsushincolumn .final-cta-tags .pill{font-size:13px;font-weight:700;padding:4px 10px;border-radius:999px;letter-spacing:.02em}
  .tsushincolumn .final-cta-tags .pill.a{background:#D2EEDE;color:var(--pri-dk)}
  .tsushincolumn .final-cta-tags .pill.b{background:#DCEDEA;color:var(--teal-dk)}
  .tsushincolumn .final-cta-tags .pill.c{background:#FDE3D0;color:#A4502F}
  .tsushincolumn .final-cta-main{
    display:block;background:#fff;border:1.5px solid var(--pri);
    border-radius:12px;padding:14px 16px;text-align:center;
    text-decoration:none;color:var(--ink);
    transition:background .15s, transform .15s;
    margin-bottom:8px;
  }
  .tsushincolumn .final-cta-main:hover{background:var(--pri-tint);text-decoration:none}
  .tsushincolumn .final-cta-main small{display:block;/*color:var(--ink-3);font-size:11.5px;*/font-weight:500;margin-bottom:4px;letter-spacing:.02em}
  .tsushincolumn .final-cta-main b{display:block;font-family:var(--font-rd);font-size:15.5px;font-weight:700;color:var(--ink);line-height:1.5}
  .tsushincolumn .final-cta-main b::after{content:"›";margin-left:6px;color:var(--pri-dk)}
  .tsushincolumn .final-cta-mainsub{/*font-size:11.5px;color:var(--ink-3);*/text-align:center;margin:0 0 14px}
  .tsushincolumn .final-cta-or{
    display:flex;align-items:center;gap:10px;/*color:var(--ink-3);font-size:11.5px;*/
    margin:8px 0 12px;
  }
  .tsushincolumn .final-cta-or::before, .tsushincolumn .final-cta-or::after{content:"";flex:1;height:1px;background:#D6E1D9}
  .tsushincolumn .final-cta-altbtns{display:grid;gap:8px;grid-template-columns:1fr;margin-bottom:12px}
  .tsushincolumn .final-cta-altbtn{
    display:flex;align-items:center;justify-content:center;gap:8px;
    background:#fff;border:1px solid #D8E4DC;border-radius:10px;
    padding:12px 14px;font-family:var(--font-rd);font-weight:700;font-size:13.5px;color:var(--ink);
    text-decoration:none;transition:background .15s;
  }
  .tsushincolumn .final-cta-altbtn:hover{background:var(--pri-tint);text-decoration:none}
  .tsushincolumn .final-cta-altbtn .ico{font-size:16px;line-height:1}
  .tsushincolumn .final-cta-foot{/*font-size:11px;color:var(--ink-3);*/margin:6px 0 0;text-align:center}
  @media (min-width:760px){
    .tsushincolumn .final-cta{padding:30px 28px}
    .tsushincolumn .final-cta-title{font-size:24px}
  }
  .tsushincolumn .rel-list{display:grid;gap:10px;grid-template-columns:1fr}
  @media (min-width:600px){.tsushincolumn .rel-list{grid-template-columns:1fr 1fr}}
  .tsushincolumn .rel{
    background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
    padding:12px 14px;display:flex;gap:10px;align-items:center;
    /*font-size:13px;*/box-shadow:var(--shadow-sm);
    line-height: 1.5rem;
  }
  .tsushincolumn .rel-tag{
    flex:0 0 auto;/*font-size:10.5px;*/font-weight:700;color:var(--pri-dk);
    background:var(--pri-tint);border-radius:6px;padding:3px 7px;letter-spacing:.04em;
  }

  /* ============ SIDEBAR ============ */
  .tsushincolumn .sidebar{position:relative}
  .tsushincolumn .sidebar-sticky{position:sticky;top:80px;display:grid;gap:20px}
  .tsushincolumn .side-card{
    background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
    padding:16px;box-shadow:var(--shadow-sm);
  }
  .tsushincolumn .side-card h4{
    margin:0 0 10px;font-family:var(--font-rd);font-size:13px;color:var(--ink);font-weight:700;
    display:flex;align-items:center;gap:8px;
  }
  .tsushincolumn .side-card h4::before{content:"";width:4px;height:14px;border-radius:2px;background:var(--pri);display:inline-block}
  .tsushincolumn .side-toc{counter-reset:stoc;list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:12.5px}
  .tsushincolumn .side-toc li{counter-increment:stoc;display:flex;gap:8px;align-items:baseline}
  .tsushincolumn .side-toc li::before{content:counter(stoc,decimal-leading-zero);color:var(--pri);font-family:var(--font-rd);font-weight:700;font-size:11px;flex:0 0 22px}
  .tsushincolumn .side-toc a{color:var(--ink-2)}
  .tsushincolumn .side-toc a:hover{color:var(--pri-dk)}
  .tsushincolumn .side-help{
    background:linear-gradient(180deg,var(--paper-peach),var(--paper-warm));
    border:1px solid var(--line);border-radius:var(--r);padding:16px;
  }
  .tsushincolumn .side-help-title{font-family:var(--font-rd);font-weight:700;font-size:13.5px;color:var(--ink);margin:0 0 6px}
  .tsushincolumn .side-help p{font-size:12px;color:var(--ink-3);margin:0 0 12px}
  .tsushincolumn .side-help .cta-buttons{margin-top:0;gap:8px}
  .tsushincolumn .side-help .cta-buttons{grid-template-columns:1fr}
  .tsushincolumn .side-help .cta-btn{padding:11px 12px;font-size:13px}
  .tsushincolumn .side-cols{margin:0;padding:0;list-style:none;font-size:13px}
  .tsushincolumn .side-cols li{border-bottom:1px solid var(--line);padding:0;list-style:none}
  .tsushincolumn .side-cols li:first-child{border-top:1px solid var(--line)}
  .tsushincolumn .side-cols a{
    display:block;padding:14px 2px;color:var(--ink);line-height:1.6;
    text-decoration:none;
  }
  .tsushincolumn .side-cols a:hover{color:var(--pri-dk);text-decoration:none}

  /* ============ FOOTER ============ */
  .tsushincolumn .footer{
    background:#2A211B;color:#D7CABA;
    padding:32px 16px 80px;margin-top:40px;
    font-size:12px;line-height:1.7;
  }
  .tsushincolumn .footer-inner{max-width:var(--content-wide);margin:0 auto;display:grid;gap:18px}
  .tsushincolumn .footer-brand{display:flex;align-items:center;gap:10px}
  .tsushincolumn .footer-brand .brand-mark{box-shadow:none}
  .tsushincolumn .footer-brand b{color:#fff;font-size:14px;font-family:var(--font-rd)}
  .tsushincolumn .footer-nav{display:flex;flex-wrap:wrap;gap:10px 18px;color:#B5A293}
  .tsushincolumn .footer-nav a{color:#D7CABA}
  .tsushincolumn .copyright{color:#8A7B6E;font-size:11px}

  /* ============ STICKY BOTTOM CTA (mobile) ============ */
  .tsushincolumn .sticky-cta{
    position:fixed;left:0;right:0;bottom:0;z-index:60;
    background:linear-gradient(180deg,#3a2c20,#2A211B);
    color:#fff;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 -8px 24px -8px rgba(0,0,0,.3);
  }
  .tsushincolumn .sticky-cta .sticky-lead{
    text-align:center;font-size:11.5px;color:#F0E2CC;margin-bottom:8px;font-family:var(--font-rd);font-weight:500;
  }
  .tsushincolumn .sticky-cta .sticky-lead b{color:#fff;font-weight:700}
  .tsushincolumn .sticky-cta-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .tsushincolumn .sticky-cta-buttons .cta-btn{padding:10px 10px;font-size:13px;border-radius:10px}
  .tsushincolumn .sticky-cta-buttons .cta-btn small{display:none}
  @media (min-width:1000px){
    .tsushincolumn .sticky-cta{display:none}
    .tsushincolumn{padding-bottom:0}
  }
  /*.tsushincolumn{padding-bottom:96px}*/
  @media (min-width:1000px){.tsushincolumn{padding-bottom:0}}

  /* utilities */
  .tsushincolumn .lead-q{
  color:var(--rose);font-weight:500;font-size:15px;
    margin:0 0 10px;
  }

  /* --- サインカードのアイコン枠（旧 .sign-emoji の置き換え。白丸バッジ） --- */
.tsushincolumn .sign-ico{
  width:50px;height:50px;border-radius:50%;
  background:#fff;border:1px solid #F4DFBC;
  display:grid;place-items:center;color:var(--pri-dk);
  margin-bottom:6px;
}

/* --- 旧 .renne-promo h3::before の絵文字（🌿）を無効化 --- */
.tsushincolumn .renne-promo h3::before{content:none}

/* ====== CMS-safe アイコン：背景SVG ====== */
.tsushincolumn .callout-note .ico{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231DAA64' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:13px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .ng-head .ico{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B97456' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><line x1='18' y1='6' x2='6' y2='18'/><line x1='6' y1='6' x2='18' y2='18'/></svg>");background-size:13px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .quote-soft .ico{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A0701F' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='8' x2='12' y2='12'/><line x1='12' y1='16' x2='12' y2='16.5'/></svg>");background-size:13px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .final-cta-altbtn .ico{display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23168A52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 0 1 2-2h12v16H6a2 2 0 0 0-2 2z'/><path d='M4 19a2 2 0 0 1 2-2h12'/></svg>");background-size:17px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .sign-ico.is-sleep{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23168A52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12.8A8.5 8.5 0 1 1 11.2 3a6.6 6.6 0 0 0 9.8 9.8z'/></svg>");background-size:26px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .sign-ico.is-health{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23168A52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M14 14.76V5a2 2 0 0 0-4 0v9.76a4 4 0 1 0 4 0z'/></svg>");background-size:26px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .sign-ico.is-talk{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23168A52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M21 11.5a8.4 8.4 0 0 1-9 8.4L3 21l1.1-4.9A8.4 8.4 0 1 1 21 11.5z'/><line x1='8.5' y1='15.5' x2='15.5' y2='7.5'/></svg>");background-size:26px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .sign-ico.is-grade{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23168A52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><polyline points='3 7 9 13 13 9 21 17'/><polyline points='21 12 21 17 16 17'/></svg>");background-size:26px;background-position:center;background-repeat:no-repeat}
.tsushincolumn .renne-promo h3 .renne-leaf{display:inline-block;width:20px;height:20px;flex:0 0 auto;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231DAA64' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M11 20A7 7 0 0 1 4 13c0-5 4-9 16-9 0 8-4 13-9 13z'/><path d='M4 20c2-5 5-8 9-9'/></svg>") center/contain no-repeat}

/* --- 人物写真プレースホルダー枠（人物シルエット＋ミントのグラデ円） --- */
.tsushincolumn .author-card .photo{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239DB3A6'><path d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1.8c-4.2 0-7.6 2.3-7.6 5.2V21h15.2v-2c0-2.9-3.4-5.2-7.6-5.2z'/></svg>"),linear-gradient(135deg,#D2EEDE,#DCEDEA);background-size:54%,100% 100%;background-position:center,center;background-repeat:no-repeat,no-repeat}
.tsushincolumn .cta-block.with-author .cta-photo{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239DB3A6'><path d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1.8c-4.2 0-7.6 2.3-7.6 5.2V21h15.2v-2c0-2.9-3.4-5.2-7.6-5.2z'/></svg>"),linear-gradient(135deg,#D2EEDE,#DCEDEA);background-size:52%,100% 100%;background-position:center,center;background-repeat:no-repeat,no-repeat}
.tsushincolumn .test-av{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239DB3A6'><path d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1.8c-4.2 0-7.6 2.3-7.6 5.2V21h15.2v-2c0-2.9-3.4-5.2-7.6-5.2z'/></svg>"),linear-gradient(135deg,#D2EEDE,#DCEDEA);background-size:54%,100% 100%;background-position:center,center;background-repeat:no-repeat,no-repeat}
.tsushincolumn .final-cta-av{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239DB3A6'><path d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 1.8c-4.2 0-7.6 2.3-7.6 5.2V21h15.2v-2c0-2.9-3.4-5.2-7.6-5.2z'/></svg>"),linear-gradient(135deg,#D2EEDE,#DCEDEA);background-size:54%,100% 100%;background-position:center,center;background-repeat:no-repeat,no-repeat}


/* --- 既存common.css反映用--- */
.renew.sub h2 {
font-size: 27px;
line-height: 2.5rem;
}
@media screen and (max-width: 767px) {
.renew.sub h2 {
font-size: 6.1vw;
padding: 0 2vw;}
}
@media screen and (max-width: 767px) {
.renew.sub h4 {
padding: 0 2vw;
}
}

@media screen and (max-width: 767px) {
.renew.sub p {
padding: 0!important;
}
}


.cta-buttons .btn-white {
border: 2px solid #f15a24!important;
}

.cta-buttons .btn {
padding: 5px 12px 9px!important;
}
.cta-buttons .btn-white  {
padding: 5px 12px 9px!important;
}



@media (max-width: 767px) {
.cta-buttons .btn {
padding: 5px 5px 8px!important;
}
.cta-buttons .btn-white  {
padding: 5px 5px 8px!important;
}

}

.cta-buttons .btn-blue{
border: 2px solid #1475ba;
}
.cta-buttons .btn-green{
border: 2px solid #2dc761
}

