

:root{
  --mx-bg:#fff;--mx-text:#0b1220;--mx-muted:rgba(11,18,32,.68);
  --mx-border:rgba(15,23,42,.10);--mx-shadow:0 18px 60px rgba(15,23,42,.08);
  --mx-r:#D45746;--mx-c:#23C6C2;
  --mx-hero-bg:
    radial-gradient(1200px circle at 20% 20%, rgba(212,87,70,.35) 0%, rgba(212,87,70,.08) 35%, transparent 70%),
    radial-gradient(900px circle at 80% 80%, rgba(35,198,194,.32) 0%, rgba(35,198,194,.08) 40%, transparent 80%),
    linear-gradient(180deg,#0d1117 0%,#0f1a23 45%,#081218 100%);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:78px}
body.mx-body{margin:0;font-family:Inter,"Noto Sans JP",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:var(--mx-text);background:var(--mx-bg)}
a{color:inherit;text-decoration:none}
.mx-container{width:min(1120px,calc(100% - 48px));margin:0 auto}
@media(max-width:720px){.mx-container{width:calc(100% - 28px)}}

.mx-topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--mx-border)}
.mx-topbar__inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.mx-brand{display:flex;align-items:baseline;gap:10px}
.mx-brand__logo{font-weight:800;letter-spacing:-.03em;font-size:18px}
.mx-brand__sub{font-size:12px;color:var(--mx-muted);font-weight:600}
.mx-nav{display:flex;gap:18px;align-items:center}
.mx-nav__link{font-size:13px;font-weight:600;color:rgba(11,18,32,.72);padding:8px 10px;border-radius:10px}
.mx-nav__link:hover{background:rgba(15,23,42,.05);color:rgba(11,18,32,.9)}
.mx-topbar__actions{display:flex;gap:10px;align-items:center}

.mx-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:12px 14px;font-weight:700;border:1px solid transparent;cursor:pointer}
.mx-btn--sm{padding:10px 12px;font-size:13px}
.mx-btn--block{width:100%}
.mx-btn--primary{color:#fff;background:linear-gradient(90deg,rgba(212,87,70,.95),rgba(35,198,194,.95));box-shadow:0 16px 30px rgba(0,0,0,.12)}
.mx-btn--primary:hover{filter:brightness(1.03);transform:translateY(-1px)}
.mx-btn--ghost{background:#fff;border-color:rgba(15,23,42,.14);color:rgba(11,18,32,.86)}
.mx-btn--ghost:hover{background:rgba(15,23,42,.03);transform:translateY(-1px)}

.mx-burger{display:none;width:40px;height:40px;border-radius:12px;border:1px solid var(--mx-border);background:#fff}
.mx-burger span{display:block;width:18px;height:2px;background:rgba(11,18,32,.70);margin:5px auto;border-radius:99px}
@media(max-width:920px){.mx-nav{display:none}.mx-burger{display:inline-block}}
.mx-drawer{border-bottom:1px solid var(--mx-border);background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}
.mx-drawer__inner{padding:14px 0 18px;display:grid;gap:8px}
.mx-drawer__link{padding:10px 12px;border-radius:12px;font-weight:700;color:rgba(11,18,32,.80)}
.mx-drawer__link:hover{background:rgba(15,23,42,.05)}
.mx-drawer__cta{display:flex;gap:10px;padding-top:6px}

.mx-hero{background:var(--mx-hero-bg);color:#fff;padding:78px 0 64px}
.mx-hero__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
@media(max-width:980px){.mx-hero__grid{grid-template-columns:1fr}}
.mx-pill{display:inline-flex;align-items:center;font-size:12px;font-weight:800;color:rgba(255,255,255,.86);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:8px 10px;border-radius:999px}
.mx-pill--hero{margin-bottom:14px}
.mx-hero__title{margin:0;font-size:clamp(34px,4.2vw,54px);letter-spacing:-.04em;line-height:1.12}
.mx-hero__lead{margin:14px 0 0;color:rgba(255,255,255,.82);font-size:15px;line-height:1.85}
.mx-hero__cta{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}
.mx-hero__meta{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px}
.mx-meta-chip{font-size:12px;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.86);font-weight:700}

.mx-shot{border-radius:20px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);box-shadow:0 28px 70px rgba(0,0,0,.24);overflow:hidden}
.mx-shot__top{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.12)}
.mx-shot__dot{width:10px;height:10px;border-radius:99px;opacity:.95}
.mx-shot__dot--r{background:#ff5f57}.mx-shot__dot--y{background:#febc2e}.mx-shot__dot--g{background:#28c840}
.mx-shot__label{margin-left:6px;font-size:12px;font-weight:700;color:rgba(255,255,255,.76)}
.mx-shot__body{padding:16px}
.mx-shot__placeholder{height:260px;border-radius:16px;background:repeating-linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.12) 10px,rgba(255,255,255,.06) 10px,rgba(255,255,255,.06) 20px);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;color:rgba(255,255,255,.78);font-weight:700}

.mx-section{padding:72px 0;background:#fff}
.mx-section--alt{background:linear-gradient(180deg,#fff 0%,rgba(15,23,42,.02) 100%)}
.mx-section--tight{padding:56px 0}
.mx-section-head{max-width:720px}
.mx-kicker{display:inline-flex;font-size:12px;font-weight:900;color:rgba(11,18,32,.70);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.mx-h2{margin:0;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.03em;line-height:1.25}
.mx-h3{margin:12px 0 0;font-size:18px;letter-spacing:-.02em}
.mx-muted{color:var(--mx-muted);line-height:1.85;margin-top:10px}
.mx-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
@media(max-width:980px){.mx-grid-2{grid-template-columns:1fr}}
.mx-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
@media(max-width:980px){.mx-cards{grid-template-columns:1fr}}
.mx-card{border:1px solid var(--mx-border);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06);padding:16px 16px 14px}
.mx-card__icon{font-size:18px}

.mx-list{margin:0}
.mx-list--plain{padding-left:18px;color:var(--mx-muted);line-height:1.85}
.mx-mini-cta{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap}

.mx-list--saas{list-style:none;padding-left:0;margin:18px 0 0;display:grid;gap:10px}
.mx-list--saas li{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;background:rgba(15,23,42,.04);border:1px solid rgba(15,23,42,.08);box-shadow:0 1px 0 rgba(15,23,42,.03);line-height:1.6}
.mx-list--saas li::before{content:"";width:18px;height:18px;margin-top:3px;border-radius:999px;background:radial-gradient(circle at 30% 30%,rgba(212,87,70,.75),rgba(212,87,70,.15) 55%,transparent 70%),radial-gradient(circle at 70% 70%,rgba(35,198,194,.7),rgba(35,198,194,.12) 55%,transparent 75%),rgba(255,255,255,.9);border:1px solid rgba(15,23,42,.12);box-shadow:0 6px 18px rgba(15,23,42,.08);flex:0 0 auto}
.mx-list--saas li:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(15,23,42,.10);background:rgba(15,23,42,.03);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}

.mx-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
@media(max-width:980px){.mx-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.mx-steps{grid-template-columns:1fr}}
.mx-step{border:1px solid rgba(15,23,42,.10);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06);padding:16px 16px 14px;display:flex;gap:12px;align-items:flex-start;transition:transform .18s ease,box-shadow .18s ease}
.mx-step:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(15,23,42,.10)}
.mx-step__num{width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;background:rgba(15,23,42,.05);border:1px solid rgba(15,23,42,.10)}
.mx-step__title{font-weight:800}.mx-step__desc{color:rgba(15,23,42,.70);margin-top:4px;line-height:1.6}

.mx-pricing{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:980px){.mx-pricing{grid-template-columns:1fr}}
.mx-pricecard{border:1px solid var(--mx-border);border-radius:22px;background:#fff;box-shadow:var(--mx-shadow);padding:18px;position:relative}
.mx-pricecard--featured{border-color:rgba(35,198,194,.35);box-shadow:0 18px 70px rgba(35,198,194,.10)}
.mx-pricecard__badge{display:inline-flex;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;border-radius:999px;background:rgba(15,23,42,.04);border:1px solid rgba(15,23,42,.08);color:rgba(11,18,32,.72)}
.mx-pricecard__price{margin-top:8px;color:rgba(11,18,32,.80)}

.mx-quote{border-radius:22px;border:1px solid rgba(15,23,42,.10);background:radial-gradient(900px circle at 20% 20%,rgba(212,87,70,.08) 0%,transparent 55%),radial-gradient(900px circle at 80% 80%,rgba(35,198,194,.08) 0%,transparent 55%),#fff;box-shadow:0 18px 60px rgba(15,23,42,.08);padding:22px 20px}
.mx-quote__icon{font-size:40px;line-height:1;opacity:.35}
.mx-quote__text{margin-top:6px;line-height:1.9;color:rgba(15,23,42,.88)}
.mx-quote__meta{margin-top:14px;display:flex;gap:10px;align-items:center;color:rgba(15,23,42,.62);font-size:.92rem}
.mx-quote__name{font-weight:800;color:rgba(15,23,42,.78)}

.mx-form{border:1px solid var(--mx-border);border-radius:22px;background:#fff;box-shadow:var(--mx-shadow);padding:18px}
.mx-field{display:grid;gap:8px;margin-top:12px}
.mx-field label{font-size:12px;font-weight:800;color:rgba(11,18,32,.70)}
.mx-field input,.mx-field select{height:44px;padding:0 12px;border-radius:14px;border:1px solid rgba(15,23,42,.12);outline:none;font-size:14px}
.mx-field input:focus,.mx-field select:focus{border-color:rgba(35,198,194,.55);box-shadow:0 0 0 4px rgba(35,198,194,.12)}
.mx-form__sub{margin:12px 0 0;color:rgba(11,18,32,.65);font-size:13px}
.mx-form__sub a{text-decoration:underline}
.mx-form__msg{margin-top:12px;font-weight:800;font-size:13px}
.mx-form__msg.is-ok{color:rgba(12,110,74,1)}
.mx-form__msg.is-ng{color:rgba(176,45,45,1)}

.mx-note{margin-top:14px;padding:14px;border-radius:16px;border:1px solid rgba(15,23,42,.10);background:rgba(15,23,42,.03);color:rgba(11,18,32,.70);line-height:1.8;font-weight:600}

.mx-faq{margin-top:18px;display:grid;gap:10px}
.mx-faq__item{border:1px solid rgba(15,23,42,.10);border-radius:16px;padding:12px 14px;background:#fff}
.mx-faq__item summary{cursor:pointer;font-weight:800;color:rgba(11,18,32,.84)}
.mx-faq__item div{margin-top:10px;color:rgba(11,18,32,.68);line-height:1.8}

.mx-footer{padding:34px 0;border-top:1px solid var(--mx-border);background:#fff}
.mx-footer__inner{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.mx-footer__brand{font-weight:900;letter-spacing:-.03em}
.mx-footer__note{margin-top:6px;color:var(--mx-muted);font-size:12px}
.mx-footer__right{display:flex;gap:14px;color:rgba(11,18,32,.72);font-weight:700}
.mx-footer__right a:hover{text-decoration:underline}

.mx-br-md{display:none}
@media(max-width:980px){.mx-br-md{display:inline}}





/* =========================
   HERO: Mobile mock (top bar + UI)
========================= */

/* PCウィンドウの上部（赤黄緑＋URL）を消す */
.mx-shot--mobile .mx-shot__top{
  display: none !important;
}

/* フレーム */
.mx-shot--mobile{
  width: 240px;
  max-width: 100%;
  margin-left: auto;
  position: relative;
  border-radius: 34px;
  background: #0b0f14;
  padding: 10px;
  box-shadow:
    0 26px 70px rgba(0,0,0,.45),
    inset 0 0 0 1px rgba(255,255,255,.08);
}

/* 画面部分 */
.mx-shot--mobile .mx-shot__body{
  height: 480px;
  position: relative;
  padding: 0 !important;
  border-radius: 26px;
  overflow: hidden;
  background: #000;
}

/* スクショ画像 */
.mx-shot--mobile .mx-shot__img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

/* 上部の黒帯 */
.mx-shot--mobile .mx-shot__body::before{
  content:"";
  position:absolute;
  left:0; top:0;
  width:100%;
  height:84px;
  background:#070a0f;
  z-index:3;
  pointer-events:none;
}

/* ノッチ（Dynamic Island） */
.mx-shot--mobile::after{
  content:"";
  position:absolute;
  top:16px;
  left:50%;
  transform:translateX(-50%);
  width:92px;
  height:22px;
  border-radius:999px;
  background:rgba(0,0,0,.92);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
  z-index:6;
  pointer-events:none;
}

/* ノッチ下のドメイン（← 離れすぎを解消） */
.mx-shot--mobile .mx-shot__body::after{
  content:"miux.co.jp";
  position:absolute;
  top:30px;                 /* ← 48px → 40pxに上げる（さらに詰めたいなら 36px） */
  left:50%;
  transform:translateX(-50%);
  color:rgba(255,255,255,.92);
  font-weight:600;
  font-size:12px;
  letter-spacing:.02em;
  text-shadow:0 1px 10px rgba(0,0,0,.45);
  z-index:5;
  pointer-events:none;
}

/* ステータス（時間/右上） */
.mx-shot--mobile .mx-phone-ui{
  position:absolute;
  top:10px;
  left:14px;
  right:14px;
  z-index:7;
  display:flex;
  align-items:center;
  justify-content:space-between;
  pointer-events:none;
  color: rgba(255,255,255,.96);  /* ← 白色 */
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  text-shadow:0 1px 10px rgba(0,0,0,.45);
}

.mx-shot--mobile .mx-phone-ui__time{
  color: rgba(255,255,255,.96);  /* ← 白 */
}

.mx-shot--mobile .mx-phone-ui__status{
  color: rgba(255,255,255,.96);  /* ← 白 */
  opacity: .95;
}

/* レイアウト調整 */
@media (min-width: 1024px){
  .mx-hero__media{
    display:flex;
    justify-content:flex-end;
    padding-right:24px;
  }
  .mx-shot--mobile{
    transform:translateY(20px);
  }
}

@media (max-width: 767px){
  .mx-shot--mobile{
    width:220px;
    margin:32px auto 0;
    transform:none;
  }
}
