body {
  background: #f7f7f7;
  font-family: sans-serif;
  color: #181818;
  text-align: center;
  margin: 0;
  padding: 0;
}

section {
  margin: 0 auto;
  display: none;
  padding: 20px;
}

section.active {
  display: block;
}

h1 {
  padding: 100px 0;
  background-image: url("image/title_img.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center center;
}

input {
  font-size: 1rem;
  margin: 5px;
  padding: 8px 12px;
  border-radius: 5px;
}

button {
  font-size: 1rem;
  margin: 5px;
  padding: 8px 12px;
  border-radius: 5px;
  border: none;
}

ol {
  margin: 0 auto;
  width: 40%;
}

li {
  font-size: 14px;
  margin: 5px 0;
  text-align: left;
}

canvas {
  background: #f7f7f7;
  margin: 10px auto;
  display: block;
  max-width: 100%;
}

#courseSelections {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#courseSelections button {
  background: #00bfff;
  color: #f7f7f7;
  width: 150px;
}

#settingTitle {
  margin-block-start: 10px;
}

#courseSelectionsTitle {
  margin-top: 150px;
}

#start-buttons button {
  margin: 5px;
}

#flash {
  background: #ffb6c1;
  border-radius: 5px;
  padding: 10px;
  margin: 5px auto;
  width: 30%;
  display: none;
}

#endButton {
  background: #dc143c;
  color: #f7f7f7;
  margin: 20px auto;
  display: none;
}

#endButton:hover {
  background: #b22222;
}

.column-button {
  color: #f7f7f7;
  background: #228b22;
}

.column-button:hover {
  background: #006400;
}

#toCourseSelection, #startGame, .start-button {
  background: #00bfff;
  color: #f7f7f7;
}

#toCourseSelection:hover, #courseSelections button:hover, #startGame:hover, .start-button:hover {
  background-color: #6495ed;
}

#playbackSpeedContents {
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-bottom: 10px;
}

#playbackSpeedChoices {
  display: inline-block;
  margin: 10px 0 10px;
}

#fastForwardButtons {
  display: none;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}

#fastForwardButton, #slowButton {
  background: #c0c0c0;
  padding: 12px 16px;
  margin-left:5px;
}

#fastForwardButton:hover, #slowButton:hover {
  background: #a9a9a9;
}

#oneSpeed {
  margin-right: 5px;
}

#twoSpeed {
  margin-right: 5px;
}

/* スマホ用 */
@media screen and (max-width: 479px) {

  h1 {
    margin-bottom: 100px;
  }

  #toCourseSelection {
    margin-top: 100px;
  }

  #settingTitle {
  margin-block-end: 10px;
}

  ol {
    width: 80%;
  }

  li {
    font-size: 11px;
  }

  .column-button {
    font-size: 12px;
  }

  #currentPlayerTitle {
    font-size: 16px;
    margin-top: 100px;
  }

  #playbackSpeedContents {
    font-size: 16px;
  }
}