@charset "utf-8";
/**
 * style 
 * (c) FOURDIGIT Inc.
 *
 * 1. import
 * 2. html, body
 * 3. HTMLtag, siteCommonClass
 * 4. Layout
 * 5. EachPageStyle
 *
 */
/**
 * 1. import
 */
@import "extension/init/std.css";
/*@import "extension/init/strict.css";*/
@import "extension/util.css";
@import "extension/accessibility.css";
@import "extension/noscript.css";
@import "extension/logtag.css";

/**
 * 2. html, body
 */
body {
    background-color: #fff;
    background-image: url(../imgs/space.gif);
    background-repeat: repeat-x;
    background-position: center top;
    -webkit-text-size-adjust: 100%;
}

.page {
    color: #333333;
    font-size: 12px;
    line-height: 20px;
}

/**
 * 3. HTMLtag, siteCommonClass
 */
/* anchor */
a {
    color: #63a535;
    text-decoration: underline;
}

a:visited {}

a:hover {
    color: #63a535;
    text-decoration: underline;
}

a:active {}

/* cap */
.cap,
.caption {
    background: none;
    color: #999999;
    font-size: 10px;
    line-height: 15px;
}

.cap {
    padding-top: 5px;
}

/**
 * 4. Layout
 */
#container {
    width: 960px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 10px;
    background-color: transparent;
    background-image: url(../imgs/space.gif);
    background-repeat: repeat-y;
    background-position: center top;
    text-align: left;
}

/* header */

#header-outer {
    width: 960px;
    height: 79px;
}

#header {
    height: 79px;
    position: relative;

}

#logo {
    position: absolute;
    top: 14px;
    left: 0;
}

#logo-group {
    position: absolute;
    top: 9px;
    right: 0;
}

#gnav {
    position: absolute;
    top: 14px;
    right: 180px;
    text-align: right;
}

#gnav li {
    display: inline;
}

#gnav li img {
    vertical-align: top;
}

#bt-english {
    position: absolute;
    top: 31px;
    right: 0;
}

/* contents */
#contents {
    margin-bottom: 70px;
}

.col2 #contents {
    width: 770px;
    float: right;
}

h2.title {
    margin-bottom: 30px;
}

h3.underline {
    margin-bottom: 30px;
    border-bottom: 1px solid #63a535;
    padding: 0 0 9px 5px;
}

h3.belt,
h4.belt {
    margin-bottom: 20px;
    padding: 5px 13px;
    background: #eff6ea url(../imgs/bg-h4.gif) 0 0 repeat-y;
}

h5.text {
    margin-bottom: 12px;
    color: #346b0e;
    font-size: 14px;
    font-weight: bold;
    line-height: 16px;
}

h4.leftline,
h5.leftline {
    margin-bottom: 12px;
    border-left: 3px solid #63a535;
    padding-left: 7px;
}

ul.normal li {
    padding-left: 10px;
    background: url(../imgs/bg-li.gif) 1px 50% no-repeat;
}

ul.horizontal {
    margin: 0 0 30px 42px;
}

ul.horizontal li {
    display: inline;
    margin-left: 16px;
}

ul.horizontal li:first-child {
    margin-left: none;
}


ul.horizontal li img {
    vertical-align: top;
}

ul.indent li {
    padding-left: 1.25em;
    text-indent: -1.25em;
}

.table01 {
    width: 100%;
    border-bottom: 1px solid #d9d9d9;
    border-collapse: collapse;
    -webkit-text-size-adjust: 100% !important;
}

.table01 th,
.table01 td {
    border-top: 1px solid #d9d9d9;
    vertical-align: top;
    font-weight: normal;
}

.table01 th {
    width: 131px;
    padding: 0 0 7px 0;
    background: url(../imgs/bg-th.gif) 0 100% repeat-x;
}

.table01 th div {
    border-top: 1px solid #fff;
    padding: 8px 0 0 20px;
}

.table01 td {
    padding: 9px 0 7px 20px;
    background: url(../imgs/bg-td.gif) 1px 0 repeat-y;
}

.table02 {
    border-bottom: 1px solid #d9d9d9;
    border-collapse: collapse;
    -webkit-text-size-adjust: 100% !important;
    margin-bottom: 50px;
    margin-top: -1em;
}

.table02 th,
.table02 td {
    border-top: 1px solid #d9d9d9;
    border-right: dotted 1px #ddd;
    vertical-align: top;
    font-weight: normal;
}

.table02 th.no {
    border-right: none;
}

.table02 td.no {
    border-right: none;
    text-align: center;
}

.table02 th {
    padding: 0;
    background-color: #F6F6F7;
    text-align: center;
}

.table02 th div {
    border-top: 1px solid #fff;
    padding: 10px 20px;
    font-weight: 800;
}

.table02 td {
    padding: 15px;
}

.table02 td b {
    display: block;
    padding: 7px 0 0 0;
}

/* 2021.12.23 追加 */
.table03 {
    border-bottom: 1px solid #d9d9d9;
    border-collapse: collapse;
    -webkit-text-size-adjust: 100% !important;
    margin-bottom: 50px;
    margin-top: 50px;
}

.table03 th {
    padding: 5px;
    background-color: #F6F6F7;
    text-align: center;
    border-top: 1px solid #d9d9d9;
    border-right: dotted 1px #ddd;
    font-weight: bold;
}

.table03 td {
    border-top: 1px solid #d9d9d9;
    border-right: dotted 1px #ddd;
    font-weight: normal;
    padding: 15px;
}

.table03 th.no,
.table03 td.no {
    border-right: none;
}
/* 2021.12.23 追加 */

.panel01 {
    border: 1px solid #bbbbbb;
    padding: 20px;
}

dl.text01 {
    margin-bottom: 25px;
}

.text01 dt {
    margin-bottom: 10px;
    font-weight: bold;
}

.text01 dd {
    margin-bottom: 15px;
    padding-left: 1.25em;
}

dl.text02 {
    margin-bottom: 45px;
}

.text02 dt {
    margin-bottom: 10px;
}

.text02 dd {
    margin-bottom: 20px;
    padding-left: 1.25em;
}

dl.yakuin dt {
    width: 140px;
    float: left;
}

/* side */
#side {
    width: 160px;
    float: left;
}

#category {
    margin-bottom: 20px;
}

#snav {
    margin-bottom: 30px;
}

#snav li,
#banner li {
    font-size: 1px;
    line-height: 1;
}

#snav ul {
    border-bottom: 1px solid #e9e9e9;
    padding: 6px 0 5px;
}

#category img,
#snav img,
#banner img {
    vertical-align: top;
}

/* footer */
#fnav {
    display: inline-block;
    margin-left: 300px;
    border-right: 1px solid #999999;
    color: #666666;
    font-size: 10px;
    line-height: 12px;
}

#fnav li {
    display: inline-block;
    border-left: 1px solid #999999;
    padding: 0 12px;
}

* html #fnav {
    display: inline;
}

* html #fnav li {
    display: inline;
}

*:first-child + html #fnav {
    display: inline;
}

*:first-child + html #fnav li {
    display: inline;
}

#footer {
    margin-top: 30px;
    border-top: 1px solid #e6e6e6;
    clear: both;
}

#footer .inner {
    width: 960px;
    margin: 0 auto;
    padding: 10px 0 6px;
    position: relative;
}

#footer ul {
    position: absolute;
    display: block;
}

#footer li {
    display: inline;
    margin-left: 15px;
}

#footer li img {
    vertical-align: top;
}

#footer .link_co_policy {
    display: block;
    background: url("/common/imgs/bt-spi_co_policy.gif") no-repeat;
    /* ロールオーバー時のチラつき防止 */
}

#footer .link_co_policy a {
    width: 224px;
    height: 10px;
    background: url("/common/imgs/bt-spi_co_policy.gif") no-repeat;
    display: block;
    text-indent: -9999px;
}

#footer .link_co_policy a:hover {
    background-image: url("/common/imgs/bt-spi_co_policy_ov.gif");

}

#footer .link_spi_policy {
    display: block;
    background: url("/common/imgs/bt-spi_policy.gif") no-repeat;
    /* ロールオーバー時のチラつき防止 */
}

#footer .link_spi_policy a {
    width: 114px;
    height: 10px;
    background: url("/common/imgs/bt-spi_policy.gif") no-repeat;
    display: block;
    text-indent: -9999px;
}

#footer .link_spi_policy a:hover {
    background-image: url("/common/imgs/bt-spi_policy_ov.gif");
}

#footer .link_policy {
    display: block;
    background: url("/common/imgs/bt-policy.gif") no-repeat;
    /* ロールオーバー時のチラつき防止 */
}

#footer .link_policy a {
    width: 149px;
    height: 10px;
    background: url("/common/imgs/bt-policy.gif") no-repeat;
    display: block;
    text-indent: -9999px;
}

#footer .link_policy a:hover {
    background-image: url("/common/imgs/bt-policy_ov.gif");
}

#footer .link_financial {
    display: block;
    background: url("/common/imgs/bt-financial.gif") no-repeat;
    /* ロールオーバー時のチラつき防止 */
}

#footer .link_financial a {
    width: 160px;
    height: 10px;
    background: url("/common/imgs/bt-financial.gif") no-repeat;
    display: block;
    text-indent: -9999px;
}

#footer .link_financial a:hover {
    background-image: url("/common/imgs/bt-financial_ov.gif");
}

#footer .link_privacy {
    display: block;
    background: url("/common/imgs/bt-privacy.gif") no-repeat;
    /* ロールオーバー時のチラつき防止 */
}

#footer .link_privacy a {
    width: 108px;
    height: 10px;
    background: url("/common/imgs/bt-privacy.gif") no-repeat;
    display: block;
    text-indent: -9999px;
}

#footer .link_privacy a:hover {
    background-image: url("/common/imgs/bt-privacy_ov.gif");

}

#footer .link_sitemap {
    display: block;
    background: url("/common/imgs/bt-sitemap.gif") no-repeat;
    /* ロールオーバー時のチラつき防止 */
}

#footer .link_sitemap a {
    width: 70px;
    height: 10px;
    background: url("/common/imgs/bt-sitemap.gif") no-repeat;
    display: block;
    text-indent: -9999px;
}

#footer .link_sitemap a:hover {
    background-image: url("/common/imgs/bt-sitemap_ov.gif");

}















/* utility */
.wd243 {
    width: 243px;
}

.wd470 {
    width: 470px;
}

.mb01 {
    margin-bottom: 1px;
}

.blt a {
    background: transparent url(../imgs/mk-link.gif) no-repeat left 2px;
    display: block;
    padding-left: 15px;
    font-size: 10px;
    line-height: 15px;
}

/* position */
.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

/**
 * 5. EachPageStyle
 */
/* pageID */
#top #container {
    width: auto;
}

/* header */
#top #header {
    width: 100%;
    height: 50px;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(../../imgs/bg-header.png);
    background-repeat: repeat;
}

* html #top #header {
    background-image: none;
    background-color: #2a0505;
}

#top #logo {
    top: 13px;
    left: 13px;
}

#top #logo-group {
    top: 10px;
    right: 20px;
    width: 155px;
    height: 12px;
    line-height: 0;
}

#top #gnav {
    width: 494px;
    top: 15px;
    right: 195px;
}

#top #gnav li.hasChild {
    padding-bottom: 10px;
    position: relative;
}

#top #gnav .subMenu {
    display: none;
    width: 161px;
    padding-top: 10px;
    position: absolute;
    top: 20px;
    left: 3px;
}

#top #gnav li ul {
    display: block;
    border: 1px solid #e4e4e4;
    padding: 10px;
    background: #fff;
}

#top #gnav li li {
    display: block;
    font-size: 1px;
    line-height: 1;
}

#top #bt-english {
    right: 20px;
}

#top #footer {
    clear: none;
    margin-top: 0;
    padding-top: 5px;
    border-top: solid #cfcfcf 1px;
}

#top #footer ul {
    width: 540px;
    float: right;
    position: static;
    zoom: 1;
}

#top #footer ul li {
    display: block;
    float: left;
}

#top #footer ul li.last {
    margin-right: 0;
}

#top #footer ul li a {
    display: block;
}

#top .linksWrap {
    padding-top: 20px;
    padding-bottom: 15px;
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

#top .linksTable {
    font-size: 10px;
    line-height: 15px;
    color: #666;
    width: 490px;
}

#top .linksTable th {
    padding-right: 10px;
}

#top .linksTable th,
#top .linksTable td {
    padding-bottom: 18px;
    background: url(../../imgs/bg-dot.gif) repeat-x left bottom;
}

#top .linksTable th a {
    color: #666;
}

#top .linksTable a:hover {
    text-decoration: none;
}

#sitemap #contents h3,
#sitemap #contents ul {
    margin-bottom: 30px;
}

#sitemap #contents li {
    margin: 0 0 10px 13px;
    line-height: 14px;
}

#sitemap #contents ul ul {
    margin-top: 10px;
    margin-bottom: 0px;
}

#sitemap #contents li li {
    margin-left: 10px;
}

#sitemap #contents a {
    padding-left: 10px;
    background: url(../../sitemap/imgs/mk-link.gif) 0 50% no-repeat;
    color: #000000;
}

#topicsPage .news {
    margin-bottom: 10px;
    border: 1px solid #efefef;
    padding: 14px;
    background: #fbfbfc;
}

#topicsPage .news img {
    float: left;
    margin-right: 20px;
}

#topicsPage .news_date {
    margin-bottom: 5px;
    color: #4b7c28;
}

#topicsPage .news_title em {
    margin-bottom: 5px;
    font-style: normal;
    font-weight: bold;
}

#topicsPage .disnon {
    display: none;
}

#company #GroupList {
    clear: both;
    border-top: 1px solid #d9d9d9;
}

#company #GroupList li {
    border-bottom: 1px dotted #d9d9d9;
    padding: 20px;
    clear: both;
}

#company #GroupList li .txtArea {
    float: right;
    width: 627px;
    padding-left: 20px;
}

#company #GroupList li.last {
    border-bottom: 1px solid #d9d9d9;
}

/* policy */
#policy .textArea {
    padding: 30px;
    border: #63a535 solid 1px;
}

#policy .co_policy_cap {
    margin: 0 auto 50px;
    line-height: 1.9em;
    padding: 20px;
    /*background-color: rgba(238, 238, 238, 0.51);*/
}


.table_inner td {
    border: none;
    background: none;
    padding: 0 10px 0 0;
}

/* message */
.msg_txt {
    width: 500px;
    float: left;

}

.msg_img01 {
    width: 242px;
    float: right;
    padding-top: 15px;
}

.msg_txt p {
    margin-top: 15px;
    text-align: right;

}

.sign {
    padding-top: 5px;
    font-family: HGP行書体;
    font-size: 24px;
    line-height: 30px;
}


/* ---------------- about ----------------- */



/* ---------------- results ----------------- */

.graph_img {
    text-align: center;
    padding-top: 20px;
}

/* ---------------- movie ----------------- */


#movie {
    width: 100%;
    padding: 50px 0 ; 
}

video {
    width: 100%;
    max-width: 980px;
    display: block;
    margin: 0 auto;
}


/* ---------------- 211227追加　お客様本位の業務運営を実現するための取組方針 ----------------- */
.gensoku {
    color: red;
    float: right;
    text-decoration: underline;
}

.gensoku:hover {
    color: red;
    float: right;
    text-decoration: underline;
}

/* 240305追加 */
.correspondence_table,
.correspondence_table:hover {
    color: #0023F5;
    float: right;
    text-decoration: underline;
    font-size: 120%;
    font-weight: bold;
} 



