@media (max-width: 375px) {
  :root {
    --font-size: 4.2666666667vw;
  }
}

@media (min-width: 375px) and (max-width: 600px) {
  :root {
    --font-size: 100%;
  }
}

@media (min-width: 560px) {
  :root {
    --font-size: 120%;
  }
}

@media (min-width: 768px) {
  :root {
    --font-size: 90%;
  }
}

@media (min-width: 1024px) {
  :root {
    --font-size: 100%;
  }
}

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

* {
  scroll-margin: 0px !important;
  scroll-padding: 0px !important;
}

body {
  font-feature-settings: "palt";
  overflow-wrap: anywhere;
  font-family: "Shuei KakuGo Gin B";
  color: var(--color-base);
  word-break: normal;
  line-break: strict;
}

a {
  color: var(--color-base);
}

a[target="_blank"]:not([class])::after {
  margin: 0 3px 0 1px;
  font-family: "Hobonichi-Icons";
  content: "\e914";
  font-size: 85%;
  position: relative;
  top: -3px;
}

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

svg {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 801px) {
  .sp {
    display: none;
  }
}

.pc {
  display: none;
}

@media (min-width: 801px) {
  .pc {
    display: block;
  }
}

@media (hover: hover) {
  a,
  button {
    transition: opacity 0.4s ease-out;
    cursor: pointer;
  }

  a:hover,
  button:hover {
    opacity: 0.7;
  }
}
