@charset "utf-8";

/* formatting style
------------------------------------------*/
* {
	font-style: normal;
	margin: 0px;
	padding: 0px;
    text-decoration: none;
}



body {
	color: #333333;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
    background-image: url(../images/base.gif);
	background-attachment: fixed;
	font-size: 75%;
	line-height: 1.6;
	padding-bottom: 0px;
	background-repeat: repeat;
}

br {
	margin: 0px;
	padding: 0px;
}
.style2 {
	font-size: 18px;
	padding: 0;
	margin: 0;
	line-height: 22px;
}
.style3 {
	font-size: 16px;
	font-weight: bold;
}
/* link styles
------------------------------------------*/


a img {
	border-style: none;
}

/*リンク画像をホバーで明るくする　1.0が元の明るさ*/
a img:hover {
     -webkit-filter: brightness(1.1);
     -moz-filter: brightness(1.1);
     -o-filter: brightness(1.1);
     -ms-filter: brightness(1.1);
     filter: brightness(1.1);
}


a:link {
	color: #0000FF;
	text-decoration: none;
}
a:visited {
	color: #0000FF;
	text-decoration: underlin;
}
a:hover {
	color: #FF0000;
	text-decoration: underlin;
}
a:active {
	text-decoration: underlin;
}
/* basic layout
------------------------------------------*/


#container {
	width: 840px;
	/*	background-image: url(../images/body.png);
	background-repeat: repeat-y;
*/
	height: auto;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	/*	padding-left: 10px;
	padding-right: 10px;
*/	padding-bottom: 0px;
	background-color: #FFFFFF;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
#header {
	position: relative;
	height: 110px;
	width: 840px;
	background-image: url(../images/header.jpg);
}

#container #contents #spec hr {
	background-image: url(../images/product_hr.gif);
}
#header #debonosu {
	position: absolute;
	top: 30px;
	left: 715px;
}
#info {
	position: absolute;
	top: 25px;
	left: 298px;
	background-color: #FFFFFF;
	width: 400px;
	height: 30px;
	color: #666666;
	/*	border: #333333 1px solid;
*/	border-radius: 5px;
	line-height: 30px;
	font-size: 1.3em;
	font-weight: 500;
	padding: 0 0 0 10px;
}
#infotext {
	vertical-align:middle;
}
#date {
	color: #333333;
	font-size: 0.8em;
	font-weight: 700;
	vertical-align:middle;
}

#header02 #debonosu {
	position: absolute;
	top: 10px;
}
#contents #spec .product_hr {
	margin-left: 20px;
}
#container .pagetop {
	clear: both;
	text-align: center;
	font-size: 12px;
	padding-top: 10px;
	padding-bottom: 10px;
}
#container .pagetop a:link {
	color: #333333;
	text-decoration: none;
	background-image: url(../images/icon_arrow.png);
	background-repeat: no-repeat;
	background-position: center left;
	padding-left: 12px;
}
#container .pagetop a:visited {
	color: #333333;
	text-decoration: none;
	background-image:url(../images/icon_arrow.png);
	background-repeat: no-repeat;
	background-position: center left;
	padding-left: 12px;
}
#container .pagetop a:hover {
	color: #FF0000;
	text-decoration: none;
	background-image:url(../images/icon_arrow.png);
	background-repeat: no-repeat;
	background-position: center left;
	padding-left: 12px;
}
#container .pagetop a:active {
	color: #333333;
	text-decoration: none;
	background-repeat: no-repeat;
	background-position: center left;
	padding-left: 12px;
}
#contents {
	width: 840px;
	height: auto;
}
#footer {
	color: #CC66FF;
	background-color: #9a1234;
	/*	background-image: url(../images/footer.png);
	background-repeat: no-repeat;
*/	height: 50px;
	width: 840px;
	margin-right: auto;
	margin-left: auto;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
/*	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 30px;
*/
}
#footer address {
	line-height: 40px;
	margin-left: 540px;
	color: #FFFFFF;
}
.hd {
	width: 840px;
	height: 40px;
	background-image: url(../images/bnr_hd.jpg);
	background-repeat: no-repeat;
	color: #FFF;
	padding-left:20px; 
	font-weight: 900;
	font-size: 2.7em;
	line-height: 40px;
}
/* トップページ
------------------------------------------*/
#top {
	background-image: url(../images/top03.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	height: 600px;
	width: 840px;
}
.movieBox {
	margin-top: 230px;
	float: right;
	width: 450px;
	height: 300px;
	margin-right: 10px;
	display: flex;
	flex-direction: column;
	/*	flex-wrap:wrap;
*/	align-items: center;
}
.movieBox a {
	color: #FFFFFF;
	font-size: 1.3em;
	font-weight: 900;
	text-align: center;
	padding: 10px 60px 10px;
	margin: 5px 10px 10px 10px;
	background-color: #C00;
	border-radius: 5px;
}
.movieBox a:hover{
	background-color: #FF3333;
}



/*製品情報----------------*/


#spec .tableSpec, #spec .tableSpec2 {
	width: 600px;
	border-collapse: collapse;
	border-top: #FCFCFD;
	border-right: #FCFCFD;
	border-bottom: #FCFCFD;
	border-left: #FCFCFD;
	margin-left: 70px;
}
#spec .tableSpec th, #spec .tableSpec2 th {
	width: 100px;
	padding: 5px;
	line-height: 120%;
	text-align: right;
	white-space: normal;
	color: #666666;
	border-top: #FCFCFE;
	border-right: #FCFCFE;
	border-bottom: #FCFCFE;
	border-left: #FCFCFE;
	font-size: 1.2em;
}
#spec .tableSpec td, #spec .tableSpec2 td {
	/*width: 500px;*/
	padding: 5px 5px 5px 20px;
	text-align: left;
	white-space: normal;
	border-top: #333333;
	border-right: #333333;
	border-bottom: #333333;
	border-left: #333333;
	line-height: 1.6em;
	font-size: 1.2em;
}
#spec .tableSpec td a, #spec .tableSpec2 td a {
	color: #3399FF;
	text-decoration: underline;
}
#spec .tableSpec td a:hover, #spec .tableSpec2 td a:hover {
	color: #FF0000;
	text-decoration: underline;
}
#spec th, #spec td {
	font-size: 13px;
}

.textBox {
	clear: both;
	width: 800px;
	margin-top: 10px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	text-align: center;
	font-size: 14px;
	line-height: 1.4em;
}
.imagetBox {
	width: 320px;
	margin-top: 5px;
	margin-right: 20px;
	margin-left: 20px;
	margin-bottom: 10px;
	text-align: center;
	font-size: 14px;
	line-height: 1.4em;
	float: left;
	height: 100px;
	padding-top: 15px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
	background-color: #FFCCFF;
}
/*　オフィシャル通販 */
/*#official {
	width: 720px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 20px;
	clear: both;
}
.official01 {
	background-color: #C03;
	height: auto;
	list-style-image: none;
	list-style-type: none;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 10px;
	margin-left: auto;
	width: 720px;
	font-size: 15px;
	text-align: center;
	color: #FFF;
	padding-bottom: 10px;
	font-weight: bold;
	text-decoration: none;
}
.official02 {
	background-color: #C03;
	height: 370px;
	list-style-image: none;
	list-style-type: none;
	margin-top: 10px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	width: 720px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.text02 {
	color: #FFF;
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: bold;
}
*/



/*グローバルナビ
　　　　--------------*/
.index {
	display:inline-flex;
	justify-content:center;
	height: 40px;
	width: 840px;
	font-size: 22px;
	font-weight: 900;
	color: #999;
	line-height: 35px;
	background-color: #033;
}
.index a{
	color: #FFF;
	text-decoration: none;
	padding: 3px 15px;
	border-radius: 4px;
}
.index a:visited {
	color: #FFF;
	text-decoration: underlin;
}
.index a:hover {
	color: #FFF;
	text-decoration: underlin;
	background-color: #099;
}
.index_active {
	color:#FF0000;
	padding: 3px 15px;
}
.index_nolink {
	color:#999999;
	padding: 3px 15px;

}
.indexmini {
	font-size:0.7em;
}

.index2 {
	display: inline-flex;
	justify-content: center;
	width: 840px;
	height: 35px;
	font-size: 16px;
	font-weight: 900;
	color: #999;
	line-height: 32px;
	background-color: #036;
}
.index2 a{
	color: #FFF;
	text-decoration: none;
	padding: 3px 15px;
	border-radius: 4px;
}
.index2 a:hover {
	color: #FFF;
	text-decoration: underlin;
	background-color: #099;
}
.index2_nolink {
	color:#999999;
	padding: 3px 15px;
}
	
/*shop-----------------------
　　　　　　----------------*/
#shop {
	display: flex;
    flex-wrap: wrap;   /*子要素を折り返す*/        
	justify-content: center;　/*子要素を真ん中に寄せる*/
}
/*.shop {
	height: 480px;
	width: 380px;
	text-align: center;
	font-size: 18px;
	line-height: 1.1em;
	margin-right: 0px;
	margin-bottom: 20px;
	margin-left: 25px;
	font-weight: bold;
	color: #FFF;
	background-color: #C03;
}
.shop img {
	margin-bottom: 5px;
	margin-top: 10px;
}
*/
.shoplist {
	background:linear-gradient(#74f4f6, #fFF);
	width: 840px;
	height: auto;
	text-align:center;
}
.shoplist01 {
	width: 840px;
	text-align: center;
	color: #ed1f1f;
	background: #333;
	font-size: 2em;
}
.descrip {
	padding: 10px 0;
}


.shoplist02{
	padding: 20px 40px;
	display:flex;
	justify-content: center;
}

.shoplist_box {
	width: 300px;
	height: auto;
	background-color: #FFF;
	text-align: center;
	padding-bottom: 5px;
	padding-top:-5px;
	border: solid 2px #333333;
	color:#000;
	margin: 0 20px;
}
.shoplist_box h1 {
	font-size: 1.5em;
	background:#000;
}
.shoplist_box p {
	font-size: 1.3em;
	font-weight: 700;
	color: #666;
	padding: 10px 0;
}
.shoplist_box a{
	border-radius: 4px;
	padding: 2px 30px;
	color: #666;
}
.shoplist_box a:hover{
	color:white;
	background-color:#09F;
}



.descrip{
	margin-top: 10px;
	text-align: center;
	font-size: 1.3em;
	font-weight: 600;
	color: #006;
	line-height: 1.3em;
}
.text {
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 0px;
	padding-bottom: 15px;
	clear: both;
	color: #696;
	text-align: center;
}

.wide_box {
	height: auto;
	width: 680px;
	font-size: 18px;
	line-height: 1.1em;
	margin-right: 10px;
	margin-bottom: 20px;
	margin-left: 10px;
	font-weight: bold;
	color: #FFF;
	background-color: #F9C;
	border-radius: 16px;
}
.wide_box a {
	color:#FFF;
	text-decoration:none
}

.normal_box {
	height: auto;
	width: 360px;
	font-size: 18px;
	line-height: 1.1em;
	margin-right: 5px;
	margin-left: 5px;
	margin-bottom: 20px;
	font-weight: bold;
	color: #FFF;
	background-color: #F9C;
	border-radius: 16px;
}
.normal_box a {
	color:#FFF;
}



.telbox_hd {
	height: 40px;
	background-color:#333;
    line-height: 40px;
	text-align: left;
	padding-left: 20px;
	border-radius: 5px 5px 0px 0px ;
	font-weight:900;
	font-size:1.5em;

}

.telbox_hd .tokuten {
	font-size:16px;
	vertical-align:middle;
	color:#FF0000;
/*	line-height: 40px;

*/}
.telbox {
	display: flex;
	justify-content: center; 
	align-items: center;
	margin: 10px;
	padding: 10px 10px;
	height: 339px;    /*背景の方眼の関係で1ピクセル短い*/
	border: solid 1px #FFF ;
	background-image: url(../images/bg_telbox.gif); 
}

.telbox .tel {
	border-radius: 10px;
}
.telbox img {
	margin: 0 20px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.4);　/*上下　左右　ぼかし幅　色*/

}
/*.telbox_text {
	text-align: center;
	padding-bottom: 20px;
	font-weight: 900;
	font-size: 1.2em;
}*/
.telbox_text {
	display: flex;
	justify-content: center; 
	border-radius: 5px;
	padding-bottom: 5px;
}
.telbox_text p {
	width: auto;
	height: auto;
	font-size: 0.8em;
	font-weight: 900;
	text-align: center;
	text-decoration: none;
	padding: 10px 20px 10px;
	margin: 0 10px 10px 10px;
	background-color: #666;
	border-radius: 5px;
}

.telbox_text a {
	width: auto;
	height: auto;
	font-size: 0.8em;
	font-weight: 900;
	text-align: center;
	text-decoration: none;
	padding: 10px 20px 10px;
	margin: 0 10px 10px 10px;
	background-color: #09F;
	border-radius: 5px;	/*	box-shadow:2px 2px 2px #555;
*/
}


.telbox_text a:hover {
	background-color: #00CCFF;
}
.telbox_text a {
	color: #FFF;
}


/*作品概要*/
#about_box {
	width: 800px;
	height: auto;
	padding: 30px 20px;
	background-color: #666;
	background-image: url(../images/bg_about.jpg);
	display: flex;
	justify-content: center;
	align-items: center;
}

.storytext2 {
	padding: 5px 25px;
	font-size: 1.4em;
	line-height: 1.5em;
	font-weight:700;
	color:#FFF;
	text-shadow: 2px 2px 2px #000,
              -2px 2px 2px #000,
               2px -2px 2px #000,
              -2px -2px 2px #000;
}

.headertext{
	padding-top: 15px;
	font-size: 2.2em;
	font-weight: 700;
	color: #FFF;
	text-align: center;
	text-shadow: 2px 2px 5px #C60,
	            -2px 2px 5px #C60,
	             2px -2px 5px #C60,
	            -2px -2px 5px #C60;
}




/* 物語------------------*/

#story_box{
	background-image: url(../images/bg_story.jpg);
	width: 800px;
	height: auto;
  background-color:#999;
	display: flex;
	justify-content:center;
	align-items:center;
	padding: 40px 20px;
}
.storytext{
	font-size: 1.5em;
	line-height: 1.6em;
	font-weight:700;
	color:#FFF;
	text-align: center;
	text-shadow: 2px 2px 5px #000,
                 -2px 2px 5px #000,
                  2px -2px 5px #000,
                 -2px -2px 5px #000;
}
/*キャラクター------------------*/
#character_box {
	width: 840px;
	height: 700px;
	background-image: url(../images/character_ibuki.jpg);
	position: relative;
/*	margin-top: -20px;*/
}
.character_box_mini {
	width: 420px;
	position: absolute;
	bottom: 182px;
	left: 379px;
	padding: 10px 20px;
	height: 265px;


}
.charatext{
	font-size: 1.4em;
	line-height: 1.5em;
	font-weight: 700;
	color: #FFF;
	text-shadow: 2px 2px 2px #000,
                 -2px 2px 2px #000,
                  2px -2px 2px #000,
                 -2px -2px 2px #000;
}
.weapon {
	font-size: 2em;
	font-weight: 900;
	color: #FFF;
	text-shadow: 2px 2px 2px #000,
                 -2px 2px 2px #000,
                  2px -2px 2px #000,
                 -2px -2px 2px #000;
}
.sample_voice {
	margin-top: 430px;
	width: 400px;
	height: 50px;
/*	margin-top: 865px;
	margin-left: 270px;
	height: 35px;
	width: 225px;
*/
}
.sample_voice ul {
	display:flex;
	padding-left: 40px;
	padding-right: 10px;
	list-style: none;
	justify-content: flex-start;
	margin: 0;

}
.sample_voice li {
}
.sample_voice li a{
	font-size: 1.4em;
	line-height: 1.2em;
	font-weight: 900;

	background-color:#0CC;
	width: 30px;
	height: 30px;
	border-radius: 50%;

	display:flex;
	align-items: center;
    justify-content: center;

}
.sample_voice li a:hover {
	background:#3FF;
	color:#FF0;
}
.voice_area {
	height: 30px;
	padding: 0 20px;
	border-radius: 15px;
	background: rgba(79,65,65,1.00);
	z-index: 1;
	color: #FFF;
	line-height: 30px;
	display: block;
	position: absolute;
	top: 194px;
	left: 529px;
	margin-left: -100px;
	font-size: 1.2em;
	width: 322px;
}

.voice_area p span {
	font-family: 'Raleway', sans-serif;
	font-weight:900;
}

.voice_area a {
	color:rgba(79,65,65,1.00);
	font-weight:900;
	text-decoration:none;
	transition:all 0.3s;
	display:inline-block;
	width:20px;
	height:20px;
	border-radius:50%;
	background-color:#FFF;
	line-height:20px;
	text-align:center;
}

.voice_area a:hover {
	background-color:#FF9600;
	color:rgba(255,255,255,1.00);
}
.voice_area a.pi {
	background:#FF7BA4;
	color:#FFF;
}

.voice_area a:hover.pi {
	background-color:#FF009E;
	color:rgba(255,255,255,1.00);
}



/*gallery box*/

.gallery_box {
	list-style-type: none;
	width: 840px;
	height: auto;
	text-align: left;
	padding-top: 20px;
	height: auto;
	overflow: hidden;
	margin-bottom: 0px;
/*	margin-left: 50px;
*/

}
.gallery_box ul {
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
}

.gallery_box li {
	border: 0;
	list-style-type: none;
    margin: 15px;
}
.gallery_box img {
	border-width: 0px;
}
.gallery_box li span {
	font-size: 25px;
	font-weight: bold;
	color: #FF0000;
	position: relative;
	top: -155px;
	left: -315px;
	text-shadow: 2px 2px 2px #000,
                 -2px 2px 2px #000,
                  2px -2px 2px #000,
                 -2px -2px 2px #000;
}
.text {
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 5px;
	padding-bottom: 25px;
	color: #336;
	text-align: center;
	line-height: 1.3em;
	font-weight: normal;
	font-size: 1.2em;
}
.text2 {
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 0px;
	padding-bottom: 0px;
	color: #F00;
	text-align: center;
	line-height: 2em;
	font-weight: bold;
	font-size: 1.8em;
	background-color: #333;
}



/*デモムービー*/
.demomovie_box {
	background-image: url(../images/bg_demomovie.jpg);
	width: 560px;
	height: auto;
	padding: 40px 140px;
	display: inline-flex;
	flex-direction: column;
	align-items: center;

/*	padding: 270px 20px 20px 20px;*/
}


.demomovie_box a {
	color: #FFFFFF;
	font-size: 1.3em;
	font-weight: 900;
	padding: 15px 60px;
	margin: 20px 0 0 0;
	background-color: #C00;
	border-radius: 5px;
}
.demomovie_box a:hover{
	background-color: #FF3333;
}




/*体験版*/
#trial_box {
	background-image: url(../images/bg_trial.jpg);
	width: 800px;
	height: auto;
	padding: 40px 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
}


#trial_box table{
    margin-top: 30px;
	width:600px;
	border-collapse: collapse;
}

#trial_box table th {
	background-color: #06F;
	border: solid 1px #06F;
	height: 40px;
	color: #FFF;
}

#trial_box table  td {
	background-color: #FFF;
	border: solid 1px #000000;
	height: 50px;
	text-align:center;

}

#trial_box table td a{
	width: 200px;
	height: 30px;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	display: block;
	padding: 6px 0px 5px;
	margin-left:auto;
	margin-right:auto;
	color: #fff;
	background-color: #49a9d4;
	border-radius: 5px;
/*	box-shadow:2px 2px 2px #555;
*/
}

#trial_box table tr td a:hover {
	background-color: #0CC;
}

/*　ページトップへ　x*/

#page-top {
    position: fixed;
    bottom: 50px;
    right: 50px;
    font-size: 100%;
	font-weight:700;
	z-index:2;
}
#page-top a {
    background: #666;
    text-decoration: none;
    color: #fff;
    width: 120px;
    padding: 30px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}

/*作品概要*/
#tokuten_box {
	width: 740px;
	height: auto;
	padding: 20px 50px 40px 50px;
	background-color: #666;
	background-image: url(../images/bg_about.jpg);
	display: flex;
	justify-content: center;
	align-items: center;
}
.tokuten_headertext{
	padding-top: 0px;
	font-size: 2.2em;
	font-weight: 700;
	line-height: 1.3em;
	color: #FFF;
	text-align: center;
	text-shadow: 2px 2px 5px #C60,
	            -2px 2px 5px #C60,
	             2px -2px 5px #C60,
	            -2px -2px 5px #C60;
}

.tokuten_text {
	padding: 5px 25px;
	font-size: 1.2em;
	line-height: 1.6em;
	font-weight: 700;
	color: #FFF;
	border: #F00 solid 2px;
	background-color: rgba(51,51,51,0.55);
	text-shadow: 2px 2px 2px #000,
              -2px 2px 2px #000,
               2px -2px 2px #000,
              -2px -2px 2px #000;
}


.tokuten_text a {
	font-size:1.4em;
	color:#00CCFF;
}
.tokuten_text a:hover {
	color: #FF0000;
}



/*IE11だけ文字が上にずれるのを解消*/
@media all and (-ms-high-contrast:none){
    *::-ms-backdrop, body {
		font-family:  'Arial','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
}
