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

html {
    height:100%;
}

body {
    height:100%;
}

#wrapper {
    height:100%;
    min-height:100%;
}

body > #wrapper {
    height: auto;
}

/*wrapper*/
#wrapper {
	position: relative;
	height: 100%;
	padding-left: 260px;
}

/*header*/
#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 250px;
	height: 100%;
	background: #004DA2;
	border-right: 10px solid #DDDDDD;
	z-index: 100000;
}

#header .inner {
	width: 250px;
}

#header .logo {
	margin-bottom: 40px;
	padding-top: 40px;
}

#header .logo img {
	margin: 0 auto;
}

#header #gnavi {
	margin-bottom: 10px;
	border-top: 1px solid #4D83BE;
}

#header #gnavi li {
	position: relative;
	border-bottom: 1px solid #4D83BE;
}

#header #gnavi ul.sub {
	display: none;
	width: 250px;
	position: absolute;
	top: 0;
	left: 250px;
	background: #004DA2;
	border-left: 10px solid #AAAAAA;
	z-index: 100000;
}

#header #gnavi li:hover ul.sub,
#header #gnavi ul.sub:hover {
	display: block;
	z-index: 100000;
}


#header #gnavi li a {
	display: block;
	padding: 15px 10px;
	font-size: 16px;
	color: #FFF;
	text-decoration: none;
	background: url("/img/common/icon_link.png") right center no-repeat;
	transition: all .3s;
}

#header #gnavi li a:hover {
	background-color: #2668B0;	
}

#header .eachpr {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	margin: 0 10px 20px;
}

#header .eachpr li {
    width: 100%;
    display: flex;
	margin-bottom: 10px;
    box-sizing: border-box;
}

#header .eachpr li a {
	display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
	padding: 15px 10px;
	font-size: 16px;
	text-align: center;
	color: #FFF;
	text-decoration: none;
	border: 1px solid #4D83BE;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	transition: all .3s;
    box-sizing: border-box;
}

#header .eachpr li.media {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(50% - 5px);
}

#header .eachpr li.media a {
    padding: 10px;
    line-height: 1.2;
    font-size: 14px;
}

#header .eachpr li.media a img {
    display: block;
    width: 20px;
    height: auto;
    margin-right: 5px;
}

#header .eachpr li a:hover {
	background-color: #2668B0;
}




/*contents*/
#contents {
	width: 100%;
	z-index: 10000;
}

#contents .inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 30px 20px;
}

#contents .grayover {
	padding: 30px 20px;
	background: #F5F5F5;
}

#contents .grayover .grayinner {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
}

/*footer*/
#footer {
	width: 950px;
	margin: 0 auto;
	padding: 20px 0 40px;
}

#footer ul {
	margin-bottom: 20px;
	text-align: center;
}

#footer ul li {
	display: inline;
	margin-right: 10px;
	font-size: 14px;
}

#footer ul li a {
	color: #666;
}

#footer p.copyright {
	font-size: 12px;
	text-align: center;
}



/*top*/
#top #contents h1 {
	margin-bottom: 20px;
	font-size: 16px;
}

#top .bx-wrapper,
#top ul.bxslider,
#top ul.bxslider li {
    width: 100%;
    box-sizing: border-box;
    background-size: cover;
}

#top #contents ul.bxslider {
	height: 650px;
	z-index: 1000;
	background: #BEBEBE;
}

#top #contents ul.bxslider li {
	width: 100%;
	height: 650px;
}

#top #contents ul.bxslider li.no1 {
    background: url("/img/top/img_main_01.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no2 {
    background: url("/img/top/img_main_02.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no3 {
    background: url("/img/top/img_main_03.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no4 {
    background: url("/img/top/img_main_04.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no5 {
    background: url("/img/top/img_main_05.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no6 {
    background: url("/img/top/img_main_06.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no7 {
    background: url("/img/top/img_main_07.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents ul.bxslider li.no8 {
    background: url("/img/top/img_main_08.jpg") center center repeat-x;
    background-size: cover;
}

#top #contents .section {
	padding: 20px;
	border: 1px solid #DDD;
}

#top #contents .message h1,
#top #contents .section h2 {
	margin-bottom: 20px;
	font-size: 20px;
}

#top #contents .message h1 br {
	display: none;
}

#top #contents .message h1 span,
#top #contents .section h2 span {
	display: block;
	margin-bottom: 10px;
}

#top #contents .message h1::after,
#top #contents .section h2::after {
    border-bottom: 3px solid #004DA2;
    content: "";
    display: block;
    width: 40px;
}

#top #contents .message .media {
    display: flex;
    justify-content: space-between;
}
#top #contents .message .media .thumb_youtube {
    position: relative;
    width: 50%;
    padding-top: 28.125%;
    box-sizing: border-box;
}
#top #contents .message .media .thumb_youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
#top #contents .message .media .explain {
    width: calc(50% - 15px);
}
#top #contents .message .media .explain p {
    margin-bottom: 20px;
}
#top #contents .message .media .explain ul.link {
    display: flex;
    justify-content: space-between;
}
#top #contents .message .media .explain ul.link li {
    width: calc(50% - 5px);
    display: flex;
}
#top #contents .message .media .explain ul.link li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 10px;
    border: 1px solid #CCC;
    border-radius: 5px;
    box-sizing: border-box;
    color: #333;
    text-decoration: none;
    text-align: center;
}
#top #contents .message .media .explain ul.link li.youtube a:hover {
    border: 1px solid #E61610;
    color: #E61610;
}
#top #contents .message .media .explain ul.link li.twitter a:hover {
    border: 1px solid #3492D0;
    color: #3492D0;
}
#top #contents .message .media .explain ul.link li a img {
    display: block;
    width: 50px;
    height: auto;
    margin-right: 10px;
}
#top #contents .grayover .grayinner .message {
	width: 100%;
	padding: 20px;
	background: #FFF;
}

#top #contents .section.aboutus {
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
	box-sizing: border-box;
	margin-bottom: 30px;
}

#top #contents .section.aboutus h2 {
	width: 100%;
}

#top #contents .section.aboutus .image {
	width: 40%;
	margin-right: 2%;
}

#top #contents .section.aboutus .image img {
	width: 100%;
}

#top #contents .section.aboutus .image a img {
	transition: all .3s;
}

#top #contents .section.aboutus .image a:hover img {
	opacity: 0.7;
}

#top #contents .section.aboutus .explain {
	width: 58%;
}

#top #contents .section.aboutus .explain h3 {
	margin-bottom: 15px;
	font-size: 24px;
}

#top #contents .section .explain p.txt {
	margin-bottom: 10px;
}

#top #contents .section .explain  ul li {
	display: inline;
	margin-right: 10px;
}

#top #contents .newsarea {
    display: flex;
    justify-content: flex-start;
	margin-bottom: 30px;
}

#top #contents .newsarea .section {
	width: 100%;
	margin-bottom: 0;
	border: 1px solid #DDD;
	flex-grow: 1;
}

#top #contents .newsarea .section:first-child {
	margin-right: 20px;
}

#top #contents .newsarea .section li {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #CCC;
}

#top #contents .newsarea .section li p.title {
	font-weight: bold;
}

#top #contents .newsarea .section p.nothing {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #CCC;
}

#top #contents .link ul li {
	display: inline;
	margin-right: 15px;
	padding: 5px 0 5px 40px;
}

#top #contents .link ul li.tokai {
	background: url("/img/top/img_logo_twave.png") left center no-repeat;
}

#top #contents .link ul li.ob {
	background: url("/img/top/img_logo_ob.png") left center no-repeat;
	padding-left: 50px;
}

#top #contents .link ul li.suiren {
	background: url("/img/top/img_logo_suiren.png") left center no-repeat;
}

/*sub*/
#sub .maintitle {
	padding: 0 20px;
	height: 350px;
    background: url("/img/aboutus/bg_title.jpg") center center repeat-x;
}

#sub.aboutus.leader .maintitle {
	background: url("/img/aboutus/bg_title_leader.jpg") center center repeat-x;
}

#sub.aboutus.scene .maintitle {
	background: url("/img/aboutus/bg_title_scene.jpg") center center repeat-x;
}

#sub.aboutus.team .maintitle {
	background: url("/img/aboutus/bg_title_team.jpg") center center repeat-x;
}

#sub.aboutus.record .maintitle {
	background: url("/img/aboutus/bg_title_record.jpg") center center repeat-x;
}

#sub.teacher .maintitle {
	background: url("/img/teacher/bg_title.jpg") center center repeat-x;
}

#sub.facilities .maintitle {
	background: url("/img/facilities/bg_title.jpg") center center repeat-x;
}

#sub.concert .maintitle {
	background: url("/img/concertinfo/bg_title.jpg") center center repeat-x;
}

#sub.contactus .maintitle {
	background: url("/img/contactus/bg_title.jpg") center center repeat-x;
}

#sub.entrance .maintitle {
	background: url("/img/entrance/bg_title.jpg") center center repeat-x;
}

#sub.news .maintitle {
	background: url("/img/news/bg_title.jpg") center center repeat-x;
}




#sub .maintitle h1 {
	padding-top: 150px;
	text-align: center;
	color: #FFF;
	font-size: 34px;
}


#sub #breadcrumbs {
	margin-bottom: 30px;
	font-size: 14px;
}

#sub #breadcrumbs li {
	float: left;
}

#sub #breadcrumbs li span {
	margin: 0 5px;
}

#sub #breadcrumbs li a {
	color: #333;
}

#sub #contents ul.lnavi {
	width: 100%;
	text-align: center;
}

#sub #contents ul.lnavi li {
	display: inline;
	margin-right: 20px;
}

#sub #contents ul.lnavi li:last-child {
	margin-right: 0;
}

#sub #contents ul.lnavi li.current a {
	font-weight: bold;
	color: #333;
	text-decoration: none;
}

#sub #contents h2 {
	margin-bottom: 40px;
	font-size: 20px;
	color: 
}

#sub #contents h2 span {
	display: block;
	margin-bottom: 10px;
}

#sub #contents h2::after {
    border-bottom: 3px solid #004DA2;
    content: "";
    display: block;
    width: 40px;
}

#sub #contents h3 {
	margin-bottom: 20px;
	font-size: 18px;
	color: 
}

#sub #contents h3 span {
	display: block;
	margin-bottom: 10px;
}

#sub #contents h3::after {
    border-bottom: 1px solid  #333;
    content: "";
    display: block;
    width: 40px;
}

#sub #contents p.txt {
	margin-bottom: 20px;
	line-height: 1.8;
}

#sub #contents .mainimage {
	margin-bottom: 20px;
}

#sub #contents .mainimage img {
	width: 100%;
}


#sub #contents .section {
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
	box-sizing: border-box;
	margin-bottom: 40px;
}

#sub #contents .section h3 {
	width: 100%;
}

#sub #contents .section .image {
	width: 40%;
	margin-right: 2%;
}

#sub #contents .section .image img {
	width: 100%;
}

#sub #contents .section .explain {
	width: 58%;
}

#sub #contents .section .explain-wide {
	width: 100%;
}


/*record*/
#sub.record #contents .section.recordlist table {
	width: 950px;
	border-left: 1px solid #CCC;
	border-top: 1px solid #CCC;
}

#sub.record #contents .section.recordlist table th,
#sub.record #contents .section.recordlist table td {
	padding: 5px;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	font-size: 14px;
}

#sub.record #contents .section.recordlist table th {
	font-size: 16px;
	background: #F3F3F3;
}

#sub.record #contents .section.recordlist table th.year {
	width: 60px;
}


#sub.record #contents .section.recordlist table th.song {
	width: 200px;
}

#sub.record #contents .section.recordlist table th.songlong {
	width: 495px;
}


#sub.record #contents .section.recordlist table th.rpart {
	width: 80px;
}

#sub.record #contents .section.recordlist table td.year,
#sub.record #contents .section.recordlist table td.master,
#sub.record #contents .section.recordlist table td.rpart {
	text-align: center;
}

/*concert*/
#sub.concert #contents .section.clist {
	display: block;
}

#sub.concert #contents .section.clist li {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #CCC;
}

#sub.concert #contents .section.clist li p.date {
	margin-bottom: 5px;
}

#sub.concert #contents .section.clist li p.title {
	font-size: 18px;
	font-weight: bold;
}

#sub.concert #contents .section.posterImage img {
	margin: 0 auto;
}


/*news*/
#sub.news #contents .section.nlist {
	display: block;
}

#sub.news #contents .section.nlist li {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #CCC;
}

#sub.news #contents .section.nlist li p.date {
	margin-bottom: 5px;
}

#sub.news #contents .section.nlist li p.title {
	font-size: 18px;
	font-weight: bold;
}

#sub.news #contents .section.ndetail .posterImage {
	margin-bottom: 30px;
}

#sub.news #contents .section.ndetail .posterImage img {
	margin: 0 auto;
}

#sub.news #contents .section.detail .newsimage {
	margin-bottom: 30px;
}

#sub.news #contents .section.detail .newsimage img {
	margin: 0 auto;
}

/*entrance*/

#sub.entrance #contents .section.tour {
	padding: 20px;
	border: 1px solid #DDD;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background: #F3F3F3;
}


	


/*clearfix*/
#sub #breadcrumbs,
#sub #contents ul.lnavi {
	zoom: 1;
}

#sub #breadcrumbs:after,
#sub #contents ul.lnavi:after {
    content: ".";
    height: 0;
    display: block;
    visibility: hidden;
    clear: both;
}

