@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500&display=swap');


body{
	background-image:url('../images/top_visual.jpg');
	background-repeat:no-repeat;
	background-position:50% 25%;
	background-size:cover;
	background-attachment:fixed;
}

#container{
	display:block;
	overflow:hidden;
	position:relative;
}


#mainContent{
	display:block;
	overflow:hidden;
	margin-bottom:50px;
}

.contentFrame{
	display:block;
	overflow:hidden;
	width:100%;
	max-width:980px;
	margin:0 auto;
	position:relative;
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	#mainContent{
		padding:0 3vw;
		margin-bottom:12vw;
	}

}


/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}


/**************************
 ヘッダ
**************************/
#header{
	display:block;
	overflow:hidden;
	width:100%;
	height:auto;
	position:absolute;
	top:0;
	left:0;
	z-index:10;
}

/*メインタイトル*/
#mainTitle{
	width:100%;
}

#mainTitle > h1{
	display:block;
	overflow:hidden;
	width:100%;
	height:140px;
}

#mainTitle > h1 > span{
	display:none;
}

#mainTitle > h1 >img{
	width:auto;
	height:100%;
	max-height:139px;
}

.scon #header{
	position:fixed;
	top:-140px;
	left: 0;
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	#mainTitle > h1{
		height:25vw;
		text-align:center;
	}

	.scon #header{
		position:fixed;
		top:-25vw;
		left: 0;
	}

}


/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}



/*****************************
 グローバルナビ
 *****************************/
#globalNavi{
	display:block;
	overflow:hidden;
	width:100%;
	background:rgba(255,255,255,0.75) url('../images/nav_bg.png') repeat-x 0 50%;
	/*background-color:#FFCA00;*/
}


#globalNavi > ul {
	width:100%;
	max-width:980px;
	margin:0 auto;
	display:table;
	letter-spacing: -.4em;
	line-height:100%;
}

#globalNavi > ul > li {
	display:inline-block;
	width: 20%;
	letter-spacing:normal;
}

#globalNavi > ul > li > a{
	display:block;
	width:100%;

	font-size:2.8rem;
    font-family: 'Zen Maru Gothic', sans-serif;
	line-height:60px;
	text-align:center;
	color:#000000;
	text-decoration:none;
}

#globalNavi > ul > li > a:hover{
	color:#FFFFFF;
}

#globalNavi > ul > li:nth-child(1){
	background-color:#FF7270;
}

#globalNavi > ul > li:nth-child(2){
	background-color:#7EC800;
}

#globalNavi > ul > li:nth-child(3){
	background-color:#966EFF;
}

#globalNavi > ul > li:nth-child(4){
	background-color:#00B2F1;
}

#globalNavi > ul > li:nth-child(5){
	background-color:#FFCA00;
}



/* for TB --------------------*/
@media screen and (max-width:768px){

	#globalNavi{
		background-image:none;
	}


	#globalNavi > ul > li {
		width: 33.3%;
	}

	#globalNavi > ul > li > a{
		font-size:1.8rem;
		line-height:125%;
		padding:0.5em 0;
	}

}


/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}


/*****************************
 コーナーフレーム
 *****************************/
.topBox{
	clear:both;
	display:block;
	overflow:hidden;
	padding:1em 2em 2em;

	background-color: rgba(255,255,255,0.75);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.topBox + .topBox{
	margin-top:50px;
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	.topBox{
		padding:3vw 3vw 6vw;
	}

	.topBox + .topBox{
		margin-top:6vw;
	}

}


/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}



/*****************************
 コーナータイトル
 *****************************/
h2[class^="ltxt_"]{
	display:block;
	overflow:hidden;
    width:100%;
    height:80px;
    font-size:3.2rem;
    line-height:125%;
    font-family: 'Zen Maru Gothic', sans-serif;

    background-repeat: no-repeat;
    background-position: 0 bottom;
    background-size:contain;

    padding-left:45px;
    padding-top:20px;
    margin-bottom:1em;
    clear:both;
}

h2.ltxt_red{
    background-image:url('../images/title_bace_red.png');
}

h2.ltxt_green{
    background-image:url('../images/title_bace_green.png');
}
h2.ltxt_purple{
    background-image:url('../images/title_bace_purple.png');
}
h2.ltxt_blue{
    background-image:url('../images/title_bace_blue.png');
}
h2.ltxt_yellow{
    background-image:url('../images/title_bace_yellow.png');
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	h2[class^="ltxt_"]{
	    height:2.5em;
	    font-size:2.4rem;

	    background-position: 0 0;
	    background-size:cover;

	    padding-left:1.5em;
	    padding-top:0.5em;
	}

}


/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}

/****************************
タイトルカバー
****************************/
#cover{
	display:block;
	overflow:hidden;
	width:100%;
	height:100vh;
	position:relative;
}


#cover > img:nth-child(1){
	position:absolute;
	top:250px;
	left:50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}


#cover > img:nth-child(2){
	position:absolute;
	bottom:50px;
	left:0;
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	#cover{
		padding:0 6vw;
	}

	#cover > img:nth-child(1){
		width:calc(100% - 6vw);
		height:auto;
		top:60vw;
	}


	#cover > img:nth-child(2){
		width:calc(100% - 12vw);
		height:auto;
		bottom:12vw;
		left:6vw;
	}

}


/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}


/****************************
作品紹介
****************************/
#intro{
	
}

#intro h3{
	font-size:1.8rem;
	line-height:155%;
    font-family: 'Zen Maru Gothic', sans-serif;
    margin-bottom:1em;
}

#intro .imgBox{
	display:inline-block;
	overflow:hidden;
	width:300px;
	margin-left:1em;
	float:right;
}

#intro .imgBox > img{
	width:100%;
	height:auto;
	max-width:300px;
}

#intro .imgBox > img + img{
	margin-top: 10px;
}

#intro p{
	display:block;
	overflow:hidden;
	font-size:1.6rem;
	line-height:175%;
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	#intro h3{
		font-size:1.6rem;
	}

	#intro .imgBox{
		display:block;
		width:100%;
		margin-left:0;
		margin-bottom: 0.5em;
		float:none;
		text-align:center;
	}

	#intro .imgBox > img{
		width:100%;
		height:auto;
		max-width:300px;
	}

	#intro .imgBox > img + img{
		margin-top: 10px;
	}

	#intro p{
		font-size:1.4rem;
	}

}

/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}



/****************************
スタッフ
****************************/
#stuffcast {
	
}


#stuffcast .imgBox{
	display:inline-block;
	overflow:hidden;
	width:350px;
	float:left;
}

#stuffcast .imgBox > img{
	width:100%;
	height:auto;
}


dl#stufflist{
	display:inline-block;
	overflow:hidden;
	width:calc(100% - 350px);
	float:right;
	padding-left:1em;
}

dl#stufflist > dt,
dl#stufflist > dd{
	display:block;
	overflow:hidden;
	padding:0.5em 0;
	float:left;
	border-top:1px dotted #333333;
}


dl#stufflist > dt{
	width: 8em;
	font-weight:bold;
}

dl#stufflist > dd{
	width: calc(100% - 8em);
}


/* for TB --------------------*/
@media screen and (max-width:768px){

	#stuffcast .imgBox{
		display:none;
	}

	dl#stufflist{
		display:block;
		width:100%;
		float:none;
		padding-left:0;
		font-size:1.4rem;
	}

}

/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}




/****************************
メッセージ
****************************/

#message{
	
}

.msgBox{
	display:inline-block;
	width:50%;
	float:left;
}

.msgBody{
	display:block;
	overflow:hidden;
	padding:15px 40px;
	margin:1em 0.5em;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;

	line-height:1.8em;
	border-top:dotted 4px #FF8000;
	background:url('../images/message/msg_orange.png') repeat-y 0 0,url('../images/message/msg_orange.png') repeat-y right 0;
}

.sizeL{
	width:100%;
}

.bgBlue{
	background-image:url('../images/message/msg_blue.png'),url('../images/message/msg_blue.png');
	border-color:#0059B2;
}

.bgGreen{
	background-image:url('../images/message/msg_green.png'),url('../images/message/msg_green.png');
	border-color:#008C46;
}
.bgRed{
	background-image:url('../images/message/msg_red.png'),url('../images/message/msg_red.png');
	border-color:#FF0000;
}


.msgBody h4{
	display:block;
	overflow:hidden;
	font-size:1.8rem;
	font-weight:bold;
	margin-bottom:0.5em;
    font-family: 'Zen Maru Gothic', sans-serif;
}


.msgBody p{
	font-size:1.6rem;
	line-height:155%;
}

.msgBody p+p{
	margin-top:1em;
}

.msgBody p.comennter{
	text-align:right;
	font-size:1.4rem;
}


#message .imgBox{
	display:inline-block;
	overflow:hidden;
	width:400px;
	float:right;
	margin-left:1em;
	margin-bottom:1em;
}

#message .imgBox > img{
	width:100%;
	max-width:400px;
	height:auto;
}



/* for TB --------------------*/
@media screen and (max-width:768px){


	.msgBox{
		display:block;
		width:100%;
		float:none;
	}


	.msgBody{
		padding:15px 35px;
		margin:0 0 2em;
	}

	.msgBody h4{
		font-size:1.6rem;
	}


	.msgBody p{
		font-size:1.4rem;
		line-height:155%;
	}

	.msgBody p.comennter{
		margin-top:1em;
		text-align:right;
		font-size:1.4rem;
		line-height:125%;
	}


	#message .imgBox{
		display:block;
		width:100%;
		float:none;
		margin-left:0;
		margin-bottom:0.5em;
		text-align:center;
	}

	#message .imgBox > img{
		width:100%;
		max-width:400px;
		height:auto;
	}

}

/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}


/****************************
メッセージ
****************************/
a#topBtn{
    display:inline-block;
    overflow:hidden;
    width:70px;
    height:70px;

    font-family: 'Zen Maru Gothic', sans-serif;
    font-size:1.6rem;
    line-height:70px;
    color:#000000;
    text-align:center;
    text-decoration:none;

    border:1px solid #cccccc;
    background-color:#ffffff;
	border-radius:35px;
	-webkit-border-radius:35px;

	position:fixed;
	bottom:25px;
	right:25px;
	
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	opacity:0.0;
	pointer-events:none;

}

a#topBtn:visited{
    color:#000000;
}


.scon a#topBtn{
	opacity:1.0;
	pointer-events:initial;
}




/* for TB --------------------*/
@media screen and (max-width:768px){


}

/* for SP --------------------*/
@media screen and (max-device-width:620px){
    
    
}
