@charset "UTF-8";

/***************************************************

	共通コンテンツ部

***************************************************/
body , html {

}

body{
	position: relative;
	color: #333333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	word-wrap: break-word;
}

.mincho{
	font-family: A1 Mincho,Times New Roman, "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
}

.pc-on{ display: block!important; }
.sp-on{ display: none !important; }

a:hover.opacity img,
a:hover.opacity,
a:hover img{
	opacity: 0.8;
}

a img,
a:hover img{
   -webkit-transition: all 0.2s linear;
   -moz-transition: all 0.2s linear;
   -o-transition: all 0.2s linear;
   -ms-transition: all 0.2s linear;
   transition: all 0.2s linear;
}

.fade image,
.fade{
   -webkit-transition: all 0.2s linear;
   -moz-transition: all 0.2s linear;
   -o-transition: all 0.2s linear;
   -ms-transition: all 0.2s linear;
   transition: all 0.2s linear;
}

.center{
	text-align: center;
}

a{
	color: #65ABDC;
	text-decoration: underline;
}

a:hover{
	text-decoration: underline;
}

.fit{
	width: 100%;
	height: auto;
}

/********** header *********/

header .wrapper{
	width: 1356px;
	margin: 0 calc(50% - 678px);
	padding: 10px 0px 0;
}

/****** メニュー上部 *****/

header .header-cont01{
	margin: 0 0 40px;
	display: table;
	width: 100%;
}

header .header-cont01 #head_logo{
	display: table-cell;
	vertical-align: top;
	padding-right: 20px;
}

header .header-cont01 #top_menu_area{
	display: table-cell;
	vertical-align: top;
	width: auto;
}

header .header-cont01 #top_menu_area ul.menulist01{
	float: right;
	margin: 0 0 8px;
}

header .header-cont01 #top_menu_area ul.menulist01 li{
	float: left;
	margin-left: 12px;

}

header .header-cont01 #top_menu_area .clearfix ul {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

header .header-cont01 #top_menu_area .clearfix ul li {
    margin-bottom: 10px;
}

header .header-cont01 #top_menu_area ul.menulist01 li:first-child{
	margin-left: 0px;
}

header .header-cont01 #top_menu_area ul.menulist01 li a{
	display: block;
	font-size: 16px;
	color: #FFFFFF;
	text-decoration: none;
	text-align: center;
	background: #ccc;
	width: 120px;
	height: 30px;
	line-height: 30px;
}

header .header-cont01 #top_menu_area ul.menulist01 li#higashi a{
	background-color: #3CA932;
}

header .header-cont01 #top_menu_area ul.menulist01 li#kugahara a{
	background-color: #47A10A;
}

header .header-cont01 #top_menu_area ul.menulist01 li#taiken a{
	background-color: #1A9077;
}

header .header-cont01 #top_menu_area ul.menulist01 li#otoiawase a{
	width: 200px;
	background-color: #1B8E34;
}

header .header-cont01 #top_menu_area ul.menulist01 li#facebook a{
	background-color: #0C3C84;
}

header .header-cont01 #top_menu_area ul.menulist01 li#insta a{
	background-color: #7044B2;
}


header .header-cont01 #top_menu_area .sub_nav{
	text-align: right;
}

header .header-cont01 #top_menu_area #tel,
header .header-cont01 #top_menu_area ul.menulist02{
	display: inline-block;
	vertical-align: middle;
}

header .header-cont01 #top_menu_area ul.menulist02 li{
	float: left;
	margin: 0 0 0 20px;
}

header .header-cont01 #top_menu_area ul.menulist02 li:first-child{
		margin: 0 0 0 0;
}

header .header-cont01 #top_menu_area ul.menulist02 li a{
	display: block;
	line-height: 1;
	font-size: 14px;
	color: #5F5F5F;
	text-decoration: none;
}

header .header-cont01 #top_menu_area ul.menulist02 li a:before{
	display: inline-block;
	    content: "♪";
	    color: #1A8C43;
}

header .header-cont01 #top_menu_area #tel{
	color: #000000;
	font-family: "Times New Roman", Times, serif;
	font-size: 35px;
	margin: 0 0 0 40px;
	padding: 0 0 0 26px;
	background: url(../../images/common/icon_header_tel.png) no-repeat 0 6px;
	line-height: 1;
}


header #glovalnavi ul{
	display: table;
	height: 55px;
	width: 100%;
	box-sizing: border-box;
}

header #glovalnavi ul li{
	display: table-cell;
	vertical-align: middle;
	width: 16.6%;
	box-sizing: border-box;
	border-right: 1px solid #000;
}

header #glovalnavi ul li:last-child{
	border-right: none;
}

header #glovalnavi ul li a{
	display: block;
	height: 55px;
	text-align: center;
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none;
	color: #000;
	border-bottom: 5px solid #fff;
}

header #glovalnavi ul li a span{
	display: block;
	font-size: 16px;
}

header #glovalnavi ul li.current a,
header #glovalnavi ul li a:hover{
	border-bottom: 5px solid #125f21;
}



/********** footer *********/

#page-top{
	position: fixed;
	right: 30px;
	bottom: 30px;
}

footer{
	background: url(../../images/common/footerbg.jpg) no-repeat 0 0;
	background-size: cover;
	padding: 50px 0;
	margin: 0 38px;
}

footer #footer-sitemap{
	width: 1356px;
	margin: 0 calc(50% - 678px);
	padding: 0 38px;
}

footer #footer-sitemap .sitemap {
	width: 20%;
	float: left;
	border-left: 1px solid #FFFFFF;
	padding-left: 10px;
	box-sizing: border-box;
}

footer #footer-sitemap .sitemap li {
	margin-bottom: 15px;
	color: #fff;
}

footer #footer-sitemap .sitemap li a {
	color: #FFFFFF;
	text-decoration: none;
	font-size: 14px;
}

footer p {
	width: 1280px;
	margin: 50px auto 0;
	color: #FFFFFF;
	font-size: 12px;
}


/********** contents *********/

#wrapper{
	width: 1356px;
	padding: 0px;
	margin: 0 calc(50% - 678px);
}

.inline_box{
	letter-spacing:-0.4em;
}

.inline_box div,
.inline_box span{
	display:inline-block;
	letter-spacing:normal;
}

.b10{ margin-bottom: 10px;}
.b20{ margin-bottom: 20px;}
.b30{ margin-bottom: 30px;}
.b40{ margin-bottom: 40px;}
.b50{ margin-bottom: 50px;}
.b60{ margin-bottom: 60px;}
.b70{ margin-bottom: 70px;}
.b80{ margin-bottom: 80px;}
.b90{ margin-bottom: 90px;}
.b100{ margin-bottom: 100px;}

.r10{ margin-right: 10px;}
.r20{ margin-right: 20px;}
.r30{ margin-right: 30px;}
.r40{ margin-right: 40px;}
.r50{ margin-right: 50px;}
.r60{ margin-right: 60px;}
.r70{ margin-right: 70px;}
.r80{ margin-right: 80px;}
.r90{ margin-right: 90px;}
.r100{ margin-right: 100px;}

.l10{ margin-left: 10px;}
.l20{ margin-left: 20px;}
.l30{ margin-left: 30px;}
.l40{ margin-left: 40px;}
.l50{ margin-left: 50px;}
.l60{ margin-left: 60px;}
.l70{ margin-left: 70px;}
.l80{ margin-left: 80px;}
.l90{ margin-left: 90px;}
.l100{ margin-left: 100px;}

h2#main_image{
	margin: 0 0 40px;
}

h2#main_image img{
	width: 100%;
	height: auto;
}

#page-wrapp{
	max-width: 1280px;
	margin: 40px auto 0;
	padding: 0 0 180px;
	box-sizing: border-box;
}




#page_sns_area{
	margin: 0 auto 130px;
}

#page_sns_area ul{
	max-width: 1280px;
	margin: 0 auto;
}

#page_sns_area ul li{
	width: 548px;
	float: left;
}

#page_sns_area ul li:last-child{
	float: right;
}

#page_sns_area ul li.fb h2{
	width: 32%;
	height: 29px;
	margin: 20px 0;
}

#page_sns_area ul li.insta h2{
    margin: 10px 0 4px;
	width: 32%;
}

#page_sns_area ul li.fb h2 img{
	width: 100%;
	height: auto;
}

#page_sns_area ul li.insta .cont{
	background: transparent;
	width: 550px;
	height: 500px;
	border: 1px solid #cccccc;
	border-radius: 0.2vw;
}


#footer_link_box{
	width: 700px;
	margin: 0 auto 140px;
}

#footer_link_box li{
	margin: 0 auto 44px;
}

#footer_link_box li a{
	display: block;
	background: #009046;
	text-align: center;
	padding: 10px 0;
}

#page-contents #content_column{
	float: right;
	width: calc(920 / 1280 * 100%);
}

#page-contents #side_column{
	float: left;
	width: calc(340 / 1280 * 100%);
}

#side_column .menu_name{
	background: #ccc;
	line-height: 50px;
	padding-left: 20px;
	font-size: 22px;
	color: #fff;
	border-bottom: 1px solid #fff;
	cursor: pointer;
}

#side_column .menu_name.for_beginner{
	background: #00B639;
}

#side_column .menu_name.violin_viola_cello{
	background: #009C80;
}

#side_column .menu_name.piano{
	background: #008224;
}

#side_column .menu_name.sax_flute{
	background: #008C95;
}

#side_column .menu_name.drum_marimba{
	background: #3B84A2;
}

#side_column .menu_name.guitar{
	background: #146782;
}

#side_column .menu_name.songs_vocal_chanson{
	background: #006024;
}

#side_column .menu_name.ensemble{
	background: #00706E;
}

#side_column .menu_name.musicclass{
	background: #006664;
}

#side_column .side_menu{
	position: relative;
}

#side_column .side_menu::after{
	position: absolute;
	content: "+";
	top: 0;
	right: 10px;
}

#side_column .side_menu.active::after{
	content: "-";
}

#side_column .sub_menu {
	display:none;
	margin:0;
	padding:0;
	list-style:none;
	margin-left: -20px;
}

#side_column .sub_menu li{
	border-top: 1px solid #fff;
	font-size: 20px;
	text-align: center;
}

#side_column .sub_menu li a{
	display: block;
	color: #fff;
	text-decoration: none;
}

.mt0_force {
	margin-top: 0px !important;
}

.sp-br {
    display: none;
}
#side_column .title img {
    width: 340px;
}



/********** 404 **********/





/********************************************************************************
	PC補正 CSS
********************************************************************************/

@media screen and (min-width:1025px) and ( max-width:1280px) {


header .wrapper{
	width: 100%;
	margin: 0 auto;
	padding: 10px 0 0;
}


header .header-cont01 #top_menu_area{
	width:64%;
}

header .header-cont01 #top_menu_area ul.menulist01{
	float: right;
	margin: 0 0 8px;
}

header .header-cont01 #top_menu_area ul.menulist01 li{
	float: left;
	margin-left: 10px;
}

header .header-cont01 #top_menu_area ul.menulist01 li a{
	font-size: 14px;
	width: 105px;
}

header .header-cont01 #top_menu_area ul.menulist02 li {
	margin: 0 0 0 12px;
}

header .header-cont01 #top_menu_area #tel{
	font-size: 30px;
	margin: 0 0 0 10px;
	padding: 0 0 0 20px;
	background-size: 16px 16px;
}


header #glovalnavi ul li a{
	font-size: 12px;
	line-height: 1.4;
}

footer #footer-sitemap{
	width: auto;
	margin: 0 3% 0px
}

footer p {
	width: auto;
	margin: 50px 3% 0;
}

#wrapper{
	width: auto;
	padding: 0 3%;
	margin: 0 auto;
}


}



/********************************************************************************
	タブレット用 CSS
********************************************************************************/

@media screen and (min-width:769px) and ( max-width:1024px) {

/********** header *********/

header .wrapper{
	width: 100%;
	margin: 0 auto;
	padding: 10px 0 0;
}

header .header-cont01 #top_menu_area ul.menulist01 li{
	float: left;
	margin-left: 10px;
}

header .header-cont01 #top_menu_area ul.menulist01 li a{
	font-size: 12px;
	width: 86px;
}

header .header-cont01 #top_menu_area ul.menulist02 li {
	margin: 0 0 0 12px;
}

header .header-cont01 #top_menu_area ul.menulist02 li a{
	font-size: 12px;
}

header .header-cont01 #top_menu_area #tel{
	font-size: 22px;
	margin: 0 0 0 10px;
	padding: 0 0 0 20px;
	background-size: 16px 16px;
}


header #glovalnavi ul li a{
	font-size: 10px;
	line-height: 1.8;
}

footer #footer-sitemap{
	width: auto;
	margin: 0 3% 0px
}

footer p {
	width: auto;
	margin: 50px 3% 0;
}

#wrapper{
	width: auto;
	padding: 0 3%;
	margin: 0 auto;
}

}

/********************************************************************************
	スマートフォン用 CSS
********************************************************************************/

@media screen and (max-width:768px) {

html { font-size: 62.5%; }
body {
	font-size: 1.4rem;
	-webkit-text-size-adjust:100%;
}

.sp-on{ display: block !important; }
.pc-on{ display: none !important; }



/********** header *********/

header .wrapper{
	width: 100%;
	margin: 0 auto;
	padding: 60px 0 0;
}

/****** メニュー上部 *****/

header .header-cont01{
	margin: 0 0 0px;
	posiiton: relative;
}

header .header-cont01 #head_logo{
	position: absolute;
	z-index: 99;
	width: 200px;
	top: 10px;
	left: 15px;
}

header .header-cont01 #top_menu_area{
	width: auto;
}

header .header-cont01 #top_menu_area ul.menulist01{
	float: right;
	margin: 0 0 8px;
}

header .header-cont01 #top_menu_area ul.menulist01 li{
	float: left;
	margin-left: 12px;

}
	
.mean-container .mean-nav ul li#higashi a,
.mean-container .mean-nav ul li#kugahara a,
.mean-container .mean-nav ul li#taiken a,
.mean-container .mean-nav ul li#otoiawase a,
.mean-container .mean-nav ul li#facebook a,
.mean-container .mean-nav ul li#insta a{
	color: #fff;
}

.mean-container .mean-nav ul li#higashi{
	background-color: #3CA932;
}
	
.mean-container .mean-nav ul li#kugahara{
	background-color: #47A10A;
}

.mean-container .mean-nav ul li#taiken{
	background-color: #1A9077;
}

.mean-container .mean-nav ul li#otoiawase{
	background-color: #1B8E34;
}

.mean-container .mean-nav ul li#facebook{
	background-color: #0C3C84;
}

.mean-container .mean-nav ul li#insta{
	background-color: #7044B2;
}

.mean-container .mean-nav ul li.type-a a:before{
	display: inline-block;
	    content: "♪";
	    color: #1A8C43;
}

.mean-container .mean-nav ul li.type-b a{
	background: url(../../images/common/icon_header_tel.png) no-repeat 19px 17px;
	background-size: 12px 12px;
	padding-left: 32px;
}



header #glovalnavi ul{
	display: block;
	height: auto;
	width: auto;
	margin: 0 3%;
}

header #glovalnavi ul li{
	display: block;
	float: left;
	width: 50%;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}


header #glovalnavi ul li:nth-child(even){
	border-right: none;
}

header #glovalnavi ul li:last-child{
	border-right: none;
}

header #glovalnavi ul li a{
	display: block;
	height: auto;
	font-size: 1.0rem;
	line-height: 1.4;
	border-bottom: none;
	padding: 6px 0 6px;
}

header #glovalnavi ul li a span{
	font-size: 1.2rem;
}

header #glovalnavi ul li a:hover{
	border-bottom: none;
}



/********** footer *********/

#page-top{
	right: 15px;
	bottom: 15px;
	width: 40px;
	margin: 0 0;
	paddinbg: 0 0;
}

footer{
	background: url(../../images/common/footerbg.jpg) no-repeat 0 0;
	background-size: cover;
	padding: 30px 0;
	margin: 0 auto;
	width: 100%;
}

footer #footer-sitemap{
	width: auto;
	margin: 0 4% 0px
}

footer #footer-sitemap .sitemap {
	width: 50%;
	margin: 0 0 15px;
}

footer #footer-sitemap .sitemap:nth-child(even) {
	float: right;
}

footer #footer-sitemap .sitemap li {
	margin-bottom: 15px;
}

footer #footer-sitemap .sitemap li a {
	color: #FFFFFF;
	text-decoration: none;
	font-size: 14px;
}

footer p {
	width: auto;
	text-align: center;
	font-size: 10px;
}
.fb-page.fb_iframe_widget {
    width: 100%;
}
.fb_iframe_widget span {
    width: 100% !important;
}
.fb_iframe_widget iframe {
    width: 100% !important;
}
.fb_iframe_widget ._2p3a {
    width: 100% !important;
}
#page_sns_area ul li {
    width: 100%;
}
#page_sns_area ul li.insta .cont {
    background: transparent;
    width: 100%;
    height: 500px;
    border: 1px solid #cccccc;
    border-radius: 0.2vw;
}
#footer_link_box {
    width: 70%;
}
#footer_link_box img {
    width: 70%;
}
#side_column .menu_name {
    line-height: 18px;
    padding: 0 5px;
    font-size: 12px;
}
#side_column .side_menu {
    padding: 10px 0;
}
#side_column .side_menu::after {
    right: 0;
}
#side_column .sub_menu{
	margin-left: 0;
}
#side_column .sub_menu li a {
    font-size: 12px;
    padding: 5px 0;
}
.sp-br {
    display: block;
}
/********** contents *********/

#wrapper{
	width: auto;
	padding: 0 3%;
	margin: 0 auto;
}







/********** 404 **********/




}


section#introduce article.reversal div.box_sentence {
	padding-left: calc( 20 / 940 * 100vw);
}
