/* 素材が自前のリセットを持たないため、単独ページ用に最小限だけ補う */
html,body{margin:0;padding:0}

/* ものコレ試作チャレンジ支援金 LP 専用CSS — すべて .lp スコープ配下 */
.lp{
    --teal:#2FB5A9;
    --teal-light:#7FDCD2;
    --navy:#1F3E6E;
    --navy-deep:#16294A;
    --crimson:#B03A52;
    --bg-light:#F4F8F8;
    --ink:#1E2A38;
    --gray:#5A6B7A;
    --radius:14px;
  }.lp, .lp *{margin:0;padding:0;box-sizing:border-box;}.lp{
    font-family:'Noto Sans JP',sans-serif;
    color:var(--ink);
    line-height:1.8;
    -webkit-font-smoothing:antialiased;
  }.lp .en{font-family:'Montserrat','Noto Sans JP',sans-serif;letter-spacing:.04em;}.lp .inner{max-width:960px;margin:0 auto;padding:0 20px;}.lp section{padding:64px 0;}.lp .sec-label{
    font-family:'Montserrat',sans-serif;font-weight:800;font-size:clamp(22px,4.5vw,34px);
    letter-spacing:.05em;color:var(--navy);
  }.lp .sec-label .dot{color:var(--teal);}.lp .sec-lead{font-size:clamp(15px,3.2vw,18px);font-weight:700;color:var(--ink);margin-top:6px;margin-bottom:28px;}.lp /* ===== 固定追従バー(画面下部固定: サイト共通ヘッダーとの干渉回避) ===== */
  #stickybar{
    position:fixed;bottom:0;left:0;right:0;z-index:100;
    background:var(--navy-deep);color:#fff;
    display:flex;align-items:center;justify-content:center;gap:14px;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));font-size:13px;font-weight:700;
    transform:translateY(110%);transition:transform .3s ease;
    box-shadow:0 -2px 12px rgba(0,0,0,.25);
  }.lp #stickybar.show{transform:translateY(0);}.lp #stickybar .sb-deadline{color:var(--teal-light);}.lp #stickybar a{
    background:var(--teal);color:#fff;text-decoration:none;
    padding:7px 18px;border-radius:999px;font-weight:900;font-size:13px;white-space:nowrap;
  }.lp /* ===== S1 ヒーロー ===== */
  .hero{
    position:relative;overflow:hidden;
    background:linear-gradient(135deg,#2FB5A9 0%,#238BA0 40%,#1F3E6E 100%);
    color:#fff;padding:0;
  }.lp /* デスクトップ: アイキャッチを大きく敷き、MAKE. NOW.と完全一体化(デスクが下辺全幅に届く) */
  .hero-img-desktop{
    position:absolute;right:-6%;bottom:0;width:110%;height:auto;z-index:1;
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 30%);
    mask-image:linear-gradient(180deg,transparent 0,#000 30%);
  }.lp .hero-deco{
    position:absolute;top:24px;right:20px;width:40%;max-width:560px;height:auto;
    z-index:1;pointer-events:none;
  }
  @media(max-width:899px){.lp .hero-img-desktop, .lp .hero-deco{display:none;}
  }
  @media(min-width:900px){.lp .hero-img-mobile{display:none;}.lp /* テキストは画像左側の空きゾーンに収める。コンテナは1200px相当に左寄せ */
    .hero-inner{max-width:none;padding-left:max(24px,calc(50vw - 600px));padding-right:24px;}.lp .hero .subcopy{max-width:560px;}.lp .hero .hero-note{
      display:inline-block;max-width:640px;color:rgba(255,255,255,.92);
      background:rgba(22,41,74,.45);padding:6px 14px;border-radius:8px;
    }
  }
  @media(max-width:899px){.lp .hero-img-mobile{
      display:block;width:100%;border-radius:12px;margin-top:26px;
      box-shadow:0 8px 24px rgba(0,0,0,.22);
    }
  }.lp .logo-img{height:68px;width:auto;border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,.18);display:block;}.lp .hero-inner{position:relative;z-index:2;max-width:960px;margin:0 auto;padding:28px 20px 72px;}.lp .hero-badges{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}.lp .badge-monocolle{
    background:var(--navy-deep);border-radius:10px;padding:6px 14px;
    font-weight:900;font-size:15px;letter-spacing:.06em;
  }.lp .badge-suteam{
    border:1px solid rgba(255,255,255,.6);border-radius:999px;
    font-size:11.5px;padding:4px 12px;letter-spacing:.04em;
  }.lp .pgname{
    display:inline-block;margin-top:36px;
    background:rgba(255,255,255,.14);border-left:5px solid var(--teal-light);
    padding:8px 18px;border-radius:0 8px 8px 0;
    font-weight:900;font-size:clamp(16px,3.8vw,23px);letter-spacing:.06em;
  }.lp .hero h1{
    font-family:'Montserrat',sans-serif;font-weight:800;
    font-size:clamp(56px,14vw,150px);line-height:1.02;letter-spacing:.01em;
    margin-top:20px;
  }.lp .hero h1 .dot{color:var(--teal-light);}.lp .hero .jp-lead{
    font-size:clamp(18px,4.5vw,30px);font-weight:900;margin-top:14px;letter-spacing:.08em;
  }.lp .hero .subcopy{
    font-size:clamp(15px,3.6vw,21px);font-weight:700;margin-top:26px;letter-spacing:.03em;
  }.lp .hero-fact{
    display:inline-block;background:#fff;color:var(--navy);
    border-radius:10px;padding:12px 22px;margin-top:22px;
    font-weight:900;font-size:clamp(14px,3.4vw,19px);letter-spacing:.02em;
    box-shadow:0 6px 20px rgba(0,0,0,.18);
  }.lp .hero-fact .num{font-family:'Montserrat','Noto Sans JP',sans-serif;font-size:1.35em;color:var(--crimson);}.lp .hero-deadline{
    margin-top:22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  }.lp .hero-deadline .dl-label{
    background:var(--crimson);border-radius:8px;padding:8px 16px;
    font-weight:900;font-size:clamp(14px,3.4vw,18px);letter-spacing:.05em;
  }.lp .hero-deadline .countdown{
    font-size:13px;font-weight:700;color:#DFF6F3;
  }.lp .hero-deadline .countdown b{
    font-family:'Montserrat',sans-serif;font-size:26px;color:#fff;margin:0 2px;
  }.lp .hero-cta{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap;}.lp .btn{
    display:inline-block;text-decoration:none;text-align:center;
    border-radius:999px;font-weight:900;transition:opacity .2s, transform .2s;
  }.lp .btn:hover{opacity:.88;transform:translateY(-1px);}.lp .btn-primary{
    background:#fff;color:var(--navy);
    padding:16px 44px;font-size:17px;box-shadow:0 6px 20px rgba(0,0,0,.2);
  }.lp .btn-secondary{
    border:2px solid rgba(255,255,255,.85);color:#fff;
    background:rgba(22,41,74,.35);
    padding:14px 32px;font-size:15px;
  }.lp .hero-note{font-size:11.5px;color:rgba(255,255,255,.75);margin-top:18px;}.lp /* ===== S2 共感 ===== */
  .s2{background:#fff;}.lp .card-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}.lp .pain-card{
    background:var(--bg-light);border-radius:var(--radius);padding:26px 22px;
    border-top:4px solid var(--teal);
  }.lp .pain-card .pc-title{font-weight:900;font-size:17px;color:var(--navy);margin-bottom:8px;}.lp .pain-card p{font-size:14px;color:var(--gray);}.lp /* ===== S3 制度概要 ===== */
  .s3{background:var(--bg-light);}.lp .num-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:36px;}.lp .num-card{
    background:#fff;border-radius:var(--radius);padding:28px 20px;text-align:center;
    box-shadow:0 4px 16px rgba(31,62,110,.08);
  }.lp .num-card .nc-label{font-size:13px;font-weight:700;color:var(--gray);letter-spacing:.06em;}.lp .num-card .nc-value{
    font-family:'Montserrat','Noto Sans JP',sans-serif;font-weight:800;
    font-size:clamp(28px,6vw,40px);color:var(--navy);margin-top:4px;line-height:1.2;
  }.lp .num-card .nc-value small{font-size:.45em;font-weight:900;}.lp .num-card.crimson .nc-value{color:var(--crimson);}.lp .num-card .nc-note{font-size:11.5px;color:var(--gray);margin-top:6px;}.lp table.overview{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 16px rgba(31,62,110,.08);}.lp table.overview th, .lp table.overview td{
    padding:14px 18px;font-size:14px;text-align:left;vertical-align:top;
    border-bottom:1px solid #E5EDED;
  }.lp table.overview th{background:#EAF4F3;color:var(--navy);font-weight:900;width:31%;min-width:110px;}.lp table.overview tr:last-child th, .lp table.overview tr:last-child td{border-bottom:none;}.lp .table-note{font-size:12px;color:var(--gray);margin-top:12px;}.lp /* ===== S4 信頼 ===== */
  .s4{background:#fff;}.lp .trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
  @media(max-width:720px){.lp .trust-grid{grid-template-columns:1fr;}}.lp .trust-card{
    border:1px solid #DCE7E7;border-radius:var(--radius);padding:28px 24px;
  }.lp .trust-card .tc-tag{
    display:inline-block;background:var(--navy);color:#fff;border-radius:6px;
    font-size:12px;font-weight:900;padding:3px 12px;letter-spacing:.06em;margin-bottom:12px;
  }.lp .trust-card h3{font-size:17px;color:var(--navy);margin-bottom:8px;}.lp .trust-card p{font-size:14px;color:var(--gray);}.lp .trust-msg{
    margin-top:24px;background:linear-gradient(135deg,#2FB5A9,#1F3E6E);
    color:#fff;border-radius:var(--radius);padding:26px 28px;
    font-weight:900;font-size:clamp(15px,3.4vw,19px);letter-spacing:.03em;text-align:center;
  }.lp /* ものづくりコレクティブとは? */
  .about-head{
    display:flex;align-items:center;gap:12px;margin:36px 0 8px;
  }.lp .about-head h3{font-size:clamp(18px,4vw,22px);color:var(--navy);font-weight:900;}.lp .about-head::after{content:"";flex:1;height:2px;background:linear-gradient(90deg,var(--teal),transparent);}.lp .about-intro{font-size:14.5px;color:var(--gray);margin-bottom:20px;}.lp .about-row{
    display:grid;grid-template-columns:1.15fr 1fr;gap:26px;align-items:center;
    background:#fff;border:1px solid #DCE7E7;border-radius:var(--radius);
    padding:26px;margin-bottom:20px;
  }.lp .about-row img{width:100%;display:block;border-radius:8px;}.lp .about-row .ar-text h4{font-size:16.5px;color:var(--navy);margin-bottom:8px;}.lp .about-row .ar-text h4 span{color:var(--teal);font-family:'Montserrat',sans-serif;font-weight:800;font-size:13px;letter-spacing:.08em;display:block;margin-bottom:4px;}.lp .about-row .ar-text p{font-size:13.5px;color:var(--gray);}
  @media(max-width:720px){.lp .about-row{grid-template-columns:1fr;}}.lp /* ===== S5 活用イメージ ===== */
  .s5{background:var(--bg-light);}.lp .field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;}.lp .field-card{
    background:#fff;border-radius:var(--radius);padding:18px 18px 22px;
    box-shadow:0 4px 16px rgba(31,62,110,.08);
  }.lp .field-card img{width:100%;border-radius:10px;display:block;}.lp .field-card h3{font-size:16px;color:var(--navy);margin:12px 0 6px;}.lp .field-card p{font-size:13.5px;color:var(--gray);}.lp .s5-close{font-weight:700;color:var(--navy);margin-top:22px;text-align:center;font-size:15px;}.lp /* ===== S6 3ステップ ===== */
  .s6{background:#fff;}.lp .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;counter-reset:step;}.lp .step-card{
    background:var(--bg-light);border-radius:var(--radius);padding:26px 22px;position:relative;
  }.lp .step-card .st-num{
    font-family:'Montserrat',sans-serif;font-weight:800;font-size:34px;color:var(--teal);
    line-height:1;
  }.lp .step-card h3{font-size:16px;color:var(--navy);margin:8px 0 6px;}.lp .step-card p{font-size:13.5px;color:var(--gray);}.lp .founder-box{
    margin-top:24px;border:2px solid var(--teal);border-radius:var(--radius);
    padding:20px 24px;display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;
    background:#F0FAF9;
  }.lp .founder-box .fb-tag{
    background:var(--teal);color:#fff;border-radius:6px;font-size:12px;font-weight:900;
    padding:4px 12px;white-space:nowrap;
  }.lp .founder-box p{font-size:14px;font-weight:700;color:var(--navy);flex:1;min-width:220px;}.lp .founder-box p small{display:block;font-weight:400;color:var(--gray);font-size:12px;margin-top:4px;}.lp /* ===== S6.5 資料ダウンロード ===== */
  .s-dl{background:#EAF4F3;}.lp .dl-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}.lp .dl-card{
    display:flex;align-items:center;gap:14px;text-decoration:none;
    background:#fff;border-radius:var(--radius);padding:20px 22px;
    box-shadow:0 4px 16px rgba(31,62,110,.08);transition:transform .2s;
  }.lp .dl-card:hover{transform:translateY(-2px);}.lp .dl-card .dl-icon{
    flex-shrink:0;width:42px;height:42px;border-radius:10px;
    display:flex;align-items:center;justify-content:center;color:#fff;
  }.lp .dl-card .dl-icon svg{width:22px;height:22px;}.lp .dl-card .dl-icon.pdf{background:var(--crimson);}.lp .dl-card .dl-icon.word{background:#2B579A;}.lp .dl-card .dl-icon.excel{background:#217346;}.lp .dl-card .dl-name{font-size:14.5px;font-weight:700;color:var(--navy);line-height:1.5;}.lp .dl-card .dl-type{font-size:11.5px;color:var(--gray);font-weight:500;}.lp .dl-note{font-size:12px;color:var(--gray);margin-top:14px;}.lp /* ===== S7 FAQ ===== */
  .s7{background:var(--bg-light);}.lp details.faq{
    background:#fff;border-radius:12px;margin-bottom:12px;
    box-shadow:0 2px 10px rgba(31,62,110,.06);overflow:hidden;
  }.lp details.faq summary{
    cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;
    padding:18px 20px;font-weight:700;font-size:14.5px;color:var(--navy);
  }.lp details.faq summary::-webkit-details-marker{display:none;}.lp details.faq summary::before{
    content:"Q";font-family:'Montserrat',sans-serif;font-weight:800;color:var(--teal);
    font-size:18px;flex-shrink:0;
  }.lp details.faq summary::after{
    content:"+";margin-left:auto;font-family:'Montserrat',sans-serif;font-weight:700;
    color:var(--gray);font-size:20px;transition:transform .2s;
  }.lp details.faq[open] summary::after{transform:rotate(45deg);}.lp details.faq .faq-a{
    padding:0 20px 18px 46px;font-size:13.5px;color:var(--gray);
  }.lp /* ===== S8 最終CTA ===== */
  .s8{
    background:linear-gradient(135deg,#2FB5A9 0%,#238BA0 40%,#1F3E6E 100%);
    color:#fff;text-align:center;padding:80px 0;
  }.lp .s8 .en-big{
    font-family:'Montserrat',sans-serif;font-weight:800;
    font-size:clamp(44px,11vw,110px);line-height:1.05;
  }.lp .s8 .en-big .dot{color:var(--teal-light);}.lp .s8 .close-lead{font-size:clamp(16px,4vw,24px);font-weight:900;margin-top:14px;letter-spacing:.06em;}.lp .s8 .dl{margin-top:20px;font-weight:900;font-size:clamp(15px,3.6vw,20px);}.lp .s8 .dl span{background:var(--crimson);border-radius:8px;padding:6px 16px;}.lp .s8 .hero-cta{justify-content:center;}.lp /* ===== S9 支援者 ===== */
  .s9{background:var(--navy-deep);color:#fff;padding:48px 0;}.lp .s9 .sec-label{color:#fff;}.lp .s9 p{font-size:14px;color:#C6D4E2;margin-top:10px;}.lp .s9 a{color:var(--teal-light);font-weight:700;}.lp /* ===== S10 フッター ===== */
  footer{background:#10203A;color:#8FA3B8;padding:36px 0 48px;font-size:12px;}.lp footer .f-org{color:#fff;font-weight:700;font-size:13.5px;margin-bottom:10px;}.lp footer .f-note{margin-top:14px;line-height:1.9;}

/* 追従CTAバーが position:fixed で最下部に居座り、素材側に余白が無いためページ末尾の注記が隠れる。
   .lp 側に padding を足すとフッターの背景がそこで切れて白帯になるので、
   背景を持つ footer 自身の下 padding を増やす（素材は 36px 0 48px）。
   素材の `.lp, .lp *{padding:0}` に打ち消されるため、必ずこの位置（末尾）に置くこと。
   バーの高さは padding と safe-area で変わるので余裕をみる */
.lp footer{padding-bottom:calc(48px + 72px + env(safe-area-inset-bottom))}
