@charset "utf-8";
/* CSS Document */

a {
	color:#fff;	
}

.backSongAcademy {
	width:100%;
	background-image:url("../img/back2.png");
	background-repeat:repeat-y;
	background-size:100% auto;
	overflow:hidden;
	padding-bottom:60px;
}

.dlOutline {
	overflow:hidden;	
}

.dlOutline dt {
	border-bottom:solid;
	border-color:#09c;
	border-width:1px;	
	text-align:center;
	line-height:40px;
	margin-right:0px;
	margin-bottom:10px;
	color:#fff;
	background-color:#09c;
	float:left;
	clear:left;
	width:10%;
}

.dlOutline dd {
	line-height:40px;
	border-bottom:dashed;
	border-color:#09c;
	border-width:1px;
	padding-left:20px;
	padding-right:20px;
	margin-left:0px;
	margin-bottom:10px;
	float:left;
	width:80%;
}

.dlBenefits {
	overflow:hidden;	
}

.dlBenefits dt {
	border-bottom:solid;
	border-color:#666;
	border-width:1px;	
	text-align:center;
	line-height:40px;
	margin-right:0px;
	margin-bottom:10px;
	color:#fff;
	background-color:#666;
	float:left;
	clear:left;
	width:15%;
}

.dlBenefits dd {
	line-height:40px;
	border-bottom:dashed;
	border-color:#666;
	border-width:1px;
	padding-left:20px;
	padding-right:20px;
	margin-left:0px;
	margin-bottom:10px;
	float:left;
	width:75%;
}

.songAcademyInner {
	width:100%;
	overflow:hidden;
	margin-top:30px;
	margin-bottom:50px;
	line-height:28px;
}

.songAcademyRow {
	overflow:hidden;
	margin-bottom:20px;	
}

.companyInnerText {
	text-align:center;
	width:100%;
	overflow:hidden;	
}

.outlineInner {
	margin-left:auto;
	margin-right:auto;
	overflow:hidden;
	line-height:28px;
}

.subTitle {
	border-left:solid;
	border-left-width:15px;
	border-left-color:#09c;
	border-bottom:solid;
	border-bottom-width:1px;
	border-bottom-color:#ccc;
	
	padding-left:20px;
	width:70%;
	line-height:50px;
	margin-top:30px;
}
li {
	list-style:square;
	color:#09c;
	line-height:40px;
}

.toiawaseBack {
	background-color:rgba(0,153,204,0.1);
	overflow:hidden;
}

.toiawaseArea {
	padding-top:30px;
	padding-bottom:30px;
	width:90%;
	margin-left:auto;
	margin-right:auto;	
	overflow:hidden;	
}

table.festival {
	width:95%;
	margin-left:auto;
	margin-right:auto;
	border-collapse:collapse;
	border-spacing:0px;
	margin-bottom:10px;	
}

.festival th {
	background-color:#09c;
	color:#fff;
	font-weight:normal;
	border-right:solid;
	border-color:#fff;
	border-width:1px;
	width:16%;
}

.thSyo {
	width:8%;
}

.thKyoshitsu {
	width:24%;	
}

.tdSyo {
	width:8%;
	text-align: center;
}

.tdKyoshitsu {
	width:24%;	
}

.thRight {
	border-color:#09c;	
}

.thLeft {
	border-left:solid;
	border-left-color:#09c;
	border-width:1px;
}

.tdCenter {
	text-align:center;	
}

.thDay {
	width:10% !important;	
}

.thShimekiri {
	width:8% !important;	
}

.tdDay {
	width:10% !important;
}

.tdShimekiri {
	width:8% !important;
}

.festival td {
	border:solid;
	border-color:#09c;
	border-width:1px;
	width:16%;
	padding-left:10px;
}

.tdLeft {
	padding-left:0px;
	text-align:center;
}

table.nintei {
	border-collapse:collapse;
	margin-bottom:10px;
	margin-right:2%;
	width:48%;
	float:left;
	display:table;

}

table.nintei th {
	font-weight:normal;
	color:#fff;
	background-color:#09c;
	padding-bottom:10px;
	padding-top:10px;
	
}

table.nintei td {
	border-top:solid;
	border-bottom:solid;
	border-color:#ccc;
	border-width:1px;
	padding-top:10px;
	padding-bottom:10px;
	padding-left:10px;
	padding-right:10px;
	line-height:25px;
}
.tdNintei2 {
	line-height:20px !important;	
}

table.ninteiTitle {
	border-collapse:collapse;
	margin-bottom:10px;
	margin-right:2%;
	width:48%;
	float:left;

}

table.ninteiTitle th {
	font-weight:normal;
	color:#fff;
	background-color:#09c;
	padding-bottom:10px;
	padding-top:10px;
	
}

table.ninteiTitle td {
	border-top:solid;
	border-bottom:solid;
	border-color:#ccc;
	border-width:1px;
	padding-top:10px;
	padding-bottom:10px;
	padding-left:10px;
	padding-right:10px;
	line-height:25px;
}

td.tdNinteiLeft {
	border-right:dashed;
	border-left:solid;
	text-align:center;
	width:40%;
}

td.tdNinteiRight {
	border-right:solid;
	text-align:center;
}

th.thNinteiLeft {
	border-right:dashed;
	border-right-color:#fff;
	border-left:solid;
	border-left-color:#09c;
	border-width:1px;
	width:40%;
}

th.thNinteiRight {
	border-right:solid;
	border-right-color:#09c;
	border-width:1px;
}

.danAreaBack {
	background-color:rgba(0,153,204,0.1);
	overflow:hidden;
	width:98%;
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
	margin-bottom:10px;
	color:#09c;
}

.festivalArea {
	overflow:hidden;
	margin-bottom:20px;	
}

.festivalTitle {
	background-color:#09c;
	color:#fff;
	text-align:center;
	width:100%;
	padding-top:10px;
	padding-bottom:10px;
	margin-bottom:10px;	
	font-size: 1.2rem;
	font-weight: bold;
}

.festivalRow {
	border-bottom:dashed;
	border-width:1px;
	border-color:#ccc;
	padding-left:10px;
	padding-bottom:10px;
	margin-bottom:10px;
}

.subTitleFestival {
	padding-left:5px;
	padding-right:5px;
	padding-top:2px;
	padding-bottom:2px;
	
	margin-right:5px;
	background-color:#09c;
	color:#fff;
	font-size:0.6rem;
}

.shou {
	font-size:1.2rem;
	color:#09c;	
}

.festivalTable {
	overflow:hidden;
	display:block;	
}

.festivalDiv {
	overflow:hidden;
	display:none;
}

.nendoArea {
	border:solid;
	border-color:#09c;
	border-width:1px;
	padding-top:20px;
	padding-bottom:10px;
	margin-bottom:30px;
	width:99.5%;
	overflow:hidden
}

.nendoBtnRow {
	display:table;
	width:100%;
	border-collapse: separate;
  border-spacing: 10px 0;
	margin-bottom:10px;
	
}

.nendoBtn {
	display:table-cell;
	line-height:40px;
	background-color:#09c;
	color:#fff;
	text-align:center;
	cursor : pointer;
}

.nendoBtnMain {
	display:table-cell;
	line-height:40px;
	background-color:#666;
	color:#fff;
	text-align:center;
	cursor : pointer;
}

.nendoBtnNintei {
	width:15%;
}

.nendoBtnFestival {
	width:20%;
}

.songAcademyBase {
	overflow:hidden;
	width:100%;
}

.sogoYusyoArea {
	/*background-color:rgba(0,153,204,0.1);*/
	border:dashed;
	border-color:#09c;
	border-width:1px;
	width:95%;
	margin-left:auto;
	margin-right:auto;
	padding-top:20px;
	padding-bottom:20px;
	margin-bottom:20px;
	text-align:center;
	line-height:50px;
	box-sizing:border-box;
}

.sogoYusyoTitle {
	background-color:#09c;
	color:#fff;
	line-height:50px;
	padding-left:20px;
	padding-right:20px;
	margin-right:20px;
	display:inline-block;
	font-size:1.2rem;
	font-weight: bold;
}

.festivalPic {
	display:block;
	width:60%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;	
}

.festivalTextBase {
	width:100%;
	padding-top:10px;
	padding-bottom:10px;
	background-color:rgba(0,153,204,0.1);
}

.festivalText {
	width:95%;
	margin-left:auto;
	margin-right:auto;
}

.festivalText2 {
	width:60%;
	margin-left:auto;
	margin-right:auto;
}

.niteiText {
	width:95%;
	margin-left:auto;
	margin-right:auto;
}

.festivalBase {
	overflow:hidden;
	width:100%;
}

.nitteiHenkoArea {
	/*background-color:rgba(0,153,204,0.1);*/
	border:dashed;
	border-color:#666;
	border-width:1px;
	width:60%;
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
	padding-top:20px;
	padding-bottom:20px;
	margin-bottom:20px;
	text-align:center;
	line-height:40px;
	font-size:1.2rem;
	box-sizing:border-box;
}

.areaFestivalYusho {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	margin-bottom: 30px;
}
.colFestivalYusho {
	width: 32%;
	border: solid #09c 1px;
}
.colFestivalYusho img{
	width: 100%;
	height:auto;
	display: block;
}

.titleFestivalYusho {
	background-color:#09c;
	color:#fff;
	text-align: center;
	display:block;
	padding: 10px 0px;
}
.titleFestivalYusho span{
	font-size: 1.2rem;
	font-weight: bold;
}
.innerFestivalYusho {
	width: 90%;
	margin:20px auto;
}

.backBlue {
	background-color:rgba(0,153,204,0.1);
}
.textRight {
	text-align: right;
}
.rowCharenge {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.colCharenge {
	width: 48%;
}
table.charengeTitle {
	border-collapse:collapse;
	margin-bottom:10px;
	margin-right:2%;
	width:100%;
}
table.charengeTitle.isGray {
	background-color:#2c2c35;
}
table.charengeTitle.isBlue {
	background-color:#09c;
}
table.charengeTitle th {
	font-weight:normal;
	color:#fff;
	padding-bottom:10px;
	padding-top:10px;
}
table.charengeTitle th:first-of-type {
	border-right:dashed;
	border-right-color:#fff;
	border-left:solid;
	border-left-color:#09c;
	border-width:1px;
	width:40%;	
}
table.charengeTitle th:last-of-type {
	border-right:solid;
	border-right-color:#09c;
	border-width:1px;
}
table.charengeTitle.isGray th:first-of-type {
	border-left-color:#2c2c35;
}
table.charengeTitle.isGray th:last-of-type {
	border-right-color:#2c2c35;
}
table.charenge {
	border-collapse:collapse;
	margin-bottom:20px;
	width: 100%;
}
table.charenge:last-of-type {
	margin-bottom:0px;
}
table.charenge th {
	font-weight: normal;
	border-top:solid;
	border-bottom:solid;
	border-left:solid;
	border-color:#ccc;
	border-width:1px;
	padding-bottom:10px;
	padding-top:10px;
}
table.charenge.isGray th {
	color:#2c2c35;
	background-color:rgba(44,44,53,0.1);
}
table.charenge.isBlue th {
	color:#09c;
	background-color:rgba(0,153,204,0.1);
}
table.charenge td {
	text-align:center;
	border-top:solid;
	border-bottom:solid;
	border-color:#ccc;
	border-width:1px;
	padding-top:10px;
	padding-bottom:10px;
	padding-left:10px;
	padding-right:10px;
	line-height:25px;
}
table.charenge td:first-of-type {
	border-right:dashed;
	border-left:dashed;
	border-color:#ccc;
	border-width:1px;	
}
table.charenge td:last-of-type {
	border-right:solid;
	border-color:#ccc;
	border-width:1px;
}
@media screen and (max-width: 999px) {
	.outlineInner {
		width:95%;
	}

	.dlOutline dt {
		float:none;
		width:100%;
	}
	
	.dlOutline dd {
		float:none;
		width:100%;
	}

	.dlBenefits dt {
		float:none;
		width:100%;
	}
	
	.dlBenefits dd {
		float:none;
		width:100%;
	}

	.subTitle {
		width:100%;
	}

	table.nintei {
		width:100%;
		margin-right:0px;
	}
	
	.title2 {
		display:none;
	}
	
	table.ninteiTitle {
		width:100%;
	}
	
	.danAreaBack {
		width:100%;
	}

	.festivalTable {
		display:none;	
	}
	
	.festivalDiv {
		display:block;
	}

	.nendoBtnRow {
		display:block;
	}

	.nendoBtn {
		display:block;
		width:90% !important;
		margin-top:10px;
		margin-left:auto;
		margin-right:auto;
	}

	.nendoBtnMain {
		display:block;
		width:90% !important;
		margin-left:auto;
		margin-right:auto;
	}
	
	.festivalPic {
		width:100%;	
	}
	
	.sogoYusyoArea {
		width:100%;
		font-size:1rem;
	}
	
	.festivalText2 {
		width:100%;	
	}

	.nitteiHenkoArea {
		width:100%;
		font-size:1rem;
	}
	.areaFestivalYusho {
		flex-direction: column;
	}
	.colFestivalYusho {
		width: 100%;
		margin-bottom: 30px;
	}
	.rowCharenge {
		flex-direction: column;
	}
	.colCharenge {
		width: 100%;
	}
	table.charenge th {
		width: 40px;
	}
}
@media screen and (min-width:1000px) and (max-width: 1249px) {
	.outlineInner {
		width:700px;
	}

	.festivalPic {
		width:80%;	
	}

	.festivalText2 {
		width:80%;	
	}

	.nitteiHenkoArea {
		width:80%;
	}
}
@media screen and (min-width:1250px) and (max-width:1599px) {
	.outlineInner {
		width:900px;
	}

	.festivalPic {
		width:80%;	
	}

	.festivalText2 {
		width:80%;	
	}

	.nitteiHenkoArea {
		width:80%;
	}
}
@media screen and (min-width:1600px) {	
	.outlineInner {
		width:1000px;
	}
}
