@charset "UTF-8";

html {
	color:#333;
	font-family:'Noto Sans JP', sans-serif;
	overflow-y:scroll;
	scroll-behavior:smooth;
}

h1, h2, h3 {
	font-weight:normal;
	margin:0;
}

body {
	margin:0;
	position:relative;
}

img {vertical-align:bottom;}

.ellipse {
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}

/* header */
.site_header {
	background-color:#fff;
	box-shadow:20px 3px 25px rgba(0, 0, 0, 0.16);
	box-sizing:border-box;
	height:80px;
	margin:0;
	top:0;
	padding:0;
	position:sticky;
	width:100%;
	z-index:2;
}

.link_target {
	display:block;
	margin-top:-80px;
	padding-top:80px;
	pointer-events:none;
}

@media (width > 1010px) {

	.site_header {
		align-items:center;
		display:grid;
		grid-template-areas:'a a a a' 'b c d e';
		grid-template-rows:20px 1fr;
	}

	.site_header_line {grid-area:a;}

	.site_title {grid-area:c;}

	.site_nav {grid-area:e;}

}

@media (width > 1200px) {

	.site_header {grid-template-columns:1fr 260px 1fr 70%;}

}

@media (1200px >= width > 1010px) {

	.site_header {grid-template-columns:1fr 260px 1fr 750px;}

}

.site_header_line {
	background-color:#244ca1;
	box-sizing:border-box;
	color:#fff;
	display:block;
	font-size:0.75rem;
	height:20px;
	margin:0;
	width:100%;
}

@media (width > 1450px) {

	.site_header_line {padding:0 calc(50% - 710px);}

}

@media (width <= 1450px) {

	.site_header_line {padding:0 10px;}

}

.site_header_line .sp_none {display:inline-block;}

@media (width > 600px) {

	.site_header_line .sp_none {margin:0 1em;}

}

@media (width <= 600px) {

	.site_header_line .sp_none {
		height:0;
		overflow:hidden;
		visibility:hidden;
		width:1em;
	}

}

.site_title {
	font-family:'Kosugi Maru';
	font-weight:normal;
	display:block;
	margin:0;
	padding:0;
}

@media (width > 1010px) {

	.site_title {
		font-size:37px;
		line-height:1;
	}

}

@media (width <= 1010px) {

	.site_title {
		font-size:20px;
		line-height:60px;
		text-align:center;
	}

}

.site_title > a {
	color:inherit;
	text-decoration:none;
}

.site_nav {
	box-sizing:border-box;
	display:block;
	height:100%;
	margin:0;
	padding:0;
}

@media (width > 1010px) {

	.site_nav_list {
		align-items:center;
		box-sizing:border-box;
		display:flex;
		height:100%;
		justify-content:space-between;
		margin:0;
		padding:0;
		width:100%;
	}

	.site_nav_list > li:first-child {display:none;}

	.site_nav_list > li {
		box-sizing:border-box;
		display:block;
		font-family:'Noto Sans JP';
		line-height:1;
		margin:0;
		padding:0;
		text-align:center;
	}

	.site_nav_list > li.nav_tel {
		background-image:linear-gradient(145deg, transparent 0, transparent 60px, #c7edf8 60px, #c7edf8 100%);
		box-sizing:border-box;
		display:flex;
		flex-direction:column;
		flex-wrap:wrap;
		justify-content:center;
		height:100%;
		padding:0 10px 0 130px;
		text-align:left;
		white-space:nowrap;
	}

	.site_nav_list > li > a {
		box-sizing:border-box;
		color:inherit;
		text-decoration:none;
	}

	.header_sp_btn {display:none;}

	.nav_tel_1 {
		color:#244CA1;
		display:block;
		font-size:14px;
	}

	.nav_tel_2 {
		display:block;
		font-size:22px;
		text-indent:-0.5em;
		text-shadow:
			  #fff  1px 1px 0, #fff -1px -1px 0
			, #fff -1px 1px 0, #fff  1px -1px 0
			, #fff    0 1px 0, #fff    0 -1px 0
			, #fff -1px   0 0, #fff  1px    0 0;
	}

}

@media (width > 1400px) {

	.site_nav_list > li {font-size:22px;}

	.site_nav_list > li:not(.nav_tel) span {font-size:20px;}

}

@media (1400px >= width > 1010px) {

	.site_nav_list > li {font-size:16px;}

}

@media (width <= 1010px) {

	.site_nav[data-sp-nav="open"] {
		background-color:rgba(0, 0, 0, 0.5);
		height:100vh;
		margin:0;
		overflow-y:auto;
		position:fixed;
		top:0;
		width:100%;
		z-index:9999;
	}

	[data-sp-nav="close"] .site_nav_list {display:none;}

	[data-sp-nav="open"] .site_nav_list {
		background:#eee;
		box-sizing:border-box;
		display:block;
		min-height:100%;
		margin:0;
		padding:80px 0 50px;
		position:absolute;
		right:0;
		width:80%;
		max-width:700px;
	}

	.site_nav_list > li {
		color:#333;
		min-height:40px;
		list-style:none;
		margin:0;
		padding:10px 0;
		width:100%;

		br {display:none;}
	}

	.site_nav_list > li:nth-of-type(even) {background-color:rgba(255, 255, 255, 0.5);}

	.site_nav_btn {
		color:inherit;
		display:block;
		font-size:1rem;
		font-weight:bold;
		height:100%;
		line-height:2.5;
		text-align:left;
		text-indent:2em;
		text-decoration:none;
		width:100%;
	}

	.header_sp_btn {
		background-color:transparent;
		border:none;
		display:block;
		height:40px;
		line-height:1;
		margin:0;
		padding:0;
		position:absolute;
		right:10px;
		top:30px;
		width:40px;
		z-index:3;
	}

	.header_sp_btn:focus {outline:none;}

	.header_sp_btn::before {
		height:40px;
		left:0;
		position:absolute;
		top:0;
		width:40px;
	}

	[data-sp-nav="open"] .header_sp_btn::before {
		content:'×';
		font-size:40px;
	}

	[data-sp-nav="close"] .header_sp_btn::before {
		background:url('../images/menu.png') center/contain no-repeat;
		content:'';
	}

	.nav_tel {display:none;}

}

/* main */
.main_box {
	box-sizing:border-box;
	display:flow-root;
	margin:auto;
	position:relative;
	width:100%;
}

@media (width > 1060px) {

	.main_box {padding:0 calc(50% - 520px) 0.1px;} /* bottom 相殺させない */

}

@media (width <= 1060px) {

	.main_box {padding:0 20px 0.1px;} /* bottom 相殺させない */

}

/* footer */
.footer_box {
	background-color:#244ca1;
	box-sizing:border-box;
	display:block;
	margin:80px auto 0;
	text-align:center;
	width:100%;
}

@media (width > 1040px) {

	.footer_box {padding:35px calc(50% - 500px) 15px;}

}

@media (width <= 1040px) {

	.footer_box {padding:35px 0 15px;}

}

.footer_nav_list {
	box-sizing:border-box;
	margin:0 0 20px;
	width:100%;
}

.footer_nav_list > li {
	color:#fff;
	list-style-type:none;
	padding:0;
}

.footer_nav_list > li.footer_home {font-family:'Kosugi Maru';}

.footer_nav_list > li:not(.footer_home) {font-family:'Noto Sans JP';}


@media (width > 750px) {

	.footer_nav_list {padding:0 0 0 180px;}

}

@media (width <= 750px) and (width >= 550px) {

	.footer_nav_list {padding:30px 0 0;}

}

@media (width >= 550px) {

	.footer_nav_list {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-around;
		position:relative;
	}

	.footer_nav_list > li.footer_home {
		font-size:10px;
		line-height:2;
		left:20px;
		margin:0;
		position:absolute;
		top:0;
	}

	.footer_nav_list > li:not(.footer_home) {
		font-size:13px;
		line-height:1.5;
		margin:0;
	}

}

@media (width < 550px) {

	.footer_nav_list {
		display:block;
		text-align:center;
	}

	.footer_nav_list > li.footer_home {
		font-size:20px;
		line-height:1.2;
		margin:0 auto 40px;
	}

	.footer_nav_list > li:not(.footer_home) {
		font-size:15px;
		line-height:1.2;
		margin:0 auto 20px;
	}

}

.footer_nav_list > li > a {
	color:inherit;
	text-decoration:none;
}

.footer_copyright {
	color:#fff;
	display:block;
	font:normal normal normal 10px/15px 'Noto Sans JP';
}

@media (width > 500px) {

	.sp_footer_btn {display:none;}

}

@media (width <= 500px) {

	.sp_footer_btn {
		bottom:0;
		display:flex;
		margin:0;
		position:sticky;
		padding:0;
		width:100%;
		z-index:2;
	}

	.sp_footer_btn > li {
		display:block;
		text-align:center;
		width:calc(100% / 3);
	}

	[data-footer-btn] {
		box-sizing:border-box;
		color:#fff;
		display:block;
		height:100%;
		padding:10px;
		text-decoration:none;
		width:100%;
	}

	[data-footer-btn="tel"] {background-color:#244ca1;}

	[data-footer-btn="map"] {background-color:#65b3e3;}

	[data-footer-btn="time"] {background-color:#4489b4;}

}

/***/
[data-section-title] {
	background-color:var(--back-section-title);
	color:#fff;
	display:block;
	font-size:1.2rem;
	line-height:3rem;
	margin:0;
	padding:0 2em;
	position:relative;
	width:10em;
	width:max-content;
	z-index:1;
}

[data-section-title]::after {
	background-image:linear-gradient(-135deg, transparent 50%, var(--back-section-title) 50%);
	content:'';
	height:3rem;
	left:100%;
	position:absolute;
	width:3rem;
	z-index:1;
}

[data-section-title="#65b3e3"] {--back-section-title:#65b3e3;}

[data-section-title="#244ca1"] {--back-section-title:#244ca1;}

[data-img-shift] {
	display:block;
	margin:0 10px 10px 0;
	position:relative;
	width:max-content;
	max-width:100%;
	z-index:0;
}

[data-img-shift]::after {
	background-color:var(--back-img-shift);
	content:'';
	height:100%;
	left:10px;
	position:absolute;
	top:10px;
	width:100%;
	z-index:-1;
}

[data-img-shift="#c7edf8"] {--back-img-shift:#c7edf8;}

[data-img-shift] img {max-width:100%;}

[data-contents-title] {
	box-sizing:border-box;
	font-weight:bold;
	line-height:1;
	margin:30px auto calc(0.5em + 30px);
	padding:0 1em 0 20px;
	position:relative;
	text-align:center;
	width:max-content;
	max-width:100%;
	z-index:0;
}

@media (width > 1000px) {

	[data-contents-title] {font-size:calc(50 / 1920 * 100vw);}

}

@media (width <= 1000px) {

	[data-contents-title] {font-size:25px;}

}

[data-contents-title]::after {
	bottom:-0.5em;
	content:'';
	height:1em;
	left:0;
	position:absolute;
	width:100%;
	z-index:-1
}

[data-contents-title="#ffe2de"]::after {background:linear-gradient(-135deg, transparent 1em, #ffe2de 1em);}

[data-contents-title="#c7edf8"]::after {background:linear-gradient(-135deg, transparent 1em, #c7edf8 1em);}

/** aisatsu */
.aisatsu {position:relative;}

.aisatsu p {margin:1.5em 2em;}

.aisatsu_bnr {
	margin:1em auto;
	display:block;
	width:max-content;
	max-width:calc(100% - 2em);
}

.aisatsu_bnr > img {
	height:auto;
	max-width:100%;
}

@media (width > 750px) {

	.aisatsu {
		display:grid;
		grid-template-areas:'b a' 'b c' 'd d';
		grid-template-columns:auto 1fr;
		grid-template-rows:auto 1fr;
	}

	.aisatsu::after {
		border:1px solid #244ca1;
		border-radius:33px;
		display:block;
		content:'';
		height:calc(100% - 10px);
		left:30px;
		padding:0;
		position:absolute;
		top:10px;
		width:calc(100% - 30px);
		z-index:-1;
	}

	[data-section-title="#65b3e3"] {grid-area:a;}

	.aisatsu_img_box {
		margin:-10px 0 0;
		grid-area:b;
	}

	.aisatsu_bnr {grid-area:d;}

}

@media (width <= 750px) {

	.aisatsu {
		border:1px solid #244ca1;
		margin:30px auto;
		padding:0;
		width:100%;
	}

	.aisatsu_img_box {
		float:left;
		margin:10px;
		padding:10px;
		max-width:40%;
	}

}

/** note_box */
.note_box {
	border:5px solid #ffaea2;
	border-radius:1.7em;
	box-shadow:0 3px 6px rgba(0, 0, 0, 0.16);
	box-sizing:border-box;
	display:block;
	line-height:1.2;
	margin:calc(0.6em + 30px) auto 40px;
	padding:0;
	position:relative;
	z-index:0;
}

.note_title {
	background-color:#eb7363;
	border-radius:0.8em;
	box-sizing:border-box;
	color:#fff;
	display:block;
	font-size:1em;
	padding:0;
	position:absolute;
	text-align:center;
	top:-0.6em;
	width:8em;
	z-index:1;
}

.note_text {
	box-sizing:border-box;
	display:block;
	line-height:1.4;
	margin:1em auto;
	padding:0;
	width:max-content;
	max-width:calc(100% - 2em);
}

.note_box::after {
	background:url('../images/illust_02.png') center/contain no-repeat;
	content:'';
	display:block;
	position:absolute;
}

@media (width > 950px) {

	.note_box {width:calc(100% - 5em);}

	.note_title {left:-2.5em;}

}

@media (width <= 950px) {

	.note_box {width:100%;}

	.note_title {left:0;}

}

@media (width > 700px) {

	.note_box {font-size:1.875rem;}

	.note_text {font-size:1.125rem;}

	.note_box::after {
		bottom:-50px;
		height:172px;
		right:-0.5em;
		width:4.5em;
	}

}

@media (width <= 700px) {

	.note_box {font-size:0.875rem;}

	.note_text {font-size:0.75rem;}

	.note_box::after {
		bottom:-10px;
		height:100%;
		right:-10px;
		width:35px;
	}

}

/** timetable */
.timetable_box {
	margin:0 auto 40px;
	width:100%;
}

.timetable {
	border:1px solid #fff;
	border-collapse:collapse;
	box-sizing:border-box;
	position:relative;
	table-layout:fixed;
	z-index:0;
}

.timetable::after {
	border-color:#fff;
	border-style:solid;
	border-width:10px 4px;
	box-sizing:border-box;
	content:'';
	height:calc(100% + 20px);
	left:-4px;
	position:absolute;
	top:-10px;
	width:calc(100% + 8px);
	z-index:-1;
}

.timetable tr th:first-child, .timetable tr td:first-child {
	border-right:4px solid #65b3e3;
	box-sizing:border-box;
}

.timetable tr + tr, .timetable tbody tr:first-child {border-top:4px solid #65b3e3;}

.timetable th, .timetable td {
	font-weight:normal;
	padding:1em 0.5em;
	text-align:center;
}

.timetable td i {
	color:#eb7363;
	font-size:1.5em;
}

@media (width > 700px) {

	.timetable {
		font-size:1.2rem;
		margin:30px 18px 28px;
		width:calc(100% - 36px);
	}

	.timetable::before {
		border:14px solid #65b3e3;
		border-radius:14px;
		box-sizing:border-box;
		content:'';
		height:calc(100% + 56px);
		left:-18px;
		position:absolute;
		top:-28px;
		width:calc(100% + 36px);
		z-index:-2;
	}

	.timetable tr th:first-child, .timetable tr td:first-child {
		width:140px;
	}

}

@media (width <= 700px) {

	.timetable {
		font-size:0.75rem;
		margin:0;
		width:100%;
	}

	.timetable tr th:first-child, .timetable tr td:first-child {
		width:6em;
	}

}

/** fukei */
.fukei {
	display:block;
	margin:40px auto;
	padding:0;
	width:100%;
}

.fukei_list {
	display:block;
	margin:0 auto 20px;
	padding:0;
	width:100%;
}

.fukei_list li {
	box-sizing:border-box;
	display:flow-root;
	margin:0;
	padding:30px 60px;
	position:relative;
	width:100%;
	z-index:0;
}

.fukei_list li h3 {
	display:block;
	font-size:1.5rem;
	margin:0 0 20px;
	text-decoration:underline #eb7363;
}

.fukei_list li p {
	display:block;
	margin:20px 0;
}

.fukei_list li:nth-of-type(odd) {background-color:#c7edf8;}

.fukei_list li:nth-of-type(even) {background-color:#fff;}

.fukei_list li:nth-of-type(odd) [data-img-shift="fukei"] {--back-img-shift:#65b3e3;}

.fukei_list li:nth-of-type(even) [data-img-shift="fukei"] {--back-img-shift:#c7edf8;}

@media (width > 750px) {

	.fukei_list li:nth-of-type(odd) [data-img-shift="fukei"] {
		float:left;
		margin:0 20px 0 0;
	}

	.fukei_list li:nth-of-type(even) [data-img-shift="fukei"] {
		float:right;
		margin:0 0 0 20px;
	}

}

@media (width <= 750px) {

	.fukei_list li [data-img-shift="fukei"] {
		margin:20px auto;
		max-width:100%;
	}

}

.fukei_link {
	background-color:#fff;
	bottom:20px;
	color:inherit;
	display:block;
	margin:0;
	padding:10px 30px;
	position:absolute;
	right:20px;
	text-decoration:none;
}

.fukei_link::before {
	background-color:#65b3e3;
	content:'';
	display:block;
	height:100%;
	left:10px;
	position:absolute;
	top:10px;
	width:100%;
	z-index:-1;
}

.fukei_link::after {
	background-color:#eb7363;
	bottom:0;
	content: '';
	display:block;
	height:3px;
	left:calc(100% - 15px);
	margin:auto 0;
	padding:0;
	position:absolute;
	top:0;
	width:50px;
	z-index:1;
}

@media (width > 950px) {

	[data-back-img] {position:relative;}

	[data-back-img]::before {
		display:block;
		position:absolute;
		z-index:1;
	}

	[data-back-img="3"]::before {
		bottom:10px;
		content:url('../images/illust_03.png');
		right:50px;
	}

	[data-back-img="4"]::before {
		bottom:10px;
		content:url('../images/illust_04.png');
		right:10px;
	}

	[data-back-img="5"]::before {
		bottom:10px;
		content:url('../images/illust_05.png');
		right:300px;
	}

}

/** pic */
.pic {
	display:block;
	margin:40px auto;
	padding:0;
	width:100%;
}

.pic_list {
	background-color:#fff;
	box-shadow:0 0 10px rgba(0, 0, 0, 0.16);
	box-sizing:border-box;
	display:flow-root;
	margin:0;
	padding:20px 25px;
	width:100%;
}

.pic_list li {
	display:block;
	padding:0;
	text-align:center;
}

.pic_list li img {max-width:100%;}

@media (width > 850px) {

	.pic_list li {width:calc((100% - 50px) / 3);}

	.pic_list li:nth-of-type(3n + 1) {
		clear:left;
		margin:0 0 30px;
	}

	.pic_list li:not(:nth-of-type(3n + 1)) {margin:0 0 30px 25px;}

}

@media (width >= 600px) and (width <= 850px) {

	.pic_list li {width:calc(50% - 12.5px);}

	.pic_list li:nth-of-type(odd) {
		clear:left;
		margin:0 0 30px;
	}

	.pic_list li:nth-of-type(even) {margin:0 0 30px 25px;}

}

@media (width >= 600px) {

	.pic_list li {float:left;}

}

@media (width < 600px) {

	.pic_list li {
		margin:0 auto 30px;
		width:100%;
	}

}

.pic_img_box {
	display:block;
	margin:auto;
	padding:0;
	width:max-content;
	max-width:100%;
}

.pic_img_box figcaption {
	background-color:#65b3e3;
	border-radius:0.75em;
	box-shadow:0 3px 6px rgba(0, 0, 0, 0.16);
	color:#fff;
	display:block;
	font-size:1.25rem;
	line-height:1.5;
	margin:15px auto 5px;
	padding:0;
	text-align:center;
	width:200px;
	max-width:100%;
}

.pic_text {
	display:block;
	font-size:0.875em;
	text-align:center;
	margin:0;
	padding:0;
}

/** map_box */
.map_box {
	box-sizing:border-box;
	display:flow-root;
	margin:30px auto;
	padding:0 34px 34px;
	position:relative;
	width:1000px;
	max-width:calc(100% - 28px);
	z-index:0;
}

.map_box::before {
	border:14px solid #65b3e3;
	border-radius:14px;
	content:'';
	height:calc(100% - 34px);
	left:0;
	position:absolute;
	top:24px;
	width:calc(100% - 34px);
	z-index:-1;
}

.map_box_sp {
	display:block;
	float:left;
	margin:30px 20px 0 0;
	padding:0;
	position:relative;
	z-index:0;
}

@media (width > 800px) {

	.map_box_sp {
		float:left;
		margin:30px 20px 0 0;
		width:600px;
	}

}

@media (width <= 800px) {

	.map_box_sp {
		margin:30px auto;
		width:100%;
	}

}

.map_box_sp::before {
    content:'';
    display:block;
    padding-top:calc(100% * 2 / 3);
}

.map_box_sp > iframe {
	border:none;
	height:100%;
	left:0;
    position:absolute;
    top:0;
    width:100%;
}

.info_addr {
	display:inline-block;
	font:inherit;
	margin:30px 10p 0x;
}

.info_addr dt {
	background-color:#c7edf8;
	display:block;
	margin:20px 0 5px;
	padding:5px 20px;
	width:max-content;
}

.info_addr dd {
	margin:0;
	padding:0;
}

/* about */
.about_list {
	--about-img-w:260px;
	display:block;
	margin:80px auto;
	padding:0;
}

.about_list > li {
	box-sizing:border-box;
	display:block;
	position:relative;
	z-index:0;
}

.about_list > li::before {
	border-right:3px solid #ffaea2;
	display:block;
	content:'';
	height:100%;
	padding:0;
	position:absolute;
	top:10px;
	right:0;
	z-index:-1;
}

.about_list > li::after {
	border-bottom:3px solid #65b3e3;
	bottom:0;
	display:block;
	content:'';
	padding:0;
	position:absolute;
	z-index:-1;
}

.about_img_box {
	width:max-content;
	max-width:100%;
}

.about_img_box::after {
	background-color:#c7edf8;
	content:'';
	height:100%;
	left:10px;
	position:absolute;
	top:10px;
	width:100%;
	z-index:-1;
}

.about_img_box img {max-width:100%;}

@media (width > 750px) {

	.about_list > li {
		min-height:280px;
		margin:30px 0 50px var(--about-img-w);
		padding:0 20px 20px 0;
		width:calc(100% - var(--about-img-w));
	}

	.about_list > li::after {
		left:calc(0px - var(--about-img-w));
		width:calc(100% + var(--about-img-w) + 10px);
	}

	.about_img_box {
		left:calc(-30px - var(--about-img-w));
		margin:0;
		position:absolute;
		top:-10px;
		z-index:1;
	}

}

@media (width <= 750px) {

	.about_list > li {
		margin:30px auto 50px;
		padding:0 10px 0.1px; /* bottom 相殺させない */
		width:100%;
	}

	.about_img_box {
		margin:20px auto 40px;
		position:relative;
		z-index:0;
	}

	.about_list > li::after {
		left:10px;
		width:100%;
	}

}

/* setsubi */
.setsubi_box {
	box-sizing:border-box;
	display:flow-root;
	margin:80px auto 40px;
	padding:0 0 20px;
	position:relative;
	z-index:0;
	width:calc(100% - 40px);
	max-width:1000px;
}

.setsubi_box::before {
	background-color:#fff;
	bottom:0;
	box-shadow:0 0 10px rgba(0, 0, 0, 0.16);
	display:block;
	content:'';
	height:calc(100% - 48px);
	left:0;
	position:absolute;
	width:100%;
	z-index:-1;
}

.setsubi_list {
	display:contents;
	margin:0;
	padding:0;
}

.setsubi_list li, .setsubi_text {
	display:block;
	float:left;
}

@media (width > 850px) {

	.setsubi_list li, .setsubi_text {width:calc((100% - 80.1px) / 3);}

	.setsubi_list li:nth-of-type(3n + 1) {margin:20px;}

	.setsubi_list li:not(:nth-of-type(3n + 1)) {margin:20px 20px 20px 0;}

	.setsubi_text {margin:40px 20px 20px 0;}

	.setsubi_box::after {
		background:url('../images/illust_07.png') center/contain no-repeat;
		bottom:20px;
		height:275px;
		position:absolute;
		right:20px;
		width:230px;
		z-index:1;
	}

}

@media (width >= 450px) and (width <= 850px) {

	.setsubi_list li, .setsubi_text {width:calc(50% - 30px);}

	.setsubi_list li:nth-of-type(odd) {margin:20px;}

	.setsubi_list li:nth-of-type(even) {margin:20px 20px 20px 0;}

	.setsubi_text {margin:40px 20px 20px 0;}

}

@media (width < 450px) {

	.setsubi_list li, .setsubi_text {
		margin:20px auto;
		width:calc(100% - 40px);
	}

	.setsubi_text {padding:0 20px;}

}

.setsubi_img_box {
	margin: 0 auto 35px;
	position:relative;
	text-align:center;
	width:max-content;
	max-width:100%;
}

.setsubi_img_box::after {
	background-color:#65b3e3;
	content:'';
	height:100%;
	left:10px;
	position:absolute;
	top:10px;
	width:100%;
	z-index:-1;
}

.setsubi_img_box img {max-width:100%;}

.setsubi_img_box figcaption {
	bottom:-35px;
	left:0;
	position:absolute;
	width:100%;
	z-index:1;
}

/* searvice */
.searvice_list {
	display:flow-root;
	margin:30px auto 11rem;
	padding:0;
}

.searvice_list > li {
	background-image:linear-gradient(to bottom, transparent 3rem, #ffaea2 3rem);
	background-clip:content-box;
	box-sizing:border-box;
	display:block;
	text-align:center;
}

.searvice_name {
	font-size:1.75rem;
	font-weight:normal;
	line-height:1;
	margin:0 0 2.5rem;
	padding:0;
}

@media (width > 1000px) {

	.searvice_list > li {
		border-image-slice:1;
		border-image-source:linear-gradient(to bottom, transparent 4rem, #65b3e3 4rem, #65b3e3 80%, transparent 80%);
		border-style:solid;
		float:left;
		margin:0;
		width:50%;
	}

	.searvice_list > li:nth-of-type(odd) {
		border-image-width:0 1.5px 0 0;
		padding:0 20px 0 0;
	}

	.searvice_list > li:nth-of-type(even) {
		border-image-width:0 0 0 1.5px;
		padding:0 0 0 20px;
	}

}

@media (max-width <== 1000px) {

	.searvice_list > li {
		margin:20px auto;
		padding:0.1px;
		width:100%;
		max-width:500px;
	}

	.searvice_list > li + li {margin-top:60px;}

}

@media (width <= 500px) {

	.searvice_name {font-size:1.25rem;}

}

.searvice_img {
	margin:20px;
	max-width:calc(100% - 40px);
}

.searvice_tel {
	background-color:#fff;
	border-radius:50px;
	box-sizing:border-box;
	line-height:1.2;
	padding:10px 2.25em;
	margin:20px auto;
	width:max-content;
	max-width:calc(100% - 40px);
}

.searvice_tel small {
	display:block;
	font-size:0.4em;
}

@media (width > 500px) {

	.searvice_tel {font-size:2.5rem;}

}

@media (width <= 500px) {

	.searvice_tel {font-size:calc(40 / 600 * 100vw);}

}

.searvice_info {
	background-color:#c7edf8;
	display:block;
	bottom:0;
	box-sizing:border-box;
	font-size:1.5rem;
	left:0;
	line-height:1;
	margin:0;
	padding:6em 10px 3em;
	position:absolute;
	text-align:center;
	width:100%;
	z-index:-1;
}

@media (width > 1000px) {

	.searvice_info::after {
		bottom:-20px;
		content:url('../images/illust_02.png');
		display:block;
		right:calc(50% - 14em - 143px);
		position:absolute;
	}

	.searvice_img_bg {
		margin-top:50px;
		position:relative;
	}

	.searvice_img_bg::after {
		bottom:-20px;
		content:url('../images/illust_06.png');
		display:block;
		right:calc(50% - 10em - 114px);
		position:absolute;
	}

}

.searvice_addr {color:#fff;}
