@charset "UTF-8";
/* お知らせ（一覧・詳細）— Concept01 White Editorial */

.e-inner--narrow{ max-width:840px; }

/* ---- 一覧 ---- */
.e-news{ list-style:none; margin:0 0 60px; padding:0; border-top:1px solid var(--ed-line); }
.e-news__item{ border-bottom:1px solid var(--ed-line); }
.e-news__link{
  display:grid; grid-template-columns:96px 108px 1fr 24px; align-items:center; gap:18px;
  padding:24px 4px; color:var(--ed-ink); text-decoration:none; transition:color .25s, background .25s;
}
.e-news__link:hover{ color:var(--ed-red); background:#fbfaf8; }
.e-news__date{ font-size:12px; letter-spacing:.1em; color:var(--ed-muted); }
.e-news__cat{
  display:inline-block; font-size:10.5px; letter-spacing:.14em; text-align:center;
  padding:5px 8px; border:1px solid var(--ed-line); color:var(--ed-body); white-space:nowrap;
}
.e-news__title{ font-family:var(--font-serif); font-size:16px; line-height:1.8; font-weight:600; }
.e-news__link .e-arrow{ width:18px; height:1px; background:currentColor; position:relative; justify-self:end; }
.e-news__link .e-arrow::after{
  content:""; position:absolute; right:0; top:-3px; width:7px; height:7px;
  border-top:1px solid currentColor; border-right:1px solid currentColor; transform:rotate(45deg);
}
.e-news__empty{ padding:60px 0 80px; text-align:center; font-size:13px; color:var(--ed-muted); }

/* ページャー */
.e-pager{ display:flex; justify-content:center; gap:8px; margin:0 0 70px; }
.e-pager__i a, .e-pager__i span{
  display:inline-block; min-width:38px; padding:9px 10px; text-align:center;
  font-size:12px; letter-spacing:.08em; border:1px solid var(--ed-line); color:var(--ed-body); text-decoration:none;
}
.e-pager__i a:hover{ border-color:var(--ed-red); color:var(--ed-red); }
.e-pager__i .current{ background:var(--ed-red); border-color:var(--ed-red); color:#fff; }

/* ---- 詳細 ---- */
.e-phead__title--post{ font-size:32px; line-height:1.6; }
.e-post__meta{ display:flex; align-items:center; gap:14px; margin:16px 0 0; font-size:12px; letter-spacing:.1em; color:var(--ed-muted); }
.e-post{ padding:44px 0 20px; font-size:14px; line-height:2.15; color:var(--ed-body); }
.e-post__thumb{ margin:0 0 36px; }
.e-post__thumb img{ width:100%; height:auto; display:block; }
.e-post > *:first-child{ margin-top:0; }
.e-post p{ margin:0 0 1.9em; }
.e-post h2{
  font-family:var(--font-serif); font-size:21px; font-weight:600; color:var(--ed-ink);
  letter-spacing:.04em; margin:56px 0 20px; padding-bottom:12px; border-bottom:1px solid var(--ed-line);
}
.e-post h3{ font-family:var(--font-serif); font-size:17px; font-weight:600; color:var(--ed-ink); margin:40px 0 14px; padding-left:14px; border-left:2px solid var(--ed-red); }
.e-post a{ color:var(--ed-red); text-decoration:underline; text-underline-offset:3px; }
.e-post strong{ color:var(--ed-ink); font-weight:600; }
.e-post ul, .e-post ol{ margin:0 0 1.9em; padding-left:1.4em; }
.e-post li{ margin:0 0 .6em; }
.e-post table{ width:100%; border-collapse:collapse; margin:0 0 2em; font-size:13px; }
.e-post th, .e-post td{ border:1px solid var(--ed-line); padding:12px 14px; text-align:left; vertical-align:top; }
.e-post th{ width:30%; background:#faf9f6; font-weight:600; color:var(--ed-ink); white-space:nowrap; }
.e-post blockquote{ margin:0 0 2em; padding:18px 22px; background:#faf9f6; border-left:2px solid var(--ed-red); font-size:13px; }
.e-post img{ max-width:100%; height:auto; }
.e-post hr{ border:0; border-top:1px solid var(--ed-line); margin:48px 0; }

/* 記事内ボタン（.e-post a.e-btn） */
.e-post a.e-btn{
  display:inline-block; padding:15px 34px; background:var(--ed-red); color:#fff;
  font-size:13px; letter-spacing:.1em; text-decoration:none; transition:opacity .25s;
}
.e-post a.e-btn:hover{ opacity:.85; }

/* 前後ナビ */
.e-postnav{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px;
  margin:20px 0 70px; padding-top:24px; border-top:1px solid var(--ed-line);
  font-size:12px; letter-spacing:.06em;
}
.e-postnav a{ color:var(--ed-body); text-decoration:none; }
.e-postnav a:hover{ color:var(--ed-red); }
.e-postnav__s--r{ text-align:right; }
.e-postnav__idx{ border:1px solid var(--ed-line); padding:10px 20px; }

@media (max-width:820px){
  .e-news__link{ grid-template-columns:auto auto; grid-template-areas:"date cat" "title title"; gap:10px 12px; padding:20px 2px; }
  .e-news__date{ grid-area:date; } .e-news__cat{ grid-area:cat; justify-self:start; }
  .e-news__title{ grid-area:title; font-size:15px; }
  .e-news__link .e-arrow{ display:none; }
  .e-phead__title--post{ font-size:23px; }
  .e-post{ font-size:13.5px; }
  .e-post th, .e-post td{ display:block; width:100%; }
  .e-post th{ border-bottom:0; }
  .e-postnav{ grid-template-columns:1fr; text-align:center; }
  .e-postnav__s--r{ text-align:center; }
}

/* ---- トップ最下部の新着情報ブロック ---- */
.e-newsblock{ padding:0 0 110px; }
.e-newsblock .e-news{ margin-bottom:26px; }
.e-newsblock__more{ margin:0; }
.e-news--compact .e-news__link{ padding:20px 4px; }
.e-news--compact .e-news__title{ font-size:15px; }
@media (max-width:820px){ .e-newsblock{ padding:0 0 70px; } }

/* SWELL の自動目次は独自デザインでは使わない */
.e-post .p-toc, .e-post #toc_container, .e-post .toc_widget{ display:none !important; }

/* Good Life Project 04 活動報告（セクション内に埋め込む場合） */
.e-sec--report .e-news{ margin:6px 0 22px; }
.e-sec--report .e-newsblock__more{ margin:0; }
