/*
Theme Name: Mash-UP
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.1
*/

input[type=submit] {
    font-size: 1.5rem;
}

.page-header-title, h1.page-header-title {
    font-weight: 700;
    line-height: var(--vk-line-height-low);
    margin: 0;
    text-shadow: 
        1px 1px 2px rgba(0, 0, 0, 0.25),   /* 軽い影で文字を浮き立たせる */
        2px 2px 4px rgba(0, 0, 0, 0.15);   /* 奥行き感をプラス */
}


/*特定商取引法に関する表示*/
figure.business-information table tbody tr td{
padding-top: 20px !important;
padding-right: 20px !important;
padding-bottom: 20px !important;
padding-left: 20px !important;
}

/*=============================
親コンテナ調整
=============================*/
.main_txt_waku {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: right !important;
    position: relative;
}

/*=============================
メインテキスト
=============================*/
h2.main_txt_b {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding-top: 4rem !important; /* PC基準 */
    font-size: 2.8rem !important; 
    line-height: 1.45 !important;
    text-align: right !important;
    color: #fff !important;
    text-shadow: 2px 2px 2px rgb(33 33 33) !important;
}

/* 下の説明文 */
.hero_desc {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    top: -1rem !important;
    font-size: 1rem !important;
    line-height: 1.7 !important;
    text-align: right !important;
    color: #fff !important;
}

/*=============================
レスポンシブ調整（完全版）
=============================*/

/* スマホ（〜767px） */
@media screen and (max-width: 767px) {
    h2.main_txt_b {
        font-size: 1.6rem !important; /* 小さめで自然に */
        line-height: 1.45 !important;
        padding-top: 2.5rem !important; /* 上余白少し上へ */
    }
    .hero_desc {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        top: -0.5rem !important;
    }
}

/* タブレット（768〜992px） */
@media screen and (min-width: 768px) and (max-width: 992px) {
    h2.main_txt_b {
        font-size: 2.4rem !important; /* 中サイズ */
        line-height: 1.45 !important;
        padding-top: 3rem !important; /* 上余白少し上へ */
    }
    .hero_desc {
        font-size: 1rem !important;
        line-height: 1.7 !important;
        top: -0.8rem !important;
    }
}

/* PC（993px〜） */
@media screen and (min-width: 993px) {
    h2.main_txt_b {
        font-size: 2.8rem !important;
        line-height: 1.45 !important;
        padding-top: 4rem !important;
    }
    .hero_desc {
        font-size: 1rem !important;
        line-height: 1.7 !important;
        top: -1rem !important;
    }
}


/* ── 3PRカード 完全版 ── */

/* タブレット全般（720〜991px） */
@media screen and (min-width: 720px) and (max-width: 991px) {
  .vk_gridcolcard-5a4de1c0-b397-411a-862e-e4b68980deff,
  .vk_gridcolcard-06d33053-c202-48e3-bf6d-cb00c8312f99 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important; /* 幅柔軟 */
    gap: 16px !important;
    padding: 0 16px !important; /* 最小限に */
    margin: 0 auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .vk_gridcolcard_item {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    border-radius: 8px !important;
    overflow: visible !important;
  }

  .vk_gridcolcard_item_container {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    padding: 1rem !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .vk_gridcolcard_item_body {
    flex-grow: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-right: 2em !important; /* ボタン矢印用 */
    overflow: visible !important;
    word-break: break-word !important;
  }

  .vk_gridcolcard_item_body * {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .vk_gridcolcard_item_body .vk_button {
    margin-top: 1rem !important;
    align-self: flex-start !important;
    position: relative !important;
    padding-right: 2em !important; /* 矢印用 */
    overflow: visible !important;
  }

  .vk_gridcolcard_item_body .vk_button::after,
  .vk_gridcolcard_item_body .vk_button svg {
    position: relative !important;
    right: 0 !important;
    overflow: visible !important;
  }
}

/* iPad縦持ち（768〜820px）微調整 */
@media screen and (min-width: 768px) and (max-width: 820px) {
  .vk_gridcolcard-5a4de1c0-b397-411a-862e-e4b68980deff,
  .vk_gridcolcard-06d33053-c202-48e3-bf6d-cb00c8312f99 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important; /* 少し詰める */
    padding: 0 12px !important; /* 右端余白を減らす */
  }

  .vk_gridcolcard_item_container {
    padding: 0.8rem !important; /* 内側余白微調整 */
  }

  .vk_gridcolcard_item_body {
    padding-right: 1.8em !important; /* 矢印確保 */
  }

  .vk_gridcolcard_item_body .vk_button {
    padding-right: 1.8em !important;
  }
}

/* スマホ（719px以下：1カラム） */
@media screen and (max-width: 719px) {
  .vk_gridcolcard-5a4de1c0-b397-411a-862e-e4b68980deff,
  .vk_gridcolcard-06d33053-c202-48e3-bf6d-cb00c8312f99 {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
    padding: 0 10px !important;
  }

  .vk_gridcolcard_item_header {
    top: 0 !important;
    margin: 0 !important;
  }

  .vk_gridcolcard_item_body {
    padding-right: 1rem !important;
  }
}

/* 全体横スクロール禁止 */
html, body {
  overflow-x: hidden !important;
}


/* ───────────────
   Lightningヘッダー：1024px帯 ロゴ拡大＋見切れ防止
──────────────── */
@media screen and (min-width: 992px) and (max-width: 1200px) {
  /* コンテナ余白を少し増やして、右見切れ防止 */
  .site-header-container.container {
    max-width: 100%;
    padding: 0 40px 0 25px; /* ←右を広げてnavの逃げ場を確保 */
    box-sizing: border-box;
  }

  /* ロゴを少し拡大（相対的に） */
  .site-header-logo img {
    max-width: 240px !important; /* ここで微調整OK：240〜260まで試して◎ */
    height: auto;
    transform: translateY(2px); /* 微妙な縦位置調整 */
  }

  /* メニュー間隔を少し詰めて、全体幅を圧縮 */
  .global-nav-list > li > a {
    padding: 0 8px;
  }

  /* navが右端で折り返さないように */
  .global-nav {
    float: right;
    white-space: nowrap;
  }
}
