@charset "utf-8";
/*-----------------------------------------------------
							　　　　　目次

  ■リセットCSS
		・リセットCSS-全体
		・リセットCSS-form

	■グリッドレイアウトスタイル（modify以外は編集不可）
		・共通
		・SP (xs)
		・TABLET (sm)
		・PC (md)

  -----------------------------------------------------
	以下、編集可能

	■汎用スタイル common

		0.基本スタイル（フォント色、リンク色）
		1.テキストレイアウト
		2.下余白
		3.フォントカラー/サイズ
		4.フォント装飾bt
		5.リスト
		6.テーブル
		7.テキストリンク
		8.width%
		9.汎用　打ち消し系
		99.フォーム共通スタイル


	■ PC/SP　一部共通スタイル
		・common ボタンの色
		・common ボタンのレイアウト
　　・キャプションを画像の幅に合わせる


	■汎用スタイル(デバイス別)
		・SP (xs)
		・TABLET (sm)
		・PC (md)

-----------------------------------------------------*/



/*  ================================================================================================

    リセット

    ============================================================================================  */

/*　リセットCSS-全体
-----------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
	font-family:"SF Pro JP","SF Pro Text","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"Meiryo UI","Yu Gothic UI","ＭＳ Ｐゴシック","Segoe UI",SegoeUI,"Helvetica Neue","Helvetica","Arial",sans-serif;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	vertical-align: bottom;
}


/*　リセットCSS-form
-----------------------------------------------------*/
input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}



/*  ================================================================================================

    グリッドレイアウトスタイル（modify以外は編集不可）

    ============================================================================================  */

/*-----------------------------------------------------
                      共通
-----------------------------------------------------*/
*, *:before, *:after, col-md-1, col-md-2 {
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
		box-sizing: border-box;
}
.row img {
	max-width:100%;
}


/*-----------------------------------------------------
                      SP (xs)
-----------------------------------------------------*/
@media screen and (max-width: 767px) {

	.contentsWrap section > .row {
		margin-right: 5px;
		margin-left: 5px;
	}
	.contentsWrap section > .row-xs-nogutter {
		margin-right: 0!important;
		margin-left: 0!important;
	}
	.row,
	.row-fleximg,
	.row-xs-nogutter {
		display: -ms-flex;
		display: flex;
		flex-wrap: wrap;
	}

	.row .row,
	.row-fleximg .row {
		/*modify*/
		/*margin-right: -5px;
		margin-left: -5px;*/
	}
	/* アコーディオン */
	.acContent > .row {
		/*modify*/
		margin-right: 0;
		margin-left: 0;
	}
	.row .row [class*="col-xs-"],
	.row-fleximg .row [class*="col-xs-"],
	.row-xs-nogutter .row [class*="col-xs-"] {
		/*modify*/
		padding-top: 10px;
		padding-bottom: 0px;
	}
	.row .row:first-child [class*="col-xs-"],
	.row-fleximg .row:first-child [class*="col-xs-"],
	.row-xs-nogutter .row:first-child [class*="col-xs-"] {
		/*modify*/
		padding-top: 0px;
		padding-bottom: 10px;
	}

	[class*="col-xs-"] {
		/*modify*/
		padding-right:5px;
		padding-bottom:10px;
		padding-left:5px;
	}
	.row-xs-nogutter > [class*="col-xs-"] {
		padding-right:0;
		padding-left:0;
		padding-bottom:0;
	}

	.col-xs-1 { flex: 1 1 8.33333333%; max-width: 8.33333333%; }
	.col-xs-2 { flex: 2 1 16.66666667%; max-width: 16.66666667%; }
	.col-xs-3 { flex: 3 1 25%; max-width: 25%; }
	.col-xs-4 { flex: 4 1 33.33333333%; max-width: 33.33333333%; }
	.col-xs-5 { flex: 5 1 41.66666667%; max-width: 41.66666667%; }
	.col-xs-6 { flex: 6 1 50%; max-width: 50%; }
	.col-xs-7 { flex: 7 1 58.33333333%; max-width: 58.33333333%; }
	.col-xs-8 { flex: 8 1 66.66666667%; max-width: 66.66666667%; }
	.col-xs-9 { flex: 9 1 75%; max-width: 75%; }
	.col-xs-10 { flex: 10 1 83.33333333%; max-width: 83.33333333%; }
	.col-xs-11 { flex: 11 1 91.66666667%; max-width: 91.66666667%; }
	.col-xs-12 { flex: 12 1 100%; max-width: 100%; }

	.col-xs-5eq{ flex: 1 1 20%; max-width: 20%;} /* 5等分 */

	.col-xs-offset-12 { margin-left: 100%;         }
	.col-xs-offset-11 { margin-left: 91.66666667%; }
	.col-xs-offset-10 { margin-left: 83.33333333%; }
	.col-xs-offset-9 {  margin-left: 75%;          }
	.col-xs-offset-8 {  margin-left: 66.66666667%; }
	.col-xs-offset-7 {  margin-left: 58.33333333%; }
	.col-xs-offset-6 {  margin-left: 50%;          }
	.col-xs-offset-5 {  margin-left: 41.66666667%; }
	.col-xs-offset-4 {  margin-left: 33.33333333%; }
	.col-xs-offset-3 {  margin-left: 25%;          }
	.col-xs-offset-2 {  margin-left: 16.66666667%; }
	.col-xs-offset-1 {  margin-left: 8.33333333%;  }
	.col-xs-offset-0 {  margin-left: 0;            }


	/* 順番指定 */
	.col-xs-ordinal-1 {
		order: 0;
	}
	.col-xs-ordinal-2 {
		order: 1;
	}
	.col-xs-ordinal-3 {
		order: 2;
	}
	.col-xs-ordinal-4 {
		order: 3;
	}
	.col-xs-ordinal-5 {
		order: 4;
	}
	.col-xs-ordinal-6 {
		order: 5;
	}
	.col-xs-ordinal-7 {
		order: 6;
	}
	.col-xs-ordinal-8 {
		order: 7;
	}
	.col-xs-ordinal-9 {
		order: 8;
	}
	.col-xs-ordinal-10 {
		order: 9;
	}
	.col-xs-ordinal-11 {
		order: 10;
	}
	.col-xs-ordinal-12 {
		order: 11;
	}


	/* 片側固定 */
	.col-xs-fluid {
		flex: 1;
		padding-top: 0px;
	}
	.col-xs-fix-50 {  width: 50px;  }
	.col-xs-fix-100 { width: 100px; }
	.col-xs-fix-150 { width: 150px; }
	.col-xs-fix-200 { width: 200px; }
	.col-xs-fix-250 { width: 250px; }
	.col-xs-fix-300 { width: 300px; }
	.col-xs-fix-350 { width: 350px; }
	.col-xs-fix-400 { width: 400px; }
	.col-xs-fix-450 { width: 450px; }
	.col-xs-fix-500 { width: 500px; }
	.col-xs-fix-550 { width: 550px; }

	/* 表示設定 */
	.visible-sm { display: none!important;}
	.visible-md { display: none!important;}

	/* 非表示設定 */
	.hidden-xs { display: none!important;}
	.spNone { display: none!important;}

	/* border none */
	.border-xs-none     { border: none!important;}
	.border-xs-topnone  { border-top: none!important;}
	.border-xs-btmnone  { border-bottom: none!important;}
	.border-xs-leftnone { border-left: none!important;}
	.border-xs-rightnone{ border-right: none!important;}

}
/*  //SP (xs) */



/*-----------------------------------------------------
                     TABLET (sm)
-----------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 970px) {

	.row,
	.row-fleximg,
	.row-sm-nogutter {
		display: -ms-flex;
		display: flex;
		flex-wrap: wrap;
	}

	.row .row,
	.row-fleximg .row {
		/*modify*/
		margin-right: -5px;
		margin-left: -5px;
	}
	.row-sm-nogutter .row {
	}
	.row .row [class*="col-sm-"],
	.row-fleximg .row [class*="col-sm-"],
	.row-sm-nogutter .row [class*="col-sm-"] {
		/*modify*/
		padding-top: 10px;
		padding-bottom: 0px;
	}
	.row .row:first-child [class*="col-sm-"],
	.row-fleximg .row:first-child [class*="col-sm-"],
	.row-sm-nogutter .row:first-child [class*="col-sm-"] {
		/*modify*/
		padding-top: 0px;
		padding-bottom: 0px;
	}

	[class*="col-sm-"] {
		/*modify*/
		padding-right:5px;
		padding-bottom:10px;
		padding-left:5px;
	}
	.row-sm-nogutter [class*="col-sm-"] {
		padding-right:0;
		padding-left:0;
		padding-bottom:0;
	}

	.col-sm-1 { flex: 1 1 8.33333333%; max-width: 8.33333333%; }
	.col-sm-2 { flex: 2 1 16.66666667%; max-width: 16.66666667%; }
	.col-sm-3 { flex: 3 1 25%; max-width: 25%; }
	.col-sm-4 { flex: 4 1 33.33333333%; max-width: 33.33333333%; }
	.col-sm-5 { flex: 5 1 41.66666667%; max-width: 41.66666667%; }
	.col-sm-6 { flex: 6 1 50%; max-width: 50%; }
	.col-sm-7 { flex: 7 1 58.33333333%; max-width: 58.33333333%; }
	.col-sm-8 { flex: 8 1 66.66666667%; max-width: 66.66666667%; }
	.col-sm-9 { flex: 9 1 75%; max-width: 75%; }
	.col-sm-10 { flex: 10 1 83.33333333%; max-width: 83.33333333%; }
	.col-sm-11 { flex: 11 1 91.66666667%; max-width: 91.66666667%; }
	.col-sm-12 { flex: 12 1 100%; max-width: 100%; }

	.col-sm-5eq { flex: 1 1 20%; max-width: 20%;} /* 5等分 */

	.col-sm-offset-12 { margin-left: 100%;         }
	.col-sm-offset-11 { margin-left: 91.66666667%; }
	.col-sm-offset-10 { margin-left: 83.33333333%; }
	.col-sm-offset-9 {  margin-left: 75%;          }
	.col-sm-offset-8 {  margin-left: 66.66666667%; }
	.col-sm-offset-7 {  margin-left: 58.33333333%; }
	.col-sm-offset-6 {  margin-left: 50%;          }
	.col-sm-offset-5 {  margin-left: 41.66666667%; }
	.col-sm-offset-4 {  margin-left: 33.33333333%; }
	.col-sm-offset-3 {  margin-left: 25%;          }
	.col-sm-offset-2 {  margin-left: 16.66666667%; }
	.col-sm-offset-1 {  margin-left: 8.33333333%;  }
	.col-sm-offset-0 {  margin-left: 0;            }

	/* 順番指定 */
	.col-sm-ordinal-1 {
		order: 0;
	}
	.col-sm-ordinal-2 {
		order: 1;
	}
	.col-sm-ordinal-3 {
		order: 2;
	}
	.col-sm-ordinal-4 {
		order: 3;
	}
	.col-sm-ordinal-5 {
		order: 4;
	}
	.col-sm-ordinal-6 {
		order: 5;
	}
	.col-sm-ordinal-7 {
		order: 6;
	}
	.col-sm-ordinal-8 {
		order: 7;
	}
	.col-sm-ordinal-9 {
		order: 8;
	}
	.col-sm-ordinal-10 {
		order: 9;
	}
	.col-sm-ordinal-11 {
		order: 10;
	}
	.col-sm-ordinal-12 {
		order: 11;
	}

	/* 片側固定 */
	.col-sm-fluid {
		flex: 1;
		padding-top: 0px;
	}
	.col-sm-fix-50 {  width: 50px;  }
	.col-sm-fix-100 { width: 100px; }
	.col-sm-fix-150 { width: 150px; }
	.col-sm-fix-200 { width: 200px; }
	.col-sm-fix-250 { width: 250px; }
	.col-sm-fix-300 { width: 300px; }
	.col-sm-fix-350 { width: 350px; }
	.col-sm-fix-400 { width: 400px; }
	.col-sm-fix-450 { width: 450px; }
	.col-sm-fix-500 { width: 500px; }
	.col-sm-fix-550 { width: 550px; }


	/* 表示設定 */
	.visible-xs { display: none!important; }
	.visible-md { display: none!important; }

	/* 非表示設定 */
	.hidden-sm { display: none!important; }
	.tbNone { display: none!important; }

	/* border none */
	.border-sm-none     { border: none!important;}
	.border-sm-topnone  { border-top: none!important;}
	.border-sm-btmnone  { border-bottom: none!important;}
	.border-sm-leftnone { border-left: none!important;}
	.border-sm-rightnone{ border-right: none!important;}

}
/* //TABLET (sm) */


/*-----------------------------------------------------
                        PC (md)
-----------------------------------------------------*/
@media print, screen and (min-width: 971px) {

	/*modify*/
	article section > .row,
	article section > .row-md-nogutter,
	footer section > .row{
		margin:0 auto;
	}

	.row,
	.row-fleximg,
	.row-md-nogutter {
		display: -ms-flex;
		display: flex;
		flex-wrap: wrap;
	}

	.row .row,
	.row-fleximg .row {
		/*modify-(1)*/
		margin-right: -10px;
		margin-left: -10px;
	}
	.row .row [class*="col-md-"],
	.row-fleximg .row [class*="col-md-"],
	.row-md-nogutter .row [class*="col-md-"] {
		/*modify*/
		padding-top: 10px;
		padding-bottom: 0px;
	}
	.row .row:first-child [class*="col-md-"],
	.row-fleximg .row:first-child [class*="col-md-"],
	.row-md-nogutter .row:first-child [class*="col-md-"] {
		/*modify*/
		padding-top: 0px;
		padding-bottom: 0px;
	}

	[class*="col-md-"] {
		/*modify-(1)*/
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 20px;
	}
	.row-md-nogutter > [class*="col-md-"] {
		padding-right:0;
		padding-left:0;
		padding-bottom:0;
	}

	.col-md-1 { flex: 1 1 8.33333333%; max-width: 8.33333333%; }
	.col-md-2 { flex: 2 1 16.66666667%; max-width: 16.66666667%; }
	.col-md-3 { flex: 3 1 25%; max-width: 25%; }
	.col-md-4 { flex: 4 1 33.33333333%; max-width: 33.33333333%; }
	.col-md-5 { flex: 5 1 41.66666667%; max-width: 41.66666667%; }
	.col-md-6 { flex: 6 1 50%; max-width: 50%; }
	.col-md-7 { flex: 7 1 58.33333333%; max-width: 58.33333333%; }
	.col-md-8 { flex: 8 1 66.66666667%; max-width: 66.66666667%; }
	.col-md-9 { flex: 9 1 75%; max-width: 75%; }
	.col-md-10 { flex: 10 1 83.33333333%; max-width: 83.33333333%; }
	.col-md-11 { flex: 11 1 91.66666667%; max-width: 91.66666667%; }
	.col-md-12 { flex: 12 1 100%; max-width: 100%; }

	.col-md-5eq { flex: 1 1 20%; max-width: 20%;} /* 5等分 */

	.col-md-offset-12 { margin-left: 100%;         }
	.col-md-offset-11 { margin-left: 91.66666667%; }
	.col-md-offset-10 { margin-left: 83.33333333%; }
	.col-md-offset-9 {  margin-left: 75%;          }
	.col-md-offset-8 {  margin-left: 66.66666667%; }
	.col-md-offset-7 {  margin-left: 58.33333333%; }
	.col-md-offset-6 {  margin-left: 50%;          }
	.col-md-offset-5 {  margin-left: 41.66666667%; }
	.col-md-offset-4 {  margin-left: 33.33333333%; }
	.col-md-offset-3 {  margin-left: 25%;          }
	.col-md-offset-2 {  margin-left: 16.66666667%; }
	.col-md-offset-1 {  margin-left: 8.33333333%;  }
	.col-md-offset-0 {  margin-left: 0;            }

	/* 順番指定 */
	.col-md-ordinal-1 {
		order: 0;
	}
	.col-md-ordinal-2 {
		order: 1;
	}
	.col-md-ordinal-3 {
		order: 2;
	}
	.col-md-ordinal-4 {
		order: 3;
	}
	.col-md-ordinal-5 {
		order: 4;
	}
	.col-md-ordinal-6 {
		order: 5;
	}
	.col-md-ordinal-7 {
		order: 6;
	}
	.col-md-ordinal-8 {
		order: 7;
	}
	.col-md-ordinal-9 {
		order: 8;
	}
	.col-md-ordinal-10 {
		order: 9;
	}
	.col-md-ordinal-11 {
		order: 10;
	}
	.col-md-ordinal-12 {
		order: 11;
	}

	/* 片側固定 */
	.col-md-fluid {
		flex: 1;
		padding-top: 0px;
	}
	.col-md-fix-50 {  width: 50px;  }
	.col-md-fix-100 { width: 100px; }
	.col-md-fix-150 { width: 150px; }
	.col-md-fix-200 { width: 200px; }
	.col-md-fix-250 { width: 250px; }
	.col-md-fix-300 { width: 300px; }
	.col-md-fix-350 { width: 350px; }
	.col-md-fix-400 { width: 400px; }
	.col-md-fix-450 { width: 450px; }
	.col-md-fix-500 { width: 500px; }
	.col-md-fix-550 { width: 550px; }


	/* 表示設定 */
	.visible-xs { display: none!important; }
	.visible-sm { display: none!important; }

	/* 非表示設定 */
	.hidden-md { display: none!important; }
	.pcNone { display: none!important; }

	/* border none */
	.border-md-none     { border: none!important;}
	.border-md-topnone  { border-top: none!important;}
	.border-md-btmnone  { border-bottom: none!important;}
	.border-md-leftnone { border-left: none!important;}
	.border-md-rightnone{ border-right: none!important;}

}
/* //PC (md) */



/*  ================================================================================================

    汎用スタイル　common

    ============================================================================================  */

/* common 0.基本スタイル
-----------------------------------------------------*/
body {
	color: #333;
	letter-spacing: 1px;
	word-wrap: break-word; /* IE11用 */
	overflow-wrap: break-word; /* 禁則処理 */
}
.row img {
	max-width:100%!important;
}


/*----- リンク色 -----*/
a:link,
a:visited,
a:hover,
a:active{
	color: #003f73;
	text-decoration: none;
}

a img:hover {
	opacity:0.8;
}

a.linkColor {
	color: #0062b6;
	text-decoration: underline;
}

/*----- レイアウト -----*/
.row figure{
	text-align: center;
}
.row figcaption{
	text-align: left;
}

/* 禁則処理 */
.contentsWrap{
	overflow-wrap: break-word;
}
.noWrap{
	white-space: nowrap!important;
}

/* 追加 clearfix (初期追加のみ)
---------------------------------------*/
.contentsWrap:before,
.contentsWrap:after{
    content: " ";
    display: table;
}
.contentsWrap:after{
    clear: both;
}


/* common 1.テキストレイアウト
-----------------------------------------------------*/
.text-left  { text-align: left!important;}
.text-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-right { text-align: right!important;}

.valign-top  { vertical-align: top!important;}
.valign-center{ vertical-align:middle!important;}
.valign-bottom { vertical-align: bottom!important;}


/* common 3.フォントカラー/サイズ
-----------------------------------------------------*/
.text-warning { color: #C00;}
.text-success { color: #336666;}
.text-primary { color: #0066CC;}
.text-muted   { color: #777;}
.text-info    { color: #31708f;}
.text-danger  { color: #FF0000; background-color:#FFFDC1; display:inline;}
.colorWhite { color:#fff;}


/* common 4.フォント装飾
-----------------------------------------------------*/
sup{
	font-size: 75.5%;
	vertical-align: top;
	position: relative;
	top: -0.1em;
}
sub{
	font-size: 75.5%;
	vertical-align: bottom;
	position: relative;
	top: 0.1em;
}
strong{
	font-weight: bold;
}
em{
	font-style: oblique;
}
.text-indent {
	text-indent: 1em;
}
.note{
	font-size: 1.3rem;
	line-height: 1.4;
}
em,
.italic{
	font-style: italic!important;
}


/* common 5.リスト
-----------------------------------------------------*/
/* listAsterisk */
.listAsterisk{
	padding-left: 1.5em;
	margin-bottom: 20px;
}
.listAsterisk>li{
	text-indent: -1.5em;
	line-height: 1.5;
}
.listAsterisk>li:before{
	content: '※';
	padding-right: 0.5em;
}

/* listCircle */
.listCircle{
	list-style-type: disc;
	padding-left:1.5em;
	margin-bottom: 20px;
}

/* listSquare */
.listSquare{
	padding-left: 1.5em;
	margin-bottom: 20px;
}
.listSquare>li{
	text-indent: -1.5em;
}
.listSquare>li:before{
	content: '■';
	padding-right: 0.5em;
}

/* listDecimal */
.listDecimal{
	list-style-type: decimal;
	padding-left:1.5em;
	margin-bottom: 20px;
}

.textIndent1 {
	padding-left:1em;
	text-indent:-1em;
}


/* common 6.テーブル
-----------------------------------------------------*/
/*----- テーブル共通スタイル -----*/
.table{
	width: 100%;
	max-width: 100%;
}
.table th{
	vertical-align: middle;
	text-align: left;
	font-weight: bold;
}

/*----- ベースのテーブル -----*/
.table td,
.table th {
	border: 1px solid #ddd;
}


/*----- 左右ボーダーなしテーブル -----*/
.table-horizon td,
.table-horizon th{
	border: 1px solid #ddd;
	border-left: none;
	border-right: none;
}
.table-horizon th {
	border-top: none;
	border-bottom: 2px solid #ddd;
}

/*----- ストライプ　テーブル -----*/
.table-striped>tbody>tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-striped th {
	border-bottom: 2px solid #ddd;
}

/*----- 見出し背景色つきのテーブル -----*/
.table-thbg th{
	background-color: #f9f9f9;
}

/*-----中央寄せ-----*/
.thCenter th,
.tdCenter td{
	text-align: center;
}

/*----- テーブルの項目th　改行させたくないとき -----*/
.noWrapTh th{
	white-space: nowrap;
}

/*----- スクロールテーブル -----*/
#tablefix td,
#tablefix th {
	vertical-align: top;
	overflow: hidden;
}
/* スクロールする領域内のテーブル */
#tablefix {
	max-width: inherit;
	border-collapse: collapse;
}
#tablefix th:first-child{
	border-right: 2px solid #ddd;
}


.tableA {
	width:100%;
}
.tableA td {
	border-top: 1px solid #E3ECF3;
	border-bottom: 1px solid #E3ECF3;
	border-left: 1px solid #E3ECF3;
	border-right: 1px solid #E3ECF3;
	vertical-align:middle;
}
.tableA th {
	border-top: 1px solid #E3ECF3;
	border-bottom: 1px solid #FFF;
	border-left: 1px solid #E3ECF3;
	border-right: 1px solid #E3ECF3;
	vertical-align:middle;
}
.tableA th{
	font-weight:normal;
	background:#E3ECF3;
}
.tableA td{
}


/* common 7.テキストリンク
-----------------------------------------------------*/
.arrowLink{
	position: relative;
	display: inline-block;
	padding-left: 15px;
	padding-right: 15px;
	text-decoration: underline!important;
}
.arrowLink:before{
	width: 10px;
	height: 7px;
	position: absolute;
	top: 6px;
	bottom: 0;
	left: 4px;
	margin: 0 auto;
	content: "";
	box-sizing: border-box;
	border: 7px solid transparent;
	border-left: 10px solid #527F6B;
	/* vertical-align: middle; アイコンを中央にする場合*/
}

/* 外部サイトアイコン */
.blank:after{
	content:" ";
	background: url(/lib/img/common/ico_blank.png) no-repeat;
	display:inline-block;
	width: 25px;
	height: 18px;
	margin-left: 15px;
	margin-right: 15px;
	-ms-background-size:contain;
	background-size:contain;
	vertical-align: middle;
	margin-top: -2px;
}
.pmdaBlank:after{
	content:" ";
	background: url(/lib/img/common/ico_blank.png) no-repeat;
	display:inline-block;
	width: 25px;
	height: 18px;
    margin-left: 10px;
    margin-right: 0px;
	-ms-background-size:contain;
	background-size:contain;
	vertical-align: middle;
	margin-top: -2px;
}
/* PDFアイコン */
.pdf:after{
	content:" ";
	background: url(/lib/img/common/ico_pdf.png) no-repeat;
	background-size: contain;
	display:inline-block;
	width: 23px;
	height: 28px;
	margin-left: 22px;
	margin-right: 15px;
	-ms-background-size:contain;
	background-size:contain;
	vertical-align: middle;
	margin-top: -2px;
}
/* 外部サイトアイコン&PDFアイコン */
.pdfBlank:after{
	content:" ";
	background: url(/lib/img/common/ico_pdf.png) left no-repeat, url(/lib/img/common/ico_blank.png) right center no-repeat;
	display:inline-block;
	width: 63px;
	height: 28px;
	margin-left: 22px;
	margin-right: 15px;
	vertical-align: middle;
	margin-top: -2px;
}
/* 鍵アイコン */
.key:after{
	content:" ";
	background: url(/lib/img/common/ico_key.png) center no-repeat;
	background-size: contain;
	display:inline-block;
	width: 17px;
	height: 20px;
	margin-left: 10px;
	margin-right: 10px;
	vertical-align: middle;
	margin-top: -10px;
}
/* ダウンロードアイコン */
.download:after{
	content:" ";
	background: url(/lib/img/common/ico_download.png) center no-repeat;
	background-size: contain;
	display:inline-block;
	width: 14px;
	height: 14px;
	margin-left: 10px;
	margin-right: 10px;
	vertical-align: middle;
	margin-top: -5px;
}
/* 検索アイコン */
.searchIco:before{
	content:" ";
	background: url(/lib/img/common/ico_search_w.png) center no-repeat;
	background-size: contain;
	display:inline-block;
	width: 24px;
	height: 24px;
	margin-right: 9px;
	vertical-align: middle;
	margin-top: -5px;
}


/* アイコンつけたくない */
.noIcon:after{
	display: none!important;
}


/* common 8.width%
-----------------------------------------------------*/
.width-10per { width: 10%!important;}
.width-20per { width: 20%!important;}
.width-30per { width: 30%!important;}
.width-40per { width: 40%!important;}
.width-50per { width: 50%!important;}
.width-60per { width: 60%!important;}
.width-70per { width: 70%!important;}
.width-80per { width: 80%!important;}
.width-90per { width: 90%!important;}
.width-100per{ width: 100%!important;}


/* common 9.汎用　打ち消し系
-----------------------------------------------------*/
/* 余白　打ち消し */
.pt0{padding-top: 0!important;}
.pb0{padding-bottom: 0!important;}
.pr0{padding-right: 0!important;}
.pl0{padding-left: 0!important;}

.mt0{margin-top: 0!important;}
.mb0{margin-bottom: 0!important;}
.mr0{margin-right: 0!important;}
.ml0{margin-left: 0!important;}


/* common 99.フォーム共通スタイル
-----------------------------------------------------*/

/** テキストボックス **/
input[type="text"],
textarea {
	outline: none;
	background-color: #F2F0EC;
	padding: 8px 10px;
	margin-right: 10px;
	letter-spacing: 1px;
}

/** プルダウン **/
select{
	padding: 5px 40px 5px 10px;
	margin-right: 10px;
}

/** ラジオボックス **/
input[type="radio"] {
	display: none;
}
.radioBtn label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 20px;
	cursor: pointer;
}
.radioBtn label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #F2F0EC;
	border: 1px solid #ccc;
	border-radius: 100%;
	box-sizing: content-box;
}
.radioBtn input[type="radio"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #F36D00;
	border-radius: 100%;
}

/** チェックボックス **/
input[type="checkbox"] {
	display: none;
}
.checkbox label {
	position: relative;
	display: inline-block;
	padding: 4px 5px 4px 22px;
	cursor: pointer;
}
.checkbox label:before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #F2F0EC;
	border: 1px solid #ccc;
	box-sizing: content-box;
}
.checkbox input[type="checkbox"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #F36D00;
}

/** プルダウン select **/
label.selectLabel {
	position: relative;
	display: block;
	width: 160px;
	border: 1px solid #F36D00;
	border-radius: 5px;
	background: #F2F0EC;
}
label.selectLabel:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 0;
	height: 0;
	margin: -2px 0 0 0;
	border: 5px solid transparent;
	border-top: 7px solid #F36D00;
}
::-ms-expand {
 display: none;
}

option{
	padding-right: 20px;
}

/** トグルボタン **/
.togglebtn input {
	display: none;
}
.togglebtn input+label,
.togglebtn input+label::before,
.togglebtn input+label::after {
	transition: all .2s;
}
.togglebtn input+label {
	display: inline-block;
	position: relative;
	width: 132px;
	height: 34px;
	border-radius: 24px;
	cursor: pointer;
	line-height: 1.0;
}
.togglebtn input+label::before {
	display: block;
	content: attr(data-off-label);
	position: absolute;
	top: 9px;
	right: 15px;
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 1.5rem;
}
.togglebtn input+label::after {
	content: '';
	position: absolute;
	top: 2px;
	left: 2px;
	width: 30px;
	height: 30px;
	background-color: #fff;
	border-radius: 50%;
}
.togglebtn input:checked+label::before {
	content: attr(data-on-label);
	left: 23px;
	right: auto;
	color: #fff;
}
.togglebtn input:checked+label::after {
	left: 100px;
	background-color: #fff;
}

/* togglebtn color */
.togglebtn input+label {
	background-color: #aaa;
}
.togglebtn input+label::before {
	color: #fff;
}
.togglebtn input:checked+label {
	background-color: #F36D00;
}
.togglebtn input:checked+label::before {
	color: #fff;
}

/** 共通注釈 **/
.asterisk:after{
	content: "必須";
	background-color: #FF0000;
	color: #FFF;
	padding: 1px 3px;
	margin-left: 0.8em;
	font-size: 0.8em;
	white-space: nowrap;
}

/** ファイル選択 **/
label.fileUploader {
  color: #fff;
	font-size: 1.4rem;
  background: #F36D00;
  padding: 5px 10px;
  border-radius: 5px;
	cursor: pointer;
}
/* //フォーム共通スタイル
-----------------------------------------------------*/




/*  ================================================================================================

    PC/SP　一部共通スタイル

    ============================================================================================  */


/* common ボタンの色
-----------------------------------------------------*/
/* デザイン */
.btnA{
	background-color: #e5ebf1;
	color: #003f73!important;
}
.btnB{
	background-color: #fff;
	color: #003f73!important;
}
.btnC{
	background-color: #003f73;
	color: #fff!important;
}

/* 実行系 */
.btnAction{
	background-color: #CC0000;
	color: #fff!important;
}
/* 戻る系 */
.btnBack{
	display: inline-block;
	width: 340px;
	background-color: #e5ebf1;
	color: #003f73!important;
	padding: 11px 0 12px;
	border-radius: 10px;
	font-weight: bold;
}


/* common ボタンのレイアウト
-----------------------------------------------------*/
.btnArea,
.btnArea2{
	text-align: center;
}
.btnArea2{
	font-size: 0;
}

input{
	display: inline-block;
}
.anybtn{
	cursor: pointer;
}

.btnArea a:hover,
.btnArea2 a:hover,
input:hover{
	cursor: pointer;
}
input:hover{
	opacity:0.7;
}


/*  キャプションを画像の幅に合わせる
-----------------------------------------------------*/
figcaption{
	margin-top: 5px;
	line-height: 1.3;
	font-size: 14px;
}


/*  ================================================================================================

    汎用スタイル(デバイス別)

    ============================================================================================  */

/*-----------------------------------------------------
                      SP (xs)
-----------------------------------------------------*/
@media screen and (max-width: 767px) {


/* SP 1.テキストレイアウト
-----------------------------------------------------*/
.text-xs-left  { text-align: left!important;}
.text-xs-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-xs-right { text-align: right!important;}


/* SP  2.下余白
-----------------------------------------------------*/
/* 下余白 */
.blockend-sss{	margin-bottom: 5px!important;}
.blockend-ss{	margin-bottom: 5px!important;}
.blockend-s {	margin-bottom: 10px!important;}
.blockend-m {	margin-bottom: 20px!important;}
.blockend-l {	margin-bottom: 30px!important;}

/* 下余白 SPのみ */
.blockend-xs-ss{	margin-bottom: 5px!important;}
.blockend-xs-s {	margin-bottom: 10px!important;}
.blockend-xs-m {	margin-bottom: 20px!important;}
.blockend-xs-l {	margin-bottom: 30px!important;}


/* SP 3.フォントサイズ
-----------------------------------------------------*/
.small_xx { font-size: 1.2rem;}/* SP　1.2より下にはしない */
.small_x  { font-size: 1.2rem;}
.small    { font-size: 1.3rem;}
.medium   { font-size: 1.4rem;}
.large    { font-size: 1.5rem;}
.large_x  { font-size: 1.6rem;}
.large_xx { font-size: 1.8rem;}


/* SP  6.テーブル
-----------------------------------------------------*/
.table td,
.table th{
	padding: 4px;
	font-size: 1.2rem;
}
.table{
	margin-bottom: 20px;
}


/* SP 9.width %
-----------------------------------------------------*/
.width-xs-ss{width: 40%!important;}
.width-xs-s{ width: 60%!important;}
.width-xs-m{ width: 80%!important;}
.width-xs-l{ width: 90%!important;}

.width-xs-10per { width: 10%!important;}
.width-xs-20per { width: 20%!important;}
.width-xs-30per { width: 30%!important;}
.width-xs-40per { width: 40%!important;}
.width-xs-50per { width: 50%!important;}
.width-xs-60per { width: 60%!important;}
.width-xs-70per { width: 70%!important;}
.width-xs-80per { width: 80%!important;}
.width-xs-90per { width: 90%!important;}
.width-xs-100per{ width: 100%!important;}



/* SP 99.フォームスタイル
-----------------------------------------------------*/
/** textarea  **/
input[type="text"],
textarea {
	width: 100%;
}

/** ラジオボックス **/
input[type="radio"] {
	display: none;
}
.radioBtn label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 20px;
	cursor: pointer;
}
.radioBtn label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #F2F0EC;
	border: 1px solid #ccc;
	border-radius: 100%;
}
.radioBtn input[type="radio"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #F36D00;
	border-radius: 100%;
}


}
/* // SP (xs) */



/*-----------------------------------------------------
                     TABLET (sm)
-----------------------------------------------------*/
@media screen and (min-width: 767px) and (max-width: 970px) {



/* TB 1.テキストレイアウト
-----------------------------------------------------*/
.text-sm-left  { text-align: left!important;}
.text-sm-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-sm-right { text-align: right!important;}


/* TB  2.下余白
-----------------------------------------------------*/
/* 下余白 */
.blockend-sss{	margin-bottom: 5px!important;}
.blockend-ss{	margin-bottom: 5px!important;}
.blockend-s {	margin-bottom: 10px!important;}
.blockend-m {	margin-bottom: 20px!important;}
.blockend-l {	margin-bottom: 30px!important;}

/* 下余白 SPのみ */
.blockend-sm-ss{	margin-bottom: 5px!important;}
.blockend-sm-s {	margin-bottom: 10px!important;}
.blockend-sm-m {	margin-bottom: 20px!important;}
.blockend-sm-l {	margin-bottom: 30px!important;}


/* TB 3.フォントサイズ
-----------------------------------------------------*/
.small_xx { font-size: 1.2rem;}
.small_x  { font-size: 1.3rem;}
.small    { font-size: 1.4rem;}
.medium   { font-size: 1.5rem;}
.large    { font-size: 1.6rem;}
.large_x  { font-size: 1.7rem;}
.large_xx { font-size: 1.8rem;}


/* TB  6.テーブル
-----------------------------------------------------*/
.table td,
.table th{
	padding: 6px;
	font-size: 1.4rem;
}
.table{
	margin-bottom: 20px;
}


/* TB 8.width%
-----------------------------------------------------*/
.width-sm-ss{width: 40%!important;}
.width-sm-s{ width: 60%!important;}
.width-sm-m{ width: 80%!important;}
.width-sm-l{ width: 90%!important;}

.width-sm-10per { width: 10%!important;}
.width-sm-20per { width: 20%!important;}
.width-sm-30per { width: 30%!important;}
.width-sm-40per { width: 40%!important;}
.width-sm-50per { width: 50%!important;}
.width-sm-60per { width: 60%!important;}
.width-sm-70per { width: 70%!important;}
.width-sm-80per { width: 80%!important;}
.width-sm-90per { width: 90%!important;}
.width-sm-100per{ width: 100%!important;}



/* TB 99.フォームスタイル
-----------------------------------------------------*/
/** textarea  **/
input[type="text"],
textarea {
	width: 100%;
}

}
/*  //TABLET (sm) */


/*-----------------------------------------------------
                        PC (md)
-----------------------------------------------------*/
@media print, screen and (min-width: 971px) {


/* PC 1.テキストレイアウト
-----------------------------------------------------*/
.text-md-left  { text-align: left!important;}
.text-md-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-md-right { text-align: right!important;}


/* PC  2.下余白
-----------------------------------------------------*/
/* 下余白 */
.blockend-sss{	margin-bottom: 5px!important;}
.blockend-ss{	margin-bottom: 15px!important;}
.blockend-s {	margin-bottom: 30px!important;}
.blockend-m {	margin-bottom: 50px!important;}
.blockend-l {	margin-bottom: 70px!important;}

/* 下余白 PCのみ */
.blockend-md-ss{	margin-bottom: 15px!important;}
.blockend-md-s {	margin-bottom: 30px!important;}
.blockend-md-m {	margin-bottom: 50px!important;}
.blockend-md-l {	margin-bottom: 70px!important;}


/* PC 3.フォントサイズ
-----------------------------------------------------*/
.small_xx { font-size: 1.3rem;}
.small_x  { font-size: 1.4rem;}
.small    { font-size: 1.5rem;}
.medium   { font-size: 1.6rem;}
.large    { font-size: 1.7rem;}
.large_x  { font-size: 1.8rem;}
.large_xx { font-size: 2.0rem;}


/* PC  6.テーブル
-----------------------------------------------------*/
/* テーブル */
.table td,
.table th{
	padding: 8px;
}

.noWrapTh-md th{
	white-space: nowrap;
}


/* PC 8.width%
-----------------------------------------------------*/
.width-md-ss{width: 40%!important;}
.width-md-s{ width: 60%!important;}
.width-md-m{ width: 80%!important;}
.width-md-l{ width: 90%!important;}

.width-md-10per { width: 10%!important;}
.width-md-20per { width: 20%!important;}
.width-md-30per { width: 30%!important;}
.width-md-40per { width: 40%!important;}
.width-md-50per { width: 50%!important;}
.width-md-60per { width: 60%!important;}
.width-md-70per { width: 70%!important;}
.width-md-80per { width: 80%!important;}
.width-md-90per { width: 90%!important;}
.width-md-100per{ width: 100%!important;}

}

/* color */
:root {
	/* uptravi用 color */
	--utColor: #ffcf06;
	/* fintepla用 color */
	--fnColor : #682b8d;
	--fngsColor : #0099A6;
	/* jaypirca用 color */
	--jyColor : #B6E200;
	/* regtect用 color */
	/* defitelio用 color */
	--dfColor : #003f73;

	/* gazyva用 color */
	--gaColor : #a40023;
	/* monover用 color */
	--mvColor : #003f73;
	/* vidaza用 color */
	--vidaza_mds:#c80852;
	--vidaza_aml:#023f73;
	/* viltepso_i用 color */
	--vlColor : #F15D22;
	/* vyxeos用 color */
	--vxColor : #72267a;

}

/* 更新日表示 位置　*/
/* PC */

@media screen and (min-width: 768px) {
	/* PCは下に表示しない */
	.fabMemoBtnWrap.btm + .upDateWrap {
		display: none;
	}
	.memoBtmWrap + .upDateWrap {
		display: none;
	}
	/* A:見出し横 */
	.mainTitle .upDateWrap {
		/* newsMailBtn がない場合 */
		max-width: 1200px;
		margin: 0 auto;
		text-align: right;
		margin-top: -25px;
		position: relative;
		z-index: 1;
		font-size: 14px;
	}
	/* newsMailBtn がある場合 */
	.mainTitle:has(.newsMailBtn) .upDateWrap span {
		margin-right: 200px;
	}

	/* A:リアクションボタンパーツ(上)の下 */
	.fabMemoBtnWrap + .upDateWrap {
		max-width: 1180px;
		margin: -20px auto 10px;
		padding-right: 15px;
		display: flex;
		justify-content: flex-end;
		position: relative;
		z-index: 10;
		font-size: 14px;
	}
	body#product .memoBtmWrap + .upDateWrap,
	body.product .memoBtmWrap + .upDateWrap {
		display: none;
	}
	/* A':見出し横 (FAQ) */
	body.faq.answer .mainTitle .upDateWrap,
	body.faq.question .mainTitle .upDateWrap {
		max-width: 1200px;
		margin: 0 auto;
		text-align: right;
		margin-top: -15px;
		position: relative;
		z-index: 1;
	}	
	/* C:PDF */
	body.docPdf .upDateWrap {
		z-index: 9999;
		position: fixed;
		right: 18px;
		top: 92%;
	}
}
@media screen and (max-width: 767px) {
	/* SPは上に表示しない */
	.fabMemoBtnWrap.top + .upDateWrap {
		display: none;
	}
	/* が、product配下は表示する */
	body.product .titleMemoWrap {
		position: relative;
	}
	body.product .titleMemoWrap .upDateWrap {
		display: block;
		position: absolute;
		top: -20px;
		right: 10px;
		font-size: 12px;
	}
	body.product .memoBtmWrap + .upDateWrap {
		display: none;
	}
	.mainTitle .upDateWrap {
		text-align: right;
		margin-right: 10px;
		position: relative;
		z-index: 1;
		font-size: 12px;
	}
	#mainContents #webinarMovie .upDateWrap {
		top: 10px;
	}
	body.HokUS10 #mainContents #webinarMovie  .mainTitle .upDateWrap {
		top: 0;
	}
	body.HokUS10 #mainContents .fabMemoBtnWrap.top + .upDateWrap {
		display: block;
	}
	/* body#regionInformation.forum .memoBtmWrap + .upDateWrap {
		margin: -25px 0 30px auto;
	} */
	/* A':見出し横 (FAQ) */
	body.faq.answer .mainTitle .upDateWrap,
	body.faq.question .mainTitle .upDateWrap {
		text-align: right;
		margin-top: 5px;
		position: relative;
		z-index: 1;
		font-size: 12px;
	}
	/* B:リアクションボタンパーツ(下)の下 */
	.memoBtmWrap:has(+.upDateWrap) {
		padding-bottom: 30px;
	}
	.memoBtmWrap + .upDateWrap {
		margin: -55px 0 30px auto;
		padding-right: 35px;
		display: flex;
		justify-content: flex-end;
		position: relative;
		z-index: 10;
		font-size: 12px;
	}
	/* C:PDF */
	body.docPdf .upDateWrap {
		z-index: 9999;
		position: fixed;
		right: 18px;
		top: 92%;
	}
	body.jaypircaArticle05 .memoBtmWrap + .upDateWrap,
	body.jaypircaArticle06 .memoBtmWrap + .upDateWrap {
		margin: -35px 0 10px auto;
	}
	.addendumBtnArea + .upDateWrap {
		margin: 0 10px 30px 0;
		text-align: right;
	}
	body#regionInformation.forum.detail06 .memoBtmWrap + .upDateWrap {
		margin: -55px 0 30px auto;
	}
	body.datePartsShift .memoBtmWrap + .upDateWrap {
		margin: -85px 140px 30px auto;
	}
	
}
@media screen and (min-width: 768px) and (max-width: 970px) {
	/* TBはSPと同じ */
	.fabMemoBtnWrap.top + .upDateWrap {
		display: none;
	}
	body.datePartsShift .memoBtmWrap + .upDateWrap {
		margin: -85px 140px 30px auto;
	}
	body.product .titleMemoWrap {
		position: relative;
	}
	body.product .titleMemoWrap .upDateWrap {
		display: block;
		position: absolute;
		top: -10px;
		right: 10px;
		font-size: 12px;
	}
	body.product .memoBtmWrap + .upDateWrap {
		display: none;
	}
	body#product .memoBtmWrap + .upDateWrap {
		display: block;
		text-align: right;
		margin-right: 10px;
	}
	.mainTitle .upDateWrap {
		text-align: right;
		margin-right: 10px;
		margin-top: 0;
		position: relative;
		z-index: 1;
		font-size: 12px;
	}
	/* A':見出し横 (FAQ) */
	body.faq.answer .mainTitle .upDateWrap,
	body.faq.question .mainTitle .upDateWrap {
		text-align: right;
		margin-top: 5px;
		position: relative;
		z-index: 1;
		font-size: 12px;
	}
	/* B:リアクションボタンパーツ(下)の下 */
	.memoBtmWrap:has(+.upDateWrap) {
		padding-bottom: 30px;
	}
	.memoBtmWrap + .upDateWrap {
		margin: -85px 0 30px auto;
		padding-right: 35px;
		display: flex;
		justify-content: flex-end;
		position: relative;
		z-index: 10;
		font-size: 12px;
	}
	/* C:PDF */
	body.docPdf .upDateWrap {
		z-index: 9999;
		position: fixed;
		right: 18px;
		top: 92%;
	}
	.productDetailArea {
		padding-top: 20px;
	}
	body.vyxeosInfo .memoBtmWrap + .upDateWrap {
		margin: -35px 0 30px auto;
	}
	body.vyxeosInfo.infoArticle01 .memoBtmWrap + .upDateWrap {
		margin: -85px 0 30px auto;
	}
	body.jaypircaArticle05 .memoBtmWrap + .upDateWrap,
	body.jaypircaArticle06 .memoBtmWrap + .upDateWrap {
		margin: -35px 0 10px auto;
	}
}