@charset "utf-8";
/* CSS Document */

body {

	padding: 0;
	margin: 0;
}

ul {
	list-style: none;
	padding: 0;
	margin: 0;
}


a {
	text-decoration: none;
	transition: 0.3s;
}



p {
	line-height: 1.4;
}

img {
	width: 100%;
	vertical-align: bottom;
}

.pc_only {
	display: block;
}

@media screen and (max-width: 768px) {
	.pc_only {
		display: none;
	}
}

.sp_only {
	display: none;
}

@media screen and (max-width: 768px) {
	.sp_only {
		display: block;
	}
}



.logo {
	position: absolute;
	z-index: 2;
	width: 165px;
	left: 10px;
	top: 19px;
}



/****************/


.navy {
	background-color: #FFFFFF;
	padding: 3em 10px 2em 10px;
	box-shadow: 0px 11px 15px -10px rgba(0, 0, 0, 0.80);
	position: relative;
	z-index: 10;
}


.timetime-logo {
	max-width: 410px;
	margin: 0 auto;
	width: 100%;

}



@media screen and (max-width: 1290px) {
	.navy {
		padding: 3em 10px 1em 10px;
	}

	.logo {
		width: 135px;
	}

	.timetime-logo {
		max-width: 324px;
	}
}

@media screen and (max-width: 855px) {
	.logo {
		width: 90px;
		top: 20px;
	}
}




@media screen and (max-width: 768px) {
	.navy {
		padding: 3em 10px 1em 10px;
	}


	.timetime-logo {
		width: 76%;
		padding-top: 8%;
	}
}




/**************fv*************/
.all-wrap {
	background: #020202;
	background: linear-gradient(180deg, rgba(2, 2, 2, 1) 0%, rgba(0, 55, 97, 1) 64%, rgba(0, 19, 80, 1) 100%);
	font-family: "Noto Serif JP", serif;
}

.fv-inner {
	max-width: 85%;
	margin: 0 auto;
	padding-top: 2em;
	padding-bottom: 2em;
}


.sub-ttl {
	max-width: 39%;
	margin: 0 auto;
}

.main-ttl {
	max-width: 820px;
	width: 95%;
	margin: 0 auto;
	margin-top: 2%;
}


.day-ttl {
	max-width: 40%;
	margin: 0 auto;
	margin-top: 3%;
}

.fvimgFlex {
	display: flex;
	justify-content: center;
	align-items: center;

	margin-top: -4%;
	gap: 1em;

}


@media screen and (max-width: 768px) {
	.fvimgFlex {
		flex-direction: column-reverse;
	}
}

.fv-logo {
	max-width: 30%;
	padding: 5em 5px 0;
}

.fv-img {
	max-width: 28%;

	padding: 5px;
}


/********toku kazari********/

.toku-ig1, .toku-ig2 {
	position: absolute;
}

.toku-ig1 {
	width: 10%;
	left: 4%;
	top: 5%;
}

.toku-ig2 {
	width: 10%;
	right: 3%;
	bottom: 16%;
}





/*特典ポイント*/


#tokuten {
	margin-top: 5em;
	padding: 0 0 10em;
	position: relative;
	background-image: linear-gradient(180deg, rgba(8, 23, 54, 0), rgba(5, 23, 54, 0.8) 30%, rgba(8, 23, 54, 0.8));
}

@media screen and (max-width: 768px) {
	#tokuten {
		padding: 0 0 5em;
	}
}


.tokuten-title {
	max-width: 253px;
	margin: 0 auto;
	width: 100%;
	margin-top: -3em;
}







.point-wrap {
	background-color: #EDE6CD;
	max-width: 880px;
	margin: 0 auto;
	width: 75%;
	/*	padding: 10px;*/
	border-radius: 40px;
	position: relative;
	z-index: 1;


}


.gold-line {
	border: solid #94825B 4px;
	border-radius: 40px;
	padding-bottom: 20px;
	padding-left: 10px;
	padding-right: 10px;
}

@media screen and (max-width: 768px) {
	.gold-line {
		border-radius: 20px;
	}
}




.tokuten-kikan {
	text-align: center;
	/*	margin-top: 1em;*/
}

.tokuten-kikan p {
	text-align: center;
	color: #604B2B;
	font-weight: bold;
	font-size: 1.9em;
	padding-bottom: 5px;
	display: inline-block;
	padding-left: 15px;
	padding-right: 15px;
}




.point-flex {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: -1em;
}


.point-bk {
	background-color: #007F5B;
	padding: 5px;
	margin-top: 20px;
}

.point-bk p {
	text-align: center;
	font-size: 1.5em;
	color: #fff;
}

.point-number {
	font-size: 7em;
	color: #604B2B;
	font-weight: bold;
	padding-left: 10px;
}


.point-small {
	font-size: 0.6em;
}

.point-notice {
	font-size: 1em;
	text-align: center;
	/*	border-top: solid 1px #404040;*/

	margin: 0 auto;
	/*	padding-top: 10px;*/
}



.target-brand {
	max-width: 570px;
	margin: 0 auto;
	border-top: solid 1.5px #7A6B1F;
	padding-top: 2em;
	margin-top: 4em;
}

.targetBrand-title {
	font-size: 1.4em;
	text-align: center;
	padding: 10px;
	background-color: #fff;

	font-weight: bold;
	color: #7A6B1F;
	display: table;
	margin: 0 auto;
	margin-top: -2.5em;
}

.brand-list {
	display: flex;
	justify-content: space-around;
	max-width: 385px;
	margin: 0 auto;
}


.brand-list li {
	width: 100%;
	max-width: 177px;
	padding: 7px;
}


@media screen and (max-width: 768px) {
	.tokuten-title {
		width: 57%;
		margin-top: -2.5em;
	}

	.tokuten-kikan p {
		font-size: 1.5em;
	}

	.point-bk p {
		font-size: 0.9em;
	}

	.point-number {
		font-size: 5em;
	}

	.point-notice {
		font-size: 0.9em;
	}

	.targetBrand-title {
		font-size: 1.2em;
		margin-top: -3em;
	}
}








/**************pick up**************/

#pickup-con {
	padding: 12em 0 10em;
	background-image: url(../img/pickup-bg.png?aaa);
	background-repeat: repeat-y;
	background-size: contain;
	background-position: top center;
	background-color: #D2C17C;
	border-top: #977B3F solid 20px;
	border-bottom: #977B3F solid 20px;
}

@media screen and (max-width: 768px) {
	#pickup-con {
		background-size: 200%;
		border-top: #977B3F solid 10px;
		border-bottom: #977B3F solid 10px;
	}

}


.pickup-wrap {
	max-width: 1300px;
	margin: 0 auto;
	border: solid 4px #997D40;
	background: rgba(255, 255, 255, 0.7);
	padding: 3em 10px 5em;
	margin-top: -8em;
}

@media screen and (max-width: 768px) {
	.pickup-wrap {
		border: solid 4px #997D40;
		padding: 5em 10px 5em;
		margin-top: -4.5em;
	}

}


.pickup-ttl {
	max-width: 800px;
	width: 90%;
	/* margin: 0 auto; */
	position: relative;
	left: 50%;
	transform: translateY(0%) translateX(-50%);
	z-index: 10;

}



/****************item*****************/

.item-box {
	max-width: 980px;
	margin: 0 auto;
	margin-top: 5em;
	display: flex;
	justify-content: space-between;
	align-items: center;

	margin-bottom: 5em;
}

.item-img {
	max-width: 48%;
	position: relative;
}

.recomend-tag {
	position: absolute;
	width: 32%;
	top: 0%;
	left: 0%;
}

.item-star {
	position: absolute;
	width: 22%;
	bottom: 0%;
	left: 0%;
}




.item-info {
	width: 99%;
	padding: 0 20px 0 0;
}

.itemBrand {
	display: flex;
	justify-content: flex-start;
	max-width: 50%;
	gap: 0.5em;
}

.itemBrand li {
	padding: 4px;
	background-color: #ffffff;
	border: #000000 solid 1px;
}


.item-name {
	font-size: 1.8em;
	text-align: left;
	font-weight: bold;
	color: #604B2B;
	border-bottom: #604B2B solid 1px;
	padding-bottom: 0.3em;
	margin: 0.5em 0 0.3em;
}



.ravel {
	background: #F1D969;
	background: linear-gradient(180deg, rgba(241, 217, 105, 0.99) 0%, rgba(218, 186, 59, 1) 34%, rgba(219, 191, 101, 1) 100%);
	color: #fff;
	font-size: 0.9em;
	font-weight: 500;
	border-radius: 10px;
	padding: 5px;
	display: inline-block;
}


.price-box {
	margin-top: 0.5em;
	display: flex;
	justify-content: flex-end;
}


.base_price {
	text-align: end;
	font-size: 2.1em;
	color: #604B2B;
	font-weight: bold;

	margin-top: 5px;
}

.small {
	font-size: 0.6em;
}

@media screen and (max-width: 860px) {
	.price-box {
		display: block;
	}

	.txt-left {
		text-align: left;
	}
}

@media screen and (max-width: 768px) {

	.price-box {
		display: flex;
	}

	.base_price {
		font-size: 1.7em;
	}

	.small {
		font-size: 0.45em;
	}


}

@media screen and (max-width: 480px) {
	.price-box {
		display: block;
	}
}

.item-copy {
	color: #604B2B;
	font-weight: 600;
}

.red-bk {
	background: #C4173F;
}


.item-line {
	max-width: 45%;
	margin: 0 auto;
}



.item-notice p {
	text-align: center;
	color: #fff;
	font-size: 1.1em;
	font-weight: bold;
	margin: 3em auto;
}



.brad-ttl {
	max-width: 1100px;
	margin: 0 auto;
	width: 90%;
}

/*************対象店舗****************/
#brand-con {
	padding: 10em 0;
	background-image: url(../img/tenpo-bg.png?aaa);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	background-color: #163171;
}

@media screen and (max-width: 768px) {
	#brand-con {
		padding: 5em 0;
	}
}


/*********************店舗一覧**********************/
/*
#list-brand{
	margin-top: -11em;
	background-color: #E3F8FF;
	    padding-top: 4em;
	border-radius: 200px 200px 0 0;
	padding-bottom: 5em;
}


@media screen and (max-width: 768px){
	#list-brand{
		border-radius: 80px 80px 0 0;
	}
}
*/


.list-brand_wrap {
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 1em;
}






/***********LIST*************/
.bland-list-inner {
	max-width: 880px;
	margin: 0 auto;
	background-color: #fff;
	border: solid 1px #6D8AB2;
	box-shadow: 2px 2px 7px 0px rgba(163, 163, 163, 0.60);
	padding: 30px 3em 45px 3em;
	padding-top: 2em;
	position: relative;
	border-radius: 20px;
	margin-top: 3em;
}


.bland-list-inner::after {
	position: absolute;
	right: 1.5%;
	bottom: 47px;
	content: "";
	background: url("../img/scroll.png") no-repeat;
	background-position: center;
	background-size: contain;
	width: 30px;
	height: 97px;
}


/*
.bland-list-inner::before{
	position: absolute;
    right: 8%;
    top: -7px;
	content: "";
	 background:url("../img/scroll.png") no-repeat;
	    background-position: center;
	background-size: contain;
	    width: 30px;
    height: 97px;
	transform: rotate(-90deg);
}
*/







@media screen and (max-width: 768px) {

	.bland-list-inner {
		padding: 5% 5% 70px 5%;
		margin-top: 1em;
	}



	.bland-list-inner::after {
		content: "";
		background: url("../img/scroll2.png") no-repeat;
		background-position: center;
		background-size: contain;
		right: 8px;
		bottom: 6px;
		width: 63px;
		height: 37px;
	}

}



/**********list**********/

.table-wrap {
	max-width: 1050px;
	margin: 0 auto;
	font-family: "Noto Sans JP", serif;
	overflow: auto;
	max-height: 70vh;
	margin-top: 2em;
}


table {
	width: 100%;
	margin: 0 auto;

	border-collapse: separate;
}

th, td {
	min-width: 106px;
	height: 50px;
	vertical-align: middle;
	padding: 0 4px;
	/* border: 1px solid #fff;*/
}


@media screen and (max-width: 768px) {
	th, td {
		min-width: 92px;
	}

	table {
		font-size: 0.85em;
	}
}


.white-line {
	border-right: 2px solid #fff;
}

.gry-line {
	border-right: 2px solid #E4E4E4;
}


.fixed01,
.fixed02 {
	position: sticky;
	top: 0;
	left: 0;
	color: #fff;
	/*  background: #333;*/



}

.fixed01 {
	z-index: 10;
	color: #353535;
	background: #fff;
	width: 130px;
}

.fixed02 {
	z-index: 1;
}


.fixed-tenpo {
	position: sticky;
	top: 0;
	left: 0;
	color: #353535;
	background: #fff;
	z-index: 9;
}




.txt {
	text-align: center;
	color: #fff;
}



.bk-b {
	background: #171C61;
}

.bk-g {
	background: #DBEAFF;
}

.bk-g p {
	color: #1F1F1F;
}

.bk-skyb {
	background: #171C61;
}

.bk-skyb .txt {
	color: #1F1F1F;
}


.bk-b, .bk-g, .bk-skyb {
	position: sticky;
	top: 0;
	z-index: 20;
}



.sticky-row1 {
	position: sticky;
	top: 0;
	z-index: 20;
	padding: 0 20px;
}

.sticky-row2 {
	position: sticky;
	top: 49px;
	z-index: 20;
}

.sticky-row3 {
	position: sticky;
	top: 99px;
	/* 78px * 2 */
	z-index: 20;
}




.fixed-tenpo-txt {
	text-align: center;
}


.tenpo-bk {
	background: #F0F0F0;
}


.top-left-cell {
	z-index: 25;
}


@media screen and (max-width: 768px) {
	#list-brand .title-img {
		padding: 0 1em;
	}
}



/************ボタン**************/
.btn-link {

	max-width: 600px;

	display: block;
	text-align: center;
	margin: 0 auto;
}


.app_btn {
	max-width: 600px;
	margin: 2em auto 0 auto;
	background: #D2C17C;
	background: linear-gradient(180deg, rgba(197, 172, 117, 1) 0%, rgba(155, 127, 67, 1) 100%);
	border-radius: 50px;
	padding: 28px 5px;
	box-shadow: 2px 3px 2px 0px rgba(0, 0, 0, 0.33);

}

.app_btn.shop {
	background: linear-gradient(180deg, rgba(229, 207, 157, 1) 0%, rgba(224, 184, 98, 1) 100%);

}

.app_btn p {
	text-align: center;
	font-size: 1.4em;
	color: #fff;
	font-weight: bold;
	position: relative;

}


.app_btn p::after {
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -4px;
	transform: rotate(45deg);
	/*アニメーションの指定*/
	transition: all .3s;
}


.app_btn p:hover::after {
	right: 10px;
}

.app_btn:hover {
	box-shadow: none;
	transition: all .3s;
}

@media screen and (max-width: 768px) {
	.app_btn p {

		font-size: 1em;
	}

	.app_btn {
		max-width: 300px;
		padding: 20px 5px;
	}

	.btn-link {
		max-width: 300px;
	}

	.app_btn p::after {
		right: 9px;
	}
}



/**************SP***************/
@media screen and (max-width: 1700px) {
	.fv-inner {
		max-width: 100%;
	}
}


@media screen and (max-width: 1310px) {
	.pickup-inner {
		padding: 0 10px;
	}
}


@media screen and (max-width: 1000px) {
	.main-ttl {
		max-width: 86%;
	}

	.day-ttl {
		max-width: 42%;
	}

	.fv-logo {
		max-width: 43%;
	}

	.fv-img {
		max-width: 31%;
	}
}


@media screen and (max-width: 768px) {
	.point-wrap {
		width: 95%;
		border-radius: 20px;
	}

	.toku-ig1, .toku-ig2 {
		display: none;
	}


	.fv-wrap {
		background-size: cover;
	}


	.sub-ttl {
		max-width: 64%;
	}

	.main-ttl {
		max-width: 100%;
	}

	.day-ttl {
		max-width: 90%;
		margin-top: 5%;
	}

	.fv-logo {
		max-width: 80%;
		margin: 0 auto;
		padding: 5px;
	}

	.fv-img {
		max-width: 80%;
		margin: -1em auto;
	}


	#pickup-con {
		padding: 5em 0;
	}

	.pickup-ttl {
		width: 97%;
	}


	.item-box {
		display: block;
		margin-top: 0em;
		margin-bottom: 2em;
	}

	.item-img {
		max-width: 100%;
	}

	.item-info {
		margin-top: 1em;
		padding: 0;
	}

	.ravel {
		font-size: 0.8em;
	}

	.item-star {
		width: 18%;
		left: 5%;
	}

	.item-line {
		max-width: 84%;
		margin: 4em auto;
	}

	.itemBrand {
		max-width: 220px;
	}

	.item-name {
		font-size: 1.4em;
	}

	.item-notice p {
		font-size: 0.8em;
	}
}




/*スクロールアップ*/
.scroll_up.on {
	transform: translateY(0);
	opacity: 1.0;
}

.scroll_up {
	transition: 0.8s ease-in-out;
	transform: translateY(30px);
	opacity: 0;
}

.scroll-sp {
	right: 6px;
	top: 47px;
	max-width: 87px;
	height: 28px;
	position: relative;
	z-index: 21;
	margin: 0 0 auto auto;
	width: 100%;

}

@media screen and (max-width: 627px) {
	.scroll-sp {
		top: 54px;
	}
}

.top-bg {
	background-image: url(../img/top-bg.png?aaa);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	background-color: #163171;
}