@charset "UTF-8";
/**
 * ŠÖ‰®¬ŠwZ ƒXƒ^ƒCƒ‹ƒV[ƒg
 */
 
 
/* WebƒtƒHƒ“ƒg icomoon
----------------------------------------------- */
@font-face {
	font-family: 'icomoon';
	src:url('fonts/icomoon.eot?-tj4fno');
	src:url('fonts/icomoon.eot?#iefix-tj4fno') format('embedded-opentype'),
		url('fonts/icomoon.woff?-tj4fno') format('woff'),
		url('fonts/icomoon.ttf?-tj4fno') format('truetype'),
		url('fonts/icomoon.svg?-tj4fno#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}


/* ‘S”Ê
----------------------------------------------- */
body{
	color: #333;
	font-family: Helvetica, Arial, Roboto, 'Droid Sans', "ƒqƒ‰ƒMƒmŠpƒS ProN W3", "Hiragino Kaku Gothic ProN", "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "ƒƒCƒŠƒI", Meiryo, Osaka, "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
	background: url('../img/bg1.png');
}

a{
	color: #00A0E9;
}

a:hover{
	color: #E9609E;
}

img{
	width: 100%;
	height: auto;
}

.tel{
	text-decoration: none;
	color: #333;
	cursor: text;
}
.tel:hover{
	color: #333;
}
@media only screen and (max-width: 900px) {
	.tel{
		text-decoration: none;
		color: #fff;
		cursor: auto;
		
		display: inline-block;
		padding: 15px;
		margin: 3px;
		
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border-radius: 10px;
		
		-webkit-box-shadow: 1px 1px 3px 1px rgba(50, 50, 50, 0.5);
		-moz-box-shadow:    1px 1px 3px 1px rgba(50, 50, 50, 0.5);
		box-shadow:         1px 1px 3px 1px rgba(50, 50, 50, 0.5);
	}
	.tel:hover{
		color: #fff;
	}
}
@media only screen and (max-width: 480px) {
	body{
		background: none;
	}
}

/* Page
----------------------------------------------- */
#Page{
	width: 900px;
	margin: 0 auto;
	padding: 0 10px;
	background-color: #fff;
	
	-webkit-box-shadow: 1px 1px 5px 2px #ccc;
	-moz-box-shadow: 1px 1px 5px 2px #ccc;
	box-shadow: 1px 1px 5px 2px #ccc;
}

@media only screen and (max-width: 900px) {
	#Page{
		width: 96%;
		max-width: 630px;
		padding: 0 1%;
	}
}
@media only screen and (max-width: 480px) {
	#Page{
		width: 94%;
		max-width: none;
		padding: 1% 2% 1% 0;
		
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}
}

/* Header
----------------------------------------------- */
#Header{
	margin-bottom: 20px;
}

#Header .bx-viewport{
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
	border-width: 0;
	left: 0;
}
#Header h1{
	font-size: 14px;
	color: #fff;
	text-align: right;
	padding: 0 1em;
	line-height: 200%;
	
	background: #007bc7;
	background: -moz-linear-gradient(top,  #007bc7 0%, #00afec 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#007bc7), color-stop(100%,#00afec));
	background: -webkit-linear-gradient(top,  #007bc7 0%,#00afec 100%);
	background: -o-linear-gradient(top,  #007bc7 0%,#00afec 100%);
	background: -ms-linear-gradient(top,  #007bc7 0%,#00afec 100%);
	background: linear-gradient(to bottom,  #007bc7 0%,#00afec 100%);
}

#Header .top_logo{
	width: 550px;
	float: left;
}

#Header .top_img_wrap{
	float: left;
	width: 350px;
}

@media only screen and (max-width: 900px) {
	#Header h1{
		padding: 6px 1em;
		line-height: 130%;
	}
	#Header .top_logo{
		width: 100%;
		float: none;
	}

	#Header .top_img_wrap{
		display: none;
	}
}

@media only screen and (max-width: 900px) {
	#Header{
		margin-bottom: 0;
	}
}

/* Container
----------------------------------------------- */
#Container{
	margin-bottom: 3em;
}

/* Contents
----------------------------------------------- */
#Contents{
	float: right;
	width: 630px;
	min-height: 800px;
}
* html #Contents{
	 /** IE6 hack **/
	height: 500px;
}


/** title **/
#Contents .title1,
#Contents .title2{
	font-size: 18px;
	padding: 0 10px 0 20px;
	*padding: 0 1em;
	text-indent: -14px;
	*text-indent: 0;
	font-weight: bold;
	line-height: 36px;
	color: #0068B6;
	border: 1px solid #e2e2e2;
	border-bottom: 3px solid #0068B6;
	*border-left: 8px solid #0068B6;
	text-shadow: 1px 1px 2px #fff;
	
	background: #eee;
	background: -moz-linear-gradient(top,  #ffffff 0%, #f1f1f1 15%, #e2e2e2 16%, #f6f6f6 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(15%,#f1f1f1), color-stop(16%,#e2e2e2), color-stop(100%,#f6f6f6));
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f1f1f1 15%,#e2e2e2 16%,#f6f6f6 100%);
	background: -o-linear-gradient(top,  #ffffff 0%,#f1f1f1 15%,#e2e2e2 16%,#f6f6f6 100%);
	background: -ms-linear-gradient(top,  #ffffff 0%,#f1f1f1 15%,#e2e2e2 16%,#f6f6f6 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#f1f1f1 15%,#e2e2e2 16%,#f6f6f6 100%);

	-webkit-box-shadow: 1px 1px 2px 1px #aaa;
	-moz-box-shadow: 1px 1px 2px 1px #aaa;
	box-shadow: 0 0 2px 1px #aaa;
}
#Contents .title1::before,
#Contents .title2::before{
	content: '\00a0\00a0';
	font-size: 20px;
	border-left: 5px solid #0068B6;
}
#Contents .title1 a,
#Contents .title2 a{
	color: #0068B6;
	text-decoration: none;
}
#Contents .title1 a:hover,
#Contents .title2 a:hover{
	color: #0068B6;
}

#Contents .title2{
	font-size: 15px;
	line-height: 30px;
}
#Contents .title2::before{
	font-size: 16px;
	border-left: 5px solid #0068B6;
}

#Contents .title3{
	padding-left: 40px;
	padding-right: 4%;
	font-size: 20px;
	font-weight: bold;
	line-height: 32px;
	background: no-repeat bottom left url('../img/title3_bg.png');
}

#Contents .title4{
	margin-left: 5%;
	padding-left: 35px;
	padding-right: 4%;
	font-size: 18px;
	font-weight: normal;
	line-height: 32px;
	background: no-repeat bottom left url('../img/title4_bg.png');
}

/** head_img **/
#Contents .head_img1{
	padding-left: 40px;
	padding-right: 4%;
	font-size: 20px;
	font-weight: bold;
	line-height: 32px;
	background: no-repeat top left url('../img/head_img1.png');
}

#Contents .head_img2{
	margin-left: 5%;
	margin-bottom: 0.5em;
	padding-left: 35px;
	padding-right: 4%;
	font-size: 18px;
	font-weight: normal;
	line-height: 32px;
	background: no-repeat top left url('../img/head_img2.png');
}



/** section **/
#Contents .section1{
	margin: 0.5em 0 1em 0;
}
#Contents .section2{
	margin: 0.5em 0 0 0;
}
#Contents .section1::before,
#Contents .section1::after,
#Contents .section2::before,
#Contents .section2::after{
	content: " ";
	display: table;
}
#Contents .section1::after,
#Contents .section2::after{
	clear :both;
}
#Contents .section1,
#Contents .section2 {
	*zoom: 1;
}

#Contents .indent1em{
	padding-left: 1em;
}

/** text **/
#Contents .text1{
	margin-left: 10%;
	margin-bottom: 1em;
	max-width: 80%;
	line-height: 150%;
}
* html #Contents .text1{
	width: 80%;
}

/** note **/
#Contents .note1{
	font-size: 90%;
	line-height: 130%;
	padding-left: 1em;
	text-indent: -1em;
}


/** image **/
#Contents .image_wide1{
	text-align: center;
	font-size: 13px;
	line-height: 150%;
	margin: 0 0 10px 0;
}
#Contents .image_wide1 img{
	width: auto;
	max-width: 100%;
	height: auto;
}
* html #Contents .image_wide1 img{
	 /** IE6 hack **/
	width: 80%;
}
#Contents .image1{
	float: right;
	text-align: center;
	font-size: 13px;
	line-height: 150%;
	max-width: 42.5%;
	margin: 0 5% 10px 2.5%;
}
#Contents .image1 img{
	width: auto;
	max-width: 100%;
	height: auto;
}
* html #Contents .image1 img{
	 /** IE6 hack **/
	width: 50%;
}

/** list **/
#Contents ul.list1,
#Contents ul.list2,
#Contents ul.list3{
	line-height: 150%;
	margin-bottom: 1em;
	margin-left: 10%;
	width: 80%;
}
#Contents ul.list1 li,
#Contents ul.list2 li,
#Contents ul.list3 li{
	margin-left: 1em;
}
#Contents ul.list1{
	list-style-type: disc;
}
#Contents ul.list2{
	list-style-type: circle;
}
#Contents ul.list3{
	list-style-image: url('../img/head_img3.png');
}
#Contents ul.level2{
	margin-left: 2%;
	margin-bottom: 0;
	width: 98%;
}


@media only screen and (max-width: 900px) {
	#Contents{
		margin-bottom: 3em;
		min-height: 0;
	}
	#Contents .title1,
	#Contents .title2{
		line-height: 130%;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	#Contents .title3{
		line-height: 24px;
		padding-top: 4px;
		padding-bottom: 4px;
		padding-right: 2%;
	}
	#Contents .title4{
		line-height: 22px;
		padding-top: 5px;
		padding-bottom: 5px;
		padding-right: 2%;
	}
	#Contents .head_img1{
		line-height: 24px;
		padding-top: 4px;
		padding-bottom: 4px;
		padding-right: 2%;
	}
	#Contents .head_img2{
		line-height: 22px;
		padding-top: 4px;
		padding-bottom: 4px;
		padding-right: 2%;
	}
	#Contents{
		float: none;
		width: 100%;
	}
}

@media only screen and (max-width: 480px) {
	#Contents .image1{
		float: none;
		max-width: 80%;
		margin: 0 10% 10px 10%;
	}
}

/* Submenu1, Submenu2
----------------------------------------------- */
@media only screen and (min-width: 901px) {
	#Submenu1 .menu .items{
		display: block !important;
	}
}

#Submenu1,
#Submenu2{
	float: left;
	width: 240px;
	font-size: 13px;
}

#Submenu1 .menu_button{
	font-size: 0;
}

#Submenu1 .menu,
#Submenu2 .menu{
	padding: 10px;
	background-color: #D3EDF9;
}

#Submenu1 .menu .items li{
	width: 100%;
}

#Submenu1 .menu .items a{
	display: block;
	margin-bottom: 2px;
	padding: 8px 1em;
	line-height: 120%;
	color: #526623;
	text-shadow: 1px 1px 0 #fff;
	background-color: #F3F3F1;
	border-bottom: 2px solid #0068B6;
	*zoom: 1;
}

#Submenu1 .menu .items a:hover{
	background: #FFF991;
	background: -moz-linear-gradient(top,  #fefcea 0%, #f1da36 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fefcea), color-stop(100%,#f1da36));
	background: -webkit-linear-gradient(top,  #fefcea 0%,#f1da36 100%);
	background: -o-linear-gradient(top,  #fefcea 0%,#f1da36 100%);
	background: -ms-linear-gradient(top,  #fefcea 0%,#f1da36 100%);
	background: linear-gradient(to bottom,  #fefcea 0%,#f1da36 100%);
}

#Submenu2 .banner{
	margin-top: 10px;
}
#Submenu2 .banner:first-child{
	margin-top: 0;
}

@media only screen and (max-width: 900px) {
	#Submenu1{
		float: none;
		width: 100%;
		font-size: 16px;
		
		margin-bottom: 20px;
	}
	
	#Submenu1 .menu{
		padding: 0;
	}
	
	#Submenu1 .menu_button{
		font-size: 16px;
	}

	#Submenu1 .menu .items{
		display: none;
	}
	
	#Submenu1 .menu_button,
	#Submenu1 .menu .items a{
		display: block;
		margin: 3px 3px 12px 3px;
		padding: 15px 2.5em 15px 1.5em;
		line-height: 120%;
		color: #fff;
		text-shadow: -1px -1px 1px #777;
		border: 1px dashed rgba(255, 255, 255, 0.75);
		
		position: relative;
		text-decoration: none;
		
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;

		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		
		background: #007bc7;
		background: -moz-linear-gradient(top,  #0098e5 0%, #007bc7 100%);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#0098e5), color-stop(100%,#007bc7));
		background: -webkit-linear-gradient(top,  #0098e5 0%,#007bc7 100%);
		background: -o-linear-gradient(top,  #0098e5 0%,#007bc7 100%);
		background: -ms-linear-gradient(top,  #0098e5 0%,#007bc7 100%);
		background: linear-gradient(to bottom,  #0098e5 0%,#007bc7 100%);

		-webkit-box-shadow: 0 0 0 3px #0068B6, 1px 1px 2px 3px rgba(50, 50, 50, 0.5);
		-moz-box-shadow:    0 0 0 3px #0068B6, 1px 1px 2px 3px rgba(50, 50, 50, 0.5);
		box-shadow:         0 0 0 3px #0068B6, 1px 1px 2px 3px rgba(50, 50, 50, 0.5);
	}
	#Submenu1 .menu_button:hover,
	#Submenu1 .menu .items a:hover{
		background: #00afec;
	}
	#Submenu1 .menu .items li:last-child a{
		margin-bottom: 0;
	}
	#Submenu1 .menu .items a::after{
		display: block;
		position: absolute;
		top: 50%;
		right: 21px;
		content: '';
		width: 15px;
		height: 15px;
		margin-top: -9px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#Submenu1 .menu_button{
		padding-left: 60px;
	}
	#Submenu1 .menu_button::before{
		display: block;
		position: absolute;
		top: 50%;
		left: 16px;
		font-family: 'icomoon';
		content: "\e601";
		font-size: 36px;
		margin-top: -11px;
		text-shadow: none;
		
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	#Submenu1 .menu_button::after{
		display: block;
		position: absolute;
		top: 50%;
		right: 21px;
		content: '';
		width: 15px;
		height: 15px;
		margin-top: -14px;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	#Submenu2{
		float: none;
		margin: 2em auto 0 auto;
		width: 96%;
		max-width: 320px;
		font-size: 15px;
	}
	#Submenu2 .menu .title{
		padding: 10px 1em;
	}
}


/* Footer
----------------------------------------------- */
#Footer{
	padding: 1.5em 1em 2em 1em;
	margin-top: 3em;
	border-top: 3px solid #0068B6;
	text-align: center;
	line-height: 130%;
}

#Footer .menu{
	font-size: 0;
}

#Footer .menu .items li{
	display: inline-block;
	*display: inline; /* IE6, IE7 */
	padding: 0 8px;
	font-size: 15px;
	border-left: 1px solid #333;
}
#Footer .menu .items li a{
	white-space: nowrap;
}

#Footer .menu .items li:last-child{
	border-right: 1px solid #333;
}

#Footer address{
	margin-top: 1em;
}

#Footer .note{
	font-size: 90%;
}

@media only screen and (max-width: 900px) {
	#Footer{
		padding: 10px 10px 60px 10px;
		border: none;
		color: #fff;
		
		-webkit-border-top-left-radius: 10px;
		-webkit-border-top-right-radius: 10px;
		-moz-border-radius-topleft: 10px;
		-moz-border-radius-topright: 10px;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
		
		background: #00A0E9;
	}
	#Footer .menu .items{
		border: 1px solid #fff;
		
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border-radius: 10px;
	}
	#Footer .menu .items li{
		display: block;
		padding: 0;
		border-left: none;
		
		border-bottom: 1px solid #fff;
	}
	#Footer .menu .items li:last-child{
		border-right:none;
		
		border-bottom: none;
	}
	#Footer .menu .items li a{
		white-space: normal;
	
		position: relative;
		display: block;
		padding: 15px 2.5em 15px 1.5em;
		color: #fff;
		font-size: 15px;
		text-align: left;
		text-decoration: none;
	}
	#Footer .menu .items li a::after{
		display: block;
		position: absolute;
		top: 50%;
		right: 21px;
		content: '';
		width: 15px;
		height: 15px;
		margin-top: -9px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}

}

/* To-top
----------------------------------------------- */
#To-top a{
	position: fixed;
	display: block;
	bottom: 10px;
	margin-left: 780px;
	padding: 1em;
	border: 1px solid #336015;
	font-size: 12px;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
	
	background: #00A0E9;
	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	
	-webkit-box-shadow: 0 0 0 1px #fff;
	-moz-box-shadow: 0 0 0 1px #fff;
	box-shadow: 0 0 0 1px #fff;
}
* html #To-top{
	  /* IE6 hack */
	display: none;
}
@media only screen and (max-width: 900px) {
	#To-top a{
		margin-left: 0;
		bottom: 1%;
		right: 4%;
		padding: 6px;
		
		width: 36px;
		height: 36px;
		overflow: hidden;
		white-space: pre;
	}
	#To-top a::before{
		font-family: 'icomoon';
		content: "\e608\A\A";
		font-size: 36px;
		
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}

/* ‚»‚Ì‘¼
----------------------------------------------- */
.mb0{
	margin-bottom: 0 !important;
}
.mb05em{
	margin-bottom: 0.5em !important;
}
.mb1em{
	margin-bottom: 1em !important;
}
.mb2em{
	margin-bottom: 2em !important;
}
.mb3em{
	margin-bottom: 3em !important;
}
.center{
	text-align: center !important;
}
.nowrap{
	white-space: nowrap !important;
}
.font_size120{
	font-size: 120% !important;
}
.font_size180{
	font-size: 180% !important;
}
.bold{
	font-weight: bold !important;
}


/* clearfix
----------------------------------------------- */
.clearfix::before,
.clearfix::after{
	content: " ";
	display: table;
}
.clearfix::after{
	clear :both;
}
.clearfix {
	*zoom: 1;
}


/* table
----------------------------------------------- */
/* ”Ä—p */
.ta1{
	margin: 0 auto 1em auto;
}
.ta1 th,
.ta1 td{
	padding: 10px;
	border: 1px solid #888;
}
.ta1 th{
	font-weight: bold;
	background-color: #D3EDF9;
}
.ta1 td{
	text-align: left;
}

/* ƒŒƒCƒAƒEƒg—p */
.ta_layout1{
	margin-left: 10%;
	margin-bottom: 1em;
	max-width: 80%;
	line-height: 150%;
}
* html ta_layout1{
	width: 80%;
}
.ta_layout1 th,
.ta_layout1 td{
	padding: 0;
	border: none;
	text-align: left;
}


/* index.html
----------------------------------------------- */
#Contents .topics_link{
	text-align: right;
}

#IndexTopics .page{
	display: none;
}

@media only screen and (max-width: 900px) {
	#Contents .topics_link a{
		display: inline-block;
		padding: 15px;
		margin: 3px;
		
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border-radius: 10px;
		
		-webkit-box-shadow: 1px 1px 3px 1px rgba(50, 50, 50, 0.5);
		-moz-box-shadow:    1px 1px 3px 1px rgba(50, 50, 50, 0.5);
		box-shadow:         1px 1px 3px 1px rgba(50, 50, 50, 0.5);
	}
}


/* history.html
----------------------------------------------- */
.ta_history{
	margin: 0 auto 1em auto;
}

.ta_history th,
.ta_history td{
	padding: 8px;
	border: 1px solid #888;
	line-height: 150%;
}

.ta_history th{
	text-align: center;
	color: #333;
	background-color: #D3EDF9;
}
.ta_history tr{
	text-align: center;
}
.ta_history td{
	vertical-align: middle;
}
.ta_history tr > td + td + td{
	text-align: left;
}
.ta_history colgroup.description{
	text-align: left; /** IE6,7 **/
	width: 100%;
}
.ta_history tr:nth-child(even){
	background-color: #F3F3F1;
}
@media only screen and (max-width: 480px) {
	.ta_history,
	.ta_history th,
	.ta_history td{
		padding: 8px 4px;
	}
}



/* approach.html
----------------------------------------------- */
.ta_approach{
	margin: 0 auto 1em auto;
}

.ta_approach th,
.ta_approach td{
	padding: 8px;
	border: 1px solid #888;
	vertical-align: middle;
	line-height: 150%;
}

.ta_approach th{
	text-align: center;
	color: #333;
	background-color: #D3EDF9;
}
.ta_approach tr{
	text-align: left;
}
.ta_approach .grade{
	width: 1em;
	text-align: center;
}
.ta_approach .date{
	width: 7em;
}
.ta_approach tr:nth-child(even) .date,
.ta_approach tr:nth-child(even) .description{
	background-color: #F3F3F1;
}
@media only screen and (max-width: 480px) {
	.ta_approach,
	.ta_approach th,
	.ta_approach td{
		padding: 8px 4px;
	}
}

/* song
----------------------------------------------- */
.song1{
	position: relative;
}
.song1 .title{
	position: absolute;
	right: 0;
}
.song1 .title img{
	width: 63px;
}

.song1 .lyric{
	margin-right: 63px;
}
.song1 .lyric img{
	float: right;
	width: 189px;
}
