@charset "utf-8";
/* reset
---------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, p, div {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  outline: 0;
  box-sizing: border-box;
}

html, body {
  padding: 0;
  font-size: 16px;
  color: #36231A;
  box-sizing: border-box;
  line-height: 1.8;
  font-family: "Sawarabi Gothic";
}

img {
    width: auto;
    max-width: 100%;
    height: auto;
}

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

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

:focus {
  outline: 0;
}

ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

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

a {
  text-decoration: none;
  color: #615f5f;
}
a.opa:hover img {
  opacity: 0.7;
}

fieldset {
  border: 0;
}

img {
  border: 0;
  font-size: 0;
  vertical-align: bottom;
}

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

input {
  margin: 0;
  padding: 0;
}

a img {
  opacity: 1;
}

/*  part style
--------------------------------------------------------- */
.m0 {
  margin: 0 !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.btnLink {
  display: block;
  font-size: 0;
  line-height: 0;
}

/* # clearfix
---------------------------------------------------------------------------- */
.cf:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  line-height: 0;
  visibility: hidden;
}

*:first-child + html .cf {
  display: inline-block;
  min-height: 1%;
}
* html .cf {
  height: 1%;
}

/* Hides from IE6/IE Mac \*/
.cf {
  display: block;
}

/* End hide from IE6/IE Mac */
/* # fonts
---------------------------------------------------------------------------- */
@font-face {
  font-family: "Bebas Neue";
  font-weight: bold;
  font-style: normal;
  src: url("../fonts/BebasNeue Bold.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "NotoSansCJKjp";
  font-weight: 300;
  font-style: normal;
  src: url("../fonts/NotoSansMonoCJKjp-Regular.woff") format("woff");
  font-display: swap;
}
@media screen and (max-width: 768px) {
  .mt5 {
    margin-top: 5px !important;
  }

  .mt10 {
    margin-top: 10px !important;
  }

  .mt15 {
    margin-top: 15px !important;
  }

  .mt20 {
    margin-top: 20px !important;
  }

  .mt25 {
    margin-top: 25px !important;
  }

  .mt30 {
    margin-top: 30px !important;
  }

  .mt35 {
    margin-top: 35px !important;
  }

  .mt40 {
    margin-top: 40px !important;
  }

  .mt45 {
    margin-top: 45px !important;
  }

  .mt50 {
    margin-top: 50px !important;
  }

  .ml5 {
    margin-left: 5px !important;
  }

  .ml10 {
    margin-left: 10px !important;
  }

  .ml15 {
    margin-left: 15px !important;
  }

  .ml20 {
    margin-left: 20px !important;
  }

  .ml25 {
    margin-left: 25px !important;
  }

  .ml30 {
    margin-left: 30px !important;
  }

  .ml35 {
    margin-left: 35px !important;
  }

  .ml40 {
    margin-left: 40px !important;
  }

  .ml45 {
    margin-left: 45px !important;
  }

  .ml50 {
    margin-left: 50px !important;
  }

  .mb5 {
    margin-bottom: 5px !important;
  }

  .mb10 {
    margin-bottom: 10px !important;
  }

  .mb15 {
    margin-bottom: 15px !important;
  }

  .mb20 {
    margin-bottom: 20px !important;
  }

  .mb25 {
    margin-bottom: 25px !important;
  }

  .mb30 {
    margin-bottom: 30px !important;
  }

  .mb35 {
    margin-bottom: 35px !important;
  }

  .mb40 {
    margin-bottom: 20px !important;
  }

  .mb45 {
    margin-bottom: 45px !important;
  }

  .mb50 {
    margin-bottom: 50px !important;
  }

  .mb55 {
    margin-bottom: 55px !important;
  }

  .mb60 {
    margin-bottom: 60px !important;
  }

  .mb65 {
    margin-bottom: 65px !important;
  }

  .mb70 {
    margin-bottom: 70px !important;
  }

  .mb80 {
    margin-bottom: 40px !important;
  }

  .mb90 {
    margin-bottom: 90px !important;
  }

  .mb100 {
    margin-bottom: 100px !important;
  }
}
