@charset "shift-jis";

/* === 料金テーブル定義 === */

table.fee {margin: 10px 0; border: 2px solid #bbb; line-height: normal;
-moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px;
-webkit-box-shadow: 0 1px 3px #ccc;
-moz-box-shadow:    0 1px 3px #ccc;
box-shadow:         0 1px 3px #ccc;
background-color: #fff;
}

table.fee .sm {line-height: normal;}
 
body#light.ln_isp table.fee td .dinf,
body#lightplus.ln_isp table.fee td .dinf {font-size: 128%;}

table.fee {border-width: 2px 1px 1px 2px; *border-width: 2px; border-spacing: 0; *border-collapse: collapse; /* IE7 and lower */}

table.fee th {text-align: center;}

table.fee th img {vertical-align: middle;}

table.fee td, table.fee th {
	border-width: 0;
	border-right:  1px solid #bbb;
	border-bottom: 1px solid #bbb;
}

table.fee th {
font-weight: normal;
text-align: center;
	background-color: #f5f5f5;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#f9f9f9));
	background-image: -webkit-linear-gradient(top, #efefef, #f9f9f9);
	background-image:    -moz-linear-gradient(top, #efefef, #f9f9f9);
	background-image:     -ms-linear-gradient(top, #efefef, #f9f9f9);
	background-image:      -o-linear-gradient(top, #efefef, #f9f9f9);
	background-image:         linear-gradient(top, #efefef, #f9f9f9);
/*	-webkit-box-shadow:	0 1px 0 rgba(255,255,255,.8) inset;
	-moz-box-shadow:		0 1px 0 rgba(255,255,255,.8) inset;
	box-shadow:					0 1px 0 rgba(255,255,255,.8) inset; */
}


table.fee th:first-child {-moz-border-radius: 4px 0 0 0; -webkit-border-radius: 4px 0 0 0; border-radius: 4px 0 0 0;}

table.fee th:last-child {
	-moz-border-radius: 0 4px 0 0;
	-webkit-border-radius: 0 4px 0 0;
	border-radius: 0 4px 0 0;
}

table.fee th:only-child{
	-moz-border-radius: 4px 4px 0 0;
	-webkit-border-radius: 4px 4px 0 0;
	border-radius: 4px 4px 0 0;
}

table.fee tr:last-child td:first-child {
	-moz-border-radius: 0 0 0 4px;
	-webkit-border-radius: 0 0 0 4px;
	border-radius: 0 0 0 4px;
}

table.fee tr:last-child td:last-child {
	-moz-border-radius: 0 0 4px 0;
	-webkit-border-radius: 0 0 4px 0;
	border-radius: 0 0 4px 0;
}

/* colspanやrowspan利用時の例外箇所に角丸がかかる場所の解除処理 */
table.fee th.square,
table.fee td.square {-moz-border-radius: 0 !important; -webkit-border-radius: 0 !important; border-radius: 0 !important;}

/* 料金の値段 */
table.total, table.st {border-color: #ff8c00; border-width: 2px} /* 合計と強調（st=strongの略） */
table.total td {border: none;}
table.total th:only-child {border-right: none;}

table.st td:last-child {border-right: none;}
table.st tr:last-child td {border-bottom: none;}

table.total .dinf {font-size: 200%; color: #ff8c00; vertical-align: -0.07em}
table.total .dinf span {font-size: 75%} /* 小数点以下小さくする */

.fee .dinf {font-size: 160%; vertical-align: -0.07em}
.fee .dinf span {font-size: 75%;} /* 小数点以下小さくする */

.fee td.total .dinf {color: #ff8c00;}
.fee td.total {text-align: right;}
.fee .isp_logo {height: 50px;}


span.dinf.st, b.dinf.st, strong.dinf.st {color: #ff8c00;} /* 強調（st=strongの略） */
.muryo {font-size: 180%; letter-spacing: 0.2em; color: #ff8c00;} /* 無料や不要の場合 */

table td.br_dot, table th.br_dot {border-right-style: dotted;}
table td.br_non, table th.br_non {border-right-style: none;}

/* 特典や割引 */
table.fee .waribiki {background: #ffe57f; margin: 4px auto; padding: 2px 4px; font-size: 80%; line-height: 1.3; width: 90%; border-radius: 4px;}

h2 + table.fee,
h3 + table.fee {margin-top: 0;}

/* 入れ子テーブル */
table td table {border-top: 1px solid #bbb; border-left: 1px solid #bbb; border-spacing: 0; border-collapse: collapse;}
table td table th,
table td table td {border-bottom: 1px solid #bbb !important; border-right: 1px solid #bbb !important;}

/* 入れ子テーブルの角丸リセット */
table.fee table {
-webkit-border-radius: 0px;
border-radius: 0px;
margin-top: 10px;
}

table.fee tr:last-child td:last-child table tr td {
-moz-border-radius: 0 0 0 0;
-webkit-border-radius: 0 0 0 0;
border-radius: 0 0 0 0;
}

table.fee td table th:first-child{
-moz-border-radius: 0 0 0 0;
-webkit-border-radius: 0 0 0 0;
border-radius: 0 0 0 0;
}

table .nbr {border-right-width: 0 !important}

/* 料金の「＋」や「＝」 */
img.fee_icon {position: absolute; margin-left: -20px; top: 50%; left: 50%; zoom: 1;} /* デフォルトで左右センター */
img.plus {margin-top: -5px; position: absolute; top: 50%; left: 335px; zoom: 1;}

/* テーブルwrapper */
.fee_table {position: relative; margin: 15px 0;}
.fee_table table {margin: 0}

