/* page-journal.css — このファイルはページ固有スタイルのみ。共通(リセット/変数/nav/footer/breadcrumb)はstyle.cssに集約。 */
/* FEATURED */
.journal-header{padding:110px 64px 60px;}
.jh-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:48px;flex-wrap:wrap;gap:16px;}
.jh-title{font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:clamp(40px,7vw,88px);line-height:0.9;color:var(--ink);letter-spacing:0.01em;}
.jh-more{font-family:'Cormorant Garamond',serif;font-size:12px;letter-spacing:0.2em;color:var(--gold-dk);text-decoration:none;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:2px;}
.featured{padding:0 64px 80px;border-bottom:1px solid var(--line-i);}
.feat-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:52px;align-items:center;}
.feat-img{aspect-ratio:4/3;overflow:hidden;position:relative;}
.feat-img img{filter:saturate(0.88) brightness(0.99);transition:transform .9s ease;}
.feat-inner:hover .feat-img img{transform:scale(1.04);}
.feat-cat{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:0.22em;color:var(--gold-dk);text-transform:uppercase;display:block;margin-bottom:14px;}
.feat-label{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:0.16em;color:var(--faint);text-transform:uppercase;display:block;margin-bottom:6px;}
.feat-title{font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:clamp(26px,3.5vw,42px);line-height:1.25;color:var(--ink);margin-bottom:18px;letter-spacing:0.01em;}
.feat-desc{font-size:14px;line-height:2.2;color:var(--soft);margin-bottom:28px;}
.feat-meta{display:flex;gap:16px;align-items:center;margin-bottom:22px;}
.feat-date{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:0.12em;color:var(--faint);}
.feat-author{font-size:12px;color:var(--soft);}
.feat-read{font-family:'Cormorant Garamond',serif;font-size:13px;letter-spacing:0.2em;color:var(--gold-dk);text-decoration:none;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:2px;}

/* GRID */
.jgrid-section{padding:72px 64px 100px;}
.jgrid-inner{max-width:1200px;margin:0 auto;}
.jgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 24px;}
.jcard{display:block;text-decoration:none;color:inherit;}
.jcard-img{overflow:hidden;aspect-ratio:3/2;position:relative;background:var(--w3);margin-bottom:16px;}
.jcard-img img{width:100%;height:100%;object-fit:cover;filter:saturate(0.88);transition:transform .9s ease;}
.jcard:hover .jcard-img img{transform:scale(1.05);}
.jcard-cat{position:absolute;bottom:10px;left:10px;z-index:2;padding:4px 10px;background:rgba(250,250,247,0.92);font-family:'Space Mono',monospace;font-size:9px;letter-spacing:0.2em;color:var(--gold-dk);text-transform:uppercase;}
.jcard-en{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:0.14em;color:var(--faint);text-transform:uppercase;display:block;margin-bottom:7px;}
.jcard-title{font-family:'Noto Serif JP',serif;font-size:15px;font-weight:300;color:var(--ink);line-height:1.7;letter-spacing:0.03em;margin-bottom:12px;}
.jcard-footer{display:flex;justify-content:space-between;align-items:baseline;}
.jcard-date{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:0.1em;color:var(--faint);}
.jcard-read{font-family:'Cormorant Garamond',serif;font-size:12px;letter-spacing:0.16em;color:var(--gold-dk);text-decoration:none;}

/* PAGINATION */
.pagination{padding:0 64px 80px;max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:4px;}
.pg-btn{width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-family:'Space Mono',monospace;font-size:11px;color:var(--soft);text-decoration:none;border:1px solid var(--line-i);}
.pg-btn.active{background:var(--ink);color:var(--w);border-color:var(--ink);}
.pg-btn:hover:not(.active){border-color:var(--gold);color:var(--gold-dk);}
.pg-ellipsis{padding:0 6px;color:var(--faint);font-size:12px;}

@media(max-width:900px){.journal-header,.featured,.jgrid-section,.pagination{padding-left:22px;padding-right:22px;}.feat-inner{grid-template-columns:1fr;gap:32px;}.jgrid{grid-template-columns:1fr;gap:36px;}.related-grid .jcard-footer{flex-direction:column;align-items:flex-start;gap:6px;}}

.seo-h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}