*{
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Segoe UI", "メイリオ", "Meiryo",sans-serif;
	font-weight: 400;
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #000;
	box-sizing: border-box;
	word-break: break-all;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.06em;
	text-align: justify;
}

.vollkorn{ font-family: 'Vollkorn', serif; }
.mincho{ font-family: YuKyo-Medium, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }

body{ border-top: solid 20px #163b63; }

span, a, strong{
	color: inherit;
	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
}

.sp{ display: none; }
.wrap{ width: 1000px; margin: 0 auto; }

.linkwrap,
.treat-list li a{
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
}

.totop{
	display: table;
	position: fixed;
	width: 60px;
    bottom: 26px;
    right: 30px;
	z-index: 98;
}
.totop img{ width: 100%; }
.body-wrap{ overflow: hidden; }

header{ padding: 40px 0; }
header .logo{ display: block; width: 360px; }
header .wrap{ display: flex; justify-content: space-between; align-items: center; }
header nav ul { display: flex; }
header nav ul li{ padding: 0 1em; border-left: solid 1px; line-height: 1; }
header nav ul li a{ line-height: 1; }
header nav ul li:last-of-type{ border-right: solid 1px; }

footer{ margin-top: 100px; }
footer .copy{
	width: 100%;
	height: 50px;
	background: #163b63;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}


@media(max-width: 768px){
	.wrap{ width: 100%; padding-left: 5.3333vw; padding-right: 5.3333vw; }

	.pc{ display: none !important; }
	.sp{ display: block; }

	body{ border-top: solid 2.6666vw #163b63; }
	body:before{
		content: '';
		width: 100%;
		height: 100%;
		background: #aeaeae;
		mix-blend-mode: multiply;
		visibility: hidden;
		opacity: 0;
		transition: .3s;
		z-index: 100;
		position: fixed;
		top: 0;
		left: 0;
	}
	body.active{ overflow: hidden; }
	body.active:before{ visibility: visible; opacity: 1; }

	header{ padding: 2.6666vw 0; }
	header .logo{ width: 40.6666vw; }

	header nav{
		visibility: hidden;
		position: fixed;
		top: 13vw;
		right: 0;
		opacity: 0;
		transition: .3s;
		z-index: 10000;
		width: 78.3333vw;
		background: #163b63;
	}
	header nav.active{ visibility: visible; opacity: 1; }
	header nav ul{ display: block; }
	header nav ul li{
		color: #fff;
		font-size: 4.2666vw;
		height: 13.333vw;
		display: flex;
		align-items: center;
		border-bottom: solid 1px;
		border-left: none;
	}
	header nav ul li.sp{ display: flex; background: #efefef; color: #163b63; border-right: none; }
	header nav ul li:last-of-type{ border-bottom: none; }

	footer{ margin-top: 0; margin-bottom: 13.3333vw; }
	footer .copy{ background: #fff; color: #000; font-size: 2.6666vw; height: 13.3333vw; }

	.float-btn.sp{
		width: 100%;
		display: flex;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 100;
	}
	.float-btn.sp li{
		width: calc(100% / 3);
		height: 13.3333vw;
		background: #163b63;
		color: #fff;
		font-size: 3.4666vw;
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
	}
	.float-btn.sp li:nth-of-type(2){ border-left: solid 1px #fff; border-right: solid 1px #fff; }

	.menu-btn{
		display: table;
		width: 13.3333vw;
		height: 13.3333vw;
		background: #163b63;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 10001;
		padding-top: 1.5vw;
	}
	.menu-btn p{ color: #fff; margin: 1vw auto 1.6vw; width: 8.6666vw; position: relative; }
	.menu-btn p span img{ transition: .3s; display: block; }
	.menu-btn p span.close img{ visibility: hidden; opacity: 0; position: absolute; top: 0; }
	.menu-btn.active p span.close img{ visibility: visible; opacity: 1; }
	.menu-btn.active p span.menu img{ opacity: 0; }
	.menu-btn .inner{ width: 8vw; height: 4vw; position: relative; margin: 0 auto; }
	.menu-btn .inner span{ width: 100%; height: 1px; background: #fff; position: absolute; }
	.menu-btn .inner span:nth-of-type(1){ top: 0; left: 0; }
	.menu-btn .inner span:nth-of-type(2){ top: calc(50% - .5px); }
	.menu-btn .inner span:nth-of-type(3){ bottom: 0; left: 0; }
}