.cs_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.cs_list .solo_item {
  width: 100%;
}

.cs_list .post {
  color: #82d2db;
  display: block;
  margin-bottom: 10px;
  position: relative;
}

.cs_list .post span {
  display: block;
}

.cs_list .post span:before {
  background: #82d2db;
  content: '';
  left: 0;
  position: absolute;
  top: .8em;
}

.cs_list .name .btn_wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
  -webkit-justify-content: left;
      -ms-flex-pack: left;
          justify-content: left;
  margin-top: 5px;
}

.cs_list .name .btn_wrap .twi_btn {
  margin-left: 10px;
}

.cs_list .cs_btn {
  background: #fff;
  border-radius: 20px;
  color: #82d2db;
  display: inline-block;
  font-family: sofia-pro-soft, sans-serif;
  letter-spacing: .25rem;
  text-align: center;
  vertical-align: middle;
}

.cs_list .cs_btn:hover {
  color: #ffb3a4;
  -webkit-transition: .3s;
  transition: .3s;
}

.cast_wrap .narration {
  /*@include media("lg") {
            margin-top: 50px;
        }
        @include media("md") {
            margin-top: 30px;
        }*/
}

.cast_wrap .narration .name_txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cast_wrap .narration .name_txt .na_wrap .epi {
  color: #82d2db;
  margin-right: 10px;
}

.staff_cont, .cast_cont {
  background: rgba(255, 255, 255, 0.8);
}

/* --- modal --- */
.modal_box {
  text-align: left;
}

.modal_box .modal_ttl {
  color: #fff;
  font-family: vag-rundschrift-d, sans-serif;
  font-weight: normal;
  margin-bottom: 5px;
}

.modal_box .modal_comment {
  background: #fff;
  border-radius: 20px;
}

.modal_box .modal_comment .name_wrap .posi {
  color: #82d2db;
  position: relative;
}

.modal_box .modal_comment .name_wrap .posi span:before {
  background: #82d2db;
  content: '';
  left: 0;
  position: absolute;
  top: .8em;
}

.modal_box .modal_comment .name_wrap .comme_name {
  line-height: 1;
  margin-top: 10px;
}

@media only screen and (min-width: 769px) {
  .content_ttl {
    margin-bottom: 30px;
  }
  .cs_list .list_item {
    width: calc(100%/3);
  }
  .cs_list .post span {
    padding-left: 30px;
  }
  .cs_list .post span:before {
    height: 2px;
    width: 20px;
  }
  .cs_list .name .name_txt {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .cs_list .name .name_txt .s_txt {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .cs_list .cs_btn {
    border: 2px solid #82d2db;
    font-size: 12px;
    font-size: 1.2rem;
    width: 120px;
  }
  .cs_list .cs_btn:hover {
    border: 2px solid #ffb3a4;
  }
  .cs_list li:not(:last-child) {
    margin-bottom: 50px;
  }
  .cast_wrap {
    margin-top: 80px;
  }
  .cast_wrap .narration .name_txt .na_wrap {
    width: calc( 100%/3);
  }
  .cast_wrap .narration .name_txt .na_wrap:not(:nth-last-child(-n+3)) {
    margin-bottom: 5px;
  }
  .cast_wrap .narration .name_txt .na_wrap .epi {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .staff_cont, .cast_cont {
    padding: 20px 20px;
  }
  .modal_box .modal_ttl {
    font-size: 35px;
    font-size: 3.5rem;
  }
  .modal_box .modal_comment {
    padding: 30px 20px;
  }
  .modal_box .modal_comment .name_wrap {
    padding-left: 20px;
  }
  .modal_box .modal_comment .name_wrap .posi {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .modal_box .modal_comment .name_wrap .posi span {
    padding-left: 30px;
  }
  .modal_box .modal_comment .name_wrap .posi span:before {
    height: 2px;
    width: 20px;
  }
  .modal_box .modal_comment .name_wrap .comme_name {
    font-size: 36px;
    font-size: 3.6rem;
    margin-bottom: 30px;
  }
  .modal_box .modal_comment .comme_txt {
    border-top: dotted 5px #82d2db;
    padding: 30px 20px 0;
  }
}

@media only screen and (max-width: 768px) {
  .content_ttl {
    margin-bottom: 20px;
  }
  .cs_list {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .cs_list .list_item {
    width: 48%;
  }
  .cs_list .post span {
    padding-left: 20px;
  }
  .cs_list .post span:before {
    height: 1px;
    width: 12px;
  }
  .cs_list .name .name_txt {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.25;
  }
  .cs_list .name .name_txt .s_txt {
    font-size: 10px;
    font-size: 1.0rem;
    letter-spacing: 0.13rem;
  }
  .cs_list .cs_btn {
    border: 1px solid #82d2db;
    font-size: 10px;
    font-size: 1.0rem;
    width: 100px;
  }
  .cs_list .cs_btn:hover {
    border: 1px solid #ffb3a4;
  }
  .cs_list li:not(:last-child) {
    margin-bottom: 30px;
  }
  .cast_wrap {
    margin-top: 40px;
  }
  .cast_wrap .narration .name_txt .na_wrap {
    width: 47%;
  }
  .cast_wrap .narration .name_txt .na_wrap:not(:nth-last-child(-n+2)) {
    margin-bottom: 15px;
  }
  .cast_wrap .narration .name_txt .na_wrap .epi {
    display: block;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .staff_cont, .cast_cont {
    padding: 3%;
  }
  .modal_box .modal_ttl {
    font-size: 30px;
    font-size: 3.0rem;
    line-height: 1;
  }
  .modal_box .modal_comment {
    padding: 5vw;
  }
  .modal_box .modal_comment .name_wrap {
    padding-left: 3vw;
  }
  .modal_box .modal_comment .name_wrap .posi {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .modal_box .modal_comment .name_wrap .posi span {
    padding-left: 20px;
  }
  .modal_box .modal_comment .name_wrap .posi span:before {
    height: 1px;
    width: 12px;
  }
  .modal_box .modal_comment .name_wrap .comme_name {
    font-size: 30px;
    font-size: 3.0rem;
    margin-bottom: 5vw;
  }
  .modal_box .modal_comment .comme_txt {
    border-top: dotted 3px #82d2db;
    padding: 5vw 3vw 0;
  }
}
