@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  outline: 0; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

body {
  -webkit-text-size-adjust: 100%;
  display: block;
  position: relative;
  font-family: HelveticaNeue, "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background-color: #f0f0f0;
  color: #000000;
  font-size: 14px;
  word-wrap: break-word;
  word-break: break-all;}
  body a {
    text-decoration: none;
    outline: 0; }

.p-dtl {
  font-size: 12px;
  font-size: 0.75rem; }

.l-dtl-wrapper {
  position: relative;
  width: 100%;
  background-color: #f0f0f0; }
  .l-dtl-wrapper.is-fixed {
    position: fixed; }
  @media screen and (min-width: 768px) {
    .l-dtl-wrapper {
      min-width: 951px; } }

.l-dtl-container {
  position: relative;
  padding-top: 0.1px;
  padding-bottom: 40px; }
  @media screen and (max-width: 767px) {
    .l-dtl-container {
      padding-left: 10px;
      padding-right: 10px; } }
  @media screen and (min-width: 768px) {
    .l-dtl-container {
      box-sizing: border-box;
      margin-left: auto;
      margin-right: auto;
      padding-left: 32px;
      padding-right: 32px;
      max-width: 1221px;
      min-width: 951px; } }
  .l-dtl-container--white, .l-dtl-container--gray {
    border-bottom: solid 1px #d9d9d9;
    padding-bottom: 40px; }
  .l-dtl-container--white {
    background: #fff; }

.l-dtl-content-header, .l-dtl-content-footer {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 767px) {
    .l-dtl-content-header, .l-dtl-content-footer {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .l-dtl-content-header__left, .l-dtl-content-footer__left {
        -webkit-box-ordinal-group: 1;
        -webkit-order: 0;
            -ms-flex-order: 0;
                order: 0; }
      .l-dtl-content-header__center, .l-dtl-content-footer__center {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
            -ms-flex-order: 2;
                order: 2; }
      .l-dtl-content-header__right, .l-dtl-content-footer__right {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; } }
  @media screen and (min-width: 768px) {
    .l-dtl-content-header, .l-dtl-content-footer {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .l-dtl-content-header__center, .l-dtl-content-footer__center {
        margin-left: auto;
        margin-right: auto; }
      .l-dtl-content-header__right, .l-dtl-content-footer__right {
        margin-left: auto; } }

@media screen and (max-width: 767px) {
  .l-dtl-content-header .c-dtl-heading-h2 {
    margin-top: 20px; }
  .l-dtl-content-header .c-dtl-button--review {
    margin-top: 15px; }
  .l-dtl-content-header .p-dtl-review-tab {
    margin-top: 20px; } }

@media screen and (min-width: 768px) {
  .l-dtl-content-header {
    height: 87px; } }

.c-pc-header {
  position: relative; }
  @media screen and (max-width: 767px) {
    .c-pc-header {
      display: none; } }
  @media screen and (min-width: 768px) {
    .c-pc-header {
      display: block; } }
  .c-pc-header-upper {
    background: #fff;
    min-width: 951px;
    height: 52px; }
  .c-pc-header-bottom {
    background: #000000;
    min-width: 951px;
    height: 44px; }
  .c-pc-header-container {
    max-width: 1221px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    height: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px; }
  .c-pc-header-service-toggle {
    position: relative;
    width: 68px;
    height: 52px;
    background: url("/images/common/icon_header_service.png") no-repeat 12px 10px;
    background-size: 39px 34px;
    cursor: pointer; }
  .c-pc-header-logo {
    display: block;
    border-left: solid 1px #d9d9d9;
    height: 40px; }
    .c-pc-header-logo a {
      display: block;
      padding: 10px 15px 12px;
      color: #000; }
  .c-pc-header-menu {
    margin-left: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    height: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .c-pc-header-menu__closslink {
      display: block;
      border-right: solid 1px #d9d9d9;
      height: 40px;
      line-height: 40px;
      padding-right: 17px; }
      .c-pc-header-menu__closslink a {
        font-size: 14px;
        background: url("/images/common/arrow_header_link.png") no-repeat right center;
        padding-right: 13px;
        color: #000000;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        .c-pc-header-menu__closslink a:hover {
          color: #039; }
    .c-pc-header-menu__link {
      display: block;
      text-indent: -9999px;
      outline: none;
      height: 100%;
      background-repeat: no-repeat;
      background-position: center 5px;
      cursor: pointer; }
      .c-pc-header-menu__link::-moz-focus-inner {
        border: 0; }
      .c-pc-header-menu__link:hover {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        opacity: 0.5 !important; }
      .c-pc-header-menu__link--guide {
        width: 56px;
        background-image: url("/images/common/icon_user_guide.png");
        margin-left: 24px; }
      .c-pc-header-menu__link--help {
        width: 28px;
        background-image: url("/images/common/icon_user_help.png");
        margin-left: 16px; }
      .c-pc-header-menu__link--list {
        width: 24px;
        background-image: url("/images/common/icon_header_list.png");
        margin-left: 32px; }
      .c-pc-header-menu__link--login {
        width: 36px;
        background-image: url("/images/common/icon_header_login.png");
        margin-left: 28px;
        margin-right: 9px; }
      .c-pc-header-menu__link--mymenu {
        width: 54px;
        background-image: url("/images/common/icon_header_mymenu.png");
        margin-left: 19px; }
  .c-pc-header-search {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    border-radius: 4px;
    overflow: hidden;
    width: 260px; }
    .c-pc-header-search input {
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      outline: 0;
      border: none; }
      .c-pc-header-search input::-moz-focus-inner {
        border: 0; }
    .c-pc-header-search__keyword {
      box-sizing: border-box;
      height: 26px;
      font-size: 12px;
      padding: 5px;
      margin: auto;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .c-pc-header-search__button {
      width: 26px;
      height: 26px;
      background: #8e8e8e url("/images/common/btn_header_search.png") no-repeat center center;
      cursor: pointer;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
      .c-pc-header-search__button:hover {
        background-color: #c6c6c6; }
  .c-pc-header-nav {
    margin-left: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    font-size: 12px;
    font-size: .75rem;}
    .c-pc-header-nav * {
      font-size: 12px;
      font-size: .75rem;
      white-space: nowrap; }
    .c-pc-header-nav__link {
      display: block;
      background: url("/common/images/arrow_down.png") no-repeat right center;
      padding-right: 18px;
      line-height: 26px;
      margin-left: 14px;
      margin-right: 14px;
      padding-top: 1px;
      color: #ffffff; }
      .c-pc-header-nav__link:hover {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        opacity: 0.5 !important; }
    .c-pc-header-nav__premium {
      display: block;
      border: solid 1px #737373;
      height: 28px;
      box-sizing: border-box;
      line-height: 26px;
      color: #ffffff;
      padding-left: 10px;
      padding-right: 3px;
      margin-left: 14px; }
      .c-pc-header-nav__premium:hover {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        opacity: 0.5 !important; }
      .c-pc-header-nav__premium img {
        vertical-align: middle;
        position: relative;
        top: -2px; }
      .c-pc-header-nav__premium span {
        position: relative;
        bottom: -2px; }
    .c-pc-header-nav__r18 {
      display: block;
      border: solid 1px #737373;
      height: 28px;
      box-sizing: border-box;
      padding-top: 1px;
      line-height: 25px;
      color: #ffffff;
      padding-left: 14px;
      padding-right: 30px;
      margin-left: 4px;
      font-size: 13px;
      font-size: .8125rem;
      background: url("/common/images/arrow_down.png") no-repeat 82% center; }
      .c-pc-header-nav__r18:hover {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        opacity: 0.5 !important; }
  .c-pc-header-baloon {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    background: #ffffff;
    z-index: 9;
    box-sizing: border-box;
    padding: 30px;
    border: solid 1px #000000; }
    .c-pc-header-baloon:before {
      content: "";
      position: absolute;
      top: -6px;
      margin-left: -3px;
      border-bottom: 6px solid #ffffff;
      border-left: 6px solid transparent;
      border-right: 6px solid transparent; }
    .c-pc-header-baloon--genre {
      right: 200px;
      width: 750px; }
      .c-pc-header-baloon--genre:before {
        left: 43%; }
    .c-pc-header-baloon--release {
      right: 390px;
      width: 265px; }
      .c-pc-header-baloon--release:before {
        left: 50%; }
    .c-pc-header-baloon--ranking {
      right: 278px;
      width: 265px; }
      .c-pc-header-baloon--ranking:before {
        left: 50%; }
    .c-pc-header-baloon--r18 {
      right: 10px;
      width: 265px; }
      .c-pc-header-baloon--r18:before {
        right: 10%; }
    .c-pc-header-baloon__row {
      margin-top: 20px;
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
    .c-pc-header-baloon__col {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-top: 12px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .c-pc-header-baloon__col:first-of-type {
        margin-top: 0; }
      .c-pc-header-baloon__col--w100 {
        width: 100%; }
      .c-pc-header-baloon__col--w33 {
        width: 33.333%; }
    .c-pc-header-baloon__close {
      position: absolute;
      top: 14px;
      right: 16px;
      width: 14px;
      height: 14px;
      background: url("/common/images/ttv/header/pc/xicon_close.png") no-repeat center center;
      background-size: cover;
      cursor: pointer; }
    .c-pc-header-baloon__button {
      position: relative; }
      .c-pc-header-baloon__button a {
        padding-left: 20px;
        line-height: 1;
        background: url("/common/images/arrow_black_s.png") no-repeat 3px center;
        color: #000000;
        font-size: 12px;
        font-weight: bold;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        .c-pc-header-baloon__button a:hover {
          color: #003399; }
    .c-pc-header-baloon__list {
      position: relative;
      list-style: disc;
      list-style-position: outside;
      margin-left: 12px;
      font-size: 12px;
      line-height: 18px; }
      .c-pc-header-baloon__list li {
        margin-top: 5px;
        margin-left: 24px; }
      .c-pc-header-baloon__list a {
        color: #000000;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        .c-pc-header-baloon__list a:hover {
          color: #003399; }
        .c-pc-header-baloon__button--border {
          border: 1px solid #919191;
          border-radius: 5px;
          height: 58px;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-direction: column;
          font-weight: bold; }
        .c-pc-header-baloon__button--border:hover {
          transition: opacity .3s;
          opacity: 0.5; }
        .c-pc-header-baloon__button--border img {
          width: 165px;
          height: 17px; }
        .c-pc-header-baloon__button--border span {
          text-align: center;
          display: block;
          font-size: 15px;
          color: #575757;
          line-height: 1;
          margin-top: 6px;
          margin-bottom: -2px; }
  .c-pc-header-login {
    display: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 338px;
    background: #000000;
    z-index: 99;
    box-sizing: border-box;
    padding: 20px 20px 5px; }
    .c-pc-header-login:before {
      content: "";
      position: absolute;
      top: -8px;
      right: 28px;
      margin-left: -5px;
      border-bottom: 8px solid #000;
      border-left: 8px solid transparent;
      border-right: 8px solid transparent; }
    .is-login .c-pc-header-login {
      display: block; }
    .c-pc-header-login__row {
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      margin-bottom: 8px; }
    .c-pc-header-login__col {
      position: relative;
      width: 100%;
      box-sizing: border-box;
      margin-bottom: 10px; }
      .c-pc-header-login__col--w50 {
        width: 50%; }
      .c-pc-header-login__col--l {
        padding-right: 5px; }
      .c-pc-header-login__col--r {
        padding-left: 5px; }
    .c-pc-header-login__button {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: relative;
      border-radius: 4px;
      height: 44px;
      text-decoration: none;
      color: #000000;
      background-color: #ffffff;
      font-size: 13px;
      box-sizing: border-box; }
      .c-pc-header-login__button:hover {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        opacity: 0.5 !important; }
      .c-pc-header-login__button:after {
        display: block;
        position: absolute;
        width: 8px;
        height: 13px;
        background: url("/common/images/ttv/header/pc/arrow_black_m.png") no-repeat left top;
        background-size: 8px 13px;
        top: 50%;
        margin-top: -6.5px;
        right: 10px;
        content: ""; }
      .c-pc-header-login__button--strong {
        font-weight: bold; }
      .c-pc-header-login__button--yellow {
        background-color: #fc0; }
      .c-pc-header-login__button--primium {
        background-color: #003c94;
        color: #ffffff;
        height: 42.420px;
        display: block;
        text-align: center; }
        .c-pc-header-login__button--primium:after {
          background-image: url("/images/common/arrow_yellow_m.png"); }
        .c-pc-header-login__button--primium img {
          margin-right: 4px;
          vertical-align: sub; }
      .c-pc-header-login__button--border {
        border: solid 1px #4c4c4c;
        background: none;
        color: #ffffff;
        height: 40px; }
        .c-pc-header-login__button--border:after {
          display: block;
          position: absolute;
          width: 8px;
          height: 13px;
          background: #000000 url("/images/common/arrow_white_m.png") no-repeat left top;
          background-size: 8px 13px;
          top: 50%;
          margin-top: -6.5px;
          right: 10px;
          content: ""; }
      .c-pc-header-login__button--logout {
        border: solid 1px #4c4c4c;
        background: none;
        color: #ffffff; }
        .c-pc-header-login__button--logout:after {
          display: block;
          position: absolute;
          width: 16px;
          height: 11px;
          right: 6px;
          background: #000000 url("/images/common/icon_header_outer.png") no-repeat left top;
          background-size: cover;
          top: 50%;
          margin-top: -6px;
          content: ""; }
    .c-pc-header-login__heading {
      font-weight: normal;
      position: relative;
      color: #ffcc00;
      font-size: 13px;
      margin-bottom: 18px;
      width: 100%; }
    .c-pc-header-login__link {
      display: block;
      position: relative;
      margin-bottom: 12px;
      padding: 0 20px 10px 0;
      border-bottom: solid 1px #4c4c4c;
      box-sizing: border-box;
      width: 100%;
      color: #ffffff;
      font-size: 13px;
      line-height: 1;
      font-weight: normal; }
      .c-pc-header-login__link:before {
        display: block;
        position: absolute;
        width: 8px;
        height: 13px;
        background: url("/images/common/arrow_white_m.png") no-repeat left top;
        background-size: 8px 13px;
        top: 50%;
        margin-top: -14px;
        right: 0px;
        content: ""; }
      .c-pc-header-login__link:hover {
        color: rgba(255, 255, 255, 0.5); }
    .c-pc-header-login__point {
      position: relative;
      color: #ffffff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 10px; }
      .c-pc-header-login__point-title {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        font-size: 12px;
        line-height: 14px;
        color: #999; }
      .c-pc-header-login__point-number {
        font-size: 24px;
        margin-right: 27px; }
        .c-pc-header-login__point-number span {
          font-size: 12px;
          padding-left: 2px; }
      .c-pc-header-login__point-button {
        width: 148px; }
        .c-pc-header-login__point-button .c-pc-header-login__button {
          text-align: center;
          line-height: 14px;
          font-size: 11px; }
    .c-pc-header-login__sheet {
      position: relative;
      color: #ffffff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 100%;
      margin-bottom: 11px;
      margin-top: -8px; }
      .c-pc-header-login__sheet-title {
        color: #999;
        font-size: 13px; }
      .c-pc-header-login__sheet-number {
        font-size: 24px;
        line-height: 24px; }
        .c-pc-header-login__sheet-number span {
          font-size: 13px;
          padding-left: 5px; }
  .c-pc-header-service {
    z-index: 1001;
    position: relative; }
    .c-pc-header-service-container {
      position: absolute;
      left: 0;
      top: 52px;
      width: 830px;
      background-color: #ffffff;
      border: solid 1px #e4e4e4;
      z-index: 10;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      display: none; }
      .is-show .c-pc-header-service-container {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
    .c-pc-header-service__left {
      position: relative;
      width: 171px;
      box-sizing: border-box;
      border-right: solid 1px #e4e4e4;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .c-pc-header-service__center {
      position: relative;
      width: 244px;
      box-sizing: border-box;
      border-right: solid 1px #e4e4e4;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .c-pc-header-service__right {
      position: relative;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      line-height: 0; }
      .c-pc-header-service__right img {
        max-width: 415px;
      }
    .c-pc-header-service__catelist {
      position: relative;
      width: 100%; }
      .c-pc-header-service__catelist a {
        display: block;
        font-weight: bold;
        font-size: 13px;
        padding: 15px;
        margin: 0;
        cursor: pointer; }
    .selected-1 .c-pc-header-service__catelist li:nth-of-type(1),
    .selected-2 .c-pc-header-service__catelist li:nth-of-type(2),
    .selected-3 .c-pc-header-service__catelist li:nth-of-type(3),
    .selected-4 .c-pc-header-service__catelist li:nth-of-type(4),
    .selected-5 .c-pc-header-service__catelist li:nth-of-type(5){
      background-color: #e4e4e4; }
    .c-pc-header-service__list {
      display: none;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
      .c-pc-header-service__list li {
        width: 100%; }
        .c-pc-header-service__list li a {
          display: block;
          position: relative;
          color: #000000;
          font-size: 12px;
          padding: 10px 10px 10px 26px;
          line-height: 1; }
          .c-pc-header-service__list li a:before {
            display: block;
            position: absolute;
            width: 6px;
            height: 9px;
            background: url("/common/images/ttv/header/pc/arrow.png") no-repeat left center;
            top: 50%;
            margin-top: -4px;
            left: 12px;
            content: ""; }
      .c-pc-header-service__list div a {
        display: inline-block;
        margin: 10px;
        padding: 5px 15px;
        background: #e4e4e4;
        font-weight: bold;
        color: #000000;
        font-size: 12px; }
    .selected-1 .c-pc-header-service__list:nth-of-type(1),
    .selected-2 .c-pc-header-service__list:nth-of-type(2),
    .selected-3 .c-pc-header-service__list:nth-of-type(3),
    .selected-4 .c-pc-header-service__list:nth-of-type(4),
    .selected-5 .c-pc-header-service__list:nth-of-type(5) {
      display: block; }
    .c-pc-header-service__image a {
      display: block;
      width: 100%;
      height: 100%; }
      .c-pc-header-service__image a img {
        width: 100%;
        height: 100%; }
    .c-pc-header-service__ad {
      position: absolute;
      left: 0;
      bottom: 0;
      line-height: 0; }

.c-sp-header {
  position: relative; }
  @media screen and (max-width: 767px) {
    .c-sp-header {
      display: block; } }
  @media screen and (min-width: 768px) {
    .c-sp-header {
      display: none; } }
  .c-sp-header-upper {
    background: #ffffff;
    height: 50px;
    width: 100%;
    position: relative; }
  .c-sp-header-bottom {
    background: #000000;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
  .c-sp-header-logo {
    line-height: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -52px;
    margin-top: -7px; }
    .c-sp-header-logo a img {
      width: 104px;
      height: 13px; }
  .c-sp-header-service-toggle {
    position: absolute;
    left: 0;
    top: 0;
    width: 57px;
    height: 100%;
    background: url("/common/images/ttv/header/sp/sp_icon_header_service.png") no-repeat center center;
    background-size: 33.5px 30.5px;
    cursor: pointer; }
  .c-sp-header-login-toggle {
    position: absolute;
    right: 0;
    top: 0;
    width: 48px;
    height: 100%;
    background: url("/common/images/ttv/header/sp/sp_icon_header_login.png") no-repeat center center;
    background-size: 32px 33.5px;
    cursor: pointer; }
    .is-login .c-sp-header-login-toggle {
      background-image: url("/common/images/ttv/header/sp/sp_icon_header_close.png");
      background-size: 24.5px 34px; }
  .c-sp-header-mymenu {
    position: absolute;
    right: 5px;
    top: 0;
    width: 48px;
    height: 100%;
    background: url("/common/images/ttv/header/sp/sp_icon_header_mymenu.png") no-repeat center center;
    background-size: 43px 33.5px;
    cursor: pointer; }
    .is-login .c-sp-header-mymenu {
      background-image: url("/common/images/ttv/header/sp/sp_icon_header_close.png");
      background-size: 24.5px 34px; }
  .c-sp-header-listmenu {
    position: absolute;
    right: 53px;
    top: 0;
    width: 48px;
    height: 100%;
    background: url("/common/images/ttv/header/sp/sp_icon_header_list.png") no-repeat center center;
    background-size: 21.5px 33.5px;
    cursor: pointer; }
  .c-sp-header-service {
    display: none;
    position: absolute;
    left: 0;
    top: 50px;
    width: 100%;
    z-index: 2;
    box-sizing: border-box;
    border-top: solid 1px #000000;
    background-color: #ffffff;
    border-bottom: solid 1px #000;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2); }
    .c-sp-header-service:before {
      display: block;
      position: absolute;
      width: 27px;
      height: 4px;
      background: url("/common/images/ttv/header/sp/icon_login_tri.png") no-repeat left top;
      background-size: 8px 4px;
      top: -4px;
      left: 5px;
      content: "";
      -webkit-transform: scale(-1, 1);
          -ms-transform: scale(-1, 1);
              transform: scale(-1, 1); }
    .c-sp-header-service__col {
      position: relative;
      border-bottom: solid 1px #c6c6c6;
      margin-left: 15px;
      margin-right: 15px; }
    .c-sp-header-service__head {
      position: relative;
      font-weight: bold;
      padding: 20px 0;
      font-size: 14px;
      cursor: pointer; }
      .c-sp-header-service__head:before {
        display: block;
        position: absolute;
        width: 11px;
        height: 7px;
        background: url("/common/images/ttv/header/sp/icon-closed-sp.png") no-repeat left top;
        background-size: 11px 7px;
        top: 50%;
        margin-top: -3.5px;
        right: 2px;
        content: ""; }
      .is-open .c-sp-header-service__head:before {
        -webkit-transform: scale(1, -1);
            -ms-transform: scale(1, -1);
                transform: scale(1, -1); }
    .c-sp-header-service__list {
      display: none; }
      .is-open .c-sp-header-service__list {
        display: block; }
    .c-sp-header-service__link {
      position: relative;
      display: block;
      margin-left: 15px;
      padding: 10px 0;
      margin-bottom: 10px;
      font-size: 13px;
      line-height: 15px;
      font-weight: bold;
      color: #000000; }
      .c-sp-header-service__link:before {
        display: block;
        position: absolute;
        width: 7px;
        height: 11px;
        background: url("/common/images/ttv/header/sp/arrow-sp.png") no-repeat left top;
        background-size: 7px 11px;
        top: 50%;
        margin-top: -5.5px;
        right: 2px;
        content: ""; }
    .c-sp-header-service__close {
      position: relative;
      text-align: center;
      font-weight: bold;
      font-size: 14px;
      line-height: 50px;
      cursor: pointer; }
      .c-sp-header-service__close span {
        position: relative;
        padding-right: 24px; }
        .c-sp-header-service__close span:after {
          display: block;
          position: absolute;
          width: 11.5px;
          height: 11px;
          background: url("/common/images/ttv/header/sp/icon-x.png") no-repeat left top;
          background-size: 11.5px 11px;
          top: 50%;
          margin-top: -5.75px;
          right: 2px;
          content: ""; }
  .c-sp-header-login {
    display: none;
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 99;
    background: #000000;
    padding: 20px 20px 5px 20px;
    box-sizing: border-box; }
    .c-sp-header-login:before {
      display: block;
      position: absolute;
      width: 27px;
      height: 4px;
      background: url("/common/images/ttv/header/sp/icon_login_tri.png") no-repeat left top;
      background-size: 8px 4px;
      top: -4px;
      right: 0px;
      content: ""; }
    .is-login .c-sp-header-login {
      display: block; }
    .is-login .c-sp-header-login:before {
      right: 5px; }
    .c-sp-header-login__row {
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      margin-bottom: 8px; }
    .c-sp-header-login__col {
      position: relative;
      width: 100%;
      box-sizing: border-box;
      margin-bottom: 10px; }
      .c-sp-header-login__col--w50 {
        width: 50%; }
      .c-sp-header-login__col--l {
        padding-right: 5px; }
      .c-sp-header-login__col--r {
        padding-left: 5px; }
    .c-sp-header-login__button {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: relative;
      border-radius: 4px;
      height: 40px;
      text-decoration: none;
      color: #000000;
      background-color: #ffffff;
      font-size: 13px;
      box-sizing: border-box; }
      .c-sp-header-login__button--yellow {
        background-color: #fc0; }
      .c-sp-header-login__button--barw:after {
        display: block;
        position: absolute;
        width: 8px;
        height: 13px;
        background: url("/common/images/ttv/header/sp/arrow_black_m.png") no-repeat left top;
        background-size: 8px 13px;
        top: 50%;
        margin-top: -6.5px;
        right: 10px;
        content: ""; }
      .c-sp-header-login__button--primium {
        background-color: #003c94;
        color: #ffffff;
        height: 42.420px;
        display: block;
        text-align: center; }
        .c-sp-header-login__button--primium img {
          margin-right: 4px;
          vertical-align: sub; }
      .c-sp-header-login__button--border {
        border: solid 1px #4c4c4c;
        background: none;
        color: #ffffff; }
        .c-sp-header-login__button--border:after {
          display: block;
          position: absolute;
          width: 8px;
          height: 13px;
          background: #000000 url("/common/images/ttv/header/sp/arrow_white_m.png") no-repeat left top;
          background-size: 8px 13px;
          top: 50%;
          margin-top: -6.5px;
          right: 10px;
          content: ""; }
      .c-sp-header-login__button--logout {
        border: solid 1px #4c4c4c;
        background: none;
        color: #ffffff; }
        .c-sp-header-login__button--logout:after {
          display: block;
          position: absolute;
          width: 16px;
          height: 11px;
          right: 6px;
          background: #000000 url("/common/images/ttv/header/sp/sp_icon_header_outer.png") no-repeat left top;
          background-size: cover;
          top: 50%;
          margin-top: -6px;
          content: ""; }
    .c-sp-header-login__heading {
      font-weight: bold;
      position: relative;
      color: #ffcc00;
      font-size: 13px;
      margin-bottom: 18px;
      width: 100%; }
    .c-sp-header-login__link {
      display: block;
      position: relative;
      margin-bottom: 12px;
      padding: 0 20px 10px 0;
      border-bottom: solid 1px #4c4c4c;
      box-sizing: border-box;
      width: 100%;
      color: #ffffff;
      font-size: 13px;
      line-height: 1;
      font-weight: normal; }
      .c-sp-header-login__link:before {
        display: block;
        position: absolute;
        width: 8px;
        height: 13px;
        background: url("/common/images/ttv/header/sp/arrow_white_m.png") no-repeat left top;
        background-size: 8px 13px;
        top: 50%;
        margin-top: -14px;
        right: 0px;
        content: ""; }
    .c-sp-header-login__point {
      position: relative;
      color: #ffffff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 10px; }
      .c-sp-header-login__point-title {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        font-size: 12px;
        line-height: 14px;
        color: #999; }
      .c-sp-header-login__point-number {
        font-size: 24px;
        margin-right: 27px; }
        .c-sp-header-login__point-number span {
          font-size: 12px;
          padding-left: 2px; }
      .c-sp-header-login__point-button {
        width: 148px; }
        .c-sp-header-login__point-button .c-sp-header-login__button {
          text-align: center;
          line-height: 14px;
          font-size: 11px; }
    .c-sp-header-login__sheet {
      position: relative;
      color: #ffffff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 100%;
      margin-bottom: 11px;
      margin-top: -8px; }
      .c-sp-header-login__sheet-title {
        color: #999;
        font-size: 13px; }
      .c-sp-header-login__sheet-number {
        font-size: 24px;
        line-height: 24px; }
        .c-sp-header-login__sheet-number span {
          font-size: 13px;
          padding-left: 5px; }
  .c-sp-header-search {
    height: 35px;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    box-sizing: border-box;
    padding-left: 6px;
    padding-right: 6px;
    margin-top: 6px; }
    .c-sp-header-search input {
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      outline: 0;
      border: none; }
      .c-sp-header-search input::-moz-focus-inner {
        border: 0; }
    .c-sp-header-search__keyword {
      box-sizing: border-box;
      height: 27px;
      font-size: 14px;
      padding: 3px 5px 3px 10px;
      box-sizing: border-box;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      border-radius: 4px; }
    .c-sp-header-search__button {
      width: 27px;
      height: 27px;
      cursor: pointer;
      background: url("/common/images/ttv/header/sp/sp_btn_header_search.png") no-repeat center center;
      background-size: 16px 16px; }
  .c-sp-header-premium {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 80%;
    box-sizing: border-box;
    border-top: solid 1px #333;
    border-right: solid 1px #333;
    color: #ffffff;
    text-align: center;
    line-height: 32px; }
    .c-sp-header-premium img {
      position: relative;
      height: 19px;
      top: -2px; }
    .c-sp-header-premium span {
      font-size: 11px;
      position: relative;
      bottom: -2px; }
  .c-sp-header-r18 {
    position: relative;
    display: block;
    width: 20%;
    box-sizing: border-box;
    border-top: solid 1px #333;
    color: #ffffff;
    height: 32px;
    line-height: 32px;
    text-align: center;
    font-weight: bold;
    font-size: 12px; }
.c-pc-header-nav-link {
  display: block;
  padding-right: 18px;
  line-height: 26px;
  margin-left: 14px;
  margin-right: 14px;
  padding-top: 1px;
  color: #ffffff;
}
