
/********************************************************************/
/********************************************************************/
/* Common */
/********************************************************************/
/********************************************************************/
html {
	/*font-size: 62.5%;*/
	font-size: 100%;
}
body {
	padding-top: 88px;
}
body {
	font-family: 'M PLUS 1p', "メイリオ", "Hiragino Kaku Gothic ProN", sans-serif;
	letter-spacing: 0.1em;
	color: #222222;
	line-height: 1;
}
img {
	max-width: 100%;
	height: auto;
}
#contents {
	padding-top: 24px;
/*	padding-bottom: 90px;*/
}
@media screen and (max-width: 768px) {
	#contents {
		padding-top: 120px;
	/*	padding-bottom: 90px;*/
	}
}
/********************************************************************/
/* Layout */
/********************************************************************/
.contents-inner {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.contents-inner {
		width: 100%;
		margin: 0 auto;
		padding: 0 1em;
	}
}
#contents .contents-inner {
	margin-top: 30px;
	margin-bottom: 50px;
	/*font-size: 1.4rem;*/
	line-height: 1.6;
}
/*------------------------------------------------------------------*/
.flow-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	display: -webkit-flex;
	flex-wrap: nowrap;
	margin-top: 40px;
}

/********************************************************************/
/* font-color */
/********************************************************************/
.font-white 	{	color: #fff;}
.font-black 	{	color: #000;}
.font-gray 		{	color: #909090;}
.font-darkgray	{	color: #222;}
.font-red 		{	color: #f00;}
.font-blue 		{	color: #004898;}
.font-skyblue 	{	color: #89BDDE;}
.font-lightblue {	color: #02B0E5;}
.font-pink 		{	color: #ea8893;}

/********************************************************************/
/* bg-color */
/********************************************************************/
.bg-white 		{	background-color: #fff;}
.bg-black 		{	background-color: #000;}
.bg-gray 		{	background-color: #909090;}
.bg-darkgray	{	background-color: #222;}
.bg-red 		{	background-color: #f00;}
.bg-blue 		{	background-color: #004898;}
.bg-skyblue 	{	background-color: #89BDDE;}
.bg-lightblue 	{	background-color: #39c;}
.bg-lightcyan	{	background-color: #E0FFFF;}
.bg-mintblue	{	background-color: #F5FFFA;}
.bg-bluegray 	{	background-color: #5e77b0;}
.bg-yellow 		{	background-color: #f1d021;}
.bg-skyblue 	{	background-color: #87ceeb;}
.bg-pink 		{	background-color: #ea8893;}
.bg-rightpink 	{	background-color: #FFF0F5;}


/********************************************************************/
/********************************************************************/
/* Parts */
/********************************************************************/
/********************************************************************/

/********************************************************************/
/* title */
/********************************************************************/
/* for wrap h1 */
.page-title {
	padding: 35px 0;
	border-bottom: 1px solid #dedede;
}
/*------------------------------------------------------------------*/
/* for h1 */
.section-title {
	text-align: center;
}
.section-title span {
	display: block;
}
.section-title span:nth-of-type(1) {
	position: relative;
	font-size: 2rem;
}
/*.section-title span:nth-of-type(1)::before {
	content: '';
	position: absolute;
	bottom: -20px;
	left: 50%;
	width: 100px;
	height: 2px;
	background-color: #004898;
	transform: translateX(-50%);
}*/
/*------------------------------------------------------------------*/
/* for h2 */
.bl-title {
	position: relative;
	margin-bottom: 50px;
	padding-left: 15px;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.2;
	color: #004898;
	border-left: 5px solid #004898;
}
.bl-title::before {
	content: '';
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 100%;
	height: 1px;
	border-bottom: 1px dotted #909090;
}
/********************************************************************/
/* btn */
/********************************************************************/
.entry-btn {
	/*border-radius: 10px;*/
}
#contents .entry-btn {
	margin: 20px auto 40px auto;
	/*width: 300px;*/
	text-align: center;
}
@media screen and (max-width: 768px) {
	#contents .entry-btn {
		margin: 10px auto 40px auto;
		text-align: center;
	}
}
/*------------------------------------------------------------------*/
.btn a, 
.entry-btn a {
	position: relative;
	display: inline-block;
	width: 185px;
	height: 50px;
	padding-left: 15px;
	line-height: 50px;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	/*font-size: 1.6rem;*/
	box-shadow: #333333 3px 3px 5px 0px;
}
@media screen and (max-width: 768px) {
	.entry-btn a {
		position: relative;
		display: inline-block;
		width: 185px;
		height: 50px;
		padding-left: 25px;
		line-height: 50px;
		text-align: center;
		font-weight: bold;
		text-decoration: none;
		/*font-size: 1.6rem;*/
		box-shadow: #333333 3px 3px 5px 0px;
	}
}
/*------------------------------------------------------------------*/
a.small {
	/*width: 140px;*/
	height: 35px;
	line-height: 35px;
	/*font-size: 1.4rem;*/
	font-size: 0.9rem;
}
@media screen and (max-width: 768px) {
	a.small {
		width: 100%;
		/*height: 35px;
		padding-left: 15px;*/
		text-align: left;
	}
}
/*------------------------------------------------------------------*/
/* .arrow */
/*------------------------------------------------------------------*/
.arrow::before {
	content: '';
	position: absolute;
	top: 17px;
	left: 7px;
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: translateY(-50%) rotate(45deg);
}
@media screen and (max-width: 768px) {
	.arrow::before {
		content: '';
		position: absolute;
		top: 17px;
		left: 7px;
		width: 6px;
		height: 6px;
		border: 0px;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		transform: translateY(-50%) rotate(45deg);
	}
}
.arrow-white::before {
	border-color: #fff;
}
.arrow-black::before {
	border-color: #000;
}

/*------------------------------------------------------------------*/
/* .to-top */
/*------------------------------------------------------------------*/
.to-top {
	position: fixed;
	bottom: 30px;
	right: 80px;
}
.to-top a {
	transition: 0.3s;
	display: block;
	width: 40px;
	height: 40px;
	background-color: #004898;
}
.to-top a::before {
	content: '';
	position: absolute;
	width: 7px;
	height: 7px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(-45deg);
	border-right: solid 2px #fff;
	top: 50%;
	left: 50%;
	transform: translate(-49%, -50%) rotate(-45deg);
}
@media screen and (max-width: 768px) {
	.to-top {
		right: 8px;
	}
}
/*------------------------------------------------------------------*/

