/*
 * hoem
 **/
.home .home-midashi {
	border-bottom: 1px dotted #575656;
	display: inline-block;
	line-height: 0.75em;
	padding:14px 50px;
	margin-bottom: 50px;
}
.home .home-midashi span { font-size: 14px;}

.home .home-main {
	position: relative;
	padding-top: 40px;
	padding-bottom: 40px;
	overflow: hidden;
}
.home .home-main ul {
	top:0 ;
	position: absolute;
	width: 100%;

}
.home .home-main ul li img {
	width: 100%;
}
.home .home-main .container {
	position: relative;
	text-align: center;
}
.home .home-main .container h1 {
	margin-bottom: 100px;
	animation-delay:1s;
}
.home .home-main .container a {
	position: absolute;
	right: -100px;
	bottom: 0;
}
.home .home-copy {
	padding: 50px 0;
	text-align: center;
}
.home .home-copy h2 {
	margin-bottom: 30px;
}
.home .home-copy p {
	font-size: 16px;
	line-height: 1.75em;
}

.home .home-access .ggmap {
	position: relative;
	padding-bottom: 385px;
	overflow: hidden;
	margin: 30px 0;
}

.home .home-access .ggmap iframe,
.home .home-access .ggmap object,
.home .home-access .ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.home .home-location {
	background: #f5f4ef;
	padding:30px 0 80px;
	text-align: center;
}
.home .home-location .home-location-block > div {
	background: #fff;
	display: flex;
}
.home .home-location .home-location-block > div h3 {
	font-family: 'Montserrat', sans-serif;
	font-size: 30px;
	line-height: 1.5em;
}
.home .home-location .home-location-block div div {
	line-height: 2em;
	width: 50%;
	padding : 90px 0;
}
.home .home-location .home-location-block > div:first-child .home-location-block-img {
	background: url(../images/location-img01.jpg) no-repeat center center / cover;
}
.home .home-location .home-location-block > div:nth-child(2) .home-location-block-img {
	background: url(../images/location-img02.jpg) no-repeat center center / cover;
	-webkit-order:2;
	order:2;
}



.home-facility {
	text-align: center;
	margin-bottom: 70px;
}

.home-facility .home-facility-block {
	overflow: hidden;
	position: relative;
	padding: 0;
}
.home-facility .home-facility-block a .home-facility-overlay {
	background: rgba(17,199,124,0.7);
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	text-align: center;
	-moz-transition: opacity, 0.3s;
	-o-transition: opacity, 0.3s;
	-webkit-transition: opacity, 0.3s;
	transition: opacity, 0.3s;

	opacity: 0;
}
.home-facility .home-facility-block a:hover .home-facility-overlay {
	opacity: 1;
}
.home-facility .home-facility-block a .home-facility-overlay p {
	color: #fff;
	font-size: 20px;
	font-family: 'Montserrat', sans-serif;
	position: absolute;
	text-align: center;
	top: 48%;
	width: 100%;
	-moz-transform: translateY(-20%);
	-ms-transform: translateY(-20%);
	-webkit-transform: translateY(-20%);
	transform: translateY(-20%);
	-moz-transition: opacity, 0.5s;
	-o-transition: opacity, 0.5s;
	-webkit-transition: opacity, 0.5s;
	transition: opacity, 0.5s;
	opacity: 0;
}
.home-facility .home-facility-block a:hover .home-facility-overlay p {
	-moz-transform: translateY(0);
	-ms-transform: translateY(0);
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}
.home-facility .home-facility-block a .home-facility-img img {
	width: 100%;
	height: auto;
	transition: all 0s ease 0s, all 0.5s ease 0s;
}
.home-facility .home-facility-block a:hover .home-facility-img img {
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.home-slide {
	padding-bottom: 30px;
}

.home-slide h3 {
	position: relative;
	margin-bottom:30px;
	text-align: center;
	font-size: 16px;
}
.home-slide h3::after {
	position: absolute;
	border-bottom: 1px solid #11c77c;
	content: "";
	width: 46%;
	bottom: -14px;
	margin:auto;
	left:0;
	right:0;
}

.home-slide img {
  display: block;
	border-radius: 120px;
}
.home-slide p {
	text-align: center;
}

.floor {
	background: #f5f4ef;
}
.floor .floar-block {
	background:#fff;
	padding-top:20px;
	padding-bottom:20px;
	margin-bottom: 30px;
	line-height: 1.5em;
}

.floor .floar-block h3 {
	font-size: 2.25em;
	margin-top: 0;
	margin-bottom: 16px;
}
.floor .floar-block h3 span {
	font-size: 0.575em;
	margin-left: 12px;
}
.floor .floar-block img {
	width: 100%;
	height: auto;
}
.floor .floar-detail {
	padding-left:2%;
}
.floor .floar-detail dl dt {
	float: left;
	white-space: nowrap;
	width:80px;
}
.floor .floar-detail dl dd {
	margin-bottom: 10px;
}
.floor .floor-type ul {
	overflow: hidden;
}
.floor .floor-type ul li {
	background:#2ecc71;
	display: inline-block;
	text-align: center;
	margin:0 1% 2%;
	float:left;
	width:48%;
}
.floor .floor-type ul li a {
	display: block;
	color:#fff;
	padding:15% 0;
	text-decoration: none;
	transition: 0.5s;
}
.floor .floor-type ul li a span:first-letter {
	font-size: 40px;
}
.floor .floor-type ul li a span {
	display: inline-block;
	line-height: 1.5em;
	margin-bottom: 12px;
}
.floor .floor-type ul li a:hover {
	background:#5BDA90;
}

.campaign {
	text-align: center;
	padding:30px 0;
}
.home-contact {
	background: rgba(0, 0, 0, 0) url("../images/contact-bg.png") no-repeat center bottom / cover ;
	color:#fff;
	text-align: center;
	padding-bottom: 160px;
}
.home-contact .home-midashi {
	border-bottom: 1px dotted #fff;
}
.home-contact p {
	margin-bottom: 30px;
}
.home-contact ul{
	width:40%;
	margin:12px auto;
}
.home-contact ul li {
	margin-bottom: 20px;
	line-height: 2em;
}
.home-contact ul li a {
	border:1px solid #fff;
	border-radius: 6px;
	color:#fff;
	display: block;
	font-size: 22px;
	font-family: "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro," メイリオ", Meiryo, Osaka," ＭＳ Ｐゴシック", MS PGothic," sans-serif";
	text-align: center;
	text-decoration: none;
	width: 100%;
	padding:20px;
	position: relative;
	transition: 0.5s;
}
.home-contact ul li a:hover {
	background: #fff;
	color:#2ecc71;
}
.home-contact ul li.contact-tel a span {
	display: inline-block;
	transform: rotate(-30deg);
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
	left:24%;
}


/*
 * type
 **/
.type h1 span {
	font-size: 0.5em;
}
.type-container {
	padding-top:50px;
}
.type-container .type-img {
	text-align: center;
}
.type-container .type-img img {
	margin-bottom: 50px;
}
.type-container h1 {
	margin: 0 0 30px;
}
.type-container table {
	line-height: 1.5em;
	margin-bottom: 50px;
}
.type-container table tr th ,
.type-container table tr td {
	padding:18px 3%;
	border: 1px solid #aaaaaa;
}
.type-container table tr th {
	background: #f5f4ef;
	vertical-align: top;
	white-space: nowrap;
	width: 20%;
}
.type-container table tr td ul {
	margin-left:1em;
}
.type-container table tr td ul li {
	position: relative;
	margin-bottom: 4px;
}
.type-container table tr td ul li::before {
	position: absolute;
	content:"・";
	left: -1em;
}
.type-tool {
	background: #2ecc71;
}
.type-tool div:first-child {
	position: relative;
	margin: auto;
	padding: 22px 0;
	width:180px;
}
.type-tool div:first-child::before {
	position: absolute;
	content: "";
	height: 14px;
	width:1px;
	border-right: 1px solid #fff;
	margin: auto;
	top:26px;
	left:0;
	right:0;
}

.type-tool div a {
	color: #fff;
}
.type-tool .prev {
	float: left;
}
.type-tool .next {
	float: right;
}
.type-tool div {
	text-align: center;
	clear: both;
	margin-top: 6px;
}

.contact h1 ,
.privacy h1 {
	margin: 30px auto;
	display: inline-block;
	border-bottom: 1px dotted #767676;
	padding:0 30px 12px;
}
.contact h1 span,
.privacy h1 span {
	font-size: 0.45em;
	display: block;
	margin-top:6px;
}
.privacy h2 {
	font-size: 20px;
	margin-bottom: 22px;
}
.privacy .privacy-bloxk {
	width:80%;
	margin: auto;
}
.privacy ol {
	list-style: decimal;
	margin-left:16px;
	line-height: 2em;
}
.privacy ol li {
	margin-bottom: 12px;
}
@keyframes home_bg {
  0% { background: url(../images/bk.png) no-repeat;  }
  100% { background: url(../images/bk.png) no-repeat; }
}


@media (max-width:992px) {
	img { max-width: 100%; height: auto;}

/*
 * home
 **/
	.home .home-copy {
		padding:12px 2%;
		text-align: left;
	}
	.home .home-copy h2 {
		font-size: 22px;
		margin-bottom: 16px;
	}
	.home .home-copy p {
		font-size: 14px;
	}
	.home .home-midashi {
		margin-top: 8px;
		margin-bottom: 22px;
	}
	.home .home-main {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.home .home-main .container h1 {
		margin:auto;
		width:60%;
	}
	.home .home-main .container a {
		width:20%;
		right: 10%;
	}
	.home .home-access .ggmap {
		padding-bottom: 190px;
	}
	.home .home-location {
		padding-top: 0;
		padding-bottom: 12px;
	}
	.home .home-location .home-location-block {
		text-align: left;
	}
	.home .home-location .home-location-block > div {
		display: block;
	}
	.home .home-location .home-location-block .home-location-block-img {
		height: 160px;
	}
	.home .home-location .home-location-block div div {
		padding: 22px 10%;
		width: 100%;
	}
	.home .home-location .home-location-block div h3 {
		margin-top: 0;
		font-size: 18px;
	}

	.floor {
		padding:0 2%;
	}
	.floor .floar-block {
		padding-left:2%;
		padding-right:2%;
	}
	.floor .floor-type {
		padding-top:30px;
	}
	.floor .floor-type ul li a {
		padding:8% 0;
	}
	.floor .floor-type ul li a span:first-letter {
		font-size: 30px;
	}
	.home-contact {
		padding-bottom: 60px;
	}
	.home-contact ul{
		width:80%;
	}
	.home-contact ul li a {
		font-size: 16px;
		white-space: nowrap;
		padding: 20px 8px;
	}
	.home-contact ul li a span {
		font-size: 22px;
	}

	.type-container table tr th ,
	.type-container table tr td {
		display: block;
		width: 100%;
		margin-top:-1px;
	}

}
@media (max-width:768px) {
	.pc-block {
		display: none;
	}
	.floor .floor-type {
		padding-top:20px;
	}
	.privacy h2 {
		line-height: 1.5em;
		font-size: 16px;
	}
	.privacy .privacy-bloxk {
		width:90%;
		margin: auto;
	}
}

@media (min-width:768px) {
	.sp-block {
		display: none;
	}
}

/* 20170116 追記 */
a[href^="tel:"] { cursor: default; }

/* 20170209 追記 */
.footer_menu {
	padding: 20px 0;
}
.footer_menu .inner {
	max-width: 1170px;
  margin: 0 auto;
}
.footer_menu .inner ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-align-items: stretch;
	-webkit-box-align: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	        align-items: stretch;
	-webkit-flex-flow: wrap;
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	margin: 0;
}
.footer_menu .inner ul li {
	width: 25%;
}
.footer_menu .inner ul li a {
	display: block;
	text-align: center;
}
.footer_menu .inner ul li a img {
	width: 100%;
	max-width: 248px;
	height: auto;
}
@media (max-width:768px) {
	.footer_menu .inner ul li {
		width: 50%;
	}
	.footer_menu .inner ul li a img {

	}
}
