@charset "utf-8";
/* CSS Document */

:root {
	--main-color: #e9791d;
	--w-bgc: #fff;
	--g-bgc: #efefef;
	--y-bgc: #fff5c4;
	--main-text-color: #707070;
	--sub-text-color: #009fff;
	--link-text-color: #06f;
	--hover-color: #197a00;
}
@font-face {
  font-family: 'icomoon';
  src: url('../fonts/icomoon.woff') format('woff');
}
html {
  scroll-behavior: smooth;
}
body{
	font-family: 'YakuHanJP_Narrow', 'Noto Sans JP', sans-serif;
	font-size: var(--fs-base);
	font-weight: 400;
	font-style: normal;
	line-height: 1.4;
	color: var(--main-text-color);
	position: relative;
	font-feature-settings: "palt";
}

h1{
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: var(--fs-tt1);
	font-weight: bold;
	color: var(--main-color);
	text-align: center;
	margin-bottom: var(--m-base);
}
h2{
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: var(--fs-tt2);
	font-weight: bold;
	color: #d00;
	text-align: center;
	margin-bottom: var(--m-base);
}

.lineup li{
	background: var(--g-bgc);
	padding: var(--p-base);
}
.lineup_ttl{
	font-weight: bold;
}
.lineup_img img{
	width: 100%;
	height: auto;
}


.btnWrap{}
.btnWrap a{
	display: block;
	background: var(--w-bgc);
	border: 2px solid var(--main-color);
	font-weight: bold;
	color: var(--main-color);
	padding: 10px;
	font-size: var(--fs-s);
	position: relative;
}
.btnWrap a::before{
	content: "\e901";
	font-family: 'icomoon' !important;
	position: absolute;
	top: 50%;
	right: 20px;
	font-size: 10px;
	transform: translateY(-50%);
}
.btnWrap a:hover{
	opacity: 0.6;
}

.wrap_anchor ul{
	display: flex;
	flex-wrap: wrap;
	border: 1px solid var(--main-color);
	border-radius: 5px;
	overflow: hidden;
	align-items: stretch;
	margin-bottom: var(--m-base);
}
.wrap_anchor li{
	border-right: 1px solid var(--main-color);
	border-bottom: 1px solid var(--main-color);
	box-sizing: border-box;
	text-align: center;
}
.wrap_anchor a{
	padding: 10px;
	display: block;
	color: var(--main-color);
	position: relative;
	box-sizing: border-box;
}
.wrap_anchor a:hover{
	opacity: 0.6;
	background: var(--y-bgc);
}
.wrap_anchor a::before{
	position: absolute;
	left: 7%;
	top: 50%;
	content: "\e902";
	font-family: 'icomoon' !important;
	font-size: 10px;
	transform: translateY(-50%);
}


.sub_ttl03{
	font-size: var(--fs-l);
	font-weight: bold;
	border-left: 3px solid var(--main-color);
	padding-left: 0.5em;
	margin-bottom: 20px;
}
.ttMiddle{
	font-weight: bold;
	text-align: center;
}

.schedule_box{
	margin-bottom: 20px;
	text-align: center;
}
.trigger{
	background-color: var(--y-bgc);
	padding: 10px;
	cursor: pointer;
	font-family: Avenir, "Helvetica Neue", Verdana, Helvetica, Arial, Roboto, 'YakuHanJP_Narrow', 'Noto Sans JP', sans-serif;
}
.trigger::after{
	display: inline-block;
	content: "詳細";
	border: 1px solid #444;
	border-radius: 99px;
	padding: 5px 10px;
	font-size: var(--fs-s);
	margin-left: 10px;	
}
.schedule_box.active .trigger::after{
	content: "閉じる";
}

.schedule_info{
	font-size: var(--fs-s);
	background-color: var(--g-bgc);
	padding: var(--p-base);
	display: none;
}
.schedule_info dt{font-weight: normal;}
.schedule_info .event dt::before{content: "イベント名";}
.schedule_info .venue dt::before{content: "会場";}
.schedule_info .organizer dt::before{content: "主催者";}
.schedule_info .contact dt::before{content: "お問い合わせ先";}
.schedule_info .capacity dt::before{content: "定員";}
.table_list dt, .table_list dd{
	background: var(--w-bgc);
}

.enqArea{
	margin-bottom: var(--m-base);
}
.enqList{
	font-family: Avenir, "Helvetica Neue", Verdana, Helvetica, Arial, Roboto, 'YakuHanJP_Narrow', 'Noto Sans JP', sans-serif;
	margin-bottom: var(--p-base);

}
.enqList li{
	background: var(--y-bgc);
	margin-bottom: 10px;
}
.enqList a{
	display: block;
	padding: 10px;
}
.enqList span::after{
	display: inline-block;
	content: "回答する";
	border: 1px solid #444;
	border-radius: 99px;
	padding: 5px 10px;
	font-size: var(--fs-s);
	margin-left: 10px;	
}

a,a:hover{
	transition: 0.3s;
}
.off_link{
	cursor: default;
	opacity: 0.3;
}
.off_link:hover{
	background: none !important;
	opacity: 0.3 !important;
}

footer{
	padding: 10px;
	font-size: var(--fs-s);
	text-align: center;
	margin-top: 50px;
}

/* --------------------------------------------------
	PC
-------------------------------------------------- */
@media screen and (min-width:641px){
	:root {
		--fs-base: 18px;
		--fs-tt1: 45px;
		--fs-tt2: 30px;
		--fs-xl: 30px;
		--fs-l: 24px;
		--fs-s: 14px;
		--btn-fs: 20px;
		--m-base: 50px;
		--sec-m-base: 80px;
		--p-base: 20px;
		--btn-brd-r: 15px;
		--brd-r: 30px;
	}

	body{
		font-size: var(--fs-base)
	}

	.wrapper{
		max-width: 1100px;
		margin: 50px auto 0;
	}

	.lineup{
		display: flex;
		flex-wrap: wrap;
		gap: 1vw;
	}
	.lineup li{
		max-width: calc((100% - 3vw) / 3);
		min-width: calc((100% - 3vw) / 3);
	}
	.lineup_img, .lineup_ttl,.btnWrap{
		width: 100%;
		padding: 0 15%;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
	.lineup_ttl{
		display: flex;
		height: 3.2em;
		align-items: center;
		justify-content: center;
		margin: 5px 0;
	}

	.wrap_anchor li{
		width: 25%;
	}

	.schedule_list{
		margin-bottom: 100px;
	}
	.wrap_anchor li:nth-of-type(n+5){
		border-bottom: 0;
	}
	.wrap_anchor li:nth-of-type(4n){
		border-right: 0;
	}

	.table_list dl{
		display: flex;
		justify-content: center;
		gap: 10px;
		margin-bottom: 10px;
	}
	.table_list dl:last-of-type{margin-bottom: 0;}
	.table_list dt, .table_list dd{
		min-width: calc(50% - 5px);
		max-width: calc(50% - 5px);
		padding: 10px;
	}

}

/* --------------------------------------------------
	SMP
-------------------------------------------------- */
@media screen and (max-width:640px){
	:root {
		--fs-base: 18px;
		--fs-tt1: 30px;
		--fs-tt2: 25px;
		--fs-xl: 25px;
		--fs-l: 22px;
		--fs-s: 14px;
		--btn-fs: 20px;
		--m-base: 50px;
		--sec-m-base: 80px;
		--p-base: 20px;
		--btn-brd-r: 15px;
		--brd-r: 30px;
	}

	body{
		font-size: var(--fs-base)
	}

	.wrapper{
		margin: 50px 10px 0;
	}

	.lineup li{
		margin-bottom: 30px;
	}

	.lineup_ttl{
		margin: 10px 0;
	}
	.lineup_img{
		width: 50%;
		margin: 0 auto;
	}
	.lineup_ttl,.btnWrap{
		width: 100%;
		padding: 0;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}



	.wrap_anchor li{
		width: 50%;
	}
	.wrap_anchor li:nth-last-of-type(-n+2){
		border-bottom: 0;
	}
	.wrap_anchor li:nth-of-type(2n){
		border-right: 0;
	}
	.schedule_list{
		margin-bottom: 100px;
	}

	.table_list dl{
		margin-top: 10px;
	}
	.table_list dl dt, .table_list dl dd{
		padding: 10px;
	}
	.table_list dl dt{
		margin-bottom: 2px;
	}
	


}
	