@charset "utf-8";

/*********************
	.container
*********************/
.container{
	width:100%;
	margin:0 auto;
}

/*********************
	h2
*********************/
h2{
	width:100%;
	height:180px;
	background:url("/assets/img/bg_plan_list_ttl.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:50% 50%;
	position:relative;
	margin:0 auto 45px;
	font-size:40px;
	font-weight:bold;
	color:#fff;
	text-align:center;
}
h2 span{
	display:block;
	width:100%;
	position: absolute;
	top:50%;
	left:50%;
	transform:translateY(-50%) translateX(-50%);
	-webkit- transform:translateY(-50%) translateX(-50%);
}
@media only screen and (max-width:767px) {
	h2{
		width:100%;
		height:90px;
		line-height:90px;
		background:url("/assets/img/bg_sp_plan_list_ttl.jpg");
		background-repeat:no-repeat;
		background-size:cover;
		background-position:50% 50%;
		position:relative;
		margin:0 auto 25px;
		font-size:20px;
		font-weight:bold;
		color:#fff;
		text-align:center;
	}
}


/*********************
	.area_wrap
*********************/
.box_ttl{
	width:100%;
	max-width:1120px;
	padding-left:40px;
	box-sizing:border-box;
	font-size:32px;
	font-weight:bold;
	margin:0 auto 40px;
	position:relative;
}
.box_ttl:before{
	display:block;
	content:"";
	width:20px;
	height:4px;
	background:#cb000c;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto 0;
}
.area_1 .box_ttl{
	border-top:2px solid #cc72c3;
	border-bottom:2px solid #cc72c3;
	height:86px;
	line-height:86px;
}
.area_1 .box_ttl:before{
	background:#cc72c3;
}
.area_2 .box_ttl{
	border-top:2px solid #6f63c6;
	border-bottom:2px solid #6f63c6;
	height:86px;
	line-height:86px;
}
.area_2 .box_ttl:before{
	background:#6f63c6;
}
.area_3 .box_ttl{
	border-top:2px solid #4d9bdb;
	border-bottom:2px solid #4d9bdb;
	height:86px;
	line-height:86px;
}
.area_3 .box_ttl:before{
	background:#4d9bdb;
}
.area_4 .box_ttl{
	border-top:2px solid #78ad49;
	border-bottom:2px solid #78ad49;
	height:86px;
	line-height:86px;
}
.area_4 .box_ttl:before{
	background:#78ad49;
}
.area_5 .box_ttl{
	border-top:2px solid #f9d12b;
	border-bottom:2px solid #f9d12b;
	height:86px;
	line-height:86px;
}
.area_5 .box_ttl:before{
	background:#f9d12b;
}
.area_6 .box_ttl{
	border-top:2px solid #f29e2f;
	border-bottom:2px solid #f29e2f;
	height:86px;
	line-height:86px;
}
.area_6 .box_ttl:before{
	background:#f29e2f;
}
.area_7 .box_ttl{
	border-top:2px solid #de6641;
	border-bottom:2px solid #de6641;
	height:86px;
	line-height:86px;
}
.area_7 .box_ttl:before{
	background:#de6641;
}
.notfound_txt {
	width: 90%;
	margin: 0 auto 80px;
}
.area_wrap{
	width:100%;
	max-width:1140px;
	margin:0 auto 20px;
	padding-top: 10px;
}
.area_wrap .plan_list{
	width:100%;
	display: flex;
	flex-wrap: wrap;
	
}
.area_wrap .plan_list .plan_box{
	width:25%;
	display: flex;
	justify-content: space-between;
	position:relative;
	margin-bottom:80px;
}
.area_wrap .plan_list .plan_box a{
	display:block;
	max-width:250px;
	width:calc(100% - 20px);
	background:#fff;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}
.area_wrap dl{
	width:100%;
	padding-bottom:40px;
	position:relative;
	
}
.area_wrap .plan_box dt .img_box{
	width:100%;
	height:100%;
	padding-top:76%;
	position:relative;
	background:#fff;
	line-height:0;
	border:1px solid #afafaf;
	box-sizing:border-box;
	margin:0 auto 20px;
}
.area_wrap .plan_box dt dt .img_box .img_inner{
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
.area_wrap .plan_box dt .img_box .img_inner img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
	height: auto;
	width: auto;
}
.area_wrap .plan_box dt .img_box .caption{
	display:block;
	width:96%;
	text-align:right;
	font-size:10px;
	line-height:1.4;
	color:#fff;
	text-shadow:1px 0px 0px #000, 0px 1px 0px #000, -1px 0px 0px #000, 0px -1px 0px #000;
	position:absolute;
	bottom:5px;
	right:2%;
}
.area_wrap .plan_box dt .area{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
	margin:0 auto 10px;
	font-size:12px;
	color:#cb000c;
}
.area_wrap .plan_box dt .name{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
	margin:0 auto 20px;
	font-size:16px;
	font-weight:bold;
	line-height:1.4;
}
.area_wrap .plan_box dt .price{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
	margin:0 auto 20px;
	font-size:12px;
	color:#333;
}
.area_wrap .plan_box a dd{
	width:100%;
	height:24px;
	line-height:24px;
	background:#333;
	text-align:center;
	color:#fff;
	font-size:12px;
	position:absolute;
	bottom:0;
	left:0;
}
.area_wrap .plan_box a:hover dd{
	background:#cb000c;
	transition:.3s;
}
@media only screen and (max-width:767px) {
	.box_ttl{
		font-size:20px;
		margin:0 auto 20px;
	}
	.area_1 .box_ttl,
	.area_2 .box_ttl,
	.area_3 .box_ttl,
	.area_4 .box_ttl,
	.area_5 .box_ttl,
	.area_6 .box_ttl,
	.area_7 .box_ttl{
		height:75px;
		line-height:75px;
		text-align:center;
		letter-spacing:.1em;
		padding:0;
		font-size:23px;
		background:#f5f5f5;
		margin:0 auto;
	}
	.area_1 .box_ttl:before,
	.area_2 .box_ttl:before,
	.area_3 .box_ttl:before,
	.area_4 .box_ttl:before,
	.area_5 .box_ttl:before,
	.area_6 .box_ttl:before,
	.area_7 .box_ttl:before{
		display:none;
	}
	.area_wrap{
		padding-top:50px;
	}
	.area_wrap .plan_list{
		display:block;
		width:100%;
		margin:0 auto 50px;
		border-top:1px solid #999;
	}
	.area_wrap .plan_list .plan_box{
		width:100%;
		display:block;
		margin:0 auto;
		border-bottom:1px solid #999;
	}
	.area_wrap .plan_list .plan_box a{
		display:block;
		max-width:100%;
		width:100%;
		box-shadow:none;
		padding:10px;
		box-sizing:border-box;
	}
	.area_wrap dl{
		padding-bottom:0;
	}
	.area_wrap .plan_box dt .img_box{
		width:48%;
		float:left;
		padding-top:37%;
		margin:0;
	}
	.area_wrap .plan_box dt .img_box .caption{
		width:98%;
		right:1%;
	}
	.area_wrap .plan_box dt ul{
		width:48%;
		float:right;
	}
	.area_wrap .plan_box dt .area{
		font-size:12px;
		margin:5px auto 10px;
		padding:0;
	}
	.area_wrap .plan_box dt .name{
		font-size:15px;
		padding:0;
		margin:0 auto 15px;
	}
	.area_wrap .plan_box dt .price{
		font-size:13px;
		padding:0;
		margin:0 auto;
	}
	.area_wrap .plan_box dd{
		display:none;
	}
	.notfound_txt {
		margin: 20px auto 0;
	}
}

/*********************
	.pager_area
*********************/
.pager_area{
	width:100%;
	margin:50px auto 100px;
}
.pager_area .pager{
	width:100%;
	text-align:center;
	margin:0 auto 15px;
}
.pager_area .pager li{
	display:inline-block;
	font-size:20px;
	width:35px;
	height:35px;
	line-height:35px;
	text-align:center;
	background:#efefef;
	margin-right: 5px;
}
.pager_area .pager li.active{
	background:#000;
	color:#fff;
}
.pager_area .pager a{
	display: block;
	width: 100%;
	height: 100%;
}
.pager_area .pager a:hover{
	background:#000;
	color:#fff;
	cursor:pointer;
}
@media only screen and (max-width:767px) {
	.pager_area{
		width:98%;
		margin:50px auto;
	}
	.pager_area .pager{
		width:100%;
		text-align:center;
		margin:0 auto 6px;
	}
	.pager_area .pager li{
		font-size:12px;
		width:22px;
		height:22px;
		line-height:22px;
	}
}
