@charset "utf-8";
/* CSS Document */


/*common
------------------------------------------------------------------*/

*{
	margin:0px;
	padding:0px;
}

.thumb{
	overflow:hidden;
}

body, textarea { font-family: "メイリオ", "ＭＳ Ｐゴシック", sans-serif; }
input, select { font-family: Arial, "ＭＳ Ｐゴシック", sans-serif; }

/*body{
	background:url( ../img/bg.jpg) fixed no-repeat center top #fff;
	margin:0;
	padding:0;
	background-attachment:fixed; 
}*/
body::before {
  background:url(' ../img/bg.jpg') no-repeat left top;
  background-size: cover;;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-bottom: 108px;
  content: "";
  z-index: -1;
}   

a:hover img {
	opacity:0.7;
	filter:alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}


#wrapper{
	width:100%;
	max-width:1000px;
	margin:0 auto;
}

#wrapper img{
	max-width:100%;
}


h1{
	margin: 5px 0px 40px 0px;
	padding-top:20px;
	text-align: center;
	clear: both;
}

h2{
	text-align: center;
}

.row{
	width: 100%;
	margin:10px 0;
}

.row img{
	margin:0 0 5px 0;
}

.txtCenter{
	text-align: center;
}

.pvArea{
	width:53%;
	height:290px;
	text-align: center;
	margin: 15px auto;
	display: block;
}
.download{
	text-align: center;
	margin: 15px auto;
	display: block;
}

.spec{
	background: #fff;
	border-radius: 5px;  /* CSS3草案 */
  -webkit-border-radius: 5px;  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px; /* Firefox用 */
}

body .top_social{
	float: right;
	position: absolute;
}

.spec .social{
	margin:10px 5px 5px 15px;
}


/*メニュー*/
#menu {
	padding: 0;
	height: auto;
	line-height: 1;
	text-align: left;
}
#menu div{
 margin-bottom: 5px;
}

#menu div a {
  display: block;
  padding: 10px;
	text-decoration: none;
	color: #fff;
  line-height: 1;
}

label {
	display: block;
	margin: 0;
	padding :10px;
	line-height: 1;
	color :#fff;
	cursor :pointer;
	background-repeat: no-repeat;
	background-image: url(../img/bg_branch.png);
	background-size: cover;
}

.sub_menubar label{
	display: block;
	margin: 0;
	padding :10px;
	line-height: 1;
	color :#fff;
	cursor :pointer;
	background-repeat: no-repeat;
	background-image: url(../img/bg_sub_branch.png);
	background-size: cover;
}

label:hover{
	color: #ccc;
}

input {
	display: none;
}

#menu div ul {
	list-style: none;
	margin: 0 0 0 5px;
	padding: 0;
	height: auto;
	background :#684d3a;
	list-style: none;
	color: #fff;
}

#menu div li {
  max-height: 0;
  overflow-y: hidden;
  -webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
#menu div li:hover{
	background-color: #997256;
}



#menu .sub_menubar ul{
	background-color: #807347;
}
#menu .sub_menubar li:hover{
	background-color: #99916B;
}


#menu_bar01:checked ~ #links01 li,
#menu_bar02:checked ~ #links02 li,
#menu_bar03:checked ~ #links03 li,
#menu_bar04:checked ~ #links04 li,
#menu_bar05:checked ~ #links05 li,
#menu_bar06:checked ~ #links06 li,
#menu_bar07:checked ~ #links07 li,
#menu_bar08:checked ~ #links08 li,
#menu_bar09:checked ~ #links09 li,
#menu_bar10:checked ~ #links10 li,
#menu_bar11:checked ~ #links11 li,
#menu_bar12:checked ~ #links12 li,
#menu_bar13:checked ~ #links13 li,
#menu_bar14:checked ~ #links14 li,
#menu_bar15:checked ~ #links15 li {
	max-height: 46px;
  opacity: 1;
  border-bottom: solid 1px #4D392B;
}


/*メニューここまで*/
#story_content{
	overflow:auto;
    margin: 0;
    width: 100%;
}

#content_mein{
	/*右カラム*/
	margin-left: 300px;
    margin-bottom: 20px;
    padding: 2%;
	min-width: 100px;
	height: 800px;
	max-width: 100px;
	background-color: rgba(255,255,0,0.7);

}


#wrapper02{
	width:100%;
	height: 100%;
	margin:0 auto;
	padding: 0 2% 0 2%;
}

.content_story{
	float: right;
	max-width: 690px;
	min-width: 490px;
	background-color: rgba(255,255,255,0.8);
}

#end_line{
	padding: 20px 0;
}




.main_story{
	width: 100%;
	margin-bottom:10px;
}

.char_img{
	height: 90px;
	width: 90px;
}


footer{
	clear: both;
	text-align: center;
	text-shadow: #FFF 0px 0px 10px,#FFF 0px 0px 10px;
	padding: 20px 0;
}

.story_text_p{
	font-size:1.1em;
	line-height:1.7em;
	padding: 10px;
	width: 95%;
	margin: 0 2% 0 3%;
	background-color: rgba(255,255,255,0.9);
	border-radius: 5px;
	border: solid 1px #ccc;
}


.back01 {
	margin: 0 0 1em;
	padding: 0.4em 0.6em;
	font-size: 1.143em;
	border-top: 1px dashed #7f2d00;
	border-bottom: 1px dashed #7f2d00;
	text-shadow: 1px 1px 0 rgba(255,255,255,1);
	box-shadow: 0 5px 4px -4px rgba(127,45,0,0.3) inset;
	-moz-box-shadow: 0 5px 4px -4px rgba(127,45,0,0.3) inset;
	-webkit-box-shadow: 0 5px 4px -4px rgba(127,45,0,0.3) inset;
	-o-box-shadow: 0 5px 4px -4px rgba(127,45,0,0.3) inset;
	-ms-box-shadow: 0 5px 4px -4px rgba(127,45,0,0.3) inset;
	background: rgba(244,209,145,0.4);
	text-align: center;
	font-weight: bold;

}

#main_content_001{
	width: 100%;
	height: auto;
	max-width: 1000px;
}

.wrapper_001 {
     float: right;
     margin: 0;
     width: 100%;
     margin-left: -300px;
}
 
.content_001 {
     margin-left: 300px;
     margin-bottom: 20px;
     background-color: rgba(255,255,255,0.7);
     padding: 2%;
}
 
.sidebar_001 {
     border: 2px solid #000;
     width: 290px;
     height: auto;
}
 
 
@media (max-width: 850px) {
	/*以下*/
	.wrapper_001{
		margin: 0;
	}
	#menu{
		margin: 0 auto; 
		max-width: 600px;
		height: 100%;
	}
	label{
		height: 100%;
		padding: 24.5px;
		font-size: 1.5em;
	}
	.sub_menubar label{
		height: 100%;
		padding: 24.5px;
		font-size: 1.5em;
	}
	#menu div ul {
		width: 552px;
		font-size: 1.2em;
	}
	.content_001{
		margin: 0 0 20px 0;
	}
	.main_story{
		margin: 10px 1% 10px 1%;
	}
	.main_story tbody tr{
		width: 98%;
	}
	.story_tit{
		background-image: url(../img/bg_h1.jpg);
		background-position: center;
		background-repeat: no-repeat;
		margin: 10px auto 20px auto;
		widows: 100%;
		color: #fff;
		font-size: 1.5em;
		text-align: center;
		padding: 20px 0 20px 0;
		vertical-align:middle;
	}
}
@media (max-width: 625px) {
	#menu{
		margin: 0 auto; 
		max-width: 400px;
		height: 100%;
	}
	label{
		height: 100%;
		padding: 14px;
		font-size: 1.3em;
	}
	.sub_menubar label{
		height: 100%;
		padding: 14px;
		font-size: 1.3em;
	}
	#menu div ul {
		width: 364px;
		font-size: 1.1em;
	}
}
@media (max-width: 430px) {
	/*以下*/
	.nav-collapse{
		display: none;
	}
	#menu{
		margin: 0 auto; 
		max-width: 300px;
		height: 100%;
	}
	label{
		height: 100%;
		padding: 10px;
		font-size: 1.1em;
	}
	.sub_menubar label{
		height: 100%;
		padding: 10px;
		font-size: 1.1em;
	}
	#menu div ul {
		width: 270px;
		font-size: 1em;
	}
}

@media screen and (min-width: 851px) {
	/*以上*/
	.wrapper_001{
		padding: 0 2%;
	}
	#story_content{
		float: right;
    	margin-left: -300px;
	}
	#menu {
		float: left;
		width: 290px;
	}
	.main_story{
		margin: 10px 20px 10px 20px;
	}
	.story_tit{
		margin: 10px auto 20px auto;
		background-image: url(../img/bg_h1.jpg);
		background-position: center;
		background-repeat: no-repeat;
		color: #fff;
		font-size: 1.5em;
		text-align: center;
		padding: 20px 0 20px 0;
		vertical-align:middle;
	}
	#menu div ul{
		width: 268px;
	}
	.top_navi{
		display: none;
	}
}



.se_text{
	text-align: center;
	font-size: 1.25em;
    line-height: 1.7em;
    font-weight: bold;
    padding: 15px 0;
}

.enemy_text{
	text-align: center;
	color: #CC1800;
	font-size: 1.25em;
    line-height: 1.7em;
    font-weight: bold;
    padding: 15px 0;
}

.btn_text{
	display: block;
	margin: 20px auto 50px auto;
	text-align: center;
}
.next_btn{
	margin: 0 auto;
	max-width: 120px;
    background: -moz-linear-gradient(top,#BFD9E5, #63B0CF 50%,#0080B3 50%,#09C);
    background: -webkit-gradient(linear, left top, left bottom, from(#BFD9E5), color-stop(0.5,#63B0CF), color-stop(0.5,#0080B3), to(#09C));
    border: 1px solid #DDD;
    color: #FFF;
    width: 100px;
    padding: 10px 0;
    text-align: center;
	padding: 10px 20px;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

.next_btn:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  color: #fff;
  text-decoration: none;
}
#menu .chara_btn a{
	padding: 20px 0 20px 0;
	text-align: center;
	font-size: 1.5em;
	font-weight: bold;
	 text-shadow: 2px 2px 1px #2b2b2b,
    -2px 2px 1px #2b2b2b,
    2px -2px 1px #2b2b2b,
    -2px -2px 1px #2b2b2b;
 
}
.chara_btn{
	cursor :pointer;
	background-repeat: no-repeat;
	background-image: url(../img/chara_btn.png);
	background-size: cover;
	height: 100%;
}
.chara_btn:hover{
	transition:all 0.4s ease;
	opacity: 0.8;
	filter: alpha(opacity=70); 
}

.content_001 hr{
	color: #333;
}

.top_navi{
	margin: 0px 8% 10px 8%;
	text-align: center;
	clear: both;
}
.top_navi_menu{
	text-align: center;
}

/*chara
------------------------------------------------------------------*/
.chara_table{
	width:100%;
}

.chara_table td{
	padding:5px;
	border:1px solid #CCC;
	text-align:center;
}



.chara_name{
	text-align:center;
	background:#000;
	font-weight:bold;
	color:#fff;
}
