/* -------------------------------------
Browser：IE11 over
-------------------------------------
★フォントはemか%か
共通
テンプレ
トップ
中ページ
-------------------------------------*/
/** ================================================================================
		共通
================================================================================ **/

/* -------------------------------------
文字サイズ 標準・大
-------------------------------------*/
body.fontsize{
	font-size: 18px;
}

/* -------------------------------------
タイトル
-------------------------------------*/
.titZ{
	display: flex;
	overflow: hidden;
	width: 100%;
	height: 200px;
	background-image:url(../images/bg-flower4.jpg);
	background-position:  center center;
	background-size: cover;
	background-repeat: no-repeat;
	color: #fff;
	text-shadow: 3px 0 10px rgba(33, 94, 5,1.0),0 3px 10px rgba(33, 94, 5,1.0);

	align-items: center;
}
.titZ h2{
	margin: 0 auto;
	padding-left: 300px;
	width: 980px;
	font-size: 2.5em;
	font-family: "logotype";
}

.titA{
	margin-bottom: 10px;
	color: #00b55c;
	font-size: 2em;
}
.titA + p{
	margin-top: 20px;
}
*.flower{
	display: inline-block;
	background: url(../images/tit_bg.png) no-repeat right top;
	padding: 20px 80px 50px 15px ;
}

.titB{
	margin-bottom: 10px;
	color: #003591;
	font-size: 2em;
}
.titC{
	margin-bottom: 10px;
	font-size: 1.2em;
	font-family: "logotype";
}
.titD{
	padding: 15px;
	background: #00b55c;
	color: #fff;
	font-size: 1.5em;
}
.titE{
	padding: 15px;
	background: #003591;
	color: #fff;
	font-size: 1.5em;
}
.titF{
	margin-bottom: 10px;
	color: #ff9700;
	font-size: 2em;
}



@media screen and (max-width: 768px) {

	.titZ{
		width: 100%;
		height: 142px;
		background-size: auto 150%;
	}
	.titZ h2{
		margin: 0;
		padding-left: 90px;
		width: 100%;
		font-size: 1.5em;
	}
	
	.titA,
	.titB,
	.titF{
		font-size: 1.5em;
	}
	.titC{
		font-size: 1.2em;
	}
	.titD,
	.titD{
		font-size: 1.2em;
	}
	
	*.flower{
		background-size: auto 80px;
		padding: 15px 50px 40px 0 ;
	}

}

/* -------------------------------------
ボタン
-------------------------------------*/
.btnA,
.btnB,
.btnC{
	position: relative;
	display: block;
	margin: 30px auto;
	padding: 15px 40px 15px 15px;
	width: 320px;
	text-align: center;
	font-size: 1.0em;
	cursor: pointer;
}
.btnA:after,
.btnB:after,
.btnC:after{
	position: absolute;
	top: 0;
	right: 15px;
	bottom: 0;
	margin: auto 0;
	height: 1em;
	content: "\e5cc";
	font-family: 'Material Icons';
	line-height: 1.0;
}
.btnA{
	border: 1px solid #00b55c;
	background: #00b55c;
	color: #fff;
}.btnA:hover{
	background: #fff;
	color: #00b55c;
}
.btnB{
	border: 1px solid #003591;
	background: #003591;
	color: #fff;
}.btnB:hover{
	background: #fff;
	color: #003591;
}
.btnC{
	border: 1px solid #ff9700;
	background: #ff9700;
	color: #fff;
}.btnC:hover{
	background: #fff;
	color: #ff9700;
}

@media screen and (max-width: 768px) {
	.btnA,
	.btnB,
	.btnC{
		width: 90%;
	}
}

/* -------------------------------------
背景
-------------------------------------*/
.bg-w{
	background: #ffffff;
}

.bg-b{
	background: #c4e8fe;
}

/* -------------------------------------
カテゴリ
-------------------------------------*/
em{
	display: inline-block;
	padding: 3px;
	min-width: 100px;
	text-align: center;
	font-size: 0.9em;
	margin: 0 5px 0 0;
}
em.news{
	background: #00b55c;
	color: #ffffff;
}
em.blog{
	background:  #003591;
	color: #fff;
}

time{
font-size: 12px;
}


/** ================================================================================
		テンプレ
================================================================================ **/
.seo{
	padding: 3px;
	background: #003591;
	font-size: 0.8em;
}
.seo h1{
	margin: 0 auto;
	width: 980px;
	color: #fff;
	text-align: right;
}

@media screen and (max-width: 768px) {
	.seo{
		font-size: 0.7em;
	}
	.seo h1{
		width: 100%;
	}
}

header{
	position: fixed;
	top: 0;
	left: calc( ( 100% - 980px ) / 2 );
	z-index: 1000;
	padding: 15px 20px 20px;
	min-height: 768px;
	width: 250px;
	height: 100vh;
	background: rgba(255,255,255,0.8);
	text-align: center;
}
@media screen and (max-width: 980px) {
	header{
		left: 0;
	}
}
body.fontsize header{
	padding: 20px 15px 15px;
}
/**nav**/
header ul{
	margin: 15px 0;
	border-top: 1px dotted #aaa;
}
header ul > li{
	border-bottom: 1px dotted #aaa;
}
header ul > li a{
	display: block;
	padding: 8px 0;
}
header ul > li a:hover{
	color: #6395ff;
}
header dl dt,
header dl dd{
	display: inline-block;
	margin: 0 0 10px;
	padding: 0 10px;
	border-right:1px solid #aaa;
}
header dl dd{
	display: inline-block;
	color: #6395ff;
	cursor: pointer;
}
header .menu a{
	display: block;
	margin: 0 0 10px;
	padding: 5px;
	color: #fff;
	font-size: 1.1em;
}
header .menu a[href*="contact"]{
	background: #ff9700;
}
header .menu a[href*="recruit"]{
	background: #00b55c;
}

header .info{
	margin: 15px 0 0;
	font-size: 0.75em;
}
header .info a{
	color: #ff9700;
	font-weight: 700;
	font-size: 2em;
}

@media screen and (max-width: 768px) {
	header{
		position: fixed;
		top: 0;
		left: 0;
		padding: 10px;
		min-height: auto;
		width: 80px;
		height: auto;
	}
	header.on{
		width: 100%;
		background: rgba(255,255,255,0.9);
	}
	body.fontsize header{
		padding: 10px;
	}
	header h1 img{
		max-width: 60px;
	}
	header #menu{
		margin: 20px auto 0;
		width: 60px;
		height: 60px;
		border-radius: 3px;
		background: #003591;
		color: #ffffff;
		cursor: pointer;
	}
	header #menu:before{
		display: block;
		content: "\e5d2";
		font-size: 40px;
		font-family: 'Material Icons';
		line-height: 1.0;

		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	header #menu:after{
		display: block;
		content: "メニュー";
		font-size: 10px;
		line-height: 1.0;
	}
	header.on #menu{
		position: absolute;
		top: 13px;
		right: 10px;
		margin: 0;
	}
	header.on #menu:before{
		content: "\e5cd";
	}
	header.on #menu:after{
		content: "閉じる";
	}
	
	header nav{
		display: none;
		height: 0;
	}
	header.on nav{
		height: auto;
	}
	header ul{
		display: flex;

		flex-wrap: wrap;
	}
	header ul li{
		padding: 0 20px;
		width: 50%;
		font-size: 0.9em;
	}
	header ul li:nth-child(2n-1){
		border-right: 1px dotted #aaa;
	}
}


#PageTopBtn {
	position: fixed; 
	bottom: 10px;
	right: 10px;
}
#PageTopBtn a {
	display: block;
	text-decoration: none;
	color: #fff;
	background: rgba( 51, 51, 51, 0.5);
	text-align: center;
	width: 50px;
	height: 50px;
	line-height: 50px;
}#PageTopBtn a:before{
	content: "\e316";
	font-family: 'Material Icons';
	font-size: 30px;
}
#PageTopBtn a:hover {
	text-decoration: none;
	background: rgba(51, 51, 51, 1.0);
}

footer{
	background: #00b55c;
	font-size: 0.9em;
}
footer .sitemap{
	display: flex;
	margin: 0 auto;
	padding:30px 0 30px 270px;
	width: 980px;
	color: #fff;

	flex-wrap: wrap;
}
footer .address h1{
	margin: 0 0 10px;
	font-size: 1.7em;
}
footer .address p{
	margin: 0 0 15px;
}
footer nav{
	margin: 0 0 0 30px;
}
footer nav ul{
	display: flex;
	height: 14em;

	flex-flow: column wrap;
}footer nav ul li{
	margin:0 30px 0 0;
	width: 12em;
}
footer .linkbnr{
	width: 100%;
}
footer .linkbnr a{
	display: inline-block;
	margin: 10px 10px 10px 0;
	width: 150px;
	background: #ffffff;
}
footer .linkbnr a img{
	width: 100%;
}
.copyright{
	margin: 0 auto;
	padding: 3px;
	background: #003591;
	color: #fff;
	text-align: center;
	font-size: 0.8em;
}
@media screen and (max-width: 768px) {
	footer .sitemap{
		display: block;
		padding:30px 0;
		width: 90%;
	}
	footer .address h1{
		font-size: 1.5em;
	}
	footer nav{
	}
	footer nav ul{
		display: block;
		margin: 0 auto 20px;
		height: auto;
	}footer nav ul li{
		margin:0 0 10px;
		width: 100%;
	}footer nav ul li a{
		text-decoration: underline;
	}
	footer .linkbnr{
	}
	footer .linkbnr a{
		margin: 10px auto;
		width: 200px;
	}
	footer .linkbnr a img{
		width: 100%;
	}
}

.main{
	margin: 0 auto;
	padding: 50px 0 50px 270px;
	width: 980px;
}

.main + .main{
	padding-top: 0;
}

@media screen and (max-width: 768px) {
	.main{
		margin: 0 auto;
		padding: 25px 0;
		width:  90%;
	}
}

/** ================================================================================
		トップ
================================================================================ **/
.hero{
	overflow: hidden;
	min-height: 630px;
	width: 100%;
	background-image:url(../images/top_main2.jpg);
	background-position: center bottom;
	background-size: cover;
	background-repeat: no-repeat;
	color: #fff;
}
.hero h2{
	margin: 40px auto 20px;
	padding-left: 300px;
	width: 980px;
	font-size: 2.6em;
	font-family: "logotype";
}
.hero p{
	margin: 0 auto;
	padding-left: 300px;
	width: 980px;
	font-size: 2em;
	font-family: "logotype";

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

@media screen and (max-width: 768px) {
	.hero{
		min-height: 50vw;
		width: 100%;
		text-shadow: 1px 0 20px #003591,-1px 0 20px #003591;
	}
	.hero h2{
		margin: 20px auto;
		padding-left:100px;
		padding-right: 15px;
		width: 100%;
		font-size: 1.7em;
	}
	.hero p{
		margin: 0 auto 50px;
		padding-left: 100px;
		width: 100%;
		font-size: 1.3em;
	}
}

/** -------------------------------------
選ばれる理由
-------------------------------------**/
.top-reason{
	margin: 0 auto;
	padding: 10px 0 50px 250px;
	width: 980px;
}
.reason-list{
}
.reason-list li p a{
	display: inline-block;
}
.reason-list li{
	margin: 0;
	padding: 30px;
	width: 50%;
}
.reason-list  li:nth-child(4n-2),
.reason-list  li:nth-child(4n-1){
	background: #f5f0e0;
}
.reason-list .title{
	display: flex;
	flex-direction: column;
	min-height: 300px;
	background: url(../images/bg-flower.png) no-repeat center center;
	color: #00b55c;
	text-align: center;
	font-size: 3em;

	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.reason-list .title small{
	font-size: 0.7em;
}
.reason-list h4{
	margin: 0 0 10px;
	color: #00b55c;
	font-size: 1.25em;
}
.reason-list figure{
	overflow: hidden;
	margin:  0 0 10px;
	width: 305px;
	height: 186px;
}
.reason-list figure img{
	width: 100%;
}

@media screen and (max-width: 768px) {
	.top-reason{
		margin: 0 auto;
		padding: 10px 0;
		width: 100%;
	}
	.reason-list li{
		width: 100%;
	}
	.reason-list  li:nth-child(4n-2),
	.reason-list  li:nth-child(4n-1){
		background: none;
	}.reason-list  li:nth-child(even){
		background: #f5f0e0;
	}
	.reason-list .litit{
		padding: 0;
	}
	.reason-list .title{
		padding: 0;
		min-height: 300px;
		font-size: 2.5em;
	}
	.reason-list figure{
		width: 100%;
		height: auto;
	}
}

.reason-list.detail.box2C{
	display: block;
}
.reason-list.detail.box2C li{
	width: 100%;
	line-height: 1.7;
}
.reason-list.detail  li:nth-child(4n-2),
.reason-list.detail  li:nth-child(4n-1){
	background: none;
}.reason-list.detail  li:nth-child(even){
	background: #f5f0e0;
}
.reason-list.detail.box2C li.title{
	height: 330px;
}
.reason-list.detail li h4{
	margin: 0 0 15px;
}
.reason-list.detail li h4 br{
	display: none;
}.reason-list.detail li figure{
	float: right;
	width: 50%;
	margin: 0 0 15px 20px;
}

@media screen and (max-width: 768px) {
	.reason-list.detail li figure{
		float: none;
		width: 100%;
		margin: 0 0 10px;
	}
	.reason-list.detail.box2C li.title{
		height: 330px;
	}
}

/** -------------------------------------
施設のご案内
-------------------------------------**/
.top-inst{
	padding: 30px 0 0;
	background: #c4e8fe;/*url(../images/bg-flower2.jpg) no-repeat center center;*/
	background-size: cover;
}

.frameA{
	position: relative;
	display: flex;
	margin: 50px auto;
	background: #fff;
}
.frameA figure{
	overflow: hidden;
	width: 270px;
	height: auto;
}
.frameA figure img{
	width: 100%;
	height: auto;
}
.frameA p{
	display: flex;
	padding: 0 15px;

	flex: 1;
	align-items: center;
	justify-content: flex-start;
}
.frameA:before{
	position: absolute;
	top: -15px;
	left: -15px;
	display: block;
	width: 100px;
	height: 100px;
	border: 1px solid #00b55c;
	border-radius: 50%;
	background: #fff;
	color: #00b55c;
	content: attr(data-text)"";
	text-align: center;
	font-size: 1.5em;
	line-height: 100px;
}

@media screen and (max-width: 768px) {
.frameA{
	display: block;
	margin: 50px 5%;
}
.frameA figure{
	width: 100%;
}
.frameA p{
	padding: 15px;

	flex: 1;
}
.frameA:before{
	width: 80px;
	height: 80px;
	font-size: 1.3em;
	line-height: 80px;
}
}

.frameB{
	position: relative;
	display: flex;
	margin: 0 auto 30px;
	background: #fff;
	/*border: 1px solid #003591;*/
}
.frameB figure{
	overflow: hidden;
	width: 270px;
	height: auto;
}
.frameB figure img{
	width: 100%;
	height: auto;
}
.frameB div{
	display: flex;
	padding: 0 15px;

	flex: 1;
	align-items: flex-start;
	justify-content: center;
	flex-flow: column;
}
.frameB div p{
	width: 100%;
}

@media screen and (max-width: 768px) {
.frameB{
	display: block;
	margin: 50px 5%;
}
.frameB figure{
	width: 100%;
}
.frameB div{
	padding: 15px;

	flex: 1;
}
}

/** -------------------------------------
ご入居者・ご家族の声
-------------------------------------**/
.box3C.voice-list > li{
	width: 220px;
}
.box3C.voice-list:after{
	width: 220px;
}

.voice-list i{
	display: block;
	padding: 3px 5px;
	background: #00b55c;
	color: #fff;
	font-size: 0.8em;
}
.voice-list figure{
	overflow: hidden;
	margin: 0 0 10px;
	width: 220px;
	height: 138px;
}
.voice-list figure img{
	width: 100%;
}
.voice-list h4{
	margin: 0 0 10px;
	color: #003591;
	font-weight: bold;
	font-size: 1.2em;
}
.voice-list p{
}

@media screen and (max-width: 768px) {
	.box3C.voice-list{
		width: 100%;
		}
	.box3C.voice-list > li{
		width: 100%;
	}
	.box3C.voice-list:after{
		display: none;
	}

	.voice-list figure{
		width: 100%;
		height: auto;
	}
	.voice-list h4{
		font-size: 1.1em;
	}
}

/** -------------------------------------
新着情報
-------------------------------------**/
.top-news{
	background: #f5f0e0;
}

.post-list{
	margin: 30px auto;
}
.post-list li{
	margin: 0 0 10px;
	background: #ffffff;
}

.post-list a{
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0 auto;
	padding: 15px;
	width: 100%;
}
.post-list figure{
	float: left;
	overflow: hidden;
	margin: 0 10px 0 0;
	width: 210px;
	height: 157px;
}
.post-list figure img{
	width: 100%;
	height: 100%;
}

.post-list time{
	font-size: 0.9em;
}

.post-list strong{
	display: block;
	margin: 8px 0 5px 220px;
	color: #003591;
	font-weight: bold;
}
.post-list  p{
	margin: 0 0 0 220px;
}
.post-list .category{
	margin-left: 220px;
}

.post-list.news em{
	background: #00b55c;
	color: #fff;
}
.post-list.news strong{
	color: #00b55c;
}
.post-list.blog em{
	background: #003591;
	color: #fff;
}


@media screen and (max-width: 768px) {
	.post-list{
		width: 100%;
	}
	.post-list > *{
		width: 100%;
	}
	.post-list figure{
		margin-top: 25px;
		width: 130px;
		height: 97px;
	}
	.post-list .category{
		position: absolute;
		margin: -15px 0 0;
	}
	.post-list .category em{
		margin-right: 10px;
	}
	.post-list  strong{
		display: flex;
		margin: 25px 0 0 140px;
		height: 97px;

		align-items: center;
	}

	.post-list  p{
		clear: both;
		margin: 0;
		padding: 8px 0 0;
		font-size: 14px;
	}
}

/** ================================================================================
		中ページ
================================================================================ **/
/**お問い合わせ**/
.aside{
	background: #f5f0e0;
}
.top-news + .aside{
	background: #ffffff;
}
.aside.tel{
	padding: 20px 0;
	text-align: center;
}
.aside .box2C{
	margin: 0 auto;
	text-align: center;

	align-items: center;
}
.aside .box2C > *{
	margin-bottom: 0;
}
.aside a[href*="tel"]{
	color: #ff9700;
	font-weight: bold;
	font-size: 2em;
}.aside a[href*="tel"]:before{
	display: inline-block;
	margin-right: 10px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ff9700;
	color: #fff;
	content:"\e0cd";
	text-align: center;
	font-size: 25px;
	font-family:'Material Icons';
	line-height: 40px;
}



/**施設案内**/
.floor{
	margin: 0;
	padding: 20px;
	background: #ffffff;
}
.floor p{
	margin: 0 0 30px;
}
.floor .box3C{
	text-align: center;
}
.floor .box3C > *,
.floor .box3C:after{
	width: 210px;
}
@media screen and (max-width: 768px) {
	.floor .box3C > *{
		width: 100%;
	}
	.floor .box3C > * img{
		display: block;
		margin: 5px auto;
		max-width: 400px;
		width: 100%;
	}
}

/**交通案内**/
.bnr{
	margin: 0 0 30px;
	padding: 10px 20px 20px;
	border: 1px solid #003591;
}
.bnr p{
	margin: 10px 0;
}
.bnr strong{
	color: #003591;
	font-size: 2.0em;
}

.bus,
.car{
	text-align: center;
}
.bus:before{
	display: block;
	margin: 0 auto;
	content: "\e530";
	text-align: center;
	font-size: 100px;
	font-family: 'Material Icons';
	line-height: 1.0;
}
.car:before{
	display: block;
	margin: 0 auto;
	content: "\e531";
	text-align: center;
	font-size: 100px;
	font-family: 'Material Icons';
	line-height: 1.0;
}
@media screen and (max-width: 768px) {
	.bnr{
		padding: 10px;
	}
	.bnr p{
		line-height: 1.2;
	}
	.bnr strong{
		font-size: 1.3em;
	}
}

/**リスト***/
.list{
	margin: 0 20px;
}
.list li{
	margin: 0 0 10px;
	list-style-type: disc;
}

.h-text-img ul{
	margin: 0 20px;
}
.h-text-img ul li{
	margin: 0 0 5px;
	list-style-type: disc;
}

/**リスト***/
.posi-right{
	float: right;
	width: 210px;
	height: 128px;
}
.posi-right img{
	width: 100%;
}
@media screen and (max-width: 768px) {
	.posi-right{
		float: right;
		width: 150px;
		height: 112px;
	}
}

/**リスト***/
.flow{
	margin: 30px 0;
}
.flow li:after{
	display: block;
	margin: 0 auto 10px;
	color: #00b55c;
	content: "\e5db";
	text-align: center;
	font-size: 50px;
	font-family: 'Material Icons';
}
.flow li:last-child:after{
	display: none;
}
.flow .h-text-img{
	margin: 0;
	padding: 20px;
	border: 1px solid #00b55c;
	background: #ffffff;
}

/**ノーマルテーブル***/
table.normal{
	width: 100%;
}
table.normal th,
table.normal td{
	padding: 5px;
	border: 1px solid #aaa;
}
table.normal th{
	width: 30%;
}

table.normal.w6 th{
	width: 60%;
}

@media screen and (max-width: 768px) {
	table.normal,
	table.normal tbody,
	table.normal tr,
	table.normal th,
	table.normal td,
	table.normal caption{
		display: block;
		width: 100%;
	}
	table.normal{
		border-top:1px solid #aaa;
	}
	table.normal th{
		background: #efefef;
	}
	table.normal th,
	table.normal td{
		border-top:none;
	}
	table.normal.w6{
		border-top:none;
	}
	table.normal.w6 th{
		border-top:1px solid #aaa;
		width: 100%;
	}
}

/**よくある質問**/
.qa dl {
	margin-top: 30px;
}
.qa dl dt{
	padding: 15px;
	background: #003591;
	color: #fff;
	font-size: 1.2em;
}
.qa dl dt:before{
	content: "Q.";
}
.qa dl dd.bnr:before{
	content: "A.";
}



/**スタッフ**/
.staff figure{
	text-align: center;
}
.staff img{
	border-radius: 50%;
	margin: 0 auto 10px;
}

.staff dl{
}
.staff dl dt{
	background: #003591;
	color: #fff;
	font-size: 12px;
	text-align: center;
	padding: 5px;
}
.staff dl dd{
	padding: 5px;
}

/**募集要項**/
#entry.table{
	position: relative;
}
#entry table{
	position: relative;
	z-index: 20;
	background: #fff;
}
#entry .owlet-form form table{
	z-index: 5;
}
#entry.table #val_btn {
    cursor: pointer;
    position: absolute;
    top: 13px;
    left: 27%;
    display: inline-block;
    z-index: 10;
}
#entry input[name="input[entry_title]"] {
    width: 100%;
    border: none;
    margin: 25px 0 0;
}
#entry.on input[name="input[entry_title]"] {
	border: 1px solid #aaa;
}
.owlet-form{
	opacity: 1!important;
}


@media screen and (max-width: 768px) {
	#entry.table #val_btn {
    cursor: pointer;
    position: absolute;
    top: 60px;
    left: 10px;
    display: inline-block;
    z-index: 10;
}
}
