:root{
  --blue:#1c5f92;
  --deep:#08243a;
  --navy:#0a2e55;
  --gold:#b39452;
  --text:#172033;
  --muted:#66727d;
  --sky:#eef8fc;
  --sand:#fbf7ef;
  --pale:#f8fbfc;
  --white:#fff;
  --line:rgba(7,17,31,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Noto Sans JP','Helvetica Neue',Arial,sans-serif;color:var(--text);background:#fff;letter-spacing:.01em;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}
.container{width:min(1320px,calc(100% - 72px));margin:0 auto}.narrow{width:min(980px,calc(100% - 72px));margin:0 auto}.lead{font-size:17px;line-height:2.15;color:var(--muted)}
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(7,17,31,.055);box-shadow:0 1px 18px rgba(7,17,31,.025);transition:.36s ease}
.header-inner{width:min(1360px,calc(100% - 64px));height:122px;margin:auto;display:flex;align-items:center;justify-content:space-between;transition:.36s ease}.brand img{width:232px;height:auto;transition:.36s ease}.brand:hover img{transform:translateY(-1px)}
.global-nav{display:flex;align-items:center;gap:34px;font-family:'Manrope',sans-serif;font-size:12px;font-weight:600;letter-spacing:.045em;color:rgba(23,32,51,.74);text-transform:uppercase}.global-nav a{transition:.25s ease}.global-nav a:hover{color:var(--blue)}.lang{color:var(--gold)!important}.site-header.is-scrolled{box-shadow:0 8px 28px rgba(7,17,31,.055)}.site-header.is-scrolled .header-inner{height:78px}.site-header.is-scrolled .brand img{width:184px}.site-header.is-scrolled .global-nav{gap:28px;font-size:11px}
.hero{position:relative;min-height:92vh;display:grid;place-items:center;overflow:hidden;color:#fff;background:var(--deep)}.hero-bg{position:absolute;inset:0;background:linear-gradient(110deg,rgba(7,17,31,.30),rgba(7,17,31,.13) 46%,rgba(7,17,31,.03)),url('/images/hero.jpg') center/cover no-repeat;filter:brightness(1.05) contrast(.96) saturate(.76);transform:scale(calc(1 + var(--scroll-progress,0) * .045));transform-origin:center;transition:transform .12s linear}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(7,17,31,.08),rgba(7,17,31,.02) 50%,rgba(7,17,31,.32)),radial-gradient(circle at 78% 42%,rgba(255,255,255,.05),transparent 40%);z-index:1}.hero-inner{position:relative;z-index:2;width:min(1320px,calc(100% - 72px));padding-top:122px;transform:translateY(calc(var(--scroll-progress,0) * -26px));opacity:calc(1 - var(--scroll-progress,0) * .18)}.eyebrow,.section-kicker{margin:0 0 24px;font-family:'Manrope',sans-serif;font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--gold);text-transform:uppercase}.eyebrow{color:rgba(255,255,255,.92);text-shadow:0 8px 28px rgba(0,0,0,.20)}.hero h1{margin:0;font-size:clamp(46px,5.55vw,72px);line-height:1.08;font-weight:600;letter-spacing:.005em;color:#fff;text-shadow:0 4px 18px rgba(0,0,0,.22),0 18px 46px rgba(0,0,0,.20)}.hero h1 span{font-weight:700}.hero-copy{margin:32px 0 0;font-family:'Cormorant Garamond','Manrope',serif;font-size:clamp(22px,2.35vw,32px);line-height:1.45;font-weight:600;letter-spacing:.02em;color:rgba(255,255,255,.96);text-shadow:0 8px 30px rgba(0,0,0,.20)}.hero-lead{width:min(720px,100%);margin:20px 0 0;font-size:clamp(14px,1.35vw,17px);line-height:2.15;color:rgba(255,255,255,.84);text-shadow:0 8px 26px rgba(0,0,0,.18)}.scroll-sign{position:absolute;right:40px;bottom:52px;z-index:2;font-family:'Manrope',sans-serif;font-size:10px;font-weight:700;letter-spacing:.16em;color:rgba(255,255,255,.62);writing-mode:vertical-rl;opacity:calc(.62 - var(--scroll-progress,0) * .38)}
.section{padding:164px 0;scroll-margin-top:96px}.section.soft{background:linear-gradient(180deg,#fff,#f4fbfe)}.section.sand{background:linear-gradient(180deg,#fff,#fbf7ef)}.two-column{display:grid;grid-template-columns:.9fr 1.1fr;gap:96px;align-items:start}.image-split{display:grid;grid-template-columns:.95fr 1.05fr;align-items:stretch}.image-split.reverse{grid-template-columns:1.05fr .95fr}.split-text{padding:120px min(8vw,110px);align-self:center}.split-visual{min-height:640px;background:center/cover no-repeat}.about-visual{background-image:url('/images/about.jpg')}.business-visual{background-image:linear-gradient(120deg,rgba(28,95,146,.10),rgba(255,255,255,.05)),url('/images/business.jpg')}.company-visual{background-image:url('/images/company.jpg')}.contact-visual{background-image:url('/images/contact.jpg')}
h2{margin:0;font-size:clamp(30px,2.8vw,36px);line-height:1.45;font-weight:600;letter-spacing:.01em}.section-kicker::after{content:"";display:block;width:44px;height:1px;background:var(--gold);margin-top:18px;opacity:.75}.section-head{max-width:780px;margin-bottom:88px}.section-head p:last-child{margin-top:26px;max-width:640px;font-size:15px;line-height:2.1;color:var(--muted)}.message-text p{margin:0 0 24px;font-size:16px;line-height:2.25;color:var(--muted)}
.button-line{display:inline-flex;align-items:center;gap:24px;margin-top:36px;font-family:'Manrope','Noto Sans JP',sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue);text-transform:uppercase;border-bottom:1px solid rgba(28,95,146,.35);padding-bottom:10px}.button-line::after{content:"→";font-size:16px;transition:.25s ease}.button-line:hover::after{transform:translateX(5px)}
.business-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.business-card,.work-card{background:#fff;overflow:hidden;border:1px solid rgba(7,22,47,.07);transition:.32s cubic-bezier(.22,1,.36,1)}.business-card:hover,.work-card:hover{transform:translateY(-8px);box-shadow:0 26px 64px rgba(7,22,47,.12)}.card-image{height:220px;background:center/cover no-repeat}.image-promotion{background-image:linear-gradient(135deg,rgba(7,17,31,.18),rgba(28,95,146,.08)),url('/images/business.jpg')}.image-education{background-image:linear-gradient(135deg,rgba(7,17,31,.18),rgba(28,95,146,.08)),url('/images/hero.jpg')}.image-entertainment{background-image:linear-gradient(135deg,rgba(7,17,31,.18),rgba(28,95,146,.08)),url('/images/business.jpg')}.image-creative{background-image:linear-gradient(135deg,rgba(7,17,31,.18),rgba(28,95,146,.08)),url('/images/works.jpg')}.card-body{padding:34px 30px 38px}.card-body span,.mini-label{font-family:'Manrope',sans-serif;font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--gold);text-transform:uppercase}.card-body h3{margin:12px 0 16px;font-family:'Manrope','Noto Sans JP',sans-serif;font-size:22px;font-weight:700}.card-body p{margin:0;color:var(--muted);font-size:14px;line-height:2}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.work-card img{height:240px;width:100%;object-fit:cover;transition:.5s ease}.work-card:hover img{transform:scale(1.035)}
.works-band{background:linear-gradient(135deg,#0a2e55,#174f7b 58%,#0f3e62);color:#fff}.works-band h2{color:#fff}.works-band .lead{color:rgba(255,255,255,.78)}.works-band .section-kicker{color:#d7bd80}.achievement-list{margin-top:46px;display:grid;gap:0}.achievement-list div{padding:25px 0;border-bottom:1px solid rgba(255,255,255,.14)}.achievement-list strong{display:block;font-family:'Manrope',sans-serif;font-size:20px;font-weight:700}.achievement-list span{display:block;margin-top:9px;color:rgba(255,255,255,.64);font-size:13px}
.page-hero{padding:210px 0 110px;background:linear-gradient(180deg,#f6fbfd,#fff);border-bottom:1px solid var(--line)}.page-hero h1{margin:0;font-size:clamp(42px,5vw,68px);line-height:1.15;font-weight:600}.page-hero p{margin-top:22px;color:var(--muted);font-size:17px;line-height:2}.content-section{padding:100px 0;border-bottom:1px solid rgba(7,17,31,.08)}.content-section h2{margin-bottom:34px}.detail-grid{display:grid;grid-template-columns:280px 1fr;gap:64px}.detail-block{padding:26px 0;border-top:1px solid rgba(7,17,31,.10)}.detail-block h3{margin:0 0 16px;font-size:20px}.detail-block p,.detail-block li{color:var(--muted);line-height:2}.detail-block ul{margin:0;padding-left:1.2em}.company-list{margin:0}.company-list div{display:grid;grid-template-columns:170px 1fr;gap:28px;padding:26px 0;border-bottom:1px solid rgba(7,22,47,.12)}.company-list dt{font-weight:700;color:var(--blue)}.company-list dd{margin:0;color:var(--muted);line-height:1.9}.small-note{font-size:12px;color:var(--muted)}
.contact{padding:150px 0;background:linear-gradient(135deg,rgba(10,46,85,.80),rgba(28,95,146,.55)),url('/images/contact.jpg') center/cover no-repeat;color:#fff;text-align:center}.contact p{color:rgba(255,255,255,.78);line-height:2}.text-link{display:inline-block;margin-top:18px;font-family:'Manrope',sans-serif;font-size:13px;font-weight:700;letter-spacing:.08em;border-bottom:1px solid rgba(255,255,255,.62);padding-bottom:8px}.site-footer{background:#fff;color:rgba(23,32,51,.60);padding:56px 0;border-top:1px solid rgba(7,17,31,.08);font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.footer-links{display:flex;gap:22px;flex-wrap:wrap}.footer-links a{color:var(--blue)}
.js-reveal,.business-card,.work-card,.achievement-list div,.company-list div{opacity:0;transform:translateY(34px);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1),box-shadow .28s ease}.is-visible{opacity:1!important;transform:translateY(0)!important}.business-card:nth-child(2),.work-card:nth-child(2){transition-delay:.06s}.business-card:nth-child(3),.work-card:nth-child(3){transition-delay:.12s}.business-card:nth-child(4){transition-delay:.18s}
@media(max-width:1080px){.header-inner{height:96px}.site-header.is-scrolled .header-inner{height:72px}.global-nav{gap:18px;font-size:10px}.two-column,.image-split,.image-split.reverse,.detail-grid{grid-template-columns:1fr}.split-visual{min-height:460px}.split-text{padding:90px 48px}.business-grid,.work-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.container,.narrow,.hero-inner{width:min(100% - 34px,1320px)}.header-inner{width:min(100% - 32px,1360px);height:84px}.brand img{width:178px}.site-header.is-scrolled .header-inner{height:66px}.site-header.is-scrolled .brand img{width:154px}.global-nav a:not(.lang):not(:last-child){display:none}.hero{min-height:760px}.hero-inner{padding-top:84px}.pc-only{display:none}.section,.content-section{padding:92px 0}.page-hero{padding:150px 0 80px}.business-grid,.work-grid{grid-template-columns:1fr}.card-image{height:240px}.company-list div{grid-template-columns:1fr;gap:8px}.footer-inner{flex-direction:column}.split-text{padding:82px 24px}.split-visual{min-height:340px}.scroll-sign{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js-reveal,.business-card,.work-card,.achievement-list div,.company-list div{opacity:1;transform:none}.hero-bg,.hero-inner{transform:none;opacity:1}}

/* --------------------------------------------------
   v7 refinement: inner page breathing space & calm rhythm
--------------------------------------------------- */

/* 中ページは左右余白をさらに広く取り、読み物として落ち着かせる */
.page-hero .container,
.content-section > .container{
  width:min(1120px, calc(100% - 160px));
}

/* 詳細ページの本文幅を絞って、見出しと本文の読みやすさを上げる */
.detail-grid{
  grid-template-columns:240px minmax(0, 1fr);
  gap:86px;
}

/* 見出し・小見出しの自然な改行 */
.page-hero h1,
.content-section h2,
.detail-block h3,
.split-text h2,
.section-head h2{
  text-wrap:balance;
  word-break:keep-all;
  overflow-wrap:anywhere;
}

.page-hero h1{
  max-width:760px;
}

.page-hero p{
  max-width:720px;
}

.content-section h2{
  max-width:360px;
}

.detail-block h3{
  max-width:760px;
  font-size:19px;
  line-height:1.65;
  font-weight:700;
  letter-spacing:.015em;
}

.detail-block p,
.detail-block li{
  font-size:15px;
  line-height:2.15;
}

/* セクションごとに、白・淡いブルー・淡いサンドを使い分けて締まりを作る */
.content-section{
  background:#fff;
}

main > .content-section:nth-of-type(even):not(.soft):not(.sand){
  background:linear-gradient(180deg, #ffffff 0%, #f4fbfe 100%);
}

.content-section.soft{
  background:linear-gradient(180deg, #fafdff 0%, #eef8fc 100%);
}

.content-section.sand{
  background:linear-gradient(180deg, #ffffff 0%, #fbf7ef 100%);
}

/* 区切り線を少し繊細に */
.content-section{
  border-bottom:1px solid rgba(7,17,31,.065);
}

.detail-block{
  border-top:1px solid rgba(7,17,31,.085);
}

/* 中ページのHeroも少し余白を持たせて上品に */
.page-hero{
  padding:230px 0 122px;
  background:linear-gradient(180deg, #f5fbfe 0%, #ffffff 100%);
}

.page-hero .section-kicker{
  margin-bottom:30px;
}

/* セクションタイトルは少し小さく、太く。Heroとの強弱をつける */
.content-section h2,
.split-text h2,
.section-head h2,
.contact h2{
  font-size:clamp(28px, 2.55vw, 34px);
  line-height:1.48;
  font-weight:700;
  letter-spacing:.005em;
}

.section-kicker{
  margin-bottom:28px;
}

/* ABOUT / BUSINESS など画像分割セクションの文字側にも余白を増やす */
.split-text{
  padding:130px min(9vw, 140px);
}

/* レスポンシブ調整 */
@media(max-width:1080px){
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 96px, 1120px);
  }
  .detail-grid{
    grid-template-columns:1fr;
    gap:48px;
  }
  .content-section h2{
    max-width:720px;
  }
}

@media(max-width:680px){
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 40px, 1120px);
  }
  .page-hero{
    padding:150px 0 84px;
  }
  .content-section h2,
  .split-text h2,
  .section-head h2,
  .contact h2{
    font-size:clamp(26px, 8vw, 32px);
    line-height:1.42;
  }
  .detail-block h3{
    font-size:18px;
  }
  .split-text{
    padding:84px 24px;
  }
}


/* --------------------------------------------------
   v8: Responsive menu & breathing space after Hero
--------------------------------------------------- */

/* Hero直下の余韻。写真セクションが詰まりすぎないようにする */
.hero + .image-split{
  margin-top:clamp(88px, 9vw, 148px);
}

/* 直下のABOUTは写真も少し柔らかく */
.hero + .image-split .split-visual{
  min-height:clamp(420px, 48vw, 680px);
}

/* ハンバーガーはPCでは非表示 */
.menu-toggle{
  display:none;
  width:46px;
  height:46px;
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer;
  position:relative;
  z-index:80;
}
.menu-toggle span{
  display:block;
  width:24px;
  height:1px;
  margin:6px auto;
  background:var(--text);
  transition:transform .32s cubic-bezier(.22,1,.36,1), opacity .24s ease;
}
body.menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(38deg)}
body.menu-open .menu-toggle span:nth-child(2){opacity:0}
body.menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-38deg)}

/* 中ページの左右余白をさらに少しだけゆったり */
.page-hero .container,
.content-section > .container{
  width:min(1100px, calc(100% - 180px));
}

/* 見出しブロックの上下余白を整える */
.page-hero{
  padding:238px 0 128px;
}
.content-section{
  padding:116px 0;
}

/* トップページのセクション間にも少し呼吸を追加 */
.section{
  padding:178px 0;
}
.image-split + .section,
.section + .image-split{
  margin-top:0;
}

@media(max-width:1080px){
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 104px, 1100px);
  }
  .hero + .image-split{
    margin-top:104px;
  }
}

@media(max-width:760px){
  body.menu-open{overflow:hidden;}

  .header-inner{
    height:86px;
  }
  .brand img{
    width:172px;
  }
  .site-header.is-scrolled .brand img{
    width:148px;
  }

  .menu-toggle{
    display:block;
  }

  .global-nav{
    position:fixed;
    inset:0;
    z-index:70;
    min-height:100dvh;
    padding:124px 34px 44px;
    background:rgba(255,255,255,.965);
    backdrop-filter:blur(20px);
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px);
    transition:
      opacity .34s cubic-bezier(.22,1,.36,1),
      visibility .34s cubic-bezier(.22,1,.36,1),
      transform .34s cubic-bezier(.22,1,.36,1);
  }
  body.menu-open .global-nav{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .global-nav a,
  .global-nav a:not(.lang):not(:last-child){
    display:block;
  }
  .global-nav a{
    width:100%;
    padding:19px 0;
    border-bottom:1px solid rgba(7,17,31,.085);
    font-size:20px;
    font-weight:600;
    letter-spacing:.04em;
    color:var(--text);
  }
  .global-nav .lang{
    color:var(--gold)!important;
  }
  .global-nav::after{
    content:"BLUE JAY ENTERTAINMENT\A Since 1993 / Shibuya, Tokyo";
    white-space:pre-line;
    margin-top:auto;
    padding-top:38px;
    font-family:'Manrope',sans-serif;
    font-size:11px;
    line-height:1.9;
    letter-spacing:.11em;
    color:rgba(23,32,51,.48);
  }

  .hero{
    min-height:760px;
  }
  .hero-inner{
    padding-top:84px;
  }
  .hero + .image-split{
    margin-top:76px;
  }
  .hero + .image-split .split-text{
    padding-top:0;
  }

  .section{
    padding:104px 0;
  }
  .page-hero{
    padding:146px 0 84px;
  }
  .content-section{
    padding:92px 0;
  }
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 42px, 1100px);
  }
  .split-text{
    padding:76px 24px 84px;
  }
  .split-visual{
    min-height:360px;
  }
}

@media(max-width:420px){
  .brand img{width:156px;}
  .site-header.is-scrolled .brand img{width:138px;}
  .global-nav{padding-left:26px;padding-right:26px;}
  .global-nav a{font-size:18px;}
  .hero{min-height:720px;}
}


/* --------------------------------------------------
   v9: 5GRFX template polish — centered inner rhythm
--------------------------------------------------- */

/* 小さめノートPCで左に寄って見えないよう、中ページの読み幅を中央に締める */
.page-hero .container,
.content-section > .container{
  width:min(1040px, calc(100% - clamp(64px, 12vw, 190px)));
  margin-left:auto;
  margin-right:auto;
}

/* 中ページタイトルは少し控えめに。余白で品を出す */
.page-hero{
  padding:220px 0 112px;
}
.page-hero h1{
  font-size:clamp(34px, 3.4vw, 48px);
  line-height:1.28;
  font-weight:700;
  letter-spacing:.01em;
  max-width:720px;
  word-break:keep-all;
  overflow-wrap:normal;
  text-wrap:balance;
}
.page-hero p{
  max-width:680px;
  font-size:16px;
}

/* 詳細ページの左右バランス。左見出しを少し細く、本文側を読みやすく */
.detail-grid{
  grid-template-columns:220px minmax(0, 1fr);
  gap:78px;
}
.content-section{
  padding:108px 0;
}
.content-section h2{
  max-width:420px;
  font-size:clamp(26px, 2.2vw, 32px);
  line-height:1.55;
  font-weight:700;
  word-break:keep-all;
  overflow-wrap:normal;
  text-wrap:balance;
}
.detail-block h3,
.card-body h3,
.achievement-list strong,
.company-list dt{
  word-break:keep-all;
  overflow-wrap:normal;
  line-break:strict;
}
.detail-block h3{
  font-size:18px;
  line-height:1.7;
  max-width:760px;
}
.detail-block p,
.detail-block li,
.company-list dd,
.message-text p,
.lead{
  line-break:strict;
  word-break:normal;
  overflow-wrap:break-word;
  text-wrap:pretty;
}
.nowrap{white-space:nowrap;}

/* 「。」だけ改行などが出にくいように本文幅と行間を安定させる */
.detail-block p{
  max-width:760px;
}
.detail-block li{
  padding:.12em 0;
}

/* 代表サイン・人物写真は既存レイアウトにそっと差し込む */
.signature-wrap{
  margin-top:34px;
}
.signature-img{
  width:min(220px, 58vw);
  height:auto;
  opacity:.86;
}
.person-profile{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.person-photo{
  width:92px;
  height:110px;
  object-fit:cover;
  border-radius:10px;
  filter:saturate(.86) contrast(.96);
  box-shadow:0 12px 30px rgba(7,17,31,.10);
}
.person-profile h3{
  margin-top:0;
}
.person-profile p{
  margin-top:0;
}

/* 大きめ画面では余白を増やしすぎず、中央で落ち着く幅に保つ */
@media (min-width:1440px){
  .page-hero .container,
  .content-section > .container{
    width:1080px;
  }
}

/* 小さめノートPC専用：右側だけ空いて見える状態を防ぐ */
@media (max-width:1280px) and (min-width:1091px){
  .page-hero .container,
  .content-section > .container{
    width:min(980px, calc(100% - 120px));
  }
  .detail-grid{
    grid-template-columns:210px minmax(0,1fr);
    gap:68px;
  }
}

@media(max-width:1080px){
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 88px, 980px);
  }
  .detail-grid{
    grid-template-columns:1fr;
    gap:42px;
  }
  .content-section h2{
    max-width:720px;
  }
}

@media(max-width:680px){
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 40px, 980px);
  }
  .page-hero{
    padding:142px 0 78px;
  }
  .page-hero h1{
    font-size:clamp(30px, 8.2vw, 38px);
  }
  .content-section{
    padding:86px 0;
  }
  .content-section h2{
    font-size:clamp(24px, 7vw, 30px);
  }
  .person-profile{
    grid-template-columns:74px minmax(0,1fr);
    gap:18px;
  }
  .person-photo{
    width:74px;
    height:88px;
    border-radius:8px;
  }
}


/* --------------------------------------------------
   v10: template-grade spacing and detail layout polish
--------------------------------------------------- */

/* 中ページの詳細グリッド：左見出しと右本文の重なりを防ぎ、余白を美しく保つ */
.detail-grid{
  grid-template-columns: minmax(240px, 0.34fr) minmax(0, 1fr);
  gap: clamp(72px, 7vw, 120px);
  align-items:start;
}
.detail-grid > div{
  min-width:0;
}
.detail-grid > div:first-child{
  max-width:320px;
}
.detail-grid > div:first-child h2,
.detail-grid > div:first-child .section-kicker{
  max-width:100%;
}
.detail-grid > div:first-child h2{
  font-size:clamp(26px, 2.15vw, 32px);
  line-height:1.52;
  letter-spacing:.005em;
}
.detail-grid > div:last-child{
  max-width:780px;
}

/* 右側本文ブロックにも呼吸を。小見出しと本文の間隔もやや広めに */
.detail-block{
  padding:34px 0;
}
.detail-block:first-child{
  padding-top:30px;
}
.detail-block h3{
  margin-bottom:20px;
  font-size:clamp(17px, 1.45vw, 20px);
  line-height:1.65;
}
.detail-block p,
.detail-block li{
  font-size:15px;
  line-height:2.18;
}
.detail-block ul{
  padding-left:1.1em;
}

/* ページタイトルは主張を少し抑えて、上品な導入にする */
.page-hero h1{
  font-size:clamp(32px, 3vw, 44px);
  line-height:1.32;
}
.page-hero{
  padding:214px 0 106px;
}

/* トップのカード群・事業内容項目は左右にもう少し余白を持たせる */
.section > .container,
.business-grid-wrap,
.cards-container{
  width:min(1240px, calc(100% - clamp(72px, 9vw, 168px)));
  margin-left:auto;
  margin-right:auto;
}
.business-grid,
.work-grid{
  gap:32px;
}
.card-body{
  padding:38px 34px 44px;
}
.card-body h3{
  line-height:1.45;
  word-break:keep-all;
  overflow-wrap:normal;
}
.card-body p{
  line-height:2.05;
}

/* 日本語の不自然な一文字改行をできる限り軽減 */
h1,h2,h3,h4,.section-kicker,.card-body h3,.detail-block h3{
  line-break:strict;
  word-break:keep-all;
  overflow-wrap:normal;
}
p,li,dd{
  line-break:strict;
  word-break:normal;
  overflow-wrap:break-word;
}

/* ノートPC幅：中央に締めつつ、左右余白と本文幅のバランスを維持 */
@media (max-width:1280px) and (min-width:1091px){
  .page-hero .container,
  .content-section > .container{
    width:min(1040px, calc(100% - 128px));
  }
  .detail-grid{
    grid-template-columns:260px minmax(0, 1fr);
    gap:82px;
  }
  .detail-grid > div:first-child{
    max-width:260px;
  }
  .detail-grid > div:first-child h2{
    font-size:30px;
  }
  .section > .container{
    width:min(1180px, calc(100% - 112px));
  }
}

/* タブレット幅：左右2カラムを無理に保たず、ゆったり縦積みにする */
@media(max-width:1080px){
  .detail-grid{
    grid-template-columns:1fr;
    gap:38px;
  }
  .detail-grid > div:first-child,
  .detail-grid > div:last-child{
    max-width:760px;
  }
  .detail-grid > div:first-child h2{
    max-width:720px;
  }
  .section > .container{
    width:min(100% - 88px, 980px);
  }
  .business-grid,
  .work-grid{
    gap:28px;
  }
}

/* スマホ幅：読みやすさ最優先。左右余白は残しつつ窮屈にしない */
@media(max-width:680px){
  .section > .container,
  .page-hero .container,
  .content-section > .container{
    width:min(100% - 40px, 980px);
  }
  .page-hero h1{
    font-size:clamp(28px, 7.5vw, 36px);
  }
  .detail-grid > div:first-child h2{
    font-size:clamp(24px, 7vw, 30px);
  }
  .card-body{
    padding:34px 28px 40px;
  }
}


/* --------------------------------------------------
   v11: Home Hero centered on desktop + light opening motion
--------------------------------------------------- */
@media (min-width: 1081px){
  .home-hero .hero-inner{
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }
  .home-hero .hero-lead{
    margin-left:auto;
    margin-right:auto;
  }
  .home-hero .eyebrow,
  .home-hero h1,
  .home-hero .hero-copy,
  .home-hero .hero-lead{
    animation:heroTextIn .95s cubic-bezier(.22,1,.36,1) both;
  }
  .home-hero h1{animation-delay:.12s;}
  .home-hero .hero-copy{animation-delay:.24s;}
  .home-hero .hero-lead{animation-delay:.36s;}
  .home-hero .hero-bg{
    animation:heroImageEase 1.8s cubic-bezier(.22,1,.36,1) both;
  }
}
@keyframes heroTextIn{
  from{opacity:0; transform:translateY(18px); filter:blur(5px);}
  to{opacity:1; transform:translateY(0); filter:blur(0);}
}
@keyframes heroImageEase{
  from{filter:brightness(1.08) contrast(.94) saturate(.70); transform:scale(1.035);}
  to{filter:brightness(1.05) contrast(.96) saturate(.76); transform:scale(1);}
}

/* title line-break helper */
.title-break{display:block;}
@media (max-width:680px){
  .title-break{display:none;}
}


/* --------------------------------------------------
   v12: Blue Jay entertainment accents + subtle rhythm
--------------------------------------------------- */
body{
  background:
    radial-gradient(circle at 3% 18%, rgba(28,95,146,.055), transparent 260px),
    radial-gradient(circle at 96% 36%, rgba(179,148,82,.055), transparent 300px),
    linear-gradient(180deg,#fff 0%,#fbfdff 42%,#fff 100%);
}
main{overflow:hidden;}
.hand-note{
  position:absolute;
  z-index:3;
  font-family:'Yomogi','Noto Sans JP',cursive;
  font-size:clamp(18px,2.1vw,28px);
  line-height:1;
  letter-spacing:.03em;
  color:rgba(28,95,146,.54);
  transform:rotate(-7deg);
  pointer-events:none;
  white-space:nowrap;
}
.hero-note{right:min(8vw,110px);bottom:clamp(90px,12vh,150px);color:rgba(255,255,255,.70);text-shadow:0 8px 28px rgba(0,0,0,.25);}
.section-note{left:clamp(22px,4vw,72px);top:clamp(28px,4vw,70px);color:rgba(28,95,146,.42);}
.section-note.right{left:auto;right:clamp(24px,5vw,90px);top:54px;color:rgba(179,148,82,.46);transform:rotate(6deg);}
.section-note.light{color:rgba(255,255,255,.56);left:auto;right:clamp(24px,5vw,92px);top:58px;transform:rotate(-4deg);}
.page-note{right:clamp(24px,7vw,120px);bottom:clamp(38px,5vw,78px);color:rgba(28,95,146,.30);}
.bje-accent,.bje-rhythm,.page-accent{position:relative;}
.bje-accent::before,.page-accent::before{
  content:"";
  position:absolute;
  inset:auto auto 8% -120px;
  width:360px;height:520px;
  background:
    linear-gradient(135deg,rgba(28,95,146,.09),transparent 62%),
    radial-gradient(circle at 30% 20%,rgba(179,148,82,.08),transparent 42%);
  border-radius:45% 55% 50% 50%;
  filter:blur(.2px);
  opacity:.72;
  pointer-events:none;
}
.bje-accent-stage::after{
  content:"";
  position:absolute;
  right:-110px;bottom:8%;
  width:340px;height:340px;
  background:repeating-linear-gradient(90deg,rgba(28,95,146,.055) 0 1px,transparent 1px 28px),radial-gradient(circle,rgba(28,95,146,.075),transparent 62%);
  transform:rotate(-9deg);
  border-radius:50%;
  pointer-events:none;
}
.bje-rhythm{
  background:
    linear-gradient(180deg,#ffffff 0%,#f3fbfe 68%,#fbf7ef 100%);
}
.bje-rhythm::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 12% 18%,rgba(28,95,146,.055),transparent 260px),
    radial-gradient(circle at 88% 68%,rgba(179,148,82,.055),transparent 280px);
  pointer-events:none;
}
.bje-rhythm > .container{position:relative;z-index:1;}
.bje-accent-sea{position:relative;}
.bje-accent-sea::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(255,255,255,.045),transparent 36%),radial-gradient(circle at 78% 12%,rgba(255,255,255,.10),transparent 260px);
  pointer-events:none;
}
.business-card,.work-card{border-radius:2px;}
.business-card:nth-child(even){transform:translateY(18px);}
.business-card:nth-child(even).is-visible{transform:translateY(18px)!important;}
.business-card:hover:nth-child(even){transform:translateY(8px)!important;}
.card-body{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);}
.image-split{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);}
.image-split.reverse{background:linear-gradient(180deg,#fff 0%,#fbf7ef 100%);}
.split-text{position:relative;z-index:2;}
.split-text::before{
  content:"";
  position:absolute;
  width:72px;height:72px;
  right:min(8vw,88px);top:min(8vw,88px);
  border:1px solid rgba(179,148,82,.22);
  border-radius:50%;
  opacity:.8;
  pointer-events:none;
}
.content-section{position:relative;}
.content-section::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(28,95,146,.16),transparent);
}
.global-nav a{font-size:11px;}
.site-header.is-scrolled .global-nav{font-size:10px;}
@media(max-width:760px){
  .global-nav a{font-size:16px;padding:15px 0;letter-spacing:.055em;}
  .global-nav::after{font-size:10px;padding-top:28px;}
  .hero-note{right:26px;bottom:78px;font-size:20px;}
  .section-note,.section-note.right,.section-note.light,.page-note{font-size:18px;opacity:.78;}
  .section-note{top:24px;left:22px;}
  .section-note.right,.section-note.light{right:22px;top:24px;}
  .page-note{right:22px;bottom:30px;}
  .business-card:nth-child(even),.business-card:nth-child(even).is-visible{transform:none!important;}
  .split-text::before{width:52px;height:52px;right:24px;top:44px;}
}
@media(max-width:420px){
  .global-nav a{font-size:15px;padding:14px 0;}
  .hand-note{display:none;}
}

/* --------------------------------------------------
   v13: Corporate × Entertainment × Street / Surf / Festival air
--------------------------------------------------- */
:root{
  --v13-ink:#08243a;
  --v13-blue:#0f5890;
  --v13-sand:#efe8dc;
  --v13-cream:#fbf7ef;
  --v13-smoke:#eef3f4;
  --v13-line:rgba(8,36,58,.14);
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.34;
  background-image:
    radial-gradient(rgba(8,36,58,.10) .55px, transparent .55px),
    linear-gradient(120deg, rgba(179,148,82,.04), transparent 36%, rgba(28,95,146,.035));
  background-size:5px 5px, 100% 100%;
  mix-blend-mode:multiply;
}
.site-header{
  background:rgba(255,255,255,.91);
}
.header-inner{height:108px;}
.brand img{width:222px;}
.global-nav{gap:30px;}
.global-nav a{position:relative;}
.global-nav a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-10px;height:1px;background:var(--v13-blue);transition:.26s ease;
}
.global-nav a:hover::after{right:0;}
.v13-hero{
  min-height:94vh;
  color:var(--v13-ink);
  background:
    linear-gradient(90deg, rgba(251,247,239,.92) 0%, rgba(251,247,239,.70) 39%, rgba(255,255,255,.08) 72%),
    #fbf7ef;
}
.v13-hero .hero-bg{
  left:43%;
  width:57%;
  background:
    linear-gradient(90deg,rgba(251,247,239,.10),rgba(251,247,239,.03)),
    url('/images/hero.jpg') center/cover no-repeat;
  filter:brightness(1.08) contrast(.92) saturate(.70);
  opacity:.92;
}
.v13-hero::before{
  content:"";
  position:absolute;
  left:-110px;bottom:2%;
  width:520px;height:620px;
  background:url('/images/v13-palm.svg') center/contain no-repeat;
  opacity:.18;
  z-index:1;
  pointer-events:none;
}
.v13-hero::after{
  content:"";
  position:absolute;
  right:-240px;bottom:-40px;
  width:980px;height:360px;
  background:url('/images/v13-wave.svg') center/contain no-repeat;
  opacity:.16;
  z-index:1;
  pointer-events:none;
}
.v13-hero .hero-overlay{
  background:
    linear-gradient(to bottom,rgba(251,247,239,.18),rgba(251,247,239,.02) 58%,rgba(8,36,58,.08)),
    radial-gradient(circle at 64% 42%,rgba(255,255,255,.42),transparent 26%);
}
.v13-hero .hero-inner{
  color:var(--v13-ink);
  text-align:left;
  align-items:flex-start;
  width:min(1320px,calc(100% - 96px));
  padding-top:100px;
}
@media (min-width:1081px){
  .home-hero.v13-hero .hero-inner{
    text-align:left;
    align-items:flex-start;
  }
  .home-hero.v13-hero .hero-lead{margin-left:0;margin-right:0;}
}
.v13-hero .eyebrow{color:var(--v13-blue);text-shadow:none;}
.v13-hero h1{
  color:var(--v13-ink);
  text-shadow:none;
  font-family:'Manrope','Noto Sans JP',sans-serif;
  font-weight:700;
  letter-spacing:.01em;
  font-size:clamp(48px,5.45vw,78px);
}
.v13-hero .hero-copy{
  color:var(--v13-ink);
  font-family:'Manrope','Noto Sans JP',sans-serif;
  font-size:clamp(20px,2.0vw,28px);
  text-shadow:none;
  font-weight:700;
  letter-spacing:.035em;
}
.v13-hero .hero-lead{
  color:rgba(8,36,58,.72);
  text-shadow:none;
  max-width:690px;
}
.v13-hero-word{
  position:absolute;
  right:4.5vw;top:17vh;
  z-index:2;
  writing-mode:vertical-rl;
  font-family:'Manrope',sans-serif;
  font-size:clamp(72px,12vw,168px);
  font-weight:800;
  letter-spacing:.02em;
  color:rgba(8,36,58,.075);
  line-height:.85;
  pointer-events:none;
}
.hero-action{
  display:inline-flex;align-items:center;gap:18px;margin-top:34px;
  font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--v13-ink);border-bottom:1px solid rgba(8,36,58,.32);padding-bottom:10px;
}
.hero-action::after{content:"";width:72px;height:1px;background:rgba(8,36,58,.42);}
.v13-hero .hero-note{
  right:min(12vw,170px);bottom:clamp(56px,9vh,110px);
  color:rgba(15,88,144,.66);
  text-shadow:none;
  font-size:clamp(20px,2.6vw,34px);
}
.v13-hero .scroll-sign{color:rgba(8,36,58,.42);}
.hand-note{font-family:'Yomogi','Noto Sans JP',cursive;}
.section-note{font-size:clamp(17px,1.8vw,24px);opacity:.72;}
.v13-bgword{
  position:absolute;
  z-index:0;
  left:50%;top:36px;
  transform:translateX(-50%);
  font-family:'Manrope',sans-serif;
  font-size:clamp(62px,10vw,150px);
  font-weight:800;
  letter-spacing:.025em;
  color:rgba(8,36,58,.045);
  line-height:1;
  pointer-events:none;
  white-space:nowrap;
}
.v13-bgword.light{color:rgba(255,255,255,.09);}
.v13-about,.v13-company{position:relative;background:linear-gradient(180deg,#fff 0%,#f9fbfb 100%);}
.v13-about::after{
  content:"";position:absolute;right:-180px;bottom:3%;width:900px;height:520px;
  background:url('/images/v13-stage.svg') center/contain no-repeat;opacity:.10;z-index:0;pointer-events:none;
}
.v13-company::after{
  content:"";position:absolute;right:-120px;bottom:6%;width:900px;height:360px;
  background:url('/images/v13-city.svg') center/contain no-repeat;opacity:.11;z-index:0;pointer-events:none;
}
.v13-business{
  background:
    linear-gradient(180deg,#fbf7ef 0%,#f1f6f7 52%,#fff 100%);
}
.v13-business::after{
  content:"";position:absolute;left:-230px;bottom:7%;width:900px;height:520px;
  background:url('/images/v13-stage.svg') center/contain no-repeat;opacity:.115;z-index:0;pointer-events:none;
}
.v13-works{
  background:
    linear-gradient(135deg,rgba(8,36,58,.98),rgba(10,46,85,.93) 46%,rgba(15,88,144,.88)),
    url('/images/works.jpg') center/cover no-repeat;
}
.v13-works::after{
  content:"";position:absolute;left:-160px;top:10%;width:520px;height:620px;
  background:url('/images/v13-palm.svg') center/contain no-repeat;opacity:.08;z-index:0;pointer-events:none;
}
.v13-works > .container{position:relative;z-index:1;}
.section-head{position:relative;padding-top:8px;}
.section-head::before,.split-text::after{
  content:"";display:block;width:92px;height:1px;background:linear-gradient(90deg,var(--v13-blue),transparent);margin-bottom:24px;
}
.split-text::after{position:absolute;left:min(9vw,140px);top:92px;margin:0;}
.business-grid{gap:22px;align-items:stretch;}
.business-card{
  min-height:100%;
  border:1px solid rgba(8,36,58,.07);
  box-shadow:0 18px 46px rgba(8,36,58,.055);
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(3px);
}
.business-card:nth-child(even),.business-card:nth-child(even).is-visible,.business-card:hover:nth-child(even){transform:translateY(0)!important;}
.business-card:hover{transform:translateY(-6px)!important;box-shadow:0 28px 70px rgba(8,36,58,.12);}
.card-image{height:176px;filter:saturate(.78) contrast(.94);}
.card-body{padding:36px 28px 38px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,251,251,.96));}
.card-body span{font-size:20px;color:var(--v13-blue);letter-spacing:.02em;}
.card-body h3{font-size:18px;letter-spacing:.02em;}
.card-body p{font-size:13.5px;line-height:2.05;}
.image-split .split-visual{position:relative;z-index:1;}
.image-split .split-visual::after{
  content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.30);box-shadow:inset 0 0 0 18px rgba(255,255,255,.035);pointer-events:none;
}
.contact{
  background:
    linear-gradient(135deg,rgba(8,36,58,.86),rgba(15,88,144,.58)),
    url('/images/contact.jpg') center/cover no-repeat;
}
.site-footer{
  background:linear-gradient(180deg,#fff,#f8fbfc);
}
.footer-inner{border-top:1px solid rgba(8,36,58,.10);padding-top:34px;}
@media(max-width:1080px){
  .v13-hero .hero-bg{left:36%;width:64%;}
  .v13-hero .hero-inner{width:min(100% - 72px,1000px);}
  .v13-hero-word{right:0;opacity:.7;}
  .business-grid{grid-template-columns:repeat(2,1fr);}
  .split-text::after{left:48px;top:70px;}
}
@media(max-width:760px){
  .v13-hero{min-height:780px;background:#fbf7ef;}
  .v13-hero .hero-bg{left:0;right:0;top:40%;width:100%;height:60%;opacity:.42;}
  .v13-hero .hero-overlay{background:linear-gradient(to bottom,#fbf7ef 0%,rgba(251,247,239,.88) 36%,rgba(251,247,239,.42) 100%);}
  .v13-hero .hero-inner{width:min(100% - 40px,1000px);padding-top:104px;}
  .v13-hero h1{font-size:clamp(39px,12vw,56px);}
  .v13-hero .hero-lead{font-size:14px;line-height:2;}
  .v13-hero-word{font-size:86px;top:52%;right:-14px;color:rgba(8,36,58,.055);}
  .v13-hero .hero-note{display:block;right:24px;bottom:50px;font-size:22px;}
  .hero-action::after{width:48px;}
  .business-grid{grid-template-columns:1fr;gap:22px;}
  .card-image{height:210px;}
  .v13-bgword{font-size:58px;top:24px;}
  .split-text::after{left:24px;top:54px;}
  .v13-about::after,.v13-business::after,.v13-company::after,.v13-works::after{opacity:.07;}
  .global-nav a{font-size:14px;padding:13px 0;}
}
@media(max-width:420px){
  .hand-note:not(.hero-note){display:none;}
  .v13-hero .hero-note{display:block;}
}

/* --------------------------------------------------
   v13.5: Reference mockup direction - stronger visual rhythm
--------------------------------------------------- */
.v13-page{background:#f7f2e9;color:#08243a;}
.v13-page main{background:#f7f2e9;}
.v13-page::before{opacity:.46;}
.v13-header{background:rgba(247,242,233,.93);border-bottom:0;box-shadow:none;}
.v13-header .header-inner{height:102px;width:min(1460px,calc(100% - 64px));}
.v13-header .brand img{width:206px;}
.brand-script{margin:0 auto 0 28px;font-family:'Yomogi','Noto Sans JP',cursive;font-size:23px;color:rgba(8,36,58,.78);transform:rotate(-4deg);white-space:nowrap;}
.v13-header .global-nav{gap:32px;color:#08243a;font-size:12px;font-weight:800;}
.v13-header .lang{display:none;}
.v13-hero2{position:relative;min-height:760px;padding:150px min(7vw,110px) 0;overflow:hidden;background:linear-gradient(180deg,#fbf7ef 0%,#f2eee5 100%);}
.v13-hero2::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 58% 43%,rgba(255,255,255,.90),transparent 25%),linear-gradient(90deg,rgba(251,247,239,.96) 0%,rgba(251,247,239,.78) 44%,rgba(251,247,239,.18) 68%,rgba(251,247,239,.02));z-index:2;pointer-events:none;}
.v13-hero2::after{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;background:linear-gradient(180deg,transparent,#f2eee5 86%);z-index:3;pointer-events:none;}
.hero-copybox{position:relative;z-index:5;max-width:650px;padding-top:58px;}
.v13-hero2 .eyebrow{color:#0f5890;margin-bottom:28px;letter-spacing:.12em;}
.v13-hero2 h1{margin:0;font-family:'Manrope','Noto Sans JP',sans-serif;font-size:clamp(54px,5.6vw,92px);line-height:.98;font-weight:800;letter-spacing:-.035em;color:#08243a;}
.jp-copy{margin:26px 0 0;font-size:16px;font-weight:700;color:#08243a;letter-spacing:.04em;}
.v13-arrow{display:inline-flex;align-items:center;gap:14px;margin-top:38px;font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;color:#08243a;text-transform:uppercase;}
.v13-arrow::after{content:"";display:block;width:92px;height:1px;background:#08243a;}
.v13-arrow.small{margin-top:0;}
.v13-arrow.small::after{width:48px;}
.hero-photo-wrap{position:absolute;right:0;top:104px;bottom:0;width:64%;z-index:1;overflow:hidden;}
.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,247,239,.28),rgba(251,247,239,0)),url('/images/hero.jpg') center/cover no-repeat;filter:saturate(.82) contrast(.95) brightness(1.04);}
.hero-photo::after{content:"";position:absolute;inset:auto 0 0;height:240px;background:linear-gradient(180deg,transparent,#f2eee5);}
.hero-vertical{position:absolute;right:6.5vw;top:115px;z-index:4;writing-mode:vertical-rl;font-family:'Manrope',sans-serif;font-size:clamp(88px,13vw,190px);font-weight:800;line-height:.82;letter-spacing:.02em;color:rgba(8,36,58,.085);pointer-events:none;}
.rider-note{right:12vw;bottom:80px;color:rgba(15,88,144,.70);font-size:clamp(24px,3vw,42px);z-index:6;transform:rotate(-7deg);}
.hero-lineart{position:absolute;z-index:4;pointer-events:none;background:center/contain no-repeat;opacity:.18;}
.palm-left{left:-120px;bottom:90px;width:430px;height:520px;background-image:url('/images/v13-palm.svg');}
.wave-bottom{right:-220px;bottom:10px;width:900px;height:260px;background-image:url('/images/v13-wave.svg');opacity:.14;}

.v13-business2{position:relative;padding:100px 0 120px;background:#f2eee5;overflow:hidden;}
.v13-business2 .container{position:relative;z-index:2;width:min(1250px,calc(100% - 96px));}
.business-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px;}
.business-title h2{margin:0;font-family:'Manrope','Noto Sans JP',sans-serif;font-size:34px;letter-spacing:.02em;color:#0f5890;}
.v13-business2 .v13-bgword{top:22px;font-size:clamp(86px,13vw,210px);color:rgba(8,36,58,.055);}
.motif{position:absolute;background:center/contain no-repeat;pointer-events:none;opacity:.105;z-index:1;}
.motif-stage{left:-220px;bottom:46px;width:760px;height:420px;background-image:url('/images/v13-stage.svg');}
.motif-city{right:-80px;bottom:20px;width:560px;height:280px;background-image:url('/images/v13-city.svg');opacity:.13;}
.motif-palm{right:-110px;top:100px;width:340px;height:430px;background-image:url('/images/v13-palm.svg');opacity:.12;}
.flat-cards{grid-template-columns:repeat(4,1fr)!important;gap:24px!important;align-items:stretch;}
.business-card.flat{min-height:360px;padding:36px 32px 30px;background:rgba(255,255,255,.74);border:0;box-shadow:0 24px 60px rgba(8,36,58,.08);backdrop-filter:blur(2px);display:flex;flex-direction:column;position:relative;overflow:hidden;}
.business-card.flat::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,#0f5890,transparent);opacity:.55;}
.business-card.flat .num{font-family:'Manrope',sans-serif;font-size:32px;font-weight:800;color:#0f5890;line-height:1;}
.business-card.flat h3{margin:16px 0 4px;font-family:'Manrope',sans-serif;font-size:17px;font-weight:800;letter-spacing:.04em;color:#08243a;}
.business-card.flat .sub{margin:0;color:#0f5890;font-size:11px;font-weight:700;line-height:1.6;}
.business-card.flat p:not(.sub){margin:22px 0 0;font-size:13.5px;line-height:2;color:#33485a;}
.business-card.flat a{margin-top:auto;display:flex;align-items:center;gap:14px;font-family:'Manrope',sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em;color:#08243a;}
.business-card.flat a::after{content:"";width:58px;height:1px;background:#08243a;}
.line-icon{width:60px;height:60px;margin:30px 0 2px;border:2px solid #0f5890;border-radius:14px;opacity:.95;position:relative;}
.line-icon.megaphone{border-radius:50% 14px 14px 50%;transform:rotate(-12deg);}.line-icon.megaphone::after{content:"";position:absolute;right:-18px;top:20px;width:20px;height:14px;border-top:2px solid #0f5890;border-bottom:2px solid #0f5890;}
.line-icon.sports{border-radius:50%;}.line-icon.sports::before{content:"";position:absolute;left:27px;top:-10px;width:2px;height:78px;background:#0f5890;transform:rotate(45deg);opacity:.55;}
.line-icon.stage{border-radius:50%;}.line-icon.stage::before{content:"";position:absolute;left:16px;top:16px;width:24px;height:24px;border:2px solid #0f5890;border-radius:50%;}.line-icon.stage::after{content:"";position:absolute;left:27px;top:-12px;width:2px;height:84px;background:#0f5890;transform:rotate(90deg);opacity:.45;}
.line-icon.book{border-radius:4px;border-width:0;}.line-icon.book::before,.line-icon.book::after{content:"";position:absolute;top:5px;width:26px;height:44px;border:2px solid #0f5890;}.line-icon.book::before{left:3px;border-radius:3px 0 0 3px}.line-icon.book::after{right:3px;border-radius:0 3px 3px 0}

.v13-aboutband{position:relative;background:linear-gradient(135deg,#08243a,#0b3555 62%,#114e78);padding:78px 0;color:#fff;overflow:hidden;}
.v13-aboutband::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 8%,rgba(255,255,255,.08),transparent 24%),url('/images/v13-palm.svg') -150px -100px/460px auto no-repeat;opacity:.75;}
.aboutband-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:center;width:min(1250px,calc(100% - 96px));}
.about-collage{position:relative;min-height:260px;display:grid;grid-template-columns:1fr 1fr;gap:0;}
.about-collage .photo{min-height:260px;background:center/cover no-repeat;filter:grayscale(1) saturate(.62) contrast(.96);opacity:.88;}
.about-collage .p1{background-image:url('/images/company.jpg');}.about-collage .p2{background-image:url('/images/works.jpg');}
.collage-note{left:-42px;bottom:28px;color:#fff;font-size:30px;line-height:1.08;transform:rotate(-7deg);}
.about-text .section-kicker{color:#d7bd80;}.about-text h2{font-size:28px;line-height:1.55;margin:0 0 24px;}.about-text p{color:rgba(255,255,255,.78);line-height:2;font-size:15px;}.v13-outline{display:inline-flex;gap:22px;align-items:center;margin-top:20px;padding:16px 26px;border:1px solid rgba(255,255,255,.45);font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;}.v13-outline::after{content:"";width:54px;height:1px;background:#fff;}

.v13-news{position:relative;background:#fbf7ef;padding:70px 0;overflow:hidden;}
.news-inner{position:relative;display:grid;grid-template-columns:220px 1fr 130px;align-items:center;gap:44px;width:min(1250px,calc(100% - 96px));}
.news-inner h2{margin:0;color:#0f5890;font-family:'Manrope',sans-serif;font-size:28px;}.news-line{display:flex;align-items:center;gap:24px;font-size:14px;}.news-line time{font-family:'Manrope',sans-serif;color:#08243a;}.news-line span{background:#08243a;color:#fff;padding:6px 16px;font-family:'Manrope',sans-serif;font-size:10px;font-weight:800;}.news-line p{margin:0;color:#33485a;}.news-note{right:70px;top:-2px;color:rgba(8,36,58,.11);font-size:76px;line-height:.8;transform:rotate(-8deg);}

.v13-footer-contact{position:relative;padding:70px 0;background:linear-gradient(180deg,#f3eee5,#ece7de);}
.contact-grid{display:grid;grid-template-columns:1.15fr 1.05fr 1.15fr 1.25fr;gap:48px;width:min(1250px,calc(100% - 96px));}
.contact-grid h3{font-size:15px;margin:0 0 24px;color:#08243a;}.contact-grid p{font-size:13px;line-height:1.9;color:#263d50;}.map-card{height:150px;background:linear-gradient(135deg,rgba(8,36,58,.08),rgba(255,255,255,.45)),url('/images/access_print.pdf');border:8px solid rgba(255,255,255,.48);position:relative;overflow:hidden;}.map-card::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(35deg,rgba(8,36,58,.08) 0 1px,transparent 1px 24px),repeating-linear-gradient(125deg,rgba(8,36,58,.06) 0 1px,transparent 1px 28px);}.map-card span{position:absolute;left:50%;top:50%;width:28px;height:28px;background:#0f5890;border-radius:50% 50% 50% 0;transform:translate(-50%,-50%) rotate(-45deg);}.map-card span::after{content:"";position:absolute;left:8px;top:8px;width:12px;height:12px;background:#fff;border-radius:50%;}
.sns-row{display:flex;gap:22px;font-family:'Manrope',sans-serif;font-size:24px;color:#0f5890;margin-bottom:24px;align-items:center;}.pdf-links{list-style:none;margin:0;padding:0;border-top:1px solid rgba(8,36,58,.16);}.pdf-links li{border-bottom:1px solid rgba(8,36,58,.16);}.pdf-links a{display:block;padding:13px 0 13px 24px;position:relative;font-size:13px;color:#263d50;}.pdf-links a::before{content:"›";position:absolute;left:4px;color:#0f5890;font-weight:800;}
.v13-bottom{background:#08243a;color:#fff;padding:26px 0;border:0;}.v13-bottom .footer-inner{border:0;padding:0;align-items:center;}.v13-bottom p{margin:0;color:rgba(255,255,255,.82);}.v13-bottom .footer-links a{color:rgba(255,255,255,.72);}

@media(max-width:1120px){.brand-script{display:none}.v13-header .global-nav{gap:18px}.hero-photo-wrap{width:60%;}.flat-cards{grid-template-columns:repeat(2,1fr)!important}.aboutband-inner,.contact-grid{grid-template-columns:1fr 1fr}.news-inner{grid-template-columns:1fr}.news-note{display:none}}
@media(max-width:760px){.v13-header .header-inner{height:78px;width:min(100% - 34px,1460px)}.v13-header .brand img{width:172px}.v13-hero2{min-height:820px;padding:112px 22px 0}.v13-hero2::before{background:linear-gradient(180deg,rgba(251,247,239,.98) 0%,rgba(251,247,239,.88) 42%,rgba(251,247,239,.18) 100%)}.hero-copybox{padding-top:24px}.v13-hero2 h1{font-size:clamp(42px,12.5vw,62px)}.hero-photo-wrap{left:0;right:0;top:380px;width:100%;height:440px}.hero-vertical{right:-10px;top:390px;font-size:86px}.rider-note{right:22px;bottom:42px;font-size:24px}.palm-left{width:260px;height:330px;left:-90px}.v13-business2{padding:80px 0}.v13-business2 .container,.aboutband-inner,.news-inner,.contact-grid{width:min(100% - 40px,1250px)}.flat-cards,.aboutband-inner,.contact-grid{grid-template-columns:1fr!important}.business-title{display:block}.business-title .v13-arrow{margin-top:20px}.about-collage{grid-template-columns:1fr}.about-collage .photo{min-height:220px}.news-line{display:block}.news-line span{display:inline-block;margin:12px 0}.global-nav a{font-size:14px!important;padding:13px 0!important}.map-card{height:180px}}

/* --------------------------------------------------
   v14: Kenzo direction - calm sunny Blue Jay style
   - Keep v13 structure, refine spacing / header / background rhythm
--------------------------------------------------- */
.v14-page{--bje-blue:#005aa7;--bje-navy:#062848;--bje-light:#f8fbfd;--bje-paper:#f6f9fb;background:#f8fbfd;color:var(--bje-navy);}
.v14-page main{background:#f8fbfd;}
.v14-page::before{opacity:.20;background-image:radial-gradient(rgba(0,90,167,.12) .6px, transparent .6px);background-size:18px 18px;}

/* header: white, calm, same impression as reference */
.v14-page .v13-header{background:rgba(255,255,255,.97)!important;border-bottom:1px solid rgba(6,40,72,.06);box-shadow:0 10px 32px rgba(6,40,72,.035);backdrop-filter:blur(10px);}
.v14-page .v13-header .header-inner{height:118px;width:min(1480px,calc(100% - 68px));}
.v14-page .v13-header .brand img{width:204px;}
.v14-page .brand-script{margin-left:30px;margin-right:auto;font-family:'Snell Roundhand','Segoe Script','Brush Script MT',cursive;font-size:20px;letter-spacing:.02em;color:rgba(6,40,72,.66);transform:rotate(-6deg);}
.v14-page .v13-header .global-nav{gap:34px;font-size:11px;font-weight:800;letter-spacing:.055em;color:rgba(6,40,72,.88);}
.v14-page .v13-header .global-nav a{position:relative;}
.v14-page .v13-header .global-nav a:first-child::after{content:"";position:absolute;left:0;right:0;bottom:-11px;height:2px;background:var(--bje-blue);}
.v14-page .menu-toggle{width:112px;height:112px;background:linear-gradient(135deg,#064d92,#003f7f);color:#fff;margin-left:28px;box-shadow:none;}
.v14-page .menu-toggle::after{content:"MENU";position:absolute;left:0;right:0;bottom:20px;text-align:center;font-family:'Manrope',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;color:#fff;}
.v14-page .menu-toggle span{background:#fff;width:34px;height:3px;left:39px;}
.v14-page .menu-toggle span:nth-child(1){top:36px}.v14-page .menu-toggle span:nth-child(2){top:48px}.v14-page .menu-toggle span:nth-child(3){top:60px}

/* hero: keep placeholder image, but remove sepia and make sunny / wide */
.v14-page .v13-hero2{min-height:820px;padding:150px min(7vw,112px) 0;background:linear-gradient(180deg,#ffffff 0%,#eef8ff 52%,#f8fbfd 100%);}
.v14-page .v13-hero2::before{background:radial-gradient(circle at 68% 30%,rgba(255,255,255,.72),transparent 27%),linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.89) 42%,rgba(255,255,255,.18) 70%,rgba(255,255,255,.03));z-index:2;}
.v14-page .v13-hero2::after{height:190px;background:linear-gradient(180deg,rgba(248,251,253,0),#f8fbfd 86%);}
.v14-page .hero-copybox{max-width:650px;padding-top:92px;}
.v14-page .v13-hero2 .eyebrow{display:none;}
.v14-page .v13-hero2 h1{font-size:clamp(58px,5.2vw,88px);line-height:1.04;letter-spacing:-.025em;color:#062848;text-shadow:none;}
.v14-page .jp-copy{margin-top:26px;font-weight:800;color:#062848;}
.v14-page .v13-arrow{color:#062848;}
.v14-page .v13-arrow::after{background:#062848;}
.v14-page .hero-photo-wrap{top:118px;width:65%;}
.v14-page .hero-photo{background:linear-gradient(90deg,rgba(255,255,255,.34),rgba(255,255,255,.08)),url('/images/hero.jpg') center/cover no-repeat;filter:saturate(1.03) contrast(.98) brightness(1.12);opacity:.95;}
.v14-page .hero-photo::after{height:260px;background:linear-gradient(180deg,transparent,#f8fbfd 92%);}
.v14-page .hero-vertical{display:none;}
.v14-page .palm-left{display:none!important;}
.v14-page .wave-bottom{opacity:.055;right:-260px;bottom:30px;filter:saturate(.8);}
.v14-page .hero-ink{position:absolute;right:2vw;bottom:34px;width:300px;height:220px;background:url('/images/v14-ink.svg') center/contain no-repeat;opacity:.36;z-index:5;pointer-events:none;}
.v14-page .rider-note{right:11vw;bottom:114px;font-family:'Snell Roundhand','Segoe Script','Brush Script MT',cursive;font-size:clamp(36px,4.2vw,68px);color:rgba(0,80,153,.76);transform:rotate(-6deg);}
.v14-page .hand-note{font-family:'Snell Roundhand','Segoe Script','Brush Script MT',cursive;}

/* Business: keep the favorite section, add height and quiet background letters */
.v14-page .v13-business2{padding:118px 0 134px;background:linear-gradient(180deg,#f8fbfd 0%,#f4f8fb 100%);min-height:610px;}
.v14-page .v13-business2::before{content:"";position:absolute;left:-140px;bottom:32px;width:620px;height:360px;background:url('/images/v13-stage.svg') left bottom/contain no-repeat;opacity:.115;z-index:1;}
.v14-page .v13-business2::after{content:"";position:absolute;right:-40px;bottom:0;width:350px;height:245px;background:url('/images/v14-ink.svg') right bottom/contain no-repeat;opacity:.32;z-index:1;}
.v14-page .v13-business2 .container{width:min(1260px,calc(100% - 108px));}
.v14-page .business-title{margin-bottom:36px;}
.v14-page .business-title h2{font-size:31px;color:#005aa7;}
.v14-page .v13-business2 .v13-bgword{top:28px;left:28%;font-size:clamp(100px,14vw,220px);color:rgba(6,40,72,.058);letter-spacing:-.045em;}
.v14-page .motif-palm{display:none!important;}
.v14-page .motif-stage{display:none!important;}
.v14-page .motif-city{right:-50px;bottom:48px;opacity:.105;}
.v14-page .flat-cards{gap:26px!important;}
.v14-page .business-card.flat{min-height:384px;background:rgba(255,255,255,.84);box-shadow:0 28px 68px rgba(6,40,72,.075);border:1px solid rgba(6,40,72,.035);}
.v14-page .business-card.flat::before{display:none;}
.v14-page .business-card.flat .num{color:#005aa7;}
.v14-page .business-card.flat .sub{color:#005aa7;}
.v14-page .line-icon{border-color:#005aa7;}
.v14-page .line-icon.megaphone::after{border-color:#005aa7;}
.v14-page .line-icon.runner{border:0;border-radius:0;background:url('/images/v14-runner.svg') center/contain no-repeat;}
.v14-page .line-icon.runner::before,.v14-page .line-icon.runner::after{display:none!important;}
.v14-page .line-icon.stage::before{border-color:#005aa7;}.v14-page .line-icon.stage::after{background:#005aa7;}.v14-page .line-icon.book::before,.v14-page .line-icon.book::after{border-color:#005aa7;}

/* About band: keep navy section, cleaner and less loud */
.v14-page .v13-aboutband{padding:88px 0;background:linear-gradient(135deg,#062848 0%,#07365e 62%,#005a96 100%);}
.v14-page .v13-aboutband::before{background:radial-gradient(circle at 12% 12%,rgba(255,255,255,.07),transparent 25%),url('/images/v14-ink.svg') right 12% top 30%/360px auto no-repeat;opacity:.62;}
.v14-page .aboutband-inner{width:min(1260px,calc(100% - 108px));}
.v14-page .about-collage .photo{filter:saturate(.88) contrast(.98) brightness(.92);opacity:.90;}
.v14-page .collage-note{font-family:'Snell Roundhand','Segoe Script','Brush Script MT',cursive;font-size:46px;}
.v14-page .since-line{font-family:'Manrope',sans-serif!important;font-size:12px!important;font-weight:800!important;letter-spacing:.18em!important;color:rgba(255,255,255,.62)!important;margin:0 0 12px!important;line-height:1.2!important;}

/* News/footer: keep structure, link area can become news/works later */
.v14-page .v13-news{background:#fff;padding:78px 0;}
.v14-page .news-inner{width:min(1260px,calc(100% - 108px));}
.v14-page .news-note{font-family:'Snell Roundhand','Segoe Script','Brush Script MT',cursive;color:rgba(6,40,72,.075);}
.v14-page .v13-footer-contact{background:linear-gradient(180deg,#f8fbfd,#eef3f7);padding:76px 0;}
.v14-page .contact-grid{width:min(1260px,calc(100% - 108px));}
.v14-page .v13-bottom{background:#062848;}

/* Lower pages: apply same calm blue/white mood without overdesigning */
.v14-page .page-hero{background:linear-gradient(180deg,#fff 0%,#eef8ff 100%);padding-top:210px;}
.v14-page .page-hero h1{color:#062848;}
.v14-page .content-section{background:#fff;}
.v14-page main > .content-section:nth-of-type(even):not(.soft):not(.sand){background:#f8fbfd;}
.v14-page .section-kicker{color:#005aa7;}
.v14-page .section-kicker::after{background:#005aa7;}

@media(max-width:1120px){
  .v14-page .v13-header .header-inner{height:96px;width:min(100% - 40px,1480px)}
  .v14-page .menu-toggle{width:88px;height:88px;margin-left:16px}.v14-page .menu-toggle::after{bottom:14px;font-size:10px}.v14-page .menu-toggle span{left:29px;width:30px}.v14-page .menu-toggle span:nth-child(1){top:28px}.v14-page .menu-toggle span:nth-child(2){top:39px}.v14-page .menu-toggle span:nth-child(3){top:50px}
  .v14-page .hero-photo-wrap{width:62%;}
}
@media(max-width:760px){
  .v14-page .v13-header .header-inner{height:82px;width:min(100% - 28px,1480px)}
  .v14-page .v13-header .brand img{width:154px}.v14-page .menu-toggle{width:64px;height:64px}.v14-page .menu-toggle::after{display:none}.v14-page .menu-toggle span{left:19px;width:26px;height:2px}.v14-page .menu-toggle span:nth-child(1){top:20px}.v14-page .menu-toggle span:nth-child(2){top:30px}.v14-page .menu-toggle span:nth-child(3){top:40px}
  .v14-page .v13-hero2{min-height:800px;padding:110px 22px 0;background:#fff;}
  .v14-page .hero-copybox{padding-top:34px;}
  .v14-page .hero-photo-wrap{top:390px;height:410px;width:100%;}
  .v14-page .rider-note{bottom:58px;right:24px;font-size:36px;}
  .v14-page .v13-business2 .container,.v14-page .aboutband-inner,.v14-page .news-inner,.v14-page .contact-grid{width:min(100% - 40px,1260px);}
  .v14-page .v13-business2 .v13-bgword{left:4%;font-size:86px;top:48px;}
  .v14-page .business-card.flat{min-height:340px;}
}


/* ---------------------------------------------------
   v15: Simple base cleanup
   - unified header/footer
   - remove handwritten notes
   - restore Works navigation
   - lighten BUSINESS background word
--------------------------------------------------- */
.v15-page .brand-script,.v15-page .hand-note{display:none!important;}
.v15-page .v13-header{background:rgba(255,255,255,.97)!important;border-bottom:1px solid rgba(6,40,72,.06);box-shadow:0 10px 32px rgba(6,40,72,.035);backdrop-filter:blur(10px);}
.v15-page .v13-header .header-inner{height:108px;width:min(1480px,calc(100% - 68px));}
.v15-page .v13-header .brand img{width:204px;}
.v15-page .v13-header .global-nav{gap:34px;font-size:11px;font-weight:800;letter-spacing:.055em;color:rgba(6,40,72,.88);}
.v15-page .v13-header .global-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-11px;height:2px;background:var(--bje-blue);opacity:0;transform:scaleX(.35);transition:.25s ease;}
.v15-page .v13-header .global-nav a:hover::after,.v15-page .v13-header .global-nav a.active::after{opacity:1;transform:scaleX(1);}
.v15-page .v13-header .global-nav a:first-child::after{opacity:0;transform:scaleX(.35);} 
.v15-page .v13-header .global-nav a:first-child:hover::after,.v15-page .v13-header .global-nav a:first-child.active::after{opacity:1;transform:scaleX(1);} 
.v15-page .hero-ink,.v15-page .hero-vertical,.v15-page .palm-left,.v15-page .motif-stage,.v15-page .motif-palm{display:none!important;}
.v15-page .wave-bottom{opacity:.035!important;}
.v15-page .v13-business2 .v13-bgword{color:rgba(6,40,72,.025)!important;}
.v15-page .v13-business2::after{display:none!important;}
.v15-page .v13-business2::before{opacity:.055!important;}
.v15-page .v13-news{background:#fff;padding:78px 0;}
.v15-page .news-line time{font-family:'Manrope','Noto Sans JP',sans-serif;font-weight:800;letter-spacing:.12em;color:#005aa7;}
.v15-page .v13-footer-contact{background:linear-gradient(180deg,#f8fbfd,#eef3f7);padding:76px 0;}
.v15-page .v13-bottom{background:#062848;color:#fff;padding:26px 0;border:0;}
.v15-page .v13-bottom .footer-inner{border:0;padding:0;align-items:center;}
.v15-page .v13-bottom p{margin:0;color:rgba(255,255,255,.82);}
.v15-page .v13-bottom .footer-links a{color:rgba(255,255,255,.72);}
@media(max-width:1120px){.v15-page .v13-header .header-inner{height:96px;width:min(100% - 40px,1480px)}.v15-page .v13-header .global-nav{gap:18px}}
@media(max-width:760px){.v15-page .v13-header .header-inner{height:78px;width:min(100% - 34px,1460px)}.v15-page .v13-header .brand img{width:172px}.v15-page .global-nav a{font-size:14px!important;padding:13px 0!important}}


/* --------------------------------------------------
   v15 Education / Planet Pop pages
--------------------------------------------------- */
.global-nav{gap:26px}
.education-page .page-hero.education-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(28,95,146,.14), transparent 34%),
    linear-gradient(180deg,#f5fbfe 0%,#ffffff 100%);
}
.education-page .education-hero::after{
  content:"EDUCATION";
  position:absolute;
  right:-.08em;
  bottom:-.22em;
  font-family:'Manrope',sans-serif;
  font-size:clamp(82px,17vw,230px);
  line-height:1;
  font-weight:800;
  letter-spacing:-.055em;
  color:rgba(28,95,146,.045);
  pointer-events:none;
}
.ed-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:30px}.hero-actions{margin-top:42px}
.v13-outline.compact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border:1px solid rgba(28,95,146,.28);color:var(--blue);font-family:'Manrope','Noto Sans JP',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#fff;transition:.25s ease}.v13-outline.compact:hover{background:var(--blue);color:#fff;transform:translateY(-2px)}
.ed-overview{display:grid;grid-template-columns:340px minmax(0,1fr);gap:78px;align-items:start}.ed-richtext{max-width:820px}.ed-richtext p{font-size:16px;line-height:2.15;color:var(--muted);margin:0 0 22px}.ed-richtext h3{font-size:20px;line-height:1.55;margin:38px 0 12px}.ed-list{margin:22px 0 0;padding-left:1.25em}.ed-list li{font-size:15px;line-height:2;color:var(--muted);margin:0 0 8px}.compact-list li{margin-bottom:4px}
.ed-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.ed-card,.level-card,.pdf-feature{background:#fff;border:1px solid rgba(7,17,31,.08);box-shadow:0 18px 48px rgba(7,22,47,.045)}.ed-card{padding:34px 30px}.ed-card h3,.level-card h3,.pdf-feature h3{margin:0 0 14px;font-size:21px;line-height:1.45}.ed-card p,.level-card p,.pdf-feature p{margin:0;color:var(--muted);font-size:14px;line-height:2}
.level-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.level-card{padding:42px 38px}.level-card .ed-actions{margin-top:26px}.pdf-feature{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:44px 42px;border-radius:2px}.video-homepage-img{width:100%;border:1px solid rgba(7,17,31,.08);box-shadow:0 24px 70px rgba(7,22,47,.10);background:#fff}.level-hero h1{max-width:820px}
@media(max-width:1080px){.global-nav{gap:16px}.ed-overview{grid-template-columns:1fr;gap:42px}.ed-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.global-nav{gap:0}.global-nav a:not(.lang):not(:last-child){display:none}.ed-actions{gap:12px}.level-grid,.ed-card-grid{grid-template-columns:1fr}.pdf-feature{display:block;padding:32px 26px}.pdf-feature .v13-arrow{margin-top:22px}.education-page .education-hero::after{font-size:96px;right:-.12em;bottom:-.12em}.ed-richtext p{font-size:15px;line-height:2.05}}

/* --------------------------------------------------
   Education readability fix: prevent Japanese heading/text overlap
--------------------------------------------------- */
.education-page .ed-overview{
  grid-template-columns:minmax(0, 360px) minmax(0, 1fr);
  gap:clamp(64px, 7vw, 120px);
}
.education-page .ed-overview > div{
  min-width:0;
}
.education-page .ed-overview h2{
  max-width:360px;
  word-break:normal;
  overflow-wrap:anywhere;
  line-break:strict;
  text-wrap:balance;
}
.education-page .ed-richtext,
.education-page .ed-richtext p,
.education-page .ed-richtext li,
.education-page .ed-richtext h3{
  min-width:0;
  word-break:normal;
  overflow-wrap:anywhere;
  line-break:strict;
}
.education-page .content-section > .container.ed-overview{
  width:min(1120px, calc(100% - clamp(80px, 11vw, 180px)));
}
@media(max-width:1180px){
  .education-page .ed-overview{
    grid-template-columns:minmax(0, 320px) minmax(0, 1fr);
    gap:58px;
  }
  .education-page .ed-overview h2{max-width:320px;}
}
@media(max-width:980px){
  .education-page .ed-overview{
    grid-template-columns:1fr;
    gap:34px;
  }
  .education-page .ed-overview h2{
    max-width:720px;
  }
  .education-page .content-section > .container.ed-overview{
    width:min(100% - 56px, 900px);
  }
}
@media(max-width:680px){
  .education-page .content-section > .container.ed-overview{
    width:min(100% - 40px, 900px);
  }
}


/* --------------------------------------------------
   Education / Planet Pop language intro visuals
--------------------------------------------------- */
.education-page .ed-language-intro{padding-top:72px;}
.education-page .ed-brand-row{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,520px);justify-content:space-between;align-items:center;gap:clamp(48px,7vw,110px);margin-bottom:68px;}
.education-page .ed-brand-row-reverse{grid-template-columns:minmax(0,520px) minmax(220px,320px);}
.education-page .planet-pop-logo{display:block;width:100%;max-width:300px;height:auto;}
.education-page .ed-brand-row-reverse .planet-pop-logo{justify-self:end;}
.education-page .ed-intro-visual{width:100%;overflow:hidden;background:#fff;}
.education-page .ed-intro-visual img{display:block;width:100%;height:auto;object-fit:contain;}
@media(max-width:980px){
  .education-page .ed-brand-row,.education-page .ed-brand-row-reverse{grid-template-columns:minmax(180px,250px) minmax(0,1fr);gap:40px;margin-bottom:52px;}
  .education-page .ed-brand-row-reverse{grid-template-columns:minmax(0,1fr) minmax(180px,250px);}
}
@media(max-width:680px){
  .education-page .ed-language-intro{padding-top:54px;}
  .education-page .ed-brand-row,.education-page .ed-brand-row-reverse{display:flex;flex-direction:column;align-items:flex-start;gap:28px;margin-bottom:44px;}
  .education-page .ed-brand-row-reverse{flex-direction:column;}
  .education-page .planet-pop-logo,.education-page .ed-brand-row-reverse .planet-pop-logo{width:210px;justify-self:auto;}
  .education-page .ed-intro-visual{width:100%;}
}


/* --------------------------------------------------
   v15.5: education directory links + stronger shrinking header
--------------------------------------------------- */
.site-header.v13-header{transition:background .32s ease, box-shadow .32s ease, border-color .32s ease;}
.site-header.v13-header .header-inner{transition:height .32s cubic-bezier(.22,1,.36,1);}
.site-header.v13-header .brand img{transition:width .32s cubic-bezier(.22,1,.36,1), transform .32s ease;}
.site-header.v13-header.is-scrolled{background:rgba(255,255,255,.94);box-shadow:0 10px 32px rgba(7,17,31,.075);border-bottom:1px solid rgba(7,17,31,.07);}
.site-header.v13-header.is-scrolled .header-inner{height:74px;}
.site-header.v13-header.is-scrolled .brand img{width:168px;}
.site-header.v13-header.is-scrolled .global-nav{gap:24px;font-size:10px;}
@media(max-width:760px){
  .site-header.v13-header.is-scrolled .header-inner{height:64px;}
  .site-header.v13-header.is-scrolled .brand img{width:140px;}
}


/* --------------------------------------------------
   v15.6 refinement: mobile QA / map / business visuals
--------------------------------------------------- */
.map-card.map-embed{height:190px;border:8px solid rgba(255,255,255,.55);background:#fff;overflow:hidden;}
.map-card.map-embed::before,.map-card.map-embed span{display:none!important;}
.map-card.map-embed iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.18) saturate(.82);}

/* sharper abstract business marks */
.v15-page .business-card.flat .line-icon{width:74px;height:74px;margin:26px 0 6px;border:0;border-radius:0;transform:none;overflow:hidden;background:linear-gradient(135deg,rgba(0,90,167,.12),rgba(0,90,167,.025));}
.v15-page .business-card.flat .line-icon::before,.v15-page .business-card.flat .line-icon::after{content:"";position:absolute;border:0;background:#005aa7;opacity:.9;}
.v15-page .business-card.flat .line-icon.megaphone::before{width:42px;height:42px;left:9px;top:9px;clip-path:polygon(0 36%,100% 0,100% 100%,0 64%);}
.v15-page .business-card.flat .line-icon.megaphone::after{width:5px;height:30px;left:18px;top:40px;transform:rotate(-16deg);}
.v15-page .business-card.flat .line-icon.sports{border-radius:0;}
.v15-page .business-card.flat .line-icon.sports::before{width:44px;height:44px;left:15px;top:15px;border-radius:50%;background:transparent;border:2px solid #005aa7;transform:none;}
.v15-page .business-card.flat .line-icon.sports::after{width:2px;height:88px;left:36px;top:-7px;transform:rotate(42deg);}
.v15-page .business-card.flat .line-icon.stage::before{width:40px;height:40px;left:17px;top:17px;border-radius:50%;background:#005aa7;clip-path:polygon(50% 0,61% 35%,100% 35%,68% 56%,80% 100%,50% 72%,20% 100%,32% 56%,0 35%,39% 35%);}
.v15-page .business-card.flat .line-icon.stage::after{width:58px;height:2px;left:8px;top:58px;transform:none;opacity:.45;}
.v15-page .business-card.flat .line-icon.book::before{width:30px;height:48px;left:7px;top:13px;background:transparent;border:2px solid #005aa7;border-right-width:1px;border-radius:2px 0 0 2px;}
.v15-page .business-card.flat .line-icon.book::after{width:30px;height:48px;right:7px;top:13px;background:transparent;border:2px solid #005aa7;border-left-width:1px;border-radius:0 2px 2px 0;}

@media(max-width:760px){
  /* header: true right-edge hamburger and reliable full-screen nav */
  .v15-page .v13-header .header-inner{width:100%!important;padding-left:18px;padding-right:0;height:78px;}
  .v15-page .v13-header .brand img{width:164px;}
  .v15-page .menu-toggle{display:block!important;flex:0 0 64px;width:64px!important;height:64px!important;margin:0!important;position:relative!important;right:0;z-index:90;}
  .v15-page .menu-toggle span{position:absolute!important;left:19px!important;width:26px!important;height:2px!important;margin:0!important;transform-origin:center!important;}
  .v15-page .menu-toggle span:nth-child(1){top:21px!important;}
  .v15-page .menu-toggle span:nth-child(2){top:31px!important;}
  .v15-page .menu-toggle span:nth-child(3){top:41px!important;}
  .v15-page.menu-open .menu-toggle span:nth-child(1){top:31px!important;transform:rotate(45deg)!important;}
  .v15-page.menu-open .menu-toggle span:nth-child(2){opacity:0!important;}
  .v15-page.menu-open .menu-toggle span:nth-child(3){top:31px!important;transform:rotate(-45deg)!important;}
  .v15-page .global-nav{position:fixed!important;inset:0!important;z-index:70!important;min-height:100dvh!important;padding:112px 28px 36px!important;background:rgba(255,255,255,.985)!important;backdrop-filter:blur(20px);display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:0!important;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .3s ease,visibility .3s ease,transform .3s ease;}
  .v15-page.menu-open .global-nav{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;}
  .v15-page .global-nav a,.v15-page .global-nav a:not(.lang):not(:last-child){display:block!important;width:100%!important;padding:16px 0!important;border-bottom:1px solid rgba(7,17,31,.085);font-size:18px!important;line-height:1.2!important;color:#172033!important;}
  .v15-page .global-nav::after{margin-top:28px!important;padding-top:18px!important;}
  .site-header.v13-header.is-scrolled .header-inner{height:64px!important;}
  .site-header.v13-header.is-scrolled .menu-toggle{height:64px!important;}

  /* hero -> business spacing */
  .v14-page .v13-hero2{min-height:700px!important;height:auto;padding-top:96px!important;}
  .v14-page .hero-copybox{padding-top:18px!important;}
  .v14-page .hero-photo-wrap{top:330px!important;height:370px!important;}
  .v14-page .v13-business2{padding:56px 0 76px!important;}
  .v14-page .v13-business2 .v13-bgword{top:24px!important;}
  .v13-hero2 h1.hero-main-copy{font-size:clamp(42px,13vw,58px)!important;line-height:1.12!important;letter-spacing:-.045em!important;word-break:keep-all;}

  /* mobile overflow hardening across inner/Education pages */
  html,body{max-width:100%;overflow-x:hidden;}
  .education-page main,.education-page section,.education-page .container,.education-page .content-section>.container,.education-page .ed-overview,.education-page .ed-richtext,.education-page .section-head,.education-page .ed-card-grid,.education-page .ed-card{min-width:0!important;max-width:100%;}
  .education-page .section-head{margin-bottom:52px;}
  .education-page .section-head h2,.education-page .ed-overview h2,.education-page .ed-richtext h3,.education-page .ed-richtext p,.education-page .ed-richtext li,.education-page .ed-card h3,.education-page .ed-card p{max-width:100%!important;width:auto!important;white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;line-break:strict!important;}
  .education-page .content-section>.container.ed-overview,.education-page .content-section>.container{width:calc(100% - 36px)!important;margin-left:auto!important;margin-right:auto!important;}
  .education-page .ed-card{padding:28px 22px!important;}
  .education-page .ed-card-grid{grid-template-columns:minmax(0,1fr)!important;}
  .map-card.map-embed{height:220px;}
}


/* --------------------------------------------------
   v15.6 refinement: mobile QA / map / business visuals
--------------------------------------------------- */
.map-card.map-embed{height:190px;border:8px solid rgba(255,255,255,.55);background:#fff;overflow:hidden;}
.map-card.map-embed::before,.map-card.map-embed span{display:none!important;}
.map-card.map-embed iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.18) saturate(.82);}

/* sharper abstract business marks */
.v15-page .business-card.flat .line-icon{width:74px;height:74px;margin:26px 0 6px;border:0;border-radius:0;transform:none;overflow:hidden;background:linear-gradient(135deg,rgba(0,90,167,.12),rgba(0,90,167,.025));}
.v15-page .business-card.flat .line-icon::before,.v15-page .business-card.flat .line-icon::after{content:"";position:absolute;border:0;background:#005aa7;opacity:.9;}
.v15-page .business-card.flat .line-icon.megaphone::before{width:42px;height:42px;left:9px;top:9px;clip-path:polygon(0 36%,100% 0,100% 100%,0 64%);}
.v15-page .business-card.flat .line-icon.megaphone::after{width:5px;height:30px;left:18px;top:40px;transform:rotate(-16deg);}
.v15-page .business-card.flat .line-icon.sports{border-radius:0;}
.v15-page .business-card.flat .line-icon.sports::before{width:44px;height:44px;left:15px;top:15px;border-radius:50%;background:transparent;border:2px solid #005aa7;transform:none;}
.v15-page .business-card.flat .line-icon.sports::after{width:2px;height:88px;left:36px;top:-7px;transform:rotate(42deg);}
.v15-page .business-card.flat .line-icon.stage::before{width:40px;height:40px;left:17px;top:17px;border-radius:50%;background:#005aa7;clip-path:polygon(50% 0,61% 35%,100% 35%,68% 56%,80% 100%,50% 72%,20% 100%,32% 56%,0 35%,39% 35%);}
.v15-page .business-card.flat .line-icon.stage::after{width:58px;height:2px;left:8px;top:58px;transform:none;opacity:.45;}
.v15-page .business-card.flat .line-icon.book::before{width:30px;height:48px;left:7px;top:13px;background:transparent;border:2px solid #005aa7;border-right-width:1px;border-radius:2px 0 0 2px;}
.v15-page .business-card.flat .line-icon.book::after{width:30px;height:48px;right:7px;top:13px;background:transparent;border:2px solid #005aa7;border-left-width:1px;border-radius:0 2px 2px 0;}

@media(max-width:760px){
  /* header: true right-edge hamburger and reliable full-screen nav */
  .v15-page .v13-header .header-inner{width:100%!important;padding-left:18px;padding-right:0;height:78px;}
  .v15-page .v13-header .brand img{width:164px;}
  .v15-page .menu-toggle{display:block!important;flex:0 0 64px;width:64px!important;height:64px!important;margin:0!important;position:relative!important;right:0;z-index:90;}
  .v15-page .menu-toggle span{position:absolute!important;left:19px!important;width:26px!important;height:2px!important;margin:0!important;transform-origin:center!important;}
  .v15-page .menu-toggle span:nth-child(1){top:21px!important;}
  .v15-page .menu-toggle span:nth-child(2){top:31px!important;}
  .v15-page .menu-toggle span:nth-child(3){top:41px!important;}
  .v15-page.menu-open .menu-toggle span:nth-child(1){top:31px!important;transform:rotate(45deg)!important;}
  .v15-page.menu-open .menu-toggle span:nth-child(2){opacity:0!important;}
  .v15-page.menu-open .menu-toggle span:nth-child(3){top:31px!important;transform:rotate(-45deg)!important;}
  .v15-page .global-nav{position:fixed!important;inset:0!important;z-index:70!important;min-height:100dvh!important;padding:112px 28px 36px!important;background:rgba(255,255,255,.985)!important;backdrop-filter:blur(20px);display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:0!important;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .3s ease,visibility .3s ease,transform .3s ease;}
  .v15-page.menu-open .global-nav{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;}
  .v15-page .global-nav a,.v15-page .global-nav a:not(.lang):not(:last-child){display:block!important;width:100%!important;padding:16px 0!important;border-bottom:1px solid rgba(7,17,31,.085);font-size:18px!important;line-height:1.2!important;color:#172033!important;}
  .v15-page .global-nav::after{margin-top:28px!important;padding-top:18px!important;}
  .site-header.v13-header.is-scrolled .header-inner{height:64px!important;}
  .site-header.v13-header.is-scrolled .menu-toggle{height:64px!important;}

  /* hero -> business spacing */
  .v14-page .v13-hero2{min-height:700px!important;height:auto;padding-top:96px!important;}
  .v14-page .hero-copybox{padding-top:18px!important;}
  .v14-page .hero-photo-wrap{top:330px!important;height:370px!important;}
  .v14-page .v13-business2{padding:56px 0 76px!important;}
  .v14-page .v13-business2 .v13-bgword{top:24px!important;}
  .v13-hero2 h1.hero-main-copy{font-size:clamp(42px,13vw,58px)!important;line-height:1.12!important;letter-spacing:-.045em!important;word-break:keep-all;}

  /* mobile overflow hardening across inner/Education pages */
  html,body{max-width:100%;overflow-x:hidden;}
  .education-page main,.education-page section,.education-page .container,.education-page .content-section>.container,.education-page .ed-overview,.education-page .ed-richtext,.education-page .section-head,.education-page .ed-card-grid,.education-page .ed-card{min-width:0!important;max-width:100%;}
  .education-page .section-head{margin-bottom:52px;}
  .education-page .section-head h2,.education-page .ed-overview h2,.education-page .ed-richtext h3,.education-page .ed-richtext p,.education-page .ed-richtext li,.education-page .ed-card h3,.education-page .ed-card p{max-width:100%!important;width:auto!important;white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;line-break:strict!important;}
  .education-page .content-section>.container.ed-overview,.education-page .content-section>.container{width:calc(100% - 36px)!important;margin-left:auto!important;margin-right:auto!important;}
  .education-page .ed-card{padding:28px 22px!important;}
  .education-page .ed-card-grid{grid-template-columns:minmax(0,1fr)!important;}
  .map-card.map-embed{height:220px;}
}

/* --------------------------------------------------
   v15.6 small QA fix: hero size / mobile about copy / equal feature cards
   -------------------------------------------------- */
/* Hero main Japanese copy: slightly calmer on desktop and mobile */
.v14-page .v13-hero2 h1.hero-main-copy,
.v15-page .v13-hero2 h1.hero-main-copy{
  font-size:clamp(40px,4.35vw,68px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

/* Education feature cards: keep all four cards the same width */
.education-page .ed-card-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
}
.education-page .ed-card{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
}
.education-page .ed-card h3,
.education-page .ed-card p{
  min-width:0!important;
  max-width:100%!important;
}

@media(max-width:1080px){
  .education-page .ed-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  .v14-page .v13-hero2 h1.hero-main-copy,
  .v15-page .v13-hero2 h1.hero-main-copy{
    font-size:clamp(34px,10.4vw,48px)!important;
    line-height:1.13!important;
    letter-spacing:-.035em!important;
  }

  /* Prevent the About Blue Jay title from running off the right edge on mobile */
  .v13-aboutband,
  .v13-aboutband .aboutband-inner,
  .v13-aboutband .about-text{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .v13-aboutband .about-text h2{
    max-width:100%!important;
    font-size:clamp(25px,7.4vw,32px)!important;
    line-height:1.55!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
    white-space:normal!important;
  }
  .v13-aboutband .about-text p{
    max-width:100%!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:680px){
  .education-page .ed-card-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* --------------------------------------------------
   v15.6 card heading wrap fix: prevent Japanese titles from clipping
--------------------------------------------------- */
.education-page .ed-card{
  overflow:visible!important;
}
.education-page .ed-card h3{
  display:block!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  line-break:strict!important;
  text-wrap:auto!important;
  font-size:clamp(18px,1.25vw,20px)!important;
  line-height:1.65!important;
}
.education-page .ed-card p{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  line-break:strict!important;
}
@media (min-width:1081px){
  .education-page .ed-card{padding:34px 34px!important;}
}
@media (max-width:1080px){
  .education-page .ed-card h3{font-size:20px!important;}
}


/* =========================================================
   V17 : business sketch background / hand-drawn icons
   ========================================================= */
.v15-page .v13-business2{
  background:
    linear-gradient(rgba(248,251,253,.945),rgba(244,248,251,.955)),
    url('/images/business-sketch-bg.jpg') center 44% / cover no-repeat !important;
}
.v15-page .v13-business2::before{
  display:none !important;
}
.v17-business-icon{
  width:92px;
  height:72px;
  margin:24px 0 8px;
  overflow:hidden;
}
.v17-business-icon img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  mix-blend-mode:multiply;
}
@media(min-width:761px){
  .v15-page .hero-copybox .section-kicker{
    transform:translateX(65px);
  }
}
@media(max-width:760px){
  .v17-business-icon{
    width:88px;
    height:70px;
  }
}


/* V17 final icon adjustments */
.v17-business-icon{
  background:#fff !important;
}
.v17-business-icon img{
  mix-blend-mode:normal !important;
}
@media(max-width:760px){
  .v17-business-icon{
    width:62px !important;
    height:49px !important;
    margin:16px 0 6px !important;
  }
}


/* V17 FINAL2 : transparent business icons */
.v17-business-icon{
  width:108px !important;
  height:84px !important;
  background:transparent !important;
  overflow:visible !important;
  margin:22px 0 8px !important;
}
.v17-business-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:transparent !important;
  mix-blend-mode:normal !important;
}
@media(max-width:760px){
  .v17-business-icon{
    width:80px !important;
    height:62px !important;
    margin:17px 0 7px !important;
  }
}


/* V17 FINAL3 : true transparent navy drawing icons */
.v17-business-icon{
  width:132px !important;
  height:102px !important;
  background:transparent !important;
  overflow:visible !important;
  margin:20px 0 10px !important;
}
.v17-business-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:transparent !important;
  mix-blend-mode:normal !important;
  display:block !important;
}
@media(max-width:760px){
  .v17-business-icon{
    width:118px !important;
    height:92px !important;
    margin:20px 0 12px !important;
  }
}


/* V17 FINAL4 : larger centered business icons */
.v17-business-icon{
  width:180px !important;
  height:138px !important;
  margin:22px auto 12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.v17-business-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
@media(max-width:760px){
  .v17-business-icon{
    width:160px !important;
    height:124px !important;
    margin:22px auto 14px !important;
  }
}


/* V17 FINAL5 : tightly cropped large business icons */
.v17-business-icon{
  width:190px !important;
  height:128px !important;
  margin:24px auto 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  overflow:visible !important;
}
.v17-business-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  background:transparent !important;
  mix-blend-mode:normal !important;
}
@media(max-width:760px){
  .v17-business-icon{
    width:150px !important;
    height:104px !important;
    margin:22px auto 18px !important;
  }
}


/* V17 FINAL6 : rebuilt icons from original navy drawings */
.v17-business-icon{
  width:210px !important;
  height:142px !important;
  margin:20px auto 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  overflow:visible !important;
}
.v17-business-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  background:transparent !important;
}
@media(max-width:760px){
  .v17-business-icon{
    width:190px !important;
    height:132px !important;
    margin:20px auto 18px !important;
  }
}


/* V17 FINAL7 : desktop hero copy position only */
@media(min-width:761px){
  .v15-page .v13-hero2 .hero-copybox{
    transform:translate(210px, 250px) !important;
  }
}


/* v18.2: requested About message and Education spacing/link layout */
.image-split .president-message-copy p{margin:0 0 15px;font-size:14px;line-height:1.95;color:var(--muted);}
.image-split .president-message-copy .message-emphasis{color:var(--ink);font-weight:600;}
.image-split .signature-wrap{margin-top:24px;}
.image-split .signature-img{display:block;width:min(190px,55%);height:auto;}
.image-split:has(.president-message-copy) .split-text{padding-top:88px;padding-bottom:88px;}
.image-split:has(.president-message-copy) .split-visual{min-height:760px;}
.education-page .edtech-lead,.education-page .ed-language-intro,.education-page .content-section{padding-top:76px;padding-bottom:76px;}
.education-page .section-head{margin-bottom:48px;}
.education-page .ed-brand-row{margin-bottom:42px;}
.education-page .ed-card-grid{gap:18px;}
.education-page .ed-card{padding:30px 28px;}
.education-page .level-grid{grid-template-columns:1fr;}
.education-page .level-card-wide{max-width:none;}
.education-page .ed-with-image-slot{grid-template-columns:minmax(180px,30%) minmax(220px,30%) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start;}
.education-page .ed-image-slot{min-height:420px;background:transparent;}
.education-page .ed-richtext a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;}
@media(max-width:1080px){.image-split:has(.president-message-copy) .split-visual{min-height:520px}.education-page .ed-with-image-slot{grid-template-columns:1fr 1fr}.education-page .ed-with-image-slot .ed-image-slot{grid-column:1/-1;min-height:220px}.education-page .ed-with-image-slot .ed-richtext{grid-column:2}}
@media(max-width:680px){.image-split:has(.president-message-copy) .split-text{padding-top:72px;padding-bottom:72px}.image-split:has(.president-message-copy) .split-visual{min-height:340px}.education-page .edtech-lead,.education-page .ed-language-intro,.education-page .content-section{padding-top:56px;padding-bottom:56px}.education-page .ed-with-image-slot{display:block}.education-page .ed-image-slot{min-height:140px;margin-bottom:24px}}


/* v18.3: move the Japanese-language link below the Planet Pop logo */
.education-page .ed-logo-column{display:flex;flex-direction:column;align-items:stretch;gap:26px;width:100%;max-width:300px;}
.education-page .ed-logo-column .planet-pop-logo{width:100%;max-width:none;}
.education-page .ed-japanese-link{display:flex;align-items:center;justify-content:center;width:100%;margin:0;text-align:center;}
@media(max-width:980px){.education-page .ed-logo-column{max-width:250px;gap:22px;}}
@media(max-width:680px){.education-page .ed-logo-column{max-width:210px;gap:20px;}}

/* v18.4: Planet Pop colour accents — Education main page only */
.education-main-page{
  --pp-pink:#ef3f86;
  --pp-orange:#f47a31;
  --pp-purple:#9b4fc3;
  --pp-blue:#4d8fd5;
  --pp-cyan:#43c6c8;
}

/* Keep the corporate layout, but give the product's key messages its own voice */
.education-main-page .ed-language-intro .ed-overview > div:first-child h2,
.education-main-page .section-head h2{
  color:var(--deep);
}
.education-main-page .ed-language-intro-en .ed-overview > div:first-child h2,
.education-main-page .ed-language-intro-ja .ed-overview > div:first-child h2{
  display:inline-block;
  background:linear-gradient(92deg,var(--pp-orange) 0%,var(--pp-pink) 34%,var(--pp-purple) 67%,var(--pp-blue) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* Small colourful rhythm in labels and rules */
.education-main-page .section-kicker{
  color:var(--pp-purple);
}
.education-main-page .section-kicker::after{
  width:58px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--pp-orange),var(--pp-pink),var(--pp-purple),var(--pp-blue));
  opacity:.9;
}
.education-main-page .content-section:nth-of-type(4n+2) .section-kicker{color:var(--pp-pink);}
.education-main-page .content-section:nth-of-type(4n+3) .section-kicker{color:var(--pp-blue);}
.education-main-page .content-section:nth-of-type(4n+4) .section-kicker{color:var(--pp-orange);}

/* Product cards: quiet white cards with a Planet Pop accent edge */
.education-main-page .ed-card,
.education-main-page .level-card{
  position:relative;
  overflow:hidden;
  transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .3s ease;
}
.education-main-page .ed-card::before,
.education-main-page .level-card::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,var(--pp-orange),var(--pp-pink),var(--pp-purple),var(--pp-blue),var(--pp-cyan));
  opacity:.9;
}
.education-main-page .ed-card:hover,
.education-main-page .level-card:hover{
  transform:translateY(-5px);
  border-color:rgba(155,79,195,.18);
  box-shadow:0 22px 50px rgba(46,62,93,.11);
}
.education-main-page .ed-card-grid .ed-card:nth-child(1) h3{color:var(--pp-pink);}
.education-main-page .ed-card-grid .ed-card:nth-child(2) h3{color:var(--pp-purple);}
.education-main-page .ed-card-grid .ed-card:nth-child(3) h3{color:var(--pp-blue);}
.education-main-page .ed-card-grid .ed-card:nth-child(4) h3{color:var(--pp-orange);}

/* The moved Japanese link becomes a compact Planet Pop brand button */
.education-main-page .ed-japanese-link{
  position:relative;
  border:1px solid transparent;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(100deg,var(--pp-orange),var(--pp-pink),var(--pp-purple),var(--pp-blue)) border-box;
  color:var(--deep);
  box-shadow:0 10px 24px rgba(77,143,213,.10);
  transition:color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.education-main-page .ed-japanese-link:hover{
  color:#fff;
  transform:translateY(-2px);
  background:linear-gradient(100deg,var(--pp-orange),var(--pp-pink),var(--pp-purple),var(--pp-blue));
  box-shadow:0 14px 30px rgba(155,79,195,.18);
}

/* Main action arrows pick up the product colour on interaction */
.education-main-page .v13-arrow{
  transition:color .25s ease,border-color .25s ease,transform .25s ease;
}
.education-main-page .v13-arrow:hover{
  color:var(--pp-pink);
  border-color:var(--pp-pink);
}

/* A very light colour glow behind the two branded intro areas */
.education-main-page .ed-language-intro-en::after,
.education-main-page .ed-language-intro-ja::after{
  content:"";
  position:absolute;
  width:360px;height:360px;
  border-radius:50%;
  filter:blur(1px);
  pointer-events:none;
  opacity:.22;
  z-index:0;
}
.education-main-page .ed-language-intro-en::after{
  right:-170px;top:80px;
  background:radial-gradient(circle,rgba(239,63,134,.18),rgba(77,143,213,.08) 48%,transparent 72%);
}
.education-main-page .ed-language-intro-ja::after{
  left:-180px;bottom:40px;
  background:radial-gradient(circle,rgba(244,122,49,.16),rgba(67,198,200,.08) 48%,transparent 72%);
}
.education-main-page .ed-language-intro > .container{position:relative;z-index:1;}

@media(max-width:680px){
  .education-main-page .ed-language-intro-en .ed-overview > div:first-child h2,
  .education-main-page .ed-language-intro-ja .ed-overview > div:first-child h2{
    display:block;
  }
  .education-main-page .ed-card::before,
  .education-main-page .level-card::before{height:3px;}
}


/* v19: requested-only updates — Education image, footer map, mobile home Hero spacing */
.education-page .ed-image-slot{
  min-height:0;
  background:transparent;
  overflow:visible;
}
.education-page .ed-image-slot img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}

@media(max-width:760px){
  .v15-page .v13-hero2{
    min-height:600px!important;
    padding-top:96px!important;
  }
  .v15-page .v13-hero2 .hero-copybox{
    padding-top:12px!important;
  }
  .v15-page .v13-hero2 .hero-photo-wrap{
    top:292px!important;
    height:308px!important;
  }
  .v15-page .v13-hero2::after{
    height:88px!important;
  }
  .v15-page .v13-business2{
    padding-top:48px!important;
  }
  .education-page .ed-image-slot{
    min-height:0!important;
    margin-bottom:28px!important;
  }
}

/* --------------------------------------------------
   v19.1: requested-only refinements
   - Compact mobile Home hero with image as a faint background
   - Education lesson-flow desktop layout: image + heading stacked left, wider text right
--------------------------------------------------- */
@media (min-width:1081px){
  .education-page .ed-with-image-slot{
    grid-template-columns:minmax(300px,36%) minmax(0,1fr);
    grid-template-rows:auto 1fr;
    column-gap:clamp(56px,6vw,96px);
    row-gap:34px;
    align-items:start;
  }
  .education-page .ed-with-image-slot .ed-image-slot{
    grid-column:1;
    grid-row:1;
    width:100%;
  }
  .education-page .ed-with-image-slot > div:nth-child(2){
    grid-column:1;
    grid-row:2;
    width:100%;
  }
  .education-page .ed-with-image-slot > .ed-richtext{
    grid-column:2;
    grid-row:1 / span 2;
    width:100%;
    max-width:none;
  }
  .education-page .ed-with-image-slot > div:nth-child(2) h2{
    max-width:100%;
  }
}

@media(max-width:760px){
  .v15-page .v13-hero2{
    min-height:470px!important;
    padding:96px 22px 26px!important;
    background:#fff!important;
  }
  .v15-page .v13-hero2::before{
    background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.91) 58%,rgba(255,255,255,.72) 100%)!important;
  }
  .v15-page .v13-hero2::after{
    height:42px!important;
    background:linear-gradient(180deg,rgba(248,251,253,0),#f8fbfd 92%)!important;
  }
  .v15-page .v13-hero2 .hero-copybox{
    position:relative;
    z-index:4;
    padding-top:8px!important;
  }
  .v15-page .v13-hero2 .hero-photo-wrap{
    inset:150px 0 0!important;
    width:100%!important;
    height:auto!important;
    opacity:.24;
    z-index:1;
  }
  .v15-page .v13-hero2 .hero-photo{
    background-position:center 35%!important;
  }
  .v15-page .v13-hero2 .jp-copy{
    margin-top:28px!important;
  }
  .v15-page .v13-hero2 .v13-arrow{
    margin-top:22px!important;
  }
  .v15-page .v13-business2{
    padding-top:34px!important;
  }
}

/* --------------------------------------------------
   v19.4: Home hero desktop compact adjustment
   - Reduce unused vertical space on desktop/monitor displays
   - Keep tablet/mobile layout unchanged
--------------------------------------------------- */
@media (min-width:761px){
  .v15-page .v13-hero2{
    min-height:680px;
    padding-top:126px;
  }
  .v15-page .v13-hero2 .hero-copybox{
    padding-top:54px;
  }
  .v15-page .v13-hero2 .hero-photo-wrap{
    top:104px;
  }
  .v15-page .v13-hero2::after{
    height:132px;
  }
}

/* --------------------------------------------------
   v19.5: Home hero copy position adjustment
   - Move “感動遺伝子が動き出す。” significantly higher on desktop
   - Keep the approved hero height and mobile layout unchanged
--------------------------------------------------- */
@media (min-width:761px){
  .v15-page .v13-hero2 .hero-copybox{
    padding-top:0;
    transform:translateY(-20px);
  }
}
