.public-notices{margin-block:6rem;color:#203a2d;font-size:16px}.public-notices a{color:inherit}.public-notices__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem}.public-notice{border:1px solid #dce3dc;border-radius:12px;overflow:hidden;background:#fff}.public-notice>a{display:block;height:100%;text-decoration:none}.public-notice>a:hover .public-notice__title,.public-notice>a:focus-visible .public-notice__title{text-decoration:underline}.public-notice__image{aspect-ratio:16/10;overflow:hidden}.public-notice__image img{width:100%;height:100%;object-fit:cover}.public-notice__body{padding:1.5rem}.public-notice time,.public-notices--detail time{font-size:14px;color:#687168}.public-notice .public-notice__title{font-size:18px;line-height:1.5;margin:.7rem 0 0;overflow-wrap:anywhere}.public-notices__empty{padding:2rem;border-block:1px solid #dce3dc;color:#687168}.public-notices--detail{max-width:880px}.public-notices--detail h1{font-size:clamp(24px,4vw,38px);line-height:1.5;margin:1rem 0 2rem;overflow-wrap:anywhere}.public-notices__content{line-height:1.9;overflow-wrap:anywhere;margin-block:2rem}.public-notices__content img,.public-notices__hero img{max-width:100%;height:auto}.public-notices__content p{margin-block:1em}.public-notices__content ul,.public-notices__content ol{padding-left:1.5em}.public-notices .navigation{margin-top:2rem}@media(max-width:700px){.public-notices{margin-block:3rem}.public-notices__grid{grid-template-columns:1fr}.public-notice__body{padding:1.2rem}}

/* On the top page the section uses the shared .lead title (Japanese title, curve English line), so only colour, the break point and spacing are set here. */
.top-page .public-notices.lead h2{color:#000;word-break:keep-all}
.top-page .public-notices.lead :is(.public-notices__grid,.public-notices__empty){margin-top:64px}
.top-page .public-notices.lead .btn-area{margin-top:40px}
.top-page .public-notices.lead .btn-01{max-width:400px;margin-inline:auto}
@media(max-width:1023.98px){.top-page .public-notices.lead :is(.public-notices__grid,.public-notices__empty){margin-top:40px}}
@media(max-width:575.98px){.top-page .public-notices.lead :is(.public-notices__grid,.public-notices__empty){margin-top:24px}.top-page .public-notices.lead .btn-area{margin-top:24px}}

/* The list page now has the shared page title above it, so the cards start right below it like the event list. */
.public-notices.public-notices--archive{margin-top:0}

/* Cards without a featured image show the logo on a quiet panel at the same size as a photo. */
.public-notice__image--logo{display:flex;align-items:center;justify-content:center;background:#f2f4f2}
.public-notice__image.public-notice__image--logo img{width:42%;height:auto;object-fit:contain}

/* Article detail matches the event detail card: centred, white, rounded, image on top, back link closing the card. */
/* The wrapper is a div inside the shared <main>, so it takes the event detail's top space itself. */
.public-notices.public-notices--detail{max-width:none;margin-top:clamp(100px,calc(100px + (100vw - 768px) * .1953125),150px);color:#000;font-size:inherit}
.public-notices--detail .public-notices__article{overflow:hidden;max-width:960px;margin:0 auto;border:1px solid #dedede;border-radius:24px;background:#fff;box-shadow:0 16px 46px rgba(0,0,0,.08)}
.public-notices--detail .public-notices__hero img{display:block;width:100%}
.public-notices--detail .public-notices__body{padding:40px 48px 48px}
.public-notices--detail time{color:#646970;font-size:14px}
.public-notices--detail h1{margin:8px 0 0;color:#000;font-size:3.2rem;font-weight:900;line-height:1.35}
.public-notices--detail .public-notices__content{margin:28px 0 0;color:#000;line-height:2}
.public-notices--detail .public-notices__content :is(h2,h3,h4){margin:2em 0 .6em;color:#000;line-height:1.5}
.public-notices--detail .public-notices__content h2{font-size:2.4rem}
.public-notices--detail .public-notices__content h3{font-size:2rem}
.public-notices--detail .public-notices__content a{color:#000;text-decoration:underline;text-underline-offset:3px}
.public-notices--detail .public-notices__back{margin:40px 0 0;padding-top:24px;border-top:1px solid #eee}
.public-notices--detail .public-notices__back a{display:inline-block;padding:8px 0;color:#000;font-weight:900;text-decoration:underline;text-underline-offset:5px}
@media(max-width:767px){.public-notices.public-notices--detail{margin-top:clamp(75px,calc(75px + (100vw - 375px) * .1243781095),100px)}.public-notices--detail .public-notices__article{border-radius:18px}.public-notices--detail .public-notices__body{padding:24px}.public-notices--detail h1{font-size:2.6rem}.public-notices--detail .public-notices__content h2{font-size:2.1rem}.public-notices--detail .public-notices__content h3{font-size:1.8rem}}

/* Category label (same chip as event categories) next to the date. */
.public-notice__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;line-height:1.8}
.public-notice__category{display:inline-block;padding:2px 9px;border-radius:999px;background:#eaf5ee;color:#065d2d;font-size:1.2rem;font-weight:700;line-height:1.45}
.public-notice .public-notice__meta + .public-notice__title{margin-top:.7rem}

/* Older / newer article links inside the card, above the back link. */
.public-notices--detail .public-notices__pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:40px 0 0}
.public-notices--detail .public-notices__pager-link{display:grid;gap:4px;min-width:0;padding:14px 18px;border:1px solid #dedede;border-radius:12px;color:#000;text-decoration:none}
.public-notices--detail .public-notices__pager-link--next{grid-column:2;text-align:right}
.public-notices--detail .public-notices__pager-link > span{color:#646970;font-size:1.3rem;font-weight:700;line-height:1.5}
.public-notices--detail .public-notices__pager-link > strong{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:1.5rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere}
.public-notices--detail .public-notices__pager-link:hover,.public-notices--detail .public-notices__pager-link:focus-visible{border-color:#000}
.public-notices--detail .public-notices__pager-link:hover > strong{text-decoration:underline;text-underline-offset:3px}
.public-notices--detail .public-notices__pager + .public-notices__back{margin-top:24px}
@media(max-width:767px){.public-notices--detail .public-notices__pager{grid-template-columns:1fr}.public-notices--detail .public-notices__pager-link--next{grid-column:auto}}
