@charset "UTF-8";
/* ギガ　コンテンツレイアウト
=================================================================== */
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
.thm-page-special .gigaindex .detail {
  width: 1000px;
  position: relative;
  top: -60px; }

.thm-page-special .gigaindex .head {
  border-bottom: none; }

.colorbarLong9, #gigaindexName, .colorbarLong4 {
  z-index: 1; }

#gigaContents {
  z-index: 2;
  margin-top: -75px;
  width: 1000px;
  position: relative;
  background: #fff;
  color: #222; }

#gigaContents h2.title-sp {
  position: relative;
  text-align: center;
  background: #C80003;
  color: #fff;
  padding: 10px;
  font-weight: bold;
  font-size: 30px;
  margin-top: 30px; }

#gigaContents h2 a {
  position: absolute;
  bottom: 20px;
  right: 0; }

#gigaContents p a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )"; }

.clearfix:before {
  clear: both;
  display: block;
  content: ""; }

#gigaContents .cre {
  height: 35px;
  text-align: right;
  color: #999;
  font-size: 9px;
  padding: 5px 0; }

#gigaContents p {
  font-size: 15px;
  line-height: 1.8; }

#gigaContents a.banner {
  display: block;
  margin-bottom: 20px; }

#gigaContents p.read {
  padding: 20px 0;
  font-size: 14px; }

#gigaContents p.size-min {
  font-size: 13px; }

/* このぺーじで使うキーカラー */
/* コンテンツ */
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 20px; }
  .flex.-info {
    border-top: 1px solid #ddd;
    padding-top: 32px;
    background: #fff;
    border-bottom: none; }
  .flex.-bk {
    background: #000; }
    .flex.-bk .text {
      padding-top: 16px;
      color: #fff; }
  .flex img {
    width: 100%;
    height: auto; }
  .flex p {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    padding: 8px;
    font-size: 15px;
    line-height: 2; }
    .flex p.size-min {
      font-size: 10px;
      text-align: left; }
    .flex p strong {
      font-weight: bold;
      font-size: 16px;
      display: block;
      margin-bottom: 8px; }
  .flex .photo {
    padding: 0; }
    .flex .photo.-zadankai {
      width: 50%; }
    .flex .photo .center {
      text-align: center; }
  .flex .border {
    border: 1px solid #ddd;
    margin-bottom: 24px; }
  .flex .text {
    padding: 0 16px 0px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .flex .text h3 {
      font-size: 24px;
      padding: 16px 8px 16px;
      font-weight: bold;
      color: #C3A668; }
    .flex .text h4 {
      font-size: 28px;
      font-weight: bold;
      padding: 0 16px;
      font-weight: normal;
      font-style: italic;
      color: #D01B1B;
      text-align: center;
      margin-bottom: 20px; }
      .flex .text h4:after {
        display: block;
        margin: 20px auto;
        width: 50px;
        background: #D01B1B;
        height: 3px;
        content: ""; }
      .flex .text h4 img {
        width: auto;
        width: 100%;
        height: auto; }
      .flex .text h4.type1 {
        border-top: 2px solid #C3A668; }
      .flex .text h4.type2 {
        border-top: 2px solid #FFFB19; }
    .flex .text p.-recommend {
      color: #600ba2;
      font-size: 15px; }
    .flex .text .-radius {
      border-radius: 4px; }
    .flex .text .-pdb30 {
      margin-bottom: 34px; }
    .flex .text.-zadankai {
      width: 50%; }
      .flex .text.-zadankai p {
        position: relative;
        border-bottom: 1px dotted #ddd;
        padding: 16px;
        padding-left: 65px; }
        .flex .text.-zadankai p:after {
          display: block;
          content: "";
          clear: both; }
      .flex .text.-zadankai span {
        display: inline-block;
        margin-right: 5px;
        border: 1px solid #C3A668;
        color: #C3A668;
        padding: 0px 8px;
        position: absolute;
        left: 0;
        top: 10px;
        font-size: 12px; }
  .flex .dvd2 {
    border: 1px solid #ddd;
    margin: 3% 1%;
    padding: 16px; }
  .flex .type {
    padding-bottom: 24px; }
    .flex .type h4 {
      text-align: center;
      padding: 24px; }
      .flex .type h4 img {
        width: auto;
        height: auto; }
    .flex .type p {
      padding: 0 16px; }
  .flex .info {
    padding: 24px;
    padding-top: 0;
    position: relative;
    color: #222;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .flex .info .p-info.-title {
      font-size: 20px;
      color: #C3A668;
      font-weight: bold; }
      .flex .info .p-info.-title a {
        color: #C3A668;
        display: block;
        padding-left: 8px; }
    .flex .info .p-info.-catch {
      color: #C3A668;
      font-size: 18px;
      margin-bottom: 16px;
      border-bottom: 1px solid #C3A668;
      padding-bottom: 16px; }
    .flex .info .official-link {
      width: 100%; }
      .flex .info .official-link.-bk {
        background: #222; }
      .flex .info .official-link a {
        color: #C3A668; }
  .flex.-col1 div {
    width: 800px;
    margin: 0 auto; }
    .flex.-col1 div h4 {
      text-align: center;
      margin-bottom: 16px; }
      .flex.-col1 div h4:after {
        display: none; }
  .flex.-col2 {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .flex.-col2 div {
      width: 50%; }
      .flex.-col2 div.dvd {
        width: 30%; }
        .flex.-col2 div.dvd.-gray {
          background: #393939;
          padding: 20px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center; }
      .flex.-col2 div.info {
        width: 70%; }
      .flex.-col2 div.face {
        width: 20%;
        text-align: center; }
      .flex.-col2 div.cp-link {
        text-align: center; }
        .flex.-col2 div.cp-link img {
          max-width: 100%;
          width: auto;
          margin: 0 auto; }
        .flex.-col2 div.cp-link strong {
          display: block; }
      .flex.-col2 div.comment {
        width: 78%; }
        .flex.-col2 div.comment .arrow_box {
          padding: 24px !important; }
        .flex.-col2 div.comment hr {
          background: #666;
          border: none;
          height: 1px; }
        .flex.-col2 div.comment .profile {
          color: #666; }
        .flex.-col2 div.comment .profile-read {
          color: #666; }
  .flex.-col3 div {
    width: 33.33333333332%; }
  .flex.-col4 {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .flex.-col4 div {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; }
  .flex.-col5 div {
    width: 20%; }
  .flex.-r-rev {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse;
    flex-flow: row-reverse; }
  .flex.-col2_dvd div {
    width: 48%; }

.pd10 {
  padding: 0 24px 24px; }

.present {
  border-bottom: 1px solid #ccc;
  padding: 20px; }

.present_entry {
  padding: 16px;
  text-align: center;
  color: #222;
  font-size: 20px;
  margin-top: 20px;
  font-weight: bold;
  display: inline-block;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 20px;
  color: #ff0000;
  border: 5px solid #ff0000;
  padding: 16px;
  -webkit-transition: color 300ms, background 300ms;
  -o-transition: color 300ms, background 300ms;
  transition: color 300ms, background 300ms;
  display: block; }
  .present_entry:hover {
    background: #ff0000;
    color: #ffffff; }

.official_link {
  margin: 10px;
  background: #393939;
  text-align: center;
  display: block;
  padding: 16px;
  font-size: 16px;
  border-radius: 60px;
  color: white; }

.youtubebox {
  margin: 0px auto 24px;
  width: 800px; }
  .youtubebox .youtube {
    background: #000;
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
  .youtubebox iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

.read {
  padding: 0px 16px 24px;
  font-size: 16px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.8;
  font-weight: normal; }

.read-title {
  text-align: center;
  padding: 24px 0;
  position: relative;
  width: 100%;
  text-align: center; }
  .read-title.pd60 {
    padding: 64px 0; }
  .read-title img {
    z-index: 10;
    max-width: 100%;
    position: relative;
    height: auto; }

.dateshow {
  background: #C3A668;
  padding: 24px;
  color: #222;
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  line-height: 1; }

.theater-link {
  text-align: center;
  padding: 24px; }
  .theater-link a {
    display: block;
    border: 1px solid #FFFB19;
    color: #FFFB19;
    padding: 24px;
    font-size: 24px;
    border-radius: 8px; }
    .theater-link a:hover {
      border: 2px solid #FFFB19;
      color: #FFFB19;
      padding: 23px; }

.to-link {
  text-align: center;
  padding: 24px 24px; }
  .to-link a {
    display: block;
    color: #fff;
    padding: 24px 0;
    font-size: 35px;
    border-radius: 8px;
    font-weight: bold; }
    .to-link a img {
      width: auto;
      max-width: 100%;
      height: auto; }
    .to-link a:hover {
      color: #fff; }

/**/
.arrow_box {
  position: relative;
  background: #fff;
  border: 2px solid #ee074e; }

.arrow_box:after, .arrow_box:before {
  right: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.arrow_box:after {
  border-color: rgba(255, 255, 255, 0);
  border-right-color: #fff;
  border-width: 12px;
  margin-top: -12px; }

.arrow_box:before {
  border-color: rgba(238, 7, 78, 0);
  border-right-color: #ee074e;
  border-width: 15px;
  margin-top: -15px; }
