/* =================================================================== */
/* 
/*  Puremedia v1.0 Media Queries
/*  url:styleshout.com
/*  10-10-2014
/*
/* =================================================================== */

@media screen and (min-width:600px) {

a, a:visited {
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

}

@media only screen and (min-width:1100px) {
	#nav ul.snsic {
	  right:5%;
	  top:-100px;
	}
}

/* small screens */
@media only screen and (max-width:1100px) {


header .headbg{
	width: 100%;
	text-align: center;
	background: url(../../images/header_bg.jpg) center top repeat-x;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	padding-bottom:10px;
	position:relative;       
       box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

header .headbg:before, header .headbg:after{
content:"";
position:absolute; 
z-index:-1;
box-shadow:0 0 10px rgba(0,0,0,0.8);
top:0;
bottom:2px;
left:10px;
right:10px;
border-radius:400px / 10px;
}

header .logo {
	/* add position relative since z-index only applies to
	elements that have been given an explicit position */
	z-index: 992;
	margin:0 auto 5px auto;
	overflow:hidden;
}

header .logo a {
	display:block;
	margin: 0 auto;
	height:0;
	padding-left:30%;
	padding-top:10%;
	width:0;
	background-image:url("../../images/header_logo.png");
	background-position:center center;
	background-repeat:no-repeat;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	overflow:hidden;
}


.opaque .headbgg {
	width: 100%;
	text-align: center;
	background: url(../../images/header_bg.jpg) center top repeat-x;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	padding-bottom:5px;
}


.opaque .logo {
	z-index: 992;
	margin:0 auto 5px auto;
	overflow:hidden;
}

.opaque .logo a {
	display:block;
	margin: 0 auto;
	height:0;
	padding-left:20%;
	padding-top:5%;
	width:0;
	background-image:url("../../images/header_logo.png");
	background-position:center center;
	background-repeat:no-repeat;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	background-size: contain;
	overflow:hidden;
}

#hero {
padding-top:13%;
}

#topnews {
width:90%;
}


#newssection {
width:55%;
}


#facebooksection {
width:40%;
}


.cont-head{
padding-top:14.5%;
}

/* profile */


#profile #preach #youko dl{
-webkit-background-size: 45% auto;
-moz-background-size: 45% auto;
background-size: 45% auto;
padding-left:5%;
padding-top:4%;
padding-right:35%;
padding-bottom:20px;
width:100%;
margin:0 auto;
min-height:calc(100vw / 2.5);

}

#profile #preach #hiroko dl{
-webkit-background-size: 45% auto;
-moz-background-size: 45% auto;
background-size: 45% auto;
padding-left:45%;
padding-top:4%;
padding-bottom:20px;
padding-right:5%;
width:100%;
margin:0 auto;
min-height:calc(100vw / 2.5);
}

#profile #preach dl{
font-size:1.6em;
line-height:1.7;
letter-spacing:0.05em;
color:#000;

background:#FFFFFF;
}


/* schedule */

#schedule #schedulebx{
width:95%;
}

#schedule #schedulebx .scheachy ul .sche dt{
font-size:2.3em;
}



#schedule #schedulebx .scheachy ul .sche .schedate{
font-size:2.3em;
}

#schedule #schedulebx .scheachy ul .sche .schedate .time{
font-size:0.8em;
}

#schedule #schedulebx .scheachy ul .sche .hall{
font-size:1.8em;
}

#schedule #schedulebx .scheachy ul .sche .price{
font-size:1.5em;
padding-bottom:5px;
}

#schedule #schedulebx .scheachy ul .sche .appe{
font-size:1.5em;
padding-bottom:5px;
}

#schedule #schedulebx .scheachy ul .sche .program{
font-size:1.5em;
padding-bottom:10px;
}

#schedule #schedulebx .scheachy ul .sche .detail{
font-size:1.8em;
}

/* cd */

#cd{
background-position:5% 140px;
}

/* contact */

#contact #ctccmt{
width:80%;
}

#contact #contactform #contactbx{
width:80%;
}

}/* 1100 */



/* small screens */
@media only screen and (max-width:950px) {
 

/* nav-wrap */
#nav div a {
padding: 7px 12%;
}

/* profile */

#profile #preach #youko dl{
background-position:right bottom;

width:100%;
margin:0 auto;

}

#profile #preach #hiroko dl{
background-position:left bottom;
width:100%;
margin:0 auto;
}

#profile #preach dl{
font-size:1.4em;
line-height:1.7;
letter-spacing:0.05em;

}


}/* 950 */


/* xsmall screens */
@media only screen and (max-width:880px) {

/* hero section */
#hero{
padding-top:15%;
}

/* fanclub section */

#fanclub #fanmain p img{
width:70%;
height:auto;
}

#fanclub #faninfo dl.fannai{
width:90%;
}

#fanclub #faninfo dl.fannai  dd.fand{
padding:5px 0 5px 0;
}

#fanclub #faninfo dl.fannai dd.fand .infomain{
font-size:1.6em;
line-height:2;
}

#fanclub #faninfo dd.fand .infomain li{
padding-right:0px;
}

#fanclub #faninfo dd.fand p{
font-size:1.5em;
padding:0px 20px 10px 20px;
}

#fanclub #faninfo dd.fand .fanatbx{
padding:15px 30px;
margin:0;
font-size:1.3em;
}

#fanclub #faninfo dl.fannai  dd.fancontact{
padding:15px 0 30px 0;
font-size:1.8em;
width:90%;
margin:0 auto;
}

#fanclub #fankiyaku{
width:90%;
}

/* schedule */

#schedule #schedulebx{
width:90%;
}

#schedule #schedulebx .scheachy .year{
font-size:4em;
float:none;
width:100%;
padding-top:0px;
}
#schedule #schedulebx .scheachy ul{
width:100%;
float:none;
padding:0;
margin:0;
}
#schedule #schedulebx .scheachy ul .sche dl{
padding:40px 0 0 0;
}

#schedule #schedulebx .scheachy ul .sche .mnd dt{
padding:1.5em 0 9px 0;
}

#schedule #schedulebx .scheachy ul .sche .mnd .pc{
display:none;
}
#schedule #schedulebx .scheachy ul .sche .schedate{
text-align:left;
display:inline-block;
}
#schedule #schedulebx .scheachy ul .sche .schedate .time{
padding-right:0;
display:inline-block;
}

#schedule #schedulebx .scheachy ul .sche .schedate .time br{
display:none;
}

/* contact */

#contact #ctccmt p{
font-size:1.6em;
}

} /* 880 */




/* tablets */
@media only screen and (max-width:768px) {

/* header styles */

header .headbg{
	padding-bottom:3px;


}
header .logo a {
	padding-left:300px;
	padding-top:50px;

}

.opaque .headbgg {
	padding-bottom:3px;
}

.opaque .logo a {
	padding-left:300px;
	padding-top:50px;
}


/* mobile navigation */
#nav-wrap {
z-index: 991;
display: block;
margin-top: 0;
width: 100%;
position: absolute;
top: -55px;
right: 0;
font-size:1.5em;
}
#nav-wrap > a {
background: #8f0b55;
border: none;
color: white;
height: 58px;
min-width: 58px;
text-align: left;
float: right;
padding: 0;
position: relative;
}
#nav-wrap .menu-text {
text-transform: uppercase;
margin-right: 60px;
padding-left: 20px;
vertical-align: middle;
line-height: 60px;
display: none;
}
#nav-wrap .menu-icon {
display: inline-block;
width: 20px;
height: 3px;
margin-top: -3px;
position: absolute;
right: 20px;
top: 50%;
bottom: auto;
left: auto;
background: white;
}
#nav-wrap .menu-icon:before, 
#nav-wrap .menu-icon:after {
content: '';
width: 100%;
height: 100%;
position: absolute;
background-color: inherit;
left: 0;
}
#nav-wrap .menu-icon:before {
bottom: 6px;
}
#nav-wrap .menu-icon:after {
top: 6px;
}
#nav-wrap #nav {
background: #8f0b55;
padding: 0px 45px 5px 45px;
margin: 0;
height: auto;
display: none;
clear: both;
width: 100%;
float: none;
position: relative;
top: 0;
right: 0;
}
#nav-wrap #nav > div {
display: block;
float: none;
height: auto;
text-align: left;
border-bottom: 1px solid #7e0a4b;
padding: 6px 0;
}
#nav-wrap #nav > div:first-child {
border-top: 1px solid #7e0a4b;
}
#nav-wrap #nav div a {
display: block;
width: auto;
padding: 2px 10px;
border: none;
}

#nav-wrap #nav div a img{
height:13px;
width:auto;
}
#nav-wrap #nav div a:hover {
color: white;
}
#nav-wrap #nav div.current > a {
background: none;
color: #f26522;
}
.js #nav-wrap a.mobile-btn {
display: none;
}
.js #nav-wrap a#toggle-btn {
display: block;
}
.no-js #nav-wrap:not(:target) > a:first-of-type, 
.no-js #nav-wrap:target > a:last-of-type {
display: block;
}
.no-js #nav-wrap:target #nav {
display: block;
}

#nav ul.snsic {
  list-style:none;
  position:static;
  padding-top:1em;
}

/* hero section */
#hero{
padding-top:58px;
}

.cont-head{
padding-top:58px;
}

/* profile */
#profile #prmain{
padding:0 0 20px 0;
}

#profile #prmain img{
margin-bottom:20px;
}

#profile #prmain p{
font-size:1.4em;
}

#profile #preach #youko dl{
-webkit-background-size: 40% auto;
-moz-background-size: 40% auto;
background-size: 40% auto;


}

#profile #preach #hiroko dl{
-webkit-background-size: 40% auto;
-moz-background-size: 40% auto;
background-size: 40% auto;

}

#profile #preach dl{
font-size:1.3em;
line-height:1.5;
letter-spacing:0.05em;
}

#profile #preach dl dt{
font-size:1.5em;
line-height:1.7;
padding-bottom:15px;
}

/* cd */

#cd{
width:100%;
background: url(../../images/cd/bg.png) 10% 55px no-repeat;
-moz-background-size: 60% auto; 
-webkit-background-size: 60% auto; 
-o-background-size: 60% auto; 
-ms-background-size: 60% auto; 
background-size: 60% auto;
}




#cd .cdmain{
width:80%;
padding:5% 0 0 0;
}
#cd .cdmain .cdtitled ol{
list-style:none;
font-size:1.5em;
line-height:1.7;
}

#cd .cdmain .cdshop ul li{
width:47%;
}

/* gallery */

#gallery #gallerybx{
width:80%;
}

} /* 768 */


/* mobiles */
@media only screen and (max-width:600px) {



#topnews {
width:80%;
margin:0 auto;
padding-top:10px;
}

#newssection {
width:100%;
float:none;
margin-bottom:20px;
}


#facebooksection {
width:100%;
float:none;
margin-left:0;
}


#nav > div a {
	display: inline-block;
	padding: 7px 23px;
	text-decoration: none;
	color: #000000;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#nav > div a:hover {
	-moz-transform: none;
	-o-transform: none;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}



#course .csbox{
	-moz-background-size: 70% auto; /* Firefox */
	-webkit-background-size: 70% auto; /* Safari,Chrome*/
	-o-background-size: 70% auto; /* Opera */
	-ms-background-size: 70% auto; /* ie */
	background-size: 70% auto;
}

/* profile */


#profile #prmain p{
text-align:left;
padding:0 5%;
}


/* fanclub section */

#fanclub #fanmain p img{
width:80%;
height:auto;
}


#fanclub #fanmain p.step{
font-size:5vw;
}

#fanclub #fanmain p.soon{
font-size:15vw;
}

#fanclub #fanmain p.honbun{
font-size:4vw;
}

#fanclub #faninfo dl.fannai dd.fand .infomain{
font-size:1.5em;
line-height:2;
}


#fanclub #faninfo dd.fand p{
font-size:1.4em;
padding:0px 20px 10px 20px;
}

#fanclub #faninfo dd.fand .kouza{
width:90%;
font-size:1.6em;
}

#fanclub #faninfo dd.fand .fanatbx{
padding:15px 30px;
margin:0;
font-size:1.2em;
}

#fanclub #faninfo dl.fannai  dd.fancontact{
padding:15px 0 30px 0;
font-size:1.5em;
width:100%;
margin:0 auto;
}

#fanclub #fankiyaku{
width:90%;
}

/* schedule */

#schedule #schedulebx .scheachy ul .sche dl{
padding:30px 0 0 0;
}

#schedule #schedulebx .scheachy ul .sche dt{
font-size:1.8em;
}

#schedule #schedulebx .scheachy ul .sche .schedate{
font-size:2em;
}

#schedule #schedulebx .scheachy ul .sche .mnd .schedate{
font-size:1.5em;
}

#schedule #schedulebx .scheachy ul .sche .hall{
font-size:1.6em;
}

#schedule #schedulebx .scheachy ul .sche .price{
font-size:1.4em;
padding-bottom:5px;
}

#schedule #schedulebx .scheachy ul .sche .appe{
font-size:1.4em;
padding-bottom:5px;
}

#schedule #schedulebx .scheachy ul .sche .program{
font-size:1.4em;
padding-bottom:10px;
}

#schedule #schedulebx .scheachy ul .sche .detail{
font-size:1.6em;
}

/* contact */

#contact #ctccmt p{
font-size:1.4em;
}

#contact #contactform #contactbx dl dt{
font-size:1.4em;
}

#contact #contactform #contactbx dl dd{
font-size:1.4em;
}

#contact #alertMessagePlaceHolder {
font-size:1.2em;
padding: 10px;
}
#contact .errs {
font-size:1.2em;
padding: 10px;
}

#cd .cdmain .announ{
font-size:1.4em;
padding-bottom:2%;
}

} /* 600 */


/* small small mobiles */
@media only screen and (max-width:480px) {

 /* header styles */

header .logo {
	margin:0 auto 2px auto;
}

header .logo a {
	padding-left:300px;
	padding-top:42px;
}

.opaque .headbgg {
	padding-bottom:3px;
}

.opaque .logo {
	margin:0 auto 2px auto;
}

.opaque .logo a {
	padding-left:300px;
	padding-top:42px;
}

#nav-wrap {
z-index: 1000;

top: -45px;

font-size:1.3em;
}
#nav-wrap > a {
height: 47px;
min-width: 47px;
}

	#nav-wrap .menu-text {
		text-transform: uppercase;
		margin-right: 53px;
		line-height: 58px;

	}
	#nav-wrap .menu-icon {
		right: 13px;
	}
	#nav-wrap #nav {
		padding: 0px 25px 3px 25px;
	}
	#nav-wrap #nav > div a {
		display: block;
		width: auto;
		padding: 0;
		padding: 3px 10px;
		line-height: 8px;
		border: none;
	}

/* footer-area */

footer #go-top {
height:30px;
}
footer #go-top .totop a {
padding: 8px 20px;
font-size:1.1em;
}

/* hero section */
#hero{
padding-top:47px;
}

.cont-head{
padding-top:47px;
}

/* profile section */

#profile #prmain p{
font-size:1.3em;
}

#profile #preach #youko dl{
background-position:center top;
-webkit-background-size: 50% auto;
-moz-background-size: 50% auto;
background-size: 50% auto;
padding-left:5%;
padding-top:45%;
padding-bottom:10px;
padding-right:5%;
width:100%;
margin:0 auto;
min-height:100%;

}

#profile #preach #hiroko dl{
background-position:center top;
-webkit-background-size: 50% auto;
-moz-background-size: 50% auto;
background-size: 50% auto;
padding-left:5%;
padding-top:45%;
padding-right:5%;
padding-bottom:10px;
width:100%;
margin:0 auto;
min-height:100%;
}

#profile #preach dl{
font-size:1.3em;
line-height:1.5;
letter-spacing:0.05em;
}

#profile #preach dl dt{
font-size:1.5em;
line-height:1.7;
padding-bottom:15px;
}

/* cd */



#cd .cdmain .cdtitled ol{
list-style:none;
font-size:1.3em;
line-height:1.7;
}
#cd .cdmain .cdtitled .cddleft{
width:100%;
float:none;
clear:none;
}

#cd .cdmain .cdtitled p{
text-align:left;
font-size:1.2em;
line-height:1.7;
}

#cd .cdmain .cdshop{
padding:20px 0;
}

#cd .cdmain .cdshop ul{
text-align:center;
}

#cd .cdmain .cdshop ul li{
width:60%;
margin:5px 0px;
overflow: hidden;
}

#cd .cdmain .cdshop ul li:hover img {
	-moz-transform: none;
	-o-transform: none;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
	filter:alpha(opacity=50);
	-moz-opacity:0.5;
	opacity:0.5;
}

#gallery #gallerybx p{
font-size:1.2em;
}

} /* 480 */


@media only screen and (max-width:460px) {


#topnews {
width:90%;
}

#newssection {
width:100%;
float:none;
min-height:401px;
margin-bottom:20px;
}

#newssection ul{
list-style:none;
padding:0 15px 10px 15px;
text-align:left;
font-size:1.4em;
line-height:1.7;
color:#ea847b;
}

#newssection ul li{
padding-bottom:20px;
}


#facebooksection {
width:100%;
float:none;
margin-left:0;
}

/* fanclub section */

#fanclub #fanmain p{
text-align:center;
padding:10px 0;
}

#fanclub #fanmain p img{
width:90%;
height:auto;
}

#fanclub #faninfo .fanpriv{
text-align:center;
padding-bottom:20px;
}

#fanclub #faninfo dl.fannai{
width:100%;
}

#fanclub #faninfo dl.fannai dd.fand .infomain{
font-size:1.4em;
line-height:1.8;
}

#fanclub #faninfo dd.fand .infomain li{
display:block;
padding-right:20px;
}


#fanclub #faninfo dd.fand p{
font-size:1.3em;
padding:0px 20px 10px 20px;
}

#fanclub #faninfo dd.fand .kouza{
width:90%;
font-size:1.5em;
}

#fanclub #faninfo dd.fand .fanatbx{
padding:15px 20px;
margin:0;
font-size:1.2em;
}

#fanclub #faninfo dl.fannai  dd.fancontact{
padding:15px 10px 30px 10px;
font-size:1.2em;
width:100%;
margin:0 auto;
}


#fanclub #faninfo dl.fannai  dd.fancontact .fctxx{
font-size:0.9em;
}

#fanclub #fankiyaku{
width:100%;
}

#fanclub #fankiyaku h3{
font-size:1.4em;
}
#fanclub #fankiyaku .kiyaku{
padding:10px 20px;
margin:0;
}

/* contact */
#contact #contactform #contactbx{
width:90%;
}

#contact #contactform #contactbx dl dt{
padding-bottom:3px;
}

#contact #contactform #contactbx dl dd{
padding-bottom:10px;
}

#contact .btnSubmit {
	margin:10px auto 0 auto;
}

#contact .btnSubmit input[type=submit] {
	padding:1em 2em;
}

} /* 460 */


@media only screen and (max-width:420px) {



} /* 420 */


@media only screen and (max-width:400px) {

/* schedule */

#schedule #schedulebx .scheachy ul .sche dl{
padding:35px 0 0 0;
}

#schedule #schedulebx .scheachy ul .sche dt{
font-size:1.8em;
}

#schedule #schedulebx .scheachy ul .sche .schedate{
font-size:1.5em;
}

#schedule #schedulebx .scheachy ul .sche .hall{
font-size:1.4em;
}

#schedule #schedulebx .scheachy ul .sche .price{
font-size:1.2em;
padding-bottom:5px;
}

#schedule #schedulebx .scheachy ul .sche .appe{
font-size:1.2em;
padding-bottom:5px;
}

#schedule #schedulebx .scheachy ul .sche .program{
font-size:1.2em;
padding-bottom:10px;
}

#schedule #schedulebx .scheachy ul .sche .detail{
font-size:1.4em;
}

}

} /* 400 */


/* make sure the menu is visible on larger screens
-------------------------------------------------------------------------- */
@media only screen and (min-width:769px) {
	#nav-wrap #nav {
		display: block !important;
	}
}