/*
Theme Name: Junya Mini Theme v2
Theme URI: https://komatsujunya.jp/
Author: Junya Komatsu + Assistant
Description: Minimal, fast, background-image + red menu + white sheet layout.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: junya-mini-v2
*/

:root{
  --jk-red:#B11226;
  --jk-red2:#E63946;
  --jk-black:#0b0b0b;
  --jk-white:#ffffff;
  --jk-gray:#333;
  --jk-sheet-w: 980px;
  --jk-gap: 26px; /* メニューと白シートの間 */
}

/* ===== Base ===== */
*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  color:var(--jk-black);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;
  line-height:1.8;

  /* 背景：左上から縦リピート / 画面幅に合わせる */
  background-image: url("http://komatsujunya.jp/wp-content/uploads/2026/03/ageha-c1.jpg");
  background-position:left top;
  background-repeat:repeat-y;
  background-size:100% auto;
  background-attachment:scroll;
}

img{ max-width:100%; height:auto; }
iframe{ max-width:100%; }

a{ color:var(--jk-red); text-decoration:none; }
a:hover{ color:var(--jk-red2); }

/* ===== Layout ===== */
.jk-site{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

/* ===== Header ===== */
.jk-topbar{
  background: rgba(0,0,0,0.86);
  backdrop-filter: blur(6px);
}
.jk-topbar-inner{
  max-width:1200px;
  margin:0 auto;
  padding:14px 18px;
  display:flex;
  align-items:center;
  gap:16px;
}

.jk-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width: 220px;
}
.jk-logo img{ width:34px; height:34px; border-radius:50%; display:block; }
.jk-title{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.jk-title .name{
  font-weight:800;
  letter-spacing:.06em;
  color:#fff;
  font-size:15px;
}
.jk-title .tag{
  font-size:11px;
  letter-spacing:.18em;
  color:rgba(255,255,255,0.72);
}

/* ===== Menu bar (red) ===== */
.jk-menubar{
  background: var(--jk-red);
}
.jk-menubar-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 12px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.jk-nav-toggle{
  display:none;
  appearance:none;
  border:0;
  background:transparent;
  color:#fff;
  padding:12px;
  cursor:pointer;
}
.jk-nav-toggle:focus{ outline:2px solid rgba(255,255,255,0.4); outline-offset:2px; }

.jk-menu{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  gap:0;
}
.jk-menu a{
  display:block;
  padding:16px 16px;
  color:#fff;
  font-weight:700;
  letter-spacing:.06em;
}
.jk-menu a:hover{ background:rgba(255,255,255,0.10); }
.jk-menu .current-menu-item > a,
.jk-menu .current_page_item > a{
  box-shadow: inset 0 -3px 0 rgba(255,255,255,0.95);
}

/* dropdown */
.jk-menu li{ position:relative; }
.jk-menu li ul{
  display:none;
  position:absolute;
  top:100%;
  left:0;
  min-width:220px;
  background: var(--jk-red);
  list-style:none;
  padding:8px 0;
  margin:0;
  box-shadow: 0 12px 28px rgba(0,0,0,0.25);
  z-index:50;
}
.jk-menu li:hover > ul{ display:block; }
.jk-menu li ul a{ padding:12px 16px; }

/* ===== Main (white sheet) ===== */
.jk-main{
  flex:1;
  padding: var(--jk-gap) 16px 28px;
}

.jk-sheet{
  max-width: var(--jk-sheet-w);
  margin:0 auto;
  background: rgba(255,255,255,0.93);
  border-radius: 16px;
  box-shadow: 0 18px 45px rgba(0,0,0,0.22);
  padding: 54px 56px;
}

/* Title inside content */
.jk-sheet h1{
  margin:0 0 18px;
  font-size: 42px;
  line-height:1.2;
  letter-spacing:.02em;
}

.jk-sheet h2{ margin: 34px 0 14px; }
.jk-sheet p{ color:var(--jk-gray); font-size:18px; }

/* WP blocks spacing */
.jk-sheet .wp-block{ margin: 0 0 18px; }

/* ===== Footer ===== */
.jk-footer{
  background: var(--jk-red);
  color:#fff;
}
.jk-footer-inner{
  max-width:1200px;
  margin:0 auto;
  padding:14px 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  letter-spacing:.06em;
}

/* ===== Mobile ===== */
@media (max-width: 900px){
  :root{ --jk-sheet-w: 94vw; }
  .jk-sheet{ padding: 36px 22px; border-radius: 14px; }
  .jk-sheet h1{ font-size: 30px; }
  .jk-sheet p{ font-size: 16px; }

  .jk-menubar-inner{ justify-content:space-between; }
  .jk-nav-toggle{ display:block; }

  .jk-menu{
    display:none;
    flex-direction:column;
    width:100%;
    padding:8px 0;
  }
  .jk-menu.is-open{ display:flex; }
  .jk-menu a{ padding:14px 14px; }

  /* dropdown on mobile: show as normal list */
  .jk-menu li ul{
    position:static;
    display:block;
    box-shadow:none;
    padding:0;
    background: rgba(255,255,255,0.06);
  }
  .jk-menu li ul a{ padding-left:26px; }
}

/* Admin bar offset (ログイン時に上が被らないように) */
body.admin-bar .jk-topbar{ margin-top:32px; }
@media (max-width: 782px){
  body.admin-bar .jk-topbar{ margin-top:46px; }
}
