@charset "utf-8";

html {
  font-size: 16px;
}

/* 「*」はユニバーサルセレクタ（すべての要素を対象にするセレクタ）でbox-sizing: border-box;を指定 */
/* この指定（してい）はborderとpaddingをボックスサイズ（widthとheight）の中に含めて算出するので、スタイリングがしやすい*/
*, *::before, *::after {
  box-sizing: border-box;
}

body {
  line-height: 1.5;
  color: rgb(73, 72, 72);
  font-family: "Helvetica Neue",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
  background: #EEEEEE;
  overflow: hidden;
}
/*******************************************************/
/* ヘッダー                                             */
/*******************************************************/
h1 {
  font-size: 3em;
  color: rgb(26, 212, 212);
  text-align: center;
}
/*******************************************************/
/* 計算機全体                                           */
/*******************************************************/
.wrapper {
  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;
}

.f-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  width: 220px;
  height: 320px;
  justify-content:center; /*アイテムを上下中央揃えで配置*/
  align-items: center; /*アイテムを上下中央揃えで配置*/
}
.f-box {
  display: flex;
  flex-wrap: wrap;
  width: 220px;
  height: 320px;
  justify-content:center; /*アイテムを上下中央揃えで配置*/
  align-items: center; /*アイテムを上下中央揃えで配置*/
}
.f-item {
  margin: 0;
  padding: 0;
  width: calc(196px / 4);
  height: calc(258px / 5);
  font-size: 2em;
  text-align: center;
  vertical-align: middle;
}
.btn {
  display: inline-block;
  color: whitesmoke;
  border: solid 0.02px rgb(241, 241, 241);
  border-bottom: solid 4px grey;
  border-radius: 10px;
  background: rgb(26, 212, 212);
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
}
.btn:active {
  transform: translateY(4px);/*下に動く*/
  border-bottom: none;/*線を消す*/
}
#calcLog {
  width: 196px;
  font-size: 16px;
  color: rgb(173, 170, 170);
  border: none;
  text-align: right;
}
#result {
  width: 196px;
  color: grey;
  border: solid 1px grey;
  text-align: right;
}
#cancel {
  width: 147px;
}
#num0 {
  width: 147px;
}

/*******************************************************/
/* フッター                                             */
/*******************************************************/
footer> p {
  position: absolute;/*←絶対位置*/
  bottom: 15px; /*下に固定*/
  width: 100%;
  margin: 0px;
  padding: 1px;
  color: whitesmoke;
  font: 16px Rajdhani;
  text-align: center;
  background: rgba(1, 24, 31, 0.7);
}

.mgn-01{
  margin-left: 1em;
  margin-right: 1em;
}
/*******************************************************/
/* class=back                                         */
/* id=btn99 backボタン                                 */
/*******************************************************/
.back{
  text-align: left;
}
#btn99{
  padding: 0.5em;
  border-radius: 0.3em;
  color: whitesmoke;
  font-size: 1.5em;
  background: rgb(26, 212, 212);
  cursor: pointer; /*カーソルをポインターの形（かたち）にする*/
}