@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400;700&display=swap');
/*////////////////////////////////////////////////////////////////////////
reset
////////////////////////////////////////////////////////////////////////*/
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: top;
}

html {
	word-break: break-all;
	image-rendering: -webkit-optimize-contrast;
	background-color: #000;
}

body{overflow-y: scroll; }

html,body {
	font-size-adjust:100%;
	-webkit-font-size-adjust: 100%;
}

body,h1,h2,h3,h4,h5,h6,p,img,
hr,li,ul,dl,dt,dd{
	padding: 0;
	margin: 0;
	border: 0;
	list-style: none;
}

table th{font-weight:normal;}

ruby {
        display: inline-table;
        border-collapse: collapse;
        margin: 0;
        padding: 0;
        border: none;
        white-space: nowrap;
        text-indent: 0;
        vertical-align: 0.9em;
        text-decoration: inherit;
        text-align: center;
        line-height: 1em;
        }
ruby>rt {
    display: table-header-group;
    height: 25%;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font: inherit;
    font-size: 50%;
    line-height: 1.2em;
	text-align: center;
    }

img{border:0px;}

a:hover{text-decoration: none;}

.clear{clear:both;}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.non{
	cursor:default;
	opacity: 0.4;
	pointer-events: none;
}

br.txtCutNone{display:none;}


/*////////////////////////////////////////////////////////////////////////
基本カラー
////////////////////////////////////////////////////////////////////////*/
:root{
--green:#1d5b47;
--lightgreen:#11d298;
--blue:#6a6ba2;
--orange:#ffcb7a;
	
--green30: rgba(29,91,71,0.3);
	
--black30: rgba(0,0,0,0.3);
--black50: rgba(0,0,0,0.5);
--black60: rgba(0,0,0,0.6);
--black80: rgba(0,0,0,0.8);
--white20: rgba(255,255,255,0.2);
--white30: rgba(255,255,255,0.3);
--white50: rgba(255,255,255,0.5);
--white80: rgba(255,255,255,0.8);
}


/*////////////////////////////////////////////////////////////////////////
基本
////////////////////////////////////////////////////////////////////////*/
a{
	color:#fff;
	text-decoration:none;
	outline:none;
}

::selection {
	color: #1d5b47;
	background-color:#fff;
	text-shadow: #fff 0px 0px 3px;
}
::-moz-selection {
	color: #1d5b47;
	background-color:#fff;
	text-shadow: #fff 0px 0px 3px;
}

.move, .move2{
	transform: translateY(20px);
	opacity: 0;
}

.moveAction{
	animation-duration: 1s;
	animation-direction: normal;
	animation-timing-function:ease-out;
	animation-fill-mode:forwards;
	animation-name:move;
}

@keyframes move {
	0% {
		transform: translateY(20px);
		opacity: 0;
	}
	100% {
		transform: translateY(0px);
		opacity: 1;
	}
}

.new{
	position: absolute;
	top:-25%;
	left: 0;
	width: 100%;
	background-color: var(--orange);
	font-size: 80%;
	color: #000;
	animation: flash 1.5s linear infinite;
}

@keyframes flash {
	0% {opacity: 1;}
	50% {opacity: 1;}
	75% {opacity: 0;}
	100% {opacity: 1;}
}

.newChara{
	background-color: var(--orange);
	display: block;
	color: #000;
	padding: 5px 10px;
	letter-spacing: 0.2em;
}

.newGallery{
	position: absolute;
	bottom:0;
	left: 0;
	width: 100%;
	background-color: var(--orange);
	font-size: 80%;
	color: #000;
}

/*////////////////////////////////////////////////////////////////////////
全体ボックス
////////////////////////////////////////////////////////////////////////*/
body{
	font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Sawarabi Mincho",serif;
	font-size:16px;
	min-width: 1300px;
	text-align: center;
	background-image: url(../img/bg_all.jpg);
	background-attachment: fixed;
	color: #fff;
}

#mainBox{
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100%;
	background-color: #000;
	margin: auto;
	padding: 68px 0 0;
	opacity: 0;
}

#top{
	opacity: 0;
}

.note{
	background-image: url(../img/bg_note_bottom.jpg);
	background-attachment: fixed;
}

#loading{
	width:100%;
	height: 100%;
	position:fixed;
	z-index:99;
	display: flex;
    justify-content: center;
    align-items: center;
	text-align:center;
	background-image: url(../img/bg_all.jpg);
	background-attachment: fixed;
	pointer-events: none;
}

.mds{
	overflow: hidden;
	text-align: center;
	background-position: center center;
	background-repeat: no-repeat;
	height: 40px;
	margin: 3% auto 0;
}

.mds2{
	overflow: hidden;
	text-align: center;
	background-position: center center;
	background-repeat: no-repeat;
	height: 177px;
	margin: 3% auto 0;
}

/*---------------------------------------------
フッター
---------------------------------------------*/
footer{
	font-size: 80%;
	letter-spacing: 0.15em;
	background-color: #000;
	padding: 0 0 2% 0;
	border-top: solid 1px var(--blue);
}

footer .banner img{
	border: solid 1px #666;
	margin: 5px;
}

footer #sns{background-image: url(../img/tex.jpg);
	padding: 1%;
}

footer .pf{
	margin-bottom: 10px;
}

footer .pf img{
	height: 50px;
	margin-left: 5px;
}

footer hr{
	border-bottom: 1px solid #666;
	margin: 20px auto;
}

#backTop{
	z-index: 99;
	position: fixed;
	bottom: 0px;
	right: 0px;
	text-align: center;
	font-size: 30px;
	line-height:1em;
	cursor: pointer;
}

#backTop:hover{
	opacity: 0.6;
}

/*---------------------------------------------
ヘッダー
---------------------------------------------*/
#navBtn{
	display: none;
}

header{
	border-bottom: solid 1px var(--blue);
	background-color: var(--black50);
	color: #fff;
	width: 100%;
	text-align: center;
	z-index: 100;
	top: 0;
	min-width: 1300px;
	position: fixed;
}

nav ul{
	padding: 10px 10px 20px;
}

nav ul li{
	display: inline-block;
	position: relative;
	color: #fff;
	padding: 10px 5px 2px;
	margin: 0 5px;
	letter-spacing: 0.05em;
}

nav ul li.select, nav ul li:hover{
	border-bottom: 3px solid var(--lightgreen);
}


/*---------------------------------------------
サブナビ
---------------------------------------------*/
#subNavi{
	width: 100%;
	padding: 1%;
	border-bottom: 1px solid #000;
	z-index: 99;
	min-width: 1300px;
}

#subNavi .nomalNavi{
	text-align: center;
}

#subNavi .nomalNavi ul{
}

#subNavi .nomalNavi li{
	display:inline-block;
	position: relative;
	margin:0.2%;
	background-color: var(--green);
	width: 15em;
}

#subNavi .nomalNavi li a{
	color: #fff;
	padding: 10px;
	display: block;
}

#subNavi .nomalNavi li:hover, #subNavi .nomalNavi li.select{
	background-color: var(--lightgreen);
}

#subNavi .nomalNavi li:hover a, #subNavi .nomalNavi li.select a{
	color: #000;
}

/*////////////////////////////////////////////////////////////////////////
トップページ
////////////////////////////////////////////////////////////////////////*/

.count{
	position: absolute;
	bottom: 10px;
	left: 10px;
	width: 20%;
	background-color: var(--green);
}

.count img{
	width: 100%;
	border: solid 3px var(--green);
}

.count a:hover{
	opacity: 0.6;
}

.count a{
	display: block;
}


#key{
	position: relative;
}

#key img{
	width: 100%;
	pointer-events: none;
}

#key .box{
	position: absolute;
	left: 50%;
	width: 50%;
	margin: auto;
	text-align: center;
	padding: 5%;
	padding-top: 12%;
}

#key .box img{
	width: 100%;
	max-width: 600px;
}

#key .box .day{
	padding-top: 15px;
}

#key .box .banner{
	width: 100%;
	padding-top: 30px;
	margin: auto;
}

#key .box .banner img{
	border: solid 1px #333;
	width: 100%;
}

#key .box .banner a.banLink{
	width: 49%;
	margin: 0.5%;
	display: inline-block !important;
}

#key .box .banner a.banLink:hover{
	opacity: 0.6;
}

#key .dendo{
	position: absolute;
	left:5px;
	top: 80px;
	width: 12%;
}

#key .dendo img{
	width: 100%;
}

/*---------------------------------------------
新着
---------------------------------------------*/
#topNews{
	background-color: var(--green);
	font-size: 120%;
	position: relative;
	letter-spacing: 0.05em;
	border-top: 2px solid #104635;
	border-bottom: 2px solid #104635;
}

#topNews .title{
	width: 20%;
	display: inline-block;
	vertical-align: middle;
	font-size:200%;
	font-weight: bold;
}

#topNews .txtBox{
	width: 80%;
	display: inline-block;
	text-align: left;
	vertical-align: middle;
	padding:15px 3% 15px 0;
	background-image: url(../img/tex.jpg);
	font-size: 90%;
}

#topNews .day{
	width: 8em;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	color: #fff;
}

#topNews .txt{
	width: 85%;
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	color: #fff;
}

#topNews .txt a{
	color: var(--orange);
}

#topNews .txt a:hover{
	opacity: 0.6;
}

#topNews .more{
	width: 5%;
	display: inline-block;
	font-size:200%;
	font-weight: bold;
	position: absolute;
	bottom: 5%;
	right: 0;
	z-index: 1;
	letter-spacing: -0.5em;
}

#topNews .more:hover{
	opacity: 0.6;
}

/*---------------------------------------------
インフォ
---------------------------------------------*/
#topInfo{
	background-color: #000;
	background-image: url(../img/bg_note_bottom.jpg);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100%;
	padding: 4% 0;
}

#topInfo .aboutBoxL, #topInfo .aboutBoxR{
	padding: 3%;
	background-size: 50%;
	background-repeat: no-repeat;
}

#topInfo .aboutBoxL p, #topInfo .aboutBoxR p{
	font-size: 180%;
	margin-bottom: 15px;
	font-weight: bold;
}

#topInfo .aboutBoxL{
	padding-left: 52%;
	text-align: left;
	background-image: url(../img/top/about_1.jpg);
	background-position: left center;
}

#topInfo .aboutBoxR{
	padding-right: 52%;
	text-align: right;
	background-image: url(../img/top/about_2.jpg);
	background-position: right center;
}

/*---------------------------------------------
スペック
---------------------------------------------*/
#topInfo .spec{
	width: 96%;
	max-width: 1300px;
	margin: auto;
	padding: 5% 1%;
	background-color: var(--white30);
	border: solid 1px #fff;
	text-align: center;
	position: relative;
	margin-top: 4%;
}

#topInfo .spec .jacket{
	width: 45%;
	display: inline-block;
	margin-right: 2%;
	vertical-align: middle;
}

#topInfo .spec .jacket img{
	width: 100%;
	max-width: 800px;
}

#topInfo .spec .txt{
	width: 53%;
	display: inline-block;
	letter-spacing: 0.05em;
	vertical-align: middle;
}

#topInfo .spec .txt hr{
	border-bottom: 1px solid #fff;
	margin: 5px auto;
}

#topInfo .spec .txt p{
	background-color: #000;
	padding: 10px;
}

#topInfo .spec .txt p strong{
	font-size: 160%;
}

#topInfo .spec .txt strong{
	font-size: 220%;
	font-weight: bold;
	line-height: 1.2em;
}

#topInfo .spec .txt .more{
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
	background-color: var(--green);
	padding: 10px 2% 10px 4%;
	font-size: 120%;
	clip-path: polygon(0% 100%, 15% 0%,100% 0%, 100% 100%);
}

#topInfo .spec .txt .more:hover{
	opacity: 0.6;
}


/*////////////////////////////////////////////////////////////////////////
ワールド
////////////////////////////////////////////////////////////////////////*/
#story{
	background-image: url(../img/world/bg.jpg);
	background-size: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 4%;
}

.storyBox{
	padding: 4%;
	display: inline-block;
	margin: auto;
	line-height: 2em;
	font-size: 110%;
	position: relative;
	background-color: var(--black60);
}

.storyBox::before {
	content: "";
	position: absolute;
	top: 10px;
	bottom: -10px;
	right: -10px;
	left: 10px;
	border: solid 1px #fff;
	z-index: 1;
	pointer-events: none;
}

.storyBox::after {
	content: "";
	position: absolute;
	top: -10px;
	bottom: 10px;
	right: 10px;
	left: -10px;
	border: solid 1px #fff;
	z-index: 1;
	pointer-events: none;
}

/*---------------------------------------------
キーワード
---------------------------------------------*/
#world{
	background-color: #000;
	background-image: url(../img/bg_note_bottom.jpg);
	background-position: center bottom;
	background-repeat: no-repeat;
	padding: 3% 3% 10%;
}

#worldAria{
	width: 100%;
	max-width: 1300px;
	margin: auto;
}

.worldBox{
	width: 32%;
	margin: 0.5%;
	padding: 2%;
	display: inline-block;
	background-color: var(--white20);
	text-align: left;
}

.worldBox p{
	border-bottom: 1px solid #fff;
	font-size: 150%;
	letter-spacing: 0.2em;
	position: relative;
	padding: 5px;
	margin-bottom: 10px;
	font-weight: bold;
}

.worldBox p::after {
	content: "〉";
	position: absolute;
	right: -10px;
	bottom: 5px;
	z-index: 1;
	pointer-events: none;
}


/*////////////////////////////////////////////////////////////////////////
キャラ
////////////////////////////////////////////////////////////////////////*/
#chara{
	background-image: url(../img/world/bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	background-attachment: fixed;
}

#chara .mds{
	padding: 4% 0;
	margin: 0;
}

#chara #charaList ul{
	/*background-image: url(../img/bg_note.png);*/
	background-repeat: no-repeat;
	background-position: center top;
	background-attachment: fixed;
}

#chara #charaList ul hr{
	border-bottom: 3px double #fff;
}

#chara #charaList ul li{
	text-align: left;
	width: 100%;
	margin: auto;
	padding-left: 59%;
	background-repeat: no-repeat, no-repeat;
	background-size: 95%, 100%;
	background-position: 150% center,  150% center;
	filter: grayscale(100%);
	opacity: 0;
	position: relative;
	/*left: 10%;*/
}


#chara #charaList ul li:hover{
	filter: grayscale(0);
}


.listNavi{
	padding:1% 2% 0;
	position: absolute;
	width: 100%;
	min-width: 1300px;
	z-index: 11;
}

.listNavi ul li{
	display: inline-block;
	margin: 5px;
	background-color: #000;
	background-image: url(../img/tex.jpg);
	border-bottom: double 3px var(--lightgreen);
}

.listNavi ul li a{
	display: block;
	padding: 5px 15px;
}

.listNavi ul li:hover a{
	background-color: var(--lightgreen);
}

/*---------------------------------------------
個別
---------------------------------------------*/
#chara .charaBox{
	width: 100%;
	margin: auto;
	position: relative;
	background-repeat: no-repeat;
	background-size: 100%;
}

#chara .charaBox .left,
#chara .charaBox .right{
	width: 50%;
	display: inline-block;
	text-align: right;
	background-repeat: no-repeat, no-repeat;
	background-size: 50%,cover;
	background-position: -1000%, -1000%;
}

#chara .charaBox .left .txtBox,
#chara .charaBox .right .txtBox,
#chara .charaBox .solo .txtBox{
	width: 70%;
	padding: 0 0 2%;
}

#chara .charaBox .left .txtBox{
	margin-left: 25%;
	margin-right: 5%;
	text-align: left;
}

#chara .charaBox .right .txtBox{
	margin-left: 5%;
	text-align: right;
}

#chara .charaBox .solo .txtBox{
	margin-left: 5%;
	text-align: left;
}

#chara .charaBox .serif img{
	width:23%;
	max-width: 149px;
	margin:0 10%;
	pointer-events: none;
}

#chara .charaBox .serifSolo{
	width:100%;
	max-width: 1600px;
	margin:auto;
	text-align: left;
	margin-left: -80%;
}

#chara .charaBox .serifSolo img{
	width:16%;
	max-width: 149px;
	margin:0 10%;
	pointer-events: none;
}


#chara .charaBox .name{
	margin-bottom: 2%;
}

#chara .charaBox .name img{
	width: 100%;
	max-width: 750px;
	pointer-events: none;
}

#chara .charaBox .txt,
#chara .charaBox .solo .txtBox .txt{
	padding: 20px;
	background-color: var(--black80);
	text-align: left;
}

#chara .charaBox .solo{
	width: 50%;
	margin-left: 50%;
	display: inline-block;
	text-align: right;
	background-repeat: no-repeat;
	background-size: 50%;
	background-position: -150%;
}

#chara .charaBox .sv .cvplay{
	display: inline-block;
	width: 14%;
	max-width: 70px;
	margin: 0.5% 0.5% 2% 0;
}

#chara .charaBox .sv img{
	width: 100%;
	border: solid 2px #000;
}

#chara .charaBox .play-bt,
#chara .charaBox .stop-bt{
	display:block;
	cursor: pointer;
	background-color: var(--green);
}

#chara .charaBox .stop-bt,
#chara .charaBox .play-bt:hover{
	background-color: #f8a724;
}



/*////////////////////////////////////////////////////////////////////////
システム
////////////////////////////////////////////////////////////////////////*/
#system{
	font-size: 110%;
	padding-bottom: 5%;
}

/*---------------------------------------------
大見出し　小見出し
---------------------------------------------*/
#system .mdsBox,
#system .mdsBoxMini{
	background-repeat: no-repeat;
	text-align: left;
}

#system .mdsBox{
	background-position:center center;
	background-size: 100%;
	margin: 10% auto 3%;
}

#system .mdsBoxMini{
	background-position: left center, center center;
	background-size:50%, 100%;
	margin: 3% auto;
}

#system .mdsBox .aria{
	width: 90%;
	margin: auto;
	padding: 5% 0%;
	position: relative;
}

#system .mdsBox h2{
	position: absolute;
	bottom: 88%;
	width: 100%;
	left: 0;
}

#system .mdsBox h2 img{
	width: 75%;
	max-width: 1200px;
}

#system .mdsBox .txtAria,
#system .mdsBoxMini .txtAria{
	width: 100%;
	max-width: 1300px;
	margin: auto;
}

#system .mdsBox .txt{
	width: 55%;
}

#system .mdsBoxMini .txt{
	width: 54%;
	margin-left: 46%;
	padding: 4% 1%;
}

#system .mdsBoxMini .txt h3{
	font-size: 180%;
	margin-bottom: 10px;
 }

/*---------------------------------------------
個別画像
---------------------------------------------*/
#system .imgBox{
	width: 100%;
	max-width: 1300px;
	margin: auto;
	padding: 0 3%;
}

#system .imgBox img{
	width: 49%;
	margin: 0.5%;
	border: solid 1px var(--green);
}

/*---------------------------------------------
交互エリア
---------------------------------------------*/
#system .txtBox{
	width: 100%;
	margin: auto;
	position: relative;
}

#system .txtBox .img,
#system .txtBox .txt{
	width: 50%;
	display: inline-block;
	text-align: right;
	vertical-align: middle;
	position: relative;
}
	
#system .txtBox .img img{
	width: 90%;
	max-width: 650px;
	border: solid 1px var(--green);
}
	
#system .txtBox .txt{
	padding: 2% 0% 2% 2%;
	text-align: left;
}

#system .txtBox hr{
	border-bottom: 1px solid #666;
	margin: 2% auto;
}

#system .txtBox .txt p{
	font-size: 180%;
}

#system .txtBox .txt p strong{
	color: var(--orange);
}

#system .txtBox.right{
	direction: rtl;
}

#system .txtBox.right .txt{
	direction: ltr;
	text-align: right;
	padding: 2% 2% 2% 0;
}

#system .txtBox.right .img{
	text-align: left;
}

 #system .txtBox.left .img .xFade{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

#system .txtBox.right .img .xFade{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

/*---------------------------------------------
通常ボックス
---------------------------------------------*/
#system .nomalBox{
	width: 96%;
	max-width: 1300px;
	margin: auto;
	margin-bottom: 2%;
	padding: 2%;
	background-color: var(--green30);
	border: solid 1px var(--green);
}

#system .nomalBox .txtBox .img img{
	width: 100%;
	max-width: 650px;
	border: solid 1px var(--green);
}

#system .nomalBox .txtBox .img p{
	background-color: var(--green);
	text-align: left;
	padding: 5px 10px;
	font-size: 80%;
	letter-spacing: 0.1em;
}

#system .nomalBox img{
	width: 50%;
	max-width: 650px;
	border: solid 1px var(--green);
}

#system .nomalBox .txtBox ul{
	margin: 8% auto 0;
	width: 100%;
	padding-left: 2%;
}

#system .nomalBox .txtBox ul li{
	width: 100%;
	margin: 1% auto;
	display: block;
	text-align: left;
	padding: 5% 2% 2%;
	background-color: #000;
	font-size: 80%;
	border: solid 1px #666;
	position: relative;
	margin-bottom: 5%;
}

#system .nomalBox .txtBox ul li p{
	font-size: 120%;
	font-weight: bold;
	position: absolute;
	left: -2%;
	top: -15px;
	background-color: var(--green);
	padding: 5px 10px;
	width: 30%;
}

#system .miniBox{
	font-size: 90%;
	width: 100%;
	max-width: 600px;
	margin: 2% 0;
	padding: 5% 3% 3%;
	background-color: var(--green30);
	border: solid 1px var(--green);
	position: relative;
}

#system .miniBox p{
	font-size: 100% !important;
	font-weight: bold;
	position: absolute;
	left: -2%;
	top: -15px;
	background-color: var(--green);
	padding: 5px 10px;
	width: 30%;
}

#system ul.yousei li{
	width: 19%;
	margin: 0.5%;
	display: inline-block;
	position: relative;
}

#system ul.yousei li img{
	width: 100%;
}

#system ul.yousei li p{
	width: 100%;
	margin-top: -10%;
	display: block;
	background-color: var(--white80);
	text-align: left;
	padding:10%  3%;
	top: 100%;
	color: #333;
	font-weight: bold;
	font-size: 80%;
}

#system ul.yousei li p span{
	font-size: 150%;
	display: block;
	border-bottom: 1px solid var(--green);
}

#system ul.yousei li p small{
	font-size: 60%;
	vertical-align: bottom;
}

/*////////////////////////////////////////////////////////////////////////
ギャラリー
////////////////////////////////////////////////////////////////////////*/
#gallery{
	max-width: 1300px;
	margin: auto;
	padding: 5% 2%;
	min-height: 600px;
}

#gallery ul li{
	width: 24%;
	display: inline-block;
	margin: 0.5%;
	border: solid 1px var(--green);
	position: relative;
}

#gallery ul li img{
	width: 100%;
}

#gallery ul li:hover{
	border: solid 1px var(--lightgreen);
}

/*////////////////////////////////////////////////////////////////////////
サウンド
////////////////////////////////////////////////////////////////////////*/
#sound{
}

#sound .utahime,
#sound .zizz{
	max-width: 1300px;
	margin: auto;
	padding: 4% 2% 1%;
	font-size: 120%;
}

#sound .zizz{
	padding: 4% 2% 6%;
}

#sound .utahime .box{
	margin-bottom: 5%;
}

#sound .listBox{
	padding-top: 3%;
	margin-bottom: 3%;
}

#sound .list ul{
	padding: 1% 0;
	max-width: 1270px;
	width: 100%;
	margin: auto;
}

#sound .list li strong{
	background-color: #666;
	display: block;
	padding: 4px 0;
	font-weight: normal;
}

#sound .list ul.fl li:not(.listMds){
	border: solid 1px #62b250;
}

#sound .list ul.gl li:not(.listMds){
	border: solid 1px #a245a2;
}

#sound .list ul.fl li strong.name{
	background-color: #62b250;
	vertical-align: bottom;
}

#sound .list ul.fl li strong.name small{
	vertical-align: bottom;
}

#sound .list ul.gl li strong.name{
	background-color: #a245a2;
}

#sound .list ul.fl li strong.title{
	background-color: #418631;
}

#sound .list ul.gl li strong.title{
	background-color: #792b79;
}

#sound .list ul li{
	width: 13%;
	margin: 0.5%;
	font-size: 110%;
	display: inline-block;
	vertical-align: middle;
}

#sound .list ul li:not(.listMds):hover{
	opacity: 0.6;
}


#sound .list li img{
	width: 100%;
}

#sound .list li.listMds{
	font-size: 120%;
	vertical-align: middle !important;
	font-weight: bold;
}

#sound .utahime .box .uthmMds{
	padding: 20px 5px;
	font-weight: bold;
	text-align: center;
	width: 99%;
	margin: auto;
	margin-bottom: 10px;
	font-size: 120%;
}

#sound .utahime .box .txt img{
	width: 60%;
	max-width: 300px;
	display: block;
	margin: auto;
	border: 1px solid #666;
	margin-bottom: 10px;
}

#sound .utahime .box .txt{
	padding: 2%;
	font-size: 80%;
	width: 49%;
	margin: 0.5%;
	display: inline-block;
	border: double 4px #666;
	text-align: left;
	background:linear-gradient(-45deg, rgba(98,178,80,0.3) 50%, rgba(0,0,0,0) 50%);
}

#sound .utahime .box.glace .txt{
	background:linear-gradient(-45deg, rgba(162,69,162,0.3) 50%, rgba(0,0,0,0) 50%);
}

#sound .utahime .box .txt a.anchor {
    display: block;
    padding-top: 100px;
    margin-top: -100px;
	pointer-events: none;
	opacity: 0;
}


#sound .utahime  .box .name{
	font-size: 150%;
	margin-bottom: 5px;
}

#sound .utahime  .box .btn{
	display: inline-block;
	border: solid 1px #fff;
	padding: 5px 15px;
	background-color: #000;
	border-radius: 3px;
	position: relative;
	overflow: hidden;
	margin-left: 10px;
}

#sound .utahime .box  .btn:hover{
	background-color: #fff;
	color: #000;
}

#sound .utahime  .box .btn .yt{
	background-color: #c00;
	border-radius: 3px;
	padding:2px 10px 4px;
	font-size: 80%;
	display: inline-block;
	margin-right: 5px;
	color: #fff;
}

@keyframes shiny {
    0% { left: -20%; }
    10% { left: 120%; }
    100% { left: 120%; }
}

#sound .utahime  .box .btn::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .8) 100%, rgba(255, 255, 255, 0) 0%);
    
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

#sound .utahime .box hr{
	border-bottom: 1px solid #666;
	margin: 2% 0;
}

#sound .zizzBox{
	padding: 3% 2%;
	border: double 4px #666;
	text-align: left;
	background:linear-gradient(-45deg, rgba(162,69,162,0.2) 50%, rgba(98,178,80,0.2) 50%);
	font-size: 80%;
}

#sound .zizzBox strong{
	display: block;
	padding: 5px;
	background-image: url(../img/tex.jpg);
	font-size: 110%;
	margin: 10px auto;
	border-bottom: 3px double #000;
}

#sound .zizz hr{
	border-bottom: 1px solid #666;
	margin: 1% 0;
}

#sound .zizz .name{
	font-size: 150%;
	font-weight: bold;
	letter-spacing: 0.05em;
}

#sound .zizz a{
	background-color:  var(--lightgreen);
	color: #000;
	padding:0 10px 3px;
	margin-top: 5px;
	display: inline-block;
}

#sound .zizz a:hover{
	background-color: var(--orange);
}


#sound .interview{
	width: 100%;
	max-width: 1000px;
	padding: 3%;
	text-align: left;
	margin: auto;
	font-size: 95%;
}

#sound .interview img{
	border: solid 1px var(--lightgreen);
}

#sound .interview table,
#sound .interview table tbody,
#sound .interview table tbody tr{
	display: block;
}
#sound .interview table tr{
	border-bottom: 1px solid #666;
}

#sound .interview table th{
	width: 10%;
	vertical-align: middle;
}

#sound .interview th img{
	width: 100%;
}

#sound .interview table td{
	width: 90%;
	vertical-align: middle;
	padding: 3%;
}


#sound .interview dl{
	padding: 3% 0;
	line-height: 1.6em;
}

#sound .interview dt{
	float: left;
	width: 6em;
	letter-spacing: 0.1em;
	text-align: right;
	margin-bottom: 30px;
}

#sound .interview dd{
	margin-left:8em;
	margin-bottom: 30px;
}

#sound .interview .qCatchBox{
	padding-top: 5%;
}

#sound .interview .qCatch{
	background-color: var(--lightgreen);
	color: #000;
	text-align: center;
	margin: 5% auto;
	padding: 3% 1% 3%;
	font-weight: bold;
	font-size: 150%;
}

#sound .interview .qMds{
	color: var(--lightgreen);
	text-align: left;
	padding: 0 0 2%;
	font-weight: bold;
	font-size: 120%;
	text-indent: -1em;
}

#sound .interview .intList{
	background-color:rgba(255,255,255,0.2);
	border: double 4px #666;
	padding: 3%;
}

#sound .interview .intList ul{
	width: 50%;
	display: inline-block;
}

#sound .interview .intList ul li{
	border-left: solid 5px #999;
	margin-bottom: 6px;
	padding: 2px 5px;
	display: block;
}

#sound .interview .intList ul li:hover{
	border-left: solid 5px var(--lightgreen);
	color: var(--lightgreen);
}

#sound .interview .nextLink{
	background-color: var(--orange);
	margin: auto;
	text-align: center;
	font-size: 120%;
	margin-bottom: 5%;
}

#sound .interview .nextLink:hover{
	background-color: var(--lightgreen);
}

#sound .interview .nextLink a{
	display: block;
	color: #000;
	padding: 5px;
}

/*---------------------------------------------
主題歌情報
---------------------------------------------*/
#sound .oped{
	max-width: 1300px;
	margin: auto;
	padding: 4% 2%;
}

#sound .oped .op,
#sound .oped .ed{
	border:double 3px var(--green);
	padding: 3%;
	margin-bottom: 3%;
	background-color: var(--black50);
}

#sound .oped .op{
	width: 99%;
	margin:0 auto 3%;
}

#sound .oped .ed{
	width: 49%;
	margin: 0.5%;
	display: inline-block;
	text-align: left;
}

#sound .oped .title{
	background-image: url(../img/tex.jpg);
	font-size: 150%;
	padding: 2%;
	font-weight: bold;
	margin-bottom: 10px;
	text-align: center;
}

#sound .oped .title small{
	display: block;
	font-weight: normal;
	font-size: 70%;
}

#sound .oped .artImg{
	margin: 20px auto;
	text-align: center;
	border-top: 1px dashed #ccc;
	padding-top: 20px;
}

#sound .oped .artImg img{
	border: solid 1px var(--green);
	margin-bottom: 20px;
	width: 100%;
	max-width: 280px;
}

#sound .oped .artImg strong{
	background-color: var(--green);
	display: block;
	padding: 5px;
}



#sound .oped .btn{
	display: block;
	border: double 3px #000;
	padding: 5px 15px;
	border-radius: 3px;
	position: relative;
	overflow: hidden;
	margin-left: 10px;
	text-align: center;
	background-color: var(--orange);
	color: #000;
	font-weight: bold;
	font-size: 110%;
}

#sound .oped .btn:hover{
	background-color: #fff;
	color: #000;
}

#sound .oped .btn::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 100%;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .8) 100%, rgba(255, 255, 255, 0) 0%);
    
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}


/*////////////////////////////////////////////////////////////////////////
ムービー
////////////////////////////////////////////////////////////////////////*/
/*---------------------------------------------
埋め込み用
---------------------------------------------*/
.youtube{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin:auto;
}

.youtube iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/*---------------------------------------------
ポップアップムービー
---------------------------------------------*/
#movie{
	max-width: 1300px;
	margin: auto;
	padding: 5% 2%;
	min-height: 600px;
}

.movie{
	width: 24%;
	margin: 0.5%;
	display: inline-block;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center top;
	position: relative;
	border: solid 1px var(--lightgreen);
	background-color: #000;
	font-size: 90%;
}

.movie .title{
	padding:2% 0;
	display: block;
}

.movie .new{
	position: absolute;
	bottom: 8%;
	left: 0;
	width: 100%;
	font-size: 90%;
	text-align: center;
	font-weight: bold;
}

.movie .new span{
	background-color: var(--red);
	padding: 1px 10px;
	border-radius: 5px;
}

.movie img{
	width: 100%;
	transform: scale(1.35);
	opacity: 0.6;
}

.movie .movieIcon{
  transition-duration: 0.3s;
}

.movie .movieIcon:hover{
	transform: scale(1.6);
	transition-duration: 0.3s;
	opacity: 1;
}


/*////////////////////////////////////////////////////////////////////////
スペシャル
////////////////////////////////////////////////////////////////////////*/
#icon{
	width: 100%;
	max-width: 1300px;
	margin: auto;
	padding: 5% 2%;
	min-height: 600px;
}

#icon img{
	width: 13%;
	margin: 0.5%;
}

/*---------------------------------------------
キャストコメント
---------------------------------------------*/
#castComment{
	width: 96%;
	max-width: 1300px;
	margin: auto;
	text-align: left;
	padding-bottom: 5%;
}

.commentBox{
	border: solid 1px var(--lightgreen);
	padding: 3% 3% 4%;
	margin-bottom: 3%;
}

.commentBox .castImg{
	width: 20%;
	display: inline-block;
	text-align: center;
	max-width: 300px;
}

.commentBox .castImg img{
	width: 100%;
	border: solid 1px #666;
	margin-bottom: 10px;
}

.commentBox .txt{
	width: 80%;
	display: inline-block;
	padding-left: 2%;
}

.commentBox .name{
	font-size: 200%;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 20px;
	display: block;
}

.commentBox small{
	background-color: var(--green);
	font-size: 100%;
	font-weight: bold;
	padding: 2px 10px;
	color: #fff;
	display: block;
	margin-bottom: 10px;
}

.commentBox p{
	color: #fff;
	padding: 10px;
	background-color: var(--green);
	margin-top: 20px;
	margin-bottom: 5px;
}

/*---------------------------------------------
FAQ
---------------------------------------------*/
.faq{
	background-image:url(../img/special/faq/bg.jpg);
	background-size: cover;
	background-position: center top;
	padding: 3%;
	/*font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
}

.faqBox{
	width: 100%;
	max-width: 1300px;
	padding: 2% 2% 3%;
	margin: auto;
	background-image: url(../img/special/faq/bg2.jpg);
	border: solid 20px #805722;
	position: relative;
}

.faqBox::before {
	content: ''; 
	width: calc(100% + 40px);
	height: calc(100% + 40px); 
	top: -21px;
	left: -21px;
	position: absolute;
	border: solid 1px #fff;
	pointer-events: none;
}

.faqBox h1{
	font-size: 300%;
	padding: 1%;
	border-bottom: 3px double #fff;
	text-shadow:2px 2px 0 var(--green), -2px -2px 0 var(--green),
	-2px 2px 0 var(--green), 2px -2px 0 var(--green),
	0px 2px 0 var(--green),  0-2px 0 var(--green),
	-2px 0 0 var(--green), 2px 0 0 var(--green);
}

.faqBox p.how{
	background-color: #fff;
	color: #333;
	padding: 10px;
	margin-bottom: 2%;
	font-weight: bold;
}

/*
.faqBox ul li{
	display: inline-block;
	width: 32%;
	margin: 0.5%;
	border: solid 5px #fff;
	box-shadow: 0px 8px 5px 0px #666;
}

.faqBox ul li img{
	width: 100%;
}

.faqBox ul li img:hover{
	opacity: 0.8;
}
*/

.faqBox ul li{
	text-align: left;
	display: inline-block;
	width: 49%;
	margin: 0.5%;
	border: solid 5px #fff;
	background-color: #80ecca;
	color: #333;
	padding:1%;
	font-size: 110%;
	background-image: url(../img/special/faq/point.png);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 18%;
}

.faqBox ul li span{
	width: 88%;
	background-color: #fff;
	display: block;
	padding: 2%;
	border-radius: 10px;
}

.faqBox ul li a span{
	color: #333;
}

.faqBox ul li:hover{
	background-color: #ec80c0;
}

/*////////////////////////////////////////////////////////////////////////
製品情報
////////////////////////////////////////////////////////////////////////*/

#info {
	padding-bottom: 1%;
}

#info .spec{
	width: 100%;
	max-width: 1000px;
	margin: 2% auto;
}

#info .spec .jacket{
	width: 100%;
	margin-bottom: 5%;
}

#info .spec .jacket img{
	width: 100%;
	max-width: 1000px;
}

#info .spec table{
	width: 100%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
	text-align: left;
	margin: auto;
}

#info .spec table th{
	width: 8em;
	background-image: url(../img/tex.jpg);
	text-align: center;
	font-weight: bold;
	color: #fff;
	vertical-align: middle;
	padding: 10px;
}

#info .spec table td{
	padding: 10px;
	border-bottom: 1px solid var(--green);
}

#info  ul.storeLink{
	margin: 5% auto 0;
	text-align: center;
	border-top: 3px solid #000;
	margin-top: 3%;
	padding: 2% 0;
	font-size: 100% !important;
	padding-left: 0 !important;
}

#info  ul.storeLink li{
	width: 32%;
	display: inline-block;
	margin: 2% 0.5% 2% !important;
	padding: 10px;
	background-color: var(--lightgreen);
	text-indent: 0 !important;
	color: #000;
}

#info  ul.storeLink li:hover{
	background-color: var(--orange);
}

/*---------------------------------------------
特典
---------------------------------------------*/
#info .verSelect{
	width: 100%;
	max-width: 800px;
	margin:2% auto;
}

#info .verSelect li{
	width: 48%;
	margin: 1%;
	display: inline-block;
	/*background-color: var(--orange);*/
	padding: 10px 10px;
	color: #000;
	cursor: pointer;
	font-size: 120%;
	font-weight: bold;
	box-shadow: 5px 5px #ff7a18;
	border: solid 2px #333;
	border-radius: 5px;
	position: relative;
	
	background: linear-gradient(180deg, #ffcb7a 0%, #ffcb7a 55%, #ffbc54 55%, #ffbc54 100%);
	
}

#info .verSelect li::before {
	content: ''; 
	width: calc(100% + 4px);
	height: calc(100% + 4px); 
	border: 1px solid #ff7a18;
	position: absolute;
	top: -3px;
	left: -3px;
	border-radius: 6px;
}


#info .verSelect li:hover{
	box-shadow: 0px 0px #ff7a18;
	transform: translateY(2px);
}

#info .verSelect .dlBtn{
	opacity: 0.6;
}

#info .dlSet .preSet ul{
	margin: 20px 0;
}

#info .dlSet .preSet ul a{
	background-color: var(--orange);
	padding: 5px 10px;
	color: #000;
}

#info .dlSet .preSet ul a:hover{
	opacity: 0.6;
}


#info .bonus{
	width: 100%;
	margin: auto;
	text-align: left;
	margin-bottom: 5%;
}

#info .bonus .mds{
	margin: 0 auto;
	padding: 3%;
}

#info .bonus .txt{
	width: 100%;
	max-width: 1300px;
	margin: auto;
	padding:3%;
}

#info .bonus .txt img{
	width: 100%;
	max-width: 1000px;
	display: block;
	margin: auto;
}

#info .bonus .txt p.item{
	background-image: url(../img/tex.jpg);
	border-bottom: 1px solid var(--orange);
	padding: 10px;
	color: #fff;
	font-weight: bold;
	font-size: 110%;
	margin: 30px auto 5px;
}

#info .bonus .txt p.item span{
	background-color:var(--orange);
	color: #000;
	padding: 5px 10px;
	border: double 3px #333;
	font-size: 80%;
	vertical-align:middle;
}


#info .bonus .correct{
	border: solid 1px #666;
	padding: 3%;
	text-align: center;
	margin: 0.5%;
	display: block;
	vertical-align: middle;
}

#info .bonus .correct .txt img:hover{
	opacity: 0.6;
}


#info .bonus .correct .txt{
	width: 30%;
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	padding: 0;
}

#info .bonus .correct .pdfLink{
	border: solid 1px #fff;
	border-radius: 10px;
	padding: 10px 20px;
	font-size: 110%;
	background-color: #000;
	display: block;
	text-align: center;
}

#info .bonus .correct .pdfLink:hover{
	background-color: var(--orange);
	color: #000;
}

#info .bonus .movie{
	width: 66%;
	display:inline-block;
	text-align: center;
	background-color: var(--orange);
	color: #000;
	border: solid 3px  var(--orange);
	font-weight: bold;
	font-size: 110%;
	margin-right: 3%;
}

#info .bonus .movie img.movieIcon{
	width: 100%;
}





#info .bonus .preSet{
	background-color: var(--black50);
	border: solid 1px var(--green);
	padding: 2%;
	margin-top: 3%;
}

#info .bonus .yudo{
	background-color: var(--lightgreen);
	padding: 10px;
	text-align: center;
	width: 95%;
	max-width: 1200px;
	margin: auto;
	font-size: 150%;
	font-weight: bold;
	color: #000;
	border-radius: 10px;
}

#info .bonus .yudo:hover{
	background-color: var(--orange);
}


#info .bonus h2{
	background-color: var(--lightgreen);
	width: 98%;
	padding: 10px;
	text-align: center;
	margin: auto;
	font-size: 150%;
	font-weight: bold;
	color: #000;
	border-bottom: 6px double var(--green);
}

#info .shopList{
	width: 48%;
	margin: 1%;
	display: inline-block;
	border: solid 1px var(--green);
	padding: 3%;
	background-image: url(../img/bg_all.jpg);
	background-repeat: no-repeat;
	background-attachment: fixed;
}

#info .shopList img{
	width: 100%;
	display: block;
	padding: 5% 0;
}


#info .shopList .shopName{
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 120%;
	letter-spacing: 0.1em;
	border-bottom: 3px solid #000;
	padding: 10px;
	background-image: url(../img/tex.jpg);
}

#info .shopList strong{
	background-color: #ccc;
	padding: 8px;
	display: block;
	color: #333;
	margin-bottom: 3px;
}


#info .shopList .shopSet{
	padding: 3%;
	border: double 1px #000;
	margin: 3% auto;
	background-color: var(--white20);
}

#info .shopList .shopSet span{
	display: block;
	color: var(--orange);
	margin-bottom: 10px;
}

#info .shopList .shopLink{
	background-color: var(--lightgreen);
	text-align: center;
	padding: 10px;
	color: #000;
	font-weight: bold;
	margin-top: 3%;
}

#info .bonus  .shopList ul,
#info ul.small{
	padding-left: 1em;
	font-size: 80%;
	margin-top: 20px;
}

#info .bonus  .shopList ul li,
#info ul.small li{
	text-indent: -1em;
	margin-bottom: 3px;
}

/*---------------------------------------------
パッチ
---------------------------------------------*/
.patch{
	text-align: left;
	width: 98%;
	padding: 2% 0;
	max-width: 1200px;
	margin: auto;
}

.patch h3{
	background-image: url(../img/tex.jpg);
	padding: 10px;
	margin-bottom: 10px;
	border-left: solid 10px var(--lightgreen);
}

.patch ul{
	padding-left: 1em;
	border: solid 1px var(--green);
	background-color: #000;
	padding: 2% 3%;
}

.patch ul li{
	text-indent: -1em;
	margin-bottom: 5px;
}

/*---------------------------------------------
新着
---------------------------------------------*/
#news{
	width: 94%;
	max-width: 1300px;
	margin: auto;
	text-align: left;
	padding: 3%;
	min-height: 600px;
}

.mds.newsMds{
	margin: 2% auto;
}

#news .newsLine{
	border-bottom: 1px solid #666;
	margin: 2% auto;
}

#news .day{
	line-height: 2em;
	padding: 5px;
	letter-spacing: 0.1em;
	background-color: var(--green);
}


#news .txt{
	width: 100%;
	display: block;
	margin-top: 10px;
}

#news .txt a{
	color: var(--orange);
}

#news .txt a:hover{
	opacity: 0.6;
}


/*######################################################################
メディアクエリ
######################################################################*/
/*//////////////////////////////////////////////////////////////////////*/
@media screen and (max-width: 1300px) {
/*//////////////////////////////////////////////////////////////////////*/

	
/*//////////////////////////////////////////////////////////////////////*/
}
@media screen and (max-width: 1000px) {
/*//////////////////////////////////////////////////////////////////////*/
	

/*//////////////////////////////////////////////////////////////////////*/
}
@media screen and (max-width: 800px) {
/*//////////////////////////////////////////////////////////////////////*/
br.txtCutNone{display:block;}
br.txtCut{display:none;}
.txtCutNone{display:block;}
.txtCut{display:none;}
	
body{
	min-width:inherit;
	font-size: 12px;
}
	
#mainBox{
	padding: 0;
}

.mds{
	background-size: 250%;
}
	
.mds2{
	background-size: 250%;
}
	
	
.new{
	position:relative;
	font-size: 100%;
	margin-right: 5px;
	padding: 5px;
}
	
	
/*---------------------------------------------
フッター
---------------------------------------------*/
footer{
	padding: 0 0 20% 0;
}

footer .banner img{
	margin: 0.5%;
	width: 30%;
}

footer #sns{
	padding: 2.5%
}

footer .pf img{
	height: 40px;
}

#backTop{
	z-index: 99;
	position: fixed;
	bottom: 0px;
	right: 0px;
	text-align: center;
	font-size: 30px;
	line-height:1em;
	cursor: pointer;
}

#backTop:hover{
	opacity: 0.6;
}
	
/*////////////////////////////////////////////////////////////////////////
ヘッダー
////////////////////////////////////////////////////////////////////////*/
header{
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 99;
	background-image: url(../img/bg_all.jpg);
	padding-top: 60px;
	min-width: inherit;
	left: -100%;
}

header nav{
	width: 100%;
	margin: auto;
	text-align:left;
}

 header nav ul li{
	 width: 100%;
	 display: block;
	 margin: 2px auto;
	 padding: 10px;
	 position: relative;
}
	
header nav ul li:hover, header nav ul li.select{
	background-color: var(--lightgreen);
	border-bottom: 0;
	color: #000;
}
	
header nav ul li::after {
	content: "〉";
	position: absolute;
	right: 10px;
}

#navBtn{
	display: block;
	position: fixed;
	background-color:#000;
	border-right: solid 1px var(--lightgreen);
	border-bottom: solid 1px var(--lightgreen);
	width: 60px;
	height:60px;
	z-index: 100;
	left: 0;
	top: 0;
	cursor: pointer;
}

#navBtn img{
	width: 100%;
}

/*---------------------------------------------
サブナビ
---------------------------------------------*/
#subNavi{
	padding: 0;
	min-width: inherit;
	padding-left:60px;
}

#subNavi .nomalNavi ul{
	text-align: right;
}
	
#subNavi .nomalNavi li{
	margin:0;
	border: solid 1px #000;
	width: 50%;
	text-align: center;
}
	
	
/*////////////////////////////////////////////////////////////////////////
トップページ
////////////////////////////////////////////////////////////////////////*/
	
.count{
	position: absolute;
	top: 70px;
	bottom:  inherit;
	left: 0px;
	width: 35%;
	z-index: 1;
}

.count img{
	border: solid 1px var(--green);
}
	
#key{
	padding-bottom: 20%;
	background-color: #fff;
}
	
#key .box{
	left: 0;
	width: 100%;
	padding-top: 80%;
}
	
#key .box .day{
	border-top: 1px solid #93aca8;
	margin-top: 10px;
	padding-top: 10px;
}

#key .box .banner{
	width: 100%;
}

#key .dendo{
	left:inherit;
	right: 1%;
	top: 1%;
	width: 30%;
}
	

/*---------------------------------------------
新着
---------------------------------------------*/
#topNews{
	font-size: 100%;
}

#topNews .title{
	display: none;
}

#topNews .txtBox{
	width: 100%;
	display: block;
	padding:8px;
}
	
#topNews .txtBox .day,
#topNews .txtBox .txt{
	width: 96%;
	display: block;
	text-align: left;
}

#topNews .txtBox .day{
	font-weight: bold;
}

#topNews .more{
	bottom: 20%;
}

/*---------------------------------------------
インフォ
---------------------------------------------*/
#topInfo .aboutBoxL, #topInfo .aboutBoxR{
	padding: 3%;
	background-size: 90%;
	margin: 10% auto 20%;
}
	
#topInfo .aboutBoxL{
	margin-bottom: 22%;
}
	
#topInfo .aboutBoxR{
	margin-bottom: 30%;
}

#topInfo .aboutBoxL .txt,
#topInfo .aboutBoxR .txt{
	padding: 3%;
	background-color: var(--black50);
	margin-top: 20%;
	font-size: 2.6vw;
}
	
#topInfo .aboutBoxL .txt{
	margin-bottom: -24%;
}
	
#topInfo .aboutBoxR .txt{
	margin-bottom: -24%;
}
	
#topInfo .aboutBoxL p, #topInfo .aboutBoxR p{
	font-size: 150%;
}

#topInfo .aboutBoxL{
	padding-left: 0%;
}

#topInfo .aboutBoxR{
	padding-right: 0%;
}

/*---------------------------------------------
スペック
---------------------------------------------*/
#topInfo .spec{
	width: 90%;
	padding:5% 3% 15%;
	margin-bottom: 10%;
}

#topInfo .spec .jacket{
	width: 100%;
	display: block;
	margin-right: 0;
	margin: auto;
	margin-bottom: 5%;
}

#topInfo .spec .txt{
	width: 100%;
	display: block;
	margin: auto;
}

#topInfo .spec .txt p{
	padding: 10px 0;
	font-size: 85%;
}

#topInfo .spec .txt p strong{
	font-size: 130%;
}

#topInfo .spec .txt strong{
	font-size: 150%;
}

#topInfo .spec .txt .more{
	padding: 10px 5% 10px 10%;
	font-size: 120%;
}
	

/*////////////////////////////////////////////////////////////////////////
ワールド
////////////////////////////////////////////////////////////////////////*/
#story{
	background-size: cover;
	padding:80px 5% 12% 5%;
}

.storyBox{
	display: block;
	text-align: left;
	padding: 8%;
	line-height: 1.5em;
	font-size: 100%;
}

/*---------------------------------------------
キーワード
---------------------------------------------*/
#world{
	background-attachment: fixed;
	background-size: 250%;
	padding: 3% 5% 20%;
}

.worldBox{
	width: 100%;
	margin: 2% auto;
	padding: 4%;
	display: block;
}

.worldBox p{
	font-size: 120%;
}
	
/*////////////////////////////////////////////////////////////////////////
キャラ
////////////////////////////////////////////////////////////////////////*/
#chara{
	background-size: cover;
	background-attachment: fixed;
}

#chara .mds{
	padding: 8% 0;
}

#chara #charaList ul{
	background-size: 150%;
}

#chara #charaList ul li{
	width: 100%;
	margin: auto;
	text-align: right;
	padding-left: 50%;
	background-size: 125%, 150%;
	filter: grayscale(0);
}

#chara #charaList ul li img{
	width: 100%;
}

.listNavi{
	padding:4% 2%;
	min-width: inherit;
}


/*---------------------------------------------
個別
---------------------------------------------*/
#chara .charaBox{
	background-image: none !important;
}

#chara .charaBox .left,
#chara .charaBox .right,
#chara .charaBox .solo{
	width: 100%;
	display: block;
	background-size: 100%,cover;
	margin: 0;
}
	
#chara .charaBox .left,
#chara .charaBox .solo{
	background-position:right top;
}
	
#chara .charaBox .left{
	border-bottom: 10px solid #000;
}

#chara .charaBox .right{
	background-position:left top;
}
	
#chara .charaBox .left .txtBox,
#chara .charaBox .right .txtBox,
#chara .charaBox .solo .txtBox{
	width: 100%;
	padding: 20% 3% 3%;
}

#chara .charaBox .left .txtBox,
#chara .charaBox .right .txtBox,
#chara .charaBox .solo .txtBox{
	margin: 0;
}
	
#chara .charaBox .serif,
#chara .charaBox .serifSolo{
	margin-bottom: 25%;
}
	
#chara .charaBox .serif img{
	width:60%;
	max-width:inherit;
	margin:auto -3%;
}
	
#chara .charaBox .serifSolo{
	width:100%;
	max-width:inherit;
	margin:auto;
	padding-top: 20%;
}

#chara .charaBox .serifSolo img{
	width:57%;
	max-width:inherit;
	margin:auto;
}

	
	
#chara .charaBox .name img{
	width: 70%;
}
	
#chara .charaBox .sv .cvplay{
	max-width: 60px;
}
	
/*////////////////////////////////////////////////////////////////////////
システム
////////////////////////////////////////////////////////////////////////*/
#system{
	font-size: 100%;
	padding-bottom: 10%;
}

/*---------------------------------------------
大見出し　小見出し
---------------------------------------------*/
#system .mdsBox{
	margin:25% auto 5%;
	position: relative;
	padding: 5% 0 0;
	background-size: 180%;
	background-position: right top;
}

#system .mdsBoxMini{
	background-size: 100%, cover;
	background-position: center top, center top;
}

#system .mdsBox h2{
	position: relative;
	bottom:inherit;
	margin-top: -25%;
	margin-bottom: 45%;
}

#system .mdsBox h2 img{
	width: 100%;
}
	
#system .mdsBox .aria{
	width: 100%;
	padding: 3% 3% 0;
}

	
#system .mdsBox .txt{
	width: 100%;
}

#system .mdsBoxMini .txt{
	width: 100%;
	margin: 0;
	padding: 45% 3% 5%;
}

#system .mdsBoxMini .txt h3{
	font-size: 140%;
	margin-bottom: 10px;
 }

/*---------------------------------------------
個別画像
---------------------------------------------*/
#system .imgBox{
	padding: 3%;
}


/*---------------------------------------------
交互エリア
---------------------------------------------*/
#system .txtBox{
	width: 100%;
	margin: auto;
	position: relative;
	margin-top: 5%;
}

#system .txtBox .img{
	width: 90%;
	display: block;
}
	
#system .txtBox .txt{
	width: 95%;
	display: block;
	margin-left: 5%;
}
	
#system .txtBox .img img{
	width: 100%;
}
	
#system .txtBox .txt,
#system .txtBox.right .txt{
	padding: 2% 0% 2% 2%;
	text-align: left;
}

#system .txtBox hr{
	border-bottom: 1px solid #666;
	margin: 2% auto;
}

#system .txtBox .txt p{
	font-size: 140%;
}

#system .txtBox.right,
#system .txtBox.right .txt{
	direction: inherit;
}

	
#system ul.yousei li{
	width: 32%;
}

/*////////////////////////////////////////////////////////////////////////
ギャラリー
////////////////////////////////////////////////////////////////////////*/
#gallery{
	padding: 10% 2% 30%;
	min-height:inherit;
}

#gallery ul li{
	width: 32%;
}
	
	
/*////////////////////////////////////////////////////////////////////////
サウンド
////////////////////////////////////////////////////////////////////////*/

#sound .list ul li{
	width: 15.5%;
	font-size: 90%;
	vertical-align: top;
}

#sound .list li.listMds{
	display: block;
	width: 100%;
}
	
	
	
#sound .utahime .box .txt{
	padding: 3%;
	width: 99%;
	margin:3% auto;
	display: block;
	font-size: 100%;
}
	
#sound .utahime  .box .name{
	display: block;
	margin-bottom: 10px;
}


#sound .zizzBox{
	font-size: 100%;
}


#sound .oped .op,
#sound .oped .ed{
	width: 100%;
	display: inline-block;
	margin: 2% auto;
}

	
/*////////////////////////////////////////////////////////////////////////
ムービー
////////////////////////////////////////////////////////////////////////*/
#movie{
	padding: 10% 5% 30%;
	min-height:inherit;
}
	
.movie{
	width: 49%;
}
	
/*////////////////////////////////////////////////////////////////////////
スペシャル
////////////////////////////////////////////////////////////////////////*/
#special{
	padding: 5% 5%;
}
	
#icon{
	min-height: inherit;
}

#icon img{
	width: 19%;
}
	
.commentBox .castImg{
	width: 80%;
	display: block;
	max-width: 300px;
	margin: auto;
}
.commentBox .txt{
	width: 100%;
	display: block;
	padding-left: 0;
}
	
	
	
.faq{
	margin-top: -10%;
	padding: 8% 2%;
}

.faqBox{
	border: solid 10px #805722;
}

.faqBox::before {
	width: calc(100% + 20px);
	height: calc(100% + 20px); 
	top: -11px;
	left: -11px;
}

.faqBox h1{
	font-size: 250%;
}
/*
.faqBox ul li{
	width: 49%;
	margin: 1% 0.5%;
}
*/
	
.faqBox ul li{
	display: block;
	width: 100%;
	margin: 2% auto;
	border: solid 5px #fff;
	padding: 4% 2%;
}
	
.faqBox ul li span{
}
	
	
	
/*////////////////////////////////////////////////////////////////////////
製品情報
////////////////////////////////////////////////////////////////////////*/
#info{
	padding: 0 5%;
	text-align: left;
}
	
#info .spec table th{
	width: 7em;
}

/*---------------------------------------------
特典
---------------------------------------------*/
#info .bonus{
	padding-bottom: 10%;
}
	
#info .bonus .mds{
	margin: 6% auto 3%;
}

#info .bonus .txt{
	padding:0%;
}

#info .bonus .yudo{
	width: 100%;
	font-size: 120%;
	border-radius: 5px;
	margin-bottom: 10%;
}
	
#info .bonus h2{
	width: 100%;
	padding: 10px;
	font-size: 130%;
}

#info .shopList{
	width: 100%;
	margin: 5% auto;
	display: block;
	padding: 3%;
}

#info .shopList img{
	padding:5% 0 3%; 
}	
	
#info .shopList .shopName{
	font-size: 110%;
}
	
#info .bonus .correct .txt{
	width: 100%;
	display: block;
}

#info .bonus .correct .img{
	width: 100%;
	display: block;
	margin-left: 0%;
	margin-top: 20px;
}
	
#info .bonus .movie{
	width: 100%;
	display:block;
	margin-right: 0;
	margin-bottom: 20px;
}
	
	
/*---------------------------------------------
新着
---------------------------------------------*/
#news{
	width: 100%;
	padding: 2% 0 10%;
	min-height:inherit;
}

#news .newsLine{
	margin: 5% auto;
}

	.mds.newsMds{
		margin: 5% auto;
	}
	
	
/*//////////////////////////////////////////////////////////////////////*/
}
@media screen and (max-width: 630px) {
/*//////////////////////////////////////////////////////////////////////*/
#sound .listBox{
	padding: 3% 0;
}

#sound .list ul{
	padding: 3% 2%;
}

#sound .list li strong{
	padding: 5px 0;
}

#sound .list ul li{
	width: 32%;
	font-size: 110%;
}

#sound .list li img{
	display: none;
}

#sound .list li.listMds{
	font-size: 130%;
	margin-bottom: 10px;
}

#sound .interview .intList ul{
	width: 100%;
	display: block;
}
	
#sound .interview table th{
	vertical-align: top;
	padding-top: 3%;
}

#sound .interview table td{
	vertical-align: top;
}

	
	
	
/*//////////////////////////////////////////////////////////////////////*/
}
@media screen and (max-width: 480px) {
/*//////////////////////////////////////////////////////////////////////*/


footer .pf img{
	height: 30px;
}
	

	
	
/*//////////////////////////////////////////////////////////////////////*/
}
/*//////////////////////////////////////////////////////////////////////*/











