/*##########header.php背景画像のiframe*/
.embed-container {
  bottom: 0;
  left: 0;
  overflow: hidden;
  position: fixed; /* fixed の場合。absolute でも同じ */
  right: 0;
  top: 0;
	z-index: -1;
}
.embed-container iframe {
  box-sizing: border-box;
  height: 56.25vw; /* 16:9 の高さなので 56.25% (= 9 ÷ 16) */
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 177.77777778vh; /* 16:9 の幅なので 177.77% (= 16 ÷ 9) */
}



/*##########Contact Form 7のデザイン*/
/*ドロップダウンメニューのHeight*/
.wpcf7 .cf7drpdwn {
	height: 2rem;
}
/*tableの基本デザイン*/
.wpcf7 table {
	border-spacing: 0px;
	border-collapse: collapse;
	width: 100%;
}
.wpcf7 th p, .wpcf7 td p, .wpcf7 th p span, .wpcf7 td p span {
	padding: 0;
	margin: 0;
}
.wpcf7 th {
	width: 10rem;
	border: solid 1px #ccc;
	background-color: #f6f6f6;
	padding: 0.5rem;
}
.wpcf7 td {
	border: solid 1px #ccc;
	background-color: #f6f6f6;
	padding: 0.5rem;
}
.wpcf7 td:nth-of-type(1){
	background-color: #f6f6f6;
}
.wpcf7 .wpcf7-form-control-wrap input[type=text] {
	width: 98%;
}
.wpcf7-textarea {
	height: calc( 1.54em * 8 );
	line-height: 1.5;
}
.wpcf7 .wpcf7-form-control-wrap textarea {
	width: 98%;
}
.wpcf7 input.wpcf7-submit, .wpcf7 input.wpcf7-previous {
	margin-top: 0.5rem;
	padding: 0.2rem 1.4rem;
}



/*##########header.php水平メニューのデザイン*/
.wrap_main_menu {
	width: 100%;
	background-color: #ceef48;
}
.horizontalmenu {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
@media screen and (max-width:576px) {
	display: none;
	}
}
.horizontalmenu li {
	text-align: center;
	flex-grow: 1;
	border-left: solid 0.15rem #fff;
	font-weight: bold;
	font-size: 1.22rem;
	line-height: 1.2rem;
}
.horizontalmenu li:last-child {
	border-right: solid 0.15rem #fff;
}
.horizontalmenu li a {
	text-decoration: none;
	color: #333;
	display: block;
	padding: 0.5rem;
}
.horizontalmenu li a:hover {
	color: #F0F0E0;
	background-color: #91aa2d;
}



/*##########page.php鎌ケ谷ビジョンの日付帯*/
.main_contents .entry-content .maindate {/*帯部分*/
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
}
.main_contents .entry-content .maindate figure img {/*日付画像部分*/
	border: none!important;
}
.main_contents .entry-content .maindate p.has-background {/*午前・午後表示部分*/
	padding: 0.8rem 0!important;
	min-width: 4rem;
	text-align: center;
}



/*##########鎌ケ谷ビジョンのメインコンテンツ*/
.main_contents {
	background-color: rgba(250, 250, 250, 0.96);
}
.main_contents .entry-header {
	max-width: 1100px;
	margin: 0 auto;
}
.main_contents .entry-content.forpage h1.wp-block-heading, .entry-header h1 {
	padding-top: 4.5rem;
	padding-bottom: 4rem;
	text-align: center;
}

.main_contents .entry-content.forpage div#maindate div.wp-block-query div.entry-content {/*開催日時タグ用*/
	max-width: 100%;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
@media screen and (max-width:576px) {
	padding: 0;
	}
}

.main_contents .entry-content.forpage div.front_p div.wp-block-query ul li .entry-content > div:not(.maindate, .addtoany_share_save_container) {/*フロントページ用*/
	max-width: 1100px;
	margin: 0 auto;
	padding: 4rem 2rem;
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0px 2px 8px rgb(0 0 0 / 16%);
@media screen and (max-width:576px) {
	padding: 0.8rem 1rem;
	}
}
.main_contents .entry-content.forpage > div:not(.front_p, .maindate, .addtoany_share_save_container) {/*固定ページ用*/
	max-width: 1100px;
	margin: 0 auto;
	padding: 4rem 2rem;
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0px 2px 8px rgb(0 0 0 / 16%);
@media screen and (max-width:576px) {
	padding: 0.8rem 1rem;
	}
}

.main_contents .entry-content.forsingle {/*single.php用*/
	max-width: 1100px;
	margin: 0 auto;
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0px 2px 8px rgb(0 0 0 / 16%);
	padding: 0.8rem 2rem;
@media screen and (max-width:576px) {
	padding: 0.8rem 1rem;
	}
}
.main_contents .entry-content h3 {/*プログラム表題*/
	border-left: solid 0.4rem #91aa2d;
	padding-left: 0.8rem;
	margin-bottom: 1rem;
}
.main_contents .entry-content .leftline {/*左ライン*/
	border-left: solid 0.4rem #91aa2d;
	padding-left: 0.8rem;
	margin-bottom: 4rem;
@media screen and (min-width:768px) {
	margin-left: 1.5rem;
	}
}
.main_contents .entry-content .break-keep {
	word-break: keep-all;
}
.main_contents .entry-content div.h4title {/*プログラム内容*/
	border-bottom: solid 1px #91aa2d;
}
.main_contents .entry-content div.h4title h4 {/*プログラム内容*/
	background-color: #91aa2d;
	color: #fff;
	border-radius: 1.4rem 0 0 0;
	width: 11rem;
	padding: 0.65rem 2rem;
	text-align: center;
@media screen and (max-width:576px) {
	width: 100%;
	text-align: left;
	}
}
.main_contents .entry-content div.h4titlegogo {/*プログラム内容*/
	border-bottom: solid 1px #eb6c2b;
}
.main_contents .entry-content div.h4titlegogo h4 {/*プログラム内容*/
	background-color: #eb6c2b;
	color: #fff;
	border-radius: 1.4rem 0 0 0;
	width: 11rem;
	padding: 0.65rem 2rem;
	text-align: center;
@media screen and (max-width:576px) {
	width: 100%;
	text-align: left;
	}
}
/*スポンサー画像*/
.main_contents .entry-content div.wp-block-group-is-layout-flex figure.wp-block-image img {
	margin-top: 0.6rem;
	margin-bottom: 0.6rem;
	/*border: solid 1px #ccc;*/
}

/*SNSアイコン*/
div.addtoany_share_save_container {
	/*background-color: rgba(250, 250, 250, 0.96);*/
	max-width: 1100px;
	margin: 0 auto;
	padding: 1rem;
}
footer div a {
	color: #333;
}



/*##########ウィジェットエリアの余白*/
.widget-container.widget_block {
	margin-top: 3rem;
	padding-bottom: 0;
	margin-bottom: 0;
}



/*##########HLS動画、Youtube動画のレスポンシブ対応*/
.videos_wrap {
	padding-top: 56.25%;
	width: 100%;
	position: relative;
}
.videos_wrap iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
}



/*##########ラジオボタンで表示切替*/
/* 初期状態でdiv要素を非表示にする */
.contentk {
	display: none;
}
/* ラジオボタンがチェックされたときに対応するdivを表示 */
input#radio1:checked ~ .contentk1,
#radio2:checked ~ .contentk2 {
	display: block;
}



/*##########アイキャッチ画像をレスポンシブに*/
.resthumb, figure.wp-block-post-featured-image img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	aspect-ratio:16/9;
	object-position: 100% 0;
}
/*アイキャッチ画像を左上でトリミング*/
figure.size-full img {
	object-position: 100% 0;
}
/*アイキャッチ画像の下余白調整*/
figure.wp-block-post-featured-image {
	margin-bottom: 0;
}



/*##########添付画像を左上でトリミング(解像度フル、アスペクト比16/9)*/
figure.size-full img {
	object-position: 100% 0;
}



/*##########引用テキストのブロック*/
blockquote.wp-block-quote {
    position: relative;
    padding: 0.5rem 1rem 0.5rem 4rem;
    background: #f6f6f6;
    color: #555;
	border: solid 0.1rem #ccc;
    border-left: solid 0.3rem #6c757d;
	/*margin-left: 2rem;*/
}
blockquote.wp-block-quote::before{
    display: inline-block;
    position: absolute;
    top: 1rem;
    left: 1rem;
    vertical-align: middle;
    content: "\F6B0";
    font-family: bootstrap-icons;
    color: #6c757d;
    font-size: 2rem;
    line-height: 1;
}
blockquote.wp-block-quote p::before {
	content: "（引用）";
}
blockquote.wp-block-quote cite {
	font-style: normal;
	/*font-size: 0.875em;*/
}
blockquote.wp-block-quote cite a {
	word-break: break-all;
}



/*##########PDFファイルへのリンクにアイコン表示*/
a[href$=".pdf"]:before {
  display: inline-block;
  content: "";
  vertical-align: -.125em;
  background-image: url("data:image/svg+xml,<svg viewBox='0 0 16 16' fill='%23b30b00' xmlns='http://www.w3.org/2000/svg'><path d='M5.523 12.424c.14-.082.293-.162.459-.238a7.878 7.878 0 0 1-.45.606c-.28.337-.498.516-.635.572a.266.266 0 0 1-.035.012.282.282 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.148 21.148 0 0 0 .5-1.05 12.045 12.045 0 0 0 .51.858c-.217.032-.436.07-.654.114zm2.525.939a3.881 3.881 0 0 1-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 0 1 .026.064.436.436 0 0 1-.06.2.307.307 0 0 1-.094.124.107.107 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 6.97c-.04.244-.108.524-.2.829a4.86 4.86 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 0 1 .145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z'/><path fill-rule='evenodd' d='M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zm5.5 1.5v2a1 1 0 0 0 1 1h2l-3-3zM4.165 13.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.651 11.651 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 0 0-1.335-.05 10.954 10.954 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.697 19.697 0 0 1-1.062 2.227 7.662 7.662 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z'/></svg>");
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
	width: 1rem;
	height: 1rem;
	padding-left: 1.2rem;
}



/*##########ファイル添付ブロックのデザイン*/
.wp-block-file a {
	font-size: 1rem;
	line-height: 1.5;
}
/*ダウンロードボタン*/
.wp-block-file a.wp-block-file__button.wp-element-button {
	border: solid 1px #212529;
	background-color: #f0f0f0;
	color: #333;
	padding: 0.2rem 0.5rem;
	border-radius: 0.2rem;
}
.wp-block-file a.wp-block-file__button.wp-element-button:active {
	background-color: #333;
	color: #f0f0f0;
}





/*##########外部リンクの後ろに文字列*/
.external_link::after {
	font-family: bootstrap-icons;
	content: "（\00a0\F1C5\00a0外部のウェブサイトへ）";
	font-size: 0.875rem;
	text-decoration: none;
	color: #333;
}



/*##########パンくずのデザイン*/
.breadcrumb {
	line-height: 1.2;
	font-feature-settings: "palt";
}
.breadcrumb a {
	color: #fffff0;
}
/*表示文字列が長い時に省略*/
.breadcrumb-ellipsis {
	overflow: hidden;
}
.breadcrumb-ellipsis li:last-child {
	overflow: hidden;
}
.breadcrumb-ellipsis li:last-child {
	display: block;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}



/*##########ページネーションのデザイン*/
nav.wp-block-query-pagination {
   padding-top: 3rem;
}
.page-numbers,
.nav-links{
   display:flex;
}
.wp-block-query-pagination-numbers .page-numbers,
.pagination .page-numbers {
   display: inline-block;
   margin-right: 0.5em;
   padding: 0.4em 0.8em;
   color: #333;
   border-radius: 3px;
   box-shadow: 0 3px 3px #999;
   background: #fff;
}
.wp-block-query-pagination-numbers .current,
.pagination .current {
   padding: 0.6em 1em;
   background: #69a4db;
   color: #fff;
}
.wp-block-query-pagination-next,
.pagination .prev,
.pagination .next {
   background: transparent;
   box-shadow: none;
   /*color: #ae5c09;*/
}
.pagination .dots {
   background: transparent;
   box-shadow: none;
}



/*##########右上のフルスクリーンメニュー*/
.cp_fullscreenmenu {
	position: fixed;
	z-index: 2;
	top: 0;
	right: 0;
}
.cp_fullscreenmenu a,
.cp_fullscreenmenu a:visited,
.cp_fullscreenmenu a:hover,
.cp_fullscreenmenu a:active {
	text-decoration: none;
	color: #FFFFFF;
}
/*menuコンテンツ*/
.cp_fullscreenmenu .menu {
	position: fixed;
	top: 0;
	right: 0;
	display: flex;
	visibility: hidden;
	overflow: hidden;
	width: 100%;
	height: 100%;
	pointer-events: none;
	outline: 1px solid transparent;

	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
	align-items: center;
	justify-content: center;
}
.cp_fullscreenmenu .menu > div {
	display: flex;
	overflow: hidden;
	width: 200vw;
	height: 200vw;
	transition: all 0.4s ease;
	-webkit-transform: scale(0);
	        transform: scale(0);
	text-align: center;
	color: #fefefe;
	border-radius: 50%;
	background: rgba(90,90,90 ,0.9);

	flex: none;
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
	align-items: center;
	justify-content: center;
}
.cp_fullscreenmenu .menu > div > ul {
	display: block;
	max-height: 100vh;
	margin: 0;
	padding: 0 1em;
	list-style: none;
	transition: opacity 0.4s ease;
	opacity: 0;
}
.cp_fullscreenmenu .menu > div > ul > li {
	font-size: 1.5rem;
	display: block;
	margin: 1em;
	padding: 0;
}
.cp_fullscreenmenu .menu > div > ul > li > a {
	position: relative;
	display: inline;
	cursor: pointer;
	transition: color 0.4s ease;
}
.cp_fullscreenmenu .menu > div > ul > li > a:hover {
	color: #e5e5e5;
}
.cp_fullscreenmenu .menu > div > ul > li > a:hover:after {
	width: 100%;
}
.cp_fullscreenmenu .menu > div > ul > li > a:after {
	position: absolute;
	z-index: 2;
	bottom: -0.15em;
	left: 0;
	width: 0;
	height: 2px;
	content: '';
	transition: width 0.4s ease;
	background: #e5e5e5;
}
/*クリックしたらメニューが開閉の動作*/
.cp_fullscreenmenu .toggle {
	position: absolute;
	z-index: 3;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	cursor: pointer;
	opacity: 0;
}
.cp_fullscreenmenu .toggle:checked + .hamburger > span {
	-webkit-transform: rotate(135deg);
	        transform: rotate(135deg);
}
.cp_fullscreenmenu .toggle:checked + .hamburger > span:before,
.cp_fullscreenmenu .toggle:checked + .hamburger > span:after {
	top: 0;
	-webkit-transform: rotate(90deg);
	        transform: rotate(90deg);
}
.cp_fullscreenmenu .toggle:checked + .hamburger > span:after {
	opacity: 0;
}
.cp_fullscreenmenu .toggle:checked ~ .menu {
	visibility: visible;
	pointer-events: auto;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div {
	transition-duration: 0.75s;
	-webkit-transform: scale(1);
	        transform: scale(1);
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul {
	opacity: 1;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul li:nth-of-type(1) {
	transition-delay: 0.30s;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul li:nth-of-type(2) {
	transition-delay: 0.35s;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul li:nth-of-type(3) {
	transition-delay: 0.40s;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul li:nth-of-type(4) {
	transition-delay: 0.45s;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul li:nth-of-type(5) {
	transition-delay: 0.50s;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul li:nth-of-type(6) {
	transition-delay: 0.55s;
}
.cp_fullscreenmenu .toggle:hover + .hamburger {
	box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
}
.cp_fullscreenmenu .toggle:checked:hover + .hamburger > span {
	-webkit-transform: rotate(225deg);
	        transform: rotate(225deg);
}
/*ハンバーガー*/
.cp_fullscreenmenu .hamburger {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	display: block;
	width: 46px;
	height: 46px;
	padding: 0.5em 0.7em;
	cursor: pointer;
	transition: box-shadow 0.4s ease;
	border-radius: 0 0.12em 0.12em 0;
	background: rgba(255,8,68 ,0.8);

	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
}
.cp_fullscreenmenu .hamburger > span {
	position: relative;
	top: 50%;
	display: block;
	width: 100%;
	height: 2px;
	transition: all 0.4s ease;
	background: #fefefe;
}
.cp_fullscreenmenu .hamburger > span:before,
.cp_fullscreenmenu .hamburger > span:after {
	position: absolute;
	z-index: 2;
	top: -10px;
	right: 0;
	display: block;
	width: 100%;
	height: 2px;
	content: '';
	transition: all 0.4s ease;
	background: inherit;
}
.cp_fullscreenmenu .hamburger > span:after {
	top: 10px;
}



/*##########基本セット*/
* {
	margin: 0;
	padding: 0;
}
body {
	color: #333;
	/*line-height: 1.76;*/
}
img {
	width: auto;
	height: auto;
}
h1, h2, h3, h4, h5, h6 {
	text-align: justify;
}
p {
	line-height: 1.7;
	letter-spacing: 0.08em;
	text-align: justify;
}
a {
	/*color: #ae5c09;*/
}
a:hover {
	/*color: #ffffef;*/
}
a:active {
	/*color: rgba(255,8,68 ,0.8);*/
	color: #81b5ee;
}
a:visited {
	/*color: inherit;*/
}
/*長いURL表示を指定された範囲に合わせて改行する。単語の途中でも改行。*/
a {
	word-break: break-all;
}


/*##########画面サイズ575px以下でContact Form 7を縦積みレスポンシブ*/
@media (max-width: 575px){
	.wpcf7 table td, table th {
		display: block;
		width: 100%;
	}
	.wpcf7 table {
		border: solid 1px #ccc;
		border-top: none;
	}
	.wpcf7 th {
		width: 100%;
		border: none;
		border-top: solid 1px #ccc;
	}
	.wpcf7 td {
		width: 100%;
		border: none;
	}
}



/*##########画面サイズ600px以下＝1列表示で記事の縦間隔*/
@media (max-width: 600px){
	ul.wp-block-post-template.is-layout-grid li {
		padding-bottom: 1.2rem;
	}
}






/*##########印刷時には削除するもの色々*/
@media print {
	/*body背景、template-singleとtemplate-page、footerの背景を非表示*/
	.bkimage, .template-single, .template-page, .footer {
		background-image: none;
		background-color: transparent;
	}
	/*.printoffクラス*/
	.printoff {
		display: none;
	}
	/*ハンバーガーを非表示*/
	.cp_fullscreenmenu {
		display: none;
	}
	/*印刷ボタンを非表示*/
	.pbutton, .pbutton button {
		display: none;
	}
	/*パンくずを非表示*/
	nav.breadcrumb {
		display: none;
	}
	/*タグクラウドを非表示*/
	.tagcloud {
		display: none;
	}
	/*水平メニューと検索バーを非表示*/
	div.print_control {
		display: none;
	}
	/*エチケット集のサイドバー等を非表示*/
	#gloval-nav, .shiori {
		display: none;
	}
	/*エチケット集のスペーサーを非表示*/
	#spacerm {
		display: none!important;
	}
	/*エチケット集のページ区切りを非表示*/
	.etqtkgr {
		display: none;
	}
	/*エチケット集の各章のh2タイトル余白*/
	h2.mt-sm-4 {
		margin-top: 0!important;
	}
	div:has(h2.h2term) {
		margin-top: 0!important;
	}
	/*エチケットNo9の横並びリストを表示*/
	div:has(ul.list-style-position-inside) {
		display: block!important;
	}
	/*ページトップへ戻るボタン*/
	a#page_top {
		display: none;
	}
}



/*##########600px以下で管理バーのデザイン崩れを修正*/
@media screen and (max-width: 600px) {
	#wpadminbar {
		position: fixed!important;
	}
}



