@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%;
}

.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%);	
	padding-bottom: 5em;
	font-family: "Noto Serif JP", serif;
}

.fv-wrap{
	background: url("../img/fv-bk.png") no-repeat;
	background-position:top center;
	background-size: contain;	
}

.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: 77%;
    margin: 0 auto;
    margin-top: -7%;
}


.day-ttl{
    max-width: 40%;
    margin: 0 auto;
    margin-top: -4%;
}

.fvimgFlex{
    display: flex;
    justify-content: center;
    align-items: center;

    margin-top: -4%;
    gap: 1em;

}

.fv-logo{
    max-width: 40%;

	padding: 5px;
}

.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 10px;
	position: relative;
}


.tokuten-title {
	max-width: 253px;
	margin: 0 auto;
	width: 100%;
	margin-top: -3em;
}







.point-wrap{
background-color: #fff;
	max-width: 880px;
	margin: 0 auto;
	width: 75%;
/*	padding: 10px;*/
	border-radius: 10px;
	position: relative;
	z-index: 1;
	
	
}


.gold-line{
	border: solid #D2B731 4px;
	border-radius: 10px;
	padding-bottom: 20px;
    padding-left: 10px;
    padding-right: 10px;
}




.tokuten-kikan{
	text-align: center;
/*	margin-top: 1em;*/
}
.tokuten-kikan p{
	text-align: center;
	color: #7A6B1F;
	font-weight: bold;
	font-size: 1.9em;
	padding-bottom: 5px;
	border-bottom: solid 4px #BEA423;
	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:#D2B731;
	padding: 5px;
	margin-top: 20px;
}

.point-bk p{
	text-align: center;
	font-size: 1.5em;
	color: #fff;
}

.point-number{
	font-size: 7em;
	color: #D2B731;
	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;*/
	width: 80%;
	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-top: 4em;
	margin-top: 12em;
}


.pickup-wrap{
	max-width: 1300px;
	margin: 0 auto;
	border: solid 4px #fff;
background: rgba(255, 255, 255, 2.1);
background: linear-gradient(180deg,rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);	
	padding: 10px;
	margin-top: 2em;
}



.pickup-bk{
	background: url("../img/pick-bk.png") no-repeat;
	background-position:top center;
	background-size:cover;

}


.pickup-ttl{
    max-width: 650px;
	width: 90%;
    /* margin: 0 auto; */
    position: relative;
    left: 50%;
    transform: translateY(-29%) translateX(-50%);	
	
}



/****************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%;
}

.itemBrand li{
	width: calc((100% - 10px) / 2);
	padding-right: 4px;
}


.item-name{
	font-size: 1.8em;
	text-align: left;
	font-weight: bold;
	color: #fff;
	margin-bottom: 5px;
}



.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{
	border-top: solid #fff 1px;
	margin-top: 0.5em;
	display: flex;
	justify-content: flex-end;
}


.base_price{
	text-align: end;
	font-size: 2.1em;
	color: #fff;
	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;
	}
}






.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{
	margin-top: 5em;
}


/*********************店舗一覧**********************/
/*
#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(210, 193, 124, 1) 0%, rgba(154, 135, 1, 1) 100%);
	border-radius: 50px;
	padding: 28px 5px;
	box-shadow: 2px 3px 2px 0px rgba(0, 0, 0, 0.33);
	
}

.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: 100%;
	}
	
	.toku-ig1,.toku-ig2{
		display: none;
	}
	
	
	.fv-wrap{
		    background-size: cover;
	}
	
	
	.sub-ttl{
		    max-width: 64%;
	}
	
	.main-ttl{
		margin-top: -3%;
		max-width: 100%;
	}
	
	.day-ttl{
		max-width: 68%;
		margin-top: 0%;
	}
	
	.fvimgFlex{
		display: block;
		margin-top: 0.5em;
	}
	
    .fv-logo {
        max-width:80%;
        margin: 0 auto;
    }	
	
    .fv-img {
        max-width: 80%;
        margin: 0 auto;
    }	
	
	
	#pickup-con{
		    margin-top: 5em;
	}
	
	.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: 64%;
	}
	
	.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;
}























