#hy-demo-cta{position:fixed;right:22px;bottom:22px;z-index:900;width:380px;max-width:calc(100vw - 32px);font-family:"Noto Sans JP",Meiryo,sans-serif}
#hy-demo-cta .hy-demo-launch{display:block;text-decoration:none;border-radius:20px;transition:transform .18s ease;line-height:1}
#hy-demo-cta .hy-demo-launch:hover{transform:translateY(-3px)}
#hy-demo-cta img{display:block;width:100%;height:auto;margin:0;filter:drop-shadow(0 8px 12px #42220e25)}
#hy-demo-cta button.hy-demo-dismiss{position:absolute;z-index:1;right:0;top:-14px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #ddd;border-radius:50%;background:#fff;color:#62564e;font:22px/1 sans-serif;cursor:pointer;box-shadow:0 2px 8px #0001}
#hy-demo-cta .hy-demo-compact{display:none}
#hy-demo-cta.is-compact{width:auto}
#hy-demo-cta.is-compact img,#hy-demo-cta.is-compact .hy-demo-dismiss{display:none}
#hy-demo-cta.is-compact .hy-demo-compact{display:block;padding:13px 18px;border-radius:99px;color:#fff;background:#c43f0c;font-size:13px;font-weight:700;box-shadow:0 4px 18px #48210a26}
#hy-demo-cta :focus-visible,#hy-demo-dialog :focus-visible{outline:3px solid #f3a84d;outline-offset:4px}
#hy-demo-dialog{box-sizing:border-box;width:min(870px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:26px;background:#fffaf5;color:#30241d;overflow:auto;box-shadow:0 30px 100px #0005;font-family:"Noto Sans JP",Meiryo,sans-serif}
#hy-demo-dialog::backdrop{background:#211b18b8;backdrop-filter:blur(4px)}
#hy-demo-dialog .hy-demo-shell{position:relative;display:flex;gap:36px;align-items:center;padding:52px 32px 24px}
#hy-demo-dialog .hy-demo-close{position:absolute;top:10px;right:14px;display:flex;align-items:center;gap:6px;border:0;border-radius:24px;padding:7px 12px;background:#eee5dd;color:#43342b;font:22px/1 sans-serif;cursor:pointer}
#hy-demo-dialog .hy-demo-close span{font-size:13px;font-weight:bold}
#hy-demo-dialog .hy-demo-phone{flex:0 0 390px;height:min(740px,calc(100dvh - 116px));min-height:260px;border:9px solid #262320;border-radius:32px;overflow:hidden;background:#fffaf5;box-shadow:0 12px 30px #2b170d24;box-sizing:border-box}
#hy-demo-dialog iframe{display:block;width:100%;height:100%;border:0;background:#fffaf5}
#hy-demo-dialog .hy-demo-guide{flex:1;min-width:0;font-size:14px;line-height:1.9}
#hy-demo-dialog .hy-demo-label{display:inline-block;padding:3px 11px;background:#ffeadb;color:#b43708;border-radius:99px;font-size:12px;font-weight:700}
#hy-demo-dialog h2{margin:14px 0;font-size:25px;line-height:1.55;letter-spacing:-.03em;color:#30241d}
#hy-demo-dialog p{margin:0 0 20px}
#hy-demo-dialog ol{margin:0 0 24px;padding-left:1.5em;list-style:decimal}
#hy-demo-dialog li{margin:9px 0}
#hy-demo-dialog .hy-demo-note{font-size:12px;color:#79695e}
#hy-demo-dialog a{color:#bb3b0d;text-decoration:underline;text-underline-offset:4px;font-weight:700}
@media(max-width:900px){#hy-demo-dialog{width:min(760px,calc(100vw - 32px))}#hy-demo-dialog .hy-demo-shell{gap:24px;padding-left:20px;padding-right:20px}#hy-demo-dialog .hy-demo-phone{flex-basis:350px}#hy-demo-dialog h2{font-size:21px}}
@media(max-width:767px){#hy-demo-cta{width:280px;right:10px;bottom:calc(var(--hy-demo-mobile-bar,80px) + 12px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 24px)}#hy-demo-cta button.hy-demo-dismiss{width:28px;height:28px;top:-16px}#hy-demo-cta.is-compact .hy-demo-compact{font-size:12px;padding:11px 15px}}
@media(prefers-reduced-motion:reduce){#hy-demo-cta .hy-demo-launch{transition:none}}

/* Larger dismiss control on desktop and mobile. */
#hy-demo-cta button.hy-demo-dismiss{width:44px;height:44px;top:-22px;font:32px/1 sans-serif;color:#43342b}

/* スマホのメニュー（ドロワー）を開いている間は隠す（テーマが body に drawer-open を付ける） */
#hy-demo-cta{transition:opacity .2s ease,visibility .2s}
body.drawer-open #hy-demo-cta{opacity:0;visibility:hidden;pointer-events:none}
