

/* リスト */
/* =========================
  こんな方におすすめ
========================= */

/* セクション背景 */
.ldk-target{
  background:#f4f4f4;
}

/* リスト全体 */
.ldk-check-list{
  max-width:700px;
  margin:30px auto 0;
  padding:25px;
  list-style:none;
  text-align:left;

  background:#fff;
  border-radius:10px;
  box-shadow:0 5px 20px rgba(0,0,0,0.05);
}

/* 各項目 */
.ldk-check-list li{
  position:relative;
  padding-left:40px;
  margin-bottom:18px;
  line-height:1.8;
  font-size:0.95rem;
}

/* 丸チェック */
.ldk-check-list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:3px;

  width:24px;
  height:24px;

  background:#d4af37;
  color:#fff;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;
  font-size:0.75rem;
  font-weight:bold;
}



/* グリッド */
.ldk-option-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
  margin-top:30px;
}

/* カード */
.ldk-option-card{
  border:1px solid #ddd;
  padding:20px;
  border-radius:8px;
  text-align:left;
  background:#fff;

  transition:0.3s;
}

/* ホバーで少し浮く */
.ldk-option-card:hover{
  transform:translateY(-5px);
  box-shadow:0 10px 20px rgba(0,0,0,0.1);
}

/* 見出し */
.ldk-option-card h3{
  margin-bottom:10px;
  font-weight:bold;
}

/* 説明 */
.ldk-option-card p{
  font-size:0.9rem;
  line-height:1.7;
}

/* 注意書き */
.ldk-option-note{
  font-size:0.8rem;
  color:#777;
  margin-top:15px;
}

/* スマホ */
@media(max-width:768px){
  .ldk-option-grid{
    grid-template-columns:1fr;
  }
}




.ldk-event-desc{
  max-width:700px;
  margin:20px auto 0;
  font-size:0.95rem;
  line-height:1.8;
  color:#555;
  text-align:left;
}





.ldk-badge{
  position:absolute;
  top:-25px;
  left:-25px;

  width:90px;
  height:90px;

  border-radius:50%;
  background:#111;
  color:#fff;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:0.75rem;
  text-align:center;

  border:2px solid #d4af37;
}

.ldk-badge::before{
  content:"";
  position:absolute;
  width:75px;
  height:75px;
  border-radius:50%;
  border:1px solid #d4af37;
}



.ldk-hero-overlay h1{
  color:#fff;
  font-size:2rem;
  line-height:1.4;
  letter-spacing:0.05em;
}

h3{
  font-weight:800;
  font-size:1.2rem;
  margin-bottom:5px;
}

/* 安定化 */
*,
*::before,
*::after{
  box-sizing:border-box;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

/* コンテナ */
.ldk-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}

/* =========================
  メイン
========================= */
.ldk-hero{
  height:100vh;
  background:url("kitchen.png") center/cover no-repeat;
  position:relative;
}

.ldk-hero-overlay{
  position:absolute;
  top:50%; /* ←中央に戻す */
  left:50%;
  transform:translate(-50%,-50%);
  background:rgba(0,0,0,0.7);

  width:90%;
  max-width:420px;

  padding:25px; /* ←減らす */

  color:#fff;
  text-align:center;
  border-radius:1px;
}

@media (max-width: 600px){
  .ldk-hero-overlay{
    top: auto;
    bottom: -120px;          /* ← 下から余白 */
    left: 50%;
    transform: translateX(-50%); /* 縦のtranslate消す */
  }
}

/* H1全体 */
.ldk-hero-overlay h1{
  font-size:2rem;
  line-height:1.4;
  letter-spacing:0.05em;
}

/* 金額強調 */
.ldk-price{
  display:inline-block;
  font-size:3rem;
  font-weight:bold;
  color:#cc9900;

  text-shadow:0 3px 10px rgba(0,0,0,0.5);
}



.ldk-limit{
  display:inline-block;
  margin-top:10px;
  padding:8px 16px;

  background:#ff6666;
  color:#fff;

  font-weight:bold;
  font-size:1rem;

  border-radius:5px;
}


/* ========================= */
.ldk-section{
  padding:60px 0;
  text-align:center;
}

/* =========================
  イベント情報
========================= */
.ldk-info-box{
  border:2px solid #000;
  max-width:600px;
  margin:30px auto;
  text-align:left;
}

.ldk-info-row{
  display:flex;
  border-bottom:1px solid #ccc;
}

.ldk-info-title{
  width:40%;
  padding:10px;
  background:#f5f5f5;

  font-weight:bold;
}

.ldk-info-content{
  width:60%;
  padding:10px;
}
/* =========================
  特典（コンパクト版）
========================= */
/* =========================
  特典（スタイリッシュ）
========================= */

.ldk-bonus-box{
  display:flex;
  align-items:center;
  gap:30px;
  border:2px solid #000;
  padding:25px;
  border-radius:10px;
  max-width:800px;
  margin:0 auto;
  background:#fff;
}

/* 画像 */
.ldk-bonus-img{
  flex:0 0 200px;
}

.ldk-bonus-img img{
  width:100%;
  border-radius:10px;
}

/* テキスト */
.ldk-bonus-text{
  text-align:left;
}

/* ラベル */
.ldk-bonus-label{
  display:inline-block;
  background:#000;
  color:#fff;
  padding:5px 10px;
  font-size:0.8rem;
  margin-bottom:10px;
}

/* タイトル */
.ldk-bonus-text h2{
  font-size:1.6rem;
  margin:0 0 10px;
}

/* 金額強調 */
.ldk-bonus-text h2 span{
  color:#d4af37;
}

/* 注意書き */
.ldk-bonus-text p{
  font-size:0.8rem;
  color:#666;
}

.ldk-bonus-box{
  border:2px solid #d4af37;
}

.ldk-bonus-label{
  background:#d4af37;
  color:#000;
}

/* =========================
  スマホ
========================= */
@media(max-width:768px){

.ldk-bonus-box{
  flex-direction:column;
  text-align:center;
}

.ldk-bonus-text{
  text-align:center;
}

}



/* =========================
  Before After
========================= */
.ldk-before-after{
  display:flex;
  gap:20px;
  margin-top:30px;
  flex-wrap:wrap;
}

.ldk-ba-item{
  flex:1;
}

/* =========================
  工事内容
========================= */
.ldk-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:30px;
}

.ldk-grid div{
  border:1px solid #ddd;
  padding:20px;
  border-radius:8px;
  text-align:left;
}

/* =========================
  出来ること
========================= */
.ldk-feature-grid{
  display:grid;
  grid-template-columns:repeat(2,2fr);
  gap:20px;
  margin-top:30px;
}

.ldk-feature-item{
  text-align:left;
}

/* セクション背景 */
.ldk-bg-gray{
  background:#eee;
  padding:60px 0;
}

/* 中身は白で浮かせる */
.ldk-bg-gray .ldk-container{
  background:#fff;
  padding:40px;
  border-radius:10px;
}

/* =========================
  オプション
========================= */
.ldk-option-item{
  display:flex;
  gap:20px;
  margin-bottom:30px;
  align-items:center;
  flex-wrap:wrap;
}

.ldk-option-item img{
  flex:1;
}

.ldk-option-text{
  flex:1;
  text-align:left;
}

/* =========================
  キッチン
========================= */

/* メイン枠 */
.ldk-kitchen-main{
  position:relative;
  margin-bottom:20px;
}

/* 画像 */
.ldk-kitchen-main img{
  width:100%;
  border-radius:10px;
  aspect-ratio:16/9;
  object-fit:cover;
  box-shadow:0 10px 25px rgba(0,0,0,0.1);
}

/* テキスト（共通） */
.ldk-kitchen-text{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  padding:12px;
  font-size:0.9rem;
  line-height:1.5;
  color:#fff;
  background:linear-gradient(
    rgba(0,0,0,0),
    rgba(0,0,0,0.8)
  );
  border-radius:0 0 10px 10px;
}

/* 説明文 */
.ldk-kitchen-desc{
  max-width:900px;
  margin:10px auto 30px;
  font-size:0.95rem;
  line-height:1.8;
  color:#555;
  text-align:left;
}

/* サブ */
.ldk-kitchen-sub{
  display:flex;
  gap:15px;
  margin-top:10px;
}

.ldk-kitchen-sub div{
  flex:1;
  display:flex;
  flex-direction:column;
}
.ldk-kitchen-sub img{
  width:100%;
  border-radius:8px;
}

.ldk-kitchen-sub p{
  margin-top:5px;
  font-size:0.85rem;
  text-align:left;
}

/* サブ画像を完全統一 */
.ldk-kitchen-sub img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:3px;
}

/* PCだけ：サブ画像を800px内に収める */
@media(min-width:769px){

  .ldk-kitchen-sub{
    max-width:900px;
    margin:0 auto;
  }

}
@media(min-width:769px){

  .ldk-kitchen-sub div{
    flex:1;
  }

}

.ldk-strong{
  font-weight:bold;
  color:#d4af37;
}


/* =========================
  PC調整（ここが超重要）
========================= */
@media(min-width:769px){

  .ldk-kitchen-main{
    max-width:900px;
    margin:0 auto 20px;
  }

}

/* =========================
  スマホ
========================= */
@media(max-width:768px){

  .ldk-kitchen-sub{
    flex-direction:column;
  }

}
/* =========================
  スマホ
========================= */
@media(max-width:768px){

.ldk-hero{
  height:60vh;
}

.ldk-hero-overlay{
  width:80%;
}

.ldk-grid{
  grid-template-columns:repeat(2,1fr);
}

.ldk-feature-grid{
  grid-template-columns:1fr;
}

.ldk-before-after{
  flex-direction:column;
}

.ldk-bonus-inner{
  flex-direction:column;
}

.ldk-option-item{
  flex-direction:column;
}

.ldk-kitchen-sub{
  flex-direction:column;
}

}


/* マーカー */
.ldk-marker{
  background:linear-gradient(transparent 60%, #ffe066 60%);
  background-size:0% 100%;
  background-repeat:no-repeat;
  transition:background-size 0.8s ease;
}

/* 発火 */
.ldk-marker.active{
  background-size:100% 100%;
}

.ldk-marker{
  transition:background-size 1s ease 0.6s;
}



html{
  scroll-behavior:smooth;
}


/* CTAラップ */
.ldk-cta-wrap{
  text-align:center;
  margin:50px 0;
}

/* 高級ボタン */
.ldk-cta-btn{
  display:inline-block;
  padding:16px 50px;

  background:#111;
  color:#fff;

  font-size:1.05rem;
  font-weight:600;
  letter-spacing:0.08em;

  border:1px solid #d4af37;
  border-radius:10px;

  text-decoration:none;

  transition:0.4s;
  position:relative;
  overflow:hidden;
}

/* ゴールドライン（光） */
.ldk-cta-btn::before{
  content:"";
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;

  background:linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,0.4),
    transparent
  );

  transition:0.6s;
}

/* ホバー */
.ldk-cta-btn:hover{
  background:#000;
  border-color:#ffd700;
}

/* 光が流れる */
.ldk-cta-btn:hover::before{
  left:100%;
}

.ldk-cta-btn{
  box-shadow:0 5px 20px rgba(0,0,0,0.2);
}



/* 固定CTA */
.ldk-fixed-cta{
  position:fixed;
  top:80px; /* ←ヘッダー分あける（調整OK） */
  right:20px;
  z-index:9999;

  padding:10px 25px;

  background:#111;
  color:#fff;

  font-size:0.9rem;
  letter-spacing:0.08em;

  border:1px solid #d4af37;
  border-radius:10px;

  text-decoration:none;

  box-shadow:0 5px 15px rgba(0,0,0,0.2);

  /* 初期非表示 */
  opacity:0;
  transform:translateY(-20px);
  transition:0.4s;
}

/* 表示状態 */
.ldk-fixed-cta.active{
  opacity:1;
  transform:translateY(0);
}

