@charset "utf-8";

*,
::before,
::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
address,
small,
blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}

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

a,
a:hover {
  color: inherit;
  text-decoration: none;
}

input,
select,
textarea {
  font: inherit;
  color: inherit;
  vertical-align: top;
}

/* Variables */

:root {
  --font-sans-serif: "Noto Sans JP", sans-serif;
  --font-serif: "Noto Serif JP", serif;
  --font-zen-gothic: "Zen Kaku Gothic New", sans-serif;
  --font-lato: "Lato", sans-serif;
  --color-blue: #0171b0;
  --color-dark-blue: #154b6c;
  --color-black: #303332;
  --color-dark-gray: #4d4d4d;
  --color-gray: #575757;
  --color-white: #ffffff;
}

/* Basic */

body {
  font-family: var(--font-zen-gothic);
  color: var(--color-gray);
  font-size: 14px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0em;
}

a,
button {
  transition: all 0.3s ease-out;
}

button {
  border: none;
  cursor: pointer;
}
