

/**************************************************

　汎用スタイル

**************************************************/


/* -------------------------------------------
	 #clearfix
-------------------------------------------- */

/* For modern browsers */

.cf:before,
.cf:after {
    content:"";
    display:table;
}
 
.cf:after {
    clear:both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.cf {
    zoom:1;
}  

/* -------------------------------------------
	 #フロート関連
-------------------------------------------- */
.fl_r {
	float: right;
}

.fl_l {
	float: left;
}

.cl_both {
	clear: both;
}

/* -------------------------------------------
	 #テキスト関連
-------------------------------------------- */

.red {
	color: #FF0000;
}

.bold{
	font-weight: bold;	
}
.small {
	font-size: 90%;
}
.small-2 {
	font-size: 80%;
}
.red-tb {
	color: #fff;
	background: linear-gradient(transparent 0%, #ff0000 0%);
	padding: 0 3px;
}

.caution-txt {
	color: #DA5211;
}

.mark-indent {
	text-indent: -1em;
	padding-left: 1em;
}

/* -------------------------------------------
	 #テキスト揃え関連
-------------------------------------------- */

.align_c {
	text-align: center;
}

.align_r {
	text-align:right;
}

.align_l {
	text-align:left;
}

input {
	vertical-align: middle;
}

.li_mark {
	text-indent: -1em;
	padding-left: 1em
}

/* -------------------------------------------
	 #マージン関連
-------------------------------------------- */
.mg_none {
	margin: 0px;
}

.mr_5 {
	margin-right: 5px;
}

.mr_10 {
	margin-right: 10px;
}

.mr_20 {
	margin-right: 20px;
}

.mr_30 {
	margin-right: 30px;
}
.mr_50 {
	margin-right: 50px;
}


.ml_5 {
	margin-left: 5px;
}
.ml_10 {
	margin-left: 10px;
}
.ml_20 {
	margin-left: 20px;
}
.ml_30 {
	margin-left: 30px;
}


.mt_3 {
	margin-top: 3px;
}

.mt_10 {
	margin-top: 10px;
}

.mt_15 {
	margin-top: 15px;
}

.mt_20 {
	margin-top: 20px;
}

.mt_30 {
	margin-top: 30px;
}

.mt_40 {
	margin-top: 40px;
}

.mb_5 {
	margin-bottom: 5px;
}

.mb_10 {
	margin-bottom: 10px;
}

.mb_20 {
	margin-bottom: 20px;
}

.mb_25 {
	margin-bottom: 25px;
}

.mb_30 {
	margin-bottom: 30px;
}

.mb_40 {
	margin-bottom: 40px;
}

.mb_50 {
	margin-bottom: 50px;
}

.mb_60 {
	margin-bottom: 60px;
}

.mb_70 {
	margin-bottom: 70px;
}

.mb_100 {
	margin-bottom: 100px;
}

.mb-1em {
	margin-bottom: 1em;
}

/* -------------------------------------------
	 #パディング関連
-------------------------------------------- */
.pd-t50 {
	padding-top:50px;
}

.pd-b50 {
	padding-bottom:50px;
}

.pd-b40 {
	padding-bottom:40px;
}


/* -------------------------------------------
	 #ボーダー関連
-------------------------------------------- */

.right_border{
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999999;
}

.bottom_border{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999999;
}


/* -------------------------------------------
	 #イメージ関連
-------------------------------------------- */
.img_middle {
	vertical-align: middle;
	margin-right: 5px;
}

.img_texttop {
	vertical-align: text-top;
	margin-right: 5px;
}

.img_w100 {
	width: 100%
}

.cont-h {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

a img {
	display: block;
}
