@charset "UTF-8";


/*HTML5リセット*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
body {
	line-height:1;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display:block;
}

nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0); 
}

ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
	vertical-align:middle;
}

/*HTML5リセットここまで*/


/*ボックス組汎用クラス*/
.box {
    width: 100%;  
    display: -webkit-box;
    display: -moz-box;
}
	/*補足-boxを指定すると子要素が回り込みます*/

.box_flex1 {
	-moz-box-flex:1.0;
	-webkit-box-flex:1.0;
}
	/*補足-boxの子要素に指定して下さい。指定するとブラウザ幅いっぱいまで伸縮します。*/


/*＝＝＝　通常共通指定　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.clearfix:after{
	content:"";
	display:block;
	clear:both;
	}
 /* IE8, ModanBrowser */
.clearfix {
	width:100%;
 	overflow:hidden;
} /* clearfix IE 6, 7 */

* {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	text-decoration: none;
	font-family: Helvetica, Futura, Consolas, 'Lucida Console', 'Century Gothic', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
}

img {
	border-style:none;
} /*リンク画像の枠線を消すために記述*/

a {
	overflow: hidden;
	outline: none;
	color: #e60012;
	text-decoration: none;
}/* FireFox リンク選択時の点線を消す　*/

a:link {
	overflow: hidden;
	outline: none;
	color: #e60012;
	text-decoration: none;
}/* FireFox リンク選択時の点線を消す　*/
a:visited {
	overflow: hidden;
	outline: none;
	color: #e60012;
	text-decoration: none;
}/* FireFox リンク選択時の点線を消す　*/

a:hover {
	text-decoration: underline;
}

body {
	position: relative;
	background-color: #fff;
	line-height: 1.5;
	font-size: 14px;
	color: #585858;
}


h1 {

}



h3 {
	font-weight: lighter;
}

h4 {
	font-weight: lighter;
}

h5 {
	font-weight: lighter;
}

h6 {
	font-weight: lighter;
}

.none {
	display: none;
}


/*
@media handheld, only screen and (min-width: 768px) {
pc
*/

	/*footer下部固定*/
	html,body{
		height:100%;
	}

	#wrap{
		width: 100%;
		position: relative;
		height:auto !important; /*IE6対策*/
		height: 100%; /*IE6対策*/
		min-height: 100%;
	}

	.containerBK{
		padding-bottom: 110px; /*フッターの高さと同じ*/
	}

	#footer{
		position:absolute;
		bottom: 0;
	}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ヘッダー*/
	.header {

	}

	.spn_header {
		display: none;
	}

	.mainVisual {
		position: relative;
	}


	.mainVisual .maintop {
		display: block;
	}


	.jntoLink {
		position: absolute;
			top: 10px;
			left: 10px;
		width: 80px;
	}

	.langBox {
		width: 120px;
		position: absolute;
			top: 10px;
			right: 10px;
	}

	.lang_trg {
		color: #fff;
		border: solid 1px #FFF;
		text-align: center;
		padding: 5px 20px;
		cursor: pointer;
		background: url("../img/common/gnavi_bk.png");
	}

	.choiceLang a {
		display: block;
		color: #fff;
		padding: 5px;
		text-align: center;
		border-bottom: dotted 1px #FFF;
		background: url("../img/common/gnavi_bk.png");
	}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝Gナビ */
	.gnavi {
		height: 70px;
		width: 100%;
		background: url("../img/common/gnavi_bk.png");
		position: absolute;
			bottom: 0;
			z-index: 10;
	}

	.logoWap {
		height: 51px;
		width: 377px;
		padding-top: 10px;
		margin-left: 10px;
		float: left;
	}

	.gnbtn {
		display: block;
		float: right;
		width: 60px;
		height: 70px;
	}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝コンテナー*/
	.containerBK {
		width: 100%;
		background-color: #FFF;
		padding-bottom: 198px;
	}


	.container {
		padding-top: 30px;
		width: 90%;
		max-width: 1200px;
		margin: 0px auto;
		line-height: 1.5;
	}


	.desc {
		margin-bottom: 30px;
	}

	.desc_p {
		margin-bottom: 15px;
		padding-left: 18px;
	}

	.bnLine {
		width: 100%;
	}

	.kome {
		font-size: 13px;
	}

	.btkome {
		margin-left: 18px;
	}

/*バナー4この場合*/
	.bnWap {
		display: inline-block;
		width: 20%;
		text-align: center;
		max-width: 250px;
		margin-left: 4%;
		margin-bottom: 10px;
	}


	.bnWap .bannerlink,
	.bnWap img{
		display: block;
	}


/*	＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝メイン

	.topMainWap {
		width: 1000px;
*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝フッター*/

	#footer {
		width: 100%;
		padding-top: 10px;
		color: #000;
		text-decoration: none;
		background-color: #fff;
		border-top: solid 1px #727171;
	}

	.footWap {
		max-width: 1200px;
		margin: 0px auto 10px;
		position: relative;
	}

	.fnavi {
		float: left;
		width: 45%;
		margin-left: 10px;
/*		padding-top: 35px;	*/
		margin-left: 2%;
	}

	.fnavi a{
		display: inline-block;
		margin-right: 10px;
	}

	.jped {
		width: 25%;
		max-width: 280px;
		float: right;
		margin-right: 2%
	}


	.jpta {
		width: 30%;
		max-width: 355px;
		float: right;

		margin-right: 2%
	}


	.snsWap {
		width: 98%;
		margin: 10px auto 20px;
	}


	.snsWap a{
		width: 50px;
		height: 50px;
		display: inline-block;
		margin-left: 10px;
	}


	#footer address {
		width: 100%;
		color: #FFF;
		background-color: #e60012;
		text-align: center;
		font-style: normal;
	}




@media handheld, only screen and (max-width: 767px) {
/*スマホ*/

	.header {
		display: none;
	}

	.spn_header {
		background-color: #002892;
		display: block;
	}



/* upper*/
	.upper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		width: 100%;
	}


	.spn_header .spnLogo {
		width: 59%;
		margin-left: 1%;
		float: left;
		padding-top: 10px;
	}

	.spn_langBox {
		width: 20%;
		margin: 5px 2%;
		float: right;
	}

/*spn_menu*/
	.spn_gnavi {
		width: 12%;
		float: right;
		margin-right: 1%;
		margin-top: 0px;
	}

	.spn_menu {
		position: absolute;
			left: 0;
		z-index: 100;
		width: 100%;
	}

	.spn_menu a{
		display: block;
		color: #fff;
		padding: 10px;
		text-align: center;
		border-bottom: dotted 1px #FFF;
		background: url("../img/common/gnavi_bk70.png");
	}


/*lang*/
	.spnLang_trg {
		color: #fff;
		border: solid 1px #FFF;
		text-align: center;
		padding: 5px 5px;
		cursor: pointer;
		font-size: 3vw;
		background: url("../img/common/gnavi_bk.png");
	}

	.spnChoiceLang {
		position: absolute;
			left: 0;
		z-index: 100;
		width: 100%;
	}

	.spnChoiceLang a {
		display: block;
		color: #fff;
		padding: 10px;
		text-align: center;
		border-bottom: dotted 1px #FFF;
		background: url("../img/common/gnavi_bk70.png");
	}


/*spn_mainWap*/
	.spn_mainWap {
		position: relative;
	}

	.spnJntoLink {
		width: 18%;
		max-width: 177px;
		position: absolute;
			top: 5px;
			left: 5px;
	}

	.spn_mainWap .maintop {
		display: block;
	}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝コンテナー*/
	.containerBK {
		width: 100%;
		background-color: #FFF;
		padding-bottom: 0px;
	}


	.title {
		font-size: 2em;
	}


/*バナー4この場合*/
	.bnWap {
		display: block;
		width: 100%;
		text-align: center;
		max-width: 500px;
		margin: 0 auto 10px;
	}
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝フッター*/

	#footer {
		position: relative;
		width: 100%;
		padding-top: 0px;
		padding-bottom: 0px;
		color: #000;
		text-decoration: none;
		background-color: #fff;
		border-top: solid 1px #727171;
	}

	.footWap {
		width: 90%;
		margin: 0px 5% 10px;
		position: relative;
	}


	.snsWap {
		width: 98%;
		margin: 10px auto 20px;
	}


	.snsWap a{
		width: 50px;
		height: 50px;
		margin-left: 0px;
		display: block;
		-moz-box-flex:1.0;
		-webkit-box-flex:1.0;
		width:100%;
		text-align: center;
	}


/*＝＝＝＝ナビ*/
	.fnavi {
		width: 90%;
		margin: 0px 5%;
		padding-top: 5px;
	}

	.fnavi a {
		display: block;
		color: #e60012;
		border-bottom: dotted 1px #cecece;
		padding-top: 10px;
/*		padding: 10px;	*/
		text-align: center;
	}

	.fnavi a:hover {
		text-decoration: none;
		background-color: #aaaaaa;
	}	

	
	.footWap .jpta,
	.footWap .jped {
		display: block;
		width: 90%;
		margin: 0 auto 0px;
		float: none;
	}

	#footer address {
		width: 100%;
		margin: 0px auto 0px;
		color: #fff;
		text-align: center;
		font-style: normal;
		background-color: #e60012;
	}

}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝汎用設定*/


/*白 */
.white {
	color: #fff;
}
/*ピンク */
.pink {
	color: #ff287b;
}
/*ブルー */
.blue {
	color: #00a0e9;
}
/*オレンジ */
.orange {
	color: #f18b1d;
}
/*黄色*/
.yellow {
	color: #ffc103;
}
/*みどり*/
.green {
	color: #56bd36;
}
/*むらさき*/
.purple {
	color: #8d7dfd;
}
/*あいいろ*/
.ai {
	color: #3e408f;
}

.gray {
 	color: #585858;
}
.red {
	 color: #e60012;
}





.floatR{
	float: right;
}

.floatL{
	float: left;
}

.bold {
	font-weight: bold;
}

.normal {
	font-weight: normal;
}

.sml {
	font-size: 11px;
}

.alignR {
	text-align: right;
}

.alignC {
	text-align: center;
}





