@charset "UTF-8";

/** ---------- 共通 ---------- **/
body {
	font-size:12px;
	background-color:#eee;
}
table, input, select, textarea {
	font:inherit;
	margin:0;
	vertical-align:middle;
}
td, th {
	padding:5px;
}
li {
	list-style-type:none;
}
h1 {
	line-height:2;
	font-size:1.4em;
	font-weight:normal;
}
h2 {
	padding-left:0.5em;
	width:100%;
	height:25px;
	border:1px solid #aaa;
	font-size:1.1em;
	line-height:2;
	background-color:#ddd;
}
label, .label {
	line-height:1.6;
}
img{
	vertical-align: bottom;
}
.container {
	margin:0 auto;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	width:950px;
	height:auto;
}
.contents {
	padding:1em;
	background-color:#fff;
}
.font_bold {
	font-weight:bold;
}
.font_nomal {
	font-weight:normal;
}
.font_top {
	vertical-align:top;
}
.font_bottom {
	vertical-align:bottom;
}
.font_center {
	text-align:center;
}
.font_right {
	text-align:right;
}
hr {
	border-width: 4px 0px 0px 0px;
	border-style: solid;
	border-color: #999999;
	height: 4px;
	margin:0;
}
.align_right {
	text-align:right;
}
.padding0 {
	padding:0px;
}
.h5 {
	height:5px;
}
.h8 {
	height:8px;
}
.h24{
	height:24px;
}
.w55 {
	width:55px;
}
.err_msg {
    color: #FF3333;
}
.nwp {
	white-space: nowrap;
}
.w550 {
	width:550px;
}
.btm {
	vertical-align:bottom;
}
.bkcolor_lightgrey {
	background-color:lightgrey;
}
.bkcolor_lightskyblue {
	background-color:lightskyblue;
}
.border_top_solid_black_2 {
	border-top:solid 2px black;
}
.border_right_solid_black {
	border-right:solid 1px black;
}
.border_right_solid_grey {
	border-right:solid 1px #aaa;
}
.border_right_dotted_black {
	border-right:dotted 1px black;
}
.border_right_dotted_grey {
	border-right:dotted 1px #aaa;
}
.border_bottom_solid_black {
	border-bottom:solid 1px black;
}
.border_bottom_solid_grey {
	border-bottom:solid 1px #aaa;
}
.border_bottom_dotted_black {
	border-bottom:dotted 1px black;
}
.border_bottom_dotted_grey {
	border-bottom:dotted 1px #aaa;
}

/** ---------- ヘッダーで使用 ---------- **/
.header {
	border-bottom:1px solid #ccc;
	width:100%;
	height:70px;
	background-color:#ccc;
}
.headerline {
	width:100%;
	height:3px;
	background-color:#FF640F;
}
.logo {
	width:587px;
	float:left;
	margin-left:30px;
}
.headerlink {
	width:940px;
	float:left;
	text-align:right;
}
a.logout_l {
	text-decoration:none;
	padding-left:.3em;
	margin:0 1em;
}
a.logout_l:link {
	color:#333;
	border-left:2px solid #333;
}
a.logout_l:visited {
	color:#333;
	border-left:2px solid #333;
}
a.logout_l:hover {
	color:#fff;
	background:#777;
	border-left:2px solid #fff;
}
a.logout_l:active {
	color:#fff;
	background:#777;
	border-left:2px solid #fff;
}

/** ---------- フッターで使用 ---------- **/
.footer {
	border-top:2px solid #aaa;
	width:100%;
	height:30px;
	text-align:right;
	line-height:1.4;
	font-size:.9em;
}

/** ---------- 各機能別画面で使用 ---------- **/
.line {
	width:100%;
	height:10px;
	border-top:2px solid #aaa;
	text-align:right;
}
.insurance_calc_table {
	margin:0 auto;
	font-size:1.2em;
	line-height:1.2;
	width:900px;
}
.blue_msg {
	color:#05d;
}
.calc_btn {
	width:130px;
	height:35px;
	padding:0px;
}
.back_btn {
	width:120px;
	height:45px;
	padding:0px;
}
.next_btn {
	width:130px;
	height:45px;
	padding:0px;
}
.print_btn {
	width:130px;
	height:45px;
	padding:0px;
}
.win_print_btn {
	width:130px;
	height:45px;
	padding:0px;
}
.finish_btn {
	width:130px;
	height:45px;
	padding:0px;
}
.must_item_msg_mark {
	color:#f33;
	font-size:.9em;
}
.must_item_msg{
	margin:5px 0px 5px 5px;
	font-size:.9em;
	line-height:1.5;
	color:#05c;
	width:800px;
	text-align:left;
	vertical-align:top;
}
.subscriber_table {
	margin:0 auto;
	font-size:1.2em;
	line-height:1.2;
	width:800px;
}
.finish_msg{
	font-size:1.2em;
	color:#05c;
}
.list_year {
	width:60px;
}
.subscriber_table{
	margin:0px auto;
	width:800px;
	border-collapse:collapse;
	padding:0px;
	font-size:1.2em;
	line-height:1.2;
}
.subscriber_table tr{
	padding:0px;
}
.subscriber_table td{
	padding:0px;
	word-break: break-all;
}
.subscriber_table td.left_normal{
	border-top:none;
	border-right:1px dashed #aaa;
	border-bottom:1px solid #aaa;
	border-left:2px solid #aaa;
	padding:4px 0px 4px 8px;
	background:#fff;
	width:200px;
}
.subscriber_table td.right_normal{
	border-top:none;
	border-right:2px solid #aaa;
	border-bottom:1px solid #aaa;
	border-left:1px dashed #aaa;
	padding:4px 8px 4px 8px;
	background:#fff;
	width:600px;
}
.subscriber_table td.left_yellow{
	border-top:none;
	border-right:1px dashed #aaa;
	border-bottom:1px solid #aaa;
	border-left:2px solid #aaa;
	padding:4px 0px 4px 8px;
	background:#FAFDBB;
	width:200px;
}
.subscriber_table td.right_yellow{
	border-top:none;
	border-right:2px solid #aaa;
	border-bottom:1px solid #aaa;
	border-left:1px dashed #aaa;
	padding:4px 8px 4px 8px;
	background:#FAFDBB;
	width:600px;
}
.subscriber_table td.left_title{
	border-top:none;
	border-right:1px dashed #aaa;
	border-bottom:1px solid #aaa;
	border-left:2px solid #aaa;
	padding:4px 0px 4px 8px;
	background:#aaa;
	width:200px;
	color:#fff;
}
.subscriber_table td.right_title{
	border-top:none;
	border-right:2px solid #aaa;
	border-bottom:1px solid #aaa;
	border-left:1px dashed #aaa;
	padding:4px 8px 4px 8px;
	background:#aaa;
	width:600px;
	color:#fff;
}
.personal_caution{
	font-size:.9em;
	line-height:1.8;
}
.personal_txt{
	margin:15px 20px;
	border:1px solid #aaa;
	padding:10px;
	width:660px;
	font-size:.9em;
	line-height:1.2;
}
.personal_txt_p1{
	padding-left:0em;
}
.personal_txt_p2{
	padding-top:1em;
}
.notice_msg {
	color:#f33;
	font-size:.8em;
}
.insureds_input_table {
	margin:0 0 0 10px;
	font-size:1.1em;
	border-right:2px solid black;
	border-bottom:2px solid black;
	border-left:2px solid black;
}
.insureds_no_input {
	background-color: royalblue;
	color:white;
	font-size:1em;
	font-weight:bold;
	text-align:center;
	vertical-align:middle;
	border-right:solid 1px black;
}
.insureds_no_input td{
	padding:0px;
	vertical-align:middle;
}
.insureds_td {
	border-top:none;
	border-right:2px solid #aaa;
	border-bottom:2px solid #aaa;
	border-left:2px solid #aaa;
	background:#fff;
	width:800px;
}
.insureds_confirm_table {
	line-height:1.2;
}
.insureds_confirm_table td.insureds_confirm_td{
	padding:4px 0px 4px 3px;
}
.insureds_no_confirm {
	background-color: royalblue;
	color:white;
	font-size:1em;
	text-align:center;
	vertical-align:middle;
	border-right:solid 1px #aaa;
}
.insureds_confirm_option {
	font-size:0.8em;
}









/** ---------- エラー画面で使用 ---------- **/
.container_err{
	margin:0 auto;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	width:950px;
	height:auto;
}

.p012{
	font-size:1.4em;
	line-height:1.3;
	margin:20px 0 40px;
	padding:10px 0;
	width:100%;
	height:20px;
	text-align:center;
	color:#fff;
	background-color:#444;
	font-weight:bold;
}

table.detail{
	margin:0 auto;
	width:90%;
	border-collapse:collapse;
}

table.detail th, table.detail td{
	border:1px solid #aaa;
}

table.detail th{
	padding:5px; font-size:1.4em;
}

table.detail th.error{
	background-color:#fdd;
}

table.detail th.timeout{
	background-color:#dfd;
}

table.detail th.transition{
	background-color:#ddf;
}

table.detail td{
	padding:10px;
	font-size:1em;
}

table.detail p{
	line-height:2;
}

div.gologinbox{
	padding:50px 0 30px;
	width:100%;
	text-align:center;
	font-size:1.2em;
}