/*topPanel*/
.topPanel .inWrap {
	position: relative;
	width: 100%;
	max-width: none;
}
/*topSlider*/
.topSlider {
	position: relative;
	aspect-ratio: 830 / 260;
	background-color: #f1f4df;
	overflow: hidden;
}
/*topNav*/
.topMsg {
	padding: 10px;
	background: url('../img/menu/msg_bg.jpg') no-repeat center center;
	background-size: 100% 100%;
	line-height: 1.2em;
	font-weight: 600;
	font-size: .9em;
	color: #4f4438;
}
.topMenu {
	display: grid;
	grid-template-columns: 1fr 20%;
}
.topMenu .btnL {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.topMenu .btnL a {
	aspect-ratio: 2 / 1;
	overflow: hidden;
}
.topMenu .btnL a img {
	width: 100%;
	object-position: left top;
	object-fit: contain;
}
.topMenu .btnR {
	display: grid;
	grid-template-rows: 1fr 1fr;
	gap: 5px;
	padding: 6px 6px 6px 0;
}
.topMenu .btnR a {
	position: relative;
	border: 1px solid rgba(85,82,37,.6);
	overflow: hidden;
}
.topMenu .btnR a img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	margin: auto;
	object-position: center center;
	object-fit: cover;
}
/*topInfo*/
.topInfo {
	padding: 0 20px;
	background-color: #f8fbea;
	line-height: 1.0em;
	font-weight: 600;
	font-size: .9em;
}
.topInfo .inName { padding: 30px 0 10px; }
.topInfo .inAdd,
.topInfo .inTel {
	display: flex;
	flex-wrap: wrap;
	gap: .2em 1.0em;
}
.topInfo .inMap {
	display: inline-block;
	padding: 2px 5px;
	background-color: #5c6a5c;
	color: #f8fbea;
}
.topInfo .inTel { padding-top: .2em; }
.topInfo .inNav {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 5px 8px;
	padding: 10px 0;
}
.topInfo .inNav a {
	padding: 10px 20px;
	background: rgba(255,255,255,.4) url('../img/general/btn.png') no-repeat center center;
	background-size: 100% 100%;
	font-weight: 600;
	font-size: 14px;
	color: #575314;
}
