:root {
  --primary: #4a0563;
  --primary-text: #333333;

  --primary-icon-filter: invert(10%) sepia(30%) saturate(6283%) hue-rotate(272deg) brightness(113%) contrast(114%);

  --secondary: #ede8f4;
  --secondary-light: #f7f4fc;

  --thirtary: #fef5c7;
  --thirtary-light: #fef3ed;

  --divider: #ebebeb;

  --white-icon-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(199deg) brightness(106%) contrast(101%);
  --secondary-icon-filter: invert(75%) sepia(58%) saturate(445%) hue-rotate(170deg) brightness(98%) contrast(95%);

  --font-size-xs: 13px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;

  --font-size-title-xs: 22px;
  --font-size-title-sm: 24px;
  --font-size-title-md: 26px;
  --font-size-title-lg: 28px;
  --font-size-title-xl: 32px;
  --font-size-title-xxl: 35px;

  --background-gray: #f5f5f5;
  --background-attention: #fffbe2;

  /* ここまで更新済み */

  --primary-contrast-text: #ffffff;
  --primary-background: #ece6ef;
  --primary-bright: #f5f2f9;

  --primary-active: #00b5e2;
  --primary-bullet-arrow: #00b5e2;

  --primary-border: #707070;
  --primary-shadow: #00000019;
  --primary-red: #cf0000;

  --secondary-text: #005eb8;
  --secondary-dark: var(--secondary-text);

  --secondary-border: #99e1f3;

  --spmenu-icon-filter: invert(100%) sepia(1%) saturate(7497%) hue-rotate(276deg) brightness(103%) contrast(101%);

  --text-white: white;

  --border: #bfa7d8;
  --icon-dark: #4a0d60;
}

@layer base {
  * {
    font-family: "Noto Sans JP", sans-serif;
  }

  img,
  svg,
  video,
  canvas,
  audio,
  iframe,
  embed,
  object {
    display: unset;
  }
}

/* レイアウト */
html,
body {
  margin: 0;
  width: 100%;
  height: 100%;
  min-width: 1040px;
  display: flex;
  flex-direction: column;
  align-items: center;

  @media screen and (max-width: 723px) {
    min-width: 390px;
  }
}

main {
  width: 100%;
}
/* --- レイアウト */

@media screen and (max-width: 723px) {
  #header {
    height: 60px;
    display: flex;
    justify-content: space-between;
    position: relative;
  }

  .divider {
    display: none;
  }
}
