@charset "utf-8";
* {
  margin: 0px;
  padding: 0px;
  position: relative;
  box-sizing: border-box;
}
html, body {
  width: 100%;
}
/*====================================================================
 reset styles
====================================================================*/
body {
  font-family: 'Noto Sans JP', "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;
  font-size: 14px;
  font-feature-settings: "palt";
  line-height: 1;
  color: #46413c;
  width: 100%;
  min-width: 1240px;
  letter-spacing: 0;
}
/* safari */
@media screen and (-webkit-min-device-pixel-ratio:0) {
  ::i-block-chrome, body {
    font-feature-settings: "pkna";
    letter-spacing: 0;
  }
}
_::-webkit-full-page-media, _:future, :root body {
  font-feature-settings: "pkna";
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  body {
    font-size: 4.2vw;
    min-width: 1px;
    letter-spacing: 0;
  }
}
table, th, td {
  padding: 0;
  font-size: 100%;
  margin: 0;
}
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}
address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal;
}
ul {
  list-style: none;
}
ol li ul li {
  margin-left: 0;
}
fieldset, img {
  border: 0;
}
a {
  outline: none;
}
table {
  font-size: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
tr {
  vertical-align: top;
}
caption, th {
  text-align: left;
}
abbr, acronym {
  border: 0;
}
sup {
  vertical-align: 2px;
}
sub {
  vertical-align: bottom;
}
a, a:link, a:active, a:visited, a:hover {
  text-decoration: none;
    color: #00a0ff;
}
:focus {
  outline: none;
}