/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 27 2026 | 12:26:20 */
/* --- 全体の設定 --- */
.nagata-story-wrapper {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;
  color: #333;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background: transparent !important; /* 背景色を透明（なし）に設定 */
}

/* --- 導入：ヒーローエリア --- */
.nagata-hero {
  text-align: center;
  padding: 0 20px;
  background: transparent !important; /* 背景色も透明に設定 */
  margin-bottom: 80px;
}
.nagata-hero-sub {
  font-size:  1.25rem;
  margin-bottom: 20px;
  color: #555;
}

/* --- H1・H2 テーマの既存スタイルを徹底的に打ち消す設定 --- */
.nagata-story-wrapper h1,
.nagata-story-wrapper h2 {
  width: 100% !important;
  text-align: center !important; /* 中央揃え */
  font-size: 26px !important;
  font-weight: 700 !important; /*太文字 */
  line-height: 1.5 !important;
  color: #3a3a3a !important;
  position: relative !important;
  padding-bottom: 20px !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
  clear: both !important;
  
  /* ボーダーや背景を徹底的に消去 */
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
}

/* テーマが出力する「::before」の線を完全に非表示にする */
.nagata-story-wrapper h1::before,
.nagata-story-wrapper h2::before {
  display: none !important;
  content: none !important;
  background: none !important;
  border: none !important;
  width: 0 !important;
  height: 0 !important;
}


/* 指定するアクセントライン（::after） */
.nagata-story-wrapper h2::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  bottom: 0 !important;
  top: auto !important; 
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100px !important; /* アクセントラインの長さ */
  height: 2px !important;
  background-color: #b5a898 !important; /* 線の色 */
  background-image: none !important;
  border: none !important;
  
  /* ▼強制的に表示させる追加コード▼ */
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 10 !important;
}

/* 下方向の余白調整 */
.nagata-story-wrapper h1 {
  font-weight: 700;
  font-size: 1.25rem;
  margin-bottom: 0 !important; 
}
.nagata-story-wrapper h2 {
  margin-bottom: 40px !important; 
}

/* ルビ（フリガナ）の調整 */
.nagata-story-wrapper ruby rt {
  font-size: 0.5em;
  color: #777;
  letter-spacing: 0;
}

/* --- 各セクションの共通レイアウト --- */
.nagata-section {
  margin-bottom: 100px;
  padding: 0 20px;
}

/* --- 写真とテキストの並び --- */
.nagata-flex-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px; /* 写真と文章の間の余白 */
}

/* ★画像幅を40% */
.nagata-image-box {
  width: 40%;
}
.nagata-image-box img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  display: block;
}

/* ★テキスト幅を60%（gapの余白分を計算して調整） */
.nagata-text-box {
  width: calc(60% - 60px); 
}

/* --- 左右反転クラス --- */
.nagata-reverse .nagata-flex-container {
  flex-direction: row-reverse;
}

.nagata-text-box p {
  margin-bottom: 1.5em;
  font-size:  1.25rem;
  text-align: justify;
}

/* --- スマートフォン対応（画面幅768px以下） --- */
@media screen and (max-width: 768px) {
  .nagata-hero {
    padding: 0 20px;
    margin-bottom: 60px;
  }
  .nagata-hero-sub {
  font-size:  1.5rem;
  }
  
  .nagata-story-wrapper h1,
  .nagata-story-wrapper h2 {
    font-size: 22px !important;
  }
  .nagata-story-wrapper h2 {
    margin-bottom: 30px !important;
  }
  
  .nagata-flex-container,
  .nagata-reverse .nagata-flex-container {
    flex-direction: column;
    gap: 30px;
  }
  
  /* スマホでは画像もテキストも横幅いっぱいに広げる */
  .nagata-image-box,
  .nagata-text-box {
    width: 100%;
  }
  .nagata-section {
    margin-bottom: 70px;
  }
}

/* タイトル下のリード文 */
.nagata-lead-text {
  text-align: center !important;
  font-size: 1.125rem !important; /* 少し大きめ */
  color: #555 !important;
  line-height: 1.8 !important;
  margin-bottom: 50px !important; /* 下の写真・テキストとの隙間 */
}

/* 右側の小見出し（h3） */
.nagata-sub-heading {
  font-size: 1.375rem !important;
  font-weight: bold !important;
  color: #3a3a3a !important;
  margin-bottom: 20px !important;
  margin-top: 0 !important;
  border-bottom: 1px dotted #b5a898 !important; /* 下に上品な点線を引く */
  padding-bottom: 10px !important;
}

/* --- スマートフォン対応 --- */
@media screen and (max-width: 768px) {
  .nagata-lead-text {
    font-size: 1rem !important;
    text-align: left !important; /* スマホでは読みやすいように左寄せ */
    margin-bottom: 40px !important;
  }
  .nagata-sub-heading {
    font-size: 1.25rem !important;
  }
}

/* =========================================
   ■ 会社概要テーブル
========================================= */
.nagata-company-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 60px;
  font-size: 1.125rem;
}
.nagata-company-table th,
.nagata-company-table td {
  border: 1px solid #e0d8c3;
  padding: 20px;
  text-align: left;
  line-height: 1.6;
}
.nagata-company-table th {
  width: 25%;
  background-color: #f7f5f0;
  font-weight: bold;
  color: #5c4033;
}

/* =========================================
   ■ 店舗案内
========================================= */
.nagata-store-item {
  margin-bottom: 60px;
  padding-bottom: 40px;
  border-bottom: 1px dashed #dcdcdc;
}
.nagata-store-item:last-child {
  border-bottom: none;
}

/* 店舗名見出し */
.nagata-store-name {
  font-size: 22px !important;
  font-weight: bold !important;
  color: #3a3a3a !important;
  margin-bottom: 20px !important;
  padding-left: 15px !important;
  border-left: 4px solid #b28b3f !important;
  border-bottom: none !important;
  background: none !important;
  line-height: 1.2 !important;
}
.nagata-store-name::before,
.nagata-store-name::after {
  display: none !important;
}

/* テキストと地図の横並び（中央揃えでバランスを整える） */
.nagata-store-flex {
  display: flex;
  gap: 40px;
  align-items: center; /* ★テキストと地図を縦方向の中央で揃える */
}

/* 左側のテキストエリア */
.store-info-box {
  width: 35%; /* ★写真がない分、幅を少しコンパクトに */
}
.store-address {
  font-size: 1.125rem;
  margin-bottom: 15px !important;
  line-height: 1.6;
}
.store-tel-free {
  font-size: 1.75rem; /* フリーダイヤルを少し強調 */
  font-weight: bold;
  color: #b28b3f;
  margin-bottom: 5px !important;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
  letter-spacing: 0.05em;
}
.store-tel {
  font-size: 1.125rem;
  color: #555;
  margin-bottom: 0 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
}

/* 右側の地図エリア */
.store-map-box {
  width: 65%; /* ★地図を広めに */
  height: 250px; /* ★地図の高さを固定してスッキリ見せる */
  background: #f0f0f0;
  border-radius: 4px;
  overflow: hidden;
}

/* --- スマートフォン対応 --- */
@media screen and (max-width: 768px) {
  
  /* ■ 会社概要（thが上、tdが下に縦並び） */
  .nagata-company-table,
  .nagata-company-table tbody,
  .nagata-company-table tr,
  .nagata-company-table th,
  .nagata-company-table td {
    display: block; /* 縦並びにする魔法の指定 */
    width: 100%;
    box-sizing: border-box; /* 画面幅をはみ出さないようにする */
  }
  .nagata-company-table th {
    border-bottom: none; /* 下のtdとの境界線を消して一体化させる */
    padding: 15px 15px 5px; /* 下側の余白を詰めてtdと近づける */
  }
  .nagata-company-table td {
    padding: 5px 15px 15px; /* 上側の余白を詰めてthと近づける */
  }

  /* ■ 店舗案内（テキストが上、マップが下に縦並び） */
  .nagata-store-flex {
    flex-direction: column; /* 縦並びの指定 */
    gap: 15px; /* テキストと地図の間の隙間 */
    align-items: flex-start;
  }
  .store-info-box,
  .store-map-box {
    width: 100%; /* スマホ画面いっぱいに広げる */
  }
  .store-map-box {
    height: 250px; /* スマホでも地図の高さをキープ */
  }
  
}