/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Mar 02 2026 | 06:27:43 */
  /* ================================ */
  /* Floating Button                  */
  /* ================================ */
  /* 「上へ戻るボタン」(右下 bottom:20〜30px) の上に配置 */
  /* backTop: bottom:34px + height:92px = 上端126px → 16px余白 */
  .float-wrap{position:fixed;bottom:142px;right:34px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:0}

  /* Nudge bubble */
  .float-nudge{background:#fff;border-radius:12px 12px 4px 12px;padding:12px 18px;box-shadow:0 4px 20px rgba(0,0,0,.1);font-size:13px;color:#333;line-height:1.6;max-width:240px;margin-bottom:10px;position:relative;opacity:0;transform:translateY(8px) scale(.95);animation:nudgeIn .4s ease forwards;animation-delay:2s;cursor:default}
  .float-nudge::after{content:'';position:absolute;bottom:-6px;right:20px;width:12px;height:12px;background:#fff;transform:rotate(45deg);box-shadow:2px 2px 4px rgba(0,0,0,.04)}
  .float-nudge .nudge-bold{font-weight:700;color:#1a2a4a}
  .float-nudge-close{position:absolute;top:6px;right:8px;width:18px;height:18px;border:none;background:none;font-size:14px;color:#bbb;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:.2s}
  .float-nudge-close:hover{background:#f0f0f0;color:#666}
  @keyframes nudgeIn{to{opacity:1;transform:translateY(0) scale(1)}}

  /* Main button */
  .float-btn{width:64px;height:64px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,#2a6cb6,#1a4a8a);color:#fff;box-shadow:0 4px 20px rgba(42,108,182,.35);display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative}
  .float-btn:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(42,108,182,.45)}
  .float-btn:active{transform:scale(.96)}
  .float-btn svg{width:28px;height:28px;transition:transform .3s ease}
  .float-btn.open svg{transform:rotate(90deg)}

  /* Pulse ring */
  .float-btn::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(42,108,182,.3);animation:pulse 2.5s ease-in-out infinite}
  @keyframes pulse{0%,100%{transform:scale(1);opacity:.6}50%{transform:scale(1.15);opacity:0}}

  /* ================================ */
  /* Expanded Panel                   */
  /* ================================ */
  /* ボタン(64px) + gap(12px) 分上に配置 */
  .float-panel{position:fixed;bottom:196px;right:24px;width:340px;background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.12);z-index:9998;overflow:hidden;transform:translateY(12px) scale(.95);opacity:0;pointer-events:none;transition:all .3s ease}
  .float-panel.show{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}

  .float-panel-header{background:linear-gradient(135deg,#1a2a4a,#2a4a6a);color:#fff;padding:20px 22px 16px}
  .float-panel-header h3{font-size:16px;font-weight:700;margin-bottom:2px}
  .float-panel-header p{font-size:12px;color:rgba(255,255,255,.65)}

  .float-panel-body{padding:18px 20px 20px}
  .panel-option{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;border:1.5px solid #e8ecf0;margin-bottom:10px;cursor:pointer;transition:.2s;text-decoration:none;color:#1a1a2e}
  .panel-option:hover{border-color:#5bb8f5;background:#f8fbff}
  .panel-option .po-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
  .panel-option .po-icon.spiral{background:#eaf4fd}
  .panel-option .po-icon.dx{background:#e6f7ef}
  .panel-option .po-icon.tel{background:#fef5e6}
  .panel-option h4{font-size:14px;font-weight:700;margin-bottom:1px}
  .panel-option p{font-size:12px;color:#888;line-height:1.5;margin:0}

  .panel-divider{height:1px;background:#eee;margin:6px 0 14px}
  .panel-hours{font-size:11px;color:#aaa;text-align:center;line-height:1.6}

  /* ================================ */
  /* Mobile                           */
  /* ================================ */
  @media(max-width:767px){
    /* backTop: bottom:5.33vw + height:11.73vw = 上端17.06vw → 16px余白 */
    .float-wrap{bottom:calc(17.07vw + 16px);right:5.3333333333vw}
    .float-btn{width:56px;height:56px}
    .float-btn svg{width:24px;height:24px}
    .float-nudge{max-width:200px;font-size:12px;padding:10px 14px}
    .float-panel{right:12px;left:12px;width:auto;bottom:calc(17.07vw + 88px)}
  }