@charset "utf-8";

.under_top {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.under_top section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 6em 0 0 0;
	border-top: 1px solid #CCC;
}
.under_top section .title_und {
	margin-bottom: 5em;
}
.under_top section .main_image {
	position: relative;
}
.under_top section .img_subject {
	position: absolute;
	bottom: -1.5em;
	right: 0;
}
@media screen and (max-width: 860px) {
	.under_top section {
		padding: 3em 0 0 0;
		border-top: none;
	}
	.under_top section .title_und {
		margin-bottom: 3em;
	}
}


.img_list3n {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1090px;
	width: 100%;
	margin: auto;
}
.img_list3n li {
	width: 31.5%;
	margin: 0 0 1.5em 0;
}
.img_list3n li span {
	display: block;
	margin: 0.4em 0 0.5em 0;
	line-height: 1.5;
	font-size: 1em;
	text-align: left;
}
@media screen and (max-width: 860px) {
	.img_list3n li {
		width: 48%;
		margin: 0 0 1.5em 0;
	}
	.img_list3n li img {
		width: 100%;
	}
	.img_list3n li span {
		font-size: 0.9em;
	}
}
@media screen and (max-width: 460px) {
	.img_list3n li {
		width: 48%;
		margin: 0 0 0.5em 0;
	}
}

.img_list4n {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1090px;
	width: 100%;
	margin: auto;
}
.img_list4n li {
	width: 23%;
	margin: 0 0 1.5em 0;
}
@media screen and (max-width: 860px) {
	.img_list4n li {
		width: 31%;
		margin: 0 0 1.5em 0;
	}
}
@media screen and (max-width: 460px) {
	.img_list4n li {
		width: 48%;
		margin: 0 0 0.5em 0;
	}
}


.box_about {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.box_about section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 8em 0;
}
.box_about section p {
	max-width: 800px;
	margin: auto;
	padding: 0 0 6em 0;
	line-height: 2;
	text-align: left;
	font-size: 1.1em;
}
.box_about section img {
	margin: 0 auto 6em auto;
}
.box_about section ul {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0;
	padding: 0;
}
.box_about section ul li {
	display: block;
	margin: 0 1em;
	padding: 0;
	align-self: center;
	max-width: 30%;
}
.box_about section ul li a {
	width: 19em;
	max-width: 100%;
}
@media screen and (max-width: 860px) {
	.box_about section {
		margin: auto;
		padding: 4em 0;
	}
	.box_about section p {
		padding: 0 0 4em 0;
	}
	.box_about section img {
		margin: 0 auto 4em auto;
	}
	.box_about section ul {
		flex-wrap: wrap;
	}
	.box_about section ul li {
		margin: 0 1em 1em 1em;
		max-width: 100%;
	}
}

.box_school {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.box_school section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 8em 0;
}
.box_school section p {
	max-width: 800px;
	margin: auto;
	padding: 0 0 6em 0;
	line-height: 2;
	text-align: left;
	font-size: 1.1em;
}
@media screen and (max-width: 860px) {
	.box_school section {
		margin: auto;
		padding: 4em 0;
	}
	.box_school section p {
		padding: 0 0 4em 0;
	}
}

.box_garden {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.box_garden section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 4em 0 3em 0;
}
.box_garden section p {
	max-width: 800px;
	margin: auto;
	padding: 0 0 3em 0;
	line-height: 2;
	text-align: left;
	font-size: 1.1em;
}
@media screen and (max-width: 860px) {
	.box_garden section {
		margin: auto;
		padding: 4em 0;
	}
	.box_garden section p {
		padding: 0 0 4em 0;
	}
}

.box_gallery {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.box_gallery section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 8em 0 0 0;
}
.box_gallery section h3 {
	max-width: 800px;
	margin: 0 auto 1.5em auto;
	padding: 0 0 1em 0;
	font-size: 1.3em;
	font-weight: bold;
	border-bottom: 1px solid #CCC;
}
.box_gallery section p {
	max-width: 800px;
	margin: auto;
	padding: 0 0 6em 0;
	line-height: 2;
	text-align: left;
	font-size: 1.1em;
}
.box_gallery section .box_g_about {
	margin: 0 auto 4em auto;
}
.box_gallery section .box_g_about ul.opentime {
	list-style: none;
	margin: 0 auto 2em auto;
}
.box_gallery section .box_g_about ul.opentime li {
	display: inline-block;
	margin: 0 1em 1em 0;
	font-size: 1.1em;
	white-space: nowrap;
}
.box_gallery section .box_g_about ul.opentime li::before {
	content: "● ";
	font-weight: bold;
	font-family: "Osaka-mono", "MS Gothic", "monospace";
	color: #E48A1F;
}
.box_cafe {
	width: 100%;
	margin: auto;
	padding: 0 5%;
	background-color: #F5F5F5;
}
.box_cafe section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 4em 0 4em 0;
}
.box_cafe section h4 {
	margin: 0 0 2em 0;
}
.box_cafe section h3 {
	max-width: 800px;
	margin: 0 auto 3em auto;
	padding: 0 0 1em 0;
	font-size: 1.3em;
	font-weight: bold;
	border-bottom: 1px solid #CCC;
}
.box_cafe section .img_list3n {
	margin-bottom: 2em;
}
.box_cafe .box_menuin {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1090px;
	margin: auto;
}
.box_cafe .box_menuin article.menu_2com,
.box_cafe .box_menuin article.menu_line {
	display: flex;
	justify-content: space-between;
	width: 48%;
}
.box_cafe .box_menuin article.menu_line {
	width: 100%;
}
.box_cafe .box_menuin article.menu_2com div {
	width: 48%;
	margin: 0 0 2em 0;
	text-align: left;
}
.box_cafe .box_menuin article.menu_line div:first-child {
	width: 23%;
	text-align: left;
}
.box_cafe .box_menuin article.menu_line div:last-child {
	width: 75%;
	display: flex;
	justify-content: space-between;
}
.box_cafe .box_menuin article.menu_line div:last-child span {
	width: 31%;
}
.box_cafe .box_menuin article.menu_2com h5,
.box_cafe .box_menuin article.menu_line h5 {
	margin: 0 0 1em 0;
	padding: 0;
	font-size: 0.95em;
	font-weight: bold;
}
.box_cafe .box_menuin article.menu_2com h5::before,
.box_cafe .box_menuin article.menu_line h5::before {
	content: "● ";
	font-weight: bold;
	font-family: "Osaka-mono", "MS Gothic", "monospace";
	color: #E48A1F;
}
.box_cafe .box_menuin article.menu_2com p,
.box_cafe .box_menuin article.menu_line p {
	margin: 0 0 1em 0;
	padding: 0;
	font-size: 0.9em;
	line-height: 2;
}
.box_cafe .box_menuin article.menu_2com img,
.box_cafe .box_menuin article.menu_line img {
	width: 100%;
	height: auto;
}

.box_gallery_bot {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.box_gallery_bot section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 4em 0 3em 0;
}
.box_gallery_bot section p {
	max-width: 800px;
	margin: auto;
	padding: 0 0 3em 0;
	line-height: 2;
	text-align: left;
	font-size: 1.1em;
}
.box_gallery_bot section h4 {
	margin: 0 0 2em 0;
}
@media screen and (max-width: 860px) {
	.box_gallery section {
		margin: auto;
		padding: 4em 0 0 0;
	}
	.box_gallery section p,
	.box_gallery_bot section p {
		padding: 0 0 4em 0;
	}
	.box_cafe .box_menuin {
		display: block;
	}
	.box_cafe .box_menuin article.menu_2com,
	.box_cafe .box_menuin article.menu_line {
		display: flex;
		justify-content: space-between;
		width: 100%;
		flex-wrap: wrap;
	}
	.box_cafe .box_menuin article.menu_line div:first-child {
		width: 100%;
	}
	.box_cafe .box_menuin article.menu_line div:last-child {
		width: 100%;
	}
}
@media screen and (max-width: 460px) {
	.box_cafe .box_menuin article.menu_2com,
	.box_cafe .box_menuin article.menu_line {
		display: block;
	}
	.box_cafe .box_menuin article.menu_2com div {
		width: 100%;
	}
}

.box_privacy {
	width: 100%;
	margin: auto;
	padding: 0 5%;
}
.box_privacy section {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 4em 0 0 0;
	border-top: 1px solid #CCC;
}
.box_privacy section h3 {
	max-width: 800px;
	margin: 2em auto 1.0em auto;
	font-size: 1.1em;
	font-weight: bold;
	text-align: left;
}
.box_privacy section p {
	max-width: 800px;
	margin: auto;
	padding: 0 0 2em 0;
	line-height: 2;
	text-align: left;
	font-size: 1.0em;
}
.box_privacy section ul {
	max-width: 800px;
	margin: 0 auto;
	text-align: left;
}
.box_privacy section ul li {
	list-style: circle;
	margin: 0 0.5em 0 1.5em;
}
@media screen and (max-width: 860px) {
	.box_privacy section {
		margin: auto;
		padding: 4em 0 0 0;
	}
	.box_privacy section p {
		padding: 0 0 4em 0;
	}
}