@charset "utf-8";

@font-face {
	font-family: 'MyFont1';
	src: url("/font/cb_campaign/A-OTF-GothicMB101Pr6N-Light.otf");
	font-display: swap;
}

@font-face {
	font-family: 'MyFont2';
	src: url("/font/cb_campaign/A-OTF-GothicMB101Pr6N-Reg.otf");
	font-display: swap;
}

@font-face {
	font-family: 'MyFont3';
	src: url("/font/cb_campaign/A-OTF-GothicMB101Pr6N-Med.otf");
	font-display: swap;
}

@font-face {
	font-family: 'MyFont4';
	src: url("/font/cb_campaign/A-OTF-GothicMB101Pr6N-Bold.otf");
	font-display: swap;
}

.clamp {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}
.clamp2 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
.clamp3 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.inner {
	max-width: 1200px;
	margin: 0 auto;
}

.key_txt-desc {
	font-size: 47px;
	text-align: center;
	font-family: "Myfont4";
	line-height: 1.2;
	margin-bottom: 20px;
	-webkit-text-stroke: 1px #f00;
	text-stroke: 1px #f00;
}
.key {
	background: url(https://img.undernavi.com/front/pc/cb_campaign/main_bg.jpg) no-repeat;
	background-position: center top;
	background-size: cover;
}
.key .inner {
	padding: 40px 0;
}

.bold {
	font-family: "Myfont4";
	font-size: 49px;
	display: block;
	font-feature-settings: "palt";
	white-space: nowrap;
	letter-spacing: -3px;
}

.key_txt {
	margin: -60px 0 0 0;
	color: #000;
}

.key_txt-desc .small {
	font-size: 33px;
}

.bold .samll {
	font-size: 26px;
	font-weight: bold;
}

.bold .big {
	font-size: 70px;
	line-height: .8;
}

.key_link-item {
	font-size: 46px;
	display: block;
	text-align: center;
	background: #3958f9;
	color: #fff;
	font-family: "Zen Maru Gothic";
	font-weight: bold;
	text-decoration: none;
	border-radius: 50px;
	box-shadow: 5px 8.66px 2px 0px rgb(0, 0, 0);
	border: 4px solid #000;
	padding: 15px;
	-webkit-text-stroke: 2px #000;
	text-stroke: 2px #000;
	position: relative;
	color: #fff !important;
}

.key_link-item::after {
	background: url(https://img.undernavi.com/front/pc/cb_campaign/arr.png) no-repeat;
	position: absolute;
	right: 30px;
	top: 50%;
	background-size: contain;
	display: inline-block;
	content: "";
	width: 61px;
	height: 39px;
	transform: translateY(-50%);
}

.area {
	padding: 40px 0 100px;
	background: #e0e5fb;
}

.area.area2 {
	padding-bottom: 40px;
}

.area.area2 .area_list {
	margin-bottom: 0;
}

.area_list {
	display: flex;
	margin-bottom: 30px;
	flex-wrap: wrap;
	gap: 15px 0;
}

.area_list-link {
	font-size: 40px;
	font-weight: bold;
}

.area_list-link {
	font-size: 40px;
	font-weight: bold;
	border: 4px solid;
	padding: 0 10px;
	box-shadow: 0px 3px 0px 0px #000;
	background: #fff;
	display: block;
	line-height: 1.6;
	font-family: "Myfont3";
}

.area_list-item {
	width: calc((100% / 8) - 10px);
	margin-right: 10px;
	text-align: center;
}

.area_list-item:last-child {
	margin-right: 0;
}

.category_ttl {
	background: #000;
	color: #fff;
	padding: 5px 10px;
	position: relative;
	font-size: 18px;
	line-height: initial;
	white-space: nowrap;
	width: 130px;
}
.category {
	display: flex;
	align-items: flex-start;
}
.category p {
	margin-right: 20px;
}
.cate_list {
	display: flex;
	flex-wrap: wrap;
	flex: 1;
}
.category_ttl::after {
	content: "";
	background: #000;
	position: absolute;
	right: -30px;
	width: 30px;
	height: 100%;
	clip-path: polygon(0 0, 0 100%, 50% 50%);
	top: 0;
}
.category_link {
	text-decoration: underline;
	font-size: 20px;
	font-weight: bold;
}


.category_ttl::before {
	display: inline-block;
	vertical-align: middle;
	color: #333;
	line-height: 1;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	border-width: 0.375em 0.64952em;
	border-left-color: currentColor;
	border-right: 0;
}

.shop .inner {
	position: relative;
	padding: 100px 0 60px;
}

.shop_ttl {
	/* background: url(https://img.undernavi.com/front/pc/cb_campaign/shop_ttl.png) no-repeat; */
	background-size: cover;
	text-align: center;
	background-position: center top;
	position: absolute;
	top: -60px;
	width: 80%;
	background: #e84c3d;
	line-height: 3em;
	font-size: 40px;
	color: #fff;
	margin: 0 auto;
	left: 50%;
	transform: translateX(-50%);
	filter: drop-shadow(3px 2px 3px rgba(0, 0, 0, 0.7));
}

.shop_ttl::before {
	right: -1.5em;
}

.shop_ttl::after {
	left: -1.5em;
}

.shop_ttl::before,
.shop_ttl::after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	border-top: 1.5em solid #e84c3d;
	border-bottom: 1.5em solid #e84c3d;
	border-right: 1.5em solid transparent;
	border-left: 1.5em solid transparent;
}

.shop_list {
	display: flex;
	flex-wrap: wrap;
}

.shop_list-item {
	width: calc((100% / 2) - 20px);
	border: 2px solid #65605f;
	margin: 0 40px 20px 0;
	box-sizing: border-box;
	padding: 10px 20px 20px 20px;
	display: flex;
	flex-direction: column;
	box-shadow: 4.592px 5.283px 0px 0px rgba(202, 191, 191, 0.5);
	position:relative;
}
.card {
	background: #c70037;
	color: #fff;
	font-size: 10px;
	padding: 3px 15px;
	line-height: initial;
	border-radius: 5px;
}
.card.card_end {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	border-radius: 0 0 0 10px;
	font-size: 18px;
	padding: 5px 10px;
	font-weight: bold;
}
.shop_list-discount--left {
	padding: 10px;
	font-size: 20px;
	flex: 1;
	text-align: center;
	font-weight: bold;
}
.arr {
	color: #9d9d9d;
	margin: 0 5px;
}

.shop_list-discount {
	display: flex;
	justify-content: space-between;
	border: 3px solid #ff4000;
	align-items: stretch;
	font-family: "ＭＳ Ｐゴシック";
	position: relative;
	margin-top: auto;
}
.shop_list-discount::before {
	content: "";
	display: inline-block;
	width: 102px;
	height: 57px;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/discount.png) no-repeat;
	position: absolute;
	left: -17px;
	top: -30px;
}

.shop_list-discount--right {
	background: #ff4000;
	color: #fff;
	color: #ff0;
	padding: 0 10px;
	display: flex;
	align-items: center;
	font-size: 24px;
	width: 25%;
	justify-content: center;
}

.shop_list-discount--left .num {
	font-size: 24px;
	color: #c90037;
	line-height: 1;
	font-family: "ＭＳ ゴシック";
	font-weight: bold;
}



.shop_list-item:nth-child(2n) {
	margin-right: 0;
}

.link {
	background: url(https://img.undernavi.com/front/pc/cb_campaign/link_bg.jpg) no-repeat;
	background-size: cover;
}

.link .inner {
	padding: 70px 0;
}

.shop_list-area {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 18px;
	line-height: 1;
}

.shop_list-name {
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
	margin-top: auto;
}
.shop_list-ttl {
	background: #fdda26;
	position: relative;
	top: 5px;
	left: -32px;
	box-sizing: border-box;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/shop_ttl2.png) no-repeat;
	background-size: cover;
	height: 73px;
	padding: 13px 30px 10px 20px;
	font-family: "ＭＳ Ｐゴシック";
	width: 579px;
	margin-bottom: 20px;
	display: flex;
	flex-direction: column;
}
.shop_list-content {
	display: flex;
	margin-bottom: 40px;
}
.shop_list-left {
	margin-right: 5px;
}
.shop_list-left figure {
	width: 150px;
	height: 100%;
}
.shop_list-left figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.shop_list-right {
	flex: 1;
	display: flex;
	flex-direction: column;
}
.shop_list-imagelist {
	display: flex;
	margin-top: auto;
}
.shop_list-imagelist figure {
	margin-right: 5px;
}
.shop_list-imagelist figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.shop_list-imagelist figure:last-child {
	margin-right: 0;
}

.shop_list-imagelist figure {
	width: 89px;
}
.shop_list-copy {
	font-size: 20px;
	font-family: "ＭＳ Ｐゴシック";
	margin-bottom: 5px;
	line-height: 1.2;
	font-weight: bold;
}
.shop_list-head {
	margin-bottom: 5px;
}
.shop_info {
	display: flex;
	align-items: center;
	gap: 0 10px;
}

.cate {
	font-weight: bold;
}
.shop_hour::before {
	content: "";
	display: inline-block;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/clock.png) no-repeat;
	width: 23px;
	height: 23px;
	vertical-align: middle;
	margin-right: 5px;
}
.tel::before {
	content: "";
	display: inline-block;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/tel.png) no-repeat;
	width: 23px;
	height: 23px;
	vertical-align: middle;
	margin-right: 5px;
}
/*
.shop_list-ttl::before, .shop_list-ttl::after {
	content: "";
	position: absolute;
	border: 5px solid transparent;
	bottom: 100%;
}
.shop_list-ttl::before {
	border-bottom-color: black;
	border-right-color: black;
	left: 0;
}
*/


.key_link-item.key_link-item2 {
	background-image: -moz-linear-gradient(90deg, rgb(246, 197, 1) 0%, rgb(255, 232, 96) 100%);
	background-image: -webkit-linear-gradient(90deg, rgb(246, 197, 1) 0%, rgb(255, 232, 96) 100%);
	background-image: -ms-linear-gradient(90deg, rgb(246, 197, 1) 0%, rgb(255, 232, 96) 100%);
	box-shadow: 0px 16px 1px 0px rgba(0, 0, 0, 0.75), inset 2px 3.464px 0px 0px rgba(255, 255, 255, 0.78);
	font-size: 58px;
	letter-spacing: -3px;
	-webkit-text-stroke: 3px #000;
	text-stroke: 3px #000;
}

.key_link-item.key_link-item2::after {
	content: none;
}

.present_box {
	background: #3858f9;
	text-align: center;
	position: relative;
}

.present_box::after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 48px;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/wave.png) no-repeat;
	position: absolute;
	left: 0;
	bottom: -30px;
}

.present_ttl {
	font-size: 87px;
	font-family: "Myfont4";
	text-align: center;
	color: #fff;
	-webkit-text-stroke: 3px #000;
	text-stroke: 3px #000;
	font-feature-settings: "palt";
	display: inline-block;
	position: relative;
	line-height: 1.4;
}

.present_ttl::before {
	background: url(https://img.undernavi.com/front/pc/cb_campaign/icon.png) no-repeat;
	width: 53px;
	height: 112px;
	content: "";
	display: inline-block;
	background-size: contain;
	position: absolute;
	left: -60px;
	top: 50%;
	transform: translateY(-50%);
}

.present_ttl::after {
	background: url(https://img.undernavi.com/front/pc/cb_campaign/icon.png) no-repeat;
	background-size: auto;
	width: 53px;
	height: 112px;
	content: "";
	display: inline-block;
	background-size: contain;
	position: absolute;
	right: -60px;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
}

.yellow {
	color: #ff0;
}

.yellow .num {
	font-size: 157px;
	line-height: 1;
}

.present {
	background: #ffff00;
	padding-bottom: 50px;
}

.present_item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 5px;
	border-bottom: 4px solid;
	padding-bottom: 40px;
}

.present_item-inner {
	background: #3858f9;
	color: #fff;
	padding: 15px 20px;
	box-sizing: border-box;
}

.present_item-txt.--first {
	font-size: 42px;
}

.present_item-txt {
	font-size: 32px;
}

.present_item-txt.--first {
	font-size: 42px;
	-webkit-text-stroke: 2px #000;
	text-stroke: 2px #000;
	font-family: "Zen Maru Gothic";
	font-weight: bold;
}

.present_item-txt {
	font-size: 32px;
	-webkit-text-stroke: 2px #000;
	text-stroke: 2px #000;
	font-family: "Zen Maru Gothic";
	font-weight: bold;
}

.present_item-right {
	font-size: 60px;
	font-family: "Zen Maru Gothic";
}

.present_item-word {
	font-weight: bold;
}

.present_item-word .num {
	font-size: 188px;
	font-weight: bold;
	color: #ff0048;
}

.present_item-word .yen {
	font-size: 96px;
}

.present_item-word.--pink {
	line-height: .5;
}

.present_item-word .yen {
	font-size: 96px;
	font-weight: bold;
	color: #ff0048;
}

.present_item-word .line {
	font-weight: bold;
	background: linear-gradient(transparent 70%, #ff0048 60%);
}

.present_item-left {
	position: relative;
}

.present_item-left::after {
	content: "";
	display: inline-block;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/chance.png) no-repeat;
	width: 204px;
	height: 200px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -170px;
}

.present .inner {
	padding: 80px 0px 40px;
}

.period_txt {
	font-size: 54px;
	font-family: "Myfont4";
	text-align: center;
	position: relative;
	margin-top: 20px;
}

.period_txt::after {
	content: "";
	display: inline-block;
	width: 47px;
	height: 48px;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/icon_chance.png) no-repeat;
	position: absolute;
	right: -10px;
	top: -10px;
}

.period_txt .small {
	font-size: 36px;
}

.period {
	border-top: 1px solid;
}

.period_sub-left {
	background: #000;
	color: #fff;
	font-size: 24px;
	line-height: 1.4;
	padding: 10px 0;
	text-align: center;
	width: 12%;
}

.period_sub-right {
	border-top: 2px solid;
	border-right: 2px solid;
	flex: 1;
	border-bottom: 2px solid;
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
	font-size: 32px;
	font-weight: bold;
	white-space: nowrap;
	background: #fff;
	font-family: "Myfont2";
	font-feature-settings: "palt";
}

.period_sub-right .big {
	font-size: 45px;
	font-weight: bold;
	font-family: "Myfont4";
}

.period_note {
	font-size: 24px;
	font-weight: 600;
}

.period_sub {
	display: flex;
	margin-bottom: 10px;
}

.app_ttl {
	font-size: 86px;
	text-align: center;
	font-family: zen-maru-gothic, sans-serif;
	-webkit-text-stroke: 3px #fff;
	text-stroke: 3px #fff;
	font-weight: 900;
	position: absolute;
	top: -60px;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
}

.app {
	position: relative;
	background: #fcfaed;
}

.app .inner {
	padding: 120px 0 50px;
}

.app_ttl .line {
	font-size: 86px;
	font-weight: 900;
	background: linear-gradient(transparent 80%, #ff0048 60%);
}

.app_ttl .big {
	font-size: 180px;
	font-weight: 900;
	-webkit-text-stroke: 5px #000;
	text-stroke: 5px #000;
	color: #ff0048;
	line-height: 0;
	vertical-align: sub;
}

.sign {
	background: #c7c3ac;
	padding: 20px 0px 20px 110px;
	font-size: 24px;
	line-height: 1.4;
	margin-bottom: 40px;
	position: relative;
	font-weight: 600;
	font-feature-settings: "palt";
}

.sign::before {
	background: url(https://img.undernavi.com/front/pc/cb_campaign/note.png) no-repeat;
	content: "";
	display: inline-block;
	width: 70px;
	height: 87px;
	position: absolute;
	left: 30px;
	top: -10px;
}

.step_list-item {
	background: #efebd5;
	margin-bottom: 50px;
	padding: 80px 40px 40px;
	position: relative;
	font-family: zen-maru-gothic, sans-serif;
}
.step_list-item:nth-child(2)::before {
	content: "";
	display: inline-block;
	background: url(https://img.undernavi.com/front/pc/cb_campaign/cashback_omote.jpg) no-repeat;
	width: 366px;
	height: 162px;
	position: absolute;
	right: -50px;
	/* max-width: 20%; */
	background-size: contain;
}

.step_list-ttl {
	position: absolute;
	left: -40px;
	top: -20px;
}

.step_list-txt {
	font-size: 30px;
	font-weight: 600;
}

.step_list-txt .red {
	color: #ff0048;
	font-weight: 600;
	font-family: "Myfont2";
}

.step_list-note {
	font-size: 22px;
}

.step_note-txt {
	font-family: zen-maru-gothic, sans-serif;
	font-size: 24px;
	font-weight: 600;
}

.step_note-txt .red {
	color: #ff0048;
	font-weight: 600;

}

.notes {
	background: #e5e5e5;
	padding: 50px 0;
}
.notes .inner {
	background: #d8d2d2;
	padding: 40px 0;
	text-align: center;
}

.notes_ttl {
	text-align: center;
	font-size: 42px;
	font-weight: 900;
	font-family: "Myfont3";
	display: inline-block;
	width: auto;
	border-bottom: 2px solid;
	margin: 0 auto 40px;
}

.notes_list {
	text-align: left;
	padding: 0 60px;
	font-size: 20px;
	font-family: "Myfont3";
}

.notes_list-item {
	margin-bottom: 10px;
	text-indent: -1em;
	padding-left: 2em;
}
