/* ニュース・コラムの一覧ページ／記事ページ（2026-10-20）。共通の部品は、ai-page.css・app-page-c.css（apc-*）を使い回す */
body.page-template-page-news, body.page-template-page-column, body.single-sac_news, body.single-sac_column { background: var(--sh-bg, #f1f2f3); }
body.page-template-page-news .site-main, body.page-template-page-column .site-main, body.single-sac_news .site-main, body.single-sac_column .site-main { max-width: none !important; width: 100% !important; padding-inline: 0 !important; }
.pst .ai-hero.pst-hero { padding-bottom: 20px; }
.pst .ai-hero__grid { grid-template-columns: 1fr; }
.pst .ai-hero .ai-crumb { position: static; }
.pst .ai-hero .ai-crumb ol { margin-bottom: 36px; }
.pst .ai-hero + .ai-sec.pst-main { padding-top: 10px; padding-bottom: 120px; }
.pst-title { font-size: clamp(30px, 4.2vw, 52px) !important; line-height: 1.4 !important; }

/* ニュースの一覧：日付・題名の行 */
.pst-news { margin: 0; padding: 0; list-style: none; border-radius: 28px; background: #fff; box-shadow: 0 14px 40px rgba(0, 48, 64, .09); overflow: hidden; }
.pst-news li + li { border-top: 1px solid #eef2f5; }
.pst .pst-news a { display: grid; grid-template-columns: 200px 1fr auto; align-items: center; gap: 28px; padding: 20px 32px; color: inherit; text-decoration: none; transition: background .3s; }
.pst .pst-news a:hover, .pst .pst-news a:focus-visible { background: #f4f9fc; }
/* サムネイル画像（無いときは、SaCのロゴ） */
.pst-news__img { display: block; aspect-ratio: 16 / 10; border-radius: 14px; overflow: hidden; background: linear-gradient(135deg, #eaf3fa, #fbeef2); }
.pst-news__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.pst-news__img.is-logo { display: grid; place-items: center; }
.pst-news__img.is-logo img { width: 62%; height: auto; object-fit: contain; opacity: .8; }
.pst .pst-news a:hover .pst-news__img img { transform: scale(1.06); }
.pst-news__txt { display: grid; gap: 4px; min-width: 0; }
.pst-news time { font-size: 14px; font-weight: 700; letter-spacing: .1em; color: var(--sh-blue, #0599d9); font-variant-numeric: tabular-nums; }
.pst-news__t { font-size: 17px; line-height: 1.7; font-weight: 700; letter-spacing: .04em; }
.pst-news__s { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13.5px; line-height: 1.8; font-weight: 500; letter-spacing: .04em; color: #5b6e77; }
.pst-news i { color: #e96a8f; font-style: normal; font-weight: 700; transition: transform .3s; }
.pst .pst-news a:hover i { transform: translateX(4px); }
.pst-empty { margin: 20px 0; padding: 28px; border-radius: 20px; background: #fff; text-align: center; font-size: 15px; font-weight: 700; letter-spacing: .05em; }

/* コラムの一覧：カテゴリ・カード */
.pst-filter { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 30px; }
.pst .pst-chip-l { display: inline-flex; align-items: center; gap: 10px; padding: 11px 22px; border-radius: 40px; background: #fff; color: #0b4f73; font-size: 14.5px; font-weight: 700; letter-spacing: .05em; text-decoration: none; box-shadow: inset 0 0 0 1.5px var(--apc-blue, #0599d9); transition: background .3s, color .3s, transform .3s; }
.pst .pst-chip-l:hover { background: #eaf6fc; transform: translateY(-2px); }
.pst .pst-chip-l small { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 30px; background: #eaf6fc; font-size: 12px; }
.pst .pst-chip-l.is-on { background: var(--apc-grad, linear-gradient(45deg, #e96a8f, #009ada)); color: #fff; box-shadow: 0 8px 18px rgba(233, 106, 143, .3); }
.pst .pst-chip-l.is-on small { background: rgba(255, 255, 255, .28); color: #fff; }
.pst .pst-chip-l:focus-visible { outline: 3px solid rgba(5, 153, 217, .5); outline-offset: 3px; }
.pst-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.pst-card { display: flex; flex-direction: column; overflow: hidden; border-radius: 26px; background: #fff; box-shadow: 0 12px 36px rgba(0, 48, 64, .08); transition: transform .45s cubic-bezier(.2, .7, .2, 1), box-shadow .45s; }
.pst-card:hover { transform: translateY(-6px); box-shadow: 0 20px 48px rgba(0, 48, 64, .15); }
.pst-card__img { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #e3e8eb; }
.pst-card__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.pst-card:hover .pst-card__img img { transform: scale(1.06); }
.pst-card__body { display: flex; flex: 1; flex-direction: column; padding: 22px 26px 22px; }
.pst-card__meta { display: flex; align-items: center; gap: 12px; margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .08em; color: #6d8089; }
.pst-chip { display: inline-block; padding: 2px 12px; border-radius: 30px; background: #eaf6fc; color: #0b4f73; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-decoration: none; }
.pst-card h2 { margin: 0 0 10px; font-size: 18px; line-height: 1.65; font-weight: 700; letter-spacing: .05em; }
.pst .pst-card h2 a { color: inherit; text-decoration: none; }
.pst .pst-card h2 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.pst-card__sum { flex: 1; margin: 0 0 14px; font-size: 13.5px; line-height: 1.95; letter-spacing: .04em; font-weight: 500; color: #3d525c; }
.pst .pst-card__more { align-self: flex-start; color: var(--apc-blue, #0599d9); font-size: 13.5px; font-weight: 700; letter-spacing: .06em; text-decoration: none; }
.pst .pst-card__more i { display: inline-block; margin-left: 6px; font-style: normal; transition: transform .3s; }
.pst .pst-card__more:hover i { transform: translateX(4px); }
.pst .pst-card a:focus-visible, .pst .pst-news a:focus-visible { outline: 3px solid rgba(5, 153, 217, .5); outline-offset: -3px; }

/* ページ送り */
.pst-pager { margin: 44px 0 0; }
.pst-pager ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.pst .pst-pager a, .pst-pager span { display: grid; place-items: center; min-width: 44px; height: 44px; padding: 0 14px; border-radius: 40px; background: #fff; color: #0b4f73; font-size: 14.5px; font-weight: 700; text-decoration: none; box-shadow: 0 6px 18px rgba(0, 48, 64, .08); transition: background .3s, transform .3s; }
.pst .pst-pager a:hover { background: #eaf6fc; transform: translateY(-2px); }
.pst-pager .is-current { background: var(--apc-grad, linear-gradient(45deg, #e96a8f, #009ada)); color: #fff; }

/* 記事ページ */
.pst-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 10px 0 0; font-size: 14px; font-weight: 700; letter-spacing: .1em; color: #5b6e77; }
.pst-article { padding: 44px 52px 40px; border-radius: 30px; background: #fff; box-shadow: 0 14px 40px rgba(0, 48, 64, .09); }
.pst-hero-img { margin: 0 0 34px; }
.pst-hero-img img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: cover; border-radius: 20px; }
.pst-body { font-size: 16px; line-height: 2.1; letter-spacing: .04em; font-weight: 500; color: #2b4450; }
.pst-body > * + * { margin-top: 1.3em; }
.pst-body h2 { margin-top: 2.2em; padding: 0 0 .5em; border-bottom: 2px solid #eef2f5; font-size: 22px; line-height: 1.6; letter-spacing: .05em; color: var(--sh-ink, #003040); }
.pst-body h3 { margin-top: 1.8em; padding-left: 14px; border-left: 4px solid var(--apc-pink, #e96a8f); font-size: 18px; line-height: 1.6; letter-spacing: .05em; color: var(--sh-ink, #003040); }
.pst-body a { color: var(--apc-blue, #0599d9); font-weight: 700; text-underline-offset: 3px; }
.pst-body ul, .pst-body ol { padding-left: 1.4em; }
.pst-body li + li { margin-top: .4em; }
.pst-body img { max-width: 100%; height: auto; border-radius: 14px; }
.pst-body h2[id] { scroll-margin-top: 110px; }
/* 結論の枠・目次・書き手の表記（コラム。2026-10-21） */
.pst-body .pst-answer { padding: 20px 24px; border-radius: 16px; background: #f4f9fc; box-shadow: inset 5px 0 0 var(--apc-blue, #0599d9); font-size: 16px; line-height: 2; }
.pst-body .pst-answer p { margin: 0; }
.pst-body .pst-answer strong { color: var(--sh-ink, #003040); }
.pst-toc { padding: 20px 24px 18px; border: 1px solid #dbe6ed; border-radius: 16px; background: #fff; }
.pst-toc__t { margin: 0 0 10px; font-size: 14px; font-weight: 700; letter-spacing: .1em; color: var(--sh-blue, #0599d9); }
.pst-toc ol { margin: 0; padding: 0; list-style: none; counter-reset: toc; display: grid; gap: 6px; }
.pst-toc li { margin: 0; counter-increment: toc; font-size: 14.5px; line-height: 1.7; }
.pst-toc li::before { content: counter(toc, decimal-leading-zero); margin-right: 10px; font-weight: 700; color: var(--apc-pink, #e96a8f); font-variant-numeric: tabular-nums; }
.pst-toc a { color: var(--sh-ink, #003040); text-decoration: none; font-weight: 700; }
.pst-toc a:hover { color: var(--apc-blue, #0599d9); text-decoration: underline; text-underline-offset: 3px; }
.pst-body .pst-byline { margin-top: 2.4em; padding-top: 1.2em; border-top: 1px solid #eef2f5; font-size: 13px; line-height: 1.9; color: #6b7f8a; }
.pst-body figure { margin-left: 0; margin-right: 0; }
.pst-body figcaption { margin-top: .5em; font-size: 13px; line-height: 1.7; color: #6b7f8a; text-align: center; }
.pst-body .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.pst-body .alignleft { float: left; margin: .3em 1.4em 1em 0; }
.pst-body .alignright { float: right; margin: .3em 0 1em 1.4em; }
.pst-body blockquote { margin-left: 0; margin-right: 0; padding: 16px 22px; border-radius: 14px; background: #f4f9fc; box-shadow: inset 4px 0 0 var(--apc-blue, #0599d9); font-size: 15px; }
.pst-body table { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.pst-body th, .pst-body td { padding: 10px 14px; border: 1px solid #dbe6ed; text-align: left; }
.pst-body th { background: #eaf6fc; }
.pst-adj { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 30px 0 0; }
.pst .pst-adj a { display: block; height: 100%; padding: 16px 22px; border-radius: 18px; background: #fff; color: inherit; text-decoration: none; box-shadow: 0 8px 24px rgba(0, 48, 64, .07); transition: transform .3s, box-shadow .3s; }
.pst .pst-adj a:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(0, 48, 64, .13); }
.pst-adj small { display: block; margin-bottom: 4px; font-size: 12px; font-weight: 700; letter-spacing: .1em; color: var(--apc-pink, #e96a8f); }
.pst-adj b { font-size: 14.5px; line-height: 1.7; letter-spacing: .04em; }
.pst-adj__item--next { text-align: right; }
.pst-back { margin: 34px 0 0; text-align: center; }

@media (max-width: 1024px) { .pst-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px) {
	.pst-grid { grid-template-columns: 1fr; }
	.pst .pst-news a { grid-template-columns: 112px 1fr; gap: 14px; padding: 14px 16px; align-items: start; }
	.pst-news__img { border-radius: 10px; }
	.pst-news__t { font-size: 15px; line-height: 1.6; }
	.pst-news__s, .pst-news i { display: none; }
	.pst-body table { display: block; overflow-x: auto; }
	.pst-article { padding: 28px 22px 26px; }
	.pst-adj { grid-template-columns: 1fr; }
	.pst-adj__item--next { text-align: left; }
}
@media (prefers-reduced-motion: reduce) {
	.pst-card, .pst-card__img img, .pst .pst-news a, .pst .pst-chip-l, .pst .pst-adj a { transition: none; }
}
