@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');

/* BODY
---------------------------------------------------- */
body {
	color:#333;
	font-family:'Kosugi Maru',"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ",  "游ゴシック体","Yu Gothic", YuGothic, Verdana, sans-serif !important;
	background:#fff ;
	}
p {
	word-break: break-all !important;
}


/* LINK
---------------------------------------------------- */
a{
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	transition: 0.2s;
	}
a:link		{ color:#006600; 	text-decoration:none ; }
a:visited	{ color:#006600; 	text-decoration:none; }
a:hover		{ color:#92e57f; text-decoration:none;}
a:active	{ color:rgba(0,0,0,0.3); 	text-decoration:none; }


.small{font-size:80%;}
strong{
	font-weight:bolder;
	}

/* BODY BASE
---------------------------------------------------*/
@media screen and (min-width: 980px){
	
	body {
		font-size:16px;
		line-height:1.5;
		letter-spacing:0.8px;
		}
	.forSP{ display:none; }
	.forPC{ display:block;}
	.forTAB{ display:none;}

}
@media screen and (min-width: 641px) and (max-width:979px){
	
	body {
		font-size:16px;
		line-height:1.5;
		letter-spacing:0.8px;
		}
	.forSP{ display:none; }
	.forPC{ display:none;}
	.forTAB{ display:block;}

}
@media screen and (max-width: 640px){
	body {
		font-size:16px;
		line-height:1.57;
		letter-spacing:1px;
		}
	.forPC{ display:none;}
	.forSP{ display:block; }
	.forTAB{ display:none;}

	html {
		-webkit-overflow-scrolling: touch;
	}
}


/* CONTENTS
---------------------------------------------------*/
#wrapper{
	position:relative;
	}

@media screen and (min-width: 641px){
	.contents{
		max-width:1180px;
		width:92%;
		margin:0px auto 0px auto;
		position:relative;
	}
	#houkatu .contents{
		width:95%;
	}
}
@media screen and (max-width: 640px){
	.contents{
		width:88%;
		margin:0 auto 0px auto;
		position:relative;
	}
	#houkatu .contents{
		width:100%;
		margin-top:5%;
	}
}
#houkatu .contents h2{ font-size:200%; font-weight:700; text-align:center; color:#2669e1; line-height:1;}
#houkatu .contents h5{ font-size:120%; font-weight:500; text-align:center;}
#houkatu .contents h6{ font-size:100%; font-weight:500; text-align:center; line-height:1.2;}

/* PAGE TITLE
---------------------------------------------------*/
#houkatu #titleArea h1{
	line-height:1.1;
	font-weight:bolder;
	color:#216935;
}
#houkatu #titleArea h1 span{
	font-size:55%;
	font-weight:bolder;
}
@media screen and (min-width: 641px){
	#titleArea{
		width:100%;
		height:170px;
		position:relative;
		background:#98b9d2 ;
		margin-top:127px;
		color:#fff;
		text-align:left;
		font-size:36px;
		padding-top:50px;
		padding-left:20px;
	}
	
	#aboutus #titleArea{
		background:#98b9d2 url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 270px;
	}
	#recruit #titleArea{
		background:#a7be6b url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 270px;
	}
	#contact #titleArea{
		background:#b5a3c8 url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 270px;
	}
	#houkatu #titleArea{
		background:#d2e9d6 url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 270px;
	}
}
@media screen and (max-width: 640px){
	#titleArea{
		width:100%;
		height:150px;
		position:relative;
		background:#98b9d2 ;
		color:#fff;
		text-align:left;
		font-size:25px;
		padding-top:100px;
		padding-left:15px;
	}
	#aboutus #titleArea{
		background:#98b9d2 url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 70px;
	}
	#recruit #titleArea{
		background:#a7be6b url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 80px;
	}
	#contact #titleArea{
		background:#b5a3c8 url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 80px;
	}
	#houkatu #titleArea{
		background:#d2e9d6 url("../images/tree.png") right 10% bottom 15% no-repeat;
		background-size:auto 80px;
		padding-top:80px;
	}
}

@media screen and (max-width: 340px){
	#titleArea{
		font-size:23px;
		padding-top:80px;
	}
}

/* CATEGORY TITLE
---------------------------------------------------*/
@media screen and (min-width: 641px){
	.cateTitle{
	text-align:center;
	font-weight:400;
	font-size:20px;
	color:#fff;
	letter-spacing:4px;
	margin:90px auto 30px auto;
	background:url("../images/subtitle_bg.png") no-repeat;
	background:url("../images/subtitle_bg.svg") no-repeat;
	background-size:100% auto;
	width:200px;
	height:72px;
	padding:9px 0 0 0 ;
	}
	
}
@media screen and (max-width: 640px){
	.cateTitle{
	text-align:center;
	font-weight:bolder;
	font-size:16px;
	color:#fff;
	letter-spacing:4px;
	margin:20% auto 13% auto;
	background:url("../images/subtitle_bg.png") no-repeat;
	background:url("../images/subtitle_bg.svg") no-repeat;
	background-size:100% auto;
	width:145px;
	height:34px;
	padding:5px 0 0 0 ;
	}
}
	#aboutus .cateTitle{
	background:url("../images/subtitle_bg_b.png") no-repeat;
	background:url("../images/subtitle_bg_b.svg") no-repeat;
	background-size:100% auto;
	}
	
	#recruit #kaigo.cateTitle{
	background:url("../images/subtitle_bg_g.png") no-repeat;
	background:url("../images/subtitle_bg_g.svg") no-repeat;
	background-size:100% auto;
	}
	#recruit #kango.cateTitle{
	background:url("../images/subtitle_bg_g2.png") no-repeat;
	background:url("../images/subtitle_bg_g2.svg") no-repeat;
	background-size:100% auto;
	}
	#recruit #houkatu.cateTitle{
	background:url("../images/subtitle_bg_g3.png") no-repeat;
	background:url("../images/subtitle_bg_g3.svg") no-repeat;
	background-size:100% auto;
	}
	#contact .cateTitle{
	background:url("../images/subtitle_bg_p.png") no-repeat;
	background:url("../images/subtitle_bg_p.svg") no-repeat;
	background-size:100% auto;
	}
/* pagetop
---------------------------------------------------*/

/* footer
---------------------------------------------------*/
footer{
	width:100%;
	position:relative;
	z-index:10;
	background:#2c6e2c url("../images/footer_bg.jpg") center top no-repeat;
	text-align:center;
	margin-top:100px;
	}
#index footer{ margin-top:0;}

#footerContents{
	width:92%;
	max-width:600px;
	margin:0 auto;
	color:#acc7ac;
	position:relative;
	padding:30px 0 20px 0;
	}
#footerLogo{
	background:url("../images/logo.png") no-repeat;
	background:url("../images/logo.svg") no-repeat;
	background-size:100% auto;
	width:180px;
	height:105px;
	margin:0 auto;
	text-indent:-9999px;
	opacity:0.8;
}
#footerContents a:link{
	color:#C8DFC8 !important;
	}
#footerContents p{
	margin:0 auto;
	width:100%;
	font-size:14px;
	line-height:1.25;
	letter-spacing:1px;
}
#footerContents p em{
	font-size:23px;
	letter-spacing:2px;
}
.credit{
	font-size:12px;
	color:rgba(0,0,0,1);
}

@media screen and (max-width: 640px){
	
footer{
	padding:3% 0 0% 0;
	}

#footerContents p{
	font-size:12px;
	}
.credit{
	font-size:11px;
	}

}

.telButton{
	width:280px;
	display:block;
	position:relative;
	margin:30px auto 5% auto;
	border-radius: 20px;
	background:#006600 url(../images/tel.svg) 15px center no-repeat;
	background-size:33px auto;
	padding:15px 20px 15px 55px;
	text-align:center;
	color:#fff !important;
	font-size:28px;
	letter-spacing: 1px;
	font-family: Arial, Helvetica, sans-serif;
	cursor:pointer;
}
@media screen and (max-width: 640px){
	.telButton{
		width:250px;
		display:block;
		position:relative;
		margin:30px auto 5% auto;
		border-radius: 18px;
		background:#006600 url(../images/tel.svg) 15px center no-repeat;
		background-size:27px auto;
		padding:12px 12px 12px 55px;
		text-align:center;
		color:#fff !important;
		font-size:24px;
		letter-spacing: 1px;
		font-family: Arial, Helvetica, sans-serif;
		cursor:pointer;
	}
}

/* LOADING
---------------------------------------------------*/
#loading{
    position: absolute;
    margin:auto;
    top:0;
    left:0;
    right:0;
    bottom:0;
    width:100px;
    height:76px;
    display:block;
	background:url("../images/loading.png") no-repeat;
	background-size:100% auto;
    z-index: 10001 !important;
	}
#loading img{
    width:100%;
	}
#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
   background:#1d6c1d;
    z-index: 10000 !important;
}

@media screen and (max-width: 640px){
	#loading{
    width:80px;
    height:78px;
	background:url("../images/loading.png") no-repeat;
	background-size:100% auto;
}
}

/* FUWAFUWA
----------------------------------------------------- */
.fuwafuwa {

-webkit-animation:fuwafuwa 2s infinite linear alternate;
animation:fuwafuwa 2s infinite linear alternate;

}

@-webkit-keyframes fuwafuwa {
0% { transform: translateY(0) }
  33.33333% { transform: translateY(-8px) }
  66.66667% { transform: translateY(0) }
  100% { transform: translateY(-8px) }
}

@keyframes fuwafuwa {
0% { transform: translateY(0) }
  33.33333% { transform: translateY(-8px) }
  66.66667% { transform: translateY(0) }
  100% { transform: translateY(-8px) }
}




/* MODAL
----------------------------------------------------- */
@media screen and (min-width: 769px){
	.modal{
		padding:30px;
		margin:20px;
		background:#fff;
		border-radius: 30px;
		box-shadow:0px 0px 20px rgba(0,0,0,0.2);
		width:500px;
		min-height:300px;
	}
	
	.modal ul{
		margin-top:40px;
	}
	.modal li{
		padding:10px 0;
	}
	.modal a{
		background:url("../images/gaibulink.png") left top 4px no-repeat;
		background:url("../images/gaibulink.svg") left top 4px no-repeat;
		background-size:20px auto;
		font-size:115%;
		width:220px;
		height:32px;
		padding-left:26px;
		display:block;
		margin:0 auto;
	}
	.modal h3{
		width:100%;
		height:70px;
		background:#d2e9d6 url("../images/icon01.png") 17px 23px no-repeat;
		background:#d2e9d6 url("../images/icon01.svg") 17px 23px no-repeat;
		background-size:22px auto;
		color:#216935;
		font-size:120%;
		border-radius: 12px; 
		-webkit-border-radius: 12px;
		-moz-border-radius: 12px;
		padding:19px 0 0 45px;
		margin-bottom:15px;
		font-weight:700;
	}
	.modal h3 .small{
		font-size:70%;
	}
}
@media screen and (max-width: 768px){
	.modal{
		padding:30px;
		background:#fff;
		width:100%;
		height:100%;
	}
	
	.modal ul{
		margin-top:40px;
	}
	.modal li{
		padding:20px 0;
	}
	.modal a{
		background:url("../images/gaibulink.png") left top 4px no-repeat;
		background:url("../images/gaibulink.svg") left top 4px no-repeat;
		background-size:20px auto;
		font-size:115%;
		width:220px;
		height:32px;
		padding-left:26px;
		display:block;
		margin:0 auto;
	}
	.modal h3{
		width:100%;
		height:70px;
		background:#d2e9d6 url("../images/icon01.png") 17px 23px no-repeat;
		background:#d2e9d6 url("../images/icon01.svg") 17px 23px no-repeat;
		background-size:22px auto;
		color:#216935;
		font-size:120%;
		border-radius: 12px; 
		-webkit-border-radius: 12px;
		-moz-border-radius: 12px;
		padding:19px 0 0 45px;
		margin-bottom:40px;
		margin-top:30px;
		font-weight:700;
		line-height:1;
	}
	.modal h3 .small{
		font-size:70%;
	}
}


/* EFFECT
----------------------------------------------------- */

.effect01{
	-webkit-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;
	transition: all 0.4s linear;
	transition-delay: .2s !important;
	margin-left:-50px;
	opacity:0;
	}
.effect02 {
	-webkit-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;
	transition: all 0.4s linear;
	transition-delay: .2s !important;
	margin-right:-50px;
	opacity:0;
	}
.effect03 {
	-webkit-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;
	transition: all 0.4s linear;
	transition-delay: .2s !important;
	opacity:0;
	}
.effect01.anim{
	opacity:1 !important; margin-left:0px; }
.effect02.anim{
	opacity:1 !important; margin-right:0px; }
.effect03.anim{
	opacity:1 !important; margin-top:0px; }


#nyusatu{
	height:5vw;
	position:absolute;
	top:88vh;
	left:20px;
}
#nyusatu img{
	height:100%;
	width:auto;
}

@media screen and (max-width: 768px){
	#nyusatu{
		width:17vw;
		height:auto;
		position:absolute;
		top:85vh;
		left:20px;
	}
	#nyusatu img{
	height:auto;
	width:100%;
}
}