/*! (C) SEGA */
/*! 3c81732575 */
@charset "UTF-8";
body {
  font-family: "メイリオ", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif; }
  body::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    background-image: url("/resource/puyo-esports-ac/bg/main_bg.jpg");
    background-position: center top; }
    @media (max-width: 767px) {
      body::before {
        background-size: 360% auto; } }

.main-area {
  max-width: 100%; }
  .main-area .header-image {
    display: none; }
    .main-area .header-image img {
      max-width: 100%; }
  .main-area .navbar {
    background-color: #ffd622;
    margin-bottom: 0;
    height: 55px;
    border-radius: 0;
    z-index: 10; }
    .main-area .navbar-brand {
      position: absolute;
      display: block;
      background-image: url("/resource/puyo-esports-ac/header/h_logo.png");
      width: 58px;
      height: calc(58px * 0.78181);
      margin: 5px 8px 5px 5px;
      background-size: 100%; }
      .main-area .navbar-brand:hover, .main-area .navbar-brand:active {
        -webkit-filter: contrast(150%);
                filter: contrast(150%); }
    .main-area .navbar .navbar-collapse {
      -webkit-transition: height 0.1s ease 0s;
      transition: height 0.1s ease 0s; }
  @media (min-width: 768px) {
    .main-area .pageContent {
      min-height: 900px;
      padding: 45px 0 80px; } }
  @media (max-width: 767px) {
    .main-area .pageContent {
      min-height: 600px;
      padding: 45px 15px 80px; } }
  .main-area .pageContent .page-header-maintenance,
  .main-area .pageContent .maintenance-view-body {
    position: relative;
    z-index: 10; }
  .main-area .pageContent .page-header-maintenance {
    position: relative;
    z-index: 10;
    margin: 0;
    font-size: 0;
    color: transparent;
    border: none;
    background-image: url(/resource/puyo-esports-ac/info/assets/maintenance_h1.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center top; }
    @media (min-width: 768px) {
      .main-area .pageContent .page-header-maintenance {
        height: 190px; } }
    @media (max-width: 767px) {
      .main-area .pageContent .page-header-maintenance {
        height: 100px; } }
    .main-area .pageContent .page-header-maintenance h3 {
      margin: 0;
      font-size: 0px;
      color: transparent; }
  .main-area .pageContent .maintenance-view-body {
    position: relative;
    z-index: 5;
    padding: 60px 20px 80px;
    font-size: 16px;
    color: #000;
    background-color: rgba(255, 255, 255, 0.7); }
    @media (min-width: 768px) {
      .main-area .pageContent .maintenance-view-body {
        margin-top: -70px; } }
    @media (max-width: 767px) {
      .main-area .pageContent .maintenance-view-body {
        margin-top: -30px; } }
  .main-area hr.beforeFooter {
    display: none; }
  .main-area .footer {
    position: relative;
    max-width: 100%;
    padding: 0 10px 0 10px;
    background-color: #fff;
    z-index: 1; }
    @media (min-width: 768px) {
      .main-area .footer {
        margin-top: 120px; } }
    @media (max-width: 767px) {
      .main-area .footer {
        margin-top: 70px; } }
    .main-area .footer .contents {
      margin-bottom: -20px; }
      .main-area .footer .contents ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding: 10px 0;
        margin: 0;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        @media (min-width: 768px) {
          .main-area .footer .contents ul {
            width: 640px;
            margin: auto;
            padding: 20px 0; } }
        @media (max-width: 767px) {
          .main-area .footer .contents ul {
            padding: 15px 0; }
            .main-area .footer .contents ul li {
              width: 47%;
              text-align: left; } }
        .main-area .footer .contents ul li {
          display: block; }
          .main-area .footer .contents ul li:nth-of-type(5) {
            width: 100%;
            text-align: left; }
            @media (min-width: 768px) {
              .main-area .footer .contents ul li:nth-of-type(5) {
                width: 72.7%; } }
            @media (max-width: 767px) {
              .main-area .footer .contents ul li:nth-of-type(5) {
                width: 94%; } }
          .main-area .footer .contents ul li::before {
            content: "";
            display: inline-block;
            background-image: url("/resource/puyo-esports-ac/footer/f_arrow.png");
            width: 6px;
            height: 9px;
            background-size: 100%;
            vertical-align: middle; }
          .main-area .footer .contents ul li a {
            color: #666;
            vertical-align: text-top; }
    .main-area .footer .link {
      position: absolute;
      left: 0;
      right: 0;
      margin: auto; }
      @media (min-width: 768px) {
        .main-area .footer .link {
          width: 470px;
          top: -130px; } }
      @media (max-width: 767px) {
        .main-area .footer .link {
          width: 300px;
          top: -85px; } }
      .main-area .footer .link:hover, .main-area .footer .link:active {
        -webkit-filter: contrast(150%);
                filter: contrast(150%); }
      .main-area .footer .link img {
        width: 100%; }
      .main-area .footer .link hr {
        margin-bottom: 12px; }
    .main-area .footer .copy {
      background-color: #18417f;
      margin: 0 -10px 0; }
      .main-area .footer .copy hr {
        display: none; }
      .main-area .footer .copy p {
        margin: 0;
        color: #6d8cba;
        line-height: 1.7em;
        padding: 20px 0; }

@media (min-width: 768px) {
  .navbar-header .logo {
    display: none; }
  .navbar .collapse {
    padding: 0; }
    .navbar .collapse .logo {
      float: left;
      width: 79px; }
      .navbar .collapse .logo img {
        width: 100%;
        padding: 5px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }
    .navbar .collapse .nav {
      margin: 0;
      padding-left: 70px; }
      .navbar .collapse .nav a {
        color: transparent;
        font-size: 0;
        padding: 12px 0 13px; }
        .navbar .collapse .nav a:hover {
          color: transparent;
          background-color: #FFB321; }
          .navbar .collapse .nav a:hover span {
            background-position: 0% 100%; }
        .navbar .collapse .nav a:focus {
          color: transparent; }
        .navbar .collapse .nav a span {
          display: block;
          background-size: 100% 200%;
          background-position: 0% 0%;
          background-repeat: no-repeat;
          padding: 6px 7px;
          height: 30px; }
      .navbar .collapse .nav-info a span {
        width: 91px;
        background-image: url("/resource/puyo-esports-ac/header/h_navi1.png"); }
      .navbar .collapse .nav-ranking a span {
        width: 98px;
        background-image: url("/resource/puyo-esports-ac/header/h_navi2.png"); }
      .navbar .collapse .nav-search a span {
        width: 132px;
        background-image: url("/resource/puyo-esports-ac/header/h_navi3.png"); }
      .navbar .collapse .nav-login a span {
        width: 90px;
        background-image: url("/resource/puyo-esports-ac/header/h_navi4.png"); }
      .navbar .collapse .nav-logout a span {
        width: 107px;
        background-image: url("/resource/puyo-esports-ac/header/h_navi6.png"); }
      .navbar .collapse .nav-my-page a span {
        width: 98px;
        background-image: url("/resource/puyo-esports-ac/header/h_navi5.png"); }
  .pageContent {
    background-size: 1800px calc(1800px * (1500 / 2400)); } }

@media (max-width: 767px) {
  .navbar {
    width: 100%;
    position: fixed;
    top: 0;
    z-index: 10000; }
    .navbar-header {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .navbar-header .navbar-toggle {
        border: none;
        margin: 10px 15px 10px auto;
        background-image: url("/resource/puyo-esports-ac/header/h_icon.png");
        background-color: transparent;
        width: 40px;
        height: calc(40px * 0.8625);
        background-size: 100%;
        background-repeat: no-repeat; }
        .navbar-header .navbar-toggle span.icon-bar {
          display: none; }
        .navbar-header .navbar-toggle:hover, .navbar-header .navbar-toggle:focus {
          background-color: transparent; }
    .navbar .navbar-collapse {
      border: none; }
      .navbar .navbar-collapse .logo {
        display: none; }
      .navbar .navbar-collapse .nav {
        background-color: #19417f;
        margin: 0px -15px; }
        .navbar .navbar-collapse .nav li {
          border-bottom: 2px dotted #486ca2; }
          .navbar .navbar-collapse .nav li:last-child {
            border-bottom: none; }
          .navbar .navbar-collapse .nav li a {
            background-image: url("/resource/puyo-esports-ac/header/h_arrow.png");
            background-repeat: no-repeat;
            background-size: 10px;
            background-position: right 5% center; }
            .navbar .navbar-collapse .nav li a:hover, .navbar .navbar-collapse .nav li a:active {
              background-color: #254e8e; }
            .navbar .navbar-collapse .nav li a span {
              color: #fff; }
      .navbar .navbar-collapse .navbar-custom {
        border: none; }
  .header-image {
    margin-top: 65px; }
  .pageContent {
    margin-top: 55px; }
  .pageContent {
    background-size: 1100px calc(1100px * (1500 / 2400)); } }
