@charset "UTF-8";
/*---------------------*/
/*max-width: 1200px ←画面全体が縮小する幅*/
/*max-width: 979px ←タブレット版*/
/*max-width: 767px ←スマホ版*/
/*max-width: 425px ←スマホ版さらに小さい幅に対応*/
/*構成*/
/*
FONT
COMMON
MAIN
HEADER
ARTICLE
LEAD
COLOR
ABOUT
CTA
UTILITY
*/
/*---------------------*/

/* ========== FONT ========== */

#lp_main_wrap {
	--lp-font-display: "orpheus-pro", "Times New Roman", "Yu Mincho", "游明朝", serif;
	--lp-font-mincho: "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HiraMinProN-W3", "游明朝", "YuMincho", serif;
	--lp-font-sans: "Noto Sans JP", "Noto Sans CJK JP", "游ゴシック", YuGothic, "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	--lp-color-text: #303030;
	--lp-color-bg: #f4efed;
	--lp-color-btn: #303030;
}




/* ========== COMMON ========== */

body{
	overflow-x: hidden;
}

/*可変幅表示にて使用*/
#page-body {
	overflow: hidden;
	width: 100%;
}

/* SMP表示での左右の余白を削除 */
@media (max-width: 979px) {
	#page-body {
		width: 100vw;
		margin: 0 -10px;
	}
}
@media (max-width: 767px) {
	#page-body {
		width: 100vw;
		margin: 0 -5px;
	}
}

/* 背景色がある場合フッターのマージンを削除 */
#footer_banner {
	margin-top: 0;
}



/* ========== MAIN ========== */

#lp_main_wrap {
	width: 100%;
	margin: 0 auto;
	background: var(--lp-color-bg);
	word-wrap: break-word;
	color: var(--lp-color-text);
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0em;
}
#lp_main_wrap * {
	box-sizing: border-box;
}
#lp_main_wrap li,
#lp_main_wrap dt,
#lp_main_wrap dd,
#lp_main_wrap img {
	line-height: 1;
}
#lp_main_wrap p {
	margin-bottom: 0;
}
#lp_main_wrap a {
	transition: all 0.5s ease 0s;
	color: inherit;
	opacity: 1;
	text-decoration: none;
}
#lp_main_wrap a:hover,
#lp_main_wrap a:active {
	color: inherit;
	opacity: 0.6;
	text-decoration: none;
}




/* ========== HEADER ========== */

/* mainvisual */
#lp_main_wrap header.mainvisual {
	width: 100%;
	margin: 0 auto;
	background: #ebe8e2;
}
#lp_main_wrap header.mainvisual h2 {
	width: 100%;
	margin: 0 auto;
	line-height: 0;
}
#lp_main_wrap header.mainvisual h2 img {
	width: 100%;
	height: auto;
}
@media (min-width: 768px) {
	#lp_main_wrap header.mainvisual {
		width: 100vw;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
}



/* ========== ARTICLE ========== */

/* lp_main */
#lp_main_wrap .lp_main {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 125px 0 80px;
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_main {
		padding: 59px 0 70px;
	}
}


/* ========== LEAD ========== */

#lp_main_wrap .lp_lead {
	width: 100%;
	max-width: 1140px;
	margin: 0 auto 140px;
	padding: 0 150px;
}
#lp_main_wrap .lp_lead_inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 41px;
}
#lp_main_wrap .lp_lead_img {
	width: 358px;
	flex-shrink: 0;
}
#lp_main_wrap .lp_lead_img img {
	width: 100%;
	height: auto;
	display: block;
}
#lp_main_wrap .lp_lead_text {
	width: 491px;
	flex-shrink: 0;
}
#lp_main_wrap .lp_lead_text p {
	font-family: var(--lp-font-mincho);
	font-size: 14px;
	line-height: 2.23;
	letter-spacing: 0.09em;
	color: #333;
}
@media (max-width: 1200px) {
	#lp_main_wrap .lp_lead {
		padding: 0 5%;
	}
}
@media (max-width: 979px) {
	#lp_main_wrap .lp_lead_inner {
		gap: 24px;
	}
	#lp_main_wrap .lp_lead_img {
		width: 42%;
	}
	#lp_main_wrap .lp_lead_text {
		width: 54%;
	}
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_lead {
		margin: 0 auto 69px;
		padding: 0 30px;
	}
	#lp_main_wrap .lp_lead_inner {
		display: flex;
		flex-direction: column-reverse;
		gap: 30px;
	}
	#lp_main_wrap .lp_lead_img,
	#lp_main_wrap .lp_lead_text {
		width: 100%;
	}
	#lp_main_wrap .lp_lead_text p {
		line-height: 1.94;
		letter-spacing: 0.09em;
	}
}



/* ========== COLOR ========== */

#lp_main_wrap .lp_color {
	width: 100%;
	margin: 0 auto 120px;
}
#lp_main_wrap .lp_color_inner {
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
}
#lp_main_wrap .lp_color_head {
	display: flex;
	align-items: flex-start;
	gap: 50px;
	margin-bottom: 43px;
}
#lp_main_wrap .lp_color_ttl {
	flex-shrink: 0;
	padding: 2px 0;
}
#lp_main_wrap .lp_color_num {
	display: block;
	font-family: var(--lp-font-display);
	font-weight: 500;
	font-size: 25px;
	line-height: 1;
	color: var(--lp-color-text);
	margin-bottom: 13px;
}
#lp_main_wrap .lp_color_name {
	font-family: var(--lp-font-display);
	font-weight: 500;
	font-size: 80px;
	line-height: 1;
	color: var(--lp-color-text);
	margin: 0;
}
#lp_main_wrap .lp_color_desc {
	position: relative;
	flex: 1;
	padding-left: 50px;
	font-family: var(--lp-font-mincho);
	font-size: 15px;
	line-height: 1.94;
	letter-spacing: 0.05em;
	color: var(--lp-color-text);
	align-self: center;
}
#lp_main_wrap .lp_color_desc::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 1px;
	background: var(--lp-color-text);
}
#lp_main_wrap .lp_color_images {
	display: flex;
	gap: 10px;
	width: 100%;
	margin-bottom: 42px;
}
#lp_main_wrap .lp_color_main {
	width: 66.3%;
	flex-shrink: 0;
	background: #b5b1ad;
}
#lp_main_wrap .lp_color_main img {
	width: 100%;
	height: auto;
	display: block;
}
#lp_main_wrap .lp_color_details {
	width: 32.8%;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
#lp_main_wrap .lp_color_detail {
	position: relative;
	width: 100%;
	flex: 1;
	overflow: hidden;
}
#lp_main_wrap .lp_color_detail img {
	width: 100%;
	height: auto;
	display: block;
}
#lp_main_wrap .lp_color_label {
	position: absolute;
	top: 11px;
	right: 11px;
	display: inline-block;
	padding: 7px 9px;
	background: #f5f5f5;
	font-family: var(--lp-font-display);
	font-weight: 500;
	font-size: 17px;
	line-height: 1;
	letter-spacing: 0.05em;
	color: var(--lp-color-text);
}
#lp_main_wrap .lp_color_credit {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
}
#lp_main_wrap .lp_color_credit_link {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--lp-color-text);
}
#lp_main_wrap .lp_color_credit_link .name {
	font-family: var(--lp-font-mincho);
	font-size: 16px;
	line-height: 1;
	letter-spacing: -0.01em;
}
#lp_main_wrap .lp_color_credit_link .price {
	font-family: var(--lp-font-display);
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.01em;
}
#lp_main_wrap .lp_buy {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 28px;
	padding: 0;
	background: var(--lp-color-btn);
	color: #fff !important;
	font-family: var(--lp-font-display);
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.12em;
}
#lp_main_wrap .lp_buy:hover {
	opacity: 0.7 !important;
}

@media (max-width: 1200px) {
	#lp_main_wrap .lp_color {
		padding: 0 5%;
	}
	#lp_main_wrap .lp_color_name {
		font-size: 64px;
	}
	#lp_main_wrap .lp_color_head {
		gap: 30px;
	}
}
@media (max-width: 979px) {
	#lp_main_wrap .lp_color_name {
		font-size: 48px;
	}
	#lp_main_wrap .lp_color_num {
		font-size: 20px;
		margin-bottom: 16px;
	}
	#lp_main_wrap .lp_color_desc {
		padding-left: 30px;
		font-size: 13px;
	}
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_color {
		margin: 0 auto 85px;
		padding: 0;
	}
	#lp_main_wrap .lp_color_head {
		display: block;
		margin-bottom: 28px;
		padding: 0 16px 0;
	}
	#lp_main_wrap .lp_color_ttl {
		width:100%;
		padding: 1px 0 16px;
		margin-bottom: 29px;
		border-bottom: 1px solid #000;
	}
	#lp_main_wrap .lp_color_num {
		font-size: 19px;
		letter-spacing: 0.03em;
		margin-bottom: 2px;
	}
	#lp_main_wrap .lp_color_name {
		font-size: 48px;
		line-height: 1.1;
	}
	#lp_main_wrap .lp_color_desc {
		padding-left: 0;
		max-width: none;
		padding-right: 0;
	}
	#lp_main_wrap .lp_color_desc::before {
		display: none;
	}
	#lp_main_wrap .lp_color_images {
		display: block;
		margin-bottom: 26px;
	}
	#lp_main_wrap .lp_color_main {
		width: 100%;
		margin-bottom: 10px;
	}
	#lp_main_wrap .lp_color_details {
		width: 100%;
		flex-direction: row;
		gap: 10px;
		margin-top: 0;
	}
	#lp_main_wrap .lp_color_detail {
		width: calc((100% - 10px) / 2);
		flex: 0 0 calc((100% - 10px) / 2);
	}
	#lp_main_wrap .lp_color_label {
		top: auto;
		bottom: 11px;
		right: 10px;
		padding: 5px 6px;
		font-size: 14px;
		letter-spacing: 0.05em;
	}
	#lp_main_wrap .lp_color_credit {
		flex-wrap: wrap;
		gap: 10px 14px;
		padding: 0 16px;
	}
	#lp_main_wrap .lp_color_credit_link {
		flex-wrap: wrap;
		justify-content: center;
		gap: 6px 10px;
	}
	#lp_main_wrap .lp_color_credit_link .name,
	#lp_main_wrap .lp_color_credit_link .price {
		font-size: 15px;
	}
	#lp_main_wrap .lp_color_desc_bottom {
		margin-top: 28px;
		padding: 0 16px;
		font-family: var(--lp-font-mincho);
		font-size: 15px;
		line-height: 1.94;
		letter-spacing: 0.05em;
		color: var(--lp-color-text);
	}
}



/* ========== ABOUT ========== */

#lp_main_wrap .lp_about {
	position: relative;
	width: 100vw;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 647px;
	margin: 0 auto 140px;
	padding: 60px 20px;
	overflow: hidden;
}
#lp_main_wrap .lp_about_bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}
#lp_main_wrap .lp_about_bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(232, 227, 217, 0.67);
	mix-blend-mode: multiply;
}
#lp_main_wrap .lp_about_bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
#lp_main_wrap .lp_about_box {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 628px;
	margin: 0 auto;
	padding: 59px 54px 61px;
	background: #fff;
	text-align: center;
}
#lp_main_wrap .lp_about_logo {
	width: 218px;
	margin: 0 auto 48px;
}
#lp_main_wrap .lp_about_logo img {
	width: 100%;
	height: auto;
	display: block;
}
#lp_main_wrap .lp_about_text p {
	font-family: var(--lp-font-mincho);
	font-size: 14px;
	line-height: 2.24;
	color: var(--lp-color-text);
	text-align: left;
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_about {
		min-height: 550px;
		margin: 0 auto 85px;
		padding: 40px 17px;
	}
	#lp_main_wrap .lp_about_box {
		max-width: 341px;
		padding: 47px 25px 49px;
		opacity: 0.93;
	}
	#lp_main_wrap .lp_about_logo {
		width: 179px;
		margin: 0 auto 35px;
	}
	#lp_main_wrap .lp_about_text p {
		line-height: 1.97;
	}
}



/* ========== CTA ========== */

#lp_main_wrap .lp_cta {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
#lp_main_wrap .lp_cta h3 {
	margin: 0 0 32px;
	font-family: var(--lp-font-mincho);
	font-weight: 600;
	font-size: 22px;
	line-height: 1;
	letter-spacing: 0.09em;
	color: var(--lp-color-text);
	text-align: center;
}
#lp_main_wrap .lp_cta .lp_btn_inner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-start;
	gap: 10px;
	margin: 0 auto 32px;
}
#lp_main_wrap .lp_cta .lp_btn_inner a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 349px;
	height: 61px;
	background: var(--lp-color-btn);
	color: #fff;
	font-family: var(--lp-font-mincho);
	font-weight: 600;
	font-size: 17px;
	line-height: 1;
	letter-spacing: 0.09em;
	text-align: center;
}
#lp_main_wrap .lp_cta .lp_btn_inner a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 7px;
	height: 7px;
	margin-top: -4px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}
#lp_main_wrap .lp_cta .lp_btn_inner a:hover {
	opacity: 0.7 !important;
}
#lp_main_wrap .lp_attention {
	font-family: var(--lp-font-sans);
	font-size: 12px;
	line-height: 1.6;
	color: #333;
	text-align: center;
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_cta {
		padding: 0 16px;
	}
	#lp_main_wrap .lp_cta h3 {
		margin-bottom: 23px;
		font-weight: 400;
		font-size: 17px;
		letter-spacing: 0.09em;
	}
	#lp_main_wrap .lp_cta .lp_btn_inner {
		flex-direction: column;
		flex-wrap: wrap;
		gap: 10px;
		margin-bottom: 23px;
	}
	#lp_main_wrap .lp_cta .lp_btn_inner a {
		width: 100%;
		height: 55px;
		padding: 0 40px;
		font-weight: 400;
	}
	#lp_main_wrap .lp_attention {
		font-size: 10px;
		max-width: 328px;
		margin: 0 auto;
		text-align: left;
	}
}




/* ========== UTILITY ========== */

#lp_main_wrap .lp_viewpc_block {
	display: block;
}
#lp_main_wrap .lp_viewpc_inline {
	display: inline;
}
#lp_main_wrap .lp_viewpc_inline-block {
	display: inline-block;
}
#lp_main_wrap .lp_viewpc_none {
	display: none;
}
#lp_main_wrap .lp_viewsmp_block,
#lp_main_wrap .lp_viewsmp_inline,
#lp_main_wrap .lp_viewsmp_inline-block {
	display: none;
}
#lp_main_wrap .lp_viewxs_block,
#lp_main_wrap .lp_viewxs_inline,
#lp_main_wrap .lp_viewxs_inline-block {
	display: none;
}

#lp_main_wrap .no-link {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	border: none !important;
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_viewpc_block,
	#lp_main_wrap .lp_viewpc_inline,
	#lp_main_wrap .lp_viewpc_inline-block {
		display: none;
	}
	#lp_main_wrap .lp_viewsmp_block {
		display: block;
	}
	#lp_main_wrap .lp_viewsmp_inline {
		display: inline;
	}
	#lp_main_wrap .lp_viewsmp_inline-block {
		display: inline-block;
	}
	#lp_main_wrap .lp_viewsmp_none {
		display: none;
	}
}
@media (max-width: 425px) {
	#lp_main_wrap .lp_viewxs_block {
		display: block;
	}
	#lp_main_wrap .lp_viewxs_inline {
		display: inline;
	}
	#lp_main_wrap .lp_viewxs_inline-block {
		display: inline-block;
	}
	#lp_main_wrap .lp_viewxs_none {
		display: none;
	}
}
