/* トップページのお知らせ専用デザイン：既存CSSの後で読み込む */
.news-section { margin: 26px 0 46px; padding: 0; color: #454545; }
.news-section, .news-section * { box-sizing: border-box; }
.news-section .news-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; border-bottom:2px solid #b09c53; padding:0 0 17px; margin-bottom:12px; }
.news-section .news-eyebrow { display:block; color:#9d8845; font:700 12px/1.4 Arial,sans-serif; letter-spacing:.2em; margin-bottom:6px; }
.news-section .news-heading h2 { margin:0; color:#343434; font-size:25px; line-height:1.5; font-weight:700; }
.news-section .news-heading-mark { color:#ded8c7; font:700 35px/1 Arial,sans-serif; letter-spacing:.08em; }
.news-section .news-list { display:grid; gap:10px; }
.news-section .news-item { display:flex; align-items:center; gap:20px; padding:22px 24px; border:1px solid #e7e4db; border-left:4px solid #b09c53; background:#fff; border-radius:6px; text-decoration:none; color:inherit; box-shadow:0 3px 12px rgba(40,35,20,.04); transition:transform .18s,box-shadow .18s,border-color .18s; }
.news-section .news-item:hover, .news-section .news-item:focus-visible { transform:translateY(-2px); box-shadow:0 8px 22px rgba(40,35,20,.12); border-color:#b09c53; }
.news-section .news-category { flex:0 0 96px; text-align:center; background:#f3edda; color:#806c34; border-radius:3px; padding:8px 5px; font-size:12px; font-weight:700; white-space:nowrap; }
.news-section .news-category--care { background:#eaf2ee; color:#48745b; }
.news-section .news-content { flex:1; min-width:0; display:flex; flex-direction:column; gap:7px; }
.news-section .news-content strong { font-size:17px; line-height:1.5; color:#333; }
.news-section .news-description { font-size:13px; line-height:1.65; color:#777; }
.news-section .news-arrow { flex:0 0 34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#f7f4eb; color:#8c783e; font-size:20px; }
.news-section .news-note { margin:12px 2px 0; text-align:right; color:#777; font-size:12px; }
.news-section .sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media (max-width:767px) { .news-section { margin:18px 0 34px; } .news-section .news-heading h2 { font-size:20px; } .news-section .news-heading-mark { font-size:22px; } .news-section .news-item { padding:16px; gap:12px; align-items:flex-start; flex-wrap:wrap; } .news-section .news-category { flex:0 0 auto; padding:5px 9px; } .news-section .news-content { flex-basis:calc(100% - 110px); } .news-section .news-content strong { font-size:15px; } .news-section .news-arrow { margin-left:auto; flex-basis:28px; height:28px; font-size:17px; } }
@media (max-width:420px) { .news-section .news-heading-mark { display:none; } .news-section .news-item { position:relative; display:block; padding:17px 44px 17px 16px; } .news-section .news-category { display:inline-block; margin-bottom:9px; } .news-section .news-content { display:flex; } .news-section .news-arrow { position:absolute; right:12px; top:50%; transform:translateY(-50%); } }
