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

#left{ padding: 0;}

#mainsd{
	text-align: left;
	padding: 0 15px;
}

#mainsd .title{	margin-bottom: 20px;}


/** system **/

#system,
#op,
#area{
	margin: 0 0 30px 0;
	padding: 0 20px;
}

.systxt{
	font-size: 11px;
	line-height: 16px;
	text-align: left;
}

.systxt em{	color: #ff0000;}

.systxt	a{
	text-decoration: none;
}
.systxt a:hover{
	text-decoration: underline;
}

.a_caution{
	font-size: 12px;
	line-height: 18px;
	text-align: center;
	border: 1px solid #ccc;
	border-radius: 20px;
	margin: 15px 0 35px 0;
	padding: 10px 0;
	background: -webkit-gradient(linear, left top, right bottom, from(#ececec), color-stop(0.25, #ececec), color-stop(0.25, white), color-stop(0.5, white), color-stop(0.5, #ececec), color-stop(0.75, #ececec), color-stop(0.75, white), to(white));
	background: -moz-linear-gradient(-45deg, #ececec 25%, white 25%, white 50%, #ececec 50%, #ececec 75%, white 75%, white);
	background: linear-gradient(-45deg, #ececec 25%, white 25%, white 50%, #ececec 50%, #ececec 75%, white 75%, white);
	-webkit-background-size: 2px 2px;
	background-size: 2px 2px;
}

.a_caution span{	display: none;}

.price{
	margin: 0 0 15px 0;
}
.price:first-of-type{	margin-top: 0;}

.price h4{
	position: relative;
	font-size: 16px;
	font-weight: bold;
	line-height: 18px;
	border-width: 1px;
	border-style: solid;
	padding: 12px 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.price ul{
	width: 100%;
	display: table;
	font-size: 0;
	line-height: 0;
	table-layout: fixed;
	border-top: 1px solid #ccc;
	border-top-width: 1px;
	border-top-style: solid;
	border-left-width: 1px;
	border-left-style: solid;
	padding: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.price h4+ul{	margin-top: -1px;}

.price li{
	display: table-cell;
	vertical-align: top;
	text-align: center;
	border-right-width: 1px;
	border-right-style: solid;
	margin: 0;
}

.price li div{
	font-size: 14px;
	line-height: 22px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	padding: 10px 0;
}

.price li p{
	font-size: 14px;
	line-height: 22px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	padding: 10px 0;
}

.price_sub{
	margin: 0 0 10px 0;
}

.price_sub ul{
	font-size: 0;
	line-height: 0;
	padding: 0;
}

.price_sub li{
	display: inline-block;
	vertical-align: top;
	width: calc(100% / 4 - 4px);
	margin: 0 5px 5px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.price_sub li:nth-of-type(4n){	margin-right: 0;}

.price_sub li div{
	display: table;
	width: 100%;
	min-height: 54px;
	border-width: 1px;
	border-style: solid;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.price_sub li span,
.price_sub li p{
	display: table-cell;
	vertical-align: middle;
	font-size: 14px;
	line-height: 16px;
	padding: 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.price_sub li span{
	width: 100px;
	text-align: left;
	border-right-width: 1px;
	border-right-style: solid;
}

.price_sub li p{
	text-align: right;
}

#op .price_sub li span{
	width: 58%;
}
#area .price_sub li{
	display: block;
	width: 100%;
	margin: -1px 0 0 0;
}
#area .price_sub li span{	width: 22%;}
#area .price_sub li p{	text-align: left;}
#area .price_sub + .price_info{
	margin-top: 15px;
}
.price_info{
	font-size: 13px;
	line-height: 20px;
	text-align: left;
	margin: 0 0 15px 0;
	padding: 15px;
	border-width: 1px;
	border-style: solid;
}
#op .price_info,
#area .price_info{	margin-bottom: 0;}

#system+.bt_bg{
	width: 880px;
	margin: -15px auto 30px auto;
	padding: 10px 0;
	text-align: center;
}

#system+.bt_bg .bt{
	display: inline-block;
	width: 270px;
}

.cre{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	border-width: 1px;
	border-style: solid;
	border-radius: 5px;
	margin: 15px auto 0 auto;
}

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

.cre_l + .cre_r{
	width: 310px;
	padding-left: 0px;
}

.cre_l{
	font-size: 13px;
	line-height: 20px;
	text-align: left;
	padding: 15px 20px 15px 20px;
}

.cre_r{
	text-align: center;
	padding: 20px;
}

.cre_r .cbt{
	display: inline-block;
	width: 290px;
	font-size: 16px;
	font-weight: bold;
	font-weight: 700;
	line-height: 50px;
	text-align: center;
	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;
}

.cre_r .cbt:hover{
	text-decoration: none;
	opacity			: 0.8;
	filter			: alpha(opacity=80);
}


/** waribiki **/

#waribiki{
	margin: 0 0 30px 0;
	padding: 0 20px;
}

.w_table{
	width: 100%;
	display: table;
	font-size: 0;
	line-height: 0;
	table-layout: fixed;
}

.w_td{
	display: table-cell;
	vertical-align: top;
	padding: 0 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.w_td:first-of-type{
	padding-left: 0;
}

.w_td:last-of-type{
	padding-right: 0;
}

.wbox{
	display: block;
	font-size: 0;
	line-height: 0;
	border-width: 1px;
	border-style: solid;
	margin: 0 0 5px 0;
	padding: 10px 10px 0 10px;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
a.wbox{
	width: 100%;
	text-decoration: 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;
}
a.wbox:hover{
	text-decoration: none;
	opacity			: 0.8;
	filter			: alpha(opacity=80);
}

.wbox:last-child{	margin-bottom: 0;}
.w_td:only-child .wbox{	width: 450px; margin: 0 auto 5px auto;}

.wbox_l,
.wbox_r{
	text-align: center;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.wbox_l{
	height: 50px;
	text-align: center;
	border-radius: 5px 5px 0 0;
	padding: 10px 0 0 0;
	box-shadow:0px 0px 0px 3px rgba(255, 255, 255, 0.3) inset;
	-moz-box-shadow:0px 0px 0px 3px rgba(255, 255, 255, 0.3) inset;
	-webkit-box-shadow:0px 0px 0px 3px rgba(255, 255, 255, 0.3) inset;
}

.wbox_l p{
	font-size: 20px;
	font-weight: bold;
	line-height: 20px;
	color: #fff;
}

.wbox_l span{
	display: inline-block;
	font-family: "FontB";
	font-size: 10px;
	line-height: 12px;
	color: #000;
}

.wbox_l span br{	display: none;}

.wbox_r{
	width: 100%;
	display: table;
}
.wbox_r_in{
	display: table-cell;
	vertical-align: top;
}

.wbox_r .www_bg{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
}

.wbox_r .w1{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	height: 44px;
	font-size: 10px;
	line-height: 14px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}

.wbox_r .w2{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	height: 80px;
	font-size: 16px;
	font-weight: bold;
	line-height: 18px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	padding: 0 5px;
}
.aniki .wbox_r .w2{
	border-top-width: 1px;
	border-top-style: dotted;
}

.wbox_r .w3{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	height: 34px;
	font-size: 11px;
	line-height: 12px;
}

.wbox_r .w4{
	display: inline-block;
	position: relative;
	margin: 0 auto;
	padding: 8px;
}

.wbox_r .w4 span{
	display: inline-block;
	width: 25px;
	font-size: 10px;
	line-height: 11px;
	text-align: center;
	padding: 2px 0;
	position: absolute;
	top: 8px;
	left: 8px;
}

.wbox_r .w4 p{
	font-size: 10px;
	line-height: 14px;
	text-align: left;
	padding: 0 0 0 30px;
}

.repe .wbox_l{	background: #00ae19}
.visi .wbox_l{	background: #0083ff;}
.group .wbox_l{	background: #e93d8b;}
.review .wbox_l{	background: #ff8400;}
.aniki .wbox_l{
	background: rgb(203,154,0);
	background: -moz-linear-gradient(left, rgba(203,154,0,1) 0%, rgba(235,207,88,1) 50%, rgba(203,154,0,1) 100%);
	background: -webkit-linear-gradient(left, rgba(203,154,0,1) 0%,rgba(235,207,88,1) 50%,rgba(203,154,0,1) 100%);
	background: linear-gradient(to right, rgba(203,154,0,1) 0%,rgba(235,207,88,1) 50%,rgba(203,154,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cb9a00', endColorstr='#cb9a00',GradientType=1 );
}
.ank_obi{
	width: 150px;
	font-size: 12px;
	line-height: 20px;
	font-weight: bold;
	padding: 0;
	margin: 7px auto;
	border-radius: 10px;
}

.wari0{
	font-size: 16px;
	line-height: 20px;
	text-align: center;
	color: #ff0000;
	padding: 75px 0 70px 0;
}

.wbox_r .sin_main{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	height: 80px;
	font-size: 11px;
	font-weight: bold;
	line-height: 12px;
	padding: 0 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}

.wbox_r .sin_main span{
	width: 100%;
	display: block;
	font-weight: normal;
	text-decoration: line-through;
}

.wbox_r .sin_main em{
	width: 100%;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
	line-height: 18px;
	padding: 0 0 0 0;
}
.aniki .wbox_r .sin_main,
.review .wbox_r .sin_main{
	border-top-width: 1px;
	border-top-style: dotted;
}

.wbox_r .sin_main em i{
	font-family: "FontA";
	font-size: 30px;
	font-style: normal;
	font-weight: normal;
	line-height: 32px;
}

.wbox_r .sin_main p{
	font-size: 11px;
	font-weight: normal;
	line-height: 12px;
	padding: 2px 0 0 0;
	white-space: inherit !important;
}


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

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

	#mainsd{	padding: 0;}
	#mainsd .title{	margin-bottom: 10px;}

	/** system **/
	#system,
	#op,
	#area{
		margin: 0 0 10px 0;
		padding: 0;
	}
	#op{	padding-top: 0;}
	.systxt{
		font-size: 11px;
		line-height: 16px;
		text-align: left;
		padding: 0 10px;
	}
	.a_caution{
		font-size: 11px;
		line-height: 16px;
		border-radius: 25px;
		margin: 10px 10px 0px 10px;
		padding: 8px 0;
	}
	.a_caution span{	display: inline;}
	.price{
		margin: 0 10px 10px 10px;
	}
	.price ul{
		display: block;
	}
	.price li{
		display: table;
		width: 100%;
		table-layout: fixed;
		margin: 0;
		padding: 0 !important;
	}

	.price li.sp_none{
		display: none;
	}


	.price li:last-child{	border-bottom: none;}
	.price li div,
	.price li p{
		display: table-cell;
		vertical-align: top;
	}
	.price li div{
		border-right-width: 1px;
		border-right-style: solid;
		padding: 6px 0;
	}
	.price li p{
		padding: 6px 0;
	}
	.price_sub{
		padding: 0 10px;}
	.price_sub li{
		display: block;
		width: auto;
		margin: -1px 0 0 0 !important;
	}
	.price_sub li div{
		min-height: auto;
	}
	.price_sub li:last-child{	border: none;}
	.price_sub li:last-of-type div{
	}
	.price_sub li span,
	.price_sub li p{
		display: table-cell;
		vertical-align: middle;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.price_sub li span{
		width: 100px;
		text-align: left;
	}
	.price_sub li p{
		text-align: right;
	}
	.price li:nth-child(even),
	.price_sub li:nth-child(even){	background: none;}
	.price_sub li span,
	.price_sub li p{
		font-size: 14px;
		line-height: 16px;
		height: auto;
		padding: 9px 10px;
	}
	#op .price_sub li span{
		width: auto;
	}
	#op .price_sub li p{
		width: 100px;
	}
	#area .price_sub li span{	width: 100px;}
	#area .price_sub li span,
	#area .price_sub li p{
		font-size: 14px;
		line-height: 16px;
		padding-top: 9px;
		padding-bottom: 9px;
	}
	#area .price_sub + .price_info {
		margin-top: 0;
	}
	.price_info{
		font-size: 14px;
		line-height: 22px;
		margin: 0 10px 10px 10px;
		padding: 10px;
	}
	#system+.bt_bg{
		width: auto;
		margin: 10px 0 0 0;
		padding: 10px;
	}
	#system+.bt_bg .bt{
		display: block;
		width: 100%;
	}
	.cre{
		display: block;
		width: auto;
		margin: 10px 10px 0 10px;
	}
	.cre_l,
	.cre_r{
		display: block;
		width: auto;
	}
	.cre_l + .cre_r{
		width: auto;
		padding-left: 10px;
		padding-top: 0px;
	}
	.cre_l{
		font-size: 14px;
		line-height: 22px;
		padding: 10px 10px 10px 10px;
	}
	.cre_r{	padding: 10px;}
	.cre_r .cbt{
		display: block;
		width: auto;
	}

	/** waribiki **/
	#waribiki{
		width: auto;
		margin: 0;
		padding: 0 10px 10px 10px;
	}
	#w_title+#waribiki{	padding: 10px;}
	.w_table,
	.w_td{
		display: block;
		width: auto;
		padding: 0;
	}
	.w_td{	margin-bottom: 10px;}
	.w_td{	width: auto;}
	.w_td:last-of-type{	margin-bottom: 0;}
	#w_title+#waribiki .w_td{	width: 100%;}
	#w_title+#waribiki .w_td:nth-of-type(3){	width: 100%;}
	.wbox{
		display: table;
		width: 100%;
		margin: 0 0 10px 0;
		padding: 5px;
	}
	a.wbox{
		position: relative;
		display: table;
		width: 100%;
	}
	a.wbox:before{
		content: '>';
		font-size: 10px;
		line-height: 10px;
		position: absolute;
		top: calc(50% - 5px);
		right: 3px;
	}
	a.wbox:after{
		content: '';
		height: 100%;
		border-right-width: 1px;
		border-right-style: solid;
		position: absolute;
		top: 0;
		right: 13px;
	}
	.w_td:only-child .wbox{	width: 100%; margin: 0 0 10px 0;}
	.w_td:only-child .wbox:last-child{	margin-bottom: 0;}
	a.wbox .wbox_r{
		padding-right: 15px;
	 }
	.wbox_l,
	.wbox_r{
		display: table-cell;
		height: auto;
		vertical-align: middle;
		text-align: center;
	}
	.wbox_l{
		width: 60px;
		text-align: center;
		border-radius: 5px 0 0 5px;
		padding: 17px 0;
		box-shadow:0px 0px 0px 3px rgba(255, 255, 255, 0.3) inset;
		-moz-box-shadow:0px 0px 0px 3px rgba(255, 255, 255, 0.3) inset;
		-webkit-box-shadow:0px 0px 0px 3px rgba(255, 255, 255, 0.3) inset;
	}
	.wbox_l p{
		font-size: 14px;
		font-weight: bold;
		line-height: 16px;
	}
	.wbox_l span{
		font-size: 10px;
		line-height: 10px;
		padding-top: 2px;
	}
	.wbox_l span br{	display: inline;}
	.wbox_l span i{	display: none;}
	.wbox_r{
		width: auto;
		padding: 0 0 0 5px;
	}
	.wbox_r_in{
		display: block;
		height: auto;
	}
	.wbox_r .www_bg{
		display: block;
		width: auto;
	}
	.wbox_r .w1{
		display: block;
		height: auto;
		font-size: 11px;
		line-height: 12px;
		padding: 0 0 4px 0;
	}
	.wbox_r .w1 br{	display: inline;}
	.wbox_r .w2{
		display: block;
		height: auto;
		font-size: 15px;
		font-weight: bold;
		line-height: 18px;
		padding: 10px 0;
	}
	.aniki .w2{	border-bottom: none;}
	.wbox_r .w3{
		display: block;
		height: auto;
		font-size: 10px;
		line-height: 12px;
		padding: 5px 0 0 0;
	}
	.wbox_r .w4{	}
	.ank_obi{ display:none;}
	.wari0{
		font-size: 14px;
		padding: 55px 0;
	}
	.wbox_r .sin_main{
		display: block;
		height: auto;
		font-size: 11px;
		line-height: 14px;
		padding: 5px 0;
	}
	.wbox_r .sin_main p{	font-size: 10px;}
	.aniki .wbox_r .sin_main{	border-bottom: none;}
	.wbox_r .sin_main span{
		display: block;
		font-weight: normal;
		text-decoration: line-through;
	}
	.wbox_r .sin_main em{
		font-size: 15px;
		line-height: 15px;
		padding: 0 0 0 0;
	}
	.wbox_r .sin_main em i{
		font-size: 30px;
		line-height: 28px;
	}
}
