@charset "utf-8";

html, body, div, span, 
h1, h2, h3, h4, h5, h6, 
p, em, strong, i,
ul, ol, li, dl, dt, dd, 
table, th, td ,
address {
	margin:				0px;
	padding:			0px;
}

html,
body {
	width:				100%;
	font-family:		"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-size:			16px;
	font-style:			normal;
	font-weight:		normal;
	line-height:		1.6em;
	text-align:			left;
	letter-spacing:		0.05em;
	color:				#061b33;
	overflow-wrap:		break-word;
	word-break:			break-all;
	outline:			none;
}

h6,
h5,
h4,
h3,
h2,
h1 {
	margin:				0px;
	padding:			0px;
	font-size:			100%;
	font-weight:		normal;
	text-align:			left;
	line-height:		100%;
}
h2 {
	position:			relative;
	padding:			20px 0;
	margin-bottom:		55px;
	color:				#fff;
	font-size:			32px;
	font-weight:		bold;
	text-align:			center;
	background-color:	#2b69f4;
	border-radius:		40px;
}
h2:after {
	content:			'';
	position:			absolute;
	display:			inline-block;
	bottom:				1px;
	width:				68px;
	height:				70px;
	margin-left:		0.5em;
	background-image:	url(../images/ttl_icon.png);
	background-size:	contain;
	background-repeat:	no-repeat;
	background-position:right bottom;
	vertical-align:		middle;
}

a {
	text-decoration:	none;
	color:				#000;
	transition:			all 0.5s;
}

a:hover {
	/* color: #2b69f4; */
	text-decoration:underline;
}

a:hover img {
/*	opacity:			0.8;*/
	filter:				brightness(0.6);
}

i, address {
	font-style:			normal;
}

p {
	text-align:			justify;
}

em {
	font-style:			normal;
	color:				#2b69f4;
}

@media all and (max-width: 700px) {

	body {
		font-size:		18px;
	}

	h2 {
		font-size:			20px;
		letter-spacing:		-0.05em;
	}

	h2:after {
		right:				20px;
		height:				55px;
		background-image: initial;
	}
}


/* レスポンシブ対応 */
/* ---------------------------------------------------------------- */
body {
	-webkit-text-size-adjust:	100%;
}

img {
	max-width:			100%;
	height:				auto;
}

@media all and (max-width: 700px) {

}

/* clearfix */
/* ================================================================ */

.clearfix:after {
	content:	"";
	display:	block;
	clear:		both;
}


/* ---------------------------------------------------------------- */

.txt_center {
	text-align:	center;
}
.txt_left {
	text-align:	left;
}
.txt_right {
	text-align:	right;
}


/* ---------------------------------------------------------------- */
header {
	position:			relative;
	box-sizing:			border-box;
	width:				100%;
	height:				80px;
	padding:			21px 0 0 0;
	border-bottom:		1px #b7b7b7 solid;
}
header h1 {
	width:				100%;
	max-width:			1000px;
	margin:				auto;
}

header a {
	text-decoration:	none;
	transition:			all 0.3s;
}
header a:hover {
	opacity:			0.8;
}

header.index_header {
	position:			fixed;
	box-sizing:			border-box;
	width:				100%;
	height:				80px;
/*	padding:			21px 0 0 0;*/
	border-bottom:		1px #b7b7b7 solid;
	background-color: 	#fff;
	display: 			flex;
	align-items: 		center;
	justify-content: 	space-between;
	padding: 			25px 30px;
	transition: 		.3s;
	z-index: 			999;
}

header.index_header h1 {
	width:				100%;
	max-width:			200px;
	margin: 			0;
}

header.index_header ul{
 display: 				flex;
 align-items: 			center;
}

header.index_header li{
  list-style: 			none;
  margin-right: 		30px;
  cursor:				pointer;
}

header.index_header li::before{
	font:				var(--fa-font-solid);
	content: 			"\f1b0";
}

.push{
	height: 			80px;
}

/* ---------------------------------------------------------------- */

footer {
	position:			relative;
	width:				100%;
	height:				260px;
	padding:			55px 0 0;
	color:				#fff;
	background-color:	#061b33;
	font-weight:		bold;
}

footer dt {
	padding-bottom:		14px;
}
footer dd {
	padding-bottom:		20px;
	font-size:			24px;
}

footer address {
	font-family:		Helvetica, sans-serif;
	font-size:			24px;
}
footer address a {
	color:				#fff;
}
footer address a:hover {
	text-decoration:	underline;
}

#copyright {
	position:			absolute;
	bottom:				0;
	left:				0;
	width:				100%;
	font-family:		Helvetica, sans-serif;
	font-size:			12px;
	text-align:			center;
}

#page_lift {
	position:			fixed;
	display:			inline-block;
	right:				10px;
	bottom:				10px;
	padding:			5px;
	font-size:			150%;
	text-align:			center;
	text-decoration:	none;
	border-radius:		50%;
	background-color:	#fff;
}
#page_lift a {
	color:				#2b68f4;
	opacity:			0.8;
}
#page_lift a:hover {
	color:				#2b68f4;
	opacity:			1.0;
}

@media all and (max-width: 950px) {
	header.index_header ul{
		display: 				none;
	}

	header.index_header li{
		display: 				none;
	}
}

@media all and (max-width: 700px) {
	footer dt {
		padding-bottom:		0;
		text-align:			center;
	}
	footer dd {
		text-align:			center;
	}

	footer address {
		text-align:			center;
	}
}

/* ---------------------------------------------------------------- */

.contents {
	width:				100%;
	max-width:			1000px;
	margin:				auto;
}

main {
	width:				100%;
	margin:				auto;
}

section {
	box-sizing:			border-box;
	width:				100%;
	max-width:			1000px;
	padding:			0;
	margin:				auto;
}

.half_r {
	float:				right;
	box-sizing:			border-box;
	width:				50%;
	padding:			20px;
}
.half_l {
	float:				left;
	box-sizing:			border-box;
	width:				50%;
	padding:			20px;
}

.half_c {
	text-align: 		center;
	padding:			2%;
}

.half_c img {
	width: 50%;
}

@media all and (max-width: 700px) {
	
	.half_c img {
	width: 100%;
	}
}

.matsuri img{
	padding-bottom:			2%;
}

	
.sp_only {
	display:			none;
}

.pc_only {
	display:			block;
}

.pc_only_a {
	display:			block;
	text-align: center;
}

.sp_line {
	display:			none;
	box-sizing:			border-box;
	width:				86.8%;
	padding:			10px 0;
	margin:				0 6.6% 20px;
	border-bottom:		2px #b7b7b7 solid;
}

.sp_line2 {
	display:			none;
	width:				100%;
	margin-bottom:		60px;
	border-bottom:		2px #b7b7b7 solid;
}

@media all and (max-width: 700px) {

	.sp_only {
		display:			block;
	}

	.pc_only {
		display:			none;
	}

	.sp_line {
		display:			block;
	}
	.sp_line2 {
		display:			block;
	}
	.sp_l {
		float:				left;
	}
	.sp_l_a {
		float:				left;
		width: 100%;
	}

	.sp_r {
		float:				right;
	}

	.sp_ra {
		float:				right;
	}

	.half_r {
		width:				100%;
	}
	.half_l {
		width:				100%;
	}
}

/* ---------------------------------------------------------------- */

#sct1 {
	font-weight:		bold;

}

#sct1 .half_r {
	padding:			40px 0 60px 0;
	text-align:			center;
}
#sct1 .half_r img {
	max-height:			640px;
}
#sct1 .half_l {
	padding:			70px 0 0 0;
}
#sct1 .half_l:nth-child(3) {
	padding:			0;
}

#sct1 .half_l > img {
	margin-bottom:		50px;
}
#sct1 .half_l > h2 {
	margin-bottom:		20px;
	margin-left:		-0.5em;
	font-weight:		bold;
	color:				#2b69f4;
	line-height:		100%;
	text-align:			left;
	background-color:	transparent;
}

#sct1 .half_l > h2:after {
	background-image:	none;
	margin-left:		0;
}

#sct1 .half_l > p {
	margin-bottom:		36px;
	line-height:		1.4em;
}

#btn_apple img {
	height:				60px;
	padding:			14px 0;
}

#btn_google img {
	height:				88px;
}

#btn_apple_sp img {
	height:				50px;
	padding:			14px 0;
}

#btn_google_sp img {
	height:				76px;
}

#sct1 .sp_line {
	float:				left;
}

@media all and (max-width: 700px) {

	#sct1 .half_r {
		padding:			0 0 70px 0;
	}

	#sct1 .half_r > img {
		max-height:			100%;
		width:				70%;
	}


	#sct1 .half_l {
		box-sizing:			border-box;
		padding:			50px 6.6% 0;
	}

	#sct1 .half_l:nth-child(3) {
		padding:			0 6.6% 0;
	}


	#sct1 .half_l > h2 {
		margin-left:		0;
		margin-bottom:		55px;
		color:				#fff;
		text-align:			center;
		background-color:	#2b69f4;
	}
	#sct1 .half_l > h2:after {
		background-image:	url(../images/ttl_icon.png);
		margin-left:		0.5em;
	}

	#sct1 .half_l > h2 span {
		display:			inline-block;
		margin-left:		-2.5em;
	}

	#sct1 .half_l > p {
		box-sizing:			border-box;
		padding:			0 10px;
	}

}

/* ---------------------------------------------------------------- */

#sct2, #sct6, #sct4, #sct3, #sct5 {
	padding:			85px 0 55px 0;
}

#sct7 {
	padding:			35px 0 25px 0;
}

#sct7b {
	padding:			35px 0 25px 0;
}

@media all and (max-width: 700px) {

	#sct2 {
		box-sizing:			border-box;
		padding:			35px 6.6% 55px;
	}

	#sct2 img.sp_only {
		margin:				60px auto;
	}

	#sct2 h2:after {
		background-image:	url(../images/ttl_icon.png);
		margin-left:		0.5em;
	}

	#sct2 .sp_line {
		width:				100%;
		margin:				0 0 20px;
	}

	#sct7 {
		box-sizing:			border-box;
	}

	#sct7 img.sp_only {
		margin:				60px auto;
	}

	#sct7 h2:after {
		background-image:	url(../images/ttl_icon.png);
		margin-left:		0.5em;
	}

	#sct7 .sp_line {
		width:				100%;
		margin:				0 0 20px;
	}
}

/* ---------------------------------------------------------------- */

#sct3_wrap {
	border-bottom:		1px #b7b7b7 solid;
	margin-bottom:		70px;
}

#sct3 {
	display:			flex;
	flex-wrap:			wrap;
}

#sct3 h2 {
	float:				left;
	width:				100%;
}
#sct3 > div {
	float:				left;
	position:			relative;
	margin-bottom:		55px;
}

#sct3 h3 {
	margin-bottom:		20px;
	font-family:		Helvetica, sans-serif;
	font-weight:		bold;
	font-size:			36px;
	color:				#2b69f4;
}

#details h3 {
	margin-bottom:		20px;
	font-family:		Helvetica, sans-serif;
	font-weight:		bold;
	font-size:			36px;
	color:				#2b69f4;
}

#sct3 p {
	line-height:		1.4em;
	font-weight:		bold;
}

#sct3 p i {
	display:			inline-block;
}

.s3_screen {
	width:				26.2%;
}
.s3_illust {
	width:				35%;
}

.s3_illust_a {
	width:				35%;
}

.s3_arrow {
	width:				6.3%;
	text-align:			center;
}

#stepimg_1-2 {
	margin-top:			-70px;
}

#sct3 .sp_line2 {
	float:				left;
}

@media all and (max-width: 700px) {

	#sct3_wrap {
		box-sizing:			border-box;
		width:				86.8%;
		margin:				0 6.6% 60px;
		border-bottom:		2px #b7b7b7 solid;
	}

	#sct3 h2 span {
		display:			inline-block;
		margin-left:		-2.5em;
	}

	.s3_screen,
	.s3_illust {
		width:				100%;
	}
	.s3_screen img,
	.s3_illust img {
		width:				40%;
	}
	.s3_screen div {
		width:				54%;
		padding-top:		70px;
	}

	.s3_illust div {
		width:				54%;
		padding-top:		30px;
	}
	
	.s3_illust_a {
	width:				100%;
}


}

/* ---------------------------------------------------------------- */


@media all and (max-width: 700px) {

}

/* ---------------------------------------------------------------- */
#sct5 h2 {
	margin-bottom:		20px;
}

@media all and (max-width: 700px) {

	#sct5, #sct6 {
		box-sizing:			border-box;
		padding:			35px 6.6% 55px;
	}

	#sct5 h2:after {
		background-image:	url(../images/ttl_icon.png);
		margin-left:		0.5em;
	}
}

/* ---------------------------------------------------------------- */

#sct0 {
	padding:			35px 0 55px 0;
}

#sct0 h3 {
	box-sizing:			border-box;
	padding:			2em 1em 1em;
	font-weight:		bold;
}

#sct0 p {
	box-sizing:			border-box;
	padding:			1em;
}
#sct0 p span {
	display:			inline-block;
}

#sct0 ul {
	list-style:			none;
	margin-left:		1em;
	padding-right:		1em;
}
#sct0 ol {
	margin-left:		2.5em;
	padding-right:		1em;
}
#sct0 > ul > li,
#sct0 > ol > li {
	margin-bottom:		1em;
}

#sct0 ol.olin {
	margin-left:		2.3em;
}

#sct0 > ol.olin {
	margin-left:		3.5em;
}

#sct0 ol.olin li {
	margin-bottom:		0;
	list-style-type:	none;
	counter-increment:	cnt;
}

#sct0 ol.olin li::before {
	content:			"(" counter(cnt) ")";
	display:			inline-block;
	margin-left:		-2.3em;
	width:				2.3em;
}

@media all and (max-width: 700px) {
	#sct0 h2#pp {
		font-size:		17px;
		padding-left:	1em;
		text-align:		left;
	}
}

/* ---------------------------------------------------------------- */
.sp_raa {
	display: none;
}

@media all and (max-width: 700px) {
	.sp_ra {
		display: none;
	}

	.sp_raa {
		display: block;
	}
}

/* 新規入会---------------------------------------------------------------- */
.c_new2_btn {
	text-align: center;
}

.c_new2_2 {
	text-align: center;
	padding-top: 7%;
}

/* 食べて飲んで大当たり---------------------------------------------------------------- */
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.ed_pc { 
	display: block !important; 
	margin: auto;
	width: 100%;
}

.ed_pc_c { 
	display: block !important; 
	margin: auto;
	padding-bottom: 5%;
}

.ed_sp { display: none !important; }


/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 700px) {

	.ed_pc { display: none !important; }
	.ed_pc_c { display: none !important; }
	.ed_sp { display: block !important; }
}

.c_ed_btn {
	text-align: center;
}

.c_ed_2 {
	text-align: center;
}

@media only screen and (max-width: 700px) {
	.c_ed_2 {
		margin-top: 2%;
	}
}

.c_ed_3 {
	margin: 5%;
}

.c_ed_txt01 {
	text-align: center;
	font-size: 90%;
	line-height: 1.2em;
}

.c_ed_txt02 {
	text-align: center;
	font-size: 105%;
	padding-top: 1%;
	padding-bottom: 6%;
	font-weight: bold;
}

/*------------------------------------大泉追記----*/
.count_bg{
	background-color: 			#d1f0ff;
}

.countshop{
	background-color: 			#2b69f4;
	 height:					250px;
	 width:						250px;
	 border-radius:				50%;
	 text-align:				center;
	 box-shadow: 				0 0 15px 4px rgba(0,0,0,0.1);
}

.count-size{
	font-size:					6rem;
	font-weight: 				bold;
	color: 						#fff;
}

#box1{
	width: 				100%;
	max-width: 			480px;
	margin: 			auto;
	padding: 			15% 0;
}

#box1 p{
	text-align: 		center;
	line-height: 		2em;
	color: 				#fff;
}

hr{
	width: 				100%;
	max-width: 			200px;
	color: 				#fff;
	border: 			1px solid;
}

.storecount{
	font-size: 			60%;
	color: 				#fff;
}

.flex{
	display:			flex;
	flex-wrap:	 		wrap;
	margin-bottom: 		5%;
	justify-content: 	space-evenly;
	padding: 			5% 0 8% 0;
}

.newshop > ul li,
#shop > ul li{
	list-style: none;
}

.newshop > ul li{
	padding: 			1.5% 0;
}

.newshop > ul{
	padding-left: 19%;
}

#genre img{
	width: 					350px;
	height: 				200px;
	object-fit: 			cover;
	border-radius: 			25px;
}

#genre h4,
#shop h4{
	text-align: 			center;
	border-bottom: 			1px solid #979797;
	padding-top: 			3%;
	margin-bottom: 			2%;
	padding-bottom: 		2%;
}

#genre h4 span,
#shop h4 span{
	padding-left: 			0.5em;
}

.relative{
	position: 				relative;
}

#genre img.absolute01{
	position: 				absolute;
	width: 					62px;
	height: 				62px;
	right: 					10px;
	bottom:	 				25px;
	z-index: 				10;
}

#genre img.absolute02{
	position: 				absolute;
	width: 					62px;
	height: 				62px;
	right: 					74px;
	bottom:	 				25px;
	z-index: 				10;
}

#genre img.absolute03{
	position: 				absolute;
	width: 					62px;
	height: 				62px;
	right: 					137px;
	bottom:	 				25px;
	z-index: 				10;
}

#genre img.absolute04{
	position: 				absolute;
	width: 					62px;
	height: 				62px;
	right: 					10px;
	top:	 					25px;
	z-index: 				10;
}

#genre img.absolute05{
	position: 				absolute;
	width: 					62px;
	height: 				62px;
	right: 					74px;
	top:	 					25px;
	z-index: 				10;
}

#genre img.absolute06{
	position: 				absolute;
	width: 					62px;
	height: 				62px;
	right: 					137px;
	top:	 					25px;
	z-index: 				10;
}

.newshop{
	background-color: 		#fff;
	border-radius: 			20px;
	box-shadow: 			0 0 15px 4px rgba(0,0,0,0.1);
	width: 					100%;
	max-width: 				500px;
}

.newshop_new{
	padding-top: 			5%;
	text-align: 			center;
	font-weight: 			bold;
	display: 				flex;
	justify-content: 		start;
	align-items: 			center;
	flex-wrap: 				wrap;
}

.new{
	color: 					#fff;
	background-color: 		red;
	padding: 				3% 4%;
}

.newshop_new p{
	color: 					#2b69f4;
	padding-left: 			4%;
	width: 					100%;
}

.newshop ul > li > span{
	padding-left:           0.5em;
} 

.flex2{
	display:				flex;
	flex-wrap:	 			wrap;
	justify-content: 		space-between;
}

.flex2 div{
	width: 					32%;
	padding-bottom: 		3%;
	padding-top: 			3%;
}

.flex2 .genre_conte {
	width: 					100%;
	max-width: 				350px;
	filter: 				drop-shadow(5px 5px 5px #aaa);
}

.flex2::after{
	content:			"";
	display: 			block;
	width:				32%;
}

.flex2::before { 
	content:			""; 
	display:			block; 
	width:				32%;
	order: 				1;
}

.botan_bg{
	background-color: 	#fff;
	border-radius: 		35px;
	padding: 			5%;
	margin-top: 		-8%;
}

.botan_bg_c{
	background-color: 	#fff;
	border-radius: 		35px;
	padding: 			5%;
}

.botanbody {
	display: 				flex;
	justify-content: 		space-between;
	flex-wrap: 				wrap;

}

.shadow_btn02 {
	display: 				inline-block;
	width: 					100%;
	max-width: 				350px;
	border: 				1px solid #000;
	border-radius: 			5px;
	-webkit-box-shadow: 	4px 4px 0 #fadb21;
	box-shadow: 			4px 4px 0 #fadb21;
	font-weight: 			bold;
	text-decoration: 		none;
	text-align: 			center;
	transition: 			0.3s;
	margin: 				2% auto;
	font-size: 				20px;
}

.shadow_btn02:hover {
  -webkit-box-shadow: 		0px 0px 0 #fadb21;
  box-shadow: 				0px 0px 0 #fadb21;
}

.shadow_btn02 a{
	color: 					#2b69f4;
	text-decoration: 		none;
	padding: 				1em 2em;
	display: 				block;
}

#shop{
	padding-top: 			5%;
	padding-bottom: 		5%;
}

#shop p{
	background-color: 		#d1f0ff;
	color: 					#2b69f4;
	font-weight: 			bolder;
	padding-left: 			1.5em;
}

.shoplist{
	display: 				flex;
	flex-wrap: 				wrap;
	padding: 				2% 0;
}

.shoplist span{
	font-size: 				120%;
	color: 					red;
	font-weight: 			bold;
}

.shoplist li {
  position: 				relative;
  padding-left: 			1.6rem;
  list-style: 				none;
  width: 					30%;
}

.shoplist li:before{
	content: 				"★";
	position: 				absolute;
	color: 					#fadb21;
	left: 					0;
}

.shadow_btn03 {
	display: 				inline-block;
	width: 					100%;
	max-width: 				350px;
	border: 				1px solid #000;
	border-radius: 			5px;
	-webkit-box-shadow: 	4px 4px 0 #21c6fa;
	box-shadow: 			4px 4px 0 #21c6fa;
	font-weight: 			bold;
	text-decoration: 		none;
	text-align: 			center;
	transition: 			0.3s;
	margin: 				4% auto 0;
	font-size: 				20px;
}

.shadow_btn03:hover {
	-webkit-box-shadow: 		0px 0px 0 #21c6fa;
	box-shadow: 				0px 0px 0 #21c6fa;
}

.shadow_btn03 a{
	color: 					#2b69f4;
	text-decoration: 		none;
	padding: 				1em 2em;
	display: 				block;
}

@media all and (max-width: 700px) {
	.flex2 div{
		width: 			47%;
		margin: 		auto;
		text-align: 	center;
	}

	.flex2::after{
		width:			47%;
	}

	.flex2::before { 
		width:			47%;
	}

	.shoplist li{
		width: 			90%;
		margin: 		auto;
	}

	.newshop{
		width: 			97%;
	}

	.countshop{
		margin-bottom: 	5%;
	}

	.new{
		margin-bottom: 	2%;
	}

	.newshop > ul {
		margin-bottom: 	3%;
		padding-left: 	10%;
	}

	.newshop_new p {
		width: 			95%;
	}

	.flex2 div span{
		font-size: 		16px;
	}
}

@media all and (max-width: 400px) {
	.flex2 div{
		width: 			100%;
		margin: 		auto;
		text-align: 	center;
	}

	.flex2::after{
		width:			100%;
	}

	.flex2::before { 
		width:			100%;
	}
}

#sct6 div{
	width: 				100%;
	max-width: 			800px;
	margin: 			0 auto;
}

.newttl{
	background-color: 	#ff7889;
	color: 				#fff;
	padding: 			10px 5px;
	margin-bottom: 		15px;
	font-weight: 		bold;
}

.newttl2{
	background-color: 	#78d2ff;
	color: 				#fff;
	padding: 			10px 5px;
	margin-bottom: 		15px;
	font-weight: 		bold;
}

.newttl3{
	background-color: 	#ff9878;
	color: 				#fff;
	padding: 			10px 5px;
	margin-bottom: 		15px;
	font-weight: 		bold;
}

.newttl_a{
	background-color: 	#4d5bf5;
	color: 				#fff;
	padding: 			10px 5px;
	margin-bottom: 		15px;
	font-weight: 		bold;
	margin-left: 2%;
}

.newttl_b{
	background-color: 	#3bad07;
	color: 				#fff;
	padding: 			10px 5px;
	margin-bottom: 		15px;
	font-weight: 		bold;
	margin-left: 2%;
}

.newinfo{
	padding-top: 		3%;
}

.info_day{
	padding-right: 		2em;
}

.new_link{
	text-align: 		right;
}

.new_link a{
	text-decoration: 	underline;
}


/* 3倍キャンペーン */
.campaign{
	width: 100%;
	/* background-color: #979797; */
	height: 500px;
	margin-bottom: 5%;
}

.campaign_a {
	width: 30%;
	float: left;
	background-color: pink;
}

.campaign_aa {
	width: 30%;
	padding-left: 3%;
}


.campaign_b{
	width: 70%;
	background-color: rgb(42, 43, 43);
	float: right;
}

.campaign_bb{
	width: 70%;
	text-align: center;
	padding-top: 8%;
}

.campaign_text{
	width: 100%;
	/* background-color: rgb(42, 43, 43); */
	text-align: center;

}
.campaign_text_aa{
	width: 100%;
	/* text-align: center; */
	color: #050505;
	font-size: xx-large;
	font-weight: bold;
	padding-left: 2%;
	padding-bottom: 5%;

}
.campaign_box_flex{
	display: flex;
	width: 100%;
}
.campaign_box{
	display: flex; 
	width: 50%;
	padding-top: 5%;
	padding-bottom: 2%;
}
.campaign_box1{
	height: auto;
	padding-bottom: 2%;
	margin-bottom: 3%;
	text-align: center;
}

.campaign_box11{
	width: 100%;
	text-align: center;
}

.campaign_box11 img{
	margin-bottom: 5%;
	/* float: right;
	padding-right: 30%; */
}

.campaign_box111{
	width: 100%;
	text-align: center;
	margin-left: 1%;
	margin-right: 1%;
}

.campaign_box3_c{
	background-image:	url(../images/bg03_bg.png);
	background-repeat: no-repeat; /* リピートを無効化 */
	background-size: cover; /* 画面幅・高さに合わせて画像を拡大/縮小 */
	background-position: center; /* 画像を中央に配置 */
	padding-bottom: 5%;
	padding-top: 8%;
}

.campaign_box2{
	width: 100%;
	text-align: center;
	/* padding-top: 3%; */
	/* padding-bottom: 2%; */
}
.campaign_box2_a{
	width: 100%;
	text-align: center;
	/* background-color: white; */
	padding-top: 1%;
	padding-bottom: 1%;
	/* background-color: #fb2c0c; */
	margin-top: 2%;

}

.campaign_box1_a{
	font-size:medium;
	font-weight: bold;
	text-align: right;
	padding-top: 10%;
	padding-right: 5%;
	
}

.campaign_box1_aa{
	font-size: large;
	font-weight: bold;
	text-align: center;
	margin-bottom: 1%;
	color: #fff;
}

.campaign_box1_aaa{
	font-size: large;
	font-weight: bold;
	padding-bottom: 1%;
	color: #fff;

}

.campaign_box1_aaa a{
	color: #ffffff;
}

.campaign_box1_bbb{
	font-size: large;
	font-weight: bold;
	padding-bottom: 1%;
	color: #fff;

}

.campaign_box1_bbb a{
	color: #ffffff;
}
.stripe-marker_b{
	font-size: larger;
}

.campaign_box1_c{
	background-color: #ffffff;
	color: #050505;
	font-size: xxx-large;
	font-weight: bold;
	padding-top: 20%;
	padding-bottom: 20%;
}

.campaign_box1_d{
	background-color: #ffffff;
	color: #050505;
	font-size: xxx-large;
	font-weight: bold;
	padding-bottom: 20%;
	padding-top: 20%;

}

.campaign_box1_e{
	background-color: #ffffff;
	color: #050505;
	font-size: xxx-large;
	font-weight: bold;
	padding-top: 20%;
	padding-bottom: 20%;
}

.campaign_text_a{
	float: right;
	margin-bottom: 5%;
}


.campaign_box4{
	width: 100%;
	display: flex;
}

.campaign_ttl{
	width: 300px;
	height: 50px;
	border-radius: 50px;
	background-color: #d1f0ff;
	margin: auto;
	margin-top: 3%;
}

.campaign_ttl_b{
	width: 300px;
	height: 50px;
	border-radius: 50px;
	background-color: #ffd6d1;
	margin: auto;
	margin-top: 3%;
}

.campaign_ttl_c{
	width: 300px;
	height: 50px;
	border-radius: 50px;
	background-color: #f8ffab;
	margin: auto;
	margin-top: 3%;
}

.campaign_ttl_text{
	text-align: center;
	padding-top: 4%;
	font-weight: bold;
}


.point_area {
	margin-top: 2%;

}

.point_box2{
	width: 100%;
}

.point_box2_a{
	width: 100%;
}

.point_box1_aa{
	font-weight: bold;
	padding: 4%;
}

.point_box1_aa_img{
	font-weight: bold;
	padding: 4%;
	text-align: center;
}

.point_box2_a span{
	color: #ff253a;
}


.point_box1_a{
	font-size: x-large;
  font-weight: bold;
	padding: 5%;
}

.CPN_innr{
	padding-top: 5%;
}

.top_bag{
	width: 100%;
	background-color: #fb2c0c;
	/* margin-bottom: 3%; */
}

.top_bag_c{
	width: 100%;
	background-color: #ff077f;
	/* margin-bottom: 3%; */
}

/*大船渡元気UPキャンペーン*/
.kanko_back_g{
	background-color: #f17483;
	text-align: center;
	color: #fff;
	padding: 3% 0;
}

.kanko_inner{
	width: 100%;
	max-width: 1500px;
	margin: auto;
}

.kanko_inner2{
	width: 100%;
	max-width: 1050px;
	margin: auto;
}

.midashi_block{
	padding: 2%;
}

.midashi_cont{
	width: 95%;
	margin: auto;
}

.midashi{
	position: relative;
	padding: 0.6em;
	background: #f1afb7;
	color: #fff;
	font-weight: bold;
}

.midashi:after{
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #f1afb7;
  width: 0;
  height: 0;
}

.di_in{
	display: inline-block;
}

.midashi_block .shoplist li{
	padding-bottom: 0.5em;
}

.kameiten{
	width: 100%;
	text-align: center;
}

.kameiten a{
	display: inline-block;
	padding: 2%;
	text-decoration: underline;
	color: #00f ;
}



/*---------------------------------------------------*/
.pattern8{
	color: 					#ffffff;
	line-height: 			2.5em;
}

.pattern8 .line_yellow{
	color: #000;
	 background: 		linear-gradient(transparent 0%, yellow 0%);
}

@media all and (max-width: 900px) {
	.campaign_a {
		width: 30%;
		float: none;
		margin: auto;
		margin-bottom: 8%;

	}

	.campaign_b{
		width: 100%;
		background-color: rgb(42, 43, 43);
	}
	.campaign_box1{
		padding-left: 3%;
		padding-right: 3%;
		height: auto;
		padding-bottom: 2%;
		margin-bottom: 3%;
		text-align: center;
	}
}

@media all and (max-width: 700px) {
	.campaign_b{
		width: 100%;
		margin:auto;
	}
	.campaign_box{
		display: inline-block; 
		width: 100%;
		/* background-color: rgb(255, 255, 255); */
	}
	.campaign_a img {
		float: none;
		margin-bottom: 8%;
	}

	.campaign_box3_c{
		background-image:	url(../images/bg03_bg.png);
		padding-top: 8%;
		padding-bottom: 8%;
	}

	.stripe-marker_a{
		font-size: medium;
	}

	.stripe-marker_b{
		font-size: medium;
	}

	#sct7b {
		padding: 2% 0 2% 0;
	}

}

/* -------pointキャンペーン------- */

/* -------3倍キャンペーン------- */

.fuchidori{
	color: white;
	font-size: 70px;
	margin-top: 5%;
	margin-bottom: 3%;
	font-family: "メイリオ","Arial","游ゴシック";
	font-weight: bold;
	text-shadow: 2px 5px 5px #666666;
	padding-left: 13%;
	
   }
   .fuchidori_2{
	color: white;
	font-size: 70px;
	margin-top: 5%;
	padding-bottom: 3%;
	font-family: "メイリオ","Arial","游ゴシック";
	font-weight: bold;
	text-shadow: 2px 5px 5px #666666;
	padding-left: 25%;
	
   }

.fuchidori-marker{
	font-size: xxx-large;
	display: inline-block;
	margin-top: 2%;
	text-shadow: 2px 5px 5px #666666;
	color: white;
	font-family: "メイリオ","Arial","游ゴシック";
	
} 

   .background-marker {
	font-size: larger;
	display: inline-block;
	margin-top: 2%;
	text-shadow: 2px 5px 5px #666666;
	color: white;
	font-family: "メイリオ","Arial","游ゴシック";

 }

/* kokokara */



.back {
	margin-bottom: 3%;
}

dl.table_ly {
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
	/* border: 1px solid #ccc; */
	border-bottom: none;
}

dl.table_ly dt {
	padding: 12px;
	width: 100%;
	border-right: none;
	font-weight: bold;
	background: #f5f5f5;
	border-bottom: none;

}

dl.table_ly dd {
	width: 100%;
	background: #fff;
	padding: 12px;
	/* border-bottom: 1px solid #ccc; */
}

/* -------キャンペーン一覧------- */
.campaign_ttl_a{
	width: 300px;
	height: 50px;
  border-bottom: 1px solid #ccc;
	margin: auto;
	margin-top: 10%;
	font-weight: bold;
	
}

.campaign_box1_aa{
	color: #000;
  font-weight: bold;
	padding: 4%;
	text-align: center;
}

.campaign_box_flex_aa{
	display: 			flex;
	flex-wrap: 			wrap; /* 要素が幅に応じて折り返される */
	gap: 				1%; /* カラム間の隙間 */
	justify-content: 	space-between; /* 均等に配置 */
	margin-top: 		1%;
	margin-bottom: 		2%;
}

.campaign_box_flex_aaa{
	display: flex; 
	margin-top: 1%;
}

.end_camp{
	text-decoration: line-through;
}


.campaign_box_aa{
	text-align: center;
	background-color: rgb(255, 255, 255);
	border: 1px solid #d6d6d6;
	padding: 1%;
	border-radius: 5px;
	flex: 					0 1 calc(33.333% - 1%); /* 3カラム分の幅 - ギャップ分 */
	box-sizing: 			border-box; /* パディングやボーダーを幅に含める */
	margin: 				1% 0;
	
}

.campaign_box_b{
	text-align: center;
	background-color: rgb(255, 255, 255);
	padding: 1%;
	border-radius: 5px;
	flex: 					0 1 calc(33.333% - 1%); /* 3カラム分の幅 - ギャップ分 */
	box-sizing: 			border-box; /* パディングやボーダーを幅に含める */
	margin: 				1% 0;
}

.campaign_list_ttl{
	width: 100%;
	margin-top: 3%;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	/* -webkit-box-orient: vertical; */
	font-size: 0.9rem;
	line-height: 1.3;
	text-align: justify;
	font-weight: bold;
}

.campaign_list_ttl_off{
	width: 100%;
	margin-top: 3%;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	font-size: 0.9rem;
	line-height: 1.3;
	text-align: justify;
	font-weight: bold;
	color:#b7b7b7;

}

.before{
	color: #2b69f4;
	font-weight: bold;
	float: left;

}

.on{
	color: #ff253a;
	font-weight: bold;
	float: left;

}

.off{
	color:#b7b7b7;
	font-weight: bold;
	float: left;

}

.campaign_list_time{
	width: 100%;
	height: 20px;
	margin-top: 1%;
	font-size: 0.9rem;
	text-align: justify;
}

.campaign_list_txt{
	width: 100%;
	height: 20px;
	margin-top: 1%;
	font-size: 0.8rem;
	text-align: center;
	color: #ff253a;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	line-height: 1.3;
	text-align: justify;
	font-weight: bold;
}

.campaign_list_time_off{
	width: 100%;
	height: 40px;
	margin-top: 1%;
	font-size: 0.9rem;
	text-align: justify;
	color:#b7b7b7;

}

.campaign_list_banner{
   width: 100%;

}

.point_box2 span{
	font-size: 	150%;
	color: 	#3568b1;
	text-decoration:	underline;
}
@media all and (max-width: 1100px) {
	.campaign_list_time{
		margin-bottom: 2%;
		font-size:12px;
	}

	.campaign_list_time_off{
		margin-bottom: 2%;
		font-size:12px;
	}

}


@media all and (max-width: 990px) {
	.fuchidori {
		font-size: 230%;
		padding-left: 10%;
	}

	.fuchidori_2 {
		font-size: 230%;
		padding-left: 10%;
	}

	.background-marker {
		font-size: 230%;

	}

	.campaign_bb{
		width: 70%;
		text-align: center;
		padding-top: 3%;
	}

	.campaign_box1_b {
		padding-top: 10%;
		padding-bottom: 10%;
	}

	.campaign_box_flex{
		display: block;
	}
	.campaign_box{
		width: 100%;
		padding-top: 2%;
		padding-bottom: 2%;
		text-align: center;
	}

	.campaign_box11 img{
		margin-bottom: 5%;
		float:inline-start;
		padding-right: 0;
		
	}
}

@media all and (max-width: 915px) {
	.campaign_box{
		width: 100%;

		}
		.campaign_box11{
			width: 100%;
			text-align: center;
			margin-top: 2%;
		}

		.campaign_box111{
			width: 100%;
			text-align: center;
			margin: 0;
			margin-top: 2%;
		}
}

@media all and (max-width: 850px) {

	.campaign_box_flex_aa{
		display: block; 
		margin: auto;
		margin-top: 5%;
		margin-bottom: 7%;
	}
	.campaign_box_flex_aaa{
		display: block; 
		margin: auto;
		margin-top: 5%;
	}

	.campaign_box_aa{
		width: 95%;
		margin-bottom: 2%;
		margin-left: auto;
		margin-right: auto;
	
	}


	.campaign_list_time{
		margin-bottom: 2%;
	}

}

@media all and (max-width: 830px) {
	.campaign_text_aa{
		width: 100%;
		color: #050505;
		font-size: x-large;
		font-weight: bold;
		padding-bottom: 5%;
			}
		
}
			

@media all and (max-width: 800px) {
	.campaign_box4{
		width: 100%;
		display: block;
	}

	.campaign_aa {
		width: 50%;
		margin: auto;
	}
	.campaign_bb{
		width: 100%;
		margin: auto;
	}

}

@media all and (max-width: 702px) {
	.fuchidori {
		padding-left: 5%;
	}

	.fuchidori_2 {
		padding-left: 5%;
	}

	.background-marker{
		font-size: -webkit-xxx-large;

	}

}

@media all and (max-width: 595px) {
	.fuchidori-marker {
		font-size: smaller;
		padding-left: 2%;
	}

	.background-marker{
		font-size: smaller;

	}

	.fuchidori {
		margin-top: 5%;
		margin-bottom: 0;
	}

	.fuchidori_2 {
		margin-top: 1%;
		margin-bottom: 1%;
	}

}

@media all and (max-width: 462px) {
	.fuchidori-marker {
		font-size: 30px;
		padding-left: 2%;
	}

	.background-marker{
		font-size: 30px;

	}
	.fuchidori_2 {
		margin-top: 1%;
		margin-bottom: 1%;
		padding-left: 2%;

	}
}


/* -------キャンペーン一覧------- */


/* -------大船渡情報エリア------- */
#ofunato_guide {
	padding:			35px 0 55px 0;
}

#ofunato_guide p {
	position:			relative;
	margin-bottom:		55px;
	color:				#fff;
	font-weight:		bold;
	text-align:			center;
	border-radius:		40px;
	margin-bottom:		20px;
	padding: 10px 0;
	font-size: 25px;
	background-color: #0f4178;
}

@media all and (max-width: 700px) {

	#ofunato_guide {
		box-sizing:			border-box;
		padding:			35px 6.6% 55px;
	}
}

/*加盟店向けページ*/
/*----------------------------------------*/
#store section{
	max-width: 						none;
}

#store section.main_img{
	width: 							100%;
	max-width: 						2000px;
	margin: 						auto;
}

/* kokokara */



.back {
	margin-bottom: 1%;
}

dl.table_ly {
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
	/* border: 1px solid #ccc; */
	border-bottom: none;
}

dl.table_ly dt {
	padding: 12px;
	width: 100%;
	border-right: none;
	font-weight: bold;
	background: #f5f5f5;
	border-bottom: none;

}

.cam_ttl {
	padding: 12px;
	width: 100%;
	border-right: none;
	font-weight: bold;
	background: #acdbdb;
	border-bottom: none;

}

dl.table_ly dd {
	width: 100%;
	background: #fff;
	padding: 12px;
	/* border-bottom: 1px solid #ccc; */
}

/*3周年キャンペーン*/
.kanko_back_f{
	background-color: #da7655;
	text-align: center;
	color: #fff;
	padding: 1% 0;
}

.kanko_back_ff{
	background-color: #c2e9da42;
	background-image:	url(../images/img10.png);
	padding-top: 5%;
	padding-bottom: 3%;
	text-align: center;
	color: #fff;
}


.kanko_inner3{
	width: 100%;
	max-width: 1500px;
	margin: auto;
	padding-bottom: 1%;
}

.kanko_inner4{
	width: 100%;
	max-width: 1050px;
	margin: auto;
}

.midashi_block{
	padding: 2%;
}

.midashi_cont{
	width: 95%;
	margin: auto;
}

.midashi_1{
	position: relative;
	padding: 0.6em;
	background: #da7655;
	color: #fff;
	font-weight: bold;
}

.midashi_1:after{
	position: absolute;
	content: '';
	top: 100%;
	left: 30px;
	border: 15px solid transparent;
	border-top: 15px solid #da7655;
	width: 0;
	height: 0;
}

.di_in_a{
	display: flex;
	margin: 0 auto;
	width: 100%;
	max-width: 1200px;
}

.di_in_aa img{
	width: 96%;
	text-align: center;
}

.di_in_b{
	display: none;
}
.midashi_block .shoplist li{
	padding-bottom: 0.5em;
}

.kameiten{
	width: 100%;
	text-align: center;
}

.kameiten a{
	display: inline-block;
	padding: 2%;
	text-decoration: underline;
	color: #00f ;
}

.benefits{
	background: #fdd100;
	padding: 2%;
}

.special_a{
	font-weight: bold;
	font-size: large;
	text-align: end;
}
@media all and (max-width: 800px) {
	.di_in_a{
		display: none;
	}

	.di_in_aa img{
	width: 100%;
}

	.di_in_b{
		display: block;
		text-align: center;
	}

	.back {
	margin-bottom: 0%;
}

}
/* kokomade */

/* 3倍キャンペーン */
.campaign{
	width: 100%;
	/* background-color: #979797; */
	height: 500px;
	margin-bottom: 5%;
}

.campaign_a {
	width: 30%;
	float: left;
	background-color: pink;
}

.campaign_aa {
	width: 30%;
	padding-left: 3%;
}


.campaign_b{
	width: 70%;
	background-color: rgb(42, 43, 43);
	float: right;
}

.campaign_bb{
	width: 70%;
	text-align: center;
	padding-top: 8%;
}

.campaign_text{
	width: 100%;
	/* background-color: rgb(42, 43, 43); */
	text-align: center;

}
.campaign_text_aa{
	width: 100%;
	/* text-align: center; */
	color: #050505;
	font-size: xx-large;
	font-weight: bold;
	padding-left: 2%;
	padding-bottom: 5%;

}
.campaign_box_flex{
	display: flex;
	width: 100%;
}
.campaign_box{
	display: flex; 
	width: 50%;
	padding-top: 5%;
	padding-bottom: 2%;
}
.campaign_box1{
	height: auto;
	padding-bottom: 2%;
	margin-bottom: 3%;
	text-align: center;
}

.campaign_box11{
	width: 100%;
	text-align: center;
}

.campaign_box11 img{
	margin-bottom: 5%;
	/* float: right;
	padding-right: 30%; */
}

.campaign_box111{
	width: 100%;
	text-align: center;
	margin-left: 1%;
	margin-right: 1%;
}

.campaign_box2{
	width: 100%;
	text-align: center;
}

.campaign_box2_a{
	width: 100%;
	text-align: center;
	padding-top: 1%;
	padding-bottom: 1%;
	margin-top: 2%;

}

.campaign_box1_a{
	font-size:medium;
	font-weight: bold;
	text-align: right;
	padding-top: 10%;
	padding-right: 5%;
	
}

.campaign_box1_aa{
	font-size: large;
	font-weight: bold;
	text-align: center;
	margin-bottom: 1%;
	color: #fff;
}

.campaign_box1_aaa{
	font-size: large;
	font-weight: bold;
	padding-bottom: 1%;
	color: #fff;

}

.campaign_box1_aaa a{
	color: #ffffff;
}

.campaign_box1_bbb{
	font-size: 200%;
	font-weight: bold;
	padding-top: 1%;
	color: #000000;
	text-shadow: 
    -2px -2px 0 white,
     2px -2px 0 white,
    -2px  2px 0 white,
     2px  2px 0 white,
     0px  0px 4px white; 
}


.campaign_box1_bbb a{
	color: #ffffff;
}
.stripe-marker_b{
	font-size: 200%;
}

.campaign_box1_c{
	background-color: #ffffff;
	color: #050505;
	font-size: xxx-large;
	font-weight: bold;
	padding-top: 20%;
	padding-bottom: 20%;
}

.campaign_box1_d{
	background-color: #ffffff;
	color: #050505;
	font-size: xxx-large;
	font-weight: bold;
	padding-bottom: 20%;
	padding-top: 20%;

}

.campaign_box1_e{
	background-color: #ffffff;
	color: #050505;
	font-size: xxx-large;
	font-weight: bold;
	padding-top: 20%;
	padding-bottom: 20%;
}

.campaign_text_a{
	float: right;
	margin-bottom: 5%;
}


.campaign_box4{
	width: 100%;
	display: flex;
}

.campaign_ttl{
	width: 300px;
	height: 50px;
	border-radius: 50px;
	background-color: #ea6120;
	margin: auto;
	margin-top: 3%;
}

.campaign_ttl_b{
	width: 300px;
	height: 50px;
	border-radius: 50px;
	background-color: #ea6120;
	margin: auto;
	margin-top: 3%;
}

.campaign_ttl_c{
	width: 300px;
	height: 50px;
	border-radius: 50px;
	background-color: #f8ffab;
	margin: auto;
	margin-top: 3%;
}

.campaign_ttl_text{
	text-align: center;
	padding-top: 4%;
	font-weight: bold;
	color: #fff;
}


.point_area {
	margin-top: 2%;

}

.point_box2{
	width: 100%;
}

.point_box2_a{
	width: 100%;
}

.point_box1_aa{
	font-weight: bold;
	padding: 4%;
}

.point_box1_aa_img{
	font-weight: bold;
	padding: 4%;
	text-align: center;
}

.point_box2_a span{
	color: #ff253a;
}


.point_box1_a{
	font-size: x-large;
	font-weight: bold;
	padding: 5%;
}

.CPN_innr{
	padding-top: 5%;
}

.top_bag{
	width: 100%;
	background-color: #fb2c0c;
	/* margin-bottom: 3%; */
}

.top_bag_b{
	width: 100%;
	 background-image: repeating-linear-gradient(90deg, #ffdd7d, #ffdd7d 62px, transparent 62px, transparent 110px);
}

.top_bag_c{
	width: 100%;
	background-color: #ff077f;
	/* margin-bottom: 3%; */
}

@media all and (max-width: 700px) {

	.campaign_box1_bbb{
		font-size: 100%;
		padding-bottom: 2%;
	}

	.campaign_ttl_text{
		text-align: center;
		padding-top: 3%;
		font-weight: bold;
		font-size: smaller;
	}

	.campaign_ttl_b{
		width: 180px;
		height: 40px;
		border-radius: 50px;
		margin: auto;
		margin-top: 2%;
	}

	.campaign_ttl{
		width: 180px;
		height: 40px;
		border-radius: 50px;
		margin: auto;
		margin-top: 2%;
	}

	.campaign_ttl_c{
		width: 180px;
		height: 40px;
		border-radius: 50px;
		margin: auto;
		margin-top: 2%;
	}
}

@media all and (max-width: 990px) {
	.campaign_box_flex{
		display: block;
	}
}

@media all and (max-width: 915px) {
	.campaign_box{
		width: 100%;
		}
	}