/* ===== 案件ごとの調整用 ===== */

/* メインカラー */
:root {
    --accent-color: #d4a5a5;
    --soft-pink: #f5e8e8;
    --warm-beige: #f9f5f3;
    --text-soft: #6b5b5b;
    --section-bg: #fefbfb;
  }
  
  /* アクセントカラー反映 */
  a {
    color: var(--accent-color);
    text-decoration: none;
    transition: opacity 0.3s ease;
  }
  
  a:hover {
    opacity: 0.7;
  }
  
  /* ヘッダー */
  .site-header {
    background: linear-gradient(135deg, #fef8f8 0%, #f9f5f3 100%);
  }
  
  /* タイトル */
  .site-title {
    color: #8b6f6f;
    font-weight: 300;
    letter-spacing: 0.15em;
    font-size: 2rem;
  }
  
  @media (min-width: 768px) {
    .site-title {
      font-size: 2.5rem;
    }
  }
  
  /* キャッチコピー */
  .site-copy {
    color: var(--text-soft);
    font-size: 0.95rem;
    font-weight: 300;
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  
  @media (min-width: 768px) {
    .site-copy {
      font-size: 1.1rem;
    }
  }
  
  /* ギャラリーセクション */
  .gallery-section {
    background-color: var(--section-bg);
  }
  
  .gallery-item {
    overflow: hidden;
    border-radius: 16px;
  }
  
  /* ギャラリー画像 */
  .gallery-img {
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(212, 165, 165, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: block;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }
  
  .gallery-img:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(212, 165, 165, 0.25);
  }
  
  /* キャッチコピーセクション */
  .catchcopy-section {
    background-color: #ffffff;
  }
  
  .catchcopy-text {
    color: #8b6f6f;
    font-size: 1.1rem;
    font-weight: 300;
    letter-spacing: 0.1em;
    line-height: 1.9;
  }
  
  @media (min-width: 768px) {
    .catchcopy-text {
      font-size: 1.3rem;
      letter-spacing: 0.15em;
    }
  }
  
  /* セクションタイトル */
  .section-title {
    color: #8b6f6f;
    font-weight: 400;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #f0e0e0;
    padding-bottom: 0.75rem;
    font-size: 1.2rem;
  }
  
  @media (min-width: 768px) {
    .section-title {
      font-size: 1.3rem;
    }
  }
  
  /* 店舗情報セクション */
  .info-section {
    background-color: #ffffff;
  }
  
  .info-content p {
    color: var(--text-soft);
    line-height: 1.8;
    font-size: 1rem;
  }
  
  /* お問い合わせセクション */
  .contact-section {
    background-color: var(--section-bg);
  }
  
  .contact-content p {
    color: var(--text-soft);
    line-height: 1.8;
    font-size: 1rem;
  }
  
  .contact-link {
    color: var(--accent-color);
    text-decoration: none;
    transition: opacity 0.3s ease;
  }
  
  .contact-link:hover {
    opacity: 0.7;
    text-decoration: underline;
    text-decoration-color: var(--accent-color);
    text-underline-offset: 3px;
  }
  
  /* フッター */
  .site-footer {
    background: linear-gradient(135deg, #fef8f8 0%, #f9f5f3 100%);
    color: #a08a8a;
  }
  
  /* レスポンシブ調整 */
  @media (min-width: 768px) {
    .py-md-6 {
      padding-top: 4rem !important;
      padding-bottom: 4rem !important;
    }
  }
  