@charset "UTF-8";

/**************************************************
　全体
***************************************************/

/* 要素 */

body {
	position: absolute;
	word-break: break-all;
	width: 100%;
}
li {
	list-style-type: none;
}
a {
	text-decoration: none;
}
img {
	border-style: none;
}
select {
	height: 40px;
	padding-left: 5px;
}
.floatLeft {
	float: left;
}
.clearBoth {
	clear: both;
}
.btn {
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	color: #FFF;
	cursor: pointer;
	margin: 0 auto;
	text-align: center;
	transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-webkit-transition: all 0.3s linear;
}
.center {
	text-align: center;
}
.important {
	color: #CC2C2C;
}
.error {
	color: #CC2C2C;
	font-size: 90%;
}
.smallTxt {
	font-size: 85%;
}
.loading {
	display: none;
	height: 66px;
	left: calc( 50vw - 33px );
	position: fixed;
	top: calc( 50vh - 33px );
	width: 66px;
	z-index: 50;
}
.loading img {
	height: 66px;
	width: 66px;
}
.whiteBg {
	background-color: rgba( 255, 255, 255, 0.85 );
	display: none;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100vw;
	z-index: 40;
}


/**************************************************
　全体
***************************************************/

.base {
	background-color: #f5f5f5;
}

/* 見出し */
.base h2 {
	border-bottom: 3px solid #000;
	font-size: 28px;
	height: 40px;
	margin: 0 auto;
	text-align: center;
	width: 200px;
}
.base .leadText {
	height: 20px;
	margin-top: 65px;
	text-align: center;
}

.mainContents {
	font-size: 90%;
	margin: 0 auto;
}
.field-title {
	border-bottom: 3px solid #000;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 40px;
}
.field-title {
	width: 160px;
}


/**************************************************
　コンテスト概要
***************************************************/

.contest-top {
	display: none;
}

/**************************************************
　ログアウト
***************************************************/

.logout {
	display: none;
}

/**************************************************
　変更完了画面
***************************************************/

.modifiedDone {
	box-sizing: border-box;
}

/**************************************************
　デバイス振り分け設定
***************************************************/

/* ■■ SP ■■ */
@media (max-width: 767px) {

	/* 全体 */
	.base {
		padding: 70px 0 80px;
	}

	/* 変更完了画面 */
	.modifiedDone {
		height: calc( 100vh - 193px );
	}
	.modifiedDone .leadText {
		margin: 80px auto 0;
	}

}
@media (max-width: 320px) {

	/* 幅狭スマホ */

	/* 変更完了画面 */
	.modifiedDone h2 {
		width: 280px;
	}

}
@media (min-width: 321px) and (max-width: 767px) {

	/* 幅広スマホ */

	/* 変更完了画面 */
	.modifiedDone h2 {
		width: 300px;
	}

}


/* ■■ タブレット＆ブラウザ ■■ */
@media screen and (min-width: 768px) {

	/* 全体 */
	.base {
		padding: 100px 0 120px;
	}

	/* 変更完了画面 */
	.modifiedDone {
		height: calc( 100vh - 175px );
	}
	.modifiedDone h2 {
		width: 320px;
	}
	.modifiedDone .leadText {
		margin: 120px auto 0;
	}

}

/* ■■ (狭いブラウザとタブレット向け) ■■ */
@media (max-width: 1020px) and (min-width: 768px) {

	/*  */

}


/* ■■ PC ■■ */
@media screen and (min-width: 1021px) {

	/* Menu */
	.logined {
		right: 250px !important;
	}
	.contest-top {
		display: block;
		position: absolute;
		right: 130px !important;
		top: 95px;
	}
	.contest-top a {
		color: #888;
		font-size: .9em;
	}
	.contest-top a:hover {
		color: #C8A063;
	}
	.logout {
		display: block;
		position: absolute;
		right: 37px !important;
		top: 95px;
	}
	.logout a {
		color: #888;
		font-size: .9em;
	}
	.logout a:hover {
		color: #C8A063;
	}

}
@media (max-width: 1184px) and (min-width: 769px) {

	/* ミドルブラウザ */

}
@media screen and (min-width: 1185px) {

	/* ワイドブラウザ */

}
