
@import url('https://fonts.googleapis.com/css2?family=Klee+One:wght@400;600&family=Noto+Sans+JP:wght@400;500;700;800&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--blue:#064691;--pink:#f94b76;--cream:#fbf7ed;--ink:#183d64;--line:#e5e9ed}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP",sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.wrap{max-width:1180px;margin:auto;padding:0 24px}
header{background:#fff;border-bottom:1px solid #edf0f2}.head{height:100px;display:flex;align-items:center;gap:28px}.logo img{width:290px}.nav{margin-left:auto;display:flex;align-items:center;gap:22px;color:#064691;font-weight:800;font-size:13px}.nav .mail{background:var(--pink);color:#fff;padding:13px 20px;border-radius:7px}
.hero{height:500px;position:relative;overflow:hidden;background:#eff8e8}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.77) 42%,rgba(255,255,255,.02) 70%)}.hero-copy{position:relative;z-index:2;padding-top:52px;width:57%}.hand{font-family:"Klee One",cursive;font-size:65px;line-height:1.08;color:#064691;font-weight:600;letter-spacing:-.05em;margin:0;white-space:nowrap}.underline{height:12px;width:86%;border-radius:50%;background:linear-gradient(90deg,#ff86a1 0 48%,#ffd37a 48% 70%,#9ed779 70%);transform:rotate(-1deg);margin:3px 0 9px}.future{font-family:"Noto Serif JP",serif;font-size:34px;letter-spacing:.08em;margin-left:50px}.almile{font-size:54px;font-weight:800;color:#064691;line-height:1.1;margin-left:50px}.lead{font-size:18px;font-weight:800;margin:13px 0 5px 20px}.lead b{color:var(--pink)}.desc{font-size:14px;font-weight:600;line-height:1.55;margin-left:20px}.bubble{position:absolute;z-index:3;right:48px;top:70px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,245,.9);display:grid;place-items:center;text-align:center;font-family:"Noto Serif JP",serif;font-size:18px;line-height:1.75;color:#064691}
.purpose{padding:72px 0 78px;background:linear-gradient(110deg,#fbf7ed,#fff 55%,#f7faf3);border-bottom:1px solid #ece7dd}.purpose-inner{max-width:980px;margin:auto;padding:0 24px}.purpose-kicker{font-family:"Noto Serif JP",serif;font-size:19px;letter-spacing:.12em;color:#586b7b;margin-bottom:10px}.purpose h2{font-family:"Noto Serif JP",serif;font-size:52px;font-weight:500;color:#064691;margin:0}.gold{width:72px;height:1px;background:#b89a67;margin:22px 0 25px}.purpose p{font-family:"Noto Serif JP",serif;font-size:18px;line-height:2.05;color:#344b60;margin:0}.sign{text-align:right;margin-top:25px}.sign strong{font-family:"Noto Serif JP",serif;font-size:20px;margin-left:8px}
.section{padding:36px 0}.title{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px}.title h2{font-size:29px;color:#064691;margin:0}.title p{font-size:12px;margin:0;color:#55708b}.cats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.cat{border:1px solid #dfe5ea;border-radius:8px;overflow:hidden;background:#fff}.cat img{height:105px;width:100%;object-fit:cover}.cat div{padding:9px;text-align:center}.cat h3{font-size:16px;margin:0;color:#064691}.cat p{font-size:11px;margin:3px 0 0}.all{display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,#f0faea,#fff);font-size:20px;font-weight:800;color:#064691;min-height:166px}
.manga{background:#fff7f8}.manga img{width:100%;border-radius:8px}.places{background:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{border:1px solid #e1e6ea;border-radius:9px;overflow:hidden;background:#fff}.card img{height:190px;width:100%;object-fit:cover}.card-body{padding:14px 16px}.card h3{font-size:19px;color:#064691;margin:0 0 6px}.card p{font-size:12px;line-height:1.7;margin:0}
.contact{margin-top:12px;padding:36px 0;background:linear-gradient(100deg,#fff5f2,#fff,#f2faed);border-top:1px solid #f0e6df}.contact-inner{display:flex;align-items:center;justify-content:center;gap:42px}.contact-copy{text-align:center}.contact h2{font-size:26px;color:#064691;margin:0 0 6px}.contact p{font-size:13px;margin:0}.contact a{display:inline-block;margin-top:16px;background:var(--pink);color:#fff;font-size:18px;font-weight:800;padding:14px 34px;border-radius:8px}
footer{padding:25px 0;border-top:1px solid #e8ecef}.foot{display:flex;align-items:center;justify-content:space-between;gap:20px}.foot img{width:220px}.links{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:#55718a}
@media(max-width:850px){.nav{display:none}.hero{height:620px}.hero-copy{width:100%;padding-top:32px}.hand{font-size:45px;white-space:normal}.hero:after{background:linear-gradient(180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.83) 48%,rgba(255,255,255,.05) 72%)}.hero img{object-position:70% center}.future{font-size:27px;margin-left:10px}.almile{font-size:43px;margin-left:10px}.bubble{width:135px;height:135px;right:15px;top:auto;bottom:100px;font-size:14px}.cats{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:1fr}.purpose h2{font-size:38px}.purpose p{font-size:15px}.purpose p br{display:none}.contact-inner,.foot{display:block}.foot img{margin-bottom:14px}}

/* v2: requested-only adjustments */
.hand{
  font-size:62px;
  line-height:1.02;
  letter-spacing:-.055em;
}
.hand span{display:block}
.hand span:last-child{
  margin-left:118px;
  margin-top:-3px;
}
.underline{
  width:82%;
  margin-top:4px;
  margin-left:8px;
}
.future{
  font-size:32px;
  margin-left:72px;
  margin-top:7px;
}
.almile{
  font-size:52px;
  margin-left:72px;
}
.lead{margin-left:36px}
.desc{margin-left:36px}
.bubble{display:none!important}

@media(max-width:850px){
  .hand{font-size:43px}
  .hand span:last-child{margin-left:48px}
  .future{font-size:26px;margin-left:18px}
  .almile{font-size:40px;margin-left:18px}
  .lead,.desc{margin-left:0}
}

/* Confirmed changes only: header + hero */
.brandline{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brandline .logo img{width:235px}
.company-name{font-weight:800;color:#064691;font-size:18px;white-space:nowrap}
.head{gap:20px}
.nav{gap:18px}
.hero img{object-position:center}
.hand{
  display:block!important;
  white-space:nowrap!important;
  font-family:"Klee One",cursive;
  font-size:59px!important;
  line-height:1.08!important;
  letter-spacing:-.055em!important;
  margin:0!important;
}
.hand span{display:inline!important;margin:0!important}
.bubble{display:none!important}
@media(max-width:1050px){
 .company-name{font-size:15px}.brandline .logo img{width:200px}.nav{gap:12px;font-size:12px}
}
@media(max-width:850px){
 .company-name{font-size:14px}.hand{font-size:42px!important}
}

/* === requested revision: hero background / compact contact only === */

/* Hero: no forced stretching. */
.hero{
  position:relative;
  height:500px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 18%, rgba(181,220,154,.15), transparent 24%),
    radial-gradient(circle at 48% 76%, rgba(255,220,162,.15), transparent 30%),
    linear-gradient(105deg,#fffdf8 0%,#fff 59%,#f5faef 100%);
}
.hero:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.04) 0%,rgba(255,255,255,0) 100%);
  pointer-events:none;
}
.hero-photo{
  position:absolute;
  right:0;
  top:0;
  width:35%;
  height:100%;
  background-image:url("assets/hero_green_right.jpg");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.hero-photo:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.46) 27%,rgba(255,255,255,.04) 70%);
}
.hero-copy{position:relative;z-index:3;width:67%}
.hand{
  white-space:nowrap!important;
  font-size:58px!important;
}

/* Bottom inquiry: smaller and simpler */
.contact{
  margin-top:10px;
  padding:20px 0;
  background:#fbf8f2;
  border-top:1px solid #eee7dc;
  border-bottom:1px solid #eee7dc;
}
.contact-inner{
  max-width:930px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:center;
}
.contact-copy{text-align:center}
.contact h2{
  font-size:18px;
  line-height:1.5;
  margin:0 0 3px;
  color:#064691;
}
.contact p{
  font-size:12px;
  margin:0;
  color:#617386;
}
.contact a{
  margin-top:9px;
  font-size:14px;
  padding:9px 22px;
  border-radius:7px;
}

@media(max-width:850px){
  .hero{height:590px}
  .hero-photo{width:45%;opacity:.92}
  .hero-copy{width:100%}
  .hand{font-size:40px!important}
  .contact{padding:17px 0}
  .contact h2{font-size:16px}
}


/* ===== Product / Contact supporting pages ===== */
.header{background:#fff;border-bottom:1px solid #edf0f2}
.header-inner{min-height:92px;display:flex;align-items:center;gap:28px}
.brand img{width:245px}
.header-inner .nav{margin-left:auto;display:flex;align-items:center;gap:20px}
.header-inner .nav a{color:#064691;font-size:13px;font-weight:800}
.header-inner .nav .cta{background:#f94b76;color:#fff;padding:12px 20px;border-radius:7px}

.products-hero{padding:56px 0 38px;background:linear-gradient(110deg,#fbf8f1,#fff 60%,#f4faef)}
.products-hero h1{margin:0;color:#064691;font-family:"Noto Serif JP",serif;font-size:44px;font-weight:500}
.products-hero p{margin:10px 0 0;font-size:15px;line-height:1.8}
.notice{margin-top:18px;padding:13px 16px;border:1px solid #eadfce;border-radius:8px;background:#fffdf8;font-size:12px;line-height:1.7;color:#57697b}

.group{padding:42px 0 10px}
.group-head{font-size:25px;font-weight:800;color:#064691;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid #edf1f4}
.g-supp{border-bottom-color:#9ed779}
.g-beauty{border-bottom-color:#f4a2ba}
.g-food{border-bottom-color:#f1c777}
.g-daily{border-bottom-color:#8fc5eb}

.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.product{border:1px solid #e2e7eb;border-radius:9px;overflow:hidden;background:#fff;box-shadow:0 2px 8px rgba(31,70,105,.04)}
.product img{width:100%;height:190px;object-fit:contain;background:#fafafa;padding:8px}
.product>div{padding:14px}
.product h3{margin:0 0 6px;color:#064691;font-size:17px}
.product .price{font-weight:800;color:#f14f77;font-size:17px;margin-bottom:8px}
.product .desc{font-size:12px;line-height:1.7;color:#50687c}
.group>p{font-size:14px;line-height:1.8}
.btn,.backtop{display:inline-block;margin-top:15px;border:1px solid #f94b76;color:#f94b76;border-radius:7px;padding:10px 18px;font-size:13px;font-weight:700}
.backtop{margin:42px 0 55px;border-color:#cfd8e0;color:#526b80}
.footer{border-top:1px solid #e8ecef;padding:24px 0;background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-inner img{width:210px}.footer-links{font-size:11px;color:#617488}

.contact-page{padding:56px 0 80px;background:linear-gradient(110deg,#fbf8f2,#fff 58%,#f6faef);min-height:calc(100vh - 92px)}
.contact-page .section-title{max-width:780px;margin:0 auto 24px}
.contact-page .section-title h2{margin:0 0 8px;color:#064691;font-family:"Noto Serif JP",serif;font-size:40px;font-weight:500}
.contact-page .section-title p{margin:0;font-size:14px;line-height:1.8;color:#516a7f}
.form{max-width:780px;margin:auto;background:#fff;border:1px solid #e3e8ec;border-radius:10px;padding:28px 30px}
.form label{display:block;margin:0 0 7px;font-size:13px;font-weight:700;color:#244e76}
.form input,.form textarea{width:100%;border:1px solid #ccd7e0;border-radius:7px;padding:12px 13px;font:inherit;margin-bottom:19px;background:#fff}
.form textarea{resize:vertical}
.form button{border:0;background:#f94b76;color:#fff;border-radius:7px;padding:12px 34px;font-weight:800;font-size:15px;cursor:pointer}
.form-note{max-width:780px;margin:12px auto 0;font-size:11px;color:#708294;line-height:1.6}

@media(max-width:900px){
 .product-grid{grid-template-columns:repeat(2,1fr)}
 .header-inner .nav{display:flex}
}
@media(max-width:620px){
 .header-inner{min-height:78px}.brand img{width:200px}
 .header-inner .nav a:not(.cta){display:none}
 .product-grid{grid-template-columns:1fr}
 .products-hero h1{font-size:34px}
 .product img{height:220px}
 .contact-page{padding:38px 0 55px}
 .contact-page .section-title h2{font-size:32px}
 .form{padding:22px 18px}
}

.manga-entry{background:#fbfaf6}.manga-intro-card{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:center;background:#fff;border:1px solid #ece8df;border-radius:22px;padding:42px 46px;box-shadow:0 12px 35px rgba(28,46,58,.06)}
.manga-kicker{font-size:13px;letter-spacing:.12em;color:#b08c45;font-weight:700;margin:0 0 10px}.manga-intro-copy h2{font-family:serif;font-size:32px;color:#1d3650;margin:0 0 18px}.manga-intro-copy p{font-size:15px;line-height:2;color:#4b5459}.manga-button{display:inline-block;margin-top:16px;padding:13px 22px;border-radius:999px;background:#1d3650;color:#fff;text-decoration:none;font-weight:700}.manga-intro-visual img{width:100%;border-radius:16px;display:block}
.manga-page{background:#fbfaf6}.manga-hero{padding:84px 0 62px;text-align:center;background:linear-gradient(180deg,#fff,#f7f4ec)}.manga-hero h1{font-family:serif;font-size:46px;color:#1d3650;margin:8px 0 20px}.manga-hero-lead{font-size:17px;line-height:2;color:#4b5459}
.manga-story{padding:65px 0}.manga-story-wrap{max-width:1000px}.story-row{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;margin:0 0 72px}.story-row.reverse img{order:2}.story-row.reverse div{order:1}.story-row img{width:100%;border-radius:18px;box-shadow:0 12px 28px rgba(28,46,58,.09)}.story-row span{display:inline-block;font-size:13px;font-weight:800;color:#fff;background:#c99d50;border-radius:999px;padding:5px 11px;margin-bottom:12px}.story-row h2{font-family:serif;font-size:29px;color:#1d3650;line-height:1.45;margin:0 0 14px}.story-row p{font-size:15px;line-height:2;color:#4b5459;margin:0}
.difference{padding:72px 0;background:#fff}.difference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.difference-card{border:1px solid #e4e5e2;border-radius:18px;padding:30px 24px;text-align:center;background:#fafafa}.difference-card h3{font-size:20px;color:#1d3650}.difference-card p{min-height:50px;color:#62696d;line-height:1.7}.difference-card strong{display:block;margin-top:18px;color:#1d3650}.almile-diff{background:#f1f6f1;border:2px solid #789b7d}.almile-diff h3{color:#52765b}
.manga-closing{text-align:center;padding:85px 0;background:#1d3650;color:#fff}.closing-main{font-size:22px;letter-spacing:.12em;color:#e3c783;font-weight:700}.manga-closing h2{font-family:serif;font-size:34px;line-height:1.6;margin:20px 0}.manga-closing p{font-size:16px}.manga-closing a{display:inline-block;margin-top:22px;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:11px 24px;text-decoration:none}
@media(max-width:760px){.manga-intro-card,.story-row,.difference-grid{grid-template-columns:1fr}.manga-intro-card{padding:28px 22px}.manga-intro-copy h2{font-size:27px}.story-row{gap:22px;margin-bottom:52px}.story-row.reverse img,.story-row.reverse div{order:initial}.manga-hero{padding:55px 20px 40px}.manga-hero h1{font-size:34px}.manga-hero-lead br{display:none}.story-row h2{font-size:25px}.difference-card p{min-height:auto}}


/* club venue page */
.card-link{display:block;color:inherit;transition:transform .18s ease,box-shadow .18s ease}
.card-link:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(20,55,88,.10)}
.club-page{background:#fff}
.club-hero{padding:64px 0 50px;background:linear-gradient(115deg,#fbf8ef 0%,#fff 58%,#f0f8ec 100%);border-bottom:1px solid #ece8df}
.club-kicker{font-size:12px;font-weight:800;letter-spacing:.18em;color:#b28e58;margin-bottom:8px}
.club-hero h1{font-family:"Noto Serif JP",serif;font-size:48px;font-weight:500;color:#064691;margin:0 0 14px}
.club-hero p{font-family:"Noto Serif JP",serif;font-size:17px;line-height:1.9;color:#425f79;margin:0}
.club-venues{padding:42px 0 70px;background:#fff}
.club-guide{margin:0 0 22px;padding:14px 18px;border-radius:9px;background:#f7faf4;color:#4c657a;font-size:13px;border:1px solid #e4ece0}
.venue-card{display:grid;grid-template-columns:300px 1fr 430px;gap:0;margin:0 0 24px;border:1px solid #dfe6e9;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 18px rgba(20,55,88,.05)}
.venue-photo{min-height:250px;background:#f3f5f5;overflow:hidden}
.venue-photo img{width:100%;height:100%;min-height:250px;object-fit:cover}
.venue-info{padding:28px 24px;display:flex;flex-direction:column;justify-content:center}
.region-badge{align-self:flex-start;display:inline-block;padding:6px 11px;border-radius:999px;background:#eef7ea;color:#477552;font-size:12px;font-weight:800;margin-bottom:12px}
.venue-info h2{font-family:"Noto Serif JP",serif;color:#064691;font-size:22px;line-height:1.5;margin:0 0 12px;font-weight:600}
.venue-address{font-size:13px;line-height:1.8;color:#425b71;margin:0}
.venue-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}
.venue-actions a{display:inline-block;background:#064691;color:#fff;font-size:12px;font-weight:800;padding:10px 14px;border-radius:7px}
.venue-actions a.venue-official{background:#fff;color:#064691;border:1px solid #b9c9d6}
.venue-map iframe{display:block;width:100%;height:100%;min-height:250px;border:0}
.club-note{margin-top:32px;text-align:center;padding:25px 20px;background:linear-gradient(100deg,#fff5f2,#fff,#f3faef);border-radius:10px;border:1px solid #f0e6df;font-size:13px;line-height:1.8;color:#516a7f}
.club-note a{display:inline-block;margin-top:10px;color:#fff;background:#f94b76;padding:11px 22px;border-radius:7px;font-weight:800}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner img{width:210px}.footer-links{display:flex;align-items:center;gap:13px;flex-wrap:wrap;font-size:11px;color:#55718a}
@media(max-width:980px){.venue-card{grid-template-columns:260px 1fr}.venue-map{grid-column:1/-1;height:270px}.venue-map iframe{min-height:270px}}
@media(max-width:680px){.club-hero{padding:42px 0 36px}.club-hero h1{font-size:36px}.club-hero p{font-size:14px}.venue-card{display:block}.venue-photo,.venue-photo img{min-height:210px;height:210px}.venue-info{padding:20px}.venue-map,.venue-map iframe{height:240px;min-height:240px}.footer-inner{display:block}.footer-inner img{margin-bottom:14px}.footer-links{display:flex}}



/* =========================================================
   2026-09 design refinement
   Top hero / manga entry / manga page / club overview
   ========================================================= */

/* TOP hero — clearer hierarchy and better balance */
.hero{
  min-height:510px;
  height:auto;
  display:flex;
  align-items:center;
  background:linear-gradient(105deg,#fffdf9 0%,#fff 61%,#f4f8ef 100%);
}
.hero-layout{width:100%}
.hero-copy{
  width:64%;
  padding:56px 0 58px;
}
.hand{
  font-size:54px!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
  color:#103c70!important;
}
.underline{
  width:76%;
  height:7px;
  margin:8px 0 18px 2px;
  border-radius:999px;
}
.hero-brand-block{
  margin-left:44px;
  padding-left:22px;
  border-left:1px solid #d9d4c7;
}
.future{
  margin:0!important;
  font-size:28px!important;
  line-height:1.3;
  letter-spacing:.08em;
  color:#243e59;
}
.almile{
  margin:5px 0 0!important;
  font-size:43px!important;
  line-height:1.1;
}
.hero-message{
  margin:23px 0 0 45px;
  padding-top:18px;
  max-width:480px;
  border-top:1px solid #e7e3da;
}
.lead{
  margin:0 0 10px!important;
  font-size:16px!important;
  line-height:1.6;
}
.desc{
  margin:0!important;
  font-size:14px!important;
  line-height:1.8!important;
  color:#445d72;
}
.hero-photo{width:38%}
.hero-photo:before{
  background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.55) 24%,rgba(255,255,255,.03) 70%);
}

/* TOP manga entry — no comic image, calm and premium */
.manga-entry{
  padding:46px 0;
  background:linear-gradient(100deg,#fbfaf6,#fff 62%,#f6f9f3);
  border-top:1px solid #efede7;
  border-bottom:1px solid #efede7;
}
.manga-intro-clean{
  display:grid;
  grid-template-columns:1fr 300px;
  gap:48px;
  align-items:center;
  padding:8px 10px;
}
.manga-intro-copy h2{
  font-family:"Noto Serif JP",serif;
  font-size:30px;
  font-weight:500;
  margin:0 0 14px;
  color:#163d66;
}
.manga-intro-copy p{
  margin:0;
  max-width:760px;
  font-size:14px;
  line-height:1.95;
  color:#4f6477;
}
.manga-button-clean{
  margin:0;
  padding:18px 24px;
  min-height:86px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  line-height:1.55;
  border-radius:12px;
  background:#163d66;
  box-shadow:0 8px 22px rgba(22,61,102,.10);
}
.manga-button-clean strong{font-size:15px}
.manga-button-clean span{font-size:24px;margin-left:5px}

/* Top club card CTA */
.venue-more{
  display:inline-block;
  margin-top:5px;
  font-size:14px;
  color:#064691;
  font-weight:800;
}

/* Dedicated manga page — treat eight panels as one visual story */
.manga-hero{
  padding:58px 0 40px;
  background:linear-gradient(180deg,#fff,#f8f6f0);
}
.manga-hero h1{font-size:40px;margin-bottom:14px}
.manga-hero-lead{font-size:15px;line-height:1.9}
.manga-story-compact{padding:42px 0 58px}
.manga-story-wrap{max-width:1080px}
.manga-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.manga-panel{
  margin:0;
  overflow:hidden;
  border:1px solid #e6e3db;
  border-radius:14px;
  background:#fff;
  box-shadow:0 7px 20px rgba(28,46,58,.06);
}
.manga-panel img{
  width:100%;
  height:auto;
  display:block;
}
.manga-note{
  margin:25px auto 0;
  max-width:800px;
  text-align:center;
  color:#53687a;
  font-size:13px;
  line-height:1.85;
}
.difference{padding:54px 0 64px}
.difference .title{display:block;text-align:center}
.difference .title h2{font-size:28px}
.difference .title p{margin-top:8px;font-size:13px}
.difference-grid{max-width:980px;margin:28px auto 0}
.difference-card{padding:24px 20px}
.manga-closing{padding:68px 0}

/* Club page — one-screen overview first */
.club-hero-compact{
  padding:38px 0 28px;
}
.club-hero-compact h1{
  font-size:39px;
  margin-bottom:8px;
}
.club-hero-compact p{
  font-size:14px;
  line-height:1.75;
}
.club-overview{
  padding:30px 0 58px;
  background:#fff;
}
.club-overview-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  margin-bottom:20px;
}
.club-count{
  display:block;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  color:#b08c52;
  margin-bottom:4px;
}
.club-overview-head h2{
  margin:0;
  color:#064691;
  font-size:27px;
}
.club-overview-head p{
  margin:0;
  text-align:right;
  color:#5c7184;
  font-size:11px;
  line-height:1.65;
}
.venue-tile-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  align-items:stretch;
}
.venue-tile{
  min-width:0;
  border:1px solid #e0e6e9;
  border-radius:12px;
  overflow:visible;
  background:#fff;
  box-shadow:0 5px 17px rgba(20,55,88,.05);
}
.venue-tile-photo{
  height:135px;
  overflow:hidden;
  border-radius:11px 11px 0 0;
  background:#eef1f1;
}
.venue-tile-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.venue-tile-body{
  padding:14px 13px 15px;
}
.venue-tile .region-badge{
  margin-bottom:8px;
  padding:4px 8px;
  font-size:10px;
}
.venue-tile h2{
  min-height:54px;
  margin:0 0 8px;
  font-family:"Noto Serif JP",serif;
  font-size:15px;
  line-height:1.5;
  color:#064691;
}
.venue-tile .venue-address{
  min-height:54px;
  margin:0;
  font-size:10px;
  line-height:1.7;
  color:#526a7d;
}
.venue-tile-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin-top:12px;
}
.map-details{position:relative}
.map-details summary,
.venue-official-link{
  list-style:none;
  cursor:pointer;
  display:block;
  text-align:center;
  border-radius:7px;
  padding:8px 7px;
  font-size:10px;
  font-weight:800;
}
.map-details summary{
  background:#064691;
  color:#fff;
}
.map-details summary::-webkit-details-marker{display:none}
.venue-official-link{
  border:1px solid #bdccd8;
  color:#064691;
  background:#fff;
}
.map-pop{
  position:absolute;
  z-index:20;
  left:0;
  bottom:42px;
  width:300px;
  padding:7px;
  background:#fff;
  border:1px solid #d9e1e5;
  border-radius:9px;
  box-shadow:0 12px 35px rgba(18,44,68,.18);
}
.venue-tile:nth-child(4) .map-pop,
.venue-tile:nth-child(5) .map-pop{
  left:auto;
  right:0;
}
.map-pop iframe{
  width:100%;
  height:220px;
  border:0;
  display:block;
  border-radius:6px;
}
.club-note{
  margin-top:22px;
  padding:18px;
}
.club-note a{margin-top:6px}

/* Responsive */
@media(max-width:1050px){
  .venue-tile-grid{grid-template-columns:repeat(3,1fr)}
  .hero-copy{width:68%}
}
@media(max-width:850px){
  .hero{min-height:570px}
  .hero-copy{width:100%;padding:38px 0}
  .hand{font-size:40px!important}
  .hero-brand-block{margin-left:12px}
  .hero-message{margin-left:12px;max-width:440px}
  .hero-photo{width:46%;opacity:.92}
  .manga-intro-clean{grid-template-columns:1fr;gap:24px}
  .manga-button-clean{max-width:340px}
  .venue-tile-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .manga-grid{grid-template-columns:1fr}
  .club-overview-head{display:block}
  .club-overview-head p{text-align:left;margin-top:8px}
  .venue-tile-grid{grid-template-columns:1fr}
  .venue-tile-photo{height:190px}
  .venue-tile h2,.venue-tile .venue-address{min-height:auto}
  .map-pop{position:static;width:100%;margin-top:7px}
}

/* =========================================================
   2026-09-09 brand / story refinement
   ========================================================= */
/* Hero: rebuild the typography as one coherent brand statement */
.hero{min-height:520px;background:linear-gradient(104deg,#fffdf9 0%,#fff 59%,#f3f8ee 100%)}
.hero-copy{width:65%;padding:68px 0 70px}
.hero-eyebrow{font-size:12px;letter-spacing:.22em;color:#9b7c47;font-weight:700;margin:0 0 15px 3px}
.hand{font-family:"Noto Serif JP","Yu Mincho",serif!important;font-size:56px!important;font-weight:500!important;letter-spacing:.035em!important;line-height:1.22!important;color:#172f4d!important;margin:0!important}
.underline{width:74%;height:4px;margin:13px 0 25px 2px;background:linear-gradient(90deg,#d64d69 0 34%,#e8b450 34% 67%,#83a967 67%);opacity:.9}
.hero-brand-line{display:flex;align-items:baseline;gap:18px;margin:0 0 29px 4px}
.hero-brand-line .future{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:25px!important;margin:0!important;color:#31455c;letter-spacing:.09em}
.hero-brand-line .almile{font-size:34px!important;margin:0!important;color:#123d6c;letter-spacing:.03em}
.hero-message{margin:0 0 0 4px!important;padding:22px 0 0!important;max-width:520px;border-top:1px solid #dedbd2}
.hero-message .lead{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:21px!important;font-weight:600!important;color:#173a60;margin:0 0 11px!important}
.hero-message .desc{font-size:14px!important;line-height:1.9!important;color:#526577}
.hero-message .desc strong{color:#b34159;font-weight:700}

/* Manga entry: a clear break between explanation and the deeper story */
.manga-entry{padding:0;background:#fff;border:0}
.manga-intro-clean{grid-template-columns:1fr 350px;gap:52px;padding:48px 42px;margin:0;border-top:1px solid #e9e5dc;border-bottom:1px solid #e9e5dc;background:#fbfaf6}
.manga-kicker{color:#9b7c47}
.manga-intro-copy h2{font-size:29px;margin-bottom:12px}
.manga-button-clean{min-height:74px;background:#173d64;border-radius:8px;box-shadow:none;font-size:13px;letter-spacing:.02em}

/* Manga: never crop a panel */
.manga-grid{align-items:start;gap:24px 22px}
.manga-panel{overflow:visible;border-radius:10px}
.manga-panel img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:10px}

/* Difference: explain the uniquely local value, not a feature checklist */
.local-value{padding:72px 0 76px;background:#fff}
.local-value-head{text-align:center;max-width:760px;margin:0 auto 38px}
.local-value-head .eyebrow{font-size:12px;letter-spacing:.16em;color:#a17f42;font-weight:700}
.local-value-head h2{font-family:"Noto Serif JP","Yu Mincho",serif;color:#173d64;font-size:34px;font-weight:500;margin:9px 0 12px}
.local-value-head p{font-size:14px;line-height:1.9;color:#65717b;margin:0}
.local-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1040px;margin:0 auto}
.local-value-card{position:relative;padding:30px 26px 28px;border:1px solid #e4e1d9;border-radius:14px;background:#fbfaf7;min-height:240px}
.local-value-card .num{font-family:serif;font-size:13px;color:#b09055;letter-spacing:.12em}
.local-value-card h3{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:23px;line-height:1.5;color:#183c61;margin:13px 0 14px}
.local-value-card p{font-size:14px;line-height:1.9;color:#566875;margin:0}
.local-value-card strong{color:#243d54}
.local-value-message{max-width:850px;margin:42px auto 0;padding:30px 35px;border-top:1px solid #d8d1c3;border-bottom:1px solid #d8d1c3;text-align:center}
.local-value-message p{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:25px;line-height:1.7;color:#173d64;margin:0}
.local-value-message span{display:block;margin-top:12px;font-size:13px;line-height:1.8;color:#687680}

@media(max-width:760px){
 .hero{min-height:600px}.hero-copy{width:100%;padding:45px 0 55px}.hand{font-size:40px!important;letter-spacing:0!important}.underline{width:94%}
 .hero-brand-line{display:block}.hero-brand-line .future{font-size:21px!important}.hero-brand-line .almile{font-size:31px!important;margin-top:5px!important}
 .hero-message .lead{font-size:18px!important}.hero-photo{opacity:.45}
 .manga-intro-clean{grid-template-columns:1fr;padding:34px 22px;gap:24px}.manga-button-clean{max-width:none;width:100%}
 .manga-grid{grid-template-columns:1fr;gap:24px}.local-value{padding:54px 0}.local-value-grid{grid-template-columns:1fr}.local-value-head h2{font-size:29px}.local-value-card{min-height:0}.local-value-message p{font-size:21px}
}


/* =========================================================
   2026-09-09 指定3点のみ最終調整
   1) hero brand line center + same typeface as main phrase
   2) top manga divider remains as approved
   3) local-value section remains as approved
   ========================================================= */
.hero-brand-line{
  display:flex!important;
  justify-content:center!important;
  align-items:baseline!important;
  gap:16px!important;
  width:74%!important;
  margin:0 0 29px 2px!important;
  text-align:center!important;
}
.hero-brand-line .future,
.hero-brand-line .almile{
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
  color:#103c70!important;
}
.hero-brand-line .future{font-size:24px!important;line-height:1.25!important}
.hero-brand-line .almile{font-size:30px!important;line-height:1.25!important}
.hero-message .desc strong,
.manga-intro-copy strong{color:inherit!important;font-weight:inherit!important}

@media(max-width:760px){
  .hero-brand-line{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    width:94%!important;
    gap:5px 10px!important;
    margin:0 0 25px 0!important;
  }
  .hero-brand-line .future{font-size:20px!important}
  .hero-brand-line .almile{font-size:25px!important;margin:0!important}
}


/* 2026-09-09 requested mobile + club 6-area fixes only */
.venue-tile-grid{grid-template-columns:repeat(3,1fr)!important;}
@media(max-width:1050px){.venue-tile-grid{grid-template-columns:repeat(3,1fr)!important;}}
@media(max-width:850px){.venue-tile-grid{grid-template-columns:repeat(2,1fr)!important;}}
@media(max-width:620px){
  .venue-tile-grid{grid-template-columns:1fr!important;}
  .hand{
    white-space:nowrap!important;
    font-size:clamp(26px,7.2vw,30px)!important;
    letter-spacing:-.035em!important;
    line-height:1.2!important;
  }
  .underline{width:100%!important;}
}

/* 2026-09-09 agreed navigation / hero / story refinements */
header{position:sticky;top:0;z-index:1000;box-shadow:0 2px 12px rgba(24,61,100,.05)}
body{scroll-padding-top:110px}
.menu-toggle,.mobile-menu{display:none}
/* First view: softer typography + calm, almost-straight brand line */
.hero-copy .hand{font-family:"Klee One","Noto Serif JP",serif;font-weight:600;letter-spacing:-.035em}
.hero-copy .underline{height:7px;width:90%;border-radius:999px;transform:rotate(-.15deg);margin-top:10px;background:linear-gradient(90deg,#ed6b88 0 34%,#e7bd61 34% 67%,#86b978 67% 100%)}
.hero-brand-line{display:flex;justify-content:center;align-items:baseline;gap:14px;width:100%;margin:18px 0 0}
.hero-brand-line .future,.hero-brand-line .almile{font-family:"Klee One","Noto Serif JP",serif;margin:0!important;font-weight:600;color:#064691;line-height:1.25}
.hero-brand-line .future{font-size:29px;letter-spacing:.03em}.hero-brand-line .almile{font-size:31px;letter-spacing:.02em}
.club-values{padding:44px 0 28px;background:linear-gradient(135deg,#fffaf6,#fff,#f4faef)}
.club-values-head{text-align:center;max-width:820px;margin:0 auto 26px}.club-values-head h2{font-family:"Noto Serif JP",serif;color:#064691;font-size:36px;margin:7px 0 12px}.club-values-head p{line-height:1.9;color:#526b7e}
.manga-after-message{padding:34px 0 54px}.manga-club-link{text-align:center;margin-top:22px}.manga-club-link a{display:inline-block;background:#064691;color:#fff;padding:14px 28px;border-radius:8px;font-weight:800}
@media(max-width:850px){
 header .head{height:78px;padding:0 18px}.logo img{width:145px}.company-name{font-size:14px}.nav{display:none!important}
 .menu-toggle{display:flex;margin-left:auto;width:44px;height:44px;border:0;background:#fff;border-radius:8px;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:0 0 0 1px #e4e9ed;cursor:pointer}.menu-toggle span{width:22px;height:2px;background:#064691;border-radius:2px}
 .mobile-menu{display:none;background:#fff;border-top:1px solid #edf0f2;padding:8px 20px 16px;box-shadow:0 8px 16px rgba(24,61,100,.08)}header.menu-open .mobile-menu{display:grid}.mobile-menu a{padding:12px 4px;border-bottom:1px solid #edf0f2;color:#064691;font-weight:700}.mobile-menu a:last-child{border-bottom:0;color:#e94f72}
 .hero-copy .hand{font-size:clamp(31px,9.2vw,42px)!important;white-space:nowrap!important;letter-spacing:-.055em!important}.hero-copy .underline{width:100%;height:6px;margin-left:0}.hero-brand-line{gap:8px;flex-wrap:nowrap;margin-top:16px}.hero-brand-line .future{font-size:clamp(18px,5.2vw,24px)!important}.hero-brand-line .almile{font-size:clamp(19px,5.4vw,25px)!important;white-space:nowrap}.club-values-head h2{font-size:28px}.local-value-grid{grid-template-columns:1fr!important}
}

/* 2026-09-10: TOP beige section width unified */
.purpose,.manga-entry{background:#fbf7ed!important;}
.manga-entry{padding:48px 0!important;}

/* Contact / recruitment pages */
.subpage-main{padding:54px 0 72px;background:#fff}.subpage-title{text-align:center;margin-bottom:32px}.subpage-title h1{font-family:"Noto Serif JP",serif;color:#064691;font-size:38px;margin:0 0 10px}.subpage-title p{color:#586b7b;line-height:1.8;margin:0}.info-box{max-width:900px;margin:0 auto 28px;padding:28px 30px;border:1px solid #e5e0d7;border-radius:14px;background:#fbf7ed}.info-box h2{color:#064691;font-size:24px;margin:0 0 14px}.info-box h3{color:#183d64;font-size:18px;margin:26px 0 10px}.info-box p{line-height:1.9;margin:8px 0;color:#344b60}.example-box{background:#fff;border-left:4px solid #b89a67;padding:16px 18px;margin-top:12px;line-height:1.85}.support-box{max-width:900px;margin:0 auto 42px;padding:22px 28px;border:1px solid #dfe5ea;border-radius:12px}.support-box h3{margin:0 0 8px;color:#064691}.support-box p{margin:4px 0;line-height:1.7}.site-form{max-width:780px;margin:0 auto;background:#fff;border:1px solid #e3e8ec;border-radius:14px;padding:30px}.site-form h2{color:#064691;margin:0 0 20px}.site-form label{display:block;margin:0 0 7px;font-size:14px;font-weight:700;color:#244e76}.site-form input,.site-form textarea,.site-form select{width:100%;border:1px solid #ccd7e0;border-radius:7px;padding:12px 13px;font:inherit;margin-bottom:19px;background:#fff}.site-form textarea{resize:vertical}.site-form button{border:0;background:#f94b76;color:#fff;border-radius:8px;padding:13px 34px;font-weight:800;font-size:16px;cursor:pointer}.form-note{max-width:780px;margin:12px auto 0;font-size:12px;color:#708294;line-height:1.7}.recruit-lead{max-width:900px;margin:0 auto 28px;text-align:center;font-size:17px;line-height:2;color:#344b60}.recruit-grid{max-width:900px;margin:0 auto 38px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.recruit-card{padding:24px;border:1px solid #e2e7eb;border-radius:12px;background:#fff}.recruit-card h3{color:#064691;margin:0 0 10px}.recruit-card p{font-size:14px;line-height:1.8;margin:0;color:#4b5d6d}.recruit-note{max-width:900px;margin:0 auto 36px;padding:22px 26px;background:#fbf7ed;border-radius:12px;line-height:1.9}.subpage-main header{}
@media(max-width:850px){.subpage-main{padding:36px 0 54px}.subpage-title h1{font-size:30px}.info-box,.support-box,.site-form{padding:22px 18px}.recruit-grid{grid-template-columns:1fr}.manga-entry{padding:36px 0!important;}}
