.elementor-9641 .elementor-element.elementor-element-4f107882{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9641 .elementor-element.elementor-element-4f107882.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-9641 .elementor-element.elementor-element-b4892ba .elementor-button{background-color:#FFFFFF;font-family:"yu-mincho-pr6n", Sans-serif;font-size:19px;font-weight:500;letter-spacing:1.7px;fill:#000000;color:#000000;}.elementor-9641 .elementor-element.elementor-element-b4892ba{width:var( --container-widget-width, 0% );max-width:0%;--container-widget-width:0%;--container-widget-flex-grow:0;}.elementor-9641 .elementor-element.elementor-element-b4892ba.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-9641 .elementor-element.elementor-element-b4892ba .elementor-button .elementor-button-content-wrapper{justify-content:center;}#elementor-popup-modal-9641 .dialog-widget-content{animation-duration:1s;border-radius:0px 0px 0px 0px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-9641 .dialog-message{width:20vw;height:40px;align-items:flex-end;}#elementor-popup-modal-9641{justify-content:center;align-items:flex-end;}@media(min-width:768px){.elementor-9641 .elementor-element.elementor-element-4f107882{--width:116.911%;}}@media(max-width:1024px) and (min-width:768px){.elementor-9641 .elementor-element.elementor-element-4f107882{--width:558px;}}@media(max-width:1024px){.elementor-9641 .elementor-element.elementor-element-4f107882{--min-height:63px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9641 .elementor-element.elementor-element-4f107882.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-9641 .elementor-element.elementor-element-b4892ba{width:var( --container-widget-width, 200px );max-width:200px;--container-widget-width:200px;--container-widget-flex-grow:0;}.elementor-9641 .elementor-element.elementor-element-b4892ba.elementor-element{--align-self:center;}.elementor-9641 .elementor-element.elementor-element-b4892ba .elementor-button{font-size:18px;line-height:1.3em;}#elementor-popup-modal-9641 .dialog-message{width:26vw;}}@media(max-width:767px){.elementor-9641 .elementor-element.elementor-element-b4892ba > .elementor-widget-container{padding:20px 0px 11px 0px;}.elementor-9641 .elementor-element.elementor-element-b4892ba{--container-widget-width:178px;--container-widget-flex-grow:0;width:var( --container-widget-width, 178px );max-width:178px;}.elementor-9641 .elementor-element.elementor-element-b4892ba.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-9641 .elementor-element.elementor-element-b4892ba .elementor-button .elementor-button-content-wrapper{justify-content:center;}.elementor-9641 .elementor-element.elementor-element-b4892ba .elementor-button{font-size:15px;line-height:1.2em;letter-spacing:0px;padding:20px 0px 0px 0px;}#elementor-popup-modal-9641 .dialog-message{width:51vw;}#elementor-popup-modal-9641{align-items:flex-end;}}/* Start custom CSS for button, class: .elementor-element-b4892ba *//*********************************************************
 *  追従ボタン ポップアップ用 完全CSS（PC/モバイル両対応）
 *  これを「ポップアップ > カスタムCSS」にそのまま貼るだけ
 *  前提：最上位コンテナに CSS ID = floating-btn
 *********************************************************/

/* ===== 全体の横はみ出しを封じてバーを出さない（PC/SP共通） ===== */
html, body { overflow-x: hidden; }            /* 安全策：横スクロール禁止 */
.elementor-popup-modal,
.elementor-popup-modal .dialog-message{
  max-width: 100vw;                           /* ポップアップ自体が画面幅超過しない */
  overflow-x: hidden;
}

/* ===== 追従本体：画面下中央に固定（上方向の押上げはJSで--pushに代入） ===== */
#floating-btn{
  position: fixed;
  left: 50%;
  bottom: max(20px, env(safe-area-inset-bottom));
  transform: translate(-50%, var(--push, 0));
  z-index: 99999;
  max-width: 100vw;                           /* 物理的に超えない */
  box-sizing: border-box;
  inset-inline: auto;                         /* Elementorの整列影響を受けにくく */
}

/* ===== 追従内の余計な横スクロールを完全無効化 ===== */
#floating-btn .e-con-inner,
#floating-btn .elementor-widget-container{
  overflow: visible !important;
}

/* ===== ボタンの“文字が上にズレる”問題のリセット（PC/SP共通） ===== */
#floating-btn .elementor-button,
#floating-btn .elementor-button-link{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;                /* 44–52pxで調整OK */
  padding: 12px 20px !important;
  line-height: 1.3 !important;
  height: auto !important;
  max-width: 92vw;                            /* 余白を確保してはみ出し防止 */
  box-sizing: border-box;
  overflow: visible !important;
}

#floating-btn .elementor-button-content-wrapper{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .5em;
}

#floating-btn .elementor-button-text{
  position: static !important;
  transform: none !important;
  margin: 0 !important;
  line-height: 1.3 !important;
  white-space: nowrap;                         /* 1行表示。折り返したいなら削除 */
}

#floating-btn .elementor-button-icon{
  position: static !important;
  transform: none !important;
  margin: 0 .4em 0 0 !important;
}

/* ===== モバイル微調整（必要なら値だけ触ってOK） ===== */
@media (max-width: 767px){
  #floating-btn .elementor-button,
  #floating-btn .elementor-button-link{
    min-height: 48px !important;
    padding: 12px 18px !important;
  }
  body{ width: 100%; }                        /* アドレスバーの伸縮での1pxはみ出し対策 */
}

/* ===== オーバーレイがクリックを阻害する場合の保険（必要な人だけ解除） ===== */
/* 使うときはコメントアウトを外してください
.dialog-widget-content.dialog-lightbox-widget{
  background: transparent !important;
}
*/

/* ===== まれに発生する“独自スクロール領域”の解除（必要時のみ） ===== */
/* 使うときはコメントアウトを外してください
.elementor-popup-modal .dialog-message{
  overflow: visible !important;
  max-height: none !important;
}
*//* End custom CSS */