/* =========================================================
   Design direction candidates (local preview only, ?bbskin=a|b|c)
   A  Island Bright  — current-site palette (teal / blue), Stoke + Lato, light bands
   B  Academy Navy   — deep ocean navy + sand, Lora serif, editorial spacing, classroom photos
   C  Clean Coast    — brochure logo blue on white, Nunito, rounded cards, big photos (closest to the reference site)
   All three share the same one-page structure; only look & photo choice differ.
   ========================================================= */

/* ---------- A. Island Bright (current site, refined) ---------- */
body.bb-skin-a{--bb-op-esl:#e6f7f7;--bb-op-esl-ink:#1a8f8b;--bb-op-aca:#e9f1fb;--bb-op-aca-ink:#3f78c9;--bb-op-bar:#3f78c9;--bb-op-accent:#24c4bf;--bb-op-accent-dark:#3d99f4;--bb-op-radius:3px;--bb-op-radius-s:3px;--bb-op-soft:#f6fbfc;--bb-op-shadow:none}
body.bb-skin-a .bb-entry .bb-op-sec{border-width:0;border-top:3px solid var(--bb-teal);background:#fff;padding-left:0;padding-right:0}
body.bb-skin-a .bb-entry .bb-op-sec#camp{border-top-color:var(--bb-blue)}
body.bb-skin-a .bb-entry .bb-op-sec#fees{border-top-color:var(--bb-band)}
body.bb-skin-a .bb-entry .bb-op-sec#faq{border-top-color:var(--bb-band-blue)}
body.bb-skin-a .bb-entry .bb-op-sec#other-courses{border-top-color:var(--bb-teal)}
body.bb-skin-a .bb-entry .bb-op-sec p.bb-sec-label{color:var(--bb-teal-dark)}
body.bb-skin-a .bb-op-nav a{text-transform:uppercase;letter-spacing:.06em;font-weight:400;font-size:.88rem}
body.bb-skin-a .bb-entry .bb-op-side-card{border-top:3px solid var(--bb-teal);background:var(--bb-sky)}
body.bb-skin-a .bb-entry .bb-op-side-card .wp-block-button__link{background:var(--bb-teal);border-color:var(--bb-teal)}
body.bb-skin-a .bb-entry .bb-op-side-card .is-style-outline .wp-block-button__link{background:transparent;color:var(--bb-teal-dark);border-color:var(--bb-teal-dark)}
body.bb-skin-a .bb-entry .bb-op-price b{color:var(--bb-blue)}
body.bb-skin-a .bb-entry .bb-hero-cover .wp-block-cover__background{background:linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,.05))!important}
body.bb-skin-a .bb-entry .bb-op-pillars .bb-card .bb-card-img img{filter:grayscale(1)}
body.bb-skin-a .bb-entry .bb-op-cta{background:linear-gradient(120deg,#4a90d9 0%,#63bacc 100%)}

/* ---------- B. Academy Navy ---------- */
body.bb-skin-b{--bb-navy:#0b2e4f;--bb-ink:#2b3a47;--bb-muted:#66737f;--bb-line:#e3ddd2;--bb-teal:#0b2e4f;--bb-teal-dark:#143f68;--bb-teal-link:#1c7a78;--bb-blue:#0b2e4f;--bb-band-blue:#0b2e4f;--bb-sky:#f7f3ea;--bb-sky-2:#faf7f0;--bb-grey:#f3efe6;
  --bb-serif:"Lora",Georgia,"Hiragino Mincho ProN","Noto Serif JP",serif;--bb-op-esl:#e4efee;--bb-op-esl-ink:#1c7a78;--bb-op-aca:#f7ecd6;--bb-op-aca-ink:#8a6b2a;--bb-op-bar:#0b2e4f;--bb-op-accent:#1c7a78;--bb-op-accent-dark:#0b2e4f;--bb-op-radius:6px;--bb-op-radius-s:4px;--bb-op-soft:#faf7f0;--bb-op-shadow:none}
body.bb-skin-b{background:#fbf9f4;font-weight:400}
body.bb-skin-b h1,body.bb-skin-b h2,body.bb-skin-b h3{font-family:var(--bb-serif);font-weight:500;letter-spacing:-.01em}
body.bb-skin-b .bb-topbar{background:#0b2e4f}
body.bb-skin-b .bb-topbar .bbcb-announce-pill{color:#0b2e4f}
body.bb-skin-b .bb-header{background:#fbf9f4;border-bottom-color:#e3ddd2}
body.bb-skin-b .bb-brand .bb-logo{display:block;width:46px;height:46px;object-fit:contain}
body.bb-skin-b .bb-brand-name{font-family:var(--bb-serif);font-weight:600;color:#0b2e4f;text-transform:none;letter-spacing:0;font-size:1.35rem}
body.bb-skin-b .bb-brand-tag{font-family:var(--bb-font);font-size:.8rem;color:#66737f;letter-spacing:.04em}
body.bb-skin-b .bb-nav li a{text-transform:none;font-weight:500;color:#2b3a47;letter-spacing:0;font-size:.98rem}
body.bb-skin-b .bb-nav li a:hover,body.bb-skin-b .bb-nav li.current-menu-item>a{color:#1c7a78}
body.bb-skin-b .bb-nav .bb-btn{background:#0b2e4f;color:#fff;border-color:#0b2e4f;border-radius:4px;font-weight:600;letter-spacing:.06em}
body.bb-skin-b .bb-lang li.is-active a{background:#0b2e4f;border-color:#0b2e4f}
body.bb-skin-b .bb-entry .bb-hero-cover .wp-block-cover__background{background:linear-gradient(90deg,rgba(11,46,79,.85) 0%,rgba(11,46,79,.55) 50%,rgba(11,46,79,.2) 100%)!important}
body.bb-skin-b .bb-entry .bb-hero-cover p.bb-hero-script{font-family:var(--bb-font);text-transform:uppercase;letter-spacing:.18em;font-size:.85rem;font-weight:600;color:#e8c98a}
body.bb-skin-b .bb-entry .bb-hero-cover h1{font-weight:500;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.15;text-shadow:none}
body.bb-skin-b .bb-entry .bb-hero-cover .wp-block-button__link{background:#e8c98a;color:#0b2e4f;border-color:#e8c98a;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.9rem}
body.bb-skin-b .bb-entry .bb-hero-cover .is-style-outline .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
body.bb-skin-b .bb-op-infobar{background:#0b2e4f;border-top:3px solid #e8c98a}
body.bb-skin-b .bb-op-info-k{color:#e8c98a;opacity:1}
body.bb-skin-b .bb-entry .bb-op-nav{background:#fbf9f4;border-bottom-color:#e3ddd2}
body.bb-skin-b .bb-op-nav a{font-family:var(--bb-serif);font-size:1.02rem;font-weight:500;color:#66737f}
body.bb-skin-b .bb-op-nav a:hover,body.bb-skin-b .bb-op-nav a.is-active{color:#0b2e4f;border-bottom-color:#0b2e4f}
body.bb-skin-b .bb-entry .bb-op-sec{background:transparent;border:0;border-bottom:1px solid #e3ddd2;border-radius:0;padding-left:0;padding-right:0;padding-top:clamp(28px,4vw,44px);padding-bottom:clamp(28px,4vw,44px);margin:0}
body.bb-skin-b .bb-entry .bb-op-sec p.bb-sec-label{color:#1c7a78;letter-spacing:.18em;font-weight:600}
body.bb-skin-b .bb-entry .bb-op-sec h2.bb-sec-title{font-size:clamp(1.7rem,3vw,2.2rem);color:#0b2e4f}
body.bb-skin-b .bb-entry .bb-op-sec h3.bb-op-h3{color:#0b2e4f;font-size:1.35rem}
body.bb-skin-b .bb-entry .bb-card>h3{color:#0b2e4f}
body.bb-skin-b .bb-entry .bb-card p.bb-tag{color:#1c7a78}
body.bb-skin-b .bb-entry .bb-compare .bb-card{background:#fff;border:1px solid #e3ddd2;border-top:3px solid #0b2e4f;border-radius:6px}
body.bb-skin-b .bb-entry .bb-compare .bb-card.academy{border-top-color:#e8c98a}
body.bb-skin-b .bb-entry .bb-check li::before{background:#1c7a78}
body.bb-skin-b .bb-entry .bb-stat h3{color:#0b2e4f;font-family:var(--bb-serif);font-weight:600}
body.bb-skin-b .bb-entry .bb-step-col h3{color:#1c7a78;font-family:var(--bb-serif);font-weight:500}
body.bb-skin-b .bb-entry .bb-op-acts .bb-card{background:#fff;border:1px solid #e3ddd2}
body.bb-skin-b .bb-entry .wp-block-button__link{background:#0b2e4f;border-color:#0b2e4f;border-radius:4px;font-weight:600;letter-spacing:.06em;font-size:.9rem}
body.bb-skin-b .bb-entry .is-style-outline .wp-block-button__link{background:transparent;color:#0b2e4f;border-color:#0b2e4f}
body.bb-skin-b .bb-entry .is-style-outline .wp-block-button__link:hover{background:#0b2e4f;color:#fff}
body.bb-skin-b .bb-entry .wp-block-details{background:#fff;border-color:#e3ddd2;border-radius:4px}
body.bb-skin-b .bb-entry .wp-block-details summary{font-family:var(--bb-font);font-weight:600;color:#0b2e4f}
body.bb-skin-b .bb-entry .wp-block-details summary::after{background:#f3efe6;color:#0b2e4f}
body.bb-skin-b .bb-entry .wp-block-details[open]{border-color:#0b2e4f}
body.bb-skin-b .bb-entry .bb-steps-list li{border-color:#e3ddd2;border-radius:4px}
body.bb-skin-b .bb-entry .bb-steps-list li::before{background:#0b2e4f}
body.bb-skin-b .bbcb-table thead th{background:#0b2e4f;color:#fff}
body.bb-skin-b .bbcb-table-wrap{border-color:#e3ddd2}
body.bb-skin-b .bb-entry .bb-op-side-card{background:#0b2e4f;color:#fff;border:0;border-radius:6px}
body.bb-skin-b .bb-entry .bb-op-side-card h3,body.bb-skin-b .bb-entry .bb-op-side-card .bbcb-dates-line{color:#fff}
body.bb-skin-b .bb-entry .bb-op-side-card .bbcb-dates-sub,body.bb-skin-b .bb-entry .bb-op-price span,body.bb-skin-b .bb-entry .bb-op-price small,body.bb-skin-b .bb-entry .bb-op-facts span{color:rgba(255,255,255,.7)}
body.bb-skin-b .bb-entry .bb-op-price{border-top-color:rgba(255,255,255,.18)}
body.bb-skin-b .bb-entry .bb-op-price b{color:#e8c98a;font-family:var(--bb-serif);font-weight:600}
body.bb-skin-b .bb-entry .bb-op-facts{border-top-color:rgba(255,255,255,.18)}
body.bb-skin-b .bb-entry .bb-op-side-card .bbcb-announce{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff}
body.bb-skin-b .bb-entry .bb-op-side-card .bbcb-announce-pill{background:#e8c98a;color:#0b2e4f}
body.bb-skin-b .bb-entry .bb-op-side-card .wp-block-button__link{background:#e8c98a;color:#0b2e4f;border-color:#e8c98a}
body.bb-skin-b .bb-entry .bb-op-side-card .is-style-outline .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
body.bb-skin-b .bb-entry .bb-op-cta{background:#0b2e4f}
body.bb-skin-b .bb-entry .bb-op-cta .wp-block-button__link{background:#e8c98a;color:#0b2e4f;border-color:#e8c98a}
body.bb-skin-b .bb-footer{background:#08233c;color:#b9c4ce}
body.bb-skin-b .bb-footer-bottom{background:#061a2d;border-top-color:#143f68}
body.bb-skin-b .bb-footer address a,body.bb-skin-b .bb-footer a:hover{color:#e8c98a}
body.bb-skin-b .bb-op-mobile-cta .bb-btn{background:#0b2e4f;color:#fff;border-color:#0b2e4f}

/* ---------- C. Clean Coast (closest to the reference site) ---------- */
body.bb-skin-c{--bb-navy:#12314f;--bb-ink:#334155;--bb-muted:#64748b;--bb-line:#e6ecf2;--bb-teal:#1b75bc;--bb-teal-dark:#155e97;--bb-teal-link:#1b75bc;--bb-blue:#1b75bc;--bb-band-blue:#12314f;--bb-sky:#f3f8fc;--bb-sky-2:#f6f9fc;--bb-grey:#f1f5f9;
  --bb-font:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Noto Sans JP",sans-serif;--bb-serif:"Nunito",-apple-system,sans-serif;
  --bb-op-bar:#12314f;--bb-op-accent:#1b75bc;--bb-op-accent-dark:#1b75bc;--bb-op-radius:16px;--bb-op-radius-s:12px;--bb-op-soft:#f3f8fc;--bb-op-shadow:0 8px 28px rgba(18,49,79,.07)}
body.bb-skin-c{background:#f6f9fc;font-weight:400;font-size:17px}
body.bb-skin-c h1,body.bb-skin-c h2,body.bb-skin-c h3{font-family:var(--bb-font);font-weight:800;letter-spacing:-.015em}
body.bb-skin-c .bb-topbar{background:#1b75bc}
body.bb-skin-c .bb-topbar .bbcb-announce-pill{color:#1b75bc}
body.bb-skin-c .bb-header{background:#fff;border-bottom:1px solid #e6ecf2}
body.bb-skin-c .bb-brand .bb-logo{display:block;width:48px;height:48px;object-fit:contain}
body.bb-skin-c .bb-brand-name{font-family:var(--bb-font);font-weight:800;color:#1b75bc;text-transform:none;letter-spacing:-.01em;font-size:1.3rem}
body.bb-skin-c .bb-brand-tag{font-family:var(--bb-font);font-size:.78rem;color:#64748b;font-weight:600}
body.bb-skin-c .bb-nav li a{text-transform:none;font-weight:700;color:#334155;font-size:.95rem}
body.bb-skin-c .bb-nav li a:hover,body.bb-skin-c .bb-nav li.current-menu-item>a{color:#1b75bc}
body.bb-skin-c .bb-nav .bb-btn,body.bb-skin-c .bb-btn{border-radius:999px;font-weight:700;text-transform:none;letter-spacing:0}
body.bb-skin-c .bb-nav .bb-btn{background:#1b75bc;color:#fff;border-color:#1b75bc}
body.bb-skin-c .bb-lang a{border-radius:999px}
body.bb-skin-c .bb-lang li.is-active a{background:#1b75bc;border-color:#1b75bc}
body.bb-skin-c .bb-entry .bb-hero-cover{border-radius:0}
body.bb-skin-c .bb-entry .bb-hero-cover .wp-block-cover__background{background:linear-gradient(180deg,rgba(18,49,79,.15) 0%,rgba(18,49,79,.7) 100%)!important}
body.bb-skin-c .bb-entry .bb-hero-cover .wp-block-cover__inner-container{align-self:flex-end;padding-bottom:10px}
body.bb-skin-c .bb-entry .bb-hero-cover p.bb-hero-script{display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:5px 14px;font-family:var(--bb-font);font-size:.82rem;font-weight:700;backdrop-filter:blur(4px)}
body.bb-skin-c .bb-entry .bb-hero-cover h1{font-weight:800;font-size:clamp(2.3rem,5.4vw,3.9rem);line-height:1.08;text-shadow:0 2px 14px rgba(0,0,0,.25)}
body.bb-skin-c .bb-entry .bb-hero-cover p.bb-hero-lead{font-weight:600;max-width:600px}
body.bb-skin-c .bb-entry .wp-block-button__link{border-radius:999px;font-weight:700;text-transform:none;background:#1b75bc;border-color:#1b75bc;padding:12px 26px}
body.bb-skin-c .bb-entry .is-style-outline .wp-block-button__link{background:#fff;color:#1b75bc;border-color:#cfe0f0}
body.bb-skin-c .bb-entry .is-style-outline .wp-block-button__link:hover{background:#1b75bc;color:#fff}
body.bb-skin-c .bb-entry .bb-hero-cover .is-style-outline .wp-block-button__link{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.6)}
body.bb-skin-c .bb-op-infobar{background:#12314f}
body.bb-skin-c .bb-op-infobar ul{gap:10px 40px}
body.bb-skin-c .bb-op-info-k{color:#8fb8dc;opacity:1}
body.bb-skin-c .bb-entry .bb-op-nav{background:#f6f9fc;border-bottom:0;padding:10px 0!important}
body.bb-skin-c .bb-op-nav ul{gap:8px}
body.bb-skin-c .bb-op-nav a{border:1px solid #e6ecf2;background:#fff;border-radius:999px;padding:9px 18px;font-weight:700;color:#334155;font-size:.92rem}
body.bb-skin-c .bb-op-nav a:hover,body.bb-skin-c .bb-op-nav a.is-active{background:#1b75bc;border-color:#1b75bc;color:#fff}
body.bb-skin-c .bb-entry .bb-op-sec{border:0}
body.bb-skin-c .bb-entry .bb-op-sec p.bb-sec-label{color:#1b75bc;font-weight:800}
body.bb-skin-c .bb-entry .bb-op-sec h2.bb-sec-title{color:#12314f;font-size:clamp(1.6rem,2.8vw,2rem)}
body.bb-skin-c .bb-entry .bb-op-sec h3.bb-op-h3{color:#12314f}
body.bb-skin-c .bb-entry .bb-card>h3{color:#12314f}
body.bb-skin-c .bb-entry .bb-card p.bb-tag{display:inline-block;background:#e6f0fa;color:#1b75bc;border-radius:999px;padding:3px 12px;font-size:.75rem;font-weight:800;text-transform:none;letter-spacing:0}
body.bb-skin-c .bb-entry .bb-card.academy p.bb-tag{background:#fff1e0;color:#b8651b}
body.bb-skin-c .bb-entry .bb-compare .bb-card{background:#f6f9fc;border:1px solid #e6ecf2;border-top:0;border-radius:12px}
body.bb-skin-c .bb-entry .bb-compare .bb-card.academy{border-top:0}
body.bb-skin-c .bb-entry .bb-check li::before{background:#1b75bc}
body.bb-skin-c .bb-entry .bb-stat{border-left-color:#e6ecf2}
body.bb-skin-c .bb-entry .bb-stat h3{color:#1b75bc;font-weight:800}
body.bb-skin-c .bb-entry .bb-step-col h3{color:#1b75bc;font-weight:800}
body.bb-skin-c .bb-entry .bb-op-acts .bb-card{background:#f6f9fc;border-radius:12px}
body.bb-skin-c .bb-entry .wp-block-details{border-radius:10px;border-color:#e6ecf2}
body.bb-skin-c .bb-entry .wp-block-details summary{font-family:var(--bb-font);font-weight:700;color:#12314f}
body.bb-skin-c .bb-entry .wp-block-details summary::after{background:#e6f0fa;color:#1b75bc}
body.bb-skin-c .bb-entry .wp-block-details[open]{border-color:#1b75bc}
body.bb-skin-c .bb-entry .bb-steps-list li{border-radius:10px;border-color:#e6ecf2}
body.bb-skin-c .bb-entry .bb-steps-list li::before{background:#1b75bc}
body.bb-skin-c .bbcb-table-wrap{border-radius:12px;border-color:#e6ecf2}
body.bb-skin-c .bbcb-table thead th{background:#f3f8fc;color:#12314f}
body.bb-skin-c .bb-entry .bb-op-side-card{border:0;padding:24px}
body.bb-skin-c .bb-entry .bb-op-side-card h3{color:#12314f}
body.bb-skin-c .bb-entry .bb-op-price b{color:#1b75bc;font-weight:800}
body.bb-skin-c .bb-entry .bb-op-side-card .bbcb-announce{border-radius:10px;background:#f3f8fc}
body.bb-skin-c .bb-entry .bb-op-side-card .bbcb-announce-pill{background:#1b75bc;border-radius:999px}
body.bb-skin-c .bb-entry .bb-op-cta{background:linear-gradient(120deg,#12314f 0%,#1b75bc 70%,#5fb3e6 100%)}
body.bb-skin-c .bb-entry .bb-op-cta .wp-block-button__link{background:#fff;color:#1b75bc;border-color:#fff}
body.bb-skin-c .bb-entry .bb-op-cta .is-style-outline .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
body.bb-skin-c .bb-footer{background:#12314f;color:#b9c9d8}
body.bb-skin-c .bb-footer-bottom{background:#0d2540;border-top-color:#1e3f61}
body.bb-skin-c .bb-footer address a,body.bb-skin-c .bb-footer a:hover{color:#8fd0ff}
body.bb-skin-c .bb-op-mobile-cta .bb-btn{background:#1b75bc;color:#fff;border-color:#1b75bc;border-radius:999px}

/* ---------- D. 採用案（2026-09-24）: C の形・書体（Nunito・角丸） × A の色（既存サイトのライトブルー） ---------- */
body.bb-skin-c.bb-skin-d{--bb-navy:#1f4468;--bb-ink:#334155;--bb-muted:#64748b;--bb-line:#e3eef6;--bb-teal:#3d99f4;--bb-teal-dark:#2585e0;--bb-teal-link:#3d99f4;--bb-blue:#3d99f4;--bb-band-blue:#1f4468;--bb-sky:#f1f9fe;--bb-sky-2:#f4fafd;--bb-grey:#f1f5f9;
  --bb-font:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Noto Sans JP",sans-serif;--bb-serif:"Nunito",-apple-system,sans-serif;
  --bb-op-bar:#1f4468;--bb-op-accent:#3d99f4;--bb-op-accent-dark:#3d99f4;--bb-op-radius:16px;--bb-op-radius-s:12px;--bb-op-soft:#f1f9fe;--bb-op-shadow:0 8px 28px rgba(18,49,79,.07)}
body.bb-skin-c.bb-skin-d{background:#f4fafd;font-weight:400;font-size:17px}
body.bb-skin-c.bb-skin-d h1,body.bb-skin-c.bb-skin-d h2,body.bb-skin-c.bb-skin-d h3{font-family:var(--bb-font);font-weight:800;letter-spacing:-.015em}
body.bb-skin-c.bb-skin-d .bb-topbar{background:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-topbar .bbcb-announce-pill{color:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-header{background:#fff;border-bottom:1px solid #e3eef6}
body.bb-skin-c.bb-skin-d .bb-brand .bb-logo{display:block;width:48px;height:48px;object-fit:contain}
body.bb-skin-c.bb-skin-d .bb-brand-name{font-family:var(--bb-font);font-weight:800;color:#3d99f4;text-transform:none;letter-spacing:-.01em;font-size:1.3rem}
body.bb-skin-c.bb-skin-d .bb-brand-tag{font-family:var(--bb-font);font-size:.78rem;color:#64748b;font-weight:600}
body.bb-skin-c.bb-skin-d .bb-nav li a{text-transform:none;font-weight:700;color:#334155;font-size:.95rem}
body.bb-skin-c.bb-skin-d .bb-nav li a:hover,body.bb-skin-c.bb-skin-d .bb-nav li.current-menu-item>a{color:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-nav .bb-btn,body.bb-skin-c.bb-skin-d .bb-btn{border-radius:999px;font-weight:700;text-transform:none;letter-spacing:0}
body.bb-skin-c.bb-skin-d .bb-nav .bb-btn{background:#3d99f4;color:#fff;border-color:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-lang a{border-radius:999px}
body.bb-skin-c.bb-skin-d .bb-lang li.is-active a{background:#3d99f4;border-color:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover{border-radius:0}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover .wp-block-cover__background{background:linear-gradient(180deg,rgba(18,49,79,.15) 0%,rgba(18,49,79,.7) 100%)!important}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover .wp-block-cover__inner-container{align-self:flex-end;padding-bottom:10px}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover p.bb-hero-script{display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:5px 14px;font-family:var(--bb-font);font-size:.82rem;font-weight:700;backdrop-filter:blur(4px)}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover h1{font-weight:800;font-size:clamp(2.3rem,5.4vw,3.9rem);line-height:1.08;text-shadow:0 2px 14px rgba(0,0,0,.25)}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover p.bb-hero-lead{font-weight:600;max-width:600px}
body.bb-skin-c.bb-skin-d .bb-entry .wp-block-button__link{border-radius:999px;font-weight:700;text-transform:none;background:#3d99f4;border-color:#3d99f4;padding:12px 26px}
body.bb-skin-c.bb-skin-d .bb-entry .is-style-outline .wp-block-button__link{background:#fff;color:#3d99f4;border-color:#cbe5fb}
body.bb-skin-c.bb-skin-d .bb-entry .is-style-outline .wp-block-button__link:hover{background:#3d99f4;color:#fff}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover .is-style-outline .wp-block-button__link{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.6)}
body.bb-skin-c.bb-skin-d .bb-op-infobar{background:#1f4468}
body.bb-skin-c.bb-skin-d .bb-op-infobar ul{gap:10px 40px}
body.bb-skin-c.bb-skin-d .bb-op-info-k{color:#d4ebff;opacity:1}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-nav{background:#f4fafd;border-bottom:0;padding:10px 0!important}
body.bb-skin-c.bb-skin-d .bb-op-nav ul{gap:8px}
body.bb-skin-c.bb-skin-d .bb-op-nav a{border:1px solid #e3eef6;background:#fff;border-radius:999px;padding:9px 18px;font-weight:700;color:#334155;font-size:.92rem}
body.bb-skin-c.bb-skin-d .bb-op-nav a:hover,body.bb-skin-c.bb-skin-d .bb-op-nav a.is-active{background:#3d99f4;border-color:#3d99f4;color:#fff}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-sec{border:0}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-sec p.bb-sec-label{color:#3d99f4;font-weight:800}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-sec h2.bb-sec-title{color:#1f4468;font-size:clamp(1.6rem,2.8vw,2rem)}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-sec h3.bb-op-h3{color:#1f4468}
body.bb-skin-c.bb-skin-d .bb-entry .bb-card>h3{color:#1f4468}
body.bb-skin-c.bb-skin-d .bb-entry .bb-card p.bb-tag{display:inline-block;background:#e2f1fd;color:#3d99f4;border-radius:999px;padding:3px 12px;font-size:.75rem;font-weight:800;text-transform:none;letter-spacing:0}
body.bb-skin-c.bb-skin-d .bb-entry .bb-card.academy p.bb-tag{background:#dff6f5;color:#1a8f8b}
body.bb-skin-c.bb-skin-d .bb-entry .bb-compare .bb-card{background:#f4fafd;border:1px solid #e3eef6;border-top:0;border-radius:12px}
body.bb-skin-c.bb-skin-d .bb-entry .bb-compare .bb-card.academy{border-top:0}
body.bb-skin-c.bb-skin-d .bb-entry .bb-check li::before{background:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-entry .bb-stat{border-left-color:#e3eef6}
body.bb-skin-c.bb-skin-d .bb-entry .bb-stat h3{color:#3d99f4;font-weight:800}
body.bb-skin-c.bb-skin-d .bb-entry .bb-step-col h3{color:#3d99f4;font-weight:800}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-acts .bb-card{background:#f4fafd;border-radius:12px}
body.bb-skin-c.bb-skin-d .bb-entry .wp-block-details{border-radius:10px;border-color:#e3eef6}
body.bb-skin-c.bb-skin-d .bb-entry .wp-block-details summary{font-family:var(--bb-font);font-weight:700;color:#1f4468}
body.bb-skin-c.bb-skin-d .bb-entry .wp-block-details summary::after{background:#e2f1fd;color:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-entry .wp-block-details[open]{border-color:#3d99f4}
body.bb-skin-c.bb-skin-d .bb-entry .bb-steps-list li{border-radius:10px;border-color:#e3eef6}
body.bb-skin-c.bb-skin-d .bb-entry .bb-steps-list li::before{background:#3d99f4}
body.bb-skin-c.bb-skin-d .bbcb-table-wrap{border-radius:12px;border-color:#e3eef6}
body.bb-skin-c.bb-skin-d .bbcb-table thead th{background:#f1f9fe;color:#1f4468}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-side-card{border:0;padding:24px}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-side-card h3{color:#1f4468}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-price b{color:#3d99f4;font-weight:800}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-side-card .bbcb-announce{border-radius:10px;background:#f1f9fe}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-side-card .bbcb-announce-pill{background:#3d99f4;border-radius:999px}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cta{background:linear-gradient(120deg,#1f4468 0%,#3d99f4 70%,#63bacc 100%)}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cta .wp-block-button__link{background:#fff;color:#3d99f4;border-color:#fff}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cta .is-style-outline .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
body.bb-skin-c.bb-skin-d .bb-footer{background:#1f4468;color:#b9c9d8}
body.bb-skin-c.bb-skin-d .bb-footer-bottom{background:#17344f;border-top-color:#2a4d70}
body.bb-skin-c.bb-skin-d .bb-footer address a,body.bb-skin-c.bb-skin-d .bb-footer a:hover{color:#7fe3df}
body.bb-skin-c.bb-skin-d .bb-op-mobile-cta .bb-btn{background:#3d99f4;color:#fff;border-color:#3d99f4;border-radius:999px}

body.bb-skin-c.bb-skin-d .bb-op-infobar{background:#3f78c9}
body.bb-skin-c.bb-skin-d .bb-op-info-k{color:#d4ebff}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-sec p.bb-sec-label{color:#1fb5b0}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-open{border-left-color:#2dd8d3}
body.bb-skin-c.bb-skin-d .bb-entry .bb-hero-cover .wp-block-cover__background{background:linear-gradient(180deg,rgba(20,60,100,.05) 0%,rgba(20,60,100,.55) 100%)!important}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cta{background:linear-gradient(120deg,#4a90d9 0%,#63bacc 100%)}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cta .wp-block-button__link{color:#2585e0}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cta .is-style-outline .wp-block-button__link{color:#fff}

/* screenshot mode + small fixes */
body.bb-shot .bb-op-mobile-cta{display:none!important}
body.bb-shot.bb-onepage{padding-bottom:0}
body.bb-skin-a .bb-brand-name{font-size:1.25rem}
body.bb-skin-a .bb-brand-tag{font-size:.85rem}
body.bb-skin-b .bb-lang li.is-active a,body.bb-skin-c .bb-lang li.is-active a{color:#fff}
body.bb-skin-b .bb-brand .bb-logo,body.bb-skin-c .bb-brand .bb-logo{display:block}
@media (max-width:520px){body.bb-skin-a .bb-brand-name{font-size:.95rem;white-space:normal}body.bb-skin-a .bb-brand-tag{font-size:.8rem}}

/* skins.css より後に読まれる必要があるためここに置く（onepage.css → skins.css の順） */
/* =========================================================
   Mobile (2026-09-24): 固定部分を薄く。ヘッダーは流し、セクションナビだけ上に固定
   ========================================================= */
@media (max-width:760px){
  .bb-header{position:relative}
  .bb-entry .bb-op-nav{top:0}
  .bb-entry .bb-op-sec{scroll-margin-top:56px}
  body.bb-skin-c.bb-skin-d .bb-entry .bb-op-nav{padding:6px 0!important}
  body.bb-skin-c.bb-skin-d .bb-op-nav a{padding:7px 14px;font-size:.86rem}
  .bb-entry .wp-block-columns.bb-op-cols{padding-top:18px}
  .bb-op-infobar ul{gap:8px 22px;padding-top:10px;padding-bottom:10px}
}

/* =========================================================
   2026-09-28 修正依頼の反映（PC）
   ========================================================= */
/* 24 ページ幅を広く */
body.bb-skin-c.bb-skin-d{--bb-max:1320px}
body.bb-skin-c.bb-skin-d .bb-entry .bb-op-cols>.wp-block-column.bb-op-side{flex-basis:300px}
/* 17 ロゴを大きく・ロゴ＞メニュー・メニューと言語の文字サイズをそろえる */
body.bb-skin-c.bb-skin-d .bb-brand .bb-logo{width:68px;height:68px}
body.bb-skin-c.bb-skin-d .bb-brand-name{font-size:1.75rem;line-height:1.1}
body.bb-skin-c.bb-skin-d .bb-brand-tag{font-size:.92rem}
body.bb-skin-c.bb-skin-d .bb-nav li a{font-size:.92rem;line-height:1.2;font-family:var(--bb-font)}
body.bb-skin-c.bb-skin-d .bb-lang a{font-size:.82rem;line-height:1.2;font-family:var(--bb-font);font-weight:700}
/* 18 メニュー内の Enroll をボタン表示に */
body.bb-skin-c.bb-skin-d .bb-nav ul.menu li a[href*="/enroll/"]{background:#3d99f4;color:#fff;border-radius:999px;padding:9px 20px;margin-left:6px}
body.bb-skin-c.bb-skin-d .bb-nav ul.menu li a[href*="/enroll/"]:hover{background:#2585e0;color:#fff}
/* 19 カート */
.bb-cart-link{display:inline-flex;align-items:center;padding:8px 14px;border:1px solid #cbe5fb;border-radius:999px;font-weight:700;font-size:.85rem;color:#2585e0;white-space:nowrap;margin-left:6px}
.bb-cart-link:hover{background:#e2f1fd}
/* 10 FAQ の並び（グループブロックの余白で段がずれていたのを解消） */
.bb-entry .bb-op-faq{align-items:stretch;row-gap:10px}
.bb-entry .bb-op-faq>*{margin:0!important;max-width:none!important}
.bb-entry .bb-op-faq>.wp-block-details{height:100%}
/* 6 Full-Day の1日の流れのキーワード */
.bb-entry .bb-step-col p.bb-op-tagline{margin-top:.5em;font-weight:800;font-size:.85rem;color:#1fb5b0}
/* 39,40 旧 Bus & Lunch ページへのリンク */
.bb-entry p.bb-op-morelink{margin-top:10px;font-weight:700}
/* 37 規約の表示を広く・読みやすく */
.woocommerce .bb-entry{max-width:1100px}
.woocommerce-checkout .woocommerce-terms-and-conditions{max-height:60vh!important;font-size:.95rem;line-height:1.6;padding:16px 20px!important}
@media (max-width:760px){
  body.bb-skin-c.bb-skin-d .bb-brand .bb-logo{width:48px;height:48px}
  body.bb-skin-c.bb-skin-d .bb-brand-name{font-size:1.1rem}
  body.bb-skin-c.bb-skin-d .bb-nav ul.menu li a[href*="/enroll/"]{margin:10px 0 0;text-align:center}
}

/* 2026-09-29 トップのカルーセル（4枚・フェード） */
.bb-entry .wp-block-group.bb-hero-carousel{position:relative;height:600px;overflow:hidden;padding:0!important;background:#1f4468}
.bb-entry .bb-hero-carousel>.wp-block-cover.bb-hero-cover{position:absolute!important;inset:0;height:100%!important;min-height:0!important;margin:0!important;max-width:none!important;padding-left:var(--bb-gutter)!important;padding-right:var(--bb-gutter)!important;opacity:0;transition:opacity 1.2s ease;z-index:0}
.bb-entry .bb-hero-carousel>.wp-block-cover.bb-hero-cover.is-active,.bb-entry .bb-hero-carousel:not(.is-ready)>.wp-block-cover.bb-hero-cover:first-child{opacity:1;z-index:1}
.bb-entry .bb-hero-carousel .bb-hero-title{color:#fff;font-weight:800;font-size:clamp(2.3rem,5.4vw,3.9rem);line-height:1.08;margin:0 0 .4em;text-shadow:0 2px 14px rgba(0,0,0,.25);max-width:14ch}
@media (max-width:760px){.bb-entry .wp-block-group.bb-hero-carousel{height:520px}}

/* 2026-10-01 不具合修正: 右パネルが付いてこない（WP 標準の columns が align-items:normal!important で列を引き伸ばし、sticky が効かず下が空白になっていた）
   → 列の高さを中身に合わせて sticky を効かせる。画面が低いパソコンでもパネルの下端まで見えるよう、はみ出す分はパネル内でスクロール */
@media (min-width:1001px){
  .bb-entry .bb-op-cols>.wp-block-column.bb-op-side{align-self:flex-start!important;max-height:calc(100vh - var(--bb-header-h,88px) - 86px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-bottom:4px}
}

/* 2026-10-01 スマホ版の仕上げ: 比較表は画面幅に収める（横スクロールなし）／料金表は列が多いので横スクロールのまま、スクロールできることを表示 */
@media (max-width:600px){
  .bb-entry .bb-op-compare table{min-width:0;font-size:.8rem}
  .bb-entry .bb-op-compare th,.bb-entry .bb-op-compare td{padding:8px 7px!important;word-break:normal;overflow-wrap:break-word;hyphens:auto}
  .bb-entry .bb-op-compare tr>*:first-child{width:27%}
  .bbcb-table-wrap:has(.bbcb-table:not(.bbcb-table-2col))::before{content:"Swipe the table to see all columns \2192";display:block;font-size:.75rem;color:var(--bb-muted,#6b7a8a);padding:6px 10px 0;position:sticky;left:0}
}

/* 2026-10-01 全体チェックでの修正 */
/* Afternoon activities / Options: 3列で並ぶように（幅の計算で 3枚目が折り返していた） */
.bb-entry .bb-op-sec .wp-block-columns.bb-op-acts{gap:12px!important}
.bb-entry .bb-op-sec .bb-op-acts>.wp-block-column{flex:0 0 calc((100% - 24px) / 3)!important}
@media (max-width:600px){.bb-entry .bb-op-sec .bb-op-acts>.wp-block-column{flex-basis:100%!important}}
/* Activity Schedule のボタン: サイトの青いボタンにそろえる・スマホで折り返しても崩れない */
.bbcb-activity-link{margin:12px 0}
.bbcb-activity-link .bbcb-activity-btn{display:inline-block;max-width:100%;background:#3d99f4;color:#fff!important;border:0;border-radius:999px;padding:11px 22px;font-weight:700;line-height:1.35;text-decoration:none;white-space:normal}
.bbcb-activity-link .bbcb-activity-btn:hover{background:#2585e0}
/* 画面の低いパソコン: 右パネル下の Ages/Class size/Hours/Location（写真の下の帯と同じ内容）を隠してスクロールを出さない */
@media (min-width:1001px) and (max-height:900px){.bb-entry .bb-op-side .bb-op-facts{display:none}}
/* スマホ: 数字の4項目を 2×2 に */
@media (max-width:781px){
  .bb-entry .wp-block-columns.bb-stats-cols{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important}
  .bb-entry .wp-block-columns.bb-stats-cols>.wp-block-column.bb-stat{border-left:0;padding:8px 6px}
  .bb-entry .bb-stat h3{font-size:1.6rem}
}
/* 比較表: 単語の途中で切らない */
@media (max-width:600px){.bb-entry .bb-op-compare th,.bb-entry .bb-op-compare td{hyphens:manual}}
/* 支払い画面: カードのアイコンを文字の横に・Place order をサイトの青に */
.woocommerce-checkout .wc_payment_method label img.stripe-icon{display:inline-block;vertical-align:middle;margin:0 0 0 8px;max-height:22px;width:auto}
body.bb-skin-c.bb-skin-d.woocommerce-checkout #place_order,body.bb-skin-c.bb-skin-d .woocommerce button.button.alt{background:#3d99f4!important;border-color:#3d99f4!important;color:#fff!important}
body.bb-skin-c.bb-skin-d.woocommerce-checkout #place_order:hover{background:#2585e0!important}
.bbcb-foreign-checkout{margin:0 0 14px}

/* 2026-10-01 iPhone Safari での確認で判明 */
/* ボタン・リンクを続けて2回タップすると Safari が「ダブルタップ拡大」をしてしまう（申込みカレンダーの日付など）→ 拡大を無効にする */
a,button,summary,input,select,textarea,label,[role="button"]{touch-action:manipulation}
/* 料金表（スマホ）: 1列目が広がりすぎて金額の列が見えなかった → 各列を内容の幅にして横スクロールで見せる */
@media (max-width:600px){
  .bbcb-table:not(.bbcb-table-2col){min-width:0}
  .bbcb-table:not(.bbcb-table-2col) th,.bbcb-table:not(.bbcb-table-2col) td{white-space:nowrap;padding:10px 12px}
  .bbcb-table:not(.bbcb-table-2col) th:first-child,.bbcb-table:not(.bbcb-table-2col) td:first-child{position:sticky;left:0;background:#fff;z-index:1;box-shadow:2px 0 0 #e3eef6}
  .bbcb-table:not(.bbcb-table-2col) thead th:first-child{background:#f4fafd}
}

/* 2026-10-06 メニュー: Payment のサブメニュー（Tuition・Payment・School Policies） */
.bb-nav .menu-item-has-children{position:relative}
@media (min-width:1101px){
  .bb-nav .menu-item-has-children>a::after{content:"";display:inline-block;width:6px;height:6px;margin-left:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg);opacity:.6}
  .bb-nav .sub-menu{display:none!important;position:absolute;top:100%;left:0;min-width:190px;flex-direction:column!important;background:#fff;border:1px solid #e3eef6;border-radius:12px;box-shadow:0 10px 24px rgba(15,40,70,.12);padding:6px 0!important;z-index:60}
  .bb-nav .menu-item-has-children:hover>.sub-menu,.bb-nav .menu-item-has-children:focus-within>.sub-menu{display:flex!important}
  .bb-nav .sub-menu li a{padding:9px 16px!important;white-space:nowrap}
}
@media (max-width:1100px){
  .bb-nav .sub-menu{display:flex!important;flex-direction:column;padding:0!important;margin:0}
  .bb-nav .sub-menu li a{padding-left:28px!important;font-size:.95rem;color:#5b6b7b}
}

/* 2026-10-06 上部バナー: 3行（NOW ENROLLING・日程・早割）の文字の大きさをそろえ、スマホでは帯の高さを抑える */
.bb-topbar .bbcb-announce-pill{font-size:.82rem!important;letter-spacing:.04em;padding:3px 10px}
@media (max-width:760px){
  .bb-topbar .bb-container{gap:2px 8px!important;min-height:0;padding-top:5px!important;padding-bottom:5px!important}
  .bb-topbar .bbcb-announce,.bb-topbar .bbcb-announce *{font-size:.8rem!important;line-height:1.35}
  .bb-topbar .bbcb-announce{gap:2px 8px!important;justify-content:center}
  .bb-topbar .bbcb-announce-pill{padding:2px 8px}
  .bb-topbar .bbcb-announce-promo{border:0!important;padding-left:0!important;width:100%}
}
/* サブメニューの Tuition（トップのページ内リンク）がトップで選択中の色にならないように */
.bb-nav .sub-menu li.current-menu-item>a:not(:hover){color:inherit}

/* 2026-10-06 チェックアウトなどで「Cart (1)」が加わると、幅 1100〜1280px のパソコンでメニューが2段に崩れていた → この幅だけ余白を詰めて1段に収める */
@media (min-width:1101px) and (max-width:1280px){
  body.bb-skin-c.bb-skin-d .bb-nav li a{padding-left:8px!important;padding-right:8px!important}
  body.bb-skin-c.bb-skin-d .bb-nav ul.menu li a[href*="/enroll/"]{padding-left:16px!important;padding-right:16px!important;margin-left:2px}
  .bb-nav .bb-cart-link{padding-left:10px!important;padding-right:10px!important}
  .bb-nav ul.bb-lang a{padding-left:8px!important;padding-right:8px!important}
  .bb-header .bb-brand-name{font-size:1.5rem!important}
}

/* 2026-10-06 School Policies（同意フォーム・現在のサイトから引き継ぐページ）のフォームをサイトの見た目にそろえる */
.bb-entry .wpcf7 input[type=text],.bb-entry .wpcf7 input[type=email],.bb-entry .wpcf7 textarea{width:100%;max-width:420px;padding:10px 14px;border:1.5px solid #d5e3ef;border-radius:12px;font:inherit;background:#fff}
.bb-entry .wpcf7 input[type=submit]{font-family:inherit;font-size:1rem;background:#3d99f4;color:#fff;border:0;border-radius:999px;padding:11px 28px;font-weight:700;cursor:pointer}
.bb-entry .wpcf7 input[type=submit]:hover{background:#2585e0}
.bb-entry .wpcf7 .wpcf7-list-item{margin:0}
.bb-entry .bb-pay-policies{background:#f4fafd;border:1px solid #e3eef6;border-radius:12px;padding:14px 18px}

/* 2026-10-06 お問い合わせフォーム（Contact ページ） */
.bb-entry .bb-contact-form{background:#fff;border:1px solid #e3eef6;border-radius:16px;padding:24px 26px;max-width:720px}
.bb-entry .bb-contact-form h3{margin-top:0}
.bb-entry .bb-cf p{margin:0 0 14px}
.bb-entry .bb-cf label{font-weight:600;font-size:.95rem;display:block}
.bb-entry .bb-cf .wpcf7-form-control-wrap{display:block;margin-top:6px}
.bb-entry .bb-cf input[type=text],.bb-entry .bb-cf input[type=email],.bb-entry .bb-cf input[type=tel],.bb-entry .bb-cf textarea{width:100%;max-width:none;font-weight:400}
.bb-entry .bb-cf textarea{min-height:140px;resize:vertical}
.bb-entry .bb-cf input[type=tel]{width:100%;padding:10px 14px;border:1.5px solid #d5e3ef;border-radius:12px;font:inherit;background:#fff}
.bb-entry .bb-cf .bb-req{color:#d9534f}
.bb-entry .bb-cf .bb-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bb-entry .wpcf7 .wpcf7-not-valid-tip{font-size:.85rem}
.bb-entry .wpcf7 .wpcf7-response-output{border-radius:10px;margin:8px 0 0!important}
@media (max-width:600px){.bb-entry .bb-contact-form{padding:18px 16px}}

/* 2026-10-07 日本語・韓国語・中国語の折り返し
   日本語: 訳文の文節の区切りにゼロ幅スペースを入れてあり（inc/i18n-src/build.py）、そこでだけ改行。韓国語: 空白で改行（語の途中で切らない）。
   中国語: 字ごとに改行（一般的な組版）。見出しは行の長さをそろえ、本文は最後の行が1文字にならないように */
html:lang(ja) .bb-entry .bb-hero-carousel .bb-hero-title,html:lang(zh) .bb-entry .bb-hero-carousel .bb-hero-title,html:lang(ko) .bb-entry .bb-hero-carousel .bb-hero-title{max-width:none}
html:lang(ja) .bb-entry,html:lang(ko) .bb-entry,html:lang(ja) .bb-entry *,html:lang(ko) .bb-entry *{word-break:keep-all!important;overflow-wrap:anywhere}
html:lang(ja) .bb-entry,html:lang(zh) .bb-entry{line-break:strict}
html:lang(ja) .bb-entry :is(h1,h2,h3,h4,summary,.wp-block-button__link),html:lang(zh) .bb-entry :is(h1,h2,h3,h4,summary,.wp-block-button__link),html:lang(ko) .bb-entry :is(h1,h2,h3,h4,summary,.wp-block-button__link){text-wrap-style:balance}
html:lang(ja) .bb-entry :is(p,li),html:lang(zh) .bb-entry :is(p,li),html:lang(ko) .bb-entry :is(p,li){text-wrap-style:pretty}
/* 申込みフォーム（プラグインの文言・区切りの印なし）は通常の折り返し */
html:lang(ja) .bb-entry .bbcb-form,html:lang(ja) .bb-entry .bbcb-form *{word-break:normal!important}
/* 上部バナーの早割の文（日本語・韓国語・中国語）: パソコンは1行、スマホは訳文で決めた位置で2行に固定 */
html:lang(ko) .bbcb-announce-promo .bbcb-l+.bbcb-l::before{content:" "}
@media (max-width:760px){
  .bbcb-announce-promo .bbcb-l{display:block;white-space:nowrap}
  html:lang(ko) .bbcb-announce-promo .bbcb-l+.bbcb-l::before{content:none}
}
/* スマホ下部の「今すぐ申し込む」: ボタンの文字は1行。日程は日付の途中で折り返さない */
@media (max-width:960px){
  html:lang(ja) .bb-op-mobile-cta .bb-btn,html:lang(zh) .bb-op-mobile-cta .bb-btn,html:lang(ko) .bb-op-mobile-cta .bb-btn{flex:0 0 auto;white-space:nowrap}
  html:lang(ja) .bb-op-mobile-cta span,html:lang(zh) .bb-op-mobile-cta span,html:lang(ko) .bb-op-mobile-cta span{flex:1 1 auto;min-width:0;word-break:keep-all}
}
/* 2026-10-13 スマホのメニューの言語ボタン: Safari の拡大（125% など）で幅が狭くなっても4つが画面に収まるように、ボタンの左右の余白を画面幅に合わせて詰める */
@media (max-width:1100px){
  .bb-nav ul.bb-lang{max-width:100%;flex-wrap:nowrap}
  .bb-nav ul.bb-lang a{padding-left:clamp(6px,2.4vw,14px)!important;padding-right:clamp(6px,2.4vw,14px)!important;white-space:nowrap}
}
/* 2026-10-13 スマホでメニューを開いている間は、下に固定の「合計・次へ進む」「今すぐ申し込む」の帯を隠す（メニューの一番下の言語ボタンが帯に隠れていた） */
body.bb-nav-open .bbcb-sticky,body.bb-nav-open .bb-op-mobile-cta{display:none!important}
/* ロゴ横の一言（日本語・韓国語・中国語）: 語の途中や「へ」だけの行で折り返さない */
html:lang(ja) .bb-brand-tag,html:lang(zh) .bb-brand-tag,html:lang(ko) .bb-brand-tag{word-break:keep-all;line-break:strict}

/* =====================================================================
   2026-10-13 スマホの見出し・ラベルの改行を固定（どの機種の幅・Safari の拡大縮小でも、変わるのは大きさだけで改行の位置は同じ）
   ・本文の見出し類: 見出しが入っている枠の幅（cqi）で文字の大きさを決める。基準＝幅 390px のときの今の大きさ
   ・上部のお知らせ・ロゴ・下に固定の帯: 画面幅（vw）で大きさと余白を決める
   ・本文（段落）は今までどおり（文字を大きくして見る人のために、拡大すれば大きくなる）
   ===================================================================== */
@media (max-width:760px){
  :root{--bb-gutter:4.1vw}
  .bb-entry,.bb-entry :is(div,section,details,figure):has(> :is(h1,h2,h3,h4,summary,.bb-hero-lead,.bb-sec-label)){container-type:inline-size}
  .bb-entry .bb-hero-cover .bb-hero-title{font-size:10.73cqi!important}
  .bb-entry .bb-hero-cover .bb-hero-lead{font-size:4.66cqi!important}
  .bb-entry .bbcb-pricing > .bbcb-pricing-h{font-size:6.69cqi!important}
  .bb-entry .wp-block-details summary{gap:.8em!important}
  .bb-entry .wp-block-details summary::after{width:1.7em!important;height:1.7em!important}
  .bb-entry .bb-op-sec > .bb-sec-label{font-size:4.37cqi!important}
  .bb-entry .bb-op-sec > h2.bb-sec-title{font-size:8.23cqi!important}
  .bb-entry .bb-op-sec > h3.bb-op-h3{font-size:6.43cqi!important}
  .bb-entry .bb-op-sec > h3:not(.bb-op-h3){font-size:6.69cqi!important}
  .bb-entry .bb-op-sec > h4{font-size:5.4cqi!important}
  .bb-entry :not(.bb-op-sec) > .bb-sec-label{font-size:3.63cqi!important}
  .bb-entry :not(.bb-op-sec) > h2.bb-sec-title,.bb-entry .bb-sec.bb-cta > h2{font-size:6.4cqi!important}
  .bb-entry .bb-cards-cols .bb-card > h3{font-size:5.66cqi!important}
  .bb-entry .bb-cards-cols.bb-compare .bb-card > h3{font-size:5.18cqi!important}
  .bb-entry .bb-cards-cols.bb-op-acts .bb-card > h3{font-size:5.14cqi!important}
  .bb-entry .bb-cards-cols.bb-team .bb-card > h3{font-size:6.44cqi!important}
  .bb-entry .bb-stat > h3{font-size:18.4cqi!important}
  .bb-entry .bb-step-col > h3{font-size:7.46cqi!important}
  .bb-entry .bb-step-col > h4{font-size:6.02cqi!important}
  .bb-entry details > summary{font-size:5.3cqi!important}
  .bb-entry .bb-op-offices .wp-block-column > h4{font-size:5.4cqi!important}
  .bb-entry .bb-op-side-card > h3{font-size:6.51cqi!important}
  .bb-entry .bb-enroll-body > h2{font-size:5.18cqi!important}
  .bb-entry .bb-feature-cols .wp-block-column > h3{font-size:6.06cqi!important}
  .bb-entry .bb-contact-form > h3{font-size:6.1cqi!important}

  /* 上部のお知らせ */
  .bb-topbar .bb-container{padding-left:4.1vw!important;padding-right:4.1vw!important;gap:.15em .6em!important}
  .bb-topbar .bbcb-announce,.bb-topbar .bbcb-announce *{font-size:3.28vw!important}
  .bb-topbar .bbcb-announce{gap:.15em .6em!important}
  .bb-topbar .bbcb-announce-pill{padding:.15em .6em!important}
  .bb-topbar .bbcb-announce-promo{padding-right:0!important}
  /* ロゴ: 名前は「Bright Beginnings / ESL Hawaii」、一言は「Learn English for a / Brighter Future」（日中韓は1〜2行）で固定 */
  .bb-header .bb-container{padding-left:4.1vw!important;padding-right:4.1vw!important}
  .bb-header .bb-brand{gap:2.6vw!important}
  .bb-header .bb-brand .bb-logo{width:12.3vw!important;height:12.3vw!important}
  .bb-header .bb-burger{flex:0 0 11.3vw!important;width:11.3vw!important}
  .bb-header .bb-brand-name{font-size:4.51vw!important;max-width:10.4em;white-space:normal!important}
  .bb-header .bb-brand-tag{font-size:3.77vw!important;max-width:12em;white-space:normal!important}
  /* 下に固定の帯（トップの「今すぐ申し込む」・申込みの「合計・次へ進む」） */
  .bb-op-mobile-cta{padding-left:4.1vw!important;padding-right:4.1vw!important;gap:2.6vw!important}
  .bb-op-mobile-cta span{font-size:3.28vw!important}
  .bb-op-mobile-cta .bb-btn{font-size:4.1vw!important;padding-left:1.875em!important;padding-right:1.875em!important;white-space:nowrap}
  .bbcb-sticky-in{padding-left:4.1vw!important;padding-right:4.1vw!important;gap:3.1vw!important}
  .bbcb-sticky-label{font-size:2.95vw!important}
  .bbcb-sticky-amt{font-size:4.92vw!important}
  .bbcb-sticky-note{font-size:2.79vw!important;max-width:none!important}
  .bbcb-sticky-in .bbcb-btn{font-size:3.61vw!important;padding-left:1.28em!important;padding-right:1.28em!important}
}
/* スマホだけの改行（訳文の <br class='bb-sp'>）。パソコンでは1行のまま */
@media (min-width:761px){br.bb-sp{display:none}.bb-hero-lead br.bb-sp{display:inline}}
@media (max-width:760px){
  .bb-entry > h2.bb-sec-title{font-size:5.8cqi!important}
}
.bb-nw{white-space:nowrap}
@media (max-width:760px){
  /* 見出しは行の長さをそろえる（英語も） */
  .bb-entry :is(h1,h2,h3,h4,summary){text-wrap-style:balance}
}
/* 2026-10-13 スマホ: ボタン・キャンプ情報の帯・ページ内メニューも画面幅に合わせて大きさを変え、どの幅でも同じ並びにする */
@media (max-width:760px){
  .bb-entry .wp-block-buttons{gap:.7rem;gap:3.1vw!important}
  .bb-entry .wp-block-button__link{font-size:4.36vw!important;padding:.7em 1.53em!important;white-space:nowrap}
  .bb-entry .bb-op-infobar ul{display:grid!important;grid-template-columns:1fr 1fr;gap:.6em 1.4em!important;padding-top:.8em!important;padding-bottom:.8em!important;font-size:3.69vw}
  .bb-entry .bb-op-infobar li{font-size:3.69vw!important;min-width:0}
  .bb-entry .bb-op-infobar li:first-child{grid-column:1 / -1}
  .bb-entry .bb-op-infobar .bb-op-info-k{font-size:.8em!important}
  .bb-entry .bb-op-infobar .bb-op-info-v{font-size:1em!important}
  .bb-entry .bb-op-nav ul{gap:2vw!important}
  .bb-entry .bb-op-nav a{font-size:3.53vw!important;padding:.5em 1em!important}
}
@media (max-width:760px){
  /* ページ内メニュー（概要・キャンプ・料金…）は横にはみ出さず、全部見えるように折り返して並べる */
  .bb-entry .bb-op-nav ul{flex-wrap:wrap!important;justify-content:center;overflow:visible!important;row-gap:1.6vw!important}
}
@media (max-width:760px){
  /* ページ上部の見出しの下の説明（リード文）も幅に合わせて大きさを変え、改行の位置を固定 */
  .bb-entry .bb-sec-intro{font-size:4.18cqi!important}
}
