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

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



/* ========== 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;
	}
}

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

#lp_main_wrap {
	width: 100%;
	margin: 0 auto;
	word-wrap: break-word;
	color: #000;
	font-family: "Noto Sans CJK JP", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 14px;
	line-height: 1;
}
#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,
#lp_main_wrap a::before,
#lp_main_wrap a::after {
	transition: all 0.5s ease 0s;
	color: inherit;
	opacity: 1;
	text-decoration: none;
	letter-spacing: 0.1em;
}
#lp_main_wrap a:hover,
#lp_main_wrap a:active {
	color: inherit;
	opacity: 0.6;
	text-decoration: none;
}
#lp_main_wrap .sp_hide {
	display: block;
}
#lp_main_wrap .pc_hide {
	display: none;
}
@media (max-width: 767px) {
	#lp_main_wrap .sp_hide {
		display: none;
	}
	#lp_main_wrap .pc_hide {
		display: block;
	}
}

/* ========== MV ========== */

#lp_main_wrap .mv {
	width: 100%;
	background-color: #EFEEEA;
}
#lp_main_wrap .mv_inner {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}
#lp_main_wrap .mv img {
	width: 100%;
}


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

#lp_main_wrap .lead {
	width: 100%;
	background-color: #FFF;
}
#lp_main_wrap .lead_inner {
	width: 100%;
	max-width: 1050px;
	margin: 0 auto;
}
#lp_main_wrap .lead_title {
	margin-top: 100px;
}
#lp_main_wrap .lead_title h2 {
	text-align: center;
	font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "MS P明朝", "MS PMincho", serif;
	font-size: 21px;
	font-weight: 600;
	letter-spacing: 0.12em;
	font-feature-settings: "palt" 1;
}
#lp_main_wrap .lead_title p {
	text-align: center;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.08em;
	margin-top: 17px;
	line-height: 1.75;
}
#lp_main_wrap .lead_container {
	display: flex;
	justify-content: center;
	width: 100%;
	gap: 3.8%;
	margin: 80px auto 0;
}
#lp_main_wrap .lead_item {
	width: 38.1%;
	max-width: 400px;
}
#lp_main_wrap .lead_item_img {
	width: 100%;
}
#lp_main_wrap .lead_item_title {
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.08em;
	margin-top: 20px;
	text-align: center;
}
#lp_main_wrap .lead_item_text {
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 2;
	margin-top: 8px;
	text-align: left;
}
@media (max-width: 767px) {
	#lp_main_wrap .lead_title {
		margin-top: 40px;
	}
	#lp_main_wrap .lead_title h2 {
		font-size: 18px;
		font-weight: 600;
		letter-spacing: 0.08em;
		line-height: 1.58;
	}
	#lp_main_wrap .lead_title p {
		text-align: left;
		font-size: 14px;
		margin-top: 8px;
		line-height: 2;
		width: 84%;
		margin: 7px auto 0;
	}
	#lp_main_wrap .lead_container {
		display: block;
		width: 100%;
		margin: 40px auto 0;
	}
	#lp_main_wrap .lead_item {
		width: 84%;
		max-width: unset;
		margin: 0 auto 40px;
	}
	#lp_main_wrap .lead_item_img {
	}
	#lp_main_wrap .lead_item_title {
		font-size: 14px;
		margin-top: 19px;
	}
	#lp_main_wrap .lead_item_text {
		font-size: 12px;
		line-height: 1.91;
	}
}

/* ========== CUSTOMIZE ========== */

#lp_main_wrap .customize_wrap {
	width: 100%;
	background-color: #FAF9F7;
	padding: 86px 0 0;
	margin-top: 100px;
}
#lp_main_wrap .customize_inner {
	width: 100%;
	max-width: 1290px;
	margin: 0 auto;
	padding: 0 20px;
}
#lp_main_wrap .customize_head h2 {
	text-align: center;
	font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "MS P明朝", "MS PMincho", serif;
	font-size: 35px;
	font-weight: 700;
	letter-spacing: 0.049em;
	color: #194A6B;
}
#lp_main_wrap .customize_sub {
	font-family: Average;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.05em;
	margin-top: 25px;
	color: #194A6B;
}
#lp_main_wrap .customize_container {
	padding: 0 28px 0 20px;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 3.9%;
	margin-top: 60px;
}
#lp_main_wrap .image-gallery {
	display: flex;
	flex-direction: column;
	width: 48.6%;
	max-width: 500px;
	flex-shrink: 0;
}
#lp_main_wrap .image-gallery_visual {
	position: relative;
	width: 100%;
	flex: 1;
	background-color: #FFF;
}
#lp_main_wrap .image-gallery_note {
	margin-top: auto;
	padding-top: 8px;
	color: #4D4D4D;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.5;
	text-align: left;
}
#lp_main_wrap .customize_gallery {
	overflow: hidden;
}
#lp_main_wrap .customize_gallery .swiper-slide img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
#lp_main_wrap .customize_gallery_pagination_wrap {
	position: absolute;
	right: 21px;
	bottom: 20px;
	z-index: 10;
	line-height: 0;
	pointer-events: none;
}
#lp_main_wrap .customize_gallery_pagination_wrap .customize_gallery_pagination {
	position: static !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	top: auto !important;
	width: auto !important;
	transform: none !important;
	text-align: right;
	pointer-events: auto;
}
#lp_main_wrap .customize_gallery_pagination_wrap .swiper-pagination-bullet {
	width: 11px;
	height: 11px;
	background-color: #BBBBBB;
	opacity: 1;
	margin: 0 0 0 7px;
}
#lp_main_wrap .customize_gallery_pagination_wrap .swiper-pagination-bullet:first-child {
	margin-left: 0;
}
#lp_main_wrap .customize_gallery_pagination_wrap .swiper-pagination-bullet-active {
	background-color: #313131;
}
#lp_main_wrap .controls {
	flex: 1;
	min-width: 0;
	padding-top: 4px;
}
#lp_main_wrap .option-group + .option-group {
	margin-top: 40px;
}
#lp_main_wrap .option-group h3 {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.08em;
	padding-bottom: 9px;
	border-bottom: 1px solid #000;
	margin-bottom: 28px;
	line-height: 1.5;
	font-feature-settings: "palt" 1;
}
#lp_main_wrap .options {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
#lp_main_wrap .options input[type="radio"] {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
#lp_main_wrap .option-group--shirt .options {
	align-items: flex-start;
}
#lp_main_wrap .option-group--shirt .options label {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 11px;
	min-height: auto;
	padding: 0 0 12px;
	border: 1px solid #333;
	background-color: #FFF;
	text-align: center;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.3;
	cursor: pointer;
	transition: border-color 0.2s ease, font-weight 0.2s ease;
	border-radius: 9px;
	overflow: visible;
	position: relative;
}
#lp_main_wrap .option-group--button .options label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0;
	min-height: auto;
	padding: 0;
	border: 1px solid #333;
	background-color: #FFF;
	text-align: center;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.3;
	cursor: pointer;
	transition: border-color 0.2s ease, font-weight 0.2s ease;
	border-radius: 9px;
	overflow: visible;
	position: relative;
}
#lp_main_wrap .options {
	overflow: visible;
}
#lp_main_wrap .options label img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 8px 8px 0 0;
}
#lp_main_wrap .options input[type="radio"]:checked + label img {
	border-radius: 7px 7px 0 0;
}
#lp_main_wrap .options label .option_label_text {
	display: block;
	width: 100%;
}
#lp_main_wrap .option-group--shirt .options label img {
	object-fit: contain;
	object-position: top center;
}
#lp_main_wrap .option-group--shirt .options #shirt3 + label img {
	margin-top: 0;
}
#lp_main_wrap .option-group--button .options label img {
	object-fit: contain;
}
#lp_main_wrap .option-group--shirt .options label {
	width: calc((75% - 16px) / 3);
}
#lp_main_wrap .option-group--button .options label {
	width: calc((100% - 32px) / 5);
}
#lp_main_wrap .option-group--button .options label .option_label_text {
	display: grid;
	place-items: center;
	margin-top: -7px;
	min-height: calc(1.3em * 2);
	padding-bottom: 12px;
	box-sizing: border-box;
	text-align: center;
}
#lp_main_wrap .option-group--button .options label:last-of-type .option_label_text {
	margin-top: -14px;
}
#lp_main_wrap .options input[type="radio"]:checked + label {
	border-color: #DEB133;
	border-width: 2px;
	font-weight: 500;
}
#lp_main_wrap .options input[type="radio"]:checked + label::after {
	content: "";
	position: absolute;
	top: -8px;
	right: -3px;
	z-index: 3;
	width: 30px;
	height: 30px;
	background: url(//ds-assets.s3.amazonaws.com/e-look.jp/2026/keith/button_customize/checkmark.svg) no-repeat center / contain;
	pointer-events: none;
}
#lp_main_wrap .options input[type="radio"]:focus-visible + label {
	outline: 1px solid #DEB133;
	outline-offset: 2px;
}

@media (max-width: 979px) {
	#lp_main_wrap .customize_wrap {
		padding: 70px 0 80px;
	}
	#lp_main_wrap .customize_container {
		gap: 30px;
		padding: 0;
	}
	#lp_main_wrap .image-gallery {
		width: 46%;
	}
	#lp_main_wrap .option-group--button .options label {
		width: calc((100% - 16px) / 3);
	}
}

@media (max-width: 767px) {
	#lp_main_wrap .customize_wrap {
		padding: 41px 0 0;
		margin-top: 0px;
	}
	#lp_main_wrap .customize_inner {
		padding: 0 15px;
	}
	#lp_main_wrap .customize_head h2 {
		font-size: 23px;
		line-height: 1.6;
	}
	#lp_main_wrap .customize_sub {
		font-size: 14px;
		margin-top: 8px;
	}
	#lp_main_wrap .customize_container {
		flex-direction: column;
		margin-top: 30px;
		gap: 36px;
	}
	#lp_main_wrap .image-gallery {
		width: 100%;
		max-width: none;
	}
	#lp_main_wrap .image-gallery_note {
		margin-top: 5px !important;
		padding-top: 0;
		font-size: 11px;
	}
	#lp_main_wrap .customize_gallery_pagination_wrap {
		right: 14px;
		bottom: 13px;
	}
	#lp_main_wrap .customize_gallery_pagination_wrap .swiper-pagination-bullet {
		width: 7px;
		height: 7px;
		margin: 0 0 0 5px;
	}
	#lp_main_wrap .customize_gallery .swiper-slide {
		width: 100% !important;
	}
	#lp_main_wrap .controls {
		width: 100%;
		padding-top: 0;
	}
	#lp_main_wrap .option-group + .option-group {
		margin-top: 15px;
	}
	#lp_main_wrap .option-group--shirt .options {
		justify-content: flex-start;
	}
	#lp_main_wrap .option-group--shirt .options label {
		width: 82px;
		flex: 0 0 82px;
	}
	#lp_main_wrap .option-group--button .options label {
		width: calc((100% - 8px) / 2);
	}
	#lp_main_wrap .option-group h3 {
		font-size: 14px;
		padding-bottom: 1px;
		margin-bottom: 13px;
	}
	#lp_main_wrap .option-group--shirt .options label {
		gap: 5px;
		padding: 0 0 3px;
		font-size: 10px;
		border-radius: 3px;
	}
	#lp_main_wrap .option-group--button .options label {
		font-size: 10px;
		border-radius: 3px;
	}
	#lp_main_wrap .option-group--button .options label:last-of-type .option_label_text {
		margin-top: -12px;
	}
	#lp_main_wrap .option-group--button .options label .option_label_text {
		margin-top: -12px;
		padding-bottom: 5px;
	}
	#lp_main_wrap .option-group--shirt .options #shirt3 + label img {
		margin-top: 0;
	}
	#lp_main_wrap .options input[type="radio"]:checked + label::after {
		top: -5px;
		width: 15px;
		height: 15px;
	}
	#lp_main_wrap .options {
		flex-wrap: nowrap;
	}
	#lp_main_wrap .options label img {
		border-radius: 1px 1px 0 0;
	}
	#lp_main_wrap .options input[type="radio"]:checked + label img {
		border-radius: 1px 1px 0 0;
	}
}

/* ========== CUSTOMIZE_BTN ========== */

#lp_main_wrap .customize_btn {
	width: 100%;
	background-color: #FAF9F7;
	padding: 119px 0 90px;
}
#lp_main_wrap .customize_btn h2 {
	text-align: center;
	font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "MS P明朝", "MS PMincho", serif;
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.12em;
}
#lp_main_wrap .customize_btn_list {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin-top: 30px;
}
#lp_main_wrap .customize_btn_item {
	width: 100%;
	max-width: 375px;
}
#lp_main_wrap .customize_btn_item a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #194A6B;
	color: #FFF;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.09em;
	padding: 35px 0;
}
#lp_main_wrap .customize_btn_item a .customize_btn_label {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(calc(-50% - 2px), -50%);
	white-space: nowrap;
}
#lp_main_wrap .customize_btn_item a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	transform: translateY(-50%) rotate(45deg);
}
#lp_main_wrap .customize_btn_text {
	color: #4D4D4D;
	text-align: center;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0.08em;
	margin-top: 30px;
}

@media (max-width: 767px) {
	#lp_main_wrap .customize_btn {
		padding: 43px 0 50px;
	}
	#lp_main_wrap .customize_btn h2 {
		font-size: 18px;
	}
	#lp_main_wrap .customize_btn_list {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 10px;
		margin-top: 22px;
	}
	#lp_main_wrap .customize_btn_item {
	}
	#lp_main_wrap .customize_btn_item a {
		font-size: 14px;
		padding: 23px 0;
	}
	#lp_main_wrap .customize_btn_item a .customize_btn_label {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(calc(-50% - 2px), -50%);
		white-space: nowrap;
	}
	#lp_main_wrap .customize_btn_item a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		width: 8px;
		height: 8px;
		border-top: 2px solid #FFF;
		border-right: 2px solid #FFF;
		transform: translateY(-50%) rotate(45deg);
	}
	#lp_main_wrap .customize_btn_text {
		text-align: left;
		font-size: 12px;
		line-height: 1.91;
		margin-top: 20px;
	}
}

/* ========== FOOTER_BTN (Button section 4) ========== */

#lp_main_wrap .footer_btn {
	width: 100%;
	background-color: #FFF;
	padding: 100px 0 23px;
}
#lp_main_wrap .footer_btn_inner {
	width: 100%;
	max-width: 1050px;
	margin: 0 auto;
	padding: 0 20px;
}
#lp_main_wrap .footer_btn_title {
	text-align: center;
	line-height: 1;
}
#lp_main_wrap .footer_btn_title img {
	width: 268px;
	max-width: 100%;
	height: auto;
}
#lp_main_wrap .footer_btn_list {
	display: flex;
	align-items: center;
	gap: 0px;
	margin: 50px auto 0;
	padding: 0;
	list-style: none;
	width: 41%;
}
#lp_main_wrap .footer_btn_item {
	display: flex;
	justify-content: center;
	flex: 1;
	max-width: 191px;
}
#lp_main_wrap .footer_btn_item a {
	display: inline-flex;
	align-items: center;
	border: none;
	background-color: transparent;
	color: #333;
	font-family: Average, "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "MS P明朝", "MS PMincho", serif;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.09em;
	padding: 0;
}
#lp_main_wrap .footer_btn_item a:hover,
#lp_main_wrap .footer_btn_item a:active {
	opacity: 1;
}
#lp_main_wrap .footer_btn_item a .footer_btn_label {
	position: static;
	transform: translateX(-2px);
	white-space: nowrap;
}
#lp_main_wrap .footer_btn_item a::after {
	content: "";
	flex-shrink: 0;
	width: 8px;
	height: 8px;
	margin-left: 22px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
}

@media (max-width: 767px) {
	#lp_main_wrap .footer_btn {
		padding: 55px 0 40px;
	}
	#lp_main_wrap .footer_btn_inner {
		padding: 0 15px;
	}
	#lp_main_wrap .footer_btn_title img {
		width: 200px;
	}
	#lp_main_wrap .footer_btn_list {
		flex-direction: column;
		align-items: center;
		gap: 20px;
		margin-top: 26px;
	}
	#lp_main_wrap .footer_btn_item {
		max-width: 100%;
	}
}