

body {
	position: relative;
	color: #221815;
	font-size: 14px;
	line-height: 1.5;
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/* font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif; */
/*	background-image: url(../img/bg.jpg)*/
	background-size: cover;
	background-position: center top;
	background-attachment: fixed;
}


a {
	word-break: break-word;
}


#all {
	box-sizing: border-box;
	display: block;
	width: 100%;
	max-width: 1000px;
	padding: 5%;
	margin: auto;
}





.board {
	box-sizing: border-box;
	position: relative;
	display: block;
	background: #fbf9f4;
	background-image: url(../img/icon_pin.png), url(../img/icon_pin.png), url(../img/icon_pin.png), url(../img/icon_pin.png), url(../img/bg_line_t.png), url(../img/bg_line_b.png), url(../img/bg_board.jpg);
	background-position: left top, right top, left bottom, right bottom, center top, center bottom, center top;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, repeat;
	background-size: 5%, 5%, 5%, 5%, 100% auto, 100% auto, auto;
	padding: 13% 5% 5% 5%;
	margin-top: 10%;
	border: double 3px #cec3be;
	border-radius: 15px;
}
.board h2 {
	display: block;
	position: absolute;
	top: -30px;
	left: 0;
	right: 0;
	width: 50%;
	max-width: 500px;
	margin: auto;
}
.board h2 img,
.intro img {
	display: block;
	width: 100%;
	margin: auto;
}
.intro {
	text-align: center;
}

.store ul{
    max-width: 500px;
    text-align: center;
    margin: auto;
}
.store li{
	display: inline-block;
    width: 48%;
}
.store li img{
	width:100%;
	height:auto;
}

.board.store:not(.policyTop) {

	background-image: url(../img/icon_pin.png), url(../img/icon_pin.png), url(../img/icon_pin.png), url(../img/icon_pin.png), url(../img/bg_line_t.png), url(../img/bg_board.jpg);
	background-position: left top, right top, left bottom, right bottom, center top, center top;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, repeat;
	background-size: 5%, 5%, 5%, 5%, 100% auto, auto;
	padding: 12.5% 5% 5% 5%;
	margin-top:3rem;

}



/* top
-------------------------------------------------- */
#bg {
	background-image: url(../img/bg.jpg);
	background-size: cover;
background-position: center top;
width:100%;
height:100%;
top:0;
position:fixed;
z-index:-1;
}


#top.index{
	margin:-5.5% 0 0 0;
	background-image: url(../img/header_main.png);
	background-size:100% auto;
	background-position:center top;
	padding-top:35%;
	background-repeat:no-repeat;
}
#top.index #logo{
	width:70% !important;

}

#top.index ul.text{
	width:100%;
	text-align:center;
}
#top.index ul.text li{
	display:inline-block;
	margin:auto;
}
#top.index ul.text li:nth-child(1){
	width: 44%;
    margin: auto;
    display: inline-block;
    padding: 0;
}

#top.index ul.text li:nth-child(2){
	    width: 35%;
    margin: auto;
    display: inline-block;
}


#top.index img{
	width:100%;
}

/* ウィンドウ幅が0-767pxの場合に適用するCSS */
@media screen and (max-width:767px){

#bg {background-size: auto 100vh;}
#top.index{
		margin:-5.5%;
	background-image: url(../img/header_main_sp.png);
	background-repeat:no-repeat;
	padding:38% 5% 5% 5%;
}
#top.index ul.text li:nth-child(1){
	width: 70%;
    margin: auto;
	display:block;
}

#top.index ul.text li:nth-child(2){
	width: 57%;
    margin: auto;
	display:block;
}
#logo {}
.board.store {
	margin-top:1rem !important;
}


}
#top #logo {
	display: block;
	width: 80%;
	max-width: 630px;
	margin: auto;
}
#top #txtCatch {
	display: block;
	width: 80%;
	max-width: 600px;
	margin: 5% auto auto auto;
}

#banaBox {
	display: block;
	width: 70%;
	max-width: 1000px;
	margin: 5% auto auto auto;
}
#banaBox a {
	box-sizing: border-box;
	display: block;
	width: 100%;
	border: solid 3px #000;
}

/*
#banaBox a:hover {
	opacity: 0.7;
}
*/

#banaBox img {
	display: block;
	width: 100%;
}


/* DMM
-------------------------------------------------- */

.check {
	text-align: center;
    padding: 0.5em;
    background-color: rgba;
    background-color: rgba(34, 36, 80, 0.8);
    width: 50%;
    margin: 1em auto 0;
    border-radius: 1rem;
    color: #fff;
}




/* キャラ
-------------------------------------------------- */
#charaBox {
	display: block;
	margin-top: 10%;
}
#charaBox img {
	display: block;
	width: 100%;
}



/* 主題歌
-------------------------------------------------- */
#themeSong {
	position: relative;
	text-align: center;
	line-height: 1.5;
}
#themeSong span {
	display: block;
	color: #119c92;
	font-size: 20px;
	font-weight: bold;
}
#themeSong strong {
	display: block;
	color: #119c92;
	font-size: 40px;
	font-weight: bold;
}



/* youtube
-------------------------------------------------- */
.youtube {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	margin-top: 3%;
	overflow: hidden;
}
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0;
}



/* cd
-------------------------------------------------- */
#themeCd {
	color: #fff;
	background: #231815;
	width: 100%;
	margin-top: 3%;
	border-collapse: collapse;
}
#themeCd td {
	padding: 10px;
}
#themeCd td:first-child {
	width: 25%;
}
#themeCd td:last-child {
	box-sizing: border-box;
}
#themeCd td img {
	display: block;
	width: 100%;
}



/* アーティスト情報
-------------------------------------------------- */
#artistBox {
	width: 100%;
	margin-top: 3%;
	border-collapse: collapse;
}
#artistBox td strong {
	font-size: 18px;
	font-weight: bold;
}
#artistBox td a {
	color: #221815;
	text-decoration: none;
}
#artistBox td a:hover {
	text-decoration: underline;
}
#artistBox td:first-child {
	box-sizing: border-box;
	padding-right: 10px;
}
#artistBox td:last-child {
	width: 30%;
}
#artistBox td img {
	display: block;
	width: 100%;
}



/* footer
--------------------------------------------------*/
footer {
	box-sizing: border-box;
	text-align: center;
	color: #fff;
	background: #221815;
	width: 100%;
}
footer #spec {
	box-sizing: border-box;
	background-image: url(../img/footer/bg_spec.png);
	padding: 3%;
}
footer #spec img#logo {
	width: 100%;
	display: block;
	max-width: 200px;
	margin: auto auto 1% auto;
}
footer #spec li {
	display: inline-block;
	margin: 0 10px;
}
footer #footerBox {
	padding: 3%;
}
footer #snsBox {
}
footer #snsBox a {
	display: inline-block;
	width: 30px;
	margin: 5px;
}
footer #toiLink {
	margin-top: 2em;
}
footer #toiLink li {
	display: inline-block;
	margin: 0 10px;
}
footer #toiLink li a {
	color: #fff;
	text-decoration: none;
}
footer #toiLink li a:hover {
	text-decoration: underline;
}
footer #cLogo {
	margin-top: 2em;
}
footer #cLogo a {
	box-sizing: border-box;
	display: inline-block;
	width: 30%;
	max-width: 300px;
	margin: 2px;
	border: solid 1px #2e2421;
}
footer #cLogo a:hover {
	background: #2e2421;
}
footer #copy {
	font-size: 12px;
}
footer #cLogo a img ,
footer #snsBox a img {
	width: 100%;
	display: block;
}


/* ボタン
--------------------------------------------------*/
a.btn{
	width: 50%;
	display:block;
	text-decoration:none;
    color: #FFF;
    font-size: 1.2rem;
    padding: 0.7rem;
    margin: 1.5rem auto 0;
    border-radius: 8px;
    background-color: #3366CC;
}
a.btn:hover{
	 background-color: #69F;
}





/* ポリシー関係
--------------------------------------------------*/
#policy.board {
	padding: 10% 5% 5% 5%;
	margin-top: 0;
}
#policy h2 {
	display: block;
	position: relative;
	font-size: 36px;
	width: 100%;
	text-align: center;
}
#policy h3 {
	font-size: 20px;
	margin-top: 2em;
	margin-bottom: 10px;
	border-bottom: double 3px #000;
}
#policy ul.disc,
#policy ul.num {
	padding: 0 1.5em;
}
#policy ul li {
	list-style-type: decimal;
	margin-bottom: 0.5em;
}
#policy ul.disc li {
	list-style-type: disc;
}
#policy ul span {
	display: block;
	text-indent: -1.5em;
}
#policy ol,
#policy ol li {
	list-style-type: lower-roman;
}
#policy table {
	display: block;
	width: 100%;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-all;
	border-collapse: collapse;
}
#policy td {
	padding: 5px;
	border: solid 1px #333;
}
#policy .borNon td {
	vertical-align: top;
	border: none;
}
#policy .borNon td:first-child {
	white-space: nowrap;
}
#policy .izyo {
	display: block;
	text-align: right;
	margin: 1em 0 3em 0;
}

#policy.board.policyTop {
	padding: 10% 5% 5% 5%;
	margin-top: 3rem;
	font-size: 1.125rem;
}

#policy.board.policyTop strong {
	font-size: 1.25rem;
}

#policy.board.policyTop h2 {
	font-weight: bold;
	font-size: 1.375rem;
	max-width: 100%;
}



/* ウィンドウ幅が0-767pxの場合に適用するCSS */
@media screen and (max-width:767px){
	#policy.board.policyTop {
		margin-top: 1rem !important;
		padding: 20% 5% 5% 5%;
		font-size: 1rem;
	}

	#policy.board.policyTop strong {
		font-size: 1.125rem;
	}

	#policy.board.policyTop h2 {
		font-size: 1.25rem;
	}

	.board h2 {
		display: block;
		position: absolute;
		top: -15px;
		left: 0;
		right: 0;
		width: 50%;
		max-width: 500px;
		margin: auto;
	}



	/* top
	-------------------------------------------------- */
	#top #logo {
		display: block;
		width: 80%;
		max-width: 630px;
		margin: auto;
	}
	#top #txtCatch {
		display: block;
		width: 80%;
		max-width: 600px;
		margin: 5% auto auto auto;
	}



	/* キャラ
	-------------------------------------------------- */
	#charaBox {
		display: block;
		margin-top: 10%;
	}
	#charaBox img {
		display: block;
		width: 100%;
	}



	/* 主題歌
	-------------------------------------------------- */
	#themeSong span {
		font-size: 14px;
	}
	#themeSong strong {
		font-size: 5.5vw;
	}



	/* cd
	-------------------------------------------------- */
	#themeCd {
		color: #fff;
		background: #231815;
		width: 100%;
		margin-top: 3%;
		border-collapse: collapse;
	}
	#themeCd td,
	#themeCd td:first-child,
	#themeCd td:last-child {
		box-sizing: border-box;
		display: block;
		width: 100%
	}



	/* アーティスト情報
	-------------------------------------------------- */
	#artistBox td strong {
		font-size: 16px;
	}
	#artistBox td,
	#artistBox td:first-child,
	#artistBox td:last-child {
		box-sizing: border-box;
		display: block;
		width: 100%
	}



	/* ポリシー関係
	--------------------------------------------------*/
	#policy {
		font-size: 12px;
	}
	#policy h2 {
		font-size: 22px;
	}
	#policy h3 {
		font-size: 16px;
	}

}
