@charset "UTF-8";

.page-template-inc_lp_set main { padding-bottom: 0; }

/*========================================================
　メインタイトル設定
========================================================*/

/* 最上部テキスト
--------------------------------------*/
.lptop-txt {
	font-size: 15.5px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	padding: 4px 0;
}

.lphead-tel {
	font-size: 1.6em;
	line-height: 1.2;
}

.lphtel-txt {
	font-size: 0.75rem;
	font-weight: normal;
	display: block;
}

.lphtel-txt br { display: none; }


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

	.lptop-txt p { margin: 0; }

	.lphead-copy {
		font-size: 20px;
		font-size: 1.25rem;
	}

	.lphtel-txt { display: inline-block; }

}

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

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

	.lphead-tel { font-size: 2em; }

	.lphtel-txt br { display: inline; }
}

/* メインタイトル
--------------------------------------*/

.lp-head{
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.lphead-contents { position: relative; }

.lp-title {
	color: #f00;
	font-size: 1.5rem;
	text-align: center;
	padding: 0.5em 0;
	margin: 0 auto;
}

.lp-title br { display: none; }

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

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

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

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

.lphead-date {
	margin-top: -20%;
	margin-right: calc( 50% - 50vw );
	margin-left: calc( 50% - 50vw );
}

.lp-date-ul {
	font-size: 1.25em;
	text-align: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.lp-date-ul li {
	font-weight: 700;
	line-height: 1.3;
	padding: 0.5em 0.5em;
	margin: 0;
}

.lp-date-ul li:not(:first-child) { border-top: 2px solid #fff; }

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

/* series開催 */

.lp-series-date-dl {
	font-weight: 700;
	background: #ffcd00;
	padding: 0.5em 15%;
	width: max-content;
	margin: 0.5em auto 0;
	border: 1px solid #fff;
	border-radius: 4px;
}

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

	.lphead-contents {
		position: relative;
		height: 100%;
		overflow: hidden;
	}

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

	.lphead-date {
		margin-top: 0;
		margin-right: 0;
		margin-left: 0;
	}

	.setimg-tit .lphead-date {
		position: absolute;
		bottom: 40px;
		width: 100%;
	}

	.lp-date-ul {
		font-size: 1rem;
		margin: 0;
		background: none;
		width: 100%;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		gap: 1.5em;
	}

	.setimg-tit .posi-left,
	.setimg-tit .posi-right { width: max-content; }

	.setimg-tit .posi-left {
		left: 0;
		right: auto;
	}
	.setimg-tit .posi-right {
		left: auto;
		right: 0;
	}

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

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


/*========================================================
 LP共通
 ========================================================*/

.lpsec-contents.contents > h2:not(.loop-section-tit) {
	font-weight: 700;
	margin-bottom: 1em;
	border: none;
}

.lpsec-contents p:not(:last-child) { margin-bottom: 0.8em; }

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

	.lpsec-contents > *:not(.sechead-line) {
		font-size: 1.0625em;
		line-height: 1.8;
	}

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

/* チェックリスト */

ul.checklist-css { padding-left: 2.25em; }


/*========================================================
　各セクション共通設定
========================================================*/

.lpsec-contents > *:first-child:not(.alignfull.has-background) { margin-top: 40px; }

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

	.lpsec-contents > *:first-child:not(.alignfull.has-background) { margin-top: 80px; }
}

/* 各セクションタイトル
--------------------------------------*/

.sechead-line {
	position: relative;
	padding: 16px 0;
}

.sechead-line .sec-title {
	text-align: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.line-arrow:after {
	content: '';
	display: block;
	margin: 0 auto 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 24px 36px;
	border-color: transparent;
	border-top-color: #ccc;
	position: absolute;
	top: 100%;
	left: 50%;
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 5;
}

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

	.lpsec-contents .lpsec-title-s { margin-bottom: 1em; }

	.sechead-line { padding: 24px 0; }

 }


 /* 申込ジャンプボタン
--------------------------------------*/

.splp-btnline {
	text-align: center;
	line-height: 1.4;
}

.btn-splp {
	text-align: center;
	line-height: 1.8;
}

.btn-splp a {
	color: #fff;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: bold;
	display: inline-block;
	padding: 0.2em 2em;
	border-radius: 2px;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	position: relative;
	background: #999;
}

.btn-splp a:hover {
	text-decoration: none;
}

.btn-splp a:active {
	top: 1px;
	box-shadow: 0 0 2px  rgba(0,0,0,0.5);
}

.btn-splp .fa-circle-play {
	display: inline-block;
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}


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

  .sechead-line + .lpsec-wrap,
  .splp-sec01 .lpsec-wrap {
    padding: 80px 0 0;
  }
}


/*#section08 .btn-splp .fa {
	-ms-transform: rotate(-90deg);
	transform: rotate(-90deg);
}*/

/* ボタン横テキスト */

.btn-side { margin-bottom: 1em; }

/* 電話番号表示*/

.btn-phone {
	line-height: 1.4;
	margin-top: 0.5em;
}

.btn-telnumber {
	font-size: 2em;
	font-weight: bold;
}

.btn-telnumber i { font-weight: normal; }

.splp-contents .btn-side.side-none { display: none; }

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

	.btn-splp a {
		font-size: 26px;
		font-size: 1.625rem;
		padding: 0.2em 1.5em;
	}

	.btn-phone { margin-top: 0; }
}

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

	.splp-btnline {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 2em;
	}

	/* ボタン横 */
	.btn-side {
		text-align: left;
		margin: 0;
	}
}

/*========================================================
　各コンテンツ
========================================================*/


/* 開催概要
--------------------------------------*/

.semi-outlinesec:last-child {  margin-bottom: 0 }

.semi-outlinebox table th { font-weight: bold; }

.contents .semi-outlinetb td { background: #fff; }

.semiplace-ph { max-height: 235px; }

.semiplace-ph,
.acf-map { max-width: 360px; }

.series-count {
	text-align: center;
	display: inline-block;
	width: 0.8em;
}

.timetable-li .text120 {
	text-align: right;
	display: inline-block;
	width: 1.25em;
}

/* Googleマップ */

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

.acf-map img {
   max-width: inherit !important;
}

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

 	.contents .semi-outlinetb td { padding-left: 1.5em;}
 }


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

.semi-faxbox {
	background: #f5f5f5;
	padding: 8px;
}

.semi-faxbox:not(:last-of-type) { margin-bottom: 16px; }

.fax-iconwrap a {
	display: table;
	margin-bottom: 1em;
}

.fax-iconwrap i.fa-file-pdf { font-size: 54px; }

.fax-iconwrap a .faxTxt {
	display: table-cell;
	vertical-align: middle;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.4;
	padding-left: 2.5em;
	text-indent: -0.65em;
}

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

.fax-number {
	font-size:1.5rem;
	font-weight: bold;
	line-height: 1.2;
	display: block;
}

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

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

	.semi-faxbox { padding: 16px; }

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

	.fax-iconwrap a { margin-bottom: 0; }
}

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

	.fax-iconwrap { padding: 0 1em; }

	.consulting .fax-iconwrap { padding: 0; }

	.contents .fax-numbox {
		padding: 8px 16px;
		width: 50%;
	}

	.fax-number { font-size: 1.8rem; }
}
