
:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert
}
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none
}
body {
  font-family: inherit;
  position: relative;
  overflow-x: clip;
}
a, button {
  cursor: revert
}
menu, ol, summary, ul {
  list-style: none
}
ol {
  counter-reset: revert
}
table {
  border-collapse: collapse
}
* {
  scroll-margin-top: var(--header-height);
}

a {
  color: inherit;
  text-decoration: inherit;
}

:root {
  --ja-font: "Lato", "Zen Kaku Gothic New", sans-serif;
  --en-font: amandine, "Italiana", sans-serif;

  --page-max-width: 1200px;
  --page-margin: 32px;
  --inside-margin: 32px;
  @media (max-width: 72rem){
    --page-margin: 24px;
    --inside-margin: 24px;
  }
  @media (max-width: 50rem){
    --page-margin: 16px;
    --inside-margin: 16px;
  }

  --red: #AD5874;
  --pale-red: #D8C9C3;
  --beige: #F7F5F0;
  --pale-beige: #FCFBF9;

  --side-margin: calc(((100vw - min(var(--page-max-width), 100vw)) / 2) + var(--page-margin));

  font-family: var(--ja-font);
  font-weight: 400;
  font-size: 100% !important;
  @media (max-width: 40rem){
    font-size: 90% !important;
  }
  
  font-optical-sizing: auto;
  background-color: var(--beige);
  scroll-behavior: smooth;
  overflow-x: clip;
}

a {
  color: inherit;
  text-decoration: inherit;
}

sup {
  font-size: 0.5em;
  vertical-align: top;
}

sub {
  font-size: 0.75em;
  vertical-align: baseline;
}