@charset "UTF-8";
@import url("default.css") screen, print;
@import url("normalize.min.css") screen, print;
@import url("layout.css") screen, print;


/* #movie
----------------------------------------------------------------------------*/
#movie .inner{
	background-image:url(../img/home/movie_bk2303.jpg);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	}
@media (min-width: 769px),print{
#movie{
	padding: 100px 2% 0;
	position:relative;
	width: 100%;
	max-width:2560px;
	min-width:320px;
	margin:auto;
	}
#youtube-wrap {
	position:relative;
	padding-bottom: 56.25%;
	height:0px;
	width: 100%;
}
#movie .inner{
	background-image:url("../img/home/movie_bk2303_pc.jpg");
		background-position:center center;
	}
#movie .catchcopy{
	position:absolute;
	bottom:1em;
	left:1em;
	}
}
@media (max-width: 768px) {
#movie{
	position:relative;
	padding: 100px 2% 0;
	width: 100%;
	margin:auto;
	}
#youtube-wrap {
	position:relative;
	padding-bottom: calc(120 / 100 * 100%);
	height:0px;
	width: 100%;
}
#movie .catchcopy{
	position:absolute;
	bottom:1em;
	left:1em;
	width:80%;
	}
}

/* #information
----------------------------------------------------------------------------*/
#information{
	width: 100%;
	max-width:1360px;
	min-width:320px;
	margin:auto;
	padding : 3em 4%;
	display:flex;
}
#information .left{
	display:flex;
	padding-right:4%;
	padding-top:1em;
}
#information .right{
	border-left: 2px dashed #666;
	padding-left: 4%;
	width:100%;
}
#information .left h2{
	font-size: 160%;
	font-weight: 900;
}
#information .left p {
	text-align: center;
	display: block;
	font-size: 90%;
	margin: 0 0 0 15px;
	padding-top: 1em;
	padding-bottom: 1em;
	letter-spacing : 0.3em;
	white-space: nowrap;
}
#information .left p a{
	color: #FFF;
	text-decoration: none;
	width: 100%;
	background-color: #888;
	padding: 1em 0.5em;
	border-radius: 2em;
	-webkit-border-radius: 2em;
	-moz-border-radius: 2em;
}
#information .right .infoWrap{
	padding:0.5em 0;
	}
#information .right p.date {
	color: #455052;
	font-size:80%;
}
#information .right p.title{
	font-size:112%;
	}
#information .right .wrap{
	padding: 0.5em 0;
	border-top: dotted 1px #999;
}
#information .right .wrap:first-child{
	border-top: none;
}
@media (max-width: 768px) {
#information .left{
	display:block;
	padding-top:0;
}
#information .left h2{
	text-align: center;
}
#information .left p {
	margin:auto;
}
}



/* #concept
----------------------------------------------------------------------------*/
#concept{
	width: 100%;
	background-image: url(../img/home/concept_bk2303.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#concept .contents{
	padding-bottom:0 !important;
	}
#concept h2{
	font-size: 130%;
	line-height: 230%;
	text-shadow: 0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff;
	padding-top: 3em;
	margin-bottom: 10em;
}
#concept h2 span.bk{
	background-color: #FF0;
	font-size: 80%;
	text-shadow: initial;
}
#concept ul li{
	float: left;
	width: 31.3%;
	margin-right: 1%;
	margin-left: 1%;
}
#concept ul li a{
	display:block;
	background-color: #FF0;
	border-bottom: 5px solid #000;
	text-align: center;
	padding: 1em 0.1em 2em;
	background-image: url(../img/common/icon_arrow_b2.png);
	background-repeat: no-repeat;
	background-position: center 90%;
	font-size: 95%;

}
#concept ul li span{
	display: inline-block;
}
@media (min-width: 769px) {
#concept{
	width:96%;
	margin:auto;
	background-image: url(../img/home/concept_bk_pc2303.jpg);
	height:730px;
}
#concept h2{
	margin-bottom: 6em;
}
}
@media (max-width: 374px) {
#concept h2 span.bk{
	font-size: 66%;
}
#concept ul li a{
	font-size: 88%;

}
}

#trainer.titleImgR{
	background-image: url(../img/home/trainer_bk2111.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
}
#trainer.titleImgR::after{
  border-bottom-color: #FFFF75; 
	}
#trainer.titleImgR .contents h3,
#trainer.titleImgR .contents p{
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
	}
@media (min-width: 769px) {
#trainer.titleImgR{
	background-image: url(../img/home/trainer_bk2111_pc.jpg);
}}
@media (min-width: 1024px) {
#trainer.titleImgR .contents{
	padding:10em 4% 5em 35%;
	}
	}
@media (min-width: 1441px) {
#trainer.titleImgR .contents{
	padding:10em 4% 5em 500px;
	}
	}
@media (max-width: 1023px) {
#trainer.titleImgR .contents{
	padding:5em 4% 3em;
	}
#trainer.titleImgR .contents h3{
	padding:0 30% 0 0;
	}
#trainer.titleImgR .contents p{
	padding:0 30% 0 0;
	}
	}
@media (max-width: 768px) {
#trainer.titleImgR .contents{
	padding:5em 4%;
	}
#trainer.titleImgR .contents h3{
	padding:0;
	}
#trainer.titleImgR .contents p{
	padding:0 0 0 40%;
	}
#trainer.titleImgR .contents ul{
	padding-left:40%;
	}
}
@media (max-width: 449px) {
#trainer.titleImgR .contents h3{
	text-shadow: 0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff,0px 0px 30px #fff;
	}
#trainer.titleImgR .contents h3 span{
	display:inline;
	}
#trainer.titleImgR .contents{
	padding:3em 2% 0;
	}
/*#trainer.titleImgR .contents p{
	padding:3px;
	width:65%;
	background-color:rgba(255,255,255,0.5);
	}*/
#trainer.titleImgR .contents ul{
	padding-right:0;
	}
	}
/* #about
----------------------------------------------------------------------------*/
#about .sp{
	display:none;
	}
@media (max-width: 768px) {
#about .sp{
	display:block;
	}
	}
#about{
	width: 100%;
	background-image: url(../img/home/about_bk.png);
	background-repeat: no-repeat;
	background-position: right top;
	background-size:33% auto;
	padding:3em 0;
}
@media (min-width: 769px) {
#about{
	background-image:none;
	}
#about .contents{
	background-image: url(../img/home/about_bk.png),url(../img/home/about2111.jpg);
	background-repeat: no-repeat, no-repeat;
	background-position: 80% top, right 5em;
	background-size:15% auto,50% auto;
	position:relative;
}
#about h3{
	position:relative;
	z-index:2;
	text-shadow: 0px 0px 2px #fff,0px 0px 2px #fff,0px 0px 2px #fff,0px 0px 2px #fff,0px 0px 2px #fff,0px 0px 2px #fff;
	}
#about .contents p{
	width:48%;
	}
	}
#about h3,
#trainer h3,
#review h3{
	font-size: 240%;
	margin-bottom: 1em;
}
#review h3{
	padding-right: 15%;
}
#about h3 span,
#trainer h3 span,
#review h3 span{
	display: inline-block;
}
#about p,
#trainer p{
	line-height: 180%;
}
#review {
	background-color: #FFFF73;
	z-index:5;
	padding-top:0;
}
#review .contents {
	padding-top:10vw;
	background-image: url(../img/home/review_bk.png);
	background-repeat: no-repeat;
	background-position: 80% top;
	background-size:15% auto;
}
@media (max-width: 768px) {
#review .contents {
	background-size:33% auto;
	background-position: right top;
}
	}
#review .wrap{
	border: 5px solid #333;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	padding: 1%;
	background-color: #FFF;
	box-shadow: 10px 10px rgba(145,219,254,0.6);
	margin: 0px 1% 1%;
}
#group{
	width:100%;
	max-width:1360px;
	margin:auto;
	padding:0 4%;
}
#group h2{
	width:100%;
	padding:2em 0em 1em;
	position:relative;
	z-index:1;
	text-align: center;
	margin-bottom: 0.5em;
	}
#group h2 span,
#group h2 strong{
	display:block;
	line-height:1em;
	}
#group h2 span{
	font-weight:900;
	}
#group h2 strong{
	font-family: 'Cabin Sketch', cursive;
	font-weight:700;
	font-size:360%;
}
#group p.groupHd{
	line-height: 180%;
	padding-bottom: 1em;
	width:100%;
	max-width:768px;
	margin:auto;
}
#group .wrap{
	border: 5px solid #333;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	padding: 4%;
	background-color: #FFF;
	margin: 0px 1% 2em;
}
#group .wrap h3{
	line-height: 160%;
	padding-bottom:1em;
}
#group .wrap h3 a{
	text-decoration: none;
}
#group .wrap .thumbnail{
	position:relative;
	background-color:#f5f5f5;
}
#group .wrap .thumbnail img{
	height: auto;
	max-width: 100%;
	display: block;
	margin-right: auto;
	margin-left: auto;
}
#group .wrap .status01 .status{
	position:absolute;
	bottom:0;
	width:100%;
	background:rgba(254,106,58,0.7);
	color: #FFF;
	text-align: center;
	display: block;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
}
#group .wrap .status02 .status{
	position:absolute;
	bottom:0;
	width:100%;
	height:100%;
	background:rgba(53,149,219,0.7);
	color: #FFF;
	text-align: center;
	display: block;
	vertical-align: middle;
	top:0;
	bottom:0;
	left:0;
	right:0;
	display:flex;
	flex-direction: column;
    justify-content: center;
    align-items: center;
}
#group .wrap .status03 .status{
	position:absolute;
	bottom:0;
	width:100%;
	height:100%;
	background:rgba(255,153,153,0.8);
	color: #FFF;
	text-align: center;
	display: block;
	vertical-align: middle;
	top:0;
	bottom:0;
	left:0;
	right:0;
	display:flex;
	flex-direction: column;
    justify-content: center;
    align-items: center;
}
#group .wrap .thumbnail a{
	font-weight: 600;
	color: #FFF;
	text-decoration: none;
}
#group .wrap .guest{
	padding: 0.2em;
}
#group .wrap .date{
	background-color: #FFE324;
	padding: 0.2em;
}
#group .wrap dt{
	width:3.5em;
	float:left;
	}
#group .wrap .date dt{
	width:5.5em;
	}
#group .wrap dd{
	padding-left:3.5em;
	}
#group .wrap .date dd{
	padding-left:5.5em;
	}
#group .wrap dd span{
	display: inline-block;
	}
@media (min-width: 1024px) {
#group .inner{
	display: flex;
	padding:2em 0;
	}
#group .inner .wrap{
	width:30.3%;
	margin:0 1.5% 0;
	padding: 2%;
}
#group .wrap dt{
	float:none;
	display:inline-block;
	}
#group .wrap dd{
	padding-left:0;
	display:inline-block;
	}
#group .wrap .date dt{
	display:block;
	}
#group .wrap .date dd{
	padding-left:0;
	display:block;
	}
}
#instagram h2,
#bivvas h2{
	text-align: center;
	font-size: 150%;
	margin-bottom: 1em;
}
#instagram {
	background-color: #EEE;
	padding-top:5vw;
}
#instagram h2:before{
	content:"";
	display:inline-block;
	width:1em;
	height:1em;
	background:url(../img/common/icon_instagram.svg) no-repeat;
	background-size:contain;
	margin-right: 0.5em;
}
#bivvas{
	background-color: #ff9999;
	}
#bivvas::before{
  border-top-color: #EEEEEE; 
	}
#bivvas .image{
	text-align:center;
	padding-bottom:2em;
	}
#bivvas .image img{
	display:block;
	margin:auto;
	}
	
ul.btn,
ul.btn02{
	display: block;
	margin: auto;
	text-align: center;
	padding:2em 0;
	font-weight:900;
}
ul.btn a{
	background-image: url(../img/common/icon_arrow_w.png);
	background-repeat: no-repeat;
	background-position: 90% center;
	color: #FFF;
	text-decoration: none;
	background-color: #000;
	border-radius: 100vh;
	-webkit-border-radius: 100vh;
	-moz-border-radius: 100vh;
	display: block;
	padding: 0.5em;
	display: block;
	width: 60%;
	margin:auto;
}
ul.btn02 a{
	border:solid 5px #000;
	text-decoration: none;
	background-color: #FFF;
	border-radius: 100vh;
	-webkit-border-radius: 100vh;
	-moz-border-radius: 100vh;
	padding: 0.5em 2em;
	margin:auto;
}
ul.btn li{
	padding-bottom:1em;
	}
@media (max-width: 640px) {
ul.btn a{
	width: 80%;
	background-size:4%;
	background-position: 97% center;
}
}
@media (max-width: 400px) {
ul.btn a{
	width: 100%;
}
}