.elementor-213 .elementor-element.elementor-element-8eab94a{--display:flex;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-213 .elementor-element.elementor-element-8eab94a:not(.elementor-motion-effects-element-type-background), .elementor-213 .elementor-element.elementor-element-8eab94a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#D31919;}.elementor-213 .elementor-element.elementor-element-0edac7b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-213 .elementor-element.elementor-element-b085f46{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-213 .elementor-element.elementor-element-f01f429{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-213 .elementor-element.elementor-element-2dd2d4d{width:100%;max-width:100%;}@media(max-width:767px){.elementor-213 .elementor-element.elementor-element-8eab94a{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-213 .elementor-element.elementor-element-b085f46{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for html, class: .elementor-element-2dd2d4d *//* 電話ボタン本体（PC基準） */
.ae-tel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 0.7em;
  padding: 0.8em 1.8em;
  border-radius: 999px;
  background: linear-gradient(135deg, #1d4ed8, #22d3ee); /* 青グラデ */
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.25);
  position: relative;
  overflow: hidden;
  line-height: 1.2;
}

/* アイコン部分 */
.ae-tel-btn__icon img {
  width: 66px;
  height: auto;
  display: block;
}

/* テキスト全体（縦並び＆中央揃え） */
.ae-tel-btn__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* 黄色バッジ */
.ae-tel-btn__badge {
  font-size: 1rem;
  font-weight: 700;
  color: #ffeb3b;
  margin-bottom: 4px;
  letter-spacing: 0.03em;
  text-shadow: 0 0 4px rgba(0,0,0,0.45);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: italic;
}

/* ラベル（中見出し） */
.ae-tel-btn__label {
  font-size: 1.75rem;
  opacity: 0.9;
}

/* 電話番号（メイン） */
.ae-tel-btn__number {
  font-size: 4.1rem;
  letter-spacing: 0.06em;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: italic;
}

/* ゆるめのブルブルアニメ（常時） */
.ae-tel-btn--shake {
  animation: ae-tel-shake 0.9s ease-in-out infinite;
  transform-origin: center;
}

/* ゆるいブルブル：移動も回転も小さめ */
@keyframes ae-tel-shake {
  0%   { transform: translate(0, 0) rotate(0deg); }
  20%  { transform: translate(-1px, 0) rotate(-1deg); }
  40%  { transform: translate(1px, 0) rotate(1deg); }
  60%  { transform: translate(-0.5px, 0) rotate(-0.5deg); }
  80%  { transform: translate(0.5px, 0) rotate(0.5deg); }
  100% { transform: translate(0, 0) rotate(0deg); }
}

/* ホバー・タップ時：緑グラデに */
.ae-tel-btn:hover,
.ae-tel-btn:active {
  background: linear-gradient(135deg, #16a34a, #4ade80); /* グリーングラデ */
  color: #fff !important;
}

/* =========================
   タブレット向け（～1024px）
   ========================= */
@media (max-width: 1024px) {
  .ae-tel-btn {
    padding: 0.8em 1.4em;
  }
  .ae-tel-btn__icon img {
    width: 52px;
  }
  .ae-tel-btn__badge {
    font-size: 0.9rem;
  }
  .ae-tel-btn__label {
    font-size: 1.4rem;
  }
  .ae-tel-btn__number {
    font-size: 3.2rem;
  }
}

/* =========================
   スマホ向け（～768px）
   ========================= */
@media (max-width: 768px) {
  .ae-tel-btn {
    padding: 0.7em 1.2em;
    gap: 0.5em;
  }
  .ae-tel-btn__icon img {
    width: 40px;
  }
  .ae-tel-btn__badge {
    font-size: 0.85rem;
  }
  .ae-tel-btn__label {
    font-size: 1.2rem;
  }
  .ae-tel-btn__number {
    font-size: 2.4rem;
  }
}

/* =========================
   かなり小さいスマホ（～480px）
   ========================= */
@media (max-width: 480px) {
  .ae-tel-btn {
    padding: 0.6em 0.9em;
  }
  .ae-tel-btn__icon img {
    width: 32px;
  }
  .ae-tel-btn__badge {
    font-size: 0.78rem;
  }
  .ae-tel-btn__label {
    font-size: 0.8rem;
  }
  .ae-tel-btn__number {
    font-size: 1.9rem;
    letter-spacing: 0.04em;
  }
}/* End custom CSS */