@charset "utf-8";
.wrapper {
	position: relative;
}
map area {
	outline: 0;
}
h2.ttl {
	color: #000;
	font-size: 50px;
	font-weight: bold;
	text-align: center;
}
h2.ttl::after {
	content: "";
	display: block;
	width: 300px;
	height: 16px;
	margin: 20px auto 0;
	background: #000;
}
.inner {
	position: relative;
}
#main_title {
	border-bottom: solid 1px #e3e3e3;
}
#main_title .inner {
	display: flex;
	align-items: center;
	height: 100px;
}
#main_title .inner h1 {
	font-size: 36px;
	font-weight: bold;
}
#top {
	position: relative;
}
#top_benefits {
	background: url(../../img/pc/cp/kessan2025/bg_top_benefits.webp);
}
#top_benefits .inner {
	height: 170px;
}
#top_benefits .inner .ttl {
	position: absolute;
	top: -36px;
	left: 24px;
}
#top_benefits .inner .txt {
	padding: 15px 0 0 440px;
	color: #000;
	font-size: 18px;
	font-weight: bold;
	line-height: 34px;
	white-space: nowrap;
}
#top_benefits .inner .txt strong {
	color: #c80101;
}
#top_benefits .inner .txt .gift {
	font-size: 24px;
}
#top_benefits .inner .txt .gift small {
	font-size: 18px;
}
#top_benefits .inner .txt .num-1 {
	font-size: 28px;
}
#top_benefits .inner .txt .num-2 {
	font-size: 36px;
}
#top_benefits .inner .txt::after {
	content: "";
	position: absolute;
	top: 12px;
	left: 220px;
	display: inline-block;
	width: 215px;
	height: 130px;
	background: url(../../img/pc/cp/kessan2025/bg_top_benefits_card.webp) no-repeat;
}
#top_benefits .inner .note {
	position: absolute;
	bottom: 10px;
	right: 0;
	font-size: 11px;
}
#lineup {
	position: relative;
	box-sizing: border-box;
	height: 1690px;
	padding-top: 70px;
	background: url(../../img/pc/cp/kessan2025/bg_lineup.webp);
}
#lineup .inner .ttl {
	color: #fff;
}
#lineup .inner .ttl::after {
	background: #fff;
}
#lineup .inner .bodytype {
	margin-top: 60px;
}
#lineup .inner .bodytype .btn {
	width: 482px;
	height: 72px;
	margin: 0 auto;
}
#lineup .inner .bodytype .btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding-top: 3px;
	background: url(../../img/pc/cp/kessan2025/btn_bodytype.webp) no-repeat;
	color: #000;
	font-size: 32px;
	font-weight: bold;
	overflow: hidden;
}
#lineup .inner .bodytype .btn a:hover {
	background-position: 0 -72px;
}
#lineup .inner .bodytype {
	overflow: hidden;
}
#lineup .inner .bodytype .slider {
	height: 200px;
	margin: 30px 0 0 -115px;
	opacity: 0;
}
#lineup .inner .bodytype .slider ul {
	display: flex;
}
#lineup .inner .bodytype .slider ul li {
	position: relative;
	box-sizing: border-box;
	width: 170px;
	height: 200px;
	border: solid 5px #e3e3e3;
	background: #fff;
	cursor: pointer;
}
#lineup .inner .bodytype .slider ul li:hover {
	border-color: #d12f2f;
}
#lineup .inner .bodytype .slider ul li .nm {
	margin: 7px 0 0 8px;
	padding-bottom: 2px;
	font-size: 16px;
	font-weight: bold;
}
#lineup .inner .bodytype .slider ul li dl {
	margin: 5px 8px 0;
}
#lineup .inner .bodytype .slider ul li dl dt {
	float: left;
	font-size: 14px;
}
#lineup .inner .bodytype .slider ul li dl dd {
	float: right;
	color: #be2625;
	font-size: 16px;
	font-weight: bold;
}
#lineup .inner .bodytype .slider ul li dl dd small {
	font-size: 12px;
	font-weight: normal;
}
#store_map {
	background: #cbeee9;
}
#store_map .inner {
	height: 1067px;
	background: url(../../img/pc/cp/kessan2025/bg_store_map_inner.webp) no-repeat center top;
}
#store_map .inner .ttl {
	position: absolute;
	top: 80px;
	left: 78px;
}
#store_map .inner .txt {
	position: absolute;
	top: 775px;
	left: 360px;
	color: #d30000;
	font-size: 60px;
	font-weight: bold;
	font-style: italic;
	/*text-shadow: 0 2px #275305;*/
}
#store_map .inner .txt sup {
	font-size: 16px;
	vertical-align: top;
}
#store_map .inner .note {
	position: absolute;
	top: 835px;
	left: 735px;
	color: #000;
	font-size: 12px;
}
#store_map .inner .btn-store p {
	position: absolute;
	width: 249px;
	height: 66px;
}
#store_map .inner .btn-store p.disabled {
	display: flex;
	justify-content: center;
	align-items: center;
	background: url(../../img/pc/cp/kessan2025/btn_store_dis.webp) no-repeat;
	color: #000;
	font-size: 24px;
	font-weight: bold;
}
#store_map .inner .btn-store p a {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding-top: 3px;
	background: url(../../img/pc/cp/kessan2025/btn_store.webp) no-repeat;
	color: #000;
	font-size: 24px;
	font-weight: bold;
	overflow: hidden;
}
#store_map .inner .btn-store p a:hover {
	background-position: 0 -66px;
	color: #000;
}
#store_map .inner .btn-store .akita {
	top: 318px;
	left: 683px;
}
#store_map .inner .btn-store .sendai {
	top: 400px;
	left: 867px;
}
#store_map .inner .btn-store .kanazawa {
	top: 456px;
	left: 516px;
}
#store_map .inner .btn-store .kanazawa a {
	font-size: 20px;
}
#store_map .inner .btn-store .takasaki {
	top: 480px;
	left: 824px;
}
#store_map .inner .btn-store .kashiwa {
	top: 552px;
	left: 824px;
}
#store_map .inner .btn-store .koube {
	top: 552px;
	left: 464px;
}
#store_map .inner .btn-store .kitakyusyu {
	top: 336px;
	left: 181px;
}
#store_map .inner .btn-store .fukuokakoga {
	top: 413px;
	left: 181px;
}
#store_map .inner .btn-store .onojo {
	top: 491px;
	left: 181px;
}
#store_map .inner .btn-store .oita {
	top: 569px;
	left: 181px;
}
#store_map .inner .btn-store .miyazaki {
	top: 647px;
	left: 181px;
}
#store_map .inner .btn-store .naha {
	top: 725px;
	left: 45px;
}
#store_map .inner .btn-all {
	position: absolute;
	top: 867px;
	left: 235px;
	width: 732px;
	height: 102px;
}
#store_map .inner .btn-all a {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding-top: 3px;
	background: url(../../img/pc/cp/kessan2025/btn_store_all.webp) no-repeat;
	color: #000;
	font-size: 36px;
	font-weight: bold;
	overflow: hidden;
}
#store_map .inner .btn-all a:hover {
	background-position: 0 -102px;
	color: #000;
}
#benefits {
	padding: 80px 0;
}
#benefits .inner {
	background: url(../../img/pc/cp/kessan2025/bg_benefits.webp) no-repeat;
}
#benefits .inner .ttl::after {
	background: #0c9682;
}
#benefits .inner .txt {
	margin-top: 40px;
	color: #000;
	font-size: 20px;
	font-weight: bold;
	line-height: 43px;
	text-align: center;
}
#benefits .inner .txt strong {
	color: #d30000;
}
#benefits .inner .txt .num-1 {
	font-size: 24px;
}
#benefits .inner .txt .gift {
	color: #0c9682;
	font-size: 30px;
}
#benefits .inner .txt .gift small {
	font-size: 24px;
}
#benefits .inner .txt .present {
	font-size: 28px;
}
#benefits .inner .txt .num-2 {
	font-size: 50px;
}
#benefits .inner .txt .pre-txt {
	font-size: 38px;
}
#benefits .inner .note-img {
	position: absolute;
	top: 860px;
	right: 0;
}
#benefits .inner .note {
	margin-top: 630px;
	padding: 30px 25px;
	border: solid 2px #333;
	font-size: 14px;
	line-height: 26px;
}
#benefits .inner .note strong {
	font-weight: bold;
}
#benefits .inner .note ol {
	margin-left: 20px;
	list-style-type: disc;
}