body, h1, h2, p, ul {
  margin: 0;
  padding: 0;
}

body * {
  box-sizing: border-box;
}

:root {
  --text-base: #343434;
  --background-body: #fefefe;
  --mainColor: #39c;
  --subColor: #999;
}

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

body {
  color: var(--baseColor);
  font-size: 1.6rem;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  line-height: 1.8;
  background-color: var(--bodyBgColor);
}

img,
picture * {
  font-style: italic;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

h1, h2, h3, h4, h5, h6, strong, b {
  font-weight: bold;
}

a {
  color: var(--mainColor);
  text-decoration: none;
}

a:hover,
a:active {
  text-decoration: underline;
}

.wrapper {
  margin: 2em auto;
  width: min(90%, 600px);
}

.back {
  margin-bottom: 1em;
}

h1 {
  margin-bottom: 0.5em;
  text-align: center;
}

h1 + p {
  text-align: center;
}

h2 {
  margin-bottom: 1.5rem;
  color: var(--mainColor);
  font-size: 1.45em;
}

p + h2 {
  margin-top: 1.5em;
}

ul {
  margin-left: 1.5em;
}

.wrapper > p,
.wrapper > ul {
  margin-bottom: 1.5em;
}

.schedule {
  margin: 2em 0 2.5em;
  padding: 1.5em;
  text-align: center;
  border: 1px solid var(--mainColor);
}

.schedule p strong {
  font-size: 1.1em;
}

/* ============================ */
/* 	@media SP
/* ============================ */

@media screen and (max-width: 799px) {
  .pc {
    display: none;
  }
}


/* ============================ */
/* 	@media PC
/* ============================ */

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