@charset "utf-8";
/* CSS Document */
/* =========================================================
 Structure Module
========================================================= */
html {
	font-size: 62.5%;
}
@media print, screen and (min-width: 641px) {
html.fontsizeM {
	font-size: 62.5%;
}
html.fontsizeL {
	font-size: 72.5%;
}
}
body {
	line-height: 1.4;
	font-size: 1.4em;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	width: 100%;
	-webkit-text-size-adjust: 100%; /*iPhone や Android のブラウザの、縦向きと横向きの文字サイズを自動調整する機能をOFFにする*/
	/*word-break: break-all;*/
	background-color: #fff;
	color: #333;
}
@media all and (-ms-high-contrast:none) {
	body {
		font-family: メイリオ, Meiryo, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'MS PGothic', arial, helvetica, sans-serif;
	}
}
@media screen and (max-width: 640px) {
body {
	font-size: 1.2em;
}
}
@media screen and (min-width:641px) and (max-width:1140px) {/*幅641px～1020pxの間はスクロールを出す*/
body {
	min-width: 1020px;
	overflow: scroll;
}
}
@media print, screen and (min-width: 641px) {
body {
	min-width: 1020px;
}
}
/* =========================================================
 Text Module
========================================================= */
p.indent {
    margin-left: 1em !important; /* ブロック全体を 1em 右に */
    text-indent: -1em; /* 先頭の1文字のみ 1em 左に */
}
p.indent2 {
    margin-left: 2em !important; /* ブロック全体を 1em 右に */
    text-indent: -2em; /* 先頭の1文字のみ 1em 左に */
}
/* =========================================================
 Link Module
========================================================= */
a:link, a:visited {
	color: #0056d8;
	text-decoration: underline;
}
a:hover, a:active, a:focus, a.hover {
	color: #0056d8;
	text-decoration: none;
}
@media screen and (max-width: 640px) {
a:link,
a:visited {
	color: #0056d8;
}
a:hover,
a:active,
a:focus,
a.hover {
	color: #0056d8;
}
}
/* =========================================================
 Float Reset
========================================================= */
.clear {clear: both;}
.cf:after {content:''; display:table; clear:both;}
/* =========================================================
 Width
========================================================= */
.w-3em { width: 3em; }
.w-4em { width: 4em; }
.w-5em { width: 5em; }
.w-6em { width: 6em; }
.w-7em { width: 7em; }
.w-8em { width: 8em; }
.w-9em { width: 9em; }
.w-10em { width: 10em; }
.w-11em { width: 11em; }
.w-12em { width: 12em; }
.w-13em { width: 13em; }
.w-14em { width: 14em; }

.w-10p { width: 10%; }
.w-15p { width: 15%; }
.w-20p { width: 20%; }
.w-25p { width: 25%; }
.w-30p { width: 30%; }
.w-35p { width: 35%; }
.w-40p { width: 40%; }
.w-45p { width: 45%; }
.w-50p { width: 50%; }
.w-60p { width: 60%; }
.w-65p { width: 65%; }
.w-70p { width: 70%; }
.w-75p { width: 75%; }
.w-80p { width: 80%; }
.w-90p { width: 90%; }
.w-100p { width: 100%; }

@media screen and (max-width: 640px) {
.sp-w-10p { width: 10%; }
.sp-w-20p { width: 20%; }
.sp-w-30p { width: 30%; }
.sp-w-30p { width: 30%; }
.sp-w-40p { width: 40%; }
.sp-w-50p { width: 50%; }
.sp-w-60p { width: 60%; }
.sp-w-70p { width: 70%; }
.sp-w-80p { width: 80%; }
.sp-w-90p { width: 90%; }
.sp-w-100p { width: 100%; }

.sp-maxw-100p { max-width: 100%; }

.sp-w-auto { width: auto; }

}
@media print, screen and (min-width: 641px) {
.pc-w-3em { width: 3em; }
.pc-w-4em { width: 4em; }
.pc-w-5em { width: 5em; }
.pc-w-6em { width: 6em; }
.pc-w-7em { width: 7em; }
.pc-w-8em { width: 8em; }
.pc-w-9em { width: 9em; }
.pc-w-10em { width: 10em; }
.pc-w-11em { width: 11em; }
.pc-w-12em { width: 12em; }
.pc-w-13em { width: 13em; }
.pc-w-14em { width: 14em; }
.pc-w-16em { width: 16em; }
.pc-w-20em { width: 20em; }

.pc-w-10p { width: 10%; }
.pc-w-15p { width: 15%; }
.pc-w-20p { width: 20%; }
.pc-w-25p { width: 25%; }
.pc-w-30p { width: 30%; }
.pc-w-35p { width: 35%; }
.pc-w-40p { width: 40%; }
.pc-w-45p { width: 45%; }
.pc-w-50p { width: 50%; }
.pc-w-60p { width: 60%; }
.pc-w-65p { width: 65%; }
.pc-w-70p { width: 70%; }
.pc-w-75p { width: 75%; }
.pc-w-80p { width: 80%; }
.pc-w-90p { width: 90%; }
.pc-w-100p { width: 100%; }

.pc-w-auto { width: auto; }

}
/* =========================================================
 Margin
========================================================= */

.mat-10{	margin-top:-10px;}
.mat0{	margin-top:0px !important;}
.mat3{	margin-top:3px;}
.mat5{	margin-top:5px;}
.mat8{	margin-top:8px;}
.mat10{	margin-top:10px; !important}
.mat15{	margin-top:15px; !important}
.mat20{	margin-top:20px !important;}
.mat25{	margin-top:25px !important;}
.mat30{	margin-top:30px !important;}
.mat40{	margin-top:40px !important;}
.mat50{	margin-top:50px;}
.mat0-5em{	margin-top:0.5em !important;}
.mat0-8em{	margin-top:0.8em !important;}
.mat1em{	margin-top:1em !important;}
.mat1-5em{	margin-top:1.5em !important;}
.mat2em{	margin-top:2em !important;}
.mat2-5em{	margin-top:2.5em !important;}
.mat3em{	margin-top:3em !important;}
.mat4em{	margin-top:4em !important;}

.mar5{	margin-right:5px;}
.mar8{	margin-right:8px;}
.mar10{	margin-right:10px;}
.mar13{	margin-right:13px;}
.mar14{	margin-right:14px;}
.mar15{	margin-right:15px;}
.mar20{	margin-right:20px;}
.mar25{	margin-right:25px;}
.mar30{	margin-right:30px;}
.mar50{	margin-right:50px;}
.marauto{ margin-right:auto;}

.mab0{	margin-bottom:0px !important;}
.mab3{	margin-bottom:3px;}
.mab5{	margin-bottom:5px;}
.mab8{	margin-bottom:8px;}
.mab10{	margin-bottom:10px;}
.mab15{	margin-bottom:15px;}
.mab20{	margin-bottom:20px;}
.mab25{	margin-bottom:25px;}
.mab30{	margin-bottom:30px;}
.mab40{	margin-bottom:40px;}
.mab50{	margin-bottom:50px;}
.mab0-5em{	margin-bottom:0.5em !important;}
.mab0-8em{	margin-bottom:0.8em !important;}
.mab1em{	margin-bottom:1em !important;}
.mab1-5em{	margin-bottom:1.5em;}
.mab2em{	margin-bottom:2em;}
.mab2-5em{	margin-bottom:2.5em;}

.mal5{	margin-left:5px;}
.mal10{	margin-left:10px;}
.mal11{	margin-left:11px;}
.mal15{	margin-left:15px;}
.mal20{	margin-left:20px;}
.mal25{	margin-left:25px;}
.mal30{	margin-left:30px;}
.mal50{	margin-left:50px;}
.malauto{ margin-left:auto;}

@media screen and (max-width: 640px) {
}
/* =========================================================
 Pading
========================================================= */
.pat0{	padding-top:0px !important;}
.pat5{	padding-top:5px;}
.pat10{	padding-top:10px;}
.pat15{	padding-top:15px;}
.pat20{	padding-top:20px;}
.pat25{	padding-top:25px;}
.pat30{	padding-top:30px;}
.pat50{	padding-top:50px;}

.par5{	padding-right:5px;}
.par7{	padding-right:7px;}
.par9{	padding-right:9px;}
.par10{	padding-right:10px;}
.par15{	padding-right:15px;}
.par20{	padding-right:20px;}
.par25{	padding-right:25px;}
.par30{	padding-right:30px;}
.par50{	padding-right:50px;}

.pab0{	padding-bottom:0px !important;}
.pab5{	padding-bottom:5px;}
.pab10{	padding-bottom:10px;}
.pab15{	padding-bottom:15px;}
.pab20{	padding-bottom:20px;}
.pab25{	padding-bottom:25px;}
.pab30{	padding-bottom:30px;}
.pab50{	padding-bottom:50px;}
.pab75{ padding-bottom:75px;}

.pal10{	padding-left:10px;}
.pal15{	padding-left:15px;}
.pal20{	padding-left:20px;}
.pal25{	padding-left:25px;}
.pal30{	padding-left:30px;}
.pal50{	padding-left:50px;}

/* =========================================================
 Text Align
========================================================= */
.txal{ text-align:left !important;}
.txac{ text-align:center !important;}
.txar{ text-align:right !important;}
@media screen and (max-width: 640px) {
.sp-txal{ text-align:left !important;}
.sp-txac{ text-align:center !important;}
.sp-txar{ text-align:right !important;}
}
@media print, screen and (min-width: 641px) {
.pc-txal{ text-align:left !important;}
.pc-txac{ text-align:center !important;}
.pc-txar{ text-align:right !important;}
}
/* =========================================================
 Vertical Align
========================================================= */
.vat{ vertical-align:top !important;}
.vam{ vertical-align:middle !important;}
.vab{ vertical-align:bottom !important;}

/* =========================================================
 white-space
========================================================= */
.nowrap {
	white-space: nowrap;
}
@media screen and (max-width: 640px) {
.sp-nowrap {
	white-space: nowrap;
}
}
@media print, screen and (min-width: 641px) {
.pc-nowrap {
	white-space: nowrap;
}
}
/* =========================================================
 Font
========================================================= */
.red{
	color: #e50000;
}
.red-b{
	color: #e50000;
	font-weight: bold;
}
.font-bold {
	font-weight: bold !important;
}
.font-normal {
	font-weight: normal !important;
}
@media screen and (max-width: 640px) {
.font-normal-sp {
	font-weight: normal !important;
}
.font-bold-sp {
	font-weight: bold !important;
}
}
@media print, screen and (min-width: 641px) {
.font-normal-pc {
	font-weight: normal !important;
}
.font-bold-pc {
	font-weight: bold !important;
}
}
/* =========================================================
 display
========================================================= */
.disp-block {
	display: block;
}
.disp-inline-block {
	display: inline-block;
}
@media screen and (max-width: 640px) {
.disp-block-sp {
	display: block;
}
.disp-inline-block-sp {
	display: inline-block;
}
}
@media print, screen and (min-width: 641px) {
.disp-block-pc {
	display: block;
}
.disp-inline-block-pc {
	display: inline-block;
}
}
/* =========================================================
 Opacity
========================================================= */
.opacity a:hover, a.opacity:hover, a.opacity.hover, .opacity a:focus, a.opacity:focus {
	opacity: 0.70;
}
/* =========================================================
 input
========================================================= */

input[type="text" disabled]{
	background: #ccc;
}

textarea[disabled]{
	background: #ccc;
}

/* =========================================================
 スクリーンリーダー非表示用
========================================================= */
*[class^="screenreader"] {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	width: 1px;
	height: 1px;
	overflow: hidden;
}