@charset "Shift_JIS";

/* -----------------------------------------------
 *                    base styles
 * ----------------------------------------------- */


/* =========== block level elements =========== */

/* ----- collective ----- */

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
div,
p,
pre,
address,
blockquote,
ul,
ol,
dl,
dt,
dd,
form,
fieldset {
	display: block;
	line-height: inherit;
}

article,
aside,
dialog,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

label {
	cursor: pointer;
}


/* ----- top level ----- */

html {
	margin: 0;
	padding: 0;
	background-color: #fff;
	color: #000;
}

body {
	margin: 0;
	padding: 0;
	text-align: left;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 75%;
	background-color: #fff;
	color: #000;
}


/* ----- heading ----- */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
}


/* ----- table-related elements ----- */

table,
thead,
tbody,
tfoot,
tr,
th,
td,
caption,
col,
colgroup {
	text-align: inherit;
	line-height: inherit;
	text-indent: 0;
	font-size: 100%;
}


/* ----- form ----- */

form {
	margin: 0;
	padding: 0;
}

input,
select,
textarea {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 100%;
	line-height: inherit;
	color: #000;
}

input.text,
select,
textarea {
	padding: 0.3em 5px;
	border: 1px solid #ddd;
	background: #fff;
	vertical-align: middle;
}

textarea {
	line-height: 1.3 !important;
}

select {
	padding: 1px;
}

input.radio {
	margin: 0 5px 0 0;
	padding: 0;
	*margin-right: 1px;
	vertical-align: middle;
}

input.checkbox {
}

input.image {
	border: none !important;
	background: none !important;
	padding: 0 !important;
	vertical-align: top;
}

input.button {
}



/* =========== inline level elements =========== */

/* ----- collective ----- */

a,
abbr,
acronym,
b,
bdo,
big,
button,
cite,
code,
dfn,
em,
i,
img,
input,
kbd,
label,
map,
object,
q,
ruby,
samp,
select,
small,
span,
strong,
sub,
sup,
textarea,
tt,
var {
	display: inline;
	line-height: inherit;
}

em {
	font-weight: bold;
	font-style: normal;
}

em.attention {
	font-weight: normal;
	color: #ff0000;
}

strong {
	font-weight: bold;
	font-style: normal;
}


sup {
	vertical-align: 3px;
	_vertical-align: baseline;
	_position: relative;
	_top: -3px;
	font-size: 83%;
	*font-size: 100%;
}

sup.marker {
	margin-right: 3px;
	margin-left: 3px;
	vertical-align: 2px;
	font-size: 100%;
	font-weight: normal;
	color: #666;
}

sub {
	vertical-align: baseline;
	font-size: 83%;
	*font-size: 100%;
}


/* ----- anchor ----- */

a {
}

a:link {
	color: #0b78d2;
	text-decoration: none;
}

a:visited {
	color: #0b78d2;
	text-decoration: none;
}

a:hover,
a:active,
a:focus {
	color: #34a2ff;
	text-decoration: none;
}

/* insertWastingSpan.js in action (Gecko, Safari) */

a.wasting-span-inserted {
	text-decoration: none;
}

a.wasting-span-inserted span.wasting-span {
	text-decoration: underline;
}

a.wasting-span-inserted span.file-info span.wasting-span {
	text-decoration: none !important;
}


/* ----- img ----- */

img {
	margin: 0;
	padding: 0;
	border: none;
}


/* -----------------------------------------------
 *           layout frame structure style
 * ----------------------------------------------- */

/* =========== structure =========== */

.structure {
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	background-color: #fff;
}

div.structure-content {
	_overflow: visible;
	_height: 1px;
	zoom: 1;
	width: 940px;
	margin: 0 auto;
	padding: 0 10px;
	text-align: left;
}

div.structure-content:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}


/* =========== header-area =========== */

#header-area div.structure-content {
	margin-bottom: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #000;
}

#header-area h1 {
	margin: 0;
	padding: 0;
	font-size: 100%;
}


/* =========== main-area =========== */


/* =========== content-body =========== */

#content-body {
	float: left;
	width: 700px;
	line-height: 1.83;
}

body.structure-1col #content-body {
	float: none;
	width: 940px;
}


/* =========== content-nav =========== */

#content-nav {
	float: right;
	width: 220px;
	line-height: 1.83;
}


/* =========== footer-area =========== */

#footer-area div.structure-content {
	margin-top: 80px;
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: 1px dotted #000;
}

#footer-area div.structure-content p {
	margin: 0;
	padding: 0;
}


/* -----------------------------------------------
 *                 component styles
 * ----------------------------------------------- */

/* =========== margin =========== */

.closely-spaced {
	margin-top: 3px !important;
}

.largely-spaced {
}


/* =========== paragraph =========== */

/* ----- normal ----- */

p.normal {
	margin: 15px 0 0 0;
	padding: 0;
}


/* =========== list =========== */

/* ----- plain ----- */

dl.plain {
	margin: 15px 0 0 0;
	padding: 0;
	text-indent: 0;
}

dl.plain dt {
	margin: 3px 0 0 0;
	padding: 0;
	text-indent: 0;
	font-weight: bold;
}

dl.plain dt:first-child {
	margin-top: 0;
}

dl.plain dd,
dd dl.plain dd {
	margin: 0;
	padding: 0;
}

dl.plain dd > *:first-child {
	margin-top: 0 !important;
}


/* ----- normal ----- */

ul.normal,
li ul.normal {
	margin: 15px 0 0 0;
	padding: 0;
}

ul.normal li > *:first-child {
	margin-top: 0 !important;
}

ul.normal li,
li ul.normal li {
	margin: 2px 0 0 0;;
	padding: 0 0 0 12px;
	list-style-type: none;
	background: url(../img/common/icon_01.png) 3px 0.8em no-repeat;
}

/* ----- inline-list-A01 ----- */

ul.inline-list-A01 {
	margin: 15px 0 0 0;
	padding: 0;
	list-style-type: none;
}

ul.inline-list-A01 li {
	display: inline;
	margin: 0 30px 0 0;
	padding: 0;
}




/* =========== link-list =========== */

/* ----- link-list-A01 ----- */

ul.link-list-A01,
li ul.link-list-A01 {
	margin: 15px 0 0 0;
	padding: 0;
	_zoom: 1;
}

ul.link-list-A01 li > *:first-child,
ul.link-list-A01 li > a:first-child + * {
	margin-top: 0 !important;
}

ul.link-list-A01 li,
li ul.link-list-A01 li {
	margin: 2px 0 0 0;
	padding: 0 0 0 12px;
	list-style-type: none;
	background: url(../img/common/icon_arrow_01.png) left 0.6em no-repeat;
}


ul.link-list-A01 a {
	text-decoration: none !important;
}

/* ----- topic-path ----- */

ol.topic-path {
	margin: 0;
	padding: 0;
	list-style-type: none;
	line-height: 1.1;
}

ol.topic-path li {
	display: inline;
	margin: 0;
	padding: 0;
}

ol.topic-path li {
	display: inline;
	margin: 0 6px 0 0;
	*margin-right: 10px;
	padding: 0 14px 0 0;
	background: #fff url(../img/common/topic-path_icon_01.png) right 0.4em no-repeat;
	font-size: 83%;
}

ol.topic-path li em {
	margin-right: -20px;
	font-weight: normal;
	background: #fff;
}



/* =========== note =========== */

ul.note-list-A01,
ul.note-list-A02,
ul.note-list-A03,
ul.note-list-A04 {
	margin: 19px 0 0 0;
	padding: 0;
	font-size: 71%;/*10px*/
	line-height: 1.5;
}

ul.note-list-A01 ul,
ul.note-list-A02 ul,
ul.note-list-A03 ul,
ul.note-list-A04 ul {
	margin-top: 0;
	font-size: 100%;
}

ul.note-list-A01 li,
ul.note-list-A02 li,
ul.note-list-A03 li {
	_overflow: visible;
	_height: 1px;
	zoom: 1;
	margin: 7px 0 0 0;
	padding: 0 0 0 2em;
	list-style-type: none;
	_text-indent: -3px;
	background: none;
}
ul.note-list-A04 li {
	_overflow: visible;
	_height: 1px;
	zoom: 1;
	margin: 7px 0 0 0;
	padding: 0 0 0 180px;
	list-style-type: none;
	background: none;
}

ul.note-list-A01 li:after,
ul.note-list-A02 li:after,
ul.note-list-A03 li:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}

ul.note-list-A01 li span.marker,
ul.note-list-A02 li span.marker,
ul.note-list-A03 li span.marker {
	float: left;
	width: 2em;
	margin-right: 0;
	margin-left: -2em;
	_width: 1.7em;
	_padding-left: 3px;
}
ul.note-list-A04 li span.marker {
	float: left;
	width: 100px;
	margin-right: 0;
	margin-left: -100px;
}

ul.note-list-A02 li {
	padding-left: 2.5em;
}

ul.note-list-A02 li span.marker {
	width: 2.5em;
	margin-left: -2.5em;
	_width: 2.3em;
}

ul.note-list-A03 li {
	padding-left: 4em;
}

ul.note-list-A03 li span.marker {
	width: 4em;
	margin-left: -4em;
	_width: 3.7em;
}

ul.note-list-A04 li {
	padding-left:	120px;
}

p.note {
	margin: 19px 0 0 0;
	padding: 0;
	font-size: 71%;/*10px*/
	line-height: 1.5;
}

span.note {
	font-weight: normal;
}


/* =========== CA =========== */

/* ----- CA-product ----- */

section.CA-product {
	position: relative;
	width: 680px;
	margin: 28px -8px 0 -4px;
	padding: 0 18px 15px 14px;
	background: #fff url(../img/common/CA-product_bg_01.png) left bottom no-repeat;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "MS UI Gothic", sans-serif;
}

section.CA-product.CA-order-status-completed {
	background-image: url(../img/common/CA-product_bg_02.png);
}


/* ----- CA-product-header ----- */

header.CA-product-header {
	_overflow: visible;
	_height: 1px;
	*zoom: 1;
	margin: 0 -18px 15px -14px;
	padding: 25px 18px 16px 14px;
	background: #f5f4f0 url(../img/common/CA-product_bg_01.png) left top no-repeat;
}

section.CA-product.CA-order-status-completed header.CA-product-header {
	background-image: url(../img/common/CA-product_bg_02.png);
}

header.CA-product-header:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}

header.CA-product-header hgroup {
	float: left;
	margin: 0;
	padding: 0;
}

header.CA-product-header hgroup h2 {
	float: left;
	margin: 0 15px 0 0;
	padding: 0 0 0 12px;
}

header.CA-product-header hgroup h2 img {
	vertical-align: top;
}

header.CA-product-header hgroup h2 img.CA-product-type {
	display: block;
	margin-bottom: 4px;
}

header.CA-product-header hgroup h3 {
	float: left;
	margin: 11px 0 0 0;
	padding: 0;
	font-weight: normal;
}


header.CA-product-header hgroup p.CA-product-bnr {
	float: left;
	margin: 0;
	padding: 0;
	text-align:left;
}

header.CA-product-header hgroup:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}

dl.CA-product-price {
	float: right;
	margin: 0;
	padding: 0 10px 0 0;
	text-align: right;
	color: #c9151e;
	line-height: 1;
}

dl.CA-product-price dt {
	display: inline;
	margin: 0 32px 0 0;
	padding: 0;
	font-weight: normal;
}

dl.CA-product-price dd {
	display: inline;
	margin: 0;
	padding: 0;
	font-weight: bold;
	font-size: 267%;
}


/* ----- CA-product-table ----- */

table.CA-product-table {
	margin: 0;
	padding: 0;
	width: 100%;
	border-collapse: collapse;
	border-width: 0;
	border-style: none;
	background: #fff;
}

table.CA-product-table tbody th,
table.CA-product-table tbody td {
	padding: 5px 10px;
	border-top: 1px dotted #b2b2b2;
	vertical-align: top;
	text-align: left;
	font-weight: normal;
}

table.CA-product-table tbody th {
	font-weight: bold;
}

table.CA-product-table tbody tr:first-child th,
table.CA-product-table tbody tr:first-child td {
	padding-top: 0;
	border-top: 0 none;
}

table.CA-product-table tbody td.CA-product-conclusion {
	text-align: right;
}

table.CA-product-table tbody td.CA-product-advise {
	width: 22px;
	padding: 5px 0 0 7px;
	border: 0 none !important;
	background: #fff !important;
}


table.CA-product-table tbody th span.CA-product-cond-label,
table.CA-product-table tbody th span.CA-product-optional-label {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	*zoom: 1;
}

table.CA-product-table tbody th span.CA-product-cond-label     input.checkbox,
table.CA-product-table tbody th span.CA-product-optional-label input.checkbox {
	position: absolute;
	margin: 0;
	padding: 0;
	top: 3px;
	*top: 0;
	left: -18px;
	*left: -22px;
}



table.CA-product-table tbody.CA-product-optional {
	background: #f5f4f0;
}

table.CA-product-table tbody.CA-product-optional tr:first-child th,
table.CA-product-table tbody.CA-product-optional tr:first-child td {
	padding-top: 8px !important;
	border-top: 0 none;
	background-image: url(../img/common/CA-product-table_bg_01.png);
	background-position: 1px top;
	background-repeat: no-repeat;
}

table.CA-product-table tbody.CA-product-optional tr:first-child th {
	background-position: left top;
}

table.CA-product-table tbody.CA-product-optional tr:first-child td.CA-product-conclusion {
	background-position: right top;
}

table.CA-product-table tbody.CA-product-optional td.CA-product-conclusion {
	background-image: url(../img/common/CA-product-table_bg_01.png);
	background-position: right bottom;
}

table.CA-product-table tbody.CA-product-optional tr th,
table.CA-product-table tbody.CA-product-optional tr.pseudo-last-child td {
	border-bottom: 1px solid #ccc;
}


table.CA-product-table tbody td p.normal {
	display: inline;
	margin: 0;
	padding: 0;
}

table.CA-product-table tbody td ul.inline-list-A01 {
	margin: 0;
	padding: 0;
}


/* ----- CA-product-advise-balloon ----- */

dl.CA-product-advise-balloon {
	position: relative;
	visibility: hidden;
	margin: 0;
	padding: 0;
}

dl.CA-product-advise-balloon dt {
	position: absolute;
	top: -11px;
	left: -11px;
	width: 226px;
	margin: 0;
	padding: 13px 10px 2em 42px;
	background-color: #e1f1ff;
	border-top: 1px solid #0b78d2;
	border-right: 1px solid #0b78d2;
	border-left: 1px solid #0b78d2;
	font-weight: bold;
}
dl.CA-product-advise-balloon dt.ballon-title-02 {
	line-height:1.2;
}

dl.CA-product-advise-balloon dt img {
	position: absolute;
	top: 11px;
	left: 11px;
	visibility: visible;
	cursor: help;
}

dl.CA-product-advise-balloon dd {
	position: absolute;
	top: 37px;
	left: -11px;
	width: 258px;
	margin: 0;
	padding: 0 10px 10px 10px;
	background-color: #e1f1ff;
	border-right: 1px solid #0b78d2;
	border-bottom: 1px solid #0b78d2;
	border-left: 1px solid #0b78d2;
}

dl.CA-product-advise-balloon dd p.normal {
	margin: 0;
	padding: 0;
}

/* 2012/10/05 記述追加　ここから */
dl.CA-product-advise-balloon dd p.normal.largely-spaced {
	margin-top: 15px !important;
	display:block;
}

dl.CA-product-advise-balloon dd p.normal img {
	margin-right: 10px;
	vertical-align: -8px;
}
/* 2012/10/05 記述追加　ここまで */




/* ----- CA-glossary-balloon ----- */

dl.CA-glossary-balloon {
	position: relative;
	display: inline;
	margin: 0;
	padding: 0;
}

dl.CA-glossary-balloon dt {
	display: inline;
	margin: 0;
	*margin-left: 5px;
	padding: 0;
	color: #0b78d2;
	cursor: help;
	border-bottom: 1px dashed #0b78d2;
	white-space: nowrap;
}

dl.CA-glossary-balloon dt:hover {
	color: #34a2ff;
	border-bottom: 0 none;
}

dl.CA-glossary-balloon dd {
	position: absolute;
	visibility: hidden;
	bottom: 1.5em;
	left: 0;
	display: block;
	width: 258px;
	margin: 0;
	padding: 10px;
	background-color: #e1f1ff;
	border: 1px solid #0b78d2;
}

dl.CA-glossary-balloon dd dl.plain {
	position: static;
	display: block;
	margin: 0;
	padding: 0;
}

dl.CA-glossary-balloon dd dl.plain dt {
	display: block;
	margin: 5px 0 0 0;
	padding: 0;
	color: #000;
	cursor: auto;
	border-bottom: 0 none;
	font-weight: bold;
}

dl.CA-glossary-balloon dd dl.plain dt:first-child {
	margin-top: 0;
}

dl.CA-glossary-balloon dd dl.plain dd {
	position: static;
	display: block;
	width: auto;
	margin: 0;
	padding: 0;
	background-color: transparent;
	border: 0 none;
}




span.CA-glossary-label {
	display: inline;
	position: relative;
	color: #0b78d2;
	cursor: help;
	border-bottom: 1px dashed #0b78d2;
	white-space: nowrap;
}

span.CA-glossary-label:hover {
	color: #34a2ff;
	border-bottom: 0 none;
}

span.CA-glossary-balloon {
	position: absolute;
	visibility: hidden;
	bottom: 2em;
	left: 0;
	display: block;
	width: 258px;
	margin: 0;
	padding: 10px;
	background-color: #e1f1ff;
	border: 1px solid #0b78d2;
	font-weight: normal;
	color: #000;
	white-space: normal;
}

span.CA-glossary-label:hover span.CA-glossary-balloon {
	visibility: visible;
}




/* ----- CA-product-order ----- */

ul.CA-product-order {
	position: absolute;
	top: 0;
	right: -240px;
	width: 259px;
	height: 162px;
	margin: 0;
	padding: 0;
	list-style-type: none;
	background: url(../img/common/CA-product-order_bg_01.png) left top no-repeat;
	line-height: 1;
}

section.CA-product.CA-order-status-waiting ul.CA-product-order {
	background-position: right top;
}

section.CA-product.CA-order-status-completed ul.CA-product-order {
	background-position: left bottom;
}

ul.CA-product-order li {
	margin: 0;
	padding: 37px 0 0 31px;
	line-height: 1;
}

ul.CA-product-order li img {
	vertical-align: top;
}


/* ----- CA-product-function ----- */

ul.CA-product-function {
	position: absolute;
	top: -40px;
	left: 12px;
	_overflow: visible;
	_height: 1px;
	width: 680px;
	*zoom: 1;
	margin: 0;
	padding: 0;
	list-style-type: none;
	line-height: 1;
}

.pseudo-closed ul.CA-product-function {
	width: 168px;
}

ul.CA-product-function:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}

ul.CA-product-function li {
	float: left;
	margin: 0;
	padding: 0;
	background: #fff url(../img/common/CA-product-function_bg_01.png) 0 0 no-repeat;
}

ul.CA-product-function li.CA-product-function-tel,
ul.CA-product-function li.CA-product-function-attention {
	float: right;
	margin-left: 7px;
	background-position: 100% 0;
}
ul.CA-product-function li.CA-product-function-tel{
	background-position: 285px 0;
}

ul.CA-product-function li.CA-product-function-clear {
	float: right;
	background-position: left bottom;
}

ul.CA-product-function li a {
	display: block;
	padding: 1px 6px 0 2px;
}

ul.CA-product-function li img {
	vertical-align: top;
}


/* ----- CA-condition ----- */

section.CA-condition {
	width: 700px;
	margin: 50px 0 0 0;
}

table.CA-condition-table {
	margin: 0;
	padding: 0;
	width: 100%;
	border-collapse: collapse;
	border-width: 0;
	border-style: none;
}

table.CA-condition-table tbody th,
table.CA-condition-table tbody td {
	padding: 8px 20px 8px 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	vertical-align: middle;
	text-align: left;
	font-weight: normal;
	background: #fff;
}

table.CA-condition-table tbody th {
	width: 60px;
	padding-left: 20px;
	background-color: #f5f4f0;
	font-weight: bold;
}

table.CA-condition-table tbody td dl.plain {
	_overflow: visible;
	_height: 1px;
	*zoom: 1;
	margin: 0;
	padding: 0 0 0 20px;
	border-left: 1px dotted #b2b2b2;
	line-height: 1.33;
}

table.CA-condition-table tbody th + td dl.plain {
	border-left: 0 none;
}

table.CA-condition-table tbody td dl.plain:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
}

table.CA-condition-table tbody td dl dt {
	float: left;
	margin: 0;
	padding: 0;
	font-weight: normal;
}

table.CA-condition-table tbody td dl dd {
	float: right;
	margin: 0;
	padding: 0;
}



.CA-attention-for-page {
	margin-top: 15px;
}



/* =========== text align =========== */

.text-right {
	text-align: right !important;
}

.text-center {
	text-align: center !important;
}

.text-left {
	text-align: left !important;
}

.price {
	text-align: right !important;
}




