@charset "UTF-8";

.primary-wrap { padding-bottom: 0; }


/*========================================================
 LPヘッダー
 ========================================================*/

 /* --------------------------------------------
 ヘッダー廻り
-----------------------------------------------*/

.lp-title.img-lptit { margin: 0; }

/* LPタイトル、テキスト */

.lp-title.img-lptit { margin-left: -15%; }

.headtxt-area {
	color: #fff;
	font-size: 0.785em;
	padding: 1em 3%;
	background: rgba(0, 0, 0, 1);
	position: relative;
	z-index: 5;
	margin-top: -20%;
	margin-right: calc( 50% - 50vw );
	margin-left: calc( 50% - 50vw );
}

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

	/*.setimg-tit.lphead-contents { padding-bottom: 32px; }*/

	.lphead-contents { position: static; overflow: visible; }

	.lphead-titarea { position: relative; }

	.headtxt-area {
		font-size: 1rem;
		position: absolute;
		right: 0;
		bottom: 16px;
		left: 23%;
		margin: 0;
	}
}

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

	.lp-title.img-lptit { margin-left: -5%; }

	.headtxt-area {
		font-size: 1.125em;
		line-height: 1.8;
		right: 8%;
		bottom: 32px;
		left: 32%;
	}
}

/* タイトル下日程
--------------------------------------*/

.lphead-date {
	margin-top: 0;
	margin-right: calc( 50% - 50vw );
	margin-left: calc( 50% - 50vw );
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

.lp-date-ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.lp-date-ul li:not(:first-child) { border-top: none; }

.lp-date-ul li {
	font-size: 0.9375rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.2;
	padding: 0.5em 0.5em;
	margin: 0;
	width: 50%;
	position: relative;
}

.lp-date-ul li:not(:last-child),
.lp-date-ul li:not(:nth-last-child(2)):not(:nth-child(odd)) { border-bottom: 1px solid #fff; }

.lp-date-ul > li br { display: inline; }

.lp-date-ul li:nth-child(odd) { border-right: 1px solid #fff }

.lp-date-ul .weekday {
	display: inline-block;
	margin: 0 -0.3em;
}

.lp-date-ul .date-reserve {
	color: #fff;
	font-size: 0.75em;
	padding: 0.2em 0.4em;
	background: #f00;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
}

.full-seat.date-reserve {
	color: #f00;
	background: #fff;
	border: 1px solid;
}

.full-seat.date-reserve::before { content: '★'; }

.canceled-seat.date-reserve {
	background: #666;
}


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

	.setimg-tit .lphead-date {
		margin-right: calc( 50% - 50vw );
		margin-left: calc( 50% - 50vw );
		width: auto;
		position: relative;
		bottom: 0;
		z-index: 5;
	}

	.lphead-date {
		padding: 16px 5%;
		border: none;
	}

	.lp-date-ul {
		max-width: 1080px;
		margin: 0 auto;
		gap: 1.5em 2%;
	}

	.lp-date-ul li {
		width: 32%;
		border-radius: 4px;
	}

	.lp-date-ul .date-reserve {
		border-radius: 0 4px 0 4px;
	}

	.lp-date-ul li:not(:last-child),
	.lp-date-ul li:not(:nth-last-child(2)):not(:nth-child(odd)),
	.lp-date-ul li:nth-child(odd) { border: none; }
}

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

	.lp-date-ul li {
		font-size: 1.25rem;
		width: 23.5%;
	}

	.lp-date-ul .date-reserve { font-size: 0.625em; }
}

/** ----------------------------------------------------------
 * コンテンツ共通
---------------------------------------------------------- **/

/* LIQUID SPEECH BALLOON プラグイン */

.liquid-speech-balloon-avatar { border-radius: 4px; }

/*========================================================
 セクション帯内
 ========================================================*/

/**
	セミナープログラム
----------------------------------------------------- **/

.program-flow > *::before { border-top-color: var(--wp--preset--color--vivid-red) }


/**
	セミナー開催概要
----------------------------------------------------- **/

.added-section { margin-top: 40px; }

.semi-outlinesec > h3 {
	color: var(--wp--preset--color--text-black);
	background: #cbdbe8;
	padding: 0.2em 0.5em;
}

.semi-outlinesec > .onde-title {
	color: #fff;
	background: #0552c0;
}

.semi-outlinetb th,
.semi-outlinetb td { border-color: #ccc; }

.semi-outlinetb th { background: #f5f5f5; }

.contents .semi-outlinetb p { margin: 0; }

.semiSche {
	display: inline-block;
}

.place-box { margin-bottom: 1em; }

.acf-map {
	width: 100%;
	height: 240px;
	border: 1px solid #eee;
	margin: 8px 0px;
}

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

	.semi-outlinetb .place-box {
		display: -ms-flexbox;
		display: flex;
		width: 100%;
	}

	.semi-outlinetb .place-box img {
		max-width: none;
		width: auto;
		height: 240px;
		object-fit: cover;
	}

	.semi-outlinetb .place-box .semiplace-ph {
		max-width: 40%;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		margin: 0 2em 0 0;
	}

	.semi-outlinetb .place-box .acf-map {
		margin: 0;
	}
}

/* 申込みフォーム
----------------------------- */

.lpsec-contents .form-box {
	padding: 0;
	background: none;
}

.lpsec-contents .btn-line {
	text-align: center;
	position: relative;
}

/* FAX申込み
----------------------------- */

/*.semifax-section > h2 { font-size: 1.375em; }*/

.semi-faxbox {
	background: #f5f5f5;
	border: 1px solid #ccc;
	padding: 8px;
}

.semi-faxwrap > *:not(:first-child) { margin-top: 0.5rem; }

.fax-iconwrap > a,
.fax-iconwrap > a span { display: block; }

.fax-iconwrap > a {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
}

/*.fax-iconwrap a .faxTxt {
	text-indent: -1.3em;
	padding-left: 1.5em;
}*/

.fax-icon {
	width: 3em;
	text-align: center;
}

.fa-file-pdf {
	color: var(--wp--preset--color--vivid-red);
	/*height: 2.5em;*/
}

.fax-numbox {
	text-align: center;
	text-indent: 0;
	line-height: 1.3;
	margin: 0;
	background: #fff;
	padding: 8px 8px;
}

p.fax-number {
	font-size:1.5rem;
	font-weight: bold;
	line-height: 1.2;
	margin: 0;
}

.fax-number .sp-block {
	font-size: 0.875rem;
	font-weight: normal;
}

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

	.semifax-section > h2 { font-size: 1.5em; }

	.semi-faxbox { padding: 16px; }

	.semi-faxwrap {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: center;
		align-items: center;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

	.semi-faxwrap > *:not(:first-child) { margin-top: 0; }

	.fax-numbox {
		-ms-flex: 1;
		flex: 1;
		margin: 0 0 0 1.5em;
	}
}
