@charset "utf-8";

body {
  background: url("../img/title_20/20_2_bg.jpg")no-repeat center top fixed;
  background-size: cover;
}

.tbsp-bg {
  position: fixed;
  z-index: -1;
}

main { background: rgba(0,0,0,0.1) url("../img/title_20/20_2_pattern_hs.png") repeat; }

main #play-after {
  top: 32px;
  bottom: auto;
}

main #play-after .gototitlelist { top:190px; }
main #play-after .gotorelatedpage { background-position:0 -160px; }
main #play-after .gotorelatedpage:hover { background-position:0 -200px; }

main .player-frame p.anotation {
  margin: 20px 0 0 0;
  padding: 0;
  font-size: 14px;
  font-family: 'Roboto',"Yu Gothic",YuGothic,"游ゴシック体",HiraKakuProN-W3,HiraKakuPro-W3,"ヒラギノ角ゴ ProN W3","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif;
  font-weight: normal;
  color: rgb(180,180,180);
  text-align: center;
}
main .player-frame p.anotation a { color:rgb(200,200,200);text-decoration: underline; }
main .player-frame p.anotation a:hover { color:rgb(254,0,0); }
main .player-frame p.anotation span.limited-open {
  display: block;
  margin: 0;
  font-size: 18px;
  color: rgb(255,255,255);
}

main > div > h2 {
  margin: 0 0 14px 0;
  padding: 0;
  font-size: 40px;
  font-family: "Yu Gothic",YuGothic,"游ゴシック体",HiraKakuProN-W3,HiraKakuPro-W3,"ヒラギノ角ゴ ProN W3","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif;
  font-weight: bold;
}

main .main-frame {
  width: 100%;
  margin: 40px auto 80px auto;
  padding: 0;
}
main .main-info {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
}
main .main-info .main-info-inner {
  position: relative;
  display: block;
  margin: 0 auto;
  padding: 0;
  width: 960px;
  height: auto;
  vertical-align: middle;
}

main .main-info h2 {
  position: relative;
  float: left;
  display: block;
  margin: 0 0 0 35px;
  padding: 0;
  width: 468px;
  height: 292px;
  background: url("../img/title_20/20_2_title.png") no-repeat 0 0;
  background-size: 936px 292px;
  text-indent: -9999px;
}
main .main-info p.name {
  position: relative;
  float: right;
  display: block;
  margin: 42px 50px 0 0;
  padding: 0;
  width: 340px;
  height: 234px;
  background: url("../img/title_20/20_2_text.png") no-repeat 0 0;
  background-size: 680px 254px;
  text-indent: -9999px;
}
main .main-info p.info-related {
  clear: both;
  position: relative;
  display: block;
  width: 820px;/*844-padding*/
  margin: 74px auto 0 auto;
  padding: 16px 12px;
  font-size: 14px;
  line-height: 1em;
  color: rgb(255,255,255);
  background: rgba(0,0,0,0.3);
  box-sizing: content-box;
}
main .main-info p.info-related:before,
main .main-info p.info-related:after {
  position: absolute;
  content: "";
  display: block;
  top: -9px;
  left: -8px;
  width: 860px;
  height: 4px;
  background: url("../img/title_12/12_text_frame.png") no-repeat 0 0;
  background-size: 860px 8px;
  opacity: 0.5;
}
main .main-info p.info-related:after { top:auto;bottom:-9px; }

main .main-info p.info-related a {
  color: rgb(255,255,255);
  text-decoration: underline;
}
main .main-info p.info-related a:hover { color:rgb(254,0,0); }

/** responsible breakpoint **/
@media (max-width: 1200px) {
  html,body { width:1200px; }
}

/** responsible breakpoint **/
@media (max-width: 640px) {
  html,body { width:auto; }

  main #play-after { top: 24px; }

  main .main-frame {
    margin: 0 0 40px 0;
    width: 100%;
  }
  main .player-frame p.anotation {
    padding: 0 12px;
    display: block;
    font-size: 13px;
    line-height: 1.4em;
  }
  main .player-frame p.anotation span.limited-open { font-size: 13px; }

  main .main-info .main-info-inner {
    width: 100%;
    height: auto;
    margin: 20px 0 0 0;
  }
  main .main-info h2 {
    float: none;
    margin: 0 auto 16px auto;
    width: 334px;
    height: 209px;
    background: url("../img/title_20/20_2_title_sp.png") no-repeat 0 0;
    background-size: 669px 209px;
  }
  main .main-info p.name {
    float: none;
    margin: 0 auto;
    width: 320px;
    height: 234px;
    background: url("../img/title_20/20_2_text_sp.png") no-repeat 0 0;
    background-size: 640px 254px;
  }
  main .main-info p.info-related {
    margin: 29px auto 0 auto;
    padding: 10px;
    width: 284px;/*304-padding*/
    font-size: 13px;
    line-height: 1.6em;
  }
  main .main-info p.info-related:before,
  main .main-info p.info-related:after {
    width: 320px;
    background-position: 0 -4px;
  }
}

/** responsible breakpoint **/
@media (max-width: 320px) {
  main .main-info h2 { margin-left: -7px; }
}