/* CSS Document */

/* ================================================
MODULE
================================================ */
h2 {
	padding:100px 0;
}
.ttl {
	text-align:center;
}

/* ================================================
HEADER
================================================ */
header {
	width:100%;
	background-color:#000000;
}

header h1 {
	text-align:center;
}


/* ================================================
SECTION
================================================ */

/* .feature
------------------------------------------------ */
.feature {
	background-color:#f5f5f5;
	margin-top:-46px;
	padding:70px 0 50px 0;
}
	.feature .ttl {
		margin-bottom:45px;
	}
	.feature .inner {
		max-width:1000px;
		margin:0 auto;
		background-color:#FFF;
		padding:20px 0;
		
	}
	.feature ul {
		margin:0 auto;
		width:496px;
	}
		.feature ul li {
			background:url(../common/img/img_icon_01.jpg) left center no-repeat;
			padding:0 0 0 40px;
			margin-bottom:7px;
		}

/* .gallery
------------------------------------------------ */
.gallery {
}
	.gallery .inner {
		width:1000px;
		margin:0 auto 20px auto;
		background-color:#000;
		padding:10px;
	}

	.gallery .photo {
		max-width:1000px;
		margin:0 auto;
	}
		.gallery .photo ul {
			display:flex;
			flex-wrap:wrap;
			justify-content:center;
		}
		.gallery .photo ul li {
			width:24%;
			margin:5px;
		}




/* .plan
------------------------------------------------ */
.plan {
}
	.plan .plan-box {
		background:url(../img/bg_plan_01.jpg) center top repeat-y;
		background-size:cover;
		width:100%;
		padding:45px 0;
	}
	.plan .inner {
		width:1000px;
		margin:0 auto;
		background:url(../img/bg_plan_02.png) ;
		padding:20px 0 30px 0;
	}
	.plan ul {
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
	}
		.plan ul li {
			width:295px !important;
			margin:15px;
		}
		.plan ul li dl dt {
			border-top:#000 1px dashed;
			border-bottom:#000 1px dashed;
			padding:10px 0;
      margin-bottom: 20px;
      display: flex;
      font-size: 12px;
		}
		.plan ul li dl dt img {
      width: 50px;
      height: 52px;
  }  
		.plan ul li dl dt .plan_box_01 {
      line-height: 200%;
    }
		.plan ul li dl dt .plan_txt_02 {
      margin-left: -5px;
      font-display: block;
      font-size: 12px;
    }
		.plan ul li dl dt .plan_txt_03 {
      font-size: 23px;
      font-weight: 500;
      letter-spacing: -0.04em;
      margin-left: -1px;
}
	.plan .price {
		text-align:center;
		margin:0 auto;
		padding:20px 0;
	}
	.plan .box-txt {
		font-size:11px;
		margin:0 20px;
		line-height:140%;
		text-align: justify;
		text-justify: inter-ideograph;
	}


/* .price
------------------------------------------------ */
.price {
}
.price .modified_day {
	font-size: 14px;
	padding-top: 30px;
	line-height: 0 !important;
}
.price table {
  /*border: solid 1px #ccc;
  border-collapse: collapse;*/
  width: 600px;
  margin: 30px auto;
  border-bottom: solid 1px rgba(0,0,0,1.0);
  border-top: solid 1px rgba(0,0,0,1.0);
}
.price table td,
.price table th {
 /* border: solid 1px #ccc;*/
  padding: 7px;
  font-size: 14px;
  text-align: center;
}
table tr:nth-child(even) td {
	background-color: rgba(0,0,0,0.07);
}
.price table th,
.price table td {
  padding-left: 60px;

}
.price table td+td,
.price table th+th {
  padding-left: 0px;
}
.price table td {
  position: relative;
}
.price table td span.decided_txt {
  position: absolute;
  top: 5px;
  left: 1px;
  color: #ff5273;
  left: 1px;
  border:1px solid #ff5273;
  padding:2px;
}
.price table td span.moveout_txt {
	position: absolute;
	left: 1px;
	top: 5px;
	color: #000000;
	border:1px solid #000000;
	padding:2px;
  }

.price table td span.decided_border {
  display: block;
  position: absolute;
  top: 1px;
  left: 30px;
  width: 570px;
}


/* .access
------------------------------------------------ */
.access {
}
	.access .inner {
		width:1000px;
		margin:0 auto;
		background-color:#000;
		padding:3px 3px 1px 3px;
	}
	.access .box-access {
		max-width:1000px;
		margin:0 auto;
		display:flex;
		justify-content:space-between;
	}

	.access .box-access dl {
		margin-bottom:30px;
		border-left:3px solid #000;
		padding:0 0 0 10px;
	}
	.access .box-access dl dt {
		font-weight:bold;
		margin-bottom:10px;
	}
	.access .box-access dl dd ul {
	}
		.access .box-access dl dd ul li {
			margin-bottom:3px;
		}

/* .info
------------------------------------------------ */
.info {
	text-align:center;
	padding:100px 0;
	font-size:13px;
}
	.info .ttl {
		margin-bottom:50px;
	}
	.info .address {
		font-size:13px;
		margin-bottom:15px;
	}
	.info .tel {
		margin-bottom:50px;
	}
	.info .box-inquiry {
		width:400px;
		margin:0 auto;
		background-color:#19685c;
	}
		.info .box-inquiry a {
			color:#FFFFFF;
			display:block;
			font-size:17px;
			letter-spacing:0.2em;
			padding:20px;
		}

	
/* ================================================

TABLET & SMARTPHONE

================================================ */
@media screen and (max-width:768px) {
/* ================================================
MODULE
================================================ */
h2 {
	padding:50px 0;
}

	h2 img {
		height:20px;
		width:auto;
	}

/* ================================================
SECTION
================================================ */

	.gallery .inner,
	.plan .inner,
	.access .inner,
	.info {
		width:auto !important;
		margin:0 20px;
	}


/* .feature
------------------------------------------------ */
	.feature .ttl {
		margin-right:30px;
		margin-left:30px;
		margin-bottom:20px;
	}
	.feature .inner {
		margin:0 20px;
	}
	.feature ul {
		width:94%;
	}


/* .gallery
------------------------------------------------ */
	.gallery .photo ul li {
		width:44%;
		margin:5px;
	}
	.gallery .photo ul li img {
		width:100%;
	}
	
/* .access
------------------------------------------------ */
	.access .box-access {
		display:block;
		margin:0 20px;
	}


/* .info
------------------------------------------------ */
.info {
	padding:50px 0;
}
	.info .ttl {
		margin-bottom:30px;
	}
	.info .address span {
		display:block;
	}

	.info .box-inquiry {
		width:100%;
	}
		.info .box-inquiry a {
			font-size:15px;
			letter-spacing:0.1em;
		}

}
