@charset "UTF-8";
/* GMO headerの高さ */
:root{
  --gmoheader-height: 29px;
  @media screen and (max-width:768px) {
  --gmoheader-height: 0;
  }
}

*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: "Noto Sans CJK JP", "Noto Sans JP", sans-serif;
  color: var(--color-navy);
  letter-spacing: 0;
  word-break: break-word;
  position: relative;
  top: 0;
  padding-top: var(--gmoheader-height);
  overflow-x: hidden;
  letter-spacing: 0.04em;
  box-sizing: border-box;
  line-height: 1.8;
}

@font-face {
  font-family: "D-DIN-PRO-Regular";
  src: url("/template/webfonts/D-DIN-PRO-400-Regular.woff") format("woff");
}

@font-face {
  font-family: "D-DIN-PRO-Medium";
  src: url("/template/webfonts/D-DIN-PRO-500-Medium.woff") format("woff");
}

@font-face {
  font-family: "D-DIN-PRO-ExtraBold";
  src: url("/template/webfonts/D-DIN-PRO-800-ExtraBold.woff") format("woff");
}

.din-font-r {
  font-family: "D-DIN-PRO-Regular", "Noto Sans CJK JP", "Noto Sans JP",
    sans-serif !important;
}
.din-font-m {
  font-family: "D-DIN-PRO-Medium", "Noto Sans CJK JP", "Noto Sans JP",
    sans-serif !important;
}

.din-font-bold {
  font-family: "D-DIN-PRO-ExtraBold", "Noto Sans CJK JP", "Noto Sans JP",
    sans-serif !important;
}

a {
  text-decoration: none;
  color: var(--color-navy);
  transition: 0.35s;
}

a:hover {
  transition: 0.35s cubic-bezier(0.4, 0, 0, 1);
  opacity: 0.8;
}
h2, h3, h4, h5, h6 {
  font-weight: bold;
}

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

p {
  line-height: 1.8;
}

small {
  font-size: 14px;
  display: block;
  line-height: 1.6em;
}

strong {
  font-weight: bold;
}