#message #contents {
	background-color: #FDF9F2;
	overflow: hidden;
}

#message #contents h1 {
	padding: 0 0 40px 0;
}

/* greeting */
#message #greeting p {
	padding: 0 0 20px 0;
}

/* motto */
#message #motto img {
	position: relative;
	top: 20px;
	right: -20px;
	max-width: 50%;
}

#message #motto p {
	display: inline-block;
	font-size: 2rem;
	text-align: left;
}

/* philosophy */
#message #philosophy img {
	position: relative;
	top: 70px;
	left: -8vw;
	max-width: 50%;
}

#message #philosophy p strong {
	font-size: 1.8rem;
	font-family: serif;
	color: #FF0000;
}

#message #philosophy ol {
	counter-reset: item;
	display: inline-block;
}

#message #philosophy ol li {
	position: relative;
	padding: 0 0 0 2.5em;
	margin: 20px 0 0 0;
	font-size: 1.8rem;
	line-height: 1.4;
	text-align: left;
}

#message #philosophy ol li::before {
	counter-increment: item;
	content: counter(item)".";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	font-size: 3rem;
	font-family: serif;
	color: #FF0000;
	line-height: 1;
	transform: translateY(-50%);
}

/* strategy */
#message #strategy img {
	position: relative;
	bottom: 10px;
	right: -10px;
	max-width: 90%;
}

/* declaration */
#message #declaration img {
	max-width: 80vw;
}


#message #declaration .declaration_detail {
	padding: 0 0 30px 0;
	text-align: left;
}

#message #declaration .declaration_detail h3 {
	padding: 0 0 5px 0;
	margin: 20px 0 10px 0;
	font-size: 1.8rem;
	font-weight: normal;
	border-bottom: solid 1px;
}



@media all and (min-width: 801px) {
	#message #main {
		background-image: url(../images/message/bg_message.jpg?20200804);
	}

	#message #imenu ul {
		padding-bottom: 30px;
	}

	/* greeting */
	#message #greeting {
		padding-top: 30px;
	}

	#message #greeting p {
		font-size: 1.8rem;
	}

	#message #greeting p:last-of-type {
		padding: 40px 0 0 0;
	}

	/* motto */
	#message #motto img {
		position: absolute;
		top: 100px;
		right: -15px;
	}

	#message #motto p {
		padding-bottom: 70px;
		font-size: 2.8rem;
	}

	/* philosophy */
	#message #philosophy img {
		position: absolute;
		top: 200px;
		left: -45px;
	}

	#message #philosophy p strong {
		font-size: 3rem;
	}

	#message #philosophy ol li {
		margin: 50px 0 0 90px;
		font-size: 2.8rem;
	}

	#message #philosophy ol li::before {
		font-size: 5.2rem;
	}

	/* strategy */
	#message #strategy img {
		position: absolute;
		right: -10px;
		bottom: 20px;
	}

	#message #strategy p {
		padding-bottom: 130px;
		font-size: 2.8rem;
	}

	/* sky */
	#message #sky {
		height: 278px;
		background: url(../images/message/bg_sky.jpg) no-repeat center center;
		background-size: cover;
	}

	/* declaration */
	#message #declaration img {
		max-width: auto;
		margin: 0 0 40px 0;
	}

	#message #declaration .declaration_detail {
		display: inline-block;
		margin: 0 0 0 50px;
		width: 420px;
		vertical-align: top;
	}

	#message #declaration .declaration_detail h3 {
		margin: 0 0 20px 0;
		font-size: 2.1rem;
	}
}
