@charset "UTF-8";
/* ギガ　コンテンツレイアウト
=================================================================== */
.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: #222;
  font-size: 11px;
  padding: 5px 0;
  font-weight: bold; }

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

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

#gigaContents p.read {
  padding: 20px 16px 32px;
  font-size: 16px;
  color: #222; }

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

/* setting */
/* このぺーじで使うキーカラー */
.mod__flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap; }
  .mod__flex .mod__flex__item {
    *zoom: 1;
    position: relative; }
    .mod__flex .mod__flex__item:after {
      content: "";
      display: block;
      clear: both;
      height: 0;
      visibility: hidden; }
    .mod__flex .mod__flex__item.-flex {
      -ms-flex: 1;
      /*IE10*/
      -webkit-box-flex: 1;
      /* Android4.3以下、Safari3.1〜6.0 */
      -webkit-flex: 1;
      /* Safari6.1以降 */ }
    .mod__flex .mod__flex__item.-w10 {
      width: 10%; }
    .mod__flex .mod__flex__item.-w15 {
      width: 15%; }
    .mod__flex .mod__flex__item.-w20 {
      width: 20%; }
    .mod__flex .mod__flex__item.-w19 {
      width: 19%; }
    .mod__flex .mod__flex__item.-w24 {
      width: 24%; }
    .mod__flex .mod__flex__item.-w25 {
      width: 25%; }
    .mod__flex .mod__flex__item.-w28 {
      width: 27%; }
    .mod__flex .mod__flex__item.-w30 {
      width: 30%; }
    .mod__flex .mod__flex__item.-w32 {
      width: 33%; }
    .mod__flex .mod__flex__item.-w33 {
      width: 33.333333333332%; }
    .mod__flex .mod__flex__item.-w35 {
      width: 35%; }
    .mod__flex .mod__flex__item.-w40 {
      width: 40%; }
    .mod__flex .mod__flex__item.-w45 {
      width: 45%; }
    .mod__flex .mod__flex__item.-w48 {
      width: 48%; }
    .mod__flex .mod__flex__item.-w49 {
      width: 49%; }
    .mod__flex .mod__flex__item.-w50 {
      width: 50%; }
    .mod__flex .mod__flex__item.-w60 {
      width: 60%; }
    .mod__flex .mod__flex__item.-w70 {
      width: 70%; }
    .mod__flex .mod__flex__item.-w75 {
      width: 75%; }
    .mod__flex .mod__flex__item.-w80 {
      width: 80%; }
    .mod__flex .mod__flex__item.-w90 {
      width: 90%; }
    .mod__flex .mod__flex__item.-w100 {
      width: 100%; }
    .mod__flex .mod__flex__item.-full {
      width: 100%; }
  .mod__flex.-align {
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */ }
  .mod__flex.-just_around {
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-around;
    /* Safari6.1以降 */
    justify-content: space-around; }
  .mod__flex.-just_center {
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: center;
    /* Safari6.1以降 */
    justify-content: center; }
  .mod__flex.-just_between {
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content: space-between; }
  .mod__flex.-rev {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-flow: row-reverse wrap;
    -ms-flex-flow: row-reverse wrap;
    -webkit-flow: row-reverse wrap; }

.shadow {
  -webkit-box-shadow: 2px 2px 16px 8px rgba(0, 0, 0, 0.3);
  box-shadow: 2px 2px 16px 8px rgba(0, 0, 0, 0.3); }

.youtubebox {
  margin: 0px auto 24px;
  width: 800px; }
  .youtubebox.-w100 {
    width: 100%;
    margin-bottom: 0; }
  .youtubebox.-inline {
    width: 100%;
    margin: 0px;
    position: absolute;
    right: 0;
    bottom: 0; }
  .youtubebox.-shadow {
    -webkit-box-shadow: 2px 2px 16px 8px rgba(0, 0, 0, 0.3);
    box-shadow: 2px 2px 16px 8px rgba(0, 0, 0, 0.3); }
  .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; }

.sp-box {
  border-top: 20px solid #fff;
  border-bottom: 20px solid #fff; }

.sp-border {
  border: 4px solid #B2A278;
  background: url(bg2.png) repeat-y; }

.sp-border3 {
  border: 4px solid #B2A278; }

.sp-border2 {
  border: 4px solid #fff;
  background: url(kira.png) no-repeat top center;
  background-size: contain; }

.bg-bk {
  background: url(bg-bk.png) no-repeat; }

.read-title {
  text-align: center;
  padding: 0px 0;
  position: relative;
  width: 100%;
  text-align: center;
  background: url(title-frame.png) no-repeat;
  background-size: cover;
  padding-bottom: 20px; }

.sub-title {
  text-align: center;
  padding: 24px 0 0;
  position: relative;
  width: 100%;
  text-align: center; }

.read {
  padding: 0px 16px 24px;
  font-size: 16px;
  line-height: 1.8;
  font-weight: normal; }

.bg0 {
  background: url(./title-1.png) no-repeat center top;
  background-size: cover;
  text-align: center;
  padding: 64px 64px 32px;
  color: #fff; }
  .bg0 h3 {
    color: #E7BB4C;
    text-align: center;
    font-size: 36px;
    font-weight: bold; }

.bg1 {
  background: url(./bg-1.png) no-repeat center bottom;
  background-size: cover;
  padding: 32px 64px;
  color: #fff; }

.bg2 {
  background: url(./bg-2.jpg) no-repeat center center;
  background-size: cover;
  padding: 64px 64px 64px;
  color: #222; }
  .bg2 h3 {
    margin-bottom: 32px;
    padding-top: 12px;
    color: #fff;
    font-size: 36px;
    font-weight: bold;
    text-align: center; }

.-profile-box {
  padding: 8px;
  margin-bottom: 32px; }
  .-profile-box strong {
    display: block;
    font-weight: bold;
    margin: 8px;
    text-align: center;
    padding: 8px;
    border-bottom: 1px solid #ddd; }
  .-profile-box div {
    padding: 8px 0;
    font-size: 13px; }
  .-profile-box img {
    border-radius: 8px; }

.zadankaibg .zadankai {
  text-align: center;
  padding-bottom: 16px; }
  .zadankaibg .zadankai span {
    background: #950000;
    color: #fff;
    padding: 16px 32px;
    border-radius: 80px;
    font-size: 30px; }

.zadankaibg h3 {
  padding-top: 12px;
  color: #950000;
  font-size: 36px;
  font-weight: bold;
  text-align: center; }

/* コンテンツ */
.p-special_contents .-left16px {
  padding-left: 32px; }

.p-special_contents .sub_title {
  font-size: 24px;
  color: #E10909;
  padding: 0 24px;
  font-weight: bold;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 20px; }

.p-special_contents h4 {
  padding: 24px 16px 16px 0px; }

.p-special_contents .text {
  padding: 32px 24px 48px 0px;
  color: #222; }
  .p-special_contents .text.-cast {
    padding-top: 0px; }
  .p-special_contents .text.-pdt24 {
    padding-top: 24px; }

.p-special_contents .official__link {
  padding: 12px 24px 0;
  text-align: right; }
  .p-special_contents .official__link a {
    display: inline-block;
    background: #222;
    padding: 6px 20px 6px 40px;
    color: #fff;
    border-radius: 50px;
    position: relative; }
    .p-special_contents .official__link a:before {
      position: absolute;
      top: 50%;
      margin-top: -4px;
      left: 15px;
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 5px 0 5px 8.7px;
      border-color: transparent transparent transparent white; }

.p-special_contents img {
  max-width: 100%;
  height: auto; }

.p-special_contents .info_line {
  background: #ddd;
  height: 1px;
  border: none;
  width: 100%;
  margin: 48px 0; }

.p-special_contents .info__title {
  padding: 0 24px 0px;
  font-size: 24px;
  font-weight: bold; }
  .p-special_contents .info__title a {
    color: #950000; }

.p-special_contents .info__date {
  background: #950000;
  text-align: center;
  color: #fff;
  padding: 16px; }
  .p-special_contents .info__date strong {
    font-weight: bold;
    font-size: 18px; }

/* add on */
#gigaContents {
  background: url(bg.png) repeat-y; }
  #gigaContents .mod__flex a:hover img {
    background: none; }
  #gigaContents blockquote .text {
    padding-left: 32px;
    color: #333;
    font-size: 13px; }
  #gigaContents blockquote {
    background: white;
    padding-top: 24px;
    margin-bottom: 0; }
    #gigaContents blockquote .mod__flex {
      margin-bottom: 0; }
  #gigaContents .cre {
    padding: 8px; }
  #gigaContents .cre.-white {
    background: white; }
  #gigaContents .-zadankai {
    padding: 16px 8px; }
    #gigaContents .-zadankai h4 {
      color: #950000;
      font-size: 18px;
      padding: 16px 0px;
      font-weight: bold;
      border-bottom: 2px dotted #950000;
      margin-bottom: 16px; }
    #gigaContents .-zadankai p {
      padding: 4px 0px;
      font-size: 14px;
      margin-bottom: 4px; }
      #gigaContents .-zadankai p strong {
        font-weight: bold; }
      #gigaContents .-zadankai p .ch1 {
        color: #cc9900; }
      #gigaContents .-zadankai p .ch2 {
        color: #48a1bf; }
      #gigaContents .-zadankai p .ch3 {
        color: #e0682a; }
    #gigaContents .-zadankai img.left {
      position: relative;
      left: -24px;
      margin-bottom: 24px;
      border-radius: 8px; }
    #gigaContents .-zadankai img.right {
      position: relative;
      right: -24px;
      margin-bottom: 24px;
      border-radius: 8px; }
