@charset "UTF-8";

html {
  font-size:62.5%;
  height:100%;
  background:#000;
}
body {
  font-size:1.4rem;
  background:#000;
  margin: 0;
  padding: 0;
  height:100%;
  overflow-x: hidden;
}
body > #contents {
height: auto;
}
*{
	padding:0;
	margin:0;
}
*, *::before, *::after {
  box-sizing:border-box;
}
.clearfix::after {
  content:'';
  display:block;
  clear:both;
}
.top_menu,.top_news,.top_twitter,.spec_toptitle,.top_bottom2,.header_menu,#chara_contents,#gallery_contents,#special_contents,#spec_contents,#story_contents,footer,.a00{font-family: 'Sawarabi Mincho', serif;}


/*リンクスタイル用*/
.btn,
a.btn,
button.btn {
  font-size: 1em;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
a {
    transition : all 0.5s ease 0s;
}

/*改行*/
.pcbr {display:block;}
.mbr {display:none;}
@media screen and (max-width:780px) {
    .pcbr {display:none;}
	.mbr {display:block;}
}
/*=========================================================

TOP

=======================================================*/
@media screen and (max-width:360px) {
	.ema_c_top img{width:100%; text-align:center;}
}
#pcontents {
    position:relative;
    /*background-image: url('../img/03.jpg');
    background-size: cover; 
    background-position:center bottom;*/
    width:100%;
    height:100%;
    min-height:100%;
	background:#fff;
}
.box1{
  /*background:#766248;
  background-image   : radial-gradient(#6c5941 9%, transparent 12%),
                       radial-gradient(#6c5941 9%, transparent 12%);
  background-position: 0 0, 16px 16px;
  background-size    : 32px 32px;*/
    background:#fff;
    background-size: cover; 
    background-position:top;
}
.pheader img{width:100%;}

.box1_grd {
	/*background-image: linear-gradient(180deg, rgb(207, 240, 255), rgb(94, 0, 217));*/
	background: url('../img/bg/v01.jpg');
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (max-width:610px) {
	.box1_grd {
		background: url('../img/bg/v01.jpg');
		background-repeat: no-repeat;
		background-size: cover;
	}
}	
.box1_textbox {
	width:1000px;
	margin:auto;
	/*font-family: "M PLUS Rounded 1c";*/
	font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    color: #fff6eb;
	font-size:1.4em;
    /*background: rgba(0,0,0,0.8);
    border: double 5px #d4a61c;
    border-radius: 10px;角の丸み*/
	padding:20px 90px;
	text-align: center;
}
.p_text01 {color:#ee7089;}
.p_text02 {color:#70eecc;}

.p_text03 {
	color:#fff9e7;
	background:#d000ff;
	padding: 5px;
	font-weight: bold;
}

.p_text04 {
	color:#fff9e7;
	background:#18adab;
}

.p_text05 {
	color:#fff9e7;
	background:#757575;
	text-align:center;
	font-size:1.2em;
}
.p_text06 {
	color:#fdc92e;
	text-align:center;
	font-size:1.2em;
}

.bnr01 {
	text-align:center;
}

.vheader_p {display: block;}
.vheader_m {display: none;}


@media screen and (max-width:610px) {
	.bnr01 img{width:100%;}
	.vheader_p {display: none;}
	.vheader_m {display: block;}
}

/*改行*/
.pcbr {display:block;}
.mbr {display:none;}
@media screen and (max-width:800px) {
    .pcbr {display:none;}
	.mbr {display:block;}
}
@media screen and (max-width:1000px) {
	.box1_textbox {width:100%;}
	.title_image01 img{width:100%;}
}
@media screen and (max-width:800px) {
	.box1_textbox {
	margin:auto;
	font-family: "M PLUS Rounded 1c";
    color: #fff9e7;
	font-size:0.8em;
	padding:5px 20px;
	}
}


/*投票キャラリスト*/
.list01_title {
    padding: 1rem 2rem;
    color: #ffedbf;
    background: #9464f5;
    -webkit-box-shadow: 5px 5px 0 #2e0286;
    box-shadow: 5px 5px 0 #2e0286;
	font-weight: bold;
	letter-spacing: 10px;
}
.list02_title {
    padding: 1rem 2rem;
    color: #fff;
    background: #18adab;
    -webkit-box-shadow: 5px 5px 0 #028381;
    box-shadow: 5px 5px 0 #028381;
}
.list01 {
	display:flex;
	justify-content: center;
	flex-wrap: wrap;
	text-align:center;
	font-family: 'Sawarabi Mincho', serif;
}
.list01::after{
	content:"";
	display: block;
	width:600px;
}

.list01 img{
	width:200px;
}
@media screen and (max-width:450px) {
	.list01 img{width:160px;}
	.list01 div {width: 50%;}
	.list01::after{
		content:"";
		display: block;
		width:50%;
	}
}
@media screen and (max-width:370px) {
	.list01 img{width:90%;}
	.list01 div {width: 50%;}
}

/*ルール*/
.rule {
	color:#d7cb91;
	font-size:0.9em;
	border:3px double #d7cb91;
	padding:20px;
	text-align: left;
}
.rule ul {
	padding-left:20px;
}
.btn_go {
	margin:auto;
	text-align:center;
}

.btn_go2 {
	margin:auto;
	text-align:center;
	display:flex;
}
.btn_go2 a{
	display:inline-block; padding:11px 50px; line-height:1.4; border-radius:4px; font-family:Meiryo,'Hiragino Kaku Gothic Pro','MS PGothic'; font-size:16px; text-align:center; margin:auto; color:#ffffff; text-decoration:none;
}
@media screen and (max-width:700px) {
	.btn_go2 {
		margin:auto;
		text-align:center;
		display:flex;
		flex-wrap: wrap;
	}
	.btn_go2 a{
		width:80%;
		margin:10px;
		font-size:0.8em;
	}
	.fter img{width: 100%;}
}

/*中間結果発表*/
.mybox{
	width: 680px;
	background-color: rgba(0, 0, 0, 0.7);	/* 背景色 */
	border: 2px solid #002aff;	/* 線の太さ・種類・色 */
	border-radius: 5px;
	margin:20px auto;
	padding: 25px 20px 10px 20px;	/* 内側の余白 上・右・左・下 */
	position: relative;
	/*color:#3b3b3b;*/
	font-size: 18px;
	line-height: 30px;
}
.mybox:before{
	background-color: #002aff;	/* 吹き出し背景色 */
	border-radius: 5px;
	color: #fff;	/* 吹き出し文字色 */
	content: '2025.05.02更新';
	padding: 5px 20px;
	position: absolute;
	left: -10px;
	top: -20px;
}
.mybox:after{
	/* border-top: 12px solid #fdc92e;		吹き出し三角部分の色
	border-right: 12px solid transparent;
	border-left: 12px solid transparent; */
	content: '';
	position: absolute;
	top: 10px;
	left: 15px;
}
.myboxfont a {color: #f8a2ef;}
.myboxfont a:hover {color: #002aff;}

.mybox2{
	background-color: #000;	/* 背景色 */
	border: 2px solid #fdc92e;	/* 線の太さ・種類・色 */
	border-radius: 5px;
	margin: 40px 5px 5px 0px;	/* 外側の余白 上・右・左・下 */
	padding: 25px 20px 10px 20px;	/* 内側の余白 上・右・左・下 */
	position: relative;
	/*color:#3b3b3b;*/
}
.mybox2:before{
	background-color: #fdc92e;	/* 吹き出し背景色 */
	border-radius: 5px;
	color: #fff;	/* 吹き出し文字色 */
	content: '7/15 カテドラル杯終了！';
	padding: 5px 20px;
	position: absolute;
	left: -10px;
	top: -20px;
}
.mybox2:after{
	/* border-top: 12px solid #fdc92e;		吹き出し三角部分の色
	border-right: 12px solid transparent;
	border-left: 12px solid transparent; */
	content: '';
	position: absolute;
	top: 10px;
	left: 15px;
}
.soundimg img{width: 100%;}

@media screen and (max-width:650px) {
	.mybox{
		width: 98%;
		font-size: 12px;
		line-height: 18px;
	}
	.soundimg img{width: 100%;}
	.moviearea {width: 100%;}
	video {
		width: 100%; /* 動画をレスポンシブ化 */
		max-width: 640px; /* 動画の最大幅 */
		height: auto;
	 }
}

/*吹き出し*/
.balloonoya {
  position   : relative;                /* 指定した分だけ相対的に移動 */
}
.balloonoya:hover .balloon {
  display: inline;                /* インライン要素として表示 */
}
.balloon {
  position   : absolute;                /* 親要素を基準 */
  display: none;                        /* 要素を非表示 */
  padding: 10px 8px;                         /* テキストの前後の余白 */
  background-color: rgba(255, 255, 255, 1);       /* 背景色（透明度） */
  width:200px;                          /* 吹き出し全体の幅 */
  left : 2%;                           /* 表示位置 */
  bottom : 100%;                        /* 表示位置 */
  margin-bottom : 12px;                 /* 表示位置 */
  font-size: 12px;                       /* 文字サイズ */
  color:#383838;
  border-radius:7px;
  font-family: "M PLUS Rounded 1c";
  text-align: left;
}
.balloon:after{
  border-top: 12px solid rgba(255, 255, 255, 1);    /* 吹き出し口の高さ・色 */
  border-left: 10px solid transparent;    /* 吹き出し口の幅１／２ */
  border-right: 10px solid transparent;   /* 吹き出し口の幅１／２ */
  bottom: -12px;                          /* 吹き出し口の位置調整 */
  left : 10%;                              /* 吹き出し口の横位置 */
  content: "";                       /* コンテンツの挿入 */
  position: absolute;                /* 親要素を基準 */
}
@media screen and (max-width:450px) {
	.balloon {width:150px;}
}


.toprink {
	font-size:0.9em;
	color:#eba434;
	margin:auto;
	text-align:center;
}
@media screen and (max-width:450px) {
	.toprink {
		font-size:0.8em;
		color:#eba434;
		text-align:left;
		padding:0 20px;
	}
}
/*===============================================================

フッター

===================================================================*/
footer{
    color:#ebebeb;
	padding:10px 0;
	background:#000;
    font-size:0.9em;
    text-align:center;
}
footer a {color: #ededed;}


.a00 {
	color:#ddd;
	font-size:50px;
	text-align:center;
	padding:80px;
}

