/* WordPress向けの補正（Shopify版には無い要素への対応） */

/* 管理バー表示時の固定ヘッダー位置 */
.admin-bar .cf-navbar { top: 32px; }
@media screen and (max-width: 782px) {
  .admin-bar .cf-navbar { top: 46px; }
}

/* 汎用固定ページ・404: 固定ヘッダーと重ならないように */
.cf-wp-page { padding-top: 120px; padding-bottom: 60px; }
@media screen and (min-width: 750px) {
  .cf-wp-page { padding-top: 140px; }
}

/* お問い合わせフォームのハニーポット */
.cf-form-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* ブロックエディタの基本配置 */
.cf-article-body .alignwide, .cf-article-body .alignfull { max-width: 100%; }
.cf-article-body .aligncenter { margin-left: auto; margin-right: auto; }
.cf-article-body img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); width: 1px; height: 1px; overflow: hidden; }

/* お知らせ（トップページの最新数件・/news/ 一覧で共用） */
.cf-news-container { max-width: 880px; }
.cf-news-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid #e5e7eb; }
.cf-news-item { border-bottom: 1px solid #e5e7eb; }
.cf-news-link { display: flex; align-items: baseline; gap: 24px; padding: 20px 4px; color: var(--cf-color-primary); text-decoration: none; transition: color 0.2s; }
.cf-news-link:hover { color: var(--cf-color-brand-navy); }
.cf-news-link:hover .cf-news-title { text-decoration: underline; }
.cf-news-date { flex-shrink: 0; font-size: 14px; font-weight: 500; color: var(--cf-color-secondary); font-variant-numeric: tabular-nums; }
.cf-news-title { flex: 1; min-width: 0; font-size: 15px; line-height: 1.7; }
.cf-news-arrow { flex-shrink: 0; align-self: center; font-size: 12px; color: var(--cf-color-secondary); }
.cf-news-home { padding: 64px 0; margin-bottom: 48px; }
.cf-news-home-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.cf-news-home-title { margin: 0; font-size: 24px; font-weight: 700; color: var(--cf-color-primary); }
.cf-news-home-title .cf-sub-label { margin-bottom: 8px; }
.cf-news-more { flex-shrink: 0; font-size: 14px; font-weight: 700; color: var(--cf-color-brand-navy); text-decoration: none; }
.cf-news-more:hover { text-decoration: underline; }
.cf-news-section { background-color: var(--cf-color-bg-surface); padding-top: 80px; }
.cf-news-empty { text-align: center; color: var(--cf-color-secondary); }
@media screen and (max-width: 749px) {
  .cf-news-link { flex-direction: column; gap: 4px; padding: 16px 4px; }
  .cf-news-arrow { display: none; }
  .cf-news-home { padding: 48px 0; }
}
