@charset "UTF-8";

/* common_setting 共通
-------------------------------------------------------------*/
.content_wrapper {
  width: 990px;
  padding: 15px 0 1px;
  margin: 0 auto;
  background: #fff;
  text-align: center;
}
.pc_contents {
  float: right;
  width: 770px;
  background: #fff100;
}
.pc_contents * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.pc_contents ul,
.pc_contents ol {
  list-style: none;
}

/* common
-------------------------------------------------------------*/
.font_red {
  color: #d00;
}
.pos_r {
  position: relative;
}
.pos_a {
  position: absolute;
}
span.arrow {
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 2px 0 10px;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #2763AC;
}
.indent_1em {
  padding-left: 1em;
  text-indent: -1em;
}
.inlineblock {
  display: inline-block;
}
.underline {
  text-decoration: underline;
}

/* header
-------------------------------------------------------------*/
.topbanner {
  margin-bottom: 7px;
}

/* menu
-------------------------------------------------------------*/
.menuB {
  width: 750px;
  margin: 0 auto;
}
.menuB a {
  display: block;
}
.menuB img {
  width: 100%;
}
.menuA {
  display: table;
  table-layout: fixed;
  border-spacing: 6px 0;
  width: 740px;
  margin: 10px auto;
  text-align: center;
}
.menuB + .menuA {
  margin: 0 auto 10px;
}
.menuA li {
  display: table-cell;
  vertical-align: middle;
}
.menuA li a {
  display: block;
  height: 52px;
  line-height: 52px;
  border: 1px solid #000;
  border-radius: 6px;
  background: #fff;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 3px;
  text-decoration: none;
  position: relative;
}
.menuA li a:after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 5px;
  margin: -5px 2px 0 5px;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #000;
}
.menuA li a:hover {
  opacity: .7;
}

.loglink {
  text-align: right;
  font-size: 10px;
  margin: 0 25px 5px 0 !important;
}
.loglink a {
  font-size: 14px;
  color: #000;
  text-decoration: underline;
}

/* desc_area
-------------------------------------------------------------*/
.desc_area {
  padding: 0 4px;
  margin-bottom: 10px;
}
.desc_area p {
  font-size: 18px;
}
.desc_area span {
  display: inline-block;
}

/* menu_log
-------------------------------------------------------------*/
.menu_log {
  width: 720px;
  margin: 10px auto 4px;
  text-align: right;
}
.menu_log p {
  display: inline-block;
  font-size: 14px;
}

/* prize_section
-------------------------------------------------------------*/
.prize_section {
  padding: 0;
  margin: 0 20px 30px;
  background: #fff;
  text-align: left;
  border-radius: 15px 15px 0 0;
}
.prize_section.prizeGrand {
  background: #fff100;
  border: 2px #ff8f00 solid;
  position: relative;
}
.prizeGrand img.mark {
  position: absolute;
  top: -10px;
  left: 80px;
}
.prize_section.prizeM {
  background: #0b8ae6;
  border: 2px #0b8ae6 solid;
}
.prize_section.prizeW {
  background: #ff6e78;
  border: 2px #ff6e78 solid;
}
.prize_section.prizeTl {
  background: #ff9900;
  border: 2px #ff9900 solid;
}
.prize_section.prizeBl {
  background: #00aae6;
  border: 2px #00aae6 solid;
}
.prize_section.prizeNovel {
  background: #35d73d;
  border: 2px #35d73d solid;
}
.prize_section.prizeIsekai {
  background: #C476D0;
  border: 2px #C476D0 solid;
}
.prizetitle {
  padding: 5px 0;
  border-radius: 13px 13px 0 0;
  text-align: center;
}
.prizetitle.prizeGrand {
  border-bottom: 1px solid #FFC107;
}
.prizetitle.prizeM {
  border-bottom: 1px solid #0b8ae6;
}
.prizetitle.prizeW {
  border-bottom: 1px solid #ff6e78;
}
.prizetitle.prizeTl {
  border-bottom: 1px solid #ff9900;
}
.prizetitle.prizeBl {
  border-bottom: 1px solid #00aae6;
}
.prizetitle.prizeNovel {
  border-bottom: 1px solid #35d73d;
}
.prizetitle.prizeIsekai {
  border-bottom: 1px solid #C476D0;
}
.comicinfo_block {
  background: #fff;
}
.comicinfo_block .title {
  margin-bottom: 4px;
}
.comicinfo_block .title a {
  display: inline;
  font-size: 20px;
  line-height: 1.2;
  text-decoration: none;
  color: #2763AC;
  font-weight: bold;
  vertical-align: middle;
  text-align: left;
}
.comicinfo_block .thx_pict {
  margin: 5px 0;
  text-align: center;
}
.comicinfo_block .thx_pict a,
.titleinfo_box .pict a {
  display: inline-block;
}
.thx_comment .comtitle {
  color: #F44336;
  font-size: 16px;
}
.thx_comment p {
  font-size: 14px;
}
.thx_comment p + .comtitle {
  padding-top: 5px;
}
.pict img {
  border: 1px solid #eee;
}
.titleinfo_block .author {
  font-size: 14px;
  margin-bottom: 10px;
}
.titleinfo_block .author a {
  text-decoration: none;
}
.comicinfo_block .title a:hover,
.comicinfo_block .author a:hover {
  text-decoration: underline;
}

/* prizeGrand */
.prizeGrand .comicinfo_block {
  padding: 15px 30px;
}
.prizeGrand .thx_comment {
  width: 92%;
  margin: 0 auto;
}
.prizeGrand .titleinfo_block {
  display: table;
  width: 94%;
  margin: 12px auto 7px;
}
.prizeGrand .titleinfo_box {
  display: table-cell;
  vertical-align: top;
}
.prizeGrand .titleinfo_box.left {
  width: 205px;
}

/* 2column */
.comicinfo_block_table {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-spacing: 1px 0;
  background: #fff;
  padding: 12px 0;
}
.comicinfo_block_row {
  display: table-row;
}
.comicinfo_block_table .comicinfo_block {
  display: table-cell;
  vertical-align: top;
  padding: 0 20px;
}
.comicinfo_block_table .thx_pict img {
  width: 100%;
}
.comicinfo_block_table .titleinfo_block {
  margin-top: 10px;
}
.comicinfo_block_table 
.titleinfo_box.left {
  text-align: center;
}
.comicinfo_block_table .titleinfo_box.right {
  margin-top: 5px;
}
.titleinfo_box div.mark {
  display: inline-block;
  font-size: 14px;
  text-align: center;
  letter-spacing: -0.5px;
  height: 20px;
  line-height: 20px;
  border: 1px #E91E63 solid;
  color: #E91E63;
  padding: 0 10px;
  vertical-align: middle;
  margin: 3px 0 5px;
  background: #d00000;
  color: #fff;
  font-size: 16px;
  height: 24px;
  line-height: 24px;
}
.comicinfo_block_table .titleinfo_box.right .title a {
  font-size: 18px;
}
.prizeW .comicinfo_block_table .comicinfo_block + .comicinfo_block {
  border-left: 1px solid #ff6e78;
}
.prizeM .comicinfo_block_table .comicinfo_block + .comicinfo_block {
  border-left: 1px solid #0b8ae6;
}
.prizeBl .comicinfo_block_table .comicinfo_block + .comicinfo_block {
  border-left: 1px solid #00aae6;
}
.prizeTl .comicinfo_block_table .comicinfo_block + .comicinfo_block {
  border-left: 1px solid #ff9900;
}
.prizeNovel .comicinfo_block_table .comicinfo_block + .comicinfo_block {
  border-left: 1px solid #35d73d;
}
.prizeIsekai .comicinfo_block_table .comicinfo_block + .comicinfo_block {
  border-left: 1px solid #C476D0;
}

/* btn */
.btn_box {
  display: inline-block;
  font-feature-settings: "palt";
  vertical-align: top;
}
.btn_box a.btn {
  display: block;
  padding: 0 10px;
  height: 35px;
  line-height: 34px;
  white-space: nowrap;
  margin: 6px 5px 6px auto;
  text-align: center;
  vertical-align: middle;
  border-radius: 3px;
  letter-spacing: 1px;
  font-weight: bold;
  text-decoration: none;
  font-size: 14px;
  font-feature-settings: "palt";
}
.btn_box a.btn.typea {
  background: #FCEE42;
  border: 1px solid rgba(51,51,51,0.1);
  border-bottom: 2px solid #D8C90F;
  border-right: 1px solid #D8C90F;
  color: #5C4D31;
}
.btn_box a.btn.typeb {
  background: #FFF;
  border: 1px solid #B8A98F;
  border-bottom: 2px solid #BDB29E;
  border-right: 1px solid #BDB29E;
  color: #6E5B39;
}
.btn_box a.btn:hover {
  opacity: 0.6;
}
.tweet_box {
  display: inline-block;
  position: relative;
  font-feature-settings: "palt";
}
.tweet_box img {
  width: 25px;
  position: absolute;
  top: 11px;
  left: 3px;
}
.tweet_box a {
  display: block;
  background: #1da1f2;
  color: #fff;
  height: 35px;
  line-height: 36px;
  white-space: nowrap;
  margin: 6px auto;
  padding: 0 10px 0 32px;
  text-align: center;
  vertical-align: middle;
  border-radius: 3px;
  letter-spacing: 1px;
  font-weight: bold;
  text-decoration: none;
  font-size: 14px;
  font-feature-settings: "palt";
}
.tweet_box a:hover,
.tweet_box a:hover img {
  opacity: 0.6;
  color: #fff;
  text-decoration: none;
}
.sns_cauion {
  font-size: 12px;
  color: #d00;
}
.comicinfo_block .otherCampaignBlock {
  margin-top: 6px;
}
.comicinfo_block .otherCampaignBlock a {
  font-size: 15px;
  color: #f44336;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding-right: 10px;
}
.comicinfo_block .otherCampaignBlock a:after {
  content: "";
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  right: 0;
  width: 6px;
  height: 6px;
  margin-top: -5px;
  border-top: 2px solid #f60;
  border-right: 2px solid #f60;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

/* 例外処理 */
.title_caution {
  font-size: 10px;
}

/* introduction
-------------------------------------------------------------*/
.introduction {
  width: 724px;
  margin: 0 auto 40px;
  text-align: center;
}
.introduction img {
  width: 680px;
  height: 159px;
}
.bottom_log {
  width: 600px;
  margin: 10px auto 0;
}
.bottom_log a {
  padding-right: 15px;
  position: relative;
  background: #deedff;
  text-align: center;
  display: block;
  text-decoration: none;
  color: #2763AC;
  border: 1px #2763AC solid;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  font-size: 15px;
  height: 42px;
  line-height: 42px;
}
.bottom_log a:after {
  content: "";
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-top: 2px solid #2763AC;
  border-right: 2px solid #2763AC;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.bottom_log a:hover {
  background: #fff;
}

/* specialArea
-------------------------------------------------------------*/
.specialArea {
  margin: 0 auto 30px;
}
.specialArea .title img {
  width: 100%;
}
.specialArea .comingsoon_area {
  width: 90%;
  margin: 20px auto;
}
.specialArea .comingsoon_area img {
  width: 100%;
}

/*  specialBlock  */
.specialBlock {
  margin: 20px 0;
}
.specialBlock .subtitle {
  text-align: center;
}
.specialBlock .subtitle img {
  width: 96%;
  max-width: 458px;
}
.specialBlock .main {
  width: 730px;
  margin: auto;
  border: 2px solid #ea5505;
  border-radius: 8px;
  padding: 20px;
}
.specialBlock .main.ymb {
  background: #ccffff;
}
.specialBlock .main.special {
  background: #fff;
}
.specialBlock .thum_box img {
  max-width: 686px;
  height: auto;
}
.specialBlock .detail {
  text-align: left;
  padding: 10px 0;
}
.specialBlock .detail .datailTitle {
  font-size: 16px;
  font-weight: bold;
}
.specialBlock .detail .detailText {
  font-size: 16px;
}
.specialBlock .detail .detailText + .datailTitle {
  padding-top: 15px;
}
.marginT {
  padding-top: 15px;
}
.specialBlock .detail .top_hr {
  border-top: 1px solid #333;
  margin-top: 14px;
}
.specialBlock .detailTable {
  display: table;
  width: 100%;
  margin-bottom: 7px;
  padding-bottom: 5px;
  border-bottom: 1px dotted #333;
}
.specialBlock .detailcell {
  display: table-cell;
}
.specialBlock .detailcell.left {
  white-space: nowrap;
  width: 4em;
}


.specialArea .readmore {
  margin-top: 20px;
}
.specialArea .readmore input {
  display: none;
}
.specialArea .readmore .toggle_switch {
  display: block;
  text-align: center;
  color: #810da2;
  font-size: 34px;
  font-weight: bold;
  letter-spacing: 2px;
  cursor: pointer;
  margin-bottom: 5px;
}
.specialArea .readmore .toggle_switch:hover {
  background: #eee;
  border-radius: 4px;
}
.specialArea input#special3_toggle:not(:checked) ~ .toggle_list  {
  height: 0;
}
.specialArea input#special3_toggle:checked ~ .toggle_list  {
  height: auto;
}
.specialArea .toggle_list{
  display: block;
  padding: 0 15px;
  margin: 0;
  font-size: 12px;
  overflow: hidden;
  -webkit-transition: .4s ease;
  -moz-transition: .4s ease;
  transition: .4s ease;
}
.specialArea .readmore .toggle_list p {
  text-align: left;
  font-size: 16px;
}
.specialArea .linkBox {
  text-align: center;
}
.specialArea .linkBox a {
  display: block;
}
.specialArea .link_attention {
  color: #d00;
  font-size: 16px;
}

.specialArea .movie_box {
  margin-top: 30px;
  margin-bottom: 10px;
}
.specialBlock .campaign_end {
  text-align: center;
  margin: 10px 0 5px;
  color: #d00;
  font-weight: bold;
  font-size: 20px;
  border-top: 1px solid #d00;
  border-bottom: 1px solid #d00;
  padding-top: 2px;
}
.specialBlock .campaign_end {
  letter-spacing: 2px;
  font-size: 24px;
}
.specialBlock .campaign_end.top {
  margin: 0 0 15px;
}
.specialBlock .attention {
  font-size: 16px;
}

/* detailArea
-------------------------------------------------------------*/
.detailArea {
  width: 730px;
  margin: 0 auto 15px;
  padding: 20px;
  text-align: left;
  border: 1px solid #000;
  background: #fff;
}
.detailArea .title {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 10px;
  padding-bottom: 5px;
  border-bottom: 2px dotted #666;
}
.detailArea .datailTitle {
  font-size: 16px;
  font-weight: bold;
/*  color: #d00;*/
}
.detailArea .datailTitle:before {
/*  display: inline;*/
/*  content: "◆";*/
}
.detailArea .detailText {
  font-size: 16px;
}
.detailArea .detailText + .datailTitle {
  padding-top: 15px;
}
.detailArea .marginT {
  padding-top: 15px;
}

/* common_caution
-------------------------------------------------------------*/
.common_caution {
  width: 730px;
  margin: 0 auto 15px;
  padding: 10px;
  text-align: left;
  border: 1px solid #000;
  background: #fff;
}
.common_caution p {
  font-size: 16px;
}

/* sns btn_areas
-------------------------------------------------------------*/
.btn_areas {
  width: 750px;
  margin: 10px auto;
}

/* floatMenuArea
-------------------------------------------------------------*/
.content_wrapper .floatMenuArea {
  display: block;
  position: fixed;
  top: auto;
  bottom: 52px;
  right: 0;
  width: 100%;
  height: 1px;
  text-align: right;
  z-index: 1;
}
.content_wrapper .floatMenuBlock {
  position: relative;
  display: inline-block;
  width: auto;
}
.content_wrapper .floatMenuBlock .floatMenuTable {
  position: static !important;
  display: table;
  table-layout: fixed;
  border-spacing: 5px 0;
  width: 420px;
  margin: 0 0 auto auto;
}
.content_wrapper .floatMenuArea a {
  background: #fff;
  color: #333;
  font-feature-settings: "palt";
  font-size: 10px;
  border: 1px solid #333;
  text-decoration: none;
  display: table-cell;
  height: 53px;
  padding: 0;
  vertical-align: middle;
  text-align: center;
}
.content_wrapper .floatMenuArea a:nth-child(2n+1) {
  background: #333;
  color: #fff;
}
.content_wrapper .floatMenuArea a[style="display: none;"] + a {
  background: #fff;
  color: #333;
}
.content_wrapper .floatMenuArea a[style="display: none;"] + a:hover {
  background: #f6f6f6;
}
.content_wrapper .floatMenuArea a span {
  display: block;
}
.content_wrapper .floatMenuArea a:hover {
  background: #f6f6f6;
}
.content_wrapper .floatMenuArea a:nth-child(2n+1):hover {
  background: #585858;
}
@media screen and (min-width: 1140px) {
  .content_wrapper .floatMenuArea {
    top: 0;
    bottom: auto;
    text-align: center;
  }
  .content_wrapper .floatMenuBlock {
    width: 965px;
    margin: 0 auto;
  }
  .content_wrapper .floatMenuBlock .floatMenuTable {
    position: absolute !important;
    display: block;
    width: auto;
    margin: 0;
    top: 227px;
    right: -81px;
  }
  .content_wrapper .floatMenuArea a {
    display: block;
    width: 80px;
    height: auto;
    padding: 20px 0;
    margin-bottom: 4px;
  }
  .content_wrapper .floatMenuBlock .floatMenuTable a.single {
    padding: 27px 0;
  }
}

/* movieArea
-------------------------------------------------------------*/
.pc_contents .movieArea {
  margin-bottom: 20px;
}
.pc_contents .movieArea a {
  display: inline-block;
}

