@charset "UTF-8";
/* CSS Document */

*{margin: 0; padding: 0;}
body{margin: 0 auto;font-size:17px; line-height: 2;font-family: "Playfair Display", serif;}

/*共通*/
#contents{width: 100%; max-width: 1080px; margin: 0 auto;}
h2{position: relative;display: inline-block;margin-bottom: 1em; width: 100%; text-align: center;}
h2:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #C5000A;
  border-radius: 2px;
}
h3{ display: block; margin: 20px auto 10px;}
h4{ margin: 20px auto 7px; background: #ffffb2;}
img{display: block;}
mb-10{margin-bottom: 10px;}
mb-20{margin-bottom: 20px;}
.block{ width: 80%; margin: 3% auto;}
.table_res2{width: 100%; margin: 0 auto;}
.table_res2 td{ width: 46%; padding: 1%;}
.tx-s{ font-size: 15px;}
.tx-l{font-size: 20px;}
.tx-xl{ font-size: 25px;}
.tx-CL{text-align: center;}
footer{ background: #eee; text-align: center; padding: 30px}
footer ul{width: 90%; margin: 0 auto;}
footer ul.supporterList li{ display: inline-block; margin-left: 7px;}
.ls-none{ text-align: center;}
.ls-none li{ list-style: none;
border-bottom: 1px dotted #ccc;
padding-bottom: 2%;}
.heading06 {
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	font-size: 26px;
	text-align: center;
}

.heading06 span {
	position: relative;
	z-index: 2;
}

.heading06::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	color: rgba(224,66,114,0.2);
	font-size: 80px;
	font-style: italic;
}

.heading06::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%) rotate(30deg);
	width: 1px;
	height: 40px;
}
.pa-left20{ padding-left: 20px;}
a{ text-decoration: none; color: #C5000A;}
a:hover{ opacity: 0.7;}
.br_pc{display: inherit;}
.br_sp{display: none;}

ul.tokuten li{padding-left: 10px; list-style: disc;}

/*共通（SMP共通）*/
@media screen and (max-width: 480px) {
#contents{width: 100%; overflow: hidden;}
.block{ width: 98%; margin: 3% auto;}
.table_res2 td{display: block; width: 100%;padding: 2% 0;}
footer ul{width: 98%; margin: 0 auto;}
.br_pc{display: none;}
.br_sp{display:inherit;}
.tx-CL{text-align: left;}
}


/*個別*/
h1.logo{margin: 20px auto;text-align: center; font-size:15px;}
h1.logo img{ max-width: 500px; margin: 0 auto;}
.copylight{text-align:center; font-size:60%; color:#bbb; margin: 30px auto;}
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
	 margin: 2% auto;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

/*個別（SMP共通）*/
@media screen and (max-width: 480px) {
h1.logo img{margin: 20px auto; max-width: 300px;}
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
	 margin: 3% auto;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
}

.btn a{ background: #C5000A; padding: 10px; text-align: center; color: #fff; display: block; margin: 50px auto; border-radius: 10px; font-size: 22px; width: 80%; max-width: 600px;}
