/*コンテンツ****************************/

/* プリセットスタイル
-------------------------------------------------------------------------------------------------- */

img { width: 100%; height: auto; vertical-align: top; }

@media screen and (max-width: 1000px) {
	a.anchorMargin { padding-top: 100px; margin-top: -100px; }
}

@media screen and (max-width: 767px) {
	a.anchorMargin { padding-top: 70px; margin-top: -70px; }
}





/* インデックス
-------------------------------------------------------------------------------------------------- */

#festivalMain {
	background: url(/images/festival/2019/festival_main_bg.png) center top;
	padding-bottom: 90px;
}
#festivalMain .mainImg1 { max-width: 1100px; margin: 0 auto; }
#festivalMain .mainImg2 { display: none; }

#festivalMain .sns_icon_area { max-width: 1100px; text-align: right; margin: 0 auto; }

#festivalMain .festivalNav { width: 100%; max-width: 1100px; margin: 30px auto 0; }
#festivalMain .festivalNav h3 {
	width: 480px;
	background: #868674;
	border-radius: 10px 10px 0 0;
	color: #ffffff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.1em;
	padding: 7px 0 4px;
	margin: 0 auto;
}
#festivalMain .festivalNav h3 span { color: #ffe200; }
#festivalMain .festivalNav .navInner {
	background: #ffffff;
	border-top: solid 3px #868674;
	border-bottom: solid 3px #868674;
}
#festivalMain .festivalNav .navInner ul {
	width: 100%;
	max-width: 1000px;
	display: table;
	overflow: hidden;
	margin: 20px auto;
}
#festivalMain .festivalNav .navInner li { width: 29%; max-width: 290px; float: left; }
#festivalMain .festivalNav .navInner li + li { margin-left: 6.5%; }




#festivalMain .festivalSubNav { width: 100%; max-width: 1100px; margin: 100px auto 0; }
#festivalMain .festivalSubNav h3 {
	width: 480px;
	background: #868674;
	border-radius: 10px;
	color: #ffffff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.1em;
	padding: 7px 0 4px;
	margin: 0 auto;
}

#festivalMain .festivalSubNav .navInner { background: #ffffff; padding: 20px 0 0; }

#festivalMain .festivalSubNav .navInner table { max-width: 1000px; background: #ffffff; margin: 0 auto; }
#festivalMain .festivalSubNav .navInner table th {
	border: solid 1px #cccccc;
	font-size: 18px;
	line-height: 28px;
	font-weight: bold;
	padding: 3px 1em 0 1em;
}
#festivalMain .festivalSubNav .navInner table td { padding: 10px 0 30px 0; }
#festivalMain .festivalSubNav .navInner table tr:last-child td { padding-bottom: 0; }
#festivalMain .festivalSubNav .navInner table td:first-child { width: 200px; }
#festivalMain .festivalSubNav .navInner table td + td { padding-left: 20px; }
#festivalMain .festivalSubNav .navInner table td div { font-weight: bold; padding-bottom: 10px; }
#festivalMain .festivalSubNav .navInner table td p { font-size: 13px; line-height: 18px; }
#festivalMain .festivalSubNav .navInner table td dl + p { padding-top: 10px; }
#festivalMain .festivalSubNav .navInner table td dl {
	display: table;
	font-size: 13px;
	line-height: 18px;
}
#festivalMain .festivalSubNav .navInner table td dt,
#festivalMain .festivalSubNav .navInner table td dd { display: table-cell; vertical-align: top; }
#festivalMain .festivalSubNav .navInner table td dt { white-space: nowrap; }
#festivalMain .festivalSubNav .navInner table td img + p { font-size: 10px; line-height: 13px; text-align: center; padding-top: 0.5em; }
#festivalMain .festivalSubNav .navInner table td p.flR { float: right; margin-left: 10px; }
#festivalMain .festivalSubNav .navInner table td p.flR img { width: 90px; border: solid 1px #cccccc; }
#festivalMain .festivalSubNav .navInner table td p.flR.w140 img { width: 140px; border: none; }



#festivalMain .festivalSubNav .navInner ul {
	width: 26.4%;
	max-width: 290px;
	background: #ffffff;
	margin: 0 auto;
}

#festivalMain .festivalInfo { width: 100%; max-width: 1000px; margin: 120px auto 0; }
#festivalMain .festivalInfo ul { width: 100%; display: table; }
#festivalMain .festivalInfo li { display: table-cell; vertical-align: top; font-size: 16px; line-height: 24px; }
#festivalMain .festivalInfo li:first-child {
	width: 145px;
	background: #00918c;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	padding: 10px 0;
}
#festivalMain .festivalInfo li + li { background: #e5e7e7; padding: 10px 30px; }
#festivalMain .festivalInfo dl + dl { border-top: solid 1px #cccccc; padding-top: 10px; margin-top: 10px; }
#festivalMain .festivalInfo dt,
#festivalMain .festivalInfo dd { display: table-cell; vertical-align: top; }
#festivalMain .festivalInfo dt { width: 110px; }

#festivalBanner { width: 100%; background: #e9f1ff; padding: 60px 0 95px; }
#festivalBanner .bannerTitle {
	font-size: 32px;
	line-height: 42px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 40px;
}
#festivalBanner .bannerAside { max-width: 1035px; margin: 0 auto 5px; text-align: right; padding-right: 1.65%; }
#festivalBanner .bannerList { width: 1055px; font-size: 0; margin: 0 auto; }
#festivalBanner .bannerList a { display: inline-block; width: 18.00%; margin-top: 10px; margin-left: 1.65%; }

#festivalOutline { width: 100%; margin-top: 100px; }
#festivalOutline.mb { margin-bottom: 80px; }
#festivalOutline .outlineTitle {
	font-size: 32px;
	line-height: 42px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 50px;
}
#festivalOutline .outlineList { width: 100%; max-width: 1020px; font-size: 15px; line-height: 24px; margin: 0 auto; }
#festivalOutline .outlineList tr { border-top: solid 1px #cccccc; }
#festivalOutline .outlineList tr:last-child { border-bottom: solid 1px #cccccc; }
#festivalOutline .outlineList tr th { width: 17%; text-align: left; vertical-align: top; padding: 26px 0; }
#festivalOutline .outlineList tr td { width: 83%; vertical-align: top; padding: 26px 0; }
#festivalOutline .outlineList tr td ul { display: table-row; }
#festivalOutline .outlineList tr td li { display: table-cell; }
#festivalOutline .outlineList tr td li:first-child { white-space: nowrap; }
#festivalOutline .outlineList tr td li span { display: inline-block; }

#festivalMovie { width: 100%; background: #f0f0f0; padding: 40px 0 75px; margin-top: 110px; }
#danceList #festivalMovie { background: none; padding: 0; }
#festivalMovie .movInner { max-width: 920px; margin: 0 auto; }
#danceList #festivalMovie .movInner { max-width: 600px; }
#festivalMovie h3.movTitle { font-size: 24px; line-height: 30px; text-align: center; padding-bottom: 15px; }
#festivalMovie h3.movTitle br { display: none; }

#festivalSection { width: 100%; }
#festivalSection .widthMap { width: calc(100% - 2px); }
#festivalSection .accessTitle { font-size: 36px; line-height: 46px; text-align: center; margin: 100px 0 30px; }
#festivalSection .accessTitle span { display: inline-block; background: url(/images/festival_map_icon.svg) no-repeat center top; background-size: 54px 60px; padding-top: 77px; }



#festivalThatDay { width: 100%; max-width: 1000px; background: #ffffff; padding-top: 120px; margin: 0 auto; }
#festivalThatDay h3 { font-size: 32px; line-height: 42px; font-weight: bold; text-align: center; }
#festivalThatDay h3 span { display: inline-block; background: url(/images/festival_photo_icon.svg) no-repeat center top; background-size: 54px 47px; padding-top: 64px; }
#festivalThatDay h3 + p { font-size: 16px; line-height: 32px; text-align: center; margin-top: 30px; }
#festivalThatDay h4 { border-bottom: solid 2px #65a9dc; color: #2c4197; font-size: 20px; line-height: 30px; font-weight: bold; padding-bottom: 5px; margin-top: 60px; }
#festivalThatDay h4 + p { font-size: 16px; line-height: 24px; margin-top: 20px; }
#festivalThatDay h5 { font-size: 16px; line-height: 20px; font-weight: bold; margin-top: 30px; }

#festivalThatDay div.dayList { width: calc(100% + 20px); overflow: hidden; font-size: 0; margin-top: -10px; }
#festivalThatDay div.dayList dl { display: inline-block; width: 25%; max-width: 270px; vertical-align: top; box-sizing: border-box; padding-right: 20px; margin-top: 20px; }
#festivalThatDay div.dayList dd { font-size: 13px; line-height: 20px; padding-top: 10px; }
#festivalThatDay div.dayList + p { display: block; font-size: 13px; line-height: 20px; }
#festivalThatDay p + div.dayList { margin-top: 0; }



@media screen and (max-width: 1200px) {
	#festivalMain .sns_icon_area { width: 95%; }
	#festivalMain .festivalNav { width: 95%; }
	#festivalMain .festivalSubNav { width: 95%; }
	#festivalMain .festivalInfo { width: 95%; }
	#festivalOutline .outlineList { width: 95%; }
	
	#festivalThatDay { width: 95%; }
}

@media screen and (max-width: 1055px) {
	#festivalBanner .bannerList { width: 100%; }
}

@media screen and (max-width: 992px) {
	#festivalMovie .movInner { width: 90%; }
}

@media screen and (min-width: 769px) { 
#festivalMain .navInner li a:hover { opacity: 0.5; -webkit-transition: all 0.2s; transition: all 0.2s; }
}

@media screen and (max-width: 768px) { 
	#festivalMain {
		background: url(/images/festival/2019/festival_main_bg.png) center bottom;
		background-size: contain;
	}
}
@media screen and (max-width: 767px) {
	#festivalMain {
		background: url(/images/festival/2019/festival_main_bg.png) center top;
		background-size: contain;
		padding-bottom: 60px;
	}
	#festivalMain .mainImg1 { display: none; }
	#festivalMain .mainImg2 { display: block; }
	
	#festivalMain .sns_icon_area { text-align: center; }
	
	#festivalMain .festivalNav { margin: 30px auto 0; }
	#festivalMain .festivalNav h3 { width: 100%; border-radius: 0; font-size: 16px; text-align: center; }
	#festivalMain .festivalNav .navInner { background: none; border-bottom: none; }
	#festivalMain .festivalNav .navInner li {
		float: none;
		display: table;
		width: 100%;
		max-width: 250px;
		margin: 0 auto;
		padding: 20px 0;
	}
	#festivalMain .festivalNav .navInner li + li { margin: 0 auto; }
	
	#festivalMain .festivalSubNav { margin: 60px auto 0; }
	#festivalMain .festivalSubNav h3 { width: 100%; border-radius: 0; font-size: 16px; text-align: center; }
	#festivalMain .festivalSubNav .navInner table th { font-size: 16px; }
	#festivalMain .festivalSubNav .navInner table td:first-child { display: table; width: 200px; margin: 20px auto; }
	#festivalMain .festivalSubNav .navInner table td + td { display: block; padding: 10px 0 30px 0; }
	#festivalMain .festivalSubNav .navInner table tr:last-child td + td { padding-bottom: 0; }
	#festivalMain .festivalSubNav .navInner table td p.flR { float: none; display: table; margin: 10px auto; }
	#festivalMain .festivalSubNav .navInner ul { width: 100%; max-width: 250px; }
	
	#festivalMain .festivalInfo { margin: 60px auto 0; }
	#festivalMain .festivalInfo li { display: block; font-size: 14px; line-height: 24px; }
	#festivalMain .festivalInfo li:first-child { width: 100%; padding: 10px 0; }
	#festivalMain .festivalInfo li + li { background: #e5e7e7; padding: 10px 15px; }
	#festivalMain .festivalInfo dt,
	#festivalMain .festivalInfo dd { display: block; }
	#festivalMain .festivalInfo dt { font-weight: bold; }
	
	#festivalThatDay { padding-top: 80px; margin: 0 auto; }
	#festivalThatDay h3 { font-size: 26px; line-height: 36px; }
	#festivalThatDay h3 span { background-position: left top; background-size: 36px 31px; padding-top: 1px; padding-bottom: 14px; padding-left: 50px; }
	#festivalThatDay h3 + p { font-size: 14px; line-height: 28px; text-align: left; margin-top: 15px; }
	#festivalThatDay h3 + p br { display: none; }
	#festivalThatDay div.dayList { width: 100%; }
	#festivalThatDay div.dayList dl { width: 50%; max-width: 370px; }
	#festivalThatDay div.dayList dl:nth-child(2n+1) { padding: 0 10px 0 0; }
	#festivalThatDay div.dayList dl:nth-child(2n) { padding: 0 0 0 10px; }
	#festivalThatDay h4 { font-size: 18px; line-height: 26px; margin-top: 30px; }
	#festivalThatDay h4 + p { font-size: 14px; line-height: 24px; padding: 0; }
	#festivalThatDay h5 { font-size: 15px; line-height: 18px; padding:0; }
	
	#festivalBanner { padding: 30px 0 30px; }
	#festivalBanner .bannerTitle { font-size: 26px; line-height: 36px; padding-bottom: 20px; }
	#festivalBanner .bannerList a { width: 31.13%; }
	
	#festivalOutline { margin-top: 60px; }
	#festivalOutline .outlineTitle { font-size: 26px; line-height: 36px; padding-bottom: 20px; }
	#festivalOutline .outlineList tr th { display: block; width: 100%; font-weight: bold; padding: 20px 0 5px; }
	#festivalOutline .outlineList tr td { display: block; width: 100%; padding: 0 0 20px; }
	#festivalOutline .outlineList tr td .listPoint { margin-top: 5px; }
	#festivalMovie { padding: 20px 0 25px; }
	#festivalMovie h3.movTitle { font-size: 20px; line-height: 30px; }
	
	#festivalSection .accessTitle { font-size: 26px; line-height: 40px; margin: 70px 0 20px; }
	#festivalSection .accessTitle span {
		background-position: left top;
		background-size: 36px 40px;
		padding-top: 10px;
		padding-bottom: 5px;
		padding-left: 50px;
	}
}

@media screen and (max-width: 640px) {
	#festivalMovie h3.movTitle { font-size: 18px; line-height: 24px; text-align: center; padding-bottom: 10px; }
	#festivalMovie h3.movTitle span { display: none; }
	#festivalMovie h3.movTitle br { display: inline; }
	#festivalBanner .bannerAside { font-size: 12px; margin-bottom: 0; }
	#festivalOutline .outlineList tr td ul + ul { display: block;  margin-top: 0.5em; }
	#festivalOutline .outlineList tr td li { display: block; overflow: hidden; }
	#festivalOutline .outlineList tr td li.space { display: none; }
	#festivalOutline .outlineList tr td li:last-child { padding-left: 1em; }
}

@media screen and (max-width: 480px) {
	#festivalBanner .bannerList a { width: 47.52%; }
}





/* 共通レイアウト
-------------------------------------------------------------------------------------------------- */

#festivalHeader {
	background: url(/images/festival/2019/festival_about_bg.png) center top;
	background-size: 1400px;
	padding-top: 10px;
}
#festivalBottom {
	background: url(/images/festival/2019/festival_about_bg.png) center top;
	background-size: 1400px;
	padding-top: 50px;
}

section .festivalInner { width: 1100px; padding-bottom: 15px; margin-right: auto; margin-left: auto; }
section#festivalBottom .festivalInner { padding-bottom: 100px; }
section .festivalInner .festivalTitle { width: 346px; margin-bottom: 10px; }

section .festivalInner .festivalNav { display: table; width: 100%; margin: 0 auto 30px; }
section#festivalBottom .festivalInner .festivalNav { margin: 0 auto; }
section .festivalInner .festivalNav a {
	width: 20%;
	display: table-cell;
	color: #ffffff;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	box-sizing: border-box;
	padding-top: 25px;
	padding-right: 10px;
	padding-bottom: 23px;
	padding-left: 10px;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
section .festivalInner .festivalNav a:nth-child(1) { background-color: #868674; border: solid 3px #868674; }
section .festivalInner .festivalNav a:nth-child(2) { background-color: #237fc4; border: solid 3px #237fc4; }
section .festivalInner .festivalNav a:nth-child(3) { background-color: #44af35; border: solid 3px #44af35; }
section .festivalInner .festivalNav a:nth-child(4) { background-color: #e8320e; border: solid 3px #e8320e; }
section .festivalInner .festivalNav span {
	width: 20%;
	display: table-cell;
	color: #ffffff;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	box-sizing: border-box;
	padding-top: 25px;
	padding-right: 10px;
	padding-bottom: 23px;
	padding-left: 10px;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
section .festivalInner .festivalNav span:nth-child(1) { background-color: #868674; border: solid 3px #868674; }
section .festivalInner .festivalNav span:nth-child(2) { background-color: #237fc4; border: solid 3px #237fc4; }
section .festivalInner .festivalNav span:nth-child(3) { background-color: #44af35; border: solid 3px #44af35; }
section .festivalInner .festivalNav span:nth-child(4) { background-color: #e8320e; border: solid 3px #e8320e; }

section .festivalInner .sub { width: 100%; text-align: center; }
section .festivalInner .sub2 { width: 52%; max-width: 562px; background: #ffffff; padding: 10px 0; }
section .festivalInner .sub3 { width: 62.54%; max-width: 688px; background: #ffffff; padding: 10px 0; }
section .festivalInner .sub4 { width: 61.81%; max-width: 678px; background: #ffffff; padding: 10px 0; }


#festivalContentInfo {
	width: 1100px;
	background: #ffffff;
	border-radius: 15px;
	box-sizing: border-box;
	padding: 0 60px;
	margin: 70px auto 0;
}
#festivalContentInfo.mb100 { margin: 70px auto 100px; }
#festivalContentInfo + #festivalContentInfo { margin: 90px auto 0; }
#festivalContentInfo + #festivalContentInfo.mb100 { margin: 70px auto 100px; }


#festivalContentInfo.cinephile { padding: 0 60px 10px; }
#festivalContentInfo p {
	font-size: 32px;
	line-height: 42px;
	font-weight: bold;
	text-align: center;
	padding: 0 0 40px;
}
#festivalContentInfo.cinephile p { padding: 20px 0 15px; }
#festivalContentInfo dl { border-top: solid 1px #cccccc; font-size: 16px; line-height:24px; padding: 25px 0; }
#festivalContentInfo dl:last-child { border-bottom: solid 1px #cccccc; }
#festivalContentInfo.cinephile dl:last-child { border-bottom: none; }
#festivalContentInfo dt,
#festivalContentInfo dd { display: table-cell; vertical-align: top; }
#festivalContentInfo dt { width: 140px; }

#festivalContentInfo.dance div { max-width: 600px; border: solid 1px #cccccc; margin: 0 auto; }


@media screen and (max-width: 1200px) {
	section .festivalInner { width: 95%; }
	section .festivalInner .festivalNav a {
		width: auto;
		font-size: 15px;
		line-height: 22px;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	section .festivalInner .festivalNav span {
		width: auto;
		font-size: 15px;
		line-height: 22px;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	#festivalContentInfo { width: 95%; }
}

@media screen and (min-width: 769px) {
	section .festivalInner .festivalNav a:hover { background-color: #ffffff; }
	section .festivalInner .festivalNav a:nth-child(1):hover { border: solid 3px #868674; color: #868674; }
	section .festivalInner .festivalNav a:nth-child(2):hover { border: solid 3px #237fc4; color: #237fc4; }
	section .festivalInner .festivalNav a:nth-child(3):hover { border: solid 3px #44af35; color: #44af35; }
	section .festivalInner .festivalNav a:nth-child(4):hover { border: solid 3px #e8320e; color: #e8320e; }
}

@media screen and (max-width: 769px) {
	#festivalHeader { background-size: contain; }
	#festivalBottom { background-size: contain; }
}
@media screen and (max-width: 767px) {
	section .festivalInner { padding-bottom: 20px; }
	section#festivalBottom .festivalInner { padding-bottom: 50px; }
	section .festivalInner .festivalNav { display: block; }
	section .festivalInner .festivalNav a { display: block; padding-top: 10px; padding-bottom: 10px; }
	section .festivalInner .festivalNav span { display: block; padding-top: 10px; padding-bottom: 10px; }
	
	section .festivalInner .sub1 { width: 100%; padding: 0; }
	section .festivalInner .sub2 { width: 100%; padding: 0; }
	section .festivalInner .sub3 { width: 100%; padding: 0; }
	section .festivalInner .sub4 { width: 100%; padding: 0; }
	
	#festivalContentInfo { padding: 0; margin: 50px auto 0; }
	#festivalContentInfo + #festivalContentInfo { margin: 50px auto 0; }
	#festivalContentInfo.cinephile { padding: 0 20px 10px; }
	#festivalContentInfo p { font-size: 26px; line-height: 26px; padding-top: 40px; }
	#festivalContentInfo dl { font-size: 14px; line-height: 25x; padding: 15px 0; }
	#festivalContentInfo dt,
	#festivalContentInfo dd { display: block; }
	#festivalContentInfo dt { font-weight: bold; }
	#festivalContentInfo p { padding: 0 0 15px; }
}

@media screen and (max-width: 480px) {
	section .festivalInner .festivalTitle { width: 100%; margin-right: auto; margin-bottom: 10px; margin-left: auto; }
}





/* 共通パーツ
-------------------------------------------------------------------------------------------------- */

.mapBtn1 a {
	display: inline-block;
	background-color: #d80011;
	font-size: 12px;
	line-height: 18px;
	color: #ffffff;
	text-decoration: none;
	padding-top: 3px;
	padding-right: 7px;
	padding-bottom: 1px;
	padding-left: 13px;
}
.mapBtn1 a span {
	background: url(/images/festival/2019/festival_btn_arr1.png) no-repeat right center;
	background-size: 11px;
	padding-right: 15px;
}
.mapBtn2 a {
	display: inline-block;
	background-color: #d80011;
	font-size: 16px;
	line-height: 30px;
	color: #ffffff;
	text-decoration: none;
	padding-top: 2px;
	padding-right: 11px;
	padding-left: 16px;
}
.mapBtn2 a span {
	background: url(/images/festival/2019/festival_btn_arr1.png) no-repeat right center;
	background-size: 12px;
	padding-right: 20px;
}

.txtLink a {
	display: inline-block;
	background: url(/images/festival/2019/festival_outlink1.gif) no-repeat left 4px;
	background-size: 15px 13px;
	text-decoration: none;
	padding-left: 22px;
	margin-top: 10px;
}





/* WORLD DANCE STREET
-------------------------------------------------------------------------------------------------- */

#danceMain { width: 100%; }
#danceMain .mainInner { width: 100%; max-width: 1400px; min-height: 400px; position: relative; margin: 0 auto; }
#danceMain .mainInner .mainTtlPc { }
#danceMain .mainInner .mainTtlSmp { display: none; }

#danceMain .mainInner .mainLead {
	width: 100%;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
	text-align: center;
	position: absolute;
	bottom: 0;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

#danceMain .sns_icon_area { margin-top: 40px; }



#danceAncher {
	width: 100%;
	max-width: 1100px;
	border: solid 5px #cccccc;
	box-sizing: border-box;
	padding: 0 45px 25px 45px;
	margin: 140px auto 0;
}
#danceAncher .danceAncher {
	color: #2c4197;
	font-size: 40px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	padding-top: 40px;
}
#danceAncher p + p { overflow: hidden; }
#danceAncher h3 {
	border-top: 2px dashed #2c4197;
	color: #2c4197;
	font-size: 20px;
	font-weight: bold;
	padding-top: 60px;
	margin-top: 60px;
}

#danceAncher h3:first-of-type { border-top: none; margin-top: 60px; padding-top: 0; }
#danceAncher p + p a {
	float: right;
	background: url(/images/festival/2019/festival_anchor_arr3.png) no-repeat left 10px;
	background-size: 20px;
	color: #7384c1;
	font-size: 20px;
	font-weight: bold;
	text-decoration: none;
	padding: 10px 10px 10px 25px;
}
#danceAncher p ~ a {
	display: block;
	border-bottom: solid 1px #cccccc;
	font-size: 16px;
	line-height: 24px;
	text-decoration: none;
	padding: 20px 0;
}
#danceAncher p ~ a.noLink { background: none; border-bottom: none; cursor: default; padding: 20px 0 0; }
#danceAncher p ~ a.noLink2 { background: none; cursor: default; }
#danceAncher p ~ a.last { border-bottom: none; }
#danceAncher p ~ a dl {
	background: url(/images/festival/2019/festival_anchor_arr3.png) no-repeat right center;
	background-size: 20px;
	margin-right: 10px;
}
#danceAncher p ~ a.noLink dl { background: none; }
#danceAncher p ~ a.noLink2 dl { background: none; }
#danceAncher p ~ a dt,
#danceAncher p ~ a dd { display: table-cell; vertical-align: top; }
#danceAncher p ~ a dt { width: 150px; }
#danceAncher p ~ a dd { padding-right: 30px; }
#danceAncher p ~ a dd span { display: inline-block; }
#danceAncher p ~ a dd span:first-child { padding-right: 1em; }
#danceAncher p ~ a dd span + span,
#danceAncher p ~ a dd span.fwb { font-weight: bold; }



.danceList {
	color: #2c4197;
	font-size: 40px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	padding-top: 140px;
}

#danceList {
	width: 100%;
	background:url(/images/festival/2019/festival_dance_bg.png) center top;
	padding: 50px 0 90px; margin-top: 50px;
}
#danceList .danceInner {
	width: 1100px;
	border: solid 10px;
	background: #ffffff;
	box-sizing: border-box;
	overflow: hidden;
	padding-bottom: 30px;
	margin: 0 auto;
}
#danceList .danceInner + a { margin: -30px auto; }
#danceList .danceInner.navy { border-color: #2c4197; }
#danceList .danceInner.blue { border-color: #4593d0; }
#danceList .danceInner .danceTitle { color: #ffffff; font-weight: bold; padding: 10px 15px 10px 15px; }
#danceList .danceInner.navy .danceTitle { background: #2c4197; }
#danceList .danceInner.blue .danceTitle { background: #4593d0; }
#danceList .danceInner .danceTitle p { float: left; width: 40px; }
#danceList .danceInner .danceTitle dl { margin-left: 100px; }
#danceList .danceInner .danceTitle dl dt { font-size: 17px; line-height: 27px; }
#danceList .danceInner .danceTitle dl dd { font-size: 36px; line-height: 46px; }

#danceList .danceInner ul { background: #ffffff; box-sizing: border-box; padding: 0 50px 0 115px; }
#danceList .danceInner ul li:first-child {
	float: left;
	width: 43.8%;
	font-size: 16px;
	line-height: 26px;
	margin-top: 30px;
}
#danceList .danceInner ul li + li { float: right; width: 43.8%; max-width: 400px; margin-top: 30px; }
#danceList .danceInner ul li p { font-size: 14px; font-weight: bold; margin-top: 10px; }
#danceList .danceInner ul li .linkBtn { display: -webkit-flex; display: flex; flex-wrap: wrap; margin-top: 10px; }
#danceList .danceInner ul li p + .linkBtn { margin-top: 0; }
#danceList .danceInner ul li .linkBtn a {
	width: 10em;
	display: block;
	border-radius: 5px;
	color: #ffffff;
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
	padding: 3px 25px 3px 15px;
	margin-top: 5px;
	margin-right: 10px;
	position: relative;
}
#danceList .danceInner ul li .linkBtn a:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent transparent #ffffff;
	border-width: 5px 0 5px 9px;
	position: absolute;
	top: 0;
	right: 8px;
	bottom: 0;
	margin: auto 0;
}

#danceList .danceInner ul li .linkBtn a.link { background: #4593d0; }
#danceList .danceInner ul li .linkBtn a.fb { background: #4267b2; }
#danceList .danceInner ul li .linkBtn a.link:hover { background: #2c74bd; }
#danceList .danceInner ul li .linkBtn a.fb:hover { background: #365899; }



#danceMap { width: 1100px; padding-top: 120px; padding-bottom: 100px; margin-right: auto; margin-left: auto; }
#danceMap .mapTitle { font-size: 26px; line-height: 40px; text-align: center; margin-bottom: 20px; }



@media screen and (max-width: 1200px) {
	#danceMain .mainInner .mainLead { font-size: 16px; line-height: 26px; }
	#danceAncher { width: 95%; }
	#danceList .danceInner { width: 95%; }
	#danceMap { width: 95%; }
}

@media screen and (max-width: 1000px) {
	#danceList .danceInner ul { padding: 0 50px 0 50px; }
	#danceList .danceInner ul li:first-child { margin-top: 30px; }
	#danceList .danceInner ul li + li { margin-top: 30px; }
	#movieMap { padding-top: 45px; padding-bottom: 50px; }
}

@media screen and (max-width: 767px) {
	#danceMain .mainInner { min-height: auto; position: static; }
	#danceMain .mainInner .mainTtlPc { display: none; }
	#danceMain .mainInner .mainTtlSmp { display: block; }
	
	#danceMain .mainInner .mainLead { position: static; margin-top: 20px; }
	#danceMain .sns_icon_area { margin-top: 20px; }
	
	#danceAncher { border: solid 4px #cccccc; padding: 0 15px 20px 15px; margin-top: 70px; }
	#danceAncher .danceAncher { font-size: 26px; line-height: 36px; padding-top: 20px; }
	
	#danceAncher h3 { padding-top: 40px; margin-top: 30px; }
	#danceAncher h3:first-of-type { margin-top: 30px; }
	
	#danceAncher p + p a {
		float: right;
		background: url(/images/festival/2019/festival_anchor_arr3.png) no-repeat left 10px;
		background-size: 20px;
		color: #7384c1;
		font-size: 16px;
		font-weight: bold;
		text-decoration: none;
		padding: 10px 0 0 25px;
	}
	#danceAncher p ~ a { font-size: 14px; padding: 15px 0; }
	#danceAncher p ~ a.noLink { padding: 15px 0 0; }
	#danceAncher p ~ a dl {
		background: url(/images/festival/2019/festival_anchor_arr3.png) no-repeat right bottom;
		background-size: 20px;
		margin-right: 0;
	}
	#danceAncher p ~ a dt,
	#danceAncher p ~ a dd { display: block; padding-right: 0; }
	
	
	
	.danceList { font-size: 26px; line-height: 36px; padding-top: 70px; }
	#danceList { padding: 25px 0 50px; margin-top: 25px; }
	#danceList .danceInner + a { margin: 0 auto; }
	#danceList .danceInner .danceTitle p { float: none; margin: 0 auto; }
	#danceList .danceInner .danceTitle dl { text-align: center; margin: 15px 0 0 0; }
	#danceList .danceInner .danceTitle dl dt { font-size: 14px; line-height: 24px; }
	#danceList .danceInner .danceTitle dl dd { font-size: 26px; line-height: 36px; }
	#danceList .danceInner ul { padding: 0 20px 0 20px; }
	#danceList .danceInner ul li:first-child {
		float: none;
		width: 100%;
		font-size: 15px;
		line-height: 26px;
		margin-top: 30px;
	}
	#danceList .danceInner ul li + li { float: none; width: 100%; margin: 30px auto 0; }
}

@media screen and (max-width: 480px) {
	#danceMain .mainInner .mainLead { width: 95%; display: table; text-align: left; margin: 20px auto; }
	#danceMain .mainInner .mainLead br { display: none; }
	#danceAncher p ~ a dd span { display: block; }
}





/* シネフィル プレミアム
-------------------------------------------------------------------------------------------------- */

#cinephile { background: #aef8c6; }
#cinephileMain { width: 100%; background: url(/images/festival/2019/festival_cinephile_bg.png) repeat-x center top; }

#cinephileMain .mainTtlPc { width: 100%; max-width: 1150px; margin: 0 auto; }
#cinephileMain .mainTtlSmp { display: none; }

#cinephileMain .mainLead {
	width: 100%;
	max-width: 1100px;
	background: #ffffff;
	border-radius: 0 0 15px 15px;
	box-sizing: border-box;
	padding: 0 50px 35px;
	margin: 0 auto;
}
#cinephileMain .mainLead li:nth-child(1) { display: none; }
#cinephileMain .mainLead li:nth-child(2) { padding-top: 35px; }
#cinephileMain .mainLead li:nth-child(2) p:nth-child(1) { width: 100%; max-width: 510px; margin: 0 auto; }
#cinephileMain .mainLead li:nth-child(2) p:nth-child(2) {
	font-weight: bold;
	font-size: 19px;
	line-height: 30px;
	text-align: center;
	padding-top: 20px;
}
#cinephileMain .mainLead li:nth-child(2) p:nth-child(3) {text-align: center; padding-top: 20px; }

#cinephileMain .mainLead .theaterBtn { text-align: center; margin-top: 40px; }
#cinephileMain .mainLead .theaterBtn a {
	display: inline-block;
	background-color: #ffe200;
	box-sizing: border-box;
	border-radius: 5px;
	font-size: 15px;
	line-height: 22px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	padding-top: 20px;
	padding-right: 18px;
	padding-bottom: 20px;
	padding-left: 18px;
}
#cinephileMain .mainLead .theaterBtn a span {
	display: block;
	background: url(/images/festival/2019/festival_outlink1.gif) no-repeat right center;
	background-size: 15px 13px;
	padding-right: 20px;
}

#cinephileMain .mainLead .sns_icon_area { margin-top: 30px; }

#cinephileTicket { width: 100%; max-width: 1100px; box-sizing: border-box; margin: -10px auto 0; }
#cinephileTicket div {
	background: url(/images/festival/2019/festival_cinephile_ticket_02.png) repeat-y;
	background-size: 100%;
	color: #ffffff;
	box-sizing: border-box;
	padding: 0 40px;
}
#cinephileTicket div h3 { font-size: 16px; font-weight: bold; margin-bottom: 10px; }



#movieCollabo {
	width: 1100px;
	background: url(/images/festival/2019/festival_cinephile_collabo_bg.gif) center center;
	border: solid 3px #E4007F;
	border-radius: 15px;
	box-sizing: border-box;
	overflow: hidden;
	margin: 100px auto 0;
}

#movieCollabo div {
	background: #E4007F;
	color: #ffffff;
	font-size: 24px;
	line-height: 34px;
	font-weight: bold;
	text-align: center;
	box-sizing: border-box;
	padding: 10px 0;
}
#movieCollabo ul { width: 100%; display: table; color: #E4007F; box-sizing: border-box; padding: 40px 60px; }
#movieCollabo li { display: table-cell; vertical-align: middle; }
#movieCollabo li + li { width: 250px; padding-left: 20px; text-align: center; }
#movieCollabo li:first-child p:nth-child(1) { font-size: 18px; line-height: 28px; font-weight: bold; }
#movieCollabo li:first-child p:nth-child(2) {
	font-size: 32px;
	line-height: 42px;
	font-weight: bold;
	padding-bottom: 10px;
}
#movieCollabo li:first-child p + p + p { text-indent: -1em; padding-left: 1em; }
#movieCollabo li + li p { font-size: 10px; line-height: 16px; padding-top: 5px; }



.movieTheater {
	color: #44af35;
	font-size: 40px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	padding-top: 150px;
}

#movieTheater {
	width: 100%;
	background:url(/images/festival/2019/festival_cinephile_bg.png) center top;
}
#movieTheater .theaterList { width: 100%; padding-top: 50px; margin-top: 50px; }

#movieTheater .theaterList .theaterInner {
	width: 1100px;
	background: #ffffff;
	border: solid 5px;
	border-radius: 15px;
	box-sizing: border-box;
	padding: 0 45px 0;
	margin: 0 auto;
}
#movieTheater .theaterList .theaterInner.green { border-color: #45c000; }
#movieTheater .theaterList .theaterInner.blue { border-color: #0075c1; }
#movieTheater .theaterList .theaterInner.red { border-color: #e9537d; }

#movieTheater .theaterList .theaterInner .theaterName {
	width: 48%;
	border-radius: 10px;
	font-size: 22px;
	line-height: 32px;
	font-weight: bold;
	box-sizing: border-box;
	padding: 0 25px;
	margin: -32px 0 35px 0;
}
#movieTheater .theaterList .theaterInner.green .theaterName { background: #45c000; }
#movieTheater .theaterList .theaterInner.blue .theaterName { background: #0075c1; }
#movieTheater .theaterList .theaterInner.red .theaterName { background: #e9537d; }
#movieTheater .theaterList .theaterInner .theaterName a {
	width: 100%;
	display: inline-block;
	color: #ffffff;
	text-decoration: none;
	padding: 13px 0;
}
#movieTheater .theaterList .theaterInner .theaterName a span {
	display: inline-block;
	vertical-align: middle;
	background: url(/images/festival/2019/festival_movie_icon.png) no-repeat left 5px;
	background-size: 24px 20px;
	padding-left: 34px;
}

#movieTheater .theaterList .theaterInner ul.movie { width: 100%; }
#movieTheater .theaterList .theaterInner ul.movie li  { position: relative; }
#movieTheater .theaterList .theaterInner ul.movie li + li {
	border-top: solid 2px;
	padding-top: 30px;
	margin-top: 30px;
}
#movieTheater .theaterList .theaterInner.green ul.movie li + li { border-color: #45c000; }
#movieTheater .theaterList .theaterInner.blue ul.movie li + li { border-color: #0075c1; }
#movieTheater .theaterList .theaterInner.red ul.movie li + li { border-color: #e9537d; }
#movieTheater .theaterList .theaterInner ul.movie li dl { overflow: hidden; }

#movieTheater .theaterList .theaterInner ul.movie li dl dt { width: 150px; float: right; margin-left: 20px; }
#movieTheater .theaterList .theaterInner ul.movie li dl dt.w200 { width: 200px; }

#movieTheater .theaterList .theaterInner ul.movie li dl dd  { display: table-cell; vertical-align: middle; }
#movieTheater .theaterList .theaterInner ul.movie li dl dd.date { width: 100px; padding-right: 20px; }
#movieTheater .theaterList .theaterInner ul.movie li dl dd.date p {
	width: 100px;
	height: 100px;
	display: table-cell;
	border-radius: 50%;
	color: #ffffff;
	font-weight: bold;
	vertical-align: middle;
	text-align: center;
	box-sizing: border-box;
	padding-top: 10px;
}
#movieTheater .theaterList .theaterInner ul.movie li dl dd.date p span {
	font-family: arial,
	sans-serif;
	font-size: 28px;
}
#movieTheater .theaterList .theaterInner.green ul.movie li dl dd.date p { background: #45c000; }
#movieTheater .theaterList .theaterInner.blue ul.movie li dl dd.date p { background: #0075c1; }
#movieTheater .theaterList .theaterInner.red ul.movie li dl dd.date p { background: #e9537d; }

#movieTheater .theaterList .theaterInner ul.movie li dl dd.title { font-weight: bold; }
#movieTheater .theaterList .theaterInner ul.movie li dl dd.title p:first-child {
	font-size: 22px;
	line-height: 32px;
	margin-bottom: 10px;
}
#movieTheater .theaterList .theaterInner ul.movie li dl dd.title p:first-child span { display: inline-block; }
#movieTheater .theaterList .theaterInner ul.movie li dl dd.title p a {
	background: url(/images/festival/2019/festival_outlink1.gif) no-repeat right center;
	background-size: 15px 13px;
	padding-right: 20px;
}
#movieTheater .theaterList .theaterInner ul.movie li dl + p {
	text-align: right; 
	color: #999999;
	font-size: 10px;
	line-height: 16px;
	position: absolute;
	right: 160px;
	bottom: 0;
}
#movieTheater .theaterList .theaterInner ul.movie li dl + p.r210 { right: 210px; }

#movieTheater .theaterList .theaterInner .theaterBtn { text-align: center; margin: 40px 0; }
#movieTheater .theaterList .theaterInner .theaterBtn a {
	display: inline-block;
	width: 360px;
	background-color: #ffe200;
	box-sizing: border-box;
	border-radius: 5px;
	font-size: 18px;
	line-height: 24px;
	font-weight: bold;
	text-align: center;
	text-decoration: none; padding: 18px;
}
#movieTheater .theaterList .theaterInner .theaterBtn a span {
	display: block;
	background: url(/images/festival/2019/festival_btn_arr2.png) no-repeat right center;
	background-size: 18px 15px;
}

#movieTheater .movieNote {
	width: 100%;
	font-size: 13px;
	line-height: 20px;
	text-align: center;
	padding: 30px 0 60px 0;
	margin: 0 auto;
}



@media screen and (max-width: 1150px) {
	#cinephileMain .mainLead { width: 95.6%; padding: 15px 20px 20px; }
	#cinephileTicket { width: 95.6%; }
	#movieTheater .theaterList .theaterInner { width: 95%; }
	#movieTheater .movieNote { width: 95%; text-align: left; }
	#movieCollabo { width: 95%; }
}

@media screen and (max-width: 920px) {
	#movieCollabo ul { padding: 40px; }
	
	#movieTheater .theaterList .theaterInner .theaterName { margin: -33px 0 35px 0; }
	#movieTheater .theaterList .theaterInner { padding:  0 30px 30px; }
}

@media screen and (max-width: 767px) {
	#cinephileMain .mainLead { width: 95%; border-radius: 0 0 12px 12px; }
	
	#cinephileMain .mainTtlPc { display: none; }
	#cinephileMain .mainTtlSmp { display: block; }
	
	#cinephileMain .mainLead ul { margin-top: 0; }
	#cinephileMain .mainLead li:nth-child(1) { display: block; font-size: 13px; line-height: 18px; }
	#cinephileMain .mainLead li:nth-child(1) span { font-weight: bold; }
	#cinephileMain .mainLead li:nth-child(2) { padding-top: 30px; }
	#cinephileMain .mainLead li:nth-child(2) p br { display: none; }
	#cinephileMain .mainLead li:nth-child(2) p:nth-child(2) {
		font-weight: bold;
		font-size: 16px;
		line-height: 24px;
		text-align: left;
	}
	#cinephileMain .mainLead li:nth-child(2) p:nth-child(3) { font-size: 14px; text-align: left; }
	#cinephileMain .mainLead .sns_icon_area { margin-top: 20px; }
	
	#cinephileTicket { width: 95%; margin: 20px auto 0; }
	#cinephileTicket .ticketTop { display: none; }
	#cinephileTicket .ticketBtm { display: none; }
	#cinephileTicket div {
		background-image: none;
		background-color: #00b700;
		border: solid 4px #ffffff;
		border-radius: 15px; padding: 20px;
	}
	
	#cinephileMain .mainLead .theaterBtn a { font-size: 14px; line-height: 20px; padding: 10px 15px 10px 10px; }
	
	
	
	#movieCollabo { margin: 50px auto 0; }
	#movieCollabo ul { padding: 20px; }
	#movieCollabo li { display: table; }
	#movieCollabo li + li { width: 250px; padding-left: 0; margin: 20px auto 0; }
	#movieCollabo li:first-child p:nth-child(1) { font-size: 16px; line-height: 22px; }
	#movieCollabo li:first-child p:nth-child(2) { font-size: 24px; line-height: 34px; }
	
	
	
	.movieTheater { font-size: 26px; line-height: 36px; padding-top: 70px; }
	
	#movieTheater .theaterList { margin-top: 20px; }
	#movieTheater .theaterList .theaterInner { border: solid 4px; padding: 0 5%; }
	#movieTheater .theaterList .theaterInner .theaterName {
		width: 100%;
		font-size: 22px;
		line-height: 32px;
		margin-top: -31px;
	}
	
	#movieTheater .theaterList .theaterInner ul.movie li dl { display: flex; flex-direction: column; }
	#movieTheater .theaterList .theaterInner ul.movie li dl dt { display: table; order: 1; margin: 20px auto 0; }
	#movieTheater .theaterList .theaterInner ul.movie li dl dd { display: table; }
	#movieTheater .theaterList .theaterInner ul.movie li dl dd.date { width: 80px; margin: 0 auto; padding-right: 0; }
	#movieTheater .theaterList .theaterInner ul.movie li dl dd.date p { width: 80px; height: 80px; }
	#movieTheater .theaterList .theaterInner ul.movie li dl dd.date p span { font-size: 24px; }
	
	#movieTheater .theaterList .theaterInner ul.movie li dl dd.title { width: 100%; margin: 10px auto 0; }
	#movieTheater .theaterList .theaterInner ul.movie li dl dd.title p:first-child {
		font-size: 18px;
		line-height: 24px;
		margin-bottom: 10px;
	}
	#movieTheater .theaterList .theaterInner ul.movie li dl dd.title p:first-child br { display: none; }
	#movieTheater .theaterList .theaterInner ul.movie li dl + p {
		display: table;
		text-align: left; 
		position: static;
		margin: 15px auto 0;
	}
	
	#movieTheater .theaterList .theaterInner .theaterBtn a { width: 100%; padding: 10px; }
}

@media screen and (max-width: 480px) {
	#cinephileMain .mainLead .theaterBtn { width: 100%; }
	#cinephileMain .mainLead .theaterBtn a { width: 100%; padding: 10px 15px 10px 10px; }
	
	#movieTheater .theaterList .theaterInner .theaterName {
		font-size: 18px;
		line-height: 28px;
		text-align: center;
		padding: 0;
		margin-top: -28px;
		margin-bottom: 20px;
	}
	#movieTheater .theaterList .theaterInner .theaterName a span {
		background: url(/images/festival/2019/festival_movie_icon.png) no-repeat left 2px;
		background-size: 24px 20px;
	}
	
	#movieMain .mainInner .theaterBtn { width: 100%; }
	#movieMain .mainInner .theaterBtn a {
		width: 100%;
		font-size: 14px;
		line-height: 20px;
		padding: 10px 15px 10px 10px;
	}
	#movieTheater .theaterList .theaterInner .theaterBtn { margin: 30px 0; }
	#movieTheater .theaterList .theaterInner .theaterBtn a { font-size: 16px; line-height: 20px; }
	#movieTheater .theaterList .theaterInner .theaterBtn a span {
		background: url(/images/festival/2019/festival_btn_arr2.png) no-repeat right center;
		background-size: 12px 10px;
	}
	
	#movieTheater .movieNote { font-size: 12px; line-height: 18px; padding: 15px 0 0 0; }
}





/* 街バルウィーク
-------------------------------------------------------------------------------------------------- */

#machibar { padding-bottom: 100px; }

#machibarMain {
	width: 100%;
	background: url(/images/festival/2019/festival_machibar_main.gif) repeat-x center top;
	background-size: contain;
	padding: 50px 0 210px;
}
#machibarMain .mainInner {
	width: 100%;
	max-width: 1100px;
	border-radius: 15px;
	background: url(/images/festival/2019/festival_machibar_main_inner.png) no-repeat left top;
	background-size: 100%;
	background-color: #ffffff;
	padding-bottom: 50px;
	margin: 0 auto;
}

#machibarMain .mainInner .mainTtlPc { display: block; }
#machibarMain .mainInner .mainTtlSmp { display: none; }

#machibarMain .mainInner .sns_icon_area { margin-top: 10px; }

#machibarMain .mainInner .txtBtn a {
	display: table;
	background-color: #d80011;
	border-radius: 5px;
	color: #ffffff;
	font-size: 16px;
	line-height: 22px;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	padding: 12px 30px 10px;
	margin: 50px auto 0;
}
#machibarMain .mainInner .txtBtn a span {
	display: inline-block;
	background: url(/images/festival/2019/festival_outlink2.gif) no-repeat right center;
	background-size: 15px 13px;
	padding-right: 30px;
}

#machibarMain .mainNote {
	width: 100%;
	max-width: 1100px;
	color: #ffffff;
	text-align: right;
	box-sizing: border-box;
	padding: 5px 50px 0;
	margin: 0 auto;
}

#machibarTicket { width: 100%; max-width: 1100px; box-sizing: border-box; margin: -250px auto 0; }
#machibarTicket ul {
	overflow: hidden;
	background: url(/images/festival/2019/festival_machibar_ticket_02.png) repeat-y;
	background-size: 100%;
	box-sizing: border-box;
	padding: 0 40px;
}
#machibarTicket li:first-child { float: left; width: 45%; }
#machibarTicket li:first-child h3 { color: #f00000; margin-bottom: 24px; }
#machibarTicket li:first-child h3 .span1 {
	display: inline-block;
	background: url(/images/festival/2019/festival_machibar_att_icon.png) no-repeat left center;
	background-size: 35px;
	font-size: 22px;
	line-height: 35px;
	padding-left: 40px;
}
#machibarTicket li:first-child h3 .span2 { font-size: 18px; line-height: 35px; }
#machibarTicket li:first-child p:nth-child(3) { border-top: dotted 1px #333333; padding-top: 10px; margin-top: 10px; }
#machibarTicket li:first-child p:nth-child(2):first-line,
#machibarTicket li:first-child p:nth-child(3):first-line { font-weight: bold; }
#machibarTicket li:first-child p:nth-child(4) { font-size: 12px; line-height: 18px; padding-top: 10px; }
#machibarTicket li + li {
	width: 48%;
	float: right;
	overflow: hidden;
	border: solid 1px #326b79;
	box-sizing: border-box;
	padding: 10px;
}
#machibarTicket li + li .ticketInner { background: #ffffff; padding: 10px; }
#machibarTicket li + li p:first-child { float: right; max-width: 130px; padding-left:7%; }
#machibarTicket li + li h4 { font-size: 16px; line-height: 22px; font-weight: bold; margin-bottom: 10px; }
#machibarTicket li + li h5 { font-weight: bold; margin-bottom: 5px; }
#machibarTicket li .txtBtn a {
	display: inline-block;
	background-color: #d80011;
	border-radius: 5px;
	color: #ffffff;
	font-size: 16px;
	line-height: 22px;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	padding: 9px 20px 7px;
	margin-top: 23px;
}
#machibarTicket li .txtBtn a span {
	display: inline-block;
	background: url(/images/festival/2019/festival_outlink2.gif) no-repeat right center;
	background-size: 15px 13px;
	padding-right: 30px;
}



#machibarLottery {
	width: 1100px;
	background: url(/images/festival/2019/festival_machibar_lottery.gif) repeat-y center top;
	background-size: 100%;
	border-radius: 15px;
	box-sizing: border-box;
	padding: 10px;
	margin: 100px auto 0;
}
#machibarLottery > p {
	color: #ffffff;
	font-size: 40px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	padding: 5px 0 5px;
}
#machibarLottery > p span { display: block; font-size: 16px; line-height: 26px; }
#machibarLottery div {
	background: #ffffff;
	border-radius: 15px;
	font-size: 16px;
	line-height: 26px;
	text-align: center;
	padding: 50px 0;
}



.machibarArea {
	color: #e8320e;
	font-size: 40px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	padding-top: 130px;
}

#machibarAreaList { width: 100%; padding-top: 40px; }
#machibarAreaList + #machibarAreaList { padding-top: 100px; }

#machibarAreaList h3 {
	width: 500px;
	height: 62px;
	display: table;
	color: #ffffff;
	font-size: 28px;
	line-height: 62px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
}
#machibarAreaList h3.blu { background: url(/images/festival/2019/festival_machibar_list_blu.png) no-repeat center top; }
#machibarAreaList h3.nvy { background: url(/images/festival/2019/festival_machibar_list_nvy.png) no-repeat center top; }
#machibarAreaList h3.red { background: url(/images/festival/2019/festival_machibar_list_red.png) no-repeat center top; }
#machibarAreaList h3.org { background: url(/images/festival/2019/festival_machibar_list_org.png) no-repeat center top; }
#machibarAreaList h3.grn { background: url(/images/festival/2019/festival_machibar_list_grn.png) no-repeat center top; }

#machibarAreaList .listFrame { width: 100%; padding: 30px 0 40px; margin-top: -5px; }
#machibarAreaList .listFrame + .listFrame { padding: 10px 30px 30px 30px; }
#machibarAreaList .listFrame.blu {
	background: url(/images/festival/2019/festival_machibar_bg_blu.gif);
	border-top: solid 5px #57c3e8;
}
#machibarAreaList .listFrame.nvy {
	background: url(/images/festival/2019/festival_machibar_bg_nvy.gif);
	border-top: solid 5px #005ead;
}
#machibarAreaList .listFrame.red {
	background: url(/images/festival/2019/festival_machibar_bg_red.gif);
	border-top: solid 5px #e9537d;
}
#machibarAreaList .listFrame.org {
	background: url(/images/festival/2019/festival_machibar_bg_org.gif);
	border-top: solid 5px #ea5457;
}
#machibarAreaList .listFrame.grn {
	background: url(/images/festival/2019/festival_machibar_bg_grn.gif);
	border-top: solid 5px #00ad77;
}

#machibarAreaList .listFrame .listInner {
	width: 1050px;
	background-color: #ffffff;
	border-radius: 30px;
	box-shadow: 2px 2px #cccccc;
	margin: 0 auto;
}
#machibarAreaList .listFrame .listInner + .listInner { margin: 30px auto 0; }
#machibarAreaList .listFrame .listInner .listLine {
	width: 95.3%;
	max-width: 1010px;
	text-align: center;
	padding-top: 25px;
	margin: 0 auto;
}
#machibarAreaList .listFrame .listInner .listData ul {
	width: 86%;
	max-width: 930px;
	overflow: hidden;
	padding-bottom: 70px;
	margin: 20px auto 0;
}
#machibarAreaList .listFrame .listInner .listData li:first-child { float: right; width: 50%; max-width: 365px; }
#machibarAreaList .listFrame .listInner .listData li + li { width: 50%; font-size: 15px; }
#machibarAreaList .listFrame .listInner .listData li + li dl {
	font-weight: bold;
	line-height: 34px;
	padding-bottom: 20px;
}
#machibarAreaList .listFrame .listInner .listData li + li dt { font-size: 18px; line-height: 24px; }
#machibarAreaList .listFrame .listInner .listData li + li dd { font-size: 28px; padding-top: 10px; }
#machibarAreaList .listFrame.blu .listInner .listData li + li dd { color: #57c3e8; }
#machibarAreaList .listFrame.nvy .listInner .listData li + li dd { color: #005ead; }
#machibarAreaList .listFrame.red .listInner .listData li + li dd { color: #e9537d; }
#machibarAreaList .listFrame.org .listInner .listData li + li dd { color: #ea5457; }
#machibarAreaList .listFrame.grn .listInner .listData li + li dd { color: #00ad77; }
#machibarAreaList .listFrame .listInner .listData li + li table {
	width: 100%;
	border-top: solid 1px #8c8c8c;
	border-bottom: solid 1px #8c8c8c;
	margin-top: 20px;
}
#machibarAreaList .listFrame .listInner .listData li + li table tr + tr { border-top: dotted 1px #cccccc; }
#machibarAreaList .listFrame .listInner .listData li + li table th {
	font-weight: bold;
	text-align: left;
	white-space: nowrap;
	padding: 10px 1em 8px 0;
}
#machibarAreaList .listFrame.blu .listInner .listData li + li table th { color: #57c3e8; }
#machibarAreaList .listFrame.nvy .listInner .listData li + li table th { color: #005ead; }
#machibarAreaList .listFrame.red .listInner .listData li + li table th { color: #e9537d; }
#machibarAreaList .listFrame.org .listInner .listData li + li table th { color: #ea5457; }
#machibarAreaList .listFrame.grn .listInner .listData li + li table th { color: #00ad77; }
#machibarAreaList .listFrame .listInner .listData li + li table td { padding: 10px 0 8px; }
#machibarAreaList .listFrame .listInner .listData li + li table .mapBtn1 { float: right; }

#machibarAreaList .listFrame .listInner .listPoint {
	background: url(/images/festival/2019/festival_machibar_list_point.gif) repeat-y center top;
	background-size: 100%;
	border-radius: 0 0 30px 30px;
	font-weight: bold;
	box-sizing: border-box;
	padding: 70px 0 35px;
}
#machibarAreaList .listFrame .listInner .listPoint p:first-child {
	width: 300px;
	height: 36px;
	display: table;
	border-radius: 16px;
	color: #ffffff;
	font-size: 16px;
	line-height: 36px;
	text-align: center;
	margin: -88px auto 0;
}
#machibarAreaList .listFrame .listInner .listPoint p + p {
	height: 12px;
	width: 6px;
	display: block;
	border-radius: 0 0 3px 3px;
	margin: 0 auto 25px;
}
#machibarAreaList .listFrame.blu .listInner .listPoint p { background: #57c3e8; }
#machibarAreaList .listFrame.nvy .listInner .listPoint p { background: #005ead; }
#machibarAreaList .listFrame.red .listInner .listPoint p { background: #e9537d; }
#machibarAreaList .listFrame.org .listInner .listPoint p { background: #ea5457; }
#machibarAreaList .listFrame.grn .listInner .listPoint p { background: #00ad77; }
#machibarAreaList .listFrame .listInner .listPoint ul {
	display: table;
	font-size: 16px;
	line-height: 20px;
	margin: 0 auto;
}
#machibarAreaList .listFrame .listInner .listPoint li { display: inline-block; }
#machibarAreaList .listFrame .listInner .listPoint li + li { margin-left: 30px; }
#machibarAreaList .listFrame .listInner .listPoint li span { color: #ffffff; }

#gourmetMap { width: 1100px; padding-top: 120px; padding-bottom: 100px; margin-right: auto; margin-left: auto; }
#gourmetMap .mapTitle { font-size: 26px; line-height: 40px; text-align: center; margin-bottom: 20px; }


@media screen and (max-width: 1100px) {
	#machibarMain { padding: 2.5% 0 210px; }
	#machibarMain .mainInner { width: 95%; }
	
	#machibarTicket { width: 95%; }
	#machibarLottery { width: 95%; }
	
	#machibarAreaList .listFrame .listInner { width: 95%; }
	
	#gourmetMap { width: 95%; }
}

@media screen and (max-width: 1000px) {
	#machibarTicket li:first-child h3 .span1 { display: block; }
	#machibarTicket li:first-child h3 .span2 { line-height: 18px; padding-left: 30px; }
	
	#machibarAreaList .listFrame .listInner .listData li:first-child { width: 45%; }
	#machibarAreaList .listFrame .listInner .listPoint { padding: 40px 0 20px; }
	#machibarAreaList .listFrame .listInner .listPoint p:first-child { margin: -58px auto 0; }
	#machibarAreaList .listFrame .listInner .listPoint p + p { margin: 0 auto 10px; }
	#machibarAreaList .listFrame .listInner .listPoint li {
		display: block;
		font-size: 15px;
		line-height: 20px;
		margin: 0 20px 0 20px;
	}
	#machibarAreaList .listFrame .listInner .listPoint li + li { margin: 0 20px 0 20px; }
	
	#gourmetMap { padding-top: 45px; padding-bottom: 50px; }
}

@media screen and (max-width: 767px) {
	#machibar { padding-bottom: 50px }
	
	#machibarMain { padding: 3.0% 0 210px; }
	#machibarMain .mainNote { text-align: center; padding: 5px 0 0; }
	#machibarMain .mainInner { background: none; background-color: #ffffff; padding-bottom: 30px; }
	#machibarMain .mainInner .mainTtlPc { display: none; }
	#machibarMain .mainInner .mainTtlSmp { display: block; }
	#machibarMain .mainInner .sns_icon_area { margin-top: 20px; }
	#machibarMain .mainInner .txtBtn a { width: 90%; font-size: 14px; padding: 9px 0 7px; margin: 30px auto 0; }
	
	#machibarTicket { margin: -200px auto 0; }
	#machibarTicket .ticketTop { display: none; }
	#machibarTicket ul { background-image: none; background-color: #ffff4d; padding: 20px; }
	#machibarTicket li:first-child { float: none; width: auto; }
	#machibarTicket li:first-child h3 { margin-bottom: 15px; }
	#machibarTicket li:first-child h3 .span1 { display: block; font-size: 22px; }
	#machibarTicket li:first-child h3 .span2 { font-size: 16px; line-height: 16px; padding-left: 30px; }
	#machibarTicket li + li { float: none; width: auto; margin-top: 20px; }
	#machibarTicket li + li p:first-child {
		float: none;
		width: 100%;
		max-width: 110px;
		padding-left: 0;
		margin: 10px auto 20px;
	}
	#machibarTicket li .txtBtn a { width: 100%; font-size: 14px; }
	#machibarTicket .ticketBtm { display: none; }
	
	#machibarLottery { margin-top: 70px; padding: 5px; }
	#machibarLottery > p { font-size: 26px; line-height: 36px; }
	#machibarLottery > p span { font-size: 14px; line-height: 26px; }
	#machibarLottery div { font-size: 15px; line-height: 24px; padding: 30px 0; }
	
	.machibarArea { font-size: 26px; line-height: 36px; padding-top: 70px; }
	#machibarAreaList { padding-top: 20px; }
	#machibarAreaList + #machibarAreaList { padding-top: 70px; }
	#machibarAreaList h3 { width: 100%; height: auto; font-size: 24px; line-height: 26px; padding: 15px 0; }
	#machibarAreaList h3.blu { background: #57c3e8; }
	#machibarAreaList h3.nvy { background:#005ead; }
	#machibarAreaList h3.red { background:#e9537d; }
	#machibarAreaList h3.org { background:#ec6500; }
	#machibarAreaList h3.grn { background:#00ad77; }
	#machibarAreaList .listFrame .listInner { border-radius: 20px; }
	#machibarAreaList .listFrame .listInner .listLine { display: none; }
	#machibarAreaList .listFrame .listInner .listData ul { margin: 0 auto; }
	#machibarAreaList .listFrame .listInner .listData li:first-child { float: none; width: 100%; margin: 20px auto 20px; }
	#machibarAreaList .listFrame .listInner .listData li + li { width: 100%; }
	#machibarAreaList .listFrame .listInner .listData li + li dt { font-size: 16px; }
	#machibarAreaList .listFrame .listInner .listData li + li dd { font-size: 24px; }
	#machibarAreaList .listFrame .listInner .listData li + li table { font-size: 14px; }
	#machibarAreaList .listFrame .listInner .listPoint { border-radius: 0 0 20px 20px; }
	#machibarAreaList .listFrame .listInner .listPoint li { text-indent: -1em; padding-left: 1em; }
	
	#gourmetMap { padding-top: 35px; padding-bottom: 40px; }
}

@media screen and (max-width: 480px) {
	#machibarAreaList .listFrame .listInner .listPoint p:first-child { width: 90%; }
	#machibarAreaList .listFrame .listInner .listData li + li dt br { display: none;  }
	#machibarAreaList .listFrame .listInner .listData li + li table th { display: block; padding: 10px 0 0 0; }
	#machibarAreaList .listFrame .listInner .listData li + li table td { display: block;  padding: 0 0 8px 1em;  }
	#machibarAreaList .listFrame .listInner .listData li + li table td br { display: none;  }
}


