@charset "UTF-8";

@import "reset.css";


/* -------------------------------------
__Container
------------------------------------- */

body {
  font-family: Verdana, Geneva, sans-serif;
  font-size: 10px;
  background: #fff;
}
* html body { font-size: 62.5%; } /* IE6 */
*:first-child+html body { font-size: 62.5%; } /* IE7 */

/* clearfix */
em.clearfix {
  clear:both;
  display:block;
}

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
  }
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */

#container {
  width: 100%;
}

/* -------------------------------------
__Link Style
------------------------------------- */

a {
  text-decoration: none;
  color: #0033cc;
}

a:hover, a:active {
  text-decoration: underline;
  color: #ff0000;
}

/* -------------------------------------
__階層
------------------------------------- */

.paragraph {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 1em;
	line-height: 1.4em;
}
.cluster {/* 試し */
  margin: 0 10px 30px;
}
/*変更前
.cluster {
  margin-bottom:2em;
  padding-left: 12px; 
  padding-right: 12px;
}
*/
.backtotop {
  padding-top: 1em;
  text-align: right;
}

/* -------------------------------------
__装飾
------------------------------------- */

/* -------- ストライプ表示 -------- */

.stripe_index {
  padding-top: 10px;
}

.stripe_index .odd {
  background: #E6F1FF  url(../g_img/list_arrow_blue_bg.gif) 10px center no-repeat;
  padding: 4px 0 4px 25px;
}

.stripe_index .even {
  background:  url(../g_img/list_arrow_bg.gif) 10px center no-repeat;
  padding: 6px 0 6px 25px;
}

#contents .stripe_index a {
  text-decoration: none;
}

#contents .stripe_index a:hover {
  text-decoration: underline;
}

/* -------- その他 -------- */

#contents .small {
  font-size: 0.9em;
  vertical-align: 0.2em;
  color: #666;
	font-weight: normal;
}

#contents .big {
  font-size: 1.25em;
  vertical-align: 0.2em;
}

#contents .ex, #contents .ex2, #contents .ex3, #contents .ex_ex, #contents .ex_ex2 {
  color: #666;
  font-size: 0.9em;
  font-weight: normal;
  line-height: 1.2em;
}

#contents .ex {
  padding-left: 1em;
  text-indent: -1em;
}
#contents .ex2 {
  padding-left: 1.6em;
  text-indent: -1.6em;
  /padding-left: 1.8em;
  /text-indent: -1.8em;
  padding-left: 1.8em\9;
  text-indent: -1.8em\9;
}

#contents .ex3 {
  padding-left: 2.2em;
  text-indent: -2.2em;
  /padding-left: 2.6em;
  /text-indent: -2.6em;
  padding-left: 2.6em\9;
  text-indent: -2.6em\9;
}

#contents .ex3 span {
  margin-right: 0.6em;
  /margin-right: 1em;
  margin-right: 1em\9;
}

#contents .ex_ex {
  padding-left: 2em;
  text-indent: -1em;
}

#contents .ex_ex2 {
  padding-left: 2.6em;
  text-indent: -1.6em;
  /padding-left: 2.8em;
  /text-indent: -1.8em;
  padding-left: 2.8em\9;
  text-indent: -1.8em\9;
}

#contents .ex2_ex {
  padding-left: 2.6em;
  text-indent: -1.6em;
  /padding-left: 2.8em;
  /text-indent: -1.8em;
  padding-left: 2.8em\9;
  text-indent: -1.8em\9;
}

#contents .ex2_ex2 {
  padding-left: 3.2em;
  text-indent: -2.6em;
  /padding-left: 3.6em;
  /text-indent: -2.8em;
  padding-left: 3.6em\9;
  text-indent: -2.8em\9;
}

#contents ul.ul_ex {
  line-height: 1em;
  padding-left: 1.9em;
}

#contents ul.ul_ex2 {
  line-height: 1em;
  padding-left: 2.6em;
  /padding-left: 2.8em;
  padding-left: 2.8em\9;
}

#contents ul.ul_ex li,#contents ul.ul_ex2 li {
  padding-bottom: 0.25em;
  list-style-type: disc;
  color: #666;
  font-size: 0.9em;
}

#contents code {
  font-family: "ＭＳ ゴシック", "Osaka－等幅", monospace;
  font-size: 1.1em;
  font-weight: normal;
  border: 1px solid #999;
  padding: 4px;
  line-height: 1.6em;
}

#contents .code {
  padding-right: 3px;
  padding-left: 5px;
  font-size: 1.1em;
  font-weight: normal;
  line-height: 1.6em;
}

#contents em {
  font-weight: bold;
}

#contents .red {
  color: #F00;
}

#contents .emphasis_red {
  color: #F00;
  font-weight: bold;
}

#contents .emphasis_black {
  font-weight: bold;
}

#contents .illustration {
  padding: 0.7em 0 0.7em 0;
  text-align: center;
}

#contents .scroll_text {
  padding: 4px;
  border: 1px solid #9c9c9c;
  overflow:auto;
}

#contents #privacy_box.scroll_text {
  width:618px;
  height:260px;
  padding:10px;
}

#contents #privacy_box h4 {
  background:none;
  padding:0;
  border-bottom:none;
  margin-top: 1.0em;
}

#contents .form_annotation {
  padding: 0 0 23px 0;
  background: url("../g_img/frame_bg_annotation.gif") bottom left no-repeat;
}

#contents .form_annotation div {
  padding: 16px;
  border-top: 2px solid #f2e9d1;
  border-left: 2px solid #f2e9d1;
  border-right: 2px solid #f2e9d1;
  background: #f8f3e6;
  color: #f00;
  font-size: 1.4em;
}

/* -------------------------------------
__情報ブロック
------------------------------------- */

.info_block {
  width: 638px;
  margin-bottom: 1em;
  padding: 0 0 4px 0;
  background: url("../g_img/frame_bg_wide_gray.gif") bottom left no-repeat;
}

.info_block div.info_block_body {
  padding: 4px 16px 0 16px;
  background: url("../g_img/frame_bg_wide_gray.gif") top left no-repeat;
  text-align: left;
}

.info_block div.info_block_body h5 {
  margin: 0;
  padding: 0 0 8px 0;
  color: #333;
  font-size: 1.2em;
  line-height: 1.2em;
}

.info_block div.info_block_body img.left_icon {
  float: left;
  display: block;
  width: 60px;
  padding: 0 8px 0 0;
}

.info_block div.info_block_body .right_lead {
  float: left;
  width: 532px;
  padding: 0 0 0 8px;
}

/* -------------------------------------
__情報ボタンブロック
------------------------------------- */

a.info_btn {
  display: block;
  width: 302px;
  padding: 0 0 16px 0;
  background: url("../g_img/frame_bg_middle_bold.gif") left bottom no-repeat;
  color: #333;
  text-decoration: none;
}

#contents a.info_btn {
  text-decoration: none;
}

a.info_btn span.info_btn_body {
  display:block;
  padding: 16px 16px 0 16px;
  background: url("../g_img/frame_bg_middle_bold.gif") left top no-repeat;
  text-align: left;
  cursor:pointer;
}

a.info_btn:hover {
  background-position: right bottom;
}

a.info_btn:hover span.info_btn_body {
  background-position: right top;
}

a.info_btn span.info_btn_body em.btn_title {
  margin: 0;
  padding: 0 0 8px 0;
  color: #189bd6;
  font-size: 1em;
  line-height: 1em;
  display:block;
}

a.info_btn span.info_btn_body img.left_icon {
  display: block;
  width: 60px;
  float: left;
  padding: 0 8px 0 0;
}

a.info_btn span.info_btn_body .right_lead {
  float: left;
  width: 194px;
  padding: 0 0 0 8px;
  font-size: 0.8em;
  line-height: 1.25em;
  font-weight:normal;
  color:#000;
  display:block;
}

#info_btn_h5only_1, #info_btn_h5only_2, #info_btn_h5only_3, #info_btn_h5only_4 {
  padding: 0 0 8px 0;
}

#info_btn_h5only_1 .info_btn_body, #info_btn_h5only_2 .info_btn_body, #info_btn_h5only_3 .info_btn_body, #info_btn_h5only_4 .info_btn_body {
  padding-top: 12px;
}

#info_btn_h5only_1 h5, #info_btn_h5only_2 h5, #info_btn_h5only_3 h5, #info_btn_h5only_4 h5 {
  padding-bottom: 4px;
}

/* -------------------------------------
__ボタン
------------------------------------- */

p.btn_center {
  text-align: center;
}

#contents a.btn_red_r, a.btn_red_r_wide, a.btn_gray_r, a.btn_gray_l {
  display: block;
  width: 266px;
  height: 40px;
  _height: 37px;
  margin-right: auto;
  margin-left: auto;
  padding: 15px 18px 0 0;
  _padding: 18px 18px 0 0;
  background: url("../g_img/btn_bg_red_r.gif") left top;
  color: #fff;
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  text-decoration:none;
}

#contents a.btn_red_r:hover, a.btn_red_r_wide:hover, a.btn_gray_r:hover, a.btn_gray_l:hover {
  background-position: left -55px;
  text-decoration: none;  
}

a.btn_red_r { background-image: url("../g_img/btn_bg_red_r.gif"); }

a.btn_red_r_wide {
  background-image: url(../g_img/btn_bg_red_r_wide.gif);
  width: 382px;
}

#contents a.btn_gray_r {
  background-image: url("../g_img/btn_bg_gray_r.gif");
  text-decoration:none;
}

#contents a.btn_gray_l {
  background-image: url("../g_img/btn_bg_gray_l.gif");
  text-decoration:none;
}

a.btn_blue_l, a.btn_blue_m, a.btn_blue_s, a.btn_blue_ss {
  display: block;
  width: 450px;
  height: 23px;
  margin-right: auto;
  margin-left: auto;
  padding: 4px 0 0 0;
  background: url("../g_img/btn_bg_blue_l.gif") left top;
  color: #368fc9;
  text-align: center;
  font-size: 14px;
  font-weight: normal;
}

a.btn_blue_l:hover, a.btn_blue_m:hover, a.btn_blue_s:hover, a.btn_blue_ss:hover {
  background-position: left -27px;
  text-decoration: none;  
}

/* -------------------------------------
__グリッド均等配置
------------------------------------- */

ul.grid_cols {
  margin-bottom: 12px;
  width: 100%;
}

ul.grid_cols li {
  margin-top: 4px;
  margin-bottom: 4px;
  width: 50%;
  display: block;
  float: left;
  text-align:center;
  font-size: 1.2em;
}

ul.grid_cols li.cell_100p {
  width: 100%;
}

ul.grid_cols li.cell_33p {
  width: 33%;
}

ul.grid_cols li.cell_25p {
  width: 25%;
}

ul.grid_cols li.cell_left {
  text-align: left;
}

ul.grid_cols li.cell_right {
  text-align: right;
}

ul.grid_cols li.cell_left a, ul.grid_cols li.cell_right a {
  margin: 0;
}

ul.grid_cols li.cell_right a {
  float: right;
}

/* clearfix for me */
ul.grid_cols:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
  }
* html ul.grid_cols             { zoom: 1; } /* IE6 */
*:first-child+html ul.grid_cols { zoom: 1; } /* IE7 */

/* -------------------------------------
__２列リスト配置
------------------------------------- */

.parallel_cell {
  float: left;
  width: 50%;
}
.parallel_cell ul li {
  padding: 4px 0 4px 25px;
  background: url(../g_img/list_arrow_bg.gif) 10px center no-repeat;
}
.parallel_cell ul li.label {
  margin-top: 12px;
  padding: 0 20px 0 10px;
  background: none;
}

.parallel_cell ul li.label h3 {
  background: none;
  border-left: none;
}

/* -------------------------------------
__表組み
------------------------------------- */

/* -------- 汎用指定 -------- */

#contents td.td_center {
  text-align: center;
}

#contents td.td_right {
  text-align: right;
}

#contents th.th_center {
  text-align: center;
  line-height: 1.4em;
}

#contents th.th_indispensable {
  background: #fcfef6;
}

#contents th div.label_comment {
  font-size: 0.8em;
  line-height: 1.5em;
  font-weight: normal;
}

#contents td h5 {
  margin: 0.5em 0 0.5em 0;
  padding-left: 0.4em;
  border-left: 1em solid #aaa;
  font-size: 1em;
  line-height: 1em;
}

#contents .taxin {
  text-align: right;
  font-size: 0.9em;
  font-weight: normal;
  padding-bottom: 0;
  margin-bottom: 0.2em;
}
* html #contents .taxin {
  font-size: 0.846em;
}
#contents .table_days_arrow {
  background: url(../p_img/days_arrow.gif) center bottom no-repeat;
  padding: 0 4px 0 4px;
}

/* -------- Form Table -------- */

table.form_table {
  border-collapse: collapse;
  width: 100%;
  border: 1px solid #666;
}
table.form_table caption {
  font-weight: bold;
  padding-top: 20px;
  padding-bottom: 5px;
}
table.form_table tr {
}
table.form_table th {
  line-height: 1.8em;
  font-weight: bold;
  background-color: #e8f2ff;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.5em 1em 0.5em 1em;
  border: 1px solid #666;
  width:240px;
}
table.form_table td {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.5em 1em 0.5em 1em;
  background-color: #fff;
  border: 1px solid #666;
}

/* -------- Login Table -------- */

table.login_table {
  border-collapse: collapse;
  border-top-width: 2px;
  border-bottom-width: 2px;
  border-top-style: solid;
  border-bottom-style: solid;
  border-top-color: #aaaaaa;
  border-bottom-color: #aaaaaa;
  margin-top: 8px;
  margin-bottom: 20px;
  width: 100%;
  padding: 4px;
}
table.login_table td {
  border: none;
  background-color: #f6fafe;
  padding: 10px;
  font-weight: bold;
  color: #555;
}

/* -------- Simple Table -------- */

table.simple_table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border-top: 1px solid #666;
  border-left: 1px solid #666;
  padding: 0;
  margin-bottom: 0.5em;
}
table.simple_table caption {
  font-weight: bold;
  padding-top: 0.75em;
  padding-bottom: 0.5em;
}
table.simple_table tr {
}
table.simple_table th {
  line-height: 1.4em;
  font-weight: bold;
  background-color: #e8f2ff;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.5em;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
}
table.simple_table td {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.5em;
  background-color: #fff;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
}
table.simple_table dl {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
table.simple_table dt {
  padding-top: 0.3em;
  padding-left: 15px;
  background: url(../g_img/list_arrow_bg.gif) left 0.5em no-repeat;
  font-weight: bold;
}
table.simple_table dd {
  padding-left: 15px;
  padding-bottom: 0.3em;
}

/* -------- Num table (dl/dt/dd) -------- */

dl.num_table, dl.num_table dt, dl.num_table dd {
  margin: 0;
  padding: 0;
}

dl.num_table {
  width: 100%;
  background: #fff;
}

dl.num_table dt {
  clear: left;
  float: left;
  width: 26px;
  padding: 3px 0 3px 3px;
  border-top: 12px solid #fff;
  color: #189BD6;
  font-size: 1.6em;
  font-weight: bold;
}

dl.num_table dt.over10 {
  position: relative;
  left: -0.5em;
}

dl.num_table dd {
  margin-left: 26px;
  padding: 3px 18px 3px 18px;
  border-top: 12px solid #fff;
  background: #e8eff8; 
}

/* -------- Simple UL -------- */

#contents .simple_ul {
  padding-left: 1.5em;
}

#contents .simple_ul li {
  list-style-type: disc;
  line-height: 1.4em;
  padding: 0.3em 0;
}

#contents .simple_ul li a {
  text-decoration: underline
}

#contents ul.simple_ul li ul.simple_ul,
#contents ul.nomark_ul li ul.simple_ul {
  padding-top: 0;
  padding-bottom: 0;
}

#contents ul.simple_ul li ul.simple_ul li {
  list-style-type: circle;
}

#contents ul.nomark_ul li ul.simple_ul {
  list-style-type: disc;
  padding-left: 2em;
}

/* -------- Blue Frame UL -------- */

#contents .blueframe_ul {
  width: 99.5%;
  padding: 10px 0 10px 0;
}

.blueframe_ul li {
  margin-bottom: 2px;
  padding: 8px 8px 8px 12px;
  background: url(../g_img/frame_bg_blue.gif);
  background-color: #e9f3ff;
  border: solid #a8c2e3 1px;
  line-height: 1.6em;
}
.blueframe li a {
  text-decoration: underline
}

/* -------- Normal UL -------- */

.normal_ul {
  line-height: 2em;
}

.normal_ul li {
  text-align: left;
}

/* -------- Plain UL -------- */

.plain_ul {
  padding: 10px 10px 10px 15px;
}

.plain_ul li {
  padding: 5px 10px 8px 20px;
  text-align: center;
}

/* -------- CMS UL -------- */

.cms_ul {
}

.cms_ul li {
  padding: 0.25em 0 0.5em 14px;
  background: url(../p_img/menu_li_bg.gif) 0px center no-repeat;
  line-height: 1.25em;
}

#contents .cms_ul li.li_hot a {
  color: #f00;
  font-weight: bold;
}

#contents .cms_ul li a {
  text-decoration: none;
}

#contents .cms_ul li a:hover {
  text-decoration: underline;
}


/* -------- 横並び UL -------- */

.side_ul {
  padding: 8px;
}
.side_ul li {
  padding: 5px 12px 5px 0;
  display: inline;
}

/* -------- Simple OL -------- */

#contents .simple_ol {
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  padding-left: 1.9em;
  line-height: 1.4em;
}

.simple_ol li {
  list-style-type: decimal;
  margin-bottom: 0.5em;
}

.simple_ol li a {
  text-decoration: underline
}

/*
.simple_ol {
  padding: 10px 5px 10px 15px;
}
.simple_ol li {
  padding: 3px 0 8px 0;
  list-style-type: decimal;
}
*/
#contents .simple_ol ul.simple_ul li {
  list-style-type: disc;
}

/* -------- Check Frame -------- */

.frame_q {
  width: 640px;
  margin-bottom: 0.3em;
  background: url(../g_img/frame_bg_q.gif) left top no-repeat;
}

.frame_q_active {
  width: 640px;
  margin-bottom: 0.3em;
  background: url(../g_img/frame_bg_q_active.gif) left top no-repeat;
}

.frame_q h5, .frame_q_active h5 {
  padding: 8px 0.7em 2px 3.2em;
  color: #fff;
  font-size: 1.35em;
  font-weight: bold;
  text-indent: -2.4em;
  line-height: 1.35em;
}

.frame_q_body {
  width: 624px;
  padding: 4px 8px 6px 12px;
  background: url(../g_img/frame_bg_q.gif) left bottom no-repeat;
}

.frame_q_data {
  float: left;
  padding: 8px 0 6px 4px;
  font-size: 1.2em;
}
.frame_q_reselect {
  float: right;
}

/*** 入力フォーム ***/

.input_middle input {
  width:200px;
}

.input_middle textarea {
  width:300px;
  height:100px;
}

.input_long input {
  width:270px;
}

.form_complete {
  background:#E8F2FF;
  text-align:center;
  padding:10px;
}

.form_complete .emphasis_black,
.form_complete .emphasis_red {
  font-size:1.5em;
}

.sort_select li {
  margin-left:1.4em;
  text-indent:-1.4em;
  _margin-left:1.8em;
  _text-indent:-1.8em;
}


#common_form1,
#common_form2,
#common_form3,
#form_select1,
#form_select2,
#form_select3,
#form_select4,
#form_select5,
#form_select6,
#select_text1,
#select_text2,
#select_text3,
#select_text4,
#select_text5,
#select_text6 {
  display:none;
}

/* pdfアイコン */
.pdf_icon {
  vertical-align: bottom;
  margin: 0 0 2px;
  padding: 0;
}

/* notice_tax
-------------------------------------------- */
#notice_tax {
  margin: 0 0 10px auto;
  width: 295px;
}

/* footer 共通
-------------------------------------------- */
#footer_bg {
  clear: both;
  width: 100%;
  height: 340px;
  margin-top: 0;
}
#footer_upper_up h2 {
  height: 14px;
  display: block;
  padding: 6px 0 12px 3px;
}
#footer_upper {
  width: 930px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 16px;
  padding-bottom: 10px;
}
#footer_upper_up {
  width: 930px;
}
#footer_upper_up_logo {
  float: left;
  margin: 0;
  padding: 0;
}
#footer_upper_up ul {
  padding: 10px 10px 18px 3px;
}
#footer_upper_up li {
  list-style: none;
  font-size: 1.1em;
  line-height: 1.2em;
  padding:0.3em 0 0.3em 1.6em;
}
#footer_upper_up li a {
  color: #858585;
}
#footer_upper_bt_img {
  clear: both;
  float: left;
  padding-right: 19px;
}
#footer_keywords  {
  position: absolute;
  left: 26px;
  top: 5px;
  width: 197px;
  height: 18px;
  border: none;
  background: none;
}
#footer_keywords { top: 7px\9; } /* IE8以下 */

#footer_searchbtn {
  position: absolute;
  left: 244px;
}
#footer_search_goo,
#footer_search_goo_logo  {
  padding-left: 54px;
  float: left;
}
#footer_upper_bt {
  clear: both;
  width: 916px;
  height: 38px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 10px;
  padding-left: 11px;
}
#footer_searchform {
  float: left;
  display: block;
  position: relative;
  width: 231px;
  height: 27px;
}

/* footer_bottom */
#footer_bottom {
  padding-top: 16px;
  clear: both;
  border-top: 1px solid #cde0ee;
  background-color: #ffffff;
}
#footer_bottom #footer_wrapper {
  width: 930px;
  margin-right: auto;
  margin-left: auto;
}
#footer_bottom_l {
  width: 253px;
  height: 75px;
  float: left;
  margin-bottom: 1.5em;
}
#footer_bottom_l ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#footer_bottom_l ul li img {
  vertical-align: bottom;
}
#footer_bottom_l ul li.gs {
  float: left;
  width: 100px;
  margin: 0 19px 0 0;
  padding: 22px 0 0 0;
}
#footer_bottom_l ul li.safety {
  float: left;
  width: 40px;
  margin: 0 19px 0 0;
  padding: 24px 0 0 0;
}
#footer_bottom_l ul li.privacy {
  float: left;
  width: 75px;
  margin: 0;
  padding: 0;
}
#footer_bottom_r {
  width: 362px;
  height: 12px;
  float: right;
}
#footer_bottom_l img {
  padding-right: 10px;
}
/* ブラウザ調整
--------------------------------------- */
/* ie6 */
* html #footer_bottom_l ul li.gs {
	margin-right: 9px;
}
* html #footer_bottom_l ul li.safety {
	margin-right: 9px;
}
* html #footer_bottom_l img {
  padding-right: 0;
}


