@charset "UTF-8";
/* CSS Document */
/* シンフォニー */
/* トップページCSS */

/*共通CSS*/
/*WordPress対策・全ページ余白なし*/
* {
	margin: 0;
	padding: 0;
}
	
body {
	margin: 0;
	padding: 0;
	color: #535353;
	background: #fff;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
	
img {
	vertical-align: bottom; /*下に余白を作らない*/
	max-width: 100%;
}
	
p,h1,h2,h3,h4 {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
	
a {
	text-decoration: none;
}
	
.wrap {
	overflow: hidden;
}

/*フォント設定*/	
.kaisei {
	font-family: 'Kaisei Opti', serif;
}
	
.shadow {
	font-family: 'Shadows Into Light Two', cursive;
}
	
.color01 {
	color: #8DC031;
}
	
.color02 {
	color: #6E4D32;
}
	
/*floatを解除する*/
.clear {
	clear: both;
}

/*PC*/
@media only screen and (min-width: 769px) {
	.pc {
		display: block !important;
	}
	
	.sp {
		display: none !important;
	}
	
	p {
		font-size: 16px;
		font-weight: normal;
		letter-spacing: 1px;
		text-align: left;
	}
	
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
	
	main {
		position: relative;
		width: 100%;
		height: auto;
		padding: 140px 0 0 0;
		overflow: hidden;
	}
	
	.tp-btn {
		display: block;
		height: auto;
		padding: 17px 0;
		font-size: 18px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: center;
		color: #fff;
		background: #8ED0D0;
		border-radius: 30px;
		border: solid 1px #8ED0D0;
		box-sizing: border-box;
		transition: 0.4s;
	}
	
	.tp-btn:hover {
		color: #8ED0D0;
		background: #fff;
		border: solid 1px #8ED0D0;
	}
	
	
}
	
/*SP*/
@media only screen and (max-width: 768px) {
	.pc {
		display: none !important;
	}
	
	.sp {
		display: block !important;
	}
	
	p {
		font-size: 11px;
		font-weight: normal;
		letter-spacing: 0.5px;
		text-align: left;
	}
	
	main {
		position: relative;
		width: 100%;
		height: auto;
		padding: 50px 0 0 0;
		overflow: hidden;
	}
	
	.tp-btn {
		display: block;
		height: auto;
		padding: 10px 0;
		font-size: 11px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 11px;
		text-align: center;
		color: #fff;
		background: #8ED0D0;
		border-radius: 30px;
		border: solid 1px #8ED0D0;
		box-sizing: border-box;
	}
	
		
}

/*トップページ*/
/*PC*/
@media only screen and (min-width: 769px) {
	/*共通*/
	.tp-h2 {
		font-size: 50px;
		letter-spacing: 4px;
		line-height: 45px;
		text-align: center;
	}
	
	.tp-h2 span {
		font-size: 24px;
		font-weight: normal;
		letter-spacing: 6px;
	}
	
	/*キービジュアル*/
	#tp-key {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	.tp-slider {
		z-index: 0;
		position: relative;
		width: 92%;
		height: 800px;
		margin: 0 auto 0 0;
		border-radius: 0 60px 0 0;
		overflow: hidden;
	}
	
	.tp-slider img {
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.tp-key-text {
		z-index: 1;
		position: absolute;
		top: 50%;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, -50%);
		width: 94%;
		height: auto;
	}
	
	.tp-key-text h2 {
		font-size: 40px;
		letter-spacing: 3px;
		line-height: 54px;
		text-align: left;
		text-shadow: 2px 2px 1px #fff;
	}
	
	.tp-key-text h2 font {
		position: relative;
	}
	
	.tp-key-text h2 font img {
		position: absolute;
		top: -160px;
		left: -50px;
		width: 240px;
		height: auto;
	}
	
	.tp-key-text a {
		display: block;
		position: absolute;
		bottom: -420px;
		right: 0;
		width: 350px;
		height: auto;
	}
	
	.tp-key-text a img {
		position: relative;
		width: 100%;
		height: auto;
		transition: 0.4s;
	}
	
	.tp-key-text a img:hover {
		opacity: 0.7;
	}
	
	.updown {
		animation-name:updown1;
		animation-delay:0s;
		animation-duration: 3s;
		animation-timing-function: ease-in-out;
		animation-iteration-count: infinite; 
	}

	@keyframes updown1 {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-20px);
		}
		100% {
			transform: translateY(0);
		}
	}
	
	/*シンフォニーについて*/
	#tp-abo {
		position: relative;
		width: 100%;
		height: auto;
		padding: 60px 0 50px 0;
		margin: 80px auto;
	}
	
	#tp-abo h3 {
		margin: 45px auto 45px auto;
		font-size: 36px;
		letter-spacing: 3px;
		line-height: 48px;
		text-align: center;
	}
	
	#tp-abo p {
		text-align: center;
		line-height: 30px;
	}
	
	#tp-abo .tp-btn {
		position: relative;
		width: 360px;
		margin: 40px auto 0 auto;
	}
	
	.tp-abo-icon {
		z-index: -2;
		position: absolute;
		top: 170px;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, 0);
		width: 600px;
		height: auto;
	}
	
	.tp-abo-icon img:nth-child(1) {
		display: block;
		position: relative;
		width: 70px;
		height: auto;
		margin: 0 90px 15px auto;
	}
	
	.tp-abo-icon img:nth-child(2) {
		display: block;
		position: relative;
		width: 160px;
		height: auto;
		margin: 0 auto 0 0;
	}
	
	.tp-abo-icon img:nth-child(3) {
		display: block;
		position: relative;
		width: 120px;
		height: auto;
		margin: -10px 10px 0 auto;
	}
	
	.tp-abo-img {
		z-index: -1;
		position: relative;
		max-width: 1500px;
		width: 100%;
		height: auto;
		margin: -600px auto 0 auto;
	}
	
	.tp-abo-img img {
		display: block;
	}
	
	.tp-abo-img img:nth-child(1) {
		position: relative;
		width: 210px;
		height: auto;
		margin: 0 auto 80px 160px;
	}
	
	.tp-abo-img img:nth-child(2) {
		position: relative;
		width: 290px;
		height: auto;
		margin: 0 auto 80px 0;
	}
	
	.tp-abo-img img:nth-child(3) {
		position: relative;
		width: 180px;
		height: auto;
		margin: 0 auto 0 220px;
	}
	
	.tp-abo-img img:nth-child(4) {
		position: absolute;
		top: 70px;
		right: 0;
		width: 320px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(5) {
		position: absolute;
		top: 380px;
		right: 60px;
		width: 180px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(6) {
		position: absolute;
		bottom: -60px;
		right: 160px;
		width: 220px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(7) {
		z-index: 2;
		position: absolute;
		bottom: 110px;
		right: 300px;
		width: 120px;
		height: auto;
	}
	
	/*お知らせ・ブログ*/
	#tp-news {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0 60px 0;
		background: rgba(183,223,223,0.30);
	}
	
	#tp-news .tp-btn {
		position: relative;
		width: 360px;
		margin: 0 auto 0 auto;
	}
	
	.tp-news-con {
		position: relative;
		width: 1160px;
		height: auto;
		margin: 50px auto 40px auto;
	}
	
	.tp-news-loop {
		display: block;
		position: relative;
		width: 250px;
		height: 180px;
		margin: 0 20px 220px 20px;
		float: left;
	}
	
	.tp-news-loop-img {
		z-index: 1;
		width: 250px;
		height: 180px;
		border-radius: 0 40px 0 40px;
		overflow: hidden;
	}
	
	.tp-news-loop-img img {
		position: relative;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
		-webkit-transform: scale(1);
		-moz-transform: scale(1);
		-o-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		transition: transform 0.4s linear;
	}
	
	.tp-news-loop:hover .tp-news-loop-img img {
		-webkit-transform: scale(1.3);
		-moz-transform: scale(1.3);
		-o-transform: scale(1.3);
		-ms-transform: scale(1.3);
		transform: scale(1.3);
	}
	
	.tp-news-loop-text {
		position: absolute;
		top: 180px;
		left: 0;
		width: 100%;
		height: auto;
		padding: 15px 0 0 0;
	}
	
	.tp-news-loop-text span {
		display: table;
		position: relative;
		padding: 5px 10px;
		margin: 0 10px 5px 0;
		font-size: 13px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 13px;
		color: #fff;
		background: #8DC031;
		border-radius: 40px;
		float: left;
	}
	
	.tp-news-loop-text h3 {
		margin: 5px 0 8px 0;
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 24px;
		color: #8DC031;
	}
	
	.tp-news-loop-text p {
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 22px;
		color: #535353;
	}
	
	.tp-news-loop-text time {
		display: block;
		position: relative;
		margin: 8px 0 0 0;
		font-size: 14px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 14px;
		text-align: right;
		color: #8DC031;
	}
	
	/*サービス案内*/
	#tp-ser {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0 60px 0;
	}
	
	.tp-ser-btn {
		position: relative;
		width: 360px;
		margin: -100px auto 0 auto;
	}
	
	.tp-ser-p {
		line-height: 30px;
		text-align: center;
		margin: 40px auto 50px auto;
	}
	
	.tp-ser01 {
		position: relative;
		width: 1100px;
		height: auto;
		margin: 0 auto 280px auto;
	}
	
	.tp-ser02 {
		position: relative;
		width: 1100px;
		height: auto;
		margin: 0 auto 100px auto;
	}
	
	.tp-ser-img {
		display: block;
		position: relative;
		width: 590px;
		height: auto;
	}
	
	.tp-ser-img01 {
		z-index: 1;
		display: block;
		position: relative;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-img02 {
		z-index: 2;
		display: block;
		position: absolute;
		width: 230px;
		height: auto;
	}
	
	.tp-ser-img03 {
		z-index: 2;
		display: block;
		position: absolute;
		width: 230px;
		height: auto;
	}
	
	.tp-ser01 .tp-ser-img {
		margin: 0 auto 0 0;
	}
	
	.tp-ser01 .tp-ser-img .tp-ser-img02 {
		bottom: -70px;
		left: -70px;
	}
	
	.tp-ser01 .tp-ser-img .tp-ser-img03 {
		top: -60px;
		left: -120px;
	}
	
	.tp-ser02 .tp-ser-img {
		margin: 0 80px 0 auto;
	}
	
	.tp-ser02 .tp-ser-img .tp-ser-img02 {
		top: -100px;
		right: -150px;
	}
	
	.tp-ser-onpu01 {
		z-index: 2;
		position: absolute;
		top: -100px;
		left: -130px;
		width: 280px;
		height: auto;
	}
	
	.tp-ser-onpu02 {
		z-index: 2;
		position: absolute;
		bottom: -80px;
		left: -145px;
		width: 280px;
		height: auto;
	}
	
	.tp-ser-text {
		z-index: 3;
		position: absolute;
		width: 550px;
		height: auto;
		padding: 60px 60px 40px 60px;
		box-shadow: 2px 3px 15px rgba(0,0,0,0.16);
		background: rgba(255,255,255,0.90);
		border-radius: 10px 80px 10px 80px;
		box-sizing: border-box;
	}
	
	.tp-ser-text::before {
		content: "";
		position: absolute;
		top: 10px;
		left: 10px;
		width: 100%;
		height: 100%;
		border: solid 2px #8ED0D0;
		border-radius: 10px 80px 10px 80px;
	}
	
	.tp-ser-text h3 {
		font-size: 36px;
		letter-spacing: 3px;
		line-height: 36px;
		text-align: left;
	}
	
	.tp-ser-text p {
		z-index: 0;
		position: relative;
		margin: 40px 0 30px 0;
		line-height: 30px;
	}
	
	.tp-ser-text .tp-btn {
		position: relative;
		width: 280px;
		margin: 0 auto 0 0;
	}
	
	.tp-ser-p-icon01 {
		z-index: -1;
		position: absolute;
		top: 20px;
		right: -50px;
		width: 160px;
		height: auto;
	}
	
	.tp-ser-p-icon02 {
		z-index: -1;
		position: absolute;
		top: 0;
		right: -45px;
		width: 160px;
		height: auto;
		transform:rotate(45deg);
	}
	
	.tp-ser-p-icon03 {
		z-index: -1;
		position: absolute;
		top: -10px;
		right: -50px;
		width: 160px;
		height: auto;
	}
	
	.tp-ser-text-img01 {
		z-index: 1;
		position: absolute;
		top: -162px;
		right: -50px;
		width: 210px;
		height: auto;
		animation-name: fadedown;
		animation-duration: 2s;
		animation-iteration-count: 1;
	}
	
	.tp-ser-text-img01 img {
		z-index: -1;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-text-img02 {
		z-index: 1;
		position: absolute;
		top: -180px;
		right: 35px;
		width: 200px;
		height: auto;
		animation-name: fadedown;
		animation-duration: 2s;
		animation-iteration-count: 1;
	}
	
	.tp-ser-text-img02 img {
		z-index: -1;
		position: absolute;
		top: 0;
		left: -25px;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-text-img03 {
		z-index: 1;
		position: absolute;
		top: -146px;
		right: -30px;
		width: 230px;
		height: auto;
	}
	
	.tp-ser-text-img03 img {
		z-index: -1;
		position: absolute;
		top: 9px;
		left: -24px;
		width: 100%;
		height: auto;
	}
	
	.tp-ser01 .tp-ser-text {
		top: 100px;
		right: 0;
	}
	
	.tp-ser02 .tp-ser-text {
		top: -70px;
		left: -80px;
	}
	
	.tp-ser-text-img-p {
		font-size: 17px;
		font-weight: normal;
		line-height: 20px!important;
		text-align: center;
	}
	
	/*ご家族様の声*/
	#tp-koe {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0 60px 0;
		background-image: url(/wp-content/uploads/2022/07/toppage_32_pc.png);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	
	.tp-koe-p {
		line-height: 30px;
		text-align: center;
		margin: 30px auto 40px auto;
	}
	
	#tp-koe .tp-btn {
		position: relative;
		width: 360px;
		margin: 60px auto 0 auto;
	}
	
	.tp-koe-slider {
		width: 1120px;
		margin: 0 auto;
	}
	
	.tp-koe-slider li {
		position: relative;
		width: 650px;
		height: auto;
		padding: 35px 40px;
		background: #fff;
		box-sizing: border-box;
		list-style: none;
	}
	
	.tp-koe-slider .tp-koe-img {
		width: 60vw;
		height: auto;
	}
	
	.tp-koe-slider .slick-slide {
		transform: scale(0.7);
		transition: all .5s;
		opacity: 0.8;
	}
	
	.tp-koe-slider .slick-slide.slick-center{
		transform: scale(1);
		opacity: 1;
	}
	
	#tp-koe .slick-dots {
		bottom: -35px;
	}
	
	#tp-koe .slick-dots li {
		background: rgba(255,255,255,0.00)!important;
	}
	
	#tp-koe .slick-dots li button {
		font-size: 20px;
	}
	
	#tp-koe .slick-dots li button:before {
		font-size: 60px;
	}
	
	#tp-koe .slick-dots .slick-active button {
		background: rgba(255,255,255,0.00);
	}
	
	.tp-koe-text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 20px auto;
	}
	
	.tp-koe-text img {
		display: block;
		position: relative;
		width: 80px;
		height: auto;
		margin: 0 auto 0 0;
	}
	
	.tp-koe-text span {
		display: table;
		position: absolute;
		top: 15px;
		left: 105px;
		padding: 5px 10px;
		font-size: 14px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 14px;
		text-align: center;
		color: #fff;
		background: #8DC031;
		border-radius: 40px;
	}
	
	.tp-koe-text h3 {
		position: absolute;
		top: 48px;
		left: 105px;
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 16px;
	}
	
	/*バナー*/
	#tp-ban {
		position: relative;
		width: 750px;
		height: auto;
		margin: 80px auto;
	}
	
	#tp-ban a {
		display: block;
		position: relative;
		width: 350px;
		height: auto;
		transition: 0.4s;
		float: left;
	}
	
	#tp-ban a img {
		position: relative;
		width: 100%;
		height: auto;
		border-radius: 0 30px 0 30px;
		box-shadow: 4px 6px 4px rgba(0,0,0,0.16);
	}
	
	#tp-ban a:nth-child(1) {
		margin: 0 50px 0 0;
	}
	
	#tp-ban a:hover {
		transform: translateY(-20px);
	}
	
	/*採用情報*/
	#tp-rec {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0 110px 0;
		background: rgba(183,223,223,0.30);
	}
	
	.tp-rec01 {
		position: relative;
		width: 1200px;
		height: auto;
		margin: 60px auto 0 auto;
	}
	
	.tp-rec-img {
		display: block;
		position: relative;
		width: 730px;
		height: auto;
		margin: 0 auto 0 0;
	}
	
	.tp-rec-img img:nth-child(1) {
		z-index: 0;
		display: block;
		position: relative;
		width: 600px;
		height: auto;
		margin: 0 0 40px auto;
	}
	
	.tp-rec-img img:nth-child(2) {
		z-index: 1;
		display: block;
		position: absolute;
		top: 200px;
		left: 0;
		width: 200px;
		height: auto;
	}
	
	.tp-rec-img img:nth-child(3) {
		display: block;
		position: relative;
		width: 180px;
		height: auto;
		margin: 0 250px 0 auto;
	}
	
	.tp-rec-img img:nth-child(4) {
		z-index: 1;
		display: block;
		position: absolute;
		top: -100px;
		left: -20px;
		width: 260px;
		height: auto;
	}
	
	.tp-rec-text {
		z-index: 3;
		position: absolute;
		top: 70px;
		right: 0;
		width: 550px;
		height: auto;
		padding: 60px 60px 40px 60px;
		box-shadow: 2px 3px 15px rgba(0,0,0,0.16);
		background: rgba(255,255,255,0.90);
		border-radius: 10px 80px 10px 80px;
		box-sizing: border-box;
	}
	
	.tp-rec-text::before {
		content: "";
		position: absolute;
		top: 10px;
		left: 10px;
		width: 100%;
		height: 100%;
		border: solid 2px #8ED0D0;
		border-radius: 10px 80px 10px 80px;
	}
	
	.tp-rec-text h3 {
		font-size: 36px;
		letter-spacing: 3px;
		line-height: 46px;
		text-align: left;
	}
	
	.tp-rec-text p {
		z-index: 0;
		position: relative;
		margin: 25px 0 20px 0;
		line-height: 30px;
	}
	
	.tp-rec-text p img {
		z-index: -1;
		position: absolute;
		top: 20px;
		right: -50px;
		width: 160px;
		height: auto;
	}
	
	.tp-rec-text .tp-btn {
		position: relative;
		width: 300px;
		margin: 0 auto 0 0;
	}
	
	.tp-rec-text-img01 {
		z-index: 1;
		position: absolute;
		top: -70px;
		right: 30px;
		width: 90px;
		height: auto;
	}
	
	.tp-rec-text-img02 {
		z-index: 1;
		position: absolute;
		bottom: -70px;
		right: -80px;
		width: 200px;
		height: auto;
	}
	
	
	
}

/*SP*/
@media only screen and (max-width: 768px) {
	/*共通*/
	.tp-h2 {
		font-size: 24px;
		letter-spacing: 2px;
		line-height: 24px;
		text-align: center;
	}
	
	.tp-h2 span {
		font-size: 14px;
		font-weight: normal;
		letter-spacing: 3px;
	}
	
	/*キービジュアル*/
	#tp-key {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	.tp-slider {
		z-index: 0;
		position: relative;
		width: 92%;
		height: 500px;
		margin: 0 auto 0 0;
		border-radius: 0 40px 0 0;
		overflow: hidden;
	}
	
	.tp-slider img {
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.tp-key-text {
		z-index: 1;
		position: absolute;
		top: 61%;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, -50%);
		width: 94%;
		height: auto;
	}
	
	.tp-key-text h2 {
		font-size: 19px;
		letter-spacing: 2px;
		line-height: 25px;
		text-align: left;
		text-shadow: 1px 1px 1px #fff;
	}
	
	.tp-key-text h2 font {
		position: relative;
	}
	
	.tp-key-text h2 font img {
		position: absolute;
		top: -75px;
		left: -20px;
		width: 110px;
		height: auto;
	}
	
	.tp-key-text a {
		display: block;
		position: absolute;
		bottom: -240px;
		right: -10px;
		width: 210px;
		height: auto;
	}
	
	.updown {
		animation-name:updown1;
		animation-delay:0s;
		animation-duration: 3s;
		animation-timing-function: ease-in-out;
		animation-iteration-count: infinite; 
	}

	@keyframes updown1 {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-20px);
		}
		100% {
			transform: translateY(0);
		}
	}
	
	/*シンフォニーについて*/
	#tp-abo {
		position: relative;
		width: 100%;
		height: auto;
		padding: 30px 0 140px 0;
		margin: 40px auto;
	}
	
	#tp-abo h3 {
		margin: 150px auto 20px auto;
		font-size: 18px;
		letter-spacing: 2px;
		line-height: 26px;
		text-align: center;
	}
	
	#tp-abo p {
		text-align: center;
		line-height: 20px;
	}
	
	#tp-abo .tp-btn {
		position: relative;
		width: 200px;
		margin: 20px auto 0 auto;
	}
	
	.tp-abo-icon {
		z-index: -2;
		position: absolute;
		top: 195px;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, 0);
		width: 340px;
		height: auto;
	}
	
	.tp-abo-icon img:nth-child(1) {
		display: block;
		position: relative;
		width: 40px;
		height: auto;
		margin: 5px 60px 15px auto;
	}
	
	.tp-abo-icon img:nth-child(2) {
		display: block;
		position: relative;
		width: 100px;
		height: auto;
		margin: 0 auto 0 0;
	}
	
	.tp-abo-icon img:nth-child(3) {
		display: block;
		position: relative;
		width: 70px;
		height: auto;
		margin: -10px 0 0 auto;
	}
	
	.tp-abo-img {
		z-index: -1;
		position: absolute;
		top: 105px;
		left: 0;
		width: 100%;
		height: auto;
	}
	
	.tp-abo-img img {
		display: block;
	}
	
	.tp-abo-img img:nth-child(1) {
		position: relative;
		width: 80px;
		height: auto;
		margin: 0 auto 360px auto;
	}
	
	.tp-abo-img img:nth-child(2) {
		position: absolute;
		top: 25px;
		left: 5%;
		width: 100px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(3) {
		position: absolute;
		top: 18px;
		right: 5%;
		width: 90px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(4) {
		position: relative;
		width: 110px;
		height: auto;
		margin: 0 0 0 auto;
	}
	
	.tp-abo-img img:nth-child(5) {
		position: absolute;
		bottom: -20px;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, 0);
		width: 80px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(6) {
		position: absolute;
		bottom: 0;
		left: 5%;
		width: 90px;
		height: auto;
	}
	
	.tp-abo-img img:nth-child(7) {
		display: none;
	}
	
	/*お知らせ・ブログ*/
	#tp-news {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0 30px 0;
		background: rgba(183,223,223,0.30);
	}
	
	#tp-news .tp-btn {
		position: relative;
		width: 200px;
		margin: 0 auto 0 auto;
	}
	
	.tp-news-con {
		position: relative;
		width: 330px;
		height: auto;
		margin: 30px auto 30px auto;
	}
	
	.tp-news-loop {
		display: block;
		position: relative;
		width: 120px;
		height: 100px;
		margin: 0 200px 20px 0;
	}
	
	.tp-news-loop-img {
		z-index: 1;
		width: 120px;
		height: 100px;
		border-radius: 0 20px 0 20px;
		overflow: hidden;
	}
	
	.tp-news-loop-img img {
		position: relative;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
	
	.tp-news-loop-text {
		position: absolute;
		top: 0;
		left: 140px;
		width: 190px;
		height: auto;
	}
	
	.tp-news-loop-text span {
		display: table;
		position: relative;
		padding: 3px 10px;
		margin: 0 5px 4px 0;
		font-size: 10px;
		font-weight: normal;
		letter-spacing: 0.5px;
		line-height: 10px;
		color: #fff;
		background: #8DC031;
		border-radius: 30px;
		float: left;
	}
	
	.tp-news-loop-text h3 {
		margin: 4px 0 6px 0;
		font-size: 12px;
		letter-spacing: 1px;
		line-height: 18px;
		color: #6E4D32;
	}
	
	.tp-news-loop-text p {
		display: none;
	}
	
	.tp-news-loop-text time {
		display: block;
		position: relative;
		margin: 4px 0 0 0;
		font-size: 10px;
		font-weight: normal;
		letter-spacing: 0.5px;
		line-height: 10px;
		text-align: left;
		color: #8DC031;
	}
	
	/*サービス案内*/
	#tp-ser {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0 30px 0;
	}
	
	.tp-ser-btn {
		position: relative;
		width: 220px;
		margin: 0 auto 0 auto;
	}
	
	.tp-ser-p {
		line-height: 20px;
		text-align: center;
		margin: 30px auto 20px auto;
	}
	
	.tp-ser01 {
		position: relative;
		width: 340px;
		height: auto;
		margin: 0 auto 40px auto;
	}
	
	.tp-ser02 {
		position: relative;
		width: 340px;
		height: auto;
		margin: 0 auto 40px auto;
	}
	
	.tp-ser-img {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-img01 {
		z-index: 1;
		display: block;
		position: relative;
		height: auto;
	}
	
	.tp-ser-img02 {
		z-index: 2;
		display: block;
		position: absolute;
		width: 120px;
		height: auto;
	}
	
	.tp-ser-img03 {
		z-index: 2;
		display: block;
		position: absolute;
		width: 120px;
		height: auto;
	}
	
	.tp-ser01 .tp-ser-img .tp-ser-img01 {
		width: 290px;
		margin: 0 0 50px auto;
	}
	
	.tp-ser01 .tp-ser-img .tp-ser-img01-1 {
		width: 260px;
		margin: 0 0 50px auto;
	}
	
	.tp-ser01 .tp-ser-img .tp-ser-img02 {
		bottom: -30px;
		left: 0;
	}
	
	.tp-ser01 .tp-ser-img .tp-ser-img03 {
		top: 30px;
		left: 0;
	}
	
	.tp-ser02 .tp-ser-img .tp-ser-img01 {
		width: 260px;
		margin: 70px auto 30px 0;
	}
	
	.tp-ser02 .tp-ser-img .tp-ser-img02 {
		top: -30px;
		right: -20px;
	}
	
	.tp-ser-onpu01 {
		display: none;
	}
	
	.tp-ser-onpu02 {
		z-index: 2;
		position: absolute;
		bottom: -30px;
		left: 0;
		width: 120px;
		height: auto;
	}
	
	.tp-ser-onpu03 {
		z-index: 2;
		position: absolute;
		top: -50px;
		left: -10px;
		width: 90px;
		height: auto;
	}
	
	.tp-ser-text {
		z-index: 3;
		position: relative;
		width: 320px;
		height: auto;
		margin: 0 auto 0 auto;
		padding: 30px 30px 20px 30px;
		box-shadow: 2px 3px 15px rgba(0,0,0,0.16);
		background: rgba(255,255,255,0.90);
		border-radius: 5px 60px 5px 60px;
		box-sizing: border-box;
	}
	
	.tp-ser-text::before {
		content: "";
		position: absolute;
		top: 5px;
		left: 5px;
		width: 100%;
		height: 100%;
		border: solid 1px #8ED0D0;
		border-radius: 5px 60px 5px 60px;
	}
	
	.tp-ser-text h3 {
		font-size: 16px;
		letter-spacing: 2px;
		line-height: 16px;
		text-align: left;
	}
	
	.tp-ser-text p {
		z-index: 0;
		position: relative;
		margin: 15px 0 10px 0;
		line-height: 20px;
	}
	
	.tp-ser-text .tp-btn {
		position: relative;
		width: 180px;
		margin: 0 auto;
	}
	
	.tp-ser-p-icon01 {
		z-index: -1;
		position: absolute;
		top: -10px;
		right: -15px;
		width: 100px;
		height: auto;
	}
	
	.tp-ser-p-icon02 {
		z-index: -1;
		position: absolute;
		top: 10px;
		right: -15px;
		width: 100px;
		height: auto;
	}
	
	.tp-ser-p-icon03 {
		z-index: -1;
		position: absolute;
		top: 10px;
		right: -15px;
		width: 100px;
		height: auto;
	}
	
	.tp-ser-text-img01 {
		z-index: 1;
		position: absolute;
		top: -64px;
		right: -20px;
		width: 110px;
		height: auto;
	}
	
	.tp-ser-text-img01 img {
		z-index: -1;
		position: absolute;
		top: -4px;
		left: 0;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-text-img02 {
		z-index: 1;
		position: absolute;
		top: -90px;
		right: -17px;
		width: 85px;
		height: auto;
	}
	
	.tp-ser-text-img02 img {
		z-index: -1;
		position: absolute;
		top: -2px;
		left: -2px;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-text-img03 {
		z-index: 1;
		position: absolute;
		top: -50px;
		right: -30px;
		width: 128px;
		height: auto;
	}
	
	.tp-ser-text-img03 img {
		z-index: -1;
		position: absolute;
		top: 0;
		left: -18px;
		width: 100%;
		height: auto;
	}
	
	.tp-ser-text-img-p {
		font-size: 10px;
		font-weight: normal;
		line-height: 13px!important;
		text-align: center;
	}
	
	/*ご家族様の声*/
	#tp-koe {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0 30px 0;
		background-image: url(/wp-content/uploads/2022/07/toppage_32_smp.png);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	
	.tp-koe-p {
		line-height: 20px;
		text-align: center;
		margin: 30px auto 30px auto;
	}
	
	#tp-koe .tp-btn {
		position: relative;
		width: 200px;
		margin: 40px auto 0 auto;
	}
	
	.tp-koe-slider {
		width: 340px;
		margin: 0 auto;
	}
	
	.tp-koe-slider li {
		position: relative;
		width: 340px;
		height: auto;
		padding: 20px 15px;
		background: #fff;
		box-sizing: border-box;
		list-style: none;
	}
	
	.tp-koe-slider .tp-koe-img {
		width: 100%;
		height: auto;
	}
	
	.tp-koe-slider .slick-slide {
		transform: scale(0.7);
		transition: all .5s;
		opacity: 1;
	}
	
	.tp-koe-slider .slick-slide.slick-center{
		transform: scale(1);
		opacity: 1;
	}
	
	#tp-koe .slick-dots {
		bottom: -30px;
	}
	
	#tp-koe .slick-dots li {
		background: rgba(255,255,255,0.00)!important;
	}
	
	#tp-koe .slick-dots li button {
		font-size: 20px;
	}
	
	#tp-koe .slick-dots li button:before {
		font-size: 60px;
	}
	
	#tp-koe .slick-dots .slick-active button {
		background: rgba(255,255,255,0.00);
	}
	
	#tp-koe .slick-prev:before {
		left: 0;
		width: 30px;
		height: 30px;
	}
	
	#tp-koe .slick-next:before {
		right: 0;
		width: 30px;
		height: 30px;
	}
	
	#tp-koe .slick-prev:before {
		font-size: 20px;
		line-height: 26px;
	}
	
	#tp-koe .slick-next:before {
		font-size: 20px;
		line-height: 26px;
	}
	
	.tp-koe-text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 5px auto;
	}
	
	.tp-koe-text img {
		display: block;
		position: relative;
		width: 50px;
		height: auto;
		margin: 0 auto 0 0;
	}
	
	.tp-koe-text span {
		display: table;
		position: absolute;
		top: 8px;
		left: 60px;
		padding: 3px 8px;
		font-size: 11px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 11px;
		text-align: center;
		color: #fff;
		background: #8DC031;
		border-radius: 30px;
	}
	
	.tp-koe-text h3 {
		position: absolute;
		top: 30px;
		left: 60px;
		font-size: 12px;
		letter-spacing: 1px;
		line-height: 12px;
	}
	
	/*バナー*/
	#tp-ban {
		position: relative;
		width: 260px;
		height: auto;
		margin: 40px auto;
	}
	
	#tp-ban a {
		display: block;
		position: relative;
		width: 260px;
		height: auto;
	}
	
	#tp-ban a:nth-child(1) {
		margin: 0 auto 30px auto;
	}
	
	#tp-ban a img {
		position: relative;
		width: 100%;
		height: auto;
		border-radius: 0 20px 0 20px;
		box-shadow: 3px 4px 4px rgba(0,0,0,0.16);
	}
	
	/*採用情報*/
	#tp-rec {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0 50px 0;
		background: rgba(183,223,223,0.30);
	}
	
	.tp-rec01 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 30px auto 0 auto;
	}
	
	.tp-rec-img {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	.tp-rec-img img:nth-child(1) {
		z-index: 0;
		display: block;
		position: relative;
		width: 80%;
		height: auto;
		margin: 0 0 80px auto;
	}
	
	.tp-rec-img img:nth-child(2) {
		z-index: 1;
		display: block;
		position: absolute;
		top: 90px;
		left: 0;
		width: 27%;
		height: auto;
	}
	
	.tp-rec-img img:nth-child(3) {
		display: block;
		position: absolute;
		bottom: -70px;
		right: 30%;
		width: 90px;
		height: auto;
	}
	
	.tp-rec-img img:nth-child(4) {
		z-index: 1;
		display: block;
		position: absolute;
		top: -50px;
		left: 0;
		width: 130px;
		height: auto;
	}
	
	.tp-rec-text {
		z-index: 3;
		position: relative;
		width: 320px;
		height: auto;
		margin: 0 auto;
		padding: 30px 30px 20px 30px;
		box-shadow: 2px 3px 15px rgba(0,0,0,0.16);
		background: rgba(255,255,255,0.90);
		border-radius: 5px 60px 5px 60px;
		box-sizing: border-box;
	}
	
	.tp-rec-text::before {
		content: "";
		position: absolute;
		top: 5px;
		left: 5px;
		width: 100%;
		height: 100%;
		border: solid 1px #8ED0D0;
		border-radius: 5px 60px 5px 60px;
	}
	
	.tp-rec-text h3 {
		font-size: 18px;
		letter-spacing: 2px;
		line-height: 24px;
		text-align: left;
	}
	
	.tp-rec-text p {
		z-index: 0;
		position: relative;
		margin: 15px 0 10px 0;
		line-height: 20px;
	}
	
	.tp-rec-text p img {
		z-index: -1;
		position: absolute;
		top: 30px;
		right: -15px;
		width: 100px;
		height: auto;
	}
	
	.tp-rec-text .tp-btn {
		position: relative;
		width: 200px;
		margin: 0 auto 0 auto;
	}
	
	.tp-rec-text-img01 {
		z-index: 1;
		position: absolute;
		top: -50px;
		right: 10px;
		width: 60px;
		height: auto;
	}
	
	.tp-rec-text-img02 {
		z-index: 1;
		position: absolute;
		bottom: -40px;
		right: -30px;
		width: 110px;
		height: auto;
	}
	
	
	

}