@charset "utf-8";
@import url('./reset.css');
body {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	min-width: 320px;
	min-height: 100vh;
	background-color: #fff;
	color: #554330;
	font-family: 'Helvetica','Arial','Yu Gothic Medium','游ゴシック Medium', 'YuGothic','游ゴシック体','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3',Meiryo,'メイリオ',sans-serif;
}

#header {
	flex: 0 0 auto;
	padding: 0 10px;
	overflow: hidden;
}
#header .hdWrap {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 60px;
	width: 100%;
	max-width: 1240px;
	margin: auto;
	padding-bottom: 60px;
	z-index: 1;
}
#header .hdWrap::before,
#header .hdWrap::after {
	content:"";
	position: absolute;
	background-size: contain!important;
	z-index: -100;
}
#header .hdWrap::before {
	top: 0;
	right: -500px;
	width: 1000px;
	height: 500px;
	background: url("../img/general/bgTop.jpg") no-repeat left top;
}
#header .hdWrap::after {
	bottom: 0;
	left: -300px;
	width: 600px;
	height: 300px;
	background: url("../img/general/bgBtm.jpg") no-repeat right bottom;
}
@media screen and (max-width: 800px) {
	#header .hdWrap::before {
		right: -250px;
		width: 500px;
		height: 250px;
	}
	#header .hdWrap::after {
		left: -150px;
		width: 300px;
		height: 150px;
	}
}
#header .hdLogo {
	padding-top: 50px;
	text-align: center;
}
#header .hdTime .inCp {
	background-color: #ffdf00;
	text-align: center;
}
#header .hdTime .inCp span {
	display: inline-block;
	padding: 0 10px;
	background-color: #fff;
}
#header .hdTime .inLst { padding-top: 10px; }

#footer {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	padding: 30px 10px;
	background-color: #ffef7c;
	font-size: 20px;
}
/* main */
#main {
	flex: 1 0 auto;
	background-color: inherit;
}
/*parts*/
#noScr {
	order: -1;
	display: flex;
	justify-content: center;
	color: #0075a9;
}
#goup {
	position: fixed;
	right: 10px;
	bottom: 10px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s, visibility 1s, transform 1s;
	z-index: 1000;
}
#goup.isIn {
	opacity: 1;
	visibility: visible;
}
#goup a {
	position: relative;
	display: block;
	width: 40px;
	height: 40px;
	background-color: rgba(255,255,255,.7);
	border: 1px solid #5a4a42;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
#goup a:hover { background-color: rgba(61,49,51,.1); }
#goup a::after{
	content: "";
	position: absolute;
	top: 6px;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 12px;
	height: 12px;
	border-left: 2px solid #5a4a42;
	border-top: 2px solid #5a4a42;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#breadcrumbs {
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 30px;
	font-size: 14px;
	color: #959595;
}

#breadcrumbs > *:not(:last-child) {
	position: relative;
	padding-right: 14px;
}
#breadcrumbs a { color: #02bce4; }
#breadcrumbs a:hover,#breadcrumbs a:active { color: #1ad344; }
#breadcrumbs > *:not(:last-child)::after {
	content: "";
	position:absolute;
	top: 0;
	bottom: 0;
	right: 5px;
	margin: auto;
	width: 8px;
	height: 8px;
	border-top: 1px solid #50656e;
	border-right: 1px solid #50656e;
	transform: rotate(45deg);
}
@media screen and (min-width: 768px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
	}
}

/*element*/
.eMA::after { content: attr(data-md); }
.eMA::before { content: attr(data-mn) "@"; }
.eBlk { height: 1.0em; }
.eWrap {
	max-width: 980px;
	margin: auto;
}
.eLiDisc { margin-left: 1.5em; }
.eLiDisc > li::before {
	content: '〇';
	padding-right: 0.5em;
	margin-left: -1.5em;
}

#main  { font-size: 24px; }
#infoArea {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
	padding: 30px 10px;
	background-color: #defdc2;
}
#infoArea > * {
	width: 100%;
	max-width: 610px;
	min-height: 200px;
}
#infoArea > .inInfo {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	padding: 40px 20px;
	border: 5px solid #fff;
}
#infoArea > .inMap > iframe {
	width: 100%;
	height: 100%;
}

#albumArea {
	display: flex;
	width: 100%;
}
#albumArea > * { width: 33.33%; }

#greetArea,
#guideArea,
#introArea { padding: 50px 20px; }
#guideArea .inTtl,
#introArea .inTtl {
	padding-left: 10px;
	font-size: 1.2em;
	letter-spacing: .1em;
}
#guideArea .inCont > section,
#introArea .inCont > section {
	padding-top: 10px;
	font-size: .9em;
}
#guideArea .inCont > section:not(:last-child),
#introArea .inCont > section:not(:last-child) { padding-bottom: 30px; }
#guideArea .inCont h4,
#introArea .inCont h4 {
	margin-bottom: 10px;
	font-weight: 600;
	font-size: 1.2em;
}
#greetArea {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	max-width: 1020px;
	margin: auto;
}
@media screen and (min-width: 768px) {
	#greetArea {
		flex-direction: row;
		align-items: stretch;
	}
	#greetArea picture { flex: 0 0 auto; }
}
#guideArea {
	padding: 50px 20px;
	background-color: #fdfac2;
}
#guideArea .inTtl {
	border-left: 10px solid #1dda48;
	color: #1dda48;
}
#guideArea .inCont h4 span {
	padding: 5px 20px;
	border-radius: 10px;
	border: 2px solid #554330;
}
#introArea .inTtl {
	border-left: 10px solid #ffc520;
	color: #ffc520;
}
#introArea .inCont h4 span { border-bottom: 2px solid #554330; }
#introArea .inCont h5 { font-weight: 600; }
#introArea .inCont h5::before {
	content: '〇';
	padding-right: 0.5em;
}
#introArea .inCont aside {
	padding-top: 10px;
	font-size: .8em;
}
#introArea .inCont figure {
	display: flex;
	gap: 10px;
	padding: 10px 0;
}
#introArea .inCont table th,
#introArea .inCont table td { vertical-align: top; }
#introArea .inCont .inTbl {
	width: 100%;
	border-collapse: collapse;
	margin: 10px auto;
	font-size: .8em;
}
#introArea .inCont .inTbl th,
#introArea .inCont .inTbl td {
	border-width : 1px;
	border: 1px #000 solid;
	padding: 10px;
}
#introArea .inCont .inTbl th { background-color: #fbf9dd; }
#introArea .inCont .red { color: red; }
