@charset "UTF-8";

/* vis
------------------------------------------------*/
#vis {
	position: relative;
	background: url("img/vis-page.jpg") no-repeat center / cover;
	height: 41.3vw;
}
#vis.about {
	background-image: url("img/vis-page.jpg");
}
#vis.education {
	background-image: url("img/vis-education.jpg");
}
#vis.event {
	background-image: url("img/vis-event.jpg");
}
#vis.safety {
	background-image: url("img/vis-safety.jpg");
}
#vis.lunch {
	background-image: url("img/vis-lunch.jpg");
}
#vis.day {
	background-image: url("img/vis-day.jpg");
}
#vis.tour {
	background-image: url("img/vis-tour.jpg");
}
#vis.prepare {
	background-image: url("img/vis-prepare.jpg");
}
#vis.recruit {
	background-image: url("img/vis-recruit.jpg");
}
#vis.job1 {
	background-image: url("img/vis-job1.jpg");
}
#vis.job2 {
	background-image: url("img/vis-job2.jpg");
}
#vis.job3 {
	background-image: url("img/vis-job3.jpg");
}
#vis.work {
	background-image: url("img/vis-work.jpg");
}
#vis.sugawara {
	background-image: url("img/vis-sugawara.jpg");
}
#vis.recruit-faq {
	background-image: url("img/vis-recruit-faq.jpg");
}
#vis.contact {
	background-image: url("img/vis-contact.jpg");
}
#vis.privacy {
	background-image: url("img/vis-privacy.jpg");
}
#vis.site-map {
	background-image: url("img/vis-sitemap.jpg");
}
#vis:after {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: url("img/bg-vis.svg") no-repeat center top;
	background-size: 100% auto;
}
/* pagetab
------------------------------------------------*/
#pagetab {
	position: relative;
	z-index: 1;
}
#pagetab ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	top: -70px;
	left: 0;
	width: 100%;
}
#pagetab ul li {
	width: 23.5%;
}
#pagetab ul li a {
	display: block;
	background: #fff;
	height: 70px;
	border: 3px solid #fff;
	border-bottom: 0;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	line-height: 70px;
	text-align: center;
	letter-spacing: 0.07em;
	font-size: 22px;
	font-weight: 700;
}
#pagetab ul li.current a,
#pagetab ul li a:hover {
	background: #F5A174;
	color: #fff;
}
@media screen and (max-width:1024px) {
	#pagetab ul {
		width: 90%;
		left: 5%;
	}
	#pagetab ul li a {
		font-size: 18px;
	}
}
@media screen and (max-width:767px) {
	#pagetab ul {
		top: -40px;
	}
	#pagetab ul li a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 40px;
		border-top-left-radius: 15px;
		border-top-right-radius: 15px;
		padding: 0 10px;
		line-height: 1.3em;
		letter-spacing: normal;
		font-size: 13px;
	}
}
/* title
------------------------------------------------*/
#title:before,
#title h1:before,
#title h1:after {
	content: none;
}
#title h1 i {
	text-transform: uppercase;
}
#title .localnav {
	margin: 0;
}
#title .localnav dt {
	display: none;
}
#title .localnav dd {
	margin: 0;
}
#title .localnav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#title .localnav ul li {
	width: 30%;
	margin: 20px 0 0;
}
#title .localnav ul.item2 {
	justify-content: center;
}
#title .localnav ul.item2 li {
	margin: 20px 2.5% 0;
}
#title .localnav ul li a {
	display: block;
	position: relative;
	background: #fff;
	border: 1px solid #9B8E7D;
	border-radius: 30px;
	padding: 5px 10px 5px 0;
	text-align: center;
	font-weight: 700;
}
#title .localnav ul li a:hover {
	background: #FFEFD8;
	color: #725936;
}
#title .localnav ul li a:before,
#title .localnav ul li a:after {
	content: "";
	position: absolute;
	top: 50%;
	display: block;
	margin: 1px 0 0;
}
#title .localnav ul li a:before {
	right: 30px;
	transform: translate(0, -50%);
	background: #725936;
	width: 18px;
	height: 18px;
	border-radius: 9px;
}
#title .localnav ul li a:after {
	right: 36px;
	transform: rotate(-135deg);
	width: 5px;
	height: 5px;
	border-left: solid 1px #fff;
	border-top: solid 1px #fff;
	margin: -3px 0 0;
}
#title .localnav ul li.out a {
	background: #FFF9D9;
}
#title .localnav ul li.out a:hover {
	background: #FFEFD8;
}
#title .localnav ul li.out a:after {
	right: 37px;
	transform: rotate(135deg);
	margin: -2px 0 0;
}
@media screen and (max-width:767px) {
	#title .localnav dt {
		position: relative;
		display: block;
		background: #fff;
		border: 1px solid #9B8E7D;
		margin: 20px 0 0;
		padding: 10px;
		text-align: center;
		line-height: 28px;
		font-size: 16px;
		color: #333;
		cursor: pointer;
	}
	#title .localnav dt.active {
		background: #FFEFD8;
	}
  #title .localnav dt:after  {
		content: "";
		position: absolute;
		top: 50%;
		right: 18px;
		display: block;
		transform: translate(0, -50%) rotate(-135deg);
		width: 8px;
		height: 8px;
		border-left: solid 2px #725936;
		border-top: solid 2px #725936;
		margin: -2px 0 0;
	}
  #title .localnav dt.active:after {
		transform: translate(0, -50%) rotate(45deg);
		margin: 2px 0 0;
  }
	#title .localnav dd {
		display: none;
	}
	#title .localnav ul {
		display: block;
	}
	#title .localnav ul li,
	#title .localnav ul.item2 li {
		width: 100%;
		margin: 0;
	}
	#title .localnav ul li a {
		border-radius: 0;
		border-top: 0;
		padding: 5px 20px;
		text-align: left;
	}
	#title .localnav ul li a:before {
		right: 15px;
	}
	#title .localnav ul li a:after {
		right: 21px;
	}
	#title .localnav ul li.out a:after {
		right: 22px;
	}
}
/* post
------------------------------------------------*/
#main #post .post-body {
	margin-bottom: 60px;
}
#main #post .post-body h2 {
	background: url("img/line-blue.svg") no-repeat center bottom 10px;
	background-size: 300px auto;
	margin: 100px 0 40px;
	padding: 0 0 30px;
	text-align: center;
	line-height: 1.7;
	letter-spacing: 0.08em;
	font-size: 34px;
	font-weight: 700;
}
#main #post .post-body h2:first-child {
	margin-top: 0;
}
@media screen and (max-width:767px) {
	#main #post .post-body {
		margin-bottom: 30px;
	}
	#main #post .post-body h2 {
		background-size: 200px auto;
		margin: 60px 0 20px;
		padding: 0 0 25px;
		text-align: center;
		letter-spacing: 0.08em;
		font-size: 22px;
	}
}
@media screen and (max-width:480px) {
	#main #post .post-body h2 {
		background-size: 170px auto;
		padding: 0 0 20px;
		font-size: 20px;
	}
}
/* btn
------------------------------------------------*/
#main #post .post-body .btn a {
    position: relative;
    display: block;
    background: #83D1E3;
	border: none;
    max-width: 300px;
    height: 60px;
    border-radius: 30px;
    line-height: 60px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    transition: background 0.3s;
}
#main #post .post-body .btn a:hover {
	background: #6ADDF7;
}
#main #post .post-body .btn a:before,
#main #post .post-body .btn a:after {
	content: "";
	position: absolute;
	top: 50%;
	display: block;
	margin: 1px 0 0;
}
#main #post .post-body .btn a:before {
	right: 30px;
	transform: translate(0, -50%);
	background: #fff;
	width: 16px;
	height: 16px;
	border-radius: 8px;
}
#main #post .post-body .btn a:after {
	right: 36px;
	transform: translate(0, -50%) rotate(135deg);
	width: 4px;
	height: 4px;
	border-left: solid 1px #83D1E3;
	border-top: solid 1px #83D1E3;
}
/* tour
------------------------------------------------*/
#main #post .post-body dl.tour {
	position: relative;
	border: 5px solid #F4CBDF;
	border-radius: 20px;
	margin: 100px 0 30px;
	padding: 20px 30px 30px;
	text-align: center;
}
#main #post .post-body dl.tour:before {
	content: "";
	position: absolute;
	top: -90px;
	left: 40px;
	display: block;
	background: url("img/icon-owl.svg") no-repeat;
	background-size: cover;
	width: 50px;
	height: 90px;
}
#main #post .post-body dl.tour dt {
	font-size: 26px;
	font-weight: 700;
}
#main #post .post-body dl.tour dd {
	line-height: 1.8;
	margin: 0;
}
#main #post .post-body dl.tour dd span {
	display: block;
}
#main #post .post-body dl.tour dd + dd {
	margin: 20px 0 0;
}
#main #post .post-body dl.tour dd a {
	position: relative;
	display: block;
	background: #EB86B9;
	max-width: 220px;
	height: 60px;
	border: none;
	border-radius: 30px;
	margin: 0 auto;
	line-height: 60px;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	transition: background 0.3s;
}
#main #post .post-body dl.tour dd a:hover {
	background: #F26EB1;
}
#main #post .post-body dl.tour dd a:before,
#main #post .post-body dl.tour dd a:after {
	content: "";
	position: absolute;
	top: 50%;
	display: block;
	margin: 1px 0 0;
}
#main #post .post-body dl.tour dd a:before {
	right: 30px;
	transform: translate(0, -50%);
	background: #fff;
	width: 16px;
	height: 16px;
	border-radius: 8px;
}
#main #post .post-body dl.tour dd a:after {
	right: 36px;
	transform: translate(0, -50%) rotate(135deg);
	width: 4px;
	height: 4px;
	border-left: solid 1px #EB86B9;
	border-top: solid 1px #EB86B9;
}
@media screen and (max-width:767px) {
	#main #post .post-body dl.tour {
		padding: 15px 20px 20px;
	}
	#main #post .post-body dl.tour dt {
		font-size: 21px;
	}
	#main #post .post-body dl.tour dt + dd {
		text-align: left;
	}
	#main #post .post-body dl.tour dd + dd {
		margin-top: 10px;
	}
	#main #post .post-body dl.tour dd a {
		max-width: 180px;
		height: 50px;
		line-height: 50px;
	}
	#main #post .post-body dl.tour dd a:before {
		right: 15px;
	}
	#main #post .post-body dl.tour dd a:after {
		right: 21px;
	}
}
/* about
------------------------------------------------*/
#main #post .post-body.about {
	margin-bottom: 0;
}
#main #post .post-body.about h2:first-child {
	margin-top: 100px;
}
#main #post .post-body.about #content01 h2 {
	margin-top: 0;
}
#main #post .post-body.about p {
	margin: 0 0 1.5em;
}
#main #post .post-body.about .align-right {
	text-align: right;
}
#main #post .post-body.about .fs {
	line-height: 1.9;
	font-size: 0.9em;
}
#main #post .post-body.about #content03 h2 + p {
	text-align: center;
}
#main #post .post-body.about figure img {
	border-radius: 20px;
}
#main #post .post-body.about #content03 {
	text-align: center;
}
#main #post .post-body.about #content03 .wp-block-column p {
	margin: 15px 0 0;
	line-height: 1;
	letter-spacing: 0.2em;
	text-align: center;
  font-weight: 600;
	font-size: 22px;
}
#main #post .post-body.about #content03 .wp-block-column.color01 img {
	border: solid 5px #F7D02E;
}
#main #post .post-body.about #content03 .wp-block-column.color02 img {
	border: solid 5px #EB86B9;
}
#main #post .post-body.about #content03 .wp-block-column.color03 img {
	border: solid 5px #CA97EA;
}
#main #post .post-body.about #content03 .wp-block-column.color04 img {
	border: solid 5px #83D1E3;
}
#main #post .post-body.about #content03 .wp-block-column.color05 img {
	border: solid 5px #F5A174;
}
#main #post .post-body.about #content03 .wp-block-column.color06 img {
	border: solid 5px #8DD68F;
}
#main #post .post-body.about .gallery ul {
	list-style: none;
	margin: 40px 0;
	padding: 0;
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
#main #post .post-body.about .gallery ul li {
	width: 24%;
}
#main #post .post-body.about .gallery ul li img {
	border-radius: 20px;
}
#main #post .post-body.about .class {
	text-align: center;
}
#main #post .post-body.about .class th {
	letter-spacing: 0.08em;
}
#main #post .post-body.about .class th strong {
	line-height: 1;
	font-size: 1.7em;
}
#main #post .post-body.about .time {
	margin-bottom: 0;
}
#main #post .post-body.about .time strong {
    margin: 0 0 0 0.5em;
	line-height: 1;
    font-size: 1.7em;
}
#main #post .post-body.about .reverse {
	flex-direction: row-reverse;
	margin-top: 40px;
}
#main #post .post-body.about .notice {
	background: #FFEBC4;
	border-radius: 20px;
	padding: 25px 30px;
}
#main #post .post-body.about .notice p:last-child {
	margin: 0;
}
#main #post .post-body.about .wp-block-column table th {
	width: 35%;
}
#main #post .post-body.about .wp-block-column table.member td {
	text-align: right;
}
#main #post .post-body.about #content05 {
	background: url(img/bg-about.png) repeat;
	margin: 100px 0 0;
	padding: 60px 0;
}
#main #post .post-body.about #content05 .inner {
	background: #fff;
	border-radius: 50px;
	padding: 50px;
	text-align: center;
}
#main #post .post-body.about #content05 .inner h2 {
	margin-top: 0;
}
#main #post .post-body.about #content05 .inner figure img {
	width: 690px;
}
#main #post .post-body.about #content05 .inner p img {
	vertical-align: sub;
	margin: 0 0.2em 0 0;
}
#main #post .post-body.about #content05 ol {
	margin: 20px 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	text-align: left;
}
#main #post .post-body.about #content05 ol li {
	width: 33%;
}
#main #post .post-body.about #content05 ol li::before {
	content: "1";
	background: #6ADDF7;
	display: inline-block;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border-radius: 50%;
	margin: 0 10px 0 0;
	text-align: center;
	font-weight: bold;
	color: #fff;
}
#main #post .post-body.about #content05 ol li:nth-child(2)::before {
	content: "2";
}
#main #post .post-body.about #content05 ol li:nth-child(3)::before {
	content: "3";
}
#main #post .post-body.about #content05 ol li:nth-child(4)::before {
	content: "4";
}
#main #post .post-body.about #content05 ol li:nth-child(5)::before {
	content: "5";
}
#main #post .post-body.about #content05 ol li:nth-child(6)::before {
	content: "6";
}
#main #post .post-body.about #content05 ol li:nth-child(7)::before {
	content: "7";
}
@media screen and (max-width:767px) {
	#main #post .post-body.about h2:first-child {
		margin-top: 60px;
	}
	#main #post .post-body.about #content03 h2 + p {
		text-align: left;
	}
	#main #post .post-body.about #content03 .wp-block-column p {
		font-size: 18px;
	}
	#main #post .post-body.about .gallery ul li {
		width: 47%;
	}
	#main #post .post-body.about .reverse {
		margin-top: 20px;
	}
	#main #post .post-body.about table tbody th {
		padding-left: 0;
		padding-right: 0;
		min-width: 5em;
	}
	#main #post .post-body.about #content05 {
		margin: 60px 0 0;
		padding: 40px 0;
	}
	#main #post .post-body.about #content05 .inner {
		width: 90%;
		padding: 50px 20px;
		text-align: left;
	}
	#main #post .post-body.about #content05 ol li {
		width: 100%;
	}
	#main #post .post-body.about #content01 .is-resized {
		text-align: center;
	}
	#main #post .post-body.about #content01 .is-resized img {
		max-width: 85%;
	}
}
/* recruit
------------------------------------------------*/
#main #post .post-body.recruit img {
	border-radius: 20px;
} 
#main #post .post-body.recruit .wp-block-column figure {
	margin-bottom: 20px;
}
#main #post .post-body.recruit .wp-block-buttons {
	justify-content: center;
}
#main #post .post-body.recruit strong {
	background: #ffea94;
    padding: 4px 8px;
    color: #f75454;
}
/* work
------------------------------------------------*/
#main #post .post-body.work .point {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	background: #CCE0FF;
	padding: 30px 20px;
}
#main #post .post-body.work .point li {
	text-align: center;
	width: 50%;
}
#main #post .post-body.work .point li:nth-child(3),
#main #post .post-body.work .point li:nth-child(4),
#main #post .post-body.work .point li:nth-child(5) {
	width: 32%;
}
#main #post .post-body.work table td {
	text-align: center;
}
#main #post .post-body.work table th:nth-child(3),
#main #post .post-body.work table td + td {
	border-left: 1px solid #ccc;
}
@media screen and (max-width:767px) {
	#main #post .post-body.work .point {
		padding: 20px 5px;
		justify-content: center;
	}
	#main #post .post-body.work .point li,
	#main #post .post-body.work .point li:nth-child(3),
	#main #post .post-body.work .point li:nth-child(4),
	#main #post .post-body.work .point li:nth-child(5) {
		width: 50%;
		padding: 0 5px;
	}
}
/* recruit/job
------------------------------------------------*/
#main #post .post-body.job1 .wp-block-buttons,
#main #post .post-body.job2 .wp-block-buttons,
#main #post .post-body.job3 .wp-block-buttons {
	justify-content: center;
}
#main #post .post-body.job1 ul.job-tag,
#main #post .post-body.job2 ul.job-tag,
#main #post .post-body.job3 ul.job-tag {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
}
#main #post .post-body.job1 ul.job-tag li,
#main #post .post-body.job2 ul.job-tag li,
#main #post .post-body.job3 ul.job-tag li {
	background: #fff;
	border: solid 1px #e76767;
	border-radius: 3px;
	margin: 0 5px 5px 0;
	padding: 4px 20px;
	color: #e76767;
}
#main #post .post-body.job1 ul.job-tag li:nth-child(2n),
#main #post .post-body.job2 ul.job-tag li:nth-child(2n),
#main #post .post-body.job3 ul.job-tag li:nth-child(2n) {
	border-color: #1fb18d;
	color: #1fb18d;
}
#main #post .post-body.job1 ul.job-tag li:nth-child(3n),
#main #post .post-body.job2 ul.job-tag li:nth-child(3n),
#main #post .post-body.job3 ul.job-tag li:nth-child(3n) {
	border-color: #4379cf;
	color: #4379cf;
}
#main #post .post-body.job1 table td + td,
#main #post .post-body.job2 table td + td,
#main #post .post-body.job3 table td + td {
	border-left: 1px solid #ccc;
}
#main #post .post-body.job1 .wp-block-column table th,
#main #post .post-body.job2 .wp-block-column table th,
#main #post .post-body.job3 .wp-block-column table th {
	white-space: nowrap;
}
#main .post-body.job1 .mw_wp_form table th,
#main .post-body.job2 .mw_wp_form table th,
#main .post-body.job3 .mw_wp_form table th {
	position: relative;
	background: #fffecf;
	text-align: left;
}
@media screen and (max-width:767px) {
	#main #post .post-body.job1 :where(.wp-block-columns.is-layout-flex),
	#main #post .post-body.job2 :where(.wp-block-columns.is-layout-flex),
	#main #post .post-body.job3 :where(.wp-block-columns.is-layout-flex) {
		gap: 0;
	}
}
/* mw wp form
------------------------------------------------*/
#main .post-body .mw_wp_form table th {
	position: relative;
	text-align: left;
}
#main .post-body .mw_wp_form table th.required {
	padding: 10px 15px 10px 55px;
}
#main .post-body .mw_wp_form table th.required:before {
	content: "必須";
	display: block;
	position: absolute;
	top: calc(50% - 9px);
	left: 15px;
	padding: 0 4px;
	background: #725936;
	font-size: 11px;
	color: #fff;
}
#main .post-body .mw_wp_form table + p {
	text-align: center;
}
#main .post-body .mw_wp_form input,
#main .post-body .mw_wp_form textarea,
#main .post-body .mw_wp_form select {
	border: 1px solid #ccc;
	padding: 5px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16px;
	color: #725936;
}
#main .post-body .mw_wp_form input.fullsize,
#main .post-body .mw_wp_form textarea {
	width: 100%;
}
#main .post-body .mw_wp_form input[name="submitConfirm"],
#main .post-body .mw_wp_form input[name="submit"] {
	position: relative;
	display: inline-block;
	background: #83D1E3;
	border: 0;
	border-radius: 25px;
	margin: 0 auto;
	padding: 1em 2em;
	font-weight: 700;
	color: #fff;
	cursor: pointer;
}
#main .post-body .mw_wp_form input[name="submitConfirm"]:hover,
#main .post-body .mw_wp_form input[name="submit"]:hover {
	background: #6ADDF7;
}
#main .post-body .mw_wp_form input[name="submitBack"] {
	background: #eee;
	border: solid 1px #ccc;
	border-radius: 10px;
	margin: 10px 0 0;
	padding: 0.8em 1em;
	font-weight: normal;
	font-size: 0.8em;
	color: #333;
	cursor: pointer;
}
#main .post-body .mw_wp_form input[name="add"] {
	margin-top: 5px;
}
@media screen and (max-width:767px) {
	#main .post-body .mw_wp_form input,
	#main .post-body .mw_wp_form textarea,
	#main .post-body .mw_wp_form select {
		font-size: 15px;
	}
	#main .post-body .mw_wp_form table {
		border-bottom: 1px solid #ccc;
	}
	#main .post-body .mw_wp_form table th,
	#main .post-body .mw_wp_form table td {
		display: block;
		width: 100%;
		border-bottom: 0;
		text-align: left;
	}
	#main .post-body .mw_wp_form table td {
		border: 0;
	}
}
@media screen and (max-width:480px) {
	#main .post-body .mw_wp_form .horizontal-item {
		display: block;
	}
	#main .post-body .mw_wp_form .horizontal-item + .horizontal-item {
		margin: 5px 0 0;
	}
	#main .post-body .mw_wp_form .horizontal-item label {
		display: block;
		width: 100%;
		padding: 5px;
		border: 1px solid #ccc;
	}
	
}
/* education
------------------------------------------------*/
#main #post .post-body.education .column-reverse {
	flex-direction: row-reverse;
}
#main #post .post-body.education figure img {
	border-radius: 20px;
}
#main #post .post-body.education .goal {
	margin: 50px 0;
}
#main #post .post-body.education .goal .wp-block-column {
	background: #fff;
	border: solid 2px #83D1E3;
    border-radius: 20px;
    padding: 25px 30px;
	line-height: 1.7;
}
#main #post .post-body.education .goal h3 {
	background: none;
	margin: 0;
	padding: 0 0 0.5em;
	text-align: center;
}
#main #post .post-body.education .goal h3::before {
	content: "";
    position: absolute;
    top: auto;
	bottom: 0;
    left: 50%;
	transform: translate(-50%,0);
    display: block;
    background: #83D1E3;
    width: 30px;
    height: 3px;
}
#main #post .post-body.education .feature {
	background: #fff;
	border: solid 2px #83D1E3;
    border-radius: 20px;
    padding: 25px 30px 25px 50px;
	line-height: 1.7;
}
#main #post .post-body.education .feature li + li {
	margin-top: 1.5em;
}
#main #post .post-body.education .feature li li + li {
	margin-top: 0.5em;
}
#main #post .post-body.education .feature li li .ag {
	display: inline-block;
	width: 4em;
}
#main #post .post-body.education .child-box h4 {
    margin: 0.3em 0 0.5em;
    padding: 0;
    font-size: 1.6em;
}
#main #post .post-body.education .child-box h4::before,
#main #post .post-body.education .child-box h4::after {
	content: none;
}
#main #post .post-body.education .child-box img {
	border: solid 5px #fed3e8;
}
#main #post .post-body.education .child-box.child02 img {
	border: solid 5px #ffd98d;
}
#main #post .post-body.education .child-box.child03 img {
	border: solid 5px #bfeec0;
}
#main #post .post-body.education .child-box ul + p {
	background: #fed3e8;
	border-radius: 10px;
	text-align: center;
	line-height: 2.5;
	font-size: 1.2em;
}
#main #post .post-body.education .child-box.child02 ul + p {
	background: #ffd98d;
}
#main #post .post-body.education .child-box.child03 ul + p {
	background: #bfeec0;
}
#main #post .post-body.education .btn a {
	margin: 0 auto;
}
@media screen and (max-width:767px) {
	#main #post .post-body.education .child-box h4 {
		margin-top: 0.1em;
		text-align: center;
	}
}
/* event
------------------------------------------------*/
#main #post .post-body.event img {
	border-radius: 20px;
}
#main #post .post-body.event .fs {
	line-height: 1.9;
    font-size: 0.9em;
}
#main #post .post-body.event .gallery h3 {
	background: none;
	margin: 0.5em 0 0.2em;
	padding: 0;
}
#main #post .post-body.event .gallery h3::before {
	content: none;
}
#main #post .post-body.event .gallery h3 strong {
	background: #83D1E3;
	box-sizing: border-box;
	display: inline-block;
	margin: 0 0.5em 0 0 ;
	border-radius: 3em;
	width: 3em;
	height: 3em;
	line-height: 3em;
	text-align: center;
	color: #fff;
}
#main #post .post-body.event .gallery1 .wp-block-column:nth-child(2) strong,
#main #post .post-body.event .gallery3 .wp-block-column:nth-child(2) strong,
#main #post .post-body.event .gallery5 .wp-block-column:nth-child(2) strong,
#main #post .post-body.event .gallery7 .wp-block-column:nth-child(2) strong  {
	background: #F5A174;
}
#main #post .post-body.event .gallery2 .wp-block-column:nth-child(1) strong,
#main #post .post-body.event .gallery4 .wp-block-column:nth-child(1) strong,
#main #post .post-body.event .gallery6 .wp-block-column:nth-child(1) strong,
#main #post .post-body.event .gallery8 .wp-block-column:nth-child(1) strong {
	background: #F7D02E;
}
#main #post .post-body.event .gallery2 .wp-block-column:nth-child(2) strong,
#main #post .post-body.event .gallery4 .wp-block-column:nth-child(2) strong,
#main #post .post-body.event .gallery6 .wp-block-column:nth-child(2) strong,
#main #post .post-body.event .gallery8 .wp-block-column:nth-child(2) strong {
	background: #F4CBDF;
}
@media screen and (max-width:767px) {
	#main #post .post-body.event .year {
		gap: 0;
	}
	#main #post .post-body.event .year table {
		margin: 0;
	}
	#main #post .post-body.event .year table th {
		width: 20%;
	}
	#main #post .post-body.event .year .wp-block-column + .wp-block-column table {
		margin-top: -1px;
	} 
}
/* safety
------------------------------------------------*/
#main #post .post-body.safety img {
	border-radius: 20px;
}
#main #post .post-body.safety .wp-block-image + .wp-block-image {
	margin-top: 1em;
}
#main #post .post-body.safety li {
	margin-bottom: 1.5em;
	line-height: 2.2;
}
@media screen and (max-width:767px) {
	#main #post .post-body.safety .wp-block-image {
		text-align: center;
	}
	#main #post .post-body.safety img {
		max-width: 85%;
	}
}
/* lunch
------------------------------------------------*/
#main #post .post-body.lunch img {
	border-radius: 20px;
}
#main #post .post-body.lunch .column-reverse {
	flex-direction: row-reverse;
	margin-top: 40px;
}
#main #post .post-body.lunch .gallery ul {
	list-style: none;
	margin: 40px 0 0;
	padding: 0;
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
#main #post .post-body.lunch .gallery ul li {
	width: 24%;
}
#main #post .post-body.lunch .gallery ul li img {
	border-radius: 25px;
}
#main #post .post-body.lunch .gallery.main ul li img {
	border: solid 6px #F7D02E;
}
#main #post .post-body.lunch .gallery.main ul li:nth-child(2) img {
	border-color: #EB86B9;
}
#main #post .post-body.lunch .gallery.main ul li:nth-child(3) img {
	border-color: #CA97EA;
}
#main #post .post-body.lunch .gallery.main ul li:nth-child(4) img {
	border-color: #83D1E3;
}
#main #post .post-body.lunch .catch {
	margin-top: -45px;
}
#main #post .post-body.lunch table th {
	width: 40%;
}
#main #post .post-body.lunch .box {
	max-width: 50em;
	text-align: center;
}
#main #post .post-body.lunch .box .note {
	background-image: linear-gradient(180deg, #ccc 1px, transparent 1px);
	background-size: 100% 2.5em;
	line-height: 2.5em;
	padding-bottom: 1px; 
}
#main #post .post-body.lunch .catch h3,
#main #post .post-body.lunch .border-box h3 {
	background: none;
	padding: 0;
	text-align: center;
}
#main #post .post-body.lunch .catch h3::before,
#main #post .post-body.lunch .border-box h3::before {
	content: none;
}
#main #post .post-body.lunch .border-box h4 {
	margin: 0.5em 0 0.2em;
	padding: 0;
	font-size: 1.2em;
}
#main #post .post-body.lunch .border-box h4:first-child {
	margin-top: 0;
}
#main #post .post-body.lunch .border-box h4::before,
#main #post .post-body.lunch .border-box h4::after {
	content: none;
}
#main #post .post-body.lunch .catch p {
	text-align: center;
	font-size: 1.3em;
}
#main #post .post-body.lunch .border-box {
	background: #fff;
	border-radius: 20px;
	border: solid 3px #EB86B9;
	padding: 30px;
}
#main #post .post-body.lunch .border-box + .border-box.wp-block-group {
	margin-top: 1.75em;
}
#main #post .post-body.lunch .menu {
	align-items: stretch;
}
#main #post .post-body.lunch .menu .wp-block-column:nth-child(2) {
	border: solid 3px #F5A174;
}
#main #post .post-body.lunch .eventmenu {
	border: solid 3px #F7D02E;
}
#main #post .post-body.lunch .border-box h3,
#main #post .post-body.lunch .eventmenu h3 {
	margin-top: 0;
	color: #EB86B9
}
#main #post .post-body.lunch .menu .wp-block-column:nth-child(2) h3 {
	color: #F5A174;
}
#main #post .post-body.lunch .eventmenu h3 {
	color: #725936;
}
#main #post .post-body.lunch .menu ul {
	margin: 0 auto;
	padding: 0;
	max-width: 15em;
	list-style-position: inside;
}
#main #post .post-body.lunch .menu ul li {
	border-bottom: dotted 1px #725936;
}
#main #post .post-body.lunch .eventmenu .wp-block-columns {
	margin-bottom: 0;
}
#main #post .post-body.lunch .eventmenu ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	font-size: 0.9em;
}
#main #post .post-body.lunch .eventmenu ul li {
	margin: 0 1.5em 0 0;
}
#main #post .post-body.lunch .recipe {
	background: #f9eddb;
	margin-bottom: 20px;
	padding: 25px 30px;
	position: relative;
}
#main #post .post-body.lunch .recipe::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	border-style: solid;
	border-width: 25px 25px 0 0  ;
	border-color: #FFFCF8 #f3cb97 #f3cb97;
}
#main #post .post-body.lunch .recipe .wp-block-columns {
	margin-bottom: 0;
}
#main #post .post-body.lunch .recipe h4 {
	margin: 0 0 5px;
	padding: 0;
}
#main #post .post-body.lunch .recipe h4::before,
#main #post .post-body.lunch .recipe h4::after {
	content: none;
}
#main #post .post-body.lunch .recipe h4 small {
	display: inline-block;
	margin: 0 0 0 1em;
	font-weight: normal;
	font-size: 0.7em;
}
#main #post .post-body.lunch .recipe h4 .tag {
	background: #F7D02E;
	border-radius: 30px;
	margin: 0 0.5em 0 0;
	padding: 0.2em 0.5em;
	display: inline-block;
	letter-spacing: 0;
	font-size: 0.8em;
}
#main #post .post-body.lunch .recipe h5 {
    background: #f3cb97;
    margin: 0.5em 0 0;
    padding: 0 0.8em;
    border-radius: 10px 10px 0 0;
    font-size: 1em;
}
#main #post .post-body.lunch .recipe dl {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
	font-size: 0.9em;
}
#main #post .post-body.lunch .recipe dl dt,
#main #post .post-body.lunch .recipe dl dd {
	border-bottom: dotted 1px;
	margin: 0;
	padding: 0 0.8em;
	box-sizing: border-box;
	width: 65%;
}
#main #post .post-body.lunch .recipe dl dd {
	width: 35%;
	text-align: right;
}
#main #post .post-body.lunch .recipe ol {
	margin-bottom: 0;
}
#main #post .post-body.lunch figure + figure {
	margin-top: 0.5em;
}
#main #post .post-body.lunch .tit-menu {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}
#main #post .post-body.lunch .tit-menu h2 {
	background: none;
	margin: 30px 0 25px;
	padding: 0;
	width: 44%;
	order: 2;
}
#main #post .post-body.lunch .tit-menu p:nth-child(2) {
	width: 27%;
	order: 1;
}
#main #post .post-body.lunch .tit-menu p:nth-child(3) {
	width: 27%;
	order: 3;
}
@media screen and (max-width:767px) {
	#main #post .post-body.lunch .gallery ul li {
		width: 47%;
	}
	#main #post .post-body.lunch .catch {
		margin-top: -30px;
	}
	#main #post .post-body.lunch .column-reverse {
		margin-top: 20px;
	}
	#main #post .post-body.lunch .box,
	#main #post .post-body.lunch .eventmenu {
		width: 90%;
		text-align: left;
	}
	#main #post .post-body.lunch .catch p {
		font-size: 1.1em;
	}
	#main #post .post-body.lunch .recipe h4 small {
		display: block;
	}
	#main #post .post-body.lunch .tit-menu {
		flex-wrap: wrap;
	}
	#main #post .post-body.lunch .tit-menu h2 {
		width: 80%;
		margin: 0 10%;
		order: 1;
	}
	#main #post .post-body.lunch .tit-menu p:nth-child(2) {
		width: 49%;
		order: 2;
	}
	#main #post .post-body.lunch .tit-menu p:nth-child(3) {
		width: 49%;
		order: 3;
	}
}
/* day
------------------------------------------------*/
#main #post .post-body.day img {
	border-radius: 20px;
}
#main #post .post-body.day .flow-box h3 {
	margin-top: 0;
	padding: 15px 25px;
	font-size: 1.4em;
	position: relative;
}
#main #post .post-body.day .flow-box h3::before {
	content: none;
}
#main #post .post-body.day .flow-box h3::after {
	content: '';
    border: 10px solid transparent;
    position: absolute;
    top: 50%;
    margin-top: -10px;
    border-right: 16px solid #DCF7F7;
    left: -26px;
}
#main #post .post-body.day .flow-box h3 span,
#main #post .post-body.day .flow-box h3 small {
    display: inline-block;
    vertical-align: text-top;
    margin: 0.2em 0.5em 0.2em 0;
    font-size: 0.7em;
    font-weight: normal;
}
#main #post .post-body.day .flow-box {
	flex-direction: row-reverse;
	margin-top: 40px;
}
#main #post .post-body.day .flow-box .wp-block-columns img,
#main #post .post-body.day .flow-box .small img {
	border-radius: 50%;
}
#main #post .post-body.day .flow-box .small {
	margin-top: -3em;
	text-align: right;
}
#main #post .post-body.day .flow-box .small img {
	width: 50%;
}
#main #post .post-body.day .flow-box .wp-block-columns p {
	margin-top: 0;
	line-height: 1.6;
}
@media screen and (max-width:767px) {
	#main #post .post-body.day .flow-box {
		gap: 0;
	}
	#main #post .post-body.day .flow-box h3 {
		padding: 10px 20px;
	}
	#main #post .post-body.day .flow-box h3::after {
		left: 30px;
		top: auto;
		bottom: -20px;
		transform: rotate(-90deg);
	}
	#main #post .post-body.day .flow-box h3 small,
	#main #post .post-body.day .flow-box .wp-block-columns p small {
		display: block;
	}
	#main #post .post-body.day .flow-box.has-small {
		position: relative;
		padding-bottom: 150px;
	}
	#main #post .post-body.day .flow-box .small {
		position: absolute;
		bottom: 0;
		right: 0;
	}
	#main #post .post-body.day .flow-box .small img {
		height: 170px;
		width: auto;
		border: solid 5px #fff; 
	}
}
/* prepare
------------------------------------------------*/
#main #post .post-body.prepare .item-wrap {
	gap: 1em;
	margin: 1em 0 0;
}
#main #post .post-body.prepare .item,
#main #post .post-body.prepare .item-wrap .wp-block-column {
	background: #fff;
    border: solid 2px #83D1E3;
    border-radius: 20px;
    padding: 20px 35px;
	box-sizing: border-box;
}
#main #post .post-body.prepare .item + .item,
#main #post .post-body.prepare .item-wrap + .item {
	margin-top: 1em;
}
#main #post .post-body.prepare .item p,
#main #post .post-body.prepare .item-wrap .wp-block-column p {
	margin: 0 0 0.5em;
	line-height: 1.8;
}
#main #post .post-body.prepare .item p:first-child strong,
#main #post .post-body.prepare .item-wrap .wp-block-column p:first-child strong {
	font-weight: bold;
	font-size: 1.3em;
}
/* tour
------------------------------------------------*/
#main #post .post-body.tour .wp-block-button a {
	background: #EB86B9;
	width: 300px;
	position: relative;
}
#main #post .post-body.tour .wp-block-button a:hover {
	background: #F26EB1;
}
#main #post .post-body.tour .wp-block-button a:before,
#main #post .post-body.tour .wp-block-button a:after {
	content: "";
	position: absolute;
	top: 50%;
	display: block;
	margin: 1px 0 0;
}
#main #post .post-body.tour .wp-block-button a:before {
	right: 30px;
	transform: translate(0, -50%);
	background: #fff;
	width: 16px;
	height: 16px;
	border-radius: 8px;
}
#main #post .post-body.tour .wp-block-button a:after {
	right: 36px;
	transform: translate(0, -50%) rotate(135deg);
	width: 4px;
	height: 4px;
	border-left: solid 1px #EB86B9;
	border-top: solid 1px #EB86B9;
}
#main #post .post-body.tour .notice {
    background: #e9f0f0;
    padding: 25px 30px;
	line-height: 1.8;
	font-size: 0.9em;
}
#main #post .post-body.tour .wp-block-buttons + .notice {
	margin-top: 2em;
}
#main #post .post-body.tour .date {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#main #post .post-body.tour .date li {
	background: #fff;
	border-radius: 15px;
	border: solid 2px #83D1E3;
	padding: 10px;
	box-sizing: border-box;
	width: 48%;
	text-align: center;
}
#main #post .post-body.tour .date li small {
	display: block;
	line-height: 1;
	color:#EB86B9;
}
@media screen and (max-width:767px) {
	#main #post .post-body.tour h2 + .has-text-align-center,
	#main #post .post-body.tour h3 + .has-text-align-center {
		text-align: left;
	}
	#main #post .post-body.tour .wp-block-button a:before {
		right: 15px;
	}
	#main #post .post-body.tour .wp-block-button a:after {
		right: 21px;
	}
}
/* sugawara
------------------------------------------------*/
#main #post .post-body.sugawara .wp-block-image + .wp-block-image {
	margin-top: 1em;
}