@charset "UTF-8";

/*--------------------------------------------------
**************************************************
  ボックスレイアウト（基本）
**************************************************
--------------------------------------------------*/

* {
	-webkit-box-sizing:border-box !important;
	-moz-box-sizing:border-box !important;
	box-sizing:border-box !important;
	border:0px none;
	margin:0px;
	padding:0px;
}

.block { display:block; }

.br:before { content:"\A"; white-space:pre; }	/* CSSで改行 */

/* フロート */
.float_l { float:left; }
.float_r { float:right; }

/* フロート解除 */
.clearfix:before, .clearfix:after { content:""; display:table; }
.clearfix:after { clear:both; }
/* For IE 6/7 (trigger hasLayout) */
.clearfix { zoom:1; }

/* Flexbox(フロート系) */
.flexbox{
	display:flex;
	flex-direction:row;	/*--- 左から右に水平方向に配置 ---*/
}
.flex-wrap{ flex-wrap:wrap; }	/*--- 横複数行(折り返し有り)の配置 ---*/
.flex-space-between{ justify-content:space-between; }	/*--- 最初と最後は端に、残りは等間隔 ---*/
.flex-center{ justify-content:center; }	/*--- 左右中央配置 ---*/
.flex-align-center{ align-items: center; }	/*--- 上下中央配置 ---*/


/* PCの場合 */
@media ( min-width : 768px ) {
	.spOnly { display:none !important; }	/* PCでは非表示 */
	
	.pc_br:before { content:"\A"; white-space:pre; }	/* PCでは改行 */
	
	.flexbox-pc{
		display:flex;
		flex-direction:row;	/*--- 左から右に水平方向に配置 ---*/
	}
	.flex-wrap-pc{ flex-wrap:wrap; }	/*--- 横複数行(折り返し有り)の配置 ---*/
	.flex-space-between-pc{ justify-content:space-between; }	/*--- 最初と最後は端に、残りは等間隔 ---*/
	.flex-center-pc{ justify-content:center; }	/*--- 左右中央配置 ---*/
	.flex-align-center-pc{ align-items: center; }	/*--- 上下中央配置 ---*/
	
	.mt5,  .mt5-10,.mt5-20,.mt5-30,.mt5-40,.mt5-50,.mt5-60,.mt5-70,.mt5-80,.mt5-90,.mt5-100{ margin-top: 5px !important;}
	.mt10, .mt10-5,.mt10-20,.mt10-30,.mt10-40,.mt10-50,.mt10-60,.mt10-70,.mt10-80,.mt10-90,.mt10-100{ margin-top: 10px !important;}
	.mt20, .mt20-5,.mt20-10,.mt20-30,.mt20-40,.mt20-50,.mt20-60,.mt20-70,.mt20-80,.mt20-90,.mt20-100{ margin-top: 20px !important;}
	.mt30, .mt30-5,.mt30-10,.mt30-20,.mt30-40,.mt30-50,.mt30-60,.mt30-70,.mt30-80,.mt30-90,.mt30-100{ margin-top: 30px !important;}
	.mt40, .mt40-5,.mt40-10,.mt40-20,.mt40-30,.mt40-50,.mt40-60,.mt40-70,.mt40-80,.mt40-90,.mt40-100{ margin-top: 40px !important;}
	.mt50, .mt50-5,.mt50-10,.mt50-20,.mt50-30,.mt50-40,.mt50-60,.mt50-70,.mt50-80,.mt50-90,.mt50-100{ margin-top: 50px !important;}
	.mt60, .mt60-5,.mt60-10,.mt60-20,.mt60-30,.mt60-40,.mt60-50,.mt60-70,.mt60-80,.mt60-90,.mt60-100{ margin-top: 60px !important;}
	.mt70, .mt70-5,.mt70-10,.mt70-20,.mt70-30,.mt70-40,.mt70-50,.mt70-60,.mt70-80,.mt70-90,.mt70-100{ margin-top: 70px !important;}
	.mt80, .mt80-5,.mt80-10,.mt80-20,.mt80-30,.mt80-40,.mt80-50,.mt80-60,.mt80-70,.mt80-90,.mt80-100{ margin-top: 80px !important;}
	.mt90, .mt90-5,.mt90-10,.mt90-20,.mt90-30,.mt90-40,.mt90-50,.mt90-60,.mt90-70,.mt90-80,.mt90-100{ margin-top: 90px !important;}
	.mt100,.mt100-5,.mt100-10,.mt100-20,.mt100-30,.mt100-40,.mt100-50,.mt100-60,.mt100-70,.mt100-80,.mt100-90{ margin-top: 100px !important;}
	
	.mb5,  .mb5-10,.mb5-20,.mb5-30,.mb5-40,.mb5-50,.mb5-60,.mb5-70,.mb5-80,.mb5-90,.mb5-100{ margin-bottom: 5px !important;}
	.mb10, .mb10-5,.mb10-20,.mb10-30,.mb10-40,.mb10-50,.mb10-60,.mb10-70,.mb10-80,.mb10-90,.mb10-100{ margin-bottom: 10px !important;}
	.mb20, .mb20-5,.mb20-10,.mb20-30,.mb20-40,.mb20-50,.mb20-60,.mb20-70,.mb20-80,.mb20-90,.mb20-100{ margin-bottom: 20px !important;}
	.mb30, .mb30-5,.mb30-10,.mb30-20,.mb30-40,.mb30-50,.mb30-60,.mb30-70,.mb30-80,.mb30-90,.mb30-100{ margin-bottom: 30px !important;}
	.mb40, .mb40-5,.mb40-10,.mb40-20,.mb40-30,.mb40-50,.mb40-60,.mb40-70,.mb40-80,.mb40-90,.mb40-100{ margin-bottom: 40px !important;}
	.mb50, .mb50-5,.mb50-10,.mb50-20,.mb50-30,.mb50-40,.mb50-60,.mb50-70,.mb50-80,.mb50-90,.mb50-100{ margin-bottom: 50px !important;}
	.mb60, .mb60-5,.mb60-10,.mb60-20,.mb60-30,.mb60-40,.mb60-50,.mb60-70,.mb60-80,.mb60-90,.mb60-100{ margin-bottom: 60px !important;}
	.mb70, .mb70-5,.mb70-10,.mb70-20,.mb70-30,.mb70-40,.mb70-50,.mb70-60,.mb70-80,.mb70-90,.mb70-100{ margin-bottom: 70px !important;}
	.mb80, .mb80-5,.mb80-10,.mb80-20,.mb80-30,.mb80-40,.mb80-50,.mb80-60,.mb80-70,.mb80-90,.mb80-100{ margin-bottom: 80px !important;}
	.mb90, .mb90-5,.mb90-10,.mb90-20,.mb90-30,.mb90-40,.mb90-50,.mb90-60,.mb90-70,.mb90-80,.mb90-100{ margin-bottom: 90px !important;}
	.mb100,.mb100-5,.mb100-10,.mb100-20,.mb100-30,.mb100-40,.mb100-50,.mb100-60,.mb100-70,.mb100-80,.mb100-90{ margin-bottom: 100px !important;}
	
	.mr5,  .mr5-10,.mr5-20,.mr5-30,.mr5-40,.mr5-50,.mr5-60,.mr5-70,.mr5-80,.mr5-90,.mr5-100{ margin-right: 5px !important;}
	.mr10, .mr10-5,.mr10-20,.mr10-30,.mr10-40,.mr10-50,.mr10-60,.mr10-70,.mr10-80,.mr10-90,.mr10-100{ margin-right: 10px !important;}
	.mr20, .mr20-5,.mr20-10,.mr20-30,.mr20-40,.mr20-50,.mr20-60,.mr20-70,.mr20-80,.mr20-90,.mr20-100{ margin-right: 20px !important;}
	.mr30, .mr30-5,.mr30-10,.mr30-20,.mr30-40,.mr30-50,.mr30-60,.mr30-70,.mr30-80,.mr30-90,.mr30-100{ margin-right: 30px !important;}
	.mr40, .mr40-5,.mr40-10,.mr40-20,.mr40-30,.mr40-50,.mr40-60,.mr40-70,.mr40-80,.mr40-90,.mr40-100{ margin-right: 40px !important;}
	.mr50, .mr50-5,.mr50-10,.mr50-20,.mr50-30,.mr50-40,.mr50-60,.mr50-70,.mr50-80,.mr50-90,.mr50-100{ margin-right: 50px !important;}
	
	.ml5,  .ml5-10,.ml5-20,.ml5-30,.ml5-40,.ml5-50,.ml5-60,.ml5-70,.ml5-80,.ml5-90,.ml5-100{ margin-left: 5px !important;}
	.ml10, .ml10-5,.ml10-20,.ml10-30,.ml10-40,.ml10-50,.ml10-60,.ml10-70,.ml10-80,.ml10-90,.ml10-100{ margin-left: 10px !important;}
	.ml20, .ml20-5,.ml20-10,.ml20-30,.ml20-40,.ml20-50,.ml20-60,.ml20-70,.ml20-80,.ml20-90,.ml20-100{ margin-left: 20px !important;}
	.ml30, .ml30-5,.ml30-10,.ml30-20,.ml30-40,.ml30-50,.ml30-60,.ml30-70,.ml30-80,.ml30-90,.ml30-100{ margin-left: 30px !important;}
	.ml40, .ml40-5,.ml40-10,.ml40-20,.ml40-30,.ml40-50,.ml40-60,.ml40-70,.ml40-80,.ml40-90,.ml40-100{ margin-left: 40px !important;}
	.ml50, .ml50-5,.ml50-10,.ml50-20,.ml50-30,.ml50-40,.ml50-60,.ml50-70,.ml50-80,.ml50-90,.ml50-100{ margin-left: 50px !important;}
}


/* スマホの場合 */
@media ( max-width : 767px ) {
	.pcOnly { display:none !important; }	/* スマホでは非表示 */
	
	.sp_br:before { content:"\A"; white-space:pre; }	/* SPでは改行 */
	
	.flexbox-sp{
		display:flex;
		flex-direction:row;	/*--- 左から右に水平方向に配置 ---*/
	}
	.flex-wrap-sp{ flex-wrap:wrap; }	/*--- 横複数行(折り返し有り)の配置 ---*/
	.flex-space-between-sp{ justify-content:space-between; }	/*--- 最初と最後は端に、残りは等間隔 ---*/
	.flex-center-sp{ justify-content:center; }	/*--- 左右中央配置 ---*/
	.flex-align-center-sp{ align-items: center; }	/*--- 上下中央配置 ---*/
	
	.mt5,.mt10-5,.mt20-5,.mt30-5,.mt40-5,.mt50-5,.mt60-5,.mt70-5,.mt80-5,.mt90-5,.mt100-5 { margin-top: 5px !important;}
	.mt10,.mt5-10,.mt20-10,.mt30-10,.mt40-10,.mt50-10,.mt60-10,.mt70-10,.mt80-10,.mt90-10,.mt100-10 { margin-top: 10px !important;}
	.mt20,.mt5-20,.mt10-20,.mt30-20,.mt40-20,.mt50-20,.mt60-20,.mt70-20,.mt80-20,.mt90-20,.mt100-20 { margin-top: 20px !important;}
	.mt30,.mt5-30,.mt10-30,.mt20-30,.mt40-30,.mt50-30,.mt60-30,.mt70-30,.mt80-30,.mt90-30,.mt100-30 { margin-top: 30px !important;}
	.mt40,.mt5-40,.mt10-40,.mt20-40,.mt30-40,.mt50-40,.mt60-40,.mt70-40,.mt80-40,.mt90-40,.mt100-40 { margin-top: 40px !important;}
	.mt50,.mt5-50,.mt10-50,.mt20-50,.mt30-50,.mt40-50,.mt60-50,.mt70-50,.mt80-50,.mt90-50,.mt100-50 { margin-top: 50px !important;}
	.mt60,.mt5-60,.mt10-60,.mt20-60,.mt30-60,.mt40-60,.mt50-60,.mt70-60,.mt80-60,.mt90-60,.mt100-60 { margin-top: 60px !important;}
	.mt70,.mt5-70,.mt10-70,.mt20-70,.mt30-70,.mt40-70,.mt50-70,.mt60-70,.mt80-70,.mt90-70,.mt100-70 { margin-top: 70px !important;}
	.mt80,.mt5-80,.mt10-80,.mt20-80,.mt30-80,.mt40-80,.mt50-80,.mt60-80,.mt70-80,.mt90-80,.mt100-80 { margin-top: 80px !important;}
	.mt90,.mt5-90,.mt10-90,.mt20-90,.mt30-90,.mt40-90,.mt50-90,.mt60-90,.mt70-90,.mt80-90,.mt100-90 { margin-top: 90px !important;}
	.mt100,.mt5-100,.mt10-100,.mt20-100,.mt30-100,.mt40-100,.mt50-100,.mt60-100,.mt70-100,.mt80-100,.mt90-100 { margin-top: 100px !important;}
	
	.mb5,.mb10-5,.mb20-5,.mb30-5,.mb40-5,.mb50-5,.mb60-5,.mb70-5,.mb80-5,.mb90-5,.mb100-5 { margin-bottom: 5px !important;}
	.mb10,.mb5-10,.mb20-10,.mb30-10,.mb40-10,.mb50-10,.mb60-10,.mb70-10,.mb80-10,.mb90-10,.mb100-10 { margin-bottom: 10px !important;}
	.mb20,.mb5-20,.mb10-20,.mb30-20,.mb40-20,.mb50-20,.mb60-20,.mb70-20,.mb80-20,.mb90-20,.mb100-20 { margin-bottom: 20px !important;}
	.mb30,.mb5-30,.mb10-30,.mb20-30,.mb40-30,.mb50-30,.mb60-30,.mb70-30,.mb80-30,.mb90-30,.mb100-30 { margin-bottom: 30px !important;}
	.mb40,.mb5-40,.mb10-40,.mb20-40,.mb30-40,.mb50-40,.mb60-40,.mb70-40,.mb80-40,.mb90-40,.mb100-40 { margin-bottom: 40px !important;}
	.mb50,.mb5-50,.mb10-50,.mb20-50,.mb30-50,.mb40-50,.mb60-50,.mb70-50,.mb80-50,.mb90-50,.mb100-50 { margin-bottom: 50px !important;}
	.mb60,.mb5-60,.mb10-60,.mb20-60,.mb30-60,.mb40-60,.mb50-60,.mb70-60,.mb80-60,.mb90-60,.mb100-60 { margin-bottom: 60px !important;}
	.mb70,.mb5-70,.mb10-70,.mb20-70,.mb30-70,.mb40-70,.mb50-70,.mb60-70,.mb80-70,.mb90-70,.mb100-70 { margin-bottom: 70px !important;}
	.mb80,.mb5-80,.mb10-80,.mb20-80,.mb30-80,.mb40-80,.mb50-80,.mb60-80,.mb70-80,.mb90-80,.mb100-80 { margin-bottom: 80px !important;}
	.mb90,.mb5-90,.mb10-90,.mb20-90,.mb30-90,.mb40-90,.mb50-90,.mb60-90,.mb70-90,.mb80-90,.mb100-90 { margin-bottom: 90px !important;}
	.mb100,.mb5-100,.mb10-100,.mb20-100,.mb30-100,.mb40-100,.mb50-100,.mb60-100,.mb70-100,.mb80-100,.mb90-100 { margin-bottom: 100px !important;}
	
	.mr5,.mr10-5,.mr20-5,.mr30-5,.mr40-5,.mr50-5,.mr60-5,.mr70-5,.mr80-5,.mr90-5,.mr100-5 { margin-right: 5px !important;}
	.mr10,.mr5-10,.mr20-10,.mr30-10,.mr40-10,.mr50-10,.mr60-10,.mr70-10,.mr80-10,.mr90-10,.mr100-10 { margin-right: 10px !important;}
	.mr20,.mr5-20,.mr10-20,.mr30-20,.mr40-20,.mr50-20,.mr60-20,.mr70-20,.mr80-20,.mr90-20,.mr100-20 { margin-right: 20px !important;}
	.mr30,.mr5-30,.mr10-30,.mr20-30,.mr40-30,.mr50-30,.mr60-30,.mr70-30,.mr80-30,.mr90-30,.mr100-30 { margin-right: 30px !important;}
	.mr40,.mr5-40,.mr10-40,.mr20-40,.mr30-40,.mr50-40,.mr60-40,.mr70-40,.mr80-40,.mr90-40,.mr100-40 { margin-right: 40px !important;}
	.mr50,.mr5-50,.mr10-50,.mr20-50,.mr30-50,.mr40-50,.mr60-50,.mr70-50,.mr80-50,.mr90-50,.mr100-50 { margin-right: 50px !important;}
	
	.ml5,.ml10-5,.ml20-5,.ml30-5,.ml40-5,.ml50-5,.ml60-5,.ml70-5,.ml80-5,.ml90-5,.ml100-5 { margin-left: 5px !important;}
	.ml10,.ml5-10,.ml20-10,.ml30-10,.ml40-10,.ml50-10,.ml60-10,.ml70-10,.ml80-10,.ml90-10,.ml100-10 { margin-left: 10px !important;}
	.ml20,.ml5-20,.ml10-20,.ml30-20,.ml40-20,.ml50-20,.ml60-20,.ml70-20,.ml80-20,.ml90-20,.ml100-20 { margin-left: 20px !important;}
	.ml30,.ml5-30,.ml10-30,.ml20-30,.ml40-30,.ml50-30,.ml60-30,.ml70-30,.ml80-30,.ml90-30,.ml100-30 { margin-left: 30px !important;}
	.ml40,.ml5-40,.ml10-40,.ml20-40,.ml30-40,.ml50-40,.ml60-40,.ml70-40,.ml80-40,.ml90-40,.ml100-40 { margin-left: 40px !important;}
	.ml50,.ml5-50,.ml10-50,.ml20-50,.ml30-50,.ml40-50,.ml60-50,.ml70-50,.ml80-50,.ml90-50,.ml100-50 { margin-left: 50px !important;}
}


/*--------------------------------------------------
**************************************************
  テキスト・フォント
**************************************************
--------------------------------------------------*/

.bold { font-weight:bold; }

strong { font-size:130%; }

.small { font-size:85%; }

.line_through { text-decoration:line-through; }	/* 打消し線 */

.italic { font-style:italic; }

.center{ text-align:center; }
.right { text-align:right; }
.left  { text-align:left; }


/* -- 文字幅 letter-spacing -- */
.ls01 { letter-spacing:0.1em !important; }
.ls005 { letter-spacing:0.05em !important; }
.ls002 { letter-spacing:0.02em !important; }
.ls001 { letter-spacing:0.01em !important; }


/*--------------------------------------------------
**************************************************
  その他
**************************************************
--------------------------------------------------*/

ul { list-style-type:none; }

.ul { list-style-type:disc; list-style-position:inside; }

/* スマホの場合 */
@media ( max-width : 767px ) {
	input[type="submit"]{
		-webkit-appearance:none;
	}
}