@charset "UTF-8";
/* ===============================================================
	BREAK POINT
=============================================================== */
/* ===============================================================
	FONT
=============================================================== */
@media all and (-ms-high-contrast: none) {
	* {
		font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo,sans-serif;
	}
}

/* ===============================================================
	FONT SIZE
=============================================================== */
/* ===============================================================
	color
=============================================================== */
/* =====================
	common
===================== */
html {
	font-size: 62.5%;
	color: #40210f;
}

body {
	font-size: 16px;
	font-family: "Times New Roman", '游明朝', 'Yu Mincho', YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #40210f;
	line-height: 1.4;
	letter-spacing: 0em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

img {
	max-width: 100%;
	transition: 1.5s;
	vertical-align: top;
}

.pc {
	display: block;
}

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

.sp {
	display: none;
}

@media only screen and (max-width: 768px) {
	.sp {
		display: block;
	}
}

.visuallyhidden {
	position: absolute;
	clip: rect(1px 1px 1px 1px);
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(0px 0px 99.9% 99.9%);
	clip-path: inset(0px 0px 99.9% 99.9%);
	overflow: hidden;
	height: 1px;
	width: 1px;
	padding: 0;
	border: 0;
}

/* =====================
	animation
===================== */
.fadeUp01 {
	transition: 1s;
	opacity: 0;
	transform: translate(0, 60px);
	-webkit-transform: translate(0, 60px);
}

@media only screen and (max-width: 680px) {
	.fadeUp01 {
		opacity: 0;
		transform: translate(0, 2%);
		-webkit-transform: translate(0, 2%);
	}
}

.fadeUpOn {
	opacity: 1;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}

@media only screen and (max-width: 680px) {
	.fadeUpOn {
		opacity: 1;
		transform: translate(0, 0);
		-webkit-transform: translate(0, 0);
	}
}

/* =====================
	main
===================== */
#content {
	background-color: #eae2db;
}

.mv {
	position: relative;
	width: 100%;
	height: auto;
	min-height: 48.4375vw;
	margin-bottom: 160px;
	background: url(../images/mv_pc.jpg) no-repeat;
	background-size: contain;
}

.mv_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20vw;
	height: auto;
	transform: translateY(-50%) translateX(-50%);
}

@media only screen and (max-width: 680px) {
	.mv {
		min-height: 100vh;
		margin-bottom: 13.33333vw;
		background: url(../images/mv_sp.jpg) 50% 50% no-repeat;
		background-size: cover;
	}
	.mv_logo {
		position: absolute;
		top: 5.33333vw;
		left: 50%;
		width: 58.66667vw;
		height: auto;
		transform: translateY(0) translateX(-50%);
	}
}

/* =====================
	sec
===================== */
.sec {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 200px;
}

.sec-top {
	margin: 0 auto 250px;
}

.sec-bottom {
	margin: 0 auto;
	padding-bottom: 200px;
}

.sec_ttl {
	margin: 0 auto 160px;
	text-align: center;
}

.sec_ttl-second {
	margin: 0 auto 90px;
}

.sec_ttl-third {
	margin: 0 auto 120px;
}

@media only screen and (max-width: 1200px) {
	.sec {
		margin: 0 auto 16.66667vw;
		padding: 0 20px;
	}
	.sec-top {
		margin: 0 auto 20.83333vw;
	}
	.sec-bottom {
		margin: 0 auto;
		padding-bottom: 16.66667vw;
	}
	.sec_ttl {
		width: 19.33333vw;
		margin: 0 auto 13.33333vw;
	}
	.sec_ttl-second {
		width: 8.33333vw;
		margin: 0 auto 7.5vw;
	}
	.sec_ttl-third {
		width: 2.5vw;
		margin: 0 auto 10vw;
	}
}

@media only screen and (max-width: 680px) {
	.sec {
		margin: 0 auto 26.66667vw;
		padding: 0 10.66667vw;
	}
	.sec-top {
		margin: 0 auto 26.66667vw;
	}
	.sec-bottom {
		margin: 0 auto;
		padding-bottom: 13.33333vw;
	}
	.sec_ttl {
		width: 3.6vw;
		margin: 0 auto 21.33333vw;
	}
	.sec_ttl-second {
		width: 12vw;
		margin: 0 auto 13.33333vw;
	}
	.sec_ttl-third {
		width: 4vw;
		margin: 0 auto 13.33333vw;
	}
}

/* =====================
	topCont
===================== */
.topCont {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	overflow: hidden;
}

.topCont_img {
	width: auto;
}

.topCont_box {
	position: relative;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	width: 100%;
	max-width: 650px;
}

.topCont_box_ttl {
	margin-left: auto;
}

.topCont_box_txt {
	position: absolute;
	top: 0;
	left: 0;
	font-family: "Noto Serif JP", serif;
	line-height: 2.5;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

@media screen and (min-width: 768px) {
	.topCont_box_txt {
		font-size: 20px;
		font-size: 2rem;
	}
}

@media screen and (max-width: 768px) {
	.topCont_box_txt {
		font-size: 2.66667vw;
	}
}

@media only screen and (max-width: 1200px) {
	.topCont_img {
		width: 36vw;
	}
	.topCont_box {
		width: 54.16667vw;
	}
	.topCont_box_ttl {
		width: 10vw;
	}
	.topCont_box_txt {
		font-size: 1.66667vw;
	}
}

@media only screen and (max-width: 680px) {
	.topCont {
		flex-direction: column;
	}
	.topCont_img {
		width: 100%;
		order: 1;
	}
	.topCont_img img {
		width: 100%;
		max-width: inherit;
	}
	.topCont_box {
		width: 100%;
		max-width: 650px;
		margin-bottom: 14.66667vw;
	}
	.topCont_box_ttl {
		margin-left: auto;
	}
}

@media only screen and (max-width: 680px) and (min-width: 768px) {
	.topCont_box_txt {
		font-size: 20px;
		font-size: 2rem;
	}
}

@media only screen and (max-width: 680px) and (max-width: 768px) {
	.topCont_box_txt {
		font-size: 2.66667vw;
	}
}

/* =====================
	box
===================== */
.box {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-top: -115px;
}

.box-reverse .box_img {
	order: 1;
}

.box-reverse .box_col {
	padding-left: 0;
	padding-right: 60px;
}

.box-clear {
	margin-top: 0;
}

.box_img {
	width: 100%;
	max-width: 580px;
}

.box_col {
	width: 100%;
	max-width: 580px;
	padding-left: 60px;
}

.box_col_txt {
	margin-bottom: 50px;
	font-family: "Noto Serif JP", serif;
	line-height: 2.3;
}

@media screen and (min-width: 768px) {
	.box_col_txt {
		font-size: 18px;
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 768px) {
	.box_col_txt {
		font-size: 2.4vw;
	}
}

.box_col_txt-mb {
	margin-bottom: 30px;
}

.box_col_price {
	width: auto;
}

@media only screen and (max-width: 1200px) {
	.box {
		margin-top: -9.58333vw;
	}
	.box-reverse .box_col {
		padding-right: 5vw;
	}
	.box-clear {
		margin-top: 0;
	}
	.box-clear .box_col_price {
		width: 17.5vw;
	}
	.box_img {
		max-width: 48.33333vw;
	}
	.box_col {
		max-width: 48.33333vw;
		padding-left: 5vw;
	}
	.box_col_txt {
		margin-bottom: 4.16667vw;
		font-size: 1.66667vw;
	}
	.box_col_txt-mb {
		margin-bottom: 2.5vw;
	}
	.box_col_price {
		width: 30vw;
	}
	.box_col_price img {
		width: 100%;
		max-width: inherit;
	}
}

@media only screen and (max-width: 680px) {
	.box {
		flex-direction: column;
		width: 100%;
		margin-top: 0;
		margin-bottom: 26.66667vw;
	}
	.box-reverse .box_img {
		order: 1;
	}
	.box-reverse .box_col {
		order: 2;
		padding-left: 0;
		padding-right: 0;
	}
	.box-clear .box_img {
		position: relative;
	}
	.box-clear .box_col {
		order: 1;
	}
	.box-clear .box_col_price {
		width: 46.66667vw;
	}
	.box-bottom .box_img {
		position: relative;
		margin-bottom: 0;
		order: 2;
	}
	.box-bottom .box_img::after {
		content: '';
		display: block;
		width: 46.66667vw;
		height: 3.6vw;
		margin-top: 4vw;
		background: url(../images/price05_pc.png) no-repeat;
		background-size: contain;
	}
	.box-bottom .box_col {
		order: 1;
	}
	.box-bottom .box_col_price {
		display: none;
		width: 46.66667vw;
	}
	.box_img {
		width: 100%;
		max-width: inherit;
		margin-bottom: 6.66667vw;
	}
	.box_col {
		width: 100%;
		max-width: inherit;
		padding-left: 0;
	}
	.box_col_txt {
		margin-bottom: 5.33333vw;
		font-family: "Noto Serif JP", serif;
		line-height: 2.3;
	}
}

@media only screen and (max-width: 680px) and (min-width: 768px) {
	.box_col_txt {
		font-size: 18px;
		font-size: 1.8rem;
	}
}

@media only screen and (max-width: 680px) and (max-width: 768px) {
	.box_col_txt {
		font-size: 2.4vw;
	}
}

@media only screen and (max-width: 680px) {
	.box_col_txt-mb {
		margin-bottom: 30px;
	}
	.box_col_price {
		width: 46.66667vw;
	}
}

@media only screen and (max-width: 480px) {
	.box_col_txt {
		font-size: 11px;
	}
}

/* =====================
	bottom
===================== */
.bottom_logo {
	margin: 0 auto 50px;
	text-align: center;
}

.bottom_ttl {
	margin-bottom: 20px;
	font-family: "Noto Serif JP", serif;
	text-align: center;
}

@media screen and (min-width: 768px) {
	.bottom_ttl {
		font-size: 20px;
		font-size: 2rem;
	}
}

@media screen and (max-width: 768px) {
	.bottom_ttl {
		font-size: 2.66667vw;
	}
}

.bottom_detail {
	margin-bottom: 70px;
	font-family: "Noto Serif JP", serif;
	text-align: center;
	line-height: 2;
}

@media screen and (min-width: 768px) {
	.bottom_detail {
		font-size: 16px;
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 768px) {
	.bottom_detail {
		font-size: 2.13333vw;
	}
}

.bottom_btn {
	width: 100%;
	max-width: 240px;
	height: 58px;
	margin: 0 auto;
	border: 1px solid #40210f;
	transition: .4s;
}

.bottom_btn a {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	color: #40210f;
	font-family: "Noto Serif JP", serif;
	text-align: center;
	text-decoration: none;
}

@media screen and (min-width: 768px) {
	.bottom_btn a {
		font-size: 18px;
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 768px) {
	.bottom_btn a {
		font-size: 2.4vw;
	}
}

.bottom_btn:hover {
	background-color: #40210f;
}

.bottom_btn:hover a {
	color: #fff;
}

@media only screen and (max-width: 1200px) {
	.bottom_logo {
		width: 17.5vw;
		margin: 0 auto 4.16667vw;
	}
	.bottom_ttl {
		margin-bottom: 1.66667vw;
	}
	.bottom_detail {
		margin-bottom: 5.83333vw;
	}
	.bottom_btn {
		width: 100%;
		max-width: 33.33333vw;
		height: 6.25vw;
	}
}

@media only screen and (max-width: 680px) {
	.bottom_logo {
		width: 28.66667vw;
		margin: 0 auto 6.66667vw;
	}
	.bottom_ttl {
		margin-bottom: 2.66667vw;
		text-align: left;
	}
}

@media only screen and (max-width: 680px) and (min-width: 768px) {
	.bottom_ttl {
		font-size: 20px;
		font-size: 2rem;
	}
}

@media only screen and (max-width: 680px) and (max-width: 768px) {
	.bottom_ttl {
		font-size: 2.66667vw;
	}
}

@media only screen and (max-width: 680px) {
	.bottom_detail {
		margin-bottom: 9.33333vw;
		text-align: left;
	}
}

@media only screen and (max-width: 680px) and (min-width: 768px) {
	.bottom_detail {
		font-size: 16px;
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 680px) and (max-width: 768px) {
	.bottom_detail {
		font-size: 2.13333vw;
	}
}

@media only screen and (max-width: 680px) {
	.bottom_btn {
		width: 100%;
		max-width: 32vw;
		height: 7.73333vw;
	}
}

@media only screen and (max-width: 480px) {
	.bottom_ttl {
		font-size: 14px;
	}
	.bottom_detail {
		font-size: 11px;
	}
	.bottom_btn a {
		font-size: 12px;
	}
}
