  /* ============================================================
     CIW Construction 申込LP
     ・全体を .ciwlp でスコープ化（WordPress固定ページのテーマCSSと干渉させない）
     ・モバイル(〜639px)＝従来の1カラムを完全維持
     ・640〜919px＝従来どおり480px幅カードを中央寄せ
     ・920px〜＝PC専用の2カラム（左:ブランド / 右:フォーム）
     ・Portersフォームの埋め込み・計測JSは1個のまま（複製しない）
     ============================================================ */

  .ciwlp{
    --navy:#1E4438;--navy-deep:#10271F;--blue:#2C6152;--gold:#C9A24B;--orange:#A87B22;--red:#B8923F;
    --ink:#26302B;--line:#DDD8CB;--bg:#F4F1E9;--err:#C0392B;
    font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;
    background:#DAD4C4;color:var(--ink);line-height:1.6;-webkit-text-size-adjust:100%;
  }
  .ciwlp *{margin:0;padding:0;box-sizing:border-box;}

  .ciwlp .frame{max-width:480px;margin:0 auto;background:var(--bg);min-height:100vh;box-shadow:0 0 40px rgba(8,27,51,.25);position:relative;}

  /* 構造ラッパー（モバイルは素通し） */
  .ciwlp .lp-grid{display:block;}
  .ciwlp .lp-brand,.ciwlp .lp-action{display:block;}
  .ciwlp .lp-trust{display:none;} /* PCのみ表示 */
  .ciwlp .ciw-logo-slider--hero{display:none;} /* PCのみ表示（左カラム下部） */

  .ciwlp header{background:#fff;padding:9px 16px 7px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;}
  .ciwlp .logo-wrap{min-width:0;}
  .ciwlp .biz-cta{flex:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;text-decoration:none;border:1px solid rgba(30,68,56,.3);border-radius:2px;padding:6px 10px;background:#fff;transition:background .15s ease,border-color .15s ease;}
  .ciwlp .biz-cta-sub{font-size:8.5px;font-weight:700;letter-spacing:.06em;color:#8A8166;white-space:nowrap;}
  .ciwlp .biz-cta-main{display:flex;align-items:center;gap:4px;font-size:10.5px;font-weight:800;color:var(--navy);white-space:nowrap;}
  .ciwlp .biz-cta-main i{font-style:normal;font-size:13px;line-height:1;color:var(--orange);}
  .ciwlp .biz-cta:hover{background:var(--navy);border-color:var(--navy);}
  .ciwlp .biz-cta:hover .biz-cta-sub{color:#AEBDB3;}
  .ciwlp .biz-cta:hover .biz-cta-main{color:#fff;}
  .ciwlp .biz-cta:hover .biz-cta-main i{color:var(--gold);}
  @media (max-width:374px){.ciwlp .logo{font-size:18px;}.ciwlp .biz-cta-main{font-size:10px;}.ciwlp .biz-cta{padding:5px 8px;}}
  .ciwlp .logo{font-family:"Poppins",sans-serif;font-weight:700;font-size:20px;color:#2d4a43;line-height:1.2;}
  .ciwlp .logo-sub{font-family:"Noto Sans JP",sans-serif;font-size:11px;color:#777777;margin-top:2px;}
  .ciwlp .hero{position:relative;color:#fff;padding:16px 16px 15px;overflow:hidden;background:linear-gradient(115deg,rgba(16,39,31,.95),rgba(30,68,56,.9) 45%,rgba(44,97,82,.62)),repeating-linear-gradient(45deg,#1B3D32 0 14px,#173429 14px 28px);}
  .ciwlp .hero::after{content:"";position:absolute;right:-30px;bottom:-40px;width:180px;height:180px;background:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 2px,transparent 2px 18px),repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 2px,transparent 2px 18px);transform:rotate(8deg);}
  .ciwlp .hero-flag{display:inline-block;background:var(--orange);color:#fff;font-size:11px;font-weight:700;padding:3px 11px;clip-path:polygon(0 0,100% 0,calc(100% - 9px) 100%,0 100%);margin-bottom:8px;}
  .ciwlp .hero h1{font-size:21px;font-weight:800;line-height:1.4;position:relative;z-index:1;color:#fff;}
  .ciwlp .hero h1 em{font-style:normal;color:var(--gold);}
  .ciwlp .hero-cats{font-size:11.5px;margin-top:5px;color:#E4E9DB;font-weight:600;position:relative;z-index:1;}
  .ciwlp .hero-meta{display:flex;align-items:center;gap:8px;margin-top:11px;position:relative;z-index:1;flex-wrap:wrap;}
  .ciwlp .hero-award{display:flex;align-items:center;gap:5px;background:rgba(255,255,255,.07);border:1px solid rgba(201,162,75,.5);border-radius:5px;padding:5px 9px;font-size:10px;color:#E7D6A8;font-weight:700;}
  .ciwlp .hero-award b{color:var(--gold);font-size:12px;}
  .ciwlp .hero-badge{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);border-radius:3px;font-size:10px;padding:3px 7px;font-weight:600;}
  .ciwlp .hero-badge b{color:var(--gold);}

  /* PC専用の信頼ブロック（モバイルでは非表示。装飾はPCメディアクエリ側に集約） */

  .ciwlp .form-intro{background:linear-gradient(90deg,var(--navy),var(--blue));display:flex;align-items:center;justify-content:space-between;padding:10px 14px;}
  .ciwlp .form-intro .ttl{color:#fff;font-weight:800;font-size:14px;}
  .ciwlp .form-intro .kantan{background:var(--gold);color:#fff;font-size:9.5px;font-weight:800;text-align:center;line-height:1.2;padding:4px 9px;border-radius:3px;}
  .ciwlp .form-intro .kantan b{font-size:12px;display:block;}
  .ciwlp .minimap{display:flex;background:#fff;border-bottom:1px solid var(--line);padding:9px 12px;gap:6px;}
  .ciwlp .minimap div{flex:1;text-align:center;font-size:10px;font-weight:700;color:#A49B86;position:relative;}
  .ciwlp .minimap div b{display:block;color:var(--navy);font-size:11.5px;margin-top:1px;}
  .ciwlp .minimap div:not(:last-child)::after{content:"›";position:absolute;right:-5px;top:8px;color:#C9C2B0;}
  .ciwlp .form-area{padding:14px 14px 0;}
  .ciwlp .secure-note{background:#fff;border:1px solid var(--line);border-radius:4px;font-size:11px;color:#5A6B7E;text-align:center;padding:6px;margin-bottom:14px;}
  .ciwlp .secure-note::before{content:"🔒 ";}
  .ciwlp .sec-head{display:flex;align-items:center;gap:8px;margin:18px 0 10px;}
  .ciwlp .sec-head:first-child{margin-top:0;}
  .ciwlp .sec-head .num{width:23px;height:23px;border-radius:50%;background:var(--navy);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none;}
  .ciwlp .sec-head .tt{font-size:15px;font-weight:800;color:var(--navy);}
  .ciwlp .sec-head .sub{font-size:10.5px;color:#8A8166;font-weight:600;margin-left:auto;}

  /* ===== PORTERS WEB PARTS — BRAND SKIN（実HTML: template 21204 / style0）=====
     重要: Portersは「入力欄のみ」生成しラベルを出さない。各項目の data-alias で
     ラベルをCSS注入する。必須は空の .po-required-elem をバッジ化。
     ※すべて .ciwlp 配下にスコープ（生成されるフォームも .ciwlp 内に出るため有効） */
  .ciwlp .po-webparts-container{width:100%;color:var(--ink);}
  .ciwlp .po-webparts-container .po-header{display:none;}
  .ciwlp .po-webparts-container .po-joblist,.ciwlp .po-webparts-container .po-jobsearch-wrap{width:100%;}
  .ciwlp .po-canentryform table,.ciwlp .po-canentryform tbody{display:block;width:100%;}
  .ciwlp .po-canentryform table{border-collapse:collapse;border:0;}
  .ciwlp .po-canentryform tr,.ciwlp .po-canentryform td{display:block;width:100%;border:0;padding:0;}
  .ciwlp .po-canentryform tr.po-single{margin:0 0 16px;}
  .ciwlp .po-canentryform td.po-normal{position:relative;display:block;padding-top:2px;}
  .ciwlp .po-canentryform .po-row-item-container{display:block;}
  .ciwlp .po-canentryform .po-remark{display:none;}

  /* 必須バッジ（空 span を流用、項目の右上に配置） */
  .ciwlp .po-canentryform .po-required-elem{display:none;}
  .ciwlp .po-canentryform td.po-not-required::after{content:"任意";position:absolute;top:0;right:0;background:#EDEAE0;color:#8A8166;font-size:9px;font-weight:700;line-height:1;padding:3px 6px;border-radius:3px;letter-spacing:.02em;}

  /* 項目ラベルの注入（data-alias 単位） */
  .ciwlp .po-canentryform .po-input[data-alias]{position:relative;}
  .ciwlp .po-canentryform .po-input[data-alias]::before{display:block;flex:0 0 100%;width:100%;order:-1;font-size:12.5px;font-weight:800;color:var(--ink);margin:0 0 8px;}
  .ciwlp .po-canentryform .po-injected-label{font-size:12.5px;font-weight:800;color:var(--ink);margin:0 0 8px;}
  .ciwlp .po-canentryform .po-contact-note{display:block;font-size:11px;line-height:1.55;color:#3A5A4E;background:#F1F6F2;border-radius:7px;padding:8px 10px;margin:0 0 9px;}
  .ciwlp .po-canentryform .po-contact-note b{color:var(--navy);font-weight:700;}
  .ciwlp .po-canentryform .po-input[data-alias="Resume.U_D65AA79A85E85486F4D4B659F24DA9"]::before{content:"保有資格（複数選択可）";}
  .ciwlp .po-canentryform .po-input[data-alias="Resume.U_9F6487F8D89C69175C22F362A32943"]::before{content:"希望勤務地（複数選択可）";}
  .ciwlp .po-canentryform .po-input[data-alias="Resume.U_05C496B8C73C24243070D45BEA2BF1"]::before{content:"現在の年収";}
  .ciwlp .po-canentryform .po-input[data-alias="Resume.U_617A20214ED5175A3EA2BEE82E1465"]::before{content:"転職可能時期";}
  .ciwlp .po-canentryform .po-input[data-alias="Resume.P_DateOfBirth"]::before{content:"生年月日（西暦8桁）";}
  .ciwlp .po-canentryform .po-input[data-alias="Person.P_Name"]::before{content:"氏名";}
  .ciwlp .po-canentryform .po-input[data-alias="Person.P_Reading"]::before{content:"氏名（カナ）";}
  .ciwlp .po-canentryform .po-input[data-alias="Person.P_Mail"]::before{content:"メールアドレス";}
  .ciwlp .po-canentryform .po-input[data-alias="Person.P_Mobile"]::before{content:"携帯電話番号";}

  /* text / mail / phone */
  .ciwlp .po-canentryform .po-input>input[type=text]{width:100%;background:#fff;border:1.5px solid var(--line);border-radius:7px;padding:11px;font-size:15px;font-family:inherit;color:var(--ink);-webkit-appearance:none;appearance:none;}
  .ciwlp .po-canentryform input:focus,.ciwlp .po-canentryform select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(44,97,82,.16);}

  /* 生年月日：年/月/日を横並び */
  .ciwlp .po-canentryform .po-input[data-alias="Resume.P_DateOfBirth"]{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:13px;font-weight:700;color:#5A6B7E;}
  .ciwlp .po-canentryform .po-input>input.po-year{width:86px;flex:0 0 auto;}
  .ciwlp .po-canentryform .po-input>input.po-month,.ciwlp .po-canentryform .po-input>input.po-day{width:62px;flex:0 0 auto;}

  /* dropdown */
  .ciwlp .po-canentryform .po-dropdown select{width:100%;background:#fff;border:1.5px solid var(--line);border-radius:7px;padding:11px;font-size:15px;font-family:inherit;color:var(--ink);-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%237E90A5' stroke-width='2'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;}

  /* checkbox → pills */
  .ciwlp .po-canentryform .po-checkbox{display:flex;flex-wrap:wrap;gap:7px;}
  .ciwlp .po-canentryform .po-checkbox br{display:none;}
  .ciwlp .po-canentryform .po-checkbox>div{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;flex:0 0 calc(50% - 3.5px);min-height:46px;background:#fff;border:1.5px solid var(--line);border-radius:8px;padding:11px 8px;font-size:12.5px;font-weight:600;line-height:1.3;cursor:pointer;transition:.12s;}
  .ciwlp .po-canentryform .po-checkbox>div:has(input:checked){border-color:var(--blue);background:var(--blue);color:#fff;}
  .ciwlp .po-canentryform .po-checkbox>div input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:2;}
  .ciwlp .po-canentryform .po-checkbox>div span{position:relative;}
  /* selected pills get a subtle check on the left for clarity */
  .ciwlp .po-canentryform .po-checkbox>div:has(input:checked)::before{content:"✓";position:absolute;left:7px;top:6px;font-size:11px;font-weight:900;color:#fff;line-height:1;z-index:1;}

  /* 希望勤務地は均一グリッド（4列）に */
  .ciwlp .po-canentryform .po-input[data-alias="Resume.U_9F6487F8D89C69175C22F362A32943"]>div{flex:0 0 calc(25% - 5.25px);padding:11px 4px;font-size:11.5px;}
  /* 保有資格を2列の均一タイルに（左寄り解消・希望勤務地と同系）*/

  /* 送信ボタン：金CTA化＋sticky＋文言差し替え */
  .ciwlp .po-webparts-container .po-buttons{margin-top:20px;}
  .ciwlp .po-webparts-container .po-button-send-outer,.ciwlp .po-webparts-container .po-button-send-inner{width:100%;display:block;}
  .ciwlp .po-webparts-container .po-button-send{display:block;width:100%;background:linear-gradient(180deg,#D4AC52,var(--red));color:#fff;border:none;border-radius:10px;padding:16px;cursor:pointer;box-shadow:0 6px 16px rgba(122,99,40,.4),0 3px 0 #7E6328;font-family:inherit;font-size:0;}
  .ciwlp .po-webparts-container .po-button-send::after{content:"無料でキャリア相談を申し込む";font-size:17px;font-weight:800;letter-spacing:.04em;}
  .ciwlp .po-webparts-container .po-button-send:active{transform:translateY(2px);box-shadow:0 3px 8px rgba(122,99,40,.35),0 1px 0 #7E6328;}


  /* ===== 送信完了（Portersが porterscloud の iframe に差し替える）===== */
  .ciwlp .po-webparts-container iframe{border:0;width:100%;display:block;min-height:60px;background:#fff;border-radius:8px;}
  .ciwlp .form-area.is-complete .agree-note{display:none;}
  .ciwlp .form-area.is-complete .po-buttons{display:none;}
  .ciwlp .lp-complete-head{display:flex;flex-direction:column;align-items:center;gap:10px;margin:8px 0 14px;text-align:center;animation:ciwlpFade .35s ease;}
  .ciwlp .lp-complete-head .ck{width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;font-size:30px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(44,97,82,.35);}
  .ciwlp .lp-complete-head .tt{font-size:18px;font-weight:800;color:var(--navy);}
  @keyframes ciwlpFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .ciwlp .agree-note{font-size:11px;text-align:center;margin:14px 0 4px;color:#41526A;}
  .ciwlp .agree-note a{color:var(--blue);font-weight:700;}
  .ciwlp .update-line{background:#fff;border-top:1px solid var(--line);text-align:center;font-size:12px;font-weight:700;color:var(--navy);padding:9px;margin-top:8px;}
  .ciwlp .update-line b{color:var(--orange);}
  .ciwlp footer{background:var(--navy-deep);color:#C2CCC0;font-size:11px;text-align:center;padding:16px 14px 24px;line-height:2;}
  .ciwlp footer .flinks{display:flex;justify-content:center;gap:16px;font-size:12px;}
  .ciwlp footer .flinks a{color:#fff;text-decoration:underline;}

  /* ===== 3ステップ・アコーディオン（minimap=進捗タブ／非アクティブ行は隠すが値は送信される）===== */
  .ciwlp .minimap div{cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;padding:2px 0 5px;border-bottom:2px solid transparent;transition:.15s;}
  .ciwlp .minimap .n{width:21px;height:21px;border-radius:50%;background:#E3DECF;color:#9B927D;font-size:11px;font-weight:800;font-style:normal;display:flex;align-items:center;justify-content:center;}
  .ciwlp .minimap div b{margin-top:0;color:#9B927D;font-weight:700;}
  .ciwlp .minimap div.acc-active{border-bottom-color:var(--gold);}
  .ciwlp .minimap div.acc-active .n{background:var(--navy);color:#fff;}
  .ciwlp .minimap div.acc-active b{color:var(--navy);}
  .ciwlp .minimap div.acc-done .n{background:var(--blue);color:#fff;}
  .ciwlp .minimap div.acc-done b{color:#5E7E70;}

  .ciwlp .acc-nav{display:flex;align-items:center;gap:10px;margin-top:18px;}
  .ciwlp .acc-back{flex:0 0 auto;background:#fff;border:1.5px solid var(--line);color:var(--navy);border-radius:9px;padding:13px 17px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;}
  .ciwlp .acc-next{flex:1 1 auto;background:linear-gradient(180deg,#357A67,var(--navy));color:#fff;border:none;border-radius:10px;padding:15px;font-size:15.5px;font-weight:800;font-family:inherit;letter-spacing:.03em;cursor:pointer;box-shadow:0 5px 14px rgba(30,68,56,.3),0 2px 0 #16352B;}
  .ciwlp .acc-next:active{transform:translateY(2px);box-shadow:0 2px 8px rgba(30,68,56,.3),0 1px 0 #16352B;}
  .ciwlp .acc-back:active{transform:translateY(1px);}

  /* ステップ表示制御：非アクティブ行は display:none（値はDOMに残るため送信される）*/
  .ciwlp .form-area[data-acc="1"] tr.po-single[data-step="2"],
  .ciwlp .form-area[data-acc="1"] tr.po-single[data-step="3"],
  .ciwlp .form-area[data-acc="2"] tr.po-single[data-step="1"],
  .ciwlp .form-area[data-acc="2"] tr.po-single[data-step="3"],
  .ciwlp .form-area[data-acc="3"] tr.po-single[data-step="1"],
  .ciwlp .form-area[data-acc="3"] tr.po-single[data-step="2"]{display:none !important;}
  /* 戻る/次へ/送信ボタンの出し分け */
  .ciwlp .form-area[data-acc="1"] .acc-back{display:none;}
  .ciwlp .form-area[data-acc="3"] .acc-nav{display:none;}
  .ciwlp .form-area[data-acc="1"] .po-buttons,
  .ciwlp .form-area[data-acc="2"] .po-buttons{display:none;}
  .ciwlp .form-area.is-complete .acc-nav{display:none;}
  /* 必須未入力のフラッシュ */
  .ciwlp td.acc-bad{outline:2px solid var(--err);outline-offset:3px;border-radius:8px;animation:ciwlpShake .42s;}
  @keyframes ciwlpShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}

  /* ===== 転職成功事例（Before/After・シャープ） ===== */
  .ciwlp .cases{background:#ECE7DD;padding:40px 18px 34px;}
  .ciwlp .cases-head{max-width:1000px;margin:0 auto 26px;text-align:center;}
  .ciwlp .cases-head h2{font-size:21px;font-weight:800;color:var(--navy);letter-spacing:.04em;}
  .ciwlp .cases-rule{width:42px;height:2px;background:var(--gold);margin:13px auto 0;}
  .ciwlp .cases-head p{font-size:12.5px;color:#6E6855;margin-top:12px;font-weight:500;}
  .ciwlp .cases-list{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
  .ciwlp .case{background:#fff;border:1px solid var(--line);padding:20px 22px 18px;}
  .ciwlp .case-who{display:flex;align-items:baseline;gap:11px;margin-bottom:16px;}
  .ciwlp .case-role{font-size:15.5px;font-weight:800;color:var(--navy);}
  .ciwlp .case-age{font-size:12px;color:#8A8166;}
  .ciwlp .case-ba{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;}
  .ciwlp .case-side{display:flex;flex-direction:column;min-width:0;}
  .ciwlp .case-before{opacity:.5;}
  .ciwlp .case-tag{font-size:9.5px;font-weight:800;letter-spacing:.14em;color:#9A927E;margin-bottom:7px;}
  .ciwlp .case-after .case-tag{color:var(--orange);}
  .ciwlp .case-amt{font-family:"Poppins",sans-serif;font-size:27px;font-weight:700;color:var(--navy);line-height:.95;font-variant-numeric:tabular-nums;}
  .ciwlp .case-before .case-amt{color:#7E766A;}
  .ciwlp .case-amt i{font-style:normal;font-size:13px;margin-left:2px;}
  .ciwlp .case-up{display:inline-block;margin-top:9px;font-family:"Poppins",sans-serif;font-size:12px;font-weight:700;color:var(--orange);}
  .ciwlp .case-arrow{color:var(--gold);flex:none;}
  .ciwlp .case-note{font-size:12px;color:#5A6B62;line-height:1.6;margin-top:18px;padding-top:15px;border-top:1px solid #EFE9DA;}
  .ciwlp .cases-disc{text-align:center;font-size:10.5px;color:#9A927E;margin:18px auto 0;max-width:1000px;line-height:1.5;}
  @media (min-width:920px){
    .ciwlp .cases{display:none;} /* PCは左カラムのダークカルーセルに集約 */
    .ciwlp .cases-head{margin-bottom:32px;}
    .ciwlp .cases-head h2{font-size:25px;}
    .ciwlp .cases-list{gap:16px;}
    .ciwlp .case{padding:24px 30px 22px;}
    .ciwlp .case-who{margin-bottom:18px;}
    .ciwlp .case-role{font-size:16px;}
    .ciwlp .case-ba{grid-template-columns:1fr auto 1.3fr;gap:28px;}
    .ciwlp .case-amt{font-size:31px;}
    .ciwlp .case-amt i{font-size:14px;}
    .ciwlp .case-note{font-size:12.5px;margin-top:20px;padding-top:16px;}
  }
  @media (max-width:380px){
    .ciwlp .case-ba{grid-template-columns:1fr;gap:12px;text-align:center;}
    .ciwlp .case-arrow{transform:rotate(90deg);justify-self:center;}
  }

  /* ===== 事例カルーセル（モバイル下部のみ・PCでは.casesごと非表示） ===== */
  .ciwlp .cz-viewport{overflow:hidden;}
  .ciwlp .cz-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1);}
  .ciwlp .cz-slide{flex:0 0 100%;box-sizing:border-box;display:flex;}
  .ciwlp .cz-slide>.case,.ciwlp .cz-slide>.czc{width:100%;display:flex;flex-direction:column;}
  .ciwlp .cz-slide>.case>.case-note,.ciwlp .cz-slide>.czc>.czc-note{margin-top:auto;}
  .ciwlp .cz-nav{display:flex;align-items:center;justify-content:center;gap:13px;margin-top:15px;}
  .ciwlp .cz-prev,.ciwlp .cz-next{width:33px;height:33px;border:1px solid;background:transparent;font-size:17px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s,background .15s;font-family:"Poppins",sans-serif;padding:0;}
  .ciwlp .cz-dots{display:flex;align-items:center;gap:7px;}
  .ciwlp .cz-dot{width:7px;height:7px;border:0;padding:0;cursor:pointer;border-radius:50%;transition:background .2s,width .2s;}
  .ciwlp .cz-dot.on{width:20px;border-radius:4px;}
  /* ライト（cream地・モバイル下部） */
  .ciwlp .cz-light{max-width:1000px;margin:0 auto;}
  .ciwlp .cz-light .cz-prev,.ciwlp .cz-light .cz-next{border-color:rgba(30,68,56,.28);color:var(--navy);}
  .ciwlp .cz-light .cz-prev:hover,.ciwlp .cz-light .cz-next:hover{border-color:var(--gold);color:var(--orange);background:rgba(201,162,75,.1);}
  .ciwlp .cz-light .cz-dot{background:rgba(30,68,56,.22);}
  .ciwlp .cz-light .cz-dot.on{background:var(--gold);}
  /* ===== FAQ（モバイル専用） ＋ フェードイン ＋ reduced-motion ===== */
  .ciwlp .faq{background:#ECE7DD;padding:16px 18px 36px;}
  .ciwlp .faq-head{text-align:center;margin:0 auto 20px;}
  .ciwlp .faq-head h2{font-size:20px;font-weight:800;color:var(--navy);letter-spacing:.05em;}
  .ciwlp .faq-rule{width:42px;height:2px;background:var(--gold);margin:13px auto 0;}
  .ciwlp .faq-list{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:10px;}
  .ciwlp .faq-item{background:#fff;border:1px solid var(--line);}
  .ciwlp .faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;font-size:13.5px;font-weight:800;color:var(--navy);line-height:1.55;}
  .ciwlp .faq-item summary::-webkit-details-marker{display:none;}
  .ciwlp .faq-ic{position:relative;flex:none;width:15px;height:15px;margin-top:2px;}
  .ciwlp .faq-ic::before,.ciwlp .faq-ic::after{content:"";position:absolute;background:var(--gold);transition:transform .25s ease;}
  .ciwlp .faq-ic::before{top:6.5px;left:0;width:15px;height:2px;}
  .ciwlp .faq-ic::after{top:0;left:6.5px;width:2px;height:15px;}
  .ciwlp .faq-item[open] .faq-ic::after{transform:scaleY(0);}
  .ciwlp .faq-a{padding:0 16px 16px;font-size:12.5px;line-height:1.8;color:#4A5852;}
  .ciwlp .faq-a p{margin:0;}
  @media (min-width:920px){.ciwlp .faq{display:none;}}
  /* フェードイン（JSが付与する .cz-anim 時のみ＝モバイル・motion許可時に限定。非JS/PC/reduced は常時表示） */
  .ciwlp.cz-anim .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;}
  .ciwlp.cz-anim .reveal.in{opacity:1;transform:none;}
  @media (prefers-reduced-motion:reduce){.ciwlp .cz-track{transition:none;}.ciwlp.cz-anim .reveal{opacity:1;transform:none;transition:none;}}

  /* ===== タブレット帯（640〜919px）：従来どおり480px幅カードを中央寄せ ===== */
  @media (min-width:640px){
    .ciwlp{background:#E7E2D4;padding:24px 0;}
    .ciwlp .frame{border-radius:14px;min-height:auto;}
  }

  /* ============================================================
     PC（920px〜）：2カラム　左=ブランド / 右=フォーム
     モバイルのDOM順（header→hero→form-intro→minimap→form）は維持したまま
     グリッドで横並びにするだけ。フォームは1個のまま。
     ============================================================ */
  @media (min-width:920px){
    .ciwlp{background:#EFEBE1;padding:32px 0 0;}
    .ciwlp .frame{max-width:none;border-radius:0;min-height:auto;overflow:hidden;box-shadow:none;border:0;}
    .ciwlp .lp-grid{display:grid;grid-template-columns:43% 57%;align-items:stretch;}

    /* ---- 左：ブランドパネル（ネイビー一面） ---- */
    .ciwlp .lp-brand{
      position:relative;overflow:hidden;
      background:
        radial-gradient(135% 95% at 16% 8%, rgba(255,255,255,.10), rgba(255,255,255,0) 52%),
        linear-gradient(150deg,rgba(16,39,31,.97),rgba(30,68,56,.93) 55%,rgba(44,97,82,.8)),
        repeating-linear-gradient(45deg,#1B3D32 0 14px,#173429 14px 28px);
      color:#fff;padding:40px 36px;display:flex;flex-direction:column;
    }
    .ciwlp .lp-brand>*{position:relative;z-index:1;width:100%;max-width:520px;margin-left:auto;margin-right:auto;}
    .ciwlp .lp-brand::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.09;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%271000%27%20height%3D%27340%27%20viewBox%3D%270%200%201000%20340%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%272%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M0%20338H1000%27%2F%3E%3Cpath%20d%3D%27M70%20338V172H180V338%27%2F%3E%3Cpath%20d%3D%27M70%20206H180M70%20240H180M70%20274H180M70%20308H180%27%2F%3E%3Cpath%20d%3D%27M205%20338V112H285V338%27%2F%3E%3Cpath%20d%3D%27M205%20152H285M205%20192H285M205%20232H285M205%20272H285M205%20312H285%27%2F%3E%3Cpath%20d%3D%27M310%20338V214H400V338%27%2F%3E%3Cpath%20d%3D%27M310%20250H400M310%20286H400M310%20322H400%27%2F%3E%3Cpath%20d%3D%27M470%20338V72%27%2F%3E%3Cpath%20d%3D%27M382%2094H700%27%2F%3E%3Cpath%20d%3D%27M470%2072L700%2094M470%2072L382%2094%27%2F%3E%3Cpath%20d%3D%27M642%2094V152%27%2F%3E%3Cpath%20d%3D%27M630%20152H654%27%2F%3E%3Cpath%20d%3D%27M452%2094H492V110H452Z%27%2F%3E%3Cpath%20d%3D%27M745%20338V150H835V338%27%2F%3E%3Cpath%20d%3D%27M745%20186H835M745%20222H835M745%20258H835M745%20294H835M745%20326H835%27%2F%3E%3Cpath%20d%3D%27M860%20338V224H935V338%27%2F%3E%3Cpath%20d%3D%27M860%20260H935M860%20296H935%27%2F%3E%3C%2Fsvg%3E") no-repeat center bottom;background-size:100% auto;}
    .ciwlp .lp-brand header{background:transparent;border:0;padding:0;margin-bottom:30px;}
    .ciwlp .lp-brand .logo{color:#fff;font-size:22px;}
    .ciwlp .lp-brand .logo-sub{color:#AEBDB3;font-size:11.5px;}
    .ciwlp .lp-brand .biz-cta{background:transparent;border-color:rgba(255,255,255,.42);padding:7px 13px;}
    .ciwlp .lp-brand .biz-cta-sub{color:#AEBDB3;font-size:9px;}
    .ciwlp .lp-brand .biz-cta-main{color:#fff;font-size:11.5px;}
    .ciwlp .lp-brand .biz-cta-main i{color:var(--gold);font-size:14px;}
    .ciwlp .lp-brand .biz-cta:hover{background:var(--gold);border-color:var(--gold);}
    .ciwlp .lp-brand .biz-cta:hover .biz-cta-sub{color:rgba(255,255,255,.9);}
    .ciwlp .lp-brand .biz-cta:hover .biz-cta-main{color:#fff;}
    .ciwlp .lp-brand .biz-cta:hover .biz-cta-main i{color:#fff;}
    .ciwlp .lp-brand .hero{background:transparent;padding:0;overflow:visible;}
    .ciwlp .lp-brand .hero::after{display:none;}
    .ciwlp .lp-brand .hero-flag{font-size:12px;margin-bottom:15px;}
    .ciwlp .lp-brand .hero h1{font-size:28px;line-height:1.38;}
    .ciwlp .lp-brand .hero-cats{font-size:13px;margin-top:11px;color:#D7DECF;}
    .ciwlp .lp-brand .hero-meta{display:none;} /* PCではlp-trustに集約 */

    .ciwlp .lp-trust{display:flex;flex-direction:column;gap:20px;margin-top:48px;}
    .ciwlp .lp-trust-item{display:flex;gap:14px;align-items:flex-start;}
    .ciwlp .lp-trust-ic{flex:none;width:38px;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;color:#D7DECF;padding:8px;}
    .ciwlp .lp-trust-ic svg{display:block;width:100%;height:100%;}
    .ciwlp .lp-trust-tx{flex:1;min-width:0;}
    .ciwlp .lp-trust-tx>b{display:block;font-size:15px;font-weight:800;color:#fff;line-height:1.34;}
    .ciwlp .lp-trust-tx>span{display:block;font-size:12.5px;color:#AEBDB3;margin-top:5px;}
    .ciwlp .lp-trust-tx>span b{display:inline;font-size:inherit;font-weight:800;color:#fff;border-bottom:2px solid var(--gold);padding-bottom:1px;}

    /* ---- PC左カラム下部：取引先ロゴ（濃紺パネルに白カード・2段千鳥スライド。成功事例カルーセルの代わりに配置） ---- */
    .ciwlp .ciw-logo-slider--band{display:none;} /* PCは左カラムのロゴスライダーに集約 */
    .ciwlp .ciw-logo-slider.ciw-logo-slider--hero{
      display:block;margin-top:auto;padding:28px 0 0;background-color:transparent;overflow:visible;
    }
    .ciwlp .ciw-logo-slider--hero .ciw-logo-slider__head{text-align:left;margin-bottom:14px;padding:0;}
    .ciwlp .ciw-logo-slider--hero .ciw-logo-slider__title{color:#fff;font-size:12px;font-weight:800;letter-spacing:.1em;padding-left:11px;border-left:3px solid var(--gold);}
    .ciwlp .ciw-logo-slider--hero .ciw-logo-slider__item{width:158px;height:72px;background-color:#fff;background-origin:content-box;padding:11px 15px;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.18);}

    /* ---- 右：フォームパネル（クリーム地に申込カード） ---- */
    .ciwlp .lp-action{background:var(--bg);padding:26px 32px 0;}
    .ciwlp .lp-action .form-intro{border-radius:0;}
    .ciwlp .lp-action .form-area{padding:12px 0 0;} /* 左右paddingはパネル側に任せて二重化を防ぐ */

    /* ---- 1画面に収めるための高密度化（PCのみ：選択肢を3列化＋余白を圧縮）---- */
    .ciwlp .po-canentryform tr.po-single{margin:0 0 12px;}
    .ciwlp .po-canentryform .po-input[data-alias]::before,
    .ciwlp .po-canentryform .po-injected-label{margin:0 0 6px;}
    .ciwlp .po-canentryform .po-checkbox{gap:6px;}
    .ciwlp .po-canentryform .po-checkbox>div{flex:0 0 calc(33.333% - 4px);min-height:40px;padding:8px;font-size:11.5px;}
    .ciwlp .po-canentryform .po-input[data-alias="Resume.U_9F6487F8D89C69175C22F362A32943"]>div{flex:0 0 calc(25% - 4.5px);} /* 希望勤務地のみ4列維持 */
    .ciwlp .po-canentryform .po-input>input[type=text]{padding:9px 11px;font-size:14px;}
    .ciwlp .po-canentryform .po-dropdown select{padding:9px 11px;font-size:14px;}
    .ciwlp .acc-nav{margin-top:14px;}
    .ciwlp .po-webparts-container .po-button-send{padding:14px;}
    .ciwlp .po-webparts-container .po-button-send::after{font-size:16px;}

    /* ---- 下部：2カラムの下に全幅で配置 ---- */
    .ciwlp .update-line{margin-top:0;}
  }
