.loop-slider {
    display: flex;
    overflow: hidden;
}

.loop-slider .wp-block-group__inner-container,
.loop-slider .swell-block-columns {
    display: contents;
}

.loop-slider .swell-block-columns__inner {
    flex-wrap: nowrap;
    animation: infinity-scroll-left 60s infinite linear; /* アニメーションの時間を指定 */
}

.loop-slider .swell-block-column figure {
    width: 450px; /* 画像の横幅を指定（パソコン） */
    position: relative;
}

.loop-slider .swell-block-column figure::before {
    padding-top: 65%; /* 画像の縦横比を指定 */
    display: block;
    content: "";
}

.loop-slider .swell-block-column figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 959px) {
    .loop-slider .swell-block-column figure {
        width: 200px; /* 画像の横幅を指定（スマホ） */
    }
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

/* Contact Form 7 */

/* テキストを太字 */
.wpcf7-form label {
font-weight: bold;
}
/* フォームの下に余白 */
.wpcf7-form p {
margin-bottom: 30px;
}
/* フォームのカスタマイズ */
.wpcf7-text, .wpcf7-email, .wpcf7-tel, .wpcf7-textarea {
width: 100%;
background-color: #fff;
margin-top: 5px;
}
/* ラジオボタンの左の余白 */
.wpcf7-radio span {
margin-left: 0;
}
/* ボタンのカスタマイズ */
.wpcf7-submit, .wpcf7-previous {
display: inline-block;
width: 240px;
padding: 1.2em 1em;
border-radius: 50px;
background: #680182;/* ここにメインカラー */
font-size: 16px;
font-weight: 700;
letter-spacing: 0.2em;
line-height: 1;
color: #fff!important;
}
/* 必須マーク */
.required {
color: #fff;
background: #680182;/* ここにメインカラー */
font-size: 0.8em;
padding: 0.3em;
border-radius: 0.5em;
}

/* Contact Form 7のラジオボタンを縦並びにする */
.wpcf7-radio .wpcf7-list-item {
  display: block;
  margin-top: 5px; /* 上下の間隔はお好みで調整 */
}

/* 作り方
https://vool.jp/swell-follow-banner/
*/

/* フォローバナーのスタイル */
.follow-banner-right {
  position: fixed;
  top: 56%; /* ページの中央に垂直配置 */
  right: 0; /* 右端に固定 */
  transform: translateY(-50%); /* バナーを縦中央に揃える */
  z-index: 20; /* 他の要素の上に表示 */
}

/* リストのスタイル */
ul.follow-banner-right-ul {
  list-style: none; /* リストマークを消す */
}

/* リンクのスタイル */
.follow-banner-right a {
  display: flex;
  align-items: center; /* アイコンとテキストを縦中央に揃える */
  gap: 0.4em; /* アイコンとテキストの間のスペース */
  writing-mode: vertical-rl; /* テキストを縦書きに設定 */
  font-size: 16px; /* フォントサイズ */
  font-weight: 700; /* フォントの太さ */
  letter-spacing: 0.185em; /* 文字間隔 */
  padding: 1.3em 0.8em; /* 内側の余白 */
  border-radius: 10px 0 0 10px; /* 角丸の設定 */
  transition: opacity 0.25s; /* ホバー時の透明度の遷移 */
}

/* ホバー時の透明度変更 */
.follow-banner-right a:hover {
  opacity: 0.7;
}

/* アイコンの中央揃え */
.follow-banner-right .swl-inline-icon::after {
  left: 50%;
  transform: translateX(-50%);
}

/* スマホでは非表示 */
@media screen and (max-width: 599px) {
  .follow-banner-right {
    display: none;
  }
}

/* ボタンごとのスタイル設定 */
.follow-banner-right-01 a {
  color: #fff;
  background-color: var(--color_main); /* メインカラー */
}

.follow-banner-right-02 a {
  color: #fff;
  background-color: #08A380; /* 緑色 */
  text-orientation: upright; /* アルファベットを縦書きに */
}

/* リストアイテムの間隔設定 */
ul.follow-banner-right-ul li {
  margin: 0.8em 0; /* 縦のマージンを設定 */
}

/* ボタンの角丸設定 */
.follow-banner-right a {
  border-radius: 10px 0 0 10px; /* 全てのボタンに共通の角丸 */
}

/* 上側ボタンの角丸設定 */
.follow-banner-right-01 a {
  border-radius: 13px 0 0 13px; /* 上側の角を丸く */
}

/* 下側ボタンの角丸設定 */
.follow-banner-right-02 a {
  border-radius: 13px 0 0 13px; /* 中央は角丸を無効化 */
}

.follow-banner-right-02 a {
  padding: 2em 0.8em; /* 上側ボタンと同じpaddingを指定 */
}

.follow-banner-right a {
  text-decoration: none;
}

#custom_html-17 .c-widget__title,
#custom_html-18 .c-widget__title,
#custom_html-19 .c-widget__title {
  display: none;
}

/* タイトル下の余白（ウィジェット全体の上部余白）が気になる場合は、ウィジェット自体の上マージンも調整 */
#custom_html-17,
#custom_html-18,
#custom_html-19 {
  margin-top: 12px !important;
  padding-top: 0px !important;
}