@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%;
}

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

@media only screen and (max-width: 750px) {
	body {
		font-feature-settings: "palt";
	}
}

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
===================== */
.fadeUpB, .fadeUpB02, .fadeUpB03, .fadeUpB04, .fadeUpB05 {
	transition: 1s;
	opacity: 0;
	transform: translate(0, 60px);
	-webkit-transform: translate(0, 60px);
}

@media only screen and (max-width: 750px) {
	.fadeUpB, .fadeUpB02, .fadeUpB03, .fadeUpB04, .fadeUpB05 {
		opacity: 0;
		transform: translate(0, 2%);
		-webkit-transform: translate(0, 2%);
	}
}

.fadeUpR {
	transition: 1s;
	opacity: 0;
	transform: translate(0, 60px);
	-webkit-transform: translate(0, 60px);
}

@media only screen and (max-width: 750px) {
	.fadeUpR {
		opacity: 0;
		transform: translate(-25%, 0);
		-webkit-transform: translate(-25%, 0);
	}
}

.fadeUpL {
	transition: 1s;
	opacity: 0;
	transform: translate(0, 60px);
	-webkit-transform: translate(0, 60px);
}

@media only screen and (max-width: 750px) {
	.fadeUpL {
		opacity: 0;
		transform: translate(25%, 0);
		-webkit-transform: translate(25%, 0);
	}
}

.fadeUpB02 {
	transition-delay: .3s;
}

.fadeUpB03 {
	transition-delay: .6s;
}

.fadeUpB04 {
	transition-delay: .9s;
}

.fadeUpB05 {
	transition-delay: 1.2s;
}

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

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

#inc_header,
#inc_footer {
	font-size: 13px;
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
}

/* =====================
	MV
===================== */
.mv {
	position: relative;
	width: 100%;
	min-height: 66.66667vw;
	margin: 0 auto;
	background: url(../images/mv.jpg) no-repeat;
	background-size: cover;
}

.mv_logo {
	position: absolute;
	top: 46.5%;
	left: 50%;
	width: 100%;
	max-width: 43.69792vw;
	transform: translate(-50%, -50%);
}

.mv_sub {
	position: absolute;
	top: 70%;
	left: 50%;
	width: 100%;
	max-width: 7.5vw;
	transform: translate(-50%, -50%);
}

.mv_scroll {
	position: absolute;
	bottom: 1%;
	left: 50%;
	width: 100%;
	max-width: 8.80208vw;
	transform: translate(-50%, 50%);
}

@media only screen and (max-width: 750px) {
	.mv {
		width: 100%;
		min-height: calc((850/750)*100vw);
		background: url(../images/mv_bg_sp.jpg) no-repeat;
		background-size: cover;
	}
	.mv_logo {
		position: absolute;
		top: 44%;
		left: 50%;
		width: 100%;
		max-width: 72.53333vw;
		transform: translate(-50%, -50%);
	}
	.mv_logo img {
		width: 100%;
		max-width: inherit;
	}
	.mv_sub {
		position: absolute;
		top: 70.5%;
		left: 50%;
		width: 100%;
		max-width: 12vw;
		transform: translate(-50%, -50%);
	}
	.mv_sub img {
		width: 100%;
		max-width: inherit;
	}
	.mv_scroll {
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 100%;
		max-width: 14.66667vw;
		transform: translate(-50%, 50%);
	}
	.mv_scroll img {
		width: 100%;
		max-width: inherit;
	}
}

/* =====================
	MESSAGE
===================== */
.msg {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 0 140px;
}

.msg-inner {
	display: -ms-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 90px;
}

.msg_img {
	width: 100%;
	max-width: 203px;
	margin: 40px 100px 0 200px;
}

.msg-box {
	width: 100%;
	max-width: 500px;
}

.msg_txt {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 1.57;
	letter-spacing: .12em;
}

@media screen and (min-width: 768px) {
	.msg_txt {
		font-size: 28px;
		font-size: 2.8rem;
	}
}

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

.msg_txt.second {
	margin-top: 20px;
	line-height: 2;
	letter-spacing: .1em;
}

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

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

.msg_movie {
	width: 100%;
	max-width: 600px;
	height: 338px;
	margin: 0 auto;
}

.msg_movie iframe {
	display: block;
	width: 100%;
	height: 100%;
}

@media only screen and (max-width: 750px) {
	.msg {
		width: 100%;
		margin: 0 auto;
		padding: 13.33333vw 0 18.66667vw;
	}
	.msg-inner {
		display: block;
		margin-bottom: 13.33333vw;
	}
	.msg_img {
		width: 100%;
		max-width: 40.66667vw;
		margin: 0 auto;
		margin-bottom: 5.33333vw;
	}
	.msg_img img {
		width: 100%;
		max-width: inherit;
	}
	.msg-box {
		width: 100%;
		max-width: inherit;
	}
	.msg_txt {
		text-align: center;
		letter-spacing: 0;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.msg_txt {
		font-size: 42px;
		font-size: 4.2rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.msg_txt {
		font-size: 5.6vw;
	}
}

@media only screen and (max-width: 750px) {
	.msg_txt.second {
		margin-top: 6.66667vw;
		letter-spacing: 0;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.msg_txt.second {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.msg_txt.second {
		font-size: 3.2vw;
	}
}

@media only screen and (max-width: 750px) {
	.msg_movie {
		width: 100%;
		max-width: 80vw;
		height: 45.06667vw;
	}
}

/* =====================
	TAB
===================== */
.tab {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 60px;
}

.tab_list {
	display: -ms-flex;
	display: flex;
	height: 80px;
	margin-bottom: 100px;
}

.tab_list_col {
	display: -ms-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50%;
	height: 100%;
	font-family: 'Cormorant', serif;
	font-weight: bold;
	text-align: center;
	color: #fff;
	letter-spacing: .1em;
	line-height: 1;
	cursor: pointer;
}

@media screen and (min-width: 768px) {
	.tab_list_col {
		font-size: 32px;
		font-size: 3.2rem;
	}
}

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

.tab_list_col:first-child {
	background-color: #333333;
}

.tab_list_col:last-child {
	background-color: #93bbc8;
}

.tab_list_col::before {
	content: '';
	display: inline-block;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	background: url(../images/arrow.png) no-repeat;
	background-size: cover;
	transition: .3s;
}

.tab_list_col.active::before {
	transform: rotate(90deg);
}

.tab_col_ttl {
	margin-bottom: 40px;
	font-family: 'Cormorant', serif;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	letter-spacing: .1em;
}

@media screen and (min-width: 768px) {
	.tab_col_ttl {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

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

@media only screen and (max-width: 750px) {
	.tab {
		width: 100%;
		margin: 0 auto 16vw;
	}
	.tab_list {
		height: 20vw;
		margin-bottom: 16vw;
	}
	.tab_list_col {
		text-align: left;
		line-height: 1.3;
		letter-spacing: 0;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tab_list_col {
		font-size: 34px;
		font-size: 3.4rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tab_list_col {
		font-size: 4.53333vw;
	}
}

@media only screen and (max-width: 750px) {
	.tab_list_col::before {
		width: 4vw;
		height: 4vw;
		margin-right: 1.33333vw;
	}
	.tab_col_ttl {
		margin-bottom: 6vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tab_col_ttl {
		font-size: 36px;
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tab_col_ttl {
		font-size: 4.8vw;
	}
}

/* =====================
	TAILOR MADE
===================== */
.tm_detail {
	position: relative;
	margin-bottom: 80px;
	padding-bottom: 70px;
	background-color: #333333;
}

.tm_detail::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 30px 30px 0 30px;
	border-color: #333333 transparent transparent transparent;
	transform: translate(-50%, 100%);
}

.tm_detail::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 176px;
	background-color: #fff;
	z-index: 0;
}

.tm_detail_thm {
	position: relative;
	width: 100%;
	max-width: 900px;
	margin: 0 auto 40px;
	z-index: 1;
}

.tm_detail_logo {
	position: relative;
	width: 100%;
	max-width: 172px;
	margin: 0 auto 35px;
	z-index: 1;
}

.tm_detail_txt {
	position: relative;
	margin-bottom: 50px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	color: #fff;
	text-align: center;
	line-height: 1.8333;
	z-index: 1;
}

@media screen and (min-width: 768px) {
	.tm_detail_txt {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

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

.tm_detail-box {
	position: relative;
	display: -ms-flex;
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 900px;
	min-height: 140px;
	margin: 0 auto;
	padding: 20px 90px;
	border: 1px solid #fff;
}

.tm_detail-box::after {
	content: '';
	position: absolute;
	top: 20px;
	left: 50%;
	display: inline-block;
	width: 2px;
	height: 100px;
	background-color: #999999;
	transform: translateX(-50%);
}

.tm_detail_img:first-child {
	width: 100%;
	max-width: 232px;
}

.tm_detail_img:last-child {
	width: 100%;
	max-width: 257px;
	margin-left: auto;
}

.tm_order_ttl {
	width: 100%;
	max-width: 306px;
	margin: 0 auto 20px;
}

.tm_order_subTtl {
	margin-bottom: 40px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	color: #000;
	text-align: center;
	letter-spacing: .12em;
	line-height: 1;
}

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

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

.tm_order_list {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.tm_order_list::after {
	content: '';
	position: absolute;
	top: 115px;
	left: 50%;
	display: block;
	width: 58px;
	height: 1275px;
	background: url(../images/number_pc.png) no-repeat;
	background-size: contain;
	transform: translateX(-50%);
}

.tm_order_list_col {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

.tm_order_list_col:nth-of-type(2n) .tm_order_list_col_thm {
	order: 2;
}

.tm_order_list_col:nth-of-type(2n) .tm_order_list_col-box {
	order: 1;
	margin-left: 50px;
	margin-right: 0;
}

.tm_order_list_col_thm {
	width: 100%;
	max-width: 450px;
}

.tm_order_list_col-box {
	width: 100%;
	max-width: 400px;
	margin-right: 50px;
}

.tm_order_list_col_ttl {
	position: relative;
	display: inline-block;
	margin-bottom: 10px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 1;
}

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

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

.tm_order_list_col_ttl::after {
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	margin-top: 3px;
	background-color: #000;
}

.tm_order_list_col_txt {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 1.625;
}

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

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

.tm_order_col {
	width: 100%;
	max-width: 450px;
	margin: -80px auto 0;
}

.tm_order_col_thm {
	width: 100%;
	margin-bottom: 15px;
}

.tm_order_col_ttl {
	display: none;
}

.tm_order_col_txt {
	margin-bottom: 18px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 1.625;
}

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

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

.tm_order_col_price {
	width: 100%;
	max-width: 224px;
}

@media only screen and (max-width: 750px) {
	.tm_detail {
		position: relative;
		margin-bottom: 13.33333vw;
		padding: 0 6.66667vw 6.66667vw;
		background-color: #333333;
	}
	.tm_detail::after {
		border-width: 4vw 4vw 0 4vw;
	}
	.tm_detail::before {
		height: 20vw;
	}
	.tm_detail_thm {
		max-width: inherit;
		margin: 0 auto 8vw;
	}
	.tm_detail_logo {
		position: relative;
		width: 100%;
		max-width: 34.66667vw;
		margin: 0 auto 8vw;
	}
	.tm_detail_logo img {
		width: 100%;
		max-width: inherit;
	}
	.tm_detail_txt {
		margin-bottom: 8vw;
		padding-left: .25em;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tm_detail_txt {
		font-size: 36px;
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tm_detail_txt {
		font-size: 4.8vw;
	}
}

@media only screen and (max-width: 750px) {
	.tm_detail-box {
		display: block;
		width: 100%;
		max-width: inherit;
		min-height: inherit;
		padding: 6.66667vw;
	}
	.tm_detail-box::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		display: inline-block;
		width: 73.33333vw;
		height: 2px;
		background-color: #999999;
		transform: translate(-50%, -50%);
	}
	.tm_detail_img:first-child {
		width: 100%;
		max-width: 46.4vw;
		margin-left: 10vw;
		margin-bottom: 14.66667vw;
	}
	.tm_detail_img:last-child {
		width: 100%;
		max-width: 51.2vw;
		margin-left: 5.46667vw;
	}
	.tm_order_ttl {
		width: 100%;
		max-width: 61.06667vw;
		margin: 0 auto 4vw;
	}
	.tm_order_ttl img {
		width: 100%;
		max-width: inherit;
	}
	.tm_order_subTtl {
		margin-bottom: 9.33333vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tm_order_subTtl {
		font-size: 27px;
		font-size: 2.7rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tm_order_subTtl {
		font-size: 3.6vw;
	}
}

@media only screen and (max-width: 750px) {
	.tm_order_list {
		max-width: inherit;
		padding-left: 16vw;
		padding-right: 10.66667vw;
	}
	.tm_order_list::after {
		top: 20vw;
		left: 3.2vw;
		display: block;
		width: calc((58/750)*100vw);
		height: calc((3030/750)*100vw);
		background: url(../images/number_sp.png) no-repeat;
		background-size: contain;
		transform: translateX(0);
	}
	.tm_order_list_col {
		display: block;
		width: 100%;
		max-width: 73.33333vw;
	}
	.tm_order_list_col:nth-of-type(2n) .tm_order_list_col-box {
		margin-left: 0;
		margin-right: 0;
	}
	.tm_order_list_col:nth-child(n + 2) {
		margin-top: 8.66667vw;
	}
	.tm_order_list_col:last-child {
		display: none;
	}
	.tm_order_list_col_thm {
		width: 100%;
		max-width: inherit;
		margin-bottom: 2.66667vw;
	}
	.tm_order_list_col_thm img {
		width: 100%;
		max-width: inherit;
	}
	.tm_order_list_col_thm.blank {
		display: none;
	}
	.tm_order_list_col-box {
		width: 100%;
		max-width: inherit;
		margin-right: 0;
	}
	.tm_order_list_col_ttl {
		margin-bottom: 1.6vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tm_order_list_col_ttl {
		font-size: 30px;
		font-size: 3rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tm_order_list_col_ttl {
		font-size: 4vw;
	}
}

@media only screen and (max-width: 750px) {
	.tm_order_list_col_ttl::after {
		height: calc((5/750)*100vw);
		margin-top: 1.06667vw;
	}
	.tm_order_list_col_txt {
		line-height: 1.625;
		word-break: break-all;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tm_order_list_col_txt {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tm_order_list_col_txt {
		font-size: 3.2vw;
	}
}

@media only screen and (max-width: 750px) {
	.tm_order_col {
		width: 100%;
		max-width: inherit;
		margin: 8.66667vw 0 0;
		padding-left: 16vw;
		padding-right: 10.66667vw;
	}
	.tm_order_col_thm {
		width: 100%;
		max-width: 73.33333vw;
		margin-bottom: 2.66667vw;
	}
	.tm_order_col_thm img {
		width: 100%;
		max-width: inherit;
	}
	.tm_order_col_ttl {
		position: relative;
		display: inline-block;
		margin-bottom: 1.6vw;
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tm_order_col_ttl {
		font-size: 30px;
		font-size: 3rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tm_order_col_ttl {
		font-size: 4vw;
	}
}

@media only screen and (max-width: 750px) {
	.tm_order_col_ttl::after {
		content: '';
		display: block;
		width: 100%;
		height: calc((5/750)*100vw);
		margin-top: 1.06667vw;
		background-color: #000;
	}
	.tm_order_col_txt {
		margin-bottom: 2.66667vw;
		line-height: 1.625;
		word-break: break-all;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.tm_order_col_txt {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.tm_order_col_txt {
		font-size: 3.2vw;
	}
}

@media only screen and (max-width: 750px) {
	.tm_order_col_price {
		width: 100%;
		max-width: 44.53333vw;
	}
}

/* =====================
	RECOMMEND
===================== */
.rec_txt {
	margin-bottom: 100px;
	padding-left: 1em;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 1.8333;
	text-align: center;
	letter-spacing: .12em;
}

@media screen and (min-width: 768px) {
	.rec_txt {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

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

.rec-inner {
	position: relative;
	padding: 50px;
	border: 50px solid #93bbc8;
}

.rec_col:nth-child(n + 2) {
	margin-top: 80px;
}

.rec_col:nth-child(2n) .rec_col_top-box {
	order: 1;
}

.rec_col:nth-child(2n) .rec_col_top_price {
	left: inherit;
	right: 460px;
	bottom: 0;
	width: 100%;
	max-width: 225px;
}

.rec_col_ttl {
	width: 100%;
	margin-bottom: 40px;
}

.rec_col_ttl span {
	display: block;
	margin-top: 20px;
	font-family: 'Abril Fatface', cursive;
	font-weight: 400;
	color: #93bbc8;
	line-height: 1;
	letter-spacing: .043em;
	text-align: center;
}

@media screen and (min-width: 768px) {
	.rec_col_ttl span {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

@media screen and (max-width: 768px) {
	.rec_col_ttl span {
		font-size: 3.2vw;
	}
}

.rec_col_top {
	position: relative;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}

.rec_col_top-box {
	width: 100%;
	max-width: 450px;
}

.rec_col_top_thm {
	width: 100%;
}

.rec_col_top_price {
	position: absolute;
	left: 460px;
	bottom: 0;
	width: 100%;
	max-width: 225px;
}

.rec_col_top_txt {
	width: 4.5em;
	padding-top: 50px;
	font-family: "Noto Serif JP", serif;
	line-height: 1.6;
	letter-spacing: .12em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
}

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

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

.rec_col_bottom {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	margin-top: 80px;
	padding: 0 26px;
}

.rec_col_bottom_col {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	align-items: flex-end;
	width: 100%;
	max-width: 450px;
}

.rec_col_bottom_col_thm {
	flex-shrink: 0;
	width: 100%;
	max-width: 280px;
	margin-right: 10px;
}

.rec_col_bottom_col-box {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
}

.rec_col_bottom_col_ttl {
	margin-bottom: 10px;
	line-height: 1;
}

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

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

.rec_col_bottom_col_txt {
	line-height: 1.4285;
	word-break: break-all;
}

@media screen and (min-width: 768px) {
	.rec_col_bottom_col_txt {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

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

@media only screen and (max-width: 750px) {
	.rec {
		display: none;
		overflow: hidden;
	}
	.rec_txt {
		margin-bottom: 8vw;
		padding-left: .5em;
		letter-spacing: .05em;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.rec_txt {
		font-size: 36px;
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.rec_txt {
		font-size: 4.8vw;
	}
}

@media only screen and (max-width: 750px) {
	.rec-inner {
		padding: 6.66667vw 3.33333vw;
		border: 3.33333vw solid #93bbc8;
	}
	.rec_col:nth-child(n + 2) {
		margin-top: 11.33333vw;
	}
	.rec_col:nth-child(2n) .rec_col_top {
		left: inherit;
		right: -1.33333vw;
	}
	.rec_col:nth-child(2n) .rec_col_top-box {
		order: 1;
	}
	.rec_col:nth-child(2n) .rec_col_top_price {
		position: static;
		width: 100%;
		max-width: 44.66667vw;
		margin-left: 0;
	}
	.rec_col_ttl {
		width: 100%;
		margin-bottom: 4vw;
	}
	.rec_col_ttl span {
		margin-top: 8vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.rec_col_ttl span {
		font-size: 36px;
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.rec_col_ttl span {
		font-size: 4.8vw;
	}
}

@media only screen and (max-width: 750px) {
	.rec_col_top {
		position: relative;
		justify-content: space-between;
		width: 92vw;
		max-width: inherit;
		left: -6.66667vw;
		margin: 0;
	}
	.rec_col_top-box {
		width: 100%;
		max-width: calc((530/750)*100vw);
	}
	.rec_col_top_thm {
		width: 100%;
		margin-bottom: 2.26667vw;
	}
	.rec_col_top_price {
		position: static;
		width: 100%;
		max-width: 44.66667vw;
		margin-left: 6vw;
	}
	.rec_col_top_txt {
		width: 4.5em;
		padding-top: 6.66667vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.rec_col_top_txt {
		font-size: 30px;
		font-size: 3rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.rec_col_top_txt {
		font-size: 4vw;
	}
}

@media only screen and (max-width: 750px) {
	.rec_col_bottom {
		display: block;
		margin-top: 4.66667vw;
		padding: 0;
	}
	.rec_col_bottom_col {
		display: block;
		width: 100%;
		max-width: 66.66667vw;
		margin: 0 auto;
	}
	.rec_col_bottom_col:last-child {
		margin-top: 6.66667vw;
	}
	.rec_col_bottom_col_thm {
		flex-shrink: 0;
		width: 100%;
		max-width: inherit;
		margin-right: 0;
		margin-bottom: 2vw;
	}
	.rec_col_bottom_col_ttl {
		margin-bottom: 2vw;
		line-height: 1;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.rec_col_bottom_col_ttl {
		font-size: 30px;
		font-size: 3rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.rec_col_bottom_col_ttl {
		font-size: 4vw;
	}
}

@media only screen and (max-width: 750px) {
	.rec_col_bottom_col_txt {
		letter-spacing: .05em;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.rec_col_bottom_col_txt {
		font-size: 21px;
		font-size: 2.1rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.rec_col_bottom_col_txt {
		font-size: 2.8vw;
	}
}

/* =====================
	INFORMATION
===================== */
.info {
	width: 100%;
	max-width: 895px;
	margin: 0 auto 60px;
	font-family: 'Cardo', serif;
}

.info_ttl {
	position: relative;
	font-weight: bold;
	color: #603813;
	line-height: 1;
	letter-spacing: .2em;
	text-align: center;
}

@media screen and (min-width: 768px) {
	.info_ttl {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

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

.info_ttl::after {
	content: '';
	display: block;
	width: 50px;
	height: 4px;
	margin: 20px auto 40px;
	background-color: #603813;
}

.info-inner {
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.info_col {
	width: 100%;
	max-width: 397px;
	margin-top: 40px;
	transition: .3s;
}

.info_col:hover {
	opacity: .7;
}

.info_col:first-child {
	max-width: inherit;
	margin: 0;
}

.info_col_ttl {
	margin-bottom: 20px;
	font-weight: bold;
	text-align: center;
	color: #603813;
	letter-spacing: .1em;
	line-height: 1;
}

@media screen and (min-width: 768px) {
	.info_col_ttl {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

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

.info_col_ttl span {
	display: block;
	margin-top: 10px;
	font-weight: 400;
	color: #000;
	letter-spacing: .06em;
}

@media screen and (min-width: 768px) {
	.info_col_ttl span {
		font-size: 24px;
		font-size: 2.4rem;
	}
}

@media screen and (max-width: 768px) {
	.info_col_ttl span {
		font-size: 3.2vw;
	}
}

.info_col-inner {
	padding: 9px;
	border: 1px solid #603813;
}

.info_col-inner a {
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	padding: 36px 42px 36px 50px;
	border: 3px solid #603813;
	text-decoration: none;
}

.info_col-box {
	width: 100%;
	max-width: 378px;
}

.info_col_limited {
	display: inline-block;
	margin-bottom: 15px;
	padding: .55em 1em;
	font-family: "Noto Serif JP", serif;
	font-weight: bold;
	color: #ed1c24;
	line-height: 1;
	border: 1px solid #ed1c24;
	border-radius: 50px;
}

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

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

.info_col_txt {
	margin-bottom: 15px;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
	line-height: 1.57;
	color: #603813;
}

@media screen and (min-width: 768px) {
	.info_col_txt {
		font-size: 28px;
		font-size: 2.8rem;
	}
}

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

.info_col_txt span {
	letter-spacing: -.035em;
}

.info_col_btn {
	display: -ms-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 50px;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	text-align: center;
	letter-spacing: .1em;
	color: #fff;
	background-color: #603813;
}

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

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

.info_col_btn::after {
	content: '';
	display: inline-block;
	width: 21px;
	height: 21px;
	margin-left: 15px;
	background: url(../images/arrow.png) no-repeat;
	background-size: cover;
}

@media only screen and (max-width: 750px) {
	.info {
		width: 100%;
		max-width: inherit;
		margin: 0 auto 8vw;
		padding: 0 5.33333vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.info_ttl {
		font-size: 36px;
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.info_ttl {
		font-size: 4.8vw;
	}
}

@media only screen and (max-width: 750px) {
	.info_ttl::after {
		width: calc((75/750)*100vw);
		height: calc((6/750)*100vw);
		margin: 4vw auto 8vw;
	}
	.info-inner {
		display: block;
	}
	.info_col {
		width: 100%;
		max-width: inherit;
		margin-top: 8vw;
	}
	.info_col:first-child {
		max-width: inherit;
		margin: 0;
	}
	.info_col_ttl {
		margin-bottom: 2.66667vw;
		letter-spacing: .1em;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.info_col_ttl {
		font-size: 21px;
		font-size: 2.1rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.info_col_ttl {
		font-size: 2.8vw;
	}
}

@media only screen and (max-width: 750px) {
	.info_col_ttl span {
		margin-top: 1.33333vw;
		letter-spacing: .06em;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.info_col_ttl span {
		font-size: 36px;
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.info_col_ttl span {
		font-size: 4.8vw;
	}
}

@media only screen and (max-width: 750px) {
	.info_col_img {
		width: 100%;
	}
	.info_col_img img {
		width: 100%;
		max-width: inherit;
	}
	.info_col-inner {
		padding: 1.86667vw;
	}
	.info_col-inner a {
		display: block;
		padding: 4.53333vw 2.8vw;
		border: calc((3/750)*100vw) solid #603813;
	}
	.info_col-box {
		width: 100%;
		max-width: inherit;
		margin-top: -2vw;
	}
	.info_col_thm {
		width: 85%;
		margin: 0 auto;
	}
	.info_col_thm img {
		width: 100%;
		max-width: inherit;
	}
	.info_col_limited {
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 38.13333vw;
		height: 8vw;
		margin: 0 auto 2vw;
		padding: 0;
		border-radius: 50vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.info_col_limited {
		font-size: 27px;
		font-size: 2.7rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.info_col_limited {
		font-size: 3.6vw;
	}
}

@media only screen and (max-width: 750px) {
	.info_col_txt {
		margin-bottom: 2vw;
		text-align: center;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.info_col_txt {
		font-size: 42px;
		font-size: 4.2rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.info_col_txt {
		font-size: 5.6vw;
	}
}

@media only screen and (max-width: 750px) {
	.info_col_btn {
		width: 100%;
		height: 10vw;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.info_col_btn {
		font-size: 27px;
		font-size: 2.7rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.info_col_btn {
		font-size: 3.6vw;
	}
}

@media only screen and (max-width: 750px) {
	.info_col_btn::after {
		width: 4vw;
		height: 4vw;
		margin-left: 2.66667vw;
	}
}

/* =====================
	PAGE TOP
===================== */
.pagetop {
	position: fixed;
	bottom: 100px;
	right: 5%;
	width: 100%;
	max-width: 9px;
	opacity: 0;
	visibility: hidden;
	transition: .8s;
}

.pagetop.active {
	bottom: 150px;
	visibility: visible;
	opacity: 1;
}

@media only screen and (max-width: 750px) {
	.pagetop {
		position: fixed;
		bottom: 13.33333vw;
		right: 3.2vw;
		width: 100%;
		max-width: 2.66667vw;
	}
	.pagetop.active {
		bottom: 26.66667vw;
	}
}

/* =====================
	FLOAT
===================== */
.float {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 18.5px 0;
	text-align: center;
	background-color: #603813;
	z-index: 100;
}

.float a {
	display: -ms-inline-flex;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	color: #fff;
	text-decoration: none;
	letter-spacing: .12em;
	line-height: 1;
	transition: .3s;
}

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

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

.float a::after {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-left: 15px;
	background: url(../images/arrow.png) no-repeat;
	background-size: cover;
}

.float a:hover {
	opacity: .7;
}

@media only screen and (max-width: 750px) {
	.float {
		width: 100%;
		padding: 3.86667vw 0;
	}
}

@media only screen and (max-width: 750px) and (min-width: 768px) {
	.float a {
		font-size: 27px;
		font-size: 2.7rem;
	}
}

@media only screen and (max-width: 750px) and (max-width: 768px) {
	.float a {
		font-size: 3.6vw;
	}
}

@media only screen and (max-width: 750px) {
	.float a::after {
		width: 4vw;
		height: 4vw;
		margin-left: 4vw;
	}
}
