@charset "UTF-8";

/* LP内共通スタイル
======================================================================== */
a.txtLink {
	text-decoration: underline;
	color: #0000ff;
	display: inline;
}

/* KV下・キャンペーン概要
======================================================================== */
.contsBlock01{
	position: relative;
	padding: 6.8% 0 7.8%;
	background: transparent url("../img/bg_01.png") repeat 0 0;
}
.conts01Img01{
	max-width: 840px;
	width: 87.5%;
	margin: 0 auto;
}
.conts01Txt01{
	max-width: 800px;
	width: 83.4%;
	margin: 4.7% auto 0;
	font-size: 18px;
	line-height: 1.5;
}
/* SP Only Style */
@media only screen and (max-width: 640px) {
	.conts01Txt01{
		font-size: 14px;
	}
}

/* 参加条件
======================================================================== */
.contsBlock02{
	max-width: 872px;
	width: 90.84%;
	margin: 8.4% auto 10.5%;
	border-radius:10px;
	border: 4px solid #ff5a00;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
.contsBlock02.simpleWrap {
  border: none;
  margin: 8.4% auto 0;
}
.conts02Ttl01{
	background: #ff5a00;
}
.conts02Ttl01 img{
	border-radius:8px 8px 0 0;
}
.conts02Inner{
	padding: 6.84% 0 6.4%;
}
.conts02Step01Txt01,
.conts02Step01Txt02,
.conts02Step01Txt03,
.conts02Step02Txt01,
.conts02Step02Txt02,
.conts02Step02Txt03,
.conts02Step02Txt04,
.conts02Step01Btn01,
.conts02Step02Btn01 {
	max-width: 744px;
	width: 86.2%;
	margin: 0 auto;
}
.conts02Step01Txt02{
	margin-top: 5.2%;
}
.conts02Step01Btn01,
.conts02Step02Btn01 {
	margin: 2.2% auto 0;
}
.conts02Step01Txt03{
	margin-top: 1.4%;
}
.conts02Step02Txt01::before{
	content: "";
	display: block;
	max-width: 800px;
	width: 100%;
	margin: 6.8% auto 2.9%;
	padding-top: 5.15%;
	background: transparent url("../img/conts02_line01.png") no-repeat 0 0;
	background-size: 100% auto;
}
.conts02Step02Txt02{
	margin-top: 4.4%;
}
.conts02Step02Txt03{
	margin-top: 4.6%;
	font-size: 21px;
	font-weight: bold;
	line-height: 1.3;
}

.conts02Step02Txt04{
	margin-top: 3%;
	font-size: 16px;
	line-height: 1.5;
}
/* PC Only Style */
@media only screen and (min-width: 641px) {
	.conts02Step02Txt03{
		max-width: 744px;
		width: 86.2%;
	}
}
/* SP Only Style */
@media only screen and (max-width: 640px) {
	.conts02Step02Txt03,
	.conts02Step02Txt04{
		font-size: 14px;
	}
}


/* キャンペーンの詳細とご注意事項
======================================================================== */
.cpNotes {
	margin-top: 8.4%;
}


/* フローティングボタン
======================================================================== */
.floatSpBnr {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	display: none;
	z-index: 2;
}
.floatSpLink {
	display: block;
}
.floatSpBnr img {
	width: 100%;
}
.floatPcBnr {
	height: 239px;
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	display: block;
	z-index: 2;
}
a.floatPcLink {
	display: block;
}
@media only screen and (max-width: 640px) {
	.floatSpBnr,a.floatSpLink {
		display: block;
	}
	.floatPcBnr,a.floatPcLink {
		display: none;
	}
	#inner_footer, .floatSpPb {
		padding-bottom: 20% !important;
	}
}

/* フローティングバナーを光らせる */
@keyframes shiny {
	0% {
		transform: scale(0) rotate(25deg);
		opacity: 0;
	}

	50% {
		transform: scale(1) rotate(25deg);
		opacity: 1;
	}

	100% {
		transform: scale(50) rotate(25deg);
		opacity: 0;
	}
}
@-webkit-keyframes shiny {
	0% {
		transform: scale(0) rotate(25deg);
		opacity: 0;
	}

	50% {
		transform: scale(1) rotate(25deg);
		opacity: 1;
	}

	100% {
		transform: scale(50) rotate(25deg);
		opacity: 0;
	}
}
.cpCode {
  max-width: 880px;
  width: 91.7%;
  margin: 0 auto;
  padding: 0;
}

