/* =========================================================
   Netsui Indigo — indigo.css（main_style.cssの後に読み込む上書き層）
   藍×紺 / 動き / アイコン
   ========================================================= */
:root{
  --ni-ai:#13284E;
  --ni-deep:#0B1530;
  --ni-kon:#1E2F63;
  --ni-blue:#4A6FD4;
  --ni-sora:#7FA3F2;
  --ni-kinari:#FAFAF6;
  --ni-sumi:#1B1A18;
  --ni-line:rgba(19,40,78,.14);
  --ni-grad:linear-gradient(95deg,#1E2F63,#4A6FD4);
  --ni-serif:'Shippori Mincho B1',serif;
  --ni-gothic:'Zen Kaku Gothic New','Noto Sans JP',sans-serif;
  --ni-latin:'Archivo',sans-serif;
}
body{font-family:var(--ni-gothic)}
.ni-icon{vertical-align:-.18em;margin-right:6px;flex-shrink:0}
.ni-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
::selection{background:var(--ni-kon);color:#fff}

/* ---------- スクロール進捗バー ---------- */
#ni-bar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--ni-grad);z-index:1001}

/* ---------- reveal ---------- */
.rv{opacity:0;transform:translateY(36px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.rv.on{opacity:1;transform:none}
.rv-d1{transition-delay:.1s}.rv-d2{transition-delay:.2s}.rv-d3{transition-delay:.3s}

/* ---------- ヘッダー（旧 header{} を上書き） ---------- */
header.ni-header{position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;height:auto;padding:18px 0;background:transparent;box-shadow:none;transition:.4s;display:block}
header.ni-header.is-scrolled{background:rgba(250,250,246,.9);backdrop-filter:blur(14px);padding:10px 0;border-bottom:1px solid var(--ni-line)}
.ni-header__in{display:flex;align-items:center;justify-content:space-between;max-width:1360px;margin:0 auto;padding:0 28px}
header.ni-header .netsui_header_logo{position:static;width:auto;margin:0;padding:0}
header.ni-header .netsui_header_logo a{display:block}
header.ni-header .ni-logo-img{width:210px;max-width:54vw;height:auto;transition:.3s}
/* ナビ（PC） */
#netsui_g-nav.ni-gnav{position:static;width:auto;max-width:none;height:auto;max-height:none;top:auto;right:auto;background:none;padding:0;transform:none;display:flex;align-items:center;gap:26px;z-index:auto;overflow:visible}
.ni-gnav__list{display:flex;align-items:center;gap:26px;margin:0;padding:0;list-style:none}
.ni-gnav__list>li{position:relative;margin:0;padding:0;border:none}
.ni-gnav__list a,.ni-gnav__child-ttl{font-family:var(--ni-latin);font-weight:600;font-size:13px;letter-spacing:.1em;color:var(--ni-ai);cursor:pointer;display:inline-flex;align-items:center;gap:5px;position:relative;padding:6px 0;text-decoration:none}
.ni-gnav__list>li>a::after,.ni-gnav__child-ttl::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--ni-grad);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.ni-gnav__list>li>a:hover::after,.ni-gnav__child:hover .ni-gnav__child-ttl::after{transform:scaleX(1);transform-origin:left}
.ni-gnav .cssacc{display:none}
.ni-gnav__drop{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,8px);background:#fff;border:1px solid var(--ni-line);border-radius:14px;padding:10px;min-width:240px;box-shadow:0 18px 44px rgba(11,21,48,.16);opacity:0;visibility:hidden;transition:.3s;display:block;height:auto}
.ni-gnav__child:hover .ni-gnav__drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
.ni-gnav__drop a{display:block;padding:9px 14px;border-radius:9px;font-size:12.5px;white-space:nowrap}
.ni-gnav__drop a:hover{background:rgba(74,111,212,.1);color:var(--ni-kon)}
.ni-gnav__drop a::after{display:none}
.ni-gnav__cta{background:var(--ni-grad);color:#fff!important;padding:10px 20px!important;border-radius:999px;box-shadow:0 6px 16px rgba(30,47,99,.35);transition:transform .3s,box-shadow .3s}
.ni-gnav__cta::after{display:none!important}
.ni-gnav__cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,47,99,.45)}
.ni-gnav__sns{display:flex;gap:14px;margin:0;padding:0 0 0 6px;list-style:none;border-left:1px solid var(--ni-line)}
.ni-gnav__sns li{margin:0;padding-left:8px}
.ni-gnav__sns a{color:var(--ni-ai);font-size:16px;opacity:.7;transition:.3s}
.ni-gnav__sns a:hover{opacity:1;color:var(--ni-blue);transform:translateY(-2px)}
/* バーガー（旧 .header_openbtn を上書き） */
.header_openbtn.ni-burger{display:none;position:static;width:42px;height:42px;background:none;cursor:pointer;z-index:1002}
.header_openbtn.ni-burger span{display:block;position:static;width:24px;height:2px;background:var(--ni-ai);margin:6px auto;transition:.35s}
.header_openbtn.ni-burger.active span:nth-child(1){width:24px;transform:translateY(8px) rotate(45deg)}
.header_openbtn.ni-burger.active span:nth-child(2){opacity:0}
.header_openbtn.ni-burger.active span:nth-child(3){width:24px;transform:translateY(-8px) rotate(-45deg)}

/* ---------- ヒーロー ---------- */
.ni-hero{min-height:100svh;position:relative;display:flex;align-items:center;background:var(--ni-kinari);overflow:hidden}
.ni-topo{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.ni-topo path{fill:none;stroke:var(--ni-ai);stroke-width:1.1;opacity:.10;stroke-dasharray:8 10;animation:ni-topo 60s linear infinite}
.ni-topo path:nth-child(2n){stroke:var(--ni-blue);opacity:.14;animation-duration:80s;animation-direction:reverse}
@keyframes ni-topo{to{stroke-dashoffset:-1000}}
.ni-hero__glow{position:absolute;width:60vw;height:60vw;max-width:760px;max-height:760px;right:-18vw;top:-12vw;border-radius:50%;background:radial-gradient(circle,rgba(74,111,212,.26),rgba(30,47,99,.12) 45%,transparent 70%);filter:blur(28px);animation:ni-breathe 7s ease-in-out infinite}
@keyframes ni-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}
.ni-vrail{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;width:64px}
.ni-vrail--l{left:0;border-right:1px solid var(--ni-line)}
.ni-vrail--r{right:0;border-left:1px solid var(--ni-line)}
.ni-vrail span{writing-mode:vertical-rl;font-family:var(--ni-serif);font-size:13px;letter-spacing:.5em;color:var(--ni-ai);opacity:.55}
.ni-hero__in{position:relative;z-index:2;width:100%;max-width:1400px;margin:0 auto;padding:150px 64px 96px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:56px}
.ni-hero__copy{min-width:0}

/* ---------- ヒーロー右：活動スライドショー ---------- */
.ni-hero__media{position:relative;z-index:2;width:100%;max-width:600px;justify-self:end;aspect-ratio:16/10}
.ni-hero__deco{position:absolute;inset:0;transform:translate(20px,20px);border:1.5px solid var(--ni-blue);border-radius:24px;opacity:.5;z-index:0;pointer-events:none}
.ni-hero__slides{position:absolute;inset:0;z-index:1;border-radius:24px;overflow:hidden;background:var(--ni-deep);box-shadow:0 34px 74px rgba(11,21,48,.30)}
.ni-hero__slide{position:absolute;inset:0;display:block;opacity:0;transform:scale(1.05);transition:opacity 1.1s cubic-bezier(.22,1,.36,1);text-decoration:none;color:#fff}
.ni-hero__slide.is-active{opacity:1;transform:scale(1);transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 6.5s linear;z-index:1}
.ni-hero__slide img{width:100%;height:100%;object-fit:contain;display:block}
.ni-hero__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;gap:6px;padding:56px 22px 20px;background:linear-gradient(to top,rgba(11,21,48,.9),rgba(11,21,48,.35) 55%,transparent)}
.ni-hero__cap-cat{font-family:var(--ni-latin);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ni-sora)}
.ni-hero__cap-ttl{font-size:14px;font-weight:700;line-height:1.5}
.ni-hero__dots{position:absolute;z-index:3;right:16px;bottom:16px;display:flex;gap:7px}
.ni-hero__dot{width:8px;height:8px;padding:0;border:none;border-radius:999px;background:rgba(255,255,255,.5);cursor:pointer;transition:width .3s,background .3s}
.ni-hero__dot.is-active{width:22px;background:#fff}
.ni-hero__medialabel{position:absolute;z-index:3;top:16px;left:16px;display:inline-flex;align-items:center;gap:5px;font-family:var(--ni-latin);font-size:10.5px;font-weight:700;letter-spacing:.16em;color:#fff;background:rgba(11,21,48,.42);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:7px 14px}
.ni-hero__tag{display:inline-flex;align-items:center;font-family:var(--ni-latin);font-size:11px;font-weight:600;letter-spacing:.22em;color:var(--ni-kon);border:1px solid rgba(30,47,99,.35);border-radius:999px;padding:8px 18px;margin-bottom:32px;background:rgba(255,255,255,.55)}
.ni-hero__in h1{font-weight:900;font-size:clamp(30px,4.4vw,58px);line-height:1.32;letter-spacing:.01em;color:var(--ni-deep);margin:0}
.ni-hero__in h1 .ln{display:block;overflow:hidden}
.ni-hero__in h1 .ln span{display:inline-block;transform:translateY(110%);animation:ni-rise 1s cubic-bezier(.22,1,.36,1) forwards}
.ni-hero__in h1 .ln:nth-child(2) span{animation-delay:.15s}
@keyframes ni-rise{to{transform:none}}
.ni-hero__in h1 em{font-style:normal;background:var(--ni-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;position:relative}
.ni-hero__lead{margin-top:30px;max-width:580px;font-size:16px;font-weight:500;opacity:0;animation:ni-fadeup 1s .6s forwards}
@keyframes ni-fadeup{from{opacity:0;transform:translateY(20px)}to{opacity:.85;transform:none}}
.ni-hero__ctas{margin-top:40px;display:flex;gap:18px;flex-wrap:wrap;opacity:0;animation:ni-fadeup 1s .8s forwards}
.ni-btn{font-weight:700;font-size:15px;letter-spacing:.06em;padding:18px 36px;border-radius:999px;display:inline-flex;align-items:center;gap:10px;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s;text-decoration:none}
.ni-btn--deep{color:#fff;background:var(--ni-grad);box-shadow:0 12px 30px rgba(30,47,99,.4);position:relative;overflow:hidden}
.ni-btn--deep::before{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-20deg);transition:left .6s}
.ni-btn--deep:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 18px 40px rgba(30,47,99,.5);color:#fff}
.ni-btn--deep:hover::before{left:130%}
.ni-btn--ghost{color:var(--ni-ai);border:1.5px solid var(--ni-ai)}
.ni-btn--ghost:hover{background:var(--ni-ai);color:#fff;transform:translateY(-3px)}
.ni-btn--white{color:var(--ni-kon);background:#fff;box-shadow:0 16px 40px rgba(0,0,0,.22)}
.ni-btn--white:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 24px 54px rgba(0,0,0,.3);color:var(--ni-kon)}
.ni-scrollcue{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);font-family:var(--ni-latin);font-size:10px;letter-spacing:.4em;color:var(--ni-ai);opacity:.6;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:2}
.ni-scrollcue::after{content:"";width:1px;height:54px;background:linear-gradient(var(--ni-blue),transparent);animation:ni-cue 1.8s ease-in-out infinite}
@keyframes ni-cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ---------- ティッカー ---------- */
.ni-ticker{background:var(--ni-deep);color:var(--ni-kinari);overflow:hidden;padding:16px 0}
.ni-ticker__track{display:flex;gap:64px;white-space:nowrap;animation:ni-marq 30s linear infinite;width:max-content}
.ni-ticker:hover .ni-ticker__track{animation-play-state:paused}
.ni-ticker__track span{font-family:var(--ni-latin);font-weight:600;font-size:13px;letter-spacing:.22em;display:flex;align-items:center;gap:64px}
.ni-ticker__track em{font-style:normal;color:var(--ni-sora);font-family:var(--ni-serif)}
@keyframes ni-marq{to{transform:translateX(-50%)}}

/* ---------- セクション共通 ---------- */
.ni-eyebrow{font-family:var(--ni-latin);font-weight:700;font-size:12px;letter-spacing:.26em;color:var(--ni-blue);text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}
.ni-sectitle{font-family:var(--ni-latin);font-weight:700;font-size:clamp(38px,5.5vw,66px);letter-spacing:-.02em;line-height:1;color:var(--ni-ai);margin:14px 0 0}
.ni-sectitle .jp{display:block;font-family:var(--ni-gothic);font-size:14px;font-weight:700;letter-spacing:.2em;color:var(--ni-sumi);margin-top:12px;opacity:.65}
.ni-sechead{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:44px}
.ni-more{font-family:var(--ni-latin);font-weight:600;font-size:13px;letter-spacing:.18em;display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border:1.5px solid var(--ni-ai);border-radius:999px;color:var(--ni-ai);transition:.35s;position:relative;overflow:hidden;text-decoration:none}
.ni-more span,.ni-more .ni-icon{position:relative;z-index:1;transition:.35s}
.ni-more::after{content:"";position:absolute;inset:0;background:var(--ni-ai);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.ni-more:hover::after{transform:scaleX(1)}
.ni-more:hover span,.ni-more:hover .ni-icon{color:#fff}
.ni-bigbg{position:absolute;top:30px;left:-1vw;font-family:var(--ni-latin);font-weight:700;font-size:clamp(100px,16vw,230px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(19,40,78,.08);pointer-events:none;white-space:nowrap}

/* ---------- ミッション ---------- */
.ni-mission{padding:120px 0;position:relative;overflow:hidden;background:var(--ni-kinari)}
.ni-mission__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;position:relative}
.ni-mission__txt h2{font-weight:900;font-size:clamp(24px,3vw,38px);line-height:1.55;color:var(--ni-deep);margin:20px 0 24px}
.ni-mission__txt h2 mark{background:linear-gradient(transparent 62%,rgba(127,163,242,.45) 62%);color:inherit}
.ni-mission__txt p{font-size:15px;line-height:2;opacity:.88;margin:0}
.ni-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px;padding:0;list-style:none}
.ni-chips li{display:inline-flex;align-items:center;font-size:12.5px;font-weight:700;letter-spacing:.05em;padding:8px 18px;border-radius:999px;border:1px solid var(--ni-line);background:#fff;color:var(--ni-ai);transition:.3s;margin:0}
.ni-chips li .ni-icon{color:var(--ni-blue)}
.ni-chips li:hover{border-color:var(--ni-blue);color:var(--ni-kon);transform:translateY(-3px);box-shadow:0 8px 18px rgba(30,47,99,.16)}
.ni-movie{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 28px 60px rgba(11,21,48,.25);aspect-ratio:16/9}
.ni-movie iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---------- フィード & カード ---------- */
.ni-feed{padding:100px 0;background:var(--ni-kinari)}
.ni-feed--alt{background:#fff;border-top:1px solid var(--ni-line);border-bottom:1px solid var(--ni-line)}
.ni-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:0;padding:0;list-style:none}
.ni-card{margin:0;background:#fff;border:1px solid var(--ni-line);border-radius:18px;overflow:hidden;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.ni-feed--alt .ni-card{background:var(--ni-kinari)}
.ni-card:hover{transform:translateY(-8px);box-shadow:0 24px 50px rgba(19,40,78,.16)}
.ni-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.ni-card__thumb{height:185px;position:relative;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,var(--ni-kon),var(--ni-blue));color:#fff}
.ni-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.ni-card:hover .ni-card__thumb img{transform:scale(1.06)}
.ni-card__mark{opacity:.9;transition:transform .6s}
.ni-card:hover .ni-card__mark{transform:scale(1.15) rotate(-4deg)}
.ni-card__body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:11px;flex:1}
.ni-card__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ni-card__date{font-family:var(--ni-latin);font-weight:600;font-size:12px;letter-spacing:.12em;color:var(--ni-ai);opacity:.75;display:inline-flex;align-items:center}
.ni-card__cat{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--ni-blue);border:1px solid rgba(74,111,212,.5);border-radius:999px;padding:3px 11px}
.ni-card h3{font-size:15.5px;font-weight:700;line-height:1.6;color:var(--ni-sumi);margin:0}
.ni-card p{font-size:12.5px;opacity:.7;flex:1;margin:0;line-height:1.8}
.ni-card__read{font-family:var(--ni-latin);font-size:11.5px;font-weight:700;letter-spacing:.16em;color:var(--ni-blue);display:inline-flex;align-items:center;gap:6px;margin-top:4px}
.ni-card__read .ni-icon{transition:transform .3s;margin:0}
.ni-card:hover .ni-card__read .ni-icon{transform:translateX(6px)}

/* ---------- 会員マーキー ---------- */
.ni-members{padding:110px 0 120px;background:#fff;border-top:1px solid var(--ni-line);overflow:hidden}
.ni-marquee{margin-top:8px;display:flex;flex-direction:column;gap:20px}
.ni-mrow{display:flex;gap:20px;width:max-content;animation:ni-marq 60s linear infinite}
.ni-mrow--rev{animation-direction:reverse;animation-duration:70s}
.ni-marquee:hover .ni-mrow{animation-play-state:paused}
.ni-chip{display:flex;align-items:center;gap:14px;background:var(--ni-kinari);border:1px solid var(--ni-line);border-radius:14px;padding:13px 24px;white-space:nowrap;transition:.35s;text-decoration:none}
.ni-chip:hover{border-color:var(--ni-blue);transform:translateY(-4px);box-shadow:0 12px 26px rgba(30,47,99,.16)}
.ni-chip img{height:36px;width:auto;max-width:90px;object-fit:contain}
.ni-chip b{font-size:13.5px;font-weight:700;color:var(--ni-deep)}

/* ---------- CONTACT ---------- */
.ni-contact{padding:130px 0;position:relative;overflow:hidden;background:linear-gradient(135deg,#0B1530,#1E2F63 45%,#2C4A9E);color:#fff;text-align:center}
.ni-contact .ni-topo path{stroke:#fff;opacity:.1}
.ni-contact .ni-topo path:nth-child(2n){stroke:var(--ni-sora);opacity:.12}
.ni-contact .ni-eyebrow{color:var(--ni-sora)}
.ni-contact h2{font-weight:900;font-size:clamp(30px,4.6vw,54px);line-height:1.45;margin:22px 0 18px;position:relative;z-index:1;color:#fff}
.ni-contact p{max-width:560px;margin:0 auto 40px;opacity:.92;position:relative;z-index:1}
.ni-contact .ni-btn{position:relative;z-index:1}

/* ---------- フッター ---------- */
footer.ni-footer{background:var(--ni-deep);color:var(--ni-kinari);padding:84px 0 110px;display:block;height:auto}
.ni-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:46px;margin-bottom:60px}
.ni-foot-grid h5{font-family:var(--ni-latin);font-size:11.5px;font-weight:700;letter-spacing:.26em;color:var(--ni-sora);margin:0 0 18px;display:flex;align-items:center}
.ni-foot-brand .netsui_footer_logo img{max-width:230px;height:auto}
.ni-foot-brand p{font-size:13px;opacity:.65;margin:18px 0;max-width:300px;line-height:1.9}
.ni-foot-sns{display:flex;gap:16px;margin:0;padding:0;list-style:none}
.ni-foot-sns a{color:var(--ni-kinari);font-size:19px;opacity:.6;transition:.3s}
.ni-foot-sns a:hover{opacity:1;color:var(--ni-sora);transform:translateY(-2px)}
.ni-foot-menu{margin:0;padding:0;list-style:none}
.ni-foot-menu li{margin:0}
.ni-foot-menu a{font-size:13.5px;opacity:.7;display:block;padding:6px 0;transition:.3s;color:var(--ni-kinari);text-decoration:none}
.ni-foot-menu a:hover{opacity:1;color:var(--ni-sora);transform:translateX(5px)}
.ni-foot-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.ni-foot-bottom .netsui_footer_copyright,.ni-foot-bottom .netsui_privacy{font-family:var(--ni-latin);font-size:11px;letter-spacing:.14em;opacity:.55;color:var(--ni-kinari);margin:0}
.ni-pagetop .page_top_btn{background:var(--ni-grad);box-shadow:0 10px 24px rgba(30,47,99,.4)}

/* ---------- 下層共通の微調整 ---------- */
.netsui_subpage_top{padding-top:90px}
.netsui_btn a{background:var(--ni-grad)}

/* ---------- レスポンシブ ---------- */
@media(max-width:1100px){
  .ni-gnav__sns{display:none}
}
@media(max-width:1200px){
  .ni-hero{min-height:auto}
  .ni-hero__in{grid-template-columns:1fr;gap:44px;max-width:720px;padding-bottom:80px}
  .ni-hero__media{justify-self:stretch;margin:0;max-width:none;aspect-ratio:16/10}
  .ni-hero__deco{display:none}
  .ni-scrollcue{display:none}
}
@media(max-width:1024px){
  .ni-cards{grid-template-columns:repeat(2,1fr)}
  .ni-foot-grid{grid-template-columns:1fr 1fr}
  .ni-mission__grid{grid-template-columns:1fr;gap:40px}
}
@media(max-width:900px){
  .header_openbtn.ni-burger{display:block}
  #netsui_g-nav.ni-gnav{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;background:rgba(11,21,48,.97);backdrop-filter:blur(10px);flex-direction:column;justify-content:center;gap:30px;transform:translateX(100%);transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex;padding:60px 30px;overflow-y:auto}
  #netsui_g-nav.ni-gnav.panelactive{transform:none}
  .ni-gnav__list{flex-direction:column;gap:20px;align-items:center}
  .ni-gnav__list a,.ni-gnav__child-ttl{color:#fff;font-size:17px}
  .ni-gnav__drop{position:static;transform:none;opacity:1;visibility:visible;background:none;border:none;box-shadow:none;display:none;text-align:center;min-width:0;padding:6px 0 0}
  .ni-gnav .cssacc:checked ~ .ni-gnav__drop{display:block}
  .ni-gnav__drop a{color:rgba(255,255,255,.75);font-size:14px;padding:7px 0}
  .ni-gnav__sns{display:flex;border:none;padding:0;gap:24px;justify-content:center}
  .ni-gnav__sns a{color:#fff;font-size:20px}
  .ni-vrail{display:none}
  .ni-hero__in{padding:140px 26px 100px}
}
@media(max-width:760px){
  .ni-cards{grid-template-columns:1fr}
  .ni-foot-grid{grid-template-columns:1fr}
  .ni-hero__ctas .ni-btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .rv{opacity:1;transform:none}
  .ni-hero__in h1 .ln span{transform:none}
  .ni-hero__lead,.ni-hero__ctas{opacity:1}
}

/* ---------- 会員チップ（ロゴ主役・アイキャッチ画像）---------- */
.ni-chip{flex-direction:column;gap:10px;padding:18px 26px;min-width:170px;text-align:center}
.ni-chip__logo{display:grid;place-items:center;height:52px;width:130px}
.ni-chip__logo img{max-height:52px;max-width:130px;width:auto;height:auto;object-fit:contain}
.ni-chip b{font-size:12px;line-height:1.4;white-space:normal;max-width:150px}

/* ---------- SUMMITバンド ---------- */
.ni-summit{padding:100px 0;background:var(--ni-deep);color:var(--ni-kinari);position:relative;overflow:hidden}
.ni-summit .ni-sectitle{color:#fff}
.ni-summit .ni-sectitle .jp{color:var(--ni-kinari)}
.ni-summit .ni-eyebrow{color:var(--ni-sora)}
.ni-summit__lead{max-width:620px;opacity:.85;font-size:15px;margin:0 0 36px}
.ni-summit__years{display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;list-style:none}
.ni-summit__years li{margin:0}
.ni-summit__years a{font-family:var(--ni-latin);font-weight:700;font-size:18px;letter-spacing:.06em;color:var(--ni-kinari);border:1.5px solid rgba(255,255,255,.25);border-radius:999px;padding:13px 28px;display:inline-flex;align-items:center;gap:8px;transition:.35s;text-decoration:none}
.ni-summit__years a .ni-icon{margin:0;transition:transform .3s}
.ni-summit__years a:hover{background:var(--ni-grad);border-color:transparent;transform:translateY(-3px);box-shadow:0 12px 28px rgba(74,111,212,.35)}
.ni-summit__years a:hover .ni-icon{transform:translateX(4px)}
.ni-summit__years li:first-child a{background:var(--ni-grad);border-color:transparent}

/* ---------- 下層ページの統一感（旧クラスの磨き込み）---------- */
.netsui_subpage_top{background:linear-gradient(135deg,var(--ni-deep),var(--ni-kon) 55%,var(--ni-blue))!important;border-bottom:none}
.netsui_subpage_top h1 img{filter:drop-shadow(0 6px 20px rgba(11,21,48,.35))}
.netsui_ttl h2{font-family:var(--ni-latin);letter-spacing:-.02em;color:var(--ni-ai)}
.netsui_card_item{border-radius:16px;overflow:hidden;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s}
.netsui_card_item:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(19,40,78,.15)}
.netsui_member_item{border-radius:14px;transition:.35s}
.netsui_member_item:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(30,47,99,.14);border-color:var(--ni-blue)}

/* ---------- スマホ最適化（軽量表示）---------- */
@media(max-width:760px){
  /* マーキーは2行・速度控えめ、ロゴは縮小して転送/描画負荷を軽減 */
  .ni-mrow{animation-duration:80s;gap:12px}
  .ni-mrow--rev{animation-duration:90s}
  .ni-mrow:nth-child(3){display:none}
  .ni-chip{min-width:132px;padding:14px 16px}
  .ni-chip__logo{height:40px;width:104px}
  .ni-chip__logo img{max-height:40px;max-width:104px}
  .ni-chip b{font-size:11px;max-width:120px}
  .ni-summit__years a{font-size:15px;padding:10px 20px}
  /* 重い装飾をOFF */
  .ni-hero__glow{filter:blur(14px)}
  .ni-bigbg{display:none}
  .ni-topo path{animation:none}
}
