@charset "utf-8";
/*----------------------------------------------------
	共通
----------------------------------------------------*/
body {
  font-size: min((var(--vw) * 100) * 20 / var(--size-main), 2.0rem);
}
@media (max-width: 767px) { /* SP */
body { font-size: 1.5rem; }
}

/*Google Material Symbols*/
.material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48 }

/*----------------------------------------------------
	custom properties
----------------------------------------------------*/
:root {
  --vw: 1vw;
  --size-main: 800; /*デザインのコンテンツ幅*/
  --color-main: #990000;
  --color-gray-dark: #666;;
  --color-gray-light: #f1f1f1;
  --40px: min((var(--vw) * 100) * 40 / var(--size-main), 4.0rem);
  --30px: min((var(--vw) * 100) * 30 / var(--size-main), 3.0rem);
  --22px: min((var(--vw) * 100) * 22 / var(--size-main), 2.2rem);
  --19px: min((var(--vw) * 100) * 19 / var(--size-main), 1.9rem);
  --17px: min((var(--vw) * 100) * 17 / var(--size-main), 1.7rem);
  --16px: min((var(--vw) * 100) * 16 / var(--size-main), 1.6rem);
}

@media (max-width: 767px) { /* SP */
:root {
  --40px: 3.4rem;
  --30px: 2.4rem;
  --22px: 1.8rem;
  --19px: 1.6rem;
  --17px: 1.5rem;
  --16px: 1.5rem;
}
}
/*----------------------------------------------------
	box
----------------------------------------------------*/
.main {
  width: min(100% - 3em, var(--size-main) * 1px);
  margin-inline: auto;
  line-height: 1.8;
}
.container-small {
  width: min(100%, 600px);
  margin-inline: auto;
}
.container-inner {
  width: min(100% - 2em, var(--size-main) * 1px);
  margin-inline: auto;
}
.container-center {
  max-inline-size: max-content;
  margin-inline: auto;
}
@media (min-width: 768px) { /* PC */
.container-full { /*全幅*/
  margin: 0 calc(50% - (var(--vw) * 50));
  width: calc(var(--vw) * 100);
}
.container-full-back { /*背景全幅*/
  margin: 0 calc(50% - (var(--vw) * 50));
  padding: 0 calc((var(--vw) * 50) - 50%);
  width: calc(var(--vw) * 100);
}
.full-right { /*右側へ要素を広げる*/
  flex: 1;
  margin-right: calc(50% - (var(--vw) * 50));
}
.full-left { /*左側へ要素を広げる*/
  flex: 1;
  margin-left: calc(50% - (var(--vw) * 50));
}
}

.inner { padding-block: 3em; }


.header { text-align: center; }
.footer__copyright { text-align: center; margin: 2em 0; }

a { text-decoration: none; }
