/** ----------------------------------------------------------
 * ループ基本設定
---------------------------------------------------------- **/

.flex-box,
.flex-box > .wp-block-group__inner-container,
.flex-box > .sticky-wrap {
	display: -ms-flexbox;
	display: flex;
}

/* ループ */

.loop-article {
	position: relative;
	width: 100%;
}

.block-editor-block-list__layout .loop-article {
	background: #fff;
	padding: 0.5em;
}

.loop-article.flex-box {
	-ms-flex-align: start;
	align-items: flex-start;
}

.loop-article:not(:first-of-type),
.wp-block-query .wp-block-post:not(:first-of-type) { margin-top: 32px; }

.loop-title { margin-top: 0; }

.loop-meta { margin-bottom: 0.5em; }

@media screen and ( min-width: 600px ) {
	.loopflex-wrap {
		-ms-flex: 1;
		flex: 1;
	}
}

/* サムネイル設定 */

.thum-box {
	text-align: center;
	width: 100%;
	overflow: hidden;
	padding-top: 66%;
	margin: 0 auto 1em;
	position: relative;
}

.thum-box img {
	position: absolute;
	top: 0;
	left: 50%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	width: auto;
}

.thum-box img.img-height {
	-ms-transform: translate(-50%, -36%);
	transform: translate(-50%, -36%);
}

.thum-box img.img-width { max-width: 102%; }

.thum-box img.ratio {
	max-width: none;
	width: auto;
	height: 100%;
}

@media screen and ( min-width: 641px ) {

	.thum-box {
		width: 30%;
		margin: 0 1em 0 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		padding-top: calc( 30% * 0.66 );
	}
}

/* 横並びポスト
-------------------------------------------*/

.post-row > .loop-article {
	padding: 0;
	border: none;
}

.post-row > .loop-article:not(:first-child) {
	margin-top: 3em;
}

.post-row > .loop-article .thum-box {
	width: auto;
	margin: 0 0 1em;
	padding-top: calc( 100%  * 0.66 );
}

.post-row .thum-box img {
	top: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	transform-origin: 0 0;
	-ms-transition: 0.5s;
	transition: 0.5s;
}

.post-row .thum-box img:hover { scale: 1.2; }

/* 先頭固定 */
.post-row > .loop-article > .sticky-wrap {
	display: block;
	width: auto;
	margin: 0 !important;
}

@media screen and ( min-width: 641px ) {

	.post-row {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-pack: justify;
		justify-content: space-between;
		gap: 3em 2%;
	}

	.post-row > .loop-article { width: 48%; }

	.post-row > .loop-article.flex-box { display: block; }

	.post-row > .loop-article:not(:first-child) { margin-top: 0; }

	.post-row > .btn-tx {
		width: 100%;
		margin-top: 32px;
	}
}

@media screen and ( min-width: 980px ) {

	.post-row {
		-ms-flex-pack: flex-start;
		justify-content: flex-start;
		gap: 3em 3.5%;
	}

	.post-row > .loop-article { width: 31%; }

	.post-row > .loop-article:nth-child(3) { margin-top: 0; }

	.post-row > .loop-article:nth-child(3n) { margin-right: 0; }
}

/** ----------------------------------------------------------
 * 新着情報リスト 基本設定
---------------------------------------------------------- **/

.news-all-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.news-all-list > li {
	padding: 0.5em 1em 0.5em 0.5em ;
	border-bottom: 1px dotted;
	position: relative;
	-ms-transition: 0.3s;
	transition: 0.3s;
}

.contents > .news-all-list li,
.content-bodywrap > .news-all-list li { margin: 0; }

.news-all-list > li:after {
	content: '';
	display: block;
	width: 0.8em;
	height: 0.8em;
	border-style: solid;
	border-width: 2px 2px 0 0;
	position: absolute;
	top: 50%;
	right: 0.5em;
	-ms-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}

.news-all-list .news-date,
.news-all-list .cat-links { display: inline-block; }

.news-all-list .news-date {
	font-size: 0.9em;
	min-width: 5.4em;
}

.news-all-list .cat-links {
	font-size: 0.8em;
	min-width: 7em;
}

.news-all-list .cat-links a {
	text-align: center;
	line-height: 1.1;
	display: block;
}

.news-all-list .cat-links a:hover {
	text-decoration: none;
	opacity:  0.8;
}

.news-all-list .title-link { display: block; }

@media screen and ( min-width: 641px )  {

	.news-all-list > li {
		padding: 0.8em 2em 0.8em 0.5em ;
		/*display: -ms-flexbox;
		display: flex;*/
	}

	.news-all-list .title-link {
		-ms-flex: 1;
		flex: 1;
	}

	.news-all-list .cat-links { margin: 0 1em 0 0.3em; }
}

/* セミナーアーカイブ
-------------------------------*/

.seminar-new-section .loop-title { text-align: center; }

.event-article,
.event-figwap { position: relative; }

.event-head.loop-head { margin-bottom: 16px; }

.event-article,
.block-editor-block-list__layout .event-head.loop-head,
.block-editor-block-list__layout .event-place { color: var( --text-black ); }

.event-head .loop-title { margin-bottom: 0; }

.event-aredate {
	font-size: 0.8125em;
	display: block;
}

.event-area {
	color: var( --text-black );
	font-size: 0.75em;
	border: 1px solid;
	padding: 0 0.3em;
	display: inline-block;
	vertical-align: 0.1em;
	margin-right: 0.2em;
	background: #fff;
}

.loop-head .simul-txt { font-size: 0.85em; }

.contents .event-place {
	font-size: 14px;
	font-size: 0.875rem;
	text-indent: 0;
	text-align: center;
	margin-top: 0.5em;
}

.event-article.loop-fullpost .btn-tx {
	text-align: center;
	margin-top: 1em;
}

.event-article.loop-fullpost .btn-tx a {
	font-size: 1.25rem;
	border-width: 2px;
}

@media screen and ( min-width: 641px )  {

	.event-article .loop-head {
		overflow: visible;
		margin-bottom: 1em;
	}

	.event-article .loop-title { overflow: hidden; }

	.contents .loop-article p.event-place { margin-bottom: 0; }
}