@charset "utf-8";


/*==================================================
  Campaign
==================================================*/
#campaign{
}


.campaign_title{
	background: url(../images/campaign_img_01.jpg) no-repeat left center;
	background-size: cover;
	width: 300px;
	height: 100vh;
	margin: 0;
	padding: 0;
	position: fixed;
	top: 0;
	right: 0;
}


.campaign_title h2{
	height: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}




.campaign_inner{
	background-color: #ffffff;
	width: 100%;
	margin: 0;
	padding: 0 300px 0 0;
	box-sizing: border-box;
}


.campaign_bg{
	background: url(../images/bg_gray.png) center top;
	background-size: contain;
	width: 90%;
	margin: 0;
	padding: 5%;
}


.campaign_image{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 3% auto;
	padding: 0;
	box-shadow: 0 1px 8px 2px rgba(0,0,0,0.3);
}


.campaign_board{
	background-color: rgba(255,255,255,0.5);
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 0 8% 0;
	border-radius: 5px;
	box-shadow: 0 1px 8px 2px rgba(0,0,0,0.3);
}


.campaign_board h2{
	background-color: #ff6600;
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 3.0rem;
	color: #ffffff;
	line-height: 1.5;
	margin: 0;
	padding: 25px 30px 24px 30px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}


.campaign_board h3{
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 2.5rem;
	color: #ff6600;
	line-height: 1.5;
	width: 90%;
	margin: 0;
	padding: 6% 5% 2% 5%;
}


.campaign_board p{
	font-family: "Noto Sans JP";
	font-weight: 400;
	font-size: 1.6rem;
	color: #333333;
	line-height: 1.9;
	width: 90%;
	margin: 0;
	padding: 0 5% 15px 5%;
}


.campaign_board p a{
	color: #3c549b;
	text-decoration: underline;
}


.campaign_board p a:hover{
	color: #ff9900;
	text-decoration: underline;
}


.campaign_board2{
	background-color: rgba(255,255,255,0.5);
	max-width: 1000px;
	margin: 5% auto 0 auto;
	padding: 0 0 8% 0;
	border-radius: 5px;
	box-shadow: 0 1px 8px 2px rgba(0,0,0,0.3);
}


.campaign_board2 h2{
	background-color: #ff6600;
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 2.0rem;
	color: #ffffff;
	line-height: 1.5;
	margin: 0;
	padding: 25px 30px 24px 30px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}


.campaign_board2 h3{
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 1.8rem;
	color: #ff6600;
	line-height: 1.5;
	width: 90%;
	margin: 0;
	padding: 5% 5% 2% 5%;
}


.campaign_board2 p{
	font-family: "Noto Sans JP";
	font-weight: 400;
	font-size: 1.6rem;
	color: #333333;
	line-height: 1.9;
	width: 90%;
	margin: 0;
	padding: 0 5% 15px 5%;
}


.campaign_board2 p a{
	color: #3c549b;
	text-decoration: underline;
}


.campaign_board2 p a:hover{
	color: #ff9900;
	text-decoration: underline;
}




@media only screen and (max-width: 1500px){

	.campaign_board h2{
		background-color: #ff6600;
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 2.8rem;
		color: #ffffff;
		line-height: 1.5;
		margin: 0;
		padding: 25px 30px 24px 30px;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
	}

}




@media only screen and (max-width: 1400px){

	.campaign_title{
		display: none;
	}


	.campaign_inner{
		background-color: #ffffff;
		width: 100%;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
	}

}




@media only screen and (max-width: 1200px){

	.campaign_board h2{
		background-color: #ff6600;
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 2.4rem;
		color: #ffffff;
		line-height: 1.5;
		margin: 0;
		padding: 25px 30px 24px 30px;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
	}


	.campaign_board h3{
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 2.0rem;
		color: #ff6600;
		line-height: 1.5;
		width: 90%;
		margin: 0;
		padding: 6% 5% 2% 5%;
	}

}




@media only screen and (max-width: 700px){

	.campaign_board h2{
		background-color: #ff6600;
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 2.0rem;
		color: #ffffff;
		line-height: 1.5;
		margin: 0;
		padding: 25px 30px 24px 30px;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
	}


	.campaign_board h3{
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 1.6rem;
		color: #ff6600;
		line-height: 1.5;
		width: 90%;
		margin: 0;
		padding: 6% 5% 17px 5%;
	}


	.campaign_board p{
		font-family: "Noto Sans JP";
		font-weight: 400;
		font-size: 1.4rem;
		color: #333333;
		line-height: 1.9;
		width: 90%;
		margin: 0;
		padding: 0 5% 15px 5%;
	}

}




/*==================================================
  PointCard
==================================================*/
#point_card{
	width: 90%;
	margin: 0;
	padding: 0 5% 5% 5%;
	border-bottom: dashed 2px #cccccc;
}




#point_card p.campaign_text_01{
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 2.8rem;
	color: #ff0066;
	line-height: 1.9;
	width: 100%;
	margin: 0;
	padding: 50px 0 20px 0;
}


#point_card p.campaign_text_02{
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 2.8rem;
	color: #663300;
	line-height: 1.9;
	width: 100%;
	margin: 0;
	padding: 0 0 50px 0;
}


#point_card p{
	font-family: "Noto Sans JP";
	font-weight: 400;
	font-size: 1.8rem;
	color: #333333;
	line-height: 1.9;
	width: 100%;
	margin: 0;
	padding: 0 0 15px 0;
}


#point_card p.orange{
	color: #ff6600;
}


#point_card p span{
	font-weight: 700;
}




@media only screen and (max-width: 1200px){

	#point_card p.campaign_text_01{
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 2.2rem;
		color: #ff0066;
		line-height: 1.7;
		width: 100%;
		margin: 0;
		padding: 50px 0 20px 0;
	}


	#point_card p.campaign_text_02{
		font-family: "Noto Sans JP";
		font-weight: 700;
		font-size: 2.2rem;
		color: #663300;
		line-height: 1.7;
		width: 100%;
		margin: 0;
		padding: 0 0 50px 0;
	}

}




/*==================================================
  App
==================================================*/
.app_wrap{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 6% auto;
	padding: 0;
	box-shadow: 0 1px 8px 2px rgba(0,0,0,0.3);
}


.app_image{
	width: 100%;
	margin: 0;
	padding: 0;
}


.app_dl{
	background-color: #d0121b;
	width: 100%;
	margin: 0;
	padding: 30px 0;
}


.app_dl_box{
	width: 100%;
	margin: 0;
	padding: 0;
	border-bottom: dotted 1px #000000;
}


.app_dl h3{
	width: 60%;
	margin: 0 auto;
	padding: 50px 0 10px 0;
}


.app_dl_btn{
	width: 70%;
	margin: 0 auto;
	padding: 20px 0 80px 0;
}


.app_dl_btn p{
	width: 40%;
	margin: 0;
	padding: 0 5%;
	float: left;
}


.app_dl_btn p span{
	width: 100%;
	font-size: 1.6rem;
	color: #ffffff;
	margin: 0;
	padding: 0;
}


.app_dl_img{
	width: 60%;
	margin: 0 auto;
	padding: 20px 0 80px 0;
}


.app_dl_txt{
	font-weight: 400;
	font-size: 1.6rem;
	color: #ffffff;
	width: 60%;
	margin: 0 auto;
	padding: 20px 0;
}


.app_dl_contact{
	width: 60%;
	margin: 0 auto;
	padding: 10px 0 60px 0;
	box-sizing: border-box;
}

.app_dl_contact a{
	display: block;
	font-family: "Noto Sans JP";
	font-weight: 700;
	font-size: 2.0rem;
	color: #ffffff;
	width: 100%;
	margin: 0;
	padding: 20px;
	border: solid 2px #ffffff;
	border-radius: 100vh;
	text-align: center;
	box-sizing: border-box;
}
.app_dl_contact a:hover{
	background-color: #ffffff;
	color: #d0121b;
}


.app_detail{
	background-color: #ffe100;
	width: 100%;
	margin: 0;
	padding: 30px 0;
}


.app_detail p{
	width: 100%;
	margin: 0;
	padding: 20px 0;
}


.app_faq{
	background-color: #ffffff;
	width: 100%;
	margin: 0;
	padding: 0 0 80px 0;
}


.app_faq h3{
	background-color: #ff6600;
	font-family: "Noto Sans JP";
	font-weight: 600;
	font-size: 2.3rem;
	color: #ffffff;
	line-height: 1.7;
	width: 100%;
	margin: 0;
	padding: 20px 0;
	text-align: center;
}


.app_faq h4{
	font-family: "Noto Sans JP";
	font-weight: 600;
	font-size: 2.3rem;
	color: #ff9900;
	line-height: 1.7;
	width: 100%;
	margin: 0;
	padding: 40px 0 20px 0;
	text-align: center;
}


.app_faq_box{
	width: 80%;
	margin: 0 auto 2px auto;
	padding: 0;
	border: solid 1px #efefef;
	box-sizing: border-box;
}


.app_faq_box dt{
	display: block;
	background: url(../images/app_img_08.png) no-repeat left top;
	font-family: "Noto Sans JP";
	font-weight: 600;
	font-size: 1.6rem;
	color: #333333;
	line-height: 1.7;
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 10px 50px 10px 60px;
	border-bottom: solid 1px #efefef;
	box-sizing: border-box;
	position: relative;
}


.app_faq_box dd{
	display: none;
	font-family: "Noto Sans JP";
	font-weight: 400;
	font-size: 1.4rem;
	color: #666666;
	line-height: 1.7;
	width: 100%;
	margin: 0;
	padding: 20px 25px;
	box-sizing: border-box;
}
.app_faq_box dd a{
	color: #3c549b;
	text-decoration: underline;
}
.app_faq_box dd a:hover{
	color: #ff6600;
}


.article-title:after{
	content: "";
	position: absolute;
	right: 25px;
	top: 38%;
	transition: all 0.2s ease-in-out;
	display: block;
	width: 8px;
	height: 8px;
	border-top: solid 2px #ff6600;
	border-right: solid 2px #ff6600;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.article-title.open:after{
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
}




.shinbun_board{
	background-color: rgba(255,255,255,0.5);
	max-width: 1000px;
	margin: 0 auto 3% auto;
	padding: 0 0 8% 0;
	border-radius: 5px;
	box-shadow: 0 1px 8px 2px rgba(0,0,0,0.3);
}


.shinbun_board h2{
	background-color: #ff6600;
	font-family: "Noto Sans JP";
	font-weight: 600;
	font-size: 2.3rem;
	color: #ffffff;
	line-height: 1.5;
	margin: 0;
	padding: 25px 30px 24px 30px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}


.shinbun_board p{
	font-family: "Noto Sans JP";
	font-weight: 400;
	font-size: 1.6rem;
	color: #333333;
	line-height: 1.9;
	width: 90%;
	margin: 0;
	padding: 20px 5% 0 5%;
}




@media only screen and (max-width: 1000px){

	.app_dl{
		width: 100%;
		margin: 0;
		padding: 20px 0;
	}


	.app_dl h3{
		width: 70%;
		margin: 0 auto;
		padding: 40px 0 10px 0;
	}


	.app_dl_btn{
		width: 80%;
		margin: 0 auto;
		padding: 20px 0 80px 0;
	}


	.app_dl_img{
		width: 70%;
		margin: 0 auto;
		padding: 20px 0 80px 0;
	}

}




@media only screen and (max-width: 700px){

	.app_dl{
		width: 100%;
		margin: 0;
		padding: 10px 0;
	}


	.app_dl h3{
		width: 80%;
		margin: 0 auto;
		padding: 30px 0 5px 0;
	}


	.app_dl_btn{
		width: 90%;
		margin: 0 auto;
		padding: 10px 0 50px 0;
	}


	.app_dl_img{
		width: 80%;
		margin: 0 auto;
		padding: 10px 0 50px 0;
	}


	.app_dl_txt{
		font-size: 1.4rem;
		width: 80%;
		margin: 0 auto;
		padding: 20px 0;
	}


	.app_dl_contact{
		width: 80%;
		margin: 0 auto;
		padding: 10px 0 40px 0;
	}

	.app_dl_contact a{
		font-size: 1.6rem;
		padding: 15px;
	}


	.app_faq h3{
		font-size: 2.0rem;
		margin: 0;
		padding: 20px 0;
	}


	.app_faq h4{
		font-size: 1.8rem;
		margin: 0;
		padding: 40px 0 20px 0;
	}


	.app_faq_box dt{
		font-size: 1.4rem;
		margin: 0;
		padding: 10px 50px 10px 60px;
	}


	.app_faq_box dd{
		font-size: 1.2rem;
		margin: 0;
		padding: 20px 25px;
	}


	.shinbun_board h2{
		font-size: 1.8rem;
	}


	.shinbun_board p{
		font-size: 1.4rem;
	}

}
