@charset "UTF-8";

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

body {
	overflow-x: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: 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;
}

/* -- body -- */

#lp_main_wrap .lp_viewpc {
	display: block;
}
#lp_main_wrap .lp_viewsp {
	display: none;
}
@media screen and (max-width: 901px) {
	#lp_main_wrap .lp_viewpc {
		display: none;
	}
	#lp_main_wrap .lp_viewsp {
		display: block;
	}
}

#lp_main_wrap a {
	transition: all 0.5s ease 0s;
	color: inherit;
	opacity: 1;
	text-decoration: none;
}
#lp_main_wrap a:hover {
	color: inherit;
	opacity: 0.6;
	text-decoration: none;
}


/* -- mv -- */

#lp_main_wrap .lp_mv {
	margin-bottom: 80px;
	width: 100vw;
}
#lp_main_wrap .lp_mv img {
	width: 100vw;
}
#lp_main_wrap .lp_mv_pc_1920 {
	display: block;
}
#lp_main_wrap .lp_mv_sp,
#lp_main_wrap .lp_mv_pc {
	display: none;
}
@media (max-width: 1440px) {
	#lp_main_wrap .lp_mv_pc {
		display: block;
	}
	#lp_main_wrap .lp_mv_pc_1920,
	#lp_main_wrap .lp_mv_sp {
		display: none;
	}
}
@media (max-width: 767px) {
	#lp_main_wrap .lp_mv {
		margin-bottom: 40px;
	}
	#lp_main_wrap .lp_mv_sp {
		display: block;
	}
	#lp_main_wrap .lp_mv_pc_1920,
	#lp_main_wrap .lp_mv_pc {
		display: none;
	}
}

/* -- main_container -- */

#lp_main_wrap .main_container {
	max-width: 1050px;
	font-family: "Lato", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, メイリオ, Meiryo, sans-serif;
	font-style: normal;
	font-size: 14px;
	line-height: 1.785;
	color: #333333;
	margin: 100px auto 0;
}
#lp_main_wrap .lead .lead-title {
	font-size: 21px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 35px;
}
#lp_main_wrap .lead .lead-text {
	text-align: center;
	font-size: 15px;
	line-height: 1.5;
}
@media screen and (max-width: 901px) {
	#lp_main_wrap .main_container {
		font-size: 26.67px;
		line-height: 1.863;
		margin: 50px auto 0;
	}
	#lp_main_wrap .lead .lead-title {
		font-size: 15.33px;
		line-height: 1.786;
		margin-bottom: 12px;
	}
	#lp_main_wrap .lead .lead-text {
		font-size: 12.33px;
		line-height: 1.8;
	}
}

#lp_main_wrap .nav_container {
	margin: 100px auto 166px;
}
#lp_main_wrap .nav-title {
	font-size: 30px;
	font-weight: 600;
	margin: 0 auto 52px;
	text-align: center;
}
#lp_main_wrap .nav {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 970px;
	margin: 0 auto;
}
#lp_main_wrap .nav .nav-list {
	width: 220px;
}

#lp_main_wrap .nav .nav-list a {
	font-size: 15px;
	font-weight: 600;
	border: 1px solid #333333;
	padding: 19px 0;
	text-align: center;
	background: #FFF;
}
#lp_main_wrap .nav .nav-list a:hover {
	color: #FFF;
	background: #c1a46e;
	transition: all 0.3s ease;
	border: none;
	opacity: 1;
}
@media screen and (max-width: 901px) {
	#lp_main_wrap .nav_container {
		margin: 69px auto 66px;
	}
	#lp_main_wrap .nav-title {
		font-size: 18px;
		margin: 0 auto 13px;
	}
	#lp_main_wrap .nav {
		justify-content: space-around;
		flex-wrap: wrap;
		width: 100%;
		max-width: 70%;
	}
	#lp_main_wrap .nav .nav-list a {
		font-size: 9px;
		padding: 4px 0;
		margin-bottom: 14px;
		width: 122px;
	}
	#lp_main_wrap .nav .nav-list {
		width: auto;
	}
}


/* -- credit_container -- */

#lp_main_wrap .credit_container {
	padding-top: 20px;
}
#lp_main_wrap .credit-title {
	display: flex;
	gap: 5%;
	align-items: center;
	text-align: center;
	width: 100%;
	font-size: 30px;
	font-weight: 600;
	margin: 0 auto 110px;
}
#lp_main_wrap .credit-title span {
	text-align: center;
	white-space: nowrap;
}
#lp_main_wrap .credit-title::before,
#lp_main_wrap .credit-title::after {
	content: '';
	flex-grow: 1;
	height: 1px;
	background-color: #333333;
}

#lp_main_wrap .credit-row {
	max-width: 1050px;
	margin: auto;
	display: flex;
	flex-direction: row;
}
#lp_main_wrap .credit_row_reverse {
	max-width: 1050px;
	margin: auto;
	display: flex;
	flex-direction: row-reverse;
}
#lp_main_wrap .credit-mainimg_slider {
	width: 42%;
	text-align: center;
	margin-bottom: 30px;
}
#lp_main_wrap .credit-text {
	width: 48%;
	margin-left: 10%;
	letter-spacing: 2.5px;
}
#lp_main_wrap .credit-text-reverse {
	width: 48%;
	margin-right: 10%;
	letter-spacing: 2.5px;
}
#lp_main_wrap .credit-text-ttl {
	font-size: 19px;
	font-weight: 600;
	line-height: 1.7;
	margin-bottom: 30px;
}
#lp_main_wrap .credit-text-maintext {
	margin-bottom: 10px;
	letter-spacing: 0.4px;
}
#lp_main_wrap .credit-text-details {
	font-weight: 600;
}
#lp_main_wrap .credit-text-details a {
	text-decoration: underline;
}
#lp_main_wrap .credit-text-details a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 901px) {
	#lp_main_wrap .credit-title {
		gap: 2%;
		font-size: 18px;
		margin: 0 auto 50px;
	}
	#lp_main_wrap .credit-title::before {
		margin-left: 34px;
	}
	#lp_main_wrap .credit-title::after {
		margin-right: 34px;
	}
	#lp_main_wrap .credit-row {
		margin: auto;
		display: block;
	}
	#lp_main_wrap .credit_row_reverse {
		margin: auto;
		display: block;
	}
	#lp_main_wrap .credit-mainimg_slider {
		width: 83%;
		text-align: center;
		margin: 0 auto 30px;
	}
	#lp_main_wrap .credit-text {
		width: 83%;
		letter-spacing: 1.7px;
		margin: auto;
	}
	#lp_main_wrap .credit-text-reverse {
		width: 83%;
		letter-spacing: 1.7px;
		margin: auto;
	}
	#lp_main_wrap .credit-text-ttl {
		font-size: 13px;
		margin-bottom: 17px;
	}
	#lp_main_wrap .credit-text-maintext {
		font-size: 12px;
	}
	#lp_main_wrap .credit-text-details {
		font-size: 12px;
		letter-spacing: 1px;
	}
}

/* credit-btn */
#lp_main_wrap .credit-btn {
	display: block;
	width: 135px;
	height: 32px;
	line-height: 32px;
	border: solid 1px #333333;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.06em;
	margin: 0 auto;
}
#lp_main_wrap .credit-btn:hover {
	border: solid 1px #c1a46e;
	background-color: #c1a46e;
	transition: all 0.3s ease;
	opacity: 1;
	color: #fff;
}
#lp_main_wrap .credit-text-reverse .credit-btn,
#lp_main_wrap .credit-text .credit-btn {
	margin: 18px 0 0;
}
@media (max-width: 768px) {
	#lp_main_wrap .credit-btn {
		width: 85px;
		height: 24px;
		line-height: 24px;
		font-size: 9px;
	}
	#lp_main_wrap .credit-text-reverse .credit-btn,
	#lp_main_wrap .credit-text .credit-btn {
		margin: 6px auto 0;
	}
}


/* slider_item */
#lp_main_wrap .slick-dotted.slick-slider {
	margin-bottom: 0;
}
#lp_main_wrap .slider_item .slick-list {
	z-index: 1;
}
#lp_main_wrap .slider_item .slick-dots {
	z-index: 5;
	bottom: 4px;
	right: 10px;
	padding: 0 10px;
	text-align: right;
}
#lp_main_wrap .slider_item .slick-dots li {
	width: 12px;
	margin: 0 2px;
}
#lp_main_wrap .slider_item .slick-dots li button:before {
	font-size: 11px;
}
#lp_main_wrap .slider_item .slick-dots li.slick-active button:before {
	color: #f3f3f3;
}

#lp_main_wrap .credit-subitem {
	margin: 70px 0 180px;
}
#lp_main_wrap .credit-subitem-flex-price {
	display: block;
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	color: #333;
	text-decoration: none;
	margin: 10px auto 12px;
}
#lp_main_wrap .credit-subitem.slide_wrap {
	margin: 70px 0 180px;
	width: 100%;
	overflow: hidden;
}
#lp_main_wrap .credit-subitem-flex-img img {
	width: 100%;
	height: auto;
	display: block;
}

/* プラグインの標準CSS上書きのため#lp_main_wrapを含めて詳細度を確保 */
#lp_main_wrap .credit-subitem .slick-track {
	opacity: 1;
	width: auto;
	display: flex;
	transform: translate3d(0px, 0px, 0px);
	gap: 1%;
}

#lp_main_wrap .slider_multiple .arrow-left {
	position: absolute;
	top: 35%;
	left: 2%;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px;
	border-left: 2px solid #333;
	border-bottom: 2px solid #333;
	transform: rotate(45deg);
	z-index: 1;
}
#lp_main_wrap .slider_multiple .arrow-right {
	position: absolute;
	top: 35%;
	right: 2%;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px;
	border-top: 2px solid #333;
	border-right: 2px solid #333;
	transform: rotate(45deg);
	z-index: 1;
}

/* レスポンシブ対応のCSS (900px以下で表示) */
@media screen and (max-width: 900px) {
	#lp_main_wrap .credit-subitem {
		margin: 40px 0 80px;
	}
	/* SP表示で10列配置にするための幅指定 */
	#lp_main_wrap .credit-subitem-flex li {
		width: 10%;
	}
	#lp_main_wrap .credit-subitem.slide_wrap {
		width: 100%; /* モバイルでの幅調整 */
	}
	#lp_main_wrap .credit-subitem-flex-price {
		font-size: 12px;
	}
	#lp_main_wrap .lp_viewsp {
		display: block; /* SPで改行を表示 */
	}
	#lp_main_wrap .slick-prev {
		left: 0; /* SP時の矢印位置調整 */
	}
	#lp_main_wrap .slick-next {
		right: 0; /* SP時の矢印位置調整 */
	}
	/* 必要であれば、SP時の矢印の見た目をさらに調整 */
	#lp_main_wrap .slick-prev:before,
	#lp_main_wrap .slick-next:before {
		font-size: 24px;
	}
}

#lp_main_wrap .btm_area {
	margin: 0 auto 3%;
}
#lp_main_wrap .cp_top > a {
	display: block;
	width: 100%;
	max-width: 600px;
	background: #c5c5c5;
	margin: 0 auto 2%;
	padding: 0.9% 0;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	line-height: 2.5em;
	color: #fff;
	border: solid 2px #c5c5c5;
}
#lp_main_wrap .cp_top > a:before {
	content: '';
	display: inline-block;
	position: relative;
	width: 0;
	top: -2px;
	left: 0;
	padding: 0 5px;
	font-size: 0;
	line-height: 1px;
	text-shadow: none;
	color: #fff;
	border-style: solid;
	border-width: 5px 0 5px 5px;
	border-color: transparent transparent transparent #fff;
}
#lp_main_wrap .cp_top a:hover {
	color: #a6a6a6;
	border: solid #a6a6a6 2px;
	background-color: #fff;
	transition-duration: 0.3s;
	text-decoration: none;
}
#lp_main_wrap .cp_top > a:hover:before {
	content: '';
	display: inline-block;
	position: relative;
	width: 0;
	top: -2px;
	left: 0;
	padding: 0 5px;
	font-size: 0;
	line-height: 1px;
	text-shadow: none;
	color: #cf3f3c;
	border-style: solid;
	border-width: 5px 0 5px 5px;
	border-color: transparent transparent transparent #a6a6a6;
}
#lp_main_wrap .attention_txt {
	text-align: center;
	padding-top: 72px;
}
@media (max-width: 768px) {
	#lp_main_wrap .cp_top > a {
		width: 92%;
		font-size: 16px;
	}
	#lp_main_wrap .btm_area {
		margin: 0 auto 12%;
	}
}

#lp_main_wrap .gift {
	background: #f5f5f5;
	max-width: 1050px;
	width: 100%;
	text-align: center;
	margin: 0 auto 106px;
	padding-bottom: 60px;
}
#lp_main_wrap .gift-title {
	padding-top: 77px;
}
#lp_main_wrap .gift-title h2 {
	font-size: 38px;
	font-weight: 600;
	text-align: center;
	letter-spacing: 1.9px;
}
#lp_main_wrap .gift-title p {
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	padding-top: 18px;
}
#lp_main_wrap .gift-img {
	width: 53%;
	margin: 0 auto;
}
#lp_main_wrap .gift-text {
	font-size: 14px;
	line-height: 1.7;
	width: 53%;
	margin: 14px auto 22px;
}
#lp_main_wrap .gift a {
	font-size: 15px;
	text-decoration: underline;
}
#lp_main_wrap .gift a:hover {
	text-decoration: underline;
}

#lp_main_wrap .city_bg {
	overflow: hidden;
	width: 100%;
	margin-bottom: 30px;
}
#lp_main_wrap .city_bg img {
	width: 100vw;
}
#lp_main_wrap #pageTop {
	margin: 50px 100px 0 0;
}
@media (max-width: 768px) {
	#lp_main_wrap .gift {
		margin: 0 auto 56px;
	}
	#lp_main_wrap .gift-title {
		padding-top: 47px;
	}
	#lp_main_wrap .gift-title h2 {
		font-size: 20px;
		padding-top: 6px;
	}
	#lp_main_wrap .gift-title p {
		font-size: 9px;
		padding-top: 4px;
	}
	#lp_main_wrap .gift-img {
		width: 83%;
	}
	#lp_main_wrap .gift-text {
		font-size: 11px;
		width: 83%;
		margin: 19px auto 13px;
		text-align: left;
	}
	#lp_main_wrap .gift a {
		font-size: 12px;
	}
	#lp_main_wrap #pageTop {
		margin: 0;
	}
}