.section_ttl h1{padding:0 50px; max-width:1340px;}
.section_in{padding:30px 50px;}
h2.sub_ttl{font-size:36px; font-weight:700; padding:20px 0 30px; color:#e3007e; text-align:center;}

.cast_list{
  width:100%;
  padding:15px 0;
  text-align:center;
  letter-spacing:-0.4em;
}
.cast_column{padding:0 0 30px;}
.staff_column{padding:30px 0 0 ;}
.cast_list .item{display:inline-block; vertical-align:top; letter-spacing:0; width:23.5%; margin:0 2% 2% 0;}
.cast_list .item:last-child{margin:0 0 2%;}
.cast_list .item a{display:block;}
.cast_list .item a img{border-radius:12px;}
.cast_list .item p{font-size:24px; color:#fff; font-weight:700; line-height:1.5; letter-spacing:0; text-align:left; padding:10px 0;}
.cast_list .item p span{display:block; font-size:18px; color:#e3007e;}

.cast_list_txt{padding:20px 0; text-align:center;}
.cast_list_txt p{font-size:18px; line-height:1.8; color:#fff; font-weight:600;}
.cast_list_txt p strong{display:block; color:#e3007e; font-size:21px;}
.cast_list_txt p span.caption{font-size:14px; display:block; text-align:center; padding:7px 0;}
.cast_list_txt p span.cast_ib{display:inline-block; padding:0 12px;}
.cast_list_txt p b.pink{color:#e3007e; padding-right:0.5em;}

.staff_list{padding:20px 0; text-align:center;}
.staff_list .item{display:inline-block; padding:0 6px 20px; box-sizing:border-box; width:10em;}
.staff_list .item.single{display:block; text-align:center; width:100%;}
.staff_list .item p{font-size:16px; font-weight:600;}
.staff_list .item p strong{color:#e3007e; font-size:21px;}

.staff_list2 {text-align:center; width:85%; margin:0 auto; padding:20px 0;}
.staff_list2 .item{display:inline-block; padding:0 15px 15px;}
.staff_list2 .item p{font-size:16px; font-weight:500;}
.staff_list2 .item p span{color:#e3007e; font-weight:700;}

@media print, screen and (max-width: 960px) {
  .section_ttl h1{padding:0 40px; max-width:1340px;}
  .section_in{padding:30px 40px;}
  h2.sub_ttl{font-size:32px; font-weight:700; padding:20px 0 30px; color:#e3007e; text-align:center;}

  .cast_list .item{display:inline-block; vertical-align:top; letter-spacing:0; width:23.5%; margin:0 2% 2% 0;}
  .cast_list .item:last-child{margin:0 0 2%;}
  .cast_list .item p{font-size:21px; color:#fff; font-weight:700; line-height:1.5; letter-spacing:0; text-align:left; padding:10px 0;}
  .cast_list .item p span{display:block; font-size:14px; color:#e3007e;}

  .cast_list_txt{padding:20px 0;}
  .cast_list_txt p{font-size:18px; line-height:1.8; color:#fff;}
  .cast_list_txt p strong{display:block; color:#e3007e;}
  .cast_list_txt p span.caption{font-size:13px;}
  .cast_list_txt p span.cast_ib{padding:0 10px;}


  .staff_list{padding:20px 0;}
  .staff_list .item{display:inline-block; padding:0 6px 15px;}
  .staff_list .item p{font-size:15px;}
  .staff_list .item p strong{color:#e3007e; font-size:18px;}

  .staff_list2 {text-align:center; width:90%; margin:0 auto; padding:20px 0;}
  .staff_list2 .item{display:inline-block; padding:0 15px 15px;}
  .staff_list2 .item p{font-size:15px; font-weight:500;}
}

@media print, screen and (max-width: 768px) {
  .section_ttl h1{padding:0 30px; max-width:1340px;}
  .section_in{padding:20px 30px;}
  h2.sub_ttl{font-size:27px; font-weight:700; padding:20px 0 30px; color:#e3007e; text-align:center;}
  .cast_list .item{display:inline-block; vertical-align:top; letter-spacing:0; width:44%; margin:0 2% 2% 0;}
  .cast_list .item:last-child{margin:0 0 2%;}
  .cast_list .item:nth-child(2n){margin:0 0 2%;}
  .cast_list .item p{font-size:21px; color:#fff; font-weight:700; line-height:1.5; letter-spacing:0; text-align:left; padding:10px 0;}
  .cast_list .item p span{display:block; font-size:14px; color:#e3007e;}
}

@media print, screen and (max-width: 576px) {
  .section_ttl h1{padding:0 20px; max-width:1340px;}
  .section_in{padding:20px 20px;}
  h2.sub_ttl{font-size:24px; font-weight:700; padding:20px 0 30px; color:#e3007e; text-align:center;}
  .cast_list .item{display:inline-block; vertical-align:top; letter-spacing:0; width:46%; margin:0 2% 2% 0;}
  .cast_list .item:last-child{margin:0 0 2%;}
  .cast_list .item:nth-child(2n){margin:0 0 2%;}
  .cast_list .item p{font-size:18px; color:#fff; font-weight:700; line-height:1.5; letter-spacing:0; text-align:left; padding:10px 0;}
  .cast_list .item p span{display:block; font-size:12px; color:#e3007e;}

  .cast_list_txt{padding:20px 0;}
  .cast_list_txt p{font-size:14px; line-height:1.8; color:#fff;}
  .cast_list_txt p strong{display:block; color:#e3007e;}
  .cast_list_txt p span.caption{font-size:12px;}
  .cast_list_txt p br{display:none;}


  .staff_list{padding:20px 0;}
  .staff_list .item.single{display:block; text-align:center; width:100%;}
  .staff_list .item{display:inline-block; padding:0 0 10px; width:7em;}
  .staff_list .item p{font-size:13px;}
  .staff_list .item p strong{color:#e3007e; font-size:15px;}

  .staff_list2 {text-align:center; width:100%; margin:0 auto; padding:20px 0;}
  .staff_list2 .item{display:inline-block; padding:0 10px 10px;}
  .staff_list2 .item p{font-size:13px; font-weight:500;}
}
