@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&family=Zen+Kaku+Gothic+Antique:wght@500;700&display=swap");
/*-----------------------

         変数

-----------------------*/
:root {
  --baseColor: #1a1a1a;
  --mainColor: #64A6DC;
  --subColor: #;
  --accentColor: #;
  --colorW: #fff;
  --base50Color: #8D8D8D;
  --main50Color: #B2D3EE;
  --sub50Color: #8d89b1;
  --accent50Color: #;
  --base10Color: #E8E8E8;
  --main10Color: #F0F6FC;
  --sub10Color: #e8e7ef;
  --accent10Color: #;
}
/*-----------------------

         COMMON

-----------------------*/
body {
  width: 100%;
  color: var(--baseColor);
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  /* 読みやすくモダンなゴシック体 */
  font-family: "Noto Sans JP", sans-serif;
  /* 明朝体。落ち着いた印象 */
  /* font-family: 'Noto Serif JP', serif; */
  /* 丸みのある親しみやすいゴシック体 */
  /* font-family: 'Zen Maru Gothic', sans-serif; */
}

@media screen and (max-width:1440px) {}
@media screen and (max-width:1368px) {}
@media screen and (max-width:1280px) {}
@media screen and (max-width:1024px) {}
@media screen and (max-width:559px) {}
@media screen and (max-width:375px) {}
@media screen and (max-width:361px) {}

/* 縦長ロゴの際のヘッダー調整 */
@media (min-width: 769px) {
header h1 img, header p.logo img {
  height: 5vw; /*適宜調整も可能*/
  width: auto;
  max-height: 8rem; /*適宜調整も可能*/
}
}

/*-----------------------

         みんなの秘書 デザイン（2026-09 刷新）
         .mh-top 配下と .mh-nav（ヘッダーのタブ）のみに適用

-----------------------*/
body:has(.mh-top){overflow-x:clip}
.mh-top{--ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  width:100vw;margin-left:calc(50% - 50vw);padding:0 0 64px;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.85;letter-spacing:.03em;text-align:left}
.mh-top *{box-sizing:border-box}
.mh-top p,.mh-top li,.mh-top h1,.mh-top h2,.mh-top h3,.mh-top dd{word-break:auto-phrase;overflow-wrap:anywhere}
.mh-top a{color:inherit!important;text-decoration:none!important}
.mh-top a:hover{opacity:1}
.mh-top a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.mh-top .mh-in{max-width:1200px;margin:0 auto;padding:0 16px}

/* 帯（ヒーロー・ページ見出し） */
.mh-top .mh-band{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,var(--mist) 100%)}
.mh-top .mh-hero{position:relative;padding:36px 16px 40px}
.mh-top .mh-blob{position:absolute;right:-70px;top:4px;width:250px;height:250px;border-radius:50%;background:var(--moon);opacity:.13;z-index:0}
.mh-top .mh-mark{position:absolute;right:-6px;top:30px;width:112px;height:auto;z-index:1}
.mh-top .mh-hero>*:not(.mh-blob):not(.mh-mark),.mh-top .mh-pghd>*:not(.mh-blob){position:relative;z-index:2}
.mh-top .mh-eyebrow{font-family:var(--head);font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--blue-deep);margin:0 0 8px}
.mh-top .mh-h1{font-family:var(--head);font-weight:700;font-size:clamp(26px,7.6vw,40px);line-height:1.45;letter-spacing:.04em;margin:0 0 20px;padding:0;border:0;background:none;color:var(--ink);text-wrap:balance}
.mh-top .mh-h1 em{font-style:normal;background:linear-gradient(transparent 64%,rgba(252,217,119,.85) 64%)}
.mh-top .mh-lead{font-size:15px;color:var(--ink-soft);margin:0;max-width:36em}
.mh-top .mh-pghd{position:relative;padding:40px 16px 36px}
.mh-top .mh-pghd .mh-blob{right:-30px;top:18px;width:130px;height:130px;background:linear-gradient(100deg,#dff1f2,#dbe8fa);opacity:1}
.mh-top .mh-pghd .mh-blob::after{content:"";position:absolute;right:-6px;top:-10px;width:64px;height:64px;border-radius:50%;background:var(--sun)}
.mh-top .mh-pghd .mh-h1{font-size:clamp(26px,7vw,36px);margin-bottom:12px}

/* 見出し */
.mh-top .mh-h2{font-family:var(--head);font-weight:700;font-size:22px;line-height:1.5;margin:48px 0 16px;padding:0;border:0;background:none;display:flex;align-items:center;gap:12px;color:var(--ink);text-align:left}
.mh-top .mh-h2::before{content:"";flex:none;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 72% 30%,var(--yellow) 0 30%,transparent 31%),var(--moon)}
.mh-top .mh-h2::after{display:none}
.mh-top .mh-h3{font-family:var(--head);font-weight:700;font-size:18px;line-height:1.5;margin:0 0 8px;padding:0;border:0;background:none;color:var(--ink)}
.mh-top .mh-h3::before,.mh-top .mh-h3::after{display:none}

/* ボタン */
.mh-top .mh-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:999px;font-family:var(--head);font-weight:700;font-size:16px;width:100%;max-width:360px;background:#fff;color:var(--blue-deep)!important;border:2px solid var(--blue)}
.mh-top .mh-btn-main{background:var(--moon-strong);color:#fff!important;border:0;box-shadow:0 6px 18px rgba(74,143,227,.28)}
.mh-top .mh-cta{margin-top:32px;display:flex;flex-direction:column;align-items:center;gap:12px}

/* 受付中 */
.mh-top .mh-feat{display:grid;gap:12px}
.mh-top .mh-fc{display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden;border-radius:22px;padding:22px 20px 20px;color:#fff!important;background:var(--moon-strong)}
.mh-top .mh-fc::after{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:var(--sun);opacity:.9}
.mh-top .mh-fc>*{position:relative;z-index:1}
.mh-top .mh-fc-sun{background:linear-gradient(100deg,#f7d9c4,#fbe39c);color:var(--ink)!important}
.mh-top .mh-fc-sun::after{background:var(--moon);opacity:.55}
.mh-top .mh-tag{align-self:flex-start;font-size:12px;font-weight:700;letter-spacing:.06em;background:#fff;color:var(--blue-deep);border-radius:999px;padding:2px 10px}
.mh-top .mh-fc b{font-family:var(--head);font-size:26px;line-height:1.35;letter-spacing:.06em}
.mh-top .mh-fc-d{font-size:14px;line-height:1.7}
.mh-top .mh-fc-go{margin-top:6px;font-family:var(--head);font-weight:700;font-size:15px}

/* イベント */
.mh-top .mh-evs{display:grid;gap:10px}
.mh-top .mh-ev{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:border-color .2s}
.mh-top .mh-ev:hover{border-color:var(--teal)}
.mh-top .mh-date{display:grid;justify-items:center;background:var(--mist);border-radius:14px;padding:6px 0;line-height:1.2;font-variant-numeric:tabular-nums}
.mh-top .mh-date .m,.mh-top .mh-date .w{font-size:11px;color:var(--ink-soft)}
.mh-top .mh-date .d{font-family:var(--head);font-weight:700;font-size:24px;color:var(--blue-deep)}
.mh-top .mh-ev-k{display:block;font-size:11px;font-weight:700;color:var(--blue-deep);letter-spacing:.06em}
.mh-top .mh-ev b{display:block;font-family:var(--head);font-size:15px;line-height:1.5}
.mh-top .mh-ev-p{display:block;font-size:12px;color:var(--ink-soft)}

/* 取り組み */
.mh-top .mh-svc{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mh-top .mh-svc li{margin:0;padding:0;list-style:none}
.mh-top .mh-svc li>*{display:grid;grid-template-columns:44px 1fr 16px;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;height:100%;transition:border-color .2s}
.mh-top .mh-svc a:hover{border-color:var(--teal)}
.mh-top .mh-ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-family:var(--head);font-weight:700;font-size:18px;color:#fff;background:var(--moon-strong)}
.mh-top .mh-svc li:nth-child(even) .mh-ic{background:var(--sun);color:var(--ink)}
.mh-top .mh-svc b{font-family:var(--head);font-size:16px;display:block;line-height:1.4}
.mh-top .mh-svc .mh-d{font-size:13px;color:var(--ink-soft);line-height:1.6;display:block}
.mh-top .mh-ar{color:var(--blue);font-weight:700}
.mh-top .mh-aside{font-size:14px;color:var(--ink-soft);background:var(--mist);border-radius:16px;padding:14px 16px;margin:14px 0 0;text-align:left}

/* 流れ */
.mh-top .mh-flow{list-style:none;counter-reset:f;margin:0;padding:0;display:grid}
.mh-top .mh-flow li{counter-increment:f;position:relative;padding:0 0 22px 52px;list-style:none}
.mh-top .mh-flow li::before{content:counter(f);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--moon-strong);color:#fff;font-family:var(--head);font-weight:700;display:grid;place-items:center}
.mh-top .mh-flow li:not(:last-child)::after{content:"";position:absolute;left:17px;top:40px;bottom:4px;width:2px;background:linear-gradient(var(--teal),var(--line))}
.mh-top .mh-flow b{display:block;font-family:var(--head)}

/* 下層ページの箱 */
.mh-top .mh-boxes{display:grid;gap:14px;margin-top:28px}
.mh-top .mh-box{background:var(--mist);border-radius:20px;padding:22px 20px}
.mh-top .mh-box p{margin:0 0 10px}
.mh-top .mh-box p:last-child{margin-bottom:0}
.mh-top .mh-facts{margin:12px 0 0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:15px}
.mh-top .mh-facts dt{font-weight:700;color:var(--ink-soft);font-size:13px;padding-top:2px;margin:0}
.mh-top .mh-facts dd{margin:0;font-variant-numeric:tabular-nums}
.mh-top .mh-price{font-family:var(--head);font-weight:700;font-size:20px;color:var(--blue-deep)}
.mh-top .mh-ticks{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px}
.mh-top .mh-ticks li{padding-left:24px;position:relative;list-style:none;margin:0}
.mh-top .mh-ticks li::before{content:"";position:absolute;left:4px;top:.62em;width:10px;height:10px;border-radius:50%;background:var(--moon)}
.mh-top .mh-note{margin-top:12px;font-size:14px;color:var(--ink-soft)}

/* 他の取り組みへ */
.mh-top .mh-more{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.mh-top .mh-more li{list-style:none;margin:0}
.mh-top .mh-more a{display:inline-block;font-family:var(--head);font-weight:700;font-size:14px;padding:8px 16px;border-radius:999px;background:var(--mist);color:var(--ink-soft)!important}
.mh-top .mh-more a:hover{background:#e6f1f5}

@media (min-width:720px){
  .mh-top .mh-feat,.mh-top .mh-svc,.mh-top .mh-evs,.mh-top .mh-boxes{grid-template-columns:1fr 1fr}
  .mh-top .mh-cta{flex-direction:row;justify-content:center}
  .mh-top .mh-blob{width:340px;height:340px;right:-40px}
  .mh-top .mh-mark{width:150px;right:40px;top:50px}
}
/* PC：画面いっぱいに広げて文字を大きく */
@media (min-width:1024px){
  .mh-top{font-size:18px}
  .mh-top .mh-in{padding:0 40px}
  .mh-top .mh-hero{padding:88px 40px 96px}
  .mh-top .mh-blob{width:560px;height:560px;right:-60px;top:-40px}
  .mh-top .mh-mark{width:260px;right:120px;top:110px}
  .mh-top .mh-eyebrow{font-size:14px;margin-bottom:14px}
  .mh-top .mh-h1{font-size:60px;margin-bottom:28px}
  .mh-top .mh-lead{font-size:18px}
  .mh-top .mh-pghd{padding:72px 40px 64px}
  .mh-top .mh-pghd .mh-blob{width:220px;height:220px;right:40px;top:36px}
  .mh-top .mh-pghd .mh-blob::after{width:100px;height:100px}
  .mh-top .mh-pghd .mh-h1{font-size:48px}
  .mh-top .mh-h2{font-size:30px;margin:80px 0 28px}
  .mh-top .mh-h2::before{width:28px;height:28px}
  .mh-top .mh-h3{font-size:22px}
  .mh-top .mh-feat{gap:20px}
  .mh-top .mh-fc{padding:36px 36px 32px;min-height:260px}
  .mh-top .mh-fc::after{width:200px;height:200px;right:-50px;top:-60px}
  .mh-top .mh-fc b{font-size:38px}
  .mh-top .mh-fc-d{font-size:17px}
  .mh-top .mh-fc-go{font-size:17px;margin-top:auto}
  .mh-top .mh-tag{font-size:13px;padding:3px 12px}
  .mh-top .mh-evs{gap:16px}
  .mh-top .mh-ev{grid-template-columns:78px 1fr;gap:20px;padding:20px}
  .mh-top .mh-date .d{font-size:32px}
  .mh-top .mh-date .m,.mh-top .mh-date .w,.mh-top .mh-ev-k{font-size:13px}
  .mh-top .mh-ev b{font-size:19px}
  .mh-top .mh-ev-p{font-size:14px}
  .mh-top .mh-svc{grid-template-columns:repeat(3,1fr);gap:16px}
  .mh-top .mh-svc li>*{grid-template-columns:56px 1fr 16px;gap:16px;padding:22px 20px}
  .mh-top .mh-ic{width:56px;height:56px;font-size:22px}
  .mh-top .mh-svc b{font-size:19px}
  .mh-top .mh-svc .mh-d{font-size:14px}
  .mh-top .mh-aside{font-size:16px;padding:20px 24px;margin-top:20px}
  .mh-top .mh-flow{grid-template-columns:repeat(3,1fr);gap:24px}
  .mh-top .mh-flow li{padding:64px 24px 24px;background:var(--mist);border-radius:20px}
  .mh-top .mh-flow li::before{left:24px;top:20px}
  .mh-top .mh-flow li:not(:last-child)::after{display:none}
  .mh-top .mh-flow b{font-size:20px;margin-bottom:6px}
  .mh-top .mh-btn{font-size:17px;min-height:60px}
  .mh-top .mh-boxes{gap:20px;margin-top:40px}
  .mh-top .mh-box{padding:32px 32px}
  .mh-top .mh-facts{font-size:17px}
  .mh-top .mh-facts dt{font-size:15px}
  .mh-top .mh-price{font-size:24px}
  .mh-top .mh-more a{font-size:15px;padding:10px 20px}
}

/* ヘッダーのタブ（mycustom.js が .mh-nav を付ける） */
header .navi ul.mh-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:6px 16px 14px;margin:0}
header .navi ul.mh-nav li{margin:0;padding:0;border:0}
header .navi ul.mh-nav li::before,header .navi ul.mh-nav li::after{display:none}
header .navi ul.mh-nav a{display:inline-block;font-family:"Zen Kaku Gothic Antique","Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:15px;line-height:1.4;letter-spacing:.04em;color:#626a73;background:#f3f8fa;padding:8px 18px;border-radius:999px;text-decoration:none}
header .navi ul.mh-nav a:hover{background:#e6f1f5}
header .navi ul.mh-nav a[aria-current="page"]{background:linear-gradient(100deg,#3b92a3,#2f6fc0);color:#fff}
.drawer-menu.mh-nav a[aria-current="page"]{color:#2f6fc0;font-weight:700}
header .navi ul.mh-nav a::before,header .navi ul.mh-nav a::after,.drawer-menu.mh-nav a::after{content:none!important;display:none!important}
/* デザイン刷新ページではテンプレートのページ見出しを出さない（本文側に見出しがあるため） */
.content-wrapper:has(.mh-top) .content-header{display:none}
/* 追加部品（2026-09-30） */
.mh-top .mh-link{margin:14px 0 0}
.mh-top .mh-link a{font-family:var(--head);font-weight:700;font-size:15px;color:var(--blue-deep)!important;border-bottom:2px solid var(--teal)}
.mh-top .mh-ticks-lg{gap:10px;font-size:17px}
.mh-top .mh-ticks-lg li{background:var(--mist);border-radius:14px;padding:12px 16px 12px 40px}
.mh-top .mh-ticks-lg li::before{left:16px;top:1.25em}
@media (min-width:720px){.mh-top .mh-ticks-lg{grid-template-columns:1fr 1fr}}
@media (min-width:1024px){.mh-top .mh-evs{grid-template-columns:repeat(3,1fr)}.mh-top .mh-link a{font-size:16px}.mh-top .mh-ticks-lg{font-size:18px}}

/* 追加部品：ジュークなど（2026-09-30） */
.mh-top .mh-cta-left{justify-content:flex-start;align-items:flex-start;margin-top:24px}
.mh-top .mh-blob-sun{background:linear-gradient(100deg,#fbe7d6,#fdf0c4)!important}
.mh-top .mh-blob-sun::after{background:var(--moon)!important;opacity:.7}
.mh-top .mh-sm{display:inline-block;font-size:13px;color:var(--ink-soft);line-height:1.6}
.mh-top .mh-em{font-family:var(--head);color:var(--blue-deep);font-size:1.15em}
.mh-top .mh-intro{display:grid;gap:20px;align-items:center}
.mh-top .mh-intro-txt p{margin:0 0 12px}
.mh-top .mh-intro-img img{display:block;width:100%;max-width:420px;height:auto;margin:0 auto;border-radius:24px;box-shadow:0 10px 30px rgba(47,111,192,.12)}
.mh-top .mh-plans{display:grid;gap:14px;margin-bottom:20px}
.mh-top .mh-plan{position:relative;display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px 20px}
.mh-top .mh-plan b{font-family:var(--head);font-size:20px}
.mh-top .mh-plan-main{border:2px solid var(--blue);box-shadow:0 8px 24px rgba(74,143,227,.14)}
.mh-top .mh-plan-main .mh-tag{background:var(--moon-strong);color:#fff}
.mh-top .mh-plan .mh-tag{background:var(--mist)}
.mh-top .mh-plan-price{margin:4px 0 0;font-family:var(--head);font-weight:700;font-size:32px;line-height:1.2;color:var(--blue-deep);font-variant-numeric:tabular-nums}
.mh-top .mh-plan-price small{font-size:13px;color:var(--ink-soft);margin-left:4px}
.mh-top .mh-plan-d{margin:0;font-size:14px;color:var(--ink-soft)}
.mh-top .mh-message{margin-top:48px;text-align:center;background:linear-gradient(100deg,#e8f5f5,#e6effb);border-radius:24px;padding:32px 20px}
.mh-top .mh-message p{margin:0}
.mh-top .mh-message-h{font-family:var(--head);font-weight:700;font-size:22px;margin-bottom:8px!important;color:var(--ink)}
@media (min-width:720px){
  .mh-top .mh-intro{grid-template-columns:1.3fr 1fr;gap:48px}
  .mh-top .mh-intro .mh-h2{margin-top:56px}
  .mh-top .mh-plans{grid-template-columns:repeat(3,1fr)}
  .mh-top .mh-boxes-3{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:1024px){
  .mh-top .mh-plan{padding:32px 28px}
  .mh-top .mh-plan b{font-size:24px}
  .mh-top .mh-plan-price{font-size:40px}
  .mh-top .mh-plan-d{font-size:16px}
  .mh-top .mh-message{padding:48px 32px}
  .mh-top .mh-message-h{font-size:30px}
}

/*-----------------------
   イベント一覧・イベント詳細・講座詳細（テンプレート部分）
   みんなの秘書デザインに合わせる
-----------------------*/
.content-wrapper:has(form[name="eventListForm"]),.event-detail-page,.kouza-detail-page{
  --ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  font-family:var(--body);color:var(--ink)}
/* JSで差し込む見出しの帯 */
.mh-top.mh-auto{padding-bottom:0;margin-bottom:28px}
.mh-top .mh-back{display:inline-block;margin:0 0 10px;font-size:14px;font-weight:700;color:var(--blue-deep)!important}
.mh-top .mh-pghd .mh-h1.mh-h1-sm{font-size:clamp(24px,6vw,32px)}
@media (min-width:1024px){.mh-top .mh-pghd .mh-h1.mh-h1-sm{font-size:40px}}

/* イベント一覧のカード */
.content-wrapper:has(form[name="eventListForm"]) .card-row{display:grid;grid-template-columns:1fr;gap:16px;margin:0 0 56px}
.content-wrapper:has(form[name="eventListForm"]) .card-row::before,.content-wrapper:has(form[name="eventListForm"]) .card-row::after{display:none}
.content-wrapper:has(form[name="eventListForm"]) .portfolio-item{width:auto;max-width:none;float:none;padding:0;margin:0}
.content-wrapper:has(form[name="eventListForm"]) .card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:none;transition:border-color .2s,box-shadow .2s;margin:0}
.content-wrapper:has(form[name="eventListForm"]) .card:hover{border-color:var(--teal);box-shadow:0 10px 28px rgba(47,111,192,.10)}
.content-wrapper:has(form[name="eventListForm"]) .card>a{position:relative;display:block}
.content-wrapper:has(form[name="eventListForm"]) .card-img-top{display:block;width:100%;aspect-ratio:7/4;height:auto;object-fit:cover;border-radius:0}
.content-wrapper:has(form[name="eventListForm"]) .badge{position:absolute;left:14px;top:14px;background:var(--sun);color:var(--ink);font-family:var(--head);font-weight:700;font-size:12px;border-radius:999px;padding:4px 12px}
.content-wrapper:has(form[name="eventListForm"]) .card-body{padding:18px 20px 8px;flex:1}
.content-wrapper:has(form[name="eventListForm"]) .card-title{margin:0 0 6px;font-family:var(--head);font-weight:700;font-size:19px;line-height:1.5}
.content-wrapper:has(form[name="eventListForm"]) .card-title a{color:var(--ink)!important;text-decoration:none!important}
.content-wrapper:has(form[name="eventListForm"]) .card-body p{margin:0;font-family:var(--head);font-weight:700;font-size:15px;color:var(--blue-deep);font-variant-numeric:tabular-nums}
.content-wrapper:has(form[name="eventListForm"]) .card-body p.card-text{font-family:var(--body);font-weight:400;color:var(--ink-soft);font-size:14px}
.content-wrapper:has(form[name="eventListForm"]) .card-body p.card-text:empty{display:none}
.content-wrapper:has(form[name="eventListForm"]) .sns-list{display:flex;flex-wrap:wrap;gap:6px;padding:8px 20px 18px;margin:0;border:0;background:none}
.content-wrapper:has(form[name="eventListForm"]) .sns-list a{font-size:11px;line-height:1.4;padding:3px 10px;border-radius:999px;background:var(--mist);color:var(--ink-soft)!important;text-decoration:none!important;margin:0;width:auto}
@media (min-width:720px){.content-wrapper:has(form[name="eventListForm"]) .card-row{grid-template-columns:repeat(2,1fr);gap:20px}}
@media (min-width:1024px){.content-wrapper:has(form[name="eventListForm"]) .card-row{grid-template-columns:repeat(3,1fr);gap:24px}.content-wrapper:has(form[name="eventListForm"]) .card-title{font-size:21px}}

/* 詳細ページ（イベント・講座）のテンプレート部分 */
:is(.event-detail-page,.kouza-detail-page) .content-header .page-header{font-family:var(--head);font-weight:700;color:var(--ink);letter-spacing:.04em}
:is(.event-detail-page,.kouza-detail-page) .sns-detail{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 24px}
:is(.event-detail-page,.kouza-detail-page) .sns-detail a{font-size:12px;line-height:1.4;padding:4px 12px;border-radius:999px;background:var(--mist);color:var(--ink-soft)!important;text-decoration:none!important;margin:0;width:auto}
:is(.event-detail-page,.kouza-detail-page) table.table.entry{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;margin:32px 0 24px}
:is(.event-detail-page,.kouza-detail-page) table.table.entry>tbody>tr>th,:is(.event-detail-page,.kouza-detail-page) table.table.entry>tr>th{background:var(--mist);color:var(--ink-soft);font-family:var(--head);font-weight:700;font-size:15px;border:0;border-bottom:1px solid var(--line);padding:16px 18px;width:180px;vertical-align:top}
:is(.event-detail-page,.kouza-detail-page) table.table.entry>tbody>tr>td,:is(.event-detail-page,.kouza-detail-page) table.table.entry>tr>td{border:0;border-bottom:1px solid var(--line);padding:16px 18px;font-size:16px}
:is(.event-detail-page,.kouza-detail-page) table.table.entry tr:last-child>*{border-bottom:0}
:is(.event-detail-page,.kouza-detail-page) .kouza-date{list-style:none;margin:0 0 8px;padding:0}
:is(.event-detail-page,.kouza-detail-page) .kouza-date li{font-family:var(--head);font-weight:700;font-size:18px;color:var(--blue-deep);font-variant-numeric:tabular-nums}
:is(.event-detail-page,.kouza-detail-page) table.product{border-radius:14px;overflow:hidden;border-collapse:separate;border-spacing:0;border:1px solid var(--line);margin:4px 0 8px}
:is(.event-detail-page,.kouza-detail-page) table.product th{background:var(--mist);border:0;color:var(--ink-soft);font-size:13px}
:is(.event-detail-page,.kouza-detail-page) table.product td{border:0;border-top:1px solid var(--line)}
:is(.event-detail-page,.kouza-detail-page) table.product td.amount{font-family:var(--head);font-weight:700;color:var(--blue-deep);font-size:18px}
:is(.event-detail-page,.kouza-detail-page) .form-control{border-radius:12px;border-color:var(--line);box-shadow:none;min-height:44px}
:is(.event-detail-page,.kouza-detail-page) .form-control:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(74,143,227,.18)}
:is(.event-detail-page,.kouza-detail-page) .login-required p{text-align:center;color:var(--ink-soft);font-size:14px;margin:8px 0 12px}
:is(.event-detail-page,.kouza-detail-page) #entryAnchor{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:8px 0 40px}
:is(.event-detail-page,.kouza-detail-page) .btn.btn-lg{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;border-radius:999px;font-family:var(--head);font-weight:700;font-size:16px;letter-spacing:.04em;border:0;margin:0;white-space:normal}
:is(.event-detail-page,.kouza-detail-page) .btn.btn-lg.btn-success{background:var(--moon-strong);color:#fff;box-shadow:0 6px 18px rgba(74,143,227,.28)}
:is(.event-detail-page,.kouza-detail-page) .btn.btn-lg.btn-success:hover{filter:brightness(1.06)}
:is(.event-detail-page,.kouza-detail-page) .btn.btn-lg.btn-default{background:#fff;color:var(--blue-deep);border:2px solid var(--blue)}
:is(.event-detail-page,.kouza-detail-page) .box-footer{text-align:center}
:is(.event-detail-page,.kouza-detail-page) .required{background:var(--pink);color:var(--ink);border-radius:999px;font-size:11px;padding:1px 8px;margin-left:6px}
:is(.event-detail-page,.kouza-detail-page) #pageNavi a{background:var(--moon-strong)!important;color:#fff!important;border-radius:999px;font-family:var(--head);font-weight:700}
@media (max-width:767px){
  :is(.event-detail-page,.kouza-detail-page) table.table.entry>tbody>tr>th,:is(.event-detail-page,.kouza-detail-page) table.table.entry>tr>th{width:auto}
  :is(.event-detail-page,.kouza-detail-page) .btn.btn-lg{width:100%}
}
/* 位置合わせ・残席表示の調整 */
.content-wrapper:has(form[name="eventListForm"]) .card-row{max-width:1120px;margin-left:auto;margin-right:auto}
.content-wrapper:has(form[name="eventListForm"]) .badge{right:auto;width:auto;max-width:calc(100% - 28px)}
:is(.event-detail-page,.kouza-detail-page)>.sns-detail,:is(.event-detail-page,.kouza-detail-page)>.content{max-width:1120px;margin-left:auto;margin-right:auto}
.kouza-detail-page:has(.detail .mh-top)>.sns-detail{max-width:none}
.mh-top .mh-seat{display:inline-block;margin:0 0 12px;background:var(--sun);color:var(--ink);font-family:var(--head);font-weight:700;font-size:13px;border-radius:999px;padding:3px 12px}
.mh-top .sns-detail.mh-sns{margin:24px 0 0}
.mh-top .mh-plan.mh-plan-main .mh-tag{background:var(--moon-strong);color:#fff}
.mh-top .mh-message p{text-align:center}

/* イベント詳細（ライブなど）の部品（2026-09-30） */
.mh-top .mh-lv-wrap{padding-top:24px}
.mh-top .mh-lv{position:relative;overflow:hidden;display:grid;gap:20px;border-radius:26px;padding:26px 22px 24px;color:#fff;background:var(--moon-strong)}
.mh-top .mh-lv::after{content:"";position:absolute;right:-70px;bottom:-80px;width:220px;height:220px;border-radius:50%;background:var(--sun);opacity:.9;z-index:0}
.mh-top .mh-lv>*{position:relative;z-index:1}
.mh-top .mh-lv .mh-tag{display:inline-block;letter-spacing:.12em}
.mh-top .mh-lv-date{margin:14px 0 4px;display:flex;align-items:baseline;gap:8px;font-family:var(--head);font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.mh-top .mh-lv-date .y{font-size:14px;opacity:.85}
.mh-top .mh-lv-date .md{font-size:44px;letter-spacing:.02em}
.mh-top .mh-lv-date .w{font-size:14px;letter-spacing:.1em}
.mh-top .mh-lv .mh-h1{color:#fff;margin:10px 0 8px}
.mh-top .mh-lv-place{margin:0;font-size:14px;font-weight:700;opacity:.95}
.mh-top .mh-lv-img img{display:block;width:100%;max-width:420px;height:auto;margin:0 auto;border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.mh-top .mh-btn-sun{background:var(--sun);color:var(--ink)!important;border:0;box-shadow:0 6px 18px rgba(0,0,0,.15)}
.mh-top .mh-story{margin:32px 0 0;padding:18px 18px 18px 20px;border-left:4px solid var(--yellow);background:var(--mist);border-radius:0 16px 16px 0;font-size:15px}
.mh-top .mh-h2-sub{font-size:14px;font-weight:700;color:var(--ink-soft);background:var(--mist);border-radius:999px;padding:2px 12px;margin-left:4px}
.mh-top .mh-tk{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mh-top .mh-tk li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;margin:0;list-style:none}
.mh-top .mh-tk li.mh-tk-main{border:2px solid var(--blue)}
.mh-top .mh-tk b{font-family:var(--head);font-size:17px;display:block}
.mh-top .mh-yen{flex:none;font-family:var(--head);font-weight:700;font-size:24px;color:var(--blue-deep);font-variant-numeric:tabular-nums}
.mh-top .mh-yen small{font-size:13px;margin-left:2px}
.mh-top .mh-message-left,.mh-top .mh-message-left p{text-align:left}
.mh-top .mh-message-left{margin-top:0}
.mh-top .mh-message-left p+p{margin-top:12px}
.mh-top .mh-notes{margin-top:40px;background:var(--mist);border-radius:18px;padding:20px}
.mh-top .mh-byline{margin:28px 0 0;text-align:center;font-size:13px;color:var(--ink-soft)}
@media (min-width:720px){
  .mh-top .mh-lv{grid-template-columns:1.2fr 1fr;align-items:center;padding:40px}
  .mh-top .mh-tk{grid-template-columns:1fr 1fr}
}
@media (min-width:1024px){
  .mh-top .mh-lv{padding:56px 56px;gap:40px}
  .mh-top .mh-lv-date .md{font-size:64px}
  .mh-top .mh-lv-date .y,.mh-top .mh-lv-date .w{font-size:18px}
  .mh-top .mh-lv .mh-h1{font-size:44px}
  .mh-top .mh-lv-place{font-size:17px}
  .mh-top .mh-lv::after{width:320px;height:320px;right:-90px;bottom:-120px}
  .mh-top .mh-story{font-size:18px;padding:24px 28px}
  .mh-top .mh-tk li{padding:22px 24px}
  .mh-top .mh-tk b{font-size:20px}
  .mh-top .mh-yen{font-size:30px}
  .mh-top .mh-notes{padding:28px 32px}
}

/* SNS連携・クリップボードのボタンを表示しない（2026-09-30 ご依頼により） */
.sns-list,.sns-detail{display:none!important}

/* 体験申し込みページの部品（2026-09-30） */
.mh-top .mh-trial{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:24px;background:#fff;border:2px solid var(--blue);border-radius:20px;padding:16px 20px;max-width:560px}
.mh-top .mh-trial-price b{display:block;font-family:var(--head);font-weight:700;font-size:34px;line-height:1.1;color:var(--blue-deep);font-variant-numeric:tabular-nums}
.mh-top .mh-trial-price b small{font-size:13px;color:var(--ink-soft);margin-left:4px}
.mh-top .mh-trial-d{font-size:15px;font-weight:700;line-height:1.6}
@media (min-width:1024px){
  .mh-top .mh-flow.mh-flow-4{grid-template-columns:repeat(4,1fr)}
  .mh-top .mh-trial{padding:20px 28px}
  .mh-top .mh-trial-price b{font-size:44px}
  .mh-top .mh-trial-d{font-size:17px}
}
@media (min-width:720px){.mh-top .mh-plans.mh-plans-2{grid-template-columns:repeat(2,1fr);max-width:820px}}

/* 見出し帯のロゴ（2026-09-30）
   TOP：ロゴマークだけを表示（背景の円は出さない）
   その他のページ：円の飾りをカラーロゴマーク画像に置き換える（色はそのまま） */
.mh-top .mh-hero .mh-blob{display:none}
.mh-top .mh-pghd .mh-blob,.mh-top .mh-pghd .mh-blob.mh-blob-sun{background:url(/sukumane/resource/img/mh-logo-mark.png) center/contain no-repeat!important;opacity:1;border-radius:0;width:84px;height:84px;right:12px;top:20px}
.mh-top .mh-pghd .mh-blob::after,.mh-top .mh-pghd .mh-blob.mh-blob-sun::after{display:none!important}
@media (min-width:720px){.mh-top .mh-pghd .mh-blob,.mh-top .mh-pghd .mh-blob.mh-blob-sun{width:140px;height:140px;right:32px;top:32px}}
@media (min-width:1024px){.mh-top .mh-pghd .mh-blob,.mh-top .mh-pghd .mh-blob.mh-blob-sun{width:200px;height:200px;right:60px;top:50%;transform:translateY(-50%)}}

/* 管理画面で保存すると <b> が <strong> に変わるため、同じ見た目を <strong> にも当てる（2026-09-30） */
.mh-top .mh-svc strong{font-family:var(--head);font-size:16px;display:block;line-height:1.4}
.mh-top .mh-plan strong{font-family:var(--head);font-size:20px}
.mh-top .mh-fc strong{font-family:var(--head);font-size:26px;line-height:1.35;letter-spacing:.06em}
.mh-top .mh-ev strong{display:block;font-family:var(--head);font-size:15px;line-height:1.5}
.mh-top .mh-tk strong{font-family:var(--head);font-size:17px;display:block}
.mh-top .mh-flow strong{display:block;font-family:var(--head)}
@media (min-width:1024px){
  .mh-top .mh-svc strong{font-size:19px}
  .mh-top .mh-plan strong{font-size:24px}
  .mh-top .mh-fc strong{font-size:38px}
  .mh-top .mh-ev strong{font-size:19px}
  .mh-top .mh-tk strong{font-size:20px}
  .mh-top .mh-flow strong{font-size:20px;margin-bottom:6px}
}

/* 講座ページ（2026-09-30） */
.mh-top .mh-courses{display:grid;gap:20px}
.mh-top .mh-course{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden}
.mh-top .mh-course-img img{display:block;width:100%;aspect-ratio:7/4;height:auto;object-fit:cover}
.mh-top .mh-course-body{display:flex;flex-direction:column;gap:8px;padding:22px 20px 24px;flex:1}
.mh-top .mh-course-body .mh-h3{margin:4px 0 0}
.mh-top .mh-course-body p{margin:0}
.mh-top .mh-course .mh-tag{background:var(--moon-strong);color:#fff}
.mh-top .mh-course .mh-tag.mh-tag-sun{background:var(--sun);color:var(--ink)}
.mh-top .mh-course-cta{margin-top:auto;padding-top:12px}
.mh-top .mh-course-cta .mh-btn{max-width:none}
.mh-top .mh-box-row{display:grid;gap:12px;align-items:center}
.mh-top .mh-box-row .mh-cta{margin-top:0}
@media (min-width:720px){
  .mh-top .mh-courses{grid-template-columns:1fr 1fr}
  .mh-top .mh-box-row{grid-template-columns:1fr auto}
}
@media (min-width:1024px){
  .mh-top .mh-courses{gap:28px}
  .mh-top .mh-course-body{padding:30px 32px 32px}
  .mh-top .mh-course-body .mh-h3{font-size:24px}
}

/* スクマネ標準の講座一覧から「受講スケジュール」(kouzaTypeId=14) を出さない */
form[name="kouzaListForm"] .portfolio-item[data-id="14"]{display:none!important}

/* ご招待の案内（お金の学び・2026-09-30） */
.mh-top .mh-invite{display:flex;align-items:center;gap:16px;margin-top:18px;padding:18px 18px;border-radius:20px;background:linear-gradient(100deg,#fdeee6,#fff6d6);border:2px solid var(--yellow)}
.mh-top .mh-invite-num{flex:none;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--moon-strong);color:#fff;font-family:var(--head);font-weight:700;font-size:22px;letter-spacing:0;box-shadow:0 6px 16px rgba(47,111,192,.25)}
.mh-top .mh-invite-txt p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.7}
.mh-top .mh-invite-txt p.mh-invite-h{margin:0 0 4px;font-family:var(--head);font-weight:700;font-size:17px;color:var(--ink);line-height:1.5}
.mh-top .mh-invite-h em{font-style:normal;color:var(--blue-deep);background:linear-gradient(transparent 60%,rgba(252,217,119,.9) 60%)}
@media (min-width:1024px){
  .mh-top .mh-invite{padding:22px 24px;gap:20px}
  .mh-top .mh-invite-num{width:72px;height:72px;font-size:26px}
  .mh-top .mh-invite-txt p{font-size:15px}
  .mh-top .mh-invite-txt p.mh-invite-h{font-size:20px}
}
/* サイト既定の両端揃えで字間が広がるのを防ぐ（デザインページ内のみ） */
.mh-top p,.mh-top li,.mh-top dd{text-align:left;text-justify:auto}

/* ご招待の案内：独立した帯（お金の学び・2026-09-30） */
.mh-top .mh-invite.mh-invite-wide{margin:24px 0 0;padding:22px 20px;border-radius:24px;position:relative;overflow:hidden}
.mh-top .mh-invite-wide::after{content:"";position:absolute;right:-50px;bottom:-60px;width:160px;height:160px;border-radius:50%;background:var(--moon);opacity:.18}
.mh-top .mh-invite-wide>*{position:relative;z-index:1}
.mh-top .mh-invite-tag{display:inline-block;margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--blue-deep);background:#fff;border-radius:999px;padding:2px 10px}
@media (min-width:720px){
  .mh-top .mh-invite.mh-invite-wide{padding:28px 36px;gap:24px}
  .mh-top .mh-invite-wide .mh-invite-num{width:84px;height:84px;font-size:30px}
  .mh-top .mh-invite-wide .mh-invite-txt p.mh-invite-h{font-size:22px}
  .mh-top .mh-invite-wide .mh-invite-txt p{font-size:16px}
}
@media (min-width:1024px){
  .mh-top .mh-invite.mh-invite-wide{margin-top:28px;padding:36px 48px;gap:32px}
  .mh-top .mh-invite-wide .mh-invite-num{width:96px;height:96px;font-size:34px}
  .mh-top .mh-invite-wide .mh-invite-txt p.mh-invite-h{font-size:26px}
  .mh-top .mh-invite-wide .mh-invite-txt p{font-size:17px}
  .mh-top .mh-invite-wide::after{width:240px;height:240px;right:-60px;bottom:-110px}
}

/* ご招待の案内：講座の枠内に収める小さい版（お金の学び・2026-09-30） */
.mh-top .mh-boxes>.mh-box:has(.mh-invite-mini){display:flex;flex-direction:column}
.mh-top .mh-invite.mh-invite-mini{margin-top:auto;padding:14px 16px;gap:12px;border-width:1.5px;border-radius:16px;align-items:flex-start}
.mh-top .mh-box:has(.mh-invite-mini) .mh-facts{margin-bottom:16px}
.mh-top .mh-invite-mini .mh-invite-num{width:38px;height:38px;font-size:15px;box-shadow:none}
.mh-top .mh-invite-mini .mh-invite-txt p{font-size:13px}
.mh-top .mh-invite-mini .mh-invite-txt p.mh-invite-h{font-size:15px;margin-bottom:2px}
.mh-top .mh-invite-mini .mh-invite-txt p.mh-invite-only{margin-top:4px;font-size:12px;font-weight:700;color:var(--blue-deep)}
@media (min-width:1024px){
  .mh-top .mh-invite.mh-invite-mini{padding:16px 20px;gap:14px}
  .mh-top .mh-invite-mini .mh-invite-num{width:44px;height:44px;font-size:17px}
  .mh-top .mh-invite-mini .mh-invite-txt p{font-size:14px}
  .mh-top .mh-invite-mini .mh-invite-txt p.mh-invite-h{font-size:17px}
  .mh-top .mh-invite-mini .mh-invite-txt p.mh-invite-only{font-size:13px}
}
/* ご招待の案内がある並びでは、枠を中身の高さで止める（隣の枠に余白を作らない） */
.mh-top .mh-boxes:has(.mh-invite-mini){align-items:start}

/* 写真・キャラクターの部品（飲食店運営・2026-09-30） */
.mh-top .mh-photo-wide{margin:32px 0 0}
.mh-top .mh-photo-wide img{display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;object-position:center 45%;border-radius:24px}
.mh-top .mh-fox img{display:block;width:100%;max-width:240px;height:auto;margin:0 auto;mix-blend-mode:multiply}
.mh-top .mh-intro.mh-intro-fox{align-items:center}
.mh-top .mh-box.mh-box-photo{padding:0;overflow:hidden;display:flex;flex-direction:column}
.mh-top .mh-box-photo>img{display:block;width:100%;height:auto;aspect-ratio:16/8;object-fit:cover}
.mh-top .mh-box-photo .mh-box-body{padding:22px 20px}
.mh-top .mh-cta-fox{display:flex;align-items:center;gap:20px;margin-top:48px;padding:24px;border-radius:24px;background:var(--mist)}
.mh-top .mh-cta-fox .mh-fox{flex:none;width:96px}
.mh-top .mh-cta-fox-body{flex:1}
.mh-top .mh-cta-fox-body p.mh-cta-fox-h{margin:0;font-family:var(--head);font-weight:700;font-size:17px;line-height:1.6}
.mh-top .mh-cta-fox .mh-cta{margin-top:14px}
@media (max-width:719px){
  .mh-top .mh-intro-fox .mh-fox img{max-width:160px}
  .mh-top .mh-cta-fox{flex-direction:column;text-align:center}
  .mh-top .mh-cta-fox-body p.mh-cta-fox-h{text-align:center}
  .mh-top .mh-cta-fox .mh-cta{align-items:center}
}
@media (min-width:720px){
  .mh-top .mh-intro.mh-intro-fox{grid-template-columns:1.6fr 1fr}
}
@media (min-width:1024px){
  .mh-top .mh-photo-wide{margin-top:48px}
  .mh-top .mh-photo-wide img{border-radius:28px}
  .mh-top .mh-intro-fox .mh-intro-txt p{font-size:18px}
  .mh-top .mh-fox img{max-width:260px}
  .mh-top .mh-box-photo .mh-box-body{padding:30px 32px}
  .mh-top .mh-cta-fox{padding:32px 48px;gap:36px}
  .mh-top .mh-cta-fox .mh-fox{width:140px}
  .mh-top .mh-cta-fox-body p.mh-cta-fox-h{font-size:22px}
}
/* 縦に並べる枠（写真付きの枠は PC で写真左・文章右） */
.mh-top .mh-boxes.mh-boxes-stack{grid-template-columns:1fr!important}
.mh-top .mh-intro-fox .mh-fox img{max-width:200px}
@media (min-width:720px){
  .mh-top .mh-boxes-stack .mh-box.mh-box-photo{display:grid;grid-template-columns:2fr 3fr;align-items:stretch}
  .mh-top .mh-boxes-stack .mh-box-photo>img{height:100%;aspect-ratio:auto;min-height:220px}
  .mh-top .mh-boxes-stack .mh-box-photo .mh-box-body{align-self:center}
}
@media (min-width:1024px){.mh-top .mh-intro-fox .mh-fox img{max-width:220px}}
/* キャラクター画像の大きさ（編集機能が付ける max-width:100% を上書き） */
.mh-top .mh-intro-fox .mh-fox img{width:150px!important;max-width:100%!important}
.mh-top .mh-cta-fox .mh-fox img{width:100%!important;max-width:100%!important}
@media (min-width:720px){.mh-top .mh-intro-fox .mh-fox img{width:190px!important}}
@media (min-width:1024px){.mh-top .mh-intro-fox .mh-fox img{width:220px!important}}

/*-----------------------
   講師紹介ページ（teacher/detail）2026-09-30
-----------------------*/
.content-wrapper[class*="teacher-detail"]{
  --ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  font-family:var(--body);color:var(--ink)}
.content-wrapper[class*="teacher-detail"]>.content{max-width:1120px;margin:0 auto 64px}
.content-wrapper[class*="teacher-detail"] .row{display:grid;grid-template-columns:1fr;gap:28px;margin:0}
.content-wrapper[class*="teacher-detail"] .row::before,.content-wrapper[class*="teacher-detail"] .row::after{display:none}
.content-wrapper[class*="teacher-detail"] .row>[class*="col-md-"]{width:auto;float:none;padding:0}

/* 左：写真と名前のカード */
.content-wrapper[class*="teacher-detail"] .col-md-4{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px 20px 24px;align-self:start;text-align:center}
.content-wrapper[class*="teacher-detail"] .col-md-4 .card-img-top{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:18px}
.content-wrapper[class*="teacher-detail"] .col-md-4 h4{margin:16px 0 0;font-family:var(--head);font-weight:700;font-size:24px;letter-spacing:.08em;color:var(--ink)}
.content-wrapper[class*="teacher-detail"] .col-md-4 h4::after{content:"みんなの秘書";display:block;margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--blue-deep)}
.content-wrapper[class*="teacher-detail"] .col-md-4 p{margin:8px 0 0!important}
.content-wrapper[class*="teacher-detail"] .col-md-4 p:empty{display:none}
.content-wrapper[class*="teacher-detail"] .col-md-4 a[target="_blank"] img{width:36px!important;height:36px;margin:4px 4px 0;border-radius:50%}
.content-wrapper[class*="teacher-detail"] .col-md-4 .btn{display:inline-flex;align-items:center;justify-content:center;width:100%!important;max-width:260px;min-height:48px;margin-top:6px;border:0;border-radius:999px;background:var(--moon-strong);color:#fff!important;font-family:var(--head);font-weight:700;font-size:15px;text-decoration:none!important;box-shadow:0 6px 18px rgba(74,143,227,.25)}

/* 右：プロフィール本文 */
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view{background:#fff;font-size:16px;line-height:1.95;letter-spacing:.03em}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>p{margin:0!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p{margin:0;text-align:left}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p:empty{display:none}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h1{margin:0 0 4px;font-family:var(--head);font-size:13px;font-weight:700;letter-spacing:.2em;color:var(--blue-deep);border:0;padding:0;background:none}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h1 strong{font-weight:700}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h2{display:flex;align-items:center;gap:12px;margin:8px 0 4px;padding:0;border:0;background:none;font-family:var(--head);font-weight:700;font-size:26px;line-height:1.5;color:var(--ink)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h2::before{content:"";flex:none;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 72% 30%,var(--yellow) 0 30%,transparent 31%),var(--moon)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h2::after{display:none}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p.p3{margin-top:4px}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p.p3 strong{display:inline-block;font-family:var(--head);font-size:14px;letter-spacing:.06em;color:var(--blue-deep);background:var(--mist);border-radius:999px;padding:2px 14px}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view span[style*="rgb(255, 0, 0)"]{color:var(--ink)!important;font-family:var(--head);font-size:18px!important;background:linear-gradient(transparent 62%,rgba(252,217,119,.85) 62%)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view hr{border:0;height:1px;background:var(--line);margin:28px 0}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p[style*="margin-left"]{position:relative;padding-left:20px;margin-left:4px!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p[style*="margin-left"]::before{content:"";position:absolute;left:2px;top:.8em;width:8px;height:8px;border-radius:50%;background:var(--moon)}
@media (min-width:992px){
  .content-wrapper[class*="teacher-detail"] .row{grid-template-columns:320px 1fr;gap:48px}
  .content-wrapper[class*="teacher-detail"] .col-md-4{position:sticky;top:24px;padding:24px 24px 28px}
  .content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view{font-size:17px}
  .content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h2{font-size:30px}
}
/* 講師紹介：顔写真を小さく丸く（2026-09-30） */
.content-wrapper[class*="teacher-detail"] .col-md-4 .card-img-top{width:160px!important;max-width:100%;aspect-ratio:1/1;margin:0 auto;border-radius:50%;border:4px solid #fff;box-shadow:0 6px 20px rgba(47,111,192,.18)}
@media (min-width:992px){
  .content-wrapper[class*="teacher-detail"] .row{grid-template-columns:260px 1fr}
  .content-wrapper[class*="teacher-detail"] .col-md-4 .card-img-top{width:180px!important}
}

/* 講師プロフィール（デザイン版）の部品（2026-09-30） */
.mh-top .mh-prof-head{display:flex;align-items:center;gap:20px}
.mh-top .mh-prof-photo{flex:none;width:112px!important;height:112px;max-width:none!important;object-fit:cover;border-radius:50%;border:4px solid #fff;box-shadow:0 6px 20px rgba(47,111,192,.18);position:relative;z-index:2}
.mh-top .mh-prof-head .mh-h1{margin-bottom:4px}
.mh-top .mh-prof-role{margin:0;font-family:var(--head);font-weight:700;font-size:14px;color:var(--blue-deep)}
.mh-top .mh-prof-sns{display:flex;gap:8px;margin:12px 0 0}
.mh-top .mh-prof-sns a{font-size:13px;font-weight:700;padding:4px 14px;border-radius:999px;background:#fff;border:1.5px solid var(--line);color:var(--ink-soft)!important}
.mh-top .mh-catch{margin-top:36px;padding:24px 22px;border-radius:24px;background:linear-gradient(100deg,#fdeee6,#fff6d6);border:2px solid var(--yellow);text-align:center}
.mh-top .mh-catch p{margin:0;text-align:center}
.mh-top .mh-catch p.mh-catch-q{font-family:var(--head);font-weight:700;font-size:20px;line-height:1.6;margin-bottom:8px}
.mh-top .mh-timeline{list-style:none;margin:0;padding:0;display:grid;gap:0}
.mh-top .mh-timeline li{position:relative;list-style:none;margin:0;padding:0 0 26px 30px;border-left:2px solid var(--line);margin-left:8px}
.mh-top .mh-timeline li:last-child{border-left-color:transparent;padding-bottom:0}
.mh-top .mh-timeline li::before{content:"";position:absolute;left:-9px;top:4px;width:16px;height:16px;border-radius:50%;background:var(--moon);border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}
.mh-top .mh-tl-k{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue-deep);background:var(--mist);border-radius:999px;padding:1px 10px;margin-bottom:4px}
.mh-top .mh-timeline strong{display:block;font-family:var(--head);font-size:18px;line-height:1.5}
.mh-top .mh-timeline p{margin:6px 0 0;color:var(--ink-soft);font-size:15px}
.mh-top .mh-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.mh-top .mh-chips li{list-style:none;margin:0;font-family:var(--head);font-weight:700;font-size:14px;padding:8px 16px;border-radius:999px;background:#fff;border:1.5px solid var(--line)}
.mh-top .mh-chips li:nth-child(odd){border-color:var(--teal)}
.mh-top .mh-chips li:nth-child(even){border-color:var(--peach)}
.mh-top .mh-cv dt{min-width:5em}
@media (min-width:1024px){
  .mh-top .mh-prof-head{gap:36px}
  .mh-top .mh-prof-photo{width:160px!important;height:160px}
  .mh-top .mh-prof-role{font-size:16px}
  .mh-top .mh-catch{padding:36px 40px;margin-top:48px}
  .mh-top .mh-catch p.mh-catch-q{font-size:28px}
  .mh-top .mh-catch p{font-size:17px}
  .mh-top .mh-timeline li{padding:0 0 32px 40px}
  .mh-top .mh-timeline strong{font-size:21px}
  .mh-top .mh-timeline p{font-size:16px}
  .mh-top .mh-chips li{font-size:15px;padding:10px 20px}
}

/* 講師ページのプロフィール欄にデザイン版（.mh-top）が入っている場合は全幅表示 */
.content-wrapper[class*="teacher-detail"]:has(.col-md-8 .mh-top) .col-md-4{display:none}
.content-wrapper[class*="teacher-detail"]:has(.col-md-8 .mh-top) .row{grid-template-columns:1fr!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top p{margin:0}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top .mh-h2{margin:48px 0 16px}
@media (min-width:1024px){.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top .mh-h2{margin:80px 0 28px}}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top .mh-h2::before{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 72% 30%,var(--yellow) 0 30%,transparent 31%),var(--moon)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top .mh-h1{font-size:clamp(26px,7vw,48px);letter-spacing:.04em;color:var(--ink);margin:0 0 4px}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top .mh-catch p{margin:0 0 8px}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view .mh-top .mh-timeline p{margin:6px 0 0}
@media (max-width:719px){.mh-top .mh-prof-head .mh-blob{display:none}}
/* 講師プロフィール：貼り付けた本文の読みやすさ（2026-09-30 修正） */
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view p{height:auto;overflow:visible}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>p:empty,.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>p:first-child:empty{display:none}
/* 講師プロフィール：貼り付け版（class なし・インライン装飾）の見出しをデザインにそろえる */
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>div{padding:0!important;background:none!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h3{display:flex!important;align-items:center;gap:12px;margin:40px 0 14px!important;padding:0!important;border:0!important;font-family:var(--head)!important;font-weight:700;font-size:24px!important;line-height:1.5;color:var(--ink)!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h3::before{content:"";flex:none;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 72% 30%,var(--yellow) 0 30%,transparent 31%),var(--moon)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>div>h3:first-child{margin-top:0!important;font-size:30px!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h4{margin:0 0 4px!important;font-family:var(--head)!important;font-weight:700;font-size:18px!important;color:var(--blue-deep)!important}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>div>div{border-radius:18px}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view hr{margin:36px 0!important;border:0!important;height:1px;background:var(--line)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view ul{padding-left:0!important;list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view ul li{list-style:none;font-family:var(--head);font-weight:700;font-size:14px;padding:6px 16px;border-radius:999px;background:#fff;border:1.5px solid var(--line);line-height:1.6}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view ul li:nth-child(odd){border-color:var(--teal)}
.content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view ul li:nth-child(even){border-color:var(--peach)}
@media (max-width:767px){
  .content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view h3{font-size:21px!important}
  .content-wrapper[class*="teacher-detail"] .col-md-8 .fr-view>div>h3:first-child{font-size:25px!important}
}
/* 講師紹介：職歴の会社名と所属（mycustom.js が .mh-career を作る） */
.mh-career{display:grid;gap:14px}
.mh-career-item{display:grid;gap:2px}
.mh-career-co{font-family:"Zen Kaku Gothic Antique","Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:1.02em;color:#333;line-height:1.5}
.mh-career-role{position:relative;padding-left:16px;font-size:.92em;color:#2f6fc0;line-height:1.6}
.mh-career-role::before{content:"";position:absolute;left:2px;top:.75em;width:7px;height:7px;border-radius:50%;background:linear-gradient(100deg,#8fd0d2,#4a8fe3)}
.mh-career-item+.mh-career-item{padding-top:14px;border-top:1px dashed #e4ecf0}

/*-----------------------
   お問い合わせフォーム（form/detail）と、各ページのお問い合わせボタン（2026-10-01）
   フォームの装飾は、本文にデザイン版（.mh-top）が入っているときだけ効く
-----------------------*/
.form-detail-page:has(.detail .mh-top){
  --ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  font-family:var(--body);color:var(--ink)}
.form-detail-page:has(.detail .mh-top)>.content{max-width:1120px;margin-left:auto;margin-right:auto}
.form-detail-page:has(.detail .mh-top) .row>.col-lg-12>h3{position:relative;margin:8px 0 16px;padding-left:34px;font-family:var(--head);font-weight:700;font-size:22px;color:var(--ink)}
.form-detail-page:has(.detail .mh-top) .row>.col-lg-12>h3::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 72% 30%,var(--yellow) 0 30%,transparent 31%),var(--moon)}
.form-detail-page:has(.detail .mh-top) table.table.entry{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;margin:0 0 24px}
.form-detail-page:has(.detail .mh-top) table.table.entry>tbody>tr>th,.form-detail-page:has(.detail .mh-top) table.table.entry>tr>th{background:var(--mist);color:var(--ink-soft);font-family:var(--head);font-weight:700;font-size:15px;border:0;border-bottom:1px solid var(--line);padding:16px 18px;width:200px;vertical-align:top}
.form-detail-page:has(.detail .mh-top) table.table.entry>tbody>tr>td,.form-detail-page:has(.detail .mh-top) table.table.entry>tr>td{border:0;border-bottom:1px solid var(--line);padding:16px 18px;font-size:16px}
.form-detail-page:has(.detail .mh-top) table.table.entry tr:last-child>*{border-bottom:0}
.form-detail-page:has(.detail .mh-top) table.product{border-radius:14px;overflow:hidden;border-collapse:separate;border-spacing:0;border:1px solid var(--line);margin:0}
.form-detail-page:has(.detail .mh-top) table.product th{background:var(--mist);border:0;color:var(--ink-soft);font-size:13px}
.form-detail-page:has(.detail .mh-top) table.product td{border:0;border-top:1px solid var(--line);font-size:16px;vertical-align:middle}
.form-detail-page:has(.detail .mh-top) table.product tr:hover td{background:#f8fbfd}
.form-detail-page:has(.detail .mh-top) .form-control{border-radius:12px;border-color:var(--line);box-shadow:none;min-height:44px;font-size:16px}
.form-detail-page:has(.detail .mh-top) .form-control:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(74,143,227,.18)}
.form-detail-page:has(.detail .mh-top) .required{background:var(--pink);color:var(--ink);border-radius:999px;font-size:11px;padding:1px 8px;margin-left:6px}
.form-detail-page:has(.detail .mh-top) .login-required p{text-align:center;color:var(--ink-soft);font-size:14px;margin:8px 0 12px}
.form-detail-page:has(.detail .mh-top) #entryAnchor{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:8px 0 40px}
.form-detail-page:has(.detail .mh-top) .btn.btn-lg{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;border-radius:999px;font-family:var(--head);font-weight:700;font-size:16px;letter-spacing:.04em;border:0;margin:0;white-space:normal}
.form-detail-page:has(.detail .mh-top) .btn.btn-lg.btn-success{background:var(--moon-strong);color:#fff;box-shadow:0 6px 18px rgba(74,143,227,.28)}
.form-detail-page:has(.detail .mh-top) .btn.btn-lg.btn-default{background:#fff;color:var(--blue-deep);border:2px solid var(--blue)}
.form-detail-page:has(.detail .mh-top) .box-footer{text-align:center}
.form-detail-page:has(.detail .mh-top) #pageNavi a{background:var(--moon-strong)!important;color:#fff!important;border-radius:999px;font-family:var(--head);font-weight:700}
.mh-top .mh-form-guide{margin:40px 0 0;padding:16px 20px;border-radius:16px;background:var(--mist);font-family:var(--head);font-weight:700;color:var(--blue-deep);text-align:center!important}
.mh-top .mh-form-guide::after{content:" ↓"}
@media (max-width:767px){
  .form-detail-page:has(.detail .mh-top) table.table.entry>tbody>tr>th{width:auto}
  .form-detail-page:has(.detail .mh-top) .btn.btn-lg{width:100%}
}

/* 各ページのお問い合わせボタン */
.mh-top .mh-contact{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:48px;padding:28px 22px;border-radius:24px;background:linear-gradient(100deg,#e8f5f5,#e6effb);text-align:center;position:relative;overflow:hidden}
.mh-top .mh-contact::after{content:"";position:absolute;right:-40px;bottom:-50px;width:140px;height:140px;border-radius:50%;background:var(--sun);opacity:.55}
.mh-top .mh-contact>*{position:relative;z-index:1}
.mh-top .mh-contact p{margin:0;text-align:center}
.mh-top .mh-contact p.mh-contact-h{font-family:var(--head);font-weight:700;font-size:19px;line-height:1.6;color:var(--ink)}
.mh-top .mh-contact p.mh-contact-s{font-size:14px;color:var(--ink-soft)}
.mh-top .mh-contact .mh-btn{max-width:320px}
@media (min-width:1024px){
  .mh-top .mh-contact{margin-top:64px;padding:40px 48px}
  .mh-top .mh-contact p.mh-contact-h{font-size:24px}
  .mh-top .mh-contact p.mh-contact-s{font-size:16px}
  .mh-top .mh-contact::after{width:220px;height:220px;right:-60px;bottom:-90px}
}
/* 開催予定が4件のときは PC で 2列×2段（2026-10-01） */
@media (min-width:1024px){.mh-top .mh-evs.mh-evs-4{grid-template-columns:repeat(2,1fr)}}

/*-----------------------
   カレンダー（/calendar）2026-10-01
-----------------------*/
.content-wrapper:has(#calendarForm){
  --ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  font-family:var(--body);color:var(--ink)}
.content-wrapper:has(#calendarForm)>.content{max-width:1120px;margin:0 auto 64px}
/* 表示条件 */
.content-wrapper:has(#calendarForm) .panel{border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:none;margin-bottom:24px;background:#fff}
.content-wrapper:has(#calendarForm) .panel-heading{background:var(--mist)!important;border:0;padding:12px 20px}
.content-wrapper:has(#calendarForm) .panel-title{font-family:var(--head);font-weight:700;font-size:15px;color:var(--ink)}
.content-wrapper:has(#calendarForm) .panel-title .close{opacity:1;font-size:13px;font-weight:700;color:var(--blue-deep);text-shadow:none}
.content-wrapper:has(#calendarForm) .panel-body{padding:18px 20px}
.content-wrapper:has(#calendarForm) .panel-body hr{border-color:var(--line)}
.content-wrapper:has(#calendarForm) .control-label{font-family:var(--head);font-weight:700;font-size:14px;color:var(--ink-soft);padding-top:8px}
.content-wrapper:has(#calendarForm) .form-control,.content-wrapper:has(#calendarForm) .select2-container .select2-selection{border-radius:12px!important;border-color:var(--line)!important;min-height:40px}
.content-wrapper:has(#calendarForm) .btn-group[data-toggle="buttons"]{display:flex;flex-wrap:wrap;gap:6px}
.content-wrapper:has(#calendarForm) .btn-group[data-toggle="buttons"] .btn{float:none;margin:0!important;border-radius:999px!important;border:1.5px solid var(--line);background:#fff;color:var(--ink-soft);font-weight:700;font-size:13px;padding:5px 14px}
.content-wrapper:has(#calendarForm) .btn-group[data-toggle="buttons"] .btn.active{background:var(--moon-strong);border-color:transparent;color:#fff;box-shadow:none}
/* 凡例 */
.content-wrapper:has(#calendarForm) #examples{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 8px}
.content-wrapper:has(#calendarForm) #examples>*{border-radius:999px!important;padding:3px 12px!important;font-size:12px;font-weight:700}
/* カレンダー本体 */
.content-wrapper:has(#calendarForm) #calendar{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;margin-top:8px!important}
.content-wrapper:has(#calendarForm) .fc-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.content-wrapper:has(#calendarForm) .fc-toolbar h2{font-family:var(--head);font-weight:700;font-size:26px;color:var(--ink);margin:0}
.content-wrapper:has(#calendarForm) .fc-toolbar .btn-group{display:inline-flex;gap:6px;margin-left:8px}
.content-wrapper:has(#calendarForm) .fc-toolbar .btn{float:none;border-radius:999px!important;border:1.5px solid var(--line);background:#fff;color:var(--ink-soft);font-family:var(--head);font-weight:700;font-size:13px;padding:6px 16px;margin:0!important;box-shadow:none}
.content-wrapper:has(#calendarForm) .fc-toolbar .btn:hover{border-color:var(--teal)}
.content-wrapper:has(#calendarForm) .fc-toolbar .btn.active{background:var(--moon-strong);border-color:transparent;color:#fff}
.content-wrapper:has(#calendarForm) .fc-toolbar .btn[disabled]{opacity:.4}
.content-wrapper:has(#calendarForm) .fc table{border-color:var(--line)}
.content-wrapper:has(#calendarForm) .fc td,.content-wrapper:has(#calendarForm) .fc th{border-color:var(--line)!important}
.content-wrapper:has(#calendarForm) .fc-day-header{background:var(--mist)!important;font-family:var(--head);font-weight:700;font-size:13px;color:var(--ink-soft);padding:8px 0!important}
.content-wrapper:has(#calendarForm) .fc-day-header.fc-sun{color:#c95a7a}
.content-wrapper:has(#calendarForm) .fc-day-header.fc-sat{color:var(--blue-deep)}
.content-wrapper:has(#calendarForm) .fc-day-number{font-family:var(--head);font-weight:700;font-size:13px;color:var(--ink-soft);padding:6px 8px!important}
.content-wrapper:has(#calendarForm) .fc-today{background:#fff8e1!important}
.content-wrapper:has(#calendarForm) .fc-today .fc-day-number{color:var(--blue-deep)}
.content-wrapper:has(#calendarForm) .fc-event{border-radius:10px!important;padding:4px 6px;margin:2px 4px!important;font-size:12px;line-height:1.5;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.content-wrapper:has(#calendarForm) .fc-event .badge{border-radius:999px;font-size:10px;margin:2px 0}
.content-wrapper:has(#calendarForm) .fc-list-heading td{background:var(--mist)!important;font-family:var(--head);font-weight:700}
.content-wrapper:has(#calendarForm) .fc-list-item:hover td{background:#f8fbfd}
.content-wrapper:has(#calendarForm) .fc-list-table{border-radius:16px;overflow:hidden}
@media (max-width:767px){
  .content-wrapper:has(#calendarForm) #calendar{padding:12px;border-radius:18px}
  .content-wrapper:has(#calendarForm) .fc-toolbar{justify-content:center}
  .content-wrapper:has(#calendarForm) .fc-toolbar h2{font-size:22px}
}
.content-wrapper:has(#calendarForm) .panel-body .control-label{white-space:nowrap}
@media (min-width:992px){.content-wrapper:has(#calendarForm) .panel-body .row>[class*="col-md-1"]{width:auto;min-width:60px}}

/*-----------------------
   ショップ（/shop/list）2026-10-01
-----------------------*/
.content-wrapper.shop-page{
  --ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  font-family:var(--body);color:var(--ink)}
.content-wrapper.shop-page>.content{max-width:1120px;margin:0 auto 64px}
.content-wrapper.shop-page .breadcrumb{display:inline-flex;gap:6px;background:var(--mist);border-radius:999px;padding:6px 16px;margin:0 0 20px;font-size:13px;font-weight:700}
.content-wrapper.shop-page .breadcrumb>li{color:var(--ink-soft)}
.content-wrapper.shop-page .breadcrumb>li.active{color:var(--blue-deep)}
.content-wrapper.shop-page .breadcrumb a{color:var(--blue-deep)!important}
.content-wrapper.shop-page .alert{background:var(--mist);border:0;border-radius:20px;color:var(--ink-soft);text-align:center;padding:40px 20px;font-size:15px}
.content-wrapper.shop-page .alert::before{content:"";display:block;width:64px;height:64px;margin:0 auto 12px;background:url(/sukumane/resource/img/mh-logo-mark.png) center/contain no-repeat;opacity:.9}
.content-wrapper.shop-page .card-row{display:grid;grid-template-columns:1fr;gap:16px;margin:0 0 56px}
.content-wrapper.shop-page .card-row:empty{display:none}
.content-wrapper.shop-page .card-row::before,.content-wrapper.shop-page .card-row::after{display:none}
.content-wrapper.shop-page .portfolio-item{width:auto;max-width:none;float:none;padding:0;margin:0}
.content-wrapper.shop-page .card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:none;margin:0;transition:border-color .2s,box-shadow .2s}
.content-wrapper.shop-page .card:hover{border-color:var(--teal);box-shadow:0 10px 28px rgba(47,111,192,.10)}
.content-wrapper.shop-page .card-img-top{display:block;width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:0}
.content-wrapper.shop-page .card-body{padding:18px 20px 20px;flex:1}
.content-wrapper.shop-page .card-title{margin:0 0 6px;font-family:var(--head);font-weight:700;font-size:18px;line-height:1.5}
.content-wrapper.shop-page .card-title a{color:var(--ink)!important;text-decoration:none!important}
.content-wrapper.shop-page .card-body p{margin:0;font-family:var(--head);font-weight:700;font-size:17px;color:var(--blue-deep)}
.content-wrapper.shop-page .btn{border-radius:999px;font-family:var(--head);font-weight:700}
.content-wrapper.shop-page .btn-success,.content-wrapper.shop-page .btn-primary{background:var(--moon-strong);border:0;color:#fff}
@media (min-width:720px){.content-wrapper.shop-page .card-row{grid-template-columns:repeat(2,1fr);gap:20px}}
@media (min-width:1024px){.content-wrapper.shop-page .card-row{grid-template-columns:repeat(3,1fr);gap:24px}}

/*-----------------------
   マイページ（/mypage）2026-10-01　※見出しの帯はロゴなし
-----------------------*/
.content-wrapper:has(#mypageForm){
  --ink:#333;--ink-soft:#626a73;--mist:#f3f8fa;--teal:#8fd0d2;--blue:#4a8fe3;--blue-deep:#2f6fc0;--pink:#ebbfd0;--peach:#f3c9a6;--yellow:#fcd977;--line:#e4ecf0;
  --moon:linear-gradient(100deg,var(--teal),var(--blue));--moon-strong:linear-gradient(100deg,#3b92a3,#2f6fc0);--sun:linear-gradient(100deg,var(--pink),var(--peach) 50%,var(--yellow));
  --head:"Zen Kaku Gothic Antique","Zen Kaku Gothic New","Hiragino Sans",sans-serif;--body:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;
  font-family:var(--body);color:var(--ink)}
.mh-top.mh-noblob .mh-blob{display:none!important}
.content-wrapper:has(#mypageForm)>.content{max-width:1120px;margin:0 auto 64px}
/* 左：プロフィール */
.content-wrapper:has(#mypageForm) .box-profile{padding:24px 16px}
.content-wrapper:has(#mypageForm) .col-md-3>.box{background:#fff;border:1px solid var(--line)!important;border-radius:24px;box-shadow:none;overflow:hidden}
.content-wrapper:has(#mypageForm) .profile-user-img{width:120px!important;height:120px;max-width:none;object-fit:cover;border:4px solid #fff;box-shadow:0 6px 20px rgba(47,111,192,.15);padding:0}
.content-wrapper:has(#mypageForm) .profile-username{font-family:var(--head);font-weight:700;font-size:20px;margin-top:14px}
.content-wrapper:has(#mypageForm) .box-profile .text-muted{color:var(--ink-soft);font-size:13px;margin:2px 0}
.content-wrapper:has(#mypageForm) .box-profile .text-muted:empty{display:none}
/* 右：タブ */
.content-wrapper:has(#mypageForm) .nav-tabs-custom{background:none;box-shadow:none;margin:0}
.content-wrapper:has(#mypageForm) .nav-tabs{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0 0 4px;background:none}
.content-wrapper:has(#mypageForm) .nav-tabs>li{float:none;margin:0;border:0!important}
.content-wrapper:has(#mypageForm) .nav-tabs>li>a{border:1.5px solid var(--line)!important;border-radius:999px!important;background:#fff;color:var(--ink-soft)!important;font-family:var(--head);font-weight:700;font-size:14px;padding:8px 18px;margin:0}
.content-wrapper:has(#mypageForm) .nav-tabs>li>a:hover{border-color:var(--teal)!important;background:#fff}
.content-wrapper:has(#mypageForm) .nav-tabs>li.active>a{background:var(--moon-strong)!important;border-color:transparent!important;color:#fff!important}
.content-wrapper:has(#mypageForm) .nav-tabs-custom>.tab-content{background:none;padding:0}
/* タイムライン */
.content-wrapper:has(#mypageForm) .timeline:before{background:var(--line);width:3px;border-radius:2px}
.content-wrapper:has(#mypageForm) .timeline>.time-label>span{background:var(--moon-strong)!important;border-radius:999px;font-family:var(--head);font-weight:700;padding:4px 14px}
.content-wrapper:has(#mypageForm) .timeline>li>.timeline-item{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:none;overflow:hidden}
.content-wrapper:has(#mypageForm) .timeline>li>.timeline-item>.timeline-header{border-bottom:0;font-size:15px;line-height:1.7;padding:12px 16px;color:var(--ink)}
.content-wrapper:has(#mypageForm) .timeline>li>.timeline-item>.timeline-header>a{color:var(--blue-deep)!important;font-weight:700}
.content-wrapper:has(#mypageForm) .timeline>li>.timeline-item>.time{color:var(--ink-soft);font-size:12px;padding:14px 16px}
.content-wrapper:has(#mypageForm) .timeline>li>.timeline-item>.timeline-body{border-top:1px solid var(--line);background:var(--mist)}
.content-wrapper:has(#mypageForm) .timeline .item .relative img{border-radius:10px}
/* 受講予定／履歴・受講一覧・会員履歴の枠と表 */
.content-wrapper:has(#mypageForm) .tab-pane .box{background:#fff;border:1px solid var(--line)!important;border-top:1px solid var(--line)!important;border-radius:20px;box-shadow:none;overflow:hidden;margin:16px 0 0}
.content-wrapper:has(#mypageForm) .tab-pane .box-header{background:var(--mist);padding:14px 18px;border:0}
.content-wrapper:has(#mypageForm) .tab-pane .box-title{font-family:var(--head);font-weight:700;font-size:16px;color:var(--ink)}
.content-wrapper:has(#mypageForm) .tab-pane .box-tools{position:static;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-weight:700}
.content-wrapper:has(#mypageForm) .tab-pane table.table{margin:0}
.content-wrapper:has(#mypageForm) .tab-pane table.table th{background:#fff;color:var(--ink-soft);font-size:13px;font-weight:700;border-color:var(--line)!important}
.content-wrapper:has(#mypageForm) .tab-pane table.table td{border-color:var(--line)!important;font-size:14px;vertical-align:middle}
.content-wrapper:has(#mypageForm) .tab-pane table.table-hover>tbody>tr:hover{background:#f8fbfd}
.content-wrapper:has(#mypageForm) .badge{border-radius:999px;font-weight:700;padding:4px 10px}
/* ボタン */
.content-wrapper:has(#mypageForm) .btn{border-radius:999px;font-family:var(--head);font-weight:700;border-width:1.5px;padding:5px 14px}
.content-wrapper:has(#mypageForm) .btn-info,.content-wrapper:has(#mypageForm) .btn-primary,.content-wrapper:has(#mypageForm) .btn-success{background:var(--moon-strong);border-color:transparent;color:#fff}
.content-wrapper:has(#mypageForm) .btn-default{background:#fff;border-color:var(--line);color:var(--blue-deep)}
.content-wrapper:has(#mypageForm) .btn-warning{background:var(--sun);border-color:transparent;color:var(--ink)}
.content-wrapper:has(#mypageForm) .btn-danger{background:#fff;border-color:#e3a3b5;color:#b4466a}
@media (min-width:992px){
  .content-wrapper:has(#mypageForm) .col-md-3>.box{position:sticky;top:24px}
}
@media (max-width:991px){
  .content-wrapper:has(#mypageForm) .col-md-3>.box{margin-bottom:20px}
  .content-wrapper:has(#mypageForm) .profile-user-img{width:96px!important;height:96px}
}
/* マイページのタブ：横スクロールさせず画面内で折り返す */
.content-wrapper:has(#mypageForm) .nav-tabs{width:auto!important;max-width:100%}
.content-wrapper:has(#mypageForm) .tab-area{overflow:visible!important}
.content-wrapper:has(#mypageForm) .scroll-hint-icon-wrap{display:none!important}
/* マイページの背景：ロゴの色（青緑・青・ピンク・黄）をやわらかく敷く（2026-10-01） */
body:has(#mypageForm){
  background:
    radial-gradient(ellipse 45% 35% at 0% 18%, rgba(143,208,210,.30), transparent 70%),
    radial-gradient(ellipse 40% 30% at 100% 35%, rgba(252,217,119,.28), transparent 70%),
    radial-gradient(ellipse 45% 35% at 8% 85%, rgba(235,191,208,.26), transparent 70%),
    radial-gradient(ellipse 40% 30% at 95% 92%, rgba(74,143,227,.16), transparent 70%),
    linear-gradient(180deg,#ffffff 0%,#f6fafb 100%) !important;
  background-attachment:fixed !important}
body:has(#mypageForm) .mh-top.mh-auto .mh-band{background:transparent}

/* ライブ申し込み：会場／オンラインの2ルート（2026-10-02） */
.mh-top .mh-cta-pair{display:flex;flex-wrap:wrap;gap:10px}
.mh-top .mh-cta-pair .mh-btn{width:auto;flex:1 1 220px}
.mh-top .mh-btn-ghost{background:transparent;color:#fff!important;border:2px solid rgba(255,255,255,.85)}
.mh-top .mh-route{display:grid;gap:16px}
@media (min-width:768px){.mh-top .mh-route{grid-template-columns:1fr 1fr;align-items:stretch}}
.mh-top .mh-route-card{display:flex;flex-direction:column;background:#fff;border:2px solid var(--line);border-radius:20px;padding:22px 20px}
.mh-top .mh-route-venue{border-color:var(--yellow)}
.mh-top .mh-route-online{border-color:var(--blue)}
.mh-top .mh-route-card .mh-h3{margin:10px 0 6px}
.mh-top .mh-route-card p{margin:0}
.mh-top .mh-route-card .mh-cta{margin-top:auto;padding-top:16px}
.mh-top .mh-route-card .mh-btn{max-width:none}
.mh-top .mh-route-card .mh-sm{display:block;margin-top:8px;text-align:center}
.mh-top .mh-route-tag{align-self:flex-start;font-size:13px;font-weight:700;letter-spacing:.06em;border-radius:999px;padding:3px 12px}
.mh-top .mh-route-venue .mh-route-tag{background:var(--sun);color:var(--ink)}
.mh-top .mh-route-online .mh-route-tag{background:var(--blue);color:#fff}
.mh-top .mh-route-warn{margin:14px 0 0;text-align:center!important;font-size:14px;font-weight:700;color:#c0506f}

/* りとるばいりとるライブ（kouza 41）だけ、日程欄の【担当】を出さない（2026-10-02） */
.content-wrapper:has(a[href*="twitcasting.tv/c:knave__/shopcart/456063"]) table.entry td.single > div:has(> a[href*="/teacher/detail/"]){display:none!important}

/* ジューク：ビフォーアフター／他塾比較／3つのポイント（2026-10-08） */
.mh-top .mh-ba-lead{margin:0 0 18px;color:var(--ink-soft)}
.mh-top .mh-ba{display:grid;gap:12px}
.mh-top .mh-ba-who{margin:8px 0 0;font-family:var(--head);font-weight:700;font-size:16px;color:var(--blue-deep)}
.mh-top .mh-ba-who-p{margin-top:20px;color:#b25a7a}
.mh-top .mh-ba-row{display:grid;gap:0;border-radius:18px;overflow:visible;border:1px solid var(--line);background:#fff}
.mh-top .mh-ba-b,.mh-top .mh-ba-a{position:relative;padding:14px 18px;font-size:15px;line-height:1.7}
.mh-top .mh-ba-b{background:#f4f5f6;color:var(--ink-soft);border-radius:18px 18px 0 0}
.mh-top .mh-ba-a{border-radius:0 0 18px 18px}
@media (min-width:720px){.mh-top .mh-ba-b{border-radius:18px 0 0 18px}.mh-top .mh-ba-a{border-radius:0 18px 18px 0}}
.mh-top .mh-ba-a{background:linear-gradient(100deg,rgba(143,208,210,.22),rgba(252,217,119,.22));color:var(--ink);font-weight:700}
.mh-top .mh-ba-a{padding-top:24px}
.mh-top .mh-ba-a::before{content:"↓";position:absolute;left:50%;top:-14px;margin-left:-14px;width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;font-size:15px;font-weight:700;line-height:28px;text-align:center;box-shadow:0 2px 6px rgba(47,111,192,.25)}
.mh-top .mh-ba-k{display:block;font-size:11px;font-weight:700;letter-spacing:.14em;margin-bottom:2px;opacity:.75}
.mh-top .mh-ba-a .mh-ba-k{color:var(--blue-deep);opacity:1}
@media (min-width:720px){
  .mh-top .mh-ba-row{grid-template-columns:1fr 1fr}
  .mh-top .mh-ba-b,.mh-top .mh-ba-a{padding:18px 24px;font-size:16px}
  .mh-top .mh-ba-a{padding:18px 24px 18px 34px}
  .mh-top .mh-ba-a::before{content:"→";left:0;top:50%;margin:-14px 0 0 -14px}
}
.mh-top .mh-cmp{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}
.mh-top .mh-cmp-head,.mh-top .mh-cmp-row{display:grid;grid-template-columns:1fr 1fr}
.mh-top .mh-cmp-head > span:first-child{display:none}
.mh-top .mh-cmp-head span{padding:12px 14px;font-family:var(--head);font-weight:700;text-align:center;font-size:15px}
.mh-top .mh-cmp-head .mh-cmp-o{background:#f4f5f6;color:var(--ink-soft)}
.mh-top .mh-cmp-head .mh-cmp-j{background:var(--moon-strong);color:#fff}
.mh-top .mh-cmp-row{border-top:1px solid var(--line)}
.mh-top .mh-cmp-k{grid-column:1/-1;padding:10px 14px 0;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--ink-soft)}
.mh-top .mh-cmp-row .mh-cmp-o,.mh-top .mh-cmp-row .mh-cmp-j{padding:6px 14px 14px;font-size:14px;line-height:1.6}
.mh-top .mh-cmp-row .mh-cmp-o{color:var(--ink-soft)}
.mh-top .mh-cmp-row .mh-cmp-j{font-weight:700;color:var(--blue-deep);background:rgba(143,208,210,.12)}
.mh-top .mh-cmp-j small{display:block;font-weight:400;font-size:12px;color:var(--ink-soft);margin-top:2px}
@media (min-width:720px){
  .mh-top .mh-cmp-head,.mh-top .mh-cmp-row{grid-template-columns:150px 1fr 1fr}
  .mh-top .mh-cmp-head > span:first-child{display:block}
  .mh-top .mh-cmp-k{grid-column:auto;padding:16px 18px;font-size:14px;display:flex;align-items:center}
  .mh-top .mh-cmp-row .mh-cmp-o,.mh-top .mh-cmp-row .mh-cmp-j{padding:16px 18px;font-size:16px}
  .mh-top .mh-cmp-head span{font-size:17px;padding:14px 18px}
  .mh-top .mh-cmp-row > span{display:flex;flex-direction:column;justify-content:center}
}
.mh-top .mh-pts .mh-box{position:relative;background:#fff;border:2px solid var(--line)}
.mh-top .mh-pt-n{display:block;width:max-content;font-family:var(--head);font-weight:700;font-size:28px;line-height:1;margin-bottom:8px;background:var(--moon-strong);-webkit-background-clip:text;background-clip:text;color:transparent}
.mh-top .mh-pts .mh-box p{margin:0}

/* ジューク → 子どもの金融セミナーへの案内（2026-10-15） */
.mh-top .mh-kids-link{margin-top:20px;background:#fff;border:2px solid var(--yellow)}
.mh-top .mh-kids-link .mh-tag{display:inline-block;background:var(--sun);color:var(--ink)}
.mh-top .mh-kids-link .mh-h3{margin-top:10px}

/* 講座ページ（標準本文）に置くお問い合わせ枠：.mh-top を使わない独立版（2026-10-18） */
.mh-inquiry{display:flex;flex-direction:column;align-items:center;gap:12px;margin:40px 0 8px;padding:28px 22px;border-radius:24px;background:linear-gradient(100deg,#e8f5f5,#e6effb);text-align:center;position:relative;overflow:hidden}
.mh-inquiry::after{content:"";position:absolute;right:-40px;bottom:-50px;width:140px;height:140px;border-radius:50%;background:linear-gradient(100deg,#ebbfd0,#f3c9a6 50%,#fcd977);opacity:.55}
.mh-inquiry>*{position:relative;z-index:1}
.mh-inquiry p{margin:0!important;text-align:center!important}
.mh-inquiry p.mh-inquiry-h{font-weight:700;font-size:19px;line-height:1.6;color:#333}
.mh-inquiry p.mh-inquiry-s{font-size:14px;color:#626a73}
.mh-inquiry a.mh-inquiry-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 36px;border-radius:999px;font-weight:700;font-size:16px;background:linear-gradient(100deg,#3b92a3,#2f6fc0);color:#fff!important;text-decoration:none!important;box-shadow:0 6px 18px rgba(47,111,192,.25)}

/* 2列のイベント一覧で奇数件のとき、最後の1件を横いっぱいに（2026-10-27） */
@media (min-width:720px){.mh-top .mh-evs.mh-evs-4>.mh-ev:last-child:nth-child(odd){grid-column:1/-1}}

/* 担当欄を非表示（本文に .mh-hide-tanto があるページだけ）2026-10-27 子どもの金融セミナー申込 kouzaType22 */
.content-wrapper:has(.mh-hide-tanto) td.kouza-detail div[data-event="kouza"] > ul.kouza-date + div{display:none!important}
/* 「現在申込を受け付けている講座はありません」を非表示（本文に .mh-hide-noentry があるページだけ）2026-10-27 kouzaType22 */
.content-wrapper:has(.mh-hide-noentry) form[name="kouzaDetailForm"] > .alert.alert-danger{display:none!important}

/* 講座一覧：講座カードが奇数のとき、最後の1枚を横長（画像左・本文右）で全幅に 2026-10-30 */
@media (min-width:720px){
  .mh-top .mh-courses>.mh-course:last-child:nth-child(odd){grid-column:1/-1;flex-direction:row}
  .mh-top .mh-courses>.mh-course:last-child:nth-child(odd)>.mh-course-img{flex:0 0 50%;align-self:center}
}
/* 講座カードに直接置かれた画像（管理画面で差し替えた画像）も枠いっぱい・7:4に揃える 2026-10-30 */
.mh-top .mh-course>img{display:block;width:100%!important;max-width:100%;height:auto;aspect-ratio:7/4;object-fit:cover;margin:0!important}

/* お金の学び：大人向け／子ども向けの切り替え（page 9 と 15 の見出し帯）2026-11-09 */
.mh-top .mh-switch{position:relative;z-index:1;display:inline-flex;gap:4px;margin:0 0 20px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 6px 18px rgba(47,111,192,.08)}
.mh-top .mh-switch a{display:flex;flex-direction:column;align-items:center;min-width:128px;padding:8px 16px;border-radius:999px;font-family:var(--head);font-weight:700;font-size:15px;line-height:1.35;color:var(--ink-soft);text-decoration:none;text-align:center}
.mh-top .mh-switch a small{font-family:var(--body);font-size:11px;font-weight:500;letter-spacing:0;opacity:.85}
.mh-top .mh-switch a:hover{background:var(--mist)}
.mh-top .mh-switch a[aria-current="page"]{background:var(--moon-strong);color:#fff}
.mh-top .mh-switch a.mh-switch-kids[aria-current="page"]{background:var(--sun);color:var(--ink)}
@media (min-width:720px){
  .mh-top .mh-switch a{min-width:200px;padding:10px 24px;font-size:17px}
  .mh-top .mh-switch a small{font-size:12px}
}
@media (max-width:479px){
  .mh-top .mh-switch{display:flex;width:100%}
  .mh-top .mh-switch a{flex:1 1 0;min-width:0;padding:8px 8px}
  .mh-top .mh-switch a small{font-size:10px}
}
/* 切り替えボタンの文字色（サイト共通のリンク色に負けないよう固定）2026-11-09 */
.mh-top .mh-switch a,.mh-top .mh-switch a small{color:#4a525b!important}
.mh-top .mh-switch a[aria-current="page"],.mh-top .mh-switch a[aria-current="page"] small{color:#fff!important;opacity:1}
.mh-top .mh-switch a.mh-switch-kids[aria-current="page"],.mh-top .mh-switch a.mh-switch-kids[aria-current="page"] small{color:#2b3138!important;opacity:1}

/* 開催実績ページ（page 16 jisseki）2026-11-09 */
.mh-top .mh-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 0}
.mh-top .mh-stat{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px 10px;text-align:center}
.mh-top .mh-stat-k{display:block;font-size:12px;font-weight:700;color:var(--ink-soft);line-height:1.5}
.mh-top .mh-stat-n{display:block;font-family:var(--head);font-weight:700;font-size:40px;line-height:1.15;color:var(--blue-deep)}
.mh-top .mh-stat-n small{font-size:15px;margin-left:2px;color:var(--ink)}
.mh-top .mh-stat-s{display:block;font-size:11px;color:var(--ink-soft);line-height:1.5}
.mh-top .mh-stat.mh-stat-sun .mh-stat-n{color:#c9832b}
.mh-top .mh-tl-k.mh-tl-sun{background:#fff3d6;color:#9a6312}
.mh-top .mh-tl-month{list-style:none;margin:0 0 4px -1px;padding:0 0 10px 30px;border-left:2px solid var(--line);margin-left:8px;font-family:var(--head);font-weight:700;font-size:14px;color:var(--ink-soft)}
.mh-top .mh-tl-month::before{display:none}
@media (min-width:720px){
  .mh-top .mh-stats{gap:20px}
  .mh-top .mh-stat{padding:26px 16px}
  .mh-top .mh-stat-k{font-size:14px}
  .mh-top .mh-stat-n{font-size:56px}
  .mh-top .mh-stat-n small{font-size:18px}
  .mh-top .mh-stat-s{font-size:13px}
}
.mh-top .mh-stats.mh-stats-4{grid-template-columns:repeat(2,1fr)}
@media (min-width:720px){.mh-top .mh-stats.mh-stats-4{grid-template-columns:repeat(4,1fr)}}
.mh-top .mh-stat-n.mh-stat-n-sm{font-size:30px}
@media (min-width:720px){.mh-top .mh-stat-n.mh-stat-n-sm{font-size:44px}}
.mh-top .mh-timeline li.mh-tl-year::before{background:var(--sun)}
.mh-top .mh-stats + .mh-box{margin-top:20px}
.mh-top .mh-stats + .mh-box + .mh-h3,.mh-top .mh-h2 + .mh-box + .mh-h3{margin:36px 0 16px}

/* イベント一覧：年の見出し（mycustom.js が .mh-ev-year を入れる）2026-11-10 */
.content-wrapper:has(form[name="eventListForm"]) .mh-ev-year{grid-column:1/-1;display:flex;align-items:center;gap:14px;margin:12px 0 -4px;font-family:"Zen Kaku Gothic Antique","Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:22px;color:#333}
.content-wrapper:has(form[name="eventListForm"]) .mh-ev-year:first-child{margin-top:0}
.content-wrapper:has(form[name="eventListForm"]) .mh-ev-year::before{content:"";width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#8fd0d2,#4a8fe3);flex:none}
.content-wrapper:has(form[name="eventListForm"]) .mh-ev-year::after{content:"";flex:1;height:1px;background:#e4ecf0}

/* 料金プランが2つのとき、横幅いっぱいに2枚並べる（kouzaType20 ジューク体験）2026-11-10 */
@media (min-width:720px){.mh-top .mh-plans.mh-plans-2{max-width:none}}

/* 枠が続くときの間隔（ジューク 講師の想い）2026-11-11 */
.mh-top .mh-catch + .mh-box{margin-top:20px}
.mh-top .mh-stats + .mh-box + .mh-catch{margin-top:28px}
.mh-top .mh-stats.mh-stats-2{grid-template-columns:repeat(2,1fr)}
