@charset "UTF-8";
#programs #kv {
 position: relative;
 width: 100%;
 background-color: #333;
 padding: 5rem 3%;
 overflow: visible;
}
#programs #kv .programTitle {
 position: relative;
 width: 100%;
 font-size: 3.4rem;
 line-height: 1.6;
 padding: 0 0 3rem;
 z-index: 5;
 font-weight: 400;
}
#programs #kv .kvCont {
 display: flex;
 flex-flow: row-reverse;
 align-items: flex-end;
 margin-bottom: -15rem;
 position: relative;
 z-index: 5;
}
#programs #kv .programDescription {
 flex: 1 0 55%;
 padding: 0 4rem 14rem 0;
 font-size: 1.4rem;
}
#programs #kv .programImage {
 flex: 1 0 45%;
 border-radius: 2px;
 overflow: hidden;
 box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}
#programs #kv .bg {
 background-size: cover;
 background-position: center center;
 overflow: hidden;
 position: absolute;
 width: 100%;
 height: 100%;
 top: 0;
 left: 0;
}
#programs #kv .bg:after {
 content: "";
 display: block;
 background: rgba(0, 0, 0, 0.6);
 position: absolute;
 width: 100%;
 height: 100%;
 left: 0;
 top: 0;
 z-index: 2;
}
#programs #kv .bg:before {
 content: "";
 background: inherit;
 -webkit-filter: blur(15px);
 -moz-filter: blur(15px);
 -o-filter: blur(15px);
 -ms-filter: blur(15px);
 filter: blur(15px);
 position: absolute;
 top: -25px;
 left: -25px;
 right: -25px;
 bottom: -25px;
 z-index: 1;
}
/* ▼▼▼ 番組固有 ▼▼▼ */
#programs.cheekys_a_gogo #kv .bg {
 background-image: url("../images/program/cheekys_a_gogo/program_image_cheekys_a_gogo.jpg");
}
#programs.cheekys_a_gogo_east #kv .bg {
 background-image: url("../images/program/cheekys_a_gogo_east/program_image_cheekys_a_gogo_east.jpg");
}
#programs.cheekys_a_gogo_west #kv .bg {
 background-image: url("../images/program/cheekys_a_gogo_west/program_image_cheekys_a_gogo_west.jpg");
}
#programs.cheekys_cast1 #kv .bg {
 background-image: url("../images/program/cheekys_cast1/program_image_cheekys_cast1.jpg");
}
#programs.cheekys_cast2 #kv .bg {
 background-image: url("../images/program/cheekys_cast2/program_image_cheekys_cast2.jpg");
}
#programs.cheekys_cast3 #kv .bg {
 background-image: url("../images/program/cheekys_cast3/program_image_cheekys_cast3.jpg");
}
#programs.cheekys_jockey #kv .bg {
 background-image: url("../images/program/cheekys_jockey/program_image_cheekys_jockey.jpg");
}
#programs.washintoko_post #kv .bg {
 background-image: url("../images/program/washintoko_post/program_image_washintoko_post.jpg");
}
#programs.cheekys_store #kv .bg {
 background-image: url("../images/program/cheekys_store/program_image_cheekys_store.jpg");
}
#programs.cheekys_ch_award #kv .bg {
 background-image: url("../images/program/cheekys_ch_award/program_image_cheekys_ch_award.jpg");
}
#programs.chariloto #kv .bg {
 background-image: url("../images/program/chariloto/program_image_chariloto.jpg");
}
#programs.firststep #kv .bg {
 background-image: url("../images/program/special/firststep/program_image_firststep.jpg");
}
#programs.byebyeikujigap #kv .bg {
 background-image: url("../images/program/special/byebyeikujigap/program_image_byebyeikujigap.jpg");
}
#programs.cheekys_a_gogo_sp220321 #kv .bg {
 background-image: url("../images/program/special/cheekys_a_gogo_sp220321/program_image_cheekys_a_gogo.jpg");
}
#programs.yamagurumeguri #kv .bg {
 background-image: url("../images/program/special/yamagurumeguri/program_image_yamagurumeguri.jpg");
}
#programs.koyamachoaruarutambo #kv .bg {
 background-image: url("../images/program/special/koyamachoaruarutambo/program_image_koyamachoaruarutambo.jpg");
}
#programs.yoshimoto_baseball_sp #kv .bg {
 background-image: url("../images/program/special/yoshimoto_baseball_sp/opening_special.jpg");
}
#programs.yoshimoto_baseball0325 #kv .bg {
 background-image: url("../images/program/special/yoshimoto_baseball0325/ybb_220325.jpg");
}
#programs.densetsunoichinichi #kv .bg {
 background-image: url("../images/program/special/densetsunoichinichi/program_image_densetsunoichinichi.jpg");
}
#programs.battle_smoke #kv .bg {
 background-image: url("../images/program/battle_smoke/program_image_battle_smoke.jpg");
}
#programs.gatsu100tv #kv .bg {
 background-image: url("../images/program/gatsu100tv/program_image_gatsu100tv.jpg");
}
#programs.chef1gp #kv .bg {
 background-image: url("../images/program/chef1gp/program_image_chef1gp.jpg");
}
#programs.rankinlive #kv .bg {
 background-image: url("../images/program/rankinlive/program_image_rankinlive.jpg");
}
#programs.oimf #kv .bg {
 background-image: url("../images/program/special/oimf/program_image_oimf.jpg");
}
#programs.premiumhour #kv .bg {
 background-image: url("../images/program/premiumhour/program_image_premiumhour.jpg");
}
#programs.asei_to_nadaru #kv .bg {
 background-image: url("../images/program/asei_to_nadaru/program_image_asei_to_nadaru.jpg");
}
#programs.daian_gomenyasu #kv .bg {
 background-image: url("../images/program/daian_gomenyasu/program_image_daian_gomenyasu.jpg");
}
#programs.kosuccho #kv .bg {
 background-image: url("../images/program/kosuccho/program_image_kosuccho.jpg");
}
#programs.waraimeshi_shajimeguri #kv .bg {
 background-image: url("../images/program/waraimeshi_shajimeguri/program_image_waraimeshi_shajimeguri.jpg");
}
#programs.jr_ukagau #kv .bg {
 background-image: url("../images/program/jr_ukagau/program_image_jr_ukagau.jpg");
}
#programs.nanimoshinai_sanpo #kv .bg {
 background-image: url("../images/program/nanimoshinai_sanpo/program_image_nanimoshinai_sanpo.jpg");
}
#programs.zenkoku_aruarutankentai #kv .bg {
 background-image: url("../images/program/zenkoku_aruarutankentai/program_image_zenkoku_aruarutankentai.jpg");
}
#programs.nippon_nihon_shacho #kv .bg {
 background-image: url("../images/program/nippon_nihon_shacho/program_image_nippon_nihon_shacho.jpg");
}
#programs.kukikaidan_okayama #kv .bg {
 background-image: url("../images/program/kukikaidan_okayama/program_image_kukikaidan_okayama.jpg");
}
#programs.nandemokoshien #kv .bg {
 background-image: url("../images/program/nandemokoshien/program_image_nandemokoshien.jpg");
}
#programs.jitencha_de_iitoko #kv .bg {
 background-image: url("../images/program/jitencha_de_iitoko/program_image_jitencha_de_iitoko.jpg");
}
#programs.three_x_three_soul #kv .bg {
 background-image: url("../images/program/three_x_three_soul/program_image_three_x_three_soul.jpg");
}
#programs.warai_mirai_fes2022 #kv .bg {
 background-image: url("../images/program/special/warai_mirai_fes2022/program_image_warai_mirai_fes2022.jpg");
}
/* ▲▲▲ 番組固有 ▲▲▲ */
#programs .utility {
 border-top: solid 1px #333;
 border-bottom: solid 1px #333;
 background: #0c0c0c;
 color: #f9f9f9;
 padding: 2.5rem calc(45% + 1rem) 2.5rem 3%;
}
#programs .utility .archives {
 font-size: 0;
 letter-spacing: -0.4em;
 position: relative;
 z-index: 10;
}
#programs .utility .archives li {
 display: inline-block;
 margin: 0 1.8rem 1.5rem 0;
 font-size: 1.3rem;
 font-weight: 400;
}
#programs .utility .archives li:last-child {
 margin: 0 0 1.5rem 0;
}
#programs .utility .sns {
 display: flex;
 position: relative;
 z-index: 10;
}
#programs .utility .sns li {
 width: 3rem;
 margin-right: 1.8rem;
}
#programs .utility .sns li a {
 opacity: 0.8;
}
#programs .utility .sns li a:hover {
 opacity: 1;
}
#programs #nextProgram {
 background: #404040;
 background: #232526; /* fallback for old browsers */
 background: -webkit-linear-gradient(to right, #414345, #232526); /* Chrome 10-25, Safari 5.1-6 */
 background: linear-gradient(to right, #414345, #232526); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
#programs #nextProgram .flex {
 display: flex;
 justify-content: space-between;
 align-items: flex-start;
}
#programs #nextProgram .flex .programImage {
 flex: 1 0 25rem;
 max-width: 25rem;
}
#programs #nextProgram .flex .programDescription {
 flex: 1 0 calc(100% - 30rem);
 padding-left: 3rem;
}
#programs #nextProgram .flex .programDescription .ttl {
 line-height: 1.6;
 font-size: 120%;
}
#programs #nextProgram .flex .programDescription .ttl .time {
 color: orange;
 font-size: 1.6rem;
 font-weight: 400;
}
#programs #nextProgram .flex .programDescription .ttl h3 {
 font-size: 125%;
 margin: 0.75rem 0 1.5rem;
 color: #f25e23;
 font-weight: 400;
}
#programs #freeSpace_upper, #programs #freeSpace_lower {
 border-top: solid 1px #333;
 border-bottom: solid 1px #333;
 background: url("../images/common/dots.svg") repeat #1c1c1c;
 background-size: 10px;
 padding: 4rem 3%;
}
#programs #freeSpace_upper .flex, #programs #freeSpace_lower .flex {
 display: flex;
 justify-content: flex-start;
}
#programs #freeSpace_upper h1, #programs #freeSpace_lower h1 {
 margin: 0 0 2.5rem;
 padding-bottom: 1rem;
 font-size: 180%;
 line-height: 1.4;
 position: relative;
}
#programs #freeSpace_upper h1:after, #programs #freeSpace_lower h1:after {
 content: "";
 display: block;
 height: 3px;
 width: 100%;
 background: linear-gradient(to right, #E95009, orange, #171717);
 position: absolute;
 bottom: 0;
 left: 0;
}
#programs #freeSpace_upper h2, #programs #freeSpace_lower h2 {
 margin: 0 0 2.5rem;
 padding-bottom: 1rem;
 font-size: 150%;
 line-height: 1.4;
 position: relative;
}
#programs #freeSpace_upper h2:before, #programs #freeSpace_lower h2:before {
 content: "";
 display: block;
 height: 2px;
 width: 20rem;
 background: orange;
 position: absolute;
 bottom: 0;
 left: 0;
 z-index: 2;
}
#programs #freeSpace_upper h2:after, #programs #freeSpace_lower h2:after {
 content: "";
 display: block;
 height: 2px;
 width: 100%;
 background: rgba(255, 255, 255, 0.5);
 position: absolute;
 bottom: 0;
 left: 0;
}
#programs #freeSpace_upper h3, #programs #freeSpace_lower h3 {
 margin: 0 0 1.5rem;
 padding-bottom: 0.5rem;
 border-bottom: solid 1px rgba(255, 255, 255, 0.5);
 font-size: 130%;
 line-height: 1.4;
}
#programs #freeSpace_upper h4, #programs #freeSpace_lower h4 {
 margin: 0 0 1rem;
 padding-left: 1.5rem;
 border-left: solid 5px orange;
 font-size: 120%;
}
#programs #freeSpace_upper h5, #programs #freeSpace_lower h5 {
 margin: 0 0 1.5rem;
 font-size: 110%;
 color: orange;
 display: inline-block;
 position: relative;
 padding-bottom: 0.25rem;
}
#programs #freeSpace_upper h5:after, #programs #freeSpace_lower h5:after {
 content: "";
 display: block;
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 height: 5px;
 background-image: -webkit-repeating-linear-gradient(135deg, #aaa, #aaa 1px, transparent 2px, transparent 5px);
 background-image: repeating-linear-gradient(-45deg, #aaa, #aaa 1px, transparent 2px, transparent 5px);
 background-size: 7px 7px;
 -webkit-backface-visibility: hidden;
 backface-visibility: hidden;
}
#programs #freeSpace_upper h6, #programs #freeSpace_lower h6 {
 margin: 0 0 1.5rem;
 font-size: 100%;
 color: orange;
 display: inline-block;
 border: solid 1px orange;
 padding: 0.25em 0.75em;
}
#programs #freeSpace_upper p, #programs #freeSpace_lower p {
 margin-bottom: 1.5em;
}
#programs #freeSpace_upper strong, #programs #freeSpace_lower strong {
 font-weight: bold;
 font-size: 110%;
 display: inline-block;
 padding: 0 0.25em;
}
#programs #freeSpace_upper a, #programs #freeSpace_lower a {
 color: #FF416C;
 display: inline;
}
#programs #freeSpace_upper a:hover, #programs #freeSpace_lower a:hover {
 text-decoration: underline;
}
#programs #freeSpace_upper p:last-of-type, #programs #freeSpace_lower p:last-of-type {
 margin-bottom: 0;
}
#programs #movies {
 border-top: solid 1px #333;
 border-bottom: solid 1px #333;
}
#programs #movies .slider.slider {
 margin: 0;
 max-width: 100%;
}
#programs #movies .ttl {
 text-align: center;
 font-size: 1.6rem;
 margin: 0.75rem 0 0;
}
#programs #movies .ttl em {
 display: block;
}
#programs #about {
 background: #0c0c0c;
}
#programs #about h3 {
 color: orange;
 padding: 2rem 0 1rem;
 font-size: 120%;
}
#programs #about h4 {
 color: orange;
 padding: 2rem 0 1rem;
 font-size: 120%;
}
#programs #about p {
 margin-bottom: 1.5em;
}
#programs #about a {
 color: #FF416C;
 display: inline;
}
#programs #about a:hover {
 text-decoration: underline;
}
#programs #about p:last-of-type {
 margin-bottom: 0;
}
#programs .comment {
 display: flex;
 margin-bottom: 1.5rem;
}
#programs .comment:last-of-type {
 margin-bottom: 0;
}
#programs .comment .ph {
 flex: 1 0 25rem;
 max-width: 25rem;
}
#programs .comment dl {
 flex: 1 0 calc(100% - 25rem);
 padding-left: 2rem;
}
#programs .comment dl dt {
 border-left: solid 4px #f25e23;
 margin-bottom: 0.75rem;
 padding-left: 0.85rem;
 line-height: 1.6;
 font-size: 1.7rem;
}
#programs .comment dl dt:nth-of-type(2) {
 margin-top: 1rem;
}
#programs .comment dl dd {
 font-size: 1.4rem;
 color: #ccc;
}
#programs #cast {
 border-top: solid 1px #333;
 border-bottom: solid 1px #333;
}
#programs #cast .castList {
 display: flex;
 justify-content: flex-start;
 flex-wrap: wrap;
}
#programs #cast .castList > li {
 flex: 1 0 20rem;
 max-width: 20rem;
 margin: 0 2rem 2rem 0;
}
#programs #cast .castList > li a img {
 transition: .3s;
}
#programs #cast .castList > li a:hover img {
 opacity: 0.8;
}
#programs #cast .castList li > .name {
 text-align: center;
 font-size: 1.4rem;
 line-height: 1.3;
 color: #ccc;
 display: block;
 padding-top: 1rem;
 letter-spacing: 0;
}
#programs #cast .castList li > .name em {
 display: block;
 opacity: 0.8;
 padding-bottom: 3px;
}
#programs #introduction .introList {
 display: flex;
 justify-content: flex-start;
}
#programs #introduction .introList > li {
 flex: 1 0 calc(20% - 2rem);
 max-width: calc(20% - 2rem);
 margin-right: 2rem;
}
#programs #introduction .introList > li h3 {
 color: #f25e23;
 line-height: 1.6;
 padding: 1.5rem 0 1rem;
 text-align: center;
 font-weight: 600;
 font-size: 1.5rem;
}
#programs #introduction .introList > li p {
 font-size: 1.3rem;
 color: #ccc;
 padding: 0 0 1rem;
 text-align: left;
}
#programs #introduction .introList > li h4 {
 color: orange;
 margin-bottom: 0.5rem;
}
#programs #introduction .introList > li .mcList {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
#programs #introduction .introList > li .mcList.text {
 display: block;
 flex-wrap: wrap;
}
#programs #introduction .introList > li .mcList li {
 margin-bottom: 1rem;
 flex: 1 0 calc(50% - 0.5rem);
 max-width: calc(50% - 0.5rem);
}
#programs #introduction .introList > li .mcList.text li {
 margin-bottom: 0;
 flex: none;
 max-width: 100%;
}
#programs #introduction .introList > li .mcList.text li:before {
 content: "●";
 display: inline-block;
 color: orange;
 opacity: 0.75;
 padding-right: 0.25rem;
}
#programs #relation {
 background: url("../images/common/dots.svg") repeat #252525;
 background-size: 18px auto;
}
#programs #relation ul {
 display: flex;
 justify-content: flex-start;
 flex-wrap: wrap;
}
#programs #relation ul li {
 flex: 1 0 calc(20% - 2rem);
 max-width: calc(20% - 2rem);
 margin-right: 2rem;
 text-align: center;
 line-height: 1.7;
}
#programs #relation ul li span {
 display: block;
 padding-top: 0.5rem;
}
#programs #relation ul li strong {
 display: block;
 color: orange;
 font-weight: 600;
 padding-top: 0.5rem;
}
#programs #relation ul li em {
 display: block;
}
#programs #episode {
 background: #2e2e2e;
}
#programs #episode > ul > li {
 padding: 2rem;
 background: #111;
 position: relative;
 margin-bottom: 1rem;
}
#programs #episode > ul > li:last-child {
 margin-bottom: 0;
}
#programs #episode > ul > li .number {
 position: absolute;
 top: 2rem;
 right: 2rem;
 font-size: 250%;
 line-height: 1.2;
 font-family: 'Antonio', sans-serif;
 letter-spacing: 0;
 color: #aaa;
 width: 11rem;
 white-space: nowrap;
 text-align: right;
}
#programs #episode > ul > li .number em {
 display: inline-block;
 font-size: 80%;
 padding-right: 0.15em;
}
#programs #episode > ul > li .flex {
 display: flex;
}
#programs #episode > ul > li .flex .programImage {
 flex: 1 0 35rem;
 max-width: 35rem;
}
#programs #episode > ul > li .flex .programDescription {
 flex: 1 0 calc(100% - 35rem);
 padding-left: 2rem;
}
#programs #episode > ul > li .flex .programDescription .ttl {
 line-height: 1.6;
 padding-right: 14rem;
}
#programs #episode > ul > li .flex .programDescription .ttl .time {
 color: orange;
 font-size: 1.5rem;
 font-weight: 400;
}
#programs #episode > ul > li .flex .programDescription .ttl h3 {
 font-size: 125%;
 margin: 0.75rem 0 1.0rem;
 color: #f25e23;
 font-weight: 400;
}
#programs #episode > ul > li .flex .programDescription p {
 font-size: 1.4rem;
 color: #ccc;
}
#programs #episode > ul > li .flex .programDescription .links ul {
 display: flex;
 justify-content: flex-end;
 flex-wrap: wrap;
}
#programs #episode > ul > li .flex .programDescription .links ul > li {
 margin: 1rem 0 0 1rem;
}
#programs #episode > ul > li .flex .programDescription .links ul > li.btn a {
 font-size: 1.4rem;
 padding: 0.15rem 1.35rem;
}
#programs #episode .pagination ul li a {
 border: solid 1px #aaa;
 color: #ccc;
}
#programs #episode .pagination ul li.active a, #programs #episode .pagination ul li a:hover {
 color: #111;
}
#programs #credit {
 font-size: 1.5rem;
 line-height: 1.7;
 padding: 3rem 3%;
 background: #0c0c0c;
}
#programs #credit ul {
 display: block;
}
#programs #credit ul li {
 margin: 0 0.5em;
 word-break: keep-all;
}
#programs #credit ul li.none {
 /*display: none;*/
}
#programs #credit ul li dl {
 display: table;
 color: #acacac;
}
#programs #credit ul li dl dt {
 display: table-cell;
 vertical-align: top;
 white-space: nowrap;
}
#programs #credit ul li dl dt:after {
 content: ":";
 opacity: 0.8;
 display: inline-block;
 padding: 0 0.25em;
}
#programs #credit ul li dl dd {
 display: table-cell;
 vertical-align: top;
 word-break: keep-all;
}
@media screen and (max-width: 750px) {
 #programs #kv {
  padding: 1.5rem 1rem;
 }
 #programs #kv .programTitle {
  font-size: 6.2vw;
  padding: 0 0 1.5rem;
 }
 #programs #kv .kvCont {
  display: block;
  margin-bottom: 0;
 }
 #programs #kv .programDescription {
  flex: none;
  padding: 1rem 0 0;
  text-align: justify;
  font-size: 1.3rem;
 }
 #programs #kv .programImage {
  flex: none;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
 }
 #programs .utility {
  padding: 2rem 1rem;
 }
 #programs .utility .archives {
  display: flex;
  justify-content: space-between;
 }
 #programs .utility .archives li {
  flex: 1 0 calc(33.333% - 0.5rem);
  max-width: calc(33.333% - 0.5rem);
  display: block;
  margin-right: 0;
 }
 #programs .utility .archives li a {
  font-size: 1.3rem;
  padding: 0.75rem 0.2rem;
  white-space: nowrap;
  font-weight: 400;
 }
 #programs .utility .sns {
  align-content: center;
  justify-content: center;
 }
 #programs .utility .sns li {
  width: 2.5rem;
 }
 #programs #nextProgram .flex {
  display: block;
 }
 #programs #nextProgram .flex .programImage {
  flex: none;
  max-width: 100%;
 }
 #programs #nextProgram .flex .programDescription {
  flex: none;
  padding: 1.5rem 0 0;
 }
 #programs #nextProgram .flex .programDescription .ttl h3 {
  font-size: 5.2vw;
  line-height: 1.7;
  margin: 0.75rem 0 1.5rem;
 }
 #programs #nextProgram .flex .programDescription p {
  font-size: 1.3rem;
  text-align: justify;
 }
 #programs #freeSpace_upper, #programs #freeSpace_lower {
  padding: 1.5rem 1rem;
 }
 #programs #freeSpace_upper .flex, #programs #freeSpace_lower .flex {
  display: block;
 }
 #programs #freeSpace_upper h1, #programs #freeSpace_lower h1 {
  font-size: 160%;
 }
 #programs #freeSpace_upper h2, #programs #freeSpace_lower h2 {
  font-size: 145%;
 }
 #programs #freeSpace_upper h2:before, #programs #freeSpace_lower h2:before {
  width: 10rem;
 }
 #programs #freeSpace_upper h3, #programs #freeSpace_lower h3 {
  font-size: 120%;
 }
 #programs #freeSpace_upper h4, #programs #freeSpace_lower h4 {
  font-size: 115%;
 }
 #programs #freeSpace_upper h5, #programs #freeSpace_lower h5 {
  font-size: 110%;
 }
 #programs #freeSpace_upper h6, #programs #freeSpace_lower h6 {
  font-size: 100%;
 }
 #programs #freeSpace_upper p, #programs #freeSpace_lower p {
  font-size: 1.3rem;
 }
 #about p {
  font-size: 1.3rem;
  text-align: justify;
 }
 #programs .comment {
  display: block;
  margin-bottom: 2.5rem;
 }
 #programs .comment:after {
  content: "";
  display: block;
  clear: both;
 }
 #programs .comment .ph {
  flex: none;
  max-width: 45%;
  float: left;
  padding: 0 1rem 0.25rem 0;
 }
 #programs .comment dl {
  flex: none;
  padding: 0;
 }
 #programs .comment dl dt {
  padding: 0 0 0.5rem;
  margin-bottom: 0.5rem;
  border-left: none;
  border-bottom: solid 1px #f25e23;
 }
 #programs .comment dl dd {
  line-height: 1.6;
  font-size: 1.3rem;
  text-align: justify;
 }
 #programs #cast .castList {
  justify-content: space-between;
 }
 #programs #cast .castList:after {
  content: "";
  display: block;
  width: calc(33.333% - 0.5rem);
 }
 #programs #cast .castList > li {
  flex: 1 0 calc(33.333% - 0.5rem);
  max-width: calc(33.333% - 0.5rem);
  margin: 0 0 1rem;
 }
 #programs #cast .castList li > .name {
  font-weight: 400;
 }
 #programs #introduction .introList {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-x: scroll;
  align-content: center;
  align-items: stretch;
  position: relative;
 }
 #programs #introduction .introList > li {
  flex: 1 0 74%;
  max-width: 74%;
  margin: 0 1rem;
 }
 #programs #introduction .introList > li .mcList li {
  flex: 1 0 calc(33.333% - 0.5rem);
  max-width: calc(33.333% - 0.5rem);
 }
 #programs #relation ul {
  justify-content: space-between;
 }
 #programs #relation ul li {
  flex: 1 0 calc(50% - 0.5rem);
  max-width: calc(50% - 0.5rem);
  margin: 0 0 1rem;
 }
 #programs #episode > ul > li {
  padding: 1.5rem;
  margin-bottom: 0.5rem;
 }
 #programs #episode > ul > li .number {
  top: 3rem;
  right: 1.5rem;
  font-size: 250%;
  width: 50%;
 }
 #programs #episode > ul > li .flex {
  display: block;
 }
 #programs #episode > ul > li .flex .programImage {
  flex: none;
  max-width: calc(50% - 1.5rem);
 }
 #programs #episode > ul > li .flex .programDescription {
  flex: none;
  padding: 1rem 0 0;
 }
 #programs #episode > ul > li .flex .programDescription .ttl {
  padding-right: 0;
 }
 #programs #episode > ul > li .flex .programDescription .ttl .time {
  font-size: 1.4rem;
 }
 #programs #episode > ul > li .flex .programDescription .ttl h3 {
  font-size: 4.8vw;
  line-height: 1.5;
  margin: 0.75rem 0 1.0rem;
 }
 #programs #episode > ul > li .flex .programDescription p {
  font-size: 1.3rem;
  text-align: justify;
 }
 #programs #episode > ul > li .flex .programDescription .links {
  padding: 0.5rem 0 0;
 }
 #programs #episode > ul > li .flex .programDescription .links ul > li {
  margin: 0.5rem 0 0 0.5rem;
 }
 #programs #episode > ul > li .flex .programDescription .links ul > li.btn a {
  font-size: 1.2rem;
  padding: 0.15rem 1.25rem;
 }
 #programs #episode .pagination {
  margin: 2rem auto;
 }
 #programs #episode .pagination ul {
  justify-content: center;
 }
 #programs #episode .pagination ul li {
  margin: 0 3px;
 }
 #programs #credit {
  font-size: 1.3rem;
  padding: 1.5rem 1rem;
  line-height: 1.5;
 }
}