html {-webkit-text-size-adjust: 100%}

*{
	font-size:100%;
    margin:0;
    padding:0;
	list-style-type:none;
	text-decoration:none;
}

img {
	width: 100%;
	max-width: 640px;
	height: auto;
	outline: none;
}

body {
	-webkit-text-size-adjust:none;
	font-family: メイリオ,ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3",  sans-serif;  
	width: 100%;
	max-width: 640px;
	margin:auto;
	background:url("./img/back_02.png") repeat;
	background-size:40px;
	position:relative;
}
.light_body{
	position:static;
}
h1, h2, h3, h4, h5, h6, p {
	margin: 0;
	padding:0;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

a{
	color:#f22;
	outline: none;
}

.aligncenter{
	text-align:center;
}

.alignright{
	text-align:right;
}

.btn{
	position:absolute;
	width:18%;
	top:12px;
	right:5px;
}

.btn:hover{
	top:16px;
}

header{
	width: 100%;
	max-width: 640px;
}

header a,
header a img{
	display:block;
}

article{
	margin:10px auto 0;
	height:auto;
/*
	overflow:hidden;
*/
}

#main{
	width: 100%;
	max-width: 640px;
}

footer{
	width: 100%;
	max-width: 640px;
	border-top:solid 4px #bd1c24;
	text-align:center;
	background:#bd1c24;
}

address{
	border-top:solid 4px #bd1c24;
	padding:10px 0;
	font-size:11px;
	color:#fff;
}

.oubosikaku{
	width:95%;
	margin:10px auto;
	border-radius:10px;
	background:rgba(255,255,255,0.8);
}

.oubosikaku h1{
	background:#bd1c24;
	text-align:center;
	border-radius:10px 10px 0 0;
	padding:7px 0;
	color:#fff;
	font-size:20px;
	letter-spacing:3px;
}

section p,
section ul{
	width:96%;
	padding:2%;
}

.oubosikaku{
	margin-bottom:20px;
}

.oubosikaku li{
	border-bottom:solid 1px #bd1c24;
	margin:5px auto;
	padding:5px 0;
}

.oubosikaku li:before{
	content:"●";
	margin-right:5px;
}

.oubosikaku p{
	color:#e22;
}

.to_fm{
	width:95%;
	margin:5px auto;
	color:#000;
	font-weight:bolder;
}

.fm{
	margin-bottom:20px;
}

.fm p{
	width:95%;
	margin:5px auto 0;
}

.fm dl{
	width:95%;
	margin:0 auto 10px;
}

.fm dt{
	background:#bd1c24;
	color:#fff;
	padding:7px 7px 7px 55px;
	box-sizing:border-box;
	position:relative;
}

.fm dt span{
	position:absolute;
	left:0;
	top:10px;
	padding:0 5px;
	background:#fff;
	font-size:12px;
	font-weight:bold;
	border-radius:0 3px 3px 0;
}

.fm dt span.hissu{
	color:#f22;
}

.fm dt span.ninni{
	color:#5a5;
}

.fm dd{
	background:#fff;
	margin-bottom:10px;
	padding:10px 0;
	overflow:hidden;
}

.fm select,
.fm textarea,
.fm input[type="tel"],
.fm input[type="email"],
.fm input[type="file"],
.fm input[type="text"]{
	width:90%;
	margin:3px auto;
	display:block;
	padding:5px;
	border:solid 1px #777;
	outline:none;
	border-radius:5px;
	box-shadow:1px 1px 5px #aaa inset;
}

.fm input[type="file"]{
	width:90%;
	margin:3px auto;
	display:block;
	padding:5px;
	border:solid 1px #777;
	outline:none;
	border-radius:5px;
	box-shadow:1px 1px 5px #aaa inset;
}

.fm input[type="tel"]:focus,
.fm input[type="email"]:focus,
.fm textarea:focus,
.fm input[type="text"]:focus{
	border:solid 1px #f00;
	box-shadow:none;
}

.fm textarea{
	height:5em;
}

.fm input[type="image"]{
	width:55%;
	display:block;
	margin:auto;
}

.hissu{
	margin:0;
	padding:0;
	color:#e22;
}

.fm_kakunin dd{
	padding:15px;
}

.modoru{
	width:86%;
	padding:6%;
}

.modoru a{
	width:100%;
	display:block;
	border:solid 1px #bd1c24;
	border-radius:10px;
	background:#bd1c24;
	color:#fff;
	text-align:center;
	padding:10px 0;
	font-weight:bold;
	font-size:16px;
}

.modoru a:focus,
.modoru a:active,
.modoru a:hover{
	background:#fff;
	color:#bd1c24;
}

#profile_fm{
	margin:20px auto;
	width:90%;
}

#profile_fm img{
	display:block;
}

.award{
	margin-bottom:30px;
}

.award ul{
	float:left;
	list-style-type:none;
}

/*		20160512add		*/
.entry_sex_label{
	width:40%;
	float:left;
	border:solid 1px #aaa;
	margin-left:5%;
	padding:3px 10px;
	box-sizing:border-box;
	border-radius:5px;
	box-shadow:1px 1px 3px #aaa inset;
}

.entry_sex_label:last-child{
	float:right;
	margin-left:0;
	margin-right:5%;
}

.webOK_label{
	width:40%;
	border:solid 1px #aaa;
	margin-left:5%;
	padding:3px 10px;
	box-sizing:border-box;
	border-radius:5px;
	box-shadow:1px 1px 3px #aaa inset;
}

.kakunin_dl dd{
	box-sizing:border-box;
	padding:5px;
}
/*		20160512add		*/

.entry_list{
	width:85%;
	margin:15px auto;
	position:relative;
	background:rgba(255,255,255,0.7);
	padding:5%;
}
.entry_list .yukata_thmbnail,
.entry_list .entry_list_text{
	display:inline-table;
	vertical-align:top;
}

.entry_list .yukata_thmbnail{
	width:40%;
}

.entry_list .entry_list_text{
	width:55%;
	margin:0 0 0 4%;
}
.entry_list .yukata_thmbnail img{
	width:100%;
	overflow:hidden;
	display:block;
	height:auto;
}

.entry_list .yukata_thmbnail a{
	display:block;
}
.entry_list dl{
	width:100%;
}
.entry_list .yukatabijin_name{
	color:#bd1c24;
	font-size:20px;
	text-align:left;
	padding:0 0 5px;
	margin:0 0 5px;
	background:none;
	border-bottom:3px dotted #f9e9f2;
}

.entry_list dd{
	background:none;
	line-height:1.8;
}

#vote_fm .sbmt_area input[type="submit"],
.disabled_sbmt,
.cover_link{
	border-radius: 5px;
	-moz-box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.1);
	-ms-box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.1);
	box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.1);
	display:block;
	text-align:center;
	width:48%;
	float:left;
	color:#fff;
	position:relative;
	padding:10px 0;
	border:none;
	font-size:90%;
	margin:0 0 15px;
}
.cover_link{
	font-weight:bold;
	border:1px solid #bd1c24;
	color:#bd1c24;
	box-sizing:border-box;
	border-radius: 5px;
	margin-right:4%;
}
td .cover_link{
	width:100%;
	margin:0;
}
.cover_link::after{
	content:"";
	display:inline-block;
	width: 6px;
	height: 6px;
	border-top: 1px solid #bd1c24;
	border-right: 1px solid #bd1c24;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin:0 0 0 10px;
}

#vote_fm .sbmt_area input[type="submit"]{
	background: rgb(230,29,94);
	background: -moz-linear-gradient(left, rgba(230,29,94,1) 0%, rgba(232,103,145,1) 100%);
	background: -webkit-linear-gradient(left, rgba(230,29,94,1) 0%,rgba(232,103,145,1) 100%);
	background: linear-gradient(to right, rgba(230,29,94,1) 0%,rgba(232,103,145,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bd1c24', endColorstr='#e86791',GradientType=1 );
	color:#fff;
	font-weight:bold;
	cursor:pointer;
}

.disabled_sbmt{
	color:#fff;
	position:relative;
	font-weight:bold;
	font-size:90%;
	background:#ddd;
}
.sp{
	display:none;
}

.pc{
	display:block;
}

@media screen and (max-width:640px) {
	.sp{
		display:block;
	}
	.pc{
		display:none;
	}
	.entry_list{
		display:inline-table;
		width:49%;
		padding:1%;
		box-sizing:border-box;
		text-align:center;
	}
	.entry_list .yukata_thmbnail,
	.entry_list .entry_list_text{
		display:block;
		width:100%;
	}
	.entry_list .yukata_thmbnail{
		margin:0 auto 8px;
		height:150px;
		width:95%;
		position:relative;
	overflow:hidden;
	}
	.entry_list .yukata_thmbnail img{
		position: absolute;
		height:100%;
		width:auto;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.entry_list .entry_list_text{
		margin:auto;
		width:95%;
	}
	.entry_list .yukatabijin_name{
		font-size:16px;
		text-align:center;
		margin:0 auto 15px;
	}
	.entry_list dd{
		display:none;
	}
	#vote_fm .sbmt_area input[type="submit"],
	.disabled_sbmt,
	.cover_link{
		width:94%;
		margin:0 auto 15px;
		float:none;
	}
	.cover_link{
		box-shadow:none;
		border:none;
		text-decoration:underline;
		padding:0;
	}
}


.disabled_p{
	font-size:11px;
	color:#f44;
	text-align:center;
}

.entry_title{
	color:#fff;
	position:relative;
	font-size:24px;
	border-bottom:dotted 2px #fff;
	width:85%;
	margin:10px auto;
	padding-left:30px;
}

.entry_title:before{
	width:18px;
	height:18px;
	position:absolute;
	left:3px;
	top:8px;
	border:solid 1px #fff;
	box-sizing:border-box;
	content:"";
}

.entry_img_detailed{
	text-align:center;
	width:95%;
	margin:auto;
}

.entry_detailed{
	width:95%;	
	margin:15px auto;
}

.entry_detailed dt,
.entry_detailed dd{
	padding:7px 10px;
	box-sizing:border-box;
}

.entry_detailed dt{
    background: #bd1c24;
    text-align: center;
    border-radius: 10px 10px 0 0;
    color: #fff;
    font-size: 20px;
    letter-spacing: 3px;
}

.entry_detailed dd{
	border-radius:0 0 10px 10px;
	background:#fff;
	margin-bottom:20px;
	line-height: 1.8;
	letter-spacing: 0.02em;
}

.supporting_company{
	width:90%;
	margin:10px auto;
}

.supporting_company img{
	display:block;
	width:100%;
	height:auto;
}


#voteBody{
	text-align:center;
	width:100%;
	height:100%;
}

#voteBody .sbmt_area{
	width:60%;
	text-align:center;
	margin:10px auto;
	position:relative;
}

#voteBody input[type="submit"]{
	padding:30px 0;
	border:solid 2px #257;
	background:#47a;
	border-radius:5px;
	display:block;
	outline:none;
	width:100%;
	margin:auto;
	color:#fff;
	text-shadow:1px 1px 1px #aaa;
	box-shadow:1px 1px 3px #69c inset,-1px -1px 3px #69c inset,0 44px 0 #69c inset;
	font-size:28px;
	position:relative;
	letter-spacing:3px;
	z-index:1;
	cursor:pointer;
	-webkit-appearance: none;
}

/*
#voteBody .sbmt_area:before{
	content:"";
	width:28px;
	height:28px;
	background:#fff;
	border-radius:50%;
	position:absolute;
	right:30px;
	z-index:2;
	top:32px;
	cursor:pointer;
}

#voteBody .sbmt_area:after{
	content:"";
	width:8px;
	height:8px;
	position:absolute;
	border-right:solid 2px #EE9800;
	border-top:solid 2px #EE9800;
	transform:rotate(45deg);
	right:40px;
	z-index:3;
	top:41px;
	cursor:pointer;
}
*/
.voteEnd{
	background:#fff;
	border:solid 2px #DD4466;
	width:80%;
	padding:5%;
	margin:20px auto;
	border-radius:10px;
}

.voteEnd strong{
	color:#DD4466
	font-size:20px;

}

.to_list a{
	color:#fff;
	position:relative;
	padding-left:20px;
	border-bottom:solid 1px #fff;
}

.to_list a:after,
.to_list a:before{
	position:absolute;
	content:"";
	width:7px;
	height:7px;
	border-top:solid 2px #fff;
	border-right:solid 2px #fff;
	transform:rotate(45deg);
	left:0;
	top:6px;
}

.to_list a:before{
	left:8px;
}

.to_list{
	display:block;
	width:60%;
	margin:10px auto;
	background:rgba(255,255,255,0.9);
	border:solid 2px #bd1c24;
	padding:10px 0;
	color:#bd1c24;
	font-weight:bold;
	position:relative;
}
.to_list::before{
	content:"";
	position:absolute;
	left:3%;
	top:33%;
	width:8px;
	height:8px;
	border-top:solid 2px #bd1c24;
	border-right:solid 2px #bd1c24;
	transform:rotate(-135deg);
}

.menu_list{
	width:95%;
	margin:20px auto;
	overflow:hidden;
}

.menu_list li{
	width:100%;
	float:left;
}

.menu_list li.li_height a{
	padding:15px 0;
	margin:15px auto;
}

.menu_list li a{
	width:95%;
	margin:auto;
	display:block;
	text-align:center;
	padding:30px 0;
	border:solid 2px rgba(255,105,105,1);
	background:rgba(255,105,105,1);
	border-radius:5px;
	display:block;
	outline:none;
	margin:auto;
	color:#fff;
	text-shadow:1px 1px 1px #aaa;
	box-shadow:0 44px 0 rgba(255,120,120,1) inset;
	font-size:20px;
	position:relative;
	letter-spacing:3px;
	z-index:1;
	cursor:pointer;
	font-weight:bold;
}

.menu_list li a:hover{
	opacity:0.8;
}

.foot_navi{
	position:fixed;
	width:180px;
	right:0;
	left:0;
	margin:auto;
	bottom:5px;
	z-index:9999;
}

.foot_navi a{
	display:block;
	width:100%;
	padding:15px 0 ;
	text-align:center;
	background:rgba(255,105,105,0.8);
	color:#fff;
	font-weight:bold;
	border-radius:3px;
	-moz-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.3);
	-ms-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.3);
	font-size:13px;
}

.foot_navi a:hover{
	background:#bd1c24;
	text-decoration:underline;
}
.foot_navi a::before{
	content:"";
    display: inline-block;
    margin: 0 7px 0 auto;
	width: 4px;
	height: 4px;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
@media screen and (max-width:640px) {
	footer{
		margin:0 0 60px;
	}
}

.err_mes{
	font-size:24px;
	font-weight:bold;
	color:#f22;
}

.attention{
	background:rgba(255,255,255,0.6);
	width:100%;
	margin:auto;
}

.attention p{
	width:95%;
	margin:auto;
	color:#321;
}

.attention p u{
	color:#f22;
	text-decoration:underline;
	font-weight:bold;
}



.vest5_list{
	width:95%;
	margin:15px auto;
}

.vest5_list{
	position:relative;
}

.vest5_list td,
.vest5_list th{
	padding:5px;
	background:rgba(255,255,255,0.5);
}

.vest5_list td{
	border-bottom:solid 1px #eee;
	text-align:center;
	padding:10px;
}

.vest5_list th{
	text-align:center;
	border-bottom:solid 2px #eee;
	color:#fff;
	background:#bd1c24;
}

.vest5_list tr:last-child td{
	border-bottom:none;
}

.vest5_list td img{
	width:80px;
	overflow:hidden;
	height:auto;
}

.system_mes{
	text-align:center;
	color:#fff;
	font-size:12px;
}

.entry_list_text .system_mes{
	text-align:left;
	width:100%;
}
