.header-html-inner{
	display:flex;
}

.vp-header {
    align-items: center !important;
}
/* いいねボタンのスタイル */
.custom-like-btn {
    margin: 20px 0;
    text-align: center;
    position: absolute;
    right: 0;
}

.like-button {
    background: linear-gradient(135deg, #d86c97 0%, #cf82a0 100%);
    border: none;
    color: white;
    padding: 12px 24px;
    border-radius: 50px;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
    position: relative;
    overflow: hidden;
}

.like-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.like-button:active {
    transform: translateY(0);
}

.like-button.processing {
    opacity: 0.7;
    cursor: not-allowed;
}

/* いいね時のアニメーション */
.like-button.liked {
    animation: likeAnimation 0.3s ease;
}

@keyframes likeAnimation {
    0% { transform: scale(1); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}

/* カウント数のスタイル */
.like-count {
    font-weight: bold;
    background: rgba(255, 255, 255, 0.2);
    padding: 2px 8px;
    border-radius: 15px;
    margin-left: 5px;
}

/* 成功メッセージ */
.like-message {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    background: #4caf50;
    color: white;
    padding: 4px 12px;
    border-radius: 15px;
    font-size: 12px;
    white-space: nowrap;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .like-button {
        padding: 10px 20px;
        font-size: 14px;
    }
}



li#menu-item-1131 > a:before {
    content: "";  /* 空にする */
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 5px;
        margin-top: -10px;
    background-image: url('../images/crown.png');
    background-size: contain;  /* 画像をボックス内に収める */
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
}




/* スライダーの高さを制限 */
.kb-blocks-advanced-slider-init {
    max-height: 400px !important;
    overflow: hidden;
}

/* スライド内のコンテンツ高さ調整 */
.kb-blocks-advanced-slider-init .kb-slide {
    height: 400px !important;
}

/* ショートコードエリアの高さ調整 */
.kb-blocks-advanced-slider-init [data-slider-dots="true"] {
    padding: 20px;
    height: auto !important;
    min-height: 200px;
    max-height: 400px;
}





/* ベンダーランキング */
/* ベンダーランキング基本 */
.vendor-ranking {
    display: flex;
    gap: 15px;
    margin: 40px 0;
    padding: 20px;
    justify-content: center;
    flex-wrap: wrap;
}

/* カード基本サイズ（PC：20%幅） */
.vendor-card {
    position: relative;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s, box-shadow 0.3s;
    flex: 0 0 calc(20% - 12px);
    max-width: 200px;
}

/* 件数に応じた幅調整 */
.vendor-count-1 .vendor-card { flex: 0 0 200px; }
.vendor-count-2 .vendor-card { flex: 0 0 calc(33.333% - 10px); max-width: 250px; }
.vendor-count-3 .vendor-card { flex: 0 0 calc(30% - 12px); max-width: 220px; }
.vendor-count-4 .vendor-card { flex: 0 0 calc(23% - 12px); max-width: 210px; }

.vendor-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
}

/* ランキングバッジ（小さめに） */
.rank-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 14px;
    color: #fff;
    z-index: 10;
    box-shadow: 0 2px 6px rgba(0,0,0,0.3);
    border: 2px solid #fff;
}

.rank-badge.rank-1 {
    background: linear-gradient(135deg, #FFD700, #FFA500);
}

.rank-badge.rank-2 {
    background: linear-gradient(135deg, #C0C0C0, #808080);
}

.rank-badge.rank-3 {
    background: linear-gradient(135deg, #CD7F32, #8B4513);
}

.rank-badge.rank-4 {
    background: linear-gradient(135deg, #94a3b8, #64748b);
}

.rank-badge.rank-5 {
    background: linear-gradient(135deg, #94a3b8, #64748b);
}

/* 画像エリア */
.vendor-image {
    position: relative;
    width: 100%;
    height: 120px;
    overflow: hidden;
    background: #f3f4f6;
}

.vendor-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* テキストエリア */
.vendor-card h3 {
    padding: 10px 10px 5px;
    margin: 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.3;
    height: 40px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.vendor-card .likes-count {
    padding: 0 10px;
    color: #666;
    font-size: 12px;
    margin: 5px 0;
}

.vendor-card .vendor-link {
    display: block;
    margin: 8px 10px 10px;
    padding: 6px;
    background: #007cba;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    text-decoration: none;
    font-size: 12px;
    transition: background 0.3s;
}

.vendor-card .vendor-link:hover {
    background: #005a87;
}

/* タブレット（3列表示） */
@media (max-width: 1024px) {
    .vendor-card {
        flex: 0 0 calc(33.333% - 10px);
        max-width: 200px;
    }
    .vendor-count-1 .vendor-card,
    .vendor-count-2 .vendor-card {
        flex: 0 0 calc(45% - 10px);
        max-width: 250px;
    }
}

/* スマホ（2列表示） */
@media (max-width: 640px) {
    .vendor-ranking {
        gap: 10px;
        padding: 10px;
    }
    
    .vendor-card {
        flex: 0 0 calc(50% - 5px);
        max-width: none;
    }
    
    .vendor-count-1 .vendor-card {
        flex: 0 0 80%;
        max-width: 300px;
    }
}

/* さらに小さいスマホ（1列表示） */
@media (max-width: 380px) {
    .vendor-card {
        flex: 0 0 100%;
    }
}




/* 星評価 共通 */
.vpf-rate-row .vpf-stars { display:flex; align-items:center; gap:12px; }
.vpf-rate-row .vpf-stars .stars { display:flex; gap:6px; line-height:1; }
.vpf-rate-row .vpf-stars input[type="radio"] { position:absolute; opacity:0; pointer-events:none; }
.vpf-rate-row .vpf-stars label {
  font-size: 24px;   /* 星の大きさ */
  color: #cbd5e1;    /* 消灯色 */
  cursor: pointer;
  user-select: none;
  transition: transform .12s ease;
}
.vpf-rate-row .vpf-stars label.on { color:#f59e0b; }          /* 点灯＝ゴールド */
.vpf-rate-row .vpf-stars label:active { transform: scale(.9); }

.vpf-rate-row .vpf-stars .value {
  min-width: 64px;
  text-align: center;
  font-size: 14px;
  color:#334155;
  background:#eef2ff;
  border:1px solid #c7d2fe;
  border-radius: 6px;
  padding: 2px 8px;
}

/* 右端の凡例（任意） */
.vpf-rate-row .vpf-stars .scale { font-size:12px; color:#64748b; margin-left:6px; }

/* --- 星評価UI --- */
.vpf-rate-row .vpf-stars {
  display: inline-flex;
  flex-direction: row-reverse;          /* 右から並べる → CSSだけで「～まで塗る」ができる */
  gap: 6px;
}
.vpf-rate-row .vpf-stars input[type="radio"] {
  position: absolute !important;
  opacity: 0;
  width: 0;
  height: 0;
}
.vpf-rate-row .vpf-stars label {
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  color: #cbd5e1;                        /* 未選択：薄いグレー */
  transition: color .12s ease-in-out, transform .06s ease-in-out;
}
.vpf-rate-row .vpf-stars label::before { content: "★"; }

/* ホバー時：その星と右側（=小さい値）もまとめて点灯 */
.vpf-rate-row .vpf-stars label:hover,
.vpf-rate-row .vpf-stars label:hover ~ label {
  color: #fbbf24;
  transform: translateY(-1px);
}

/* 確定（:checked）時：その星と右側を点灯 */
.vpf-rate-row .vpf-stars input[type="radio"]:checked ~ label {
  color: #f59e0b;
}

/* キーボード操作のフォーカスリング */
.vpf-rate-row .vpf-stars input[type="radio"]:focus ~ label {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

/* 小さめ行間に合わせる場合（任意） */
.vpf-rate-row { display:flex; align-items:center; gap:12px; margin:.35rem 0; }
.vpf-rate-row .vpf-label { min-width: 10em; }
.vpf-rate-row .vpf-hint { font-size:12px; color:#6b7280; margin-left:8px; min-width:4em;}
.vpf-review-photos{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.vpf-review-photos img{display:block;border-radius:6px;max-width:160px;height:auto}
.vpf-review__overall{font-weight:700;margin:.25rem 0}
/* 口コミの写真は縦横比そのまま表示 */
.vpf-review-photos img {
  width: auto !important;
  height: auto !important;
  max-height: 160px;     /* 好きな上限サイズに調整 */
  max-width: 100%;
  object-fit: contain !important;
  border-radius: 8px;    /* 角丸はそのまま */
  display: block;
}

/* ----- レビュー・カードの雰囲気 ----- */
.vpf-review{background:#FFFAE8;border:1px solid #F4E3A7;border-radius:10px;padding:12px 14px;margin:14px 0;}
.vpf-review__row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:.4rem 0;}
.vpf-review__head{display:flex;align-items:center;justify-content:flex-end;gap:8px;cursor:pointer}
.vpf-review__total{font-weight:700;color:#111827}
.vpf-review__arrow{display:inline-flex;width:26px;height:26px;border-radius:50%;
  background:#FACC15;color:#fff;align-items:center;justify-content:center;line-height:1;}

/* ----- 開閉 ----- */
.vpf-review__body{display:none;margin-top:.6rem;}
.vpf-review.is-open .vpf-review__body{display:block;}
.vpf-review.is-open .vpf-review__arrow{transform:rotate(180deg)}

/* ----- 星（CSSマスクでキレイに） ----- */
.vpf-stars{--size:18px;--stars:5;--val:0; /* 0〜5 */ 
  --pct: calc(var(--val) / var(--stars) * 100%);
  inline-size: calc(var(--size) * var(--stars));
  block-size: var(--size);
  background:
    linear-gradient(90deg,#FACC15 var(--pct), #E5E7EB var(--pct));
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51 48'%3E%3Cpath d='M25 0l7.7 15.6 17.3 2.5-12.5 12.2 3 17.7L25 39 10.5 47.9l3-17.7L1 18.1l17.3-2.5z'/%3E%3C/svg%3E") repeat-x 0 50%/var(--size) var(--size);
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51 48'%3E%3Cpath d='M25 0l7.7 15.6 17.3 2.5-12.5 12.2 3 17.7L25 39 10.5 47.9l3-17.7L1 18.1l17.3-2.5z'/%3E%3C/svg%3E") repeat-x 0 50%/var(--size) var(--size);
}

/* 項目ラベル&右側数値 */
.vpf-review__label{font-size:.9rem;color:#111827}
.vpf-review__score{font-weight:700;color:#FB2E83;margin-left:.4rem}

.vpf-review-body dl {
  margin: 0;
  padding: 0;
}

.vpf-review-body dt,
.vpf-review-body dd {
  display: inline-block;
  margin: 0 0 .4em 0;
  vertical-align: middle;
}

.vpf-review-body dt {
  font-weight: 600;
  width: 8em; /* ラベル幅を揃える */
  color: #374151;
}

.vpf-review-body dd {
  margin-left: 0;
  color: #111827;
}

.vpf-review-body .vpf-stars {
  color: #f59e0b;
  font-size: 14px;
  margin-right: 4px;
}

/* 一覧右側の総合表示（ボタン内） */
.vpf-summary .vpf-stars { --size:18px; margin-right:6px; }
.vpf-summary .vpf-score { font-weight:600; color:#374151; }

/* 詳細の各行：星と数値の間隔 */
.vpf-review__row .vpf-stars { --size:16px; margin-right:6px; }
.vpf-review__score { font-size:.95rem; font-weight:700; color:#FB2E83; }


@media (max-width: 480px){
  .vpf-summary { flex-wrap:wrap; row-gap:4px; }
  .vpf-summary .vpf-score{ font-size:.9rem; }
  .vpf-review__row{ gap:8px; }
}


/* ボタンのフォーカスリングを少し見やすく */
.vpf-summary:focus-visible,
.vpf-review__head:focus-visible{
  outline: 2px solid #2563eb;
  outline-offset: 3px;
  border-radius: 6px;
}

.vpf-stars{ --val:0; position:relative; display:inline-block; font-size:18px; line-height:1; }
.vpf-stars::before{ content:"★★★★★"; color:#ddd; }
.vpf-stars::after{ content:"★★★★★"; position:absolute; left:0; top:0; width:calc((var(--val)/5) * 100%); overflow:hidden; color:#f5b301; }
.vpf-review-body dl{ margin:8px 0 0; }
.vpf-review-photos img{ display:block; }
.vpf-summary{ font:inherit; }


/* --- レビュー詳細 星レイアウト --- */
.vpf-review-body dl {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
  padding: 0;
}

.vpf-review-body dt,
.vpf-review-body dd {
  margin: 0;
  padding: 6px 10px;
  border: 1px solid #eee;
  border-radius: 6px;
  background: #fff;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.9rem;
}

/* ラベル部分 */
.vpf-review-body dt {
  font-weight: 600;
  color: #374151;
  border: none;
  background: transparent;
  padding: 0;
}

/* スコア部分 */
.vpf-review-body dd {
  font-weight: 700;
  color: #FB2E83;
}

/* 星アイコン */
.vpf-review-body dd .vpf-stars {
  --size: 20px;   /* 星のサイズ */
  margin-right: 4px;
}

/* --- レビュー詳細：見本のカード風レイアウト --- */
.vpf-rows{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
  gap: 11px;
  margin-top: 8px;
}

.vpf-chip{
  font-size: 9px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 6px 7px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px;
  box-shadow:0 2px 4px rgba(0,0,0,.04);
}

.vpf-chip__label{
  font-weight:600;
  color:#374151;
  /* margin-right:8px; */
  white-space:nowrap;
}

/* 星アイコン（カード内は少し小さめ） */
.vpf-chip .vpf-stars{--size: 15px;/* margin:0 6px; */}

/* 右端の数値（見本と同じピンク強調） */
.vpf-chip__num{
  font-weight:700;
  color:#FB2E83;
  /* margin-left:6px; */
}

/* スマホで窮屈な時は1列〜2列に落ちる */
@media (max-width: 480px){
  .vpf-rows{ gap:10px; }
  .vpf-chip{ padding:8px 10px; }
  .vpf-chip .vpf-stars{ --size:16px; }
  .vpf-chip__label{ font-size:.92rem; }
}

.vpf-review-content{
    position: relative;
    padding: 0 0 30px;
}

/* === Fix: 入力フォームの星をクリック可能に戻す ================= */
.vpf-rate-row .vpf-stars{
  position: static !important;
  background: transparent !important;
  -webkit-mask: none !important;
  mask: none !important;
  inline-size: auto !important;
  block-size: auto !important;
}

/* 表示用の「★★★★★」疑似要素をフォームでは消す */
.vpf-rate-row .vpf-stars::before,
.vpf-rate-row .vpf-stars::after{
  content: none !important;
}

/* 入力フォームの星：フォーカス時の青枠を消す */
.vpf-rate-row .vpf-stars input[type="radio"]:focus ~ label {
  outline: none !important;
  box-shadow: none !important;
}

/* フォームのレスポンシブ改善 */
@media (max-width: 768px) {
  .vpf-form__body {
    grid-template-columns: 1fr;
  }
  .vpf-hours table {
    font-size: 14px;
  }
}

/* エラー表示の改善 */
.vpf-field.has-error input,
.vpf-field.has-error select {
  border-color: #ef4444;
}
.vpf-error-message {
  color: #ef4444;
  font-size: 14px;
  margin-top: 4px;
}



.entry-hero-container-inner {
    background: var(--global-palette7);
      background: 
    linear-gradient(rgba(255,255,255,0.4), rgba(255,255,255,0.4)),
    url('../images/hero.png');
    background-size: cover;
    background-position: center;
}
.entry-hero h1{
  font-weight: bold;
  color:#515151;
}




/* 外側のコンテナ */
.character-speech {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin: 20px 0;
}

/* アイコン画像 */
.character-avatar {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  background: #f0f0f0;
  border: 3px solid #ddd;
}

.character-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 吹き出し */
.speech-bubble {
  flex: 1;
  background: #d86c972d;
  border: 5px solid #d86c97;
  border-radius: 12px;
  padding: 16px;
  position: relative;
}

.speech-bubble p {
  margin: 0;
  line-height: 1.6;
  color: #333;
  font-size: 14px;
}

/* 吹き出しの矢印（左側） */
.speech-bubble::before {
  content: '';
  position: absolute;
  left: -12px;
  top: 12px;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-right: 12px solid #d86c97;
}

/* 矢印の枠線 */
.speech-bubble::after {
  content: '';
  position: absolute;
  left: -14px;
  top: 11px;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-right: 13px solid #d86c97;
}
.cta-header{
  display: flex;
}

.cta-header ul li{
  color:#fff;
  font-weight: bold;
}

/* レスポンシブ */
@media (max-width: 768px) {
  .character-speech {
    gap: 12px;
  }
  
  .character-avatar {
    width: 60px;
    height: 60px;
  }
  
  .speech-bubble {
    padding: 12px;
    font-size: 12px;
  }
  .speech-bubble > h2{
    font-size:18px;
    color:#d86c97;
  }
  .cta-header{
    display: contents !important;
    gap:1em;
  }
  .vp-belt__badges{
    margin-bottom:1em !important;
    justify-content: center;
    
  }

}

.vp-appeal-top{
  padding:10px 10px;
  border:5px solid #d86c9759;
  border-radius:12px;
  background-image: repeating-linear-gradient(45deg, #fff4f9, #fff4f9 10px, #ffffff 10px, #ffffff 20px);
}



.mobile-navigation ul li > a, .mobile-navigation ul li.menu-item-has-children > .drawer-nav-drop-wrap {
    color: #d86c97;
    font-weight:bold;
}



.midashi-area {
  max-width: 500px;
  margin: 0 auto;
  padding: 10px 0;
  font-family: sans-serif;
  font-size: 20px;
  color:#3cb3e4;
}
.heading {
  margin: 10px 0
}
.midashi .heading {
  padding: 15px 5px;
  margin: 10px -20px;
  border: solid 3px #3cb3e4;
  position:relative;
  text-align: center;
  border-radius: 3px;
  background: #fff;
  font-weight: bold;
}
.midashi .heading:after,
.midashi .heading:before {
  content: '';
  position: absolute;
  bottom: -7px;
  background: #3cb3e4;
  border: solid 2px #3cb3e4;
  width: 25px;
  height: 20px;
  z-index: -1;
}
.midashi .heading:after {
     left: 2px;
     transform: rotate(120deg);
}
.midashi .heading:before {
    right: 2px;
    transform: rotate(60deg);
}




/* フッターのアイコンリスト調整 */
footer .wp-block-kadence-iconlist {
  --vp-icon-size: 64px;         /* PC 基準のアイコンサイズ（小さめに調整） */
}

/* SVG/IMG どちらでも幅固定。wp-image の width/height を上書きする */
footer .wp-block-kadence-iconlist .kt-svg-icon-list-item-wrap img,
footer .wp-block-kadence-iconlist .kt-svg-icon-list-item-wrap svg {
  width: var(--vp-icon-size) !important;
  height: var(--vp-icon-size) !important;
  max-width: none !important;
  object-fit: contain;
  display: block;
}

/* アイテム間の余白 */
footer .wp-block-kadence-iconlist li {
  margin: 0 14px;
}

/* ラベルの体裁 */
footer .wp-block-kadence-iconlist .kt-svg-icon-list-text {
  font-size: 14px;
  margin-top: 6px;
  display: block;
  text-align: center;
}

/* タブレットで少し小さく */
@media (max-width: 1024px) {
  footer .wp-block-kadence-iconlist { --vp-icon-size: 56px; }
  footer .wp-block-kadence-iconlist li { margin: 0 12px; }
}

/* スマホでさらに小さく */
@media (max-width: 640px) {
  footer .wp-block-kadence-iconlist { --vp-icon-size: 48px; }
  footer .wp-block-kadence-iconlist li { margin: 0 10px; }
  footer .wp-block-kadence-iconlist .kt-svg-icon-list-text { font-size: 13px; }
}


/* ==============================
   検索エリアのアイコンサイズ調整
   左カラム: 約30px / 右カラム: 約70px
   （Kadence Icon List の IMG/SVG を強制サイズ）
============================== */
/* 共通: #search-area 内の Kadence Icon List の実画像サイズを上書き */
#search-area .wp-block-kadence-iconlist .kt-svg-icon-list-item-wrap img,
#search-area .wp-block-kadence-iconlist .kt-svg-icon-list-item-wrap svg{
  width: var(--vp-icon-size) !important;
  height: var(--vp-icon-size) !important;
  max-width: none !important;
  object-fit: contain;
  display: block;
}

/* 左カラム（お困りの場所で探す など）: 小さめ 30px */
#search-area .wp-block-columns > .wp-block-column:first-child .wp-block-kadence-iconlist{
  --vp-icon-size: 30px;
}

/* 右カラム（ランキング/業者検索/お役立ち情報 など）: 大きめ 70px */
#search-area .wp-block-columns > .wp-block-column:last-child .wp-block-kadence-iconlist{
  --vp-icon-size: 70px;
}

/* タブレット/スマホでも同じ比率を維持（必要ならここで微調整） */
@media (max-width: 640px){
  #search-area .wp-block-columns > .wp-block-column:first-child .wp-block-kadence-iconlist{ --vp-icon-size: 28px; }
  #search-area .wp-block-columns > .wp-block-column:last-child  .wp-block-kadence-iconlist{ --vp-icon-size: 64px; }
}

footer .wp-block-kadence-iconlist {
    --vp-icon-size: 28px;
}

/* 検索エリア左カラム(#block-42) のチェックアイコンを非表示にして、
   カテゴリアイコン + テキストだけを横並びにする */
#block-42 .kt-svg-icon-list-single{ /* デフォルトのチェック丸アイコン */
  display: none !important;
}
#block-42 .kt-svg-icon-list-item-wrap{ /* アイコンとテキストの並び・余白 */
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
/* 念のためこのブロックのアイコンサイズを 30px に固定 */
#block-42 .wp-block-kadence-iconlist{ --vp-icon-size: 30px; }
#block-42 .kt-svg-icon-list-item-wrap img,
#block-42 .kt-svg-icon-list-item-wrap svg{
  width: var(--vp-icon-size) !important;
  height: var(--vp-icon-size) !important;
}
#block-42 .kt-svg-icon-list{
  display: flex;
  flex-wrap: wrap;
}

/* ---- #block-42 アイコンリスト：余白ゼロで2列揃え ---- */
#block-42 .kt-svg-icon-list {
  gap: 0 0 !important;   /* 行間/列間のギャップをゼロ */
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Kadence が付与する li の余白を完全リセット */
#block-42 .wp-block-kadence-iconlist li,
#block-42 .kt-svg-icon-list .wp-block-kadence-listitem {
  margin: 0 !important;
  padding: 0 !important;
  width: 50% !important;           /* 2列ぴったり */
  box-sizing: border-box !important;
}

/* 内側のアイコン+テキスト並び（アイテム内の見た目はキープ） */
#block-42 .kt-svg-icon-list-item-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px; /* アイコンとテキストの間だけ余白 */
}
#block-42 .kt-svg-icon-list .wp-block-kadence-listitem{
  width:49%;
}

.site-footer-middle-section-2 {
    padding: 10px;
    border: 3px solid pink;
    background: #fff7f7;
    border-radius: 10px;    
}

.site-footer{
  background-color:#fff7f7;
}


.wp-block-kadence-tabs .kt-tabs-id1514_17f9df-59 > .kt-tabs-content-wrap > .kt-tabs-accordion-title .kt-tab-title {
margin-right:0 !important;
}
@media only screen and (max-width: 768px) {
  #hero-area{
      min-height: 400px;
  }
}
.pc-only { display: block  }
.sp-only { display: none  }
@media only screen and (max-width: 768px) {
    .pc-only { display: none  }
    .sp-only { display: block  }
}

.top-img-layput {
    margin-top: -59px;
    position: relative;
    z-index: 2;
}



/* ========================================
   送信ボタンのスタイル（ピンク系）
   ======================================== */

.form-submit {
  margin-top: 32px;
  text-align: center;
}

.vp-submit-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  max-width: 400px;
  padding: 18px 32px;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, #D86C97 0%, #c04579 100%);
  border: none;
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(216, 108, 151, 0.4);
  cursor: pointer;
  transition: all 0.3s ease;
}

.vp-submit-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 28px rgba(216, 108, 151, 0.5);
  background: linear-gradient(135deg, #e07ba7 0%, #D86C97 100%);
}

.vp-submit-btn:active {
  transform: translateY(-1px);
}

.vp-submit-btn:disabled {
  background: #9ca3af;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.btn-icon {
  font-size: 24px;
}

.btn-text {
  font-size: 18px;
  letter-spacing: 1px;
}

.btn-arrow {
  font-size: 20px;
  transition: transform 0.3s;
}

.vp-submit-btn:hover .btn-arrow {
  transform: translateX(6px);
}

@media (max-width: 768px) {
  .vp-submit-btn {
    padding: 16px 28px;
    font-size: 16px;
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .sp-title-style1 {
    font-size:15px !important;
    color:#d86c97;
    margin-top:0 !important;
  }
}