@charset "utf-8"; 

#promotion{
	width: 1060px;
	text-align: center;
	margin: 40px auto 30px;
}
#promotion p{
	line-height: 1.5;
}
#promotion .ttlWrap{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
#promotion .ttlWrap .ttl{
	font-size: 2.5rem;
	font-weight: 700;
	padding-right: 15px;
}
#promotion .ttlWrap .iconWrap{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-grow: 1;
}
#promotion .ttlWrap .iconWrap::before{
	content: '';
	flex-grow: 1;
	height: 12px;
	background-image: radial-gradient(#727171 24%, transparent 24%);
	background-size: 12px 12px;
	margin-right: 15px;
	margin-bottom: 6px;
}
#promotion .ttlWrap .icon{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: 355px;
}
#promotion .ttlWrap .icon li{
	width: 85px;
	margin: 5px 5px 0 0;
}
#promotion .ttlWrap .icon li:nth-child(-n+4){
	margin-top: 0;
}
#promotion .ttlWrap .icon li:nth-child(4n){
	margin-right: 0;
}
#promotion .ttlWrap .icon li img{
	width: 100%;
	height: auto;
}
#promotion .event{
}
#promotion .event .ttlWrap{
	margin-bottom: 30px;
}
#promotion .event .txtArea img{
	width: 100%;
	height: auto;
}
#promotion .txt .ttl span,
#promotion .event .end span{
	color: #E50012;
}
#promotion .event .txtArea{
	position: relative;
	padding: 160px 0 0 20px;
}
#promotion .event .txt{
	position: absolute;
}
#promotion .txt .ttl{
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 4px;
}
#promotion .event .txt01{
	top: 0;
	left: 20px;
}
#promotion .event .txt02{
	top: 0;
	right: 150px;
}
#promotion .event .txt03{
	top: 70px;
	right: 0;
}
#promotion .event .txt04{
	bottom: 190px;
	left: 20px;
}
#promotion .event .txt05{
	bottom: 80px;
	left: 20px;
}
#promotion .event .txt06{
	bottom: 80px;
	left: 405px;
}
#promotion .event .txt07{
	bottom: 80px;
	right: 0;
}
#promotion .event .end{
	margin-top: 130px;
}
#promotion .cp{
	margin-top: 30px;
}
#promotion .cp .ttlWrap .icon {
	width: 265px;
}
#promotion .cp .ttlWrap .icon li:nth-child(4){
	margin-top: 5px;
}
#promotion .cp .ttlWrap .icon li:nth-child(4n){
	margin-right: 5px;
}
#promotion .cp .ttlWrap .icon li:nth-child(3n){
	margin-right: 0;
}
#promotion .cp .block{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 0 0 20px;
	margin-top: 30px;
}
#promotion .cp .block img{
	align-self: flex-start;
	flex-shrink: 0;
	width: 725px;
	height: auto;
}
#promotion .cp .block .txt{
	width: 315px;
	padding-left: 15px;
	box-sizing: border-box;
}
#promotion .cp .block .txt p + .ttl {
	margin-top: 22px;
}
#promotion .cp .block .txt p{
	width: 360px;
}
#promotion  .notes{
	text-align: right;
	margin: 40px 0 20px;
}

@media screen and (max-width : 767px){
	
	#promotion{
		width: auto;
	}
	#promotion .ttlWrap{
		display: block;
		margin-bottom: 5vw;
	}
	#promotion .ttlWrap .ttl{
		font-size: 4.6vw;
		line-height: 1.4;
		padding: 0;
		margin-bottom: 0.5em;
	}
	#promotion .ttlWrap .iconWrap::before{
		content: none;
	}
	#promotion .ttlWrap .icon li{
		width: 32%;
		margin-right: 2%;
	}
	#promotion .ttlWrap .icon li:nth-child(4){
		margin-top: 2%;
	}
	#promotion .ttlWrap .icon li:nth-child(4n){
		margin-right: 2%;
	}
	#promotion .ttlWrap .icon li:nth-child(3n){
		margin-right: 0;
	}
	#promotion .event .txtArea{
		padding: 0;
	}
	#promotion .event .txt{
		position: relative;
	}
	#promotion .event .txt + .txt{
		margin-top: 10vw;
	}
	#promotion .event .txt01,
	#promotion .event .txt02,
	#promotion .event .txt03,
	#promotion .event .txt04,
	#promotion .event .txt05,
	#promotion .event .txt06,
	#promotion .event .txt07{
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
	}
	#promotion .txt .ttl{
		font-size: 4vw;
		margin-bottom: 0.3em;
	}
	#promotion .event .end{
		margin-top: 10vw;
	}
	#promotion .cp{
		margin-top: 24vw;
	}
	#promotion .cp .ttlWrap .icon{
		width: auto;
	}
	#promotion .cp .block{
		display: block;
		padding: 0;
		margin: 5vw 0 0;
	}
	#promotion .cp .block img{
		width: 100%;
	}
	#promotion .cp .block .txt{
		width: auto;
		padding: 0;
		margin: 6vw 0 0;
	}
	#promotion .cp .block .txt p{
		width: auto;
	}
	#promotion .cp .block .txt p + .ttl{
		margin-top: 10vw;
	}
	#promotion .notes{
		margin: 6vw 0 10vw;
	}
	
}
@media (orientation: landscape) and (max-width : 767px){


}