@charset "utf-8";
/* CSS Document */
.float_clear{
	clear: both;
}

/* 基本レイアウト組み換え*/
.container {
	max-width:inherit;
}
.head_wrap{
	margin-left: auto;
	margin-right: auto;
	max-width: 950px;
	min-width: 641px;
}

/*基本*/
.w950{
	margin:auto;
	max-width:950px;
	min-width: 641px;
	padding-left: 10px;
  padding-right: 10px;
}
.cng_txt{
	text-align: center;
}
.btn_selected{
	opacity:0.8;
	filter:alpha(opacity=80);
}

/*コンテンツ枠*/
.cont_wrap{
	margin-left:-10px;
	margin-right: -10px;
	background:url(/resources/img/special/hokkaido_stamprally2018/bg_main_grd.jpg) repeat-x;
}
.cont_wrap>.inner{
	background:url(/resources/img/special/hokkaido_stamprally2018/bg_main.jpg) top center no-repeat;
	padding-bottom:50px;
}

/*タイトル*/
.cont_ttl .cont_ttl_txts{
	padding:30px 0;
}

/*メインimg*/
.main_img_all{
}
.main_img_text{
	text-align: center;
	margin: 0 auto;
	margin-top: -20px;
  background: -webkit-linear-gradient(#ded0e7,#fff);
	background: -moz-linear-gradient(#ded0e7,#fff);
	background: -ms-linear-gradient(#ded0e7,#fff);
	background: linear-gradient(#ded0e7,#fff);
	background: -ms-linear-gradient(to top bottom, #ded0e7,#fff);
	background: linear-gradient(to top bottom, #ded0e7,#fff);
	background-color: -ms-linear-gradient(#ded0e7,#fff);
	background-color: linear-gradient(#ded0e7,#fff);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#ded0e7', endColorstr='#ffffff', GradientType=0)";
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ded0e7', endColorstr='#ffffff', GradientType=0);

}
.main_img_text h3{
	margin-top: 0!important;
	color: #584c9d;
	font-size: 30px;
}
.main_img_text p{
	font-size: 18px;
}
.main_img_text .margin_top {
	margin-top: 5px;
}
.main_img_text .text_pink{
	color: #fe25af;
	font-size: 20px;
	line-height: 1.2;
}

/*スタンプラリーに参加*/
.step_ttl{
	text-align: center;
}

.step123{
	margin-top: 1rem;
	font-weight: bold;
	overflow: hidden;
}
.step_all{
	float: left;
	width: 33%;
	min-height: 350px;
	margin-right: 0.2%;
	background: #ccedfc;
}
.Step123_ttl{
	position: relative;
	height: 35px;
	text-align: center;
	line-height: 2;
	background: #4c72b8;
}
.Step123_ttl .s_img{
	position: absolute;
	top: 2%;
	padding-left: 5px;
}
.Step123_txt{
	margin-bottom: 5px;
	padding: 0 3%;
	font-size: 15px;
	line-height: 1.4;
}
.Step123_txt .text_pink{
	color: #fe25af;
}
.Step123_txt .small{
	margin-top: 0;
	font-size: small;
	line-height: 1.2!important;
}
.step2_img_in{
	margin-top: 5%;
	text-align: center;
}
.step2_img_in img{
	width: 90%;
}
.step3_in{
	margin-top: 20px;
}
.step3_intext{
	background: #dda7e1;
}
.step3_intext p{
	padding: 2%;
	color: #fff;
	margin-top: 3px;
}
.step3_intext .text_yellow{
	color: #ffff00;
}

/*キャンペーン詳細*/
.detail_all{
	margin: 10px  0 20px;
}
.detail_box{
  overflow: hidden;
  margin-bottom: 5px;
}
.detail_box p{
  margin-top: 0;
}
.detail_ttl{
	float: left;
	width: 15%;
	text-align: center;
	background: #4c72b8;
	color: #fff;
	line-height: 2.4;
  font-weight: bold;
}
.detail_text{
	float: left;
	width: 85%;
	font-weight: bold;
}
.detail_text p{
  padding-left: 1%;
}
.detail_text_1 p{
	line-height: 1.5;
	font-size: 23px;
}
.detail_text_2 p{
	line-height: 1.2;
}
/*バナー*/
.kitty_bnr img{
	width: 100%;
}

/*注意事項*/
.specific_bottom h4{
	font-size: 16px;
}
.specific_bottom p{
	margin-top: 0;
}

@media screen and (max-width:965px){

}


@media screen and (max-width:950px){
	/*メインimg*/
	/*.main_img_all{
		position: relative;
	}
	.main_img_text{
		text-align: center;
		position: absolute;
		top: 70%;
		left: 0;
		right: 0;
		margin: 0 auto;
	}*/
	.main_img_text h3{
		font-size: 3vw;
	}
	.main_img_text p{
		font-size: 2vw;
		margin-top: 5px;
	}
	.main_img_text .margin_top {
		font-size: 2.1vw;
		line-height: 1.4;
	}
	.main_img_text .text_pink{
		font-size: 2vw;
		line-height: 1.4;
	}

}
@media screen and (max-width:918px){
	/*キャンペーン詳細*/
	.step_all{
		min-height: 405px;
	}
}
@media screen and (max-width:850px){
	/*キャンペーン詳細*/
	.detail_ttl{
		width: 20%;
	}
	.detail_text{
		width: 80%;
	}
}
@media screen and  (min-width: 640px) and (max-width: 850px){
	.s3_img{
		width: 25%;
	}
}

@media screen and (max-width:760px){
	/*メインimg*/
	/*.main_img_all{
		position: relative;
	}
	.main_img_text{
		text-align: center;
		position: absolute;
		top: 70%;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	.main_img_text h3{
    font-size: 3vw;
	}
	.main_img_text p{
		font-size: 2vw;
		margin-top: 5px;
	}
	.main_img_text .margin_top {
		font-size: 2.1vw;
    line-height: 1.4;
	}
	.main_img_text .text_pink{
		font-size: 2vw;
    line-height: 1.4;
	}*/
}

@media screen and (max-width:640px){
	/* 基本レイアウト組み換え*/
		.head_wrap{
			max-width:inherit;
			min-width: inherit;
		}
	/*基本*/
	.w950{
		max-width:inherit;
		min-width: inherit;
	}
	.cng_txt{
		text-align: left;
	}
	.cng_txt br{
		display: none;
	}
	.view_pc{
		display: none;
	}
	/*スタンプラリーに参加*/
	.step_all{
		width: 100%;
		min-height: 300px;
		margin-right: 0;
	}
	/*font*/
	.cont_present , .cont_entry , .cont_spot , .cont_atten{
		font-size:85.7%;
	}

	/*メインimg*/
	.main_img_all{
		position: relative;
	}
	/*.main_img_text{
		text-align: center;
		position: absolute;
		top: 70%;
		left: 0;
		right: 0;
		margin: 0 auto;
	}*/
	.main_img_text h3{
    margin-top: 2%;
    font-size: 3vw;
	}
	.main_img_text p{
		font-size: 2vw;
		margin-top: 5px;
	}
	.main_img_text .margin_top {
		font-size: 2.1vw;
    line-height: 1.4;
	}
	.main_img_text .text_pink{
		font-size: 2vw;
    line-height: 1.4;
	}

/*スタンプラリーに参加*/
  .step_all{
    margin-bottom: 1%;
	}
	.step_ttl{
		margin-top: 3%;
	}
	.step_ttl img{
		width: 70%;
	}

	/*キャンペーン詳細*/
	.detail_all{
		margin: 10px  0 20px;
	}
	.detail_box{
	  overflow: hidden;
	  margin-bottom: 5px;
	}
	.detail_box p{
	  margin-top: 0;
	}
	.detail_ttl{
		float: none;
		width: 100%;
    line-height: 2;
	}
	.detail_text{
		float: none;
		width: 100%;
	}
	.detail_text p{
		margin-top: 5px;
	  padding-left: 1%;
	}
	.detail_text_1 p{
		line-height: 1.5;
    font-size: 14px;
	}
	.detail_text_2 p{
		line-height: 1.4;
	}





}
@media screen and (max-width:490px){
	.step_ttl{
		margin-top: 5%;
	}
}
@media screen and (max-width:430px){
	.step_ttl{
		margin-top: 7%;
	}
}
@media screen and (max-width:387px){
	.step_ttl{
		margin-top: 20%;
	}
}
@media screen and (max-width:370px){
	.step_ttl{
		margin-top: 20%;
	}
}
