@charset "UTF-8";
:root {
  --color-primary: #163f74;
  --color-primaryDark: #002a52;
  --color-accentYellow: #fef251;
  --color-accentRed: #d33365;
  --font-en: "Fira Sans", sans-serif;
  --font-ja: "Noto Sans JP", "Helvetica Neue", arial,
    "Hiragino Kaku Gothic ProN", "Hiragino Sans", meiryo, sans-serif;
  --text-color: #1a1a1a;
  --layer-loading: 300;
  --layer-modal: 100;
  --layer-drawer: 40;
  --layer-floating: 30;
  --layer-header: 20;
  --layer-footer: 10;
  --layer-default: 1;
}
*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
body {
  font-family: var(--font-en);
  font-family: var(--font-ja);
  font-size: 14px;
  line-height: 1.7;
  background: #fff;
  color: #1a1a1a;
}
html {
  line-height: 1;
}
a {
  cursor: pointer;
  text-decoration: none;
  color: inherit;
}
ol,
ul {
  list-style: none;
}
li,
dd {
  list-style-type: none;
}
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
header,
footer,
nav,
section,
article,
aside,
figure,
figcaption {
  display: block;
}
img {
  border: none;
  vertical-align: bottom;
  width: 100%;
}
#wrapper {
  overflow: hidden;
}
.container {
  width: 100%;
  padding: 0 20px;
  margin: 0 auto;
}
@media (min-width: 767px) {
  .container {
    max-width: 1180px;
    width: 100%;
    padding: 0 40px;
    margin: 0 auto;
  }
}
@media (min-width: 1600px) {
  .container {
    max-width: 1600px;
    padding: 0 80px;
  }
}
.separate {
  margin-top: 24px;
  margin-bottom: 24px;
}
.font-italic {
  font-family: var(--font-en);
}
.color-primary {
  color: var(--color-primary);
}
.color-white {
  color: #fff;
}
@media (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}
