@charset "utf-8";
/* CSS INFORMATION -====================================================
File name : datacasting.css
Description : データ放送ページCSS
===================================================================== */

/* =====================================================================
*    #main
* =================================================================== */
#main {
	background: url(../images/common/bg_datacasting.jpg) repeat center top;
	background-size: 224px auto;
}

@media screen and (min-width:800px){
	#main {
		background: url(../images/common/bg_datacasting.jpg) repeat center top;
		background-size: 448px auto;
	}
}

.subpage .main_inner {
	background: url(../images/datacasting/bg_dotto.jpg) repeat center top;
	background-size: 12px auto;
	overflow: visible;
}

.subpage .main_inner:not(:last-child) {
	margin-bottom: 14.0625%;
}

#campaign .contents_ttl {
	width: 99.3104%;
	margin-left: auto;
	margin-right: auto;
}

#campaign .img_txt01 {
	width: 94.8276%;
	margin-top: -5.1725%;
	margin-left: auto;
	margin-right: auto;
}

#campaign .img_tv {
	width: 87.9311%;
	margin-top: 5.1725%;
	margin-left: auto;
	margin-right: auto;
}

#campaign .img_txt02 {
	width: 94.8276%;
	margin-top: 8.6207%;
	margin-left: auto;
	margin-right: auto;
}

#present .contents_ttl {
	width: 115px;
	margin-left: auto;
	margin-right: auto;
}

#present .img_present {
	width: 89.6552%;
	margin-top: 5.5173%;
	margin-left: auto;
	margin-right: auto;
}

#present .btn_entry {
	width: 62.4138%;
	margin-top: 5.5173%;
	margin-left: auto;
	margin-right: auto;
}

#present .apology {
	width: 96.5518%;
	border: 2px solid #F00;
	background-color: #FFF;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.5em;
	box-sizing: border-box;
	padding: 3.4483%;
	margin-top: 10.3449%;
	margin-left: auto;
	margin-right: auto;
}

#present .apology h2 {
	font-weight: bold;
	font-size: 1.1em;
	line-height: 1.5em;
	padding: 0 1em;
	margin-bottom: 1.9532%;
}

#present .apology p {
	text-align: left;
}

#present .attention {
	width: 96.5518%;
	background-color: #FFF;
	font-size: 1.4rem;
	line-height: 1.5em;
	box-sizing: border-box;
	padding: 3.4483%;
	margin-top: 10.3449%;
	margin-left: auto;
	margin-right: auto;
}

#present .attention h2 {
	font-weight: bold;
}

#present .attention ul li {
	position: relative;
	box-sizing: border-box;
	padding-left: 1.5em;
}

#present .attention ul li::after {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}

@media screen and (min-width:800px){
	.page_ttl::before {
		background: url(../images/datacasting/img_ttl_pc.png) no-repeat center top;
		background-size: 100% auto;
	}

	.subpage .main_inner {
		background: url(../images/datacasting/bg_dotto.jpg) repeat center top;
		background-size: 24px auto;
	}

	.subpage .main_inner:not(:last-child) {
		margin-bottom: 9.2251%;
	}

	#campaign .contents_ttl {
		width: 81.9149%;
	}

	#campaign .img_txt01 {
		width: 70.2128%;
		margin-top: -0.532%;
	}

	#campaign .img_txt01::before {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 12.4243%;
		display: block;
		background: url(../images/datacasting/img_campaign_01_pc.png) no-repeat center top;
		background-size: 100% auto;
	}

	#campaign .img_txt01 img {
		display: none;
	}

	#campaign .img_tv {
		width: 54.2554%;
		margin-top: 3.8298%;
	}

	#campaign .img_txt02 {
		width: 57.4469%;
		position: relative;
		margin-top: 4.2554%;
	}

	#campaign .img_txt02::before {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 53.7038%;
		display: block;
		background: url(../images/datacasting/img_campaign_03_pc.png) no-repeat center top;
		background-size: 100% auto;
	}

	#campaign .img_txt02 img {
		display: none;
	}

	#present .contents_ttl {
		width: 24.4681%;
	}

	#present .img_present {
		width: 82.9788%;
		margin-top: 3.4043%;
	}

	#present .img_present::before {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 41.5385%;
		display: block;
		background: url(../images/datacasting/img_present_01_pc.png) no-repeat center top;
		background-size: 100% auto;
	}

	#present .img_present img {
		display: none;
	}

	#present .btn_entry {
		width: 34.0426%;
		position: relative;
		margin-top: 4.2554%;
	}

	#present .btn_entry a {
		width: 100%;
		display: block;
	}

	#present .btn_entry a::before,
	#present .btn_entry a::after {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 23.75%;
		display: block;
		transition: opacity 0.1s ease;
	}

	#present .btn_entry a::before {
		background: url(../images/datacasting/btn_entry_off.png) no-repeat center top;
		background-size: 100% auto;
	}

	#present .btn_entry a::after {
		background: url(../images/datacasting/btn_entry_on.png) no-repeat center top;
		background-size: 100% auto;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
	}

	#present .btn_entry a:hover::before {
		opacity: 0;
	}

	#present .btn_entry a:hover::after {
		opacity: 1;
	}

	#present .btn_entry a img {
		display: none;
	}

	#present .apology {
		width: 88.2979%;
		font-size: 1.6rem;
		line-height: 1.5em;
		padding: 1.5958% 3.1915%;
		margin-top: 4.2554%;
	}

	#present .apology h2 {
		margin-bottom: 1.3055%;
	}

	#present .apology p {
		text-align: center;
	}

	#present .attention {
		width: 88.2979%;
		font-size: 1.6rem;
		line-height: 1.5em;
		padding: 1.5958% 3.1915%;
		margin-top: 4.2554%;
	}
}

@media screen and (min-width:1401px){
	.subpage .main_inner:not(:last-child) {
		margin-bottom: 100px;
	}
}