
/*=================================================
 * CSS for PC
 * ================================================= */

#u_hyouka, #sinyou, #u_sp, #u_databox, #prof_trust{	display: none;}
main{	min-height: auto; padding-bottom: 0;}

.cnt{
	padding: 0;
	text-align: center;
}

.cnt h3{
	margin: 0;
}

#edit{
	background: #1c1c1e;
	margin: 0;
	text-align: center;
}

.edit_area_dis{	padding-top: 10px;}

.edit_area_dis .dis_txt{
	margin: 0 auto 10px auto;
}

#regist .arrow{	margin-bottom: 10px;}


/** form **/

.form{
	width: auto;
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.form.ill_form{	padding-top: 10px;}

.form .u_title{
	margin-bottom: 0;
}

.form table{
	width: 100%;
	font-size: 12px;
	line-height: 18px;
	border-collapse: separate;
	border-spacing: 0 7px;
	margin: 0 0 10px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.form tr{
	vertical-align: middle;
}

.form th{
	position: relative;
		width: 80px;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	color: #8c632f;
	background: #28282a;
	box-shadow:3px 0px 0px 0px #3e3e41;
	-moz-box-shadow:3px 0px 0px 0px #3e3e41;
	-webkit-box-shadow:3px 0px 0px 0px #3e3e41;
	padding: 10px 0;
}

.form th p span{
	display: inline-block;
	vertical-align: middle;
	width: 32px;
	font-size: 10px;
	line-height: 16px;
	text-align: center;
	color: #fff;
	background: #ff552d;
	margin-left: 5px;
	border-radius: 2px;
}

.form td{
	position: relative;
	text-align: left;
	padding: 10px;
}

.form th:after,
.form td:after{
	content			: "";
	display			: block;
	clear			: both;
	width: 100%;
	border-bottom: 1px dotted #3e3e41;
	position: absolute;
	bottom: -4px;
	left: 0;
}

.form td div p{
	font-size: 11px;
	line-height: 16px;
	padding-top: 5px;
}

.form td div em,
.form .caution em{
	color: #ff429c;
}

.w1{	width		: 100%;}
.w2{	width		: 100%;}
.w3{	width		: 40px;}
.s1{	width: 100% !important;}

.form input[type="text"],
.form input[type="email"],
.form input[type="url"],
.form input[type="tel"],
.form textarea{
	border			: 1px solid #ccc;
	border-radius	: 3px;
	-moz-border-radius	: 3px;
	-webkit-border-radius	: 3px;
	padding			: 6px;
	font-size		: 16px;
	font-family: Meiryo,'Hiragino Kaku Gothic ProN','Hiragino Sans',sans-serif;
	line-height		: 25px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.form textarea{
	width: 100%;
	height: 145px;
}

.form select{
	width: 170px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 16px;
	line-height: 25px;
	border			: 1px solid #ccc;
	border-radius	: 3px;
	-moz-border-radius	: 3px;
	-webkit-border-radius	: 3px;
	padding			: 6px 30px 6px 6px;
	font-family: Meiryo,'Hiragino Kaku Gothic ProN','Hiragino Sans',sans-serif;
	background: url(../../img/all/select.png) right 50% no-repeat;
	-webkit-background-size: 30px 60px;
	background-size: 30px 60px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.form .rank td select{	width: calc(100% - 10px);}

.form .caution{
	font-size: 12px;
	line-height: 18px;
	text-align: center;
	margin: 0 0 10px 0;
	padding: 0 10px;
}

.form .caution + #submit.no_bg,
.form + #submit.no_bg{ padding-top: 0;}

.form .caution p{
	display: inline-block;
	text-align: left;
	padding: 0 0 10px 0;
}

.form .caution.pass_txt{
	font-size: 12px;
	line-height: 20px;
	text-align: center;
}

.form .caution .ubt{
	display: block;
	width: 200px;
	font-size: 13px;
	font-weight: bold;
	line-height: 30px;
	text-align: center;
	text-shadow: 1px 1px 2px #a35f12;
	color: #ffffff;
	border-radius: 3px;
	border: 2px solid #ffae00;
	box-sizing: border-box;
	background: #ffae00;
	background: -moz-linear-gradient(-45deg, #ffae00 0%, #ff8a00 100%);
	background: -webkit-linear-gradient(-45deg, #ffae00 0%,#ff8a00 100%);
	background: linear-gradient(135deg, #ffae00 0%,#ff8a00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffae00', endColorstr='#ff8a00',GradientType=1 );
	margin: 0 auto;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.form .caution .ubt:hover{
	text-decoration: none;
	opacity			: 0.8;
	filter			: alpha(opacity=80);
}

.form input::placeholder,
.form textarea::placeholder{	color: #ccc;}
.form input:-ms-input-placeholder,
.form textarea:-ms-input-placeholder{	color: #ccc;}
.form input::-ms-input-placeholder,
.form textarea::-ms-input-placeholder{	color: #ccc;}

#submit{
	width: auto;
	margin: 0;
	padding: 10px;
	text-align: center;
}

#submit input.bt{
	display: block;
	width: 100%;
}

.form input[type="checkbox"],
.form input[type="radio"]{	display: none;}

.form label{
	display: inline-block;
	height: 34px;
	font-size: 14px;
	line-height: 34px;
	text-align: center;
	border-radius: 5px;
	border: 1px solid #3e3e41;
	margin: 0 5px 10px 0;
	cursor: pointer;
	box-shadow:0px 0px 0px 1px #1c1c1e inset;
	-moz-box-shadow:0px 0px 0px 1px #1c1c1e inset;
	-webkit-box-shadow:0px 0px 0px 1px #1c1c1e inset;
	background: -webkit-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: -moz-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: -o-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: -ms-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: linear-gradient(0deg, #28282a 0%, #1c1c1e 100%);
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.form label.checked{
	color: #fff;
	border-color: #c72976;
	background: #ff3399;
	box-shadow:none;
	-moz-box-shadow:none;
	-webkit-box-shadow:none;
}

.line3,
.line4,
.line5,
.line6,
.line8{	padding-bottom: 11px !important;}

.line3 label{	width: 170px;}
.line4 label{	width: calc(97 / 320 * 100%);}
.line5 label{
	width: -webkit-calc(33.3% - 10px);
	width: -moz-calc(33.3% - 10px);
	width: calc(33.3% - 10px);
}
.line6 label{	width: 82px;}
.line8 label{	width: calc(55 / 320 * 100%);}


.error,
.over{	padding-bottom: 10px;}

.error .bt_bg,
.over .bt_bg{
	margin: 0;
	padding: 10px;
	background: none;
}

.error .bt,
.over .bt{
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}

.ovbox div{
	color: #fff;
}

.erbox div{
	font-size: 16px;
	font-weight: bold;
	line-height: 40px;
	color: #fff;
}

.erbox p{
	padding: 0 10px;
	color: #fff;
}

.erbox p.ov2{
	font-weight: normal;
	color: #fff;
}

.pc_no{	display: none;}
.pc_no{	display: inline;}


/** campaign **/

.campaign_red{
	font-size		: 15px;
	line-height		: 18px;
	text-align		: center;
	padding			: 15px 0;
}

.campaign_red em{
	font-weight		: bold;
	font-style		: normal;
}

.campaign_red em,
.campaign_red span{
	color			: #ff429c;
}

.campaign_red font{
	font-size: 12px;
}

.campaign_txt {
 	font-size: 15px;
 	line-height: 18px;
 	text-align: center;
 	padding: 15px 0;
}


/** rank **/

.form.edit_rank{
	width: auto;
	font-size: 0;
	line-height: 0;
	margin: 0;
	padding: 0;
}

.rank{
	display: block;
	vertical-align: top;
	width: 100%;
	margin: 0 15px 0 0;
}

.rank:nth-of-type(3n){	margin-right: 0;}

.rank h4{
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	text-align: center;
	color: #fff;
	background: #28282a;
	border-top: 1px solid #3e3e41;
	border-bottom: 1px solid #3e3e41;
	padding: 5px 10px;
}

.rank table{
	width: 100%;
	margin-top: -4px;
	margin-left: 0;
	margin-right: 0;
}

.rank th{
	width: 80px;
	padding: 10px 0;
}

.rank td{
	padding-top: 10px;
	padding-bottom: 10px;
}

.edit_rank #submit.bt_bg{
	width: auto;
}

form #u_rank{	margin-bottom: 10px;}


/** top_caution **/

.top_caution{
	background: #28282a;
	margin: 0 10px 10px 10px;
	padding: 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.top_caution p{
	font-size: 12px;
	line-height: 18px;
	text-align: left;
	margin-bottom: 10px;
}

.top_caution p:last-child{	margin-bottom: 0;}

.top_caution p a{	color: #ff429c;}

.top_caution ul{}

.top_caution li{
	position: relative;
	font-size: 12px;
	line-height: 18px;
	padding: 1px 0 1px 17px;
}

.top_caution li::before,
.top_caution li::after{
	position: absolute;
	top: 4px;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.top_caution li::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #28282a;
}
.top_caution li::after{
	top: 7px;
	left: 5px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}


/** review **/

.rebox{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.rebox_l,
.rebox_r{
	display: table-cell;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.rebox_l{
	width: 76px;
}

.rebox_l a{
	display: inline-block;
	border: 3px solid #28282a;
	background: #28282a;
	border-radius: 5px;
}

.rebox_l a img{
	width: 60px;
	height: auto;
	border-radius: 3px;
}

.rebox_l a img:hover{
	opacity			: 1;
	filter			: alpha(opacity=100);
	border-radius: 20px;
	filter: grayscale(100%);
}

.rebox_r{
}

.rebox_r .reshop{
	font-size: 12px;
	line-height: 16px;
}

.rebox_r .recate{
	font-size: 12px;
	line-height: 14px;
}

.form .tradio div{
	font-size: 0;
	line-height: 0;
	border-radius: 5px;
	border: 1px solid #3e3e41;
	box-shadow:0px 0px 0px 1px #1c1c1e inset;
	-moz-box-shadow:0px 0px 0px 1px #1c1c1e inset;
	-webkit-box-shadow:0px 0px 0px 1px #1c1c1e inset;
	background: -webkit-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: -moz-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: -o-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: -ms-linear-gradient(90deg, #28282a 0%, #1c1c1e 100%);
	background: linear-gradient(0deg, #28282a 0%, #1c1c1e 100%);
}

.form .tradio div label{
	display: inline-block;
	vertical-align: middle;
	width: 20%;
	cursor: pointer;
	font-size: 10px;
	height: 50px;
	line-height: 12px;
	border-radius: 0;
	border: none;
	border-right: 1px solid #3e3e41;
	margin: 0;
	padding: 7px 0;
	box-shadow:none;
	-moz-box-shadow:none;
	-webkit-box-shadow:none;
	background: none;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.form .td input[type="radio"]{	display: none;}

.form .tradio div label.checked{
	color: #fff;
	background: #ff3399;
	box-shadow:none;
	-moz-box-shadow:none;
	-webkit-box-shadow:none;
}

.form .tradio div label:first-of-type{
	border-radius: 18px 0 0 18px;
	border-radius: 5px 0 0 5px;
}

.form .tradio div label:last-of-type{
	border: none;
	border-radius: 0 18px 18px 0;
	border-radius: 0 5px 5px 0;
}
	.form .tradio div label:nth-of-type(1),
	.form .tradio div label:nth-of-type(5){
		padding: 7px 0;
	}
	.form .tradio.line2 div label:nth-of-type(1),
	.form .tradio.line2 div label:nth-of-type(5){
		padding: 13px 0;
	}
	.form .tradio div label:nth-of-type(3){
		padding: 19px 0;
	}
	.form .tradio div label:nth-of-type(2),
	.form .tradio div label:nth-of-type(4){
		padding: 13px 0;
	}
	.form .tradio.line2 div label:nth-of-type(2),
	.form .tradio.line2 div label:nth-of-type(4){
		padding: 19px 0;
	}


.f_link{
	position: relative;
	font-size: 12px;
	line-height: 18px;
	text-align: center;
		padding: 0 0 15px 0;
}

.erbox p.ertxt{
	color: #fff;
	font-weight: normal;
	margin-top: 15px;
	font-size: 12px;
}

.erbox p.rv1{
	font-size: 14px;
	font-weight: bold;
	line-height: 20px;
}

.erbox p.rv2{
	font-size: 12px;
	font-weight: normal;
	line-height: 18px;
	color: #fff;
	padding: 10px 10px 0 10px;
}


/** book **/

#book{
	padding: 0 10px 5px 10px;
}

.bbox{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	margin: 0 auto 5px auto;
	border: 1px solid #1c1c1e;
	background: #28282a;
}

.bname,
.barrow,
.bclose{
	display: table-cell;
	vertical-align: middle;
	height: 50px;
}

.bname{
	font-size: 15px;
	line-height: 16px;
	text-align: left;
	padding: 0 10px;
}

.barrow{
	width: 85px;
	text-align: center;
	border-left: 1px solid #1c1c1e;
}

.barrow span{
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin: 0 2.5px;
}

.barrow a{
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 30px;
	height: 30px;
	text-decoration: none;
	background: #1c1c1e;
	border: 1px solid #ffcc00;
	border-radius: 3px;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.barrow a:hover{
	background: #ffcc00;
}
.barrow .bk_up a:hover:before{	border-color: transparent transparent #1c1c1e transparent;}
.barrow .bk_down a:hover:before{ border-color: #1c1c1e transparent transparent transparent; }
.barrow .bk_up a:hover:after,
.barrow .bk_down a:hover:after{	background: #1c1c1e;}

.barrow .bk_up a:before{
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 10px;
	border-color: transparent transparent #ffcc00 transparent;
	position: absolute;
	z-index: 2;
	top: 4px;
	left: calc(50% - 10.5px);
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}
.barrow .bk_up a:after{
	content: '';
	width: 10px;
	height: 10px;
	background: #ffcc00;
	position: absolute;
	z-index: 2;
	top: 14px;
	left: calc(50% - 5.5px);
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}
.barrow .bk_down a:before{
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #ffcc00 transparent transparent transparent;
	position: absolute;
	z-index: 2;
	top: 15px;
	left: calc(50% - 10.5px);
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}
.barrow .bk_down a:after{
	content: '';
	width: 10px;
	height: 10px;
	background: #ffcc00;
	position: absolute;
	z-index: 2;
	top: 5px;
	left: calc(50% - 5.5px);
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}

.bclose{
	width: 40px;
	text-align: center;
	border-left: 1px solid #1c1c1e;
}

.bclose a{
	display: inline-block;
	vertical-align: top;
	width: 20px;
	height: 20px;
	text-decoration: none;
	background: #3e3e41;
	border-radius: 50%;
	border: none;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}
.bclose a:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
}

.bclose .bk_close{
	display: inline-block;
	vertical-align: top;
	position: relative;
}
.bclose .bk_close a:before{
	content: '';
	width: 12px;
		width: 10px;
	border-bottom: 1px solid #ffffff;
	position: absolute;
	z-index: 2;
	top: 9px;
	left: calc(50% - 5px);
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}
.bclose .bk_close a:after{
	content: '';
	width: 10px;
	border-bottom: 1px solid #ffffff;
	position: absolute;
	z-index: 2;
	top: 9px;
	left: calc(50% - 5px);
	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	     -o-transform: rotate(45deg);
	        transform: rotate(45deg);
}


/** edf **/

.edf{
	border-bottom: 1px solid #3e3e41;
	margin: 0 0 10px 0;
}

.edf .tr{
	display: block;
	width: auto;
	font-size: 0;
	line-height: 0;
}

.edf .th,
.edf .td{
	display: block;
	width: 100%;
	border: none;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.edf .th{
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	padding: 5px 10px;
	text-align: center;
	color: #fff;
	background: #28282a;
	border-bottom: none;
	border-top: 1px solid #3e3e41;
	border-bottom: 1px solid #3e3e41;
}
.edf .th br{	display: none;}

.edf .th.left{
	position: relative;
	text-align: left;
	padding-left: 20px;
}
.edf .th.left:after{
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 4px 0 4px;
	border-color: #999 transparent transparent transparent;
	position: absolute;
	top: 11px;
	left: 9px;
}


.edf .td{
	font-size: 14px;
	line-height: 22px;
	text-align: left;
	padding: 10px 10px 20px 10px;
}

.edf .th p span{
	display: inline-block;
	vertical-align: middle;
	width: 32px;
	font-size: 10px;
	line-height: 16px;
	text-align: center;
	color: #fff;
	background: #ff552d;
	margin-left: 5px;
	border-radius: 2px;
}

.edf .td div p{
	font-size: 13px;
	line-height: 20px;
	padding-top: 5px;
}

.edf .td div em,
.edf .caution em{
	color: #ff429c;
}

.kfsize{
	font-size: 16px !important;
	line-height: 25px !important;
}


	/** form **/
	#pass .form th{	width: 100px;}
	.form th br{	display: inline;}
	.form td textarea{
		width: 100%;
		height: 120px;
	}
	.form td select{
		width: -webkit-calc(50% - 15px);
		width: -moz-calc(50% - 15px);
		width: calc(50% - 15px);
		-webkit-background-size: 20px 40px;
		background-size: 20px 40px;
	}
	.form .rank td select{	width: 100%;}
	.form td .u_icon{
		width: 150px;
		height: auto;
	}

	.form td label,
	.form .td label{
		font-size: 14px;
		margin: 0 5px 5px 0;
	}
	.form td.line3,
	.form .td.line3{
		font-size: 0;
		line-height: 0;
		padding-bottom: 10px;
	}
	.form td input[type="file"],
	.form .td input[type="file"]{
		width			: 230px;
		color: #fff;
	}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {

}

