.home-news-openhouse{
  /* セクション全体 */
  padding: 95px 0 110px;
  background: #fff;
}

.home-news-openhouse__inner{
  /* 中身の横幅 */
  width: 94%;
  margin: 0 auto;
	max-width: 1280px;
}

.home-news-openhouse__head{
  /* 見出し部分 */
  display: flex;
  align-items: baseline;
  gap: 26px;
  margin-bottom: 48px;
}

.home-news-openhouse__title{
  /* NEWS & OPENHOUSE 大見出し */
  margin: 0;
  font-size: 32px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.15;
  color: #1c2230;
}

.home-news-openhouse__sub{
  /* 小見出し */
  margin: 0;
  color: #c9beb0;
  font-size: 16px;
  line-height: 1;
  font-weight: 400;
}

.home-news-openhouse__grid{
  /* 3カラムグリッド */
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
  align-items: stretch;
}

.news-card{
  /* 1件ごとのカード */
  background: #fff;
  font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  height: 100%;
}

.news-card__link{
  /* カード全体リンク */
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
  background: #fff;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.news-card__link:hover{
  /* カードホバー時の浮き上がり */
  transform: translateY(-8px);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.10);
}

.news-card__thumb{
  /* 画像エリア */
  overflow: hidden;
  background: #f5f5f5;
  aspect-ratio: 330 / 185;
  flex-shrink: 0;
}

.news-card__thumb img{
  /* カード画像 */
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.news-card__link:hover .news-card__thumb img{
  /* ホバー時に画像を少し拡大 */
  transform: scale(1.06);
}

.news-card__body{
  /* 画像下の本文エリア */
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 24px 26px 26px;
  border: 1px solid #efebe6;
  border-top: none;
  background: #fff;
}

.news-card__date{
  /* 投稿日 */
  margin: 0 0 14px;
  color: #AAA;
  font-size: 13px;
  letter-spacing: 0.08em;
  line-height: 1;
  flex-shrink: 0;
}

.news-card__heading{
  /* タイトル */
  margin: 0 0 14px;
  font-size: 18px;
  line-height: 1.7;
  font-weight: 700;
  color: #151515;
  flex-shrink: 0;

  /* 2行制限 */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;

  height: calc(1.7em * 2);
  min-height: calc(1.7em * 2);
  max-height: calc(1.7em * 2);
}

.news-card__excerpt{
  /* 抜粋文 */
  color: #7a6f65;
  font-size: 14px;
  line-height: 1.9;
  flex: 1;

  /* 3行制限 */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-height: calc(1.9em * 3);
}

.news-card__excerpt p{
  margin: 0;
}

.news-card__more{
  /* READ MORE */
  margin: 20px 0 0;
  color: #c7a33c;
  font-size: 12px;
  letter-spacing: 0.12em;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  margin-top: auto;
  padding-top: 18px;
  flex-shrink: 0;
}

.news-card__more-arrow,
.home-news-openhouse__button-arrow{
  /* 矢印ラッパー */
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.news-card__arrow-icon,
.home-news-openhouse__button-icon{
  /* 矢印SVG */
  width: 18px;
  height: 18px;
  display: block;
}

.news-card__arrow-icon path,
.home-news-openhouse__button-icon path{
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.news-card__link:hover .news-card__more-arrow{
  /* READ MORE ホバー時の矢印移動 */
  transform: translateX(6px);
}

.home-news-openhouse__button:hover .home-news-openhouse__button-arrow{
  /* 一覧を見るボタンの矢印移動 */
  transform: translateX(6px);
}

.news-card__link,
.news-card__link:visited,
.news-card__link:hover,
.news-card__link:active{
  /* ホバーしてもリンク色を変えない */
  color: inherit;
  text-decoration: none;
}

.news-card__link:hover .news-card__date{
  color: #AAA;
}

.news-card__link:hover .news-card__heading{
  color: #151515;
}

.news-card__link:hover .news-card__excerpt{
  color: #7a6f65;
}

.news-card__more,
.news-card__link:hover .news-card__more{
  color: #c7a33c;
}

@media screen and (max-width: 1200px){
  .home-news-openhouse__grid{
    /* 中サイズは2カラム */
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }
}

@media screen and (max-width: 767px){
  .home-news-openhouse{
    /* SP時の上下余白 */
    padding: 56px 0 64px;
  }

  .home-news-openhouse__inner{
    /* SP時の横幅 */
    width: calc(100% - 40px);
    margin: 0 auto;
  }

  .home-news-openhouse__head{
    /* SP時は縦並び */
    display: block;
    margin-bottom: 28px;
  }

  .home-news-openhouse__title{
    font-size: 30px;
  }

  .home-news-openhouse__sub{
    margin-top: 10px;
    font-size: 18px;
  }

  .home-news-openhouse__grid{
    /* SPは1カラム */
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .news-card__body{
    padding: 22px 20px 24px;
  }

  .news-card__date{
    font-size: 14px;
  }

  .news-card__heading{
    font-size: 20px;
    line-height: 1.7;

    display: -webkit-box;
    display: box;
    -webkit-box-orient: vertical;
    box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;

    max-height: calc(1.7em * 2);
  }

  .news-card__excerpt{
    font-size: 15px;
    line-height: 1.9;
    min-height: calc(1.9em * 3);
  }
}

.home-news-openhouse__footer{
  /* 下部ボタン全体 */
  margin-top: 64px;
  text-align: center;
  font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}

.home-news-openhouse__button,
.home-news-openhouse__button:visited,
.home-news-openhouse__button:active{
  /* 一覧を見るボタン */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 200px;
  height: 54px;
  padding: 0 34px;
  background: #ffffff;
  border: 1px solid #efebe6;
  color: #17120f;
  text-decoration: none;
  font-size: 15px;
  font-weight: 900;
  transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.home-news-openhouse__button:hover{
  background: #17120f;
  border-color: #17120f;
  color: #ffffff;
  text-decoration: none;
}

/* 画像左上ラベル */
.news-card__thumb{
  position: relative;
}

.news-card__label{
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 68px;
  height: 24px;
  padding: 0 10px;
  background: rgba(43, 35, 29, 0.88);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  line-height: 1;
  box-sizing: border-box;
  font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  pointer-events: none;
}

@media screen and (max-width: 767px){
  .news-card__label{
    top: 10px;
    left: 10px;
    min-width: 60px;
    height: 22px;
    padding: 0 8px;
    font-size: 9px;
  }
}



/* =========================================
   NEWS & OPENHOUSE
   画像＋MEDIA/EVENT/NEWSラベルが下からスライドして入る
========================================= */

/* 画像エリアをマスクする */
.home-news-openhouse .news-card__thumb{
  overflow: hidden;
}

/* 最初は画像とラベルを下に隠す */
.home-news-openhouse .js-scroll-flow-item .news-card__thumb img,
.home-news-openhouse .js-scroll-flow-item .news-card__label{
  transform: translateY(115%);
  transition:
    transform 1.05s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

/* 表示タイミングで画像とラベルが一緒に上がってくる */
.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item .news-card__thumb img,
.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item .news-card__label{
  transform: translateY(0);
}

/* 左から順に、すぐ続けて上がる */
.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item:nth-child(1) .news-card__thumb img,
.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item:nth-child(1) .news-card__label{
  transition-delay: 0s;
}

.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item:nth-child(2) .news-card__thumb img,
.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item:nth-child(2) .news-card__label{
  transition-delay: 0.08s;
}

.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item:nth-child(3) .news-card__thumb img,
.home-news-openhouse .js-scroll-flow-group.is-flow-show .js-scroll-flow-item:nth-child(3) .news-card__label{
  transition-delay: 0.16s;
}

/* 動きを減らす設定の端末ではアニメーションしない */
@media (prefers-reduced-motion: reduce){
  .home-news-openhouse .js-scroll-flow-item .news-card__thumb img,
  .home-news-openhouse .js-scroll-flow-item .news-card__label{
    transform: none !important;
    transition: none !important;
  }
}