@charset "UTF-8";
/* CSS Document */

＠media print {
  body {
    overflow: visible !important;
  }
}

/* 基本スタイル
------------------------------------------------------------------------------------------------ */
* {
  margin: 0;
  padding: 0;
}
img {
  border: 0;
}
a {
  color: #000;
  outline: none;
  text-decoration: none;
}
a:hover {
  color: #00a1c6;
  text-decoration: underline;
}
a:active {
  color: #00a1c6;
}

/* a:hover 
-----------------------------------*/
a:hover img {
  opacity: 0.65; /* Standard: FF gt 1.5, Opera, Safari */
  filter: alpha(opacity=65); /* IE lt 8 */
  -ms-filter: "alpha(opacity=65)"; /* IE 8 */
  -khtml-opacity: 0.65; /* Safari 1.x */
  -moz-opacity: 0.65; /* FF lt 1.5, Netscape */
  cursor: pointer;
}

/* ヘッダー　left
------------------------------------------------------------------------------------------------ */
#header {
  margin: 0;
  padding: 0;
  float: left;
  clear: both;
  width: 100%;
  background: url(../images/header_bg.gif) repeat-x;
}

#head_block {
  width: 860px;
  margin: 0 auto;
}

#head_block h1 {
  text-align: right;
  clear: both;
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  line-height: 20px;
}

.t_head_l {
  width: 300px;
  text-align: left;
  float: left;
  padding: 5px 0 0 0;
}
.t_head_l h2 {
  width: 200px;
  height: 80px;
  overflow: hidden;
}
.t_head_l h2 a {
  width: 200px;
  height: 80px;
  text-decoration: none;
  display: block;
  background: url(../images/h_logo.jpg) no-repeat;
}

.t_head_l h2 span {
  visibility: hidden;
  font-size: 70%;
  color: #fff;
}

/* ヘッダー　right
------------------------------------------------------------------------------------------------ */
.t_head_r {
  min-width: 430px;
  margin-top: 5px;
  text-align: left;
  float: right;
  width: auto;
}

.freecall {
  width: 185px;
  height: 58px;
  overflow: hidden;
  text-decoration: none;
  display: block;
  float: right;
  background: url(../images/f_call.jpg) no-repeat;
}

.freecall span {
  visibility: hidden;
  font-size: 70%;
  color: #fff;
}

.subMenu {
  clear: both;
  text-align: right;
  width: 100%;
  font-size: 12px;
  padding: 5px 0;
}

/* グローバルナビ
------------------------------------------------------------------------------------------------ */
#g_navi {
  width: 100%;
  height: 50px;
  margin: 0;
  clear: both;
  float: left;
  background: url(../images/header_bg.jpg) repeat-x;
  z-index: 100;
}

#g_navi ul {
  width: 860px;
  margin: 0 auto;
  overflow: hidden;
  zoom: 100%;
}
#g_navi ul li {
  float: left;
  list-style: none;
}
#g_navi ul li a {
  display: block;
  height: 50px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 1px;
  background: url(../images/h_navi.jpg) no-repeat;
}

#g_navi ul li a span {
  visibility: hidden;
}
#g_navi ul li.navi01 a {
  background-position: 0 0;
  width: 143px;
}
#g_navi ul li.navi02 a {
  background-position: -143px 0;
  width: 144px;
}
#g_navi ul li.navi03 a {
  background-position: -287px 0;
  width: 143px;
}
#g_navi ul li.navi04 a {
  background-position: -430px 0;
  width: 143px;
}
#g_navi ul li.navi05 a {
  background-position: -573px 0;
  width: 144px;
}
#g_navi ul li.navi06 a {
  background-position: -717px 0;
  width: 143px;
}
#g_navi ul li.navi01 a:hover {
  background-position: 0 -50px;
}
#g_navi ul li.navi02 a:hover {
  background-position: -143px -50px;
}
#g_navi ul li.navi03 a:hover {
  background-position: -287px -50px;
}
#g_navi ul li.navi04 a:hover {
  background-position: -430px -50px;
}
#g_navi ul li.navi05 a:hover {
  background-position: -573px -50px;
}
#g_navi ul li.navi06 a:hover {
  background-position: -717px -50px;
}

#g_navi ul li a:hover {
  text-decoration: none;
}

/* wrapper
------------------------------------------------------------------------------------------------ */
#wrapper {
  margin: 20px 0 0 0;
  float: left;
  clear: both;
  width: 100%;
}

/* contents
------------------------------------------------------------------------------------------------ */
#contents {
  width: 860px;
  margin: 0 auto;
  padding: 0;
}

/* メインカラム
------------------------------------------------------------------------------------------------ */
#main_col {
  width: 860px;
  float: left;
  clear: both;
  overflow: hidden;
}
#left_col {
  width: 605px;
  float: left;
  overflow: hidden;
}
#right_col {
  width: 255px;
  float: left;
  overflow: hidden;
}

/* Scroll up 
------------------------------------------------------------------------------------------------ */
.pagetop {
  width: 860px;
  height: 74px;
  padding: 10px 0 0 0;
  overflow: hidden;
  float: left;
  clear: both;
}
.pagetop img {
  float: right;
}

/* Footer
------------------------------------------------------------------------------------------------ */
#footer_bg {
  width: 100%;
  margin: 0;
  padding: 0;
  float: left;
  clear: both;
  border-top: 1px solid #1baacc;
}

#footer {
  width: 860px;
  margin: 0 auto;
}

#footer_block {
  width: 860px;
  padding: 0;
  margin: 0;
  float: left;
  clear: both;
}

.foot_h {
  width: 860px;
  margin: 10px 0 0 0;
  float: left;
  clear: both;
}

.foot_h dl {
  width: 860px;
  height: 63px;
  list-style: none;
  overflow: hidden;
}

.foot_h dl dt {
  width: 220px;
  height: 58px;
  float: left;
}
.foot_h dl dt a {
  width: 220px;
  height: 58px;
  text-decoration: none;
  display: block;
  background: url(../images/f_logo.jpg) no-repeat;
}
.foot_h dl dd.foot_l_dd1 {
  width: 230px;
  float: left;
  padding: 20px 0 0 0;
  font-size: 11px;
  line-height: 16px;
}
.foot_h dl dt span {
  visibility: hidden;
  font-size: 70%;
  color: #fff;
}
.foot_h dl dd.foot_l_dd2 {
  width: 400px;
  float: right;
  padding: 20px 0 0 10px;
  font-size: 9px;
  line-height: 16px;
  text-align: right;
}

/* コピーライト 
------------------------------------------------------------------------------------------------ */
.foot_copy {
  width: 860px;
  text-align: right;
  margin: 20px 0 0 0;
  float: left;
  clear: both;
  font-size: 12px;
}
.foot_description {
  width: 860px;
  text-align: right;
  margin: 5px 0 16px 0;
  float: left;
  clear: both;
  font-size: 12px;
}

/* 共通
------------------------------------------------------------------------------------------------ */
.clear {
  clear: both;
  background: none;
}
.pagetitle {
  margin-top: 12px;
  float: left;
  clear: both;
  width: 860px;
  height: 45px;
  background: url(../images/title_bg.jpg) no-repeat;
  color: #ffffff;
}
.pagetitle h3 {
  padding: 0 0 0 25px;
  float: left;
  font-size: 1em;
  line-height: 45px;
  width: 430px;
}

.pagetitle p {
  font-size: 0.8em;
  line-height: 45px;
  padding: 0 25px 0 0;
  text-align: right;
  float: left;
  width: 380px;
  font-weight: bold;
}

/* パンクズ
------------------------------------------------------------------------------------------------ */
.pankuzu {
  margin: 0;
  float: left;
  clear: both;
  width: 952px;
  font-size: 0.8em;
}

/* main_visual
------------------------------------------------------------------------------------------------ */
#main_visual {
  width: 860px;
  margin: 0 auto;
}

.page_title {
  width: 860px;
  margin: 30px 0 0 0;
  clear: both;
  border-bottom: 1px solid #2d2d2d;
}

.page_title dl {
  width: 860px;
  margin: 0 0 3px 0;
  clear: both;
  color: #2d2d2d;
  letter-spacing: 2px;
}

.page_title dl dt {
  width: 471px;
  margin: 0;
  padding: 0 0 0 5px;
  font-size: 1.5em;
  font-weight: bold;
}

.page_title dl dd {
  width: 476px;
  margin: 0;
  padding: 8px 0 0 0;
  font-size: 0.8em;
  text-align: right;
}

.clear {
  clear: both;
}

/* FD pdf */

.kpi-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 2rem;
}
.kpi-row {
  display: flex;
  flex-direction: column;
  border: 1px solid #ddd;
  margin-bottom: 1rem;
  padding: 1.5rem;
  gap: 24px;
}
.kpi-cell {
}

#content .kpi-cell p {
  width: 100%;
  float: none;
}

.kpi-left {
}
.kpi-right {
}

.row-number {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-color: #333;
  color: white;
  text-align: center;
  line-height: 30px;
  border-radius: 50%;
  margin-bottom: 10px;
}
.kpi-title {
  font-weight: bold;
  margin-bottom: 0.5rem;
}
.kpi-metric {
  color: #666;
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  border-top: 1px dashed #ddd;
  font-size: 0.8em;
}
