@charset "utf-8";
/* ==========================================
   新着情報エリア全体（スクロール枠）
   ========================================== */
.news-dl {
  max-height: 250px;
  overflow-y: auto;
  padding: 8px 16px 8px 16px;
  font-family: "Zen Old Mincho", serif;
}

/* --- スクロールバーのデザイン --- */
.news-dl::-webkit-scrollbar {
  width: 4px;
}
.news-dl::-webkit-scrollbar-track {
  background: transparent;
}
.news-dl::-webkit-scrollbar-thumb {
  background-color: #6b4a30;
  border-radius: 10px;
}

/* スマホ・タブレット時のスクロールバー幅 */
@media (max-width: 1024px) {
  .news-dl::-webkit-scrollbar {
    width: 6px;
  }
}
@media (max-width: 835px) {
  .news-dl::-webkit-scrollbar {
    width: 4px;
  }
}

/* ==========================================
   1記事ごとの枠 (<dl>)
   ========================================== */
.news-dl dl {
  display: flex;
  align-items: baseline;
  gap: 20px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin: 0;
}

.news-dl dl:not(:first-child) {
  padding-top: 24px;
}

/* --- 日付・タグ (dt) --- */
.news-dl dl dt {
  background-color: unset !important;
  border: unset !important;
  padding: 0 !important;
  margin: 0 !important;
  width: auto !important;
  flex-shrink: 0;          /* 日付の幅がつぶれるのを防止 */
  font-size: 0.875rem;
}

/* --- ニュース本文 (dd) --- */
.news-dl dl dd {
  background-color: unset !important;
  border: unset !important;
  padding: 0 !important;
  margin: 0 !important;
  width: auto !important;
  flex: 1;                 /* 横幅を自動で伸ばす */
  font-size: 1rem;
  line-height: 1.6;
}

/* --- ニュースリンク (a) --- */
.news-dl dl dd a {
  color: #3d362d;
  text-decoration: none;
  transition: color 0.25s ease; /* ふわっと色を変化させる */
}

/* ホバー時：下線なし・ブランドカラーへスムーズ変化 */
.news-dl dl dd a:hover {
  color: #6b4a30;
  text-decoration: none;
}

/* ==========================================
   スマホ表示 (835px以下) 
   ========================================== */
@media (max-width: 835px) {
  /* 縦並びへの切り替え */
  .news-dl dl {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;    /* 日付と本文の間隔 */
    padding-bottom: 18px;
  }

  .news-dl dl:not(:first-child) {
    padding-top: 18px;
  }

  .news-dl dl dt {
    text-indent: 0 !important;
  }

  .news-dl dl dd {
    padding-left: 0 !important; /* 被りをリセット */
    width: 100% !important;
  }
}

/* 小さめスマホ (640px以下) */
@media (max-width: 640px) {
  .news-dl dl dt {
    font-size: 0.75rem;
  }
  .news-dl dl dd {
    font-size: 0.875rem;
  }
}
#c2 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c6 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c6 h3,
#c6 div {
	text-align: left;
}
#c7 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c7 a.itext, #c7 img, #c7 video {
}
#c3 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c5 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c5 h1,
#c5 div {
	text-align: left;
}
#c4 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c8 {
	clear: both;
	margin:    ;
	padding: 180px 0 180px 0;
}
#c10 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c10 a.itext, #c10 img, #c10 video {
}
#c9 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c12 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c12 h2,
#c12 div {
	text-align: left;
}
#c13 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c13 h3,
#c13 div {
	text-align: left;
}
#c14 {
	clear: both;
	display: none;
	margin:    ;
	padding:    ;
}
#c14 h3,
#c14 div {
	text-align: left;
}
#c15 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c16 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c16 a.itext, #c16 img, #c16 video {
}
#c17 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c17 a.itext, #c17 img, #c17 video {
}
#c11 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c18 {
	clear: both;
	margin:    ;
	padding: 120px 0 120px 0;
}
#c20 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c20 h2,
#c20 div {
	text-align: left;
}
#c21 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c21 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
#c21 > div.box {
	box-sizing: border-box;
	overflow: hidden;
}
#c19 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c22 {
	clear: both;
	margin:    ;
	padding: 120px 0 0 0;
}
#c24 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c24 h2,
#c24 div {
	text-align: left;
}
#c26 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c26 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
#c26 > div.box {
	box-sizing: border-box;
	overflow: hidden;
}
#c25 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c27 {
	clear: both;
	margin:    ;
	padding: 120px 0 160px 0;
}
#c29 {
	clear: both;
	margin: 0 0 40px 0;
	padding:    ;
}
#c29 h2,
#c29 div {
	text-align: left;
}
#c30 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c30 h3,
#c30 div {
	text-align: center;
}
#c28 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c44 {
	clear: both;
	background-color: #ffffff;
	margin:    ;
	padding: 120px 0 120px 0;
}
#c45 {
	clear: both;
	display: none;
	margin: 0 0 60px 0;
	padding:    ;
}
#c45 h2,
#c45 div {
	text-align: left;
}
#c47 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c47 h2,
#c47 div {
	text-align: left;
}
#c43 {
	clear: both;
	background-color: #ffffff;
	margin:    ;
	padding: 0 100px 0 100px;
}
#c43 dl dt {
	border-color: transparent;
	background-color: transparent;
	color: #6b4a30;
	width: 20%;
}
#c43 dl dd {
	border-color: transparent;
	background-color: transparent;
	width: 80%;
}
#c46 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c31 {
	clear: both;
	background-color: #fff;
	margin:    ;
	padding: 100px 0 120px 0;
}
#c38 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c38 h2,
#c38 div {
	text-align: left;
}
#c39 {
	clear: both;
	margin: 0 0 65px 0;
	padding:    ;
}
#c40 {
	clear: both;
	display: none;
	margin:    ;
	padding:    ;
}
#c40 h3,
#c40 div {
	text-align: left;
}
#c41 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c37 {
	clear: both;
	background-image: url(/images/top/pattern-bg-brown.jpeg);
	margin:    ;
	padding: 100px 0 100px 0;
}
#c32 {
	clear: both;
	margin: 0 0 60px 0;
	padding:    ;
}
#c32 h2,
#c32 div {
	text-align: left;
}
#c42 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c42 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
#c42 > div.box {
	box-sizing: border-box;
	overflow: hidden;
}
#c34 {
	clear: both;
	margin:    ;
	padding:    ;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
#c2 {
}
#c6 {
}
#c7 {
}
#c3 {
}
#c5 {
}
#c4 {
}
#c8 {
	padding: 100px 0 100px 0;
}
#c10 {
}
#c9 {
}
#c12 {
	margin: 0 0 50px 0;
}
#c13 {
	margin: 0 0 50px 0;
}
#c14 {
	display: none;
}
#c15 {
}
#c16 {
}
#c17 {
}
#c11 {
}
#c18 {
	padding: 80px 0 80px 0;
}
#c20 {
	margin: 0 0 50px 0;
}
#c21 {
}
#c21 {
}
#c19 {
}
#c22 {
	padding: 80px 0 0 0;
}
#c24 {
	margin: 0 0 50px 0;
}
#c26 {
}
#c26 {
}
#c25 {
}
#c27 {
	padding: 80px 0 100px 0;
}
#c29 {
	margin: 0 0 30px 0;
}
#c30 {
}
#c28 {
}
#c44 {
	padding: 80px 0 80px 0;
}
#c45 {
	display: none;
	margin: 0 0 50px 0;
}
#c47 {
	margin: 0 0 30px 0;
}
#c43 {
}
#c46 {
}
#c31 {
	padding: 80px 0 100px 0;
}
#c38 {
	margin: 0 0 30px 0;
}
#c39 {
	margin: 0 0 50px 0;
}
#c40 {
	display: none;
}
#c41 {
}
#c37 {
	padding: 80px 0 80px 0;
}
#c32 {
	margin: 0 0 30px 0;
}
#c42 {
}
#c42 {
}
#c34 {
}
}
@media screen and (max-width: 640px) {
#c2 {
}
#c6 {
}
#c7 {
}
#c3 {
}
#c5 {
}
#c4 {
}
#c8 {
	padding: 60px 0 60px 0;
}
#c10 {
}
#c9 {
}
#c12 {
	margin: 0 0 40px 0;
}
#c13 {
	margin: 0 0 40px 0;
}
#c14 {
	display: none;
}
#c15 {
}
#c16 {
}
#c17 {
}
#c11 {
}
#c18 {
	padding: 60px 0 60px 0;
}
#c20 {
	margin: 0 0 40px 0;
}
#c21 {
}
#c21 {
}
#c19 {
}
#c22 {
	padding: 60px 0 0 0;
}
#c24 {
	margin: 0 0 40px 0;
}
#c26 {
}
#c26 {
}
#c25 {
}
#c27 {
	padding: 60px 0 80px 0;
}
#c29 {
	margin: 0 0 20px 0;
}
#c30 {
}
#c28 {
}
#c44 {
	padding: 60px 0 60px 0;
}
#c45 {
	display: none;
	margin: 0 0 40px 0;
}
#c47 {
	margin: 0 0 20px 0;
}
#c43 {
}
#c46 {
}
#c31 {
	padding: 60px 0 80px 0;
}
#c38 {
	margin: 0 0 20px 0;
}
#c39 {
	margin: 0 0 40px 0;
}
#c40 {
	display: none;
}
#c41 {
}
#c37 {
	padding: 60px 0 60px 0;
}
#c32 {
	margin: 0 0 20px 0;
}
#c42 {
}
#c42 {
}
#c34 {
}
}
