@charset "utf-8";

/*-----------------------------------
共通スタイル
-----------------------------------*/
/*太文字*/
strong {
	font-weight: bold !important;
}


/*画像*/
img {
	border: none;
	vertical-align: bottom;
}


/* 要素を隠す */
.hidden_contents {
	display: none !important;
}



/*中央寄せ*/
.center {
	text-align: center !important;
}
.right {
	text-align: right !important;
}
.left {
	text-align: left !important;
}


/*clear*/
.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	line-height: 0;
	visibility: hidden;
}


/*リンク*/
a {
	color: #0066aa;
}
a:hover {
	color: #f78a0b;
}


/*下線付きテキストリンク*/
a.link_txt {
	/*color: #444;*/
	color: #0066aa;
	text-decoration: underline;
}
	a.link_txt:hover {
		color: #f78a0b;
	}


/*下線なしテキストリンク*/
a.link_txt.noline {
	color: #0066aa;
	text-decoration: none;
}
	a.link_txt.noline:hover {
		color: #f78a0b;
	}


/*右やじるし付きテキストリンク*/
a.link_right_arrow {
	/*color: #444;*/
	color: #0066aa;
	text-decoration: none;
	background: url(/webcontent/pc_webcontent/image/stage/right-arrow.png) no-repeat center right;
	background-size: 12px auto;
	padding: 0 16px 0 0;
}





/*-----------------------------------
共通レイアウト
-----------------------------------*/
.contents_wrapper {
	width: 800px;
	margin: 0 auto;
	padding: 0;
	font-family: noto-sans-cjk-jp, sans-serif;
	font-weight: 400;
}


/*flex横並びコンテナ*/
.flex_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-align: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
}
	.flex_box.align_center {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.flex_box.align_end {
		-webkit-box-align: flex-end;
		-ms-flex-align: flex-end;
		align-items: flex-end;
	}
	.flex_box.align_baseline {
		-webkit-box-align: baseline;
		-ms-flex-align: baseline;
		align-items: baseline;
	}
	.flex_box.justify_center {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.flex_box.wrap {
		flex-wrap: wrap;
	}


/*区切り線*/
hr {
	width: 100%;
	height: 1px;
	border: none;
	border-top: 1px solid #ccc;
	margin: 10px auto;
}


/*背景色付きのコンテナ*/
.color_bg_container {
	/* background-color: #FFF8DC; */
	/*padding: 10px 20px;*/
	margin-bottom: 30px;
}


/*枠線付きのコンテナ*/
.border_box {
	clear: both;
	margin-bottom: 30px;
	padding: 10px 20px;
	border: 2px solid #cfcdcc;
	/* background-color: #fff; */
}

.color_bg_container .border_box {
	border: 2px solid #eb5505;
}





/*-----------------------------------
インフォメーション文言
-----------------------------------*/
#stage_info_msg_area {
	clear: both;
	margin-bottom: 20px;
}
	a.stage_info_msg {
		position: relative;
		display: block;
		border: 1px solid #F76B1F;
		border-bottom: none;
		background: url(/webcontent/pc_webcontent/image/stage/icon_xclamation.png) no-repeat center left 8px;
		background-size: 16px auto;
		/*margin-bottom: 10px;*/
		padding: 10px 10px 10px 30px;
		font-size: 13px;
		text-decoration: none;
		color: #444;
	}
	a.stage_info_msg:after {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 10px;
		margin: auto;
		display: block;
		content:"";
		width: 16px;
		height: 16px;
		background: url(/webcontent/pc_webcontent/image/stage/down-arrow.png) no-repeat center center;
		background-size: 16px auto;
	}
	a.stage_info_msg:last-child {
		border: 1px solid #F76B1F;
	}

	/* 追加 2020/04/21 */
	.stage_info_msg_area_inner {
		border: 1px solid #eb5505;
		padding: 10px;
	}
	.stage_info_msg_area_inner a.stage_info_msg_link {
		color: #09C;
		text-decoration: none;
		font-size: 13px;
	}
	.stage_info_msg_area_inner a.stage_info_msg_link:hover span {
		color: #F90;
		text-decoration: underline;
	}
	.icon_blank_window {
		display: inline-block;
		margin-right: 5px;
		width: 14px;
		height: 14px;
		background: url(/webcontent/pc_webcontent/image/common/icon/icon_target_blank.png) no-repeat left center;
		background-size: 14px 14px;
		text-decoration: none !important;
	}





/*-----------------------------------
スライドバナー
-----------------------------------*/
.slide_image_container {
	position: relative;
	width: 680px;
	height: auto;
	margin: 0 auto 30px auto;
}

	/*左ナビゲーション*/
	.slide_nav_left {
		position: absolute;
		top: 0;
		bottom: 0;
		left: -50px;
		margin: auto;

		display: block;
		width: 40px;
		height: 40px;
		text-decoration: none;
	}

	/*右ナビゲーション*/
	.slide_nav_right {
		position: absolute;
		top: 0;
		bottom: 0;
		right: -50px;
		margin: auto;

		display: block;
		width: 40px;
		height: 40px;
		text-decoration: none;
	}

	.slide_area {
		position: relative;
	}

	/*スライド用のマスク*/
	.slide_item_mask {
		position: relative;
		width: 680px;
		height: 151px;
		overflow: hidden;
	}

	/*スライドで動かすコンテナ*/
	.slide_panel {
		position: absolute;
		top: 0px;
		left: -100%;
		width: 200%;
		height: 100%;
	}

	/*個別のスライド画像*/
	.slide_item {
		float: left;
		display: block;
		width: 680px;
		height: 151px;
		margin: 0;
		padding: 0;
		line-height: 1;
		text-decoration: none;
		overflow: hidden;
	}

	/*ポインターナビゲーション*/
	.slide_pointer_list {
		margin: 0 auto;
	}
	.slide_pointer {
		float: left;
		display: block;
		width: 80px;
		height: 8px;
		margin: 10px 5px;
		background-color: #ccc;
	}
	.slide_pointer.selected {
		background-color: #eb5505;
	}





/*------------------------------------------
ユーザーステージの見出し
------------------------------------------*/
.user_stage_header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;

	/*-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;*/

	margin-bottom: 10px;
}
.user_stage_icon {
	-ms-flex-negative:1;
	flex-shrink:1;

	width: 42px;
	height: 42px;
	background: url(/webcontent/pc_webcontent/image/stage/stage_icon.png) no-repeat left center;
	background-size: 42px auto;
}
.user_stage_msg {
	padding-left: 10px;
	font-size: 26px;
	font-weight: bold;
}





/*------------------------------------------
横グラフエリア
------------------------------------------*/
.score_header {
	/*margin-bottom: 10px;*/
}


/*スコア見出し*/
/*.score_header_lead {
	margin: 0 0 20px 0;
	padding: 5px 0;
	background-color: #F6D6C5;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
}*/


/*ステージのアイコン画像*/
.score_header_icon {
	width: 80px;
	height: 80px;
	margin: 0 10px 0 0;
}
	.score_header_icon img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}
	/*レギュラーステージ*/
	.stage_regular .score_header_icon {
		background: url(/webcontent/pc_webcontent/image/stage/icon_score_regular.png) no-repeat left center;
		background-size: 80px auto;
	}
	/*シルバーステージ*/
	.stage_silver .score_header_icon {
		background: url(/webcontent/pc_webcontent/image/stage/icon_score_silver.png) no-repeat left center;
		background-size: 80px auto;
	}
	/*ゴールドステージ*/
	.stage_gold .score_header_icon {
		background: url(/webcontent/pc_webcontent/image/stage/icon_score_gold.png) no-repeat left center;
		background-size: 80px auto;
	}
	/*レギュラーステージ*/
	.stage_platinum .score_header_icon {
		background: url(/webcontent/pc_webcontent/image/stage/icon_score_platinum.png) no-repeat left center;
		background-size: 80px auto;
	}


/*ユーザーがどのステージか情報を表示するエリア*/
.score_header_detail {
	font-size: 13px;
}


	/*現在のステージ*/
	.score_header_status {
		/*font-size: 18px;*/
	}
	#score_header_status {
		font-size: 28px;
		font-weight: bold;
	}


	/*強調テキスト*/
	.txt_strong {
		font-size: 110%;
		font-weight: bold;
	}


	/*現在の合計スコア*/
	.score_header_lead_txt {
		margin: 0 0 0 10px;
		font-size: 24px;
		font-weight: bold;
	}
	.score_header_total_point {
		margin: 0;
		font-size: 24px;
		font-weight: bold;
	}


	/*集計期間*/
	.score_header_period {
		font-size: 15px;
	}





/*グラフの各種情報を表示するエリアのコンテナ*/
#score_graph {
	position: relative;
	overflow-x: hidden;
	margin-bottom: 10px;
}

	#score_graph_inner {
		position: relative;
		width: 100%;
		padding: 80px 0 0 0;
		overflow: hidden;
		height: 142px;
		box-sizing: border-box;
	}


	/*スコア合計ポイント*/
	#score_value_container {
		padding: 25px 0 17px 0;
		text-align: center;
	}
		#score_value {
			position: relative;

			display: inline-block;
			min-width: 128px;
			padding: 0px 10px;
			border: 2px solid #707070;
			color: #666;
			font-family: 'Roboto', sans-serif;
			font-size: 40px;
			font-weight: bold;
			text-align: center;
			background-color: #fff;
			line-height: 58px;
			opacity: 0;
		}
		#score_value:after {
			content: "";
			position: absolute;
			left: 0;
			right: 0;
			bottom: 6px;
			margin: auto;

			display: inline-block;
			width: 70%;
			border-bottom: 2px solid #eb5505;
		}


	/*横グラフの目盛り*/
	#graph_scale {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;

		-webkit-box-align: flex-start;
		-ms-flex-align: flex-start;
		align-items: flex-start;

		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;

		position: relative;

		/*padding-top: 80px;*/

		background-color: #fff;
	}
		.graph_scale_min {
			width: 40px;
			text-align: left;
			/*background-color: #fff;*/
		}
		.graph_scale_center {
			width: 40px;
			text-align: center;
			/*background-color: #fff;*/
		}
		.graph_scale_max {
			width: 40px;
			text-align: center;
			/*text-align: right;*/
			/*background-color: #fff;*/
		}
		.stage_platinum .graph_scale_max {
			opacity: 0;
		}


	/*横グラフのコンテナ*/
	#graph_bar_container {
		position: relative;
		padding: 30px 0 0 1px;
		border-bottom: 1px solid #645f5c;
		margin-bottom: 2px;
	}
		#graph_bar {
			position: relative;
			width: 100%;
			height: 30px;
			overflow: hidden;
		}
			#graph_bar_inner {
				position: relative;
				width: 100%;
				height: 100%;
				background-color: #fff;

				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;

				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
			}
				#graph_bar_a {
					-ms-flex-negative: 1;
					flex-shrink: 1;
					width: 50%;
					height: 100%;
				}
				#graph_bar_b {
					flex-grow: 1;
					height: 100%;
				}
				#graph_bar_c {
					-ms-flex-negative: 1;
					flex-shrink: 1;
					width: 20px;
					height: 100%;
				}
				.graph_width {
					width: 0%;
					height: 100%;
					background-color: #fff;
				}
				/*ステージごとの横グラフカラー*/
				.stage_regular .graph_width {
					background-color: #c7c7c7;
				}
				.stage_silver .graph_width {
					background-color: #a5a5a5;
				}
				.stage_gold .graph_width {
					background-color: #dead36;
				}
				.stage_platinum .graph_width {
					background-color: #5990f7;
				}

			#graph_bar_mask {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background-color: #fff;
			}

			.graph_scale_bar {
				width: 1px;
				height: 60px;
				background-color: #645f5c;
			}
			#graph_scale_bar_min {
				position: absolute;
				left: 0;
				bottom: 0;
			}
			#graph_scale_bar_center {
				position: absolute;
				left: 50%;
				bottom: 0;
				margin-left: -1px;
			}
			#graph_scale_bar_max {
				position: absolute;
				right: 20px;
				bottom: 0;
			}


	/*横グラフのアイコン*/
	.graph_stage_icon {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;

		-webkit-box-align: flex-start;
		-ms-flex-align: flex-start;
		align-items: flex-start;

		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

		.stage_icon_left,
		.stage_icon_center,
		.stage_icon_right {
			width: 80px;
			height: 32px;
		}

		/**/
		.stage_regular .stage_icon_left {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_regular.png) no-repeat left center;
			background-size: 32px auto;
		}
		.stage_silver .stage_icon_left {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_regular.png) no-repeat left center;
			background-size: 32px auto;
		}
		.stage_gold .stage_icon_left {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_silver.png) no-repeat left center;
			background-size: 32px auto;
		}
		.stage_platinum .stage_icon_left {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_gold.png) no-repeat left center;
			background-size: 32px auto;
		}

		/**/
		.stage_regular .stage_icon_center {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_silver.png) no-repeat center center;
			background-size: 32px auto;
		}
		.stage_silver .stage_icon_center {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_silver.png) no-repeat center center;
			background-size: 32px auto;
		}
		.stage_gold .stage_icon_center {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_gold.png) no-repeat center center;
			background-size: 32px auto;
		}
		.stage_platinum .stage_icon_center {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_platinum.png) no-repeat center center;
			background-size: 32px auto;
		}

		/**/
		.stage_regular .stage_icon_right {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_gold.png) no-repeat center center;
			background-size: 32px auto;
		}
		.stage_silver .stage_icon_right {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_gold.png) no-repeat center center;
			background-size: 32px auto;
		}
		.stage_gold .stage_icon_right {
			background: url(/webcontent/pc_webcontent/image/stage/icon_score_platinum.png) no-repeat center center;
			background-size: 32px auto;
		}
		.stage_platinum .stage_icon_right {
			background: none;
		}



	/*次のステージまで必要なスコアの文言*/
	.score_header_bottom_lead {
		margin: 0 0 5px 0;
		padding: 0;
		background-color: #fff;
		color: #EB5505;
		font-size: 15px;
		font-weight: bold;
		text-align: left;
	}
	.score_header_bottom_notice {
		margin: 0 0 5px 0;
		padding: 0;
		background-color: #fff;
		color: #0066aa;
		font-size: 20px;
		font-weight: bold;
		text-align: left;
	}
	.score_header_bottom_notice_b {
		margin: 0 0 20px 0;
		padding: 0;
		background-color: #fff;
		color: #EB5505;
		font-size: 20px;
		font-weight: bold;
		text-align: left;
	}





/*------------------------------------------
各種スコア詳細のアコーディオン表示エリア
------------------------------------------*/
.score_desc {
	border: 2px solid #cfcdcc;
	margin-bottom: 10px;
}



	/*見出し & アコーディオン開閉ボタン*/
	.score_desc_head {
		cursor: pointer;
		/*padding: 16px 10px;*/
		text-align: center;
		background: url(/webcontent/pc_webcontent/image/stage/down-arrow.png) no-repeat center right 7px;
		background-size: 16px auto;
		text-align: center;
		background-color: #f4f4f4;
		font-size: 17px;
		font-weight: bold;
		line-height: 42px;
	}
		.score_desc_head.open {
			background: url(/webcontent/pc_webcontent/image/stage/up-arrow.png) no-repeat center right 7px;
			background-size: 16px auto;
			background-color: #f4f4f4;
		}



	/*詳細 & アコーディオン部分*/
	.score_desc_body {
		display: none;
		border-top: 2px solid #cfcdcc;
		background-color: #fff;
	}

		.score_list {
			margin: 0;
			padding: 8px 20px;
			border-top: 1px solid #cfcdcc;
		}
			.score_desc_body .score_list:first-child {
				/*padding: 10px 20px 10px 20px;*/
				border-top: none;
			}
			.score_desc_body .score_list:last-child {
				/*padding: 10px 20px 10px 20px;*/
			}
			.score_list:after {
				clear: both;
				content: ".";
				display: block;
				height: 0;
				line-height: 0;
				visibility: hidden;
			}
			.score_cat {
				float: left;
			}
			.score_point {
				float: right;
				white-space: nowrap;
			}
			.score_list_inner {
				clear: both;
			}





	/*詳細文言　リンクボタン*/
	.score_desc_txt {
		box-sizing: border-box;
		margin: 0;
		padding: 10px 20px;
	}
		.score_desc_txt a.link_btn {
			position: relative;
			display: block;
			width: auto;
			padding: 10px 30px 10px 30px;
			border: 2px solid #ccc;
			text-decoration: none;
		}
		.score_desc_txt a.link_btn:after {
			content: '';
			display: block;
			position: absolute;
			top: 0;
			right: 10px;
			bottom: 0;
			left: auto;
			margin: auto;
			width: 16px;
			height: 16px;
			background: url(/webcontent/pc_webcontent/image/stage/right-arrow.png) no-repeat center center;
			background-size: 16px auto;
		}
		.score_desc_txt a.link_btn:hover {
			color: #f76b1f;
			border-color: #f76b1f;
			text-decoration: none;
		}

	.score_desc_bottom_txt {
		padding: 20px 0 0 0;
		text-align: right;
	}
	.score_desc_bottom_txt a:hover {
		color: #f78a0b;
	}





/*------------------------------------------
特典
------------------------------------------*/
/*コンテナ*/
.score_benefits {
	clear: both;
	position: relative;
}

	.score_benefits .section_title {
		margin-bottom: 10px;
		font-size: 18px;
		font-weight: bold;
		/*text-align: center;*/
	}
		.score_benefits .section_title.score_benefits_header {
			display: -webkit-box;
			display: flex;

			-webkit-box-align: center;
			align-items: center;

			/*-webkit-box-pack: center;
			justify-content: center;*/
		}
			.score_benefits_icon {
				flex-shrink:1;
				flex-shrink:1;

				width: 42px;
				height: 42px;
				background: url(/webcontent/pc_webcontent/image/stage/toketen_icon.png) no-repeat left center;
				background-size: 42px auto;
			}
			.score_benefits_msg {
				padding-left: 10px;
				/*font-size: 26px;*/
				/*font-weight: bold;*/
			}


	.score_benefits .section_sub_title {
		margin-bottom: 10px;
		font-size: 18px;
		font-weight: bold;
		text-align: center;
	}

	/*特典テーブル見出し*/
	.benefits_head {
		clear: both;
		position: relative;
		box-sizing: border-box;
		border: 2px solid #cfcdcc;
		padding: 3px 10px;
		text-align: center;
		background-color: #f4f4f4;
		font-size: 16px;
	}
		.benefits_head.type_orange {
			clear: both;
			position: relative;
			box-sizing: border-box;
			border: 1px solid #EB5505;
			padding: 3px 10px;
			text-align: left;
			background-color: #EB5505;
			font-size: 16px;
			color: #fff;
		}

	/*特典テーブル詳細*/
	.benefits_desc {
		box-sizing: border-box;
		border: 2px solid #cfcdcc;
		border-top: none;
		margin: 0 0 30px 0;
		padding: 20px 26px 20px 20px;
	}
		.benefits_desc.type_orange {
			display: block;
			box-sizing: border-box;
			border: 1px solid #EB5505;
			border-top: none;
			color: #444;
			text-decoration: none;
			background: #fff;
			margin: 0 0 30px 0;
			padding: 6px 6px 6px 6px;
		}

	/*特典テーブル詳細 右やじるし付きテキストリンク*/
	a.benefits_desc_link {
		display: block;
		box-sizing: border-box;
		border: 2px solid #cfcdcc;
		border-top: none;
		color: #444;
		text-decoration: none;
		background: url(/webcontent/pc_webcontent/image/stage/right-arrow.png) no-repeat center right 10px;
		background-size: 16px auto;
		margin: 0 0 30px 0;
		padding: 11px 26px 11px 20px;
	}
	a.benefits_desc_link.type_a {
		padding: 6px 26px 6px 6px;
	}

	.l_txt {
		font-size: 20px;
		font-weight: bold;
		padding: 0 2px 0 4px;
	}
	.m_txt {
		font-size: 15px;
	}
	.s_txt {
		font-size: 12px;
	}

	table.benefits_table {
		border-collapse: collapse;
		border: none;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 0;
		font-size: 16px;
	}

		.inner_desc {
			background: #f4f4f4;
			padding: 10px;
		}
		table.benefits_table.inner_table {
			width: auto;
		}

		table.benefits_table th {
			box-sizing: border-box;
			border: none;
			margin: 0;
			padding: 0;
			text-align: left;
			font-weight: normal;
			vertical-align: bottom;
		}
		table.benefits_table td {
			box-sizing: border-box;
			border: none;
			margin: 0;
			padding: 0 10px 0 0;
			vertical-align: middle;
			line-height: 1;
		}
			.type_orange table.benefits_table td {
				padding: 0;
			}
		table.benefits_table td.nowrap {
			white-space: nowrap;
			text-align: right;
		}
		table.benefits_table td.nowrap span {
			line-height: 1;
		}
		table.benefits_table td .row {
			margin-bottom: 6px;
		}
		table.benefits_table td .row:last-child {
			margin-bottom: 0;
		}
		table.benefits_table td .row.size_m {
			font-size: 14px;
		}
		table.benefits_table td .row.size_s {
			font-size: 10px;
		}
		table.benefits_table .cap_txt {
			font-size: 14px;
		}
		table.benefits_table .cap_txt_s {
			font-size: 12px;
		}
		table.benefits_table .s_txt {
			font-size: 10px;
		}
		table.benefits_table .num_txt.size_l {
			font-size: 30px;
		}
		table.benefits_table .num_txt.size_m {
			font-size: 20px;
		}


	/*吹き出しバルーン*/
	/*バルーンを表示するボタン*/
	.balloon_trigger {
		cursor: pointer;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 20px;
		margin: auto;
		display: inline-block;
		border: 1px solid #cfcdcc;
		border-radius: 100%;
		background-color: #fff;
		text-align: center;
		width: 22px;
		height: 22px;
		line-height: 22px;
	}
	/*バルーン本体*/
	.balloon_container {
		position: absolute;
		z-index: 200;
		top: -52px;
		width: 100%;
		min-height: 58px;
		display: none;
	}
	.balloon {
		position: relative;
		z-index: 100;
		display: inline-block;
		float: right;
		padding: 0 20px;
		background-color: #fff;
		border: 2px solid #707070;
		min-height: 40px;
		line-height: 40px;
		font-size: 10px;
	}
	/* アイコンを下に表示 */
	.balloon:before {
		content: '';
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		right: 18px;
		bottom: -15px;
		border-top: 15px solid #707070;
		border-right: 15px solid transparent;
		border-left: 15px solid transparent;
	}
	.balloon:after {
		content: '';
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		right: 18px;
		bottom: -12px;
		border-top: 15px solid #fff;
		border-right: 15px solid transparent;
		border-left: 15px solid transparent;
	}
		.type_orange .balloon_trigger {
			border: 1px solid #fff;
			background-color: #fff;
			color: #EB5505;
		}
		.type_orange .balloon {
			border: 2px solid #EB5505;
		}
		/* アイコンを下に表示 */
		.type_orange .balloon:before {
			content: '';
			border-top: 15px solid #EB5505;
		}


	.score_benefits .text_area {
		margin: 10px 0;
	}
	.score_benefits .text_area a:hover {
		color: #f78a0b;
	}


	/*追加で作成 オレンジ枠線のボックス*/
	/*キャンペーン見出し*/
	.campaign_head {
		box-sizing: border-box;
		border: 1px solid #EB5505;
		padding: 3px 10px;
		text-align: left;
		background-color: #EB5505;
		font-size: 16px;
		color: #fff;
	}

	/*キャンペーン詳細*/
	.campaign_desc {
		box-sizing: border-box;
		border: 1px solid #EB5505;
		border-top: none;
		margin: 0 0 30px 0;
		padding: 20px 26px 20px 20px;
	}

	/*キャンペーン詳細 右やじるし付きテキストリンク*/
	a.campaign_desc_link {
		display: block;
		box-sizing: border-box;
		border: 1px solid #EB5505;
		border-top: none;
		color: #444;
		text-decoration: none;
		background: url(/webcontent/pc_webcontent/image/stage/right-arrow.png) no-repeat center right 10px;
		background-size: 16px auto;
		margin: 0 0 30px 0;
		padding: 6px 26px 6px 6px;
	}

	table.campaign_table {
		border-collapse: collapse;
		border: none;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 0;
		font-size: 14px;
	}
		table.campaign_table th {
			box-sizing: border-box;
			border: none;
			margin: 0;
			padding: 0;
			text-align: left;
			font-weight: normal;
			vertical-align: top;
		}
		table.campaign_table td {
			box-sizing: border-box;
			border: none;
			margin: 0;
			padding: 0 10px 0 0;
			vertical-align: middle;
			line-height: 1;
		}
		table.campaign_table td.campaign_img {
			width: 115px;
			vertical-align: top;
		}
		table.campaign_table td.campaign_detail {
			padding: 0;
		}
		table.campaign_table td.nowrap {
			white-space: nowrap;
			text-align: right;
		}
		table.campaign_table td.nowrap span {
			line-height: 1;
		}
		table.campaign_table .s_txt {
			font-size: 10px;
		}





/*------------------------------------------
スコアの貯め方
------------------------------------------*/
/*コンテナ*/
.score_store {
	clear: both;
	position: relative;
}

	.score_store .section_title {
		margin-bottom: 10px;
		font-size: 25px;
		font-weight: bold;
		/*text-align: center;*/
	}

		.score_store .section_title.score_benefits_header {
			display: -webkit-box;
			display: flex;

			-webkit-box-align: center;
			align-items: center;

			/*-webkit-box-pack: center;
			justify-content: center;*/
		}
			.score_store_icon {
				flex-shrink:1;
				flex-shrink:1;

				width: 42px;
				height: 42px;
				background: url(/webcontent/pc_webcontent/image/stage/score_icon.png) no-repeat left center;
				background-size: 42px auto;
			}
			.score_store_msg {
				padding-left: 10px;
				/*font-size: 26px;*/
				/*font-weight: bold;*/
			}

	.score_store .section_sub_title {
		margin-bottom: 10px;
		font-weight: bold;
	}
			.score_store .section_sub_title.score_benefits_header {
			display: -webkit-box;
			display: flex;

			-webkit-box-align: center;
			align-items: center;

			/*-webkit-box-pack: center;
			justify-content: center;*/
		}

	.score_store_sub_icon {
		flex-shrink:1;
		flex-shrink:1;

		width: 9px;
		height: 45px;
		background: url(/webcontent/pc_webcontent/image/stage/oreng_bar.png) no-repeat left center;
		background-size: 42px auto;
	}
	.score_store_sub_msg {
		padding-left: 10px;
		font-size: 16px;
		font-weight: bold;
	}

	/*スコアの貯め方 見出し*/
	.store_head {
		font-weight: bold;
	}
	.headline_bar {
		padding: 10px 0px 10px 14px;
		border-bottom: 2px solid #cfcdcc;
		min-height: 22px;
		background:url(/webcontent/pc_webcontent/image/stage/oreng_bar.png) no-repeat left center;
		background-size: 4px auto;
		font-size: 18px;
	}


	/*スコアの貯め方 詳細*/
	.store_desc {
		box-sizing: border-box;
		border: none;
		border-bottom: 2px solid #cfcdcc;
		padding: 10px 0;
	}


		/*スコアの貯め方 詳細 右やじるし付きテキストリンク*/
		a.store_desc_link {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			-ms-flex-align: center;
			align-items: center;

			color: #444;
			text-decoration: none;
			background: url(/webcontent/pc_webcontent/image/stage/item/arrow_R.png) no-repeat center right;
			background-size: 12px 21px;
			padding: 10px 22px 10px 0px;
		}

			.store_desc_link .icon_img {
				-ms-flex-negative:1;
				flex-shrink:1;
				width: 80px;
			}
				.store_desc_link .icon_img img {
					width: 100%;
					height: auto;
				}

			.store_desc_link .detail_lead {
				font-weight: bold;
				font-size: 16px;
			}
			.store_desc_link .detail_lead .detail_lead_small {
				font-weight: bold;
				font-size: 15px;
			}
			.store_desc_link .detail_txt {
				padding: 0 0 0 20px;
				font-size: 14px;
			}
			.store_desc_link .detail_highlight {
				background-color: #EB5505;
				font-size: 14px;
				color: #fff;
				border-radius: 4px;
				text-align: center;
				padding: 3px 8px;
				display: inline-block;
			}
			.detail_caption {
				font-size: 12px;
			}



/*FAQ よくある質問*/
.fqa_title {
	background: url(/webcontent/pc_webcontent/image/stage/item/Q_icon.png) no-repeat center left;
	background-size: 32px 32px;
	margin-bottom: 10px;
	padding: 6px 0 6px 48px;
	font-size: 25px;
	font-weight: bold;
}

.fqa_list {
	display: block;
	margin: 0 10px 12px 10px;
	border-bottom: 1px solid #cfcdcc;
	font-size: 13px;
}
.fqa_container .fqa_list:last-child {
	margin-bottom: 20px;
}
.fqa_list:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	line-height: 0;
	visibility: hidden;
}
.fqa_list dt {
	clear: both;
	float: left;
	display: inline-block;
	margin-right: 3px;
	margin-bottom: 10px;
}
.fqa_list dd {
	float: left;
	display: inline-block;
	margin-bottom: 10px;
	width: calc(100% - 1.5em);
}
.fqa_list dd:after {
	display: block;
	content: "";
}
.fqa_list dt.ques,
.fqa_list dd.ques {
	margin-bottom: 5px;
	font-weight: bold;
}
.fqa_list dt.ans,
.fqa_list dd.ans {
	margin-bottom: 12px;
}



/*お知らせ*/
.info_container {
	margin-bottom: 60px;
}
a.info_link_btn {
	display: block;
	border: 1px solid #cfcdcc;
	text-align: center;
	height: 42px;
	line-height: 42px;
	text-decoration: none;

	background: url(/webcontent/pc_webcontent/image/stage/item/arrow_R.png) no-repeat center right 18px;
	background-size: 12px auto;
}
a.info_link_btn:hover {
	color: #0066aa;

	background: url(/webcontent/pc_webcontent/image/stage/item/arrow_R_blue.png) no-repeat center right 18px;
	background-size: 12px auto;
}
