@charset "UTF-8";
/*//////////PCサイズ///////////*/
@media screen and (min-width: 481px) {

/** ==============================
 *  ヘッダー
 * ============================== **/
#header {
  top: 0;
  width: 100%;
  z-index: 1000;
  background-color: #f0ebe5;
  transition: transform 0.4s ease-in-out;
}
/* 上部ヘッダー */
.header-top {
  height: 8vw;
  display: flex;
  align-items: center;
  padding: 0 2vw;
}
/* ヘッダーコンテナ（3分割グリッド） */
.header-container {
  display: grid;
  grid-template-columns: 22vw auto 23vw;
  align-items: center;
  width: 100%;
}
/* ロゴ */
.header-logo {
  width: 100%;
  display: flex;
  align-items: center;
}
.header-logo a {
  width: 100%;
}
.header-logo img {
  width: 100%;
  height: auto;
}
/* ボタン群 */
.header-buttons {
  display: flex;
  justify-content: flex-end;
  gap: 1px;
  padding-right: 0vw;
}
.header-buttons .btn {
  display: inline-block;
  height: 3vw;
  line-height: 3vw;
  padding: 0 2vw;
  font-size: 2rem;
  font-weight: 400;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  color: #ffffff;
  background-color: #5a4233;
  border: none;
  border-radius: 0;
  transition: opacity 0.3s ease-in-out;
}
.header-buttons .btn:hover {
  background-color: #3a2d27;
  opacity: 0.8;
}
/* 電話番号エリア */
.header-contact {
  width: 100%;
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding: 0 0 1vw 0;
}
.phone-number {
  font-size: 5.3rem;
  font-weight: 700;
  font-family: 'Noto Serif JP', serif;
  color: #514440;
  line-height: 100%;
}
.business-hours {
  font-size: 2rem;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  color: #514440;
  font-feature-settings: "palt"1, "pkna"1;
}
/* 黒い区切り線 */
.header-divider {
  width: 100%;
  height: 1px;
  background-color: #231815;
}
/* 下部ナビゲーション */
.header-nav {
  height: 4.5vw;
  width: 86vw;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
/* メニューリスト */
.header-nav ul {
  list-style: none;
  display: flex;
  width: 100%;
  justify-content: space-between;
}
.header-nav li {
  flex: 1;
  text-align: center;
  position: relative;
}
.header-nav a {
  display: block;
  width: 100%;
  padding: 1.5vw 0;
  color: #514440;  font-size: 2.4rem;
}
/* 仕切り線 */
.header-nav li:not(:first-child)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2vw;
  bottom: 0.2vw;
  width: 1px;
  background-color: rgba(35, 24, 21, 0.5);
}
/** ==============================
 *  固定ヘッダー（スクロール時に表示）
 * ============================== **/
/* スクロール後に表示する固定ヘッダー */
#fixed-header {
  position: fixed;
  top: -10vw;
  left: 0;
  width: 100%;
  height: 5vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2vw;
  background-color: rgba(255, 255, 255, 0.8); /* 半透明の白 */
  backdrop-filter: blur(8px);                 /* 背面ぼかし */
  -webkit-backdrop-filter: blur(5px);         /* Safari対応 */
  z-index: 9999;
  transition: top 0.4s ease-in-out;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4); /* 境界線で引き締め */
}

/* ロゴ */
.fixed-logo {

}
.fixed-logo img {
  width: 14vw;
}
/* バーガーメニュー */
#burger-menu {
  width: 4vw;
  height: 4vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 10000;
}
/* バーガーメニューの線 */
.burger-lines {
  width: 4vw;
  height: 1px;
  background-color: #aaa;
  position: relative;
}
/* 上下の線 */
.burger-lines::before, .burger-lines::after {
  content: "";
  position: absolute;
  width: 4vw;
  height: 1px;
  background-color: #aaa;
  left: 0;
}
/* 上の線 */
.burger-lines::before {
  top: -0.6vw;
}
/* 下の線 */
.burger-lines::after {
  top: 0.6vw;
}
/* スクロール時に表示 */
.show-fixed-header {
  top: 0 !important;
}
/** ==============================
 *  スライドメニュー
 * ============================== **/
/* スライドメニュー全体 */
#slide-menu {
  position: fixed;
  top: 0;
  right: -50vw;
  width: 50vw;
  height: 100vh;
  background-color: #514540;
  z-index: 10000;
  transition: right 0.4s ease-in-out;
  display: flex;
  flex-direction: column;
  padding: 4vw;
}
/* スライドメニューを開いた時 */
.show-slide-menu {
  right: 0 !important;
}
/* メニューリスト */
#slide-menu ul {
  list-style: none;
  display: grid;
  height: 80vw; /* 高さを固定 */
  grid-auto-rows: 1fr; /* 各liを均等に分割 */
  margin: 6vw 0 0;
  padding: 0;
  overflow: hidden;
}
/* メニュー項目 */
#slide-menu li {
  padding: 0vw 0;
}
/* メニューリンク */
#slide-menu a {
  font-size: clamp(2.6rem, 2.6vw, 18px);
  font-weight: 300;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  display: block;
  width: 100%;
}
#slide-menu a:hover {
  color: #ffffff;
  opacity: 0.8;
}
/* メニューの区切り線 */
.menu-divider {
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.3);
  margin: 2vw 0;
}
/* 電話番号エリア */
.menu-contact {
  text-align: center;
  margin-top: 4vw;
}
.menu-contact .phone-number {
  font-size: 5rem;
  font-weight: 400;
  padding: 0 0 1vw 0;
  color: #ffffff;
  letter-spacing: 0.4rem;
}
.menu-contact .business-hours {
  font-size: 2.rem;
  font-weight: 300;
  color: #ffffff;
}
/* 閉じるボタン */
.close-menu {
  position: absolute;
  top: 2vw;
  right: 2vw;
  width: 4vw;
  height: 4vw;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 10001;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* ×アイコン（CSSで作成） */
.close-menu::before, .close-menu::after {
  content: "";
  position: absolute;
  width: 4vw;
  height: 0.5px;
  background-color: #ffffff;
  top: 50%;
  left: 50%;
  transform-origin: center;
}
/* 斜め交差させる */
.close-menu::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.close-menu::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
/** ==============================
 *  固定ボタン（スクロール時に表示）
 * ============================== **/
/* 固定ボタンエリア */
#fixed-buttons {
  position: fixed;
  bottom: -10vw; /* 初期状態は画面外 */
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 0.2vw; /* ボタンの間隔 */
  z-index: 10000;
  transition: bottom 0.4s ease-in-out;
}
#fixed-buttons {
  transition: opacity 0.5s ease;
}
/* スクロール時に表示させる */
.show-fixed-buttons {
  bottom: 0vw !important;
}
/* 固定ボタンのデザイン */
.fixed-btn {
  display: inline-block;
  width: 15vw;
  height: 4vw;
  line-height: 4vw;
  padding: 0 0vw;
  font-size: 2.6rem;
  font-weight: 400;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  color: #ffffff;
  background-color: #5a4233;
  border: none;
  transition: opacity 0.3s ease-in-out;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
/* ホバーアクション */
.fixed-btn:hover {
  color: #ffffff;
  background-color: #5a4233;
  opacity: 0.8;
}
/* 来場予約ボタンのカラー */
.fixed-btn-primary {
  background-color: #5a4233;
}
.fixed-btn-primary:hover {
  background-color: #5a4233;
  opacity: 0.8;
}
/** ==============================
 *  ファーストビュー
 * ============================== **/
#first-view {
  position: relative;
  width: 100%;
  height: 60vw;
  background-color: #514540; /* 茶色背景 */
  clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 85%, 0 100%);
}
.first-view-inner {
  position: relative;
  width: 100vw;
  height: 60vw;
  text-align: center;
}
/* 左上の装飾画像 */
.first-view-left-img {
  position: absolute;
  top: 0vw;
  left: 0vw;
  width: 40.6vw;
  opacity: 0.5
}
/* タイトル */
.first-view-title {
  position: absolute;
  width: 32vw;
  top: 8vw;
  left: 50%;
  transform: translateX(-50%);
  max-width: 100%;
  display: block;
}
/* サブタイトル（予約受付中のテキスト） */
.first-view-subtitle {
  position: absolute;
  top: 30vw;
  left: 50%;
  transform: translateX(-50%); /* 中央揃え */
  font-size: 4.8rem;
  line-height: 7.5rem;
  font-weight: 300;
  color: #fff;
  font-family: 'Noto Serif JP', serif; /* 明朝体を適用 */
  letter-spacing: 0.3rem;
}
.first-view-subtitle span {
  font-size: 8rem;
  font-weight: 400;
}
/* ボタン群 */
.first-view-buttons {
  position: absolute;
  bottom: 11vw;
  left: 50%;
  transform: translateX(-50%); /* 中央揃え */
  display: flex;
  justify-content: center;
  gap: 1vw;
}
.first-view-buttons .btn {
  display: inline-block;
  width: 15vw;
  height: 4vw;
  line-height: 4vw;
  padding: 0 0vw;
  font-size: 2.8rem;
  font-weight: 400;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  color: #ffffff;
  background-color: #BC9D5D;
  border: none;
  transition: 0.3s ease-in-out;
}
.first-view-buttons .btn:hover {
  color: #ffffff;
  background-color: #F08F5E;
  opacity: 0.8;
}
/* 右上の2WAYアクセス画像 */
.first-view-access-img {
  position: absolute;
  top: 5vw;
  right: 6vw;
  width: 25vw;
}
/** ==============================
 *  コンセプト
 * ============================== **/
#concept {
  position: relative;
  width: 100%;
  padding: 0 0 8vw 0;
  text-align: center;
}
/* セクションタイトル */
.concept-section-title {
  font-size: 2rem;
  font-weight: 300; /* ウェイトを300に */
  color: #9a8f81;
  letter-spacing: 0.2rem;
  text-transform: uppercase;
  font-family: 'Noto Serif JP', serif; /* 明朝体を適用 */
  padding: 0 0 3vw 0;
}
/* 日本語タイトル（コンセプト） */
.concept-title-jp {
  font-size: 3rem;
  font-weight: 400;
  font-family: 'Noto Serif JP', serif; /* 明朝体を適用 */
  display: block;
  margin-bottom: 1vw;
}
/* メインタイトル画像 */
.concept-title-img {
  width: 18vw;
  max-width: 100%;
  margin-top: 2vw;
}
/* コンセプトテキスト */
.concept-text {
  font-size: 2.7rem;
  font-weight: 100;
  color: #514540;
  line-height: 6rem;
  letter-spacing: 0.2rem;
  width: 80%;
  margin: 4vw auto;
  text-align: justify; /* 両端揃え */
  font-family: "游ゴシック", "YuGothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
  font-feature-settings: "palt"1, "pkna"1; /* 約物半角 */
}
/* 平体（横長）テキスト */
.scaled-text {
  display: inline-block;
  transform: scaleX(1.8); /* 横幅を1.5倍に */
}
/* コンセプト画像 */
.concept-image{
overflow: hidden;
  width: 80vw;
  margin: auto;
}
.concept-image img {
width: 100%;
  height: auto;
}
.concept-image-caption {
  width: 80vw;
  font-size: 1.6rem;
  text-align: right;
  color: #8c8274;
  margin: 0.5vw auto;
}
/** ==============================
 *  豊中市 小曽根の魅力
 * ============================== **/
#ozone-area {
  position: relative;
  width: 100%;
  padding: 8vw 0;
  background-color: #514540; /* 茶色背景 */
  text-align: center;
}
/* セクションタイトル */
.ozone-area-section-title {
  font-weight: 300;
  color: #d2b780;
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 3vw;
}
.ozone-area-section-title .title-jp {
  display: block;
  font-size: 3.1rem;
  font-weight: 400;
  margin-bottom: 0.3vw;
}
.ozone-area-section-title .title-en {
  display: block;
  font-size: 1.9rem;
  font-weight: 300;
  letter-spacing: 0.15rem;
}
/* 大タイトル */
.ozone-area-main-title {
  font-size: 4rem;
  font-weight: 400;
  line-height: 160%;
  font-family: 'Noto Serif JP', serif; /* 明朝体を適用 */
  color: #d2b780;
  margin-bottom: 3vw;
  letter-spacing: 0.5rem;
}
/* 説明テキスト */
.ozone-area-text {
font-size: 2.6rem;
  font-weight: 300;
  line-height: 180%;
  letter-spacing: 0.2rem;
  color: #EDE6DC;
  width: 80%;
  margin: 0 auto 5vw;
  text-align: justify;
  font-family: "游ゴシック", "YuGothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
  font-feature-settings: "palt"1, "pkna"1;
}
/** ==============================
 *  豊中市 小曽根の魅力
 * ============================== **/
/* 画像ギャラリー */
.ozone-area-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3列のグリッド */
  gap: 1.5vw; /* 画像間の余白 */
  width: 80%;
  margin: 0 auto;
  height: auto;
}
/* 画像設定 */
.ozone-area-gallery img {
  width: 100%; /* 親要素（グリッドのセル）に合わせる */
  height: auto;
  object-fit: cover;
}
/* 画像キャプション */
.ozone-area-caption {
  font-size: 1.6rem;
  color: #c6b8a5;
  text-align: right;
  margin-top: 0.5vw;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
/** ==============================
 *  魅力詳細セクション
 * ============================== **/
#ozone-details {
  position: relative;
  width: 100%;
  padding: 0 0;
  background-color: #a5b4c2; /* 右側の背景色 */
}
/* グリッドレイアウト（全体） */
.ozone-details-grid {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 左右2分割 */
  gap: 0;
  align-items: stretch;
}
/* 左側の画像 */
.ozone-details-image {
  width: 100%;
  height: 100%;
}
.ozone-details-image img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* 縦横比を崩さずフィット */
}
/* 右側のテキストエリア（内部も grid で分割） */
.ozone-details-content {
  display: grid;
  grid-template-rows: 17vw auto; /* 上が固定 17vw（画像）、下は自動調整 */
  padding: 0; /* 余白なし */
  background-color: #9a8f81; /* 右側の背景色 */
  color: #ffffff;
}
/* 上部の画像エリア */
.ozone-details-content-image {
  width: 100%;
  height: 17vw;
  overflow: hidden;
}
.ozone-details-content-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* 下部のテキストエリア外枠 */
.ozone-details-inner {
  padding: 0vw 7vw 0 7vw;
}
/* 下部のテキストエリア */
.ozone-details-textbox {
  padding: 2.5vw 0 0 0;
}
/* 見出し */
.ozone-details-title {
  font-size: 3.3rem;
  font-weight: 400;
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 0.5vw;
  letter-spacing: 0.2rem
}
/* 本文 */
.ozone-details-text {
font-size: 2.4rem;
  font-weight: 300;
  font-family: 'Noto Serif JP', serif;
  line-height: 180%;
  letter-spacing: 0.1rem;
}
/** ==============================
 *  タウンデザイン全体
 * ============================== **/
#town-design {
  position: relative;
  width: 100%;
  text-align: center;
  padding: 0 0 6vw 0;
}

/* メイン画像 */
.town-design-image{
overflow: hidden;
  width: 100%;
  height: 30vw;
    display: flex;
    align-items: center;
    justify-content: center;
}
.town-design-image img {
  width: 100%;
  height: auto;
}
/* ==============================
 * パララックス用画像調整
 * ============================== */
.parallax-img {
  will-change: transform;
  transition: transform 0.8s cubic-bezier(0.25, 0.1, 0.25, 1); /* ease-in-out相当 */
}
.town-design-caption {
  font-size: 1.6rem;
  color: #8c8274;
  text-align: right;
  margin-top: 0.5vw;
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}
/* タイトル部分 */
.town-design-title {
  text-align: center;
  margin: 8vw 0 4vw 0;
}
/* ロゴ */
.town-design-title img {
  width: 25vw;
  max-width: 100%;
  padding-right: 1vw
}
/* TOWN DESIGN */
.town-design-subtitle {  font-size: 2.4rem;
  font-weight: 300;
  color: #A68859;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.2rem;
  margin-top: 1.5vw;
}
/* テキストエリア */
.town-design-textbox {
  width: 80%;
  margin: 4vw auto;
  text-align: center;
}
/* メインタイトル */
.town-design-main-title {
  font-size: 4.5rem;
  font-weight: 400;
  font-family: 'Noto Serif JP', serif;
  color: #514540;
  margin-bottom: 3vw;
  letter-spacing: 0.2rem;
}
/* 本文 */
.town-design-text {
	font-size: 2.6rem;
  font-weight: 300;
  text-align: justify;
  font-family: 'Noto Serif JP', serif;
  line-height: 180%;
  letter-spacing: 0.1rem;
  color: #514540;
}
/* 区画イメージ */
.town-design-map img {
  width: 100%;
  height: auto;
}
/** ==============================
 *  ギャラリー ヘッダー
 * ============================== **/
.gallery-header {
  text-align: center;
  margin-bottom: 4vw;
  padding: 2vw 0;
}
.gallery-title {
  font-size: 3.8rem;
  line-height: 100%;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1vw;
  letter-spacing: 0.2rem;
  font-family: 'Noto Serif JP', serif;
}

.gallery-subtitle {
font-size: 2.4rem;
  font-weight: 400;
  color: #a68859;
  text-transform: uppercase;
  font-family: 'Noto Serif JP', serif;
  padding-bottom: 2vw;
}

/* 説明文 */
.gallery-description {
  font-size: 2.4rem;
  font-weight: 300;
  color: #514540;
  text-align: center;
  margin: 0 0;
  line-height: 4rem;
  font-feature-settings: "palt" 1, "pkna" 1;
}
/** ==============================
 *  ギャラリー共通設定
 * ============================== **/
.gallery-wrapper {
  width: 100%;
  padding: 0 0 10px 0;
  gap: 10px;
}
/* 各ギャラリーブロック */
.gallery-block {
  width: 100%;
  margin-bottom: 10px;
}
/* 共通の左右2分割（左2/3、右1/3） */
.gallery-inner_a {
  display: grid;
  grid-template-columns: 3 1fr;
  gap: 10px;
  width: 100%;
}
/* 左カラム（縦2分割） */
.gallery-inner-a_block {
  display: grid;
  grid-template-rows: 1fr 1fr; /* 縦に2分割 */
  gap: 10px;
  height: 100%;
}
/* 中央カラム（縦2分割） */
.gallery-inner-b_block {
  display: grid;
  grid-template-rows: 1fr 1fr; /* 縦に2分割 */
  gap: 10px;
  height: 100%;
}
/* 横2分割（grid-pair） */
.grid-pair {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
/* 画像のリスト */
.image-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px; /* 間隔を均等に */
}
/* 個別の画像 */
.image-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* 枠内に収める */
  display: block;
}
/* 23, 26, 27 の調整 */
.image-grid img:nth-child(23), .image-grid img:nth-child(26), .image-grid img:nth-child(27) {
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 16 / 9; /* 縦横比を統一 */
}
/* 右カラム（単独画像） */
.single-image {
  width: 100%;
}
/* 共通の左右2分割（左2/3、右1/3） */
.gallery-inner {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 10px;
  width: 100%;
}
/* 逆パターンの左右2分割（右が1fr, 左が2fr） */
.gallery-inner-reverse {
  grid-template-columns: 1fr 2fr;
}
/* gallery-grid（横2分割） */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  align-items: stretch;
}
/* 横2分割（画像2枚） */
.grid-pair {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
/* 各アイテム */
.grid-item {
  display: flex;
  align-items: stretch;
}
/* 画像スタイル */
.grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* 縦2分割 */
.single-column {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
/* 縦2分割の画像 */
.column-grid {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 10px;
}
/* 画像 */
.column-grid img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
/* 左の2画像（縦2分割） */
.two-column {
  display: flex;
  align-items: stretch;
}
.two-row-grid {
  display: grid;
  grid-template-rows: repeat(2, 1fr);
  gap: 10px;
  width: 100%;
}
/* 横3分割 */
.three-column-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr; /* 左2/3、中央1/6、右1/6 */
  gap: 10px;
  width: 100%;
  margin-bottom: 10px; /* 下部に余白を追加 */
}
/* 画像 */
.three-column-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* gallery-inner（左1fr、中央1fr、右1fr） */
.gallery-inner-three {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
}
/* 中央の横2分割 */
.center-column {
  display: flex;
  align-items: stretch;
}
/* 中央カラム（縦2分割） */
.center-grid {
  display: grid;
  grid-template-rows: 1fr 1fr; /* 縦に2分割 */
  gap: 10px;
  width: 100%;
  height: 100%;
}
/* 画像のスタイル */
.center-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/** ==============================
 *  周辺環境（LOCATION） セクション
 * ============================== **/
.location-section {
  width: 100%;
  padding: 8vw 0;
  text-align: center;
}
/* タイトルエリア */
.location-header {
  margin-bottom: 4vw;
}
.location-title{
  font-size: 3.8rem;
  line-height: 100%;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1vw;
  letter-spacing: 0.2rem;
  font-family: 'Noto Serif JP', serif;
}

.location-subtitle  {
font-size: 2.4rem;
  font-weight: 400;
  color: #a68859;
  text-transform: uppercase;
  font-family: 'Noto Serif JP', serif;
}
/* アクセス見出し（中間リード） */
.access-lead {
  font-size: 4.5rem; /* ギャラリーの説明文と統一 */
  font-weight: 300;
  color: #514540;
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  margin: 2vw auto 2vw;
  line-height: 1.6;
  font-feature-settings: "palt" 1, "pkna" 1;
  width: 60%;
  letter-spacing: 0.2rem;
}

/* リード文 */
.location-description {
  font-size: 4.5rem; /* ギャラリーの説明文と統一 */
  font-weight: 300;
  color: #514540;
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  margin: 2vw auto 2vw;
  line-height: 1.6; /* 行間 */
  font-feature-settings: "palt"1, "pkna"1; /* 約物半角 */
  width: 60%;
  letter-spacing: 0.2rem;
}
/* サブテキスト */
.location-text {
font-size: 2.6rem;
  font-weight: 300;
  color: #514540;
  text-align: justify;
  margin: 0 auto 4vw;
  line-height: 1.8; /* 行間 */
  font-feature-settings: "palt"1, "pkna"1;
  letter-spacing: 0.2rem;
  width: 60%;
}
.location-image {
position: relative;
  width: 80vw;
  margin: auto;
  overflow: hidden;
}
/* 公園の画像 */
.location-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
.image_caption{
position: absolute;
right: 1%;
bottom:1%;
font-size: 2rem;
color: #FFF;
z-index: 10;
}
/* 公園の説明文 */
.location-text-block {
  width: 60%;
  margin: 3vw auto 0;
  text-align: justify;  font-size: 2.4rem;
  font-weight: 300;
  color: #514540;
  line-height: 1.8;
  letter-spacing: 0.2rem;
  font-feature-settings: "palt"1, "pkna"1;
}
/** ==============================
 *  最寄りの駅 セクション
 * ============================== **/
.station-section {
    width: 80vw;
    padding: 0 0 5vw 0;
	margin: auto;
}

/* タイトルエリア */
.station-header {
    text-align: left;
    margin-bottom: 3vw;
}

/* セクションタイトル */
.station-title {
    font-size: 3.8rem;
    font-weight: 700;
    font-family: 'Noto Serif JP', serif;
    color: #514540;
    letter-spacing: 0.2rem;
    line-height: 1.3;
    margin-bottom: 0.5vw;
}

/* タイトル下の罫線 */
.station-line {
    width: 100%;
    height: 4px;
    background: linear-gradient(to right, #A68859 30%, #C4B8AE 30%);
}

/* 駅情報グリッド */
.station-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 横4分割 */
    gap: 2vw;
    width: 79vw;
    margin: auto;
}

/* 各駅の情報 */
.station-item {
    display: flex;
    flex-direction: column;
    align-items: left;
}

/* 駅画像 */
.station-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

/* 駅情報 */
.station-info {
    text-align: left;
    margin-top: 1vw;
}

/* 駅までの距離 */
.station-distance {
    font-size: 2rem;
    font-weight: 300;
    color: #514540;
    letter-spacing: 0.1rem;
    margin-bottom: 0.5vw;
}

/* 駅名 */
.station-name {  font-size: 2.4rem;
    font-weight: 500;
    color: #514540;
    line-height: 1.5;
}
/* Googleマップ埋め込み用コンテナ */
.map-container {
    width: 100%;
    height: 40vw;
    overflow: hidden;
    pointer-events: none; /* スクロール無効化 */
}

/* iframeのスタイル */
.map-container iframe {
    width: 100%;
    height: 100%;
    border: none;
    pointer-events: auto; /* クリックしたときだけ操作可能 */
}
/** ==============================
 *  アクセス（ACCESS） セクション
 * ============================== **/
.access-section {
    width: 100%;
    padding: 6vw 0 10vw 0;
    text-align: center;
}

/* 内側のコンテンツを囲むコンテナ */
.access-container {
    width: 80%;
    margin: auto;
    background-color: #FFFFFF;
    padding: 8vw 0 0 0;
}

/* タイトルエリア */
.access-header {
    margin-bottom: 3vw;
}
.access-title {
    font-size: 3.8rem;
    font-weight: 700;
    font-family: 'Noto Serif JP', serif;
    margin-bottom: 1vw;
    letter-spacing: 0.2rem;
    line-height: 1.3;
	color: #514540;
}
.access-subtitle {
font-size: 2.4rem;
    font-weight: 300;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    margin-bottom: 1.5vw;
    line-height: 1.3;
	color: #A68859;
}

/* リード文 */
.access-description {
font-size: 2.6rem;
    font-weight: 300;
    color: #514540;
    font-family: 'Noto Serif JP', serif;
    text-align: justify;
    margin: 2vw auto 3vw auto;
    line-height: 1.6;
    font-feature-settings: "palt"1, "pkna"1;
    width: 60vw;
    letter-spacing: 0.2rem;
}

/* アクセス情報エリア */
.access-box-container {
width:60vw;
margin: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0vw;
    margin-bottom: 4vw;
	border: 1px solid #DDD0C0;
}

/* 各アクセスボックス */
.access-box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 3vw;
    background-color: #FFFFFF;

    text-align: left;
}

/* 明朝体を適用 */
.access-box * {
    font-family: 'Noto Serif JP', serif;
}
 .borderline{
	border-right: 1px solid #DDD0C0;
}
/* 駅名タイトル */
.access-station {
    font-size: 1.8rem;
    font-weight: 500;
    color: #514540;
    margin-bottom: 1.5vw;
}
.access-main-station {
    font-size: 4rem;
    font-weight: 300;
    color: #514540;
    margin-bottom: 1.5vw;
}

/* 時間リスト */
.access-time-group {
    font-size: 2rem;
    font-weight: 300;
    color: #514540;
    line-height: 1.6;
}
.access-time span {
    color: #A68859;
	    font-size: 3rem;

    font-weight: 700;
}

/* 路線図エリア */
.access-image {
    width: 50vw;
    margin: auto;
}
.access-image img {
    width: 100%;
    height: auto;
    display: block;
}


/** ==============================
 * プラン（PLAN）セクション
 * ============================== **/
.plan-section {
  background-color: #514540;
    clip-path: polygon(50% 10%, 100% 0, 100% 100%, 0% 100%, 0 95%, 0 0);
  padding: 12vw 0 5vw 0;
  color: #ffffff;
  text-align: center;
}

/* 子1：タイトル */
.plan-header {
  margin-bottom: 4vw;
}

.plan-title {
    font-size: 3.8rem;
    font-weight: 700;
    font-family: 'Noto Serif JP', serif;
    margin-bottom: 1vw;
    letter-spacing: 0.2rem;
    line-height: 1.3;  color: #D1B06E;
}

.plan-subtitle {
  font-size: 1.6rem;  font-size: 2rem;
    font-weight: 300;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    margin-bottom: 1.5vw;
    line-height: 1.3;  color: #e9dfd1;
}

/* 子2：設計士紹介エリア */
.architect-message {
  background-color: #ffffff;
  color: #514540;
  width: 80vw;
  margin: 0 auto 5vw auto;
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3vw;
  align-items: center;
  padding: 3vw;
  margin-bottom: 5vw;
  text-align: left;
}

.architect-image img {
  width: 100%;
  height: auto;
  display: block;
}

.architect-heading {
	font-size: 4rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-bottom: 2.5vw;
	letter-spacing: 0.3rem;
	color: rgba(167,167,167,1.00);
}

.architect-description {  font-size: 2.4rem;
  font-weight: 300;
  line-height: 1.8;
  margin-bottom: 2vw;
  font-feature-settings: "palt"1, "pkna"1;
}

.architect-footer {
  display: flex;
  align-items: center;
  gap: 2vw;
}

.architect-logo {
  width: 6vw;
  height: auto;
}

.architect-info {
  font-size: 2.4rem;
  line-height: 1.5
}

.architect-office {
  font-weight: 700;
}

.architect-name span {
  font-size: 2.8rem;
  font-weight: 300;
  font-family: 'Noto Serif JP', serif;
  margin: 0 1.5rem 0 1.5rem;
}

/* 子3：モデルプラン説明 */
.plan-description-block {
  margin-top: 5vw;
  color: #ffffff;
}

.plan-description-title {
  font-size: 4rem;  line-height: 100%;
  font-weight: 400;
  color: #D1B06E;
  margin-bottom: 4vw;
  font-family: 'Noto Serif JP', serif;
}

.plan-description-lead {
  font-size: 3rem;
  font-weight: 400;
  margin-bottom: 2vw;
  font-family: 'Noto Sans JP', sans-serif;
}

.plan-description-text {  font-size: 2.4rem;
  font-weight: 300;
  line-height: 2;
  font-feature-settings: "palt"1, "pkna"1;
}

/** ==============================
 * モデルプラン（Model Plan）セクション
 * ============================== **/
.model-plan-section {
  padding: 6vw 0;
  text-align: center;
}

/* 親1: タイトル */
.model-plan-header {
  margin-bottom: 4vw;
}
.model-plan-title {
  font-size: 3.8rem;
  line-height: 100%;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1vw;
  letter-spacing: 0.2rem;
  font-family: 'Noto Serif JP', serif;
}

.model-plan-subtitle {
font-size: 2.4rem;
  font-weight: 400;
  color: #a68859;
  text-transform: uppercase;
  font-family: 'Noto Serif JP', serif;
}


/* 親2: 画像 */
.model-plan-image {
  width: 80vw;
  margin: 0 auto;
}

.model-plan-image img {
  width: 100%;
  height: auto;
}

.image-caption {
  font-size: 1.6rem;
  font-weight: 300;
  color: #514540;
  margin-top: 0.5vw;
  text-align: right;
}

/* 親3: Gridレイアウト */
.model-plan-grid {
width: 80vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2vw;
  margin: 3vw auto 0 auto;
}

.model-plan-item {
  text-align: left;
}

.model-plan-item img {
  width: 100%;
  height: auto;
}

.model-plan-item .image-caption {
  font-size: 1.6rem;
  color: #514540;
  margin-top: 0.5vw;
}

/** ==============================
 * スキップフロア吹抜けプラン（Skip Plan）セクション
 * ============================== **/
.skip-plan-section {
	padding: 8vw 0 2vw 0;
	text-align: center;

}
.bg_clr{	background-color: #fefdfc;}
/* 親1: gridレイアウトで左右2分割 - skip-plan-header */
.skip-plan-header {
  display: grid;
  grid-template-columns: 15vw 1fr;
  gap: 3vw;
  width: 80vw;
  margin: 0 auto;
  align-items: center;
  text-align: left
}

/* 親2: 画像 */
.skip-plan-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* 親3: テキスト（タイトル・コピー） */
.skip-plan-text {
  padding: 2vw;
}

.skip-plan-title {
  font-size: 3.8rem;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1.5vw;
  line-height: 100%;
}

.skip-plan-description {
font-size: 2.6rem;
  color: #514540;
  line-height: 1.8;
  font-feature-settings: "palt" 1, "pkna" 1;
  letter-spacing: 0.2rem;
  }

/* ダークブラウン帯 */
.skip-plan-feature {
  background-color: #514540;
  width: 80vw;
  margin:2vw auto 0 auto;
  padding: 1vw 0;
}

.skip-plan-feature p {

  font-size: 3.8rem;
  font-weight: 400;
  text-align: center;
  color: #d2b780;
  font-family: 'Noto Serif JP', serif;
}

.skip-plan-image-container{
height:64.3vw;
text-align: center;
}

/* 親4: 画像（img_74） */
.skip-plan-image-container img {
  width: auto;
  height: 100%;
}

/* 親5: 注釈 */

.skip-plan-note {
  padding-top: 5vw;
  text-align: right;
  font-size: 1.6rem;
  color: #514540;
  font-weight: 300;
  width: 80vw;
  margin: auto;
}

/** ==============================
 * 性能と品質（SPEC）セクション
 * ============================== **/
.spec-section {
  padding: 8vw 0;
  text-align: center;
}
/* タイトル */
.spec-header {
  margin-bottom: 1.8vw;
}
.spec-title {
  font-size: 3.8rem;
  line-height: 100%;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1vw;
  letter-spacing: 0.2rem;
  font-family: 'Noto Serif JP', serif;
}

.spec-subtitle {
font-size: 2.4rem;
  font-weight: 400;
  color: #a68859;
  text-transform: uppercase;
  font-family: 'Noto Serif JP', serif;
}

/* 子サブタイトルとコピー */
.spec-text {
  padding: 2vw;
}

.spec-subtitle-text {
  font-size: 4.5rem;
  font-weight: 300;
  margin-bottom: 2vw;
  font-family: 'Noto Serif JP', serif;
  color: #514540;
  line-height: 1.4;
  letter-spacing: 0.2rem;
}

.spec-description {
font-size: 2.6rem;
font-weight: 300;
  color: #514540;
  line-height: 2;
  width: 65vw;
  text-align: justify;
  margin: auto;
  font-feature-settings: "palt" 1, "pkna" 1;
}
.spec-image-container{
overflow: hidden;
width: 100%;
height: 36vw;
    display: flex;
    align-items: center;
    justify-content: center;
}
.spec-image-container img{
width: 100%;
height: auto;
}
.spec-image-container2{
overflow: hidden;
width: 100%;
height: 25vw;
    display: flex;
    align-items: center;
    justify-content: center;
}
.spec-image-container2 img{
width: 100%;
height: auto;
}
.spec-note {
  text-align: right;
  font-size: 1.6rem;
  color: #514540;
  margin-top: 0.5vw;
  padding-right:2vw;
  font-weight: 300;
}
/** ==============================
 * 標準仕様（Standard Specs）セクション
 * ============================== **/
.standard-specs-section {
  padding: 0 0;
  text-align: center;
}

/* タイトル */
.standard-specs-header {
  margin-bottom: 2.5vw;
}

.standard-specs-title {
  font-size: 4.5rem;
  font-weight: 700;
  font-family: 'Noto Serif JP', serif;
  color: #514540;
  margin-bottom: 1vw;
  letter-spacing: 0.2rem;
}

.standard-specs-subtitle {
font-size: 2rem;
  font-weight: 300;
  font-family: 'Noto Serif JP', serif;
  color: #A68859;
  letter-spacing: 0.2rem;
  text-transform: uppercase;
}

/* キャッチコピー */
.standard-specs-lead {
  font-size: 4.5rem;
  font-weight: 300;
  color: #514540;
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 4vw;
  letter-spacing: 0.2rem;
}

/* 画像 */
.standard-specs-image {
  width: 80vw;
  margin: 0 auto;
}

.standard-specs-image img {
  width: 100%;
  height: auto;
  display: block;
}

/** ==============================
 * エネファーム type S セクション
 * ============================== **/
.enefarm-section {

  padding: 8vw 0 8vw 0;
  text-align: left;
  color: #514540;
}

/* テキストエリア */
.enefarm-text-container {
  width: 80vw;
  margin: 0 auto 4vw auto;
}

.enefarm-title {
  font-size: 5rem;
  font-weight: 700;
  color: #b69247;
  text-align: center;
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 3vw;
  letter-spacing: 0.2rem;
}

.enefarm-subtitle {
  font-size: 3rem;
  font-weight: 400;
  color: #514540;
  margin-bottom: 0.5vw;
  line-height: 1.5;
  text-align: left;
}

.enefarm-description {
  font-size: 2.6rem;
  font-weight: 300;
  line-height: 2;
  font-feature-settings: "palt"1, "pkna"1;
}

/* 画像 */
.enefarm-image-container {
  width: 80vw;
  margin: 0 auto;
}

.enefarm-image-container img {
  width: 100%;
  height: auto;
  display: block;
}

/* 区切り線 */
.enefarm-divider {
  width: 90%;
  height: 1px;
  background-color: #ccc;
  margin: 0vw auto 0 auto;
}
.security-container {

  margin: 0 auto;
  display: grid;
  grid-template-columns:1fr 30vw;
  gap: 3vw;
  align-items:center;
  }

.security-text {
  /* 指定不要とのことなので、ここは空でOK */
}
/** ==============================
 * 建物性能セクション
 * ============================== **/
.building-performance-section {

  padding: 8vw 0 8vw 0;
}

.building-container {
  width: 80vw;
  background-color: #ffffff;
  margin: 0 auto;
  padding: 5vw 0;
}

/* タイトル */
.building-title {
  text-align: center;
  font-size: 4.5rem;
  font-weight: 700;
  color: #a68859;
  font-family: 'Noto Serif JP', serif;
  margin-bottom: 4vw;
  letter-spacing: 0.2rem;
}

/* 各ブロック */
.building-block {
  width: 65vw;
  margin: 0 auto 5vw auto;
}

/* グリッド構成 */
.building-grid {
  display: grid;
  grid-template-columns: 15vw 1fr;
  gap: 3vw;
  align-items: center;
}

.building-image img {
  width: 100%;
  height: auto;
  display: block;
}

.building-text {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.building-subtitle {
  font-size: 2.8rem;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1vw;
}

.building-text p {
  font-size: 2.6rem;
  line-height: 1.8;
  font-weight: 300;
  font-feature-settings: "palt" 1, "pkna" 1;
  color: #514540;
}

/* 全幅画像 */
.building-fullimage {
  margin-top: 0vw;
}
.building-fullimage img {
  width: 100%;
  height: auto;
}

/* 区切り線 */
.building-divider {
  width: 90%;
  height: 1px;
  background-color: #aaa;
  border: none;
  margin: 5vw auto;
}
/** ==============================
 * ZEH住宅セクション
 * ============================== **/
.zeh-section {
  padding: 8vw 0;
}

.zeh-container {
  background-color: #ffffff;
  width: 80vw;
  margin: 0 auto;
  padding: 5vw 0;
  text-align: center;
}

.zeh-label {
	display: inline-block;
	background-color: #a68859;
	color: #ffffff;
	font-size: 3rem;
	font-weight: 700;
	padding: 0.5vw 3vw 0.7vw 3vw;
	margin-bottom: 2vw;
	letter-spacing: 0.15rem;
	font-family: 'Noto Serif JP', serif;
	background-image: -webkit-linear-gradient(270deg,rgba(182,157,119,1.00) 0%,rgba(166,136,89,1.00) 18.40%,rgba(121,94,74,1.00) 57.65%,rgba(109,79,68,1.00) 73.04%,rgba(125,97,76,1.00) 87.65%,rgba(166,136,89,1.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(182,157,119,1.00) 0%,rgba(166,136,89,1.00) 18.40%,rgba(121,94,74,1.00) 57.65%,rgba(109,79,68,1.00) 73.04%,rgba(125,97,76,1.00) 87.65%,rgba(166,136,89,1.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(182,157,119,1.00) 0%,rgba(166,136,89,1.00) 18.40%,rgba(121,94,74,1.00) 57.65%,rgba(109,79,68,1.00) 73.04%,rgba(125,97,76,1.00) 87.65%,rgba(166,136,89,1.00) 100%);
	background-image: linear-gradient(180deg,rgba(182,157,119,1.00) 0%,rgba(166,136,89,1.00) 18.40%,rgba(121,94,74,1.00) 57.65%,rgba(109,79,68,1.00) 73.04%,rgba(125,97,76,1.00) 87.65%,rgba(166,136,89,1.00) 100%);
}

.zeh-title {
  font-size: 4.5rem;
  color: #a68859;
  font-weight: 400;
  margin-bottom: 4vw;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.2rem;
}

.zeh-text-block {
  width: 65vw;
  margin: 0 auto 3vw auto;
  text-align: left;
}

.zeh-subtitle {
  font-size: 2.8rem;
  font-weight: 700;
  color: #514540;
  margin-bottom: 1.5vw;
}

.zeh-description {
  font-size: 2.6rem;
  line-height: 2;
  color: #514540;
  font-weight: 300;
  font-feature-settings: "palt" 1, "pkna" 1;
  letter-spacing: 0.2rem;
}

.zeh-image {
  width: 65vw;
  margin: 2vw auto;
}

.zeh-image img {
  width: 100%;
  height: auto;
  display: block;
}

.zeh-divider {
  width: 90%;
  height: 1px;
  background-color: #aaa;
  border: none;
  margin: 4vw auto;
}
/** ==============================
 * アコーディオン
 * ============================== **/
.accordion-list {
  width: 80vw;
  margin: 5vw auto;
  font-family: 'Noto Serif JP', serif;
}

.accordion-item {
  margin-bottom: 2vw;
}

.accordion-toggle {
  position: relative;
  display: flex;
  align-items: center;
  padding: 1.3vw 1vw;
  background-color: #fff;
  border: 1px solid #aaa;
  font-size: 3rem;
  font-weight: 400;
  color: #231815;
  letter-spacing: 0.2rem;
  text-align: left;
  width: 100%;
  cursor: pointer;
  font-feature-settings: "palt" 1, "pkna" 1;
  transition: background-color 0.3s ease;
}
.accordion-toggle:hover {
	background-color: #F0E7D9;
}
.accordion-label {
  padding-left: 3vw;
  font-family: 'Noto Serif JP', serif;
}

.accordion-corner {
  position: absolute;
  width: 2.5vw;
  height: 2.5vw;
  background-color: #d3b98c;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  top: 0;
  left: 0;
  transition: all 0.3s ease;
}
.accordion-toggle.open .accordion-corner {
  clip-path: polygon(0 100%, 100% 100%, 0 0);
  top: auto;
  bottom: 0;
  left: 0;
}

/* アニメーション付き展開設定 */
.accordion-content {
  background-color: #ffffff;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.5s ease, opacity 0.5s ease;
  padding: 0;
}

.accordion-content.open {
  max-height: 5000px;
  opacity: 1;
}

.accordion-inner {  padding: 5vw 0;
  width: 80vw;
  margin: 0 auto;
  text-align: center;
}

/* タイトル */
.accordion-title-block {
  margin-bottom: 3vw;
}

.accordion-title-line1,
.accordion-title-line2 {
  font-size: 3.8rem;
  line-height: 1.8;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  color: #a68859;
  letter-spacing: 0.15rem;
}

/* 仕切り線 */
.accordion-divider {
  width: 90%;
  height: 1px;
  background-color: #888;
  border: none;
  margin: 3vw auto;
}
.accordion-image{
width:70vw;
margin: auto;
}

/* 画像 */
.accordion-image picture img {
  width: 100%;
  height: auto;
  display: block;
}
/** ==============================
 * 物件概要セクション
 * ============================== **/
.outline-section {
  padding:0 0 8vw 0;
  background-color: #fff;
    text-align: center;
}

/* 一覧全体 */
.outline-container {
  width: 70vw;
  margin: 0 auto;
  text-align: left;
  padding: 3vw 0 0 0;

}

/* タイトル */
.outline-header {
padding:8vw 0 0 0;
  margin-bottom: 1.8vw;
}
/* 見出し用DL構造 */
.outline-list {
  display: flex;
  flex-direction: column;

}

/* 各項目 */
.outline-item {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #aaa;
  padding: 1.5vw 0;
}

/* ラベル */
.outline-item dt {
  width: 30%;
  font-size: 2.4rem;
  font-weight: 400;
  padding-left: 5vw;
    line-height: 1.8;
  color: #514540;
}

/* 内容 */
.outline-item dd {
  width: 70%;
  font-size: 2.6rem;
  font-weight: 300;
  color: #514540;
  line-height: 1.8;
  margin: 0;
  letter-spacing: 0.2rem;
}

/** ==============================
 * フッター
 * ============================== **/
.footer {
  background-color: #4e423c;
  color: #fff;
  padding: 5vw 0 0 0 ;
  position: relative;
  text-align: center;
}

.footer-logo {
  margin-bottom: 5vw;
}
.footer-logo img {
  width: 25vw;
  height: auto;
}

/** ==============================
 * フッター用 3ボタンデザイン
 * ============================== **/
.footer-buttons {
  display: flex;
  justify-content: center;
  gap: 1px;
  margin-bottom: 4vw;
}

.footer-buttons .btn {
  display: inline-block;
  width: 15vw;
  height: 4vw;
  line-height: 4vw;
  padding: 0 0vw;
  font-size: 2.7rem;
  font-weight: 400;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  color: #ffffff;
  background-color: #BC9D5D;
  border: none;
  transition: 0.3s ease-in-out;
}
.footer-buttons .btn:hover {
  color: #ffffff;
  background-color: #F08F5E;
  opacity: 0.8;
}
.footer-buttons .btn.btn-primary {
  background-color: #d6b875;
}

/* フッター会社情報・電話 */
.footer-info {
  width: auto;

  margin: 0 auto 4vw auto;
  gap: 2vw;
  flex-wrap: wrap;
}
.footer-company,
.footer-phone {
  width: auto;
  height: 7vw;
  display: inline-block;
}
.footer-company{
	padding-right: 4vw;
	margin-right: 3vw;
	border-right: 1px solid rgba(255,255,255,1.00);
}
.footer-company img,
.footer-phone img {
	max-width: auto;
	height: 7vw;
}

/* コピーライト */
.footer-copyright {
  background-color: #9a8f81;
  color: #fff;
  font-size: 2rem;
  font-weight: 300;
  text-align: left;
  padding: 1vw 3vw;
  font-feature-settings: "palt" 1, "pkna" 1;
}
.footer-copyright a{
  color: #fff;
}
/* ページトップ */
.page-top {
  position: absolute;
  bottom: 2vw;
  right: 3vw;
  background-color: #a68859;
  width: 6vw;
  height: 6vw;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  color: #fff;
  text-align: center;
  line-height: 1.2;
  font-weight: bold;
  text-decoration: none;
}
.page-top:hover{
  color: #fff;
  opacity: 0.8;
}
    .PC {}
    .SP {
        display: none;
        max-width: 0%;
        max-height: 0%;
    }
}
