/* ポップアップデザイン */
#announcementOverlay {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:rgba(0, 0, 0, 0.8);
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:1000;
	color:#fff;
}
#announcementOverlay div {
	background-color:#333;
	padding:2vw 4vw;
	border-radius:8px;
	text-align:center;
	max-width:1000px;
	width:80%;
	font-size:min(2.5vw,25px);
	box-shadow:0 4px 8px rgba(0, 0, 0, 0.2);
	line-height:min(3.5vw,35px);
}
#announcementOverlay d1 {
	font-size:min(3.5vw,35px);
}
#announcementOverlay d2 {
	font-size:min(2.5vw,25px);
	font-family:'Yu Mincho';
}
#announcementOverlay span {
	text-decoration:underline wavy;
	text-decoration-thickness:2px;
}
#announcementOverlay a {
	color:#ffcc00;
}
#announcementOverlay a:hover {
	color:#777;
}
#announcementOverlay table {
	margin:auto;
}
#announcementOverlay td {
	padding:min(0.25vw,2.5px) min(1vw,10px) min(0.25vw,2.5px);
}
#announcementOverlay button {
	margin-top:2vw;
	background-color:#ffb739;
	color:#333;
	border:none;
	padding:1vw 2vw;
	font-size:min(1.5vw,20px);
	font-weight:bold;
	cursor:pointer;
	border-radius:5px;
}
#announcementOverlay a.btn {
	margin:1vh;
	padding:1vw 2vw;
	display:inline-block;
	border-bottom:2px solid #333;
	border-radius:5px;
	color:#333;
	font-size:min(2.5vw,25px);
	font-weight:bold;
	box-shadow:0 5px 0 rgba(215,143,17,1);
	background-color:#ffb739;
}
#announcementOverlay a.btn:hover {
	transform:translateY(2px);
	box-shadow:0 3px 0px rgba(215,143,17,1);
}
#announcementOverlay a.btn:active {
	transform:translateY(4px);
	box-shadow:0 1px 0px rgba(215,143,17,1);
}
#announcementOverlay.weekday {
	display: none;
}

/* バナーデザイン */
#onlineReserve a {
	display:inline-block;
	background-color:#FFF;
	color:#B11;
	position:relative;
	border:1px solid #DDD;
	border-radius:10px;
}
#onlineReserve a::before {
	content: "";
	position: absolute;
	top: -6px;
	left: -6px;
	width: 100%;
	height: 100%;
	border: 3px solid #333;
	transition: 0.2s;
	border-radius:10px;
}
#onlineReserve a.stop::before {
	border: none;
}
#onlineReserve.weekday > a::before {
	border: none;
}
#onlineReserve a:hover::before {
	top: 0;
	left: 0;
}
#onlineReserve i {
	border-radius:5px;
	font-family:
		"Hiragino Sans", /* macOS, iOS */
		"Hiragino Kaku Gothic ProN", /* macOS (古い) */
		"Yu Gothic Medium", /* Windows 10以降 */
		"Meiryo", /* Windows (旧) */
		sans-serif;
	font-weight:bold;
	font-style:normal;
	font-size:min(2.5vh, 25px)
}
#onlineReserve i.title {
	display:inline-block;
	margin:1.5vh 0 0 1em;
}
#onlineReserve i.text {
	display:block;
	width:90%;
	margin:1vh 5% 2vh 5%;
	padding:1.8vh;
	background-color:#EEE;
	font-size:min(1.5em, 15px);
	line-height:1.1;
	color: #333;
}
#onlineReserve i.mark {
	display:inline-block;
	position:absolute;
	color:#333;
	right: 5%;
	transform: scaleY(1.7);
	margin-top:1.2vh;
	animation-name:move;
	animation-duration:1s;
	animation-timing-function:ease-out;
	animation-delay:1s;
	animation-direction:alternate;
	animation-iteration-count:infinite;
}
@keyframes move{
	0% { right: 5%;	}
	100% { right: 3%; }
}
#onlineReserve i.mark.stop {
	transform: scaleY(1.7) scaleX(1.7);
	animation-name:none;
}
#onlineReserve.weekday i.mark {
	animation-name:none;
}
#onlineReserve span {
	display: none;
}
#onlineReserve.weekday span {
	display: inline;
	text-decoration: underline;
}