@charset "utf-8";

/* 基礎レイアウト・プリセットスタイル
========================================================= */

img { width: 100%; height: auto; vertical-align: top; }
.anchorMargin { padding-top: 110px; margin-top: -110px; }

@media screen and (max-width: 1000px) {
	.anchorMargin { padding-top: 80px; margin-top: -80px; }
}

@media screen and (max-width: 767px) {
	.anchorMargin { padding-top: 60px; margin-top: -60px; }
}

#festival2023 {
	color: #000000;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
	line-height: 1;
	font-weight: 500;
	font-feature-settings: "palt" 1;
}



/* インデックス
========================================================= */

#festival2023 .idxMain {
	width: 100%;
	max-width: 1400px;
	background: url(/images/festival/2023/idx_main.jpg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
	margin: 0 auto;
}
#festival2023 .idxMainWrap {
	box-sizing: border-box;
	padding: calc(505/1400 * 100%) calc(20/375 * 100%) 0 calc(20/375 * 100%);
}

#festival2023 .idxMain ul { width: 100%; max-width: 1100px; display: flex; flex-wrap: wrap; margin: 0 auto; }
#festival2023 .idxMain li {
	width: calc(340/1100 * 100%);
	background: #ffffff;
	box-shadow: 1px 1px 3px 3px rgba(0,0,0,0.2);
	box-sizing: border-box;
	position: relative;
}
#festival2023 .idxMain li:before {
	content: "";
	width: 76px;
	height: 65px;
	position: absolute;
	top: -30px; left: -10px;
}
#festival2023 .idxMain li.num01:before {
	background: url(/images/festival/2023/idx_num_01.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}
#festival2023 .idxMain li.num02:before {
	background: url(/images/festival/2023/idx_num_02.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}
#festival2023 .idxMain li.num03:before {
	background: url(/images/festival/2023/idx_num_03.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}
#festival2023 .idxMain li + li { margin: 0 0 0 calc(40/1100 * 100%); }
#festival2023 .idxMain li a {
	display: block;
	text-decoration: none;
	box-sizing: border-box;
	padding: 40px 0 25px 0;
}
#festival2023 .idxMain li img + p { font-size: 17px; line-height: 1.6; padding: 25px 20px 0 20px; }
#festival2023 .idxMain li p + p { display: table; font-size: 16px; font-weight: 700; margin: 25px auto 0; }
#festival2023 .idxMain li p + p:after {
	content: "";
	display: inline-block;
	width: 9px;
	height: 12px;
	border-top: solid 6px transparent;
	border-bottom: solid 6px transparent;
	border-left: solid 9px #000000;
	box-sizing: border-box;
	margin: 0 0 0 15px;
}
#festival2023 .idxMain li a:hover p + p { color: #d80012; }
#festival2023 .idxMain li a:hover  p + p:after { border-left: solid 9px #d80012; }

#festival2023 .idxMain .anchLink { width: 100%; max-width: 1100px; display: table; margin: 35px auto 0; }
#festival2023 .idxMain .anchLink a {
	width: 230px;
	display: block;
	float:right;
	border-radius: 20px 20px 0 0;
	background: #000000;
	color: #ffffff;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	padding: 18px 0 25px 0;
	position: relative;
}
#festival2023 .idxMain .anchLink a:after {
	content: "";
	width: 10px;
	height: 10px;
	border-right: solid 2px #ffffff;
	border-bottom: solid 2px #ffffff;
	transform: rotate(45deg);
	position: absolute;
	right: 0;
	bottom: 10px;
	left: 0;
	margin: auto;
}
#festival2023 .idxMain .anchLink a:hover { background: #666666; }



#festival2023 .idxLead { width: 100%;  box-sizing: border-box; padding: 0 calc(20/375 * 100%); margin: 100px 0 0 0; }
#festival2023 .idxLead p:nth-child(1) { font-size: 26px; font-weight: 700; text-align: center; }
#festival2023 .idxLead p:nth-child(2) { font-size: 30px; font-weight: 700; text-align: center; padding: 20px 0 0 0; }
#festival2023 .idxLead p:nth-child(2) span { color: #d80012; }
#festival2023 .idxLead p:nth-child(3) {
	display: table;
	font-size: 17px;
	line-height: 1.9;
	text-align: center;
	margin: 35px auto 0;
}



@media screen and (max-width: 900px) {
	#festival2023 .idxMain .anchLink { margin: 20px auto 0; }
	#festival2023 .idxMain .anchLink a {
		width: auto;
		display: block;
		float:none;
		border-radius: 10px;
		font-size: 16px;
		padding: 10px 0 10px 0;
	}
	#festival2023 .idxMain .anchLink a:after { content: none; }
}

@media screen and (max-width: 767px) {
	#festival2023 .idxMain { background-size: 110%; }
	#festival2023 .idxMainWrap { padding: calc(550/1400 * 100%) calc(20/375 * 100%) 0  calc(20/375 * 100%); }
	
	#festival2023 .idxMain ul { flex-direction: column; }
	#festival2023 .idxMain li { width: 100%; border: solid 1px #cccccc; border-radius: 10px; box-shadow: none; }
	#festival2023 .idxMain li + li { margin: 20px 0 0 0; }
	#festival2023 .idxMain li:before { width: 45px; top: -10px; left: 10px; }
	#festival2023 .idxMain li:after {
		content: "";
		width: 16px;
		height: 24px;
		display: block;
		border-top: solid 12px transparent;
		border-bottom: solid 12px transparent;
		border-left: solid 16px #d80012;
		box-sizing: border-box;
		position: absolute;
		top: 0;
		right: 15px;
		bottom: 0;
		margin: auto;
	}
	#festival2023 .idxMain li a { padding: 15px 0; }
	#festival2023 .idxMain li img { width:  200px; display: block; margin: 0 auto; }
	#festival2023 .idxMain li img + img,
	#festival2023 .idxMain li img + p { display: none; }
	#festival2023 .idxMain li p + p { display: none; }
	
	#festival2023 .idxLead { margin: 60px 0 0 0; }
	#festival2023 .idxLead p:nth-child(1) { font-size: 20px; }
	#festival2023 .idxLead p:nth-child(2) { font-size: 24px; padding: 10px 0 0 0; }
	#festival2023 .idxLead p:nth-child(3) { font-size: 16px; line-height: 1.6; text-align: left; margin: 20px auto 0; }
}



#festival2023 .idxEvent {
	width: 100%;
	max-width: 1400px;
	background: url(/images/festival/2023/idx_event_bg.jpg);
	background-size: 100%;
	background-position: center -140px;
	padding: 0 0 150px 0;
	margin: 35px auto 0;
}
#festival2023 .idxEvent .space {
	width: 100%;
	background: #ffffff;
	box-sizing: border-box;
	padding: calc(100/1400 * 100%) 0 0 0;
}
#festival2023 .idxEventWrap { box-sizing: border-box; padding: 0 calc(20/375 * 100%); }
#festival2023 .idxEvent section { width: 100%; max-width: 1100px; margin: 140px auto 0; position: relative; }
#festival2023 .idxEvent section.top { margin: calc(-90/1100 * 100%) auto 0; }
#festival2023 .idxEvent section h2 {
	width: calc(300/1100 * 100%);
	min-width: 130px;
	margin: 0 auto;
	position: relative;
}
#festival2023 .idxEvent section .idxEventList {
	border: solid 3px #00893e;
	border-radius: 50px;
	background: #e3efe6;
	box-sizing: border-box;
	padding: 0 17px;
	margin: -70px auto 0;
}
#festival2023 .idxEvent section .idxEventList ul {
	width: 100%;
	max-width: 980px;
	display: flex;
	flex-wrap: wrap;
	margin: 30px auto 60px; 
}
#festival2023 .idxEvent section.top .idxEventList ul { margin: 0 auto 60px; }
#festival2023 .idxEvent section .idxEventList li { width: calc(300/980 * 100%); margin: 60px 0 0 0; }
#festival2023 .idxEvent section .idxEventList li img { width: 100%; max-width: 300px; display: block; margin: 0 auto; }
#festival2023 .idxEvent section .idxEventList li img.num17 { padding: calc(29/300 * 100%) 0; }
#festival2023 .idxEvent section .idxEventList li + li { margin: 60px 0 0 calc(40/980 * 100%); }
#festival2023 .idxEvent section .idxEventList li:nth-child(3n + 1) { margin: 60px 0 0 0; }
#festival2023 .idxEvent section.top .idxEventList li { width: calc(460/980 * 100%); margin: 60px 0 0 0; }
#festival2023 .idxEvent section.top .idxEventList img { width: 100%; max-width: 460px; display: block; margin: 0 auto; }
#festival2023 .idxEvent section.top .idxEventList li:nth-child(2n) { margin: 60px 0 0 calc(60/980 * 100%); }

#festival2023 .idxEvent section .idxEventList li img:nth-child(1) { width: 30px; display: table; margin: 0 auto 10px; }
#festival2023 .idxEvent section .idxEventList dl { font-size: 16px; line-height: 1.6; margin: 20px 0 0 0; }
#festival2023 .idxEvent section .idxEventList dt {
	background: #00893e;
	color: #ffffff;
	text-align: center;
	font-weight: 700;
	box-sizing: border-box;
	padding: 0 5px;
}
#festival2023 .idxEvent section.top .idxEventList dt { font-size: 20px; }
#festival2023 .idxEvent section .idxEventList dt + dd {
	border-bottom: solid 1px #00893e;
	color: #00893e;
	text-align: center;
	font-weight: 700;
	box-sizing: border-box;
	padding: 5px 0;
}
#festival2023 .idxEvent section .idxEventList dt + dd span { display: inline-block; }
#festival2023 .idxEvent section.top .idxEventList dt + dd { font-size: 20px; }
#festival2023 .idxEvent section .idxEventList dd + dd { margin: 5px 0 0 0;}
#festival2023 .idxEvent section .idxEventList dd + dd span.dot { color: #51ae7c;}
#festival2023 .idxEvent section .idxEventList dd + dd span.block { display: inline-block;}
#festival2023 .idxEvent section .idxEventList dd + dd a { color: #0074ff;}

#festival2023 .idxEvent section .idxEventList dl + a {
	height: 32px;
	border-radius: 16px;
	display: table;
	background: #000000;
	color: #ffffff;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	padding: 8px 40px;
	margin: 20px auto 0;
	position: relative;
}
#festival2023 .idxEvent section .idxEventList dl + a:after {
	content: url(/images/festival/2023/icon_blank.gif);
	position: absolute;
	top: 8px;
	right: 15px;
}
#festival2023 .idxEvent section .idxEventList dl + a:hover { background: #666666; }
#festival2023 .idxEvent section .idxEventList a + p { font-size: 15px; text-align: center; margin: 10px 0 0 0; }

#festival2023 .idxEvent .idxMap { width: 100%; max-width: 1100px; margin: 100px auto 0; }
#festival2023 .idxEvent .idxMap p { display: table; font-size: 13px; line-height: 1.4; margin: 10px auto 0; }
#festival2023 .idxEvent .idxMap p span {
	display: inline-block;
	text-indent: -1em;
	padding: 0 0 0 1em;
	margin: 0 1em 0 0;
}



@media screen and (max-width: 767px) {
	#festival2023 .idxEvent { padding: 0 0 60px 0; margin: 20px auto 0; }
	#festival2023 .idxEvent section { margin: 60px auto 0; }
	#festival2023 .idxEvent section .idxEventList {
		border: solid 2px #00893e;
		border-radius: 25px;
		margin: -50px auto 0;
	}
	
	#festival2023 .idxEvent section .idxEventList ul { flex-direction: column; margin: 20px auto 30px; }
	#festival2023 .idxEvent section.top .idxEventList ul { margin: 20px auto 30px; }
	#festival2023 .idxEvent section .idxEventList li { width: 100%; margin: 40px 0 0 0; }
	#festival2023 .idxEvent section .idxEventList li img.num17 { padding: 0; }
	#festival2023 .idxEvent section .idxEventList li + li { margin: 40px 0 0 0; }
	#festival2023 .idxEvent section .idxEventList li:nth-child(3n + 1) { margin: 40px 0 0 0; }
	#festival2023 .idxEvent section.top .idxEventList li { width: 100%; margin: 40px 0 0 0; }
	#festival2023 .idxEvent section.top .idxEventList li:nth-child(2n) { margin: 40px 0 0 0; }
	
	#festival2023 .idxEvent section .idxEventList li img:nth-child(1) { width: 25px; }
	#festival2023 .idxEvent section .idxEventList dl { font-size: 15px; line-height: 1.6; margin: 10px 0 0 0; }
	#festival2023 .idxEvent section.top .idxEventList dt { font-size: 15px; }
	#festival2023 .idxEvent section.top .idxEventList dt + dd { font-size: 15px; }
	
	#festival2023 .idxEvent section .idxEventList dl + a {
		width: 100%;
		height: 30px;
		border-radius: 15px;
		font-size: 15px;
		margin: 15px auto 0;
	}
	#festival2023 .idxEvent section .idxEventList a + p { font-size: 14px; font-weight: 700; }
	
	#festival2023 .idxEvent .idxMap { width: 100%; max-width: 1100px; margin: 60px auto 0; }
	#festival2023 .idxEvent .idxMap p { display: table; font-size: 13px; line-height: 1.4; margin: 10px auto 0; }
}



#festival2023 .idxBottom { box-sizing: border-box; padding: 0 calc(20/375 * 100%); }
#festival2023 .idxBottom .sponsor { width: 100%; max-width: 1110px; margin: 100px auto 0; }
#festival2023 .idxBottom .outline { width: 100%; max-width: 840px; margin: 150px auto; }

#festival2023 .idxBottom h2 { font-size: 30px; font-weight: 700; text-align: center; }

#festival2023 .idxBottom .sponsor div { display: flex; flex-wrap: wrap; }
#festival2023 .idxBottom .sponsor div img { width: calc(225/1110 * 100%); margin: 40px 0 0 calc(70/1110 * 100%); }
#festival2023 .idxBottom .sponsor div img:nth-child(4n + 1) { margin: 40px 0 0 0; }
#festival2023 .idxBottom .sponsor p { font-size: 14px; text-align: right; margin: 5px 0 0 0; }

#festival2023 .idxBottom .outline table {
	width: 100%;
	border-bottom: solid 2px #cccccc;
	font-size: 16px;
	line-height: 1.6;
	margin: 70px 0 0 0;
	border-collapse: collapse;
	border-spacing: 0;
}
#festival2023 .idxBottom .outline table th {
	width: 4em;
	border-top: solid 2px #cccccc;
	font-weight: 700;
	white-space: nowrap;
	padding: 1em 2em 1em 1em;
}
#festival2023 .idxBottom .outline table td { border-top: solid 2px #cccccc; padding: 1em; }
#festival2023 .idxBottom .outline table td.event { white-space: nowrap; }
#festival2023 .idxBottom .outline table td.taR { text-align: right; padding: 0.5em 1em 2em 1em; }
#festival2023 .idxBottom .outline table td span { display: inline-block; }
#festival2023 .idxBottom .outline table tr:nth-child(3) td + td { padding: 1em 1em 0.5em 1em; }
#festival2023 .idxBottom .outline table tr:nth-child(3) td span + span { padding: 0 0 0.5em 0; }



@media screen and (max-width: 1000px) {
	#festival2023 .idxBottom .outline table { font-size: 1.6vw; }
}

@media screen and (max-width: 767px) {
	#festival2023 .idxBottom .sponsor { margin: 60px auto 0; }
	#festival2023 .idxBottom .outline { margin: 60px auto; }
	
	#festival2023 .idxBottom h2 { font-size: 24px; }
	
	#festival2023 .idxBottom .sponsor div img { width: 23.5%; margin: 20px 0 0 2%; }
	#festival2023 .idxBottom .sponsor div img:nth-child(4n + 1) { margin: 20px 0 0 0; }
	#festival2023 .idxBottom .sponsor p { font-size: 12px; }
	
	#festival2023 .idxBottom .outline table {
		border-bottom: solid 1px #cccccc;
		font-size: 14px;
		line-height: 1.5;
		margin: 20px 0 0 0;
	}
	#festival2023 .idxBottom .outline table th {
		width: auto;
		border-top: solid 1px #cccccc;
		font-weight: 700;
		padding: 0.5em 1em 0.5em 0;
	}
	#festival2023 .idxBottom .outline table td { border-top: solid 1px #cccccc; padding: 0.5em 0; }
	#festival2023 .idxBottom .outline table td.event {
		width: auto;
		display: block;
		font-weight: 700;
		padding: 0.5em 0 0 0;
	}
	#festival2023 .idxBottom .outline table td + td { display: block; border-top: none; padding: 0 0 0.5em 0; }
	#festival2023 .idxBottom .outline table tr:nth-child(3) td + td { padding: 0; }
	#festival2023 .idxBottom .outline table td.taR { text-align: right; padding: 0.5em 0 1em 0; }
}

@media screen and (max-width: 640px) {
	#festival2023 .idxBottom .sponsor div img { width: 32%; margin: 20px 0 0 2%; }
	#festival2023 .idxBottom .sponsor div img:nth-child(4n + 1) { margin: 20px 0 0 2%; }
	#festival2023 .idxBottom .sponsor div img:nth-child(3n + 1) { margin: 20px 0 0 0; }
	#festival2023 .idxBottom .sponsor p { font-size: 12px; margin: -20px 0 0 0; }
}





/* コンテンツ
========================================================= */

#festival2023 .contentsMain { width: 100%; max-width: 1400px; padding: 30px 0 0 0; margin: 0 auto; }
#festival2023 .contentsMain.dance {
	background: url(/images/festival/2023/con_main_bg_dance.jpg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}
#festival2023 .contentsMain.kaiun {
	background: url(/images/festival/2023/con_main_bg_kaiun.png);
	background-color: #fdfaf2;
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center top;
}

#festival2023 .contentsWrap { width: 100%; box-sizing: border-box; padding: 0 calc(20/375 * 100%); }

#festival2023 .contentsNav {
	width: 100%;
	max-width: 1100px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	position: relative;
}
#festival2023 .contentsNav a {
	width: calc(245/1100 * 100%);
	height: 50px;
	display: block;
	border-radius: 25px;
	background: #000000;
	color: #828282;
	font-size: 20px;
	line-height: 50px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}
#festival2023 .contentsNav a + a { margin: 0 0 0 calc(40/1100 * 100%); }
#festival2023 .contentsNav a.dance { color: #b5e500; }
#festival2023 .contentsNav a.kaiun { color: #e82b00; }
#festival2023 .contentsNav a:hover { color: #ffffff; }
#festival2023 .contentsNav a:nth-child(4) { position: relative; }
#festival2023 .contentsNav a:nth-child(4):after {
	content: url(/images/festival/2023/icon_blank.gif);
	position: absolute;
	top: -2px;
	right: calc(15/245 * 100%);
}

#festival2023 .contentsBottom { width: 100%; max-width: 1100px; margin: 110px auto 70px; }
#festival2023 .contentsBottom p { width: 100%; max-width: 450px; margin: 0 auto 90px; }



@media screen and (max-width: 1000px) {
	#festival2023 .contentsNav a { font-size: 2.0vw; }
}

@media screen and (max-width: 767px) {
	#festival2023 .contentsMain { padding: 10px 0 0 0; }
	#festival2023 .contentsMain.dance,
	#festival2023 .contentsMain.kaiun { background-size: 110%; }
	#festival2023 .contentsNav a {
		width: 49%;
		height: 30px;
		border-radius: 5px;
		font-size: 15px;
		line-height: 30px;
	}
	#festival2023 .contentsNav a + a { margin: 0 0 0 2%; }
	#festival2023 .contentsNav a:nth-child(3) { margin: 6px 0 0 0; }
	#festival2023 .contentsNav a:nth-child(4) { margin: 6px 0 0 2%; }
	#festival2023 .contentsNav a:nth-child(4):after { top: 0; }
	
	#festival2023 .contentsBottom { margin: 50px auto; }
	#festival2023 .contentsBottom p { margin: 0 auto 20px; }
}





/* POWER of DANCE
========================================================= */

#festival2023 .danceTitle {
	width: 100%;
	max-width: 1100px;
	margin: calc(80/1100 * 100%) auto 0;
	position: relative;
	z-index: 2;
}
#festival2023 .danceTitle h2 { width: calc(700/1100 * 100%); margin: 0 auto; }
#festival2023 .danceTitle > p {
	max-width: 730px;
	font-size: 18px;
	line-height: 1.8;
	text-align: center;
	letter-spacing: 0.1em;
	margin: 40px auto 0;
}
#festival2023 .danceTitle > p.close {
	color: #ed0000;
	font-size: 22px;
	line-height: 1.5;
	font-weight: 700;
}

#festival2023 .danceTitle .schedule {
	width: 100%;
	max-width: 720px;
	border-radius: 10px;
	background: #e60012;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	box-sizing: border-box;
	padding: 50px 45px 20px 45px;
	margin: 70px auto 0;
	position: relative;
}
#festival2023 .danceTitle .schedule img {
	width: 240px;
	position: absolute;
	top: -16px;
	right: 0;
	left: 0;
	margin: auto;
}
#festival2023 .danceTitle .schedule div,
#festival2023 .danceTitle .schedule a { width: 100%; display: table; }
#festival2023 .danceTitle .schedule div { background: #ee5762; }
#festival2023 .danceTitle .schedule a { color: #ffffff; text-decoration: none; position: relative; }
#festival2023 .danceTitle .schedule a:nth-child(2n) { background: #ee5762; }
/*
#festival2023 .danceTitle .schedule a:before {
	content: "";
	width: 22px;
	height: 22px;
	background: #ffffff;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	margin: auto;
}
#festival2023 .danceTitle .schedule a:after {
	content: "";
	width: 8px;
	height: 8px;
	border-right: solid 2px #e60012;
	border-bottom: solid 2px #e60012;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 26px;
	bottom: 4px;
	margin: auto;
}
*/
#festival2023 .danceTitle .schedule a:hover { background: rgba(0,0,0,0.2); }
#festival2023 .danceTitle .schedule p {
	display: table-cell;
	vertical-align: middle;
	box-sizing: border-box;
	padding: 15px 0 15px 10px;
}
#festival2023 .danceTitle .schedule p:nth-child(1) { width: 120px; }



@media screen and (max-width: 767px) {
	#festival2023 .danceTitle h2 { width: calc(700/1100 * 110%); }
	#festival2023 .danceTitle > p { font-size: 15px; line-height: 1.5; text-align: left; margin: 30px auto 0; }
	#festival2023 .danceTitle > p.close { font-size: 16px; }
	
	#festival2023 .danceTitle .schedule { font-size: 15px; padding: 30px 20px 20px 20px; margin: 50px auto 0; }
	#festival2023 .danceTitle .schedule img { width: 200px; top: -12px; }
	/*
	#festival2023 .danceTitle .schedule a:before { width: 16px; height: 16px; right: 5px; }
	#festival2023 .danceTitle .schedule a:after { width: 6px; height: 6px; right: 9px; }
	*/
	#festival2023 .danceTitle .schedule p { padding: 10px 0 10px 5px; }
	#festival2023 .danceTitle .schedule p:nth-child(1) { width: 60px; }
}



#festival2023 .danceContents {
	width: 100%;
	max-width: 1400px;
	margin: -140px auto 0;
	overflow: hidden;
	position: relative;
}
#festival2023 .danceContents .danceBG { position: absolute; top: 0; left: 0; }

#festival2023 .performer { font-size: 30px; font-weight: 700; text-align: center; padding: 220px 0 0 0; }

#festival2023 .danceSchool { width: 100%; max-width: 1100px; margin: 30px auto 0; position: relative; }
#festival2023 .danceSchool .title { position: relative; }
#festival2023 .danceSchool .title h3 {
	width: calc(490/1100 * 100%);
	max-width: 490px;
	margin: 0 0 0 calc(135/1100 * 100%);
	position: relative;
	z-index: 2;
}
#festival2023 .danceSchool .title h3 + p {
	width: calc(430/1100 * 100%);
	font-size: 18px;
	line-height: 1.7;
	font-weight: 700;
	position: absolute;
	right: calc(140/1100 * 100%);
	bottom: 10px;
	z-index: 2;
}
#festival2023 .danceSchool .title p + p {
	width: 100%;
	height: calc(135/240 * 100%);
	display: block;
	border-radius: 20px 20px 0 0;
	background: #fffccf;
	position: absolute;
	bottom: 0;
}
#festival2023 .danceSchool .list {
	border-radius: 0 0 20px 20px;
	background: #fffccf;
	padding: 70px 20px 60px 20px;
	position: relative;
}
#festival2023 .danceSchool .list ul { display: flex; flex-wrap: wrap; }
#festival2023 .danceSchool .list ul.list1 { width: 100%; max-width: 1020px; margin: 0 auto; }
#festival2023 .danceSchool .list ul.list1 li { width: calc(320/1020 * 100%); }
#festival2023 .danceSchool .list ul.list1 li + li { margin: 0 0 0 calc(30/1020 * 100%); }
#festival2023 .danceSchool .list ul.list2 { width: 100%; max-width: 700px; margin: 40px auto 0; }
#festival2023 .danceSchool .list ul.list2 li { width: calc(320/700 * 100%); }
#festival2023 .danceSchool .list ul.list2 li + li { margin: 0 0 0 calc(60/700 * 100%); }
#festival2023 .danceSchool .list li p:nth-child(1) {
	font-size: 20px;
	line-height: 1.2;
	font-weight: 700;
	text-align: center;
}
#festival2023 .danceSchool .list li p:nth-child(1) span { display: inline-block; }
#festival2023 .danceSchool .list li p:nth-child(2) {
	border-top: dashed 2px #000000;
	font-size: 17px;
	line-height: 1.8;
	padding: 15px 0 0 0;
	margin: 15px 0 0 0;
}



#festival2023 .danceWaseda { width: 100%; max-width: 1100px; margin: 90px auto 0; position: relative; }
#festival2023 .danceWaseda .title { position: relative; }
#festival2023 .danceWaseda .title h3 {
	width: calc(490/1100 * 100%);
	max-width: 490px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#festival2023 .danceWaseda .title h3 + p {
	width: 100%;
	height: calc(100/210 * 100%);
	display: block;
	border-radius: 20px 20px 0 0;
	background: #e5f1e8;
	position: absolute;
	bottom: 0;
}
#festival2023 .danceWaseda .list {
	border-radius: 0 0 20px 20px;
	background: #e5f1e8;
	padding: 10px 20px 60px 20px;
	position: relative;
}
#festival2023 .danceWaseda .list div {
	font-size: 20px;
	line-height: 1.2;
	font-weight: 700;
	text-align: center;
}
#festival2023 .danceWaseda .list ul {
	width: 100%;
	max-width: 720px;
	display: table;
	border-top: dashed 2px #000000;
	box-sizing: border-box;
	padding: 20px 15px 0 15px;
	margin: 20px auto 0;
}
#festival2023 .danceWaseda .list li:nth-child(1) { width: calc(340/690 * 100%); max-width: 340px; float: left; }
#festival2023 .danceWaseda .list li + li {
	width: calc(300/690 * 100%);
	float: right;
	font-size: 17px;
	line-height: 1.8;
}



#festival2023 .danceDleague { width: 100%; max-width: 1100px; margin: 90px auto 0; position: relative; }
#festival2023 .danceDleague .title { position: relative; }
#festival2023 .danceDleague .title h3 {
	width: calc(490/1100 * 100%);
	max-width: 490px;
	margin: 0 0 0 calc(-65/1100 * 100%);
	position: relative;
	z-index: 2;
}
#festival2023 .danceDleague .title h3 + p {
	width: calc(500/1100 * 100%);
	color: #008ccf;
	font-size: 18px;
	line-height: 1.7;
	font-weight: 700;
	position: absolute;
	right: calc(190/1100 * 100%);
	bottom: calc(50/295 * 100%);
	z-index: 2;
}
#festival2023 .danceDleague .title p + p {
	width: 100%;
	height: calc(225/295 * 100%);
	display: block;
	border-radius: 20px 20px 0 0;
	background: #e5f4fa;
	position: absolute;
	bottom: 0;
}
#festival2023 .danceDleague .list {
	border-radius: 0 0 20px 20px;
	background: #e5f4fa;
	padding: 0 20px 60px 20px;
	position: relative;
}
#festival2023 .danceDleague .list ul { width: 100%; max-width: 720px; margin: 0 auto 0; }
#festival2023 .danceDleague .list ul + ul { margin: 60px auto 0; }
#festival2023 .danceDleague .list dl { line-height: 1.2; text-align: center; }
#festival2023 .danceDleague .list dt { font-size: 20px; font-weight: 700; }
#festival2023 .danceDleague .list dd { font-size: 14px; padding: 10px 0 0 0; }
#festival2023 .danceDleague .list li + li {
	width: 100%;
	display: table;
	border-top: dashed 2px #000000;
	box-sizing: border-box;
	padding: 30px 0 0 0;
	margin: 15px auto 0;
}
#festival2023 .danceDleague .list li p:nth-child(1) { width: calc(340/720 * 100%); max-width: 340px; float: left; }
#festival2023 .danceDleague .list li p:nth-child(2) {
	width: calc(330/720 * 100%);
	float: right;
	font-size: 18px;
	line-height: 1.7;
}



#festival2023 .danceKitty { width: 100%; max-width: 1100px; margin: 90px auto 0; position: relative; }
#festival2023 .danceKitty .title { position: relative; }
#festival2023 .danceKitty .title h3 {
	width: calc(490/1100 * 100%);
	max-width: 490px;
	position: relative;
	z-index: 2;
}
#festival2023 .danceKitty .title h3 + p {
	width: calc(450/1100 * 100%);
	color: #ce0074;
	font-size: 18px;
	line-height: 1.7;
	font-weight: 700;
	position: absolute;
	right: calc(120/1100 * 100%);
	bottom: 0;
	z-index: 2;
}
#festival2023 .danceKitty .title p + p {
	width: 100%;
	height: calc(170/265 * 100%);
	display: block;
	border-radius: 20px 20px 0 0;
	background: #ffc2eb;
	position: absolute;
	bottom: 0;
}
#festival2023 .danceKitty .title p span { display: inline-block; }
#festival2023 .danceKitty .list {
	border-radius: 0 0 20px 20px;
	background: #ffc2eb;
	padding: 50px 20px 60px 20px;
}
#festival2023 .danceKitty .list ul { width: 100%; max-width: 800px; display: table; margin: 0 auto; }
#festival2023 .danceKitty .list li:nth-child(1) { width: calc(370/800 * 100%); max-width: 370px; float: left; }
/*
#festival2023 .danceKitty .list li:nth-child(2) { width: calc(315/800 * 100%); float: right; }
*/
#festival2023 .danceKitty .list li:nth-child(2) { width: calc(390/800 * 100%); float: right; }
#festival2023 .danceKitty .list li:nth-child(2) img {
	width: calc(315/390 * 100%);
	display: table;
	margin: 30px auto 0;
}

/*
#festival2023 .danceKitty .list li img + p { font-size: 18px; line-height: 1.7; margin: 30px 0 0 0; }
#festival2023 .danceKitty .list li p + p {
	font-size: 15px;
	line-height: 1.5;
	text-indent: -1em;
	padding: 0 0 0 1em;
	margin: 40px 0 0 0;
}
*/
#festival2023 .danceKitty .list li img + p {
	border: solid 2px #ce0074;
	font-size: 18px;
	line-height: 1.7;
	font-weight: 700;
	box-sizing: border-box;
	padding: 20px;
	margin: 40px 0 0 0;
}
#festival2023 .danceKitty .list div {
	width: 100%;
	max-width: 800px;
	background: rgba(255,255,255,0.5);
	font-size: 16px;
	line-height: 1.7;
	box-sizing: border-box;
	padding: 20px;
	margin: 40px auto 0;
}
#festival2023 .danceKitty .list div dl + dl { padding: 1em 0 0 0; }
#festival2023 .danceKitty .list div dl dt { font-weight: 700; }
#festival2023 .danceKitty .list div dl dd { padding: 0 0 0 1em; }
#festival2023 .danceKitty .list div dl dd span { display: inline-block; }
#festival2023 .danceKitty .list div p { text-indent: -1em; padding: 0 0 0 1em; }
#festival2023 .danceKitty .list div dl + p {
	border-top: solid 1px #ffc2eb;
	text-indent: -1em;
	padding: 1em 0 0 1em;
	margin: 1em 0 0 0;
}



@media screen and (max-width: 1000px) {
	#festival2023 .danceSchool .title h3 + p { font-size: 1.8vw; }
	#festival2023 .danceDleague .title h3 + p { font-size: 1.8vw; }
	#festival2023 .danceKitty .title h3 + p { font-size: 1.8vw; }
}

@media screen and (max-width: 767px) {
	#festival2023 .danceContents { margin: 0 auto; }
	#festival2023 .danceContents .danceBG { display: none; }
	#festival2023 .performer { font-size: 24px; font-weight: 700; text-align: center; padding: 70px 0 0 0; }

	#festival2023 .danceSchool { margin: 20px auto 0; }
	#festival2023 .danceSchool .title h3 { width: 100%; max-width: 200px; margin: 0 auto; }
	#festival2023 .danceSchool .title h3 + p {
		width: 100%;
		font-size: 16px;
		line-height: 1.5;
		box-sizing: border-box;
		padding: 10px 20px 0 20px;
		position: relative;
		right: 0;
		bottom: 0;
	}
	#festival2023 .danceSchool .title p + p { width: 100%; height: 70%; border-radius: 10px 10px 0 0; }
	#festival2023 .danceSchool .list { border-radius: 0 0 10px 10px; padding: 40px 20px; }
	#festival2023 .danceSchool .list ul {  flex-direction: column; }
	#festival2023 .danceSchool .list ul.list1 li { width: 100%; }
	#festival2023 .danceSchool .list ul.list1 li + li { margin: 30px 0 0 0; }
	#festival2023 .danceSchool .list ul.list2 { margin: 30px auto 0; }
	#festival2023 .danceSchool .list ul.list2 li { width: 100%; }
	#festival2023 .danceSchool .list ul.list2 li + li { margin: 30px 0 0 0; }
	#festival2023 .danceSchool .list li p:nth-child(1) { font-size: 16px; }
	#festival2023 .danceSchool .list li p:nth-child(1) br { display: none; }
	#festival2023 .danceSchool .list li p:nth-child(2) { font-size: 15px; line-height: 1.5; }
	
	#festival2023 .danceWaseda { margin: 50px auto 0; }
	#festival2023 .danceWaseda .title h3 { width: 100%; max-width: 200px; margin: 0 auto; }
	#festival2023 .danceWaseda .title h3 + p { width: 100%; height: 60%; border-radius: 10px 10px 0 0; }
	#festival2023 .danceWaseda .list {border-radius: 0 0 10px 10px; padding: 20px 20px; }
	#festival2023 .danceWaseda .list div {font-size: 16px; }
	#festival2023 .danceWaseda .list ul { padding: 20px 0 0 0; margin: 15px auto 0; }
	#festival2023 .danceWaseda .list li:nth-child(1) { width: 100%; float: none; margin: 0 auto; }
	#festival2023 .danceWaseda .list li + li {
		width: 100%;
		float: none;
		font-size: 15px;
		line-height: 1.5;
		padding: 15px 0 0 0;
	}
	
	#festival2023 .danceDleague { margin: 50px auto 0; }
	#festival2023 .danceDleague .title h3 { width: 100%; max-width: 200px; margin: 0 auto; }
	#festival2023 .danceDleague .title h3 + p {
		width: 100%;
		font-size: 16px;
		line-height: 1.5;
		box-sizing: border-box;
		padding: 10px 20px 0 20px;
		position: relative;
		right: 0;
		bottom: 0;
	}
	#festival2023 .danceDleague .title p + p { width: 100%; height: 85%; border-radius: 10px 10px 0 0; }
	#festival2023 .danceDleague .list { border-radius: 0 0 10px 10px; padding: 40px 20px; }
	#festival2023 .danceDleague .list ul + ul { margin: 30px auto 0; }
	#festival2023 .danceDleague .list dt { font-size: 16px; font-weight: 700; }
	#festival2023 .danceDleague .list dd { font-size: 13px; padding: 5px 0 0 0; }
	#festival2023 .danceDleague .list li + li { padding: 15px 0 0 0; margin: 15px auto 0; }
	#festival2023 .danceDleague .list li p:nth-child(1) { width: 100%; float: none; margin: 0 auto;}
	#festival2023 .danceDleague .list li p:nth-child(2) {
		width: 100%;
		float: none;
		font-size: 15px;
		line-height: 1.5;
		padding: 15px 0 0 0;
	}
	
	#festival2023 .danceKitty { margin: 50px auto 0; }
	#festival2023 .danceKitty .title h3 {width: 100%; max-width: 200px; margin: 0 auto; }
	#festival2023 .danceKitty .title h3 + p {
		width: 100%;
		font-size: 16px;
		line-height: 1.5;
		box-sizing: border-box;
		padding: 10px 20px 0 20px;
		position: relative;
		right: 0;
		bottom: 0;
	}
	#festival2023 .danceKitty .title p + p { width: 100%; height: 75%; border-radius: 10px 10px 0 0; }
	#festival2023 .danceKitty .list { border-radius: 0 0 10px 10px; padding: 0 20px 40px; }
	#festival2023 .danceKitty .list li:nth-child(1) { width: 240px; float: none; display: table; margin: 0; }
	#festival2023 .danceKitty .list li:nth-child(2) { width: 100%; float: none; }
	#festival2023 .danceKitty .list li:nth-child(2) img { width: 150px; margin: -30px 0 0 auto; }
	/*
	#festival2023 .danceKitty .list li img + p { font-size: 15px; line-height: 1.5; margin: 15px 0 0 0; }
	#festival2023 .danceKitty .list li p + p { font-size: 13px; margin: 20px 0 0 0; }
	*/
	#festival2023 .danceKitty .list li img + p {
		font-size: 15px;
		line-height: 1.5;
		padding: 10px;
		margin: 15px 0 0 0;
	}
	#festival2023 .danceKitty .list div { font-size: 14px; line-height: 1.5; padding: 10px; margin: 20px auto 0; }
}





/* 開運周遊ラリー
========================================================= */

#festival2023 .kaiunTitle {
	width: 100%;
	max-width: 1100px;
	box-sizing: border-box;
	margin: 30px auto 0;
}
#festival2023 .kaiunTitle .top {
	height: 50px;
	border-top: solid 3px #e82b00;
	background: #ffffff;
	box-sizing: border-box;
	margin: 0 50px;
	position: relative;
}
#festival2023 .kaiunTitle .top:before {
	content: "";
	width: 50px;
	height: 50px;
	background: url(/images/festival/2023/kaiun_title_lt.png);
	background-size: cover;
	position: absolute;
	top: -3px;
	left: -50px;
}
#festival2023 .kaiunTitle .top:after {
	content: "";
	width: 50px;
	height: 50px;
	background: url(/images/festival/2023/kaiun_title_rt.png);
	background-size: cover;
	position: absolute;
	top: -3px;
	right: -50px;
}
#festival2023 .kaiunTitle .bottom {
	height: 50px;
	border-bottom: solid 3px #e82b00;
	background: #ffffff;
	box-sizing: border-box;
	margin: 0 50px;
	position: relative;
}
#festival2023 .kaiunTitle .bottom:before {
	content: "";
	width: 50px;
	height: 50px;
	background: url(/images/festival/2023/kaiun_title_lb.png);
	background-size: cover;
	position: absolute;
	bottom: -3px;
	left: -50px;
}
#festival2023 .kaiunTitle .bottom:after {
	content: "";
	width: 50px;
	height: 50px;
	background: url(/images/festival/2023/kaiun_title_rb.png);
	background-size: cover;
	position: absolute;
	bottom: -3px;
	right: -50px;
}
#festival2023 .kaiunTitle .middle {
	border-right: solid 3px #e82b00;
	border-left: solid 3px #e82b00;
	background: #ffffff;
	box-sizing: border-box;
	padding: 0 17px;
}
#festival2023 .kaiunTitle .middle h2 { width: 100%; max-width: 840px; margin: 0 auto; }
#festival2023 .kaiunTitle .middle > p {
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: 0.1em;
	margin: 40px 0 0 0;
	text-align: center;
}
#festival2023 .kaiunTitle .middle > p.close {
	color: #ed0000;
	font-size: 22px;
	line-height: 1.5;
	font-weight: 700;
}
#festival2023 .kaiunTitle .middle .stampRally {
	width: 100%;
	padding: calc(100/990 * 100%) 0 0 0;
	position: relative;
}
#festival2023 .kaiunTitle .middle .stampRally p {
	width: calc(610/990 * 100%);
	position: absolute;
	top: 0;
	right: calc(55/990 * 100%);
	z-index: 2;
}
#festival2023 .kaiunTitle .middle .stampRally ul {
	width: 100%;
	max-width: 990px;
	display: flex;
	flex-wrap: wrap;
	border-radius: 30px;
	background: #fad8d1;
	box-sizing: border-box;
	padding: 60px 30px;
	margin: 0 auto;
}
#festival2023 .kaiunTitle .middle .stampRally li { width: calc(270/930 * 100%); position: relative; }
#festival2023 .kaiunTitle .middle .stampRally li + li { padding: 0 0 0 calc(40/930 * 100%); }
#festival2023 .kaiunTitle .middle .stampRally li:nth-child(3) { margin: 0 0 0 calc(-70/930 * 100%); }
#festival2023 .kaiunTitle .middle .stampRally li:nth-child(3) ~ li { margin: 30px 0 0 0; }
#festival2023 .kaiunTitle .middle .stampRally li + li:before {
	content: "";
	width: calc(25/310 * 100%);
	height: 100%;
	display: block;
	background: url(/images/festival/2023/kaiun_title_img_arrow.gif);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: top 55% left 0;
	position: absolute;
	top: 0;
	left: 0;
}



#festival2023 .kaiunMap { padding: 50px 0; }
#festival2023 .kaiunMap img { width: 100%; max-width: 700px; display: block; margin: 0 auto; }



#festival2023 .kaiunArea { width: 100%; max-width: 1400px; box-sizing: border-box; padding: 80px 0; margin: 0 auto; }
#festival2023 .kaiunArea.areaA { background: #f7edce; }
#festival2023 .kaiunArea.areaB { background: #f6c8ce; }

#festival2023 .kaiunArea h3 { width: 100%; max-width: 365px; margin: 0 auto; }
#festival2023 .kaiunArea section { margin: 40px auto 0; }
#festival2023 .kaiunArea section + section { margin: 70px auto 0; }
#festival2023 .kaiunArea h4 { width: 57px; margin: 0 auto; }
#festival2023 .kaiunArea ul {
	width: 100%;
	max-width: 1004px;
	display: flex;
	flex-wrap: wrap;
	margin: 15px auto 0;
}
#festival2023 .kaiunArea li:nth-child(1) { width: calc(304/1004 * 100%); max-width: 304px; }
#festival2023 .kaiunArea li:nth-child(2) {
	width: calc(680/1004 * 100%);
	border-top: solid 2px;
	border-bottom: solid 2px; 
	padding: 0 0 60px 0;
	margin: 0 0 0 calc(20/1004 * 100%);
	position: relative;
}
#festival2023 .kaiunArea section:last-child li:nth-child(2) { padding: 0 0 90px 0; }
#festival2023 .kaiunArea.areaA li:nth-child(2) { border-color: #dfba41; }
#festival2023 .kaiunArea.areaB li:nth-child(2) { border-color: #e82b00; }
#festival2023 .kaiunArea dt { font-size: 30px; padding: 20px 10px 15px 10px; }
#festival2023 .kaiunArea dt span { display: block; font-size: 15px; padding: 10px 0 0 0; }
#festival2023 .kaiunArea dt + dd {
	border-top: solid 2px;
	font-size: 17px;
	line-height: 1.6;
	padding: 15px 10px 0 10px;
}
#festival2023 .kaiunArea.areaA dt + dd { border-color: #dfba41; }
#festival2023 .kaiunArea.areaB dt + dd { border-color: #e82b00; }
#festival2023 .kaiunArea li p {
	font-size: 18px;
	line-height: 30px;
	padding: 15px 10px;
	position: absolute;
	bottom: 0;
	left: 0;
}
#festival2023 .kaiunArea li p span:nth-child(1) {
	display: inline-block;
	border-radius: 15px;
	padding: 0 1.5em;
	margin: 0 1em 0 0;
}
#festival2023 .kaiunArea.areaA li p span:nth-child(1) { background: #dfba41; }
#festival2023 .kaiunArea.areaB li p span:nth-child(1) { background: #e82b00; color: #ffffff; }
#festival2023 .kaiunArea.areaB li p span:nth-child(2) { float: right; font-size: 13px; padding: 0 15px; }



@media screen and (max-width: 1000px) {
	#festival2023 .kaiunTitle h2 + p { font-size: 1.8vw; }
}

@media screen and (max-width: 767px) {
	#festival2023 .kaiunTitle .top { height: 30px; border-top: solid 2px #e82b00; margin: 0 30px; }
	#festival2023 .kaiunTitle .top:before { width: 30px; height: 30px; top: -2px; left: -30px; }
	#festival2023 .kaiunTitle .top:after { width: 30px; height: 30px; top: -2px; right: -30px; }
	#festival2023 .kaiunTitle .bottom {height: 30px; border-bottom: solid 2px #e82b00; margin: 0 30px; }
	#festival2023 .kaiunTitle .bottom:before { width: 30px; height: 30px; bottom: -2px; left: -30px; }
	#festival2023 .kaiunTitle .bottom:after { width: 30px; height: 30px; bottom: -2px; right: -30px; }
	#festival2023 .kaiunTitle .middle {
		border-right: solid 2px #e82b00;
		border-left: solid 2px #e82b00;
		padding: 0 18px;
	}
	#festival2023 .kaiunTitle .middle > p {
		font-size: 15px;
		line-height: 1.5;
		margin: 30px 0 0 0;
		text-align: left;
	}
	#festival2023 .kaiunTitle .middle > p + p br { display: none; }
	#festival2023 .kaiunTitle .middle > p.close { font-size: 16px; }
	
	#festival2023 .kaiunTitle .middle .stampRally {
		width: 100%;
		padding: calc(165/990 * 100%) 0 0 0;
		margin: 20px 0 0 0;
		position: relative;
	}
	#festival2023 .kaiunTitle .middle .stampRally p {
		width: 100%;
		top: 0;
		left: 0;
	}
	#festival2023 .kaiunTitle .middle .stampRally ul {
		flex-direction: column;
		border-radius: 0 15px 15px 15px;
		padding: 50px 20px 20px 20px;
	}
	#festival2023 .kaiunTitle .middle .stampRally li {
		width: 100%;
		max-width: 270px;
		position: relative;
		margin: 0 auto;
	}
	#festival2023 .kaiunTitle .middle .stampRally li + li { padding: 20px 0 0 0; }
	#festival2023 .kaiunTitle .middle .stampRally li:nth-child(3) { margin: 0 auto; }
	#festival2023 .kaiunTitle .middle .stampRally li:nth-child(3) ~ li { margin: 0 auto; }
	#festival2023 .kaiunTitle .middle .stampRally li + li:before {
		content: "";
		width: 15px;
		height: 100%;
		background-repeat: no-repeat;
		background-position: top 45% left 0;
		transform: rotate(90deg);
		position: absolute;
		top: -35px;
		left: 0;
	}
	#festival2023 .kaiunArea { padding: 30px 0; }
	#festival2023 .kaiunArea h3 { max-width: 240px; }
	#festival2023 .kaiunArea section { margin: 30px auto 0; }
	#festival2023 .kaiunArea section + section { margin: 50px auto 0; }
	#festival2023 .kaiunArea h4 { width: 40px; }
	#festival2023 .kaiunArea ul { flex-direction: column; }
	#festival2023 .kaiunArea li:nth-child(1) { width: 100%; max-width: 200px; margin: 0 auto; }
	#festival2023 .kaiunArea li:nth-child(2) {
		width: 100%;
		padding: 0;
		margin: 15px 0 0 0;
	}
	#festival2023 .kaiunArea section:last-child li:nth-child(2) { padding: 0; }
	#festival2023 .kaiunArea dt { font-size: 24px; text-align: center; padding: 15px 10px 10px 10px; }
	#festival2023 .kaiunArea dt span { display: block; font-size: 13px; padding: 10px 0 0 0; }
	#festival2023 .kaiunArea dt + dd { font-size: 15px; padding: 10px 0 0 0; }
	#festival2023 .kaiunArea li p {
		font-size: 16px;
		line-height: 24px;
		padding: 15px 0;
		position: static;
	}
	#festival2023 .kaiunArea li p span:nth-child(1) { border-radius: 12px; }
	#festival2023 .kaiunArea.areaB li p span:nth-child(2) {
		float: none;
		display: block;
		font-size: 12px;
		line-height: 1.5;
		text-indent: -1em;
		padding: 10px 0 0 1em;
	}
}


