/*
 * JINZA: Lightning 15（G3）上で、旧デザイン（Lightning 6 + 200918.css）の見た目を再現する調整
 */

/*-------------------------------------------*/
/*  ヘッダー
/*-------------------------------------------*/
.site-header {
	box-shadow: 0 1px 3px rgba(0, 0, 0, .1);
	background-color: #fff;
}
.site-header-logo img {
	max-height: 66px;
}

/* 右上の問い合わせ欄（VK ExUnit のお問い合わせウィジェット） */
.headerright .veu_adminEdit {
	display: none;
}
.headerright .veu_contact.veu_contentAddSection {
	margin: 0;
}
.headerright .veu_contact .contact_frame {
	padding: 5px 0;
	background: none;
	border: none;
	display: flex;
	align-items: center;
	gap: 20px;
}
.headerright .veu_contact .contact_txt {
	margin: 0;
	text-align: left;
	line-height: 1.4;
}
.headerright .veu_contact .contact_txt_catch {
	display: block;
	font-size: 12px;
}
.headerright .veu_contact .contact_txt_tel {
	display: block;
	font-size: 18px;
	font-weight: bold;
}
.headerright .veu_contact .contact_txt_time:empty {
	display: none;
}
.headerright .veu_contact .contact_bt {
	margin: 0;
	padding: 7px 10px;
	font-size: 18px;
	line-height: 1.33;
}

/* グローバルナビ：キーカラーの帯に、等幅の項目を罫線で区切って並べる */
.global-nav-outer {
	background-color: #841313;
}
.global-nav-outer .global-nav {
	float: none;
	width: 100%;
	/* 左右の余白は .container と同じ */
}
.global-nav-outer .global-nav-list {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin: 0;
}
.global-nav-outer .global-nav-list > li {
	display: table-cell;
	float: none;
	vertical-align: middle;
	position: relative;
	text-align: center;
}
.global-nav-outer .global-nav-list > li > a {
	display: block;
	padding: 20px 0;
	color: #fff;
	border-right: 1px solid #ccc;
	font-size: 14px;
}
.global-nav-outer .global-nav-list > li:first-child > a {
	border-left: 1px solid #ccc;
}
.global-nav-outer .global-nav-list > li > a:hover {
	color: #e1e1e1;
}
.global-nav-outer .global-nav-name {
	color: inherit;
	font-weight: bold;
}
.global-nav-outer .global-nav-list > li > a::after {
	border-bottom: 3px solid #ffe9e9;
}
/* サブメニュー */
.global-nav-outer .global-nav-list .sub-menu {
	text-align: left;
}
.global-nav-outer .global-nav-list .sub-menu li a {
	background-color: #b54040;
	color: #fff;
	border-bottom: 1px solid #f0f0f0;
}
.global-nav-outer .global-nav-list .sub-menu li a:hover {
	background-color: #c45555;
}

/*-------------------------------------------*/
/*  スマホ：ヘッダーの問い合わせ欄とグローバルナビは隠し、MENU ボタン（スマホメニュー）を使う
/*-------------------------------------------*/
@media (max-width: 991.98px) {
	.headerright,
	.global-nav-outer {
		display: none;
	}
}
@media (min-width: 992px) {
	.site-header-container {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.headerright {
		margin-left: auto;
	}
}

/* 問い合わせ欄の文字は折り返さない・電話番号は旧テーマと同じ濃い赤茶 */
.headerright .veu_contact .contact_txt {
	flex-shrink: 0;
	white-space: nowrap;
}
.headerright .veu_contact .contact_txt_tel {
	color: #843f3f;
}
@media (min-width: 992px) {
	.site-header-container {
		padding-top: 20px;
		padding-bottom: 18px;
	}
	.site-header-logo {
		margin: 0;
		padding: 0;
	}
}

/*-------------------------------------------*/
/*  内容幅：旧テーマ（Bootstrap 3）と同じ 1170px（左右 15px の余白込み）
/*-------------------------------------------*/
@media (min-width: 1200px) {
	.container {
		max-width: 1170px;
		padding-left: 15px;
		padding-right: 15px;
	}
}
.headerright .veu_contact .contact_txt_tel {
	font-weight: bold !important;
}

/*-------------------------------------------*/
/*  トップのスライダー：文字の後ろに半透明の黒い帯（旧テーマと同じ）
/*-------------------------------------------*/
.ltg-slide .ltg-slide-text-set {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: none;
	background-color: rgba(0, 0, 0, .4);
	padding: 20px 10px;
	text-align: center;
}
.ltg-slide .ltg-slide-text-title {
	font-size: 2.5vw;
	font-weight: bold;
	line-height: 1.4;
	color: #fff !important;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 1) !important;
	margin: 0;
}
.ltg-slide .ltg-slide-text-caption {
	font-size: 1.3vw;
	line-height: 1.7;
	margin-top: 1.2em;
}

/*-------------------------------------------*/
/*  ページ見出し（背景画像の上に、左寄せ・影付きの白文字）
/*-------------------------------------------*/
.page-header {
	padding: 35px 0;
}
.page-header .page-header-inner {
	padding-top: 0;
	padding-bottom: 0;
}
/* 見出しが div のとき（投稿詳細など）は旧 origin スキン、h1 のときは 200918.css の余白 */
.page-header .page-header-title {
	margin: 15px 0 10px;
	font-size: 22px;
	font-weight: normal;
	line-height: 1.1;
	text-align: left;
	color: #fff;
	text-shadow: 2px 2px 1px rgba(0, 0, 0, .8);
}
.page-header h1.page-header-title {
	margin: 20px 0 15px;
}
@media (min-width: 992px) {
	.page-header .page-header-title {
		margin: 30px 0 25px;
		font-size: 32px;
	}
	.page-header h1.page-header-title {
		margin: 50px 0 45px;
	}
}

/*-------------------------------------------*/
/*  旧ひな形の本文（.siteContent）
/*-------------------------------------------*/
.siteContent {
	padding: 1.5em 0;
	min-height: 300px;
}
@media (min-width: 768px) {
	.siteContent { padding: 2.5em 0; }
}
@media (min-width: 992px) {
	.siteContent { padding: 3em 0; }
}
@media (min-width: 1200px) {
	.siteContent { padding: 3.5em 0; }
}
/* G3 の .row は flex だが、旧ひな形は Bootstrap 3 の float 前提で組まれている */
.siteContent .row {
	display: block;
}
.siteContent .row > * {
	width: auto;
	max-width: none;
}
.mainSection .postList::after {
	content: "";
	clear: both;
	display: block;
}

/*-------------------------------------------*/
/*  サイドバー：見出しはキーカラーの帯、日付の前にカレンダーアイコン
/*-------------------------------------------*/
.sub-section .widget .sub-section-title,
.sub-section .widget .subSection-title {
	position: relative;
	margin: 0 0 15px;
	padding: 12px 8px 8px 10px;
	border: none;
	box-shadow: none;
	background-color: #841313;
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.1;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
	.sub-section .widget .sub-section-title,
	.sub-section .widget .subSection-title {
		font-size: 15px;
	}
}
.sub-section .widget .sub-section-title::after,
.sub-section .widget .subSection-title::after,
.sub-section .widget .sub-section-title::before,
.sub-section .widget .subSection-title::before {
	display: none;
}
.sub-section .widget_link_list .subSection-title,
.sub-section .widget_nav_menu .sub-section-title {
	margin-bottom: 0;
}
.sub-section .veu_postList .postList_date::before {
	margin-right: 5px;
	font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", "Font Awesome 5 Free";
	content: "\f133";
	font-weight: 900;
}
.page-header {
	display: block;
	min-height: 0;
}
.page-header .page-header-inner {
	display: block;
}
/* スマホのページ見出しは画像なし・薄いグレー帯 */
@media (max-width: 767.98px) {
	.page-header {
		background: #f5f3f3;
		padding: 10px 0;
	}
	.page-header .page-header-title {
		color: #666;
		text-shadow: none;
	}
}

/*-------------------------------------------*/
/*  アーカイブの記事一覧（旧 module_loop_post.php の見た目）
/*-------------------------------------------*/
.post-list.vk_posts {
	display: block;
	margin: 0 0 25px;
}
.post-list .media {
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 2em 0;
	border: none;
}
.post-list .media .postList_thumbnail {
	width: 160px;
	margin-bottom: .5em;
	padding-right: 30px;
	display: block;
	overflow: hidden;
	float: left;
}
.post-list .media .postList_thumbnail a {
	display: block;
	overflow: hidden;
	border: 1px solid #e5e5e5;
}
.post-list .media .postList_thumbnail img {
	width: 100%;
	height: auto;
	border: 1px solid #fff;
}
.post-list .media .media-body {
	display: block;
	overflow: hidden;
}
.post-list .entry-meta {
	margin-bottom: .8em;
	padding-left: 3px;
}
.post-list .entry-meta_items {
	font-size: 12px;
}
.post-list .entry-meta_items.published::before {
	margin-right: 5px;
	font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", "Font Awesome 5 Free";
	content: "\f133";
	font-weight: 900;
}
.post-list .entry-meta_items_term {
	float: right;
}
.post-list .media .media-heading {
	font-size: 20px;
	line-height: 1.4em;
	margin: 0 0 .4em;
	font-weight: 400;
	background: none;
	box-shadow: none;
	border: none;
	padding: 0;
}
.post-list .media .media-heading::after {
	display: none;
}
.post-list .media .media-heading a,
.post-list .media a.media-body_excerpt {
	color: #464646;
}
.post-list .media .media-body p {
	margin-bottom: 0;
	font-size: 14px;
	line-height: 150%;
}
@media (min-width: 768px) {
	.post-list .entry-meta_items {
		font-size: 14px;
	}
}
@media (max-width: 767.98px) {
	.post-list .entry-meta .entry-meta_items_term {
		float: none;
		display: block;
		margin-top: .5em;
	}
	.post-list .media .postList_thumbnail {
		padding-right: 20px;
	}
	.post-list .media .media-heading {
		font-size: 1.2em;
		line-height: 1.3em;
		margin-bottom: .5em;
	}
}
@media (max-width: 500px) {
	.post-list .media .postList_thumbnail {
		width: 100px;
	}
}

/*-------------------------------------------*/
/*  2カラムの幅：旧テーマ（本文 col-md-8、1 列あけてサイドバー col-md-3）と同じ
/*-------------------------------------------*/
@media (min-width: 992px) {
	.site-body-container > .main-section--col--two {
		width: calc((100% + 30px) * 2 / 3 - 30px);
	}
	.site-body-container > .sub-section--col--two {
		width: calc((100% + 30px) / 4 - 30px);
	}
}
.post-list .media .media-body {
	width: auto;
}

/*-------------------------------------------*/
/*  フォームの送信結果（CF7 5.2 以降でクラス名が変わったため、200918.css の旧指定と同じ見た目を新しいクラスに当てる）
/*-------------------------------------------*/
.wpcf7 form.sent .wpcf7-response-output {
	border: none;
	background-color: #008430;
	font-size: 24px;
	color: #fff;
	border-radius: 5px;
	padding: 20px 30px;
	text-align: center;
}
.wpcf7 form:is(.invalid, .unaccepted, .payment-required, .failed, .aborted, .spam) .wpcf7-response-output {
	border: none;
	background-color: #f00;
	padding: 20px 30px;
	color: #fff;
	font-size: 24px;
	border-radius: 5px;
}
