@charset "UTF-8";
body{
  margin: 0;
  padding: 0;
}
/* 上に戻るボタン */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #3f98ef;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  /* content: '\f102'; */
  content: '戻';
  font-size: 20px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
/* ここまで上に戻るボタン */

/* ３列テーブルここから */
table.mokuzi_3{
  width: 330px;
  margin: 10px auto 10px auto;
  /* border-collapse: collapse; */
}
table.mokuzi_3 td{
  width: 110px;
  height:110px;
  /* border: 1px solid black; */
  padding: 5px;
}
/* ３列テーブルここまで */

/* 灰色背景 */
div.gray{
  background-color: rgb(243, 243, 243);
}
/* 緑色背景 */
div.green{
  background-color: rgb(199, 255, 210);
}
/* 濃い緑色背景 ＢＯＸ用*/
div.dark_green{
  width: 320px;
  margin: 5px auto 0 auto;
  padding: 10px 0;
  background-color: rgb(39, 177, 62);
  text-align: center;
  color: white;
}
/* 黄色背景320px */
div.yellow_320px{
  background-color: rgb(255, 255, 212);
  width: 320px;
  margin: 5px auto;
  padding: 15px 10px;
}
table.ranking{
  width: 310px;
  background-color: white;
  margin: 10px 5px 10px 5px;
  border-collapse: collapse;
  line-height : 40px;
}

table.ranking td{
  font-size: 14px;
  color: #3b5998;
  line-height: 32px;
  width: 160px;
  text-align: left;
  border: 1px solid white;
  vertical-align: middle;
  padding-left: 5px;
}

hr.red{
  background-color:red;
  height: 2px;
  width: 70%;
}
div.container{
  overflow: hidden;
  width:360px;
  margin: 0 auto;
  font-size: 18px;
  font-family:"Meiryo","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Osaka", sans-serif;
}
div.top{
  background: red;
  text-align: center;
/* ...............................グラデーション....... */
animation: bg-color 10s infinite;
-webkit-animation: bg-color 10s infinite;
/* ...........グラデーションここまで................... */
  }

/* ...............................グラデーション....... */
@-webkit-keyframes bg-color {
  0% { background-color: #e74c3c; }
  20% { background-color: #f1c40f; }
  40% { background-color: #1abc9c; }
  60% { background-color: #3498db; }
  80% { background-color: #9b59b6; }
  100% { background-color: #e74c3c; }
}
@keyframes bg-color {
  0% { background-color: #e74c3c; }
  20% { background-color: #f1c40f; }
  40% { background-color: #1abc9c; }
  60% { background-color: #3498db; }
  80% { background-color: #9b59b6; }
  100% { background-color: #e74c3c; }
}
/* ...........グラデーションここまで................... */

div.top a{
  display: block;
  /* background: red; */
  text-align: center;
  text-decoration: none;  /* リンクの下線を消す */
  font-size: 30px;
  line-height: 100px;
  color:white;
  font-weight: bold;
}

div.cm{
  margin:3px auto 3px auto;
  width:360px;
  line-height : 32px;
  font-size: 16px;
  text-align: center;
}
div.rela{
  position: relative;
  text-align: center;
}
div.a_1{
  position: absolute;
  top: 50px;
  left: 205px;
  width: 8px;
  height: 30px;
  border-radius: 50%;
  background-color:white;
  box-shadow: 0 0 30px 20px white;
  animation: flash 0.3s ease infinite normal;
}
@keyframes flash {
  50% {
    opacity: 0.1;
  }
}

div.center{
  margin: 5px auto 3px auto;
  line-height : 20px;
  font-size: 18px;
  text-align: center;
}
div.center_waku{
  margin: 3px 9px 3px 9px;
  padding: 0;
  line-height : 20px;
  text-align: center;
  border: 1px solid;
}
div.center_bold{
  margin: 5px auto 3px auto;
  line-height : 20px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
div.center_big{
  margin: 20px;
  line-height : 50px;
  font-size: 30px;
  text-align: center;
}
div.center_red{
  margin: 20px;
  font-size: 16px;
  color: red;
  text-align: center;
}
div.close{
  margin: 20px 0;
  text-align: center;
}
input.button{
  line-height : 36px;
  font-size: 26px;
}

div.kanzi{
  width:340px;
  font-size: 16px;
  line-height:23px;
  color: white;
  /* background-color : grey; */
  background-color : #666666;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  padding: 8px 0 0 0;
}

div.ans{
  font-size: 18px;
  line-height:30px;
  margin: 6px auto;
  text-align: center;
}

div.navy{
  margin-left:auto;
  margin-right:auto;
  margin-top: 20px;
  width: 340px;
  font-size: 20px;
  color: white;
  line-height:40px;
  text-align: center;
  background-color : navy;
}
span.bold{
  font-weight: bold;
}
span.bold_big{
  font-size: 20px;
  font-weight: bold;
}
span.small{
  font-size: 16px;
}
p.bun{
  text-align: left;
  font-size: 16px;
  line-height: 26px;
  margin: 0;
  padding: 0 20px;
}
p.bun_right{
  text-align: right;
  font-size: 16px;
  line-height: 26px;
  margin: 0;
  padding: 0 20px;
}
p.bun_white{
  text-align: left;
  font-size: 16px;
  background-color: white;
  line-height: 26px;
  margin: 0;
  padding: 10px 20px;
}
p.bun_a{
  text-align: left;
  font-size: 5px;
  line-height: 5px;
  margin: 0;
  /* padding: 0 20px; */
}
p.day{
  font-weight : bold;
  font-size: 20px;
  text-align: center;
  padding: 6px 0;
  margin: 0 10px;
}

p.main_2{
  font-family: “トーキング”,Talking;
  font-size: 22px;
  text-align: left;
  font-weight:normal;
  margin:20px auto;
  padding:0 20px 0 30px;
}

h1{
  line-height : 40px;
  font-size: 25px;
  color: red;
  font-weight : bold;
  padding: 2px 10px;
  margin: 2px 10px;
  text-align: center;
  border-bottom: solid 4px #ff0000;
}
h2{
  line-height : 40px;
  font-size: 25px;
  color: red;
  font-weight : bold;
  padding: 2px 10px;
  margin: 20px 10px 0 5px;
  text-align: center;
  border-bottom: solid 4px #ff0000;
}
.mawaru{
    animation: anime_move1 20s linear infinite;
}
@keyframes anime_move1 {
    0% { transform: rotateX(0deg) rotate(0deg); }
    100% { transform: rotateX(0deg) rotate(360deg); }
}

/* ＳＮＳ */
/*---SNSシェアボタン---*/
/* ボタン上の文字 */
.fa-twitter:before, .fa-hatena:before, .fa-line:before, .fa-pocket:before
{
  font-family: helvetica neue,helvetica,arial,sans-serif;

  /* font-size:14px */
}
.fa-facebook:before {
  content: "f";
  font-family: Verdana;
  font-size:23px;
  /* font-weight: bold */
}
.fa-twitter:before {
  content: "twitter";
  font-size:23px;
}

.fa-hatena:before {
  content: "B!";
  font-family: Verdana;
}
.fa-line:before {
  content: "Line";
  font-size:23px;
}
.fa-pocket:before {
  content: "pocket";
}

/* ボタン表示位置の調整 */
.button-area {
  text-align: center;
  overflow:hidden;
  /* clear:left; */
  margin-top:15px;
  margin-left: 8px;
  margin-bottom: 15px;
}

/* タイトルの表示設定 */
.button-area-title {
  text-align: center;
  padding:.7em;
}

/* ボタンブロックのデザイン */
.button-area li a {
  padding: 2px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  border-radius: 4px; 
}

/* SNSごとの背景色 */
.twitter a {
  background-color: #55acee;
}
.facebook a{
  background-color: #3b5998;
}
.hatena a{
  background-color: #008fde;
}
.line a{
  background-color: #1dcd00;
}
.pocket a{
  background-color: #ea5a6c;
}

/* リスト「・」の削除 */
.button-area ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* ボタン幅と余白の設定 */
.button-area li {
  float: left;
  /* width: 19%; */
  width: 32%;
/* 追加 */
  line-height: 30px;
  margin: 0 .3%;

}

.button-area  ul:after {
  display: block;
  clear: both;
}

/* ボタンにカーソルを合わせた時の表示設定 */
.button-area li a:hover {
  -ms-transform: translateY(-2px);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
/* ＳＮＳボタンここまで */

div.policy{
  width: 320px;
  text-align: center;
  font-size: 20px;
  margin: 10px auto;
  padding: 10px;
  background-color: #3b5998;
  color: white;
}
div.policy a{
  font-size: 20px;
  color: white;
}
footer{
  width: 100%;
  line-height : 30px;
  font-size: 18px;
  text-align: center;
}
