@charset "UTF-8";

*,
*:before,
*:after {
  box-sizing: border-box;
}

body{
	background: url(../img/bg_contents7.jpg) center center / cover no-repeat fixed;
	font-family: 'Cutive Mono', monospace;
	color: #221815;
	overflow: hidden;
	margin: 0;
	padding: 0;
}


/* アニメーション設定 */
.arrowWrap {
  position: absolute;
  bottom: 0;
  height: 160px
}

.arrowInner p {
  font-size: 12px;
  text-align: end;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.arrow {
  width: 1px;
  height: 50px;
  margin: 40px auto 10px;
  background-color: #eee;
  position: relative;
  overflow: hidden;
}

.arrow::before {
  content: '';
  width: 1px;
  height: 50px;
  margin: 50px auto 0;
  background-color: #000;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}

@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }

  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}

/* -------------------------
  content
------------------------- */
.content {
	width: 100vw;
	height: auto;
	min-height: 100vh;
	position: relative;
	margin: 0;
	padding: 0;
	
	display: -webkit-box;
  	display: -ms-flexbox;
  	display: flex;

  	/* 左右中央寄せ */
  	-webkit-box-pack: center;
  	-ms-flex-pack: center;
  	justify-content: center;

  	/* 上下中央寄せ */
  	-webkit-box-align: center;
  	-ms-flex-align: center;
  	align-items: center;
}

.content #logo{
	position: absolute;
	top: 12%;
}

.content h1{
	font-size: 24px;
	text-align: center;
	position: absolute;
	font-weight: 100;
	top: 54%;
}

.container {
  overflow: auto;
  scroll-snap-type: y mandatory;
  height: 100vh;
}
.area {
  scroll-snap-align: start;
  height: 100vh;
}

.about {
	width: 699px;
	margin: -170px auto 0 auto;
	position: relative;
}

.about .profile{
	width: 699px;
	margin: 0 auto 100px auto;
	position: relative;
	text-align: center;
	z-index: 10;
}

.about p.prof{
	position: relative;
	padding-top: 10px;
	font-size: 13px;
	font-family: 'M PLUS 1p', sans-serif;
}

.album {
	width: 400px;
	margin: 0 auto 0 50%;
	position: relative;
}

.album ul{
	text-align: center;
	margin-bottom: 200px;
	overflow: hidden;
	position: relative;
}

/* .album ul li:nth-child(even){
	float: left;
}

.album ul li:nth-child(odd){
	float: right;
}

*/ 

.album ul li a img:hover {
	opacity:0.5;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.member {
	width: 1050px;
	margin: 0 auto;
	position: relative;
}

.member ul{
	text-align: center;
	margin: 0;
	overflow: hidden;
	position: relative;
}

.member ul li{
	padding-right: 15px;
	float: left;
}

.member ul li:last-child{
	padding-right: 0px;
	float: right;
}


/* .member ul li:nth-child(even){
	float: left;
}

.member ul li:nth-child(odd){
	float: right;
}

*/ 

.member ul li a img:hover {
	opacity:0.8;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.pt100 {
	padding-top: 100px;
}

.color00 {
    background:rgba(213,242,255,0.15);
}

.color01 {
    background:rgba(0,255,118,0.03);
}

.color02 {
    background:rgba(255,255,0,0.02);
}

.color {
    background:rgba(0,0,0,0.03);
}

.hitellama {
    background:rgba(0,0,0,0.03) url(../img/bg_hitellama.png) left top / auto 100% no-repeat;;
}

.content h2{
	font-size: 24px;
	text-align: center;
	position: absolute;
	top: 8%;
}

.content .about h2{
	font-size: 24px;
	text-align: center;
	position: relative;
}

.content .album h2{
	font-size: 24px;
	margin: 0 auto 50px auto;
	text-align: center;
	position: relative;
	line-height: 1.4;
}

.content h3{
	font-size: 14px;
	font-family: 'M PLUS 1p', sans-serif;
}

.content h4{
	font-size: 13px;
	font-family: 'M PLUS 1p', sans-serif;
}

.content p{
	font-size: 13px;
}

.content #coverflow{
	display: block;
}

.detail{
	text-align: right;
	line-height: 1.6;
	cursor: pointer;
}
.detail:hover {
	opacity:0.3;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.arrow01{
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 12px;
}
.arrow01::before,
.arrow01::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.style01::before{
    width: 12px;
    height: 12px;
    background: #ccc;
}
.style01::after{
    left: 3px;
    width: 3px;
    height: 3px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.close {
  position: absolute;
  right: 32px;
  top: 32px;
  width: 32px;
  height: 32px;
  opacity: 0.3;
}
.close:hover {
  opacity: 1;
}
.close:before, .close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 2px;
  background-color: #333;
}
.close:before {
  transform: rotate(45deg);
}
.close:after {
  transform: rotate(-45deg);
}

footer {
	width: 100%;
	height: 50px;
	position: fixed;
	bottom: 0;
	left: 0;
	margin: 0;
	padding: 24px 10px 0 0;
	text-align: right;
	font-size: 12px;
	background: url(../img/bg_footer2.png) center center / 100% 100% no-repeat;
	color: #fff;
}

@media screen and (max-width: 780px) {	
	.arrowWrap {
	  	bottom: 70px;
	 }
	.content{
	 	background: url(../img/bg_contents7.jpg) center top / auto 100% no-repeat;
		overflow: visible;
	}
	.content #logo{
		position: absolute;
		top: 12%;
	}

	.content h1{
		font-size: 24px;
		text-align: center;
		position: absolute;
		font-weight: 100;
		top: 48%;
	}
	
	.about h2{
		font-size: 24px;
		margin: 30px auto 20px auto;
		padding-top: 20px;
		text-align: center;
		position: relative;
	}

	.about img{
		width: 100%;
		height:auto; 
	}
	.about .profile{
		width: 100%;
		margin: 0 auto 100px auto;
		position: relative;
		z-index: 10;
	}

	.about .profile p{
		position: relative;
		margin-bottom: 20px;
		font-family: 'M PLUS 1p', sans-serif;
		font-size: 14px;
		text-align: left;
	}

	.album {
		width: 94%;
		margin: 0 auto 0 auto;
		position: relative;
	}

	.album ul{
		width: 50%;
		margin: 0 auto;
		margin-bottom: 200px;
		overflow: hidden;
		position: relative;
	}
	
	.album ul li img{
		width: 100%;
		height: auto;
	}

	.album ul li:nth-child(even){
		float: none;
		margin-bottom: 20px;
	}

	.album ul li:nth-child(odd){
		float: none;
		margin-bottom: 20px;
	}
	
	.hitellama {
		background:rgba(0,0,0,0.04) url(../img/bg_hitellama.png) left bottom / auto 70% no-repeat;
	}
	
	.arrow01{
		padding: 0 0 0 18px;
		font-size: 16px;
	}
	
	footer {
		width: 100%;
		height: 60px;
		position: fixed;
		bottom: 0;
		left: 0;
		margin: 0;
		padding: 37px 2px 0 0;
		text-align: right;
		font-size: 11px;
		background: url(../img/bg_footer_s.png) left bottom cover/ 100% 65px no-repeat;
		color: #fff;
	}
	
	.noSP {
		display: none;
	}
	
	.noPC {
		display: block;
	}
}

@media screen and (max-width: 780px) {
	#artist_photo{
		display: none;
	}
	
	#profSP {
		display: block;
		width: 92%;
		margin: 0 auto;
	}
	
	#profSP img{
		margin-bottom: 40px;
	}
	
	.member {
		width: 100%;
		margin: -50px auto 50px auto;
		position: relative;
	}
	
	.member ul{
		width: 92%;
		text-align: center;
		margin: 0 auto;
		overflow: hidden;
		position: relative;
	}

	.member ul li{
		width: 32%;
		padding: 1%;
		float: left;
		text-align: center;
		position: relative;
	}

	.member ul li img{
		width: 100%;
		max-width: 100px;
		height: auto;
		text-align: center;
	}

	.member ul li:last-child{
		padding: 1%;
		float: left;
	}

	.modal-content02 h3{
		width: 100%;
		position: relative;
	}	

	.modal-content02 h3 img{
		width: 100%;
		height: auto;
	}
	
}

@media screen and (min-width: 781px) {
	.content .about h2{
		margin: 50px auto;
	}
	#artist_photo{
		display: block;
	}
	
	#profSP {
		display: none;
	}
}
