.lead{color:var(--dim); font-size:15px; max-width:700px; margin-bottom:40px;}

.page-hero::after{content:""; position:absolute; top:-30%; right:-6%; width:520px; height:520px; border-radius:50%; background:radial-gradient(circle, rgba(108,47,133,.15), transparent 65%);}
.page-hero p{color:var(--dim); font-size:15px; max-width:620px;}

/* IR/PR News — thumbnail cards */
.news{padding:16px 0 44px;}
.news-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:10px; flex-wrap:wrap; gap:16px;}
.news-head > div{width:100%;}
.filters{display:flex; gap:10px; margin-bottom:40px; flex-wrap:wrap;}
.filter-btn{border:1px solid var(--line-soft); color:var(--dim); padding:8px 18px; font-size:12.5px; font-family:'Noto Sans JP', sans-serif; border-radius:20px; transition:.2s; background:none; cursor:pointer;}
.filter-btn.active, .filter-btn:hover{background:var(--purple); color:#fff; border-color:var(--purple);}

.news-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px; scroll-margin-top:110px;}
.news-card{border:1.5px solid var(--purple); border-radius:14px; overflow:hidden; transition:.3s; display:block; background:#fff;}
.news-card:hover{transform:translateY(-4px); box-shadow:0 16px 34px rgba(108,47,133,.28);}
.news-thumb{aspect-ratio:1200/630; overflow:hidden; position:relative; background:linear-gradient(155deg,#F5F1FA,#fff); border-bottom:1px solid var(--line-soft);}
.news-thumb img{width:100%; height:100%; object-fit:contain; display:block;}
.news-thumb::before{content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(108,47,133,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(108,47,133,.08) 1px, transparent 1px); background-size:24px 24px; opacity:1;}
.news-thumb.has-img::before{display:none;}
.news-thumb-fallback{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:34px;}
.news-info{padding:22px;}
.news-cat{display:inline-block; font-family:'Noto Sans JP', sans-serif; font-size:10.5px; color:var(--purple); border:1px solid var(--line-soft); padding:5px 10px; border-radius:2px; letter-spacing:.04em; margin-bottom:14px;}
.news-cat.press{color:var(--coral);}
.news-title{font-size:14.5px; font-weight:600; line-height:1.6; margin-bottom:14px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.news-date{font-family:'Noto Sans JP', sans-serif; font-size:11.5px; color:var(--dim);}
.news-empty{padding:60px 0; text-align:center; color:var(--dim); font-family:'Noto Sans JP', sans-serif; font-size:13px;}

.news-pagination{display:flex; justify-content:center; align-items:center; gap:8px; margin-top:44px; flex-wrap:wrap;}
.news-pagination button{font-family:'Noto Sans JP', sans-serif; font-size:13px; min-width:36px; height:36px; padding:0 4px; border:1px solid var(--line-soft); border-radius:6px; background:#fff; color:var(--dim); cursor:pointer; transition:.2s;}
.news-pagination button:hover:not(:disabled){border-color:var(--purple); color:var(--purple);}
.news-pagination button.active{background:var(--purple); border-color:var(--purple); color:#fff;}
.news-pagination button:disabled{opacity:.35; cursor:default;}

/* note preview (shared card styles, matching index.html) */
.section-block{padding:16px 0 44px;}
.section-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:10px; flex-wrap:wrap; gap:16px;}
.section-head > div{width:100%;}

.note-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:24px;}
.note-card{border:1.5px solid var(--purple); border-radius:14px; overflow:hidden; transition:.3s; display:block; background:#fff;}
.note-card:hover{transform:translateY(-4px); box-shadow:0 16px 34px rgba(108,47,133,.28);}
.note-thumb{aspect-ratio:1200/630; overflow:hidden; position:relative; background:linear-gradient(155deg,#F5F1FA,#fff); border-bottom:1px solid var(--line-soft);}
.note-thumb img{width:100%; height:100%; object-fit:contain; display:block;}
.note-info{padding:22px;}
.note-title{font-size:14.5px; font-weight:600; line-height:1.6; margin-bottom:14px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.note-date{font-family:'Noto Sans JP', sans-serif; font-size:11.5px; color:var(--dim);}
.note-badge{display:inline-flex; align-items:center; gap:6px; font-family:'Noto Sans JP', sans-serif; font-size:10.5px; color:var(--green); margin-bottom:12px; letter-spacing:.05em;}
.note-badge::before{content:"note"; font-weight:700; background:var(--text); color:#fff; padding:2px 7px; border-radius:3px; font-size:10px;}

.more-row{display:flex; justify-content:center; gap:14px; margin-top:28px; flex-wrap:wrap;}
.more-btn, .more-btn.green{
  font-family:'Noto Sans JP', sans-serif; font-size:13px; font-weight:700;
  border-radius:999px; border:1.5px solid var(--purple);
  background:var(--purple); color:#fff; padding:12px 30px; cursor:pointer; transition:.2s;
}
.more-btn:hover, .more-btn.green:hover{
  background:#fff; color:var(--purple); border-color:var(--purple);
  transform:translateY(-2px);
}

@media(max-width:900px){
  .news-grid{grid-template-columns:1fr;}
  .note-grid{grid-template-columns:1fr;}
  .news{padding:16px 0 50px;}
  .section-block{padding:20px 0 50px;}
  .news-grid, .note-grid{gap:20px; margin-top:24px;}
  .news-thumb, .note-thumb{aspect-ratio:1200/630;}
  .filters{margin-bottom:26px;}
  .news-pagination{margin-top:28px;}
  .more-row{margin-top:28px;}
}
