@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
body #main_content {
  display: block;
  /**
  * Correct the font size and margin on `h1` elements within `section` and
  * `article` contexts in Chrome, Firefox, and Safari.
  */
  /* Grouping content
  ========================================================================== */
  /**
  * 1. Add the correct box sizing in Firefox.
  * 2. Show the overflow in Edge and IE.
  */
  /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
  /* Text-level semantics
  ========================================================================== */
  /**
  * Remove the gray background on active links in IE 10.
  */
  /**
  * 1. Remove the bottom border in Chrome 57-
  * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
  */
  /**
  * Add the correct font weight in Chrome, Edge, and Safari.
  */
  /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
  /**
  * Add the correct font size in all browsers.
  */
  /**
  * Prevent `sub` and `sup` elements from affecting the line height in
  * all browsers.
  */
  /* Embedded content
  ========================================================================== */
  /**
  * Remove the border on images inside links in IE 10.
  */
  /* Forms
  ========================================================================== */
  /**
  * 1. Change the font styles in all browsers.
  * 2. Remove the margin in Firefox and Safari.
  */
  /**
  * Show the overflow in IE.
  * 1. Show the overflow in Edge.
  */
  /**
  * Remove the inheritance of text transform in Edge, Firefox, and IE.
  * 1. Remove the inheritance of text transform in Firefox.
  */
  /**
  * Correct the inability to style clickable types in iOS and Safari.
  */
  /**
  * Remove the inner border and padding in Firefox.
  */
  /**
  * Restore the focus styles unset by the previous rule.
  */
  /**
  * Correct the padding in Firefox.
  */
  /**
  * 1. Correct the text wrapping in Edge and IE.
  * 2. Correct the color inheritance from `fieldset` elements in IE.
  * 3. Remove the padding so developers are not caught out when they zero out
  *    `fieldset` elements in all browsers.
  */
  /**
  * Add the correct vertical alignment in Chrome, Firefox, and Opera.
  */
  /**
  * Remove the default vertical scrollbar in IE 10+.
  */
  /**
  * 1. Add the correct box sizing in IE 10.
  * 2. Remove the padding in IE 10.
  */
  /**
  * Correct the cursor style of increment and decrement buttons in Chrome.
  */
  /**
  * 1. Correct the odd appearance in Chrome and Safari.
  * 2. Correct the outline style in Safari.
  */
  /**
  * Remove the inner padding in Chrome and Safari on macOS.
  */
  /**
  * 1. Correct the inability to style clickable types in iOS and Safari.
  * 2. Change font properties to `inherit` in Safari.
  */
  /* Interactive
  ========================================================================== */
  /*
  * Add the correct display in Edge, IE 10+, and Firefox.
  */
  /*
  * Add the correct display in all browsers.
  */
  /* Misc
  ========================================================================== */
  /**
  * Add the correct display in IE 10+.
  */
  /**
  * Add the correct display in IE 10.
  */
}
body #main_content h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
body #main_content hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
body #main_content pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
body #main_content a {
  background-color: transparent;
}
body #main_content abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}
body #main_content b,
body #main_content strong {
  font-weight: bolder;
}
body #main_content code,
body #main_content kbd,
body #main_content samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
body #main_content small {
  font-size: 80%;
}
body #main_content sub,
body #main_content sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
body #main_content sub {
  bottom: -0.25em;
}
body #main_content sup {
  top: -0.5em;
}
body #main_content img {
  border-style: none;
}
body #main_content button,
body #main_content input,
body #main_content optgroup,
body #main_content select,
body #main_content textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
body #main_content button,
body #main_content input { /* 1 */
  overflow: visible;
}
body #main_content button,
body #main_content select { /* 1 */
  text-transform: none;
}
body #main_content button,
body #main_content [type=button],
body #main_content [type=reset],
body #main_content [type=submit] {
  -webkit-appearance: button;
}
body #main_content button::-moz-focus-inner,
body #main_content [type=button]::-moz-focus-inner,
body #main_content [type=reset]::-moz-focus-inner,
body #main_content [type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
body #main_content button:-moz-focusring,
body #main_content [type=button]:-moz-focusring,
body #main_content [type=reset]:-moz-focusring,
body #main_content [type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
body #main_content fieldset {
  padding: 0.35em 0.75em 0.625em;
}
body #main_content legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
body #main_content progress {
  vertical-align: baseline;
}
body #main_content textarea {
  overflow: auto;
}
body #main_content [type=checkbox],
body #main_content [type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
body #main_content [type=number]::-webkit-inner-spin-button,
body #main_content [type=number]::-webkit-outer-spin-button {
  height: auto;
}
body #main_content [type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
body #main_content [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
body #main_content ::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
body #main_content details {
  display: block;
}
body #main_content summary {
  display: list-item;
}
body #main_content template {
  display: none;
}
body #main_content [hidden] {
  display: none;
}

/*util*/
@-webkit-keyframes animation-sample {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes animation-sample {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@-webkit-keyframes op {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes op {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes op_br {
  0% {
    opacity: 0;
    filter: brightness(1.75);
  }
  100% {
    opacity: 1;
    filter: brightness(1);
  }
}
@keyframes op_br {
  0% {
    opacity: 0;
    filter: brightness(1.75);
  }
  100% {
    opacity: 1;
    filter: brightness(1);
  }
}
@-webkit-keyframes op_sc {
  0% {
    opacity: 1;
    transform: scale(1) translateY(-50%);
    filter: blur(4px);
  }
  50% {
    opacity: 1;
    transform: scale(1.1) translateY(-50%);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(-50%);
    filter: blur(0);
  }
}
@keyframes op_sc {
  0% {
    opacity: 1;
    transform: scale(1) translateY(-50%);
    filter: blur(4px);
  }
  50% {
    opacity: 1;
    transform: scale(1.1) translateY(-50%);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(-50%);
    filter: blur(0);
  }
}
@-webkit-keyframes op_sc_b {
  0% {
    opacity: 0;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes op_sc_b {
  0% {
    opacity: 0;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@-webkit-keyframes txt_clip {
  0% {
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
            clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes txt_clip {
  0% {
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
            clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@-webkit-keyframes zoom {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  45% {
    transform: translate(-50%, -50%) scale(0.27);
    opacity: 1;
  }
  90% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
}
@keyframes zoom {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  45% {
    transform: translate(-50%, -50%) scale(0.27);
    opacity: 1;
  }
  90% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
}
@-webkit-keyframes animation-so {
  0% {
    transform: scale(1);
    opacity: 0;
  }
  20% {
    transform: scale(1);
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
@keyframes animation-so {
  0% {
    transform: scale(1);
    opacity: 0;
  }
  20% {
    transform: scale(1);
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
@-webkit-keyframes animation-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes animation-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes animation_slaid {
  0% {
    transform: translateX(-50%);
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes animation_slaid {
  0% {
    transform: translateX(-50%);
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes animation_opacity {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@keyframes animation_opacity {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes txt_animation {
  0% {
    transform: rotate(353deg) translate(-5.5%, 9%);
  }
  100% {
    transform: rotate(353deg) translate(110%, 9%);
  }
}
@keyframes txt_animation {
  0% {
    transform: rotate(353deg) translate(-5.5%, 9%);
  }
  100% {
    transform: rotate(353deg) translate(110%, 9%);
  }
}
@-webkit-keyframes slant_animation {
  0% {
    transform: translate(-100%, 100%);
  }
  100% {
    transform: translate(446%, 0%) translateX(0) translateY(0);
  }
}
@keyframes slant_animation {
  0% {
    transform: translate(-100%, 100%);
  }
  100% {
    transform: translate(446%, 0%) translateX(0) translateY(0);
  }
}
@-webkit-keyframes fade_re {
  0% {
    opacity: 0.01;
    transform: translateX(-30%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fade_re {
  0% {
    opacity: 0.01;
    transform: translateX(-30%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes fade_le {
  0% {
    opacity: 0.01;
    transform: translateX(30%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fade_le {
  0% {
    opacity: 0.01;
    transform: translateX(30%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@-webkit-keyframes updown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes updown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes updown_b {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes updown_b {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes updown_c {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes updown_c {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
/*============================
function
============================*/
/*============================
mixin
============================*/
/*============================
easing
============================*/
/*============================
hover
============================*/
/*color*/
body {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}
body img {
  display: contents;
  width: 0;
  height: 0;
}
body #main_content {
  position: relative;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, "ＭＳ Ｐゴシック", sans-serif;
  font-feature-settings: "palt";
  color: #424242;
  position: relative;
  width: 100%;
  display: block !important;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, "ＭＳ Ｐゴシック", sans-serif;
  opacity: 1;
}
body #main_content ::-moz-selection {
  background: #EEEEEE;
}
body #main_content ::selection {
  background: #EEEEEE;
}
body #main_content ::-moz-selection {
  background: #EEEEEE;
}
body #main_content img::-moz-selection {
  background: none;
}
body #main_content img::selection {
  background: none;
}
body #main_content img::-moz-selection {
  background: none;
}
body #main_content picture {
  display: contents;
}
body #main_content a {
  text-decoration: none;
}
body #main_content .hide {
  display: none !important;
}
body #main_content .banish {
  visibility: hidden !important;
}
body #main_content .area {
  width: 100%;
  position: relative;
}
body #main_content .box {
  width: 100%;
  text-align: center;
}
body #main_content .disable_click {
  pointer-events: none;
}
body #main_content img {
  display: inline-block;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  width: 0;
  height: 0;
}
body #main_content .iScrollIndicator {
  border: none !important;
}
body #main_content .iScrollVerticalScrollbar {
  width: 2px !important;
}
body #main_content .iScrollHorizontalScrollbar {
  height: 2px !important;
}
body #main_content .iScrollIndicator {
  background: #424242 !important;
}
body #main_content #stats {
  z-index: 5000;
}

@media screen and (min-width: 768px) {
  body #main_content {
    position: relative;
  }
  body #main_content a {
    cursor: pointer;
  }
  body #main_content .sp_view {
    display: none !important;
  }
  body #main_content img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  body #main_content .pc_view {
    display: none !important;
  }
  body #main_content img {
    width: 100%;
    height: auto;
  }
}