@charset "UTF-8";
/*
 * 雷門三定 article配下 — 本体サイト（https://tempura-sansada.co.jp/）との
 * ヘッダー・フッター統一用スタイル
 * 作成: 2026-08-25 / oobe
 *
 * ⚠️ すべてのルールを #us-header-wrap / #us-footer の内側にスコープ限定すること。
 *    body / #body_wrap / #content / 裸のタグセレクタは使わない（SWELL本体に波及するため）。
 */

/* ===== SWELL標準のヘッダー・フッターを隠す（直接のクラスのみ・子孫セレクタ禁止） ===== */
.l-header,
.l-fixHeader,
.l-footer,
.p-fixBtnWrap,
.c-fixBtn,
.p-spMenu,
.p-spMenuBtn,
#pagetop {
	display: none !important;
}

/* ===== 共通トークン ===== */
#us-header-wrap,
#us-footer {
	--us-max: 950px;
	--us-green: #336801;
	--us-text: #555;
	--us-nav-bg: #dcdcdc;
	--us-nav-color: #333;
	--us-nav-current-bg: #fff;
	--us-nav-current-color: #000;
	--us-mincho: YuMincho, "Yu Mincho", 游明朝, "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "MS PMincho", serif;
	--us-gothic: "Helvetica Neue", Helvetica, YuGothic, "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
	font-family: var(--us-gothic);
	font-size: 14px;
	color: var(--us-text);
	line-height: 1.6;
}
#us-header-wrap,
#us-header-wrap *,
#us-header-wrap *::before,
#us-header-wrap *::after,
#us-footer,
#us-footer *,
#us-footer *::before,
#us-footer *::after {
	box-sizing: border-box;
}
#us-header-wrap a,
#us-footer a {
	text-decoration: none;
}
#us-header-wrap .us-container,
#us-footer .us-container {
	max-width: var(--us-max);
	margin: 0 auto;
	padding: 0;
}
#us-header-wrap .us-img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
#us-footer .us-img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

/* ===== ヘッダー ===== */
#us-header-wrap {
	width: 100%;
}
#us-header-wrap .us-head {
	background-image: url("oobe-assets/washi-header.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#us-header-wrap .us-head-inner {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 15px;
}
#us-header-wrap .us-head-main {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	flex: 1 1 auto;
	min-width: 0;
}
#us-header-wrap .us-logo {
	flex: 0 0 auto;
	display: block;
}
#us-header-wrap .us-lead {
	font-family: var(--us-mincho);
	color: var(--us-green);
	font-size: 18.2px;
	font-weight: 700;
	margin: 0;
	padding-top: 4px;
}
#us-header-wrap .us-head-sub {
	flex: 0 0 180px;
	width: 180px;
	text-align: right;
}
#us-header-wrap .us-head-sub .us-ebi {
	display: block;
	margin-left: auto;
}
#us-header-wrap .us-en {
	display: block;
	margin-top: 6px;
}
#us-header-wrap .us-en .us-img-hover {
	display: none;
}
#us-header-wrap .us-en:hover .us-img-base {
	display: none;
}
#us-header-wrap .us-en:hover .us-img-hover {
	display: inline-block;
}

/* ===== グローバルナビ ===== */
#us-header-wrap .us-gnav {
	background: transparent;
}
#us-header-wrap .us-gnav-list {
	display: block;
	margin: 0 0 10px;
	padding: 0;
	font-size: 0; /* inline-block の隙間潰し */
}
#us-header-wrap .us-gnav-list li {
	display: inline-block;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
}
#us-header-wrap .us-gnav-list a {
	display: block;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: 700;
	background: var(--us-nav-bg);
	color: var(--us-nav-color);
	white-space: nowrap;
}
#us-header-wrap .us-gnav-list a:hover {
	background: var(--us-nav-current-bg);
	color: var(--us-nav-current-color);
}
#us-header-wrap .us-gnav-list .us-current a {
	background: var(--us-nav-current-bg);
	color: var(--us-nav-current-color);
}

/* ハンバーガー（SPのみ表示） */
#us-header-wrap .us-navtoggle {
	display: none;
}
#us-header-wrap .us-navbtn {
	display: none;
}

/* ===== フッター ===== */
#us-footer {
	margin-top: 2em;
	padding-bottom: 1em;
}
#us-footer .us-hr {
	border: 0;
	border-top: 1px solid #ccc;
	margin: 0 0 1em;
}
#us-footer .us-foot-inner {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 0 15px;
}
#us-footer .us-foot-main {
	flex: 1 1 auto;
	min-width: 0;
}
#us-footer .us-foot-note,
#us-footer .us-foot-copy {
	font-size: 16.8px; /* 本体の font-size:120% 相当 */
	margin: 0;
}
#us-footer .us-foot-note {
	margin-top: .4em;
}
#us-footer .us-foot-copy {
	margin-top: .8em;
}
#us-footer .us-foot-sub {
	flex: 0 0 auto;
	text-align: right;
}
#us-footer .us-foot-sub a {
	display: block;
	margin-bottom: 6px;
	white-space: nowrap;
	color: var(--us-text);
}
#us-footer .us-foot-sub a:hover .us-foot-label {
	text-decoration: underline;
}
#us-footer .us-foot-label {
	margin-left: .4em;
	font-size: 14px;
}

/* ===== スマートフォン ===== */
@media screen and (max-width: 767px) {
	#us-header-wrap .us-head-inner {
		display: block;
		padding: 12px;
		text-align: center;
	}
	#us-header-wrap .us-head-main {
		display: block;
	}
	#us-header-wrap .us-logo {
		display: inline-block;
	}
	#us-header-wrap .us-logo .us-img {
		width: 110px;
	}
	#us-header-wrap .us-lead {
		font-size: 15px;
		margin-top: 8px;
		text-align: left;
	}
	#us-header-wrap .us-head-sub {
		flex: none;
		width: auto;
		text-align: center;
		margin-top: 8px;
	}
	#us-header-wrap .us-head-sub .us-ebi {
		width: 140px;
		margin-left: auto;
		margin-right: auto;
	}
	#us-header-wrap .us-en {
		margin-left: auto;
		margin-right: auto;
		width: 180px;
	}

	/* ナビをハンバーガー化 */
	#us-header-wrap .us-navbtn {
		display: block;
		padding: 10px 14px;
		background: var(--us-nav-bg);
		color: var(--us-nav-color);
		font-weight: 700;
		font-size: 14px;
		cursor: pointer;
		user-select: none;
	}
	#us-header-wrap .us-navbtn::before {
		content: "≡　メニュー";
	}
	#us-header-wrap .us-navtoggle:checked ~ .us-navbtn::before {
		content: "×　閉じる";
	}
	#us-header-wrap .us-gnav-list {
		display: none;
		margin-bottom: 0;
	}
	#us-header-wrap .us-navtoggle:checked ~ .us-gnav-list {
		display: block;
	}
	#us-header-wrap .us-gnav-list li {
		display: block;
	}
	#us-header-wrap .us-gnav-list a {
		border-top: 1px solid #fff;
		white-space: normal;
	}

	#us-footer .us-foot-inner {
		display: block;
		padding: 0 12px;
	}
	#us-footer .us-foot-sub {
		text-align: left;
		margin-top: 1em;
	}
	#us-footer .us-foot-note,
	#us-footer .us-foot-copy {
		font-size: 14px;
	}
}
