#mail #contents h2, 
#mail #contents h3, 
#mail #contents h4,
#mail #contents h5 {
	font-weight: normal;
}

#mail #contents p {
	padding: 0 0 30px 0;
	line-height: 2;
}

#mail #contents table {
	width: 100%;
}

#mail #contents table tr th, 
#mail #contents table tr td {
	display: block;
}

#mail #contents table tr th {
	padding: 10px;
	font-weight: normal;
	color: #FFFFFF;
	text-align: left;
}

#mail #contents table tr td {
	padding: 10px;
	margin: 10px 0 20px 0;
	background-color: #FFFFFF;
}

#mail #contents table tr td input {
	border: none;
	width: 100%;
}

#mail #contents input[type="submit"] {
	padding: 15px;
	margin: 20px 2%;
	width: 90%;
	font-size: 2.2rem;
	line-height: 1;
	background-color: #FFFFFF;
	border: none;
	border-radius: 10px;
	box-shadow: 0 0 4px 0 #AAAAAA;
}

#mail .error {
	padding: 30px;
	margin: 10px 0;
	color: #CC0000;
	background-color: #FFEEEE;
	border-radius: 20px;
}

#mail .error ul {
	list-style-type: disc;
	margin: 0 0 0 1em;
}


#mail #use h2 {
	padding: 5px;
	margin: 30px 0;
	font-size: 2.2rem;
	line-height: 1.2;
	background-color: #C3F5F4;
	border-radius: 10px;
	text-align: center;
}

#mail #use h3 {
	font-size: 2.2rem;
	border-bottom: solid 1px #87EBE9;
}

#mail #use a {
	text-decoration: underline;
}

#mail #mail_r {
	margin: 0 0 30px 0;
}

#mail #mail_r ul {
	margin: 0 0 0 1em;
	text-indent: -1em;
}

#mail #note, 
#mail #register, 
#mail #deregister {
	padding: 30px 10px;
	margin: 0 0 30px 0;
	border-radius: 20px;
}

#mail #note {
	border: solid 1px #87EBE9;
}

#mail #note h3 {
	font-size: 2.2rem;
}

#mail #note p span {
	color: #6FBA2C;
}

#mail #register {
	background-color: #C3F5F4;
}

#mail #register h2 {
	padding: 0 0 10px 0;
	font-size: 2.2rem;
	text-align: center;
}

#mail #register h3 {
	font-size: 2.2rem;
	border-bottom: solid 1px #87EBE9;
}

#mail #register table tr th {
	background-color: #6FBA2C;
}

#mail #register input[type="submit"] {
	color: #6FBA2C;
}

#mail #register #pp {
	padding: 10px 20px;
	margin: 20px 0;
	height: 240px;
	background-color: #FFFFFF;
	overflow: hidden;
	overflow-y: scroll;
}

#mail #deregister {
	background-color: #EDEDED;
}

#mail #deregister h2 {
	padding: 0 0 10px 0;
	font-size: 2.2rem;
	text-align: center;
}

#mail #deregister table tr th {
	background-color: #AAAAAA;
}

#mail #deregister input[type="submit"] {
	color: #555555;
}


@media print, screen and (min-width: 620px) {
	#mail #contents dl dt {
		margin: 50px 0 0 0;
	}

	#mail #contents table {
		border-collapse: separate;
		border-spacing: 20px;
		margin: 0 -20px 20px -20px;
		width: calc(100% + 40px);
	}

	#mail #contents table tr th, 
	#mail #contents table tr td {
		display: table-cell;
	}

	#mail #contents table tr th {
		width: 252px;
	}

	#mail #contents input[type="submit"] {
		width: 288px;
	}

	#mail #use h2, 
	#mail #use h3 {
		font-size: 2.4rem;
	}

	#mail #mail_l, 
	#mail #mail_r {
		width: 448px;
	}

	#mail #mail_l {
		float: left;
	}

	#mail #mail_r {
		float: right;
	}

	#mail #note, 
	#mail #register, 
	#mail #deregister {
		padding: 30px 50px;
		margin: 0 0 60px 0;
	}

	#mail #note h3 {
		font-size: 2.4rem;
	}

	#mail #register h2 {
		font-size: 2.9rem;
	}
	
	#mail #register h3 {
		font-size: 2.4rem;
	}

	#mail #register #pp {
		padding: 15px 30px;
	}

	#mail #deregister h2 {
		font-size: 2.9rem;
	}
}

