/* -------------------------------------------------

Reset.css

------------------------------------------------- */
@media print {
  html,
  body {
    zoom: 0.8;
  }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style: none;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  color: #231815;
  font-size: clamp(14px, 1.3333333333vw, 16px);
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  line-height: 1.5;
  letter-spacing: 0;
}
body * {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

a {
  color: #231815;
  outline: none;
  text-decoration: none;
  transition: 0.3s;
}
a img {
  border-style: none;
  transition: 0.3s;
}

img {
  max-width: 100%;
}

:root {
  --fz-90: clamp(60px, calc(100vw * 90 / 1200), 90px);
  --fz-48: clamp(32px, calc(100vw * 48 / 1200), 48px);
  --fz-45: clamp(30px, calc(100vw * 45 / 1200), 45px);
  --fz-36: clamp(24px, calc(100vw * 36 / 1200), 36px);
  --fz-24: clamp(18px, calc(100vw * 24 / 1200), 24px);
  --fz-20: clamp(16px, calc(100vw * 20 / 1200), 20px);
  --fz-16: clamp(14px, calc(100vw * 16 / 1200), 16px);
}

@font-face {
  font-family: "Zen Maru Gothic";
  src: url("../fonts/zenmarugothic-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Zen Maru Gothic";
  src: url("../fonts/zenmarugothic-medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Zen Maru Gothic";
  src: url("../fonts/zenmarugothic-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Zen Kaku Gothic New";
  src: url("../fonts/zenkakugothicnew-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/cormorantgaramond-bolditalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "PT Serif";
  src: url("../fonts/ptserif-bolditalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@media all and (min-width: 669px) {
  .spOnly {
    display: none;
  }
}
@media all and (min-width: 801px) {
  .md {
    display: none;
  }
}
@media all and (min-width: 961px) {
  .tb {
    display: none;
  }
}
@media screen and (max-width: 960px) {
  .pcOnly {
    display: none;
  }
}
@media screen and (max-width: 668px) {
  .ns {
    display: none;
  }
}
@media screen and (max-width: 1367px) {
  .pcLOnly {
    display: none;
  }
}
@media screen and (max-width: 668px) {
  .pcLOnly {
    display: block;
  }
}