/* ==========================================================================
   Base Styles (Resetは別ファイル)
   ========================================================================== */

/* Body */
body {
  font-family: "Noto Sans JP", "Noto Serif JP", "メイリオ", "Meiryo", sans-serif, serif;
  line-height: 1.8;
  color: var(--color-text);
  background-color: #fff;
}

/* Paragraph spacing */
p {
  margin-bottom: var(--space-text);
}

/* Links */
a {
  color: #444;
  text-decoration: none;
  outline: none;
}

/* Inline span (余白調整用) */
span {
  display: inline-block;
}

/* Bold */
b,
strong {
  font-weight: bold;
}

/* Container */
.container {
  width: min(var(--container-width), 90%);
  margin: 0 auto;
}

/* Inner padding */
.inner {
  margin: 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}

/* Display control */
.sp {
  display: block;
}
.pc {
  display: block;
}

@media (min-width: 769px) {
  .sp {
    display: none;
  }
}

@media (max-width: 768px) {
  .pc {
    display: none;
  }
}

/* Clearfix (modern minimal) */
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

/* Content & Sidebar layout (あなたのテーマ構造に合わせて残す) */
#container {
  display: flex;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 10px;
}

@media (max-width: 960px) {
  #container {
    flex-direction: column;
  }
}

@media (min-width: 961px) {
  #content {
    width: 70%;
    padding-right: 30px;
  }
  #side {
    width: 30%;
  }
}

@media (min-width: 1200px) {
  .inner {
    width: 1200px;
    margin: 0 auto;
  }
}

/* Content & Sidebar layout (あなたのテーマ構造に合わせて残す) */
.content {
  padding-bottom: var(--space-block);
}

#content {
  padding-bottom: var(--space-block);
}

/* -----------トップページと一覧ページに表示する過去記事-------------- */
/*記事の概要*/
.gaiyou a {
	display: block;
	padding: 20px 0;
	border-bottom: dotted 2px #ddd;
	color: #222;
	text-decoration: none;
}

.gaiyou a:hover {
	background-color: #ddd;
}

.gaiyou a img {
	transition: opacity 0.5s ease-out;
}

.gaiyou a:hover img {
	opacity: 0.5;
}

.gaiyou h2 {
	font-size: 1.2em;
	margin-top: 0;
	margin-bottom: 10px;
	color: #222;
}

.gaiyou p {
	font-size: 1em;
	margin: 0;
}

.gaiyou img {
	float: left;
	width: 200px;
}

.gaiyou .text {
	float: none;
	width: auto;
	margin-left: 230px;
}

@media (max-width: 599px) {
	.gaiyou img {
		width: 100px;
	}

	.gaiyou .text {
		margin-left: 110px;
	}

	.gaiyou h2 {
		font-size: 1em;
	}

	.gaiyou p {
		visibility: hidden;
		height: 0;
	}
}
