/* ILLUMINATION 2026 テーマ: WordPress で表示するための追加スタイル
   style.css（デザイン案4から生成）の後に読み込む。手で直すスタイルはこちらに書く */

/* ログイン中に表示される管理バーの下にヘッダーを置く */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) {
	.admin-bar .site-header { top: 46px; }
}

/* メインビジュアルが1枚だけのときは、前後のボタンを出さない */
.slider-nav[hidden] { display: none; }

/* ニュースの絞り込み（リンク） */
a.filter { display: inline-block; text-decoration: none; }

/* ページ送り */
.pagination { margin-top: 56px; }
.pagination ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.pagination a, .pagination span {
	display: grid; place-items: center; min-width: 44px; height: 44px; padding: 0 14px; border-radius: 999px;
	border: 1px solid var(--line-2); color: var(--text-2); font: 700 15px/1 var(--font-en); transition: all .2s;
}
.pagination a:hover { border-color: rgba(20, 26, 44, .4); color: var(--text); }
.pagination .current { background: #141a2c; border-color: #141a2c; color: #fff; }
.pagination .dots { border: 0; min-width: 24px; padding: 0; }
.pagination .prev, .pagination .next { font-family: var(--font-ja); }
.empty { padding: 48px 0; color: var(--text-2); text-align: center; }

/* ---------- 光の筋の背景の上の文字を読みやすくする（ニュース・記事・規約などの冒頭） ---------- */
/* 文字のある左側から中央にかけて、背景を暗くする */
.page-hero.page-hero--policy::after {
	display: block; inset: 0; opacity: 1; -webkit-mask-image: none; mask-image: none;
	background: linear-gradient(90deg, rgba(5, 7, 15, .88) 0%, rgba(5, 7, 15, .7) 38%, rgba(5, 7, 15, .25) 68%, rgba(5, 7, 15, 0) 88%);
}
.page-hero--policy .breadcrumb { color: rgba(238, 240, 247, .72); }
.page-hero--policy .breadcrumb a { color: rgba(238, 240, 247, .9); }
/* 記事はタイトルが長く光の中心にかかるので、光そのものも抑える */
.page-hero.page-hero--policy.page-hero--article::before { opacity: .45; }

/* ---------- 記事 ---------- */
.page-hero.page-hero--article { padding-bottom: 96px; }
/* 記事名が長くても「ホーム」「ニュース」を折り返さず、記事名のほうを「…」で省略する */
.breadcrumb > * { flex-shrink: 0; white-space: nowrap; }
.breadcrumb > .breadcrumb-current { flex-shrink: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.breadcrumb a { color: var(--text-2); }
.article-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; color: var(--text-2); font-size: 14px; }
.article-meta time { font-family: var(--font-en); letter-spacing: .08em; margin-right: 6px; }
.article-meta .news-cat { padding: 2px 12px; border-radius: 999px; border: 1px solid var(--line-2); color: var(--text-2); transition: all .2s; }
.article-meta .news-cat:hover { color: var(--text); border-color: rgba(255, 255, 255, .4); }
.article-title { max-width: 920px; margin-top: 18px; font-size: clamp(24px, 3vw, 36px); font-weight: 900; line-height: 1.5; letter-spacing: .03em; }

.article-inner { width: min(100% - 32px, 860px); margin-inline: auto; }
.article-thumb { margin: 0 0 48px; border-radius: var(--radius); overflow: hidden; box-shadow: 0 20px 50px rgba(20, 26, 44, .18); }
.article-thumb img { width: 100%; height: auto; }

.article-nav {
	display: grid; grid-template-columns: 1fr auto 1fr; gap: 16px; align-items: center;
	margin-top: 64px; padding-top: 32px; border-top: 1px solid var(--line);
}
.article-nav-prev, .article-nav-next {
	display: grid; gap: 4px; color: var(--text); font-size: 14px; font-weight: 700; line-height: 1.6;
	overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
}
.article-nav-prev span, .article-nav-next span { display: block; color: #1675b8; font: 700 12px/1.6 var(--font-en); letter-spacing: .1em; }
.article-nav-next { text-align: right; }
.article-nav-prev:hover, .article-nav-next:hover { color: #1675b8; }
@media (max-width: 640px) {
	.article-nav { grid-template-columns: 1fr 1fr; }
	.article-nav-list { grid-column: 1 / -1; grid-row: 2; }
}

/* 本文（ブロックエディタで書いた内容） */
.entry-content { color: var(--text); font-size: 17px; line-height: 1.95; overflow-wrap: anywhere; }
.entry-content > * + * { margin-top: 1.5em; }
.entry-content p:empty { display: none; }
.entry-content a { color: #1675b8; text-decoration: underline; text-underline-offset: 3px; }
.entry-content a:hover { text-decoration: none; }
.entry-content strong { font-weight: 700; }
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
	margin-top: 2.6em; line-height: 1.5; font-weight: 900; letter-spacing: .03em;
}
.entry-content > :first-child { margin-top: 0; }
.entry-content h1, .entry-content h2 { font-size: clamp(22px, 2.4vw, 28px); padding-bottom: 14px; border-bottom: 2px solid var(--text); }
.entry-content h3 { font-size: 22px; padding-left: 16px; border-left: 4px solid #1675b8; }
.entry-content h4 { font-size: 19px; }
.entry-content h5 { font-size: 17px; }
/* 旧サイトで帯の見出しとして使われている h6 */
.entry-content h6 {
	position: relative; padding: 18px 24px 18px 28px; border-radius: 12px;
	background: linear-gradient(110deg, #0e1730, #1c2b57); color: #fff; font-size: 19px;
	box-shadow: 0 10px 24px rgba(20, 26, 44, .16);
}
.entry-content h6::before {
	content: ""; position: absolute; left: 0; top: 12px; bottom: 12px; width: 4px; border-radius: 0 4px 4px 0;
	background: linear-gradient(#3ad6ff, #ff3d8b);
}
.entry-content ul, .entry-content ol { padding-left: 1.6em; }
.entry-content ul { list-style: disc; }
.entry-content ol { list-style: decimal; }
.entry-content li + li { margin-top: .4em; }
.entry-content img { height: auto; }
.entry-content figure { margin-left: 0; margin-right: 0; }
.entry-content .wp-block-image img { border-radius: 10px; }
.entry-content figcaption { margin-top: 8px; color: var(--text-3); font-size: 14px; text-align: center; }
.entry-content blockquote { padding: 16px 24px; border-left: 4px solid #1675b8; background: rgba(22, 117, 184, .06); border-radius: 0 10px 10px 0; }
.entry-content table { width: 100%; border-collapse: collapse; font-size: 15px; }
.entry-content th, .entry-content td { padding: 12px 14px; border: 1px solid var(--line-2); text-align: left; vertical-align: top; }
.entry-content th { background: rgba(20, 26, 44, .04); }
.entry-content details { padding: 14px 20px; border-radius: 12px; border: 1px solid var(--line-2); background: #fff; }
.entry-content details summary { cursor: pointer; font-weight: 700; }
.entry-content hr, .entry-content .wp-block-separator { border: 0; border-top: 1px solid var(--line-2); }
.entry-content .wp-block-columns { gap: 24px; }
.entry-content .wp-block-embed iframe { width: 100%; border-radius: 10px; }
.entry-content .wp-block-button__link { border-radius: 999px; }

/* 製品紹介の説明文（本文） */
.product-desc p + p { margin-top: .5em; }

/* 404 */
.page-hero.page-hero--404 { min-height: 60svh; padding-bottom: 120px; }
