@charset "UTF-8";

/* ====================================
   page-container 系テンプレ共通スタイル
   basic-page / free-page / other-products で共有
   （以前は .basic-page クラス限定だったが、free-page / other-products でも
    同じ整形を効かせるため .page-container 全体に汎用化。
    404 ページは .page-container.error-404 で別途オーバーライド）
   ==================================== */

/* ---- 汎用コンテンツページ ---- */
.page-container .page-header {
	margin-bottom: 1.5em;
	padding-bottom: 0.75em;
	border-bottom: 2px solid #e0e0e0;
}

.page-container .page-header h1 {
	font-size: 1.5em;
	font-weight: bold;
}

.page-container .page-body {
	line-height: 1.9;
	color: var(--color-text, #333);
}

/* TinyMCEで入力した本文の基本要素 */
.page-container .page-body p {
	margin-bottom: 1em;
}

.page-container .page-body h2 {
	font-size: 1.2em;
	font-weight: bold;
	margin: 1.6em 0 0.6em;
	padding-left: 0.6em;
	border-left: 3px solid #888;
}

.page-container .page-body h3 {
	font-size: 1.05em;
	font-weight: bold;
	margin: 1.2em 0 0.4em;
}

.page-container .page-body ul,
.page-container .page-body ol {
	margin: 0.5em 0 1em 1.5em;
}

.page-container .page-body li {
	margin-bottom: 0.3em;
}

.page-container .page-body a {
	color: var(--color-link, #2a7a6e);
	text-decoration: underline;
}

.page-container .page-body img {
	max-width: 100%;
	height: auto;
	border-radius: 4px;
}

/* ---- 404エラーページ ---- */
.page-container.error-404 {
	text-align: center;
	padding: 3em 1em;
}

/* 共通の page-header 区切り線・余白を 404 では打ち消す（中央寄せの簡素なデザインに合わない） */
.page-container.error-404 .page-header {
	margin-bottom: 0.5em;
	padding-bottom: 0;
	border-bottom: none;
}

.page-container.error-404 .page-header h1 {
	font-size: 1.6em;
	margin-bottom: 0.5em;
	color: #555;
}

.page-container.error-404 .error-message {
	margin-bottom: 2em;
	color: #777;
	line-height: 1.8;
}

.page-container.error-404 .btn-home {
	display: inline-block;
	padding: 0.7em 1.8em;
	background-color: #555;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	transition: opacity 0.15s;
}

.page-container.error-404 .btn-home:hover {
	opacity: 0.8;
}
