/* 業界ニュース セクション（首页 / /news 共用）。変数は .hn にスコープして自己完結。 */
.hn{
  --hn-ink:#0f172a;--hn-ink2:#334155;--hn-mut:#64748b;--hn-line:#e9edf1;
  --hn-mint:#00b589;--hn-mint-deep:#00956f;--hn-mint-ink:#00734f;--hn-mint-light:#ecfdf5;
  --hn-fd:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;--hn-mono:"DM Sans",ui-monospace,monospace;
  background:linear-gradient(180deg,#ffffff 0%,#f6f9f8 100%);border-top:1px solid var(--hn-line);border-bottom:1px solid var(--hn-line);position:relative;color:var(--hn-ink);
}
.hn a{ text-decoration:none !important; }
.hn::before{ content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#00b589,#00956f 45%,#f5b942); }
.hn-in{ max-width:1180px;margin:0 auto;padding:1.8rem 1.5rem 2.1rem; }
.hn-head{ display:flex;align-items:center;gap:.7rem;margin-bottom:1.3rem;flex-wrap:wrap; }
.hn-title{ font-family:var(--hn-fd);font-size:1.3rem;font-weight:900;color:var(--hn-ink);display:flex;align-items:center;gap:.55rem;letter-spacing:.01em; }
.hn-title svg{ width:1.2rem;height:1.2rem;color:var(--hn-mint-deep); }
.hn-badge{ font-size:.62rem;font-weight:800;color:var(--hn-mint-ink);background:var(--hn-mint-light);border:1px solid #bbf7d0;border-radius:999px;padding:.18rem .6rem;letter-spacing:.05em; }
.hn-src{ font-size:.72rem;color:var(--hn-mut); }
.hn-more{ margin-left:auto;font-size:.82rem;font-weight:800;color:var(--hn-mint-ink);display:inline-flex;align-items:center;gap:.25rem; }
.hn-body{ display:grid;grid-template-columns:1.08fr 1fr;gap:1.6rem;align-items:stretch; }

.hn-tag{ display:inline-flex;font-size:.6rem;font-weight:800;padding:.14rem .5rem;border-radius:999px;border:1px solid;letter-spacing:.02em;white-space:nowrap; }
.hn-tag--policy{ background:#f0fdfa;color:#0d9488;border-color:#99f6e4; }
.hn-tag--market{ background:#fffbeb;color:#d97706;border-color:#fde68a; }
.hn-tag--storage{ background:#f5f3ff;color:#7c3aed;border-color:#ddd6fe; }
.hn-tag--tech{ background:#ecfdf5;color:#00956f;border-color:#bbf7d0; }
.hn-tag--general{ background:#f1f5f9;color:#64748b;border-color:#e2e8f0; }

.hn-featcol{ display:flex;flex-direction:column;gap:1.1rem; }
.hn-featcol .hn-feat{ flex:1; }
.hn-feat{ position:relative;background:#fff;border:1px solid var(--hn-line);border-radius:18px;padding:1.4rem 1.6rem;display:flex;flex-direction:column;overflow:hidden;transition:transform .15s,box-shadow .15s; }
.hn-feat::before{ content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--hn-mint),var(--hn-mint-deep)); }
.hn-feat:hover{ transform:translateY(-3px);box-shadow:0 26px 50px -32px rgba(15,23,42,.5); }
.hn-feat-top{ display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem; }
.hn-latest{ font-size:.62rem;font-weight:800;color:#fff;background:var(--hn-mint-deep);border-radius:999px;padding:.18rem .65rem;letter-spacing:.05em; }
.hn-feat h3{ font-family:var(--hn-fd);font-size:1.18rem;font-weight:900;line-height:1.5;color:var(--hn-ink);margin:0; }
.hn-feat-sum{ font-size:.85rem;color:var(--hn-ink2);line-height:1.75;margin:.8rem 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden; }
.hn-feat-foot{ display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.9rem;border-top:1px solid #f1f5f4; }
.hn-feat .src{ font-size:.76rem;color:var(--hn-mut);display:flex;align-items:center;gap:.4rem; } .hn-feat .src .d{ font-family:var(--hn-mono);font-weight:700; }
.hn-feat .read{ font-size:.84rem;font-weight:800;color:var(--hn-mint-ink);display:inline-flex;align-items:center;gap:.35rem; } .hn-feat .read svg{ width:.85rem;height:.85rem; }

.hn-list{ display:flex;flex-direction:column;background:#fff;border:1px solid var(--hn-line);border-radius:18px;padding:.4rem .5rem; }
.hn-row{ display:flex;gap:.85rem;align-items:flex-start;padding:.8rem .8rem;border-radius:12px;transition:background .12s; }
.hn-row + .hn-row{ border-top:1px solid #f1f5f4; }
.hn-row:hover{ background:var(--hn-mint-light); }
.hn-row .date{ font-family:var(--hn-mono);font-size:.7rem;color:var(--hn-mut);font-weight:700;padding-top:.15rem;white-space:nowrap; }
.hn-row .rh{ flex:1;min-width:0; }
.hn-row .rt{ font-size:.87rem;font-weight:700;color:var(--hn-ink);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
.hn-row:hover .rt{ color:var(--hn-mint-ink); }
.hn-row .rm{ display:flex;align-items:center;gap:.45rem;margin-top:.4rem; }
.hn-row .rm .rsrc{ font-size:.66rem;color:var(--hn-mut); }
.hn-row .arw{ align-self:center;color:#cbd5e1;flex-shrink:0;transition:color .12s,transform .12s; }
.hn-row:hover .arw{ color:var(--hn-mint-deep);transform:translateX(2px); }
.hn-row .arw svg{ width:.9rem;height:.9rem; }

.hn-foot{ max-width:1180px;margin:0 auto;padding:1rem 1.5rem 0;font-size:.68rem;color:var(--hn-mut);line-height:1.6; }

@media(max-width:920px){ .hn-body{ grid-template-columns:1fr; } }
