/* 「まだ」のLP（zenbu2/style.css）と会社トップの見本（mock/top/site.css）の最初の画面。.mz の箱の中だけに効く */
.mz{--ink:#14141d; --ink2:#2a2a36; --mute:#6a6a78;
  --red:#dc2626; --red-d:#b91c1c; --red-l:#fde9e7; --red-on-ink:#ff5b52;
  --yel:#ffd23f; --yel-d:#d9a90a;
  --paper:#f7f4ee; --paper2:#efeae0; --sheet:#fffdf8; --rule:#e6dfd2; --line:#d8d0c1;
  --f-g:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",system-ui,sans-serif;
  --f-m:"Zen Old Mincho","Hiragino Mincho ProN",serif;
  --f-n:"Oswald","Zen Kaku Gothic New",sans-serif;
  --col:430px;}
.mz,.mz *{box-sizing:border-box;margin:0;padding:0}
.mz{-webkit-text-size-adjust:100%;scroll-behavior:auto}
.mz,.mz{background:#e9e5dd}
.mz{font-family:var(--f-g);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.6}
.mz img{max-width:100%;height:auto}
.mz ul,.mz ol{list-style:none}
.mz a{color:inherit}
.mz .page{max-width:var(--col);margin:0 auto;background:var(--paper);min-height:100vh;overflow:hidden;position:relative}
@media (min-width:600px){.mz .page{box-shadow:0 0 0 1px rgba(20,20,29,.06),0 20px 60px rgba(20,20,29,.12)}}
.mz .hd{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 16px;background:#fff;border-bottom:1px solid var(--rule);position:relative;z-index:5}
.mz .logo{display:flex;align-items:baseline;gap:6px;text-decoration:none;color:var(--ink)}
.mz .logo b{font-weight:900;font-size:13px;letter-spacing:.04em}
.mz .logo strong{font-weight:900;font-size:21px;letter-spacing:.06em}
.mz .logo strong i{font-style:normal;color:var(--red)}
.mz .hd-btn{font-size:12px;font-weight:900;color:var(--red);border:2px solid var(--red);padding:6px 11px;border-radius:4px;text-decoration:none;background:#fff}
.mz .lg{display:inline-flex;align-items:baseline;gap:.25em;white-space:nowrap}
.mz .lg b{font-weight:900;font-size:.5em;letter-spacing:.04em}
.mz .lg strong{font-weight:900;letter-spacing:.05em;border-bottom:.08em solid var(--red);line-height:1.1}
.mz .lg--w{color:#fff}
.mz .btn{position:relative;display:block;background:var(--red);color:#fff;text-decoration:none;border-radius:6px;padding:11px 44px 13px 16px;box-shadow:0 4px 0 var(--red-d);font-weight:900;text-align:center}
.mz .btn small{display:block;font-size:12.5px;font-weight:700;opacity:.92;letter-spacing:.06em}
.mz .btn span{display:block;font-size:22px;letter-spacing:.05em;line-height:1.3}
.mz .btn::after{content:"";position:absolute;right:18px;top:50%;width:10px;height:10px;border-top:3px solid #fff;border-right:3px solid #fff;transform:translateY(-50%) rotate(45deg)}
.mz .btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--red-d)}
.mz .fv__in{position:relative;padding:20px 18px 0}
.mz .lead{display:inline-block;font-size:13.5px;font-weight:900;color:#fff;background:var(--ink);padding:5px 12px 5px 10px;border-left:5px solid var(--red);letter-spacing:.03em}
.mz h1{margin-top:12px;font-weight:900;line-height:1.12;letter-spacing:.01em}
.mz h1 .l1{display:block;font-size:min(35px,9vw)}
.mz h1 .l2{display:block;white-space:nowrap;font-size:min(57px,14.4vw);color:var(--red);letter-spacing:-.02em;margin:4px 0 2px -6px}
.mz h1 .l3{display:block;font-size:min(42px,10.8vw)}
.mz .stage{position:relative;height:min(408px,104.6vw);margin:10px -4px 0}
.mz .panel{position:absolute;inset:0;border-radius:20px;overflow:hidden;background:radial-gradient(110% 85% at 74% 44%,#f2493d 0%,var(--red) 46%,#a51a1a 100%);box-shadow:0 10px 24px rgba(165,26,26,.28)}
.mz .panel::before{content:"";position:absolute;inset:0;background:radial-gradient(rgba(255,255,255,.2) 1.1px,transparent 1.5px) 0 0/13px 13px;-webkit-mask:linear-gradient(180deg,#000 0,rgba(0,0,0,.25) 70%);mask:linear-gradient(180deg,#000 0,rgba(0,0,0,.25) 70%)}
.mz .rays{position:absolute;left:74%;top:46%;width:230%;aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(rgba(255,255,255,.12) 0 7deg,transparent 7deg 20deg);-webkit-mask:radial-gradient(closest-side,#000 8%,transparent 72%);mask:radial-gradient(closest-side,#000 8%,transparent 72%)}
.mz .kira{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);background:var(--yel);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}
.mz .kira:nth-of-type(even){background:#fff}
.mz .floor{position:absolute;left:-10%;right:-10%;bottom:-38px;height:84px;border-radius:50%;background:rgba(80,8,8,.32)}
.mz .sheet{position:absolute;left:12px;top:12px;width:150px;z-index:3;background:var(--sheet);border:1px solid var(--line);box-shadow:0 10px 22px rgba(60,8,8,.3);transform:rotate(-3deg);padding:11px 12px 12px}
.mz .sheet::before{content:"";position:absolute;inset:5px;border:1px solid var(--rule);pointer-events:none}
.mz .sheet .ttl{font-family:var(--f-m);font-weight:700;font-size:12px;letter-spacing:.06em;text-align:center;padding-bottom:5px;border-bottom:2px solid var(--ink);margin:2px 4px 6px}
.mz .sheet p{font-size:16px;font-weight:900;line-height:1.5;margin:0 4px;letter-spacing:-.01em}
.mz .sheet p b{color:var(--red)}
.mz .sheet .ln{display:block;border-bottom:1px dashed #d3cab9;padding:3px 0;white-space:nowrap}
.mz .sheet .ln i{font-style:normal;display:inline-block}
.mz .hanko{position:absolute;right:-18px;top:calc(100% - 22px);width:68px;height:68px;border-radius:50%;border:3px solid var(--red);color:var(--red);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-14deg);background:rgba(255,253,248,.94);box-shadow:0 3px 8px rgba(60,8,8,.25);z-index:4}
.mz .hanko b{font-family:var(--f-m);font-weight:700;font-size:22px;line-height:1;letter-spacing:.05em}
.mz .hanko small{font-family:var(--f-n);font-size:8.5px;letter-spacing:.12em;font-weight:700;margin-top:3px;border-top:1.5px solid var(--red);padding-top:2px}
.mz .ctaband{background:var(--ink);padding:14px 16px 16px;text-align:center;position:relative;z-index:3}
.mz .ctaband .btn{background:var(--yel);color:var(--ink);box-shadow:0 4px 0 var(--yel-d)}
.mz .ctaband .btn::after{border-color:var(--ink)}
.mz .ctaband .btn:active{box-shadow:0 2px 0 var(--yel-d)}
.mz .w{position:relative;display:inline-block;z-index:0;padding:0 .06em;background:linear-gradient(transparent 58%,var(--yel) 58%,var(--yel) 94%,transparent 94%) no-repeat 0 0/100% 100%}
.mz .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mz .stage__tag{position:absolute;right:12px;top:14px;z-index:3;font-size:11px;font-weight:900;color:var(--ink);background:var(--yel);padding:3px 9px 3px 8px;border-radius:999px;letter-spacing:.03em;box-shadow:0 2px 0 var(--yel-d)}
.mz .stage__tag::after{content:" ▼";font-size:8px;vertical-align:1px}
.mz .crew{position:absolute;inset:0;z-index:2}
.mz .mem{position:absolute;bottom:0}
.mz .mem img{position:relative;display:block;width:100%;height:auto;filter:drop-shadow(0 6px 6px rgba(60,8,8,.28))}
.mz .mem--sup{left:-2%;width:28%}
.mz .mem--sup img{z-index:1}
.mz .mem--eig{left:17%;width:28%}
.mz .mem--eig img{z-index:2}
.mz .mem--dat{left:36%;width:28%}
.mz .mem--dat img{z-index:1}
.mz .mem--kei{right:-3%;width:51%}
.mz .mem--kei img{z-index:3}
.mz .fuki{position:absolute;bottom:calc(100% + 3px);left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:5px;white-space:nowrap;background:#fff;color:var(--ink);font-size:min(13px,3.35vw);font-weight:900;line-height:1;padding:7px 10px 7px 7px;border-radius:999px;border:2px solid var(--ink);box-shadow:0 3px 0 var(--ink);opacity:0;pointer-events:none}
.mz .fuki::before{content:"✓";flex:none;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--c);color:#fff;font-size:11px}
.mz .fuki::after{content:"";position:absolute;left:50%;top:100%;width:9px;height:9px;margin:-3px 0 0 -5px;background:#fff;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg)}
.mz .fuki--l{left:4px;transform:none}
.mz .fuki--l::after{left:34px}
.mz .fuki--r{left:auto;right:4px;transform:none}
.mz .fuki--r::after{left:auto;right:30px}
.mz .mem--kei .fuki{bottom:calc(100% - 14px)}
.mz .mem--dat .fuki--r{right:14px}
.mz .fuki.is-on{opacity:1}
.mz .more{margin:10px 2px 12px;text-align:center;font-size:13px;font-weight:800;color:var(--ink2)}
.mz .more b{color:var(--red);background:linear-gradient(transparent 60%,rgba(255,210,63,.75) 60%)}
.mz .ids__more{margin-top:18px;text-align:center;font-size:15px;font-weight:900;line-height:1.6;color:var(--ink)}
.mz .ids__more b{color:var(--red);background:linear-gradient(transparent 62%,rgba(255,210,63,.7) 62%)}
.mz .side{display:none}
@media (min-width:1024px){.mz,.mz{background:#efe9de}
.mz{background-image:radial-gradient(rgba(220,38,38,.14) 1.3px,transparent 1.7px);background-size:20px 20px}
.mz .shell{display:grid;grid-template-columns:1fr var(--col) 1fr;min-height:100vh}
.mz .shell .page{margin:0;box-shadow:0 0 0 1px rgba(20,20,29,.06),0 24px 70px rgba(20,20,29,.16)}
.mz .side{display:flex;position:sticky;top:0;height:100vh;flex-direction:column;justify-content:center;padding:40px clamp(22px,3vw,60px)}
.mz .side--l{align-items:flex-end;gap:18px}
.mz .side--r{align-items:flex-start}
.mz .stick{display:none}}
.mz .sd{position:relative;overflow:hidden;width:min(330px,100%);border-radius:22px;padding:24px 22px 0;background:radial-gradient(120% 90% at 70% 60%,#f2493d 0%,var(--red) 46%,#a51a1a 100%);color:#fff;box-shadow:0 14px 30px rgba(165,26,26,.28)}
.mz .sd::before{content:"";position:absolute;inset:0;background:radial-gradient(rgba(255,255,255,.2) 1.1px,transparent 1.5px) 0 0/13px 13px;-webkit-mask:linear-gradient(180deg,#000,rgba(0,0,0,.2));mask:linear-gradient(180deg,#000,rgba(0,0,0,.2))}
.mz .sd__rays{position:absolute;left:50%;top:78%;width:260%;aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(rgba(255,255,255,.12) 0 7deg,transparent 7deg 20deg);-webkit-mask:radial-gradient(closest-side,#000 8%,transparent 70%);mask:radial-gradient(closest-side,#000 8%,transparent 70%)}
.mz .sd__logo{position:relative;display:inline-flex;align-items:baseline;gap:6px;background:#fff;color:var(--ink);padding:5px 12px;border-radius:6px;transform:rotate(-2deg)}
.mz .sd__logo b{font-weight:900;font-size:13px;letter-spacing:.04em}
.mz .sd__logo strong{font-weight:900;font-size:22px;letter-spacing:.06em;line-height:1.2}
.mz .sd__catch{position:relative;margin-top:14px;font-weight:900;font-size:clamp(22px,2vw,28px);line-height:1.35}
.mz .sd__catch b{display:inline-block;color:var(--ink);background:var(--yel);padding:1px 8px 2px;margin:4px 0;font-size:1.22em;border-radius:4px;transform:rotate(-1.5deg);box-shadow:0 3px 0 var(--yel-d)}
.mz .sd__crew{position:relative;display:flex;align-items:flex-end;justify-content:center;margin:14px -8px 0;height:150px}
.mz .sd__crew img{width:25%;height:auto;margin:0 -2.5%;filter:drop-shadow(0 6px 6px rgba(60,8,8,.28))}
.mz .sd__crew img:nth-child(3){width:33%;position:relative;z-index:2}
.mz .sd__btn{width:min(330px,100%);background:var(--yel);color:var(--ink);box-shadow:0 4px 0 var(--yel-d)}
.mz .sd__btn::after{border-color:var(--ink)}
.mz .toc{position:relative;width:min(260px,100%);background:var(--sheet);border:1px solid var(--line);box-shadow:0 12px 26px rgba(20,20,29,.12);padding:16px 18px 18px;transform:rotate(1deg)}
.mz .toc::before{content:"";position:absolute;inset:5px;border:1px solid var(--rule);pointer-events:none}
.mz .toc__ttl{font-family:var(--f-m);font-weight:700;font-size:14px;letter-spacing:.3em;text-align:center;padding-bottom:6px;border-bottom:2px solid var(--ink);margin-bottom:12px}
.mz .toc__list{position:relative;padding-left:4px}
.mz .toc__list::before,.mz .toc__list::after{content:"";position:absolute;left:15px;top:10px;width:2px;bottom:10px;background:var(--rule)}
.mz .toc__list::after{background:var(--red);bottom:auto;height:calc((100% - 20px) * var(--p,0));transition:height .4s cubic-bezier(.2,.9,.3,1)}
.mz .toc__list li{position:relative;z-index:1}
.mz .toc__list a{display:flex;align-items:center;gap:10px;padding:5px 0;text-decoration:none;font-size:13.5px;font-weight:800;color:var(--mute);transition:color .2s}
.mz .toc__list a span{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--sheet);border:2px solid var(--line);font-family:var(--f-n);font-size:10.5px;font-weight:700;color:var(--mute);transition:all .25s}
.mz .toc__list .is-past a span{border-color:var(--red);color:var(--red)}
.mz .toc__list .is-on a{color:var(--ink)}
.mz .toc__list .is-on a span{background:var(--red);border-color:var(--red);color:#fff;transform:scale(1.15)}
.mz .toc__list a:hover{color:var(--red)}
.mz .sec{padding:56px 20px}
.mz .h2{font-size:27px;font-weight:900;line-height:1.38;text-align:center;letter-spacing:.01em}
.mz .red{color:var(--red)}
.mz .doc{position:relative;background:var(--sheet);border:1px solid var(--line);box-shadow:0 10px 22px rgba(20,20,29,.13);padding:12px 13px 14px}
.mz .doc::before{content:"";position:absolute;inset:5px;border:1px solid var(--rule);pointer-events:none}
.mz .doc__ttl{font-family:var(--f-m);font-weight:700;font-size:13px;letter-spacing:.12em;text-align:center;padding-bottom:5px;border-bottom:2px solid var(--ink);margin:1px 3px 8px}
.mz .about{background:var(--paper)}
.mz .ttl2{font-size:30px;font-weight:900;text-align:center;line-height:1.3}
.mz .ttl2 .lg{font-size:1.15em;margin-right:.1em}
.mz .memo{margin:18px auto 0;max-width:300px;background:var(--sheet);border:1px solid var(--line);box-shadow:0 8px 18px rgba(20,20,29,.10);padding:10px 18px;transform:rotate(-1deg)}
.mz .memo__ln{display:block;text-align:center;font-size:21px;font-weight:900;line-height:1.5;padding:4px 0;border-bottom:1px dashed #d3cab9}
.mz .memo__ln:last-child{border-bottom:0}
.mz .memo__ln b{color:var(--red)}
.mz .ids{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;margin-top:30px;perspective:900px}
.mz .idc{background:#fff;border-radius:10px;border:1px solid var(--line);box-shadow:0 6px 14px rgba(20,20,29,.10);overflow:hidden;text-align:center;padding-bottom:10px}
.mz .idc__top{position:relative;height:28px;background:var(--c);display:flex;align-items:center;padding-left:10px}
.mz .idc__top span{font-weight:900;font-size:11px;letter-spacing:.12em;color:#fff}
.mz .idc__top::after{content:"";position:absolute;right:12px;top:50%;width:22px;height:7px;margin-top:-3.5px;border-radius:4px;background:#fff;opacity:.85}
.mz .idc__ph{height:150px;overflow:hidden;background:#f3efe7;border-bottom:1px solid var(--rule);position:relative}
.mz .idc__ph img{position:absolute;left:50%;top:4px;width:112%;max-width:none;transform:translateX(-50%)}
.mz .idc__tag{margin-top:9px;font-size:15px;font-weight:900;color:var(--c);line-height:1.3}
.mz .idc__job{font-size:12px;font-weight:700;color:var(--ink2);margin-top:2px;padding:0 6px;line-height:1.45}
.mz .why{background:var(--ink);color:#fff;padding-bottom:50px}
.mz .why .q{color:var(--red-on-ink)}
.mz .five{margin-top:22px;text-align:center}
.mz .five .lg{font-size:30px}
.mz .five p{margin-top:10px;font-size:22px;font-weight:900}
.mz .five p strong{display:inline-grid;place-items:center;width:1.7em;height:1.7em;margin:0 .12em;border-radius:6px;background:var(--red);color:#fff;font-family:var(--f-n);font-weight:700;font-size:1.4em;line-height:1;vertical-align:-.15em}
.mz .pr{padding:44px 20px 42px;text-align:center;border-bottom:1px solid var(--rule)}
.mz .pr:nth-child(even){background:var(--paper2)}
.mz .pr__no{display:flex;align-items:center;justify-content:center;gap:8px}
.mz .pr__no span{font-family:var(--f-m);font-weight:700;font-size:14px;letter-spacing:.14em;color:var(--red);border:1.5px solid var(--red);border-radius:3px;padding:1px 8px}
.mz .pr__no b{font-family:var(--f-n);font-weight:700;font-size:40px;line-height:1;color:var(--ink)}
.mz .pr__flaw{display:inline-block;margin-top:14px;font-size:19px;font-weight:900;line-height:1.45;color:#3b3b47;background:#fff;border:1px solid var(--line);padding:10px 16px;box-shadow:0 4px 10px rgba(20,20,29,.06)}
.mz .pr__so{margin-top:10px;color:var(--red);font-weight:900}
.mz .pr__so::before{content:"";display:block;width:2px;height:16px;margin:0 auto 4px;background:var(--red)}
.mz .pr__so span{display:block;font-size:15px;letter-spacing:.18em}
.mz .pr__so::after{content:"";display:block;width:0;height:0;margin:4px auto 0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:9px solid var(--red)}
.mz .pr__mid{display:inline-block;margin-top:8px;font-size:21px;font-weight:900;line-height:1.3;color:var(--ink);background:#fff;border:2px solid var(--ink);padding:6px 18px}
.mz .pr__gain{margin-top:8px}
.mz .pr__gain .g{display:block;font-size:26px;font-weight:900;line-height:1.38}
.mz .pr__gain b{color:var(--red);background:linear-gradient(transparent 72%,var(--red-l) 72%)}
.mz .fig{position:relative;height:250px;margin:24px 0 8px;text-align:left}
.mz .fig .doc{position:absolute;left:0;top:8px;width:58%;transform:rotate(-2deg)}
.mz .pr:nth-child(even) .fig .doc{transform:rotate(1.5deg)}
.mz .fig__char{position:absolute;right:-8px;bottom:0;width:44%;height:auto;filter:drop-shadow(0 6px 8px rgba(20,20,29,.12))}
.mz .pr__body{margin-top:14px;font-size:14.5px;line-height:1.85;color:var(--ink2);text-align:center}
.mz .chk li{position:relative;font-size:13.5px;font-weight:700;padding:5px 0 5px 24px;border-bottom:1px dashed #d3cab9}
.mz .chk li::before{content:"";position:absolute;left:2px;top:50%;width:14px;height:14px;margin-top:-7px;border:1.5px solid var(--ink);background:#fff}
.mz .chk li::after{content:"";position:absolute;left:6px;top:50%;width:5px;height:9px;margin-top:-7px;border-right:2.5px solid var(--red);border-bottom:2.5px solid var(--red);transform:rotate(40deg)}
.mz .kaku{position:absolute;right:-10px;bottom:-18px;display:inline-block;font-weight:900;font-size:15px;color:var(--red);border:2.5px solid var(--red);padding:3px 8px;background:rgba(255,253,248,.85);transform:rotate(-8deg);white-space:nowrap}
.mz .kaku--slant{right:auto;left:50%;bottom:auto;top:54%;font-size:22px;padding:4px 10px;transform:translate(-50%,-50%) rotate(-14deg);letter-spacing:.08em}
.mz .kin{width:100%;border-collapse:collapse;font-size:11.5px;text-align:center}
.mz .kin th{font-weight:900;text-align:left;padding:4px 2px;white-space:nowrap;font-size:11px}
.mz .kin td{padding:4px 0;border-bottom:1px dashed #d3cab9;font-weight:700}
.mz .kin tr:first-child td{color:var(--mute);font-size:10.5px;border-bottom:1.5px solid var(--ink)}
.mz .kin td.x{color:#a8a3b0}
.mz .kin tr.me th,.mz .kin tr.me td{color:var(--red);font-weight:900;background:var(--red-l)}
.mz .maru{position:absolute;right:-12px;bottom:-22px;width:54px;height:54px;border-radius:50%;border:2.5px solid var(--red);color:var(--red);display:grid;place-items:center;background:rgba(255,253,248,.85);transform:rotate(-12deg)}
.mz .maru b{font-family:var(--f-m);font-weight:700;font-size:16px;letter-spacing:.04em}
.mz .kj{display:grid;grid-template-columns:auto 1fr;font-size:13px}
.mz .kj dt{font-weight:900;padding:6px 10px 6px 2px;border-bottom:1px dashed #d3cab9;color:var(--mute)}
.mz .kj dd{font-weight:700;padding:6px 0;border-bottom:1px dashed #d3cab9}
.mz .bunt__new{font-size:11.5px;font-weight:900;color:var(--red);margin:-2px 0 6px}
.mz .bunt__new i{font-style:normal;display:inline-block}
.mz .bunt{display:flex;flex-wrap:wrap;gap:4px}
.mz .bunt li{font-size:10.5px;font-weight:700;border:1px solid #bdb5a6;border-radius:3px;padding:2px 5px;background:#fff;line-height:1.4;display:inline-flex;align-items:center;gap:3px}
.mz .bunt li i{font-style:normal;font-size:9px;font-weight:900;color:#fff;background:var(--red);border-radius:2px;padding:0 3px;line-height:1.5}
.mz .ringi li{display:flex;align-items:center;justify-content:space-between;font-size:13.5px;font-weight:700;padding:6px 2px;border-bottom:1px dashed #d3cab9}
.mz .ringi em{font-style:normal;font-family:var(--f-m);font-weight:700;font-size:12px;color:var(--red);border:1.5px solid var(--red);border-radius:50%;width:24px;height:24px;display:grid;place-items:center}
.mz .ringi .you{border-bottom:0;padding-top:8px}
.mz .ringi .you span:first-child{font-weight:900}
.mz .ringi__box{position:relative;width:52px;height:52px;border:1.5px solid var(--ink);display:grid;place-items:center;background:#fff}
.mz .ringi__in{width:42px;height:42px;border-radius:50%;border:2.5px solid var(--red);color:var(--red);font-family:var(--f-m);font-weight:700;font-size:13px;display:grid;place-items:center;transform:rotate(-10deg)}
.mz .ringi__goal{margin-top:8px;text-align:center;font-weight:900;font-size:14.5px;color:var(--red)}
.mz .must{background:var(--ink);color:#fff;text-align:center;padding-bottom:40px}
.mz .must__lead{font-size:21px;font-weight:900}
.mz .must__big{margin-top:6px;font-size:44px;font-weight:900;line-height:1.25;letter-spacing:.01em}
.mz .must__hot{display:inline-block;margin:0 .06em;padding:0 .12em;background:var(--red);color:#fff;border-radius:4px;box-shadow:inset 0 0 0 3px rgba(255,255,255,.35)}
.mz .must__stage{position:relative;height:290px;margin-top:18px}
.mz .must__back{position:absolute;left:50%;top:22px;width:210px;height:240px;margin-left:-105px;background:#2b2b38;border-radius:22px;transform:rotate(-4deg)}
.mz .must__stage img{position:absolute;left:50%;bottom:0;width:205px;transform:translateX(-50%)}
.mz .must__logo{margin:10px 0 18px}
.mz .must__logo .lg{font-size:30px}
.mz .voice{background:var(--paper)}
.mz .voice .h2 .lg{margin-bottom:4px}
.mz .slide{margin-top:26px}
.mz .cases{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -20px;padding:4px 20px 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.mz .cases::-webkit-scrollbar{display:none}
.mz .case{flex:0 0 84%;scroll-snap-align:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 14px 16px;box-shadow:0 6px 14px rgba(20,20,29,.07)}
.mz .slide__nav{display:flex;align-items:center;gap:12px;margin-top:6px}
.mz .slide__btn{flex:none;width:40px;height:40px;border:0;border-radius:4px;background:var(--ink);color:#fff;font:900 24px/1 var(--f-g, inherit);cursor:pointer;display:flex;align-items:center;justify-content:center;padding-bottom:3px}
.mz .slide__btn:active{background:var(--red)}
.mz .slide__count{flex:none;font-family:var(--f-n);font-weight:700;color:var(--ink);display:flex;align-items:baseline;gap:4px}
.mz .slide__count b{font-size:26px;color:var(--red);line-height:1}
.mz .slide__count span{font-size:14px;color:var(--mute)}
.mz .slide__bar{flex:1;height:4px;background:var(--rule);border-radius:2px;overflow:hidden}
.mz .slide__bar i{display:block;height:100%;width:33.4%;background:var(--red);transition:width .4s ease}
.mz .case__no{font-family:var(--f-m);font-weight:700;font-size:13px;letter-spacing:.12em;color:var(--red);border-bottom:2px solid var(--ink);padding-bottom:4px;margin-bottom:10px}
.mz .case__img{overflow:hidden;border-radius:6px;border:1px solid var(--rule)}
.mz .case__img img{display:block;width:100%;height:auto}
.mz .case__co{margin-top:10px;font-size:12.5px;font-weight:700;color:var(--mute)}
.mz .case__h{margin-top:2px;font-size:18px;font-weight:900;line-height:1.45}
.mz .case__amt{color:var(--red);font-size:23px;font-variant-numeric:tabular-nums}
.mz .case__body{margin-top:8px;font-size:13.5px;line-height:1.8;color:var(--ink2)}
.mz .svc{background:var(--ink);color:#fff}
.mz .svc__sub{margin-top:8px;text-align:center;font-size:15px;font-weight:700;color:#e9e6f0}
.mz .doc--svc{margin-top:22px;color:var(--ink);transform:rotate(-1deg)}
.mz .svc__list{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;padding:4px 4px}
.mz .svc__list li{position:relative;font-size:12.5px;letter-spacing:-.01em;font-weight:700;padding:7px 0 7px 22px;border-bottom:1px dashed #d3cab9;line-height:1.4}
.mz .svc__list li::before{content:"";position:absolute;left:1px;top:50%;width:13px;height:13px;margin-top:-6.5px;border:1.5px solid var(--ink);background:#fff}
.mz .svc__list li::after{content:"";position:absolute;left:5px;top:50%;width:4.5px;height:8.5px;margin-top:-6.5px;border-right:2.5px solid var(--red);border-bottom:2.5px solid var(--red);transform:rotate(40deg)}
.mz .svc__list li.etc{padding-left:2px;color:var(--mute)}
.mz .svc__list li.etc::before,.mz .svc__list li.etc::after{display:none}
.mz .price{margin-top:26px;text-align:center;border:2px solid var(--red-on-ink);border-radius:8px;padding:16px 14px}
.mz .price__main b{display:inline-block;font-size:15px;font-weight:900;background:var(--red);color:#fff;padding:2px 10px;border-radius:3px;vertical-align:middle}
.mz .price__main em{font-style:normal;display:inline-block;margin-left:8px;font-size:36px;font-weight:900;line-height:1.2;vertical-align:middle}
.mz .price__main .tax{font-size:13px;font-weight:700;vertical-align:middle}
.mz .price__note{margin-top:10px;font-size:12.5px;line-height:1.75;color:#d9d6e2}
.mz .flow{background:var(--paper)}
.mz .steps{position:relative;margin-top:26px}
.mz .steps::before{content:"";position:absolute;left:19px;top:20px;bottom:30px;border-left:2px dashed #bdb5a6}
.mz .step{position:relative;display:flex;gap:12px;align-items:flex-start;margin-top:14px}
.mz .step:first-child{margin-top:0}
.mz .step__no{flex:0 0 40px;height:40px;border-radius:50%;border:2px solid var(--ink);background:var(--paper);display:grid;place-items:center;font-family:var(--f-n);font-weight:700;font-size:16px;position:relative;z-index:1;transition:background .4s,color .4s,border-color .4s}
.mz .step__card{flex:1;background:#fff;border:1px solid var(--line);border-radius:8px;padding:11px 13px 12px}
.mz .step__ttl{font-size:16.5px;font-weight:900;line-height:1.4}
.mz .step__txt{margin-top:4px;font-size:13.5px;line-height:1.75;color:var(--ink2)}
.mz .step__txt b{color:var(--red)}
.mz .step--goal .step__card{border:2px solid var(--red);background:var(--red-l)}
.mz .step--goal .step__ttl{color:var(--red)}
.mz .step.is-on .step__no{background:var(--red);border-color:var(--red);color:#fff}
.mz .close{background:var(--ink);color:#fff;padding:52px 0 0}
.mz .close__h{font-size:29px;font-weight:900;text-align:center;line-height:1.38}
.mz .close__h .red{color:var(--red-on-ink)}
.mz .team{position:relative;display:flex;justify-content:center;align-items:flex-end;height:170px;margin-top:16px}
.mz .team img{width:86px;height:auto;margin:0 -9px;position:relative}
.mz .team .team__main{width:124px;z-index:2;margin:0 -6px -2px}
.mz .close__form{background:#fff;color:var(--ink);border-radius:14px 14px 0 0;padding:24px 18px 34px;margin-top:-2px;position:relative;z-index:3}
.mz .fm__lead{text-align:center;font-weight:900;font-size:16.5px;line-height:1.6}
.mz .fm__lead small{display:block;font-size:12px;font-weight:700;color:var(--mute);letter-spacing:.08em}
.mz .fm__unit{display:flex;flex-direction:column;gap:6px;margin-top:18px}
.mz .fm__label{font-size:15px;font-weight:900}
.mz .fm__label::after{content:"必須";display:inline-block;margin-left:8px;font-size:10.5px;font-weight:700;color:#fff;background:var(--red);border-radius:3px;padding:2px 6px;vertical-align:2px;line-height:1.3}
.mz .fm__input{width:100%;height:52px;border:1.5px solid var(--line);border-radius:6px;padding:0 14px;font-family:var(--f-g);font-size:16px;color:var(--ink);background:#fff;-webkit-appearance:none;appearance:none}
.mz .fm__input::placeholder{color:#a19c94}
.mz .fm__input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(220,38,38,.15)}
.mz .fm__select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1.5 3L5 7l3.5-4' fill='none' stroke='%2314141d' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:13px}
.mz .fm__hint{font-size:12.5px;color:var(--mute);margin-top:-2px}
.mz .form-error{display:none;font-size:12.5px;font-weight:700;color:var(--red)}
.mz .cal-loading{font-size:12.5px;color:var(--mute)}
.mz .cal-preview{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:thin}
.mz .cal-day-card{flex:0 0 124px;background:#fff;border:1.5px solid var(--ink);border-radius:8px;overflow:hidden}
.mz .cal-day-header{background:var(--ink);color:#fff;font-weight:900;font-size:13px;text-align:center;padding:5px 4px}
.mz .cal-day-slots{display:grid;gap:6px;padding:8px}
.mz .cal-slot{font-family:var(--f-n);font-weight:500;font-size:15px;padding:7px 4px;border:1.5px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);cursor:pointer}
.mz .cal-slot.selected{background:var(--red);border-color:var(--red);color:#fff}
.mz .cal-selected-label{display:none;margin-top:6px;font-weight:900;font-size:15px;color:var(--red)}
.mz .fm__submit{display:block;width:100%;min-height:58px;margin-top:24px;border:0;border-radius:6px;background:var(--red);color:#fff;font-family:var(--f-g);font-weight:900;font-size:17px;letter-spacing:.03em;box-shadow:0 4px 0 var(--red-d);cursor:pointer}
.mz .fm__submit:active{transform:translateY(2px);box-shadow:0 2px 0 var(--red-d)}
.mz .fm__submit:disabled{opacity:.7;cursor:wait}
.mz .fm__note{margin-top:10px;font-size:12px;color:var(--mute);text-align:center}
.mz .form-success{text-align:center;padding:14px 0}
.mz .form-success .check-icon{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center}
.mz .form-success .check-icon svg{width:28px;height:28px}
.mz .form-success h3{font-weight:900;font-size:22px}
.mz .form-success p{margin-top:8px;font-size:15px}
.mz .foot{background:var(--ink);color:#cfccd8;text-align:center;padding:26px 16px 96px;border-top:1px solid #2b2b38}
.mz .foot .lg{font-size:24px}
.mz .foot__links{margin:10px 0 8px}
.mz .foot__links a{font-size:12px;color:#cfccd8}
.mz .foot small{display:block;font-size:11px;line-height:1.8}
.mz .stick{position:fixed;left:50%;bottom:0;z-index:50;width:100%;max-width:var(--col);transform:translate(-50%,130%);padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px));transition:transform .45s cubic-bezier(.2,1,.3,1);pointer-events:none}
.mz .stick.is-on{transform:translate(-50%,0)}
.mz .stick .btn{pointer-events:auto;padding:15px 40px 15px 14px}
.mz .stick .btn span{font-size:17px}
@keyframes slideR{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
@keyframes wipe{to{clip-path:inset(-30% -6% -30% -6%)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes charIn{from{opacity:0;transform:translateY(34px) scale(.96)}to{opacity:1;transform:none}}
@keyframes hop{0%,76%,100%{transform:none}82%{transform:translateY(-10px)}88%{transform:none}93%{transform:translateY(-4px)}}
@keyframes rock{0%,100%{transform:rotate(5deg)}50%{transform:rotate(2deg)}}
@keyframes drop{from{opacity:0;transform:translate(-18px,-30px) rotate(-10deg)}to{opacity:1;transform:rotate(-2deg)}}
@keyframes thud{0%,100%{transform:rotate(-2deg)}35%{transform:rotate(-2deg) translateY(3px) scale(.985)}}
@keyframes press{0%{opacity:0;transform:rotate(-14deg) scale(1.3)}60%{opacity:1;transform:rotate(-14deg) scale(.9)}100%{opacity:1;transform:rotate(-14deg) scale(1)}}
@keyframes ping{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(1.15)}}
@keyframes ripple{0%{box-shadow:0 0 0 0 rgba(220,38,38,.6)}70%,100%{box-shadow:0 0 0 14px rgba(220,38,38,0)}}
@keyframes nudge{0%,100%{transform:translateY(-50%) translateX(0) rotate(45deg)}50%{transform:translateY(-50%) translateX(5px) rotate(45deg)}}
@keyframes stampIn{0%{opacity:0;transform:var(--t0)}60%{opacity:1;transform:var(--t1)}100%{opacity:1;transform:var(--t2)}}
@keyframes chipIn{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@keyframes sway{0%,100%{transform:rotate(0)}50%{transform:rotate(-2deg)}}
@media (prefers-reduced-motion:no-preference){.mz .lead{animation:slideR .45s cubic-bezier(.2,.9,.2,1) .05s both}
.mz h1 .l1,.mz h1 .l2,.mz h1 .l3{clip-path:inset(-30% 102% -30% -6%);animation:wipe .5s cubic-bezier(.65,0,.25,1) forwards}
.mz h1 .l1{animation-delay:.2s}
.mz h1 .l2{animation-delay:.42s}
.mz h1 .l3{animation-delay:.68s}
.mz .w{background-size:0 100%;animation:mark .5s cubic-bezier(.6,0,.3,1) 1.05s forwards}
.mz .panel{animation:panelIn .5s cubic-bezier(.2,.9,.3,1.1) .3s both}
.mz .rays{animation:breathe 5s ease-in-out 1s infinite}
.mz .kira{animation:twinkle 2.6s ease-in-out var(--d) infinite;scale:0}
.mz .mem{animation:charIn .55s cubic-bezier(.2,.9,.2,1) backwards}
.mz .mem--kei{animation-delay:.5s}
.mz .mem--sup{animation-delay:.68s}
.mz .mem--eig{animation-delay:.8s}
.mz .mem--dat{animation-delay:.92s}
.mz .mem.is-act img{animation:jump .55s cubic-bezier(.3,1.5,.5,1)}
.mz .fuki{transform-origin:50% 120%}
.mz .fuki--l{transform-origin:34px 120%}
.mz .fuki--r{transform-origin:calc(100% - 34px) 120%}
.mz .fuki.is-on{animation:fukiPop .42s cubic-bezier(.3,1.6,.5,1) .1s both}
.mz .fuki.is-off{animation:fukiOut .16s ease-in forwards}
.mz .sd__crew img{animation:jump2 3.2s ease-in-out infinite}
.mz .sd__crew img:nth-child(2){animation-delay:.8s}
.mz .sd__crew img:nth-child(3){animation-delay:1.6s}
.mz .sd__crew img:nth-child(4){animation-delay:2.4s}
.mz .sd__rays{animation:breathe 5s ease-in-out infinite}
.mz .stage__tag{animation:chipIn .35s cubic-bezier(.3,1.4,.5,1) 1.3s both}
.mz .ctaband .btn::before{animation-name:rippleY}
.mz .sheet{animation:drop .5s cubic-bezier(.2,.9,.3,1.1) .95s both,thud .28s ease-out 2.42s}
.mz .sheet .ln i{clip-path:inset(-20% 102% -20% -4%);animation:wipe .36s steps(7,end) forwards}
.mz .sheet .ln:nth-child(1) i{animation-delay:1.4s}
.mz .sheet .ln:nth-child(2) i{animation-delay:1.72s}
.mz .sheet .ln:nth-child(3) i{animation-delay:2.0s}
.mz .hanko{animation:press .42s cubic-bezier(.3,1.4,.5,1) 2.35s both}
.mz .hanko::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--red);opacity:0;animation:ping .7s ease-out 2.6s}
.mz .btn::before{content:"";position:absolute;inset:0;border-radius:6px;animation:ripple 2.4s ease-out 3s infinite}
.mz .btn::after{animation:nudge 1.2s ease-in-out 3s infinite}
.js .mz .rv{opacity:0;transform:translateX(-16px);transition:opacity .55s ease,transform .6s cubic-bezier(.2,.9,.2,1)}
.js .mz .rv.is-in{opacity:1;transform:none}
.js .mz .ids .idc{transform:rotateY(-80deg);transform-origin:left center;transition:opacity .5s ease,transform .7s cubic-bezier(.2,.9,.3,1.05)}
.js .mz .ids .idc:nth-child(2){transition-delay:.12s}
.js .mz .ids .idc:nth-child(3){transition-delay:.24s}
.js .mz .ids .idc:nth-child(4){transition-delay:.36s}
.js .mz .ids .idc.is-in{transform:none}
.js .mz .pr__gain.rv{transform:scale(.9)}
.js .mz .pr__gain.rv.is-in{transform:none;transition:opacity .4s ease,transform .5s cubic-bezier(.3,1.5,.5,1)}
.js .mz .fig.rv{transform:none}
.js .mz .fig.rv .doc{opacity:0;transition:opacity .4s ease .05s}
.js .mz .fig.rv.is-in .doc{opacity:1;animation:docDrop .55s cubic-bezier(.2,.9,.3,1.1) both}
.js .mz .fig.rv .fig__char{opacity:0;transform:translateY(24px);transition:opacity .5s ease .25s,transform .6s cubic-bezier(.2,.9,.2,1) .25s}
.js .mz .fig.rv.is-in .fig__char{opacity:1;transform:none}
.js .mz .fig .kaku,.js .mz .fig .maru{opacity:0}
.js .mz .fig.is-in .kaku{--t0:rotate(-8deg) scale(2);--t1:rotate(-8deg) scale(.92);--t2:rotate(-8deg) scale(1);animation:stampIn .4s cubic-bezier(.3,1.4,.5,1) .75s both}
.js .mz .fig.is-in .kaku--slant{--t0:translate(-50%,-50%) rotate(-14deg) scale(2);--t1:translate(-50%,-50%) rotate(-14deg) scale(.92);--t2:translate(-50%,-50%) rotate(-14deg) scale(1)}
.js .mz .fig.is-in .maru{--t0:rotate(-12deg) scale(2);--t1:rotate(-12deg) scale(.9);--t2:rotate(-12deg) scale(1);animation:stampIn .4s cubic-bezier(.3,1.4,.5,1) .75s both}
.js .mz .fig .ringi__in{opacity:0}
.js .mz .fig.is-in .ringi__in{--t0:rotate(-10deg) scale(2.2);--t1:rotate(-10deg) scale(.9);--t2:rotate(-10deg) scale(1);animation:stampIn .4s cubic-bezier(.3,1.4,.5,1) .85s both}
.js .mz .fig .bunt li{opacity:0}
.js .mz .fig.is-in .bunt li{animation:chipIn .3s cubic-bezier(.3,1.4,.5,1) both;animation-delay:calc(.45s + var(--i,0) * .07s)}
.js .mz .must__hot{display:inline-block}
.js .mz .must__big.rv{transform:none}
.js .mz .must__big .must__hot{opacity:0}
.js .mz .must__big.is-in .must__hot{--t0:rotate(-6deg) scale(2.2);--t1:rotate(-3deg) scale(.92);--t2:rotate(-3deg) scale(1);animation:stampIn .45s cubic-bezier(.3,1.4,.5,1) .35s both}
.mz .must__back{animation:rock2 7s ease-in-out infinite}
.mz .team .team__main{animation:sway 5s ease-in-out infinite;transform-origin:50% 100%}
.js .mz .ids__more.rv b{background-size:0 100%;background-repeat:no-repeat}
.js .mz .ids__more.is-in b{animation:mark .5s cubic-bezier(.6,0,.3,1) .45s forwards}
.js .mz .ids .idc.is-in{animation:idUp 6s ease-in-out 1.2s infinite}
.js .mz .ids .idc.is-in:nth-child(2){animation-delay:2.7s}
.js .mz .ids .idc.is-in:nth-child(3){animation-delay:4.2s}
.js .mz .ids .idc.is-in:nth-child(4){animation-delay:5.7s}
.mz .five.is-in p strong{animation:thump 2.8s ease-in-out .8s infinite}
.mz .pr__so.is-in::after{animation:drip 1.5s ease-in-out infinite}
.js .mz .fig.is-in .fig__char{animation:hop2 4.4s ease-in-out 1.6s infinite}
.mz .pr:nth-child(2) .fig.is-in .fig__char{animation-delay:2.3s}
.mz .pr:nth-child(3) .fig.is-in .fig__char{animation-delay:1.9s}
.mz .pr:nth-child(4) .fig.is-in .fig__char{animation-delay:2.6s}
.mz .pr:nth-child(5) .fig.is-in .fig__char{animation-delay:2.1s}
.js .mz .fig.is-in .kaku{animation:stampIn .4s cubic-bezier(.3,1.4,.5,1) .75s both,repress 4.8s ease-in-out 1.4s infinite}
.js .mz .fig.is-in .maru{animation:stampIn .4s cubic-bezier(.3,1.4,.5,1) .75s both,repress 4.8s ease-in-out 1.4s infinite}
.js .mz .fig.is-in .ringi__in{animation:stampIn .4s cubic-bezier(.3,1.4,.5,1) .85s both,repress 4.8s ease-in-out 1.6s infinite}
.js .mz .fig.is-in .chk li::after{animation:tickIn .25s cubic-bezier(.3,1.6,.5,1) both}
.js .mz .fig.is-in .chk li:nth-child(1)::after{animation-delay:.55s}
.js .mz .fig.is-in .chk li:nth-child(2)::after{animation-delay:.7s}
.js .mz .fig.is-in .chk li:nth-child(3)::after{animation-delay:.85s}
.js .mz .fig.is-in .chk li:nth-child(4)::after{animation-delay:1s}
.mz .fig.is-in .kin tr.me td{animation:lit 3s ease-in-out 1.2s infinite}
.mz .fig.is-in .kin tr.me td:nth-child(3){animation-delay:1.4s}
.mz .fig.is-in .kin tr.me td:nth-child(4){animation-delay:1.6s}
.mz .fig.is-in .kin tr.me td:nth-child(5){animation-delay:1.8s}
.mz .fig.is-in .kin tr.me td:nth-child(6){animation-delay:2s}
.mz .fig.is-in .bunt__new i{animation:beat 1.2s ease-in-out infinite}
.mz .fig.is-in .bunt li i{animation:wig 3.6s ease-in-out 1.4s infinite}
.mz .fig.is-in .bunt li:nth-child(3) i{animation-delay:2.6s}
.mz .fig.is-in .bunt li:nth-child(8) i{animation-delay:3.8s}
.js .mz .must__big.is-in .must__hot{animation:stampIn .45s cubic-bezier(.3,1.4,.5,1) .35s both,thump 2.6s ease-in-out 1.4s infinite}
.mz .must__stage img{animation:hop2 3.8s ease-in-out 1s infinite}
.mz .case.is-cur .case__img img{animation:zoomSlow 5s ease-out both}
.mz .doc--svc.is-in .svc__list li:not(.etc){animation:scan 6s ease-in-out .6s infinite}
.mz .doc--svc.is-in .svc__list li:not(.etc)::after{animation:tickP 6s ease-in-out .6s infinite}
.mz .doc--svc.is-in .svc__list li:nth-child(2),.mz .doc--svc.is-in .svc__list li:nth-child(2)::after{animation-delay:0.90s}
.mz .doc--svc.is-in .svc__list li:nth-child(3),.mz .doc--svc.is-in .svc__list li:nth-child(3)::after{animation-delay:1.20s}
.mz .doc--svc.is-in .svc__list li:nth-child(4),.mz .doc--svc.is-in .svc__list li:nth-child(4)::after{animation-delay:1.50s}
.mz .doc--svc.is-in .svc__list li:nth-child(5),.mz .doc--svc.is-in .svc__list li:nth-child(5)::after{animation-delay:1.80s}
.mz .doc--svc.is-in .svc__list li:nth-child(6),.mz .doc--svc.is-in .svc__list li:nth-child(6)::after{animation-delay:2.10s}
.mz .doc--svc.is-in .svc__list li:nth-child(7),.mz .doc--svc.is-in .svc__list li:nth-child(7)::after{animation-delay:2.40s}
.mz .doc--svc.is-in .svc__list li:nth-child(8),.mz .doc--svc.is-in .svc__list li:nth-child(8)::after{animation-delay:2.70s}
.mz .doc--svc.is-in .svc__list li:nth-child(9),.mz .doc--svc.is-in .svc__list li:nth-child(9)::after{animation-delay:3.00s}
.mz .doc--svc.is-in .svc__list li:nth-child(10),.mz .doc--svc.is-in .svc__list li:nth-child(10)::after{animation-delay:3.30s}
.mz .price.is-in em{animation:thump 3s ease-in-out 1s infinite}
.mz .steps::after{content:"";position:absolute;left:14px;top:20px;width:12px;height:12px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(220,38,38,.18);animation:travel 5s ease-in-out infinite}
.mz .step--goal.is-on .step__card{animation:ripple 2.4s ease-out .4s infinite}
.mz .team img:not(.team__main){animation:hop2 3.4s ease-in-out infinite}
.mz .team img:nth-child(2){animation-delay:.85s}
.mz .team img:nth-child(4){animation-delay:1.7s}
.mz .is-away,.mz .is-away *,.mz .is-away *::before,.mz .is-away *::after{animation-play-state:paused!important}}
@keyframes mark{to{background-size:100% 100%}}
@keyframes panelIn{from{opacity:0;transform:scale(.92) rotate(-1.5deg)}to{opacity:1;transform:none}}
@keyframes breathe{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes twinkle{0%,100%{scale:0;rotate:0deg}18%{scale:1.15;rotate:45deg}34%{scale:.9}50%{scale:0;rotate:90deg}}
@keyframes jump{0%{transform:none}35%{transform:translateY(-12px)}70%{transform:translateY(1px)}100%{transform:none}}
@keyframes jump2{0%,22%,100%{transform:none}8%{transform:translateY(-12px)}15%{transform:translateY(1px)}}
@keyframes fukiPop{0%{opacity:0;scale:.3}100%{opacity:1;scale:1}}
@keyframes fukiOut{from{opacity:1;scale:1}to{opacity:0;scale:.7}}
@keyframes rippleY{0%{box-shadow:0 0 0 0 rgba(255,210,63,.7)}70%,100%{box-shadow:0 0 0 14px rgba(255,210,63,0)}}
@keyframes docDrop{from{opacity:0;transform:translate(-14px,-24px) rotate(-9deg)}to{opacity:1}}
@keyframes rock2{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(-1.5deg)}}
@keyframes idUp{0%,16%,100%{translate:0 0;rotate:0deg}6%{translate:0 -8px;rotate:-1.5deg}11%{translate:0 1px;rotate:.4deg}}
@keyframes thump{0%,70%,100%{scale:1}76%{scale:1.14}82%{scale:.97}88%{scale:1.04}}
@keyframes drip{0%,100%{translate:0 0;opacity:1}50%{translate:0 6px;opacity:.55}}
@keyframes hop2{0%,70%,100%{translate:0 0}77%{translate:0 -12px}84%{translate:0 0}89%{translate:0 -4px}94%{translate:0 0}}
@keyframes repress{0%,84%,100%{scale:1}89%{scale:1.16}94%{scale:.96}}
@keyframes tickIn{from{opacity:0;scale:0}to{opacity:1;scale:1}}
@keyframes lit{0%,26%,100%{background:var(--red-l);color:var(--red)}10%{background:var(--red);color:#fff}}
@keyframes beat{0%,100%{scale:1;opacity:1}50%{scale:.55;opacity:.4}}
@keyframes wig{0%,80%,100%{rotate:0deg}85%{rotate:-14deg}90%{rotate:11deg}95%{rotate:-5deg}}
@keyframes zoomSlow{from{scale:1}to{scale:1.05}}
@keyframes scan{0%,12%,100%{background:transparent}4%{background:rgba(255,210,63,.6)}}
@keyframes tickP{0%,12%,100%{scale:1}4%{scale:1.4}}
@keyframes travel{0%{top:20px;opacity:0}8%,90%{opacity:1}100%{top:calc(100% - 42px);opacity:0}}
@media (prefers-reduced-motion:reduce){.mz .fuki.is-on{opacity:1}
.mz .kira{scale:1}}
.mz .hero{position:relative}
.mz .hero__in{max-width:1200px;margin:0 auto;padding:20px 18px 0}
.mz .hero__h1{margin-top:12px;font-weight:900;line-height:1.12;letter-spacing:.01em}
.mz .hero__h1 .l1{display:block;font-size:min(36px,9.2vw)}
.mz .hero__h1 .l2{display:block;white-space:nowrap;font-size:min(60px,15vw);color:var(--red);letter-spacing:-.02em;margin:4px 0 2px -6px}
.mz .hero__h1 .l2 .w{color:var(--red)}
.mz .hero__h1 .l3{display:block;font-size:min(44px,11vw)}
.mz .hero__sub{margin-top:14px;font-size:15px;font-weight:700;line-height:1.8;color:var(--ink2)}
.mz .hero__sub b{color:var(--red);font-weight:900}
.mz .hero__chips{margin-top:14px;display:flex;flex-direction:column;gap:7px}
.mz .hero__chips li{position:relative;background:var(--sheet);border:1px solid var(--line);border-left:5px solid var(--red);padding:7px 12px 7px 34px;font-size:14px;font-weight:700;box-shadow:0 3px 0 rgba(20,20,29,.06)}
.mz .hero__chips li::before{content:"✓";position:absolute;left:9px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;background:var(--red);color:#fff;font-size:11px;display:grid;place-items:center;font-weight:900}
.mz .hero__chips b{color:var(--red);font-weight:900;margin-left:.3em}
.mz .hero__in{display:flex;flex-direction:column}
.mz .hero__copy{display:contents}
.mz .hero__copy .lead{order:1;align-self:flex-start}
.mz .hero__h1{order:2}
.mz .hero__art{order:3}
.mz .hero__sub{order:4}
.mz .hero__chips{order:5}
.mz .hero__cta{order:6}
.mz .hero__cta{margin:16px -18px 0;background:var(--ink);padding:14px 16px 16px;text-align:center}
.mz .hero__cta .hero__link{color:#fff}
.mz .hero__link{display:inline-block;margin-top:12px;font-size:14px;font-weight:900;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:2px}
.mz .hero__link::after{content:" →";color:var(--red)}
.mz .hero__art{margin-top:6px}
.mz .hero .stage{margin:10px -4px 0}
.mz .btn--y{background:var(--yel);color:var(--ink);box-shadow:0 4px 0 var(--yel-d)}
.mz .btn--y::after{border-color:var(--ink)}
.mz .proof{margin-top:14px;background:var(--ink);color:#fff;padding:18px 16px 20px}
.mz .proof__ttl{text-align:center;font-weight:900;font-size:15px;letter-spacing:.04em}
.mz .proof__ttl::before,.mz .proof__ttl::after{content:"＼";color:var(--yel);margin:0 .4em}
.mz .proof__ttl::after{content:"／"}
.mz .proof__list{max-width:1200px;margin:12px auto 0;display:grid;gap:8px}
.mz .proof__list li{background:#fff;color:var(--ink);border-radius:8px;padding:10px 14px;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;border-top:4px solid var(--red)}
.mz .proof__list small{width:100%;font-size:12.5px;font-weight:700;color:var(--ink2)}
.mz .proof__list b{font-weight:900;font-size:16px}
.mz .proof__list b em{font-style:normal;font-family:var(--f-n);font-size:34px;color:var(--red);margin:0 2px;line-height:1}
.mz .proof__list span{font-weight:900;font-size:15px}
.mz .hero__in + .proof{margin-top:0}
@media (min-width:1024px){.mz .hero__copy{display:block}
.mz .hero__cta{margin:22px 0 0;background:none;padding:0;text-align:left}
.mz .hero__cta .hero__link{color:var(--ink)}
.mz .hero__in{display:grid;grid-template-columns:1fr 520px;gap:40px;align-items:center;padding:44px 32px 36px}
.mz .hero__h1 .l1{font-size:44px}
.mz .hero__h1 .l2{font-size:84px}
.mz .hero__h1 .l3{font-size:58px}
.mz .hero__sub{font-size:17px;margin-top:20px}
.mz .hero__chips{flex-direction:row;flex-wrap:wrap;gap:8px}
.mz .hero__chips li{font-size:13.5px}
.mz .hero__cta{display:flex;align-items:center;gap:22px;margin-top:22px}
.mz .hero__cta .btn{width:330px}
.mz .hero__link{margin-top:0}
.mz .hero__art{margin-top:0}
.mz .hero .stage{height:528px;margin:0}
.mz .hero .fuki{font-size:14px}
.mz .hero .sheet{left:18px;top:18px;width:184px;padding:14px 14px 14px}
.mz .hero .sheet p{font-size:19px}
.mz .hero .hanko{width:80px;height:80px}
.mz .proof{padding:22px 32px 26px}
.mz .proof__list{grid-template-columns:repeat(3,1fr);gap:16px}
.mz .proof__list li{padding:12px 18px}}
.mz .nw{white-space:nowrap}
/* 「まだ」のLPから足した段（.mz の箱の中）を、サービスサイトの広い画面で並べる上書き */
.mz{background:transparent;background-image:none;line-height:1.6}
/* 最初の画面: 今のトップの見出し（言葉が長い）に合わせて字の大きさだけ替える */
.mz .hero__h1 .l1{font-size:min(30px,7.6vw)}
.mz .hero__h1 .l2{font-size:min(40px,10vw);margin:6px 0 4px -2px}
.mz .hero__h1 .l3{font-size:min(34px,8.6vw)}
.mz .hero__h1 .w i{font-style:normal}
.mz .hero__sub{font-size:14.5px}
.mz .hero__sub b{color:var(--red)}
.mz .hero__cta .btn small{font-size:13px}
.mz .hero__cta .btn span{font-size:19px}
.mz .hero .lead{font-size:13px}
.mz .fv-kpis{max-width:1200px;margin:0 auto;padding:14px 18px 0}
.mz .fv-kpis .kpis{margin-top:0;grid-template-columns:repeat(2,1fr)}
.mz .fv-kpis .kpi{padding:14px 12px}
.mz .fv-kpis .kpi .n{font-size:28px}
.mz .fv-kpis .kpi .l{margin-top:6px;font-size:11.5px;line-height:1.5}
.mz .proof{margin-top:18px}
/* 段の共通 */
.mz .ttl2{font-size:27px;font-weight:900;text-align:center;line-height:1.4}
.mz .ttl2 .lg{font-size:1.05em;margin-right:.1em}
.mz .must .btn,.mz .ctaband .btn{max-width:420px;margin-left:auto;margin-right:auto}
.mz .pr__txt{display:block}
@media (min-width:1024px){
  .mz .fv-kpis{padding:0 32px}
  .mz .fv-kpis .kpis{grid-template-columns:repeat(4,1fr)}
  .mz .fv-kpis .kpi{padding:16px 20px}
  .mz .fv-kpis .kpi .n{font-size:34px}
  .mz .hero__h1 .l1{font-size:40px}
  .mz .hero__h1 .l2{font-size:64px}
  .mz .hero__h1 .l3{font-size:52px}
  .mz .hero__sub{font-size:16px}
  .mz .hero__cta .btn{width:400px}
  .mz .hero__cta .btn span{font-size:21px}
  .mz .sec{padding:80px max(32px,calc((100% - 1120px)/2))}
  .mz .h2,.mz .ttl2{font-size:40px}
  /* とは: 社員証を4枚横に */
  .mz .memo{max-width:440px;margin-top:26px}
  .mz .memo__ln{font-size:26px}
  .mz .ids{grid-template-columns:repeat(4,1fr);gap:22px;max-width:1000px;margin:40px auto 0}
  .mz .idc__ph{height:230px}
  .mz .idc__tag{font-size:18px}
  .mz .idc__job{font-size:14px}
  .mz .ids__more{font-size:19px;margin-top:28px}
  /* なぜ・5つの約束: 左に言葉、右に書類の図（偶数は左右を入れ替え） */
  .mz .why{padding-top:72px;padding-bottom:64px}
  .mz .five .lg{font-size:40px}
  .mz .five p{font-size:30px}
  .mz .pr{display:grid;grid-template-columns:1fr 460px;grid-template-areas:"t f" "b f";column-gap:64px;row-gap:0;align-items:center;padding:64px max(32px,calc((100% - 1080px)/2))}
  .mz .pr:nth-child(even){grid-template-columns:460px 1fr;grid-template-areas:"f t" "f b"}
  .mz .pr__txt{grid-area:t;align-self:end}
  .mz .pr .fig{grid-area:f}
  .mz .pr__body{grid-area:b;align-self:start}
  .mz .pr .fig{height:330px;margin:0}
  .mz .pr__gain .g{font-size:32px}
  .mz .pr__flaw{font-size:21px}
  .mz .pr__body{font-size:16px}
  /* 必須の帯 */
  .mz .must{padding-top:72px}
  .mz .must__big{font-size:60px}
  /* 導入実績: AIKATA の実例8つを2列（1200px からは4列）に並べる（めくる線は使わない） */
  .mz .slide{max-width:1120px;margin:34px auto 0}
  .mz .cases{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;overflow:visible;margin:0;padding:0}
  .mz .case{flex:none;padding:18px 18px 20px}
  .mz .slide__nav{display:none}
  .mz .case__h{font-size:19px}
  .mz .case__amt{font-size:27px}
  .mz .case__body{font-size:14px}
}
/* スマホ: 最初の画面の小見出しが1字だけ次の行へ落ちないように */
@media (max-width:1023px){.mz .hero .lead{font-size:min(13px,3.15vw);letter-spacing:0}}
/* 導入実績: AIKATA の実例8つ（11/9）。絵は会社のトップと同じ立ち絵を切らずに全身で */
.mz .case__lead{max-width:760px;margin:12px auto 0;text-align:center;font-size:13.5px;line-height:1.85;color:var(--ink2)}
.mz .case--char .case__img{aspect-ratio:540/323;background:linear-gradient(180deg,var(--paper2),#fff)}
.mz .case--char .case__img img{width:100%;height:100%;object-fit:contain;object-position:center bottom;padding-top:10px}
.mz .case__sub{font-size:13px;font-weight:700;color:var(--mute);margin-left:6px;letter-spacing:.02em}
@media (min-width:1200px){
  .mz .cases{grid-template-columns:repeat(4,1fr);gap:16px}
  .mz .case{padding:14px 14px 16px}
  .mz .case__h{font-size:15.5px}
  .mz .case__amt{font-size:24px}
  .mz .case__sub{font-size:12px;margin-left:4px}
  .mz .case__body{font-size:13px}
}
