@charset "UTF-8";
/*-------------------------------------------
Common color
-------------------------------------------*/
/* Reset
------------------------------------------------------------*/
* {
  margin: 0;
  padding: 0; }

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal; }

html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

body p {
  display: block;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0; }

body, table,
input, textarea, select, option,
h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  text-align: left;
  font-weight: normal; }

img, abbr, acronym, fieldset {
  border: 0; }

input, textarea, select, option {
  line-height: 1.1; }

input[type="submit"], button {
  border-radius: 0;
  -webkit-appearance: none; }

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

ol, ul {
  list-style: none; }

li {
  list-style-type: none; }

blockquote, q {
  quotes: none; }

:focus {
  outline: 0; }

ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

img {
  vertical-align: top; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: visible;
  height: 0; }

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar; }

b, strong {
  font-weight: bolder; }

a, a img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }

a:focus {
  outline: none; }

img {
  margin: 0;
  padding: 0;
  border: 0;
  max-width: 100%;
  height: auto;
  width: auto;
  vertical-align: middle; }

/* ルートのフォントサイズを10pxと同サイズに設定
----------------------------------------------------*/
html {
  font-size: 62.5%; }

/* layout
----------------------------------------------------*/
html, body {
  overflow: hidden !important; }

body {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1.4rem;
  line-height: 1.7; }

/* Project
------------------------------------------------------------*/
#pixiContainer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  #pixiContainer.done {
    opacity: 1; }

#logoLoading {
  position: fixed;
  z-index: 2;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  #logoLoading a {
    position: relative;
    display: block;
    background-color: #faa70b;
    color: #ffffff;
    font-weight: bold;
    font-size: 4rem;
    padding: 6px 12px;
    white-space: nowrap;
    overflow: hidden;
    border-radius: 12px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.3) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.3) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.3) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.3) 75%, transparent 75%, transparent);
    background-size: 2rem 2rem;
    -webkit-animation: progressBarStripes 0.5s linear infinite;
            animation: progressBarStripes 0.5s linear infinite; }
  #logoLoading.done {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    left: auto;
    top: auto;
    right: 15px;
    bottom: 20px; }
    #logoLoading.done a {
      -webkit-animation: none;
              animation: none;
      background-image: none;
      font-size: 1.8rem;
      padding: 4px 10px; }

@media screen and (max-width: 767px) {
  #logoLoading a {
    font-size: 3.2rem; }
  #logoLoading.done {
    right: 8px;
    bottom: 10px; }
    #logoLoading.done a {
      font-size: 1.6rem; } }

@-webkit-keyframes progressBarStripes {
  0% {
    background-position: 2rem 0; }
  100% {
    background-position: 0 0; } }

@keyframes progressBarStripes {
  0% {
    background-position: 2rem 0; }
  100% {
    background-position: 0 0; } }
