@charset "UTF-8";.title {  height: 169px;  padding-top: 55px;  box-sizing: border-box;  text-align: center;  letter-spacing: 0.1em;  color: #c50606;  background: url(../img_2/bg_title.jpg) no-repeat center top;  background-size: auto 100%;}.title img {  display: block;  margin: 0 auto 15px auto;}#contents {  padding: 120px 0 70px 0;  background: #eee;}/* 記事寄稿（contribution）---------------------------------------------- */.article_list {  overflow: hidden;}.article_list li {  padding: 60px;  margin-bottom: 40px!important;  background: #fff;}.article_list li h2 {  margin-bottom: 20px;  padding-left: 15px;  font-size: 22px;  font-size: 2.2rem;  line-height: 1.2;  font-weight: bold;  border-left: 4px solid #b80e0e;}.article_list li h2 span {  display: block;  color: #b80e0e;  font-weight: normal;  font-size: 12px;  font-size: 1.2rem;  margin-bottom: 5px;}.article_list li .div.tb {  display: table;  width: 100%;}.article_list li div.tb .lbox,.article_list li div.tb .rbox {  display: table-cell;  vertical-align: top;  line-height: 2;}.article_list li div.tb .lbox {  padding: 0 20px;}.pager {  margin-top: 20px;  text-align: center;  letter-spacing: -.4em;}.pager li {  display: inline-block;  letter-spacing: normal;  margin: 0 5px;}.pager li a {  display: block;  width: 40px;  height: 40px;  line-height: 40px;  font-size: 18px;  font-size: 1.8rem;  text-align: center;  color: #fff;  background: #2a2b2c;  text-decoration: none;}.pager li a:hover,.pager li.active a {  color: #000;  background: #b50d0d;}/* 使える語録（analects）---------------------------------------------- */.wbox {  padding: 60px;  background: #fff;  box-sizing: border-box;}#analects h2 {  text-align: center;  font-size: 15px;  font-size: 1.5rem;  margin-bottom: 30px;}#analects_list li {  padding: 20px 0;  color: #b80e0e;  line-height: 1;  border-bottom: 1px solid #eee;}#analects_list li:first-child {  border-top: 1px solid #eee;}#analects_list li span {  display: inline-block;  margin-left: 15px;  font-size: 20px;  font-size: 2.0rem;  font-weight: bold;  color: #000;  padding: 0 30px;  position: relative;}#analects_list li span.long {  display: inline-block;  margin-left: 56px;  font-size: 2.0rem;    line-height: 130%;  font-weight: bold;  color: #000;  padding: 0 32px 0 28px;  position: relative;}#analects_list li span::before,#analects_list li span::after {  content: "";  display: block;  width: 20px;  height: 17px;  position: absolute;  top: 0;  left: 0;  background-size: 100% auto!important;}#analects_list li span::after {  content: "";  display: block;  width: 20px;  height: 17px;  position: absolute;  top: 0;  left: 0;  background-size: 100% auto!important;}#analects_list li span::before {  background: url(../img_2/analects/icon_l.png) no-repeat 0 0;}#analects_list li span::after {  background: url(../img_2/analects/icon_r.png) no-repeat 0 0;  right: 0;  top: auto;  bottom: 0;  left: auto;}/* トレーラー映像（trailer）---------------------------------------------- */#trailer .tabs {  width: 640px;  margin: 0 auto;}#trailer .ui-tabs-nav li {  display: inline-block;}#trailer ul.tab {  padding: 0;  background: none;}#trailer .tab li {  width: 115px;  line-height: 1.3;  padding: 0 9px 9px 0;  vertical-align: top;}#trailer .tab li:last-child {  padding-right: 0;}#trailer .tab li a {  display: block;  color: #333;}#trailer .tab li a img {  margin-bottom: 5px;}#trailer .tab li a:hover,#trailer .tab li.ui-tabs-active a {  text-decoration: none;}#trailer .tab li a:hover img,#trailer .tab li.ui-tabs-active a img {  box-sizing: border-box;  border: 3px solid #b50d0d;}#trailer .movie {  margin-bottom: 10px;  font-size: 10px;}#trailer .movie dl dd {  text-indent: -1em;  margin-left: 1em;}/* 大統領選挙動画（presidential-election）---------------------------------------------- */.election_movie li {  width: 435px;  float: left;  margin-top: 40px;}.election_movie li:nth-child(1),.election_movie li:nth-child(2) {  margin-top: 0;}.election_movie li:nth-child(even) {  float: right;}.election_movie li p {  font-size: 14px;  font-size: 1.4rem;  margin-top: 10px;}.frame {  position: relative;  padding-bottom: 56.25%;  padding-top: 30px;  height: 0;  overflow: hidden;}.frame iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}/* キャスト（cast）---------------------------------------------- */#cast h2 {  margin: 60px 0 40px 0;  padding: 10px 0;  background: #000;}#cast h2 img {  display: block;  margin: 0 auto;}#cast .chart a {  display: block;  background: url(../img_2/cast/icon_zoom.png) no-repeat center center black;}#soukanzu a:hover img {  filter: alpha(opacity=50);  -ms-filter: "alpha(opacity=50)";  opacity: 0.50;}.cast_prof,.staff_prof {  margin-bottom: 40px;}.cast_prof .prof {  width: 452px;  float: right;}#cast .position {  color: #b50d0d;  font-size: 14px;  font-size: 1.4rem;}#cast h3 {  vertical-align: top;  font-weight: bold;  font-size: 12px;  font-size: 1.2rem;  position: relative;  padding-bottom: 15px;  margin-bottom: 15px;}#cast h3 img {  vertical-align: middle;  margin-right: 15px;}#cast h3::before,#cast h3::after {  content: "";  display: block;  width: 100%;  background: #000;  position: absolute;  left: 0;}#cast h3::before {  height: 3px;  bottom: 3px;}#cast h3::after {  height: 1px;  bottom: 0;}#cast .btn {  margin-top: 20px;}#cast .btn a {  display: inline-block;  margin-right: 5px;  color: #000;  padding: 5px 15px 5px 25px;  background: url(../img_2/icon_arrow.png) no-repeat 10px center #eee;}#cast .btn a:hover {  color: #b50d0c;  text-decoration: none;}/* エピソード（episode）---------------------------------------------- */#episode #contents {  padding-top: 50px;}#episode h2 {  margin-bottom: 50px;}#episode .txt p {  text-indent: 1em;  line-height: 1.8;}#episode .box1 .txt {  width: 440px;}#episode .box2 {  margin-top: 40px;}#episode .box2 .txt {  width: 540px;}.line_tt {  margin-top: 60px;  text-align: center;  position: relative;  padding-top: 20px;}.line_tt::before,.line_tt::after {  content: "";  display: block;  width: 100%;  position: absolute;  top: 0;  left: 0;}.line_tt::before {  height: 56px;  border-top: 3px solid #000;  border-bottom: 3px solid #000;}.line_tt::after {  height: 48px;  top: 6px;  border-top: 1px solid #000;  border-bottom: 1px solid #000;}#season {  position: relative;  margin: 40px 0 0 0;}.season_nav {  position: absolute;  top: 0;  left: 0;}.season_nav img {  margin: 8px 10px 0 0;}.season_nav ul {  padding: 0;  background: none;}.season_nav li {  display: inline-block;  margin-right: 5px;}.season_nav li a {  display: block;  width: 32px;  height: 32px;  line-height: 32px;  text-align: center;  text-decoration: none;  color: #000;  font-size: 18px;  font-size: 1.8rem;  background: #eee;}.season_nav li a:hover,.season_nav li.ui-tabs-active a {  background: #b50d0d;}#episode_nav {  float: right;}#episode_nav li {  display: inline-block;  margin-left: 10px;}#episode_nav li a {  color: #d3d3d3;  font-size: 30px;  font-size: 3.0rem;  line-height: 32px;  text-decoration: none;}#episode_nav li a:hover,#episode_nav li.ui-tabs-active a {  color: #b50d0d;}#season .ui-tabs-panel .ui-tabs-panel {  padding-top: 60px;}#season .ui-tabs-panel .ui-tabs-panel .img {  width: 297px;  float: left;}#season .ui-tabs-panel .ui-tabs-panel .img img {  display: block;}#season .ui-tabs-panel .ui-tabs-panel .txt {  width: 607px;  height: 420px;  float: right;  background: #eee;}#season .ui-tabs-panel .ui-tabs-panel .txt h4 {  height: 50px;  line-height: 50px;  padding-left: 35px;  color: #fff;  font-weight: bold;  font-size: 20px;  font-size: 2.0rem;  background: #2a2b2c;}#season .ui-tabs-panel .ui-tabs-panel .txt .in {  padding: 30px;}#season .ui-tabs-panel .ui-tabs-panel .txt .in p {  text-indent: 0;}#season .ui-tabs-panel .ui-tabs-panel .txt .in p.info {  margin-top: 20px;  font-size: 12px;  font-size: 1.2rem;  color: #b50d0d;  padding-left: 10px;  border-left: 4px solid #b50d0d;}/* イントロダクション（introduction）---------------------------------------------- */#introduction h2 {  margin: 45px 0 30px 0;}#introduction h2 span {  display: inline-block;  height: 48px;  line-height: 52px;  padding: 5px 20px;  display: inline;  color: #fff;  font-size: 26px;  font-size: 2.6rem;  font-weight: bold;  background: #000;}#introduction h2 strong {  color: #b50d0d;}.introbox {  margin-bottom: 45px;}.introbox .txt {  width: 540px;}.introbox .txt p {  text-indent: 1em;  line-height: 1.8;}/* Blu-ray&DVD情報（bluray）---------------------------------------------- */#bluray_dvd {  position: relative;}.tab-sale {  float: left;  /* margin-left: 280px; */  margin-left: 350px;}.tab-sale li {  display: inline-block;  margin-right: 10px;}.tab-sale li a {  display: block;  width: 120px;  height: 34px;  line-height: 34px;  text-align: center;  font-size: 18px;  font-size: 1.8rem;  text-decoration: none;  color: #000;  background: #eee;}.tab-sale li a:hover,.tab-sale li.ui-tabs-active a {  background: #b50d0d;}#bluray .ui-tabs-panel .ui-tabs-panel {  padding-top: 60px;}#bluray .detail {  padding-bottom: 40px;  margin-top: 40px;  border-bottom: 1px solid #bbb;}#bluray .detail.nb {  border-bottom: none;}#bluray .detail .img {  width: 260px;  float: left;}#bluray .detail .txt {  width: 600px;  float: right;}#bluray .detail .txt h3 {  margin-bottom: 20px;  padding-left: 15px;  border-left: 4px solid #b80e0e;}#bluray .detail .txt h3 span {  display: block;  font-weight: bold;  font-size: 20px;  font-size: 2.0rem;}.detail p.info {  padding-left: 15px;}#bluray .detail .txt .date {  margin: 0 0 10px 15px;  padding-bottom: 5px;  color: #b50d0d;  font-size: 15px;  font-size: 1.5rem;  font-weight: bold;  border-bottom: 1px solid #b50d0d;}#bluray .detail .txt .bnr_list {  margin-top: 20px;}#bluray .detail .txt .bnr_list li {  float: left;  margin: 0 13px 13px 0;}#bluray .detail .txt .bnr_list li:nth-child(3n) {  margin-right: 0;}#degital .line_tt {  margin-bottom: 30px;}#degital h4 {  margin: 30px 0 10px 0;  padding-left: 5px;  font-size: 14px;  font-size: 1.4rem;  line-height: 1.2;  font-weight: bold;  color: #b80e0e;  border-left: 4px solid #b80e0e;}#degital li {  float: left;  margin-right: 10px;  margin-bottom: 10px;}.txt_right {  text-align: right;}