@charset "UTF-8";
/*
 * top_layout.css
 *
 */
 
/* !header
---------------------------------------------------------- */
#header {
	background: -moz-linear-gradient(top,  rgba(255,255,255,.7) 0%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,.7) 0%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,.7) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */

	width: 100%;
	height:80px;
	z-index: 100;
	position: fixed;
	justify-content: space-between;
	transition: .3s;
	-webkit-animation: head 2s 1 ease;
	-moz-animation: head 2s 1 ease;
	animation: head 2s 1 ease ;
}
@keyframes head {
    0% {
        opacity: 0;
		top:-80px;
    }
	60% {
        opacity: 0;
		top:-80px;
    }
	100% {
        opacity: 1;
		top:0;
    }
}
#header.transform {
	background: rgba(255,255,255,1);
}
	#header h1#headerLogo,
	#header p#headerLogo {
		position:absolute;
		width:221px;
		height:42px;
		top:19px;
		left:30px;
		z-index:301;
	}
		#header h1#headerLogo img,
		#header p#headerLogo img {
			display:block;
			width:221px;
		}

@media screen and (max-width:1039px){
#header {
	background: rgba(255,255,255,0);
	width: 100%;
	height:60px;
}
	#header h1#headerLogo,
	#header p#headerLogo {
		width:200px;
		height:38px;
		top:11px;
		left:25px;
		z-index:50;
	}
		#header h1#headerLogo img,
		#header p#headerLogo img {
			width:200px;
		}
}

@media screen and (max-width:767px){
#header {
	background: rgba(255,255,255,1);
	width: 100%;
	height:60px;
	-webkit-animation: none;
	-moz-animation: none;
	animation: none ;
}
	#header h1#headerLogo,
	#header p#headerLogo {
		width:179px;
		height:34px;
		top:13px;
		left:20px;
	}
		#header h1#headerLogo img,
		#header p#headerLogo img {
			width:179px;
		}
}
 
/* !mainvisual
---------------------------------------------------------- */
.topMainWrap {
	width:100%;
	margin:0;
	position: relative;
	-webkit-animation: bg 2s 1 ease;
	-moz-animation: bg 2s 1 ease;
	animation: bg 2s 1 ease ;
}
.topMain {
	width:100%;
	height:800px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size: cover;
	position: relative;
	overflow: hidden;
	
}
	.topMain p.line1 {
		position:absolute;
		display:inline-block;
		font-size:26px;
		font-weight:bold;
		color:#DD5A0F;
		line-height:1;
		background:rgba(255,255,255,0.7);
		padding:0.4em 0 0.4em 0.4em;
		top:25%;
		left:50px;
		-webkit-animation: copy1 3s 1 ease;
		-moz-animation: copy1 3s 1 ease;
		animation: copy1 3s 1 ease ;
	}
	.topMain p.line2 {
		position:absolute;
		display:inline-block;
		font-size:26px;
		font-weight:bold;
		color:#DD5A0F;
		line-height:1;
		background:rgba(255,255,255,0.7);
		padding:0.4em 0 0.4em 0.4em;
		top:33%;
		left:50px;
		-webkit-animation: copy2 3.4s 1 ease;
		-moz-animation: copy2 3.4s 1 ease;
		animation: copy2 3.4s 1 ease ;
	}
	
.topInfo {
	width:auto;
	max-width:900px;
	margin:0 auto;
	background:#FFF;
	padding:35px 45px 50px 45px;
	box-shadow: 0px 0px 16px -0px rgba(0,0,0,0.14);
	position:relative;
	top:-80px;
}
	.topInfo div.left {
		width:30%;
		float:left;
	}
		.topInfo div.left h2 {
			font-size:16px;
			font-weight:bold;
			line-height:1.6;
			margin-top:15px;
			margin-bottom:50px;
		}
			.topInfo div.left h2 span {
				display:block;
				font-family: 'Overpass', sans-serif;
				font-size:22px;
				font-weight:700;
				letter-spacing:0.06em;
			}
		.topInfo div.left a.moreBtn {
			display:inline-block;
			font-size:14px;
			font-weight:bold;
			color:#FFF;
			width:auto;
			height:40px;
			background:#002D3D;
			line-height:40px;
			border-radius:20px;
			padding:0 4em 0 1.8em;
			position:relative;
			transition:.6s;
		}
			.topInfo div.left a.moreBtn:hover {
				background:#DD5A0F;
			}
			.topInfo div.left a.moreBtn:after {
				position:absolute;
				content:"";
				width:14px;
				height:9px;
				background:url(../img/arrow01.png) 0 0 no-repeat;
				background-size:14px;
				height:9px;
				top:15px;
				right:1.8em;
				transition:.3s;
			}
				.topInfo div.left a.moreBtn:hover:after {
					right:1em;
				}
	.topInfo div.right {
		width:70%;
		float:right;
	}
		.topInfo div.right a dl {
			display:block;
			width:100%;
			padding:1em 0;
			line-height:1.8;
			border-bottom:1px solid #EAE8E7;
			transition:.6s;
		}
			.topInfo div.right a dl:hover {
				border-bottom:1px solid #F7BD95;
			}
			.topInfo div.right a dl dt {
				width:20%;
				float:left;
			}
			.topInfo div.right a dl dd {
				width:80%;
				float:left;
				padding-right:2.4em;
				position:relative;
			}
				.topInfo div.right a dl dd:after {
					position:absolute;
					content:"";
					width:11px;
					height:9px;
					background:url(../img/arrow02.png) 0 0 no-repeat;
					background-size:11px 9px;
					top:10px;
					right:0.7em;
					transition:.3s;
				}
					.topInfo div.right a dl dd:hover:after {
						right:0;
					}
		
/*アニメーションするプロパティを設定*/
@keyframes bg {
    0% {
        opacity: 0;
    }
	30% {
        opacity: 0;
    }
	100% {
        opacity: 1;
    }
}

@keyframes copy1 {
    0% {
        opacity: 0;
		transform: translateX(-50px);
    }
	60% {
        opacity: 0;
        transform: translateX(-50px);
    }
	100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes copy2 {
    0% {
        opacity: 0;
		transform: translateX(-50px);
    }
	65% {
        opacity: 0;
        transform: translateX(-50px);
    }
	100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@media screen and (max-width:1039px){
.topMainWrap {
	width:100%;
	margin:0;
	position: relative;
	-webkit-animation: bg 2s 1 ease;
	-moz-animation: bg 2s 1 ease;
	animation: bg 2s 1 ease ;
}
.topMain {
	height:600px;
	
}
	.topMain p.line1 {
		font-size:20px;
		top:25%;
		left:30px;
	}
	.topMain p.line2 {
		font-size:20px;
		top:33%;
		left:30px;
	}
	
.topInfo {
	margin:0 50px;
	padding:30px 35px 40px 35px;
	top:-60px;
}
	.topInfo div.left {
		width:30%;
	}
		.topInfo div.left h2 {
			font-size:15px;
		}
			.topInfo div.left h2 span {
				font-size:20px;
			}
		.topInfo div.left a.moreBtn {
			font-size:13px;
			padding:0 4em 0 1.8em;
		}
			.topInfo div.left a.moreBtn:hover {
				background:#002D3D;
			}
			.topInfo div.left a.moreBtn:after {
				right:1.8em;
			}
				.topInfo div.left a.moreBtn:hover:after {
					right:1.8em;
				}
	.topInfo div.right {
		width:70%;
	}
			.topInfo div.right a dl:hover {
				border-bottom:1px solid #EAE8E7;
			}
			.topInfo div.right a dl dt {
				width:24%;
			}
			.topInfo div.right a dl dd {
				width:76%;
				padding-right:2em;
			}
				.topInfo div.right a dl dd:after {
					right:0;
				}
					.topInfo div.right a dl dd:hover:after {
						right:0;
					}
					
@keyframes copy1 {
    0% {
        opacity: 0;
		transform: translateX(-30px);
    }
	60% {
        opacity: 0;
        transform: translateX(-30px);
    }
	100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes copy2 {
    0% {
        opacity: 0;
		transform: translateX(-30px);
    }
	65% {
        opacity: 0;
        transform: translateX(-30px);
    }
	100% {
        opacity: 1;
        transform: translateX(0);
    }
}

}

@media screen and (max-width:767px){
.topMainWrap {
	width:100%;
	margin:0;
	position: relative;
	-webkit-animation: bg 2s 1 ease;
	-moz-animation: bg 2s 1 ease;
	animation: bg 2s 1 ease ;
}
.topMain {
	height:250px;
	top:60px;
	margin-bottom:60px;
}
	.topMain p.line1 {
		font-size:12px;
		top:12%;
		left:20px;
	}
	.topMain p.line2 {
		font-size:12px;
		top:23%;
		left:20px;
	}
	
.topInfo {
	margin:0 25px;
	padding:30px 20px 30px 20px;
	box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
	top:-40px;
	margin-bottom:10px;
}
	.topInfo div.left {
		width:100%;
		float:none;
		margin-bottom:15px;
	}
		.topInfo div.left h2 {
			font-size:15px;
			margin-top:0;
			text-align:center;
			margin-bottom:20px;
		}
			.topInfo div.left h2 span {
				font-size:20px;
			}
		.topInfo div.left a.moreBtn {
			display:block;
			width:130px;
			font-size:13px;
			padding:0 4em 0 1.8em;
			margin:0 auto;
		}
	.topInfo div.right {
		width:100%;
		float:none;
	}
		.topInfo div.right a dl {
			display:block;
			width:100%;
			padding:1em 0;
			line-height:1.8;
			border-bottom:1px solid #EAE8E7;
			transition:.6s;
		}
			.topInfo div.right a dl dt {
				width:100%;
				float:none;
				font-weight:bold;
			}
			.topInfo div.right a dl dd {
				width:100%;
				float:none;
			}
			
@keyframes copy1 {
    0% {
        opacity: 0;
		transform: translateX(-20px);
    }
	60% {
        opacity: 0;
        transform: translateX(-20px);
    }
	100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes copy2 {
    0% {
        opacity: 0;
		transform: translateX(-20px);
    }
	65% {
        opacity: 0;
        transform: translateX(-20px);
    }
	100% {
        opacity: 1;
        transform: translateX(0);
    }
}

}

@media screen and (max-width:360px){
	.topMain p.line1 {
		font-size:12px;
		top:12%;
		left:20px;
	}
	.topMain p.line2 {
		font-size:12px;
		top:23%;
		left:20px;
	}
}

/* !アニメーション
---------------------------------------------------------- */
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 100px);
  transition: 1.6s .4s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

/* !新築増床工事
---------------------------------------------------------- */
.construction {
	width:800px;
	height:350px;
	margin:0 auto 60px auto;
}
	.construction a {
		position:relative;
		overflow: hidden;
		display:block;
		width:100%;
		height:100%;
	}
		.construction a div.bg {
			position:absolute;
			width:100%;
			height:100%;
			background:url(../../img/construction_img.jpg) 50% 50% no-repeat;
			background-size:cover;
			top:0;
			left:0;
			z-index:50;
			transition: all 1.2s ease;
		}
			.construction a:hover div.bg {
				-moz-transform: scale(1.06);
				-webkit-transform: scale(1.06);
				-ms-transform: scale(1.06);
				transform: scale(1.06);
			}
		.construction a div.mask {
			position:absolute;
			width:100%;
			height:100%;
			background:rgba(0, 45, 61, 0);
			top:0;
			left:0;
			z-index:51;
			transition: all 1s ease;
		}
			.construction a:hover div.mask {
				background:rgba(0, 45, 61, .5);
			}
			.construction a div.mask p {
				position:absolute;
				font-size:26px;
				font-weight:bold;
				line-height:1.4;
				color:#002D3D;
				top:20px;
				left:90px;
				transition: all .6s ease;
			}
				.construction a:hover div.mask p {
					color:#FFF;
				}
		.construction a img {
			position:absolute;
			width:100px;
			top:0;
			left:0;
			z-index:52;
		}
		
@media screen and (max-width:1039px){
.construction {
	width:660px;
	height:280px;
	margin:0 auto 50px auto;
}
			.construction a:hover div.bg {
				-moz-transform: scale(1);
				-webkit-transform: scale(1);
				-ms-transform: scale(1);
				transform: scale(1);
			}
			.construction a:hover div.mask {
				background:rgba(0, 45, 61, 0);
			}
			.construction a div.mask p {
				font-size:24px;
				top:18px;
				left:80px;
			}
				.construction a:hover div.mask p {
					color:#002D3D;
				}
		.construction a img {
			width:90px;
		}
}

@media screen and (max-width:767px){
.construction {
	width:auto;
	height:170px;
	margin:0 25px 40px 25px;
}
		.construction a div.mask {
			background:rgba(255, 255, 255, 0.2);
		}
			.construction a:hover div.mask {
				background:rgba(255, 255, 255, 0.2);
			}
			.construction a div.mask p {
				font-size:16px;
				top:14px;
				left:50px;
			}
		.construction a img {
			width:60px;
		}
}

@media screen and (max-width:767px){
			.construction a div.mask p {
				font-size:15px;
			}
}

/* !各種ご案内
---------------------------------------------------------- */
.topGuidance {
	width:100%;
	padding:10px 50px 120px 50px;
}
	.topGuidance div.inner {
		width:100%;
		max-width:1020px;
		margin:0 auto;
		text-align:center;
	}
		.topGuidance div.inner h2 {
			display:inline-block;
			font-size:26px;
			font-weight:bold;
			line-height:1.5;
			text-align:center;
			padding:0 140px;
			margin-bottom:50px;
			position:relative;
		}
			.topGuidance div.inner h2 span {
				font-family: 'Overpass', sans-serif;
				font-size:16px;
				font-weight:700;
				color:#E68706;
				letter-spacing:0.06em;
				display:block;
			}
			.topGuidance div.inner h2:before {
				position:absolute;
				content:"";
				width:120px;
				height:1px;
				background:#F7BD95;
				top:43px;
				left:0;
			}
			.topGuidance div.inner h2:after {
				position:absolute;
				content:"";
				width:120px;
				height:1px;
				background:#F7BD95;
				top:43px;
				right:0;
			}
		.topGuidance div.inner ul.info {
			width:100%;
			margin-bottom:60px;
		}
			.topGuidance div.inner ul.info li {
				width:33.33%;
				float:left;
				border-left:1px solid #EAE8E7;
				padding:0 35px;
			}
			.topGuidance div.inner ul.info li:last-child {
				border-right:1px solid #EAE8E7;
			}
				.topGuidance div.inner ul.info li div.icon {
					width:120px;
					height:120px;
					background:#FFF;
					border-radius:50%;
					margin:0 auto 20px auto;
					box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
				}
					.topGuidance div.inner ul.info li div.icon img {
						display:block;
						width:60px;
						margin:0 auto;
						padding-top:30px;
					}
				.topGuidance div.inner ul.info li h3 {
					font-size:18px;
					font-weight:bold;
					margin-bottom:20px;
				}
					.topGuidance div.inner ul.info li h3 br {
						display:none;
					}
				.topGuidance div.inner ul.info li ul {
					margin-bottom:25px;
				}
					.topGuidance div.inner ul.info li ul li {
						width:100%;
						float:none;
						text-align:left;
						border:0;
						padding:0;
					}
					.topGuidance div.inner ul.info li ul li:last-child {
						border:0;
					}
						.topGuidance div.inner ul.info li ul li a {
							display:block;
							width:100%;
							height:44px;
							line-height:44px;
							padding-left:20px;
							color:#00222D;
							border-bottom:1px solid #EAE8E7;
							transition:.6s;
							position:relative;
						}
							.topGuidance div.inner ul.info li ul li a:hover {
								color:#DD5A0F;
								border-bottom:1px solid #F7BD95;
							}
							.topGuidance div.inner ul.info li ul li a:before {
								position:absolute;
								content:"";
								width:11px;
								height:9px;
								background:url(../img/arrow02.png) 0 0 no-repeat;
								background-size:11px 9px;
								top:17px;
								left:0;
							}
				.topGuidance div.inner ul.info li a.moreBtn {
					display:block;
					width:100%;
					height:44px;
					font-size:14px;
					font-weight:bold;
					color:#FFF;
					line-height:44px;
					background:#DD5A0F;
					transition:.6s;
					position:relative;
				}
					.topGuidance div.inner ul.info li a.moreBtn:after {
						position:absolute;
						content:"";
						width:14px;
						height:9px;
						background:url(../img/arrow01.png) 0 0 no-repeat;
						background-size:14px 9px;
						top:17px;
						right:1.8em;
						transition:.3s;
					}
					.topGuidance div.inner ul.info li a.moreBtn:hover {
						background:#002D3D;
					}
						.topGuidance div.inner ul.info li a.moreBtn:hover:after {
							right:1em;
						}
		.topGuidance div.inner div.zaitaku {
			width:auto;
			padding:40px;
			border:1px solid #EAE8E7;
		}
			.topGuidance div.inner div.zaitaku h3 {
				width:25%;
				float:left;
				font-size:17px;
				font-weight:bold;
				text-align:left;
				padding:15px 0 0 75px;
				margin-top:10px;
				position:relative;
			}
				.topGuidance div.inner div.zaitaku h3:before {
					position:absolute;
					content:"";
					width:60px;
					height:60px;
					background:url(../../img/top_guidance_icon04.jpg) 0 0 no-repeat;
					background-size:60px 60px;
					top:0;
					left:0;
				}
			.topGuidance div.inner div.zaitaku ul {
				width:75%;
				float:right;
				border-left:1px solid #EAE8E7;
				padding-left:50px;
			}
				.topGuidance div.inner div.zaitaku ul li {
					width:40%;
					float:left;
					margin-left:25%;
					margin-right:30%;
					text-align:center;
				}
					.topGuidance div.inner div.zaitaku ul li a {
						display:block;
						width:100%;
						height:44px;
						line-height:44px;
						padding-left:20px;
						color:#00222D;
						border-bottom:1px solid #EAE8E7;
						transition:.6s;
						position:relative;
					}
						.topGuidance div.inner div.zaitaku ul li a:hover {
							color:#DD5A0F;
							border-bottom:1px solid #F7BD95;
						}
						.topGuidance div.inner div.zaitaku ul li a:before {
							position:absolute;
							content:"";
							width:11px;
							height:9px;
							background:url(../img/arrow02.png) 0 0 no-repeat;
							background-size:11px 9px;
							top:17px;
							left:0;
						}
							
@media screen and (max-width:1039px){
.topGuidance {
	padding:20px 30px 100px 30px;
}
		.topGuidance div.inner h2 {
			font-size:24px;
			margin-bottom:45px;
		}
			.topGuidance div.inner h2 span {
				font-size:15px;
			}
			.topGuidance div.inner h2:before {
				top:40px;
			}
			.topGuidance div.inner h2:after {
				top:40px;
			}
		.topGuidance div.inner ul.info {
			margin-bottom:40px;
		}
			.topGuidance div.inner ul.info li {
				padding:0 25px;
			}
				.topGuidance div.inner ul.info li div.icon {
					width:100px;
					height:100px;
					margin:0 auto 25px auto;
				}
					.topGuidance div.inner ul.info li div.icon img {
						width:50px;
						margin:0 auto;
						padding-top:25px;
					}
				.topGuidance div.inner ul.info li h3 {
					font-size:17px;
					line-height:1.6;
					height:65px;
					margin-bottom:0;
				}
					.topGuidance div.inner ul.info li h3 br {
						display:block;
					}
						.topGuidance div.inner ul.info li ul li a {
							padding-left:18px;
							font-size:14px;
						}
							.topGuidance div.inner ul.info li ul li a:hover {
								color:#00222D;
								border-bottom:1px solid #EAE8E7;
							}
					.topGuidance div.inner ul.info li a.moreBtn:after {
						right:1.4em;
					}
					.topGuidance div.inner ul.info li a.moreBtn:hover {
						background:#DD5A0F;
					}
						.topGuidance div.inner ul.info li a.moreBtn:hover:after {
							right:1.4em;
						}
						
		.topGuidance div.inner div.zaitaku {
			padding:25px 25px;
		}
			.topGuidance div.inner div.zaitaku h3 {
				width:25%;
				padding:10px 0 0 65px;
				margin-top:15px;
			}
			.topGuidance div.inner div.zaitaku ul {
				width:75%;
				padding-left:40px;
			}
				.topGuidance div.inner div.zaitaku ul li {
					width:45%;
					margin-right:5%;
				}
						.topGuidance div.inner div.zaitaku ul li a:hover {
							color:#00222D;
							border-bottom:1px solid #EAE8E7;
						}
}

@media screen and (max-width:899px){
						.topGuidance div.inner ul.info li ul li a {
							font-size:12px;
						}
					.topGuidance div.inner div.zaitaku ul li a {
						font-size:12px;
					}
}

@media screen and (max-width:767px){
.topGuidance {
	padding:20px 25px 80px 25px;
}
		.topGuidance div.inner h2 {
			font-size:20px;
			padding:0 80px;
			margin-bottom:0;
		}
			.topGuidance div.inner h2 span {
				font-size:14px;
			}
			.topGuidance div.inner h2:before {
				width:70px;
				top:36px;
			}
			.topGuidance div.inner h2:after {
				width:70px;
				top:36px;
			}
		.topGuidance div.inner ul.info {
			width:100%;
			max-width:260px;
			margin:0 auto 40px auto;
		}
			.topGuidance div.inner ul.info li {
				width:100%;
				float:none;
				border-left:0;
				border-bottom:1px solid #EAE8E7;
				padding:40px 0;
			}
			.topGuidance div.inner ul.info li:last-child {
				border-right:0;
				border-bottom:0;
				padding:40px 0 0 0;
			}
				.topGuidance div.inner ul.info li div.icon {
					margin:0 auto 25px auto;
				}
				.topGuidance div.inner ul.info li h3 {
					height:auto;
					margin-bottom:15px;
				}
					.topGuidance div.inner ul.info li ul li:last-child {
						padding: 0;
					}
						.topGuidance div.inner ul.info li ul li a {
							font-size:14px;
						}
							.topGuidance div.inner ul.info li ul li a:before {
								top:17px;
							}
							
		.topGuidance div.inner div.zaitaku {
			width:100%;
			max-width:260px;
			padding:30px 0 0 0;
			border-left:none;
			border-right:none;
			border-bottom:none;
			margin:0 auto;
		}
			.topGuidance div.inner div.zaitaku h3 {
				width:100%;
				float:none;
				font-size:17px;
				font-weight:bold;
				text-align:left;
				padding:10px 0 0 0;
				margin-top:50px;
				position:relative;
				text-align:center;
				margin-bottom:15px;
			}
				.topGuidance div.inner div.zaitaku h3:before {
					position:absolute;
					content:"";
					width:50px;
					height:50px;
					background:url(../../img/top_guidance_icon04.jpg) 0 0 no-repeat;
					background-size:50px 50px;
					top:-50px;
					left:50%;
					margin-left:-25px;
				}
			.topGuidance div.inner div.zaitaku ul {
				width:100%;
				float:none;
				border-left:none;
				padding-left:0;
			}
				.topGuidance div.inner div.zaitaku ul li {
					width:100%;
					float:none;
					margin-right:0;
				}
					.topGuidance div.inner div.zaitaku ul li a {
						display:block;
						width:100%;
						height:44px;
						line-height:44px;
						padding-left:20px;
						color:#00222D;
						border-bottom:1px solid #EAE8E7;
						transition:.6s;
						position:relative;
						font-size:14px;
					}
						.topGuidance div.inner div.zaitaku ul li a:before {
							position:absolute;
							content:"";
							width:11px;
							height:9px;
							background:url(../img/arrow02.png) 0 0 no-repeat;
							background-size:11px 9px;
							top:17px;
							left:0;
						}
}

/* !診療・受付時間
---------------------------------------------------------- */
.topTime {
	width:100%;
	padding:80px 50px 80px 50px;
	background:#F8F4E9;
	border-top:2px solid #EFE5C7;
	border-bottom:2px solid #EFE5C7;
	position:relative;
	z-index:1;
}
	.topTime div.bg {
		position:absolute;
		width:100%;
		height:100%;
		background:url(../../img/time_bg.png) top center no-repeat;
		top:0;
		left:0;
		z-index:2;
	}
	.topTime div.inner {
		width:100%;
		max-width:1100px;
		margin:0 auto;
		position:relative;
		z-index:3;
	}
		.topTime div.inner h2 {
			font-size:26px;
			font-weight:bold;
			line-height:1.5;
			text-align:center;
			margin-bottom:50px;
			position:relative;
		}
			.topTime div.inner h2 span {
				font-family: 'Overpass', sans-serif;
				font-size:16px;
				font-weight:700;
				color:#E68706;
				letter-spacing:0.06em;
				display:block;
			}
		.topTime div.inner div.left {
			width:40%;
			float:left;
		}
			.topTime div.inner div.left h3 {
				font-size:18px;
				font-weight:bold;
				line-height:1.6;
				padding-left:1em;
				margin-bottom:15px;
				position:relative;
			}
				.topTime div.inner div.left h3:before {
					position:absolute;
					content:"";
					width:5px;
					height:5px;
					background:#DD5A0F;
					border-radius:50%;
					top:12px;
					left:0;
				}
			.topTime div.inner div.left p {
				line-height:1.8;
			}
				.topTime div.inner div.left p i.fas {
					margin-right:0.4em;
				}
		.topTime div.inner div.right {
			width:55%;
			float:right;
		}
			.topTime div.inner div.right p {
				line-height:1.8;
			}
				.topTime div.inner div.right p i.fas {
					margin-right:0.4em;
				}
			.topTime div.inner div.right ul.btn {
				width:100%;
			}
				.topTime div.inner div.right ul.btn li {
					width:48%;
					float:left;
					margin-right:4%;
				}
				.topTime div.inner div.right ul.btn li:last-child {
					margin-right:0;
				}
					.topTime div.inner div.right ul.btn li a {
						display:block;
						width:100%;
						height:44px;
						font-size:14px;
						font-weight:bold;
						color:#FFF;
						line-height:44px;
						text-align:center;
						background:#DD5A0F;
						transition:.6s;
						position:relative;
					}
						.topTime div.inner div.right ul.btn li a:after {
							position:absolute;
							content:"";
							width:14px;
							height:9px;
							background:url(../img/arrow01.png) 0 0 no-repeat;
							background-size:14px 9px;
							top:17px;
							right:1.8em;
							transition:.3s;
						}
						.topTime div.inner div.right ul.btn li a:hover {
							background:#002D3D;
						}
							.topTime div.inner div.right ul.btn li a:hover:after {
								right:1em;
							}
			.topTime div.inner div.right ul.btn2 {
				width:100%;
				margin-bottom:20px;
			}
				.topTime div.inner div.right ul.btn2 li {
					width:48%;
					float:left;
					margin-right:4%;
				}
				.topTime div.inner div.right ul.btn2 li:last-child {
					margin-right:0;
				}
					.topTime div.inner div.right ul.btn2 li a {
						display:block;
						width:100%;
						height:44px;
						font-size:14px;
						font-weight:bold;
						color:#FFF;
						line-height:44px;
						text-align:center;
						background:#002D3D;
						transition:.6s;
						position:relative;
					}
						.topTime div.inner div.right ul.btn2 li a:after {
							position:absolute;
							content:"";
							width:14px;
							height:9px;
							background:url(../img/arrow01.png) 0 0 no-repeat;
							background-size:14px 9px;
							top:17px;
							right:1.8em;
							transition:.3s;
						}
						.topTime div.inner div.right ul.btn2 li a:hover {
							background:#DD5A0F;
						}
							.topTime div.inner div.right ul.btn2 li a:hover:after {
								right:1em;
							}
							
@media screen and (max-width:1039px){
.topTime {
	padding:70px 30px 70px 30px;
}
		.topTime div.inner h2 {
			font-size:24px;
			margin-bottom:45px;
		}
			.topTime div.inner h2 span {
				font-size:15px;
			}
			.topTime div.inner div.left h3 {
				font-size:17px;
			}
				.topTime div.inner div.left h3:before {
					top:11px;
				}
				.topTime div.inner div.right ul.btn li {
					width:49%;
					margin-right:2%;
				}
						.topTime div.inner div.right ul.btn li a:after {
							right:0.7em;
						}
						.topTime div.inner div.right ul.btn li a:hover {
							background:#DD5A0F;
						}
							.topTime div.inner div.right ul.btn li a:hover:after {
								right:0.7em;
							}
				.topTime div.inner div.right ul.btn2 li {
					width:49%;
					margin-right:2%;
				}
						.topTime div.inner div.right ul.btn2 li a:after {
							right:0.7em;
						}
						.topTime div.inner div.right ul.btn2 li a:hover {
							background:#002D3D;
						}
							.topTime div.inner div.right ul.btn2 li a:hover:after {
								right:0.7em;
							}
}

@media screen and (max-width:899px){
			.topTime div.inner div.left p {
				font-size:14px;
				line-height:1.8;
			}
			.topTime div.inner div.right p {
				font-size:14px;
				line-height:1.8;
			}
}

@media screen and (max-width:767px){
.topTime {
	padding:60px 25px 60px 25px;
}
	.topTime div.bg {
		position:absolute;
		width:100%;
		height:100%;
		background:url(../../img/time_bg.png) top center no-repeat;
		top:0;
		left:0;
		z-index:2;
	}
		.topTime div.inner h2 {
			font-size:20px;
			margin-bottom:40px;
		}
			.topTime div.inner h2 span {
				font-size:14px;
			}
		.topTime div.inner div.left {
			width:100%;
			float:none;
			margin-bottom:40px;
		}
			.topTime div.inner div.left h3 {
				font-size:16px;
			}
				.topTime div.inner div.left h3:before {
					top:10px;
				}
		.topTime div.inner div.right {
			width:100%;
			float:none;
		}
			.topTime div.inner div.right ul.btn {
				width:100%;
				max-width:260px;
				margin:0 auto;
			}
				.topTime div.inner div.right ul.btn li {
					width:100%;
					float:none;
					margin-right:0;
					margin-bottom:10px;
				}
				.topTime div.inner div.right ul.btn li:last-child {
					margin-bottom:0;
				}
						.topTime div.inner div.right ul.btn li a:after {
							right:1em;
						}
							.topTime div.inner div.right ul.btn li a:hover:after {
								right:1em;
							}
			.topTime div.inner div.right ul.btn2 {
				width:100%;
				max-width:260px;
				margin:0 auto 20px auto;
			}
				.topTime div.inner div.right ul.btn2 li {
					width:100%;
					float:none;
					margin-right:0;
					margin-bottom:10px;
				}
				.topTime div.inner div.right ul.btn2 li:last-child {
					margin-bottom:0;
				}
						.topTime div.inner div.right ul.btn2 li a:after {
							right:1em;
						}
							.topTime div.inner div.right ul.btn2 li a:hover:after {
								right:1em;
							}
}

/* !採用情報
---------------------------------------------------------- */
.topRecruit {
	width:100%;
	padding:100px 50px 60px 50px;
}
	.topRecruit div.inner {
		width:100%;
		max-width:1100px;
		margin:0 auto;
		position:relative;
	}
		.topRecruit div.inner div.photo {
			position:relative;
			width:55%;
			height:350px;
			background:url(../../img/top_recruit_img.jpg) 50% 50% no-repeat;
			background-size:cover;
			z-index:1;
		}
		.topRecruit div.inner div.box a {
			display:block;
			position:absolute;
			width:52%;
			max-height:250px;
			background:#FFF;
			padding:60px 40px;
			box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
			top:15%;
			left:48%;
			z-index:2;
			transition:.3s;
		}
			.topRecruit div.inner div.box a:hover {
				box-shadow: 0px 0px 3px -0px rgba(0,0,0,0.14);
				top:17%;
			}
			.topRecruit div.inner div.box a h2 {
				font-size:26px;
				font-weight:bold;
				line-height:1.5;
				text-align:center;
				margin-bottom:25px;
				position:relative;
				transition:.6s;
			}
				.topRecruit div.inner div.box a:hover h2 {
					color:#00222D;
				}
				.topRecruit div.inner div.box a h2 span {
					font-family: 'Overpass', sans-serif;
					font-size:16px;
					font-weight:700;
					color:#E68706;
					letter-spacing:0.06em;
					display:block;
				}
			.topRecruit div.inner div.box a p {
				text-align:center;
				line-height:1.8;
				transition:.6s;
			}
				.topRecruit div.inner div.box a:hover p {
					color:#DD5A0F;
				}
				.topRecruit div.inner div.box a p br {
					display:none;
				}
				
.topRecruit2 {
	width:100%;
	padding:0 50px 120px 50px;
}
	.topRecruit2 div.inner {
		width:100%;
		max-width:1100px;
		margin:0 auto;
		position:relative;
	}
		.topRecruit2 div.inner div.photo {
			position:relative;
			width:55%;
			height:350px;
			left:45%;
			background:url(../../img/top_recruit02_img.jpg) 50% 50% no-repeat;
			background-size:cover;
			z-index:1;
		}
		.topRecruit2 div.inner div.box a {
			display:block;
			position:absolute;
			width:52%;
			max-height:250px;
			background:#FFF;
			padding:60px 40px;
			box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
			top:15%;
			z-index:2;
			transition:.3s;
		}
			.topRecruit2 div.inner div.box a:hover {
				box-shadow: 0px 0px 3px -0px rgba(0,0,0,0.14);
				top:17%;
			}
			.topRecruit2 div.inner div.box a h2 {
				font-size:26px;
				font-weight:bold;
				line-height:1.5;
				text-align:center;
				margin-bottom:25px;
				position:relative;
				transition:.6s;
			}
				.topRecruit2 div.inner div.box a:hover h2 {
					color:#00222D;
				}
				.topRecruit2 div.inner div.box a h2 span {
					font-family: 'Overpass', sans-serif;
					font-size:16px;
					font-weight:700;
					color:#E68706;
					letter-spacing:0.06em;
					display:block;
				}
			.topRecruit2 div.inner div.box a p {
				text-align:center;
				line-height:1.8;
				transition:.6s;
			}
				.topRecruit2 div.inner div.box a:hover p {
					color:#DD5A0F;
				}
				.topRecruit2 div.inner div.box a p br {
					display:none;
				}
							
@media screen and (max-width:1039px){
.topRecruit {
	padding:70px 30px 100px 30px;
}
		.topRecruit div.inner div.photo {
			width:58%;
			height:300px;
		}
		.topRecruit div.inner div.box a {
			width:50%;
			padding:40px 25px;
			top:130px;
			left:50%;
		}
			.topRecruit div.inner div.box a:hover {
				box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
				top:130px;
			}
			.topRecruit div.inner div.box a h2 {
				font-size:24px;
				margin-bottom:25px;
			}
				.topRecruit div.inner div.box a:hover h2 {
					color:#00222D;
				}
				.topRecruit div.inner div.box a:hover p {
					color:#00222D;
				}
				.topRecruit div.inner div.box a p br {
					display:block;
				}
				
.topRecruit2 {
	padding:0 30px 130px 30px;
}
		.topRecruit2 div.inner div.photo {
			width:58%;
			height:300px;
			left:42%;
		}
		.topRecruit2 div.inner div.box a {
			width:50%;
			padding:40px 25px;
			top:130px;
		}
			.topRecruit2 div.inner div.box a:hover {
				box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
				top:130px;
			}
			.topRecruit2 div.inner div.box a h2 {
				font-size:24px;
				margin-bottom:25px;
			}
				.topRecruit2 div.inner div.box a:hover h2 {
					color:#00222D;
				}
				.topRecruit2 div.inner div.box a:hover p {
					color:#00222D;
				}
				.topRecruit2 div.inner div.box a p br {
					display:block;
				}
}

@media screen and (max-width:767px){
.topRecruit {
	padding:60px 25px 10px 25px;
}
		.topRecruit div.inner div.photo {
			width:100%;
			max-width:360px;
			height:200px;
			margin:0 auto;
		}
		.topRecruit div.inner div.box a {
			position:relative;
			width:100%;
			max-width:280px;
			max-height:auto;
			background:#FFF;
			padding:30px 25px;
			box-shadow: 0px 0px 10px -0px rgba(0,0,0,0.14);
			top:-30px;
			left:50%;
			margin-left:-140px;
		}
			.topRecruit div.inner div.box a:hover {
				top:-30px;
			}
			.topRecruit div.inner div.box a h2 {
				font-size:20px;
				margin-bottom:20px;
			}
				.topRecruit div.inner div.box a h2 span {
					font-size:14px;
				}
				
.topRecruit2 {
	padding:0 25px 40px 25px;
}
		.topRecruit2 div.inner div.photo {
			width:100%;
			max-width:360px;
			height:200px;
			left:0;
			margin:0 auto;
		}
		.topRecruit2 div.inner div.box a {
			position:relative;
			width:100%;
			max-width:280px;
			max-height:auto;
			background:#FFF;
			padding:30px 25px;
			box-shadow: 0px 0px 10px -0px rgba(0,0,0,0.14);
			top:-30px;
			left:50%;
			margin-left:-140px;
		}
			.topRecruit2 div.inner div.box a:hover {
				top:-30px;
			}
			.topRecruit2 div.inner div.box a h2 {
				font-size:20px;
				margin-bottom:20px;
			}
				.topRecruit2 div.inner div.box a h2 span {
					font-size:14px;
				}
}

@media screen and (max-width:360px){
		.topRecruit div.inner div.box a {
			max-width:240px;
			padding:30px 20px;
			margin-left:-120px;
		}
			.topRecruit div.inner div.box a p br {
				display:none;
			}
}

/* !contents
---------------------------------------------------------- */
#contents {
	width:100%;
}

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

}

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

}

/* !220818追加
---------------------------------------------------------- */
.recruitBnr {
	width:800px;
	height:350px;
	margin:0 auto 60px auto;
}
	.recruitBnr a {
		position:relative;
		overflow: hidden;
		display:block;
		width:100%;
		height:100%;
	}
		.recruitBnr a div.bg {
			position:absolute;
			width:100%;
			height:100%;
			background:url(../../img/recruit_bnr.jpg) 50% 50% no-repeat;
			background-size:cover;
			top:0;
			left:0;
			z-index:50;
			transition: all 1.2s ease;
		}
			.recruitBnr a:hover div.bg {
				-moz-transform: scale(1.06);
				-webkit-transform: scale(1.06);
				-ms-transform: scale(1.06);
				transform: scale(1.06);
			}
		.recruitBnr a div.mask {
			position:absolute;
			width:100%;
			height:100%;
			background:rgba(0, 45, 61, 0);
			top:0;
			left:0;
			z-index:51;
			transition: all 1s ease;
		}
			.recruitBnr a:hover div.mask {
				background:rgba(0, 45, 61, .5);
			}
			.recruitBnr a div.mask p {
				position:absolute;
				font-size:26px;
				font-weight:bold;
				line-height:1.4;
				color:#002D3D;
				top:20px;
				left:90px;
				transition: all .6s ease;
			}
				.recruitBnr a div.mask p span {
					font-family: 'Overpass', sans-serif;
					font-size:16px;
					font-weight:700;
					color:#E68706;
					letter-spacing:0.06em;
					display:block;
					transition: all .6s ease;
				}
				.recruitBnr a:hover div.mask p {
					color:#FFF;
				}
					.recruitBnr a:hover div.mask p span {
						color:#FFF;
					}
		.recruitBnr a img {
			position:absolute;
			width:100px;
			top:0;
			left:0;
			z-index:52;
		}
		
.recruitBnr2 {
	padding:0 50px 80px 50px;
}
	.recruitBnr2 ul {
		width:100%;
		max-width:1100px;
		margin:0 auto;
		display:flex;
		flex-wrap:wrap;
		justify-content: space-between;
	}
		.recruitBnr2 ul li {
			width:49%;
			transition:.3s;
			position:relative;
		}
			.recruitBnr2 ul li a img {
				display:block;
				width:100%;
				max-width:530px;
				box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
				transition:.3s;
				top:0;
				position:relative;
			}
			.recruitBnr2 ul li:nth-child(even) a img {
				float:right;
			}
				.recruitBnr2 ul li a:hover img {
					box-shadow: 0px 0px 3px -0px rgba(0,0,0,0.14);
					top:6px;
					transition:.3s;
				}
			.recruitBnr2 ul li p {
				margin-top:20px;
				text-align:center;
			}
				.recruitBnr2 ul li p a i.fas {
					margin-left:0.6em;
				}
		
@media screen and (max-width:1039px){
.recruitBnr {
	width:660px;
	height:280px;
	margin:0 auto 50px auto;
}
			.recruitBnr a:hover div.bg {
				-moz-transform: scale(1);
				-webkit-transform: scale(1);
				-ms-transform: scale(1);
				transform: scale(1);
			}
			.recruitBnr a:hover div.mask {
				background:rgba(0, 45, 61, 0);
			}
			.recruitBnr a div.mask p {
				font-size:24px;
				top:18px;
				left:80px;
			}
				.recruitBnr a div.mask p span {
					font-size:15px;
				}
				.recruitBnr a:hover div.mask p {
					color:#002D3D;
				}
					.recruitBnr a:hover div.mask p span {
						color:#E68706;
					}
		.recruitBnr a img {
			width:90px;
		}
		
.recruitBnr2 {
	padding:0 30px 60px 30px;
}
		.recruitBnr2 ul li {
			width:48.5%;
		}
				.recruitBnr2 ul li a:hover img {
					box-shadow: 0px 0px 12px -0px rgba(0,0,0,0.14);
					top:0;
				}
}

@media screen and (max-width:767px){
.recruitBnr {
	width:auto;
	height:170px;
	margin:0 25px 50px 25px;
}
		.recruitBnr a div.mask {
			background:rgba(255, 255, 255, 0.2);
		}
			.recruitBnr a:hover div.mask {
				background:rgba(255, 255, 255, 0.2);
			}
			.recruitBnr a div.mask p {
				font-size:16px;
				top:14px;
				left:50px;
			}
				.recruitBnr a div.mask p span {
					font-size:12px;
				}
		.recruitBnr a img {
			width:60px;
		}
		
.recruitBnr2 {
	padding:0 25px 40px 25px;
}
	.recruitBnr2 ul {
		max-width:320px;
		margin:0 auto;
	}
		.recruitBnr2 ul li {
			width:100%;
			margin-bottom:25px;
		}
		.recruitBnr2 ul li:last-child {
			margin-bottom:0;
		}
}

@media screen and (max-width:767px){
			.recruitBnr a div.mask p {
				font-size:15px;
			}
}