* {
	margin: 0;
	padding: 0;
}
body {
	background: #FFFFFF url(../img/bg.gif) repeat-x top;
	color: #333333;
	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 90%;
/*	word-break: break-all; */
	text-align: center;
	-webkit-text-size-adjust: none;
}
p {
	margin: 0 0 0.8em;
	text-align: justify;
	text-justify: inter-ideograph;
}
p.nm {
	margin: 0px;
}
h1,h2,h3,h4 {
	font-size: 100%;
}
hr {
	border: 0px;
	border-bottom: 1px dashed #BBBBBB;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
}
th {
	font-weight: normal;
	text-align: left;
}

/*--------------------------------------------------
  リンク
--------------------------------------------------*/
a { text-decoration: underline; }
a:link, a:visited { color: #015e9e; }
a:active, a:hover { text-decoration: none; }
a img { border: none; text-decoration: none; }

/*--------------------------------------------------
  フォントサイズ
--------------------------------------------------*/
.b  { font-weight: bold; }		/* 太字 */
.fs { font-size: 85%; }				/* 小さい文字 */
.fm { font-size: 110%; }			/* 大きい文字 */

/*--------------------------------------------------
  フォントカラー
--------------------------------------------------*/
.red  { color: #E3464D; }			/* 赤 */
.pick { color: #015e9e; }			/* 注目色 */
.thin { color: #888888; }			/* 薄い色 */

/*--------------------------------------------------
  配置
--------------------------------------------------*/
.cen { text-align: center; }	/* 中央寄せ */
.lft { text-align: left; }		/* 左寄せ */
.rit { text-align: right; }		/* 右寄せ */

.vtop { vertical-align: top; }		/* 上詰め */
.vbtm { vertical-align: bottom; }	/* 下詰め */

/*--------------------------------------------------
  画像配置（文字を回り込ます）
--------------------------------------------------*/
.img_lft { float: left; margin-right: 18px; }
.img_rit { float: right; margin-left: 18px; }

/*--------------------------------------------------
  IME（フォームコントロール用）
--------------------------------------------------*/
/* 半角 */
.disabled {
	ime-mode: disabled;
	border: 1px solid #A5ACB2;
	padding: 2px;
}
/* 全角(切替可) */
.active {
	ime-mode: active;
	border: 1px solid #A5ACB2;
	padding: 2px;
}

/*--------------------------------------------------
  その他
--------------------------------------------------*/
/* フロート解除 */
.cb { clear: both; }
/* クリアフィックス */
.cf:after,
.cb:after,
.box:after {
	clear: both;
	display: block;
	overflow: hidden;
	height: 0px;
	content: "";
}

/*--------------------------------------------------
  ヘッダ
--------------------------------------------------*/
#header {
	clear: both;
	width: 900px;
	height: 62px;
	margin: auto;
	background: url(../img/bg_header.gif) no-repeat right bottom;
	text-align: left;
}
#header p {
	margin: 0px;
}
#header p.rit {
	padding-top: 12px;
}
/* 上部テキスト */
#header h1 {
	float: left;
	padding-top: 10px;
}

/*--------------------------------------------------
  ページタイトル
--------------------------------------------------*/
#page_title {
	clear: both;
	width: 100%;
	margin-bottom: 15px;
	background: url(../img/bg_title.gif) repeat-x center top;
	text-align: center;
	font-size: 105%;
	line-height: 1.6;
}
#page_title .box {
	clear: both;
	width: 900px;
	margin: auto;
	padding: 40px 0px 0px;
}
#page_title .box p.img_rit {
	margin: -15px 0px 15px 0px;
}

/*--------------------------------------------------
  コンテナ
--------------------------------------------------*/
#wrap {
	width: 100%;
	background: url(../img/bg_wrap.gif) repeat-x bottom;
}
#container {
	clear: both;
	width: 900px;
	margin: auto;
	padding-bottom: 30px;
	text-align: left;
	line-height: 1.5;
}

/*--------------------------------------------------
  メイン
--------------------------------------------------*/
#profile {
	clear: both;
	width: 860px;
	padding: 10px 20px 20px;
	background: url(../img/bg_profile.gif) no-repeat center bottom;
}
#profile .list {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#profile dl {
	width: 32%;
}
#profile dl:nth-of-type(2) {
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 0 10px;
}
#profile dl:after {
	clear: both;
	display: block;
	overflow: hidden;
	height: 0px;
	content: "";
}
#profile dt {
	text-align: center;
	margin-bottom: 15px;
}
#profile dd .name {
	font-weight: bold;
	font-size: 20px;
}
#profile dl.fl {
	float: left;
	padding-right: 20px;
	border-right: 1px solid #DDDDDD;
}
#profile dl.fr {
	float: right;
}
#profile .box {
	clear: both;
	width: 840px;
	padding: 10px;
	background: #015e9e;
	color: #FFFFFF;
}
#profile .box p {
	margin: 0px;
}
/* プログラム */
#program {
	clear: both;
	width: 900px;
	margin-bottom: 30px;
	padding: 10px 0px 20px;
	background: url(../img/bg_profile.gif) no-repeat center bottom;
}
#program .pad {
	border-right: 1px solid #DDDDDD;
}
#program td hr {
	margin: 10px 0px;
}
#program th {
	width: 50%;
	padding: 0px 20px 5px;
	font-size: 120%;
	font-weight: bold;
}
#program td {
	padding: 0px 20px;
	vertical-align: top;
}
#program td dl {
	padding: 8px;
	padding-right: 4px;
	background: #dfedf6;
	border: 1px solid #d6e8f3;
	margin-top: 10px;
	color: #015e9e;
	font-size: 95%;
}
#program td dd ul {
	margin-left: 20px;
}
#program td ol {
	margin-left: 25px;
}
#program td ol li {
	margin-bottom: 5px;
}
#program td p.title {
	margin: 15px 0px 6px;
	padding: 5px 10px;
	background: #F4F4F4;
	border-top: 1px solid #DDDDDD;
	border-bottom: 1px solid #DDDDDD;
	font-weight: bold;
}
#program td table th {
	width: auto;
	padding: 0;
	padding-right: 10px;
	font-size: 100%;
	font-weight: normal;
	vertical-align: top;
}
#program td table td {
	width: auto;
	padding: 0;
	padding-right: 10px;
}
#program .list {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding: 20px 20px 0;
}
#program .list dl {
	width: 32%;
}
#program .list dl dt {
	font-size: 120%;
	font-weight: bold;
}
#program .list dd .blue {
	background: #dfedf6;
	border: 1px solid #d6e8f3;
	padding: 10px;
	color: #015e9e;
}
#program .list dd .blue ul {
	margin-left: 20px;
}


/* すすめ */
#msg_box {
	clear: both;
	width: 850px;
	margin-bottom: 30px;
	padding: 15px 25px 10px;
	background: url(../img/bg_box.gif) no-repeat left bottom;
	font-size: 105%;
	line-height: 1.6;
}
/* 地図 */
#map h4 {
	text-align: center;
	background: #E0EBF3;
	font-size: 20px;
	padding: 10px 0;
	color: #015E9E;
}

#map table {
	width: 100%;
}
#map table.cb {
	width: 100%;
}
#map table.cb th {
	padding: 0px;
	border: none;
	background: url(../img/bg_contact.gif) repeat-y center top;
}
#map table.cb td {
	border: none;
}
#map table.cb td ol {
	margin-bottom: 10px;
}
#map .map {
	float: right;
	width: 420px;
	margin-bottom: 20px;
	background: #FFFFFF;
}
#map .map_in {
	padding: 10px;
}
#map .map_in dt {
	float: left;
	width: 90px;
}
#map .map_in dd {
	margin-left: 90px;
	margin-bottom: 2px;
}
/* FAX */
#not_mail {
	clear: both;
	width: 878px;
	padding: 10px;
	padding-bottom: 2px;
	margin-bottom: 20px;
	background: #f6d9da;
	border: 2px solid #e3464d;
}
#not_mail img {
	vertical-align: middle;
}

/*--------------------------------------------------
  フッタ
--------------------------------------------------*/
#footer {
	clear: both;
	width: 100%;
	padding-top: 15px;
	background: #FFFFFF url(../img/bg_footer.gif) repeat-x top;
	color: #666666;
	font-size: 90%;
	line-height: 1;
}
#footer p {
	margin-bottom: 10px;
	text-align: right;
}
#footer .box {
	clear: both;
	width: 900px;
	margin: auto;
	padding: 10px 0px 5px;
	background: url(../img/logo.gif) no-repeat left top;
	text-align: left;
}
#footer .box li {
	float: left;
	margin-right: 10px;
	padding-right: 12px;
	border-right: 2px dotted #FFFFFF;
	list-style: none;
}
#footer .box li a {
	color: #FFFFFF;
	text-decoration: none;
}
#footer .box li a:hover {
	text-decoration: underline;
}

/*--------------------------------------------------
  共通
--------------------------------------------------*/
/* パンくずリスト */
#page_navi {
	clear: both;
	margin-bottom: 20px;
	color: #888888;
	font-size: 12px;
	line-height: 1;
}
#page_navi li {
	display: inline;
	margin-right: 6px;
}
#page_navi a { text-decoration: none; color: #888888; }
#page_navi a:hover { text-decoration: }
/* テーブル */
.tbl {
	padding: 15px;
	background: url(../img/bg_tbl.gif);
	border: 2px solid #015E9E;
}
.tbl table {
	width: 100%;
	background: #FFFFFF;
}
.tbl th,
.tbl td {
	padding: 10px;
	border: 1px solid #BBBBBB;
}
.tbl th {
	white-space: nowrap;
	background: #EEEEEE;
	text-align: center;
}
.tbl td hr {
	margin: 10px 0px;
}
.tbl td ul {
	margin-left: 20px;
}
.tbl td ol {
	margin-left: 26px;
}
/* 注意書き */
.attention dt {
	float: left;
	width: 16px;
}
.attention dd {
	margin-left: 16px;
}
/* マーク */
.mark {
	padding-left: 16px;
	background: url(../img/p.gif) no-repeat 0px 5px;
}
