@charset "utf-8";

/***************************************************
	common.css
	共通レイアウトスタイル定義
***************************************************/

/* Base
------------------------------------------------------------ */

body {
	line-height: 2.0;
	color: #727171;
	font-size: 16px;
	margin: 0;
	min-width: 1180px;
	background: #ffffff;
	font-family:'UD Shin Go Regular',sans-serif;
}
@media only screen and (max-width: 767px) {
	body {
		min-width: inherit;
	}
}

img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}

.innerBox {
	clear: both;
	max-width: 1020px;
	margin: 0 auto;
}
@media only screen and (max-width: 767px) {
	.innerBox {
		padding: 0 30px;
	}
}

/* Link
------------------------------------------------------------ */
a { outline: none; }
a:link {
	color: #00a0e9;
	text-decoration: underline;
}
a:visited {
	color: #00a0e9;
	text-decoration: underline;
}
a:hover {
	color: #004574;
	text-decoration: none;
}

a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

/* wrapper
-------------------------------------------------------------------*/
#wrapper {
	clear: both;
}

/* header
-------------------------------------------------------------------*/
#header {
	clear: both;
}
@media only screen and (max-width: 767px) {
	#header {
	}
}
#gnavi {
	clear: both;
	margin: 40px auto;
}
#gnavi .gnaviList {
	float: right;
	margin: 0;
	padding: 0;
}
#gnavi .gnaviList > li {
	float: left;
	margin: 0 0 0 40px;
	padding: 0;
	list-style-type: none;
	font-size: 18px;
}
#gnavi .gnaviList > li a {
	color: #727171;
	text-decoration: none;
	transition: 0.5s;
}
#gnavi .gnaviList > li a:hover {
	color: #004574;
}

#menuBtnOpen {
	display: none;
}
#menuBtnClose {
	display: none;
}
@media only screen and (max-width: 767px) {
	#menuBtnOpen {
		display: block;
		/*position: fixed;
		top: 15px;
		right: 10px;*/
		float: right;
		margin: 30px 0 0 0;
		text-align: center;
		padding: 15px 20px;
		color: #ffffff;
		font-size: 16px;
		font-weight: bold;
		line-height: 1;
		background: #004574;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		z-index: 1000;
	}
	#menuBtnClose {
		float: right;
		display: block;
		text-align: center;
		margin: 5px 0 20px 0;
		padding: 15px 20px;
		color: #004574;
		font-size: 16px;
		font-weight: bold;
		line-height: 1;
		background: #ffffff;
		border-radius: 5px;
		-webkit-border-radius: 5px;
	}
	#menuBox {
		position: fixed;
		top: 0;
		right: -275px;
		width: 275px;
		height: 100%;
		color: #ffffff;
		padding: 10px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		background: #004574;
		overflow-x: hidden;
		z-index: 3000;
		-webkit-overflow-scrolling: touch;
		-webkit-transition: all .2s;
				transition: all .2s;
	}
	#menuBox.open {
		-webkit-transform: translate3d(-275px, 0, 0);
				transform: translate3d(-275px, 0, 0);
	}
	#overlay  {
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		z-index: 2000;
		background: rgba(0, 0, 0, .3);
	}
	#gnavi {
	}
	#gnavi .gnaviList {
		float: none;
	}
	#gnavi .gnaviList > li {
		float: none;
		margin: 0 0 0 0;
		border-bottom: 1px solid #ffffff;
	}
	#gnavi .gnaviList > li:first-child {
		border-top: 1px solid #ffffff;
	}
	#gnavi .gnaviList > li a {
		color: #ffffff;
		display: block;
		text-align: center;
		padding: 10px;
	}
	#gnavi .gnaviList > li a:hover {
		color: #ffffff;
	}
}


/* main
-------------------------------------------------------------------*/
#main {
	display: block;
	clear: both;
}


/* footer
-------------------------------------------------------------------*/
#footer {
	clear: both;
	padding: 100px 0;
}
#footer .logo {
	text-align: center;
}

#footer .com {
	text-align: center;
	font-size: 110%;
	color: #000000;
	margin: 100px 0 0 0;
	font-family: 'Ryumin Medium KL', serif;
}

#footer .com2 {
	text-align: center;
	font-size: 90%;
	color: #000000;
	margin: 0;
	font-family: 'Ryumin Medium KL', serif;
}

#footer .cr {
	text-align: center;
	font-size: 88%;
	color: #000000;
	margin: 10px 0 0 0;
	font-family: 'Ryumin Medium KL', serif;
}

#btnPagetop {
	position: fixed;
	right: 20px;
	bottom: 20px;
}

/* 調整用
---------------------------------------------------------------------------- */
.mt0 { margin-top: 0!important; }
.mt5 { margin-top: 5px!important; }
.mt10 { margin-top: 10px!important; }
.mt15 { margin-top: 15px!important; }
.mt20 { margin-top: 20px!important; }
.mt30 { margin-top: 30px!important; }
.mt35 { margin-top: 35px!important; }
.mt40 { margin-top: 40px!important; }
.mt50 { margin-top: 50px!important; }
.mt100 { margin-top: 100px!important; }
.mr0 { margin-right: 0!important; }
.mr5 { margin-right: 5px!important; }
.mr10 { margin-right: 10px!important; }
.mr15 { margin-right: 15px!important; }
.mr20 { margin-right: 20px!important; }
.mr25 { margin-right: 25px!important; }
.mb0 { margin-bottom: 0!important; }
.mb5 { margin-bottom: 5px!important; }
.mb10 { margin-bottom: 10px!important; }
.mb12 { margin-bottom: 12px!important; }
.mb15 { margin-bottom: 15px!important; }
.mb20 { margin-bottom: 20px!important; }
.mb25 { margin-bottom: 25px!important; }
.mb30 { margin-bottom: 30px!important; }
.mb35 { margin-bottom: 35px!important; }
.mb40 { margin-bottom: 40px!important; }
.mb50 { margin-bottom: 50px!important; }
.mb60 { margin-bottom: 60px!important; }
.mb80 { margin-bottom: 80px!important; }
.ml0 { margin-left: 0!important; }
.ml5 { margin-left: 5px!important; }
.ml10 { margin-left: 10px!important; }
.ml15 { margin-left: 15px!important; }
.ml20 { margin-left: 20px!important; }
.ml25 { margin-left: 25px!important; }
.ml30 { margin-left: 30px!important; }


.clearB	{ clear: both!important;}
.floatR { float: right!important; }
.floatL { float: left!important; }

.taCenter { text-align: center!important; }
.taRight { text-align: right!important; }
.taLeft { text-align: left!important; }
.vaMiddle { vertical-align: middle!important; }
.fwBold { font-weight: bold!important; }

.fs11 { font-size: 11px!important; }
.fs12 { font-size: 12px!important; }
.fs14 { font-size: 14px!important; }
.fs16 { font-size: 16px!important; }
.fs20 { font-size: 20px!important; }

.w100per { width: 100%;}

.minIndent {
	padding-left: 1em;
	text-indent: -1em;
}
.notFloat {
	overflow: hidden;
	_zoom: 1;
}

/* clearfix */
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
.clearfix {zoom:1;}
