:root{--mh-app-safe-bottom:env(safe-area-inset-bottom,0px)}
@media (display-mode:standalone){
  body{padding-bottom:var(--mh-app-safe-bottom)}
}
.mh-install-button{
  position:fixed;right:18px;bottom:calc(18px + var(--mh-app-safe-bottom));z-index:9998;
  appearance:none;border:1px solid rgba(23,61,80,.22);border-radius:999px;
  background:rgba(252,251,247,.96);color:#173d50;padding:10px 16px;
  font:600 12px/1.2 system-ui,-apple-system,"Noto Sans JP",sans-serif;
  letter-spacing:.04em;box-shadow:0 10px 30px rgba(23,61,80,.16);cursor:pointer;
}
.mh-install-button[hidden]{display:none!important}
.mh-ios-tip{
  position:fixed;left:14px;right:14px;bottom:calc(14px + var(--mh-app-safe-bottom));z-index:9999;
  max-width:480px;margin:0 auto;padding:14px 44px 14px 16px;border-radius:14px;
  background:rgba(252,251,247,.98);color:#173d50;border:1px solid rgba(23,61,80,.16);
  box-shadow:0 14px 36px rgba(23,61,80,.18);font:13px/1.65 system-ui,-apple-system,"Noto Sans JP",sans-serif;
}
.mh-ios-tip button{position:absolute;right:10px;top:9px;border:0;background:transparent;color:#173d50;font-size:20px;cursor:pointer}

/* ===== Mobile app navigation / safety onboarding ===== */
html.mh-consent-open, html.mh-consent-open body{overflow:hidden}
.mh-safety-overlay{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;background:rgba(13,34,47,.58);backdrop-filter:blur(8px)}
.mh-safety-card{width:min(100%,620px);max-height:min(88vh,760px);overflow:auto;background:#fffdf8;border:1px solid rgba(65,74,130,.18);border-radius:22px;padding:28px 28px 24px;box-shadow:0 30px 90px rgba(19,39,55,.30);color:#3f4a67;font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.7;letter-spacing:.02em}
.mh-safety-kicker{font-size:12px;letter-spacing:.12em;color:#777e9e;margin-bottom:7px}
.mh-safety-card h2{font-family:inherit;font-weight:700;font-size:24px;line-height:1.45;margin:0 0 16px;color:#414a82;letter-spacing:.02em}
.mh-safety-card p{font-size:14px;line-height:1.75;margin:0 0 14px}
.mh-safety-alert{margin:16px 0;padding:15px 17px;border-radius:14px;background:#fff6e8;border:1px solid rgba(180,121,38,.20);font-size:13px}
.mh-safety-alert strong{display:block;margin-bottom:7px;color:#715122}
.mh-safety-alert ul{margin:0;padding-left:20px;line-height:1.75}
.mh-safety-example{background:#f4f6fb;border-radius:12px;padding:12px 14px}
.mh-safety-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0 16px;padding:13px 14px;border:1px solid rgba(65,74,130,.16);border-radius:12px;background:#fff}
.mh-safety-consent input{margin-top:5px;width:18px;height:18px;flex:0 0 auto}
.mh-safety-consent span{font-size:13px;line-height:1.65}
.mh-safety-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.mh-safety-link{font-size:12px;text-decoration:underline;text-underline-offset:3px}
#mhSafetyStart{appearance:none;border:0;border-radius:999px;padding:12px 20px;background:#414a82;color:white;font-weight:700;font-size:14px;cursor:pointer}
#mhSafetyStart:disabled{opacity:.35;cursor:not-allowed}

.mh-secret-reminder{position:relative;z-index:20;max-width:980px;margin:16px auto 0;padding:11px 16px;border:1px solid rgba(180,121,38,.20);border-radius:12px;background:rgba(255,248,234,.96);color:#6c5430;font:12px/1.65 system-ui,-apple-system,"Noto Sans JP",sans-serif;letter-spacing:.01em}
.mh-secret-reminder a{text-decoration:underline;text-underline-offset:2px}

body{transition:opacity .16s ease,transform .16s ease}
body.mh-page-leaving{opacity:.64;transform:translateY(2px)}

.mh-mobile-nav,.mh-step-nav{display:none}

@media(max-width:760px){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))!important}
  .mh-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:9996;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));background:rgba(252,251,247,.97);border-top:1px solid rgba(65,74,130,.14);box-shadow:0 -8px 28px rgba(28,44,68,.10);backdrop-filter:blur(12px);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif}
  .mh-mobile-nav a,.mh-mobile-nav button{appearance:none;border:0;background:transparent;color:#727892;display:flex;min-height:50px;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:12px;font:inherit;text-decoration:none;cursor:pointer}
  .mh-mobile-nav a.active{background:rgba(65,74,130,.09);color:#414a82}
  .mh-mobile-nav span{font-size:22px;line-height:1.05;font-weight:500}
  .mh-mobile-nav small{font-size:10px;line-height:1.3;letter-spacing:.02em}

  .mh-step-nav{position:fixed;left:10px;right:10px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:9995;display:flex;justify-content:space-between;gap:10px;pointer-events:none}
  .mh-step-nav a{pointer-events:auto;flex:1;max-width:47%;padding:10px 13px;border:1px solid rgba(65,74,130,.16);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(30,48,78,.12);color:#414a82;font:600 11px/1.35 system-ui,-apple-system,"Noto Sans JP",sans-serif;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mh-step-next{margin-left:auto}

  .site-header,.nav{position:sticky!important;top:0;z-index:70;min-height:56px;height:auto;padding:8px 14px;background:rgba(252,251,247,.96);backdrop-filter:blur(12px)}
  .navlinks{display:none!important}
  .brand{font-size:28px}
  .mh-secret-reminder{margin:10px 12px 0}
  .mh-install-button{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:12px}
  .mh-ios-tip{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
  .mh-safety-overlay{padding:12px}
  .mh-safety-card{padding:22px 18px 18px;border-radius:18px;max-height:90vh}
  .mh-safety-card h2{font-size:21px}
  .mh-safety-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
  #mhSafetyStart{width:100%;order:-1}
  .mh-safety-link{text-align:center}
}

/* ===== Compact account / hamburger menu ===== */
.mh-account-menu{position:relative;margin-left:auto;z-index:10020;font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif}
.mh-account-trigger{appearance:none;border:1px solid rgba(65,74,130,.16);background:rgba(255,255,255,.84);color:#414a82;border-radius:999px;min-width:76px;height:40px;padding:5px 11px;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;box-shadow:0 5px 18px rgba(45,54,90,.08)}
.mh-account-trigger span{font-size:18px;line-height:1}.mh-account-trigger small{font-size:10px;letter-spacing:.03em}
.mh-account-dropdown{position:absolute;right:0;top:calc(100% + 8px);width:min(270px,calc(100vw - 28px));padding:9px;border-radius:18px;background:rgba(255,253,248,.99);border:1px solid rgba(65,74,130,.15);box-shadow:0 18px 46px rgba(36,47,79,.18);backdrop-filter:blur(14px)}
.mh-account-dropdown[hidden]{display:none!important}
.mh-account-dropdown a{display:flex;align-items:center;min-height:43px;padding:9px 13px;border-radius:11px;color:#414a82;text-decoration:none;font-size:13px;letter-spacing:.02em}
.mh-account-dropdown a:hover,.mh-account-dropdown a:focus-visible{background:rgba(65,74,130,.08);outline:none}
.mh-menu-divider{height:1px;background:rgba(65,74,130,.12);margin:6px 5px}

@media(max-width:760px){
  .site-header,.nav{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
  .mh-account-menu{display:block;flex:0 0 auto}
  .mh-account-trigger{min-width:44px;width:44px;height:44px;padding:0;border-radius:50%}
  .mh-account-trigger small{display:none}
  .mh-account-trigger span{font-size:21px}

  /* Keep the two playful moving ships on mobile, but scale them down. */
  body[data-page="home"] section.content.note .boundary-moving-logo .moving-ship-link,
  body[data-page="home"] section.content.cta .boundary-moving-logo .moving-ship-link{
    width:68px!important;
    top:-54px!important;
    animation-duration:34s!important;
    will-change:left;
  }
  body[data-page="home"] section.content.note .boundary-moving-logo .moving-ship-link img,
  body[data-page="home"] section.content.cta .boundary-moving-logo .moving-ship-link img{
    width:68px!important;
  }
  @keyframes boundaryShipMoveRightToLeft{
    from{left:calc(100% + 18px)}
    to{left:-90px}
  }
}

/* ===== First-run onboarding wizard ===== */
.mh-onboarding-step{display:none}.mh-onboarding-step.is-active{display:block}
.mh-onboarding-card .text-input{width:100%;box-sizing:border-box;margin-top:6px}
.mh-onboarding-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.mh-onboarding-actions button,#mhToProfile{appearance:none;border:0;border-radius:999px;padding:12px 20px;background:#414a82;color:#fff;font-weight:700;font-size:14px;cursor:pointer}
.mh-onboarding-actions button:disabled,#mhToProfile:disabled{opacity:.35;cursor:not-allowed}
.mh-secondary-btn{background:#eef0f6!important;color:#414a82!important}
.mh-howto-list{display:grid;gap:10px;margin:16px 0}.mh-howto-list>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:12px 14px;border-radius:13px;background:#f5f6fa}.mh-howto-list strong{color:#414a82}.mh-howto-list span{font-size:13px;line-height:1.6}
.mh-howto-list strong{display:flex;align-items:center;gap:8px}.mh-howto-icon{width:35px;height:35px;object-fit:contain;flex:0 0 35px}
@media(max-width:760px){.mh-onboarding-actions{display:grid;grid-template-columns:1fr 1fr}.mh-onboarding-actions button{width:100%}.mh-howto-list>div{grid-template-columns:1fr;gap:4px}}

/* ===== 2026-09-24 Home mobile slide layout ===== */
body[data-page="home"].mh-home-mobile-layout{
  background:linear-gradient(180deg,#f4f4fb 0%,#fcfbf7 18%,#ffffff 100%);
}
body[data-page="home"] .demo-banner{margin-bottom:0}
body[data-page="home"] .hero.mh-app-home-hero{
  min-height:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:28px 20px 18px;
  text-align:center;
  background:transparent;
}
body[data-page="home"] .mh-home-top-icon{display:inline-flex;align-items:center;justify-content:center}
body[data-page="home"] .mh-home-top-icon .hero-full-logo{
  width:min(88px,22vw);
  height:auto;
}
body[data-page="home"] .hero.mh-app-home-hero h1{
  margin:0;
  font-size:clamp(28px,8vw,38px);
  letter-spacing:.06em;
  color:#173d50;
}
body[data-page="home"] .hero.mh-app-home-hero p{
  margin:0;
  max-width:28em;
  font-size:13px;
  line-height:1.7;
  color:#425165;
}
body[data-page="home"] .mh-home-ship-lane{
  position:relative;
  max-width:980px;
  margin:0 auto;
  padding:4px 14px;
  height:92px;
  overflow:hidden;
}
body[data-page="home"] .mh-home-ship-link{
  position:absolute;
  left:calc(100% + 30px);
  top:10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  text-decoration:none;
  animation:mhShipCruise 40s linear infinite;
}
body[data-page="home"] .mh-home-ship-lane-second .mh-home-ship-link{animation-delay:3s}
body[data-page="home"] .mh-home-ship-link img{
  width:86px;
  height:auto;
  filter:drop-shadow(0 7px 16px rgba(64,74,130,.16));
}
body[data-page="home"] .mh-home-ship-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:4px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(65,74,130,.15);
  box-shadow:0 4px 14px rgba(64,74,130,.08);
  color:#414a82;
  font:700 11px/1.2 system-ui,-apple-system,"Noto Sans JP",sans-serif;
  letter-spacing:.03em;
  white-space:nowrap;
}
@keyframes mhShipCruise{
  from{left:calc(100% + 32px)}
  to{left:-118px}
}
body[data-page="home"] .mh-home-slideshow-wrap{
  max-width:980px;
  margin:0 auto;
  padding:0 16px 10px;
}
body[data-page="home"] .mh-home-slideshow{
  width:100%;
  max-width:460px;
  margin:0 auto;
  aspect-ratio: 11 / 15;
  border-radius:28px;
  overflow:hidden;
  background:#f7f4ef;
  box-shadow:0 18px 50px rgba(23,61,80,.10);
}
body[data-page="home"] .mh-home-slideshow .slide{
  object-fit:cover;
  object-position:center;
}
body[data-page="home"] .mh-home-slideshow .dots{
  left:50%;
  right:auto;
  bottom:14px;
  transform:translateX(-50%);
  background:rgba(255,255,255,.7);
  padding:7px 10px;
  border-radius:999px;
  backdrop-filter:blur(8px);
}
body[data-page="home"] .mh-home-slideshow .dot{
  width:8px;height:8px;border:0;background:#c7ccd7;
}
body[data-page="home"] .mh-home-slideshow .dot.active{background:#414a82}
body[data-page="home"] .mh-home-nav-area{
  max-width:980px;
  margin:6px auto 0;
  padding:12px 16px 22px;
}
body[data-page="home"] .mh-home-nav-area .eyebrow{
  margin-bottom:10px;
  text-align:center;
}
body[data-page="home"] .mh-home-nav-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
body[data-page="home"] .mh-home-nav-grid a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:10px 12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(65,74,130,.12);
  box-shadow:0 8px 24px rgba(32,45,78,.06);
  color:#414a82;
  text-decoration:none;
  font:600 13px/1.4 system-ui,-apple-system,"Noto Sans JP",sans-serif;
}
body[data-page="home"] footer{
  margin-top:0;
}
@media(max-width:760px){
  body[data-page="home"]{padding-bottom:0!important}
  body[data-page="home"] .mh-mobile-nav{display:none!important}
}

/* final mobile home top bar */
body[data-page="home"] .mh-app-topbar{
  position:sticky!important;top:0;z-index:10010;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  min-height:54px;height:auto;padding:7px 12px!important;
  background:rgba(252,251,247,.94);backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(65,74,130,.10);
}
body[data-page="home"] .mh-app-topbar .brand{font-size:20px;letter-spacing:.04em}

/* ===== 2026-09-24 Mobile app home: ivory + moving gradient waves ===== */
body[data-page="home"].mh-home-mobile-layout{
  background:#FCFAF5!important;
}
body[data-page="home"] .mh-app-topbar{
  background:rgba(252,250,245,.95)!important;
}
body[data-page="home"] .hero.mh-app-home-hero{
  gap:8px!important;
  padding:26px 20px 20px!important;
}
body[data-page="home"] .mh-home-top-icon .hero-full-logo{
  width:min(150px,38vw)!important;
  height:auto;
  filter:none!important;
}
body[data-page="home"] .hero.mh-app-home-hero h1{
  margin-top:2px!important;
}
body[data-page="home"] .mh-home-tagline{
  font-family:"Zen Old Mincho","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:clamp(17px,4.7vw,21px);
  font-weight:500;
  letter-spacing:.10em;
  color:#39445a;
  line-height:1.7;
}
body[data-page="home"] .hero.mh-app-home-hero p{
  margin-top:4px!important;
  max-width:32em!important;
  font-family:"Zen Old Mincho","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:17px!important;
  line-height:1.9!important;
  letter-spacing:.07em;
  color:#39445a;
}

body[data-page="home"] .mh-home-ship-lane{
  position:relative;
  width:100%;
  max-width:none;
  height:118px;
  margin:0;
  padding:0;
  overflow:hidden;
}
body[data-page="home"] .mh-home-ship-route{
  position:absolute;
  left:100%;
  top:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:62vw;
  min-width:250px;
  max-width:390px;
  height:102px;
  text-decoration:none;
  cursor:pointer;
  touch-action:manipulation;
  animation:mhWaveShipCruise 40s linear infinite;
}
body[data-page="home"] .mh-home-ship-lane-second .mh-home-ship-route{
  animation-delay:10s;
  animation-fill-mode:both;
}
body[data-page="home"] .mh-home-route-ship{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  width:126px;
  height:auto;
  pointer-events:none;
}
body[data-page="home"] .mh-home-wave{
  position:relative;
  z-index:1;
  flex:1 1 0;
  min-width:62px;
  height:34px;
  pointer-events:none;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 40'%3E%3Cpath d='M0 22 C20 8 40 8 60 22 S100 36 120 22 S160 8 180 22 S220 36 240 22' fill='none' stroke='black' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 40'%3E%3Cpath d='M0 22 C20 8 40 8 60 22 S100 36 120 22 S160 8 180 22 S220 36 240 22' fill='none' stroke='black' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
}
body[data-page="home"] .blue-route .mh-home-wave{
  background:linear-gradient(90deg,
    rgba(169,216,243,0) 0%,
    rgba(169,216,243,.34) 18%,
    rgba(255,255,255,.94) 50%,
    rgba(169,216,243,.34) 82%,
    rgba(169,216,243,0) 100%);
}
body[data-page="home"] .pink-route .mh-home-wave{
  background:linear-gradient(90deg,
    rgba(244,183,200,0) 0%,
    rgba(244,183,200,.34) 18%,
    rgba(255,255,255,.94) 50%,
    rgba(244,183,200,.34) 82%,
    rgba(244,183,200,0) 100%);
}

/* Match the existing website: the moving ship itself spins when hovered/touched. */
@media (hover:hover) and (pointer:fine){
  body[data-page="home"] .mh-home-ship-route:hover .mh-home-route-ship{
    animation:movingShipHoverSpin 1.05s linear infinite !important;
  }
}
body[data-page="home"] .mh-home-ship-route:active .mh-home-route-ship{
  animation:mhMobileShipTapSpin .72s ease-out 1 !important;
}
@keyframes mhMobileShipTapSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

body[data-page="home"] .mh-home-ship-route:active{opacity:.72}
body[data-page="home"] .mh-home-ship-route:focus-visible{
  outline:3px solid rgba(65,74,130,.35);
  outline-offset:3px;
  border-radius:999px;
}
@keyframes mhWaveShipCruise{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-100vw - 100%))}
}

body[data-page="home"] .mh-home-copy-block{
  max-width:620px;
  margin:0 auto;
  padding:2px 24px 18px;
  text-align:center;
}
body[data-page="home"] .mh-home-copy-block p{
  margin:0;
  font-family:"Zen Old Mincho","Yu Mincho","Hiragino Mincho ProN",serif;
  color:#39445a;
  font-size:17px;
  line-height:1.9;
  letter-spacing:.07em;
}
body[data-page="home"] .mh-home-copy-block-short{
  padding-top:0;
  padding-bottom:26px;
}
body[data-page="home"] .mh-home-copy-block-short p{
  font-family:"Zen Old Mincho","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:17px;
  line-height:1.9;
  letter-spacing:.07em;
  color:#39445a;
}
body[data-page="home"] .mh-home-slideshow-wrap{
  padding-top:0!important;
}

@media (prefers-reduced-motion: reduce){
  body[data-page="home"] .mh-home-ship-route{
    animation:none!important;
    position:relative;
    left:auto;
    margin:0 auto;
  }
}

/* ===== VERIFIED V7: explicit home motion, requested by product owner ===== */
body[data-page="home"] .mh-home-ship-route{
  animation-name:mhWaveShipCruise!important;
  animation-duration:40s!important;
  animation-timing-function:linear!important;
  animation-iteration-count:infinite!important;
  animation-play-state:running!important;
}
body[data-page="home"] .mh-home-ship-lane-first .mh-home-ship-route{
  animation-delay:0s!important;
}
body[data-page="home"] .mh-home-ship-lane-second .mh-home-ship-route{
  animation-delay:10s!important;
  animation-fill-mode:both!important;
}
body[data-page="home"] .mh-home-route-ship.mh-force-spin{
  animation:mhVerifiedShipSpin .9s cubic-bezier(.2,.7,.25,1) 1!important;
}
@keyframes mhVerifiedShipSpin{
  0%{transform:rotate(0deg) scale(1)}
  55%{transform:rotate(220deg) scale(1.08)}
  100%{transform:rotate(360deg) scale(1)}
}
@media (prefers-reduced-motion: reduce){
  body[data-page="home"] .mh-home-ship-route{
    animation-name:mhWaveShipCruise!important;
    animation-duration:40s!important;
    animation-iteration-count:infinite!important;
    position:absolute!important;
    left:100%!important;
    margin:0!important;
  }
  body[data-page="home"] .hero .hero-full-logo.logo-pop-spin{
    animation:memoryHelmPopSpin 1.25s cubic-bezier(.22,.8,.32,1) both!important;
  }
}

/* ===== VERIFIED V8: exact homepage-like ship motion + mobile tap ===== */
body[data-page="home"] .mh-home-ship-route{
  animation:mhWaveShipCruise 40s linear infinite !important;
  animation-play-state:running !important;
}
body[data-page="home"] .mh-home-ship-lane-first .mh-home-ship-route{
  animation-delay:0s !important;
}
body[data-page="home"] .mh-home-ship-lane-second .mh-home-ship-route{
  animation-delay:10s !important;
  animation-fill-mode:both !important;
}
body[data-page="home"] .mh-home-route-ship{
  transform-origin:50% 50% !important;
}
/* Website behavior: while hovered, the ship itself keeps rotating. */
body[data-page="home"] .mh-home-route-ship.mh-hover-spin{
  animation:movingShipHoverSpin 1.05s linear infinite !important;
}
/* Touch/click behavior: one visible full turn before page change. */
body[data-page="home"] .mh-home-route-ship.mh-force-spin{
  animation:movingShipHoverSpin 1.05s linear 1 !important;
}
@keyframes movingShipHoverSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
/* The app demo must visibly move even when the OS requests reduced motion. */
@media (prefers-reduced-motion: reduce){
  body[data-page="home"] .mh-home-ship-route{
    position:absolute !important;
    left:100% !important;
    margin:0 !important;
    animation:mhWaveShipCruise 40s linear infinite !important;
  }
  body[data-page="home"] .hero .hero-full-logo.logo-pop-spin{
    animation:memoryHelmPopSpin 1.25s cubic-bezier(.22,.8,.32,1) both !important;
  }
}

/* ===== FINAL V9 — slideshow + production-homepage hover behavior ===== */
/* Oval portrait-frame slides: show each generated framed image in full, without the old square wood frame. */
body[data-page="home"] .mh-home-slideshow-wrap{
  padding:0 16px 76px !important;
  background:#FCFAF5 !important;
}
body[data-page="home"] .visual-frame.mh-home-slideshow{
  position:relative !important;
  width:min(88vw,560px) !important;
  max-width:560px !important;
  aspect-ratio:3/4 !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 auto !important;
  overflow:hidden !important;
  border:0 !important;
  border-image:none !important;
  outline:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
body[data-page="home"] .mh-home-slideshow .slide{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}
body[data-page="home"] .mh-home-slideshow .dots{
  right:50% !important;
  bottom:10px !important;
  transform:translateX(50%) !important;
}

/* Production homepage behavior: move the entire clickable route; rotate only the icon under the cursor. */
body[data-page="home"] .mh-home-ship-route{
  animation:mhWaveShipCruise 40s linear infinite !important;
  animation-play-state:running !important;
  cursor:pointer !important;
}
body[data-page="home"] .mh-home-ship-lane-first .mh-home-ship-route{
  animation-delay:0s !important;
}
body[data-page="home"] .mh-home-ship-lane-second .mh-home-ship-route{
  animation-delay:10s !important;
  animation-fill-mode:both !important;
}
body[data-page="home"] .mh-home-route-ship,
body[data-page="home"] .mh-home-top-icon .hero-full-logo{
  transform-origin:50% 50% !important;
  animation:none;
}
/* EXACT interaction requested: no spin on load; continuous spin only while cursor is over the clickable icon/route. */
@media (hover:hover) and (pointer:fine){
  body[data-page="home"] .mh-home-ship-route:hover .mh-home-route-ship,
  body[data-page="home"] .mh-home-top-icon:hover .hero-full-logo{
    animation:movingShipHoverSpin 1.05s linear infinite !important;
  }
}
/* Touch equivalent for the PWA. */
body[data-page="home"] .mh-home-route-ship.mh-force-spin,
body[data-page="home"] .mh-home-top-icon .hero-full-logo.mh-top-tap-spin{
  animation:movingShipHoverSpin 1.05s linear 1 !important;
}
@keyframes movingShipHoverSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}


/* SIMPLE_ELDER_APP_V1 */
body[data-page="home"] .mh-home-action-wrap{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px 16px 24px;max-width:560px;margin:0 auto;}
.mh-home-action-btn{appearance:none;border:1px solid rgba(65,74,130,.16);border-radius:22px;background:#fff;min-height:128px;padding:18px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;box-shadow:0 16px 42px rgba(19,39,55,.08);color:#33415c;font:inherit;cursor:pointer;}
.mh-home-action-btn small{color:#6a7893;font-size:12px;line-height:1.5;}
.mh-home-action-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#f1f3fb;font-size:28px;}
.mh-home-action-text{font-size:28px;font-weight:700;line-height:1.2;color:#414a82;}
.mh-action-save .mh-home-action-icon{background:#eef7f1;}
.mh-action-connect .mh-home-action-icon{background:#f7eef7;}
body[data-page="home"] .mh-home-nav-grid-simple{grid-template-columns:repeat(2,minmax(0,1fr));}
.mh-simple-connect-dialog{width:min(92vw,560px);border:0;padding:0;border-radius:24px;background:transparent;}
.mh-simple-connect-dialog::backdrop{background:rgba(14,25,39,.48);backdrop-filter:blur(4px);}
.mh-simple-connect-shell{background:#fffdf8;border-radius:24px;padding:22px;box-shadow:0 24px 80px rgba(16,30,48,.25);}
.mh-simple-connect-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px;}
.mh-simple-connect-head h2{margin:0;color:#414a82;font-size:26px;font-weight:700;line-height:1.4;font-family:system-ui,-apple-system,'Noto Sans JP',sans-serif;}
.mh-simple-connect-panel{display:grid;gap:14px;}
.mh-simple-connect-help{margin:0;color:#5d6d81;font-size:14px;line-height:1.8;}
.mh-simple-connect-modes{display:grid;gap:10px;}
.mh-connect-mode-btn{appearance:none;border:1px solid rgba(65,74,130,.16);border-radius:16px;background:#fff;padding:15px 14px;font:700 16px/1.4 system-ui,-apple-system,'Noto Sans JP',sans-serif;color:#414a82;text-align:left;cursor:pointer;}
.mh-connect-mode-btn.is-selected{background:#eef1ff;border-color:#6670b8;box-shadow:inset 0 0 0 1px rgba(102,112,184,.18);}
.mh-simple-connect-form{padding:14px;border:1px solid rgba(65,74,130,.12);border-radius:18px;background:#fff;}
.mh-simple-connect-selected{font-weight:700;color:#414a82;margin-bottom:10px;}
.mh-connect-note{width:100%;resize:vertical;min-height:88px;}
.mh-connect-actions{justify-content:flex-end;}
.mh-connect-message{min-height:1.4em;margin-top:8px;color:#12666b;font-size:14px;font-weight:700;}
.mh-simple-icon-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.mh-simple-icon-card{padding-top:22px;}
.mh-simple-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 10px;border-radius:50%;background:#f1f3fb;font-size:31px;}
.mh-simple-flow-stage{padding-bottom:40px;}
.mh-simple-flow-inner{max-width:640px;}
.mh-simple-connect-inline{max-width:560px;margin:0 auto;padding:20px;border:1px solid rgba(65,74,130,.12);border-radius:22px;background:#fff;}
@media (max-width:640px){
  body[data-page="home"] .mh-home-action-wrap{grid-template-columns:1fr;}
  .mh-simple-icon-grid{grid-template-columns:1fr;}
}


/* STORY_ABOUT_MOBILE_V21 */
@media (max-width:760px){
  /* Story: one clear vertical reading path for phones */
  body[data-page="story"]{font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.85;letter-spacing:.015em;background:#fffdf8;}
  body[data-page="story"] .story-hero{display:flex!important;flex-direction:column!important;min-height:0!important;border-bottom:0!important;}
  body[data-page="story"] .story-hero-media{min-height:0!important;order:1!important;}
  body[data-page="story"] .story-hero-media img{width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important;object-position:center!important;}
  body[data-page="story"] .story-hero-copy{order:2!important;padding:30px 20px 34px!important;background:#fffdf8!important;}
  body[data-page="story"] .story-hero-copy .inner{max-width:none!important;width:100%!important;}
  body[data-page="story"] h1{font-size:30px!important;line-height:1.55!important;letter-spacing:.03em!important;margin:0 0 20px!important;}
  body[data-page="story"] h2{font-size:25px!important;line-height:1.55!important;letter-spacing:.025em!important;margin:0 0 18px!important;}
  body[data-page="story"] p{font-size:17px!important;line-height:1.9!important;letter-spacing:.01em!important;margin:0 0 16px!important;}
  body[data-page="story"] .eyebrow{margin-bottom:10px!important;font-size:11px!important;}
  body[data-page="story"] .story-section,
  body[data-page="story"] .story-section.reverse{display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important;margin:0!important;max-width:none!important;background:#fffdf8;}
  body[data-page="story"] .story-section .media,
  body[data-page="story"] .story-section.reverse .media{order:1!important;width:100%!important;}
  body[data-page="story"] .story-section .copy,
  body[data-page="story"] .story-section.reverse .copy{order:2!important;max-width:none!important;width:100%!important;padding:32px 20px 38px!important;}
  body[data-page="story"] .story-section .media img,
  body[data-page="story"] .story-small-media img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:4/3!important;object-fit:cover!important;box-shadow:none!important;}
  body[data-page="story"] .time-passage{min-height:250px!important;}
  body[data-page="story"] .time-passage h2{font-size:25px!important;line-height:1.55!important;padding:0 22px!important;}
  body[data-page="story"] .story-full{min-height:460px!important;}
  body[data-page="story"] .story-full img{object-position:center!important;}
  body[data-page="story"] .story-full:after{background:linear-gradient(0deg,rgba(17,49,62,.62),rgba(17,49,62,.08) 72%)!important;}
  body[data-page="story"] .story-full .overlay{position:absolute!important;left:0;right:0;bottom:0;padding:34px 20px 28px!important;}
  body[data-page="story"] .story-full .overlay h2{font-size:26px!important;line-height:1.55!important;margin-bottom:14px!important;}
  body[data-page="story"] .story-full .overlay p{font-size:16px!important;line-height:1.8!important;margin-bottom:0!important;}
  body[data-page="story"] .story-end-footer{margin-top:0!important;}

  /* Thought/About: large text, short lines, simple cards */
  body.about-page{font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.9;letter-spacing:.01em;background:#fffdf8;}
  body.about-page .thought-page{padding:0!important;background:#fffdf8!important;}
  body.about-page .thought-inner{width:100%!important;max-width:680px!important;margin:0 auto!important;padding:34px 20px 44px!important;}
  body.about-page .thought-inner>h1{font-size:31px!important;line-height:1.45!important;margin:0 0 28px!important;text-align:center!important;color:#414a82!important;}
  body.about-page .thought-inner>p{font-size:17px!important;line-height:1.9!important;margin:0 0 17px!important;}
  body.about-page .thought-section{margin:34px 0 0!important;padding:24px 18px!important;border:1px solid rgba(65,74,130,.12)!important;border-radius:20px!important;background:#fff!important;box-shadow:0 10px 28px rgba(28,44,68,.06)!important;}
  body.about-page .thought-section h2{font-size:23px!important;line-height:1.55!important;margin:0 0 18px!important;display:flex!important;align-items:center!important;gap:10px!important;}
  body.about-page .thought-section p{font-size:17px!important;line-height:1.9!important;margin:0 0 16px!important;}
  body.about-page .section-marker{width:40px!important;height:40px!important;flex:0 0 40px!important;object-fit:contain!important;}
  body.about-page .six-words{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:20px 0!important;}
  body.about-page .six-words span{display:flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;padding:10px!important;border-radius:15px!important;background:#f1f3fb!important;color:#414a82!important;font-size:17px!important;font-weight:700!important;text-align:center!important;}
  body.about-page .tangerine-title span{font-size:31px!important;}
  body.about-page .site-footer{padding-bottom:26px!important;}
}


/* SURVEY_CONTACT_V22 */
.mh-feedback-main{min-height:70vh;padding:34px 16px 80px;background:#fcfaf5;}
.mh-feedback-card{width:min(100%,680px);margin:0 auto;padding:28px 22px;border:1px solid rgba(65,74,130,.12);border-radius:26px;background:#fff;box-shadow:0 18px 60px rgba(24,40,62,.08);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;color:#40506a;}
.mh-feedback-icon{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 16px;border-radius:50%;background:#f0f2fb;font-size:32px;}
.mh-feedback-card h1{font-family:inherit;text-align:center;font-weight:750;font-size:clamp(28px,7vw,38px);line-height:1.45;margin:0 0 16px;color:#414a82;letter-spacing:.02em;}
.mh-feedback-card .eyebrow{text-align:center;margin-bottom:8px;}
.mh-feedback-lead{text-align:center;font-size:16px;line-height:1.9;margin:0 0 24px;}
.mh-survey-points{display:grid;gap:12px;margin:20px 0 26px;}
.mh-survey-points>div{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;padding:14px;border-radius:16px;background:#f7f8fc;}
.mh-survey-points span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#414a82;color:#fff;font-weight:700;}
.mh-survey-points p{margin:0;font-size:14px;line-height:1.7;}
.mh-feedback-action{text-align:center;margin:24px 0;}
.mh-google-form-button{display:flex;align-items:center;justify-content:center;min-height:58px;padding:14px 18px;border-radius:18px;background:#177f84;color:#fff;font-size:18px;font-weight:700;text-decoration:none;}
.mh-google-form-button.is-placeholder{opacity:.58;}
.mh-form-status{margin:12px 0 0;color:#71808d;font-size:12px;line-height:1.7;}
.mh-contact-form{margin-top:24px;}
.mh-contact-textarea{width:100%;min-height:150px;resize:vertical;}
.mh-contact-actions{display:flex;justify-content:center;margin-top:18px;}
.mh-contact-draft-message{min-height:1.5em;text-align:center;margin-top:10px;color:#12666b;font-size:14px;font-weight:700;}
.mh-contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.mh-contact-preview{margin-top:24px;padding:22px;border:1px solid #dce7e7;border-radius:16px;background:#fff}
.mh-contact-preview[hidden],.mh-contact-form[hidden]{display:none!important}
.mh-contact-preview h2{font-size:20px;color:#173d50;margin:0 0 16px}
.mh-contact-preview dl{margin:0}.mh-contact-preview dt{font-weight:700;color:#414a82;margin-top:16px}.mh-contact-preview dd{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.mh-contact-preview .mh-contact-actions{gap:12px;flex-wrap:wrap}.mh-contact-back{border:1px solid #a7b8bf;border-radius:999px;background:white;color:#173d50;padding:11px 20px;cursor:pointer}
.mh-contact-preview button[hidden]{display:none!important}
@media(max-width:760px){.mh-feedback-main{padding-top:22px}.mh-feedback-card{padding:24px 18px;border-radius:22px}.mh-google-form-button{font-size:17px}.mh-home-nav-grid-simple{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}

/* SAVE_FLOW_V32 */
.save-flow-section{margin-top:18px;padding-top:16px;border-top:1px solid rgba(23,61,80,.14)}
.save-flow-heading{font-weight:800;font-size:1.05rem;color:#173d50;margin-bottom:10px}
.save-flow-choice-row{display:grid;grid-template-columns:1fr;gap:9px;margin-top:8px}
.goal-note{margin:10px 0;padding:10px 12px;border-radius:12px;background:#eee8f6;color:#72538f;font-weight:700}
@media(min-width:540px){.save-flow-choice-row{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* ===== PWA home install card ===== */
.mh-pwa-home-card{
  width:min(92%,720px);margin:28px auto 18px;padding:20px;
  display:flex;align-items:center;gap:16px;
  border:1px solid rgba(65,74,130,.14);border-radius:20px;
  background:rgba(255,253,248,.92);box-shadow:0 10px 30px rgba(31,67,77,.08);
}
.mh-pwa-home-icon{width:72px;height:72px;object-fit:contain;flex:0 0 auto}
.mh-pwa-home-copy{flex:1;min-width:0}
.mh-pwa-home-copy h2{margin:2px 0 7px;font-size:20px;color:#173d50}
.mh-pwa-home-copy p{margin:0 0 12px;font-size:13px;line-height:1.7;color:#536b74}
.mh-pwa-home-button{
  appearance:none;border:0;border-radius:999px;padding:12px 18px;
  background:#173d50;color:#fff;font-weight:700;font-size:14px;cursor:pointer;
}
.mh-pwa-home-button:disabled{opacity:.55}
.mh-pwa-home-note{margin:9px 0 0!important;font-size:11px!important;color:#73828a!important}
@media(max-width:560px){
  .mh-pwa-home-card{align-items:flex-start;padding:17px 15px}
  .mh-pwa-home-icon{width:54px;height:54px}
  .mh-pwa-home-copy h2{font-size:18px}
}
@media(display-mode:standalone){
  .mh-pwa-home-card{display:none!important}
}

/* V39: single hamburger navigation only */
.navlinks,.mh-mobile-nav,.mh-step-nav,.mh-home-nav-area{display:none!important}
.survey-top .mh-account-menu{margin-left:auto}
.survey-top .mh-account-trigger{min-width:44px;width:44px;height:44px;padding:0;border-radius:50%}
.survey-top .mh-account-trigger small{display:none}
.survey-top .mh-account-trigger span{font-size:21px}


/* 想いの末尾: 大きい紫の船を先頭に、水色とピンクの船が続く一列の航行。 */
body[data-page="about"] .thought-inner{padding-bottom:36px}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-thought-ships{position:relative;padding:0 0 36px;overflow:hidden}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-thought-ship-lane{position:relative;max-width:980px;height:170px;margin:0 auto;overflow:hidden}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-thought-ship-convoy{
  position:absolute;left:100%;top:20px;display:flex;align-items:center;gap:12px;width:max-content;height:128px;
  animation:mhWaveShipCruise 26.6667s linear infinite;
}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-home-ship-route{display:flex;align-items:center;justify-content:center;position:relative;width:180px;height:128px;text-decoration:none;cursor:pointer;touch-action:manipulation;flex:none}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .blue-route,body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .pink-route{width:140px;height:100px}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-home-route-ship{position:relative;z-index:2;flex:0 0 auto;width:140px;height:auto;pointer-events:none;transform-origin:50% 50%}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .blue-route .mh-home-route-ship,body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .pink-route .mh-home-route-ship{width:99px}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-home-wave{
  position:relative;z-index:1;flex:1 1 0;min-width:18px;height:34px;pointer-events:none;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 40'%3E%3Cpath d='M0 22 C20 8 40 8 60 22 S100 36 120 22 S160 8 180 22 S220 36 240 22' fill='none' stroke='black' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 40'%3E%3Cpath d='M0 22 C20 8 40 8 60 22 S100 36 120 22 S160 8 180 22 S220 36 240 22' fill='none' stroke='black' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:100% 100%;mask-size:100% 100%;
}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .purple-route .mh-home-wave{background:linear-gradient(90deg,rgba(171,151,214,0),rgba(171,151,214,.34) 18%,rgba(255,255,255,.94) 50%,rgba(171,151,214,.34) 82%,rgba(171,151,214,0))}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .blue-route .mh-home-wave{background:linear-gradient(90deg,rgba(169,216,243,0),rgba(169,216,243,.34) 18%,rgba(255,255,255,.94) 50%,rgba(169,216,243,.34) 82%,rgba(169,216,243,0))}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .pink-route .mh-home-wave{background:linear-gradient(90deg,rgba(244,183,200,0),rgba(244,183,200,.34) 18%,rgba(255,255,255,.94) 50%,rgba(244,183,200,.34) 82%,rgba(244,183,200,0))}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-home-ship-route:focus-visible{outline:3px solid rgba(65,74,130,.45);outline-offset:3px;border-radius:999px}
@media(hover:hover) and (pointer:fine){body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-home-ship-route:hover .mh-home-route-ship{animation:movingShipHoverSpin 1.05s linear infinite}}
body:is([data-page="about"], [data-page="story"], [data-page="service"], [data-page="flow"], [data-page="contact"], [data-page="profile"]) .mh-home-route-ship.mh-force-spin{animation:movingShipHoverSpin 1.05s linear 1}

/* V52: match the home background on feedback and thought pages. */
body[data-page="contact"], body[data-page="contact"] .mh-feedback-main,
body[data-page="contact"] .mh-feedback-card,
body[data-page="about"], body[data-page="about"] .thought-page,
body[data-page="about"] .thought-inner,
body[data-page="about"] .thought-section,
body[data-page="story"] .mh-thought-ships{background:#FCFAF5!important;}
body[data-page="about"] .thought-page::before,
body[data-page="about"] .thought-page::after,
body[data-page="about"] .thought-inner::before{background:none!important;}

/* V53: all five home illustrations gently fade in and grow to full size. */
body[data-page="home"] .mh-home-slideshow .slide{
  transform:scale(.97);
  transition:opacity 1.6s ease;
}
body[data-page="home"] .mh-home-slideshow .slide.active{
  transform:scale(1);
  transform-origin:center center;
  animation:mhHomeHelmTurn 4s ease-in-out both;
}
@keyframes mhHomeHelmTurn{
  0%{opacity:0;transform:scale(.97) rotate(-4deg)}
  35%{opacity:.55;transform:scale(.985) rotate(1deg)}
  65%{opacity:1;transform:scale(1) rotate(4deg)}
  100%{opacity:1;transform:scale(1) rotate(-4deg)}
}
@media(prefers-reduced-motion:reduce){
  body[data-page="home"] .mh-home-slideshow .slide,
  body[data-page="home"] .mh-home-slideshow .slide.active{
    animation:none;transition:none;transform:none!important;
  }
}

body[data-page="home"] .mh-home-slideshow .slide{filter:sepia(.35) saturate(.28) brightness(1.12)}
body[data-page="home"] .visual-frame.mh-helm-link{display:block}
.mh-route-tooltip{display:none !important}
#mh-visible-route-hint{position:fixed;z-index:2147483000;max-width:calc(100vw - 24px);width:max-content;box-sizing:border-box;padding:10px 16px;border:1px solid #d9cec1;border-radius:18px;background:#fffaf2;color:#51463d;box-shadow:0 4px 16px rgba(70,55,40,.16);font-family:"Noto Sans JP",sans-serif;font-size:14px;line-height:1.6;text-align:center;pointer-events:none}
#mh-visible-route-hint[hidden]{display:none}
#mh-visible-route-hint:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;transform:rotate(45deg);background:#fffaf2;border-right:1px solid #d9cec1;border-bottom:1px solid #d9cec1}
