﻿/******************************
 *	ブラウザ毎の表示の差異を吸収する為のデフォルトスタイル
 ******************************/
body,div,dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,pre,form,fieldset,
input,textarea,p,th,td 
{
	font-style:normal;
    margin:0; 
    padding:0;
    font-size:100%;
} /* blockquoteを排除*/
table { 
    border-collapse:collapse;
    border-spacing:0;
} 
img.floor {  
    border:0;
    overflow:hidden; 
    display:block;
    padding:0px;
} 

img {  
    border:0;
} 
address,caption,cite,code,
dfn,th,var { 
    font-style:normal; 
    font-weight:normal;
}/*em strongを排除*/
caption,th { 
    text-align:left; 
} 
h1,h2,h3,h4,h5,h6 
{
    font-weight:normal; 
}
li 
{
	list-style-type:none;
}
iframe
{
    margin: 0;
    padding: 0;
    border: 0;
}

ol.ordered{
	margin: 1em 0 1em 0;
    padding-left: 40px;
}
ol.ordered li{
	list-style-type:decimal;
}

ul.unordered{
	margin: 1em 0 1em 0;
    padding-left: 40px;
}
ul.unordered li{
	list-style-type:disc;	
}

/******************************
 *	汎用
 ******************************/
div.clear
{
	width:0px;
	height:0px;
	clear:both;
	overflow:hidden;
}

#naviContainer.previewDsp #naviArea #navi_list a,
#naviContainer.previewDsp #popNaviArea .g_navi .navi_child a,
#naviContainerSP.previewDsp #naviAreaSP #navi_listSP a {
	pointer-events: none !important;
}

#snsbutton_facebook.previewDsp img,
#snsbutton_twitter.previewDsp img,
#snsbutton_line.previewDsp img {
	margin: 0px 1px 0px 0px;
}


/** siteColorInit()用 **/
a.selOn
{
	/*background-color:#777;
	color:#EEE;*/
}

/*WYSIWYG-TEMPLATE (2分／3分画像)*/

table.templateForTwoImages, table.templateForThreeImages, table.templateForOneImages
{
	table-layout:fixed;
	border-collapse:separate;
	border-spacing:20px 5px;
	width:99%;
}
    table.templateForOneImages td
	{
		width:99%;
	}
	table.templateForOneImages td img
	{
		margin:auto;
		vertical-align:middle;
		max-width: 100% !important;
		height:auto;
	}
	
	table.templateForTwoImages td
	{
		width:49%;
	}
	table.templateForTwoImages td img
	{
		margin:auto;
		vertical-align:middle;
		max-width: 100% !important;
		height:auto;
	}
	
	table.templateForThreeImages td
	{
		width:33%;
	}
	table.templateForThreeImages td img
	{
		margin:auto;
		vertical-align:middle;
		max-width: 100% !important;
		height:auto;
	}
	td.borderWith
	{
		border:1px solid #DFDFDF;
		padding:2px;
		overflow:hidden;
	}
	/*
	table.templateForTwoImages td.borderWith
	{
		height:350px;
		max-height:350px;
	}
	table.templateForThreeImages td.borderWith
	{
		height:200px;
		max-height:200px;
	}
    */
	
/*WYSIWYG-TEMPLATE (2分／3分画像) End*/

/* ----- wysiwyg文字装飾用 start ----- */

/* wysiwygフォントサイズ指定 */
.wys_fs_s {
    font-size: 0.8em;
}
.wys_fs_l {
    font-size: 1.5em;
}
.wys_fs_ll {
    font-size: 2.0em;
}

/* wysiwygフォントカラー指定 */
/* ※uiB.css, uiK.css にも同class定義があるので合わせる必要あり */
/* ※色コードを変更・追加する場合はwysiwyg_tool内の色コード指定部分も要変更 */
.wys_fc_red {
    color: #cc0000;
}
.wys_fc_blue {
    color: #0033ff;
}
.wys_fc_green {
    color: #007D00;
}

/* wysiwyg太字指定 */
.wys_bold {
	font-weight: bold;
}
/* --- wysiwyg文字装飾用 end --- */

/* ライトボックスの背景がフロートヘッダーより上になるように調整 */
.lightboxOverlay {
	z-index: 10001 !important;
}
.lightbox {
	z-index: 10002 !important;
}

/*WYSIWYGインデント*/
.wys_indent{
    margin-left:40px;
}

/* テンプレート */
div.wys_imageR p.wys_image{
    float:right;
    padding:5px;
    margin-left:10px;
}
div.wys_imageL p.wys_image{
    float:left;
    padding:5px;
    margin-right:10px;
}
div.wys_imgList li {
	/*text-align: center;*/
	display: inline-block;
	/*letter-spacing:-0.4em;*/
	vertical-align: top;
	padding-top: 10px;
}
div.wys_imgList li p{
    letter-spacing:normal;
}
div.wys_template img{
	margin:auto;
	vertical-align:middle;
	max-width: 100% !important;
	height:auto;
}
div.wys_img1 li {
	width: 100%;
}
div.wys_img2 li {
	width: calc(50% - 10px);
	text-align: center;
	padding: 5px;
}
div.wys_img3 li {
	width: calc(33% - 10px);
	text-align: center;
	padding: 5px;
}
div.wys_img4 li {
	width: calc(25% - 8px);
	text-align: center;
	padding: 4px;
}
div.wys_img5 li {
	width: calc(20% - 6px);
	text-align: center;
	padding: 3px;
}

#mainShosai p{
    margin-bottom:14px;
}

.migration img {
	max-width: 80%;
	height: auto;
}

/*レスポンシブ対応*/
@media screen and (max-width:767px) {
    div.wys_template{
        display: inherit !important;
    }
    div.wys_template li{
        width:auto;
    }
	.wys_imgList li {
		width: 100% !important;
	}
}

/* 記事本文にある表の横スクロール表示 start */
.__wys_table__wrap .__wys_table {
	margin-bottom: 10px;
}
	/* 左側固定時の境界線の重なり調整 */
	.__wys_table__wrap .__wys_table.leftfixed {
		border-collapse: separate !important;
	}
		.__wys_table__wrap .__wys_table.leftfixed th {
			position: sticky !important;
			left: 0 !important;
		}
		.__wys_table__wrap .__wys_table.leftfixed tr:not(:last-of-type) th {
			border-bottom: none !important;
		}
		.__wys_table__wrap .__wys_table.leftfixed tr:not(:last-of-type) td {
			border-bottom: none !important;
		}
			.__wys_table__wrap .__wys_table.leftfixed tr td {
				border-left: none !important;
			}

/* 左側固定時の最大横幅の制限 */
#cont_body .__wys_table__wrap .__wys_table.leftfixed tr th {
	min-width: 10em !important;
	overflow: hidden;
}

.__wys_table__wrap {
	overflow-x: auto;
	width: calc(100vw - 50px);
	padding: 0px;
	margin: 6px auto 10px auto;
}
	.__wys_table__wrap:not(.noscroll) th {
		min-width: 15em;
	}
	.__wys_table__wrap:not(.noscroll) td {
		min-width: 15em;
	}

	.__wys_table__wrap.noscroll {
		overflow-x: initial !important;
		margin-bottom: 0px !important;
	}

	.__wys_table__wrap .noscroll_btn {
		overflow-x: initial !important;
		margin: 2px auto 6px auto !important;
		position: sticky;
		left: 0;
	}

		.__wys_table__wrap .noscroll_btn a {
			border-style: solid;
			border-width: 2px;
			border-radius: 100vh;
			padding: 2px 8px;
			text-decoration: none !important;

			border-color: rgba(0, 0, 0, 0.2);
			box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
			background-color: rgba(0, 0, 0, 0.6);
			color: #ffffff !important;
		}
			.__wys_table__wrap .noscroll_btn a:hover {
			}

/* infoの項目用  */
#infoContentsWrap .groupWrap.scroll {
	overflow-x: auto;
	width: calc(100vw - 50px);
	padding: 0px;
	margin: 6px auto 10px auto;
}

	#infoContentsWrap .groupWrap.scroll .groupName {
		position: sticky;
		left: 0;
	}

	/* 左側固定時の境界線の重なり調整 */
	#infoContentsWrap .groupWrap.scroll .groupContents {
		border-collapse: separate !important;
		margin-bottom: 10px !important;
	}

		#infoContentsWrap .groupWrap.scroll .groupContents .fieldWrap {
			border-collapse: separate !important;
		}

			#infoContentsWrap .groupWrap.scroll .groupContents .fieldWrap .fieldName {
				border-collapse: separate !important;
				position: sticky;
				left: 0;
				min-width: 8em;
				overflow: hidden;
			}

			#infoContentsWrap .groupWrap.scroll .groupContents .fieldWrap:not(:last-child) .fieldName {
				border-collapse: separate !important;
				position: sticky;
				left: 0;
				border-bottom: none !important;
			}

			#infoContentsWrap .groupWrap.scroll .groupContents .fieldWrap .fieldValue {
				min-width: 25em;
				border-left: none !important;
			}

			#infoContentsWrap .groupWrap.scroll .groupContents .fieldWrap:not(:last-child) .fieldValue {
				border-bottom: none !important;
			}

#infoContentsWrap .groupWrap .noscroll_btn {
	overflow-x: initial !important;
	margin: 6px auto 6px auto !important;
	position: sticky;
	left: 0;
}

	#infoContentsWrap .groupWrap .noscroll_btn a {
		border-style: solid;
		border-width: 2px;
		border-radius: 100vh;
		padding: 2px 8px;
		text-decoration: none !important;
		border-color: rgba(0, 0, 0, 0.2);
		box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
		background-color: rgba(0, 0, 0, 0.6);
		color: #ffffff;
	}

		#infoContentsWrap .groupWrap .noscroll_btn a:hover {
		}

/* 記事本文にある表の横スクロール表示 end */

/* マーキー表示 start */
.disp_marquee {
	padding: 1em 0;
	overflow: hidden;
	border: 1px #ccc solid;
	border-radius: 5px;
	background-color: #eee;
}

.disp_marquee_text {
	display: inline-block;
	padding-left: 100% !important;
	white-space: nowrap;
	/* 3回流れて4回目に中央で停止 */
	animation: 
		disp_marquee_efect 20s linear 0s 1 forwards, 
		disp_marquee_efect 20s linear 20s 1 forwards, 
		disp_marquee_efect 20s linear 40s 1 forwards, 
		disp_marquee_efect2 10s linear 60s 1 forwards;
	/* 無限に流れる */
	/*animation: disp_marquee_efect 20s linear 0s infinite;*/
}

/* 右端から左端に消えるまで */
@keyframes disp_marquee_efect {
	0% {
		transform: translate(0);
	}

	100% {
		transform: translate(-100%);
	}
}
/* 右端から中央まで */
@keyframes disp_marquee_efect2 {
	0% {
		transform: translate(0);
	}
	100% {
		transform: translate(-50%);
	}
}
/* マウスオーバーで一時停止 */
.disp_marquee:hover .disp_marquee_text {
	animation-play-state: paused;
}
/* マーキー表示 end */

/* 要素スキップリンク表示 start */
.Navigation {
	margin: 0;
	padding: 0;
}

	/* 複数のスキップリンク用 */
	.Navigation ul {
		margin: 0;
		padding: 0;
	}

		.Navigation ul li {
			position: absolute;
			text-align: left;
			margin: 0;
			padding: 0;
			display: block;
		}

	/* スキップリンク1つ用 */
	.Navigation div {
		position: absolute;
		text-align: left;
		margin: 0;
		padding: 0;
		display: block;
	}

	/* スキップリンク */
	.Navigation a {
		padding: 5px;
		display: inline;
		z-index: 999999;
		text-decoration: none;
		position: absolute;
		width: 300px;
		left: -1000em;
		top: 0;
		font-weight: bold;
		text-align: center;
		font-size: 125%;
		/zoom:1;
	}

		.Navigation a:focus,
		.Navigation a:active {
			position: absolute;
			top: 30px;
			left: 250px;
			background: #fff !important;
			border: 2px solid #000;
		}

/* 要素スキップリンク表示 end */