@charset "UTF-8";
body,
div,
figure,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
  word-wrap: break-word;
  word-break: break-all;
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
/* img{border:0;vertical-align:top;width:100%;} */
em {
  font-style: normal;
  font-weight: bold;
  font-size: 1em;
  color: #333;
}
ul {
  list-style: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}
p,
li,
dd {
  line-height: 1.6;
  word-wrap: break-word;
  word-break: break-all;
}
html {
  font-size: 4vw;
  color-scheme: dark light;
}
html,
body {
  height: 100%;
  min-height: 100%;
}
article {
  min-height: 100%;
  position: relative;
}
body {
  overflow-x: hidden;
  font-family: "Noto Sans JP", sans-serif;
  color: #000;
  background: #fff;
}
img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  opacity: 0;
}
input {
  background: #fff;
  color: #000;
}
.ta-l {
  text-align: left;
}
.ta-c {
  text-align: center;
}
.ta-r {
  text-align: right;
}
.lh-1 {
  line-height: 1;
}
.lh-12 {
  line-height: 1.2;
}
.lh-14 {
  line-height: 1.4;
}
.lh-16 {
  line-height: 1.6;
}
.mh-a {
  margin-right: auto;
  margin-left: auto;
}
.mh-1 {
  margin-right: 1em;
  margin-left: 1em;
}
.mv-1 {
  margin-top: 1em;
  margin-bottom: 1em;
}
.mv-2 {
  margin-top: 2em;
  margin-bottom: 2em;
}
.mb-025 {
  margin-bottom: 0.25em;
}
.mb-0 {
  margin-bottom: 0;
}
.mb-05 {
  margin-bottom: 0.5em;
}
.mb-1 {
  margin-bottom: 1em;
}
.mb-2 {
  margin-bottom: 2em;
}
.mb-0 {
  margin-top: 0;
}
.mt-05 {
  margin-top: 0.5em;
}
.mt-1 {
  margin-top: 1em;
}
.mt-2 {
  margin-top: 2em;
}
.mr-05 {
  margin-right: 0.5em;
}
.mr-1 {
  margin-right: 1em;
}
.pa-05 {
  padding: 0.5em;
}
.pa-1 {
  padding: 1em;
}
.pt-05 {
  padding-top: 0.5em;
}
.pt-1 {
  padding-top: 1em;
}
.pt-2 {
  padding-top: 2em;
}
.pb-05 {
  padding-bottom: 0.5em;
}
.pb-1 {
  padding-bottom: 1em;
}
.pb-2 {
  padding-bottom: 2em;
}
.ph-05 {
  padding-right: 0.5em;
  padding-left: 0.5em;
}
.ph-1 {
  padding-right: 1em;
  padding-left: 1em;
}
.pv-05 {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.pv-1 {
  padding-top: 1em;
  padding-bottom: 1em;
}
.pv-2 {
  padding-top: 2em;
  padding-bottom: 2em;
}
.pr-1 {
  padding-right: 1em;
}
.pr-05 {
  padding-right: 0.5em;
}
.pl-1 {
  padding-left: 1em;
}
.pl-05 {
  padding-left: 0.5em;
}
.opa-8 {
  opacity: 0.8;
}
.opa-7 {
  opacity: 0.7;
}
.opa-5 {
  opacity: 0.5;
}
.opa-3 {
  opacity: 0.3;
}
.table {
  display: table;
  margin-left: auto;
  margin-right: auto;
}
.table > * {
  display: table-cell;
  vertical-align: middle;
}
.table-fixed {
  table-layout: fixed;
}
.dsp-inline {
  display: inline-block;
}
.dsp-block {
  display: block;
}
.bold {
  font-weight: bold;
}
.fw-3 {
  font-weight: 300;
}
.fw-4 {
  font-weight: 400;
}
.fw-5 {
  font-weight: 500;
}
.fw-6 {
  font-weight: 600;
}
.fw-7 {
  font-weight: 700;
}
.fw-8 {
  font-weight: 800;
}
.fs-xl {
  font-size: 250%;
}
.fs-lll {
  font-size: 200%;
}
.fs-ll {
  font-size: 150%;
}
.fs-l {
  font-size: 120%;
}
.fs-s {
  font-size: 90%;
}
.fs-ss {
  font-size: 70%;
}
.wdt-20 {
  width: 20%;
}
.wdt-25 {
  width: 25%;
}
.wdt-30 {
  width: 30%;
}
.wdt-33 {
  width: 33.3333%;
}
.wdt-48 {
  width: 48%;
}
.wdt-50 {
  width: 50%;
}
.wdt-60 {
  width: 60%;
}
.wdt-70 {
  width: 70%;
}
.wdt-80 {
  width: 80%;
}
.wdt-90 {
  width: 90%;
}
.wdt-100 {
  width: 100%;
}
.wdt-10em {
  width: 10em;
}
.wdt-9em {
  width: 9em;
}
.wdt-8em {
  width: 8em;
}
.wdt-7em {
  width: 7em;
}
.wdt-6em {
  width: 6em;
}
.wdt-5em {
  width: 5em;
}
.wdt-4em {
  width: 4em;
}
.wdt-3em {
  width: 3em;
}
.wdt-2em {
  width: 2em;
}
.mwdt-150px {
  max-width: 150px;
}
.mwdt-200px {
  max-width: 200px;
}
.mwdt-300px {
  max-width: 300px;
}
.mwdt-400px {
  max-width: 400px;
}
.mwdt-500px {
  max-width: 500px;
}
.mwdt-600px {
  max-width: 600px;
}
.mwdt-700px {
  max-width: 700px;
}
.mwdt-800px {
  max-width: 800px;
}
.fl-l {
  float: left;
}
.fl-r {
  float: right;
}
.clearfix::after {
  content: "";
  clear: both;
  display: block;
}

body::before {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -10;
    width: 100vw;
    height: 100vh;
    content: "";
    background-image: radial-gradient(circle, #ffffff99 2px, transparent 2px), radial-gradient(circle, #ffffff99 2px, transparent 2px), linear-gradient(to bottom, #6bd1ff, #fff 70%);
    background-position: 0 0, 4px 8px, center;
    background-size: 8px 16px, 8px 16px,cover;
}
