@charset "UTF-8";


/*    Nostro Bosco   */

/* elements.css ::::::::::::::::::::::::::::::::::::::::::::::::::

   - Basic Elements (Reset)
   - Basic Elements (Tune-Up)
   - Classes
   	- 余白と区切り線
  
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */


/* =====================================================

	Basic Elements
	- Reset the default styles

===================================================== */

/* 
-------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,p,blockquote,th,td { 
	margin: 0;
	padding: 0;
/*	line-height: 1.0;*/
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic",Verdana, sans-serif;
}
form, input, select, fieldset,textarea {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
fieldset,abbr,acronym { 
	border: 0;
}
address,cite,code,dfn,em,strong,th,var {
	font-style: normal;
	font-weight: normal;
}
caption {
	font-weight: bold;
	padding-bottom: 2px;
}
caption,th {
	text-align: left;
}
h1,h2 {
	font-size: 100%;
}
h3,h4,h5,h6 {
	font-size: 90%;
	line-height: 1.2;
	margin-bottom:5px;
}
h4,h5,h6 {
	font-size: 84%;
}
q:before,q:after {
	content:'';
}
img {
	vertical-align: top;
	border: 0;
}

/* =====================================================

	Basic Elements
	- Tune-up

===================================================== */
html {
	height: 100%;
}
body {
	height: 100%;
	width: 100%;
	color: #333;
	font-size: 100%;
}


/* Text, List
-------------------------------- */
caption,th,td,
ul,ol,dl,
p {
	font-size: 84%;
}

caption,th,td {
	line-height: 1.3;
}

li,dt,dd,
p {
	line-height: 1.4;
}

ul ul,
ul ol,
ul dl,
ol ul,
ol ol,
ol dl,
dl ul,
dl ol,
dl dl,
th *,
td ul,
td p,
td ol,
td dl,
td * {	
	font-size: 100%;
}
ul,ol {
	margin: 4px 0 4px 2em;
}
p {
	margin-bottom: 1em;
}
ul,ol {
	margin: 0 0 1em 2em;
}
li,dt {
	margin: 1px 0;
}
dl {
	margin: 0 0 1em 0;
}
dd {
	margin: 1px 0;
}


/* Link
-------------------------------- */
a:link {
	color: #0087cb;
}
a:visited {
	color: #006091;
}
a:hover {
	color: #ff4784;
}
a:active {
	color: #ff7fa9;
}

/* マーカー付きリンク */
.link {
	background: url("../img/linkicon01.gif") no-repeat 1px center;
	padding-left: 18px;
}
.link-s {
	background-image: url(../img/linkicon_s01.gif);
	background-repeat: no-repeat;
	background-position: 2px center;
	padding-left: 10px;
}


/* Image
-------------------------------- */
/* 左まわりこみ */
img.img-l {
	float: left;
	padding: 0 10px 5px 0;
}
/* 右まわりこみ */
img.img-r {
	float: right;
	padding: 0 0 5px 10px;
}


/* Table
-------------------------------- */
/* 基本 */
table {
	border: 1px solid #CCC;
	margin-bottom: 7px;
	border-collapse: separate;
	border-spacing: 1px;
}
th {
	background-color: #EEE;
}
th,
td {
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	padding: 3px 8px;
}
/* 一番上のタイトル見出し行 */
tr.heading th,
tr.heading td,
th.heading,
td.heading {
	background: url("../img/table_heading_bg.gif") repeat-x top #cdcdcd;
	color: #555;
}
/* 奇数行 */
tr.OddRow {
	background: #fff;
}
/* 偶数行 */
tr.EvenRow {
	background: #f2f2f2;
}
.vtop {
	vertical-align: top;
}


/* =====================================================

	Classes

===================================================== */
/* 位置情報 */
.center,
.center th,
.center td {
	text-align: center;
}
.left,
.left th,
.left td {
	text-align: left;
}
.right,
.right th,
.right td {
	text-align: right;
}

/* 横並び定義リスト */
dl.par dt {
	float: left;
	clear: both;
	margin: 0;
	padding: 1px 0 0 0;
	width: 8em;
	line-height: 1.35;
}
dl.par dd {
	margin: 0 0 0 8.5em;
	_text-indent: -3px;
	padding: 1px 0 0 0;
	line-height: 1.35;
}
dl.par.s dt {
	width: 4em;
}
dl.par.s dd {
	margin-left: 4.5em;
}

/* 番号付きリスト─アルファベト小文字 */
ol.alpha {
	list-style: lower-alpha;
}

/* リストマーカーなしリスト */
ul.textline {
	list-style-type: none;
	margin: 0;
}


/* 重要（赤文字） */
.note {
	color: red;
}

/* キャプション */
.caption {
	font-size: 80%;
	color: #555;
}

/* エラーメッセージ */
.error {
	color: #CC0000;
}

/* フォームボタン */
.button {
	font-size: 12px;
	line-height: 18px;
	margin: 1px 2px 6px 2px;
}

/* メニュー用リンク */
.menulink a:link,
a.menulink:link {
	color: #222;
	text-decoration: none;
}
.menulink a:visited,
a.menulink:visited {
	color: #222;
	text-decoration: none;
}
.menulink a:hover,
a.menulink:hover {
	color: #FF6060;
	text-decoration: underline;
}
.menulink a.menu:active,
a.menulink:active {
	color: #FF8080;
	text-decoration: underline;
}

/* メールアドレス画像表示 */
.img-mailadd img {
	vertical-align: text-bottom;
}


/* =====================================================

	余白と区切り線

===================================================== */
.hr,
.clear {
	clear: both;
	width: 100%;
	height: 1px;
	line-height: 1px;
}
.hr hr,
.clear br {
	display: none;
}
.hr {
	margin: 15px 0;
}
.hr.dot {
	background: url("../img/dotline.gif") bottom repeat-x;
}
.hr.solid {
	background: #CCC;
}

.bl-n {
	margin-bottom: 0;
}

.bl-s,
.bl-s li,
.bl-s dd,
.bl-s-list {
	margin-bottom: 6px;
}

.bl-m,
.bl-m li,
.bl-m dd,
.bl-m-list {
	margin-bottom: 12px;
}
.bl-l,
.bl-l li,
.bl-l dd,
.bl-l-list {
	margin-bottom: 20px;
}
.bl-xl,
.bl-xl-list {
	margin-bottom: 30px;
}
.bl-s * li,
.bl-s * dd,
.bl-s-list * li,
.bl-s-list * dd,
.bl-m * li,
.bl-m * dd,
.bl-m-list * li,
.bl-m-list * dd,
.bl-l * li,
.bl-l * dd,
.bl-l-list * li,
.bl-l-list * dd,
.bl-xl * li,
.bl-xl * dd,
.bl-xl-list * li,
.bl-xl-list * dd, {
	margin-bottom: 2px;
}



/* ======================================
	Clear
========================================= */
div#content,
div#header,
div#header ul,
.menulink,
div#main,
div#footer ul {
    zoom:1;/*for IE 5.5-7*/
}

div#content:after,
div#header:after,
div#header ul:after,
div#main:after,
.menulink:after,
div#footer ul:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
}

