@charset "UTF-8";





/* 代替テキスト */

.alt {
	display: none;
}

/* 画像の表示分け */

.img--pc {
	display: block;
	width: 100%;
	margin: 0 auto;
}

.img--sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.img--pc {
		display: none;
	}

	.img--sp {
		display: block;
		width: 100%;
	}
}


/* 背景 */

div.contents-wrp {
	padding-bottom: 100px;
	background-color: #143409;
	background-image:
		url(../images/parts-bg-frame-lt.png),
		url(../images/parts-bg-frame-rt.png),
		url(../images/parts-bg-frame-lb.png),
		url(../images/parts-bg-frame-rb.png),
		url(../images/parts-bg-frame-l.png),
		url(../images/parts-bg-frame-r.png),
		url(../images/parts-bg.png);
	background-repeat:
		no-repeat,
		no-repeat,
		no-repeat,
		no-repeat,
		repeat-y,
		repeat-y,
		no-repeat;
	background-position:
		left -40px top -40px,
		right -40px top -40px ,
		left -40px bottom -40px,
		right -40px bottom -40px,
		left 20px top,
		right 20px top,
		center top -300px;
	background-size:
		290px auto,
		290px auto,
		290px auto,
		290px auto,
		160px auto,
		160px auto,
		100% auto;
}

@media screen and (min-width: 768px) and (max-width: 1119px) {
	div.contents-wrp {
		background-position:
			left -6vw top -3vw,
			right -6vw top -3vw,
			left -6vw bottom -3vw,
			right -6vw bottom -3vw,
			left top,
			right top,
			center top -20vw;
		background-size:
			28vw auto,
			28vw auto,
			28vw auto,
			28vw auto,
			16vw auto,
			16vw auto,
			100vw auto;
	}
}

@media screen and (max-width: 767px) {
	div.contents-wrp {
		padding-bottom: 120px;
		background-position:
			left -9vw top -6vw,
			right -9vw top -6vw,
			left -9vw bottom -6vw,
			right -9vw bottom -6vw,
			left top,
			right top,
			center top -10vw;
		background-size:
			34vw auto,
			34vw auto,
			34vw auto,
			34vw auto,
			16vw auto,
			16vw auto,
			150vw auto;
	}
}








/* .title */

.title {
	max-width: 1120px;
	width: 100%;
	margin: 0 auto;
	padding-top: 60px;
}

@media screen and (max-width: 767px) {
	.title {
		max-width: none;
		margin: 0;
		padding-top: 10vw;
	}
}





































/* コンテンツ */

.contents {
	position: relative;
	max-width: 820px;
	width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.contents {
		width: auto;
		max-width: none;
		margin: 0;
	}
}

/* 日付 */

.contents__date {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.contents__date {
		margin-top: 10px;
	}
}

/* リード文 */

.contents__lead {
}

@media screen and (max-width: 767px) {
	.contents__lead {
		margin-top: 5px;
	}
}



.contents__box {
	position: relative;
	margin-top: 60px;
	padding: 40px 60px 60px;
	background: #fff;
	box-shadow: 0 -2px 20px 1px #0e2006;
}

@media screen and (max-width: 767px) {
	.contents__box {
		margin: 7vw 2vw 0;
		padding: 25px 6vw 6vw;
	}

	.contents__box + .contents__box {
		margin-top: 0;
		border-top: 10px solid #5e2264;
	}
}

.contents__main {
	position: relative;
	margin: 0 -40px 0;
}

.contents__main + .contents__main {
	margin: 20px -40px 0;
}

.contents__box + .contents__box .contents__main {
	margin: 0 -40px;
}

@media screen and (max-width: 767px) {
	.contents__main {
		margin: 0 -20px 0;
	}

	.contents__main + .contents__main {
		margin: 20px -20px 0;
	}

	.contents__box + .contents__box .contents__main {
		margin: 0 -20px;
	}
}

.contents__goodsandmenu {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.contents__goodsandmenu {
		margin-top: 20px;
	}
}

.contents__goodsandmenu__item {
	width: calc(50% - 20px);
}

@media screen and (max-width: 767px) {
	.contents__goodsandmenu__item {
		width: calc(50% - 10px);
	}
}

.contents__goodsandmenu__item > a,
.contents__goodsandmenu__item > a > img {
	display: block;
	width: 100%;
	height: auto;
}

.contents__note {
	margin-top: 20px;
}

.page__note {
	max-width: 760px;
	width: 100%;
	margin: 40px auto 0;
}

.contents__note > .txt-note {
	color: #231815;
}
.page__note > .txt-note {
	color: #fff;
}

/* おかし */

.contents__main:nth-of-type(3) {
	padding: 60px 0;
}

@media screen and (max-width: 767px) {
	.contents__main:nth-of-type(3) {
	}
}

.contents__okashi {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	user-select: none;
}

@media screen and (max-width: 767px) {
	.contents__okashi {
	}
}

.contents__okashi-img {
	position: absolute;
	width: 220px;
	height: 220px;
	pointer-events: none;
	user-select: none;
}

@media screen and (max-width: 767px) {
	.contents__okashi-img {
		width: min(200px, 35vw);
		height: min(200px, 35vw);
	}
}

.contents__okashi-img:nth-of-type(1) {
	left: -60px;
	top: -120px;
	transform: rotate(30deg);
}

.contents__okashi-img:nth-of-type(2) {
	right: -80px;
	top: 40px;
	transform: rotate(-30deg);
}

.contents__okashi-img:nth-of-type(3) {
	left: -80px;
	bottom: 60px;
	transform: rotate(-30deg);
}

.contents__okashi-img:nth-of-type(4) {
	right: -60px;
	bottom: -80px;
	transform: rotate(30deg);
}

@media screen and (max-width: 767px) {
	.contents__okashi-img:nth-of-type(1) {
		left: -10vw;
		top: -14vw;
		transform: rotate(20deg);
	}

	.contents__okashi-img:nth-of-type(2) {
		right: -10vw;
		top: -4vw;
		transform: rotate(-20deg);
	}

	.contents__okashi-img:nth-of-type(3) {
		left: -10vw;
		bottom: 12vw;
		transform: rotate(-20deg);
	}

	.contents__okashi-img:nth-of-type(4) {
		right: -10vw;
		bottom: -2vw;
		transform: rotate(30deg);
	}
}

/* 文字詰め処理 */

.contents__lead,
.contents__list-text,
.contents__body,
.txt-note {
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
}

/* SPのみの改行 */

@media screen and (min-width: 768px) {
	.sp-only {
		display: none;
	}
}
