@charset "UTF-8";  

.pc {
	display: inline-block !important;
}

.pc2 {
	display: block !important;
}

.sp ,.sp2 {
	display: none !important;
}

#wrapper {
	width: 100%;
	min-width: 1280px;
	margin: auto;
	padding: 0;
	position: relative;
}


/*====================================
ヘッダー
=====================================*/
header {
	position: relative;
	width: 100%;
	max-width: 1620px;
	min-width: 1280px;
	height: 110px;
	margin: 0 auto;
	padding: 0 0 0 100px;
	background: #fff;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	top: 0;
	left: 0;
	z-index: 100;
	transition: 0.2s linear;
	#top_logo {
		width: 470px;
		margin: 20px 0 0;
		padding: 0;
		a {
			display: inline-block;
			margin: 0;
			padding: 0;
			color: #333;
			text-decoration: none;
			display: flex;
			align-items: center;
			&:hover {
				opacity: 0.7;
			}
			img {
				width: 120px;
				height: auto;
			}
			h1 {
				margin: 0 0 0 30px;
				padding: 0;
				font-size: 25px;
				line-height: 120%;
				font-weight: var(--weight-bold2);
				text-align: left;
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				small {
					display: block;
					margin: 0 0 5px;
					padding: 0;
					font-size: 14px;
					line-height: 120%;
					font-weight: var(--weight-nomal);
				}
			}
		}
	}
	nav {
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		.tel_reservation {
			margin: 0 -20px 0 0;
			padding: 0;
			display: flex;
			align-items: flex-start;
			.time {
				margin: 10px 0 0;
				padding: 0;
				font-size: 14px;
				line-height: 120%;
				font-weight: var(--weight-nomal);
				span {
					margin: 0 0 0 0.5em;
					font-size: 15px;
					line-height: 120%;
					font-weight: var(--weight-bold1);
				}
				p {
					margin: 0 auto;
					padding: 0;
					font-size: 15px;
					line-height: 140%;
					font-weight: var(--weight-nomal);
				}
			}
			.tel {
				margin: 14px 0 0 20px;
				padding: 0;
				display: flex;
				align-items: center;
				transition: 0.2s linear;
				P {
					margin: 0 0 0 6px;
					font-size: 40px;
					line-height: 80%;
					color: #D1933D;
					font-family: var(--font-cairo);
					font-optical-sizing: auto;
					font-variation-settings: "slnt" 0;
					font-weight: var(--weight-bold1);
					transition: 0.2s linear;
				}
			}
			a {
				width: 260px;
				height: 55px;
				margin: 0 0 0 38px;
				padding: 0;
				font-size: 20px;
				line-height: 130%;
				color: #fff;
				font-weight: var(--weight-bold2);
				text-decoration: none;
				background: #D1933D;
				border-radius: 0 0 9px 9px;
				display: flex;
				justify-content: center;
				align-items: center;
				&:hover {
					background: #284B66;
				}
				img {
					margin: 0 20px 0 0;
				}
			}
		}
		ul {
			margin: 10px 0 0 -1em;
			padding: 0;
			list-style: none;
			display: flex;
			li {
				display: inline-block;
				margin: 0 15px 0;
				padding: 0;
				position: relative;
				a,span {
					display: inline-block;
					margin: 0;
					padding: 0 10px 10px;
					font-size: 17px;
					line-height: 120%;
					text-decoration: none !important;
					font-weight: var(--weight-bold2);
					position: relative;
					&:before {
						position: absolute;
						content: '';
						display: block;
						width: 100%;
						height: 3px;
						background: #D1933D;
						bottom: 0;
						left: 0;
						transform-origin: center top;
						transform: scale(0, 1);
						transition: transform 0.3s;
					}
					&:hover:before {
						transform: scale(1, 1);
					}
				}
				/* ドロップダウンメニュー */
				ul.dropdwn_menu {
					position: absolute;
					display: none;
					margin: 0;
					padding: 1em 0.5em !important;
					background: #FFF;
					/*border: 2px solid #fff;*/
					top: 35px;
					left: -50%;
					z-index: 10;
					li {
						margin: 0;
						padding: 0 10px 5px; !important;
						display: flex;
							&:last-of-type{
							padding: 0 10px 0px; !important;
						}
						a {
							display: block;
							width: 100%;
							min-width: 9em;
							margin: 0;
							padding: 7px 5px;
							/*color: #fff !important;*/
							background: none !important;
							text-align: left;
							font-weight: var(--weight-bold2);
							white-space: nowrap;
							&:before {
								display: none;
							}
							&:hover {
								color: #D1933D !important;
							}
						}
					}
				}
			}
		}
	}
}
@media screen and (max-width:1450px) {
	header {
		nav {
			.tel_reservation {
				.tel {
					margin: 14px 0 0 10px;
					P {
						font-size: 36px;
						line-height: 80%;
					}
				}
				a {
					margin: 0 0 0 15px;
				}
			}
		}
	}
}
@media screen and (max-width:1380px) {
	header {
		padding: 0 0 0 10px;
	}
}

header div.sp_menu,
#accordion {
	display: none;
}

/*====================================
共通
=====================================*/
main {
	margin: 0 auto;
	padding: 0;
}

#sp_top, #sp_fix_btn, #sp_fix_btn ul {
	display: none;
}

div.week_tbl {
	width: 510px;
	margin: 0;
	padding: 0;
	&.foot {
		width: 610px;
		margin-top: 50px;
	}
	table {
		width: 100%;
		margin: 0;
		padding: 0;
		th {
			width: 55px;
			margin: 0;
			padding: 0 0 8px;
			font-size: 15px;
			line-height: 160%;
			font-weight: var(--weight-bold2);
			text-align: center;
			border-bottom: 1px solid #DDDDDD;
			&:first-of-type {
				width: 125px;
			}
		}
		td {
			margin: 0;
			padding: 8px 0;
			font-size: 15px;
			line-height: 160%;
			text-align: center;
			border-bottom: 1px solid #DDDDDD;
			&:first-of-type {
				font-size: 16px;
				line-height: 160%;
				font-family: var(--font-cairo);
				font-optical-sizing: auto;
				font-variation-settings: "slnt" 0;
				font-weight: var(--weight-bold1);
			}
		}
	}
	&.foot {
		table {
			th {
				width: 64px;
				color: #C78132;
				border-bottom: 1px solid #D1933D;
				&:first-of-type {
					width: 162px;
				}
			}
			td {
				color: #C78132;
				border-bottom: 1px solid #D1933D;
			}
		}
	}
	p {
		margin: 10px 0 0;
		padding: 0;
		font-size: 15px;
		line-height: 150%;
		text-align: right;
		span {
			display: inline-block;
			margin: 0 30px 0 0;
			font-size: 16px;
			line-height: 160%;
			font-family: var(--font-cairo);
			font-optical-sizing: auto;
			font-variation-settings: "slnt" 0;
			font-weight: var(--weight-bold1);
		}
	}
	&.foot p {
		color: #C68032;
	}
}

#btm_reservation {
	width: 100%;
	height: 340px;
	margin: 0 auto;
	padding: 0;
	background: url(../images/common/btm_reservation.jpg) center / cover no-repeat;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	h2 {
		margin: 0;
		padding: 0;
		font-size: 36px;
		line-height: 160%;
		font-weight: var(--weight-bold2);
	}
	h3 {
		margin: 10px 0 0;
		padding: 0;
		font-size: 17px;
		line-height: 180%;
		font-weight: var(--weight-nomal);
	}
	.btn {
		width: 1120px;
		margin: 35px 0 0;
		padding: 0;
		list-style: none;
		display: flex;
		justify-content: space-between;
		li {
			margin: 0;
			padding: 0;
			a {
				display: block;
				width: 100%;
				height: 70px;
				margin: 0;
				padding: 0;
				text-decoration: none;
			}
			&:first-of-type {
				width: 456px;
				background: #fff;
				border-radius: 8px;
				overflow: hidden;
				a {
					display: inline-block;
					margin: 0 auto;
					padding: 0;
					pointer-events: none;
					display: flex;
					justify-content: center;
					align-items: center;
					P {
						margin: -0.1em 0 0 6px;
						font-size: 38px;
						line-height: 100%;
						color: #D1933D;
						font-family: var(--font-cairo);
						font-optical-sizing: auto;
						font-variation-settings: "slnt" 0;
						font-weight: var(--weight-bold1);
					}
					div {
						margin: 0 0 0 20px;
						padding: 0;
						font-size: 14px;
						line-height: 140%;
						color: #927246;
						font-family: var(--font-cairo);
						font-optical-sizing: auto;
						font-variation-settings: "slnt" 0;
						font-weight: var(--weight-nomal);
					}
				}
			}
			&:nth-of-type(n + 2) {
				width: 292px;
				background: #D1933D;
				border-radius: 8px;
				overflow: hidden;
				a {
					display: inline-block;
					margin: 0 auto;
					padding: 0;
					display: flex;
					justify-content: center;
					align-items: center;
					P {
						margin: -0.1em 0 0 10px;
						font-size: 22px;
						line-height: 140%;
						color: #fff;
						font-weight: var(--weight-bold1);
					}
					&:hover {
						background: #284B66;
					}
				}
			}
		}
	}
}


/*====================================
フッター
=====================================*/
footer {
	width: 100%;
	margin: 0 auto;
	padding: 100px 0 60px;
	background: #F9F3EA;
	#footer_in {
		max-width: 1420px;
		min-width: 1280px;
		margin: 0 auto;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		div.footer_info {
			width: 610px;
			margin: 0;
			padding: 0;
			.name_address {
				margin: 0;
				padding: 0;
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				.logo {
					width: 120px;
					margin: 0;
					padding: 0;
				}
				.name_txt {
					width: 320px;
					margin: 0;
					padding: 0;
					text-align: left;
					h5 {
						margin: 0;
						padding: 0;
						font-size: 14px;
						line-height: 120%;
						font-weight: var(--weight-nomal);
					}
					h4 {
						margin: 10px 0 0;
						padding: 0;
						font-size: 25px;
						line-height: 120%;
						font-weight: var(--weight-bold2);
					}
					p {
						margin: 15px 0 0;
						padding: 0;
						font-size: 16px;
						line-height: 160%;
						text-align: left;
					}
				}
				.point {
					width: 115px;
					margin: 0 0 0 25px;
					padding: 0;
					list-style: none;
					li {
						width: 100%;
						margin: 0;
						padding: 10px 5px;
						font-size: 17px;
						line-height: 140%;
						color: #D1923D;
						font-weight: var(--weight-bold2);
						background: #fff;
						&:nth-of-type(n+2) {
							margin-top: 10px;
						}
					}
				}
			}
			div.info_gmap {
				display: none;
			}
			div.foot_nav {
				margin: 50px 0 0;
				padding: 0;
				display: flex;
				align-items: flex-start;
				ul {
					display: inline-block;
					margin: 0;
					padding: 0;
					list-style: none;
					display: flex;
					flex-direction: column;
					align-items: flex-start;
					&:nth-of-type(2) {
						margin-left: 80px;
					}
					li {
						display: inline-block;
						margin: 0;
						padding: 0;
						&:nth-of-type(n+2) {
							margin-top: 10px;
						}
						a,span {
							display: inline-block;
							margin: 0;
							padding: 0;
							font-size: 16px;
							line-height: 160%;
							font-weight: var(--weight-bold2);
							text-decoration: none !important;
						}
						a:hover {
							color: #D1923D !important;
						}
					}
					.sub {
						margin: 5px 0 7px !important;
						display: flex;
						align-items: flex-start;
						ul {
							margin: 0;
							padding: 0 0 0 10px;
							border-left: 1px solid #D1933D;
							&:nth-of-type(2) {
								margin-left: 55px;
							}
							li {
								display: inline-block;
								margin: 0;
								padding: 0;
								&:nth-of-type(n+2) {
									margin-top: 10px !important;
								}
								a {
									display: inline-block;
									margin: 0;
									padding: 0;
									font-size: 15px !important;
									line-height: 160%;
									font-weight: var(--weight-nomal);
								}
							}
						}
					}
				}
			}
			ul.foot_bnr {
				margin: 35px 0 0;
				padding: 0;
				list-style: none;
				display: flex;
				justify-content: space-between;
				li {
					width: 186px;
					margin: 0;
					padding: 0;
					a:hover {
						opacity: 0.8;
					}
				}
			}
		}
		.footer_gmap {
			width: calc(100% - 710px);
			max-width: 50%;
			height: 650px;
			margin: 0;
			padding: 0;
			position: relative;
			iframe {
				position: absolute;
				width: 100%;
				height: 100%;
				top: 0;
				left: 0;
			}
		}
		#footer_copy {
			width: 100%;
			margin: 60px 0 0;
			padding: 0;
			font-size: 13px;
			line-height: 180%;
			font-weight: var(--weight-bold1);
			font-family: var(--font-cairo);
			font-optical-sizing: auto;
			font-variation-settings: "slnt" 0;
			color: #D1923D;
			text-align: right;
		}
	}
}

#page_top {
    position: fixed;
	display: none;
    bottom: 50px;
    right: 20px;
	z-index: 100;
	a {
		display: block;
		margin: 0;
		&:hover {
			opacity: 0.8;
		}
	}
}

