
#cast_dt {
    font-family: "zen-maru-gothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #000;	
}

div.character.charaBg01 {background-color: #dcd7f5;}
div.character.charaBg02 {background-color: #c0e4f6;}
div.character.charaBg03 {background-color: #c4eedf;}
div.character.charaBg04 {background-color: #f6d2d1;}
div.character.charaBg05 {background-color: #fde0ae;}
div.charaBox {position: relative;}

.phArea{ position: relative;}

div.character .ph_cut span img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.data {background-position: top left; background-repeat: no-repeat;}
.chara_01 .data {background-image: url("../img/chart/name_01.png");}
.chara_02 .data {background-image: url("../img/chart/name_02.png");}
.chara_03 .data {background-image: url("../img/chart/name_03.png");}
.chara_04 .data {background-image: url("../img/chart/name_04.png");}
.chara_05 .data {background-image: url("../img/chart/name_05.png");}
.chara_06 .data {background-image: url("../img/chart/name_06.png");}
.chara_07 .data {background-image: url("../img/chart/name_07.png");}
.chara_08 .data {background-image: url("../img/chart/name_08.png");}
.chara_09 .data {background-image: url("../img/chart/name_09.png");}
.chara_10 .data {background-image: url("../img/chart/name_10.png");}
.chara_11 .data {background-image: url("../img/chart/name_11.png");}
.chara_12 .data {background-image: url("../img/chart/name_12.png");}
.chara_13 .data {background-image: url("../img/chart/name_13.png");}
.chara_14 .data {background-image: url("../img/chart/name_14.png");}
.chara_15 .data {background-image: url("../img/chart/name_15.png");}
.chara_16 .data {background-image: url("../img/chart/name_16.png");}
.chara_17 .data {background-image: url("../img/chart/name_17.png");}
.chara_18 .data {background-image: url("../img/chart/name_18.png");}
.chara_19 .data {background-image: url("../img/chart/name_19.png");}
.chara_20 .data {background-image: url("../img/chart/name_20.png");}

p.name, p.actor, p.degree {
	height: 0; width: 0; text-indent: -9999px;
}

#cast_dt .txtArea .txt { text-align: left;}
.profArea{ position:relative;} 

@media all and (min-width: 768px) {
	div.character {width: 720px; height: 460px; padding: 6px;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;}
	.sizeM div.character {height: 430px;}
	.sizeS div.character {height: 380px;}
	div.character .charaBox { height: 450px; display: flex; flex-wrap: wrap;
	border-radius: 25px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
	border: solid 4px #fff;}

	.phArea{ width: 355px; height: 450px;}
	#cast_dt .ph_cut, #cast_dt .ph_cut span, #cast_dt .ph_cut span img {
		width: 355px; height: 450px; padding-top:0;
		background-position: center top;
		border-top-left-radius: 25px;
        border-bottom-left-radius: 25px;
	}
	#cast_dt.sizeM div.character .charaBox, #cast_dt.sizeM .phArea, #cast_dt.sizeM .ph_cut, #cast_dt.sizeM .ph_cut span, #cast_dt.sizeS .ph_cut span img {height: 420px;}
	#cast_dt.sizeS div.character .charaBox, #cast_dt.sizeS .phArea, #cast_dt.sizeS .ph_cut, #cast_dt.sizeS .ph_cut span, #cast_dt.sizeS .ph_cut span img {height: 370px;}
	
	.profArea{ position: relative; width:340px; padding-top: 20px;}
	.data { width:320px; height: 127px; background-size: cover;}
	#cast_dt .txtArea { width: 320px; padding: 20px 10px 0; font-size: 1.0em;}
	#cast_dt .txtArea .txt {padding:0 0 0.5em; line-height: 1.6em; width: 100%;}
	#cast_dt.chara_04 .txtArea .txt, #cast_dt.chara_17 .txtArea .txt { line-height: 1.5em;}
	

}
@media all and (max-width: 767px) {
	div.character {
		margin: 8px; padding: 6px;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
		position: relative;
	}
	div.character .charaBox {
	border-radius: 25px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
	border: solid 4px #fff;}
	#cast_dt .ph_cut {
		width: 100%; max-width: 380px;
		margin: 0 auto 0em;
		border: none; padding: 0;
	}
	#cast_dt .ph_cut span {
		padding-top: 130.985%;
	}
	#cast_dt.sizeM .ph_cut span {
		padding-top: 122.535%;
	}
	#cast_dt.sizeS .ph_cut span {
		padding-top: 108.45%;
	}
	#cast_dt .ph_cut, #cast_dt .ph_cut span, #cast_dt .ph_cut span img {
		border-top-left-radius: 25px;
        border-top-right-radius: 25px;
	}
	
	div.character .profArea { width:95%; margin: -26% auto 0;}
	.data { width:100%; height: 0; padding-top: 39.687%; background-position: top center; background-size: contain; margin: 0 auto;}
	#cast_dt .txtArea { padding:0.5em 0 1.5em;}
	#cast_dt .txtArea .txt { line-height: 1.8em; padding:0em 0em 2.5em; }
	.profArea .txtArea a{right:10px;} 

}
