@charset "UTF-8";

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

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

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

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

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

.headtxt-ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.headtxt-ul > li {
	color: var(--wp--preset--color--text-black);
	font-size: 1.25em;
	font-weight: 700;
	background: #fff;
	padding: 0.3em 1em;
	border-radius: 8px;
}

.headtxt-ul > li::before {
	content: '●';
	color: #bf3679;
	display: inline-block;
	margin-right: 0.2em;
}

.headtxt-ul > li:not(:first-child) { margin-top: 0.5em; }

.headtxt-area dt { color: #ff0; }

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

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

	.lphead-titarea { position: relative; }
}

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

.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 );
		position: static;
		width: auto;
	}

	.lphead-date {
		padding: 16px 5%;
		border: none;
		/*background: rgba(34, 107, 180, 0.9);*/
	}

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

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

	.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; }
}


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


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

 	.lpsec-contents h2,
 	.lpsec-contents.contents > h2 {
 		font-size: 1.65em;
 	}
 }

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

.lp-present-box {
	padding: 1em 3%;
	border: 1px solid;
	max-width: 832px;
	margin: 0 auto 2em;
	background: rgba( 0,0,0,0.2 );
}

.lp-btnline-h2{
	color: #e9e1a2;
	text-align: center;
}

.btn-splp .fa-circle-play { rotate: 90deg; }

/* 特典内容 */

.lp-btnline-dl {
	line-height: 1.4;
	margin: 0;
}

.lp-btnline-dl dt {
	font-weight: bold;
	border: 2px solid;
	padding: 0 0.3em;
	float: left;
	margin-right: 0.5em;
}

.lp-btnline-dl dd { overflow: hidden; }

.lp-btnline-dl dd:not(:last-child) { margin-bottom: 0.5em; }

.lp-btnline-dl .point-color {
	font-size: 1.125em;
	color: #ff0;
}

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

	.lp-btnline-dl { font-size: 1.125em; }
}

/*@media screen and ( min-width: 780px ) {

	.lp-btnline-dl { font-size: 1.375em; }
}*/

/* 画像やボタンを揺らす設定 */

.btn-splp > a {
	animation: btn_vibration 1s infinite;
}

@keyframes btn_vibration {
	0% {
		transform: translate(0px, 0px)
	}
	10% {
		transform: translate(0px, 2px) rotateZ(1deg)
	}
	20% {
		transform: translate(0px, 0px)
	}
	30% {
		transform: translate(0px, 2px) rotateZ(1deg)
	}
	40% {
		transform: translate(0px, 0px)
	}
}

/* ファーストコンテンツ
---------------------------------------------------------- **/

/* 開催日リスト */

.date-topinfo {
	padding: 1em 3%;
	background: #fff7a2;
	border: 2px solid var(--wp--preset--color--theme-enji);
}

.cotents-semindate-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cotents-semindate-list > li {
	padding-bottom: 0.5em;
	border-bottom: 1px dotted;
}

.cotents-semindate-list > li:not(:first-child) { margin-top: 0.5em; }


.cotents-semindate-list > li,
.cotents-semindate-list .date-dd {
	display: flex;
	align-items: flex-start;
	gap: 0.3em;
	line-height: 1.4;
}

.cotents-semindate-list .date-head,
.cotents-semindate-list .list-date { font-weight: 700; }

.cotents-semindate-list .date-head { padding-top: 0.2em; }

.cotents-semindate-list .date-sch { padding-top: 0.2em; }

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

	.date-topinfo {
		padding: 1.5em 3%;
	}

	.cotents-semindate-list {
		width: max-content;
		max-width: 100%;
		margin: 0 auto;
	}

	.cotents-semindate-list .date-head,
	.cotents-semindate-list .list-date {
		font-size: 1.375em;
	}

	.cotents-semindate-list .date-head { padding-left: 0.3em }

	.cotents-semindate-list .date-sch { padding: 0.6em 0.3em 0 0; }
}

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

.program01 {
	list-style: none;
	padding: 0;
	margin: 32px 0;
}

.program01 > li {
	line-height: 1.4;
	display: flex;
	align-items: flex-start;
	gap: 0.3em;
}

.program01 > li:not(:first-child) {
	margin-top: 0.8em;
}

.program01 mark {
	border-radius: 4px;
	padding: 0 0.5em;
	flex: 0 0 auto;
}

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

	.program01 mark { padding: 0 0.8em; }
}

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

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

.semi-outlinesec > h3 { color: var(--wp--preset--color--main-brown); }

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

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

.semiSche { display: inline-block; }

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

	.semi-outlinetb th { vertical-align: text-top; }

	.semi-outlinetb th,
	.semi-outlinetb td { padding: 0.5em 1.5em; }
}


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

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

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


/* フォームタブ
----------------------------- */

.formbox-select {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	gap: 0.5em;
}

.formbox-select > li {
	color: #999;
	padding: 0.5em 1em;
	background: #eee;
	border-radius: 8px 8px 0 0;
	border-style: solid;
	border-color: #fff;
	border-width: 2px 2px 0;
}

.formbox-select > li.tab-current {
	color: #fff;
	background: linear-gradient(to bottom, rgba(88,61,50,1) 0%), rgba(35,24,20,1) 100%;
}

.formbox-select > li:hover { cursor: pointer; }

.tab-content { padding-top: 32px;}

/* 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;
	}
}
