@charset "UTF-8";
/* CSS Document */


/******************************************************

PC設定 1200px以上の場合に適用

*******************************************************/

/* mvLower (お知らせ一覧と共通の画像を使用) */
.mvLower__img {
	background-image: url("/img/news/mv.jpg");
}


/* news_single — 記事詳細 */
.news_single {
	background-color: #FFFFFF;
}

/* 1カラム・狭め幅のコンテナ */
.news_single__wrapper {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	padding: 0 40px;
}


/* 記事ヘッダー (Title → カテゴリ → 日付 の縦並び) */
.news_single__header {
	padding-bottom: 24px;
	margin-bottom: 32px;
	border-bottom: 1px solid #DDDDDD;
}

.news_single__title {
	font-size: 28px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--color-text);
	letter-spacing: 0.02em;
	margin-bottom: 16px;
}

.news_single__cats {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 12px;
}

.news_single__date {
	display: block;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	color: var(--color-text-sub);
}


/* アイキャッチ画像 */
.news_single__thumb {
	width: 100%;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	border-radius: 8px;
	margin-bottom: 40px;
	background-color: #EEEEEE;
}

.news_single__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}


/* 記事本文 (WPコンテンツ) */
.news_single__body {
	line-height: 2;
}

.news_single__body > * {
	margin-bottom: 1.5em;
}

.news_single__body > *:last-child {
	margin-bottom: 0;
}

.news_single__body p {
	line-height: 2;
}

.news_single__body h2 {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--color-primary);
	padding: 12px 0 12px 16px;
	margin: 48px 0 24px;
	border-left: 4px solid var(--color-primary);
	background-color: #F5F5F5;
}

.news_single__body h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--color-text);
	padding-bottom: 8px;
	margin: 32px 0 16px;
	border-bottom: 1px solid #DDDDDD;
}

.news_single__body h4 {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--color-text);
	margin: 24px 0 12px;
}

.news_single__body a {
	color: var(--color-primary);
	text-decoration: underline;
}

.news_single__body a:hover {
	opacity: 0.7;
}

.news_single__body ul,
.news_single__body ol {
	padding-left: 1.8em;
}

.news_single__body ul li {
	list-style: disc;
	line-height: 2;
}

.news_single__body ol li {
	list-style: decimal;
	line-height: 2;
}

.news_single__body img {
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 4px;
	display: block;
	margin: 32px auto;
}

.news_single__body figure {
	width: 100%;
	max-width: 100%;
	margin: 32px auto;
}

.news_single__body figure img {
	width: 100%;
	margin: 0;
}

/* Gutenberg画像ブロックの配置クラス(alignwide / alignfull / aligncenter等)を強制的に幅100%に */
.news_single__body .wp-block-image,
.news_single__body .aligncenter,
.news_single__body .alignleft,
.news_single__body .alignright,
.news_single__body .alignnone,
.news_single__body .alignwide,
.news_single__body .alignfull {
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	float: none;
}

.news_single__body figcaption {
	font-size: 13px;
	color: var(--color-text-sub);
	text-align: center;
	margin-top: 8px;
}

.news_single__body blockquote {
	background-color: #F5F5F5;
	border-left: 4px solid var(--color-primary);
	padding: 20px 24px;
	margin: 24px 0;
	color: var(--color-text);
	line-height: 1.9;
}

.news_single__body blockquote p:last-child {
	margin-bottom: 0;
}

.news_single__body strong {
	font-weight: 700;
}

.news_single__body em {
	font-style: italic;
}


/* prev / list / next ナビ */
.news_single__nav {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 24px;
	margin-top: 80px;
	padding-top: 40px;
	border-top: 1px solid #DDDDDD;
}

.news_single__nav-prev,
.news_single__nav-next {
	min-width: 0;
}

.news_single__nav-prev {
	text-align: left;
}

.news_single__nav-next {
	text-align: right;
}

.news_single__nav a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--color-primary);
	font-weight: 700;
	transition: opacity 0.2s ease;
}

.news_single__nav a:hover {
	opacity: 0.7;
}

.news_single__nav-arrow {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 18px;
}

.news_single__nav-label {
	font-size: 14px;
}

.news_single__nav-list .btn {
	display: inline-flex;
	width: 200px;
	height: 48px;
	font-size: 14px;
}




/******************************************************

タブレットの設定 960px〜1199pxの場合に適用

*******************************************************/

@media screen and (max-width: 1199px){




}



/******************************************************

タブレットの設定 768px〜959pxの場合に適用

*******************************************************/

@media screen and (max-width: 959px){




}



/******************************************************

SPの設定 767px以下の場合に適用

*******************************************************/

@media screen and (max-width: 767px){

.news_single__wrapper {
	padding: 0 20px;
}


/* ヘッダー */
.news_single__title {
	font-size: 20px;
}


/* アイキャッチ */
.news_single__thumb {
	margin-bottom: 24px;
}


/* 本文 */
.news_single__body h2 {
	font-size: 18px;
	padding: 8px 0 8px 12px;
	margin: 32px 0 16px;
}

.news_single__body h3 {
	font-size: 16px;
	margin: 24px 0 12px;
}

.news_single__body h4 {
	font-size: 15px;
}


/* ナビ */
.news_single__nav {
	grid-template-columns: 1fr;
	gap: 16px;
	margin-top: 48px;
	padding-top: 24px;
}

.news_single__nav-prev,
.news_single__nav-next,
.news_single__nav-list {
	text-align: center;
}

.news_single__nav-list .btn {
	width: 100%;
}


}
