@charset "UTF-8";
/* ---------------------------------------
  下層共通
--------------------------------------- */
#sound_info,
.sound {
  display: none; }

h1, .bg_contents {
  opacity: 0; }

#contents section {
  padding: 0 30px 100px;
  position: relative;
  z-index: 1; }
  #contents section .logo_title {
    padding: 20px 0;
    width: 160px; }
  #contents section h1 {
    margin: 0 0 50px;
    text-align: center; }

.bg_white {
  background: url("../images/shared/bg_head_sp.png") no-repeat center 0, url("../images/shared/bg_bottom_sp.png") no-repeat center bottom rgba(255, 255, 255, 0.9);
  border-radius: 12px;
  min-height: 750px;
  padding: 90px 30px 80px; }

footer {
  position: relative;
  z-index: 1; }

/* ---------------------------------------
  NEWS
--------------------------------------- */
#news .category_navi ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0 0 60px;
  text-align: center; }
#news .category_navi li {
  background: #fff;
  border: 2px solid #b32c27;
  font-weight: bold;
  margin: 0 -1px;
  width: 210px; }
  #news .category_navi li:nth-child(1), #news .category_navi li:nth-child(4) {
    border-radius: 30px 0 0 30px; }
  #news .category_navi li:nth-child(3), #news .category_navi li:nth-child(5) {
    border-radius: 0 30px 30px 0; }
  #news .category_navi li:nth-last-child(-n+2) {
    margin: 20px -1px 0; }
  #news .category_navi li a {
    color: #b32c27;
    display: block;
    padding: 10px 0; }
  #news .category_navi li.current, #news .category_navi li:hover {
    background: #b32c27; }
    #news .category_navi li.current a, #news .category_navi li:hover a {
      color: #fff; }
  #news .category_navi li.current-cat {
    background: #b32c27; }
    #news .category_navi li.current-cat a {
      color: #fff; }
#news .article_list a {
  color: #000; }
#news .article_list li:not(:last-child) {
  border-bottom: 1px solid #adadad; }
#news .article_list li:last-child {
  border-bottom: 1px solid #adadad;
  padding: 0 0 20px; }
#news .article_list h2 {
  font-size: 2.4rem;
  font-weight: normal; }
#news .btn_more {
  margin: 60px auto 0;
  height: 114px;
  width: 338px; }
#news article {
  color: #000; }
#news .article_inner iframe {
  max-width: 100%; }
#news .article_inner p {
  padding: 0 0 20px; }
#news .article_inner a {
  color: #44aaff; }
#news .article_inner h2 {
  border-bottom: 1px solid #adadad;
  clear: both;
  font-size: 3.6rem;
  font-weight: bold;
  margin: 0 0 40px;
  padding: 20px 0; }
#news .article_inner .date {
  float: left;
  font-weight: bold;
  padding: 32px 0 0; }
  #news .article_inner .date span {
    background: #b32c27;
    border-radius: 50px;
    color: #fff;
    display: inline-block;
    font-size: 1.8rem;
    font-weight: normal;
    margin: 0 0 0 20px;
    text-align: center;
    width: 140px; }
#news .article_inner .sns {
  float: right; }
  #news .article_inner .sns li {
    display: inline-block;
    height: 106px;
    margin: 0 0 0 20px;
    width: 106px; }
#news .btn_list {
  display: flex;
  justify-content: space-between;
  padding: 40px 0 0; }
  #news .btn_list .prev, #news .btn_list .next {
    height: 110px;
    width: 118px; }
  #news .btn_list .list {
    height: 114px;
    margin: 0 40px;
    width: 338px; }

/* ---------------------------------------
  STORY
--------------------------------------- */
#story .bg_contents {
  background: url("../images/shared/bg_head_sp.png") no-repeat center 0, url("../images/shared/bg_bottom_sp.png") no-repeat center bottom, url("../images/story/bg_story_sp.png") no-repeat 0 0;
  border-radius: 12px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  padding: 80px 30px 40px; }
  #story .bg_contents > p {
    color: #fff;
    font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
    line-height: 2;
    letter-spacing: 1px;
    padding: 0 0 38px;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.4); }
    #story .bg_contents > p span {
      letter-spacing: 0; }

/* ---------------------------------------
  CHARACTER
--------------------------------------- */
#character .sub_navi {
  margin: 0 0 30px; }
  #character .sub_navi .slick-track {
    transform: none !important;
    display: flex;
    flex-wrap: wrap; }
  #character .sub_navi .slick-slide {
    margin: 0 2px 20px;
    width: 24% !important; }
    #character .sub_navi .slick-slide:last-child {
      width: 50% !important; }
    #character .sub_navi .slick-slide > div {
      text-indent: -9999px; }
    #character .sub_navi .slick-slide .chara {
      cursor: pointer;
      height: 174px;
      display: block !important;
      opacity: 0;
      transition: opacity .3s ease; }
      #character .sub_navi .slick-slide .chara:hover {
        opacity: 1; }
    #character .sub_navi .slick-slide.slick-current .chara {
      opacity: 1; }
  #character .sub_navi .slick-slide:nth-child(1) > div {
    background: url("../images/character/icon_chara_01_d.png") no-repeat 0 0/cover; }
  #character .sub_navi .chara_01 {
    background: url("../images/character/icon_chara_01_on.png") no-repeat 0 0/cover; }
  #character .sub_navi .slick-slide:nth-child(2) > div {
    background: url("../images/character/icon_chara_02_d.png") no-repeat 0 0/cover; }
  #character .sub_navi .chara_02 {
    background: url("../images/character/icon_chara_02_on.png") no-repeat 0 0/cover; }
  #character .sub_navi .slick-slide:nth-child(3) > div {
    background: url("../images/character/icon_chara_03_d.png") no-repeat 0 0/cover; }
  #character .sub_navi .chara_03 {
    background: url("../images/character/icon_chara_03_on.png") no-repeat 0 0/cover; }
  #character .sub_navi .slick-slide:nth-child(4) > div {
    background: url("../images/character/icon_chara_04_d.png") no-repeat 0 0/cover; }
  #character .sub_navi .chara_04 {
    background: url("../images/character/icon_chara_04_on.png") no-repeat 0 0/cover; }
  #character .sub_navi .slick-slide:nth-child(5) > div {
    background: url("../images/character/icon_chara_05_d.png") no-repeat 0 0/cover; }
  #character .sub_navi .chara_05 {
    background: url("../images/character/icon_chara_05_on.png") no-repeat 0 0/cover; }
  #character .sub_navi .slick-slide:nth-child(6) > div {
    background: url("../images/character/icon_chara_06_d.png") no-repeat 0 0/cover; }
  #character .sub_navi .chara_06 {
    background: url("../images/character/icon_chara_06_on.png") no-repeat 0 0/cover; }
#character .chara_list {
  margin: 0 -30px; }
  #character .chara_list .slick-slide {
    overflow: hidden; }
  #character .chara_list .slick-prev,
  #character .chara_list .slick-next {
    background: rgba(0, 0, 0, 0);
    position: absolute;
    top: 680px;
    z-index: 10;
    height: 110px;
    text-indent: -9999px;
    width: 118px; }
    #character .chara_list .slick-prev::before, #character .chara_list .slick-prev::after,
    #character .chara_list .slick-next::before,
    #character .chara_list .slick-next::after {
      content: '';
      display: block;
      transition: all .3s ease;
      position: absolute;
      top: 0;
      left: 0;
      height: 110px;
      width: 118px;
      z-index: 2; }
    #character .chara_list .slick-prev::before,
    #character .chara_list .slick-next::before {
      opacity: 1; }
    #character .chara_list .slick-prev::after,
    #character .chara_list .slick-next::after {
      opacity: 0; }
    #character .chara_list .slick-prev:hover::before,
    #character .chara_list .slick-next:hover::before {
      opacity: 0; }
    #character .chara_list .slick-prev:hover::after,
    #character .chara_list .slick-next:hover::after {
      opacity: 1; }
  #character .chara_list .slick-prev {
    left: 10px; }
    #character .chara_list .slick-prev::before {
      background: url("../images/shared/btn_prev_d.png") no-repeat 0 0/cover; }
    #character .chara_list .slick-prev::after {
      background: url("../images/shared/btn_prev_on.png") no-repeat 0 0/cover; }
  #character .chara_list .slick-next {
    right: 10px; }
    #character .chara_list .slick-next::before {
      background: url("../images/shared/btn_next_d.png") no-repeat 0 0/cover; }
    #character .chara_list .slick-next::after {
      background: url("../images/shared/btn_next_on.png") no-repeat 0 0/cover; }
  #character .chara_list .chara_detail {
    position: relative; }
  #character .chara_list h3 {
    position: absolute;
    right: 62px;
    top: 18px; }
  #character .chara_list .text_area {
    background: url("../images/shared/bg_head_sp.png") no-repeat center 0, url("../images/shared/bg_bottom_sp.png") no-repeat center bottom rgba(255, 255, 255, 0.8);
    border-radius: 12px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    margin: 854px 30px 0;
    padding: 90px 30px 80px;
    position: relative; }
  #character .chara_list h4 {
    height: 82px; }
  #character .chara_list .cv {
    font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
    font-size: 2.8rem;
    font-weight: bold;
    padding: 20px 20px 20px 0; }
  #character .chara_list .btn_voice {
    float: left;
    margin: 20px 0; }
  #character .chara_list .text {
    clear: both; }
  #character .chara_list .bg_gif {
    position: absolute;
    top: -120px;
    right: 0;
    height: 314px;
    text-align: center;
    width: 330px; }
    #character .chara_list .bg_gif::after {
      background: url("../images/character/dot_bg_frame.png") no-repeat center 0;
      content: '';
      height: 314px;
      width: 330px;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 5; }
    #character .chara_list .bg_gif .mask {
      background: #000;
      border-radius: 50%;
      height: 260px;
      overflow: hidden;
      position: relative;
      width: 260px;
      top: 38px;
      margin: 0 auto; }
    #character .chara_list .bg_gif img {
      height: 330px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: scale(1.6) translate(-30%, -32%);
      width: 314px;
      max-width: inherit; }
  #character .chara_list .chara_img {
    position: absolute;
    top: 0; }
  #character .chara_list .chara_01 .chara_img {
    left: -95px;
    width: 738px; }
  #character .chara_list .chara_02 .chara_img {
    top: -13px;
    left: -405px;
    width: 1596px; }
  #character .chara_list .chara_03 .chara_img {
    top: 69px;
    left: 43px;
    width: 486px; }
  #character .chara_list .chara_04 .chara_img {
    top: 37px;
    left: -182px;
    width: 722px; }
  #character .chara_list .chara_05 .chara_img {
    left: 53px;
    width: 532px; }
  #character .chara_list .chara_06 h3 {
    right: 36px;
    top: 0; }
  #character .chara_list .chara_06 .chara_img {
    position: unset; }
    #character .chara_list .chara_06 .chara_img img {
      margin: auto; }
  #character .chara_list .chara_06 .bg_gif {
    top: inherit;
    bottom: 0;
    left: 20px; }
  #character .chara_list .chara_unit {
    position: relative; }
    #character .chara_list .chara_unit:not(:last-child) {
      margin: 0 0 40px; }
    #character .chara_list .chara_unit:nth-child(even) h3 {
      right: inherit;
      left: 60px; }
    #character .chara_list .chara_unit:nth-child(even) .bg_gif {
      right: 20px;
      left: inherit; }
  #character .chara_list .chara0601 .bg_gif {
    bottom: 50px; }

/* ---------------------------------------
  SYSTEM
--------------------------------------- */
#system .sub_navi li {
  height: 120px;
  display: inline-block;
  text-indent: -9999px;
  width: 320px; }
  #system .sub_navi li a {
    display: block;
    height: 120px;
    width: 320px; }
#system .sub_navi .navi_battle {
  background: url("../images/system/bg_btn_system_01_d.png") no-repeat 0 0/cover; }
  #system .sub_navi .navi_battle a {
    background: url("../images/system/bg_btn_system_01_on.png") no-repeat 0 0/cover;
    opacity: 0; }
#system .sub_navi .navi_battle02 {
  background: url("../images/system/bg_btn_system_0102_d.png") no-repeat 0 0/cover; }
  #system .sub_navi .navi_battle02 a {
    background: url("../images/system/bg_btn_system_0102_on.png") no-repeat 0 0/cover;
    opacity: 0; }
#system .sub_navi .navi_unit {
  background: url("../images/system/bg_btn_system_02_d.png") no-repeat 0 0/cover; }
  #system .sub_navi .navi_unit a {
    background: url("../images/system/bg_btn_system_02_on.png") no-repeat 0 0/cover;
    opacity: 0; }
#system .sub_navi .navi_ark {
  background: url("../images/system/bg_btn_system_03_d.png") no-repeat 0 0/cover; }
  #system .sub_navi .navi_ark a {
    background: url("../images/system/bg_btn_system_03_on.png") no-repeat 0 0/cover;
    opacity: 0; }
#system .sub_navi .navi_quest {
  background: url("../images/system/bg_btn_system_04_d.png") no-repeat 0 0/cover; }
  #system .sub_navi .navi_quest a {
    background: url("../images/system/bg_btn_system_04_on.png") no-repeat 0 0/cover;
    opacity: 0; }
#system .sub_navi .navi_arena {
  background: url("../images/system/bg_btn_system_05_d.png") no-repeat 0 0/cover; }
  #system .sub_navi .navi_arena a {
    background: url("../images/system/bg_btn_system_05_on.png") no-repeat 0 0/cover;
    opacity: 0; }
#system .sub_navi.system .navi_battle {
  background-image: url("../images/system/bg_btn_system_01_on.png"); }
#system .sub_navi.battle02 .navi_battle02 {
  background-image: url("../images/system/bg_btn_system_0102_on.png"); }
#system .sub_navi.unit .navi_unit {
  background-image: url("../images/system/bg_btn_system_02_on.png"); }
#system .sub_navi.ark .navi_ark {
  background-image: url("../images/system/bg_btn_system_03_on.png"); }
#system .sub_navi.quest .navi_quest {
  background-image: url("../images/system/bg_btn_system_04_on.png"); }
#system .sub_navi.arena .navi_arena {
  background-image: url("../images/system/bg_btn_system_05_on.png"); }
#system h2 {
  background: url("../images/system/h2_sp.png") no-repeat 0 0;
  color: #fff;
  font-size: 5.6rem;
  font-weight: bold;
  font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
  margin: 0 -30px 30px;
  padding: 70px 0;
  line-height: 1;
  text-align: center; }
#system .movie {
  background: url("../images/top/bg_video.png") no-repeat 0 0;
  height: 652px;
  padding: 32px 0 0 17px;
  position: relative;
  width: 366px; }
#system .illust {
  position: absolute;
  bottom: 90px;
  right: 10px; }
#system .block {
  background: url("../images/system/01battle_bg_01.png") no-repeat center bottom 40px;
  margin: 0 -30px 80px;
  overflow: hidden;
  padding: 0 30px;
  position: relative; }
  #system .block:nth-child(3) .movie, #system .block:nth-child(5) .movie {
    float: right; }
  #system .block:nth-child(3) .illust, #system .block:nth-child(5) .illust {
    right: auto;
    left: 10px; }
  #system .block h3 {
    background: url("../images/shared/h3_sp.png") no-repeat 0 0;
    color: #fff;
    font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    padding: 30px 0; }
    #system .block h3.line_2 {
      background: url("../images/shared/h3_line2_sp.png") no-repeat 0 0;
      padding: 32px 0; }
  #system .block p {
    font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
    padding: 15px 0; }
#system .battle .block_01 {
  background-image: url("../images/system/01battle_bg_01.png"); }
#system .battle .block_02 {
  background-image: url("../images/system/01battle_bg_02.png"); }
#system .battle .block_03 {
  background-image: url("../images/system/01battle_bg_03.png"); }
#system .battle .block_04 {
  background-image: url("../images/system/01battle_bg_04.png"); }
#system .unit .block_01 {
  background-image: url("../images/system/02unit_bg_01.png"); }
#system .ark .block_01 {
  background-image: url("../images/system/03arc_bg_01.png"); }
#system .quest .block_01 {
  background-image: url("../images/system/04quest_bg_01.png"); }

/* ---------------------------------------
  SPECIAL
--------------------------------------- */
#special h3 {
  background: url("../images/shared/h3_sp.png") no-repeat 0 0;
  color: #fff;
  font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 0 0 30px;
  text-align: center;
  padding: 30px 0; }
  #special h3.line_2 {
    background: url("../images/shared/h3_line2_sp.png") no-repeat 0 0;
    padding: 32px 0; }
#special .pv_area {
  padding: 0 0 30px; }
#special .pv_list a {
  color: #000; }
#special .pv_list li {
  margin: 0 0 30px;
  text-align: center; }
  #special .pv_list li a {
    display: block;
    position: relative; }
    #special .pv_list li a::after {
      background: url("../images/shared/btn_pv_d.png") no-repeat center center/cover;
      content: '';
      position: absolute;
      left: 50%;
      top: 45%;
      width: 138px;
      height: 138px;
      transform: translate(-50%, -50%);
      z-index: 2; }
  #special .pv_list li p {
    font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
    font-size: 3.2rem;
    font-weight: bold; }
#special .icon_area {
  padding: 0 0 60px; }
  #special .icon_area .icon_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 20px; }
    #special .icon_area .icon_list li {
      margin: 0 3px 6px;
      width: 194px; }
#special .icon_header_area .header_list {
  text-align: center; }
  #special .icon_header_area .header_list li {
    margin: 0 0 30px; }

/* ---------------------------------------
  NOT FOUND
--------------------------------------- */
#notfound {
  background-image: -moz-linear-gradient(180deg, #031e33 0%, #022e4b 50%, #031e33 100%);
  background-image: -webkit-linear-gradient(180deg, #031e33 0%, #022e4b 50%, #031e33 100%);
  background-image: -ms-linear-gradient(180deg, #031e33 0%, #022e4b 50%, #031e33 100%); }
  #notfound h1 {
    color: #fff;
    font-family: "Noto Serif JP","游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
    font-size: 5rem;
    font-weight: bold;
    letter-spacing: 2px;
    text-align: center; }
  #notfound h2 {
    color: #fff;
    font-size: 3.2rem;
    padding: 0 0 30px; }
  #notfound #contents p {
    color: #fff; }
    #notfound #contents p a {
      color: #44aaff; }

@media print, screen and (min-width: 769px) {
  /* ---------------------------------------
    PC 下層共通
  --------------------------------------- */
  #contents section {
    padding: 122px 0 70px; }
    #contents section .logo_title {
      display: none; }
    #contents section h1 {
      margin: 0 auto;
      padding: 0 0 70px; }

  .bg_white_wrapper {
    padding: 31px 0; }

  .bg_white {
    background: rgba(255, 255, 255, 0.86);
    border-radius: 0;
    padding: 40px 30px;
    margin: 0 auto;
    width: 1000px;
    min-height: 500px;
    position: relative; }
    .bg_white::before {
      background: url("../images/shared/bg_head.png") no-repeat center 0/100% 31px;
      content: '';
      position: absolute;
      top: -31px;
      left: 0;
      height: 31px;
      width: 100%; }
    .bg_white::after {
      background: url("../images/shared/bg_bottom.png") no-repeat center 0/100% 31px;
      content: '';
      position: absolute;
      bottom: -31px;
      left: 0;
      height: 31px;
      width: 100%; }

  /* ---------------------------------------
    PC NEWS
  --------------------------------------- */
  #news #contents section h1 {
    width: 332px; }
  #news .category_navi ul {
    flex-wrap: nowrap;
    padding: 0 0 30px; }
  #news .category_navi li {
    border: 1px solid #b32c27;
    margin: 0 -1px;
    transition: background-color .3s ease;
    width: 150px; }
    #news .category_navi li:nth-child(3), #news .category_navi li:nth-child(4) {
      border-radius: 0; }
    #news .category_navi li:nth-last-child(-n+2) {
      margin: 0 -1px; }
    #news .category_navi li a {
      padding: 4px 0;
      transition: color .3s ease; }
  #news .article_list li:not(:last-child) {
    margin: 0 0 15px;
    padding: 0 0 15px; }
  #news .article_list li:last-child {
    padding: 0 0 15px; }
  #news .article_list li a {
    display: block;
    overflow: hidden; }
  #news .article_list h2 {
    float: left;
    font-size: 1.4rem;
    margin: 0 0 0 20px;
    width: 700px; }
  #news .article_list .date {
    float: left;
    margin: 0; }
  #news .btn_more {
    margin: 40px auto 0;
    height: 57px;
    width: 168px; }
  #news .article_inner {
    margin: 0 auto;
    padding: 0 10px;
    max-width: 770px; }
    #news .article_inner h2 {
      font-size: 2.8rem;
      margin: 0 0 30px; }
    #news .article_inner .date {
      padding: 20px 0 0; }
      #news .article_inner .date span {
        border-radius: 50px;
        font-size: 1.2rem;
        width: 100px; }
    #news .article_inner .sns li {
      height: 58px;
      margin: 0 0 0 14px;
      width: 58px; }
  #news .btn_list {
    justify-content: center; }
    #news .btn_list .prev, #news .btn_list .next {
      height: 55px;
      width: 59px; }
    #news .btn_list .list {
      height: 55px;
      margin: 0 40px;
      width: 168px; }

  /* ---------------------------------------
    PC STORY
  --------------------------------------- */
  #story #contents section h1 {
    width: 360px; }
  #story .bg_contents {
    background: url("../images/story/bg_story.png") no-repeat center 0;
    border-radius: 0;
    box-shadow: none;
    height: 538px;
    letter-spacing: 2px;
    padding: 80px 0 30px;
    text-align: center; }
    #story .bg_contents > p {
      font-size: 1.6rem;
      line-height: 2;
      padding: 0 0 36px; }
    #story .bg_contents .padding_0 {
      padding: 0; }

  /* ---------------------------------------
    PC CHARACTER
  --------------------------------------- */
  #character #contents section {
    padding: 122px 10px 50px; }
    #character #contents section h1 {
      width: 480px; }
  #character .sub_navi {
    margin: 0 0 56px; }
    #character .sub_navi .slick-list {
      margin: auto;
      width: 930px; }
    #character .sub_navi .slick-slide {
      margin: 0 5px;
      width: 124px !important; }
      #character .sub_navi .slick-slide:last-child {
        width: 248px !important; }
      #character .sub_navi .slick-slide .chara {
        height: 124px; }
  #character .chara_list {
    margin: 0 -10px; }
    #character .chara_list .slick-prev,
    #character .chara_list .slick-next {
      background-size: cover;
      top: 48%;
      height: 55px;
      width: 59px; }
      #character .chara_list .slick-prev::before, #character .chara_list .slick-prev::after,
      #character .chara_list .slick-next::before,
      #character .chara_list .slick-next::after {
        height: 55px;
        width: 59px; }
    #character .chara_list .slick-prev {
      left: 50px; }
    #character .chara_list .slick-next {
      right: 50px; }
    #character .chara_list h3 {
      right: inherit;
      left: 50%;
      margin: 0 0 0 281px;
      top: 9px;
      width: 130px; }
    #character .chara_list .text_area {
      background-size: contain;
      border-radius: 5px;
      margin: 0 0 0 -410px;
      max-width: 340px;
      position: absolute;
      top: 204px;
      left: 50%;
      padding: 100px 20px 50px; }
    #character .chara_list h4 {
      height: 56px; }
    #character .chara_list .cv {
      font-size: 1.9rem;
      padding: 10px 20px 20px 0; }
    #character .chara_list .btn_voice {
      height: 53px;
      width: 154px; }
    #character .chara_list .text {
      clear: both; }
    #character .chara_list .bg_gif {
      height: 231px;
      left: 0;
      right: 0;
      top: -140px;
      margin: auto;
      width: 220px; }
      #character .chara_list .bg_gif::after {
        background-size: contain;
        height: 231px;
        width: 220px; }
      #character .chara_list .bg_gif .mask {
        height: 180px;
        width: 182px;
        top: 26px; }
      #character .chara_list .bg_gif img {
        transform: translate(-50%, -50%); }
    #character .chara_list .chara_detail {
      height: 890px; }
      #character .chara_list .chara_detail .chara_img {
        top: 0;
        left: 50%; }
    #character .chara_list .chara_01 .chara_img {
      margin: 0 0 0 -136px;
      width: 492px; }
    #character .chara_list .chara_01 h4 {
      width: 160px; }
    #character .chara_list .chara_02 .chara_img {
      top: 3px;
      margin: 0 0 0 -386px;
      width: 1060px; }
    #character .chara_list .chara_02 h4 {
      width: 85px; }
    #character .chara_list .chara_03 .chara_img {
      top: 68px;
      margin: 0 0 0 -38px;
      width: 321px; }
    #character .chara_list .chara_03 h4 {
      width: 194px; }
    #character .chara_list .chara_04 .chara_img {
      top: 0;
      margin: 0 0 0 -207px;
      width: 478px; }
    #character .chara_list .chara_04 h4 {
      width: 237px; }
    #character .chara_list .chara_05 .chara_img {
      top: 13px;
      margin: 0 0 0 -33px;
      width: 352px; }
    #character .chara_list .chara_05 h4 {
      width: 156px; }
    #character .chara_list .chara_06 {
      display: block !important;
      height: auto;
      margin: auto;
      overflow: hidden;
      width: 960px !important; }
      #character .chara_list .chara_06 h3 {
        right: 20px;
        left: inherit;
        margin: 0;
        width: 96px; }
      #character .chara_list .chara_06 .chara_img {
        float: right;
        margin: 0 20px 0 0;
        left: 0;
        position: relative;
        width: 430px; }
      #character .chara_list .chara_06 .bg_gif {
        left: 0;
        margin: 0; }
      #character .chara_list .chara_06 .chara_unit {
        float: left;
        width: 480px; }
        #character .chara_list .chara_06 .chara_unit:not(:last-child) {
          margin: 0 0 40px; }
        #character .chara_list .chara_06 .chara_unit:nth-child(even) {
          float: right; }
          #character .chara_list .chara_06 .chara_unit:nth-child(even) h3 {
            left: 20px; }
          #character .chara_list .chara_06 .chara_unit:nth-child(even) .chara_img {
            float: left;
            margin: 0 0 0 20px; }
          #character .chara_list .chara_06 .chara_unit:nth-child(even) .bg_gif {
            right: 0; }
      #character .chara_list .chara_06 .chara0601 .bg_gif {
        bottom: 0; }

  /* ---------------------------------------
    PC SYSTEM
  --------------------------------------- */
  #system #contents section h1 {
    padding: 0 0 50px;
    width: 482px; }
  #system h2 {
    background: url("../images/system/bg_h2.png") repeat-x center 0;
    font-size: 4rem;
    margin: 0 0 30px;
    padding: 40px 0 44px; }
  #system .sub_navi {
    text-align: center; }
    #system .sub_navi li {
      height: 56px;
      width: 164px; }
      #system .sub_navi li a {
        height: 56px;
        transition: opacity .3s ease;
        width: 164px; }
      #system .sub_navi li:hover a {
        opacity: 1; }
  #system .movie {
    background-size: contain;
    height: 532px;
    margin: 15px 0 0 124px;
    padding: 27px 16px 0 14px;
    width: 294px; }
  #system .illust {
    bottom: 46px;
    right: 142px; }
  #system .block {
    background-position: center bottom;
    margin: 0 -30px 30px;
    padding: 0 30px 10px; }
    #system .block:nth-child(3) .movie, #system .block:nth-child(5) .movie {
      margin: 10px 124px 0 0; }
    #system .block:nth-child(3) .illust, #system .block:nth-child(5) .illust {
      left: 142px; }
    #system .block h3,
    #system .block h3.line_2 {
      background: url("../images/shared/h3.png") no-repeat center 0;
      font-size: 2.4rem;
      letter-spacing: 2px;
      padding: 22px 0 26px; }
    #system .block p {
      text-align: center; }

  /* ---------------------------------------
    PC SPECIAL
  --------------------------------------- */
  #special #contents section h1 {
    width: 482px; }
  #special h3,
  #special h3.line_2 {
    background: url("../images/shared/h3.png") no-repeat center 0;
    font-size: 2.4rem;
    letter-spacing: 2px;
    margin: 0 0 15px;
    padding: 22px 0 26px; }
  #special .pv_list {
    overflow: hidden; }
    #special .pv_list li {
      float: left;
      width: 464px; }
      #special .pv_list li:nth-child(even) {
        float: right; }
      #special .pv_list li p {
        font-size: 2.2rem; }
      #special .pv_list li a::after {
        width: 100px;
        height: 100px;
        transition: all .3s ease; }
      #special .pv_list li a:hover::after {
        background-image: url("../images/shared/btn_pv_on.png"); }
  #special .icon_area {
    padding: 0 0 40px; }
    #special .icon_area .icon_list {
      margin: auto;
      padding: 0;
      width: 940px; }
      #special .icon_area .icon_list li {
        margin: 0 3px 10px;
        width: 180px; }
  #special .icon_header_area .header_list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; }
    #special .icon_header_area .header_list li {
      margin: 0;
      width: 466px; }

  /* ---------------------------------------
    NOT FOUND
  --------------------------------------- */
  #notfound h1 {
    font-size: 3.6rem; }
  #notfound h2 {
    font-size: 2.4rem; }
  #notfound .bg_contents {
    margin: auto;
    width: 750px; } }

/*# sourceMappingURL=layout.css.map */
