#chart .diagram {
  position: relative;
  margin: 0 auto;
  background-size: 100%;
}

#chart .diagram ul, #chart .diagram ul li {
  position: absolute;
  width: max-content;
  height: max-content;
}

#chart .diagram ul li a {
  display: block;
  text-decoration: none;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: linear-gradient(to top, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
}

#chart .diagram ul li a img {
  display: block;
}
#chart .diagram ul li.sz-l a img {
  width: 204px;
  height: 261px;
}

#chart .diagram ul li.sz-m a img {
  width: 182px;
  height: 233px;
}

#chart .diagram ul li.sz-s a img {
  width: 155px;
  height: 198px;
}

#chart .diagram ul li.sz-ss a img {
  width: 110px;
  height: 150px;
}

#chart ul li.chara_a {
  left:238px;
  top: 353px;
}

#chart ul li.chara_b {
  left: 498px;
  top: 353px;
}

#chart ul li.chara_c {
  left: 15px;
  top: 381px;
}

#chart ul li.chara_d {
  left:743px;
  top: 381px;
}

#chart ul li.chara_e {
  left: 415px;
  top: 1129px;
}

#chart ul li.chara_f {
  left: 590px;
  top: 1129px;
}

#chart ul li.chara_g {
  left: 29px;
  top: 911px;
}

#chart ul li.chara_h {
  left: 29px;
  top: 664px;
}

#chart ul li.chara_i {
  left: 307px;
  top: 867px;
}

#chart ul li.chara_j {
  left: 815px;
  top: 867px;
}

#chart ul li.chara_k {
  left: 427px;
  top: 867px;
}

#chart ul li.chara_l {
  left: 547px;
  top: 867px;
}

#chart ul li.chara_m {
  left: 667px;
  top: 867px;
}

#chart ul li.chara_n {
  left: 29px;
  top: 1129px;
}

#chart ul li.chara_o {
  left: 15px;
  top: 105px;
}

#chart ul li.chara_p {
  left: 417px;
  top: 105px;
}

#chart ul li.chara_q {
  left: 525px;
  top: 644px;
}

#chart ul li.chara_r {
  left: 617px;
  top: 105px;
}

#chart ul li.chara_s {
  left: 190px;
  top: 70px;
}

#chart ul li.chara_t {
  left: 815px;
  top: 206px;
}

#chart ul li.chara_u {
  left: 815px;
  top: 644px;
}

#chart ul li.chara_v {
  left: 309px;
  top: 634px;
}

#chart ul li.chara_w {
  left: 204px;
  top: 1129px;
}


@media all and (min-width: 768px) {
	.chart.low div.wrap .contentsBlock .contents { padding: 15px 15px 45px;}
	.chart.low div.wrap .contentsBlock { padding: 10px;}
	#chart .diagram { width:940px; height:1345px; margin: 0 auto; border-radius: 35px;}
	
}
@media all and (max-width: 767px) {
	.chart.low div.wrap .contentsBlock .contents { padding: 0.3em;}
	
  /*chart*/
  #chart .diagram {
    margin: 0px auto;
    overflow: hidden;
    height: 0;
    padding:143.085% 0 0;
    background-size: cover;
	   border-radius: 20px;
  }

  #chart .diagram ul {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}



#cast_dt {
    position: absolute;
    left: 50%;
    top: 0;
    z-index: 10000 !important;
    bottom: 0;
    /* left: 0; */
    right: 0;
    margin: auto;
}

#cast_dt .btn-w-close a {
  display: block;
  width: 103px;
  height: 33px;
  background-image: url(../img/chart/close.png);
  background-repeat: no-repeat; background-position: 0 0; background-size: contain;
  margin: 0 auto;
}

#cast_dt .btn-w-close a {
  cursor: pointer;
}

@media all and (min-width: 768px) {
  #cast_dt {
    width: 730px;
    height: 420px;
    margin-left: -365px;
  }
  #cast_dt.chara_n {
    width: 730px;
    height: 350px;
    margin-left: -365px;
  }
  

  #cast_dt .btn-w-close {
    position: absolute;
    right: 0px;
    top: 25px;
  }
}

@media all and (max-width: 767px) {
  #cast_dt {
    width: 100%;
    margin: 0px -50% 0px!important;
  }
	div.character { position: relative;}
	#cast_dt .btn-w-close {width: 100%; margin: 0 auto 0; padding:0; display: block; position: absolute; bottom:10px; left:0;}
  #cast_dt .btn-w-close a {
     width: 100%; height: 33px; background-image: url(../img/chart/close_sp.png); background-size: 103px 33px; background-position: center center;
  }

}
