@charset "utf-8";

/*
************************************************************************
* 基本設定
* @copyright Revolme Inc.
*
* サイトの基本設定を行う
************************************************************************
*/

/*
************************************************************************
 基本
************************************************************************
*/
body
{
	/* 最小幅 */
	min-width:1200px;

	font-size:1.6rem;
	font-weight:normal;
	line-height:1.7;
	letter-spacing:0.1em;
}

/*
************************************************************************
 ページラッパー
************************************************************************
*/
#wrapper
{
	z-index:0;
	overflow:hidden;

	min-height:100vh;

	width: 100%;
	margin: 0 auto;

}
#wrapper.hidden
{
	visibility:hidden;
}
/*
************************************************************************
 ヘッダー
************************************************************************
*/
#header
{

}
#header-contents
{

}

/*
************************************************************************
 ボディ（コンテンツ部）
************************************************************************
*/
#body
{
	z-index:1;

}
#body-contents
{
	z-index:0;
}


/*
************************************************************************
 フッター
************************************************************************
*/
#footer
{
	z-index:2;


}
#footer-contents
{
	z-index:0;
}

/*
************************************************************************
 段落
************************************************************************
*/
.section
{
	display:block;
	width:100%;
	margin: 0 auto;
}
.section.section-wh {
	background-image: url(../../img/common/bg-wh.svg);
	background-position: 0 0;
	background-repeat: repeat;
}
.section.section-blue {
	background-color: #D9F1FC;
}

.section.has-bg
{
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	background-color:rgba(0,0,0,0.3) !important;
	background-blend-mode:color;
}
.section + hr
{
	height:0px;
	margin:0 auto;

	max-width:1000px;
	border:0px solid transparent;
	border-bottom:1px solid  #8E8E8E;
}
.section:before,
.section:after
{
	content: ".";
	display: block;
	clear: both;
	float: none;
	height: 0px;
	width: 100%;
	visibility: hidden;
	overflow:hidden;
}
.section:before
{
	margin-bottom:30px;
}
.section:after
{
	margin-top:30px;
}
.section.no-margin:before,
.section.no-margin:after
{
	margin-bottom:0px;
	margin-top:0px;
}
.row
{
	max-width: 940px;
	width:100%;
	padding-left: 20px;
	padding-right: 20px;
	margin-left:auto;
	margin-right:auto;
}
#top-page .row,
#footer .row
{
	max-width: 1200px;
}
.row.fill
{
	width:100%;
}

.top-contents {
	max-width: 960px;
	width: 100%;
	margin: 0 auto;
}

/* ################################################################################################ */
/* ## 中型                       ################################################################## */
/* ################################################################################################ */
@media screen and (max-width:1320px) {
	body
	{
		/* 最小幅 */
		min-width:1080px;

		font-size:1.6rem;
		font-weight:normal;
		line-height:1.7;
		letter-spacing:0.10em;
	}
	#header
	{
		z-index:3;

		overflow:hidden;
		position:relative;
		top:auto;
		bottom:auto;
		left:auto;

		height:auto;
		width:auto;
	}
	#body
	{
		z-index:1;
		margin-left:0px;
	}
	#footer
	{
		z-index:2;
		margin-left:0px;
	}
	/*
	************************************************************************
	 段落
	************************************************************************
	*/
	.row
	{
	}
	.row.fill
	{
		width:100%;
		padding-left:0vw;
		padding-right:0vw;
	}
}

/* ################################################################################################ */
/* ## スマホサイト用スタイル ###################################################################### */
/* ################################################################################################ */
@media screen and (max-width:640px) {
	/*
	************************************************************************
	 基本
	************************************************************************
	*/
	body
	{
		min-width:300px;
		font-size:2.2rem;
	}
	#wrapper {
		max-width: 640px;
		width: 100%;
	}
	#header
	{
		z-index:3;

		overflow:hidden;
		position:relative;
		top:auto;
		bottom:auto;
		left:auto;

		height:15vw;
		width:auto;
	}
	#body
	{
		z-index:1;
		margin-left:0px;
	}
	#footer
	{
		z-index:2;
		margin-left:0px;
	}
	/*
	************************************************************************
	 段落
	************************************************************************
	*/
	.section + hr
	{
		height:0px;
		margin:0 auto;

		width:92.1875vw;
		border:0px solid transparent;
		border-bottom:1px solid  #8E8E8E;
	}
	.section:before
	{
		margin-bottom:4.6875vw;
	}
	.section:after
	{
		margin-top:4.6875vw;
	}
	.row
	{
		width:100%;
		padding-left:3.125vw;
		padding-right:3.125vw;
	}
	.row.fill
	{
		width:100%;
		padding-left:0vw;
		padding-right:0vw;
	}
}
