/* ==========================================
 * スライダーのCSS（既存のもの）
 * ========================================== */
.slider1 {
  display: flex;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 200px;
  overflow: hidden;
}
.slider1 ul {
  display: flex;
  padding: 0;
  margin: 0;
}
.slider1 li {
  width: 300px;
  list-style: none;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}
.slider1 li img {
  max-width: 100%;
  height: auto;
  display: block;
  border: 3mm solid white;
  box-sizing: border-box;
}
.image-title {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 5px 10px;
  border-radius: 5px;
  font-size: 0.9em;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90%;
  box-sizing: border-box;
}
.slider1 ul:first-child {
  animation: slide1 150s -75s linear infinite;
}
.slider1 ul:last-child {
  animation: slide2 150s linear infinite;
}
@keyframes slide1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes slide2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}

/* ==========================================
 * 追加：画面下部のお問い合わせ固定バー
 * ========================================== */

/* 1. バー全体を画面最下部に固定 */
#callnowbutton.callbutton {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99999;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}

/* 2. ボタンを横並び（3等分）にする */
#callnowbutton .m0 {
    margin: 0 !important;
    padding: 0 !important;
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
}

#callnowbutton td {
    padding: 0 !important;
    text-align: center;
    vertical-align: middle;
    height: 60px; /* バーの高さ */
}

/* 3. ボタンの中の文字やリンクの設定 */
#callnowbutton td a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: bold;
    font-size: 16px;
    width: 100%;
    height: 100%;
}

/* 4. 各ボタンの背景色 */
#callnowbutton .footer_orange {
    background-color: #ff6600; /* オレンジ */
}
#callnowbutton .footer_blue {
    background-color: #0044cc; /* 青 */
}
#callnowbutton .footer_green {
    background-color: #39cc39; /* 緑 */
}

/* 5. パソコンとスマホでの表示切り替え */
#callnowbutton .sp {
    display: none !important; /* パソコンではスマホ用文字を隠す */
}
#callnowbutton .pc {
    display: inline !important;
}
#callnowbutton br.sp {
    display: none;
}

/* スマホ画面（幅767px以下）のときの設定 */
@media screen and (max-width: 767px) {
    #callnowbutton td {
        height: 55px; /* スマホは少し低めに */
    }
    #callnowbutton td a {
        font-size: 13px; /* スマホは文字を少し小さく */
    }
    #callnowbutton .sp {
        display: inline !important; /* スマホ用文字を表示 */
    }
    #callnowbutton .pc {
        display: none !important; /* パソコン用文字を隠す */
    }
    #callnowbutton br.sp {
        display: block; /* スマホでは改行を入れる */
    }
}

/* 6. 最下部のコンテンツがバーに被って隠れないようにする余白 */
#all_wrapper, #container, body {
    padding-bottom: 60px !important;
}