html.ms8-page-leaving{overflow:hidden}
.page-transition-curtain{display:none!important}
.ms8-global-curtain{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  height:100dvh;
  z-index:2147483000;
  display:grid;
  place-items:center;
  pointer-events:none;
  visibility:hidden;
  overflow:hidden;
  isolation:isolate;
  background:radial-gradient(circle at 24% 18%,#ff9bcf 0,transparent 28%),linear-gradient(135deg,#8e004b,#e2187a 56%,#ff8bc7);
  transform:translate3d(0,-105%,0);
  -webkit-transform:translate3d(0,-105%,0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:transform;
  transition:transform .46s cubic-bezier(.77,0,.18,1),visibility 0s linear .46s;
}
.ms8-global-curtain span{
  position:relative;
  z-index:1;
  display:block;
  color:#fff;
  font:900 clamp(3.2rem,13vw,8rem)/1 "M PLUS Rounded 1c","Noto Sans JP",sans-serif;
  letter-spacing:-.09em;
  min-width:clamp(164px,28vw,300px);
  padding:.23em .38em .3em;
  border:2px solid rgba(255,255,255,.68);
  border-radius:999px;
  background:rgba(49,8,31,.2);
  box-shadow:0 22px 70px rgba(75,0,41,.34),inset 0 1px 0 rgba(255,255,255,.38);
  text-align:center;
  text-shadow:0 3px 0 rgba(75,0,41,.22),0 15px 50px rgba(75,0,41,.38);
  white-space:nowrap;
  transform:scale(.9);
  -webkit-transform:scale(.9);
  transform-origin:center;
  transition:transform .38s cubic-bezier(.16,.86,.2,1) .04s;
}
html.ms8-page-leaving .ms8-global-curtain{
  visibility:visible;
  transform:translate3d(0,0,0);
  -webkit-transform:translate3d(0,0,0);
  transition:transform .46s cubic-bezier(.77,0,.18,1),visibility 0s;
}
html.ms8-page-leaving .ms8-global-curtain span{
  transform:scale(1) rotate(0);
  -webkit-transform:scale(1) rotate(0);
}
@media(max-width:600px){
  .ms8-global-curtain span{font-size:clamp(3.35rem,18vw,5rem);letter-spacing:-.075em}
}
.ms8-line-float{
  position:fixed;
  right:22px;
  bottom:calc(22px + env(safe-area-inset-bottom,0px));
  z-index:2147482000;
  min-height:62px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:8px 13px 8px 9px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:linear-gradient(135deg,#06c755,#00b84c);
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:0 16px 38px rgba(0,150,64,.3),inset 0 1px 0 rgba(255,255,255,.26);
  font-family:"Noto Sans JP",system-ui,sans-serif;
  line-height:1.25;
  -webkit-tap-highlight-color:transparent;
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
.ms8-line-float:hover,.ms8-line-float:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 20px 46px rgba(0,150,64,.4),0 0 0 6px rgba(6,199,85,.12);
  filter:saturate(1.06);
}
.ms8-line-float:focus-visible{outline:3px solid #fff;outline-offset:3px}
.ms8-line-mark{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#06b94e;
  font-size:.64rem;
  font-weight:900;
  letter-spacing:-.03em;
  box-shadow:0 5px 15px rgba(0,88,38,.15);
}
.ms8-line-label{display:grid;gap:2px;white-space:nowrap}
.ms8-line-label b{font-size:.9rem;font-weight:900;letter-spacing:.02em}
.ms8-line-label small{font-size:.63rem;font-weight:600;opacity:.88}
.ms8-line-arrow{font-size:1rem;font-weight:900;margin-left:2px}
.ms8-line-inline{
  width:100%;
  max-width:440px;
  min-height:72px;
  margin-top:22px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  padding:11px 14px 11px 11px;
  border:1px solid rgba(6,199,85,.3);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(232,255,241,.96));
  color:#18472d!important;
  text-decoration:none!important;
  box-shadow:0 12px 30px rgba(0,150,64,.09);
  line-height:1.45;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.ms8-line-inline:hover,.ms8-line-inline:focus-visible{
  transform:translateY(-3px);
  border-color:#06c755;
  box-shadow:0 16px 36px rgba(0,150,64,.16);
}
.ms8-line-inline .ms8-line-mark{width:48px;height:48px}
.ms8-line-inline-copy{display:grid;gap:2px;min-width:0}
.ms8-line-inline-copy b{font-size:.92rem;font-weight:900;color:#07883c}
.ms8-line-inline-copy small{font-size:.7rem;color:#567363;line-height:1.55}
.ms8-line-inline-arrow{color:#06b94e;font-size:1.1rem;font-weight:900}
@media(max-width:600px){
  .ms8-line-float{
    right:12px;
    bottom:calc(84px + env(safe-area-inset-bottom,0px));
    min-height:56px;
    padding:7px 12px 7px 7px;
    gap:9px;
  }
  .ms8-line-float .ms8-line-mark{width:42px;height:42px;flex-basis:42px;font-size:.58rem}
  .ms8-line-label b{font-size:.83rem}
  .ms8-line-label small{display:none}
  .ms8-line-arrow{font-size:.9rem}
  .ms8-line-inline{max-width:none;margin-top:18px}
}
@media(prefers-reduced-motion:reduce){
  .ms8-global-curtain,.ms8-global-curtain span,.ms8-line-float,.ms8-line-inline{transition:none!important}
}
