/* ===== KEN FOO MEDIA v3 — minimal / left sidebar ===== */
:root{
  --ink:#1A1A1A;
  --gray:#888;
  --line:#E8E8E8;
  --accent:#1B4F72;
  --gold:#C9A94E;
  --bg:#FFFFFF;
  --bg-soft:#FAFAFA;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Zen Kaku Gothic New','Noto Sans JP',sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.9;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit}

/* Sidebar */
.sidebar{
  position:fixed;top:0;left:0;width:240px;height:100vh;
  background:var(--bg-soft);border-right:1px solid var(--line);
  display:flex;flex-direction:column;padding:40px 28px;z-index:10;
}
.side-logo{font-size:22px;font-weight:900;line-height:1.1;letter-spacing:1px;color:var(--ink);margin-bottom:48px;display:flex;align-items:center;gap:8px}
.side-logo span{font-size:18px}
.side-nav{display:flex;flex-direction:column;gap:4px;margin-bottom:auto}
.side-nav a{font-size:13px;font-weight:500;color:var(--gray);padding:9px 0;letter-spacing:1px;transition:.2s;border-bottom:1px solid transparent}
.side-nav a:hover,.side-nav a.active{color:var(--ink);border-bottom-color:var(--gold)}
.side-social{display:flex;gap:10px;margin-bottom:16px}
.side-social a{font-size:11px;font-weight:700;color:var(--gray);border:1px solid var(--line);padding:3px 7px;border-radius:3px;transition:.2s}
.side-social a:hover{color:var(--accent);border-color:var(--accent)}
.side-copy{font-size:11px;color:var(--gray);letter-spacing:1px}

/* Main */
.main{margin-left:240px;max-width:760px;padding:0 40px}

/* Hero */
.hero{padding:120px 0 80px;border-bottom:1px solid var(--line)}
.hero-kicker{font-size:12px;letter-spacing:3px;color:var(--gold);font-weight:700;margin-bottom:24px}
.hero h1{font-size:38px;font-weight:900;line-height:1.45;margin-bottom:28px;letter-spacing:0.5px}
.hero-lead{font-size:15px;color:var(--gray);line-height:1.9;font-weight:400}

/* Block */
.block{display:flex;gap:28px;padding:64px 0;border-bottom:1px solid var(--line)}
.block-num{font-size:13px;font-weight:700;color:var(--gold);font-family:monospace;padding-top:6px;min-width:34px}
.block-inner{flex:1}
.block-inner h2{font-size:13px;letter-spacing:3px;font-weight:700;color:var(--accent);margin-bottom:24px}
.block-inner p{font-size:15px;color:var(--ink);margin-bottom:18px;line-height:1.9}

/* Post list (minimal rows) */
.post-list{list-style:none}
.post-list li{border-bottom:1px solid var(--line)}
.post-list li:last-child{border-bottom:none}
.post-list a{display:flex;align-items:baseline;gap:16px;padding:22px 0;transition:.2s}
.post-list a:hover{padding-left:12px}
.post-cat{font-size:11px;font-weight:700;color:var(--accent);min-width:160px;flex-shrink:0}
.post-title{flex:1;font-size:16px;font-weight:500;line-height:1.5}
.post-arrow{color:var(--gold);font-weight:700;transition:.2s}
.post-list a:hover .post-arrow{transform:translateX(6px);display:inline-block}

/* Footer */
.foot{padding:48px 0 80px;font-size:12px;color:var(--gray);letter-spacing:1px}

/* Responsive */
@media(max-width:768px){
  .sidebar{position:static;width:100%;height:auto;flex-direction:row;align-items:center;padding:16px 20px;border-right:none;border-bottom:1px solid var(--line)}
  .side-logo{margin-bottom:0;font-size:18px}
  .side-nav{flex-direction:row;gap:16px;margin:0 0 0 auto}
  .side-social,.side-copy{display:none}
  .main{margin-left:0;padding:0 20px}
  .hero{padding:60px 0 50px}
  .hero h1{font-size:28px}
  .block{flex-direction:column;gap:12px;padding:48px 0}
  .post-list a{flex-wrap:wrap;gap:6px}
  .post-cat{min-width:auto}
}
