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

/******************************/
/**         リセットＣＳＳ        **/
/******************************/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
address{
	font-style:normal;
}
a{
	text-decoration:none;
}

/******************************/
/**           共通           **/
/******************************/

body {
	background-color: #000;
	margin: 0;
	padding: 0;
	font-family: '游ゴシック','Yu Gothic','Hiragino Kaku Gothic Pro',sans-serif;
}
h1, p, ul{
	color: #fff;
}
p {
	line-height: 1.4;
}

a {
	color: inherit;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}
a:hover, .sa.show:hover {
	opacity: 0.6;
}

.container {
	max-width: 1000px;
	margin: 0 auto;
}

.df {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.df_r {
	flex-direction: row-reverse;
}


/******************************/
/**          ヘッダー          **/
/******************************/
header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.8);
	z-index: 100;
}
header .container {
	align-items: center;
	justify-content: space-between;
}
.menu_button {
	display: none;
}
.header_logo {
	display: inline-block;
	line-height: 70px;
	padding-left: 15px;
	padding-right: 15px;
	color: #fff;
	font-size: 34px;
	text-decoration: none;
	font-family: 'Lobster', cursive;
}
.header_navi ul {
	margin: 0 0 0 20px;
	padding: 0;
	list-style: none;
}
.header_navi a {
	display: block;
	padding: 15px;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
}

header .container-small {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.menu_button {
	margin-right: 15px;
	padding: 0;
	border: none;
	outline: none;
	background: none;
	font-size: 28px;
	opacity: 0.9;
	cursor: pointer;
	color: #fff;
}

.menu_button:hover {
	opacity: 0.5;
}

.header_border {
	border-bottom: 1px solid #333;
}


/******************************/
/**         トップページ        **/
/******************************/

/* メインイメージ */
.hero {
	width: 100%;
	height: 100vh;
}

.hero_text {
	font-size: 68px;
	font-family: 'Lobster', cursive;
	text-align: center;
}

/* 見出し部分 */
h1 {
	text-align: center;
	font-size: 26px;
	margin: 20px 10px 10px;
}
.h_text {
	text-align: center;
	margin: 0 10px 30px;
}

/* クラス紹介 */
.con_class {
	position: relative;
	display: block;
	flex: 1;
	min-height: 300px;
	width: 100%;
	margin: 10px;
	background-position: center;
	background-size: cover;
}
.vocal {
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.0), rgba(0,0,0,0.6)), url(../images/img_mc.jpg);
}
.guitar {
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.0), rgba(0,0,0,0.6)), url(../images/img_gt.jpg);
}
.drums {
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.0), rgba(0,0,0,0.6)), url(../images/img_dr.jpg);
}
.con_class p {
	position: absolute;
	bottom: 0px;
	right: 15px;
	text-align: center;
	font-size: 38px;
	font-family: 'Anton', sans-serif;
	letter-spacing: 1px;
}

/* vegas CSS上書き */
.vegas-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
}


/******************************/
/**     INFORMATIONページ     **/
/******************************/

/* スライダー */
.about_slider {
	max-width: 1000px;
	margin: 100px auto;
}
.about_slider_h {
	flex: 2;
	align-items: center;
	justify-content: center;
	line-height: 1.8;
}
.about_slider_s {
	flex: 3;
	margin: 0 auto;
}

/* 背景が黒なのでbxsliderのCSS上書き */
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus,
.bx-wrapper .bx-pager.bx-default-pager a:hover {
	background: #222;
}

/* 楽器紹介欄 */
.about_content {
	width: 100%;
	min-height: 250px;
	background-color: #ddd;
	margin-bottom: 40px;
	padding: 10px 0;
}
.about_content_img {
	flex: 2;
	min-height: 250px;
	background-size: cover;
	background-position: center;
	margin: 0 10px;
}
.about_agt {
	background-image: url(../images/about_agt.jpg);
}
.about_egt {
	background-image: url(../images/about_egt.jpg);
}
.about_bs {
	background-image: url(../images/about_bs.jpg);
}
.about_piano {
	background-image: url(../images/about_piano.jpg);
}
.about_sax {
	background-image: url(../images/about_sax.jpg);
}
.about_dr {
	background-image: url(../images/about_dr.jpg);
}
.about_content_text {
	flex: 3;
	padding: 10px 15px;
	margin: 0 10px;
	background-color: #444;
}
.about_content_text h2 {
	color: #fff;
	text-align: center;
	margin: 10px 0 15px;
}


/******************************/
/**          FAQページ        **/
/******************************/

/* 見出し */
.faq_h {
	margin: 100px 0 70px;
}

/* アコーディオン */
.faq_content {
	margin: 0 15px;
}
.faq_content a {
	text-decoration: underline;
}
.faq_content a:hover {
	text-decoration: none;
}
dl {
	color: #fff;
	line-height: 1.4;
}
dt {
   border: 1px solid #ccc;
   padding: 10px;
}

dd {
   border: 1px solid #ccc;
   border-top: 0;
   margin: 0;
   padding: 10px;
}
dt {
   position: relative;
}

dt:after {
   content: "";
   position: absolute;
   border-right: 3px solid #fff;
   border-bottom: 3px solid #fff;
   width: 10px;
   right: 10px;
   height: 10px;
   transform: rotate(45deg);
   border-radius: 0.2em;
}

dt.ac:after {
   content: "";
   position: absolute;
   border-left: 3px solid #fff;
   border-top: 3px solid #fff;
   border-right: 0;
   border-bottom: 0;
   width: 10px;
   right: 10px;
   height: 10px;
   transform: rotate(45deg);
   border-radius: 0.2em;
}
/******************************/
/**            フッター         **/
/******************************/
footer {
	border-top: 2px solid #333;
	padding: 20px;
	margin-top: 90px;
}
footer ul {
	list-style: none;
}
footer li {
	margin: 15px 0;
}
.footer_logo {
	font-size: 32px;
	font-family: 'Lobster', cursive;
}
.footer_tel {
	font-size: 24px;
	font-family: 'Anton', sans-serif;
	font-weight: normal;
	letter-spacing: 2px;
	margin: 8px 0 8px;
}
.footer_info {
	flex: 3;
	font-weight: bold;
	margin: 10px 0 0 50px;
}
.footer_menu {
	flex: 2;
	font-weight: bold;
	margin: 10px 0 0 50px;
}
.sns {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-top: 10px;
}
.sns a {
	display: block;
	margin-right: 12px;
	padding: 0;
	color: inherit;
	font-size: 16px;
	text-decoration: none;
	border: solid 1px currentColor;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
}
.copylight {
	text-align: center;
	font-size: 12px;
	color: #777;
	margin: 50px 0 10px;
}



/******************************/
/**       メディアクエリ          **/
/******************************/

/* 769px以上（トグルボタン用） */
@media (min-width: 769px) {
	.header_navi {
		display: block !important;
	}
}

/* 768px以下 */
@media (max-width: 768px) {
	
	/* 共通 */
	.df {
		display: block;
	}
	.smt_mg {
		margin: 0 10px;
	}
	
	/* ヘッダー */
	.menu_button {
		display: block;
	}
	.header_navi {
		display: none;
	}
	
	/* トップページ */
	.con_class {
		width: 95%;
		margin: 15px auto;
	}
	
	/* INFORMATIONページ */
	.about_slider_s {
		max-width: 600px;
	}
	
	/* FAQページ */
	.faq_content {
		margin: 0;
	}	
	
	/* フッター */
	.footer_menu {
		margin-top: 25px;
	}
	
}


