@charset "utf-8";

* {
	box-sizing: border-box;
}

/* CSS Document */
body {
	overflow-x: initial;
	background: url(../images/bg-body.png) repeat;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,"Lucida Grande", "segoe UI", Verdana, Arial, sans-serif;
	color: #080808;
	font-size: 15px;
}

@media screen and (min-width: 768px) {
	
	body {
		padding-top: 0 !important;
	}
	
}

@media screen and (max-width: 767px) {
	
	body {
		font-size: 16px;
		line-height: 1.65;
	}
	
}

img { max-width: 100%; height: auto;}

a img { transition: transform .3s ease;}

.d-none { display: none;}


/***********************汎用クラス***************************/
.fl{float: left;}
.fr{float: right;}
.cl{clear: both;}
.tc{text-align: center;}
.tr{text-align: right;}
.fb{
	font-weight: bold !important;}

.fs-110{font-size: 110% !important;}
.fc-orange{color: #ff9900 !important;}
.fc-red{color: #E00003 !important;}
.fc-bl{color: #3bc6df !important;}

.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt25{margin-top: 25px;}
.mt30{margin-top: 30px;}
.mt35{margin-top: 35px;}
.mt40{margin-top: 40px;}
.mt45{margin-top: 45px;}
.mt50{margin-top: 50px;}
.mt55{margin-top: 55px;}
.mt60{margin-top: 60px;}
.mt65{margin-top: 65px;}
.mt70{margin-top: 70px;}
.mt75{margin-top: 75px;}
.mt80{margin-top: 80px;}
.mt100{margin-top: 100px;}

.mb5{margin-bottom: 5px!important;}
.mb10{margin-bottom: 10px!important;}
.mb15{margin-bottom: 15px!important;}
.mb20{margin-bottom: 20px!important;}
.mb25{margin-bottom: 25px!important;}
.mb30{margin-bottom: 30px!important;}
.mb35{margin-bottom: 35px!important;}
.mb40{margin-bottom: 40px!important;}
.mb45{margin-bottom: 45px!important;}
.mb50{margin-bottom: 50px!important;}
.mb55{margin-bottom: 55px!important;}
.mb60{margin-bottom: 60px!important;}
.mb65{margin-bottom: 65px!important;}
.mb70{margin-bottom: 70px!important;}
.mb75{margin-bottom: 75px!important;}


.ml15{margin-left: 15px;}
.ml20{margin-left: 20px;}
.ml50{margin-left: 50px;}
.mr10{margin-right: 10px;}

.pt10{padding-top: 10px;}
.pt20{padding-top: 20px;}
.pt30{padding-top: 30px;}
.pt40{padding-top: 40px;}
.pt60{padding-top: 60px;}
.pt70{padding-top: 70px;}
.pt80{padding-top: 80px;}
.pt90{padding-top: 90px;}
.pt100{padding-top: 100px;}
.pt130{padding-top: 130px;}

.pb20{padding-bottom: 20px;}
.pb30{padding-bottom: 30px;}
.bb-bd{
	border-bottom: 1px #C5C5C5 dotted;}
.w100{
	width: 100%;
	background: #f4f4f4;
	height: auto;
	padding: 20px 0px 20px 0px;}

.ln-160{line-height: 160% !important;}
.fs-14{font-size: 30px !important;}


.font-ss{
	font-size: 0.9em;
	color: #000;
	letter-spacing:normal !important;}

.clearfix:before,
.clearfix:after {
content: " ";
display: table;
}
.clearfix:after {
clear: both;
}
.clearfix {
zoom: 1; / for IE 6/7 only */
}

.clear{
	clear: both;}


body{}

body p, body ul li{
	line-height: 1.5em;
}

.pagetop{
	text-align: right;
	margin: 20px 0;
}

/*****トップページ******/

#header{
	width: 100%;
	height: auto;
	background: url(../images/bg-headline.jpg) repeat-x;
}

#header h1 {
	padding-top: 15px;
	font-size: 12px;
	font-weight: bold;
}

.head-contents{
	width: 100%;
	max-width: 1040px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}


.head-inr{
	width: 100%;
	height: auto;
	padding-top: 15px;}


.head-links01 ul{
	float: right;}

.head-links01 ul li{
	display: inline-block;
	vertical-align: middle;}


.head-links01 ul li+li{
	margin-left: 10px;}






/**.menu li ul:before{
  content: '';
  background: url(../images/bg-arrow.png) no-repeat;
  position: absolute;
  width: 9px;
  height: 7px;
  top: -7px;
  left: 50%;
  margin-left: -4px;}**/





.contents {
	width: 100%;
	max-width: 1040px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}

#main .contents h2,
.wide-cnt h2 {
	font-size:30px;
	border-bottom:1px dashed #000;
	padding:20px 0;
	margin-bottom:20px;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}

#main .contents h3,
.wide-cnt h3 {
	margin-top: 40px;
	margin-bottom: 20px;
	font-size: 24px;
	line-height: 1.4;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}

@media screen and (max-width: 767px) {
	
	#main .contents h3,
	.wide-cnt h3 {
		margin-top: 20px;
		font-size: 18px;
		font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	}
	
}
	
.top-box02 {
	position: relative;
	width: 100%;
	height: auto;
	margin-top: 100px;
}
	
.top-box02:before {
	content:'';
	position: absolute;
	top: 100px;
	left: -200px;
	width: 391px;
	height: 333px;
	background: url(../images/bg-box02-01.png) no-repeat center center;
	background-size: contain;
}

.top-box02:after {
	content:'';
	position: absolute;
	right: -100px;
	bottom: 30px;
	z-index: 888;
	width: 185px;
	height: 229px;
	background: url(../images/bg-box02-02.png) no-repeat center center;
	background-size: contain;
	
}


.top-box02 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 50px -10px -14px;
	text-align: center;
}

.top-box02 ul li {
	width: 32%;
	margin: 0 0 14px;
	padding: 0 10px;
}

.top-box02 h4 {
	margin: 0 0 16px;
	padding: 12px;
	background-color: #fff;
}

.top-box02 ul li p span {
	padding-top: 5px;
	padding-bottom: 2px;
	border-bottom: 1px dotted #ad998e;
}


@media screen and (max-width: 767px) {
	
	.top-box02:before {
		display: none;
	}

	.top-box02:after {
		display: none;
	}
	
	.top-box02 ul {
		margin-top: 20px;
	}
	
	.top-box02 ul li {
		width: 100%;
	}
	
	.top-box02 ul + ul {
		margin-top: 14px;
	}
	
}


.list-lnk {
	width: 94%;
	margin-top: 10px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	font-size: 16px;
	line-height: 1.65;
}


.top-systembox{
	width: 100%;
	height: auto;
	background: url(../images/bg-top02.png) repeat;
	margin-top: 100px;
	border-top: 1px dotted #a19b96;
	padding-top: 50px;
	padding-bottom: 80px;}

.news-allbox .head {
	position: relative;
}

.more-btn {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
}


/* ------------------------------------------------------------

	color 

------------------------------------------------------------ */

.text-primary { color: #e09b64;}


/* ------------------------------------------------------------

	link

------------------------------------------------------------ */

.dec-btn {
	display: inline-block;
	padding: 16px 32px;
	background-color: #df9a63;
	border: 2px solid #df9a63;
	color: #fff;
	cursor: pointer;
}

.dec-btn:hover {
	background-color: #fff;
	color: #df9a63;
}

.dec-btn02 {
	display: inline-block;
	padding: 8px 32px;
	background-color: #bcafa4;
	border: 2px solid #bcafa4;
	border-radius: 4px;
	color: #fff;
	line-height: 1;
	cursor: pointer;
}

.dec-btn02:hover {
	background-color: #fff;
	color: #bcafa4;
}



/* ------------------------------------------------------------

	headeing

------------------------------------------------------------ */

.topicsList__title {
	display: flex;
	align-items: center;
	padding: 16px 20px 12px;
	background-color: #ad9f89;
	border-radius: 4px;
	line-height: 1.2;
	color: #fff;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}

.topicsList__title-ja {
	display: block;
	font-size: 20px;
}

.topicsList__title-ja:after {
	content: '/';
	display: inline-block;
	padding: 0 10px;
}

.topicsList__title-en {
	display: block;
	font-size: 12px;
}


.h3 {
	text-align: center;
}

.h3:before,
.h3:after {
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	background-repeat: no-repeat;
	background-position: center center;
}

.h3:before { background-image: url("../images/h3-top.png");}
.h3:after { background-image: url("../images/h3-bottom.png");}

.h4 {
	margin: 0 0 10px;
	font-size: 18px;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}


.fc-box{
	padding: 50px 0;
}


.gallery-box{
	margin: 60px auto;
	width: 800px;
}


.mv01-1,
.mv01-3,
.mv01-4,
.mv01-5,
.mv02-2,
.mv02-3,
.mv02-4,
.mv02-5,
.mv02-6,
.mv02-7,
.mv04-2,
.mv-privacy,
.mv-sitemap {
	max-width: 100%;
	width: 100%;
	padding: 88px 0 72px;
	background: url(../images/bg-sv03.jpg) center top no-repeat;
	background-size: cover;
	text-align: center;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	letter-spacing: 2px;
}

.mv01-1 { background-image: url(../images/bg-mv01-01.jpg);}
.mv01-3 { background-image: url(../images/mv-inst-mind.jpg);} /*マインド*/
.mv01-4 { background-image: url(../images/bg-mv01-02.jpg);} /*施設あんない*/
.mv01-5 { background-image: url(/images/bg-mv01-05.jpg);} /*法人概要*/
.mv02-2 { background-image: url(../images/bg-sv02.jpg);} /*デイサービス*/
.mv02-3 { background-image: url(../images/bg-sv03.jpg);}
.mv02-4 { background-image: url(../images/bg-sv04.jpg);} /*ショート*/
.mv02-5 { background-image: url(../images/bg-sv05.jpg);} /*訪問*/
.mv02-6 { background-image: url(../images/bg-sv06.jpg);} /*居宅介護支援*/
.mv02-7 { background-image: url(../images/bg-sv07.jpg);} /*他にもこんなこと*/
.mv04-2 { background-image: url(../images/bg-rc-talk2.jpg);} /*採用情報 - 談話*/
.mv-privacy { background-image: url(../images/bg-mv-privacy.jpg);}
.mv-sitemap { background-image: url(../images/bg-mv-sitemap.jpg);}

.mv01-1 h2,
.mv01-4 h2,
.mv01-5 h2,
.mv02-2 h2,
.mv02-3 h2,
.mv02-4 h2,
.mv02-6 h2,
.mv02-7 h2,
.mv04-2 h2,
.mv-privacy h2,
.mv-sitemap h2 {
	display: inline-block;
	padding: 12px 32px;
	border: 3px solid #fff;
	color: #fff;
	font-size: 32px;
	line-height: 1;
	letter-spacing: 2px;
}

.mv01-1 h2,
.mv01-4 h2 {
	border-color: #080808;
	color: #080808;
}

.mv01-5 h2 {
    border-color: #fff;
    color: #fff;
}

.mv01-3 h2 { text-align: center;}

@media screen and (max-width: 767px) {
	
	.mv01-1,
	.mv01-3,
	.mv01-4,
	.mv01-5,
	.mv02-2,
	.mv02-3,
	.mv02-4,
	.mv02-5,
	.mv02-6,
	.mv02-7,
	.mv04-2,
	.mv-privacy,
	.mv-sitemap {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	
	.mv01-1 img,
	.mv01-4 img,
	.mv01-5 img,
	.mv02-2 img,
	.mv02-3 img,
	.mv02-4 img,
	.mv02-5 img,
	.mv02-6 img,
	.mv02-7 img,
	.mv04-2 img,
	.mv-privacy img,
	.mv-sitemap img {
		height: 45px;
	}
	
	.mv01-1 h2,
	.mv01-4 h2,
	.mv01-5 h2,
	.mv02-2 h2,
	.mv02-3 h2,
	.mv02-4 h2,
	.mv02-6 h2,
	.mv02-7 h2,
	.mv04-2 h2,
	.mv-privacy h2 {
		padding: 12px 16px;
		font-size: 24px;
	}
	
}


/* ------------------------------------------------------------

	TOP 

------------------------------------------------------------ */

.mv-all{
	width: 100%;
	height: auto;
	background: url(../images/bg-mv02.png) no-repeat center;}

.mv{
	width: 100%;
	height: 533px;
	background: url(../images/bg-mv2.png) repeat-x center;
	position: relative;}


.catchbox {
	position: absolute;
	top: 40px;
	left: 50%;
	width: 446px;
	height: 446px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-left: -550px;
	background: url(../images/bg-catch.png) no-repeat center center;
	background-size: contain;
}

.catchbox h2 {
}

.catchbox p {
	margin-top: 20px;
	line-height: 1.5em;
}

@media screen and (max-width: 767px) {
	
	.catchbox {
		top: 50%;
		left: 50%;
		width: 320px;
		height: 320px;
		margin-left: 0;
		transform: translateY(-50%) translateX(-50%);
	}
	
	.catchbox h2 img {
		width: 200px;
	}

	.catchbox p img {
		width: 200px;
	}
	
}


.top-box01 h3 {
	text-align: center;
	padding-top: 30px;
}

.top-box01 ul {
	display: flex;
	justify-content: center;
	margin: 0 0 -20px;
	padding: 0;
}

.top-box01 ul li {
	width: 30%;
	margin: 0;
	padding: 0 20px;
	vertical-align: top;
	text-align: center;
}

.top-box01 ul li p {
	margin-top: 10px;
	font-size: 16px;
	line-height: 1.65;
	text-align: left;
}

@media screen and (max-width: 767px) {
	
	.top-box01 ul {
		flex-direction: column;
	}

	.top-box01 ul li {
		width: 100%;
	}

	.top-box01 ul li + li {
		margin-top: 20px;
	}
	
	.top-box01 ul li img {
		width: 70%;
		height: auto;
	}
	
}


.top-box01 {
	position: relative;
	width: 100%;
	height: auto;
}

.top-box01:before {
	content:'';
	position: absolute;
	top: 150px;
	left: -100px;
	width: 125px;
	height: 138px;
	background: url(../images/bg-top-box01.png) no-repeat center center;
	background-size: contain;
}

.top-box01:after{
	content:'';
	position: absolute;
	bottom: -40px;
	right: -150px;
	width: 160px;
	height: 222px;
	background: url(../images/bg-top-box02.png) no-repeat center center;
	background-size: contain;
}

@media screen and (max-width: 767px) {
	
	.top-box01:before {
		left: 0;
		width: 40px;
		height: 48px;
	}

	.top-box01:after{
		right: 0;
		width: 40px;
		height: 50px;
	}
	
}


.top-systembox .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-systembox .opt1,
.top-systembox .opt2 {
	width: 48.5%;
}

@media screen and (max-width: 767px) {
	
	.top-systembox .opt1,
	.top-systembox .opt2 {
		width: 100%;
	}
	
	.top-systembox .opt2 {
		margin-top: 20px;
	}
	
}



.news-allbox h3{}

.textOverflowTest1 {
	display: flex;
	padding: 20px 0;
	background: url(../images/bg-line02.png) repeat-x bottom;
}

.news-title {
	width: 72%;
}

.textOverflowTest1 .data {
	display: block;
	margin-bottom: 5px;
}

.textOverflowTest1 .info {
	display: block;
}

.textOverflowTest1 .info a {
	color: #000;
	line-height: 1.5;
}

.textOverflowTest1 a:hover{
	color: #3A3A3A;
}

.textOverflowTest1 .news-title + a {
	width: 28%;
	padding-left: 10px;
}

.textOverflowTest2 {
	padding: 20px 0;
	background: url(../images/bg-line02.png) repeat-x bottom;
}

.textOverflowTest2 .data {
	display: block;
	margin-bottom: 5px;
}

.textOverflowTest2 .info {
	display: block;
}

.textOverflowTest2 .info a {
	color: #000;
	line-height: 1.5;
}

.textOverflowTest2 a:hover{
	color: #3A3A3A;
}


/* ------------------------------------------------------------

	HEADER 

------------------------------------------------------------ */

.headmaincont {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin-top: 20px;
}

@media screen and (max-width: 767px) {

	.headmaincont.is-fixed {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1000;
		height: 50px;
		margin: 0;
		padding: 0 0 0 10px;
		background-color: #F6F5F2;
	}
	
	.headmaincont.is-fixed img {
		width: 180px;
		height: auto;
	}

}
	
.headmaincont .menu {
	display: flex;
	margin-top: 20px;
}

.menu > li {
	vertical-align: top;
	margin: 0px;
	padding: 0px;
	width: 130px;
	height: 25px;
	text-align: center;
	border-left: 1px dotted #000;
	box-sizing: border-box;
	padding-top: 5px;}

.menu li ul{
	width: 130px;
	margin-left: auto;
	margin-right: auto;
	height: auto;
	background: url(../images/bg-menu.png) repeat;
	box-sizing: border-box;
	position: relative;
	z-index: 999;
	display: none;
	margin-top:5px;}

.none-line{
	border: none !important;}

.menu p{
	cursor: pointer;}


.menu li ul li{
	display: block;
	text-align: center !important;
	border-left: none !important;
	float: none;
	background-image: none !important;
	border-bottom: 1px dotted #fff;
	padding-bottom: 10px;
	padding-top: 10px;}


.menu li ul li a{
	color: #fff;}

@media screen and (max-width: 767px) {
	
	.headmaincont {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
	.headmaincont .menu {
		display: none;
	}
	
}


/* ------------------------------------------------------------

	FOOTER 

------------------------------------------------------------ */

#footer {
	width: 100%;
	background: url(../images/bg-footer.jpg) no-repeat center top;
	background-size: cover;
}

#footer .contents {
	display: flex;
	flex-wrap: wrap;
	padding-top: 30px;
	padding-bottom: 30px;
}

.foot-cont {
	width: 320px;
	padding: 20px 30px 30px 30px;
	background-color: rgba(255, 255, 255, .8);
	text-align: center;
}

.foot-cont p {
	margin-top: 10px;
}

.foot-links {
	width: calc( 100% - 320px );
	margin-top: 20px;
	padding-left: 20px;
}

.foot-links > ul {
	display: flex;
	margin: 0 -5px;
	padding: 0;
	list-style: none;
}

.foot-links > ul > li {
	width: 25%;
	margin: 0;
	padding: 0 5px;
}

.foot-links a {
	display: block;
	color: #fff;
	text-decoration: underline;
	font-weight: bold;
}

.foot-links a:hover {
	color: #D9D9D9;
}

.foot-links p {
	font-weight: bold;
	font-size: 15px;
	color: #fff;
}
	
.foot-links ul li ul a {
	display: block;
	margin-top: 10px;
	padding-left: 10px;
	background: url(../images/bg-aroow.png) no-repeat left center;
}	

.foot-links ul li ul li {
	display: block;
}

.copy {
	width: 100%;
	padding: 6px 0;
	background: url(../images/bg-copy.png) repeat center center;;
	text-align: center;
	color: #fff;
}

@media screen and (max-width: 767px) {
	
	.foot-cont {
		max-width: 100%;
		margin: 0 auto;
	}

	.foot-links {
		width: 100%;
		margin-top: 40px;
		padding: 0;
	}
	
	.foot-links > ul {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -20px;
	}
	
	.foot-links > ul > li {
		width: 50%;
		margin: 0 0 40px;
		padding: 0 20px;
	}
	
}

#cmsMobileButton {
	display: none;
}
	




	
/* 中面のフッター */
.footer-line{
	background-color: #333332;
	height:26px;
	position: relative;}

.footer-line .copy{
	background: none;}




/*****パンくず******/

.contents02 {
	width: 100%;
	margin-top: 30px;
	height: auto;
	background: url(../images/bg-pankuzu.gif) repeat center center;
}

.pankuzu {
	width: 100%;
	max-width: 1040px;
	margin:0 auto;
	padding: 8px 20px;
}

.breadcrumb {
	display: flex;
}
	
.pankuzu li {
  font-size: 0.9em;
}
	
.pankuzu li a {
	color: #000 !important;
}

.pankuzu li + li {
	margin-left: 15px;
}

.target {
	color: #eb9658;
}



.contents.inst01 {
	width: 100%;
	max-width: 978px;
	padding: 100px 20px;
}

@media screen and (max-width: 767px) {
	
	.contents.inst01 {
		padding-top: 40px;
		padding-bottom: 40px;
	}

}


.inst01 h2{
	text-align:center;
	margin-bottom:30px;
}

.inst01 table{
	margin-bottom:60px;
}

.inst01 table th{
	width: 20%;
}
.inst01 .tbl01 th,
.inst01 .tbl01 td{
	padding: 15px 15px 12px;
}

.inst01 table.tc th,
.inst01 table.tc td{
	text-align: center;
	vertical-align:middle;
}

.inst01 table.zaimu th{
	width: 80%;
	vertical-align:middle;
}

.inst01 table.zaimu td{
	text-align: center;
	vertical-align:middle;
}
.access-list li{
	font-size:118%;
}
.pre-box{
	margin: 0 auto 60px;
	width: 700px;}

.inst-ph{
	float: right;
	margin-left: 25px;}


/* ------------------------------------------------------------

	施設紹介

------------------------------------------------------------ */

@media screen and (max-width: 767px) {
	
	.cparts-id439--01 img {
		width: 30% !important;
		margin: 0 auto;
	}

}

.philosophy-box {
	padding: 4rem;
	background-color: #fff;
}

@media screen and (max-width: 767px) {

	.philosophy-box {
		padding: 2rem;
	}
	
}


/* ------------------------------------------------------------

	施設紹介 - 施設案内

------------------------------------------------------------ */

.facility-photo {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -20px;
}

.facility-photo__col6 {
	width: 50%;
	padding: 0 20px;
	text-align: center;
}

.facility-photo__col4 {
	width: 33.33333333%;
	padding: 0 20px;
	text-align: center;
}

.facility-photo img {
	width: auto;
	max-width: 100%;
	height: auto;
}

@media screen and (max-width: 767px) {
	
	.facility-photo__col6 {
		width: 100%;
	}

	.facility-photo__col4 {
		width: 100%;
	}
	
}


/* ------------------------------------------------------------

	施設紹介 - コンセプト

------------------------------------------------------------ */

.mv01-2 {
	position: relative;
	width: 100%;
	max-width: 100%;
	height: 798px;
	margin: 0 auto;
	background: #fff url(../images/mv-inst-con.jpg) center top no-repeat;
}
	
@media only screen and (max-width: 1080px) {
	
	.mv01-2 {
		height: 670px;
		background-image: url(../images/mv-inst-con--tb.jpg);
		background-size: cover;
	}
	
}

@media screen and (max-width: 767px) {
	
	.mv01-2 {
		height: 980px;
		background-image: url(../images/mv-inst-con--sp.png);
	}

}


/* ------------------------------------------------------------

	施設紹介 - マインド

------------------------------------------------------------ */

.wide-content .wide-cnt {
	max-width: 978px;
	margin: 0 auto;
	padding: 100px 20px;
	text-align: left;
}

@media screen and (max-width: 767px) {
	
	.wide-content .wide-cnt {
		padding-top: 40px;
		padding-bottom: 40px;
	}

}


/* ------------------------------------------------------------

	特別養護老人ホーム

------------------------------------------------------------ */

.sv-top {
	margin-top: 84px;
	padding-bottom: 74px;
	background: url(../images/bg-shadow.png) left bottom repeat-x;
}

.sv-top .sv-top-left {
	float: left;
	width: 47.5%;
}

.sv-top h3 {
	margin-bottom: 30px;
	padding-bottom: 10px;
	border-bottom: 1px dashed #d0c8b8;
}

.sv-top .img {
	text-align: center;
}

.sv-top p {
	line-height: 1.5em;
}

.sv-top-right{
	float: right;
	width: 47%;
	padding: 26px 20px;
	background: url(../images/bg-sv-day.gif) left top no-repeat #FFF;
}

.sv-top-right dl dt{
	margin-bottom: 20px;
	text-align: center;}

.sv-top-right dl dd {
	margin-bottom: 20px;}	
	
.sv-top-right dl dd p{
	margin-right:12px;
	float: left;}


.sv-top-right dl dd ul li{
	font-weight:bold;
	overflow: hidden;
	margin-bottom: 5px;}

.sv-top-right dl dd ul li span{
	background-color:#eb9759;
	color:#FFF;
	display:inline-block;
	font-size: 11px;
	float: left;
	text-align: center;
/*	padding: 5px 0 4px;
*/	width:100px;}

.sv-top-right dl dd ul li em{
	font-style: normal;
	float: right;
	width: 260px;
}

@media screen and (max-width: 767px) {
	
	.sv-top {
		margin-top: 40px;
		padding-bottom: 40px;
	}
	
	.sv-top .sv-top-left {
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}

	.sv-top-right {
		float: none;
		width: 100%;
	}

}

#main .contents .sv-title {
	margin: 0 0 32px;
	padding: 12px 8px;
	background-color: #fff;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
}


.sv-wrap {
	padding: 50px 0 61px;
	background: url(../images/bg-sv.png) left top repeat;
}

.sv-wrap h3{
	margin-bottom:61px;}




.sv-con01 {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 -20px 80px;
}

.sv-con01__photo {
	width: 45%;
	padding: 0 20px;
}

.sv-con01__text {
	width: 48%;
	padding: 0 20px;
}

.sv-con01__title {
	margin: 0 0 16px;
	font-size: 16px;
	line-height: 1.4;
}

.sv-con01__body p {
	line-height: 2;
}

.sv-con01__body p span {
	display: inline;
	border-bottom: 1px dashed #d0c8b8;
}

@media screen and (max-width: 767px) {
	
	.sv-con01 {
		flex-direction: column;
		margin-bottom: 40px;
	}

	.sv-con01__photo {
		width: 60%;
		margin-bottom: 20px;
		padding: 0 20px;
	}

	.sv-con01__text {
		width: 100%;
	}
	
}


.sv-con02 {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 -20px 80px;
}

.sv-con02--reverse {
	flex-direction: row-reverse;
}

.sv-con02__photo {
	width: 306px;
	padding: 0 20px;
}

.sv-con02__text {
	width: calc( 100% - 306px );
	padding: 0 20px;
}

.sv-con02__body {
	position: relative;
	margin-top: 16px;
	padding: 20px;
	background-color: #fff;
	border-radius: 20px;
}

.sv-con02__body:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	margin-top: -10px;
	border-style: solid;
	border-width: 10px 10px 10px 0;
    border-color: transparent #fff transparent transparent;
}

.sv-con02--reverse .sv-con02__body:before {
	left: auto;
	right: -10px;
	border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #fff;
}

.sv-con02__body p {
	line-height: 2;
}

.sv-con02__body span {
	display: inline;
	border-bottom: 1px dashed #d0c8b8;
}

@media screen and (max-width: 767px) {
	
	.sv-con02 {
		flex-direction: column;
		margin-bottom: 40px;
	}

	.sv-con02__photo {
		width: 60%;
		margin-bottom: 20px;
		padding: 0 20px;
	}

	.sv-con02__text {
		width: 100%;
	}
	
	.sv-con02__body:before,
	.sv-con02--reverse .sv-con02__body:before {
		border-width: 0 10px 10px 10px;
		top: -10px;
		left: 50%;
		margin: 0 0 0 -10px;
		border-color: transparent transparent #fff transparent;
	}

}


.sv-con03 {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: center;
	margin: 0 auto 45px;
}
	
.sv-con03__photo {
	width: 400px;
	text-align: center;
}

.sv-con03__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 454px;
	height: 378px;
	padding: 0 40px;
	background: url(../images/bg-sv-con03-2.png) left top no-repeat;
	background-size: contain;
}
	
.sv-con03__text-body h4 {
	margin-bottom: 20px;
}

.sv-con03__text-body p {
	line-height: 1.8em;
}

@media screen and (max-width: 767px) {
	
	.sv-wrap .sv-con03 {
		display: block;
	}
	
	.sv-wrap .sv-con03 .photo {
		width: 100%;
		margin-bottom: 20px;
		text-align: center;
	}
	
	.sv-wrap .sv-con03 .photo img {
		width: 190px;
	}
	
	.sv-wrap .sv-con03 .text {
		width: 100%;
		height: auto;
		padding: 0;
		aspect-ratio: 454/377;
	}
	
	.sv-wrap .sv-con03 .text  h4 + div {
		padding-right: 20px;
		padding-left: 20px;
	}
	
	.sv-wrap .sv-con03 .text img {
		width: 180px;
	}
	
}


.sv-wrap .sv-con04 {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
}
	
.sv-wrap .sv-con04 .photo {
	width: 380px;
	padding: 0 20px;
}
	
.sv-wrap .sv-con04 .text-top {
	position: relative;
	width: 584px;
	margin-top: 26px;
	padding-top: 30px;
	background: url(../images/bg-sv-bln-01.png) left top no-repeat;
}
	
.sv-wrap .sv-con04 .text-inr {
	width: 100%;
	padding: 0 22px;
	background: url(../images/bg-sv-bln-02.png) left top repeat-y;
}

.sv-wrap .sv-con04 .text-btm {
	padding-bottom: 30px;
	background: url(../images/bg-sv-bln-03.png) left bottom no-repeat;
}

.sv-wrap .sv-con04 .text-btm::before {
	content: '';
	position: absolute;
	top: 45px;
	right: -21px;
	height: 33px;
	width: 24px;
	background: url(../images/bg-sv-bln-icon2.png) left top no-repeat;
}

.sv-wrap .sv-con04 .text-top h4 {
	position: absolute;
	top: -14px;
	left: 18px;
}

.sv-wrap .sv-con04 .text-top p {
	line-height: 2em;
}

.sv-wrap .sv-con04 .text-top p.p1 span {
	padding-left: 6em;
}

.sv-wrap .sv-con04 .text-top p.p2 span {
	padding-left: 5em;
}
	
.sv-wrap .sv-con04 .text-top p span {
	display: inline;
	border-bottom: 1px dashed #d0c8b8;
}

.sv-wrap .sv-con04 .text-top p.img {
	position: absolute;
	top: -50px;
	left: -20px;
}

@media screen and (max-width: 767px) {
	
	.sv-wrap .sv-con04 {
		display: block;
	}
	
	.sv-wrap .sv-con04 .photo {
		width: 100%;
		text-align: center;
	}
	
	.sv-wrap .sv-con04 .photo img {
		width: 170px;
	}
	
	.sv-wrap .sv-con04 .text-top {
		width: 100%;
		background-image: none;
	}
	
	.sv-wrap .sv-con04 .text-inr {
		padding: 20px;
		background: #fff;
		background-image: none;
		border-radius: 20px;
	}

	.sv-wrap .sv-con04 .text-btm {
		background-image: none;
	}

	.sv-wrap .sv-con04 .text-btm::before {
		display: none;
	}

}


.sv-wrap .sv-con05 {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
}
	
.sv-wrap .sv-con05 {
	width: 88%;
}

.sv-wrap .sv-con05 .photo {
	width: 280px;
	padding: 0 20px;
}

.sv-wrap .sv-con05 .text {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 460px;
	height: 251px;
	background: url(../images/bg-sv-con05.png) left top no-repeat;
	background-size: contain;
}

.sv-wrap .sv-con05 .text h4 {
	margin: 0 0 20px;
}

.sv-wrap .sv-con05 .text h4 + div {
	padding-right: 40px;
	padding-left: 40px;
}

.sv-wrap .sv-con05 .text p {
	line-height: 2.2em;
	text-align: center;
}

.sv-wrap .sv-con05 .text p span {
	border-bottom: 1px dashed #d0c8b8;
}

@media screen and (max-width: 767px) {
	
	.sv-wrap .sv-con05 {
		display: block;
	}
	
	.sv-wrap .sv-con05 {
		width: 100%;
	}

	.sv-wrap .sv-con05 .photo {
		width: 100%;
		padding: 0 20px;
		text-align: center;
	}
	
	.sv-wrap .sv-con05 .photo img {
		width: 120px;
	}

	.sv-wrap .sv-con05 .text {
		width: 100%;
		height: auto;
		padding-top: 20px;
		padding-bottom: 20px;
		aspect-ratio: 460/251;
	}

}


/* ------------------------------------------------------------

	ご家族の方へ

------------------------------------------------------------ */

.mv03{
	width: 100%;
	padding: 122px 20px 55px;
	background: url(../images/mv-qa.jpg) center top no-repeat;
	background-size: cover;
}

.mv03 h2 {
	margin-bottom: 130px;
	text-align: center;
}

.mv03 ul {
	display: flex;
	flex-wrap: wrap;
	max-width: 1098px;
	margin: 0 auto;
}

.mv03 ul li {
	width: 25%;
	padding: 0 20px;
}

@media screen and (max-width: 767px) {
	
	.mv03{
		padding: 60px 20px 20px;
	}
	
	.mv03 h2 {
		margin-bottom: 40px;
	}
	
	.mv03 ul li {
		width: 100%;
		margin-bottom: 20px;
		padding: 0 10px;
		text-align: center;
	}
	
}


.qa-wrap {
	padding: 48px 0 133px;
	background: url(../images/bg-qa.png) center top no-repeat;
	background-attachment: fixed;
}

.qa-wrap h3 {
	margin-bottom: 30px;
	text-align: center;
}

.qa-sv-list {
	width: 100%;
	max-width: 690px;
	margin: 0 auto 115px;
}

.qa-sv-list li {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 22px;
	padding: 20px 16px;
	background-color: #fff;
	border-radius: 20px;
}

.qa-sv-list__img {
	width: 120px;
}

.qa-sv-list__text {
	width: calc( 100% - 120px );
	padding-left: 15px;
}

.qa-sv-list__text dl {
	margin-bottom: 10px;
}

.qa-sv-list__text dt {
	margin-bottom: 8px;
}

.qa-sv-list__text p {
	line-height: 1.5em;
}
	
.qa-sv-list__text .btn {
	text-align: right;
}

@media screen and (max-width: 767px) {
	
	.qa-sv-list__img {
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.qa-sv-list__text {
		width: 100%;
	}
	
}


.qa-box {
	margin-bottom: 79px;
	padding: 30px 40px 20px 80px;
	background-color: #f1e6da;
	border-radius: 20px;
}

.qa-box ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px -10px;
}

.qa-box li {
	box-sizing: border-box;
	width: 50%;
	margin-bottom: 10px;
	padding: 0 10px;
}

.qa-box li a {
	position: relative;
	display: block;
	padding: 10px 0 10px 48px;
	color: #000;
	text-decoration: underline;
}

.qa-box li img {
	position: absolute;
	top: 0;
	left: 0;
	vertical-align: middle;
}



@media screen and (max-width: 767px) {
	
	.qa-box {
		margin-bottom: 40px;
		padding: 20px 20px 20px 40px;
	}

	.qa-box li {
		width: 100%;
	}

}


.qa-box-ans {
	width: 100%;
	margin-bottom: 24px;
	padding: 0 60px 32px;
	border-bottom: 1px dashed #c8b9a2;
}

.qa-box-ans dl {
	margin-bottom: 8px;
}
	
.qa-box-ans dl dt {
	font-size: 17px;
}

.qa-box-ans dl dt img {
	margin-right: 12px;
	padding-bottom: 4px;
	vertical-align: middle;
}
	
.qa-box-ans dl dd {
	padding-left: 9px;
}

.qa-box-ans .ans {
	position: relative;
	max-width: 580px;
	margin: 0 0 0 auto;
	padding: 20px;
	background-color: #fff;
	border-radius: 20px;
}

.qa-box-ans .ans:before {
	content: '';
	position: absolute;
	bottom: 100%;
	left: 40px;
	display: block;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-bottom: 16px solid #fff;
}

@media screen and (max-width: 767px) {
	
	.qa-box-ans {
		padding: 0 0 32px;
	}
	
}


/* ------------------------------------------------------------

	採用情報

------------------------------------------------------------ */

.mv04 {
	position: relative;
	width: 100%;
	height: 448px;
	background: url(../images/bg-rc-mv.png) center center repeat-x;
}

.mv04 h2 {
	position: absolute;
	top: 95px;
	left: 50%;
	margin-left: -433px;
}

@media screen and (max-width: 767px) {
	
	.mv04 {
		height: 224px;
		background-size: auto 224px;
	}
	
	.mv04 h2 {
		top: 50%;
		left: 50%;
		margin: 0;
		transform: translateY(-50%) translateX(-50%);
	}
	
	.mv04 h2 img {
		width: 280px;
		height: auto;
	}
	
}


.rc-top-wrap {
	background: url(../images/bg-rc-top.png) left 60px no-repeat;
}

.rc-top {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 40px 0;
	padding: 0;
}

.rc-top__photo {
	width: 25.4%;
	margin-right: 20px;
}

.rc-top__body {
	position: relative;
	width: 46%;
	color: #7c7771;
}

.rc-top__body-section {
	position: relative;
	padding: 20px;
	background-color: #fff;
	border-radius: 20px;
}

.rc-top__body-section:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	margin-top: -10px;
	border-style: solid;
	border-width: 10px 10px 10px 0;
	border-color: transparent #fff transparent transparent;
}

.rc-top__en {
	margin: 0;
	font-size: 2rem;
	text-align: center;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}

#main .contents .rc-top__title {
	margin: 0 0 1.6rem;
	padding: 0;
	font-size: 1rem;
	text-align: center;
}

.rc-top__text {
	text-align: center;
}

.rc-top__text p {
	margin-bottom: 1rem;
}

.rc-top__text > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	
	.rc-top {
		flex-direction: column;
		padding: 0;
	}

	.rc-top__photo {
		width: 100%;
		margin: 0 0 20px;
		text-align: center;
	}
	
	.rc-top__photo img {
		width: 140px;
	}

	.rc-top__body {
		width: 100%;
	}
	
	.rc-top__body-section:before {
		top: -10px;
		left: 50%;
		margin-top: 0;
		margin-left: -10px;
		border-width: 0 10px 10px 10px;
		border-color: transparent transparent #fff transparent;
	}
	
}


.rc-talk-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 40px;
	width: 100%;
	height: 355px;	
	background: url(../images/bg-rc-top-tk.jpg) center top no-repeat;
	color: #7c7771;
}

.rc-talk {
	position: relative;
}

.rc-talk__en {
	margin: 0;
	font-size: 2rem;
	text-align: center;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}

.rc-talk__title {
	margin: 0 0 1.6rem;
	padding: 0;
	font-size: 1rem;
	text-align: center;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
}

.rc-talk__text {
	text-align: center;
}

.rc-talk__text p {
	margin-bottom: 1rem;
}

.rc-talk__text > :last-child {
	margin-bottom: 0;
}

.rc-talk .img01 img {
	position: absolute;
	top: 50%;
	right: calc( 100% + 20px);
	width: 390px;
	max-width: none;
	transform: translateY(-50%);
}

.rc-talk .img02 img {
	position: absolute;
	top: 50%;
	left: calc( 100% + 60px);
	width: 390px;
	max-width: none;
	transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
	
	.rc-talk {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 240px;
		margin-bottom: 40px;
		background-size: auto 240px;
	}
	
	.rc-talk h3 {
		position: static;
		margin-left: 0;
	}
	
	.rc-talk h3 img {
		width: 200px;
	}

	.rc-talk .btn {
		position: static;
		margin-left: 0;
	}
	
	.rc-talk .img01 {
		display: none;
	}

	.rc-talk .img02 {
		display: none;
	}
	
}


.rc-bnr {
	margin-bottom: 127px;
}
	
.rc-bnr ul li {
	float: left;
}

.rc-bnr ul li.form {
	border: 1px solid #cfc7bf;
	float: right;
	padding: 3px 0 18px 18px;
	position: relative;
	height: 205px;
	width: 484px;
}

.rc-bnr ul li.form dl dt {
	margin-bottom: 10px;
}

.rc-bnr ul li.form p.text {
	font-size: 11px;
	line-height: 140%;
	margin-bottom: 23px;
	
}

.rc-bnr ul li.form p.img {
	position: absolute;
	right: -15px;
	top: -16px;
}

@media screen and (max-width: 767px) {
	
	.rc-bnr {
		margin-bottom: 40px;
	}
	
	.rc-bnr ul li {
		float: none;
	}
	
	.rc-bnr ul li + li {
		margin-top: 40px;
	}
	
	.rc-bnr ul li.form {
		width: 100%;
		padding: 16px;
	}

	.rc-bnr ul li.form dl dt {
		text-align: center;
	}

	.rc-bnr ul li.form dl dd {
		text-align: center;
	}

	.rc-bnr ul li.form p.text {
		line-height: 1.6;
		font-size: 14px;
	}
	
	.rc-bnr ul li.form p.img {
		top: auto;
		bottom: 0;
		width: 80px;
	}
	
}


/* ------------------------------------------------------------

	採用情報 - 施設長メッセージ

------------------------------------------------------------ */

.rc01 {
	padding: 80px 0 50px;
	background: url(../images/bg-rc01.jpg) center top no-repeat;
	background-size: cover;
}

.rc01 p {
	line-height: 1.5em;
}

.rc01 .rc01-img01 {
	float: left;
	margin-right: 95px;
}

.rc01 .rc01-img02 {
	float: right;
	margin-left: 95px;
}

@media screen and (max-width: 767px) {
	
	.rc01 {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.rc01 .rc01-img01 {
		width: 30%;
		margin-right: 15px;
	}

	.rc01 .rc01-img02 {
		width: 30%;
		margin-left: 15px;
	}
	
}


.msg-mission {
	width: auto;
	min-height: 976px;
	background: url(/images/msg/msg_bg01.jpg) center top no-repeat;
	background-size: cover;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	text-align: center;
	padding: 80px 0 0 0;
	color: #fff;
}

.msg-mission .cnt {
	width: 100%;
	max-width: 620px;
	margin: 0 auto;
	padding: 0 20px;
	text-align: left;	
}

.msg-mission h2 {
	margin-bottom: 40px;
	font-size: 36px;
	color: #eb9658;
	text-align: center;
}

.msg-mission h3 {
	margin-bottom: 40px;
	font-size: 24px;
	line-height: 1.4;
	color: #fff;	
	text-align: center;
}

.msg-mission .cnt p {
	font-size: 16px;
	line-height: 200%;
}

@media screen and (max-width: 767px) {
}


.msg-value {
	width: auto;
	min-height: 716px;
	padding: 80px 0 0 0;
	background: url(/images/msg/msg_bg02.jpg) center top no-repeat;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	text-align: center;
	color: #000;
}

.value-inner {
	position: relative;	
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}

.msg-value .cnt {
	width: 100%;
	max-width: 620px;
	margin: 0 auto;
	padding: 0 20px;
	text-align: left;	
}

.value-inner .left-img {
	position: absolute;
	left: 0;
	top: 80px;
	width: 355px;
}

.value-inner .right-img {
	position: absolute;
	right: 0;
	top: 15px;
	width: 355px;
}

.msg-value img {
	width: auto;
	height: auto;	
}


.msg-value h2 {
	margin-bottom: 40px;
	font-size: 36px;
	color: #eb9658;
	text-align: center;
}

.msg-value h3 {
	margin-bottom: 40px;
	font-size: 24px;
	line-height: 1.4;
	color: #000;	
	text-align: center;
}

.msg-value .cnt p {
	font-size: 16px;
	line-height: 200%;
}

@media screen and (max-width: 1280px) {
	
	.msg-value {
		min-height: inherit;
		padding-bottom: 80px;
	}
	
	.msg-value .cnt {
		position: relative;
	}
	
	.value-inner .left-img {
		right: 100%;
		left: auto;
		width: 160px;
	}

	.value-inner .right-img {
		right: auto;
		left: 100%;
		width: 160px;
	}
	
}

@media screen and (max-width: 767px) {
	
	.value-inner .left-img,
	.value-inner .right-img {
		display: none !important;
	}
	
}


.msg-vision {
	width: auto;
	padding: 0;
	background-color: #fff;
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	text-align: center;
	color: #000;
}

.msg-vision .inner {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

.msg-vision .cnt {
	width: 600px;
	padding: 0 20px;
	text-align: left;
}

.msg-vision h2 {
	margin-bottom: 40px;
	font-size: 36px;
	color: #eb9658;
	text-align: left;
}

.msg-vision h3 {
	margin-bottom: 40px;
	font-size: 24px;
	line-height: 1.4;
	color: #000;	
	text-align: left;
}

.msg-vision .cnt p {
	font-size: 16px;
	line-height: 200%;
}

.msg-vision-img {
	width: calc( 100% - 600px );
}

@media screen and (max-width: 767px) {
	
	.msg-vision .cnt {
		float: none;
		width: 100%;
		margin: 40px 0;
	}
	
	.msg-vision-img {
		width: calc( 100% - 580px );
	}
	
	.msg-vision-img img {
		display: block;
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	
}




.rc02{
	padding: 80px 0 0;
}

.rc02 h3{
	text-align: center;
	margin-bottom: 40px;
}

.rc02 .img-r{
	float: right;
	padding-top:80px;
	margin: 0 0 20px 100px;
	width: 360px;
}
.rc02 .img-l{
	float: left;
	padding-top:80px;
	margin: 0 100px 20px 0;
	width: 360px;
}

.rc02 dl.fltl{
	float: left;
	width: 540px;
}

.rc02 dl.fltr{
	float: right;
	width: 540px;
}

.rc02 dl dt,
.rc02 dl dd{
	font-size: 12px;
	line-height: 1.5em;
}

.rc02 dl dd{
	margin-bottom: 15px;
}

.rc02 dl dt.or { color: #e38e08;}
.rc02 dl dt.gr { color: #37918c;}
.rc02 dl dt.rd { color: #e5004f;}
.rc02 dl dt.bl { color: #0068b7;}



/* ------------------------------------------------------------

	採用情報 - 対談

------------------------------------------------------------ */

div.Fukidashi-txt {
	overflow: visible;
	position: relative;
	display: block;
	margin: 0 250px 0 0;
	padding: 16px;
	background-color: #ebebeb;
	border-radius: 10px;
}

div.Fukidashi-txt-right {
	overflow: visible;
	position: relative;
	display: block;
	margin: 0 0 0 250px;
	padding: 16px;
	background-color: #ebebeb;
	border-radius: 10px;
}

div.Fukidashi-txt:after {
	content: "";
	position: absolute;
	top: 30px;
	right: -10px;
	display: block;
	width: 0px;
	height: 0px;
	margin-top: -10px;
	border-style: solid;
	border-width: 10px 0 10px 10px;
}

div.Fukidashi-txt:after {
	border-color: transparent transparent transparent #ebebeb;
}

div.Fukidashi-txt-right:after {
	content: "";
	position: absolute;
	top: 30px;
	left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	margin-top: -10px;
	border-style: solid;
	border-width: 10px 10px 10px 0;
}

div.Fukidashi-txt-right:after {
	border-color: transparent #ebebeb transparent transparent;
}

@media screen and (max-width: 767px) {
	
	.parts_img_type01_img,
	.parts_img_type02_img {
		width: 30%;
	}
	
	div.Fukidashi-txt {
		margin-right: calc( 30% + 15px );
	}
	
	div.Fukidashi-txt-right {
		margin-left: calc( 30% + 15px );
	}
	
}


/* ------------------------------------------------------------

	採用情報 - 募集要項

------------------------------------------------------------ */

.mv04-3{
	background:url(../images/bg-rc03.jpg) center top no-repeat;
	text-align: center;
	padding: 88px 0 72px;
	min-width:1000px;
	width:100%;}

		
@media only screen and (min-width: 1922px) {
.mv04-3{
	background-size: cover;}
}

.rc03{
	margin: 80px 0 100px;}

.rc03 h3{
	margin-bottom: 40px;}


.rc03 h4{
	border-bottom: 1px dashed #BFAFA2;
	font-weight: normal;
	font-size:20px;
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	padding-bottom: 10px;
	margin-bottom:20px;}

.rc03 h4 span{
	border-left: 4px solid #FFCC00;
	padding-left:10px;}

.rc03 .box{
	margin-bottom:100px;}
	
.rc03 .contact-box{
	background: rgba(255,255,255,0.3);
	border: 1px solid #DDD;
	margin-top:40px;
	padding: 50px;}

.rc03 .contact-box p{
	text-align: center;}


/* ------------------------------------------------------------

	施設長ブログ

------------------------------------------------------------ */

.contents.news{
	padding-top: 20px;
	padding-bottom: 110px;
}

.news-list{
	float: left;
	width: 72%;
}

.news-main{
	background-color: #FFF;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding:20px;
	margin-bottom: 45px;
	width: 100%;}

.news-main ul.list-all li{
	background: url(../images/bg-line03.png) left bottom no-repeat;
	padding: 0 20px 38px;
	padding-bottom: 25px;
	margin-bottom: 25px;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;}
	
.news-main ul.list-all li:hover{
/*	filter: alpha(opacity=50) !important;
	opacity:0.5 !important;*/}
	
.news-main ul.list-all li .news-title {
	width: 76.5625%;
}

.topicsListBox img {
	width: calc( 100% - 76.5625% );
}


.pager-list {
	width: 80%;
	height: auto;
	margin: 0 auto;
}

.pager-list li {
	float: left;}
	
.pager-list li a {
	border: 3px solid #b7a28d;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	color:#b7a28d;
	text-align: center;
  display: block;
	padding: 6px 0 4px;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
  width: 26px;}

.pager-list li.prev a,
.pager-list li.next a {
	padding: 0;
	border: none;
	width: auto;}

.pager-list li a:hover,
.pager-list li.pg-target a {
	background-color: #b7a28d;
	color:#FFF;}

.pager-list li.prev a:hover,
.pager-list li.next a:hover {
	background-color: transparent;}

.pager-list li + li {
  margin-left: 5px;}

.pg-non-bb {
  border: medium none !important;
	color:#b7a28d;
	padding-top:15px;}

.side-bar {
	float: right;
	width: 25%;
}

.side-bar li{
	margin-bottom: 20px;
}



.news-main .news-head{
	color: #000;
  font-size: 140%;
	margin-bottom: 30px;
  line-height: 150%;}

.news-main .news-head span {
}

.topicDate {
	display: block;
	line-height:140%;
	font-weight: normal;
	font-size: 13px;
	text-align: right;
}
	
.editor p, .editor ul li, .editor ol li{
	line-height: 1.5em;}
	
.editor ul li, .editor ol li{
	margin-left: 1.5em;}
	
.editor ul{
	list-style: outside;}
	
.editor table{
	border-collapse:collapse;
	border-left:1px solid #ECECEC;
	border-top:1px solid #ECECEC;
	width: 100%;}

.editor table th,
.editor table td{
	background-color:#FFF;
	border-right:1px solid #ECECEC;
	border-bottom:1px solid #ECECEC;
	line-height:1.4;
	padding:20px 20px 17px;
	text-align:left;}

.editor table th{
	background-color:#CEC1B4;
	font-weight: normal;}

.editor img{
	max-width:100%;}


.editor .news-photo{
	background: none;
	float: none;
	text-align: center;
	margin-bottom: 20px;
  height: auto;
  width: auto;}

.editor .news-photo{
	max-width: 100%!important;}

@media screen and (max-width: 767px) {
	
	.contents.news {
		padding-bottom: 40px;
	}

	.news-list {
		float: none;
		width: 100%;
		margin-bottom: 40px;
	}
	
	.side-bar {
		float: none;
		width: 100%;
	}
	
	.side-bar li {
		text-align: center;
	}

}


/* ------------------------------------------------------------

	お問い合わせ

------------------------------------------------------------ */

.contents.con {
	margin: 100px auto;
}

.contents.con p {
	line-height: 1.5em;
}

.tbl01 {
	border-collapse: collapse;
	width: 100%;
	border-left: 1px solid #CCC;
	border-top: 1px solid #CCC;
	
}

.tbl01 th,
.tbl01 td {
	padding: 20px 20px 17px;
	background-color: #FFF;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	line-height: 1.4;
	text-align: left;
	vertical-align: top;
	word-break: break-all
}

.tbl01 th {
	background-color: #ECE8E7;
}

@media screen and (max-width: 767px) {
	
	form .tbl01 th,
	form .tbl01 td {
		display: block;
		width: 100%;
	}
	
}



p.subscribe-btn {
	margin-top: 20px;
	margin-bottom: 70px;
}
p.subscribe-btn input,
p.subscribe-btn a {
	border: 1px solid #FFF;
	box-shadow:rgb(235, 149, 88) 0px 0px 0px 3px;
	-webkit-box-shadow:rgb(235, 149, 88) 0px 0px 0px 3px;
	-moz-box-shadow:rgb(235, 149, 88) 0px 0px 0px 3px;
	background-color: #EB9658;
	color: #FFF;
	font-weight: bold;
	display: inline-block;
	padding: 10px 40px;
	line-height: 140%;
	text-decoration: none;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
p.subscribe-btn input:hover,
p.subscribe-btn a:hover {
	cursor: pointer;
	filter: alpha(opacity=70) !important;
	opacity: 0.7 !important;
}
p.subscribe-btn input.gray {
	box-shadow:rgb(221, 221, 221) 0px 0px 0px 3px;
	-webkit-box-shadow:rgb(221, 221, 221) 0px 0px 0px 3px;
	-moz-box-shadow:rgb(221, 221, 221) 0px 0px 0px 3px;
	background-color: #ddd;
	color: #FFF;
}
p.subscribe-btn input.gray:hover {
	filter: alpha(opacity=70) !important;
	opacity: 0.7 !important;
	text-decoration: none;
}


input.wSS,
input.wS,
input.wM,
input.wL,
input.wLL,
select,
.tbl01 input {
	border: 1px solid #dddddd;
	font-size: 14px;
	line-height: 140%;
	padding: 8px 10px;
}

.tbl01 input {
	width: 100%;
	max-width: 270px;
}

select{
	margin:5px 0;
}
input {
	vertical-align: middle;
}
.wSS {
	width: 85px;
}
.wS {
	width: 170px;
}
.wM {
	width: 270px;
}
.wL {
	width: 470px;
}
.wLL {
	width: 340px;
}
.imeOn {
	ime-mode: active;
}
.imeOff {
	ime-mode: disabled;
}

textarea.txtarea,
.tbl01 textarea.inputText {
	height: 200px;
	width: 100% !important;
	max-width: 100% !important;
	padding: 10px;
	border: 1px solid #dddddd;
}

.tbl01 .checkbox  {
	width: auto;	
}

.tbl01 .ant2api-zip {
	width: 80px;	
}

option {
	font-size: 14px!important;
}
label {
	display: inline-block;
	cursor: pointer;
}
label:hover {
	color: #999;
}
input[type="checkbox"], input[type="radio"] {
	margin-right: 3px;
}
.form-red {
	color: #E54E52;
}
.err-text {
	line-height: 140%;
	font-size: 11px;
	color: #E54E52;
	margin-top: 5px;
}
input:focus, textarea:focus {
	background-color: #FC9;
}

@media screen and (max-width: 767px) {
	
	.inst01 form table {
		margin-bottom: 20px;
	}
	
	input.wSS,
	input.wS,
	input.wM,
	input.wL,
	input.wLL,
	select,
	.tbl01 input {
		font-size: 16px;
	}
	
}


/* ------------------------------------------------------------

	サイトマップ

------------------------------------------------------------ */

.sitemap{
	padding: 0;
}

.sitemap .box-l {
	float: left;
	width: 48.5%;
	margin-bottom: 40px;
}

.sitemap .box-r {
	float: right;
	width: 48.5%;
	margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
	
	.sitemap .box-l {
		float: none;
		width: 100%;
		margin-bottom: 40px;
	}

	.sitemap .box-r {
		float: none;
		width: 100%;
		margin-bottom: 40px;
	}
	
}


.sitemap h3{
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	font-size: 18px;
	letter-spacing: 3px;
	margin-bottom:15px;
	width: 100%;
}

.sitemap h3 span,
.sitemap h3 a{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color:#B09E86;
	border-radius: 5px;
	display: block;
	color: #FFF;
	padding: 10px 20px;
	width: 100%;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.sitemap h3 a:hover{
	filter: alpha(opacity=70) !important;
	opacity:0.7 !important;
}

.sitemap li {
	border-bottom: 1px dashed #CCC;
	padding: 0 20px;
}

.sitemap li a{
	display: block;
	padding: 10px 0;
	padding-left: 15px;
	width: 100%;

	position: relative;
	display: inline-block;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
}

.sitemap li a::before,
.sitemap li a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.sitemap li a::before{
	left: 4px;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #B09E86;
}

.sitemap li a:hover{
	color: #eb9658;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}



/*****プライバシーポリシーprivacy******/


.privacy{
	padding: 0;
}

.privacy h3{
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;
	font-size: 18px;
	letter-spacing: 3px;
	margin-bottom:15px;
	width: 100%;
}
.privacy h3 span{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color:#B09E86;
	border-radius: 5px;
	display: block;
	color: #FFF;
	padding: 10px 20px;
	width: 100%;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.privacy p{
	line-height: 1.5em;
}

.privacy .box{
	border: 1px solid #CCC;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 20px 50px;
	margin-bottom: 40px;
}


.recruit-msg {
	font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ",Meiryo,serif;	
}



/* タイトル系 */

.ttl-h3,
.ttl-h3 p {
	color:#5B4129;
	font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-align:center;
}

.ttl-h3 h3 {
	margin-top:15px !important;	
}

.ttl-h3 p {
	font-size:22px;
	text-align:center;
}

.ttl-h3 p strong {
	font-size:38px;
	text-align:center;
}



/* ------------------------------------------------------------

	スマートフォンナビ

------------------------------------------------------------ */

@media screen and (min-width: 768px) {
    .sp-wrap {
        display: none;
    }
}

.sp-wrap {
	position:fixed;
	z-index: 999;
	top: -120%;
	left: 0;
	width: 100%;
	height: 100vh;
	padding-top: 50px;
	background: #F6F5F2;
	transition: all 0.6s;
}

.sp-wrap.panelactive {
	top: 0;
}

.sp-wrap.panelactive .sp-wrap__body {
	position: fixed;
	z-index: 999; 
	width: 100%;
	height: 100vh;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.sp-nav {
	border-top: 1px solid #D5D5D5;
}

.sp-nav li {
	list-style: none;
}

.sp-nav li a,
.sp-nav li div {
	display: block;
	padding: 20px 0 20px 20px;
	border-bottom: 1px solid #D5D5D5;
	color: #333;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

.sp-nav-child-open {
	position: relative;
}

.sp-nav-child-open:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 24px;
	display: block;
	width: 8px;
	height: 8px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: rotate(45deg) translateY(-50%);
}

.sp-nav-child-open.is-active:after {
	border-right: none;
	border-bottom: none;
	border-top: 3px solid #000;
	border-left: 3px solid #000;
	transform: rotate(45deg) translateY(-50%);
}

.sp-nav li ul {
	display: none;
}

.sp-nav li ul li {
}

.sp-nav li ul a,
.sp-nav li ul div {
	background-color: #fff;
	padding-left: 40px;
}

.sp-nav-contact-wrap {
	padding-bottom: 80px;
}

.sp-nav-contact {
	margin: 20px 20px 0;
	padding: 20px;
	background-color: #fff;
	border-radius: 10px;
}

.sp-nav-contact__text {
	margin: 20px 0 32px;
}

.sp-nav-contact__text > :last-child {
	margin-bottom: 0;
}

.btn-sp {
	position: relative;
	display: block;
	padding: 16px 0;
	border-radius: 50px;
	text-align: center;
	color: #fff;
	line-height: 1;
}

.btn-sp--tel {
	background-color: #D59A61;
}

.btn-sp--mail {
	background-color: #6C9C59;
}

.btn-sp:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 24px;
	display: block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}

.btn-sp--tel:before {
	width: 16px;
	height: 24px;
	background-image: url("../images/icon-phone.svg");
}

.btn-sp--mail:before {
	width: 24px;
	height: 18px;
	background-image: url("../images/icon-mail.svg");
}


.sp-nav-openbtn {
	position: relative;
	display: none;
	width: 50px;
	height: 50px;
	cursor: pointer;
}

@media screen and (max-width: 767px) {
	
	.sp-nav-openbtn {
		display: block;
	}
	
	.sp-nav-openbtn.active {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1000;
	}

}

  
.sp-nav-openbtn span {
	display: inline-block;
	position: absolute;
	left: 14px;
	height: 3px;
	width: 45%;
	background-color: #000;
	border-radius: 2px;
	transition: all .4s;
  }

.sp-nav-openbtn span:nth-of-type(1) { top: 15px;}
.sp-nav-openbtn span:nth-of-type(2) { top: 23px;}
.sp-nav-openbtn span:nth-of-type(3) { top: 31px;}

.sp-nav-openbtn.active span:nth-of-type(1) {
	top: 18px;
	left: 18px;
	width: 30%;
	transform: translateY(6px) rotate(-45deg);
}

.sp-nav-openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.sp-nav-openbtn.active span:nth-of-type(3){
	top: 30px;
	left: 18px;
	width: 30%;
	transform: translateY(-6px) rotate(45deg);
}




/* ------------------------------------------------------------

	他にもこんなこと

------------------------------------------------------------ */

#detail_wrapper {
    line-height: 1.6;
    padding-bottom: 100px;
}

#detail_wrapper h2 {
    text-align: center;
}

#detail_wrapper .align_center {
    text-align: center;
}

#detail_wrapper p {
    font-size: 16px;
}

#detail_wrapper p:not(:last-child) {
    margin-bottom: 1.6em;
}

#detail_wrapper .detail_col {
    display: flex;
    flex-wrap: wrap;
    column-gap: 60px;
    row-gap: 40px;
    margin-top: 60px;
}

#detail_wrapper .detail_col .item {
    width: calc(50% - 30px);
}

#detail_wrapper .detail_col .item img {
    display: block;
    width: 100%;
    margin-bottom: 20px;
}

#detail_wrapper .detail_col .item .detail_btn {
    font-size: 16px;
    font-weight: bold;
    color: #080808;
    display: block;
    width: 100%;
    padding: 20px;
    background-color: #c8c8c8;
    border: 2px solid #c8c8c8;
    text-align: center;
    position: relative;
}

#detail_wrapper .detail_col .item .detail_btn:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #080808;
    border-right: 2px solid #080808;
    position: absolute;
    right: 27px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotate(45deg);
}

#detail_wrapper .detail_col .item .detail_btn:hover {
    background-color: #fff;
}

#detail_wrapper .detail_back_btn {
    font-size: 16px;
    font-weight: bold;
    color: #080808;
    display: block;
    width: 440px;
    max-width: 100%;
    padding: 20px;
    background-color: #EB9658;
    border: 2px solid #EB9658;
    text-align: center;
    position: relative;
    margin: 100px auto 0;
}

#detail_wrapper .detail_back_btn:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #080808;
    border-left: 2px solid #080808;
    position: absolute;
    left: 27px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotate(-45deg);
}

#detail_wrapper .detail_back_btn:hover {
    background-color: #fff;
}

.detail_link_btn {
    font-size: 16px;
    font-weight: bold;
    color: #080808;
    display: block;
    width: 100%;
    padding: 20px;
    background-color: #EB9658;
    border: 2px solid #EB9658;
    text-align: center;
    position: relative;
}

.detail_link_btn:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #080808;
    border-right: 2px solid #080808;
    position: absolute;
    right: 27px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotate(45deg);
}

.detail_link_btn:hover {
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    #detail_wrapper h2 {
        font-size: 18px !important;
    }
    
    #detail_wrapper .align_center {
        text-align: left;
    }
    
    #detail_wrapper .detail_col .item {
        width: 100%;
    }
}




/* ------------------------------------------------------------

	法人理念 追記

------------------------------------------------------------ */

#main .section_greeting .contents {
    max-width: 960px;
    padding-top: 80px;
    padding-bottom: 80px;
}

#main .section_greeting .contents h2,
#main .section_philosophy .contents h2{
    text-align: center;
}

#main .section_philosophy {
    background-color: #fff;
}

#main .section_philosophy .contents {
    max-width: 960px;
    padding-top: 100px;
    padding-bottom: 20px;
}

#main .section_philosophy .contents h2 {
    margin-bottom: 50px;
}

#main .section_philosophy .contents p {
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 1.9;
}

#main .section_philosophy img {
    width: 100%;
}

#main .section_vision {
    padding: 140px 0 160px;
    background-image: url('/images/inst_vision.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
}

#main .section_vision:before,
#main .section_vision:after {
    content: "";
    position: absolute;
    width: 440px;
    top: 140px;
    bottom: 0;
    max-width: calc(50% - 30px);
    background-repeat: no-repeat;
    background-size: contain;
}

#main .section_vision:before {
    left: 0;
    background-image: url('/images/inst_vision_l.png');
}

#main .section_vision:after {
    right: 0;
    background-image: url('/images/inst_vision_r.png');
}

#main .section_vision .contents {
    background-color: rgba(255,255,255,.9);
    border-radius: 10px;
    padding: 80px 70px;
    position: relative;
    z-index: +1;
}

#main .section_vision .contents h2 {
    text-align: center;
    border: none;
}

#main .section_vision .contents h3 {
    margin-bottom: 30px;
    font-size: 18px;
    text-align: center;
    position: relative;
    margin-top: 45px;
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,"Lucida Grande", "segoe UI", Verdana, Arial, sans-serif;
}

#main .section_vision .contents h3:before,
#main .section_vision .contents h3:after {
    content: "";
    position: absolute;
    top: 50%;
    width: calc(50% - 2em - 20px);
    height: 1px;
    background-color: #6b6b6b;
}

#main .section_vision .contents h3:before {
    left: 0;
}

#main .section_vision .contents h3:after {
    right: 0;
}

#main .section_vision .contents .num_lead {
    padding-left: 1.4em;
    font-size: 24px;
    font-weight: bold;
    color: #d8630e;
    position: relative;
    margin-bottom: 10px;
}

#main .section_vision .contents .num_lead span {
    font-size: 20px;
    position: absolute;
    left: 0;
    top: .4em;
    line-height: 1;
}

#main .section_vision .contents ul {
    padding-left: 33px;
}

#main .section_vision .contents li {
    position: relative;
    padding-left: 1.2em;
    line-height: 1.8;
}

#main .section_vision .contents li:before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1px solid #707070;
    position: absolute;
    top: .6em;
    left: 0;
}

#main .section_vision .contents li+li {
    margin-top: 10px;
}

#main .section_vision .contents ul + .num_lead {
    margin-top: 28px;
}

@media screen and (min-width: 768px) {
    #main .section_greeting .contents h2 br,
    #main .section_philosophy .contents h2 br,
    #main .section_vision .contents h2 br {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    #main .section_philosophy .contents p {
        font-size: 20px;
    }
    
    #main .section_greeting .contents h2,
    #main .section_philosophy .contents h2,
    #main .section_vision .contents h2 {
        font-size: 24px;
    }
    
    #main .section_greeting .contents {
        padding-top: 40px;
        padding-bottom: 60px;
    }
    
    #main .section_vision {
        padding: 100px 0;
    }
    
    #main .section_vision .contents {
        padding: 40px 20px 60px;
    }
    
    #main .section_vision:before,
    #main .section_vision:after {
        content: initial;
    }
    
    #main .section_vision .contents .num_lead {
        font-size: 18px;
    }
    
    #main .section_vision .contents .num_lead span {
        font-size: 14px;
    }
    
    #main .section_vision .contents ul {
        padding: 0;
    }
}



/***** トップページ改修 追記 ******/
/*エディタ用CSS：#cms_contents_area*/
.catchbox {
    width: 418px;
    height: 333px;
    top: 150px;
    background: none;
    background-color: rgba(255,255,255,.85);
}

.catchbox.js-fade {
    opacity: 0;
    transition: opacity 1s ease, transform 1s ease;
}

.catchbox.js-fade.is-show {
    opacity: 1;
}

.top-catchsec {
    margin-top: 100px;
    position: relative;
}

.top-catchsec .topcatch_1 {
    width: 480px;
    height: 480px;
    max-width: 50vw;
    max-height: 50vw;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #eceace;
}

.top-catchsec .topcatch_1 p {
    font-family: "游明朝", "Yu Mincho", YuMincho, serif;
    font-size: clamp(16px,2vw,20px);
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
}

.top-catchsec .topcatch_1 em {
    font-style: normal;
    font-size: 1.4em;
}

.top-catchsec .topcatch_2 {
    width: 433px;
    height: 433px;
    max-width: 48vw;
    max-height: 48vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 50px;
    background-color: #fff;
    border-radius: 50%;
    margin: -310px 0 0 auto;
}

.top-catchsec .topcatch_2 .topcatch_2_lead {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    color: #876a6a;
    margin-bottom: 16px;
}

.top-catchsec .topcatch_2 .topcatch_2_ol {
    counter-reset: ol;
    margin-bottom: 8px;
}

.top-catchsec .topcatch_2 .topcatch_2_ol li {
    padding: 0 0 0 2em;
    list-style-type: none;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    position: relative;
}

.top-catchsec .topcatch_2 .topcatch_2_ol li+li {
    margin-top: 8px;
}

.top-catchsec .topcatch_2 .topcatch_2_ol li:before {
    counter-increment: ol 1;
    content: counter(ol, decimal-leading-zero) "";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 20px;
    font-family: "游明朝", "Yu Mincho", YuMincho, serif;
    font-weight: bold;
    color: #887d6f;
    line-height: 1.5;
}

.top-catchsec .topcatch_2 .topcatch_2_text {
    font-size: 16px;
    line-height: 1.875;
}

.top-catchsec .topcatch_2 .topcatch_2_text em {
    font-weight: bold;
    font-style: normal;
    display: inline;
}

.top-catchsec .illust_01,
.top-catchsec .illust_02,
.top-catchsec .illust_03,
.top-catchsec .illust_04,
.top-catchsec .illust_05,
.top-catchsec .illust_06,
.top-catchsec .illust_07,
.top-catchsec .illust_08 {
    display: block;
    height: auto;
    margin: 0;
    position: absolute;
}


@media screen and (min-width: 768px) {
    .top-catchsec .illust_01 {
        left: -40px;
        top: -37px;
        width: 182px;
        max-width: 18vw;
    }
    
    .top-catchsec .illust_02 {
        right: calc(100% + 40px);
        top: 170px;
        width: 148px;
    }
    
    .top-catchsec .illust_03 {
        right: calc(100% - 44px);
        bottom: 33px;
        width: 208px;
    }
    
    .top-catchsec .illust_04 {
        left: 500px;
        top: -23px;
        width: 203px;
        max-width: 19vw;
    }
    
    .top-catchsec .illust_05 {
        left: clamp(0px,30vw,347px);
        bottom: 42px;
        width: 202px;
        max-width: 20vw;
    }
    
    .top-catchsec .illust_06 {
        left: calc(100% - 85px);
        top: -17px;
        width: 250px;
        max-width: 22vw;
    }
    
    .top-catchsec .illust_07 {
        left: calc(100% + 67px);
        top: 243px;
        width: 124px;
    }
    
    .top-catchsec .illust_08 {
        left: calc(100% + 18px);
        bottom: 18px;
        width: 173px;
    }
    
    .top-catchsec br.sp {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .catchbox {
        border: 1px solid #917d56;
        width: calc(100% - 50px);
        top: 60px;
        left: 25px;
        right: 25px;
        transform: initial;
        height: auto;
        padding: 25px 0;
    }
    
    .catchbox h2 img {
        width: 80%;
        height: auto;
        display: block;
        margin: 0 auto;
    }
    
    .catchbox a img {
        width: 100%;
    }
    
    .top-catchsec {
        padding: 90px 0 230px;
    }
    
    .top-catchsec .topcatch_1 {
        margin: 0 auto 60px;
        width: 300px;
        height: 300px;
        max-width: 100%;
        max-height: calc(100vw - 40px);
        padding: 0 20px;
    }
    
    .top-catchsec .topcatch_2 {
        margin: 0;
        width: 100%;
        height: auto;
        max-width: 100%;
        max-height: initial;
        border-radius: 30px;
        padding: 46px 24px 40px;
    }
    
    .top-catchsec .topcatch_2 .topcatch_2_ol {
        margin-bottom: 16px;
    }
    
    .top-catchsec .topcatch_2 .topcatch_2_text {
        line-height: 1.5;
    }
    
    .top-catchsec .illust_02 {
        display: none;
    }
    
    .top-catchsec .illust_01 {
        right: calc(50% + 48px);
        top: 47px;
        width: 93px;
    }
    
    .top-catchsec .illust_03 {
        left: calc(50% + 34px);
        top: 330px;
        width: 84px;
    }
    
    .top-catchsec .illust_04 {
        left: calc(50% + 27px);
        top: 0;
        width: 126px;
    }
    
    .top-catchsec .illust_05 {
        left: 50%;
        bottom: 115px;
        width: 105px;
    }
    
    .top-catchsec .illust_06 {
        right: calc(50% + 10px);
        top: 342px;
        width: 125px;
    }
    
    .top-catchsec .illust_07 {
        left: calc(50% + 38px);
        bottom: 0;
        width: 104px;
    }
    
    .top-catchsec .illust_08 {
        right: calc(50% + 10px);
        bottom: 33px;
        width: 162px;
    }
}


/***** フッター改修 追記 ******/

.foot-cont._contact_box {
    background-color: #fff;
    padding: 14px 30px 23px;
}

.foot-cont._contact_box .lead {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.28;
    margin: 0;
}

.foot-cont._contact_box .exp_lead {
    font-weight: bold;
    color: #986b6b;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 4px;
    line-height: 1.35;
}

.foot-cont._contact_box .exp_lead:before,
.foot-cont._contact_box .exp_lead:after {
    content: "";
    height: 1em;
    width: 7px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.foot-cont._contact_box .exp_lead:before {
    background-image: url('/images/ft-exp-l.png');
}

.foot-cont._contact_box .exp_lead:after {
    background-image: url('/images/ft-exp-r.png');
}

.foot-cont._contact_box .exp_main {
    margin: 3px 0 0;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
    background-color: #986b6b;
    line-height: 1.35;
    padding: 6px 5px;
    border-radius: 5px;
}

.foot-cont._contact_box .exp_text {
    font-size: 14px;
    line-height: 1.3;
    margin-top: 6px;
    text-align: left;
}

.foot-cont._contact_box .ft_tel {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 205px;
    white-space: nowrap;
    margin: 7px auto 0;
    padding-left: 25px;
    background-image: url('/images/ft-tel-icon.png');
    background-repeat: no-repeat;
    background-size: 16px auto;
    background-position: left center;
}

.foot-cont._contact_box .ft_tel .num {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: -2px;
    display: block;
}

.foot-cont._contact_box .ft_tel .txt {
    font-size: 12px;
    line-height: 1.3;
    display: block;
}

.foot-cont._contact_box .ct_btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 11px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    line-height: 1.35;
    padding: 15px 0;
    background-color: #df823e;
    position: relative;
}

.foot-cont._contact_box .ct_btn:before {
    content: "";
    width: 19px;
    height: 15px;
    background-image: url('/images/ft-mail-icon.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.foot-cont._contact_box .ct_btn:after {
    content: "";
    position: absolute;
    top: 5px;
    right: 5px;
    bottom: 5px;
    left: 5px;
    border: 1px solid #fff;
}

.foot-cont._contact_box .ct_btn:hover {
    opacity: .8;
}


/* ------------------------------

    TOP - MODULE:blog_recent

------------------------------ */

.head-parts {
    position: relative;
    margin: 40px 0 46px;
    padding: 20px 0;
}

.head-parts::before,
.head-parts::after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background-repeat: no-repeat;
    background-position: center center;
}

.head-parts::before { top: 0; background-image: url(../images/h3-top.png);}
.head-parts::after { bottom: 0; background-image: url(../images/h3-bottom.png);}

.head-parts__title {
    margin: 0 0 6px;
    padding: 0;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 1;
    letter-spacing: 5.24px;
    color: #000;
    text-align: center;
}

.head-parts__sup {
    margin: 0;
    padding: 0;
    font-size: 13px;
    font-family: serif;
    line-height: 1;
    color: #A28D7A;
    text-align: center;
}

@media screen and (max-width: 767px) {
    
    .head-parts {
        margin: 20px 0;
    }
    
}


.news-list-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -20px -12px;
}

.news-list-col {
    width: 33.33333333%;
    margin: 0 0 64px;
    padding: 0 20px;
}

@media screen and (max-width: 767px) {
    
    .news-list-row {
        margin-bottom: 0;
    }
    
    .news-list-col {
        width: 100%;
        margin: 0 0 36px;
    }
    
    .news-list-row--home .news-list-col:not(:first-child) {
        display: none;
    }
    
}


.news-card {}

.news-card__photo {
    margin: 0 0 12px;
}

.news-card__photo a {
    overflow: hidden;
    display: block;
}

.news-card__photo img {
    display: block;
    max-width: none;
    width: 100%;
    aspect-ratio: 306 / 201;
    object-fit: cover;
}

.news-card__photo a:hover img {
    transform: scale(1.1);
}

.news-card__header {
    display: flex;
    align-items: center;
    column-gap: 16px;
    margin: 0 0 10px;
}

.news-card__date {
    margin: 0;
    font-size: 13px;
    font-weight: bold;
    line-height: 1;
    color: #9F9F9F;
}

.news-card__cat ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -5px;
    padding: 0;
    list-style: none;
}

.news-card__cat li {
    padding: 0 5px;
}

.cat-badge {
    display: block;
    width: 100%;
    max-width: 86px;
    padding: 4px;
    background-color: #D3ECF9;
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    color: #333;
    line-height: 1;
}

.cat-badge--1 {background-color: #FFEA7F;}
.cat-badge--2 {background-color: #EFD7D7;}
.cat-badge--3 {background-color: #D3ECF9;}

.news-card__title {
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 1.5;
}

.news-card__title a {
    color: #000;
}

.btn-group {
    display: flex;
    align-items: center;
    margin: 0;
}

.btn-group--justify-center {
    justify-content: center;
}

.btn-list {
    position: relative;
    display: block;
    width: 100%;
    max-width: 300px;
    padding: 20px 38px 20px 32px;
    background-color: #fff;
    border: 1px solid #A79999;
    color: #000;
    font-weight: bold;
    text-decoration: none;
}

.btn-list::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 24px;
    display: block;
    width: 14px;
    height: 14px;
    background: url("../images/arrow-right.svg") no-repeat center center;
    background-size: contain;
    transform: translateY(-50%);
}


/* ------------------------------

    新着情報

------------------------------ */

.news-category-nav {
    margin: 60px 0 0;
    padding: 0 2rem;
}

.news-category-nav ul {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 78px;
    margin: 0 0 -10px;
    padding: 0;
    list-style: none;
}

.news-category-nav li {
    margin: 0 0 10px;
    padding: 0;
}

.news-category-nav a {
    position: relative;
    display: inline-block;
    padding-top: 12px;
    color: #101010;
    font-weight: 800;
}

.news-category-nav a.is-active {
    color: #1F2774;
}

.news-category-nav a::before {
    content: '';
    position: absolute;
    top: 0;
    display: block;
    width: 100%;
    height: 3px;
    background-color: transparent;
}

.news-category-nav a.is-active::before {
    background-color: #F08233;
}

@media screen and (max-width: 767px) {
    
    .news-category-nav {
        margin: 20px 0 0;
    }

    .news-category-nav ul {
        column-gap: 32px;
    }
    
}


.pagination {
    display: flex;
    justify-content: center;
}

.pagination__col {
    margin-right: -1px;
}

.pagination-btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-around;
    width: 45px;
    height: 45px;
    border: 1px solid #C5C5C5;
    color: #101010;
}

.pagination-btn--active {
    background-color: #F07F2E;
    border-color: #F07F2E;
    color: #fff;
}

.pagination__col--prev .pagination-btn::before,
.pagination__col--next .pagination-btn::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 6px;
    height: 6px;
    border-bottom: 2px solid currentColor;
}

.pagination__col--prev .pagination-btn::before {
    border-left: 2px solid currentColor;
    transform: translate(-50%, -50%) rotate(45deg);
}
.pagination__col--next .pagination-btn::before {
    border-right: 2px solid currentColor;
    transform: translate(-50%, -50%) rotate(-45deg);
}


.blog-body { margin-bottom: 40px;}
.blog-more { margin-bottom: 40px;}