@charset "UTF-8";

/* ----------------------------------------
index.css
---------------------------------------- */
html,
body {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

body {
	margin: 0;
	padding: 0;
	background: #fff;
	line-height: 1.5;
	text-align: center;
}

body * {
	box-sizing: border-box;
}

#header {
	width: 100%;
	max-width: 1100px;
	height: 62px;
	text-align: left;
	margin: 0 auto;
}

#header table,
#copyright {
	width: 20%;
	max-width: 1100px;
	margin-right: auto;
	margin-left: auto;
}

#header table img {
	vertical-align: middle;
}

#container {
	margin: 0;
	padding: 0;
	font-size: 1.6rem;
}

main {
	display: block;
	margin: 0 auto;
}


main section div {
	width: 1000px;
	margin: auto;
}

#hero {
	background: #fff;
}

#hero div {
	width: 100%;
}

.kv {
	background: #D1A059;
	/* background: linear-gradient(90deg, rgba(209, 160, 89, 1) 0%, rgba(136, 91, 47, 1) 31%, rgba(243, 227, 155, 1) 67%, rgba(173, 131, 61, 1) 100%); */
	background: rgba(198, 174, 121, 1);
}

.kv h1 {
	max-width: 1000px;
	margin: 0 auto;
}


.lead {
	background: #F7F1E6;
}

@media screen and (max-width: 768px) {
	.lead {
		padding-top: 1rem;
	}
}

.List {
	background-color: #faf6ee;
	background-size: cover;
}

.List {
	width: 100%;
	overflow: auto;
}

.List img {
	width: 1000px;
}


#gototop {
	position: fixed;
	right: 20px;
	bottom: 20px;
}

#gototop a {
	display: block;
	background: url(../img/arrow.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	width: 70px;
	height: 70px;
}

@media screen and (max-width: 768px) {
	#gototop a {
		width: 50px;
		height: 50px;
	}
}


/* @media : PC */
@media screen and (min-width: 769px) {
	.sp {
		display: none;
	}
}

/* /@media */

/* @media : SP */
@media screen and (max-width: 768px) {
	.pc {
		display: none;
	}

	#header table,
	#copyright {
		width: 96%;
	}

	.List {
		width: 92%;
		background-color: #faf6ee;
	}

	.List img {
		width: 140%;
	}

	#btnlink {
		width: 100px;
	}
}

/* /@media */


#links {
	padding: 1.5em;
	font-size: 1.5rem;
}

#links ul {
	letter-spacing: -0.38em;
}

#links ul li {
	display: inline-block;
	padding: 0 1em;
	border-left: 1px solid #555;
	letter-spacing: normal;
}

#links ul li:last-child {
	border-right: 1px solid #555;
}

#links ul li a {
	color: #555;
}

@media screen and (max-width: 768px) {

	#links ul li,
	#links ul li:last-child {
		border-left: none;
		border-right: none;
	}
}


/**/

.fade {
	animation-name: fadein;
	animation-duration: 4s;

}

@keyframes fadein {
	from {
		opacity: 0;
		filter: blur(5px);
		transform: scale(0.95);
	}

	to {
		opacity: 1;
		filter: blur(0px);
	}
}

.fadeIn {
	transition: 2s;
	transform: translateY(20px);
	opacity: 0;
}

.fadeIn.animated {
	opacity: 1;
	transform: translateY(0);
}

.fadeIn0 {
	transition: 3s;
	transform: translateY(40px);
	opacity: 0;
}

.fadeIn0.animated {
	opacity: 1;
	transform: translateY(0);
}

#map {
	max-width: 100%;
	margin: auto;
}

#map iframe {
	max-width: 100%;
	height: 400px;
	width: 100%;
}

@media (max-width: 768px) {
	#map {
		margin-top: 40px;
	}
}

#access h2 {
	width: 1100px;
	margin: auto;
}

#access {
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 17px;
	line-height: 23.33px;
	position: relative;
	top: 0.84px;
	color: #3C3C3C;
	text-align: center;
}

#access a {
	color: #3C3C3C;
	text-decoration: none;
	margin: 20px 0 0;
	display: block;
}

@media screen and (max-width: 768px) {

	#hero div,
	main section div,
	#access h2 {
		width: 100%;
	}

	#notice ul {
		width: 80%;
	}

	#notice ul li {
		font-size: 11px;
		line-height: 1.4em;
	}

	article#safety {
		padding: 50px 0 40px;
	}

	article#safety h2 {
		font-size: 1.2em;
	}

	article#safety ul li {
		font-size: 11px;
		line-height: 1.4em;
	}

	article#safety p {
		font-size: 12px;
		width: 90%;
		margin: 0 auto 30px;
	}

	article#safety p:last-child {
		width: 60%;
		margin: auto;
	}

}


/*PCでは電話番号リンクなし*/
@media (min-width: 751px) {
	.sp_tell {
		pointer-events: none;
	}
}

.plan_chart {
	width: 90%;
	margin: 0 auto;
	overflow-x: scroll;
}

.plan_chart img {
	width: 700px;
}


/* ---------------------------------------------------
	footer
---------------------------------------------------- */
.footer {
	background: #fff;
	/*padding-top: 110px;*/
	position: relative;
	/* z-index: 8; */
}


@media (max-width: 768px) {
	.footer {
		padding-top: 0.02083vw;
	}
}


/*
	hotel list
------------------------------ */
.footer .hotel_list {
	padding: 30px 0;
	line-height: 1;
	display: flex;
	justify-content: center;
}

.footer .hotel_list,
.footer .hotel_list li a {
	color: #000;
	text-decoration: none;
}

.footer .hotel_list::before,
.footer .hotel_list li::after {
	content: "｜";
}

.footer .hotel_list li a {
	padding: 0 1em;
	display: inline-block;
}

.footer .copy {
	color: #3C3C3C;
	font-size: 12px;
	margin-bottom: 1rem;
}


@media (max-width: 768px) {
	.footer .hotel_list {
		padding: 7.81250vw 0 6.02083vw;
		line-height: 2;
		text-align: center;
		display: block;
	}

	.footer .hotel_list li a {
		padding: 0 0.5em;
	}

	.footer .hotel_list::before {
		content: "";
	}

	.footer .hotel_list li::before {
		content: "｜";
	}
}

/* ---------------------------------------------------
	共通
---------------------------------------------------- */
.rel {
	position: relative;
}

.item {
	position: absolute;
}

.adj {
	display: block;
	margin-bottom: -1px;
}

@media (max-width: 768px) {
	.item {
		display: none;
	}

	.adj-sp {
		display: block;
		margin-bottom: -1px;
	}
}

/* ---------------------------------------------------
	food
---------------------------------------------------- */
.food {
	background: #2d6c87;
}

.food .inner {
	background: url(../img/food_bg.webp);
	background-size: 40px;
}

.food .item.typeA {
	width: 267px;
	top: 50px;
	right: -50px;
}

.food .item.typeB {
	width: 216px;
	bottom: 20px;
	left: -70px;
}

/* ---------------------------------------------------
	event
---------------------------------------------------- */
.event {
	background: #bd403d;
}

.event .inner {
	background: url(../img/event_bg.webp);
	background-size: 40px;
}

.event .calendar {
	width: 90%;
	margin: 0 auto;
	position: absolute;
	top: 35%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.event .calendar img {
	width: 800px;
}

.event .item.typeA {
	width: 275px;
	top: 100px;
	right: -20px;
}

.event .item.typeB {
	width: 266px;
	bottom: 40px;
	right: -35px;
}

@media (max-width: 768px) {
	.event .calendar {
		top: 40%;
		overflow-x: scroll;
	}

	.event .calendar img {
		width: 700px;
	}
}

/* ---------------------------------------------------
	plan
---------------------------------------------------- */
.plan {
	background: #fffaf4;
	padding-bottom: 150px;
}

.plan .calendar {
	width: 90%;
	margin: 0 auto;
	padding-top: 20px;
}

.plan .calendar img {
	width: 800px;
}

@media (max-width: 768px) {
	.plan {
		padding-bottom: 80px;
	}
	.plan .calendar {
		overflow-x: scroll;
	}
}