@charset "UTF-8";
@page {
  size: landscape;
}

@media print {
  .print_pages {
    /*A4横*/
    width: 251mm;
    height: 172mm;
    /*最後のページは改ページを入れない*/
    page-break-after: auto;
  }
  .final_chara {
    display: none;
  }
  .tyiping_game_finalwindow_btns {
    visibility: hidden;
    width: 0;
    height: 0;
  }
  .tx-shadow {
    text-shadow: initial !important;
  }
  .tyiping_game_finalwindow_Rank {
    text-shadow: initial !important;
  }
}

body {
  font-family: "Rounded Mplus 1c", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
}

/* =============================================

.typing_game_wrap
	.typing_game_inr //タイピング最初の画面
		.typing_game_info //タイピングのミスした数などの情報
		.typing_game_q //STARTボタン-入力画面
		.tyiping_game_timer //タイピング残り時間

	.tyiping_game_finalwindow //タイピング終了後の印刷画面

============================================= */
/*---------------------------------
  
 タイピング画面全体-ここで背景画像を変えて調整してください。

---------------------------------*/
.typing_game_wrap {
  background-color: #55acee;
  background-image: url(../images/typing-2022/bg-modal.png);
  background-size: cover;
  background-position: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100vh;
  padding: 40px 0;
  width: 100%;
}

/*---------------------------------
 タイピングゲーム最初の画面（タイピング中）の画面全体
---------------------------------*/
.typing_game_inr {
  height: 100%;
  position: relative;
}

/*---------------------------------
 タイピングゲーム最初の画面（タイピング中）の大枠
---------------------------------*/
.typing_game_window {
  height: 450px;
  width: 860px;
  position: absolute;
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: relative;
}

/*---------------------------------
 STARTボタン/入力部分
---------------------------------*/
.typing_game_q {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 240px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  width: 460px;
  z-index: 1;
  position: relative;
}

/* START部分 */
input[type="button"]#start-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: -webkit-gradient(linear, left top, left bottom, from(#F1C8DF), color-stop(#D4C5EC), to(#B5E7FA));
  background: linear-gradient(#F1C8DF, #D4C5EC, #B5E7FA);
  border: none;
  border-radius: 25px;
  color: #fff;
  font-size: 24px;
  height: 70px;
  width: 360px;
  z-index: 999;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  cursor: pointer;
}

#start-button.start {
  display: none;
}

/* 問題の文字 */
.typing_game_q > span {
  color: #00d7ff;
  display: block;
  font-size: 40px;
  font-weight: bold;
  left: 50%;
  line-height: 1.5;
  position: absolute;
  top: 15px;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  z-index: -1;
  width: 300px;
}

.typing_game_q > #word2 {
  /* color: #00d7ff; */
  color: #63D6F5;
  font-size: 26px;
  font-weight: normal;
  padding-top: 130px;
}

/* 入力部分 */
#type {
  font-size: 26px;
  margin-top: 38px;
}

.tyiping_game_input {
  font-size: 20px;
  font-weight: 900;
  background: -webkit-gradient(linear, left top, left bottom, from(#f4dbe9), color-stop(#f2eef9), to(#d7f1fc));
  background: linear-gradient(#f4dbe9, #f2eef9, #d7f1fc);
  border-radius: 25px;
  border-left: 3px solid #F994B8;
  border-right: 3px solid #64D3F6;
  /* background-color: #555; */
  /* bottom: 50px; */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #333;
  display: none;
  font-size: 14px;
  height: 60px;
  padding: 15px 30px 5px 46px;
  text-align: left;
  width: 360px;
  z-index: 998;
  position: absolute;
  left: 50%;
  top: 30%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.tyiping_game_input::before {
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  content: "";
  display: inline-block;
  height: 8px;
  left: 10px;
  margin: -3px 0 0 0;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  width: 8px;
}

/*---------------------------------
 残り時間の表示
---------------------------------*/
.tyiping_game_timer {
  color: #F6A84D;
  height: 100px;
  position: absolute;
  right: 50px;
  text-align: center;
  top: 50px;
  width: 100px;
}

.typing_game_timer_span {
  font-size: 16px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.typing_game_timer_span span:nth-of-type(1) {
  display: block;
}

.typing_game_timer_span span:nth-of-type(2) {
  font-weight: 800;
}

@-webkit-keyframes load {
  0% {
    stroke-dashoffset: 0;
  }
}

@keyframes load {
  0% {
    stroke-dashoffset: 0;
  }
}

.progress.start {
  position: relative;
  display: inline-block;
  text-align: center;
}

.progress.start > li {
  display: inline-block;
  position: relative;
  text-align: center;
  font-family: Lato;
}

.progress.start > li:before {
  content: attr(data-name);
  position: absolute;
  width: 100%;
  top: 2.5rem;
  font-weight: 400;
}

.progress.start > li:after {
  content: attr(data-percent);
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  font-size: 1.5rem;
  text-align: center;
}

.progress.start svg {
  width: 9rem;
  height: 9rem;
}

.progress.start svg:nth-child(2) {
  position: absolute;
  left: 0;
  top: 100;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.progress.start svg:nth-child(2) path {
  fill: none;
  stroke-width: 15;
  stroke-dasharray: 629;
  stroke: #ffffff;
  opacity: .8;
  -webkit-animation: load 120s 3s backwards;
          animation: load 120s 3s backwards;
}

/*---------------------------------
印刷画面
---------------------------------*/
.tyiping_game_finalwindow {
  background-image: url(../images/typing-2022/bg-final.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50%;
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

.tyiping_game_finalwindow_inr {
  background-color: #FFF;
  border: 30px solid #F3F9FD;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 95vh;
  width: 90%;
  border-radius: 100px;
  padding: 30px;
  opacity: 1;
}

.final_chara {
  background-image: url(../images/typing-2022/asset_tako.png);
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 300px;
  left: 90%;
  position: absolute;
  top: 90%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 300px;
}

.tx-shadow {
  text-shadow: 1px 2px 2px #333;
}

.tyiping_game_finalwindow_infoWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  opacity: 1;
}

.tyiping_game_finalwindow_info {
  background: #fbccde;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbccde), color-stop(40%, #bcc1ec), color-stop(57%, #a2bdf2), color-stop(63%, #a4bef1), to(#96defc));
  background: linear-gradient(180deg, #fbccde 0%, #bcc1ec 40%, #a2bdf2 57%, #a4bef1 63%, #96defc 100%);
  border: 3px #F7FBFE solid;
  /* 枠線を引く */
  border-radius: 60px;
  /* 角丸の指定 */
  font-size: 20px;
  text-align: center;
  padding: 20px 10px 20px;
  min-height: 140px;
  min-width: 286px;
  color: #fff;
  font-size: 30px;
}

.tyiping_game_finalwindow_info .unit {
  padding: 20px 0 0;
}

.tyiping_game_finalwindow_info .unit > span {
  font-size: 100px;
  font-weight: bold;
}

.tyiping_game_finalCalculate_wrap {
  background: #fbccde;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbccde), color-stop(40%, #bcc1ec), color-stop(57%, #a2bdf2), color-stop(63%, #a4bef1), to(#96defc));
  background: linear-gradient(180deg, #fbccde 0%, #bcc1ec 40%, #a2bdf2 57%, #a4bef1 63%, #96defc 100%);
  border: 3px #F7FBFE solid;
  /* 枠線を引く */
  border-radius: 60px;
  /* 角丸の指定 */
  font-size: 20px;
  text-align: center;
  padding: 20px 10px 20px;
  height: 280px;
  min-width: 720px;
  color: #fff;
  font-size: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 10px auto 10px;
  padding: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.tyiping_game_finalwindow_Score .unit {
  padding: 30px 0;
}

.tyiping_game_finalwindow_Score .unit > span {
  font-size: 100px;
  font-weight: bold;
}

.tyiping_game_finalwindow_Rank {
  background-color: #FFF;
  border-radius: 30px;
  color: #B093C3;
  text-shadow: 0px 0px 6px #aaa8ab;
  height: 200px;
  width: 300px;
}

.tyiping_game_finalwindow_Rank .unit > span {
  padding: 0px 0 30px;
  font-size: 160px;
  font-weight: bold;
}

.tyiping_game_finalwindow_btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.tyiping_game_finalwindow_btns > div > a {
  display: inline-block;
  margin: 0 10px;
}

.btn_restart {
  background-image: url(../images/typing-2022/Reload_btn.png);
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 50px;
  width: 350px;
}

.btn_print {
  background-image: url(../images/typing-2022/Print_btn.png);
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px 0 50px;
  width: 150px;
}

/*---------------------------------
  
 タイピング中のinfomation文字装飾

---------------------------------*/
.typing_game_info {
  color: #7DC6D8;
  font-size: 16px;
  font-weight: 500;
  position: absolute;
  top: 230px;
  right: 30px;
}

.typing_game_info > p {
  background: radial-gradient(#F4FCFF, #E6F4F9);
  border-radius: 20px;
  margin-top: 10px;
  padding: 10px;
}

/*---------------------------------
  
 タイピング中のタコのキャラクター

---------------------------------*/
.chara1, .chara2, .chara3 {
  background-size: contain;
  background-repeat: no-repeat;
  height: 260px;
  width: 360px;
}

.chara1 {
  background-image: url(../images/typing-2022/asset_tako.png);
  position: absolute;
  top: 80%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.chara2 {
  background-image: url(../images/typing-2022/on_cri_hontai.png);
  position: absolute;
  top: 10%;
  left: 20%;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  height: 260px;
  width: 260px;
}

.chara3 {
  background-image: url(../images/typing-2022/en_cr_hontaii.png);
  position: absolute;
  top: 50%;
  left: 25%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: 260px;
  width: 260px;
}
/*# sourceMappingURL=typing-romaji-2.css.map */