@charset "utf-8";
/* CSS Document */

/*共通*/
.greenBg{
	border-top: var(--gold) 3px solid;
	border-bottom: var(--gold) 3px solid;
	background-image: url("../img/bg_green.jpg");
	background-position: center;
	background-size: cover;

}
.txtShadow{text-shadow:1px 1px 2px #000,0px 0px  3px #000,0px 0px  5px #000;}
.txtShadow2{text-shadow:0px 0px  5px #000,0px 0px  8px #000;}

.midashi{/*見出し*/
	width: calc(100% - 7em);
	max-width: 562px;
	margin: 0 auto;
}
.frame{
	position: relative;
	background-color: #000;
}
.frame:after{
	content: "";
	right:0; bottom:0; top:0; left:0; display: block; position: absolute;
	z-index: 5;
	border: 1px solid;
	border-image:
      url("../img/frame.png")  /* source */
      100 fill/                    /* slice */
      2em
      round;                  /* repeat */
}

.frame .inner{
	position: relative;
	z-index: 20;
	padding: 2em;
}
.gridArea{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(1, 1fr);
}
.gridArea .gridBox h2{
	color: var(--goldTxt);
	text-align: center;
	padding: 0 0 0.5em;
	font-weight: bold;
	position: relative;
}
.gridArea .gridBox h2 span{
	padding: 0.5em 0;
	display: block;
}
.gridArea .gridBox h2:before,.gridArea .gridBox h2:after{
	content: "";
	width: 100%;
	height: 1px;
	position: relative;
	display: block;
	background: var(--gLine);
	left: 0;
}

.gridArea .gridBox .txt{
	padding: 0.5em 0 0;
	transition: transform 0.8s 0s ease-out,opacity 0.8s 0s ease;
	opacity: 0;
	transform: translateY(2em);

}

.gridArea .gridBox.action .txt{
	opacity: 1;
	transform: translateY(0);
}
.gridArea .gridBox .img{
	text-align: center;
	transition: transform 0.8s 0s ease-out,opacity 0.8s 0s ease;
	opacity: 0;
	transform: scale(1.1);
}
.gridArea .gridBox.action .img{
	opacity: 1;
	transform: scale(1);
}

/*TOP*/
.topArea{
	background-image: url("../img/smp/top_img.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
/*----------------------------------------------------------------
TOP葉っぱ
-----------------------------------------------------------------*/
.topMainArea{
	position: relative;
}
.topMainArea:before{
	content: "";
	width: 50%;
	top:0;
	left: 0;
	height: 50vh;
	background-image: url("../img/leaf.png");
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	z-index: -1;
}
.topMainArea:after{
	content: "";
	width: 50%;
	top:0;
	right: 0;
	height: 50vh;
	background-image: url("../img/leaf.png");
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	z-index: -1;
	transform: scale(-1,1);
}
/*キャッチテキスト*/
#topCatch {
	padding: 6em 1em;
	position: relative;
	line-height: 1.8em;
}
#topCatch:before{
	content: "";
	width:25%;
	max-width: 210px;
	display: block;
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	background-image: url("../img/icon_rose.png");
	background-repeat: no-repeat;
	background-size: contain;
}
#topCatch:after{
	content: "";
	width:25%;
	max-width: 210px;
	display: block;
	position: absolute;
	top:0;
	bottom: 0;
	right: 0;
	background-image: url("../img/icon_rose.png");
	background-repeat: no-repeat;
	background-size: contain;
	transform: scale(-1,-1);
}
#topCatch .contentsBox{
	transition:  filter 1000ms 0s ease, opacity 1000ms 0s ease;
	filter: blur(1em);
	opacity: 0;

}
#topCatch.action .contentsBox{
	filter: blur(0);
	opacity: 1;
	
}

/*ストーリー*/
.storyTxt{
	line-height: 1.8em;
	padding: 0 0.2em;
}
.storyTxt .large{
	font-size: 1.2em;
}

.storyCatch{
	padding: 0 0 1em;
	text-align: center;
	transition:  filter 1000ms 0s ease, opacity 1000ms 0s ease;
	filter: blur(1em);
	opacity: 0;

}
.action .storyCatch{
	filter: blur(0);
	opacity: 1;
	
}

.storyTxt{
	display: block;
	transition: transform 0.8s 0s ease-out,opacity 0.8s 0s ease;
	opacity: 0;
	transform: translateY(1em);

}
#story .storyTxt{
		transition: transform 0.8s 0.5s ease-out,opacity 0.8s 0.5s ease;

}
.action .storyTxt{
	transform: translateY(0);
	opacity: 1;
	
}

.storyBox:after{
	content: "";
	width: 100%;
	bottom: 0;
	height:70vw;
	display: block;
	position: relative;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-image: url("../story/img/bg_smp.png");
	margin-top: 2em;
}
/*ムービー*/
.movieThumArea{
	padding: 1em 0 0;
	text-align: center;

}

/*---------------------------------------------------------
@media
------------------------------------------------------------*/
/*PC*/
/*@media (min-width: 769px) {*/
@media (min-width: 1025px) {
	
.gridArea{

	grid-template-columns:repeat(2, 1fr);
}
	.topArea{
		background-image: url("../img/pc/top_img.jpg");
	}

.storyBox:after{
	height:60vh;

	background-image: url("../story/img/bg.png");
}
/*ムービー*/
.movieThumArea .movieThumBox{
	width: calc(calc(50% / 1) - 1em);
	margin: 0.5em;

}

}