@charset "utf-8";

/* ////////////////////////////////////////////////////////////
	File Name	module.css
*/

.pc-none { display: none; }
.sp-none { display: block; }

/*============================================================
	フォント
*/
.ff-noto-r {
	font-family: 'Noto Sans Japanese', sans-serif;
	font-weight: 300;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: inherit;
/*    font-weight: 500 !important;*/
    line-height: 1.4;
    color: inherit;
}

/*============================================================
	テーブル
*/
.table {
	display: table;
}
.table .table-col {
	display: table-cell;
	vertical-align: middle;
}

/*============================================================
	ブロック
*/
.block-center {
	margin-left: auto;
	margin-right: auto;
}

/*============================================================
	テキスト位置
*/
.text-left 		{ text-align: left; }
.text-center 	{ text-align: center; }
.text-right 	{ text-align: right; }
.vam { vertical-align: middle; }
.vat { vertical-align: top; }

/*============================================================
	フォントカラー
*/
.color-red { color: #ff0000; }
.color-white { color: #fff; }

/*============================================================
	フォントサイズ
*/
.fs-small { font-size: 86.6%; }
.fs12 { font-size: 12px !important; line-height: 1.8; }
.fs14 { font-size: 14px !important; line-height: 1.8; }
.fs16 { font-size: 16px !important; line-height: 1.7; }
.fs18 { font-size: 18px !important; line-height: 1.6; }
.fs20 { font-size: 20px !important; line-height: 1.5; }
.fs22 { font-size: 22px !important; line-height: 1.5; }
.fs24 { font-size: 24px !important; line-height: 1.5; }
.fs28 { font-size: 28px !important; line-height: 1.4; }
.fs30 { font-size: 30px !important; line-height: 1.2; }
.fs32 { font-size: 32px !important; line-height: 1.2; }
.fs36 { font-size: 36px !important; line-height: 1.15; }
.fs46 { font-size: 46px !important; line-height: 1.15; }

.lh1_2 { line-height: 1.2; }
.ws-nw {white-space: nowrap;}

/*============================================================
	マージン
*/
.mt0 { margin-top: 0px !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt80 { margin-top: 80px !important; }
.mt90 { margin-top: 90px !important; }
.mt100 { margin-top: 100px !important; }
.mt110 { margin-top: 110px !important; }
.mt120 { margin-top: 120px !important; }

.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !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; }
.mb45 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb100 { margin-bottom: 100px !important; }
.mb110 { margin-bottom: 110px !important; }
.mb120 { margin-bottom: 120px !important; }

.mr100 { margin-right: 100px; }
.ml100 { margin-left: 100px; }

/*============================================================
	余白
*/
.pt0 { padding-top: 0px !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }
.pt45 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }
.pt60 { padding-top: 60px !important; }
.pt70 { padding-top: 70px !important; }
.pt80 { padding-top: 80px !important; }
.pt90 { padding-top: 90px !important; }
.pt100 { padding-top: 100px !important; }
.pt110 { padding-top: 110px !important; }
.pt120 { padding-top: 120px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb45 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }
.pb60 { padding-bottom: 60px !important; }
.pb70 { padding-bottom: 70px !important; }
.pb80 { padding-bottom: 80px !important; }
.pb90 { padding-bottom: 90px !important; }
.pb100 { padding-bottom: 100px !important; }
.pb110 { padding-bottom: 110px !important; }
.pb120 { padding-bottom: 120px !important; }

.pr1em { padding-right: 1em; }
.pr25 { padding-right: 25px !important;}
.pl25 {padding-left: 25px !important;}
.pl100 { padding-left: 100px !important; }

.padding-none { padding: 0 !important; }


.border-b { border-bottom: 1px solid;}
.border-white { border-color: #fff; }


/*============================================================
	フロート
*/
.float-l { float: left; }
.float-r { float: right; }

/*============================================================
	幅
*/
.w30-per { width: 30% !important; }
.w40-per { width: 40% !important; }
.w45-per { width: 45% !important; }
.w50-per { width: 50% !important; }
.w55-per { width: 55% !important; }
.w60-per { width: 60% !important;}
.w70-per { width: 70% !important; }
.w80-per { width: 80% !important; }
.w90-per { width: 90% !important; }
.w100-per { width: 100% !important; }
.w540 { width: 540px !important; }
img.w100-per { width: 100% !important; height: auto !important:}
.w1em { width: 1em !important; }
.w2em { width: 2em !important; }
.w3em { width: 3em !important; }
.w4em { width: 4em !important; }
.w5em { width: 5em !important; }
.w10em {width: 10em !important; }

/*============================================================
	高さ
*/
.h100-per { height: 100%; }
.h250 { height: 250px; }
.h450 { height: 450px; }
.h550 { height: 550px; }

/*============================================================
	overflow
*/
.overflow-hidden { overflow: hidden; }

/*============================================================
	align
*/
.alignleft {
	float: left;
	margin: 0.375em 1.75em 1.75em 0;
}

.alignright {
	float: right;
	margin: 0.375em 0 1.75em 1.75em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto 1.75em;
}

/*============================================================
	etc
*/

.corner-round {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.bg-none { background: none !important; }
.bg-white { background: #fff; }
.bg-gray { background: #efefef; }
.bg-gray-light { background: #f7f8fb;}

.bg-border-white {
	background: url(../images/border_white.png) no-repeat center bottom;
	-webkit-background-size: 4em 1px;
	background-size: 2em 1px;
}

.bg-border-black {
	background: url(../images/border_black.png) no-repeat center bottom;
	-webkit-background-size: 4em 1px;
	background-size: 2em 1px;
}

.tx-underline {
	text-decoration:underline;
}

.tx-underline:hover {
	text-decoration:none;
}


/*============================================================
	背景グラーデーション
*/
.bg-gradation-r {
	display: inline-block;
	position: relative;
}
.bg-gradation-r:after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -moz-linear-gradient(left,  rgba(255,255,255,0) 0%, rgba(255,255,255,0) 60%, rgba(255,255,255,0.4) 70%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 60%,rgba(255,255,255,0.4) 70%,rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 60%,rgba(255,255,255,0.4) 70%,rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */
}
.bg-gradation-l {
	display: inline-block;
	position: relative;
}
.bg-gradation-l:after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -moz-linear-gradient(left,  rgba(255,255,255,1) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,0.4) 30%, rgba(255,255,255,0) 40%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,0.4) 30%,rgba(255,255,255,0) 40%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,0.4) 30%,rgba(255,255,255,0) 40%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */
}

.bg-gradation-page-mainimage-box {
	margin: 0 auto;
	width: 980px;
	height: 270px;
}

.bg-gradation-page-mainimage-box h2.h span {
	width: 500px !important;
	z-index: 1;
}
.bg-gradation-page-mainimage {
	display: inline-block;
	position: relative;
}
.bg-gradation-page-mainimage:after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 980px;
	height: 100%;
	background: -moz-linear-gradient(left,  rgba(248,248,248,1) 0%, rgba(248,248,248,1) 50%, rgba(248,248,248,0) 60%, rgba(248,248,248,0) 80%, rgba(248,248,248,1) 90%, rgba(248,248,248,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(248,248,248,1) 0%,rgba(248,248,248,1) 50%,rgba(248,248,248,0) 60%,rgba(248,248,248,0) 80%,rgba(248,248,248,1) 90%,rgba(248,248,248,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(248,248,248,1) 0%,rgba(248,248,248,1) 50%,rgba(248,248,248,0) 60%,rgba(248,248,248,0) 80%,rgba(248,248,248,1) 90%,rgba(248,248,248,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8f8f8', endColorstr='#f8f8f8',GradientType=1 ); /* IE6-9 */
}
