@charset "UTF-8";
/*　*/
/**************************************************
		Foundation
**************************************************/
/* ===== Reset ===== */
@import url('https://fonts.googleapis.com/css2?family=Reggae+One&family=Zen+Kaku+Gothic+New&display=swap');
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html{
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  background: #fff;
  color: #111;
  text-align: left;
  -webkit-text-size-adjust: 100%;
  font-family: "Zen Kaku Gothic New";
  height: 100%;
  font-weight: 500;
  color:#111;
}

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

img {
  border: 0;
  max-width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: bottom;
  -ms-interpolation-mode: bicubic;
  box-sizing: content-box;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

svg {
  max-width: 100%;
  height: auto;
  box-sizing: content-box;
  font-family: "Reggae One",Zen Kaku Gothic New", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;
}

ul,
ol {
  list-style-type: none;
  list-style-position: outside;
}

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

caption {
  text-align: left;
}

th,
td {
  text-align: left;
  vertical-align: top;
}

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

sub {
  bottom: -0.1em;
}

sup {
  top: -0.5em;
}

input,
textarea,
select,
button {
  border-radius: 0;
  font: inherit;
  color: inherit;
  box-shadow: none;
  outline: none;
}

input::-ms-clear,
input::-ms-reveal {
  display: none;
}

textarea {
  resize: vertical;
}

select::-ms-expand {
  display: none;
}

button {
  cursor: pointer;
}

/* ===== Setting ===== */

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
  overflow-x: hidden;
  position: relative;
}
@media (min-width: 1921px) {
  html {
    font-size: 0.52083vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}

@media only screen and (max-width: 767px) {
  html {
    font-size: 2.564vw;
  }
}

body {
  background: #fff;
  font-size: 1.5rem;
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Yu Gothic", "游ゴシック", Meiryo, "メイリオ", sans-serif;
  color: #111;
  line-height: 1.5;
  -webkit-animation: pageFadeIn 1s forwards;
  animation: pageFadeIn 1s forwards;
  font-weight: 500;
}

@-webkit-keyframes pageFadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }

  10% {
    opacity: 0;
    visibility: hidden;
  }

  100% {
    opacity: 1;
    visibility: visible;
  }
}

@keyframes pageFadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }

  10% {
    opacity: 0;
    visibility: hidden;
  }

  100% {
    opacity: 1;
    visibility: visible;
  }
}

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

:-ms-input-placeholder {
  color: #B9B9B9;
  opacity: 1;
}

::-ms-input-placeholder {
  color: #B9B9B9;
  opacity: 1;
}

::-webkit-input-placeholder {
  color: #B9B9B9;
  opacity: 1;
}

::placeholder {
  color: #B9B9B9;
  opacity: 1;
}

@media print,
screen and (min-width: 960px) {

  a,
  a::before,
  a::after,
  a *::before,
  a *::after,
  button,
  button::before,
  button::after,
  button *::before,
  button *::after,
  input[type=submit] {
    transition: background-image 0.3s, background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
  }
}

