*{margin:0;padding:0;box-sizing: border-box;}
html{margin:0;padding:0;}
body {margin:0;padding:0;font-size:14px;background:#000;color:#fff;font-family:sans-serif;}
.splash{background:url(../images/bg_top.jpg) no-repeat center top #fff;}
header, footer, aside, nav, section,article,time,figure,label{display: block;}
h1,h2,h3,h4,h5{font-weight:normal;}
ul,ol{list-style:none;}
a{outline:none;text-decoration:none;}
a img{border:0;}
fieldset{border:0;}
.clear{margin:0;padding:0;height:0;clear:both;}
.wrap{margin:0 auto;padding:174px 0 0 0;width:950px;text-align:left;}

/*Header
--------------------------------------------------------------------------------------------------------------*/
#top{width:100%;overflow:hidden;text-align:center;position:fixed;top:0;z-index:999;}
#top h1{margin:0 auto;width:950px;height:114px;background-repeat:no-repeat;background-position:center;overflow:hidden;background-image:url(../images/logo.png);position: relative;}
#top h1 a,#top h1 span{padding:114px 0 0 0;display:block;}

#top h1::after{
	width: 168px;
	height: 80px;
	content: "";
	position: absolute;
	top: 0;
	right: 8px;
	background-size: 168px 80px;
}
#top .logo-3ban::after{background-image:url(../images/logo-3ban.png);}
#top .logo-4ban::after{background-image:url(../images/logo-4ban.png);}
#top .logo-5ban::after{background-image:url(../images/logo-5ban.png);}
#top .logo-6ban::after{background-image:url(../images/logo-6ban.png);}
#top .logo-7ban::after{background-image:url(../images/logo-7ban.png);}
#top .logo-8ban::after{background-image:url(../images/logo-8ban.png);}
.gnav{width:100%;height:60px;background:#4b0d08;}
.gnav ul{margin:0 auto;width:950px;height:60px;}
.gnav ul li{width:20%;height:60px;float:left;background:#4b0d08;}
.gnav ul li a{display:block;background-image:url(../images/bg_gnav.png);background-repeat:no-repeat;transition:0.5s;position:relative;}
.gnav ul li a:hover{background-image:url(../images/bg_gnav.png),url(../images/bg_gnav_h.png);}
.gnav ul li:nth-child(1) a{background-position:0 0,0 0;}
.gnav ul li:nth-child(2) a{background-position:0 -60px,0 0;}
.gnav ul li:nth-child(3) a{background-position:0 -120px,0 0;}
.gnav ul li:nth-child(4) a{background-position:0 -180px,0 0;}
.gnav ul li:nth-child(5) a{background-position:0 -240px,0 0;}
.gnav ul li a span{padding:60px 0 0 0;display:block;}

/*Main
--------------------------------------------------------------------------------------------------------------*/
.heading{margin:0 0 10px 0;background:url(../images/bg_heading.png) repeat-x 0 0;}
.heading h1{height:40px;overflow:hidden;background-image:url(../images/bg_heading_txt.png);background-repeat:no-repeat;}
.heading h1 span{padding:40px 0 0 0;display:block;}
.top_about{background-position:0 0;}
.top_user{background-position:0 -40px;}
.top_popular{background-position:0 -80px;}
.rule_head{background-position:0 -120px;}
.entry_head{background-position:0 -160px;}

#intro{height:618px;background:url(../images/bg_intro.jpg)no-repeat center top;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
}
/*
#intro nav{padding:256px 0 0 148px;}
#intro nav ul{width:100%;height:96px;}
#intro nav li{width:346px;height:76px;float:left;}
#intro nav li a{width:310px;height:76px;display:block;background-image:url(../images/bg_introbtn.png);background-repeat:no-repeat;overflow:hidden;transition:0.5s;}
#intro nav li a:hover{opacity:0.8;}
#intro nav li:nth-child(1) a{background-position:0 0;}
#intro nav li:nth-child(2) a{background-position:0 -76px;}
#intro nav li a span{padding:75px 0 0 0;display:block;}
#intro p{height:92px;overflow:hidden;}
#intro p span{padding:92px 0 0 0;display:block;}
*/

.top_contents{background:url(../images/bg_topcontents.jpg) no-repeat 0 0;}

.general{margin:0 0 20px 0;padding:10px;border:1px solid #711811;}
.general article h2,.general article h3{padding:10px;line-height:30px;font-size:18px;color:#ebcc65;}
.general article p{padding:10px;line-height:18px;}

#user{padding:10px;border:1px solid #711811;}
#user article{width:33.3%;height:230px;float:left;}
#user article .inner{position:relative;}
#user article .inner a{display:block;overflow:hidden;transition:0.5s;}
#user article .inner a:hover{opacity:0.5;box-shadow:1px 1px 1px rgba(0,0,0,0.1);}
#user article header{margin:0;padding:0 0 0 130px;}
#user article header h3{font-size:14px;line-height:40px;color:#fff;}
#user article header h3 span{font-size:12px;display:block;}
#user article header h3:before{width:50px;content:"名前:";color:#ccc;font-size:12px;line-height:40px;float:left;}
#user article p{padding:0 0 0 130px;font-size:14px;line-height:40px;color:#fff;}
#user article p:nth-of-type(1):before{width:50px;content:"性別:";color:#ccc;font-size:12px;line-height:40px;float:left;}
#user article p:nth-of-type(2):before{width:50px;content:"年齢:";color:#ccc;font-size:12px;line-height:40px;float:left;}

#user article p:nth-of-type(3){padding:10px 10px 0 0;line-height:20px;}
#user article p:nth-of-type(3) span{padding:10px;display:block;border:1px solid #666;}
#user article figure{width:120px;height:120px;position:absolute;left:0;top:0;overflow:hidden;background-size:cover;background-position:center top;}
#user article figure span{padding:120px 0 0 0;display:block;}

#popular{padding:10px;border:1px solid #711811;}
#popular article{width:33.3%;float:left;}
#popular article .inner{padding:0 10px 0 0;position:relative;}
#popular article:nth-of-type(3) .inner{padding:0;}
#popular article .inner a{display:block;overflow:hidden;transition:0.5s;background:#f90;}
#popular article .inner a:hover{opacity:0.5;box-shadow:1px 1px 1px rgba(0,0,0,0.1);}
#popular article header{margin:0;padding:0;}
#popular article header h2{padding:0 0 0 40px;line-height:40px;background:url(../images/icon_heading.png) no-repeat 0 0;}
#popular article p{padding:10px;font-size:14px;line-height:20px;color:#fff;}
#popular article figure{margin:0 0 10px 0;height:320px;overflow:hidden;background-size:cover;background-position:center top;}
#popular article figure span{padding:320px 0 0 0;display:block;}

.reg_btn{padding:20px 0;}
.reg_btn a{width:100%;height:75px;display:block;background:url(../images/bg_regbtn.png) no-repeat 0 0;transition:0.5s;overflow:hidden;}
.reg_btn a:hover{opacity:0.5;}
.reg_btn a span{padding:75px 0 0 0;display:block;}
 
#popup{padding:10px;background:#4b0d08;}
#popup article{padding:0;background:#000;}
#popup article header{padding:0;}
#popup article header h1{padding:0 10px;height:50px;line-height:50px;background:#400;font-size:16px;color:#fff;}
#popup article h3{padding:10px;color:#700;line-height:30px;}
#popup article p{padding:10px;line-height:18px;} 

/*Entry
--------------------------------------------------------------------------------------------------------------*/
#entry{margin:0 auto;padding:0;width:800px;text-align:left;}
#entry #top{position:relative;}
#entry #top h1{width:800px;}
#entry .contents{padding:10px;border:1px solid #711811;}
#entry .inner{padding:10px 0 0 0;}

#entry fieldset{margin:0 0 10px 0;padding:0 20px;position:relative;overflow:hidden;}
#entry fieldset label{padding:8px 0;width:210px;text-align:center;font-size:14px;background:#ac501b;float:left;position:relative;color:#fff;}
#entry fieldset label span{position:absolute;line-height:40px;display:block;top:0;right:5px;font-size:11px;}
#entry fieldset p{width:520px;line-height:40px;float:right;font-size:14px;}
#entry fieldset .alert{padding:5px 0 0 0;width:100%;line-height:18px;font-size:11px;text-align:left;clear:both;}
#entry fieldset .error{margin:5px 0 0 0;width:100%;line-height:30px;font-size:12px;text-align:center;clear:both;background:#FFE4E1;color:#B22222;}
#entry fieldset input[type="text"],#entry fieldset input[type="password"]{padding:10px;width:100%;border:1px solid #ccc;font-size:14px;color:#666;box-sizing:border-box;}
#entry fieldset input[type="text"].txt_s{width:20%;border:1px solid #ccc;}
#entry fieldset input[type="checkbox"]{margin:0 10px;}
#entry fieldset select{padding:10px;width:100%;border:1px solid #ccc;font-size:14px;color:#666;border-radius:0;}
#entry fieldset textarea{margin:0;padding:10px;width:100%;height:180px;border:1px solid #ccc;font-size:14px;color:#666;box-sizing:border-box;}
.entry_btn{margin:0;padding:0 0 20px 0;clear:both;}
.entry_btn p{margin:0 20px 10px 20px;padding:10px;line-height:16px;font-size:11px;border:1px solid #711811;}
#entry p a{color:#ebcc65;}
.entry_btn button{margin:0 0 0 430px;padding:0;width:330px;height:60px;display:block;background: linear-gradient(to bottom, #ebcc65 0%,#ac501b 100%);border:0;overflow:hidden;cursor:pointer;color:#fff;font-size:16px;border-radius:8px;}
.entry_btn button span{padding:0;display:block;}

.juyo {font-size:100% !important; background:rgba(255,0,0,0.1); border:1px dotted #f00 !important; padding:8px !important;margin:8px 0; box-sizing:border-box;}
/*Footer
--------------------------------------------------------------------------------------------------------------*/
#footer{padding:0 0 20px 0;clear:both;text-align:center;position:relative;color:#999;}
#footer .inner{margin:0 auto;width:980px;position:relative;}
#footer small{padding:30px 0 10px 0;font-size:12px;line-height:40px;display:block;}
#footer .u19{padding:0 0 0 80px;height:100px;position:absolute;left:0;top:0;font-size:12px;line-height:100px;background:url(../images/icon_u19.png) no-repeat left;}
#footer .ad img{margin:0 auto:display:block;}

/* mother bar */
#mother{width:100%; height:40px; position:fixed; top:0; left:0; background:#000;}
#mother h1{display:block; color:#fff; line-height:40px; text-indent:-9999px;}

/*W2107-09*/
.btn-row{
	padding: 10px;
	width: 100%;
	box-sizing: border-box;
}
.regist-btn{
	height: 80px;
	display: block;
	overflow: hidden;
	border-radius: 8px;
	background-image: url(../images/icon_btn.png), linear-gradient(to bottom, rgba(235,204,101,1) 0%,rgba(172,80,27,1) 100%);
	background-size: auto 120px, 100%;
	background-position: 64px -20px, center;
	background-repeat: no-repeat, repeat;
	box-shadow: 0 -1px 0 rgba(255,255,255,.2) inset;
}
.regbtn-txt{
	padding: 200% 0 0 0;
	display: block;
	background: url(../images/txt_regbtn.png) no-repeat center top 16px;
	background-size: auto 48px;
}
.btn-desc{
	margin: 8px auto 0 auto;
	padding: 8px 4px;
	width: 50%;
	line-height: 16px;
	background: #900;
	color: #fff;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	position: relative;
	font-size: 14px;
	font-weight: bold;
}
.btn-desc::after{
	margin: 0 auto;
	width: 0;
	height: 0;
	content: "";
	border-style: solid;
	border-width: 0 6px 16px 6px;
	border-color: transparent transparent #900 transparent;
	position: absolute;
	top: -16px;
	right: 0;
	left: 0;
}