/* ==========================================================================
   members/index.html 専用スタイル
   もとは同ページの <style> 直書き + 各要素の style="" だったものを、
   表示結果を変えずにこちらへ移設しています（2026-09-08更新）。
   ・body.pageBg でスコープしているため、他ページ(site.css既定値)には影響しません。
   ・mem-xxx-N は元の style="" の中身をそのままクラス化したものです。
   ========================================================================== */

/* ---- このページ固有のキーフレーム・クラス（元<style>ブロックより／9-8のページ遷移モーション刷新を含む） ---- */
@keyframes revealFadeup{0%{opacity:0;transform:translateY(24px)}100%{opacity:1;transform:translateY(0)}}
@keyframes heroKenburns{0%{transform:scale(1.01)}100%{transform:scale(1.06)}}
@keyframes sheenv{0%{transform:translateX(-120%)}18%{transform:translateX(70%)}52%{transform:translateX(220%)}100%{transform:translateX(220%)}}
@keyframes marq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes veilout{to{opacity:0;visibility:hidden}}
@keyframes pgin{0%{opacity:0;transform:translateY(18px)}100%{opacity:1;transform:translateY(0)}}
.marq-track{display:flex;width:max-content;animation:marq 24s linear infinite}
#pt-veil{position:fixed;inset:0;background:radial-gradient(120% 100% at 50% 28%,#14285f 0%,#0a1738 62%);z-index:99999;opacity:1;pointer-events:none;transition:opacity .5s cubic-bezier(.4,0,.2,1);animation:veilout .6s cubic-bezier(.4,0,.2,1) .05s both}
#scroll-content{animation:pgin .75s cubic-bezier(.2,.7,.2,1) .08s backwards}
.pg-shell.pg-out{transition:opacity .4s ease;opacity:0}.pg-shell.pg-out #scroll-content{transition:translate .4s ease;translate:0 -12px}
@media (prefers-reduced-motion:reduce){.marq-track{animation:none}#pt-veil{display:none}#scroll-content{animation:none}.pg-shell.pg-out{transition:none;opacity:1}.pg-shell.pg-out #scroll-content{transition:none;translate:none}}

/* もとの <style> ブロックのページ固有上書き分
   （site.css の既定はブレークポイント1023px / gnavの余白が別値のため、
    このページだけ従来どおり1400px・別余白で動くよう明示的に上書きする） */
body.pageBg { margin: 0; background: #eeebe4; font-family: 'Noto Sans JP', system-ui, sans-serif; }
body.pageBg .pc-view { display: block; width: 100%; }
body.pageBg .sp-view { display: none; width: 100%; }
@media (max-width: 1400px) {
  body.pageBg .pc-view { display: none; }
  body.pageBg .sp-view { display: block; }
}
body.pageBg .gnav a { white-space: nowrap; }
body.pageBg .gnav > div { gap: 20px !important; }
body.pageBg .gnav > div[data-gnav-toggle] { gap: 5px !important; }
body.pageBg .gnav > div > div { gap: 18px !important; }
@media (max-width: 1400px) {
  body.pageBg .gnav { padding-left: 32px !important; padding-right: 32px !important; }
}

/* ---- 以下、各要素の style="" を1:1でクラス化したもの ---- */
.mem-top-1{display:none;visibility:hidden}
.mem-top-2{background:#faf7f1}
.mem-top-3{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 52px;box-sizing:border-box}
.mem-top-4{display:flex;align-items:center;gap:14px;text-decoration:none}
.mem-top-5{height:20px;width:auto;display:block;filter:brightness(0) invert(1)}
.mem-top-6{width:1px;height:22px;background:rgba(255,255,255,.22);flex:none}
.mem-top-7{font-size: 12px; font-weight: 400; letter-spacing: .14em; color: #8fe0f4; white-space: nowrap; font-family: Noto Sans JP}
.mem-top-8{display:flex;align-items:center;gap:34px}
.mem-top-9{display:flex;gap:28px;font-size:14px;font-weight:400;color:rgba(255,255,255,.85)}
.mem-top-10{text-decoration:none}
.mem-top-11{text-decoration:none;color:#8fe0f4;font-weight:700}
.mem-top-12{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;letter-spacing:.04em;color:rgba(255,255,255,.82);text-decoration:none;border:1px solid rgba(255,255,255,.42);border-radius:999px;padding:8px 15px;line-height:1;white-space:nowrap}
.mem-top-13{flex:none}
.mem-top-14{position:relative;overflow:hidden;font-weight:700;font-size:13px;color:#2b1d05;background:linear-gradient(120deg,#f07f13 0%,#ffa62e 55%,#ffc964 100%);padding:12px 24px;border-radius:999px;text-decoration:none}
.mem-top-15{position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);animation:sheenv 3.6s linear infinite}
.mem-top-16{width:100%;background:#faf7f1;overflow:hidden}
.mem-hero-1{position:relative;width:100%;height:520px;overflow:hidden;background:#0a1738}
.mem-hero-2{position:absolute;inset:0;background:url('../img/hero_positions.jpg') 30% 62%/cover no-repeat;animation:heroKenburns 20s linear both}
.mem-hero-3{position:absolute;inset:0;background:linear-gradient(105deg,rgba(6,15,40,.93) 0%,rgba(6,15,40,.72) 42%,rgba(6,15,40,.44) 70%,rgba(6,15,40,.68) 100%)}
.mem-hero-4{position:absolute;left:52px;right:52px;bottom:60px;z-index:6;animation:revealFadeup .9s ease both}
.mem-hero-5{font-weight: 400; font-size: 13px; letter-spacing: 0.14em; color: #8fe0f4; margin-bottom: 20px}
.mem-hero-6{margin:0;font-weight:500;font-size:64px;line-height:1.34;color:#fff;letter-spacing:.01em;text-shadow:0 2px 30px rgba(0,0,0,.4)}
.mem-hero-7{margin:26px 0 0;max-width:720px;font-size:16px;line-height:2;font-weight:300;color:rgba(255,255,255,.85)}
.mem-crumb-1{background:#faf7f1;padding:34px 96px 0;box-sizing:border-box}
.mem-crumb-2{max-width:1170px;margin:0 auto;display:flex;gap:10px;align-items:center}
.mem-crumb-3{font-size:12.5px;color:#5f6878;text-decoration:none}
.mem-crumb-4{font-size:12.5px;color:#c2c8d2}
.mem-crumb-5{font-size:12.5px;color:#3a475f;font-weight:700}
.mem-filter-1{background:#faf7f1;padding:48px 96px 100px;box-sizing:border-box}
.mem-filter-2{max-width:1170px;margin:0 auto}
.mem-filter-3{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:44px}
.mem-filter-4{font-weight:700;font-size:13.5px;color:#fff;background:#0f1e3d;padding:10px 20px;border-radius:999px;cursor:pointer}
.mem-filter-5{font-weight:600;font-size:13.5px;color:#3a475f;background:#fff;border:1px solid rgba(15,30,61,.12);padding:10px 20px;border-radius:999px;cursor:pointer}
.mem-filter-6{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.mem-filter-7{display:block;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(15,30,61,.08);text-decoration:none;box-shadow:0 14px 34px rgba(15,30,61,.06)}
.mem-filter-8{aspect-ratio:4/3;background:#c5d2e3 url('../img/voice_kimura_hero2.jpg') center 0%/cover no-repeat}
.mem-filter-9{padding:26px 26px 28px}
.mem-filter-10{font-weight:600;font-size:11.5px;letter-spacing:.18em;color:#17629f}
.mem-filter-11{margin-top:14px;font-weight:700;font-size:20px;line-height:1.55;color:#0f1e3d;text-wrap:pretty}
.mem-filter-12{margin-top:18px;font-size:13.5px;line-height:1.95;color:#3a475f}
.mem-filter-13{margin-top:22px;padding-top:18px;border-top:1px solid rgba(15,30,61,.08);display:flex;align-items:baseline;gap:10px}
.mem-filter-14{font-weight:700;font-size:14.5px;color:#0f1e3d}
.mem-filter-15{font-size:12px;color:#555f78}
.mem-filter-16{background:#f2eee5;border:1px dashed rgba(15,30,61,.16);border-radius:18px;padding:34px 30px;display:flex;flex-direction:column;justify-content:center;min-height:220px}
.mem-filter-17{font-weight:600;font-size:11.5px;letter-spacing:.18em;color:#5f6878}
.mem-filter-18{letter-spacing: 2.07px;}
.mem-filter-19{margin-top:14px;font-weight:700;font-size:19px;line-height:1.55;color:#3a475f}
.mem-filter-20{margin-top:12px;font-size:13px;line-height:1.9;color:#5f6878}
.mem-cta-1{position:relative;background:#081128;padding:92px 96px 88px;box-sizing:border-box;overflow:hidden}
.mem-cta-2{position:absolute;inset:0;background:url('../img/photo_consult.jpg') center/cover no-repeat;opacity:.26}
.mem-cta-3{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,17,40,.86),rgba(8,17,40,.94))}
.mem-cta-4{position:relative;max-width:1170px;margin:0 auto;text-align:center}
.mem-cta-5{font-weight: 600; font-size: 14px; letter-spacing: 0.14em; color: #8fe0f4; margin-bottom: 22px}
.mem-cta-6{margin:0;font-weight:500;font-size:44px;line-height:1.45;color:#fff}
.mem-cta-7{display:flex;justify-content:center;gap:14px;margin-top:40px;flex-wrap:wrap}
.mem-cta-8{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;color:#2b1d05;background:linear-gradient(120deg,#f07f13 0%,#ffa62e 55%,#ffc964 100%);padding:16px 36px;border-radius:999px;text-decoration:none}
.mem-cta-9{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:#fff;border:1.5px solid rgba(255,255,255,.5);padding:15px 28px;border-radius:999px;text-decoration:none}
.mem-footer-1{background:#050b1c;overflow:hidden;padding:64px 0 8px}
.mem-footer-2{white-space:nowrap;font-weight:700;font-size:88px;line-height:1;letter-spacing:.02em;color:transparent;-webkit-text-stroke:1.5px rgba(143,224,244,.4)}
.mem-footer-3{background:#050b1c;padding:56px 96px 40px;box-sizing:border-box}
.mem-footer-4{max-width:1170px;margin:0 auto;display:flex;justify-content:space-between;align-items:flex-start;gap:48px;flex-wrap:wrap}
.mem-footer-5{height:20px;width:auto;display:block;filter:brightness(0) invert(1);opacity:.9}
.mem-footer-6{display:flex;gap:64px;flex-wrap:wrap}
.mem-footer-7{display:flex;flex-direction:column;gap:12px}
.mem-footer-8{font-size:11px;letter-spacing:.2em;color:rgba(255,255,255,.4)}
.mem-footer-9{font-size:13.5px;color:rgba(255,255,255,.78);text-decoration:none}
.mem-footer-10{max-width:1170px;margin:40px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
.mem-footer-11{font-size:11px;color:rgba(255,255,255,.4);letter-spacing:.06em}
.mem-footer-12{width:1px}
.mem-footerSp-1{position:relative;width:100%;height:470px;overflow:hidden;background:#0a1738}
.mem-footerSp-2{position:absolute;inset:0;background:url('../img/hero_positions.jpg') 36% 60%/cover no-repeat;animation:heroKenburns 20s linear both}
.mem-footerSp-3{position:absolute;inset:0;background:linear-gradient(175deg,rgba(6,15,40,.72) 0%,rgba(6,15,40,.44) 30%,rgba(6,15,40,.88) 100%)}
.mem-footerSp-4{position:absolute;inset:0;z-index:6}
.mem-footerSp-5{position:absolute;top:12px;left:22px;right:22px;height:52px;display:flex;align-items:center;justify-content:space-between}
.mem-footerSp-6{height:15px;width:auto;display:block;filter:brightness(0) invert(1)}
.mem-footerSp-7{width:1px;height:16px;background:rgba(255,255,255,.22);flex:none}
.mem-footerSp-8{font-size:10px;font-weight:600;letter-spacing:.14em;color:#8fe0f4;white-space:nowrap}
.mem-footerSp-9{display:flex;flex-direction:column;gap:5px;padding:6px 2px}
.mem-footerSp-10{display:block;width:24px;height:2px;background:#fff;border-radius:2px}
.mem-footerSp-11{position:absolute;left:24px;right:24px;bottom:40px}
.mem-footerSp-12{font-weight:600;font-size:11px;letter-spacing:.22em;color:#8fe0f4;margin-bottom:14px}
.mem-footerSp-13{margin:0;font-weight:900;font-size:32px;line-height:1.42;color:#fff}
.mem-footerSp-14{margin:16px 0 0;font-size:13.5px;line-height:1.95;font-weight:400;color:rgba(255,255,255,.85)}
.mem-footerSp-15{background:#faf7f1;padding:28px 22px 48px;box-sizing:border-box}
.mem-footerSp-16{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:22px}
.mem-footerSp-17{font-size:11.5px;color:#5f6878;text-decoration:none}
.mem-footerSp-18{font-size:11.5px;color:#c2c8d2}
.mem-footerSp-19{font-size:11.5px;color:#3a475f;font-weight:700}
.mem-footerSp-20{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.mem-footerSp-21{font-weight:700;font-size:12.5px;color:#fff;background:#0f1e3d;padding:8px 16px;border-radius:999px}
.mem-footerSp-22{font-weight:600;font-size:12.5px;color:#3a475f;background:#fff;border:1px solid rgba(15,30,61,.12);padding:8px 16px;border-radius:999px}
.mem-footerSp-23{display:flex;flex-direction:column;gap:18px}
.mem-footerSp-24{display:block;background:#fff;border:1px solid rgba(15,30,61,.09);border-radius:16px;overflow:hidden;text-decoration:none;box-shadow:0 12px 28px rgba(15,30,61,.07)}
.mem-footerSp-25{aspect-ratio:3/2;background:#c5d2e3 url('../img/voice_kimura_hero2.jpg') center 0%/cover no-repeat}
.mem-footerSp-26{padding:20px}
.mem-footerSp-27{font-weight:600;font-size:11px;letter-spacing:.18em;color:#17629f}
.mem-footerSp-28{margin-top:10px;font-weight:700;font-size:17.5px;line-height:1.55;color:#0f1e3d}
.mem-footerSp-29{margin-top:12px;font-size:13px;line-height:1.9;color:#3a475f}
.mem-footerSp-30{margin-top:16px;padding-top:14px;border-top:1px solid rgba(15,30,61,.08);font-weight:700;font-size:13.5px;color:#0f1e3d}
.mem-footerSp-31{font-weight:500;font-size:11.5px;color:#555f78}
.mem-footerSp-32{background:#eeece8;border:1px dashed rgba(15,30,61,.16);border-radius:16px;padding:22px 20px}
.mem-footerSp-33{font-weight:700;font-size:14.5px;color:#3a475f}
.mem-footerSp-34{margin-top:8px;font-size:12.5px;line-height:1.85;color:#5f6878}
.mem-footerSp-35{position:relative;background:#081128;padding:48px 22px;box-sizing:border-box;overflow:hidden}
.mem-footerSp-36{position:absolute;inset:0;background:url('../img/photo_consult.jpg') center/cover no-repeat;opacity:.24}
.mem-footerSp-37{position:relative;text-align:center}
.mem-footerSp-38{margin:0;font-weight:500;font-size:22px;line-height:1.55;color:#fff}
.mem-footerSp-39{display:flex;flex-direction:column;gap:10px;margin-top:26px}
.mem-footerSp-40{position:relative;overflow:hidden;text-align:center;font-weight:700;font-size:14px;color:#2b1d05;background:linear-gradient(120deg,#f07f13 0%,#ffa62e 55%,#ffc964 100%);padding:14px 20px;border-radius:999px;text-decoration:none}
.mem-footerSp-41{text-align:center;font-weight:600;font-size:14px;color:#fff;border:1.5px solid rgba(255,255,255,.5);padding:13px 20px;border-radius:999px;text-decoration:none}
.mem-footerSp-42{background:#050b1c;overflow:hidden;padding:34px 0 4px}
.mem-footerSp-43{white-space:nowrap;font-weight:700;font-size:42px;line-height:1;letter-spacing:.02em;color:transparent;-webkit-text-stroke:1px rgba(143,224,244,.4)}
.mem-footerSp-44{background:#050b1c;padding:36px 24px 30px;box-sizing:border-box}
.mem-footerSp-45{height:17px;width:auto;display:block;filter:brightness(0) invert(1);opacity:.9}
.mem-footerSp-46{margin-top:24px;display:flex;gap:44px;flex-wrap:wrap}
.mem-footerSp-47{font-size:10.5px;letter-spacing:.2em;color:rgba(255,255,255,.4)}
.mem-footerSp-48{font-size:12.5px;color:rgba(255,255,255,.75);text-decoration:none}
.mem-footerSp-49{margin-top:26px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.mem-footerSp-50{font-size:10.5px;color:rgba(255,255,255,.4);letter-spacing:.05em}
