@charset "UTF-8";
/* CSS Document */
/*****************************************
*index.html専用ファイル。
******************************************/
#main-visual{
	height:390px;
	background:url("../images/index_bg_mv_sp.jpg") no-repeat;
	background-size:cover;
	background-position:50% 70%;
	position:relative;
}
#mv-logo{
	width:210px;
	position:absolute;
	left:50%;
	top:50%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
#news h2{
	height:45px;
	line-height:45px;
	text-align:center;
	font-size:1.6rem;
	color:#033844;
}
#news .topics{
	min-height:83px;
	background:#033844;
	display:flex;
	justify-content: space-between;
	margin-bottom:6px;
	color:#FFF;
}
#news .topics-thum{
	width:32%;
}
#news .topics-text{
	width:66%;
	padding:10px 10px 10px 0;
}
#news .topics-text time{
	color:#fcee21;
	display:inline-block;
	padding-bottom:10px;
}
#news .topics-text p{
	line-height:1.8rem;
	text-align:justify;
}
#f-d-area h2{
	height:45px;
	line-height:45px;
	text-align:center;
	font-size:1.6rem;
	color:#033844;
}
#f-d-area .f-d-content{
	min-height:160px;
	background:#d4ddeb;
	margin-bottom:6px;
	padding:10px;
}
.greeting{
	margin:20px 0 20px 0;
	padding:20px;
	background:#FFF;
}
.greeting:last-child{
	margin:20px 0 0 0;
}
.greeting h3{
	font-size:1.7rem;
	font-weight:bold;
	line-height:2.6rem;
	margin-bottom: 15px;
}
.greeting time{
	display:block;
	margin-bottom: 15px;
}
.greeting p{
	line-height:2.2rem;
	text-align:justify;
}
.greeting p a{
	text-decoration: underline;
}
.winners-inner{
	height: 700px;
	overflow-y: auto;
}
.submit{
	margin-top:20px;
}
.submit a{
	display: block;
	text-align:center;
}
input[type="submit"] {
    border: none;
    min-width: 155px;
    height: 35px;
    background: #4ec0f9;
    color: #FFF;
    font-size: 1.4rem;
    border-radius: 3px;
}
.thum{
	margin-top:15px;
}
.text{
	background:#f3f7ff;
	padding:15px;
}
.text p{
	font-size:1.5rem;
	margin-bottom:10px;
}
.text p a{
		text-decoration: underline;
}
.special-text{
	color:#FD5C6B;
}
.joshi-text{
	color:#e9769d!important;
	font-weight:bold!important;
}
.rd{
	display:inline-block;
	padding: 10px 10px 8px 10px;
    text-align: center;
    background: #f25151;
    font-size: 1rem;
    color: #FFF;
    border-radius: 3px;
}
.winners h2{
	text-align: center;
	font-size: 1.8rem;
	margin:40px 0 10px 0;
}
/*モーダルウインドウ（個別設定）*/
#modal-content{
	width:90%;
	min-height:500px;
	padding:20px;
	top:20px;
	left:50%;
	transform:translate(-50%,0%);
}
#sns-pr{
	padding:15px 0 0 0;
}
#sns-pr-header h2{
	text-align:center;
	font-size:1.8rem;
	margin-bottom:15px;
}
#sns-pr-header p{
	text-align:justify;
	line-height:2rem;
	margin-bottom:7px;
}
#sns-pr-inner p{
	margin-bottom:10px;
}
/*****************************************
*タブレット-index.html専用ファイル。
******************************************/
@media screen and (min-width:600px) {
	#main-visual{
		height:450px;
		background:url("../images/index_bg_mv_tab.jpg") no-repeat;
		background-position:50% 50%;
	}
	#news h2{
		height:60px;
		line-height:60px;
		font-size:1.8rem;
	}
	#news-inner{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#news-inner .topics{
		width:32.2%;
		min-height:320px;
		margin-bottom:12px;
		display:block;
	}
	#news .topics-thum{
		width:100%;
	}
	#news .topics-text{
		width:100%;
		padding:10px 10px 10px 10px;
		font-size:1.6rem;
	}
	#news-inner:after{
		content:"";
		display:block;
		width:32.2%;
		height:0;
	}
	#f-d-area h2{
		height:60px;
		line-height:60px;
		font-size:1.8rem;
	}
	#f-d-area .f-d-content{
		min-height:320px;
		font-size:1.6rem;
		margin-bottom:12px;
	}
	#f-d-area .f-d-content:last-child{
		margin-bottom:0;
	}
	/*モーダルウインドウ（個別設定）*/
	#modal-content{
		width:85%;
		min-height:350px;
		padding:20px;
	}
	#sns-pr-inner{
		display:flex;
		justify-content:space-between;
	}
	#sns-pr-inner p{
		width:49.5%;
	}
}
/*****************************************
*PC-index.html専用ファイル。
******************************************/
@media screen and (min-width:960px) {
	#main-visual{
		height:450px;
		background:url("../images/index_bg_mv_pc.jpg") no-repeat;
		background-size:contain;
		background-position:center center;
	}
	#news h2 {
		height:0%;
		line-height:1;
		padding-top:50px;
		padding-bottom:20px;
		font-size:2.4rem;
	}
	#news-inner .topics {
		width:24.2%;
		min-height:352px;
	}
	#news-inner:after{
		width:24.2%;
		height:0;
	}
	#news-inner:before{
		content:"";
		display:block;
		width:24.2%;
		height:0;
		order:1;
	}
	#f-d-area h2 {
    	height:0%;
		line-height:1;
		font-size:2.4rem;
		padding-top:35px;
		padding-bottom:20px;
	}
	#f-d-area #f-d-area-inner{
		display:flex;
		justify-content:space-between;
	}
	#f-d-area .f-d-content{
		width:49.5%;
		min-height:408px;
		margin-bottom:0;
	}

	.greeting h3{
		font-size:1.8rem;
	}
	.greeting p{
		font-size:1.5rem;
	}
	.col-2{
		display:flex;
		justify-content:space-between;
	}
	.thum{
		width:35%;
		margin-top: 0;
	}
	.text{
		width:64%;
		font-size:1.5rem;
	}
	.text p{
		font-size:1.6rem;
		margin-bottom:10px;
	}
	.winners h2{
		text-align: center;
		font-size: 2.2rem;
		margin:50px 0 10px 0;
	}
	.winners-inner{
		display:flex;
		justify-content:space-between;
		flex-wrap:wrap;
		height: auto;
		overflow-y: visible;
	}
	.winners-inner::after{
		content:"";
		display:block;
		width:33%;
		height:0;
	}
	.winners .greeting{
		width:33%;
	}
	.winners .greeting:last-child {
		margin: 20px 0 20px 0;
	}
	.winners .greeting .col-2{
		display:block;
	}
	.winners .greeting .col-2 .thum{
		width:100%;
	}
	.winners .greeting .col-2 .text{
		width:100%;
		min-height: 170px;
	}
	/*モーダルウインドウ（個別設定）*/
	#modal-content{
		width:35%;
		min-height:350px;
		padding:20px;
		top:50%;
		transform:translate(-50%,-50%);
	}
	#sns-pr-header h2{
		font-size:2.4rem;
	}
	#sns-pr-header p{
		font-size:1.5rem;
	}
}