@charset "UTF-8";
/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
/* フォント設定 */
body,
html {
  font-family: "Noto Sans JP", sans-serif;
}

/* ヘッダーカスタマイズ */
.site-header {
  height: 80px !important;
  position: fixed !important;
  /* ヘッダーを固定 */
  background-color: rgba(255, 255, 255, 0.9) !important;
  border-bottom: solid 1px #DDD !important;
}

.lightning_swiper {
  margin-top: 80px !important;
  /* ヘッダーの高さ分だけ余白を追加 */
}

/* 固定ヘッダー対応：アンカーリンクの位置調整 */
h1,
h2,
h3,
h4,
h5,
h6,
[id],
.c-section__title,
.c-section__title-deco,
section {
  scroll-margin-top: 80px;
  /* 固定ヘッダーの高さ分 */
}

/* より確実なスクロール位置調整（必要に応じて） */
html {
  scroll-padding-top: 80px;
}

/* フロートヘッダーカスタマイズ */
.header_scrolled .site-header {
  height: 80px !important;
}

/* フロートヘッダースクロール時のロゴ表示 */
.header_scrolled .site-header-logo {
  display: block !important;
}

/* ロゴをヘッダー中央に垂直揃え */
.site-header-logo {
  padding-top: 0 !important;
  height: 80px;
  display: flex;
  align-items: center;
  /* 縦中央寄せ */
}

html {
  scroll-behavior: smooth;
}

/* アニメ苦手な方向け配慮 */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
/* グローバルナビゲーションの文字色とホバー効果 */
strong.global-nav-name {
  font-weight: 400 !important;
  color: #333 !important;
  transition: font-weight 0.5s ease;
}
strong.global-nav-name:hover {
  font-weight: 700 !important;
}

/* Swiperのページネーションを非表示にする */
.swiper-pagination {
  display: none;
}

/* Lightning Swiper の左右矢印を非表示 */
.swiper-button-prev,
.swiper-button-next {
  display: none !important;
}

/* スライドテキストのサイズ調整 */
.p-fv__smaller {
  font-size: 1.5rem !important;
  font-weight: normal !important;
  margin-top: 10px;
}

/* スライドテキストの位置調整 */
.ltg-slide-text-set.mini-content {
  top: calc(18% + 80px) !important;
}

#global-nav {
  height: 80px !important;
}

.p-btn__tel {
  display: flex;
  align-items: center;
  padding: 6px 6px 0 6px !important;
  text-align: center;
  text-decoration: none;
  border: none;
  cursor: pointer;
  height: 58px !important;
  width: fit-content !important;
  background-color: #B68A3A;
  border-radius: 8px;
  box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.25);
  transition: background-color 0.6s ease;
  margin-left: 20px !important;
}
.p-btn__tel:hover {
  background-color: #9C6707;
}
.p-btn__tel a {
  display: block;
  padding: 0 !important;
}
.p-btn__tel a strong {
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700;
  letter-spacing: 0.9px;
}
.p-btn__tel a span {
  display: block;
  height: 30px;
  font-size: 20px !important;
  color: #fff !important;
  font-weight: 700;
  letter-spacing: 1px;
  opacity: 1 !important;
  padding-top: 0 !important;
  line-height: 24px !important;
  padding-left: 30px;
  position: relative;
}
.p-btn__tel a span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 40%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background-image: url("https://odachin.net/jinjindo/wp-content/uploads/2025/09/tel.png");
  background-size: 24px 24px;
}

/* セクションタイトルの右にデコレーションを追加 */
.c-section__title-deco {
  color: #4a6a5d;
  width: fit-content;
  height: 39px;
  margin-top: 60px;
  margin-bottom: 16px;
  padding-top: 0;
  position: relative;
}
.c-section__title-deco::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -67px;
  transform: translateY(-50%);
  width: 48px;
  height: 30px;
  background-image: url("https://odachin.net/jinjindo/wp-content/uploads/2025/09/title-deco.png");
  background-size: cover;
}

/* カードの縦幅を外枠いっぱいにする */
.c-ihin__card {
  height: 100%;
}

/* サブセクションタイトルの下にデコレーションを追加 */
.c-section__sub-deco {
  color: #333333;
  border-bottom: 2px solid #DDD;
  margin-bottom: 40px !important;
}

.p-price__card {
  height: 100%;
  padding: 12px 36px !important;
}

/* FAQ カスタマイズ */
.p-faq__frame {
  border-bottom: none !important;
  padding: 0 !important;
  margin: 20px 0 0 0 !important;
}

.p-faq__q {
  color: #fff;
  background-color: #4A6A5D !important;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  padding: 0 0 0 34px !important;
}
.p-faq__q::before {
  content: "Q" !important;
  color: #fff !important;
  font-family: roboto !important;
  font-size: 20px !important;
  font-style: normal;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  top: 50% !important;
  left: 12px !important;
  transform: translateY(-50%) !important;
  border: none !important;
  width: 14px !important;
  height: 24px !important;
  display: flex;
  align-items: center;
}
.p-faq__q::after {
  border-right: #fff solid 2px !important;
  border-top: #fff solid 2px !important;
}

.p-faq__a {
  background-color: #fff !important;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  padding: 0 0 0 34px !important;
  border: 2px solid #DDD !important;
  border-top: none !important;
}
.p-faq__a::before {
  content: "A" !important;
  color: #333 !important;
  font-family: roboto !important;
  font-size: 20px !important;
  font-style: normal;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  top: 50% !important;
  left: 12px !important;
  transform: translateY(-50%) !important;
  border: none !important;
  width: 14px !important;
  height: 24px !important;
  display: flex;
  align-items: center;
}

/* フッターナビゲーションカスタマイズ */
.p-nav__about a,
.p-nav__contact a {
  color: #333;
  font-size: 20px;
  font-weight: 700;
  border-bottom: 2px solid #DDD;
  padding-bottom: 2px;
  transition: opacity 0.3s ease;
}
.p-nav__about a:hover,
.p-nav__contact a:hover {
  opacity: 0.5;
}

.site-header-logo a {
  transition: opacity 0.3s ease;
}
.site-header-logo a:hover {
  opacity: 0.7;
}

.footer-nav-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  justify-content: center;
  align-items: center;
  margin-top: 0;
  margin-bottom: 20px;
  padding: 0;
  list-style: none;
}

.p-btn__tel.p-btn__tel-footer {
  margin: 0 !important;
  height: 130px !important;
  width: fit-content !important;
  padding: 0 !important;
}
.p-btn__tel.p-btn__tel-footer a {
  height: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 32px !important;
  row-gap: 20px;
  margin: 0 !important;
}
.p-btn__tel.p-btn__tel-footer a span {
  font-size: 20px !important;
  line-height: 20px !important;
  padding-left: 24px;
}
.p-btn__tel.p-btn__tel-footer a span::before {
  width: 20px;
  height: 20px;
  background-size: 20px 20px;
}
.p-btn__tel.p-btn__tel-footer a strong {
  font-size: 18px !important;
  line-height: 20px;
  padding: 0 !important;
  margin: 0 !important;
}

.page_top_btn {
  border: none;
  box-shadow: none;
  background-color: transparent;
  width: 80px;
  height: 80px;
}
.page_top_btn::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 80px;
  height: 80px;
  opacity: 0;
  background-image: url("https://odachin.net/jinjindo/wp-content/uploads/2025/09/arrow-top.svg");
  transition: opacity 0.5s ease;
  background-repeat: no-repeat;
  background-size: contain;
}
.page_top_btn::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 80px;
  height: 80px;
  opacity: 0;
  background-image: url("https://odachin.net/jinjindo/wp-content/uploads/2025/09/J-svg.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-size: 80px 80px;
  opacity: 1;
  transition: opacity 0.5s ease;
}
.page_top_btn:hover::after {
  opacity: 1;
}
.page_top_btn:hover::before {
  opacity: 0;
}

/* flowカードの右に矢印を追加 */
.p-flow__arrow {
  position: relative;
}
.p-flow__arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -40px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background-image: url("https://odachin.net/jinjindo/wp-content/uploads/2025/09/arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

@media (max-width: 991px) {
  .p-btn__tel {
    display: none !important;
  }
}
@media (max-width: 1000px) {
  #p-price__cards {
    flex-direction: column !important;
  }
}

.searchform {
  display: none !important;
}