@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
:root {
  --font-jp: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  --font-en: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  --font-sans: system-ui, -apple-system, "Segoe UI", sans-serif;
  --color-text: #222;
  --color-brand: #e21a1a;
  --color-white: #fff;
  --color-yellow-highlight: #ffe945;
  --color-gray-ui: #f5f5f5;
  --space-unit: 1rem;
}

html,
body {
  font-family: var(--font-jp);
}

html {
  font-size: 2.5vw;
  scroll-behavior: smooth;
  scroll-padding-top: 10rem;
  font-weight: 500;
}
@media (min-width: 768px) {
  html {
    font-size: 0.7142857143vw;
  }
}
@media (min-width: 1600px) {
  html {
    font-size: 11.4285714286px;
  }
}
@media (max-width: 767px) {
  html {
    scroll-padding-top: 7.5rem;
    overflow-x: hidden;
    max-width: 100vw;
  }
}

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

a {
  color: #000;
  text-decoration: none;
}

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

h1,
h2,
h3,
h4,
h5,
h6,
div,
dl,
dt,
dd,
p {
  padding: 0;
  margin: 0;
}

p {
  line-height: 1.8;
}

ul,
ol,
li {
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}

img {
  vertical-align: bottom;
}

figure {
  padding: 0;
  margin: 0;
}

picture {
  display: block;
}

label {
  cursor: pointer;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
          appearance: none;
  margin: 0;
}

input[type=number] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}

.l-main {
  line-height: 1.2;
}

svg,
img {
  max-width: 100%;
}

@media (max-width: 767px) {
  html,
  body {
    width: 100%;
    height: 100%;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  div,
  dl,
  dt,
  dd,
  p {
    padding: 0;
    margin: 0;
  }
  img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
  }
}
@media (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
@media (min-width: 768px) {
  [href*="tel:"] {
    pointer-events: none;
  }
  .sp {
    display: none !important;
  }
}
[x-cloak] {
  display: none !important;
}

button {
  background-color: none;
  border: none;
  border-radius: none;
  cursor: pointer;
}/*# sourceMappingURL=rem-base.css.map */