@charset "utf-8";

/* TinyMCE用CSS */

*{
	box-sizing:border-box;

	-webkit-text-size-adjust: 100%; /* iOSでのレイアウト崩れを避ける */
}

.mceContentHtml{

}

	.mceContentHtml.mobile{
		background-color:#eee;
	}

body,
.mceContentBody {
	color: #111;
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka",Verdana,Arial, Helvetica, sans-serif;
	font-size: 15px;
	line-break: strict;
	line-height: 2;
	margin: 0px;
	overflow-wrap: break-word;
	padding: 0px;
	text-align: center;
}

	body.viewmode-mobile {
		font-size: 80%;
		text-align: left;	/* 可読性に配慮して、PCでは中央揃え、モバイルでは左揃え */
	}

	/* PCでのモバイル表示（管理者用） */
	.desktop body.admin-bar.viewmode-mobile{
		margin:0px auto;
		max-width:320px;
	}

/* 管理画面のtinyMCE */
.mceContentBody{
	border:1px dotted #ccc;
	margin-left:auto;
	margin-right:auto;
	max-width:950px;	/* 外観をあわせる */
	padding:20px 0px 20px 0px !important;
	
}
	
	.mceContentBody.viewmode-mobile{
		padding-left:9px !important;
		padding-right:9px !important;
		max-width:320px;	/* 外観をあわせる */
	}

em{
	font-family:"ＭＳ Ｐゴシック", "MS P Gothic","Osaka",Verdana,Arial, Helvetica, sans-serif;
	font-style:italic;
}

h1{
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height:1.4;
}

h2{
	clear:both;
	/*
	font-family:"Hannari";
	*/
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight:bold;
	font-size:27px;
	line-height:1.4;
	padding:0px;
	margin:0px 0px 15px 0px;

	transform:rotate(.03deg);
}

	.viewmode-mobile h2{
	}

h3{
	background-color:#E4E8EB;
	clear:both;
	color:#333;
	/*
	font-family:"Hiragino Mincho W3 JIS2004";
	*/
	font-size:19px;
	font-weight:bold;
	line-height:1.5;
	padding:7px 7px 5px 10px;
	margin:10px 0px 15px 0px;
}

	.viewmode-mobile h3{
		font-size:16px;
	}

h4{
	border-left:5px solid #093388;
	border-bottom:1px dotted #98A8B1;
	color:#333;
	clear:both;
	font-size:16px;
	font-weight:bold;
	line-height:1.5;
	padding:3px 0px 3px 8px;
	margin:10px 0px 15px 0px;
}

	.viewmode-mobile h4{
		font-size:14px;
	}

	h4 a{
		text-decoration:underline;
		color:#666;	
	}
	
		h4 a:hover{
			text-decoration:underline;
			color:#000;
		}

h5{
	font-size:100%;
	font-weight:bold;
	margin:0px 0px 10px 0px;
	padding:0px 0px 0px 0px;
}

hr{
	background-color:#eee;
	border:none;
	height:5px;
}

ul{
	/*
	display:inline-block;
	*/
	margin:0px;
	padding-left:20px;
	text-align:left;
}

	li{
		margin:0px;
		padding:0px;
	}

ol{
	/*
	display:inline-block;
	*/
	margin:0px;
	padding-left:24px;
	text-align:left;
}


table{
	}

	.mce-item-table td{
		min-width:1em; /* 編集しやすいように最小幅を設定 */
	}

	/* スマホ表示の際、1カラムに可変 */
	.viewmode-mobile table.responsive{
		display:block;
		height:auto !important;
		max-width:100%;
	}

	table.aligncenter{
		display:table;
	}

	tbody{
	}
		.viewmode-mobile table.responsive > tbody{
			display:block;
			width:100%;
		}

	tr{
	}
		.viewmode-mobile table.responsive > tbody > tr{
			display:block;
			height:auto !important;
		}

	th{
	}
	
	td{
		font-size:inherit;
		font-family:inherit;
		margin:0;
	}

		.viewmode-mobile table.responsive > caption,
		.viewmode-mobile table.responsive > tbody > tr > th,
		.viewmode-mobile table.responsive > tbody > tr > td{
			display:block;
			height:auto !important;
			width:auto !important;
		}
		
			.viewmode-mobile td img{
				/*
				display:block;
				text-align:center;
				margin-left:auto;
				margin-right:auto;
				*/
			}
	
		td > h1:first-child,
		td > h2:first-child,
		td > h3:first-child,
		td > h4:first-child,
		td > h5:first-child{
			margin-top:0;
		}
		
		/* セル内で折り返さない（ビジュアルエディタ用） */
		th.nowrap,
		td.nowrap{
			white-space:nowrap;
		}

/* wp-content.cssでmax-width:100%に設定されているが、
変更するとコンテンツ幅を超えてはみ出す場合があるので注意。
ただし、max-width:100%のままだと、テーブル内に配置した際に親要素にあわせて縮小される（IE以外）
このことから以下のように設定した
【PC表示】 … max-widthは100%のまま。
【モバイル表示】 … max-width:100%（デバイスによってコンテンツ幅が変動するため）。
*/
img{
	border:0px;
	/*
	max-width:none;
	vertical-align:bottom;
	*/
}

	img.size-full{
		/* コンテンツ幅と同じに設定（未使用） */
		/*
		max-width:950px;
		*/
	}

	.viewmode-mobile img{
		/*
		max-width:100%;
		*/
	}

	/* 画像の汎用クラス */
	img.valigntop{
		vertical-align:top;
	}

	img.valignmiddle{
		vertical-align:middle;
	}

	img.valignbottom{
		vertical-align:bottom;
	}

a{
	color:#4665A5;
	text-decoration:underline;
}
	a:focus{
	}
	a:hover{
		text-decoration:none;
	}
	a:visited{
		color:#480C85;
	}

p{
	margin:0px;
	line-height:inherit;
}

div{}
	div > h1:first-child,
	div > h2:first-child,
	div > h3:first-child,
	div > h4:first-child,
	div > h5:first-child{
		margin-top:0;
	}



/*
***********************************************************************************************
Wordpressのビルトインクラス
***********************************************************************************************
*/

.wp-caption{
	display:inline-block;
}

	.wp-caption.aligncenter{
		display:block;
	}


/*
***********************************************************************************************
「部品を挿入」機能で挿入される汎用クラス付きの要素
***********************************************************************************************
*/

/* リンクボタン ━━━━━━━━━━━━━━━━━━━━━━━ */

/* スタイル1 角丸 */
a.btn{
	background-color:#093388;
	border:2px solid #093388;
	color:#fff;
	display:inline-block;
	padding:0.3em 1em 0.3em 2em;
	position:relative;
	text-decoration:none;

	transition:all .2s ease;
	transition-property: background-color, border, color;
	border-radius:3px;
}

	/* tinymceで編集中の状態 */
	.mce-content-body a.btn[data-mce-selected]{
		padding:0.3em 1em 0.3em 2em;
	}

	a.btn:hover{
		background-color:#fff;
		border:2px solid #093388;
		color:#093388;
	}

	a.btn:before{
		color:#fff;
		content:"\f054";	/* fa-chevron-right */
		display:block;
		font-family:FontAwesome;
		font-size:1em;
		line-height:1.5;
		top:0.55em;
		left:1em;
		position:absolute;
	}

		a.btn:hover:before{
			color:#093388;
		}

	a.btn + .icon_external{
		display:none;
	}

/* スタイル2 丸 */
a.btn.type02{
	border-radius:1.5em;
}

/* スタイル3 枠のみ */
a.btn.type03{
	background-color:transparent;
	border:2px solid #093388;
	color:#093388;

	border-radius:1.5em;
}

	a.btn.type03:hover{
		background-color:#093388;
		border:2px solid #093388;
		color:#fff;
	}

	a.btn.type03:before{
		color:#093388;
	}

		a.btn.type03:hover:before{
			color:#fff;
		}


/* リスト ━━━━━━━━━━━━━━━━━━━━━━━ */

/* スタイル1 矢印 */
ul.type01{
	list-style-type:none;
}

	ul.type01 > li{
		list-style-type:none;
		position:relative;
	}

		ul.type01 > li:before{
			color:#093388;
			content:"\f054";	/* fa-chevron-right */
			display:block;
			font-family:FontAwesome;
			font-size:0.8em;
			line-height:1.5;
			top:0.35em;
			left:-1em;
			position:absolute;
		}

/* スタイル2 米印 */
ul.type02{
	list-style-type:none;
}

	ul.type02 > li{
		list-style-type:none;
		position:relative;
	}

		ul.type02 > li:before{
			content:"※";
			display:block;
			font-size:1em;
			left:-1.35em;
			position:absolute;
		}

/* スタイル3 横並び（未使用） */
ul.type03{
	list-style-type:none;
	padding:0px;
}

	ul.type03 > li{
		border-left:1px solid #ccc;
		display:inline;	/* ie11でのバグのため、inline-blockでなくinlineにすること */
		margin:0 -0.4em 0 0;
		padding:0 1em;
		vertical-align:top;
	}

		ul.type03 > li:first-child{
			border-left:0px solid #fff;
		}

/* スタイル4 横並び・矢印（未使用） */
ul.type04{
	padding:0px;
}

	ul.type04 > li{
		display:inline;	/* ie11でのバグのため、inline-blockでなくinlineにすること */
		margin:0 1.5em 0 0;
		padding:0 0 0 1em;
		position:relative;
		vertical-align:top;
	}

		/* 矢印の飾り */
		ul.type04 > li:before{
			color:#093388;
			content:"\f054";	/* fa-chevron-right */
			display:block;
			font-family:FontAwesome;
			font-size:0.8em;
			line-height:1.5;
			top:0.15em;
			left:0.3em;
			position:absolute;
		}

/*
***********************************************************************************************
float関連
***********************************************************************************************
*/

/* new clearfix */
.clearfix:after{
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .clearfix            { zoom:1; } /* IE6 */ 
*:first-child+html .clearfix{ zoom:1; } /* IE7 */


/* margin,paddingの汎用クラス━━━━━━━━━━━━━━━━━━━━━━━ */

.mt0{ margin-top:0px !important; }
.mt3{ margin-top:3px !important; }
.mt5{ margin-top:5px !important; }
.mt6{ margin-top:6px !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; }
.mt50{ margin-top:50px !important; }

.mt-40{ margin-top:-40px !important;}

.mra{ margin-right:auto !important; }
.mr5{ margin-right:5px !important; }
.mr10{ margin-right:10px !important; }
.mr15{ margin-right:15px !important; }
.mr20{ margin-right:20px !important; }
.mr25{ margin-right:25px !important; }
.mr30{ margin-right:30px !important; }

.mla{ margin-left:auto !important; }
.ml0{ margin-left:0px !important; }
.ml10{ margin-left:10px !important; }
.ml15{ margin-left:15px !important; }
.ml20{ margin-left:20px !important; }
.ml25{ margin-left:25px !important; }
.ml30{ margin-left:30px !important; }
.ml40{ margin-left:40px !important; }
.ml50{ margin-left:50px !important; }
.ml100{ margin-left:100px !important; }
.ml115{ margin-left:115px !important; }

.mb0{ margin-bottom:0px !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; }
.mb40{ margin-bottom:40px !important; }
.mb45{ margin-bottom:45px !important; }

.pt0{ padding-top:0px !important; }
.pt10{ padding-top:10px !important; }
.pt15{ padding-top:10px !important; }
.pt20{ padding-top:20px !important; }
.pt25{ padding-top:25px !important; }
.pt30{ padding-top:30px !important; }
.pt40{ padding-top:40px !important; }

.pra{ padding-right:auto !important; }
.pr0{ padding-right:0px !important; }
.pr5{ padding-right:5px !important; }
.pr10{ padding-right:10px !important; }
.pr15{ padding-right:15px !important; }
.pr20{ padding-right:20px !important; }
.pr25{ padding-right:25px !important; }
.pr30{ padding-right:30px !important; }
.pr40{ padding-right:40px !important; }

.pda{ padding-bottom:auto !important; }
.pd0{ padding-bottom:0px !important; }
.pd5{ padding-bottom:5px !important; }
.pd10{ padding-bottom:10px !important; }
.pd15{ padding-bottom:15px !important; }
.pd20{ padding-bottom:20px !important; }
.pd25{ padding-bottom:25px !important; }
.pd30{ padding-bottom:30px !important; }
.pd40{ padding-bottom:40px !important; }

.pl0{ padding-left:0px!important; }
.pl10{ padding-left:10px!important; }
.pl15{ padding-left:15px!important; }
.pl20{ padding-left:20px!important; }
.pl25{ padding-left:25px!important; }
.pl30{ padding-left:30px!important; }
.pl40{ padding-left:40px!important; }
.pl45{ padding-left:45px!important; }
.pl65{ padding-left:65px!important; }


/* tableの汎用クラス━━━━━━━━━━━━━━━━━━━━━━━ */


/* スタイル1 */
table.type01{
	border:1px solid #ccc;
	border-collapse:collapse;
}

	.viewmode-mobile table.type01.responsive{
		border:0px solid #fff;
	}
	
	table.type01 > thead > tr > th{
		border:1px solid #ccc;
		background-color:#E4E8EB;
	}
	
	table.type01 > tbody > tr > th{
		border:1px solid #ccc;
		background-color:#E4E8EB;
	}
	
		.viewmode-mobile table.type01.responsive > tbody > tr > th{
			margin-top:-1px;
		}

	table.type01 > tbody > tr > td{
		border:1px solid #ccc;
	}
	
		.viewmode-mobile table.type01.responsive tbody > tr > td{
			margin-top:-1px;
		}


/* スタイル2 */
table.type02{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	border-left:0px solid #fff;
	border-right:0px solid #fff;
	border-collapse:collapse;
}

	.viewmode-mobile table.type02.responsive{
		border-top:0px solid #fff;
		border-bottom:0px solid #fff;
	}

	table.type02 > tbody > tr > th{
		background-color:#E4E8EB;
		border-top:1px solid #ccc;
		border-bottom:1px solid #ccc;
		border-left:0px solid #fff;
		border-right:0px solid #fff;
	}
	
		.viewmode-mobile table.type02.responsive > tbody > tr > th{
			margin-top:-1px;
		}

	table.type02 > tbody > tr > td{
		border-top:1px solid #ccc;
		border-bottom:1px solid #ccc;
		border-left:0px solid #fff;
		border-right:0px solid #fff;
	}
	
		.viewmode-mobile table.type02.responsive > tbody > tr > td{
			margin-top:-1px;
		}

/* スタイル3 */
table.type03{
}
	table.type03 > tbody > tr > th{
		background-color:#999;
		color:#fff;
	}

	table.type03 > tbody > tr > td{
	}
	
		table.type03 > tbody > tr.odd > td{
			background-color:#E4E8EB;
		}

			.viewmode-mobile table.type03 > tbody > tr.odd > td{
				background-color:#fff;
			}