@charset "UTF-8";

body{
}


.butsudan{
background-color: #282728!important;


}

.sousai{
background-color: #222c37!important;

}
.s_wrap_00{
/*  background-color: #2b3845;*/
  width: 950px;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 1px 7px 43px -5px #000;
border-radius: 1px;
z-index: 1;
height: 50px;

}

.s_wrap_01{
        background-image: linear-gradient(0deg, #1f2027, #2b3845);

  width: 950px;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 1px 7px 43px -5px #000;
border-radius: 1px;
z-index: 2;

}


.b_wrap_00{
  background-color: #3e303d;

  width: 950px;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 1px 7px 43px -5px #000;
border-radius: 1px;
z-index: 1;
height: 50px;

}

.b_wrap_01{
  background-image: linear-gradient(0deg, #1f2027, #3e303d);


  width: 950px;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 1px 7px 43px -5px #000;
border-radius: 1px;
z-index: 2;

}


.top_wrap_01{
background-image: url("../img/top_bg.jpg");
height: 100vh;
}
.top_width{
width: 950px;
  margin-left: auto;
  margin-right: auto;}
.top_layout{
margin-top: 50px;
width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top_layout li{
width: 45%;
}
.text_01{color: aliceblue; margin-top: 30px;}
.titile{
width: 100%;
z-index: 1000;
box-shadow: 0 5px 10px #000000;
position: relative;
}
.bookshelf_01{
background:  url("../img/bg_01.png") repeat-x bottom left;
display: flex;
flex-wrap: wrap;
align-content: flex-end;
justify-content: center; 

}

.bookshelf_01 .book_01{
width: 230px;
height: 352px;
position: relative;
margin-left: 30px;
margin-right: 30px;
}
.bookshelf_01 .book_01 img{
position: absolute;
bottom: 0;
}

.tate_img{
padding-left: 20px;
padding-right: 20px;
}
.over_01 {
  position: relative;                  /* 指定した分だけ相対的に移動 */
}
.over_01:hover .over_ontent_01 {
  display: inline;                     /* インライン要素として表示 */
}
 /* --- 吹き出し ------------------ */
.over_ontent_01 {
  display: none;                        /* 要素を非表示 */
  position: absolute;                   /* 親要素を基準 */
  padding: 10px;                         /* テキストの前後の余白 */
  background-color: rgba(240, 238, 225, 0.75);  /* 背景色（透明度） */
  width:180px;                          /* 吹き出し全体の幅 */
  left : 30%;                           /* 表示位置 */
  top : 100%;                           /* 表示位置 */
  margin-top : 12px;                    /* 表示位置 */
  font-size: 80%;                       /* 文字サイズ */
  animation: over_ontent_01Anime 1s linear;
  border-radius: 10px;
}
.over_ontent_01:after{
  border-bottom: 12px solid rgba(240, 238, 225, 0.75);  /* 吹き出し口の高さ・色 */
  border-left: 10px solid transparent;   /* 吹き出し口の幅１／２ */
  border-right: 10px solid transparent;  /* 吹き出し口の幅１／２ */
  top: -12px;                            /* 吹き出し口の位置調整 */
  left : 5%;                         /* 吹き出し口の横位置 */
  content: "";                       /* コンテンツの挿入 */
  position: absolute;                /* 親要素を基準 */
}
.text_idpasswrap{
position: relative;
}
.text_idpass{
position: absolute;
white-space: nowrap;
color: #fff;
top: 50px;

}
.text_lock_01_w{
text-align: center;
padding-top: 30px;
}
.text_lock_01{
display: inline-block;
background: url("../img/icon.png") no-repeat;
padding-left: 40px;
color: #fff;
font-size: 18px;
}


@keyframes over_ontent_01Anime{
 100%{ color : black; background:rgba(255, 127, 127, 0.75) }
  50%{ color : black; background:rgba(255, 127, 127, 0.25) }
   0%{ color : white; background:white   }
}