/* AI社員AIKATA 広告LP（11/7 新しい見た目）: 公式サイトの赤×墨色・紙の書類・斜体なし */
:root{
  --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;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:auto}
html,body{background:#e9e5dd}
body{font-family:var(--f-g);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.6}
img{max-width:100%;height:auto}
ul,ol{list-style:none}
a{color:inherit}
.page{max-width:var(--col);margin:0 auto;background:var(--paper);min-height:100vh;overflow:hidden;position:relative}
@media (min-width:600px){.page{box-shadow:0 0 0 1px rgba(20,20,29,.06),0 20px 60px rgba(20,20,29,.12)}}

/* ロゴ: 白い頭・1段・斜体なし */
.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}
.logo{display:flex;align-items:baseline;gap:6px;text-decoration:none;color:var(--ink)}
.logo b{font-weight:900;font-size:13px;letter-spacing:.04em}
.logo strong{font-weight:900;font-size:21px;letter-spacing:.06em}
.logo strong i{font-style:normal;color:var(--red)}
.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}
.lg{display:inline-flex;align-items:baseline;gap:.25em;white-space:nowrap}
.lg b{font-weight:900;font-size:.5em;letter-spacing:.04em}
.lg strong{font-weight:900;letter-spacing:.05em;border-bottom:.08em solid var(--red);line-height:1.1}
.lg--w{color:#fff}

/* ボタン */
.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}
.btn small{display:block;font-size:12.5px;font-weight:700;opacity:.92;letter-spacing:.06em}
.btn span{display:block;font-size:22px;letter-spacing:.05em;line-height:1.3}
.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)}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--red-d)}

/* ===== 最初の画面 ===== */
.fv__in{position:relative;padding:20px 18px 0}
.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}
h1{margin-top:12px;font-weight:900;line-height:1.12;letter-spacing:.01em}
h1 .l1{display:block;font-size:min(35px,9vw)}
h1 .l2{display:block;white-space:nowrap;font-size:min(57px,14.4vw);color:var(--red);letter-spacing:-.02em;margin:4px 0 2px -6px}
h1 .l3{display:block;font-size:min(42px,10.8vw)}
/* 赤い板の上で、AI社員4人がそれぞれの業務をこなす（吹き出しが順に出る） */
.stage{position:relative;height:min(408px,104.6vw);margin:10px -4px 0}
.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)}
.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%)}
.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%)}
.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%)}
.kira:nth-of-type(even){background:#fff}
.floor{position:absolute;left:-10%;right:-10%;bottom:-38px;height:84px;border-radius:50%;background:rgba(80,8,8,.32)}
.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}
.sheet::before{content:"";position:absolute;inset:5px;border:1px solid var(--rule);pointer-events:none}
.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}
.sheet p{font-size:16px;font-weight:900;line-height:1.5;margin:0 4px;letter-spacing:-.01em}
.sheet p b{color:var(--red)}
.sheet .ln{display:block;border-bottom:1px dashed #d3cab9;padding:3px 0;white-space:nowrap}
.sheet .ln i{font-style:normal;display:inline-block}
.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}
.hanko b{font-family:var(--f-m);font-weight:700;font-size:22px;line-height:1;letter-spacing:.05em}
.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}
.ctaband{background:var(--ink);padding:14px 16px 16px;text-align:center;position:relative;z-index:3}
.ctaband .btn{background:var(--yel);color:var(--ink);box-shadow:0 4px 0 var(--yel-d)}
.ctaband .btn::after{border-color:var(--ink)}
.ctaband .btn:active{box-shadow:0 2px 0 var(--yel-d)}
.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%}

.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.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)}
.stage__tag::after{content:" ▼";font-size:8px;vertical-align:1px}
.crew{position:absolute;inset:0;z-index:2}
.mem{position:absolute;bottom:0}
.mem img{position:relative;display:block;width:100%;height:auto;filter:drop-shadow(0 6px 6px rgba(60,8,8,.28))}
.mem--sup{left:-2%;width:28%}.mem--sup img{z-index:1}
.mem--eig{left:17%;width:28%}.mem--eig img{z-index:2}
.mem--dat{left:36%;width:28%}.mem--dat img{z-index:1}
.mem--kei{right:-3%;width:51%}.mem--kei img{z-index:3}
.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}
.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}
.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)}
.fuki--l{left:4px;transform:none}.fuki--l::after{left:34px}
.fuki--r{left:auto;right:4px;transform:none}.fuki--r::after{left:auto;right:30px}
.mem--kei .fuki{bottom:calc(100% - 14px)}
.mem--dat .fuki--r{right:14px}
.fuki.is-on{opacity:1}
.more{margin:10px 2px 12px;text-align:center;font-size:13px;font-weight:800;color:var(--ink2)}
.more b{color:var(--red);background:linear-gradient(transparent 60%,rgba(255,210,63,.75) 60%)}
.ids__more{margin-top:18px;text-align:center;font-size:15px;font-weight:900;line-height:1.6;color:var(--ink)}
.ids__more b{color:var(--red);background:linear-gradient(transparent 62%,rgba(255,210,63,.7) 62%)}

/* ===== パソコンの左右（1024px から） ===== */
.side{display:none}
@media (min-width:1024px){
  html,body{background:#efe9de}
  body{background-image:radial-gradient(rgba(220,38,38,.14) 1.3px,transparent 1.7px);background-size:20px 20px}
  .shell{display:grid;grid-template-columns:1fr var(--col) 1fr;min-height:100vh}
  .shell .page{margin:0;box-shadow:0 0 0 1px rgba(20,20,29,.06),0 24px 70px rgba(20,20,29,.16)}
  .side{display:flex;position:sticky;top:0;height:100vh;flex-direction:column;justify-content:center;padding:40px clamp(22px,3vw,60px)}
  .side--l{align-items:flex-end;gap:18px}
  .side--r{align-items:flex-start}
  .stick{display:none}
}
.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)}
.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))}
.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%)}
.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)}
.sd__logo b{font-weight:900;font-size:13px;letter-spacing:.04em}
.sd__logo strong{font-weight:900;font-size:22px;letter-spacing:.06em;line-height:1.2}
.sd__catch{position:relative;margin-top:14px;font-weight:900;font-size:clamp(22px,2vw,28px);line-height:1.35}
.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)}
.sd__crew{position:relative;display:flex;align-items:flex-end;justify-content:center;margin:14px -8px 0;height:150px}
.sd__crew img{width:25%;height:auto;margin:0 -2.5%;filter:drop-shadow(0 6px 6px rgba(60,8,8,.28))}
.sd__crew img:nth-child(3){width:33%;position:relative;z-index:2}
.sd__btn{width:min(330px,100%);background:var(--yel);color:var(--ink);box-shadow:0 4px 0 var(--yel-d)}
.sd__btn::after{border-color:var(--ink)}
.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)}
.toc::before{content:"";position:absolute;inset:5px;border:1px solid var(--rule);pointer-events:none}
.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}
.toc__list{position:relative;padding-left:4px}
.toc__list::before,.toc__list::after{content:"";position:absolute;left:15px;top:10px;width:2px;bottom:10px;background:var(--rule)}
.toc__list::after{background:var(--red);bottom:auto;height:calc((100% - 20px) * var(--p,0));transition:height .4s cubic-bezier(.2,.9,.3,1)}
.toc__list li{position:relative;z-index:1}
.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}
.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}
.toc__list .is-past a span{border-color:var(--red);color:var(--red)}
.toc__list .is-on a{color:var(--ink)}
.toc__list .is-on a span{background:var(--red);border-color:var(--red);color:#fff;transform:scale(1.15)}
.toc__list a:hover{color:var(--red)}

/* ===== 段の共通 ===== */
.sec{padding:56px 20px}
.h2{font-size:27px;font-weight:900;line-height:1.38;text-align:center;letter-spacing:.01em}
.red{color:var(--red)}
.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}
.doc::before{content:"";position:absolute;inset:5px;border:1px solid var(--rule);pointer-events:none}
.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}

/* ===== とは ===== */
.about{background:var(--paper)}
.ttl2{font-size:30px;font-weight:900;text-align:center;line-height:1.3}
.ttl2 .lg{font-size:1.15em;margin-right:.1em}
.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)}
.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}
.memo__ln:last-child{border-bottom:0}
.memo__ln b{color:var(--red)}
.ids{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;margin-top:30px;perspective:900px}
.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}
.idc__top{position:relative;height:28px;background:var(--c);display:flex;align-items:center;padding-left:10px}
.idc__top span{font-weight:900;font-size:11px;letter-spacing:.12em;color:#fff}
.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}
.idc__ph{height:150px;overflow:hidden;background:#f3efe7;border-bottom:1px solid var(--rule);position:relative}
.idc__ph img{position:absolute;left:50%;top:4px;width:112%;max-width:none;transform:translateX(-50%)}
.idc__tag{margin-top:9px;font-size:15px;font-weight:900;color:var(--c);line-height:1.3}
.idc__job{font-size:12px;font-weight:700;color:var(--ink2);margin-top:2px;padding:0 6px;line-height:1.45}

/* ===== なぜ ===== */
.why{background:var(--ink);color:#fff;padding-bottom:50px}
.why .q{color:var(--red-on-ink)}
.five{margin-top:22px;text-align:center}
.five .lg{font-size:30px}
.five p{margin-top:10px;font-size:22px;font-weight:900}
.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}

/* ===== 約束5つ ===== */
.pr{padding:44px 20px 42px;text-align:center;border-bottom:1px solid var(--rule)}
.pr:nth-child(even){background:var(--paper2)}
.pr__no{display:flex;align-items:center;justify-content:center;gap:8px}
.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}
.pr__no b{font-family:var(--f-n);font-weight:700;font-size:40px;line-height:1;color:var(--ink)}
.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)}
.pr__so{margin-top:10px;color:var(--red);font-weight:900}
.pr__so::before{content:"";display:block;width:2px;height:16px;margin:0 auto 4px;background:var(--red)}
.pr__so span{display:block;font-size:15px;letter-spacing:.18em}
.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)}
.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}
.pr__gain{margin-top:8px}
.pr__gain .g{display:block;font-size:26px;font-weight:900;line-height:1.38}
.pr__gain b{color:var(--red);background:linear-gradient(transparent 72%,var(--red-l) 72%)}
.fig{position:relative;height:250px;margin:24px 0 8px;text-align:left}
.fig .doc{position:absolute;left:0;top:8px;width:58%;transform:rotate(-2deg)}
.pr:nth-child(even) .fig .doc{transform:rotate(1.5deg)}
.fig__char{position:absolute;right:-8px;bottom:0;width:44%;height:auto;filter:drop-shadow(0 6px 8px rgba(20,20,29,.12))}
.pr__body{margin-top:14px;font-size:14.5px;line-height:1.85;color:var(--ink2);text-align:center}

/* 書類の中身 */
.chk li{position:relative;font-size:13.5px;font-weight:700;padding:5px 0 5px 24px;border-bottom:1px dashed #d3cab9}
.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}
.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)}
.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}
.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}
.kin{width:100%;border-collapse:collapse;font-size:11.5px;text-align:center}
.kin th{font-weight:900;text-align:left;padding:4px 2px;white-space:nowrap;font-size:11px}
.kin td{padding:4px 0;border-bottom:1px dashed #d3cab9;font-weight:700}
.kin tr:first-child td{color:var(--mute);font-size:10.5px;border-bottom:1.5px solid var(--ink)}
.kin td.x{color:#a8a3b0}
.kin tr.me th,.kin tr.me td{color:var(--red);font-weight:900;background:var(--red-l)}
.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)}
.maru b{font-family:var(--f-m);font-weight:700;font-size:16px;letter-spacing:.04em}
.kj{display:grid;grid-template-columns:auto 1fr;font-size:13px}
.kj dt{font-weight:900;padding:6px 10px 6px 2px;border-bottom:1px dashed #d3cab9;color:var(--mute)}
.kj dd{font-weight:700;padding:6px 0;border-bottom:1px dashed #d3cab9}
.bunt__new{font-size:11.5px;font-weight:900;color:var(--red);margin:-2px 0 6px}
.bunt__new i{font-style:normal;display:inline-block}
.bunt{display:flex;flex-wrap:wrap;gap:4px}
.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}
.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}
.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}
.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}
.ringi .you{border-bottom:0;padding-top:8px}
.ringi .you span:first-child{font-weight:900}
.ringi__box{position:relative;width:52px;height:52px;border:1.5px solid var(--ink);display:grid;place-items:center;background:#fff}
.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)}
.ringi__goal{margin-top:8px;text-align:center;font-weight:900;font-size:14.5px;color:var(--red)}

/* ===== 必須 ===== */
.must{background:var(--ink);color:#fff;text-align:center;padding-bottom:40px}
.must__lead{font-size:21px;font-weight:900}
.must__big{margin-top:6px;font-size:44px;font-weight:900;line-height:1.25;letter-spacing:.01em}
.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)}
.must__stage{position:relative;height:290px;margin-top:18px}
.must__back{position:absolute;left:50%;top:22px;width:210px;height:240px;margin-left:-105px;background:#2b2b38;border-radius:22px;transform:rotate(-4deg)}
.must__stage img{position:absolute;left:50%;bottom:0;width:205px;transform:translateX(-50%)}
.must__logo{margin:10px 0 18px}
.must__logo .lg{font-size:30px}

/* ===== 導入実績 ===== */
.voice{background:var(--paper)}
.voice .h2 .lg{margin-bottom:4px}
.slide{margin-top:26px}
.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}
.cases::-webkit-scrollbar{display:none}
.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)}
.slide__nav{display:flex;align-items:center;gap:12px;margin-top:6px}
.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}
.slide__btn:active{background:var(--red)}
.slide__count{flex:none;font-family:var(--f-n);font-weight:700;color:var(--ink);display:flex;align-items:baseline;gap:4px}
.slide__count b{font-size:26px;color:var(--red);line-height:1}
.slide__count span{font-size:14px;color:var(--mute)}
.slide__bar{flex:1;height:4px;background:var(--rule);border-radius:2px;overflow:hidden}
.slide__bar i{display:block;height:100%;width:33.4%;background:var(--red);transition:width .4s ease}
.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}
.case__img{overflow:hidden;border-radius:6px;border:1px solid var(--rule)}
.case__img img{display:block;width:100%;height:auto}
.case__co{margin-top:10px;font-size:12.5px;font-weight:700;color:var(--mute)}
.case__h{margin-top:2px;font-size:18px;font-weight:900;line-height:1.45}
.case__amt{color:var(--red);font-size:23px;font-variant-numeric:tabular-nums}
.case__body{margin-top:8px;font-size:13.5px;line-height:1.8;color:var(--ink2)}

/* ===== 業務対応範囲 ===== */
.svc{background:var(--ink);color:#fff}
.svc__sub{margin-top:8px;text-align:center;font-size:15px;font-weight:700;color:#e9e6f0}
.doc--svc{margin-top:22px;color:var(--ink);transform:rotate(-1deg)}
.svc__list{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;padding:4px 4px}
.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}
.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}
.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)}
.svc__list li.etc{padding-left:2px;color:var(--mute)}
.svc__list li.etc::before,.svc__list li.etc::after{display:none}
.price{margin-top:26px;text-align:center;border:2px solid var(--red-on-ink);border-radius:8px;padding:16px 14px}
.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}
.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}
.price__main .tax{font-size:13px;font-weight:700;vertical-align:middle}
.price__note{margin-top:10px;font-size:12.5px;line-height:1.75;color:#d9d6e2}

/* ===== 流れ ===== */
.flow{background:var(--paper)}
.steps{position:relative;margin-top:26px}
.steps::before{content:"";position:absolute;left:19px;top:20px;bottom:30px;border-left:2px dashed #bdb5a6}
.step{position:relative;display:flex;gap:12px;align-items:flex-start;margin-top:14px}
.step:first-child{margin-top:0}
.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}
.step__card{flex:1;background:#fff;border:1px solid var(--line);border-radius:8px;padding:11px 13px 12px}
.step__ttl{font-size:16.5px;font-weight:900;line-height:1.4}
.step__txt{margin-top:4px;font-size:13.5px;line-height:1.75;color:var(--ink2)}
.step__txt b{color:var(--red)}
.step--goal .step__card{border:2px solid var(--red);background:var(--red-l)}
.step--goal .step__ttl{color:var(--red)}
.step.is-on .step__no{background:var(--red);border-color:var(--red);color:#fff}

/* ===== 申し込み ===== */
.close{background:var(--ink);color:#fff;padding:52px 0 0}
.close__h{font-size:29px;font-weight:900;text-align:center;line-height:1.38}
.close__h .red{color:var(--red-on-ink)}
.team{position:relative;display:flex;justify-content:center;align-items:flex-end;height:170px;margin-top:16px}
.team img{width:86px;height:auto;margin:0 -9px;position:relative}
.team .team__main{width:124px;z-index:2;margin:0 -6px -2px}
.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}
.fm__lead{text-align:center;font-weight:900;font-size:16.5px;line-height:1.6}
.fm__lead small{display:block;font-size:12px;font-weight:700;color:var(--mute);letter-spacing:.08em}
.fm__unit{display:flex;flex-direction:column;gap:6px;margin-top:18px}
.fm__label{font-size:15px;font-weight:900}
.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}
.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}
.fm__input::placeholder{color:#a19c94}
.fm__input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(220,38,38,.15)}
.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}
.fm__hint{font-size:12.5px;color:var(--mute);margin-top:-2px}
.form-error{display:none;font-size:12.5px;font-weight:700;color:var(--red)}
.cal-loading{font-size:12.5px;color:var(--mute)}
.cal-preview{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:thin}
.cal-day-card{flex:0 0 124px;background:#fff;border:1.5px solid var(--ink);border-radius:8px;overflow:hidden}
.cal-day-header{background:var(--ink);color:#fff;font-weight:900;font-size:13px;text-align:center;padding:5px 4px}
.cal-day-slots{display:grid;gap:6px;padding:8px}
.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}
.cal-slot.selected{background:var(--red);border-color:var(--red);color:#fff}
.cal-selected-label{display:none;margin-top:6px;font-weight:900;font-size:15px;color:var(--red)}
.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}
.fm__submit:active{transform:translateY(2px);box-shadow:0 2px 0 var(--red-d)}
.fm__submit:disabled{opacity:.7;cursor:wait}
.fm__note{margin-top:10px;font-size:12px;color:var(--mute);text-align:center}
.form-success{text-align:center;padding:14px 0}
.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}
.form-success .check-icon svg{width:28px;height:28px}
.form-success h3{font-weight:900;font-size:22px}
.form-success p{margin-top:8px;font-size:15px}

.foot{background:var(--ink);color:#cfccd8;text-align:center;padding:26px 16px 96px;border-top:1px solid #2b2b38}
.foot .lg{font-size:24px}
.foot__links{margin:10px 0 8px}
.foot__links a{font-size:12px;color:#cfccd8}
.foot small{display:block;font-size:11px;line-height:1.8}

/* 下に出るボタン */
.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}
.stick.is-on{transform:translate(-50%,0)}
.stick .btn{pointer-events:auto;padding:15px 40px 15px 14px}
.stick .btn span{font-size:17px}

/* ===== 動き（今の mada と別の動き） ===== */
@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){
  /* 最初の画面: 見出しは書くように左から・赤い語に手書きの下線・紙が置かれて記入・判子・ときどき跳ねる */
  .lead{animation:slideR .45s cubic-bezier(.2,.9,.2,1) .05s both}
  h1 .l1,h1 .l2,h1 .l3{clip-path:inset(-30% 102% -30% -6%);animation:wipe .5s cubic-bezier(.65,0,.25,1) forwards}
  h1 .l1{animation-delay:.2s} h1 .l2{animation-delay:.42s} h1 .l3{animation-delay:.68s}
  /* 最初の画面（11/7 夜）: 赤い板が開く・4人が順に立つ・吹き出しが順に弾む・光がまたたく */
  .w{background-size:0 100%;animation:mark .5s cubic-bezier(.6,0,.3,1) 1.05s forwards}
  .panel{animation:panelIn .5s cubic-bezier(.2,.9,.3,1.1) .3s both}
  .rays{animation:breathe 5s ease-in-out 1s infinite}
  .kira{animation:twinkle 2.6s ease-in-out var(--d) infinite;scale:0}
  .mem{animation:charIn .55s cubic-bezier(.2,.9,.2,1) backwards}
  .mem--kei{animation-delay:.5s} .mem--sup{animation-delay:.68s} .mem--eig{animation-delay:.8s} .mem--dat{animation-delay:.92s}
  .mem.is-act img{animation:jump .55s cubic-bezier(.3,1.5,.5,1)}
  .fuki{transform-origin:50% 120%}
  .fuki--l{transform-origin:34px 120%} .fuki--r{transform-origin:calc(100% - 34px) 120%}
  .fuki.is-on{animation:fukiPop .42s cubic-bezier(.3,1.6,.5,1) .1s both}
  .fuki.is-off{animation:fukiOut .16s ease-in forwards}
  .sd__crew img{animation:jump2 3.2s ease-in-out infinite}
  .sd__crew img:nth-child(2){animation-delay:.8s} .sd__crew img:nth-child(3){animation-delay:1.6s} .sd__crew img:nth-child(4){animation-delay:2.4s}
  .sd__rays{animation:breathe 5s ease-in-out infinite}
  .stage__tag{animation:chipIn .35s cubic-bezier(.3,1.4,.5,1) 1.3s both}
  .ctaband .btn::before{animation-name:rippleY}
  .sheet{animation:drop .5s cubic-bezier(.2,.9,.3,1.1) .95s both,thud .28s ease-out 2.42s}
  .sheet .ln i{clip-path:inset(-20% 102% -20% -4%);animation:wipe .36s steps(7,end) forwards}
  .sheet .ln:nth-child(1) i{animation-delay:1.4s} .sheet .ln:nth-child(2) i{animation-delay:1.72s} .sheet .ln:nth-child(3) i{animation-delay:2.0s}
  .hanko{animation:press .42s cubic-bezier(.3,1.4,.5,1) 2.35s both}
  .hanko::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--red);opacity:0;animation:ping .7s ease-out 2.6s}
  .btn::before{content:"";position:absolute;inset:0;border-radius:6px;animation:ripple 2.4s ease-out 3s infinite}
  .btn::after{animation:nudge 1.2s ease-in-out 3s infinite}

  /* 下の段: 横から入る・書類が置かれる・社員証がめくれる・判子を押す・番号が赤く灯る */
  .js .rv{opacity:0;transform:translateX(-16px);transition:opacity .55s ease,transform .6s cubic-bezier(.2,.9,.2,1)}
  .js .rv.is-in{opacity:1;transform:none}
  .js .ids .idc{transform:rotateY(-80deg);transform-origin:left center;transition:opacity .5s ease,transform .7s cubic-bezier(.2,.9,.3,1.05)}
  .js .ids .idc:nth-child(2){transition-delay:.12s} .js .ids .idc:nth-child(3){transition-delay:.24s} .js .ids .idc:nth-child(4){transition-delay:.36s}
  .js .ids .idc.is-in{transform:none}
  .js .pr__gain.rv{transform:scale(.9)}
  .js .pr__gain.rv.is-in{transform:none;transition:opacity .4s ease,transform .5s cubic-bezier(.3,1.5,.5,1)}
  .js .fig.rv{transform:none}
  .js .fig.rv .doc{opacity:0;transition:opacity .4s ease .05s}
  .js .fig.rv.is-in .doc{opacity:1;animation:docDrop .55s cubic-bezier(.2,.9,.3,1.1) both}
  .js .fig.rv .fig__char{opacity:0;transform:translateY(24px);transition:opacity .5s ease .25s,transform .6s cubic-bezier(.2,.9,.2,1) .25s}
  .js .fig.rv.is-in .fig__char{opacity:1;transform:none}
  .js .fig .kaku,.js .fig .maru{opacity:0}
  .js .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 .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 .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 .fig .ringi__in{opacity:0}
  .js .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 .fig .bunt li{opacity:0}
  .js .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 .must__hot{display:inline-block}
  .js .must__big.rv{transform:none}
  .js .must__big .must__hot{opacity:0}
  .js .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}
  .must__back{animation:rock2 7s ease-in-out infinite}
  .team .team__main{animation:sway 5s ease-in-out infinite;transform-origin:50% 100%}

  /* 下の段の動き（ずっと続く・小さく）: 社員証が順に起き上がる・矢印が下へ・人が跳ねる・判子を押し直す・出勤簿が灯る・一覧を順に確かめる・点が流れを下る */
  .js .ids__more.rv b{background-size:0 100%;background-repeat:no-repeat}
  .js .ids__more.is-in b{animation:mark .5s cubic-bezier(.6,0,.3,1) .45s forwards}
  .js .ids .idc.is-in{animation:idUp 6s ease-in-out 1.2s infinite}
  .js .ids .idc.is-in:nth-child(2){animation-delay:2.7s} .js .ids .idc.is-in:nth-child(3){animation-delay:4.2s} .js .ids .idc.is-in:nth-child(4){animation-delay:5.7s}
  .five.is-in p strong{animation:thump 2.8s ease-in-out .8s infinite}
  .pr__so.is-in::after{animation:drip 1.5s ease-in-out infinite}
  .js .fig.is-in .fig__char{animation:hop2 4.4s ease-in-out 1.6s infinite}
  .pr:nth-child(2) .fig.is-in .fig__char{animation-delay:2.3s} .pr:nth-child(3) .fig.is-in .fig__char{animation-delay:1.9s} .pr:nth-child(4) .fig.is-in .fig__char{animation-delay:2.6s} .pr:nth-child(5) .fig.is-in .fig__char{animation-delay:2.1s}
  .js .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 .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 .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 .fig.is-in .chk li::after{animation:tickIn .25s cubic-bezier(.3,1.6,.5,1) both}
  .js .fig.is-in .chk li:nth-child(1)::after{animation-delay:.55s} .js .fig.is-in .chk li:nth-child(2)::after{animation-delay:.7s} .js .fig.is-in .chk li:nth-child(3)::after{animation-delay:.85s} .js .fig.is-in .chk li:nth-child(4)::after{animation-delay:1s}
  .fig.is-in .kin tr.me td{animation:lit 3s ease-in-out 1.2s infinite}
  .fig.is-in .kin tr.me td:nth-child(3){animation-delay:1.4s} .fig.is-in .kin tr.me td:nth-child(4){animation-delay:1.6s} .fig.is-in .kin tr.me td:nth-child(5){animation-delay:1.8s} .fig.is-in .kin tr.me td:nth-child(6){animation-delay:2s}
  .fig.is-in .bunt__new i{animation:beat 1.2s ease-in-out infinite}
  .fig.is-in .bunt li i{animation:wig 3.6s ease-in-out 1.4s infinite}
  .fig.is-in .bunt li:nth-child(3) i{animation-delay:2.6s} .fig.is-in .bunt li:nth-child(8) i{animation-delay:3.8s}
  .js .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}
  .must__stage img{animation:hop2 3.8s ease-in-out 1s infinite}
  .case.is-cur .case__img img{animation:zoomSlow 5s ease-out both}
  .doc--svc.is-in .svc__list li:not(.etc){animation:scan 6s ease-in-out .6s infinite}
  .doc--svc.is-in .svc__list li:not(.etc)::after{animation:tickP 6s ease-in-out .6s infinite}
  .doc--svc.is-in .svc__list li:nth-child(2),.doc--svc.is-in .svc__list li:nth-child(2)::after{animation-delay:0.90s}
  .doc--svc.is-in .svc__list li:nth-child(3),.doc--svc.is-in .svc__list li:nth-child(3)::after{animation-delay:1.20s}
  .doc--svc.is-in .svc__list li:nth-child(4),.doc--svc.is-in .svc__list li:nth-child(4)::after{animation-delay:1.50s}
  .doc--svc.is-in .svc__list li:nth-child(5),.doc--svc.is-in .svc__list li:nth-child(5)::after{animation-delay:1.80s}
  .doc--svc.is-in .svc__list li:nth-child(6),.doc--svc.is-in .svc__list li:nth-child(6)::after{animation-delay:2.10s}
  .doc--svc.is-in .svc__list li:nth-child(7),.doc--svc.is-in .svc__list li:nth-child(7)::after{animation-delay:2.40s}
  .doc--svc.is-in .svc__list li:nth-child(8),.doc--svc.is-in .svc__list li:nth-child(8)::after{animation-delay:2.70s}
  .doc--svc.is-in .svc__list li:nth-child(9),.doc--svc.is-in .svc__list li:nth-child(9)::after{animation-delay:3.00s}
  .doc--svc.is-in .svc__list li:nth-child(10),.doc--svc.is-in .svc__list li:nth-child(10)::after{animation-delay:3.30s}
  .price.is-in em{animation:thump 3s ease-in-out 1s infinite}
  .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}
  .step--goal.is-on .step__card{animation:ripple 2.4s ease-out .4s infinite}
  .team img:not(.team__main){animation:hop2 3.4s ease-in-out infinite}
  .team img:nth-child(2){animation-delay:.85s} .team img:nth-child(4){animation-delay:1.7s}
  /* 画面の外の段は止める */
  .is-away,.is-away *,.is-away *::before,.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){.fuki.is-on{opacity:1}.kira{scale:1}}
