/*スタッフ*/
.caststaff #contentsArea .contentsBlock {}
#castArea, #staffArea { background-color: rgba(255, 255, 255, 0.6); margin: 0 auto; position: relative;}
.unit{ padding:0 0 0em; text-align: center; position: relative;
}
.unit h2 { margin: 0 auto; 
font-family: century-old-style-std, serif;
font-weight: 400;
font-style: normal;
color:#253152;}

.prd { font-size: 0.95em; letter-spacing: -0.05em; }
.person { display: block; line-height: 1.2em; padding-bottom: 0.5em;}
.person:last-child { padding-bottom: 0;}

#staffArea {}
#staffBlock {}


@media all and (min-width: 768px) {
	#castArea, #staffArea {width: 1080px; padding: 0;}
	#castArea { margin-bottom: 80px;}
	.unit {padding:0 0 50px;}
	.unit h2 { font-size: 2.5em; padding: 40px 0;}
	.bookTitle {font-size: 0.8em;}
}

@media all and (max-width: 767px) {
	#castArea, #staffArea { width: 100%;}
	#castArea { margin-bottom: 30px;}
	.unit {padding:0 0 30px;}
	.unit h2 { font-size: 1.6em; padding: 25px 0;}
	.prd {letter-spacing: -0.04em; line-height: 1.2em; }
	.bookTitle {font-size: 0.75em;}
}

@media all and (max-width: 389px) {
	.prd {letter-spacing: -0.01em; }
}



/*	table
============================== */

table {
 border-collapse:collapse;
 border-spacing:0;
 margin: 0 auto 0em;
 letter-spacing: 0.05em;
	-moz-font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
}
table th ,
table td {
 padding-bottom: 0.6em;
}
#staffBlock table th ,
#staffBlock table td {
display: block; text-align: center;
}
#staffBlock table tr:not(:last-child) td {
 padding-bottom: 1.5em;
}
table tr.mgb2 th ,
table tr.mgb2 td{
 padding-bottom: 2.0em;
}
#staffBlock table tr.mgb0 th ,
#staffBlock table tr.mgb0 td{
 padding-bottom: 0.3em;
}
table tr.space th ,
table tr.space td {
 padding-bottom: 0;
}
table th ,
table td.naka {
 text-align:left;
}
table td {
 text-align:left; font-weight: 500;
}
table th {
 text-align:right;
 white-space: nowrap;
 line-height: 2.5;
 font-weight: 700;
}
#castBlock table th {
 color: #128BD1;
}
#staffBlock table th {
 color: #009697;
}


table td.naka {
 text-align:center;
 width:2em;
}
#staffBlock table td.naka { display: none;}
table th, table td {
 vertical-align: baseline;
	/*vertical-align: top;*/
	line-height: 1.5em;
}
table tr.pdb th, table tr.pdb td {
    padding-bottom: 1.5em;
}
table dl {display: flex;
	flex-wrap: wrap;
	justify-content: center;}
table dl dt { width: 16em; text-align: right;}
table dl dd { width: 15em; text-align: left;}
table dl .person:last-child {
    padding-bottom: 0.5em;
}

.notes {font-size: 0.7em; line-height: 1.6em;}



@media all and (min-width: 768px) {
	table {font-size:1.4em;}
	
	#castBlock table th {width: 440px;}
	#castBlock table td {width: 440px;}
	#castBlock table td.naka, #staffBlock table td.naka { width: 40px; }

}
@media all and (max-width: 767px) {
 table {
 font-size:1.0em; width: 100%;
	}
#castBlock table th {
 width: 45%;
}
#staffBlock table th {
 width: 100%;
}
table th ,
table td {
 padding-bottom: 0.6em;
}
#staffBlock table th{
 padding-bottom: 0.4em;
}
#staffBlock table td:not(:last-child) {
 padding-bottom: 1.2em;
}
table tr.mgb th ,
table tr.mgb td{
 padding-bottom: 2em;
}
	
.notes {font-size: 0.65em; padding-top: 0.3em;}
.person .notes { line-height: 1.0em;}
.say{font-size: 0.7em;}
.song {letter-spacing: -.02em;}
castBlock .prd { font-size: 0.95em;}
	table dl dt { width: 10em; text-align: right;}
table dl dd { width: 9em; text-align: left;}
}

@media all and (max-width: 379px) {
	#castBlock .prd { font-size: 0.9em;}
}

#castArea .dec01 { position: absolute; background-color: rgba(132,236,222,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 0.1s 1 normal forwards; z-index: 1;}
#castArea .dec02 { position: absolute; background-color: rgba(200,255,151,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 0.6s 1 normal forwards; z-index: 1;}
#castArea .dec03 { position: absolute; background-color: rgba(200,255,151,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 1.1s 1 normal forwards; z-index: 1;}
#castArea .dec04 { position: absolute; background-color: rgba(255,246,151,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 1.6s 1 normal forwards; z-index: 1;}
#staffArea .dec05 { position: absolute; background-color: rgba(137,233,252,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 2.1s 1 normal forwards; z-index: 1;}
#staffArea .dec06 { position: absolute; background-color: rgba(255,246,151,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 2.6s 1 normal forwards; z-index: 1;}
#staffArea .dec07 { position: absolute; background-color: rgba(132,236,222,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 3.1s 1 normal forwards; z-index: 1;}
#staffArea .dec08 { position: absolute; background-color: rgba(251,189,217,0.3); opacity: 0; animation: fadein2 1.5s ease-in-out 3.6s 1 normal forwards; z-index: 1;}

@keyframes fadein2 {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

@media all and (min-width: 768px) {
#castArea .dec01 { width: 265px; height: 190px; top:-130px; left: 50%; margin-left: 210px;}
#castArea .dec02 { width: 175px; height: 125px; top:-20px; left: 50%; margin-left: 380px;}
#castArea .dec03 { width: 175px; height: 125px; bottom:110px; left: 50%; margin-left: -390px;}
#castArea .dec04 { width: 320px; height: 230px; bottom:-45px; left: 50%; margin-left: -575px;}
#staffArea .dec05 { width: 265px; height: 190px; top:-35px; left: 50%; margin-left: 175px;}
#staffArea .dec06 { width: 160px; height: 115px; top:80px; left: 50%; margin-left: 360px;}
#staffArea .dec07 { width: 265px; height: 190px; bottom:-50px; left: 50%; margin-left: -470px;}
#staffArea .dec08 { width: 160px; height: 115px; bottom:80px; left: 50%; margin-left: -575px;}
}
@media all and (max-width: 767px) {
#castArea .dec01 { width: 112px; height: 80px; top:-30px; right: 20px;}
#castArea .dec02 { width: 74px; height: 53px; top:15px; right: -10px;}
#castArea .dec03 { width: 74px; height: 53px; bottom:30px; left:40px;}
#castArea .dec04 { width: 112px; height: 80px; bottom:-20px; left:-10px;}
#staffArea .dec05 { width: 112px; height: 80px; top:-20px; right: 15px;}
#staffArea .dec06 { width: 66px; height: 48px; top:40px; right: -5px;}
#staffArea .dec07 { width: 112px; height: 80px; bottom:-20px; left:20px;}
#staffArea .dec08 { width: 74px; height: 53px; bottom:30px; left:-10px;}
}