@charset "utf-8";

html {
  font-size: 16px;
}

/* 「*」はユニバーサルセレクタ（すべての要素を対象にするセレクタ）でbox-sizing: border-box;を指定 */
/* この指定（してい）はborderとpaddingをボックスサイズ（widhtとheight）の中に含めて（ふくめて）算出（さんしゅつ）するので、スタイリングがしやすい*/
*, *::before, *::after {
  box-sizing: border-box;
}

body{
  margin: 0;
  line-height: normal;  /*ブラウザが自動的に行間を決める*/
  font-family: "Helvetica Neue",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
  /* background: rgb(233, 168, 227); */
  background: #bf7fff;
  overflow: hidden;
}

p{
  margin: 0;
  padding: 0;
}

/*******************************************************/
/* ヘッダー                                             */
/*******************************************************/
header {
  margin-top: 8px;
  color: rgb(255, 251, 0);
  font-size: 38px;
  font-weight: bold;
  text-align: center;
  background: rgb(71, 71, 71);
}
/*******************************************************/
/* ゲーム全体                                           */
/*******************************************************/
.wrapper {
  position: relative;/*相対位置*/
  max-width: 100vw;  /*すべての要素をbox-sizing:border-boxとしているので全て含めてmin-width:100vwに*/
  min-height: 100vh; /*すべての要素をbox-sizing:border-boxとしているので全て含めてmin-height:100vhに*/
  margin: 0;
  padding: 0;
  padding-bottom: 23px;/*footer+paddingの高さ*/
  text-align: center;
}

/*******************************************************/
/* ゲームエリア                                         */
/*******************************************************/
/* class=game-container   ゲームエリア*/
.game-container {
  padding: 40px 0;
}
/* class=message-container   メッセージエリア*/
.message-container {
  margin-bottom: 20px;
  font-size: 2em;
  font-weight: bold;
  overflow: hidden;
}

/****************************************/
/* class=squares-container              */
/****************************************/
.squares-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  width: 254px;
}

.squares-box {
  width: 254px;
  height: 254px;
  display: flex;
  flex-wrap: wrap;
  border: solid 2px #333;
}

.square {
  position: relative;
  font-size: 46px;
  width: calc(250px / 4);
  height: calc(250px / 4);
  border: solid 2px #333;
  color:#4a488e;
  font-weight: bold;
}

/* protect：ホバーやクリックなどのマウスイベントを無効（むこう）にする*/
.js-unclickable {
  pointer-events: none;
}

/*******************************************************/
/* ボタンのスタイル                                     */
/*******************************************************/
/* class = "btn" */
.btn{
  margin-top: 8px;
  padding: 12px;
  border-radius: 10px;
  color: whitesmoke;
  font-size: 24px;
  background: rgb(26, 212, 212);
  user-select: none;
  cursor: pointer; /*カーソルをポインターの形（かたち）にする*/
}
/*******************************************************/
/* backボタン                                          */
/*******************************************************/
/* class = "back" */
.back{
  margin-top: 8px;
  text-align: left;
}

/*******************************************************/
/* ボタンエリア                                         */
/*******************************************************/
/* class = ".btn-container" */
.btn-container {
  padding-top: 40px;
}

.btn-container {
  margin: 0px 100px 5px;
  font-size: 1em;
  font-weight: bold;
}
.btn-area {
  display: flex;
  justify-content: space-around;
}
.btn1 {
  padding:10px;
  border-radius: 10px;
  font-size: 24px;
  color: whitesmoke;
  background: grey;
  border: solid 2px #333;
  user-select: none;
  cursor: pointer; /*カーソルをポインターの形（かたち）にする*/
}
.js-inactive {
  opacity: 0.6;
}
/* protect：ホバーやクリックなどのマウスイベントを無効（むこう）にする*/
.js-unclickable {
  pointer-events: none;
}
/*******************************************************/
/* footer                                              */
/*******************************************************/
footer> p {
  position: absolute;/*←絶対位置*/
  bottom: 5px; /*下に固定*/
  width: 100%;
  margin: 0px;
  padding: 1px;
  color: whitesmoke;
  font: 16px Rajdhani;
  text-align: center;
  background: rgba(1, 24, 31, 0.7);
}

/*******************************************************/
/* タイマー表示                                         */
/*******************************************************/
.time-container {
  display: flex;
  flex-flow: row wrap;
  margin: 0px;
  justify-content: center;
  background: #ffd347;
  /* height: 100px;
  line-height: 100px;
  font-size: 50px;
  margin-bottom: 10px; */
}
.time-item {
  margin: 10px 0px;
  height: 100px;
  line-height: 100px;
  font-size: 25px;
}
i {
  color:grey;
}
#timer {
  font-size: 50px;
}

.timer-fontColor_hidden {
  color: #ffd347;
}
.timer_appear {
  transition: 1s;
}

/*******************************************************/
/* Media Query responsive setting                      */
/*******************************************************/
/* mobileのときのスタイル */
@media screen and (max-width: 480px) {
	.wrapper {
    padding-bottom: 23px;/*←footer+paddingの高さ*/
  }
  .btn-container {
    padding-top: 2px;
  }
  /* ヘッダー */
  header {
    font-size: 34px;
  }
  /* メッセージ */
  #msgtext {
    font-size:38px;
  }
}