body.lp-harima,
.harima-lp{
    --royal:#1B2F73;
    --royal-deep:#121F52;
    --royal-bright:#2F49B0;
    --ink:#1A1D24;
    --paper:#FBFAF7;
    --paper-card:#FFFFFF;
    --safety:#E8A33D;
    --line:#1B2F73;
    --line-soft:#D8D5CC;
    --muted:#5D6070;
  }
.harima-lp,
.harima-lp *{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.lp-harima{
    margin:0;
    font-family:"Noto Sans JP",sans-serif;
    color:var(--ink);
    background:var(--paper);
    line-height:1.8;
    -webkit-font-smoothing:antialiased;
  }
.harima-lp img{max-width:100%;display:block;}
.harima-lp a{color:inherit;text-decoration:none;}
.harima-lp .serif{font-family:"Noto Serif JP",serif;}
.harima-lp .eyebrow{
    font-family:"Oswald",sans-serif;
    letter-spacing:.2em;
    font-size:11.5px;
    font-weight:600;
    color:var(--royal-bright);
    text-transform:uppercase;
  }
.harima-lp .wrap{max-width:1080px;margin:0 auto;padding:0 32px;}
.harima-lp section{position:relative;}
.harima-lp .rule{border-top:1px solid var(--line);}
.harima-lp .rule-soft{border-top:1px solid var(--line-soft);}
/* ===== Header ===== */
.harima-lp header{
    background:var(--paper);
    border-bottom:2px solid var(--line);
  }
.harima-lp .header-top{
    max-width:1080px;margin:0 auto;padding:14px 32px 10px;
    display:flex;justify-content:space-between;align-items:center;
    font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.1em;color:var(--muted);
    border-bottom:1px solid var(--line-soft);
  }
.harima-lp .header-main{
    max-width:1080px;margin:0 auto;padding:22px 32px 20px;
    display:flex;align-items:center;justify-content:space-between;
  }
.harima-lp .brand{display:flex;align-items:center;gap:14px;}
.harima-lp .brand-mark{width:40px;height:40px;flex-shrink:0;}
.harima-lp .brand-name{font-size:22px;font-weight:900;letter-spacing:.02em;}
.harima-lp .brand-name small{display:block;font-size:10px;font-weight:500;color:var(--muted);letter-spacing:.1em;font-family:"Oswald",sans-serif;margin-top:2px;}
.harima-lp nav{display:flex;gap:30px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line);}
.harima-lp nav .wrap{display:flex;gap:30px;}
.harima-lp nav a{
    font-size:13.5px;font-weight:700;color:var(--ink);
    padding:14px 0;display:inline-block;position:relative;
  }
.harima-lp nav a.apply-nav{color:var(--royal-bright);}
/* ===== Hero (no stripe band) ===== */
.harima-lp .hero{padding:64px 0 80px;background:var(--paper);}
.harima-lp .hero-inner{
    display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:start;
  }
.harima-lp .hero-tag{
    font-family:"Oswald",sans-serif;font-size:12px;letter-spacing:.16em;
    color:var(--royal-bright);margin-bottom:18px;display:block;font-weight:600;
  }
.harima-lp .hero h1{
    font-family:"Noto Serif JP",serif;
    font-size:40px;font-weight:900;line-height:1.55;letter-spacing:.01em;
    margin-bottom:26px;color:var(--ink);
  }
.harima-lp .hero h1 em{
    font-style:normal;color:var(--royal);
    border-bottom:3px solid var(--safety);
  }
.harima-lp .hero p.lead{
    font-size:15.5px;color:var(--muted);max-width:480px;margin-bottom:32px;
  }
.harima-lp .hero-actions{display:flex;gap:14px;flex-wrap:wrap;}
.harima-lp .btn{
    display:inline-flex;align-items:center;gap:10px;
    font-weight:700;font-size:14.5px;letter-spacing:.02em;
    padding:15px 28px;border-radius:2px;
    transition:background .15s ease, color .15s ease;
  }
.harima-lp .btn-primary{background:var(--royal);color:#fff;}
.harima-lp .btn-primary:hover{background:var(--royal-deep);}
.harima-lp .btn-ghost{border:1px solid var(--line);color:var(--ink);}
.harima-lp .btn-ghost:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.harima-lp .hero-figure{
    border:1px solid var(--line-soft);
    background:var(--paper-card);
    padding:28px;
  }
.harima-lp .hero-figure .cap{
    font-family:"Oswald",sans-serif;font-size:10.5px;letter-spacing:.12em;
    color:var(--muted);margin-top:14px;text-align:center;
  }
/* ===== Section heading ===== */
.harima-lp .sec-head{margin-bottom:44px;}
.harima-lp .sec-head .eyebrow{margin-bottom:10px;display:block;}
.harima-lp .sec-head h2{
    font-family:"Noto Serif JP",serif;
    font-size:27px;font-weight:900;letter-spacing:.01em;
  }
/* ===== About ===== */
.harima-lp .about{padding:88px 0;}
.harima-lp .about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;}
.harima-lp .about-lead p{font-size:15px;color:var(--muted);margin-bottom:16px;}
.harima-lp .strength-list{display:flex;flex-direction:column;}
.harima-lp .strength-item{
    display:grid;grid-template-columns:36px 1fr;gap:18px;
    padding:24px 0;border-top:1px solid var(--line-soft);
  }
.harima-lp .strength-item:last-child{border-bottom:1px solid var(--line-soft);}
.harima-lp .strength-mark{
    font-family:"Noto Serif JP",serif;font-size:18px;font-weight:700;color:var(--royal);
  }
.harima-lp .strength-item h3{font-size:16px;font-weight:700;margin-bottom:6px;}
.harima-lp .strength-item p{font-size:13.5px;color:var(--muted);}
/* ===== Scope (no dark band, paper style) ===== */
.harima-lp .scope{padding:88px 0;background:var(--paper-card);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);}
.harima-lp .scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);}
.harima-lp .scope-card{padding:32px 28px;border-right:1px solid var(--line);}
.harima-lp .scope-card:last-child{border-right:none;}
.harima-lp .scope-card .tag{font-family:"Oswald",sans-serif;font-size:11px;color:var(--royal-bright);letter-spacing:.12em;margin-bottom:12px;display:block;}
.harima-lp .scope-card h3{font-family:"Noto Serif JP",serif;font-size:18px;font-weight:700;margin-bottom:10px;}
.harima-lp .scope-card p{font-size:13.5px;color:var(--muted);}
/* ===== Recruit ===== */
.harima-lp .recruit{padding:88px 0;}
.harima-lp .job-list{display:flex;flex-direction:column;}
.harima-lp .job-card{
    display:grid;grid-template-columns:120px 1fr auto auto;gap:22px;align-items:center;
    padding:22px 0;border-top:1px solid var(--line-soft);
    width:100%;background:none;border-left:none;border-right:none;border-bottom:none;
    cursor:pointer;font-family:inherit;text-align:left;
  }
.harima-lp .job-card:last-of-type{border-bottom:1px solid var(--line-soft);}
.harima-lp .job-card:hover .job-title{color:var(--royal-bright);}
.harima-lp .job-badge{
    font-family:"Oswald",sans-serif;font-size:11px;font-weight:600;letter-spacing:.04em;
    color:var(--royal);
  }
.harima-lp .job-title{font-size:15px;font-weight:700;transition:color .15s ease;}
.harima-lp .job-title span{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:4px;}
.harima-lp .job-pay{font-family:"Oswald",sans-serif;font-size:17px;font-weight:600;color:var(--ink);white-space:nowrap;}
.harima-lp .job-pay small{font-family:"Noto Sans JP",sans-serif;font-size:10.5px;color:var(--muted);display:block;font-weight:500;}
.harima-lp .job-link{
    font-size:12.5px;font-weight:700;color:var(--royal-bright);white-space:nowrap;
    display:flex;align-items:center;gap:6px;
  }
.harima-lp .job-link .chev{
    display:inline-block;width:8px;height:8px;border-right:2px solid var(--royal-bright);border-bottom:2px solid var(--royal-bright);
    transform:rotate(45deg);transition:transform .25s ease;
  }
.harima-lp .job-card[aria-expanded="true"] .job-link .chev{transform:rotate(-135deg);}
.harima-lp .job-detail{
    max-height:0;overflow:hidden;
    transition:max-height .35s ease;
    background:var(--paper);
    border-bottom:1px solid var(--line-soft);
  }
.harima-lp .job-detail.open{max-height:600px;}
.harima-lp .job-detail .wrap{padding:0 32px;}
.harima-lp .job-detail-inner{padding:6px 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.harima-lp .jd-block h4{
    font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.1em;color:var(--royal-bright);
    margin-bottom:10px;text-transform:uppercase;
  }
.harima-lp .jd-block p,
.harima-lp .jd-block li{font-size:13.5px;color:var(--ink);}
.harima-lp .jd-block ul{list-style:none;display:flex;flex-direction:column;gap:6px;}
.harima-lp .jd-block li{position:relative;padding-left:16px;}
.harima-lp .jd-block li::before{content:"—";position:absolute;left:0;color:var(--safety);font-weight:700;}
.harima-lp .jd-cta{
    grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;
    margin-top:8px;padding-top:18px;border-top:1px solid var(--line-soft);flex-wrap:wrap;gap:14px;
  }
.harima-lp .jd-cta .jd-note{font-size:12px;color:var(--muted);}
.harima-lp .jd-cta .btn{padding:12px 24px;font-size:13.5px;}
.harima-lp .pay-table{margin-top:52px;}
.harima-lp .pay-table-head{
    display:flex;align-items:baseline;justify-content:space-between;
    border-bottom:2px solid var(--line);padding-bottom:10px;margin-bottom:0;
  }
.harima-lp .pay-table-head h4{font-family:"Noto Serif JP",serif;font-size:16px;font-weight:700;}
.harima-lp .pay-row{
    display:grid;grid-template-columns:1.3fr 1fr;
    border-bottom:1px solid var(--line-soft);
  }
.harima-lp .pay-row div{padding:14px 4px;font-size:13.5px;}
.harima-lp .pay-row div:first-child{color:var(--muted);}
.harima-lp .pay-row div:last-child{font-weight:700;text-align:right;font-family:"Oswald",sans-serif;font-size:15px;}
/* ===== Voice ===== */
.harima-lp .voice{padding:88px 0;background:var(--paper-card);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);}
.harima-lp .voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
.harima-lp .voice-card{padding:0 28px;border-right:1px solid var(--line-soft);}
.harima-lp .voice-card:first-child{padding-left:0;}
.harima-lp .voice-card:last-child{border-right:none;padding-right:0;}
.harima-lp .voice-quote{font-family:"Noto Serif JP",serif;font-size:14.5px;color:var(--ink);margin-bottom:18px;min-height:96px;line-height:1.9;}
.harima-lp .voice-name{font-size:12.5px;font-weight:700;color:var(--royal);}
.harima-lp .voice-role{font-size:11.5px;color:var(--muted);}
/* ===== Company ===== */
.harima-lp .company{padding:88px 0;}
.harima-lp .company-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;}
.harima-lp .company-table div{
    display:grid;grid-template-columns:110px 1fr;
    border-top:1px solid var(--line-soft);
  }
.harima-lp .company-table div:first-child{border-top:1px solid var(--line);}
.harima-lp .company-table div:last-child{border-bottom:1px solid var(--line-soft);}
.harima-lp .company-table dt,
.harima-lp .company-table dd{padding:15px 0;font-size:13.5px;}
.harima-lp .company-table dt{color:var(--muted);font-weight:700;}
.harima-lp .map-fake{
    border:1px solid var(--line-soft);min-height:280px;position:relative;
    background:
      linear-gradient(0deg, rgba(27,47,115,.06) 1px, transparent 1px) 0 0/100% 36px,
      linear-gradient(90deg, rgba(27,47,115,.06) 1px, transparent 1px) 0 0/36px 100%,
      var(--paper-card);
  }
.harima-lp .map-pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);}
.harima-lp .map-pin .pin-dot{width:16px;height:16px;background:var(--royal);border-radius:50% 50% 50% 0;transform:rotate(-45deg);}
.harima-lp .map-cap{font-family:"Oswald",sans-serif;font-size:10.5px;color:var(--muted);letter-spacing:.1em;margin-top:10px;}
/* ===== Apply (light, no badge) ===== */
.harima-lp .apply{padding:96px 0;background:var(--paper-card);border-top:1px solid var(--line-soft);}
.harima-lp .apply-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;}
.harima-lp .apply-left h2{font-family:"Noto Serif JP",serif;font-size:27px;font-weight:900;margin-bottom:16px;}
.harima-lp .apply-left p{font-size:14px;color:var(--muted);max-width:340px;}
.harima-lp .apply-form{border:1px solid var(--line);padding:32px;}
.harima-lp .apply-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.harima-lp .apply-form label{font-size:11.5px;color:var(--muted);display:block;margin-bottom:6px;letter-spacing:.03em;}
.harima-lp .apply-form input,
.harima-lp .apply-form select{
    width:100%;padding:11px 12px;border:1px solid var(--line-soft);
    background:var(--paper);color:var(--ink);font-size:13.5px;font-family:inherit;
  }
.harima-lp .apply-form input:focus,
.harima-lp .apply-form select:focus{outline:none;border-color:var(--royal);}
.harima-lp .apply-form .full{grid-column:1/-1;}
.harima-lp .apply-form .submit-btn{
    width:100%;margin-top:6px;background:var(--royal);color:#fff;
    font-weight:700;padding:15px;border:none;font-size:14.5px;cursor:pointer;
  }
.harima-lp .apply-form .submit-btn:hover{background:var(--royal-deep);}
.harima-lp .apply-note{font-size:11px;color:var(--muted);margin-top:14px;}
/* ===== Footer ===== */
.harima-lp footer{background:var(--paper);border-top:2px solid var(--line);padding:40px 0 24px;}
.harima-lp .footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;}
.harima-lp .footer-brand{display:flex;align-items:center;gap:12px;}
.harima-lp .footer-brand .brand-mark{width:26px;height:26px;}
.harima-lp .footer-links{display:flex;gap:26px;font-size:12.5px;}
.harima-lp .footer-bottom{
    border-top:1px solid var(--line-soft);margin-top:28px;padding-top:18px;
    font-size:11.5px;color:var(--muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
  }
@media (max-width:860px){
.harima-lp .wrap{padding:0 20px;}
.harima-lp .header-top,
.harima-lp .header-main{padding-left:20px;padding-right:20px;}
.harima-lp nav .wrap{padding:0 20px;overflow-x:auto;gap:20px;}
.harima-lp .hero-inner{grid-template-columns:1fr;}
.harima-lp .hero h1{font-size:28px;}
.harima-lp .about-grid{grid-template-columns:1fr;gap:36px;}
.harima-lp .scope-grid{grid-template-columns:1fr;}
.harima-lp .scope-card{border-right:none;border-bottom:1px solid var(--line);}
.harima-lp .scope-card:last-child{border-bottom:none;}
.harima-lp .job-card{grid-template-columns:1fr;gap:8px;}
.harima-lp .job-detail-inner{grid-template-columns:1fr;gap:20px;}
.harima-lp .job-detail.open{max-height:900px;}
.harima-lp .voice-grid{grid-template-columns:1fr;gap:28px;}
.harima-lp .voice-card{border-right:none;padding:0;}
.harima-lp .company-grid{grid-template-columns:1fr;}
.harima-lp .apply-inner{grid-template-columns:1fr;}
.harima-lp .apply-form .form-row{grid-template-columns:1fr;}
}

/* Header CTA */
.harima-lp .header-apply-btn{padding:13px 24px;font-size:13.5px;}
