* {margin:0;padding:0;box-sizing:border-box;}

/* ======================================================= */
@media (max-width:559px) {
	* {font-family:'LINE Seed JP', serif;font-style:normal;font-weight:400;}
	
	body {color:#333;text-align:center;background:url(/202610/img/bg.png) no-repeat center;background-size:cover;background-attachment: fixed;}
	a {color:#e83828;text-decoration:underline;transition:0.2s ease-in-out;}
		a:hover {color:#a40b5d;text-decoration:none;}
	img {max-width:100%;height:auto;border:0px;vertical-align:bottom;}
		#map img {max-width:none;}
	button {cursor:pointer;transition:0.2s ease-in-out;}
	
	header {background:#c21920;width:100%;display:flex;justify-content:center;padding:0 30px 15px 30px;margin:0 0 30px 0;}
		header #logo {width:100%;}
			header #logo img {width:100%;margin-top:-5px;}
	
	article {padding:0;text-align:left;}
		article section {padding:0 30px;}
		
		article #intro {}
			article #intro .discount {border:6px solid #c21920;padding:15px 15px;margin:0 0 15px 0;border-radius:10px;text-align:center;background:#fff;}
				article #intro .discount div:nth-of-type(1) {font-size:6vw;line-height:1.3;font-weight:700;color:#c21920;padding:0 0 10px 0;}
				article #intro .discount div:nth-of-type(2) {font-size:4.5vw;font-weight:700;color:#c21920;padding:0 0 15px 0;}
				article #intro .discount ul {list-style:none;display:flex;flex-direction:column;gap:5px 0;}
					article #intro .discount ul li {font-size:3.5vw;line-height:1.3;}
						article #intro .discount ul li:before {content:"※";}
			article #intro .date {text-align:center;font-size:5vw;line-height:1.4;font-weight:700;padding:0 0 10px 0;}
		
		article #accommodations {}
			article #accommodations .images {margin:0 0 30px 0;}
				article #accommodations .images ul {list-style:none;}
			article #accommodations h2 {font-size:6vw;line-height:1.3;font-weight:700;padding:0 0 5px 0;color:#c21920;text-align:center;}
			article #accommodations > p {font-size:4vw;line-height:1.4;margin:0 auto 60px auto;text-align:center;padding:0 0 15px 0;border-bottom:1px solid #333;}
			article #accommodations > ul {list-style:none;}
				article #accommodations > ul > li {margin:0 0 60px 0;}
					article #accommodations > ul > li .image {margin:0 0 10px 0;}
					article #accommodations > ul > li h3 {font-size:7vw;line-height:1.4;margin:0 0 5px 0;}
						article #accommodations > ul > li h3 a {text-decoration:none;color:#333;font-weight:700;}
					article #accommodations > ul > li .address {font-size:3.5vw;line-height:1.4;margin:0 0 5px 0;}
					article #accommodations > ul > li .phone {font-size:6vw;line-height:1;margin:0 0 10px 0;}
					article #accommodations > ul > li p {font-size:3.5vw;line-height:1.4;margin:0 0 15px 0;padding:0 0 15px 0;border-bottom:1px solid #333;}
					article #accommodations > ul > li .plan {font-size:5vw;line-height:1.3;font-weight:700;margin:0 0 10px 0;color:#c21920;}
					article #accommodations > ul > li ul {list-style:disc;padding:0 0 5px 25px;}
						article #accommodations > ul > li ul li {font-size:3.5vw;line-height:1.3;margin:0 0 5px 0;}
					article #accommodations > ul > li .price {margin:0 0 15px 0;display:flex;justify-content:flex-end;gap:0 5px;align-items:baseline;}
						article #accommodations > ul > li .price span:nth-of-type(1) {font-size:3.5vw;}
						article #accommodations > ul > li .price span:nth-of-type(2) {font-size:4vw;font-weight:700;letter-spacing:-0.05rem;text-decoration:line-through;}
						article #accommodations > ul > li .price span:nth-of-type(3) {font-size:7vw;font-weight:700;letter-spacing:-0.05rem;color:#c21920;}
						article #accommodations > ul > li .price span:nth-of-type(4) {font-size:4vw;color:#c21920;}
					article #accommodations > ul > li .booking {text-align:center;}
						article #accommodations > ul > li .booking a {display:block;padding:15px 15px;font-size:5vw;line-height:1.3;font-weight:700;background:#c21920;color:#fff;text-decoration:none;border-radius:5px;}
							article #accommodations > ul > li .booking a:hover {background:#c13606;}
			
			article #accommodations .notice {padding:15px 15px;font-size:3vw;line-height:1.4;background:rgba(255,255,255,0.3);display:flex;flex-direction:column;text-align:left;gap:5px 0;margin:0 0 45px 0;}
				article #accommodations .notice li {margin:0;}
					article #accommodations .notice li:before {content:"※";}
	
	footer {text-align:center;padding:0 30px 45px 30px;}
		footer address {margin:0 0 30px 0;}
			footer address > div:nth-of-type(1) {font-size:6vw;line-height:1;font-weight:700;margin:0 0 5px 0;}
			footer address > div:nth-of-type(2) {font-size:3.5vw;}
		footer #link {}
			footer #link a {display:inline-block;padding:15px 30px;font-size:4vw;line-height:1;background:#c21920;color:#fff;text-decoration:none;border-radius:5px;}
				footer #link a:hover {background:#c13606;}
	
	#goto_pagetop {position:fixed;bottom:30px;right:-50px;text-indent:-9999px;z-index:500;}
		#goto_pagetop a {width:50px;height:50px;display:block;background:rgba(232,56,40,0.3);position:relative;transition:0.2s ease-in-out;}
			#goto_pagetop a:after {content:"";display:block;position:absolute;left:50%;top:50%;margin-top:-3px;margin-left:-7px;width:10px;height:10px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(45deg);}
				#goto_pagetop a:hover {background:rgba(232,56,40,0.9);position:relative;}
				#goto_pagetop a:hover:after {content:"";display:block;position:absolute;left:50%;top:50%;margin-top:-3px;margin-left:-7px;width:10px;height:10px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(45deg);}
}
/* ======================================================= */
@media (min-width:560px) and (max-width:1023px) {
	* {font-family:'LINE Seed JP', serif;font-style:normal;font-weight:400;}
	
	body {color:#333;text-align:center;background:url(/202610/img/bg.png) no-repeat center;background-size:cover;background-attachment: fixed;}
	a {color:#e83828;text-decoration:underline;transition:0.2s ease-in-out;}
		a:hover {color:#a40b5d;text-decoration:none;}
	img {max-width:100%;height:auto;border:0px;vertical-align:bottom;}
		#map img {max-width:none;}
	button {cursor:pointer;transition:0.2s ease-in-out;}
	
	header {background:#c21920;width:100%;display:flex;justify-content:center;padding:0 30px 30px 30px;margin:0 0 30px 0;}
		header #logo {width:100%;}
			header #logo img {width:100%;margin-top:-15px;}
	
	article {padding:0;text-align:left;}
		article section {padding:0 30px;}
		
		article #intro {}
			article #intro .discount {border:6px solid #c21920;padding:15px 15px;margin:0 0 15px 0;border-radius:10px;text-align:center;background:#fff;}
				article #intro .discount div:nth-of-type(1) {font-size:3.5vw;line-height:1.3;font-weight:700;color:#c21920;padding:0 0 10px 0;}
				article #intro .discount div:nth-of-type(2) {font-size:3vw;font-weight:700;color:#c21920;padding:0 0 15px 0;}
				article #intro .discount ul {list-style:none;display:flex;flex-direction:column;gap:5px 0;}
					article #intro .discount ul li {font-size:2vw;}
						article #intro .discount ul li:before {content:"※";}
			article #intro .date {text-align:center;font-size:4vw;line-height:1.4;font-weight:700;}
		
		article #accommodations {}
			article #accommodations h2 {font-size:3vw;line-height:1.5;font-weight:700;color:#c21920;text-align:center;}
			article #accommodations > p {font-size:2.2vw;line-height:1.5;margin:0 auto 30px auto;text-align:center;padding:0 0 15px 0;border-bottom:1px solid #333;}
			article #accommodations > ul {list-style:none;display:flex;justify-content:space-between;flex-wrap:wrap;gap:45px 20px;padding:0 0 45px 0;}
				article #accommodations > ul > li {width:calc(100% / 2 - 10px);}
					article #accommodations > ul > li .image {margin:0 0 15px 0;}
					article #accommodations > ul > li h3 {font-size:4vw;line-height:1.3;margin:0 0 10px 0;}
						article #accommodations > ul > li h3 a {text-decoration:none;color:#333;font-weight:700;}
					article #accommodations > ul > li .address {font-size:2vw;line-height:1.4;margin:0 0 5px 0;}
					article #accommodations > ul > li .phone {font-size:3vw;line-height:1;margin:0 0 10px 0;}
					article #accommodations > ul > li p {font-size:2.2vw;line-height:1.4;margin:0 0 15px 0;padding:0 0 15px 0;border-bottom:1px solid #333;}
					article #accommodations > ul > li .plan {font-size:2.5vw;line-height:1.4;font-weight:700;margin:0 0 10px 0;color:#c21920;}
					article #accommodations > ul > li ul {list-style:disc;padding:0 0 5px 25px;}
						article #accommodations > ul > li ul li {font-size:2vw;line-height:1.3;margin:0 0 5px 0;}
					article #accommodations > ul > li .price {margin:0 0 15px 0;display:flex;justify-content:flex-end;gap:0 5px;align-items:baseline;}
						article #accommodations > ul > li .price span:nth-of-type(1) {font-size:2vw;}
						article #accommodations > ul > li .price span:nth-of-type(2) {font-size:2vw;font-weight:700;letter-spacing:-0.05rem;text-decoration:line-through;}
						article #accommodations > ul > li .price span:nth-of-type(3) {font-size:4vw;font-weight:700;letter-spacing:-0.05rem;color:#c21920;}
						article #accommodations > ul > li .price span:nth-of-type(4) {font-size:2vw;color:#c21920;}
					article #accommodations > ul > li .booking {text-align:center;}
						article #accommodations > ul > li .booking a {display:block;padding:15px 15px;font-size:2.2vw;line-height:1.3;font-weight:700;background:#c21920;color:#fff;text-decoration:none;border-radius:5px;}
							article #accommodations > ul > li .booking a:hover {background:#c13606;}
			article #accommodations .notice {padding:15px 15px;font-size:2vw;line-height:1.4;background:rgba(255,255,255,0.3);display:flex;flex-direction:column;text-align:left;gap:5px 0;}
				article #accommodations .notice li {width:100%;}
					article #accommodations .notice li:before {content:"※";}
	
	footer {text-align:center;padding:0 30px 45px 30px;}
		footer address {margin:0 0 30px 0;}
			footer address > div:nth-of-type(1) {font-size:5vw;line-height:1;font-weight:700;margin:0 0 5px 0;}
			footer address > div:nth-of-type(2) {font-size:2.5vw;}
		footer #link {}
			footer #link a {display:inline-block;padding:15px 30px;font-size:2vw;line-height:1;background:#c21920;color:#fff;text-decoration:none;border-radius:5px;}
				footer #link a:hover {background:#c13606;}
	
	#goto_pagetop {position:fixed;bottom:30px;right:-50px;text-indent:-9999px;z-index:500;}
		#goto_pagetop a {width:50px;height:50px;display:block;background:rgba(232,56,40,0.3);position:relative;transition:0.2s ease-in-out;}
			#goto_pagetop a:after {content:"";display:block;position:absolute;left:50%;top:50%;margin-top:-3px;margin-left:-7px;width:10px;height:10px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(45deg);}
				#goto_pagetop a:hover {background:rgba(232,56,40,0.9);position:relative;}
				#goto_pagetop a:hover:after {content:"";display:block;position:absolute;left:50%;top:50%;margin-top:-3px;margin-left:-7px;width:10px;height:10px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(45deg);}
}
/* ======================================================= */
@media (min-width:1024px) {
	* {font-family:'LINE Seed JP', serif;font-style:normal;font-weight:400;}
	
	body {color:#333;text-align:center;background:url(/202610/img/bg.png) no-repeat center;background-size:cover;background-attachment: fixed;}
	a {color:#c21920;text-decoration:underline;transition:0.2s ease-in-out;}
		a:hover {color:#a40b5d;text-decoration:none;}
	img {max-width:100%;height:auto;border:0px;vertical-align:bottom;}
		#map img {max-width:none;}
	button {cursor:pointer;transition:0.2s ease-in-out;}
	
	header {background:#c21920;width:100%;display:flex;justify-content:center;padding:0 0 30px 0;margin:0 0 30px 0;}
		header #logo {width:100%;}
			header #logo img {width:1000px;margin-top:-30px;}
	
	article {padding:0;text-align:left;}
		article section {margin:0 auto;width:1000px;}
		
		article #intro {padding:0 0 15px 0;}
			article #intro .discount {border:6px solid #c21920;padding:20px 20px;margin:0 0 30px 0;border-radius:10px;text-align:center;background:#fff;}
				article #intro .discount div:nth-of-type(1) {font-size:2.5rem;line-height:1.3;font-weight:700;color:#c21920;padding:0 0 10px 0;}
				article #intro .discount div:nth-of-type(2) {font-size:1.5rem;font-weight:700;color:#c21920;padding:0 0 15px 0;}
				article #intro .discount ul {list-style:none;display:flex;flex-direction:column;gap:5px 0;}
					article #intro .discount ul li {font-size:1.25rem;}
						article #intro .discount ul li:before {content:"※";}
			article #intro .date {text-align:center;font-size:3rem;line-height:1.4;font-weight:700;}
		
		article #accommodations {width:100%;padding:0 0 45px 0;}
			article #accommodations h2 {font-size:2rem;line-height:1;font-weight:700;text-align:center;margin:0 0 15px 0;color:#c21920;}
			article #accommodations > p {font-size:1.5rem;line-height:1.5;margin:0 auto 30px auto;text-align:center;padding:0 0 30px 0;border-bottom:1px solid #333;width:1000px;}
			article #accommodations > ul {list-style:none;display:flex;justify-content:space-between;flex-wrap:wrap;gap:60px 30px;width:1000px;margin:0 auto 45px auto;}
				article #accommodations > ul > li {width:calc(100% / 2 - 15px);}
					article #accommodations > ul > li .image {margin:0 0 15px 0;}
					article #accommodations > ul > li h3 {font-size:2rem;line-height:1.4;margin:0 0 10px 0;}
						article #accommodations > ul > li h3 a {text-decoration:none;color:#333;font-weight:700;}
					article #accommodations > ul > li .address {font-size:1rem;line-height:1.4;margin:0 0 5px 0;}
					article #accommodations > ul > li .phone {font-size:1.5rem;line-height:1;margin:0 0 10px 0;}
					article #accommodations > ul > li p {font-size:1rem;line-height:1.5;margin:0 0 15px 0;padding:0 0 15px 0;border-bottom:1px solid #333;}
					article #accommodations > ul > li .plan {font-size:1.25rem;line-height:1.4;font-weight:700;margin:0 0 10px 0;color:#c21920;}
					article #accommodations > ul > li ul {list-style:disc;padding:0 0 5px 25px;}
						article #accommodations > ul > li ul li {font-size:1rem;line-height:1.3;margin:0 0 5px 0;}
					article #accommodations > ul > li .price {margin:0 0 15px 0;display:flex;justify-content:flex-end;gap:0 5px;align-items:baseline;}
						article #accommodations > ul > li .price span:nth-of-type(1) {font-size:1rem;}
						article #accommodations > ul > li .price span:nth-of-type(2) {font-size:1.5rem;font-weight:700;letter-spacing:-0.05rem;text-decoration:line-through;}
						article #accommodations > ul > li .price span:nth-of-type(3) {font-size:2.5rem;font-weight:700;letter-spacing:-0.05rem;color:#c21920;}
						article #accommodations > ul > li .price span:nth-of-type(4) {font-size:1.25rem;color:#c21920;}
					article #accommodations > ul > li .booking {text-align:center;}
						article #accommodations > ul > li .booking a {display:block;padding:15px 15px;font-size:1.5rem;line-height:1.3;font-weight:700;background:#c21920;color:#fff;text-decoration:none;border-radius:5px;}
							article #accommodations > ul > li .booking a:hover {background:#c13606;}
			article #accommodations .notice {width:1000px;margin:0 auto;padding:20px 20px;font-size:1rem;line-height:1.4;background:rgba(255,255,255,0.3);display:flex;flex-direction:column;text-align:left;gap:5px 0;}
				article #accommodations .notice li {width:100%;}
					article #accommodations .notice li:before {content:"※";}
	
	footer {text-align:center;padding:60px 0;width:1000px;margin:0 auto;border-top:1px solid #333;}
		footer address {margin:0 0 30px 0;}
			footer address > div:nth-of-type(1) {font-size:2.5rem;line-height:1;font-weight:700;margin:0 0 5px 0;}
			footer address > div:nth-of-type(2) {font-size:1.25rem;}
		footer #link {}
			footer #link a {display:inline-block;padding:15px 30px;font-size:1.25rem;line-height:1;background:#c21920;color:#fff;text-decoration:none;border-radius:5px;}
				footer #link a:hover {background:#c13606;}
	
	#goto_pagetop {position:fixed;bottom:30px;right:-50px;text-indent:-9999px;z-index:500;}
		#goto_pagetop a {width:50px;height:50px;display:block;background:rgba(232,56,40,0.3);position:relative;transition:0.2s ease-in-out;}
			#goto_pagetop a:after {content:"";display:block;position:absolute;left:50%;top:50%;margin-top:-3px;margin-left:-7px;width:10px;height:10px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(45deg);}
				#goto_pagetop a:hover {background:rgba(232,56,40,0.9);position:relative;}
				#goto_pagetop a:hover:after {content:"";display:block;position:absolute;left:50%;top:50%;margin-top:-3px;margin-left:-7px;width:10px;height:10px;border-top:2px solid #fff;border-left:2px solid #fff;transform:rotate(45deg);}
}
