@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainVisual {
	padding-top: 125px;
	background: url("../img/index/main_bg.jpg") no-repeat center top/cover;
}
.mainVisual .mainBox h2 {
	margin-bottom: 20px;
	font-family: "Noto Serif JP";
	font-size: 6rem;
	font-weight: bold;
	line-height: 1.28;
	letter-spacing: 0.06em;
}
.mainVisual .mainBox .txt {
	margin-bottom: 102px;
	font-size: 1.7rem;
}
.mainVisual .mainBox ul {
	display: flex;
	justify-content: space-between;
	font-size: 0;
}
.mainVisual .mainBox ul li {
	padding: 39px 43px 37px;
	width: calc((100% - 45px)/3);
	text-align: center;
	background-color: #fff;
	border-radius: 15px 15px 0 0;
	box-sizing: border-box;
}
.mainVisual .mainBox ul li .img {
	margin-bottom: 14px;
}
.mainVisual .mainBox ul li h3 {
	margin-bottom: 17px;
	font-size: 2.2rem;
	font-weight: bold;
}
.mainVisual .mainBox ul li p {
	color: #537D25;
	font-size: 1.5rem;
	line-height: 1.85;
	text-align: left;
}
.aboutBox {
	margin-bottom: 70px;
	padding-top: 60px;
}
.aboutBox .ttl01 {
	margin-bottom: 12px;
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
}
.aboutBox .txt {
	margin-bottom: 56px;
}
.aboutBox .comImgBoxR {
	margin-bottom: 25px;
}
.aboutBox .ttl02 {
	margin-bottom: 20px;
	color: #537D25;
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: left;
}
.menuBox {
	padding: 61px 0 70px;
	background-color: #fff;
}
.menuBox h2 {
	margin-bottom: 70px;
}
.menuBox .menuList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.menuBox .menuList::after {
	width: calc((100% - 75px)/3);
	content: "";
}
.menuBox .menuList li {
	width: calc((100% - 75px)/3);
	position: relative;
}
.menuBox .menuList li:not(:nth-last-child(-n + 3)) {
	margin-bottom: 51px;
}
.menuBox .menuList li .num {
	position: absolute;
	left: 50%;
	top: -60px;
	transform: translateX(-50%);
	color: #537D25;
	font-family: "Roboto";
	font-size: 6rem;
	font-weight: 500;
	letter-spacing: -0.05em;
}
.menuBox .menuList li .photo {
	margin-bottom: 24px;
}
.menuBox .menuList li .photo img {
	width: 100%;
}
.menuBox .menuList li h3 {
	margin-bottom: 25px;
	font-size: 1.9rem;
	font-weight: bold;
	text-align: center;
}
#main .priceBox {
	margin-bottom: 72px;
	padding-top: 60px;
}
.priceBox h2 {
	margin-bottom: 55px;
}
.priceBox .tableBox {
	margin: 0 90px;
}
.priceBox .comTab .th01 {
	width: 33.2%;
}
.priceBox .comTab .th02, .priceBox .comTab .th03 {
	width: 16.6%;
}
.priceBox .comTab th span {
	display: block;
	font-size: 1.5rem;
	font-weight: normal;
	line-height: 1.66;
}
.bgBox {
	padding: 70px 0 85px;
	background-color: #fff;
}
.bgBox .mainBox {
	display: flex;
	justify-content: space-between;
}
.bgBox .headLine01 .jp {
	margin-bottom: 0;
	font-size: 3.5rem;
}
.bgBox .newsBox {
	width: 516px;
}
.bgBox .newsBox h2 {
	margin-bottom: 60px;
}
.bgBox .newsBox .iframeBox {
	margin: 0 auto;
	max-width: 500px;
	height: auto;
}
.bgBox .newsBox .iframeBox iframe {
	width: 100%;
}
.bgBox .rightBox {
	width: 515px;
}
.bgBox .contactBox {
	margin-bottom: 7px;
	padding: 55px 44px 50px;
	background-color: #FAF9F5;
	box-sizing: border-box;
}
.bgBox .contactBox h2, .bgBox .recruitBox h2 {
	margin-bottom: 18px;
}
.bgBox .contactBox p {
	margin-bottom: 27px;
}
.bgBox .recruitBox p {
	margin-bottom: 20px;
}
.bgBox .recruitBox {
	padding: 30px 44px 40px;
	background-color: #FAF9F5;
	box-sizing: border-box;
}
.profileBox {
	padding-top: 60px;
}
.profileBox h2 {
	margin-bottom: 57px;
}
.profileBox h3 {
	margin-bottom: 14px;
	font-size: 1.7rem;
}
.profileBox ul {
	margin-bottom: 58px;
}
.profileBox ul li {
	margin-bottom: 10px;
	padding: 39px 20px 55px;
	text-align: center;
	background-color: #fff;
	border-radius: 16px;
}
.profileBox ul li:last-child {
	margin-bottom: 0;
}
.profileBox ul li span {
	margin-bottom: 5px;
	display: block;
	color: #EF8661;
	font-family: "Noto Serif JP";
	font-size: 3rem;
	font-weight: bold;
}
.profileBox .comImgBox {
	margin-bottom: 0;
	padding: 46px 0 58px;
	flex-wrap: wrap;
}
.profileBox .comImgBox h3 {
	margin-bottom: 42px;
	width: 100%;
	text-align: center;
}
@media all and (max-width: 896px) {
	.mainVisual {
		padding-top: 45px;
		background: url("../img/index/sp_main_bg.jpg") no-repeat center top/900px auto;
	}
	.mainVisual .mainBox h2 {
		margin-bottom: 10px;
		font-size: 3.4rem;
		text-align: center;
	}
	.mainVisual .mainBox .txt {
		margin: 0 auto 200px;
		max-width: 226px;
		font-size: 1.5rem;
		text-align: center;
	}
	.mainVisual .mainBox ul {
		display: block;
	}
	.mainVisual .mainBox ul li {
		margin: 0 auto 9px;
		padding: 25px;
		width: auto;
		border-radius: 15px;
	}
	.mainVisual .mainBox ul li:last-child {
		margin-bottom: 0;
	}
	.mainVisual .mainBox ul li .img {
		margin-bottom: 7px;
	}
	.mainVisual .mainBox ul li h3 {
		font-size: 2rem;
	}
	.mainVisual .mainBox ul li p {
		width: auto;
		font-size: 1.5rem;
	}
	.aboutBox {
		margin: 0 24px 66px;
		padding-top: 65px;
	}
	.aboutBox .comImgBoxR {
		margin-bottom: 20px;
		padding-bottom: 35px;
	}
	.aboutBox .ttl02 {
		margin-bottom: 22px;
		color: #537D25;
		font-size: 2.2rem;
	}
	.menuBox {
		padding: 50px 0 58px;
		background-color: #fff;
	}
	.menuBox h2 {
		margin-bottom: 73px;
	}
	.menuBox .menuList {
		display: block;
	}
	.menuBox .menuList li {
		width: auto;
	}
	.menuBox .menuList li:not(:last-child) {
		margin-bottom: 60px;
	}
	.menuBox .menuList li .num {
		font-size: 5.5rem;
		top: -51px;
	}
	.menuBox .menuList li h3 {
		font-size: 1.8rem;
	}
	.priceBox {
		margin-bottom: 55px !important;
	}
	.priceBox .tableBox {
		margin: 0;
	}
	.priceBox .tableBox .comTab {
		margin-bottom: 20px;
	}
	.priceBox .tableBox .comTab tr th, .priceBox .tableBox .comTab tr td {
		width: 100%;
		height: 64px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		line-height: 1.3;
		text-align: center;
		vertical-align: middle;
	}
	.priceBox .tableBox .comTab .tr01 {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.priceBox .tableBox .comTab th {
		padding: 5px 10px;
	}
	.priceBox .tableBox .comTab tr:not(:first-child) th, .priceBox .tableBox .comTab tr td {
		border-top: 0px;
	}
	.priceBox .tableBox .comTab .th02 {
		border-right: 0px;
	}
	.priceBox .tableBox .comTab .tr01 td {
		padding: 15px 5px 15px 20px;
		width: 67.3%;
		text-align: left;
	}
	.priceBox .tableBox .comTab .th02 {
		width: 32.7%;
	}
	.priceBox .comTab th span {
		width: 100%;
	}
	.bgBox {
		padding: 53px 0 55px;
	}
	.bgBox .newsBox {
		margin-bottom: 45px;
		width: 100%;
		float: none;
	}
	.bgBox .newsBox h2 {
		margin-bottom: 55px;
	}
	.bgBox .newsBox .iframeBox {
		width: auto;
		height: auto;
	}
	.bgBox .contactBox {
		margin-bottom: 12px;
		padding: 55px 24px 50px;
		width: auto;
		float: none;
	}
	.bgBox .contactBox .headLine01 .jp, .bgBox .recruitBox .headLine01 .jp {
		margin-bottom: 3px;
		font-size: 2.5rem;
	}
	.bgBox .contactBox p {
		margin-bottom: 25px;
		width: auto;
	}
	.bgBox .mainBox {
		display: block;
	}
	.bgBox .rightBox {
		width: auto;
	}
	.bgBox .recruitBox {
		padding: 50px 24px 50px;
		width: auto;
		float: none;
	}
	.bgBox .recruitBox p {
		margin-bottom: 25px;
		width: auto;
	}
	.profileBox {
		padding-top: 55px;
	}
	.profileBox h2 {
		margin-bottom: 54px;
	}
	.profileBox ul {
		margin-bottom: 48px;
	}
	.profileBox ul li {
		padding: 39px 25px 41px;
	}
	.profileBox ul li p {
		line-height: 1.66;
	}
	.profileBox ul li span {
		margin-bottom: 16px;
		font-size: 2.2rem;
		line-height: 1.4;
	}
	.profileBox .comImgBox {
		margin: 0 24px 0;
		padding-bottom: 38px;
	}
	.profileBox .comImgBox h3 {
		margin-bottom: 35px;
	}
}
@media all and (max-width: 374px) {
	.mainVisual .mainBox h2 {
		font-size: 2.8rem;
	}
	.aboutBox {
		margin: 0 15px 66px;
		padding-top: 65px;
	}
	.priceBox .tableBox .comTab th {
		padding: 5px 5px;
	}
	.priceBox .tableBox .comTab .tr01 td {
		padding: 15px 5px;
		font-size: 1.6rem;
	}
	.bgBox .contactBox,.bgBox .recruitBox {
   
    padding: 55px 15px 50px;
   
}
	.profileBox ul li {
		padding: 39px 15px 41px;
	}
	.profileBox .comImgBox {
		margin: 0 15px 0;
	}
}


.facebook-wrapper > .fb-page { 
    width: 100%; 
} 
 
.facebook-wrapper > .fb -page> span, 
.facebook-wrapper iframe { 
    width: 100%! important; 
}