/*-----------------------------------------------------------------------------------------
	フォトコンテスト結果
-----------------------------------------------------------------------------------------*/

/*------------------------------ メイン画像 ----------*/
.main_photo_result {
	display: block;
	max-width:960px;
	width:100%;
	height: auto;
	margin:50px auto 30px auto;
}
/*---------- Finish ----------*/
#bg-npokikin_finish {
	background:url('../img/content/contest/v3/bg-npokikin2021.jpg') 50% 50% no-repeat;
	background-size:cover;
	padding:50px 0;
	margin-bottom:100px;
	text-align: center;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.message {
    max-width:1100px;
    min-width: 960px;
    margin:0 auto 150px auto;
    font-size:26px;
    line-height:180%;
    font-weight:700;
    padding:0 20px;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}

/*------------------------------ グランプリタイトル ----------*/
#grandprix p.ttl-gdpx {
	margin: 0 auto 50px auto;
	text-align: center;
}

/*------------------------------ グランプリエリア ----------*/
.bx-gdpx {
	position: relative;
	text-align: center;
	margin: 0 auto 100px auto;
}
.bx-gdpx img {
	padding: 10px;
	border:1px solid #eee;
	display: block;
	margin: 0 auto 30px auto;
	max-width:640px;
	width:100%;
	height: auto;
    background:#fff;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
.bx-gdpx dl {
	margin:0 auto;
	width:620px;
}
.bx-gdpx dl dt {
	font-size: 30px;
	font-weight:700;
	text-align: center;
	color:#e60012 !important;
	line-height: 180%;
	margin-bottom:20px;
}
.bx-gdpx dl dd {
	font-size: 20px;
	font-weight:700;
	text-align: left;
	line-height: 180%;
	color:#595757;
}

/*------------------------------ 準グランプリエリア ----------*/
.bx-gdpx-sec {
	display: -webkit-flex;
	display: flex;
    -webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-justify-content:space-between;
			justify-content:space-between;
	width:960px;
	margin: 0 auto 100px auto;
}
.bx-gdpx-sec div {
	width:48%;
    margin-bottom:50px;
}

.bx-gdpx-sec div img {
	padding: 10px;
	border:1px solid #eee;
	display: block;
	margin: 0 auto 30px auto;
	width:100% !important;
	height: auto;
    background:#fff;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
.bx-gdpx-sec dl {
	margin:0 auto;
	width:100%;
}
.bx-gdpx-sec dl dt {
	position: relative;
	font-size: 18px;
	font-weight:700;
	text-align: center;
	color:#e60012 !important;
	margin-bottom: 20px;
	line-height: 180%;
}
.bx-gdpx-sec dl dd {
	position: relative;
	font-size: 15px;
	font-weight:700;
	text-align: center;
	line-height: 180%;
	color:#595757;
}
ul.list-gdpx {
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content:space-between;
			justify-content:space-between;
	-webkit-flex-wrap: wrap;
			flex-wrap: wrap;
	width:960px;
	margin: 0 auto 100px auto;
}
ul.list-gdpx li {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-start;
			align-items: flex-start;
	-webkit-justify-content:space-between;
			justify-content:space-between;
	width:50%;
	padding:20px;
	background: #fff;
	border-bottom:1px solid #f5f5f5;
	border-right:1px solid #f5f5f5;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
ul.list-gdpx li img {
	width:30%;
	height: auto;
}
ul.list-gdpx li dl {
	width:63%;
	text-align: left;
}
ul.list-gdpx li dl dt {
	font-size: 16px;
	font-weight:700;
	line-height: 180%;
	color:#e60012 !important;
}
ul.list-gdpx li dl dd {
	margin-top:15px;
}
ul.list-gdpx li dl dd span {
	font-size: 12px;
	font-weight:700;
	display: block;
	margin-top:10px;
}
.ttl-gdpx-tokusen {
	position: relative;
	margin: 0 auto;
	line-height: 80px;
	text-align: center;
	font-weight: 700;
	font-size: 26px;
	color: #fff;
	width:960px;
	background: #E8B400;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
.ttl-gdpx-tokubetu {
	position: relative;
	margin: 0 auto;
	line-height: 80px;
	text-align: center;
	font-weight: 700;
	font-size: 26px;
	color: #fff;
	width:960px;
	background:#4EB9B4;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
.ttl-sponsor {
	position: relative;
	margin: 0 auto;
	line-height: 80px;
	text-align: center;
	font-weight: 700;
	font-size: 26px;
	color: #fff;
	width:960px;
	background:#3383F0;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
.bx-message {
	position: relative;
	margin: 0 auto 40px auto;
	line-height: 180%;
	font-size: 30px;
	font-weight: 700;
	width:960px;
	background:#f9f9f9;
	padding: 50px 30px ;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}

/*------------------------------ スポンサーエリア ----------*/
.bx-sponsor {
	position: relative;
	text-align: center;
	margin: 0 auto 100px auto;
}
.bx-sponsor img {
	padding: 10px;
	border:1px solid #eee;
	display: block;
	margin: 0 auto 30px auto;
	max-width:640px;
	width:100%;
	height: auto;
	background:#fff;
    -webkit-box-sizing: border-box;
			box-sizing: border-box;
	-webkit-box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
			box-shadow: 5px 5px 0 rgba(0,0,0,0.10);
}
.bx-sponsor dl {
	margin:0 auto;
	width:620px;
}
.bx-sponsor dl dt {
	font-size: 30px;
	font-weight:700;
	text-align: center;
	color:#e60012 !important;
	line-height: 180%;
	margin-bottom:20px;
}
.bx-sponsor dl dd {
	font-size: 20px;
	font-weight:700;
	text-align: left;
	line-height: 180%;
	color:#595757;
}

/*-----------------------------------------------------------------------------------------
	SP
-----------------------------------------------------------------------------------------*/
@media only screen and (max-width:680px) {
	/*-----------------------------------------------------------------------------------------
		フォトコンテスト結果
	-----------------------------------------------------------------------------------------*/

	/*------------------------------ メイン画像 ----------*/
	.main_photo_result {
		max-width:100%;
		margin:20% auto 5% auto;
		display: block;
	}
	/*---------- Finish ----------*/
	#bg-npokikin_finish {
		background:url('../img/content/contest/v3/bg-npokikin2021_sp.jpg') 50% 50% no-repeat;
		background-size:cover;
		padding:20% 5%;
		margin-bottom:12%;
	}
	#bg-npokikin_finish img {
		width:100%;
		height:auto;
	}
    .message {
        max-width:100%;
        min-width:100%;
        margin:0 auto 15% auto;
        font-size:20px;
        padding:0;
    }

	/*------------------------------ グランプリタイトル ----------*/
	#grandprix p.ttl-gdpx {
		margin: 0 auto 10% auto;
		text-align: center;
		width:70%;
	}
	#grandprix p.ttl-gdpx img {
		width:100%;
		height:auto;
	}

	/*------------------------------ グランプリエリア ----------*/
	.bx-gdpx {
		margin: 0 auto 10% auto;
		width:90%;
	}
	.bx-gdpx img {
		padding: 2%;
		margin: 0 auto 6% auto;
		max-width:100%;
	}
	.bx-gdpx dl {
		width:100%;
	}
	.bx-gdpx dl dt {
		font-size: 20px;
		margin-bottom:4%;
	}
	.bx-gdpx dl dd {
		font-size: 16px;
	}

	/*------------------------------ 準グランプリエリア ----------*/
	.bx-gdpx-sec {
		display: block;
		width:90%;
		margin: 0 auto 10% auto;
	}
	.bx-gdpx-sec div {
		width:100% !important;
		margin:0 0 5% 0;
	}
	.bx-gdpx-sec img {
		padding: 2%;
		margin: 0 auto 6% auto;
		max-width:100%;
	}
	.bx-gdpx-sec dl {}
	.bx-gdpx-sec dl dt {
		font-size: 16px;
		margin-bottom: 4%;
	}
	.bx-gdpx-sec dl dd {
		font-size: 14px;
	}
	
	.bx-gdpx-sec2 {
		display: block;
		width:90%;
		margin: 0 auto 10% auto;
	}
	.bx-gdpx-sec2 div {
		width:100% !important;
		margin:0 0 5% 0;
	}
	.bx-gdpx-sec2 img {
		padding: 2%;
		margin: 0 auto 6% auto;
		max-width:100%;
	}
	.bx-gdpx-sec2 dl {}
	.bx-gdpx-sec2 dl dt {
		font-size: 16px;
		margin-bottom: 4%;
	}
	.bx-gdpx-sec2 dl dd {
		font-size: 14px;
	}

	ul.list-gdpx {
		display: block;
		width:100%;
		margin: 0 auto;
	}
	ul.list-gdpx li {
		position: relative;
		display: block;
		width:100%;
		padding:4%;
		background: #fff;
		border-right:none;
	}
	ul.list-gdpx li img {
		width:30%;
		height: auto;
	}
	ul.list-gdpx li dl {
		width:100%;
	}
	ul.list-gdpx li dl dt {
		position: absolute;
		top:15px;
		left:35%;
		width:65%;
		line-height:160%;
	}
	ul.list-gdpx li dl dd {
		margin-top:6%;
	}
	ul.list-gdpx li dl dd span {
		margin:2% 0;
	}
	.ttl-gdpx-tokusen,
	.ttl-gdpx-tokubetu,
	.ttl-sponsor {
		line-height: 60px;
		font-size: 20px;
		width:100%;
	}
	.bx-message {
		margin: 0 auto 10% auto;
		line-height: 180%;
		font-size: 20px;
		width:100%;
		padding: 8% 4%;
		-webkit-box-shadow: 0 5px 0 rgba(0,0,0,0.10);
				box-shadow: 0 5px 0 rgba(0,0,0,0.10);
	}
	.message {
		margin: 0 auto 10% auto;
		line-height: 180%;
		font-size: 16px;
		width:100%;
		padding: 8% 4%;
		-webkit-box-shadow: 0 5px 0 rgba(0,0,0,0.10);
				box-shadow: 0 5px 0 rgba(0,0,0,0.10);
	}

	/*------------------------------ スポンサーエリア ----------*/
	.bx-sponsor {
		margin: 0 auto 10% auto;
		width:90%;
	}
	.bx-sponsor img {
		padding: 2%;
		margin: 0 auto 6% auto;
		max-width:100%;
	}
	.bx-sponsor dl {
		width:100%;
	}
	.bx-sponsor dl dt {
		font-size: 20px;
		margin-bottom:4%;
	}
	.bx-sponsor dl dd {
		font-size: 16px;
	}
}