body #contents {
    padding-bottom: 0px !important;
    padding-top: 115px;
}

body #contents #contents-head {
    display: block;
    position: relative;
    height: 480px !important;
    overflow: hidden;

}


body #contents #contents-head .wrap {
    display: block;
    position: relative;
    height: 360px !important;
    overflow: hidden;

}

body #contents #contents-head .wrap img {
    object-fit: cover;
    object-position: center;
    height: 360px;
    width: 100%;
    display: block;

}

body #contents #contents-head .wrap .mask {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../img/ttl/contents-head-mask.png) right bottom no-repeat;
    z-index: 2;
}

body #contents #contents-head .ttl-block {
    position: absolute;
    width: 315px;
    height: 315px;
    background: #ed193a;
    color: #ffffff;
    top: 170px;
    left: 130px;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
}

body #contents #contents-head .ttl-block .ttl-block-inner {}

body #contents #contents-head .ttl-block .ttl-block-inner h2 {
    font-weight: 600;
    line-height: 1.2;
    vertical-align: middle;
}

body #contents #contents-head .ttl-block .ttl-block-inner span {
    display: block;
}

body #contents #contents-head .ttl-block .ttl-block-inner .line-01 {
    font-size: 34px;


}

body #contents #contents-head .ttl-block .ttl-block-inner .line-02 {
    font-size: 34px;

}

body #contents #contents-head .ttl-block .ttl-block-inner .line-01-02 {
    font-size: 46px;

    text-align: center;
    font-weight: 600;
    line-height: 1.2;

}

body #contents #contents-head .ttl-block .ttl-block-inner .line-01-02 span {
    font-size: 18px;
    display: block;
}

body #contents #contents-head .ttl-block .ttl-block-inner h2 span {
    display: block;
}

body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01 {
    font-size: 34px;

    text-align: center;
}

body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01 span {
    font-size: 20px;
    display: block;
}

body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01-02 {
    font-size: 40px;
    text-align: center;
}

body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01-02 span {
    font-size: 18px;
    display: block;
}

body #contents #contents-head .ttl-block .ttl-block-inner h2.line-02 {
    font-size: 34px;

}

body #contents #contents-head .breadcrumb {
    position: absolute;
    top: 400px;
    left: 480px;
}

body #contents #contents-head .breadcrumb li {
    font-size: 14px;
    display: inline-block;
}

body #contents #contents-head .breadcrumb li:after {
    content: ">";
    padding: 0 30px;
}

body #contents #contents-head .breadcrumb li:last-child:after {
    content: '';
}

body #contents #contents-main {
    width: 1100px;
    margin: 80px auto;
    text-align: center;
}

body #contents #contents-main .wrap {
    width: 920px;
    text-align: center;
    margin: 0px auto;
}

body #contents #contents-main .wrap a {
    color: #0067d1;
    text-decoration: underline;
}

body #contents #contents-main .wrap a:hover {
    text-decoration: none;
}

body #contents #contents-main h2 {
    font-size: 36px;
    line-height: 1.4;
    font-weight: bold;
    margin-bottom: 50px;
    text-align: center;
}

body #contents #contents-main h2 span {
    display: block;
}

body #contents #contents-main p.lead {
    font-size: 20px;
    line-height: 1.7;
    text-align: left;
}

body #contents #contents-main p.lead-2 {
    font-size: 26px;
    line-height: 1.7;
    font-weight: bold;
    text-align: center;
}

body #contents #contents-main p {
    font-size: 17px;
    line-height: 1.8;
    text-align: left;
}

body #contents #contents-main .wrap h1 {
    font-size: 34px;
    line-height: 1.4;
    font-weight: bold;
    margin: 60px auto 40px auto;
    text-align: center;
    position: relative;
}

body #contents #contents-main .wrap h1:after {
    content: "";
    position: absolute;
    top: 100%;
    right: 42%;
    border-bottom: 5px solid #000000;
    width: 150px;
    height: 5px;
    text-align: center;
    padding-bottom: 15px;
}

body #contents #contents-main .wrap h1 span {
    display: block;
}

body #contents #contents-main .fintech h2 {
    font-size: 22px;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
    background: #f3f3f3;
    padding: 15px 20px;
    margin-bottom: 0;
}

/* 2021.09.17 修正 */
body #contents #contents-main .wrap.fintech h3 {
    font-size: 20px;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
    margin-top: 30px;
    margin-bottom: 0;
    color: #0067d1;
    /* border-left: 10px solid #0067d1; */
    /* height: 20px; */
    padding: 10px 15px;
    margin-left: 5px;
    border-bottom: 1px dashed #ccc;
}

body #contents #contents-main h3 {
    font-size: 34px;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
}

body #contents #contents-main .wrap h3 {
    font-size: 34px;
    line-height: 1.4;
    font-weight: bold;
    margin: 60px auto 40px auto;
    text-align: center;
    position: relative;
}

body #contents #contents-main .wrap:not(.fintech) h3:after {
    content: "";
    position: absolute;
    top: 100%;
    right: 42%;
    border-bottom: 5px solid #000000;
    width: 150px;
    height: 5px;
    text-align: center;
    padding-bottom: 15px;
}

body #contents #contents-main .wrap h3 span {
    /* 20221215 AMP-Banking見出し修正 */
    /* display:block; */
}

body #contents #contents-main h4 {
    font-size: 22px;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
    background: #f3f3f3;
    padding: 15px 20px;
}

/* 吹き出し */
.head_balloon {
    position: relative;
    font-size: 22px;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
    background: #f3ced1;
    padding: 15px 20px;
    border-radius: 10px;
    color: #000;
    /* height:40px ; */
    margin: 1.5em 0;
}

.head_balloon::after {
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid #f3ced1;
    width: 0;
    height: 0;
}

/* recruit 2024.02.26 */
body #contents #contents-main .recruit h4 {
    font-size: 22px;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    background: #ed193a;
    padding: 15px 20px;
    color: white;
}

body #contents #contents-main h5 {
    font-size: 18px;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
}

body #contents #contents-main .chart-01 {
    border-bottom: 1px solid #cccccc;
    text-align: left;
}

body #contents #contents-main .chart-03 {
    border: 1px solid #cccccc;
    text-align: left;
}

/* ########################## */
body #contents #contents-main .chart-04 {
    border: 0px;
    text-align: left;
}

body #contents #contents-main .chart-04 td {
    font-size: 17px;
    vertical-align: top;
    padding: 10px 10px;
}

/* eSCOFI */
body #contents #contents-main .chart-01-p10 {
    border-bottom: 1px solid #cccccc;
    text-align: left;
}

/* ########################## */
body #contents #contents-main .chart-01 th,
body #contents #contents-main .chart-01 td,
body #contents #contents-main .chart-01-p10 th,
body #contents #contents-main .chart-01-p10 td,
body #contents #contents-main .chart-03 th,
body #contents #contents-main .chart-03 td {
    font-size: 17px;
    vertical-align: top;
}

body #contents #contents-main .chart-01 th {
    background: #f6f6f6;
    border-top: 1px solid #cccccc;
    padding: 30px 40px;
    /* padding:10px 10px; */
    font-weight: 600;
}

body #contents #contents-main .chart-01-p10 th {
    background: #f6f6f6;
    border-top: 1px solid #cccccc;
    padding: 30px 30px;
    font-weight: 600;
}

body #contents #contents-main .chart-03 th {
    background: #f6f6f6;
    border: 1px solid #cccccc;
    padding: 30px 40px;
    font-weight: 600;
}

body #contents #contents-main .chart-01 td {
    border-top: 1px solid #cccccc;
    padding: 30px 40px;
    /* padding:10px 10px; */
}

body #contents #contents-main .chart-01-p10 td {
    border-top: 1px solid #cccccc;
    padding: 30px 30px;
}

body #contents #contents-main .chart-03 td {
    border: 1px solid #cccccc;
    padding: 30px 40px;
}

body #contents #contents-main .chart-03 th,
body #contents #contents-main .chart-03 td {
    word-break: keep-all;
    box-sizing: border-box;
}

body #contents #contents-main .chart-03 th {
    text-align: center;
}

body #contents #contents-main .chart-03 td {
    text-align: right;
}

body #contents #contents-main .chart-03 td.textL {
    text-align: left;
}

body #contents #contents-main .chart-03 td.textM {
    vertical-align: middle;
}

/* 追加 */
body #contents #contents-main .chart-01 th.textM {
    vertical-align: middle;
}

body #contents #contents-main .chart-01 td.textM {
    vertical-align: middle;
}

/* ------------------------------------ */

body #contents #contents-main .chart-03.tbl_financial td:last-child {
    background: #FFFCF6;
    color: #cc6600;
}

body #contents #contents-main .chart-02 {
    border-bottom: 1px solid #cccccc;
    text-align: left;
    display: table;
}

body #contents #contents-main .chart-02 th,
body #contents #contents-main .chart-02 td {
    display: table-cell;
    font-size: 17px;
    vertical-align: top;
}

body #contents #contents-main .chart-02 th {
    border-top: 1px solid #cccccc;
    padding: 30px 40px;
    font-weight: 600;
}

body #contents #contents-main .chart-02 th.bknone {
    background: none;
}

body #contents #contents-main .chart-02 td {
    border-top: 1px solid #cccccc;
    padding: 30px 40px;
}

body #contents #contents-main .date-table,
body #contents #contents-main .date-table02 {
    text-align: right;
    float: none;
    clear: both;
    height: auto;
    min-height: 100px;
    width: 100%;
    position: relative;
}

body #contents #contents-main .date-table table {
    width: 35%;
    font-size: 16px;
    word-break: keep-all;
    position: absolute;
    left: 0;
    bottom: 0;
}

body #contents #contents-main .date-table02 table {
    width: 35%;
    font-size: 16px;
    word-break: keep-all;
    position: absolute;
    right: 0;
    bottom: 0;
}

th.w50 {
    width: 50%;
}

th.w30 {
    width: 30%;
}

body #contents #contents-main .pp-table {
    float: none;
    clear: both;
    height: auto;
    min-height: 100px;
    width: 100%;
}

body #contents #contents-main .pp-table table {
    margin: 0 auto 0 1em;
    width: 98%;
    font-size: 16px;
    word-break: keep-all;
}

body #contents #contents-main .pp-table th {
    font-weight: normal;
    width: 18em;
    text-align: left;
}

body #contents #contents-main .pp-table td {
    text-align: left;
}

.w860.pp-list,
.w780.pp-list {
    margin: auto;
    padding: 10px;
    background: #FEFDDE;
    font-size: 16px;
    text-align: left;
    color: #A68520;
    border: 1px solid #EBDEA9;
}

.w860.pp-list ol,
.w780.pp-list ol {
    list-style-type: decimal;
    padding-left: 24px;
}

body #contents #contents-main .layout-01 {}

body #contents #contents-main .layout-01:after {
    content: " ";
    display: block;
    clear: both;
}

body #contents #contents-main .layout-01 .leftside {
    float: left;
    text-align: left;
}

body #contents #contents-main .layout-01 .rightside {
    float: right;
    text-align: left;
}

body #contents #contents-main .w1100 {
    width: 1100px;
}

body #contents #contents-main .w1100-2 {
    width: 1100px;
    margin: 0 auto;
}

body #contents #contents-main .w920 {
    width: 920px;
}

body #contents #contents-main .w860 {
    width: 860px;
    margin: 0 auto;
}

body #contents #contents-main .w780 {
    width: 780px;
    margin: 0 auto;
}

/* ####### */
body #contents #contents-main .w620 {
    width: 620px;
}

body #contents #contents-main .w520 {
    width: 520px;
}

body #contents #contents-main .w200 {
    width: 200px;
}

body #contents #contents-main .textR {
    text-align: right;
}

body #contents #contents-main .textL {
    text-align: left;
}

body #contents #contents-main .layout-motto {}

body #contents #contents-main .layout-motto li {
    width: 350px;
    height: 350px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: #fee0e0;
    box-shadow: 0px 0px 15px #dadada;
    display: inline-block;
    vertical-align: top;
    margin-right: 20px;
}

body #contents #contents-main .layout-motto li:last-child {
    margin-right: 0px;
}

body #contents #contents-main .layout-motto li p {
    font-size: 28px;
    font-weight: 600;
    text-align: center;
    line-height: 1.4;
    padding-top: 130px;
}

body #contents #contents-main .layout-motto li p span {
    display: block;
}

body #contents #contents-main .layout-02 {
    text-align: left;
}

body #contents #contents-main .layout-02 li {
    display: inline-block;
    position: relative;
    width: 520px !important;
    margin-right: 56px;
    margin-bottom: 56px;
    text-align: left;
}

body #contents #contents-main .layout-02 li a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    -moz-opacity: 0.8;
    -khtml-opacity: 0.8;
}

body #contents #contents-main .layout-02 li:nth-child(2n),
body #contents #contents-main .layout-02 li:nth-child(4n),
body #contents #contents-main .layout-02 li:nth-child(6n),
body #contents #contents-main .layout-02 li:nth-child(8n) {
    margin-right: 0px;
}

body #contents #contents-main .layout-02 li .mask {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../img/common/layout-02-mask.png) left top no-repeat;

}

body #contents #contents-main .layout-02 li div.ttl-block {
    position: absolute;
    width: 260px;
    height: 160px;
    background: #ed193a;
    color: #ffffff;
    display: block;
    top: 100px;
    left: 135px;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner {
    padding: 15px;
    z-index: 10;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    vertical-align: middle;
    background: none;
    padding: 0px;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2 span {
    display: block;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-01 {
    padding-top: 55px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-02 {
    padding-top: 40px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-03 {
    padding-top: 40px;
    text-align: center;
    line-height: 120%;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-03 span {
    display: block;
    font-size: 14px;
    line-height: 1.4em;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    vertical-align: middle;
    background: none;
    padding: 0px;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3 span {
    display: block;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-01 {
    padding-top: 55px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-02 {
    padding-top: 40px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-03 {
    padding-top: 40px;
    text-align: center;
    line-height: 120%;
}

body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-03 span {
    display: block;
    font-size: 14px;
    line-height: 1.4em;
}

/* 追加 SERVICE */
body #contents #contents-main .layout-02 li div.ttl-block-service {
    position: absolute;
    width: 320px;
    height: 140px;
    background: #ed193a;
    color: #ffffff;
    display: block;
    top: 120px;
    left: 90px;
    display: flex;
    justify-content: center;
    align-items: center;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner {
    padding: 0 15px;
    z-index: 10;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    vertical-align: middle;
    background: none;
    padding: 0px;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2 span {
    display: block;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-01 {
    padding-top: 55px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-02 {
    padding-top: 40px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-03 {
    padding-top: 40px;
    text-align: center;
    line-height: 120%;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-03 span {
    display: block;
    font-size: 14px;
    line-height: 1.4em;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    vertical-align: middle;
    background: none;
    padding: 0px;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3 span {
    display: block;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3.line-01 {
    padding-top: 55px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3.line-02 {
    padding-top: 40px;
    text-align: center;
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3.line-03 {
    /* padding-top: 20px; */
    text-align: center;
    /* line-height:120%; */
    /* line-height: 220%; */
}

body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3.line-03 span {
    display: block;
    font-size: 16px;
    line-height: 1.4em;
}

/* End SERVICE */

body #contents #contents-main .list-01 {}

body #contents #contents-main .list-01 li {
    list-style-type: circle;
    font-size: 17px;
    text-align: left;
    margin: 0px 0px 15px 25px;
}

body #contents #contents-main .list-02 {
    padding: 10px 32px;
}

body #contents #contents-main .list-02 li {
    list-style-type: circle;
    font-size: 17px;
    text-align: left;
    margin: 0px 0px 5px 25px;
}

/* 2023.3.24 AMP-Banking で追加(リスト数字)*/
body #contents #contents-main .list-03 {
    padding: 10px 32px;
}

body #contents #contents-main .list-03 li {
    list-style-type: decimal;
    font-size: 17px;
    text-align: left;
    padding: 5px 10px;
    margin: 0px 0px 5px 25px;
}

body #contents #contents-main .news {
    border-top: 1px solid #cccccc;
}

body #contents #contents-main .news dl {
    text-align: center;
    border-bottom: 1px solid #cccccc;
    padding: 35px 0px;
}

body #contents #contents-main .news dt,
body #contents #contents-main .news dd {
    font-size: 17px;
    text-align: left;
    display: inline-block;
    vertical-align: top;
}

body #contents #contents-main .news dt {
    width: 100px;
    color: #a5a5a5;
}

body #contents #contents-main .news dd.cate {
    width: 100px;
    background: #dc1433;
    color: #ffffff;
    text-align: center;
    padding: 0px;
}

body #contents #contents-main .news dd.cate_o {
    width: 100px;
    background: #dddddd;
    color: #FFFFFF;
    text-align: center;
    padding: 0px;
}

body #contents #contents-main .news dd.cont {
    width: 790px;
    font-weight: 600;
    padding-left: 20px;
}

body #contents #contents-main .news dd.cont a {
    color: #000000;
}

/* columnページ */
body #contents #contents-main .column {
    width: 900px;
    border-top: 1px solid #cccccc;
    margin: 0 auto;
}

body #contents #contents-main .column dl {
    text-align: center;
    border-bottom: 1px solid #cccccc;
    padding: 20px 0px;

}

body #contents #contents-main .column dt,
body #contents #contents-main .column dd {
    font-size: 17px;
    text-align: left;
    display: inline-block;
    vertical-align: top;
}

body #contents #contents-main .column dt {
    width: 100px;
    color: #a5a5a5;
}

body #contents #contents-main .column dd.cate {
    width: 100px;
    background: #dc1433;
    /* background: skyblue; */
    color: #ffffff;
    text-align: center;
    padding: 0px;
}

body #contents #contents-main .column dd.cate_o {
    width: 100px;
    background: #dddddd;
    color: #FFFFFF;
    text-align: center;
    padding: 10px;
}

body #contents #contents-main .column dd.cont {
    width: 400px;
    font-weight: 600;
    padding-left: 100px;
}

body #contents #contents-main .column dd.cont a {
    color: #000000;
}

/* ↑ */
/* service Q&A */
body #contents #contents-main .qaContainer dt {
    padding: 10px 10px 10px 35px;
    border-bottom: 3px dotted #1771c6;
    text-indent: -25px;
    font-size: 17px;
    text-align: left;
    font-weight: bold;
}

body #contents #contents-main .qaContainer dt:before {
    content: "Q.";
    font-weight: bold;
    margin-right: 7px;
    font-size: 20px;
}

body #contents #contents-main .qaContainer dd {
    margin: 20px 10px 40px 35px;
    text-indent: -25px;
    font-size: 17px;
    text-align: left;
}

body #contents #contents-main .qaContainer dd:before {
    content: "A.";
    color: #1771c6;
    font-weight: bold;
    margin-right: 7px;
    font-size: 20px
}

/* ------------------------------ */
body #contents #contents-main .select-news-year {
    text-align: right;
    margin-top: -90px;
}

body #contents #contents-main .select-news-year select {
    padding: 25px;
    width: 280px;
    font-size: 16px;
    font-weight: 600;
    box-shadow: 0px 0px 20px #dadada;
    border: 1px solid #f2f2f2;
}

body #contents #contents-main .select-news-year option {
    font-size: 16px;
    font-weight: 600;
}

body #contents #contents-main ul.news-date {
    text-align: left;
    margin-top: -30px !important;
}

body #contents #contents-main ul.news-date li {
    display: inline-block;
    font-size: 16px;
    text-align: left;
}

body #contents #contents-main ul.news-date li.cate {
    width: 100px;
    background: #dc1433;
    color: #ffffff;
    text-align: center;
    padding: 0px;
    margin-left: 10px;
}

body #contents #contents-main .inline-frame {
    border: solid 1px #808080;
    height: 300px;
    padding: 40px;
    overflow: auto;
}

body #contents #contents-main .btn-01 {
    text-align: center;
}

body #contents #contents-main .btn-01 li {
    display: inline-block;
}

body #contents #contents-main .btn-01 li a {
    font-size: 16px;
    display: block;
    padding: 20px 0px;
    width: 200px;
    text-decoration: none;
    border: 1px solid #808080;
    background: #ededed;
    margin-left: 15px;
}

body #contents #contents-main .btn-01 li a:hover {
    color: #808080;
    background: #f1f1f1;
}

body #contents #contents-main .btn-01 li a:nth-child(2n) {
    margin-left: 0px;
}

body #contents #contents-main .gmap {
    width: 100%;
    height: 600px;
}

body #contents #contents-main .sitemap h4 {
    margin-bottom: 20px;
}

body #contents #contents-main .sitemap li {
    font-size: 18px;
    text-align: left;
    position: relative;
    padding-left: 20px;
}

body #contents #contents-main .sitemap li:before {
    display: block;
    content: '';
    position: absolute;
    top: .85em;
    left: 0;
    width: 8px;
    height: 1px;
    background-color: #000;
}

body #contents #contents-main .sitemap ul ul {
    font-size: 18px;
    text-align: left;
    position: relative;
    padding-left: 20px;
    margin: 0;
}

body #contents #contents-main .sitemap ul {
    margin-bottom: 30px;
}

body #contents #contents-main .sitemap a {
    color: #000000;
    text-decoration: none;
}

body #contents #contents-main .sitemap a:hover {
    color: #dc1433;
}

body #contents #contents-main .line-tp-01 {
    border-top: 1px solid #bebebe;
}

/* recruit employ */
dl.dl-table {
    display: table;
    width: 100%;
}

dl.dl-table dt,
dl.dl-table dd {
    display: table-cell;
}

/* recruit roundtable*/
.recruit dt {
    float: left;
    clear: left;
    font-size: 17px;
    text-align: left;
    font-weight: bold;

}

.recruit dd {
    margin-left: 100px;
    font-size: 17px;
    text-align: left;
    padding-bottom: 20px;
}


/* recruit shinsotsu */
body #contents #contents-main .interview img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

body #contents #contents-main .message {
    font-size: 20px;
    font-weight: bold;
}

/* 蛍光ペン　*/
body #contents #contents-main .under {
    background: linear-gradient(rgba(255, 255, 255, 0) 40%, #f7fda1 70%);
}

/* ir faq */
dl.faq {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    text-align: left;
    display: block;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
}

body #contents #contents-main .faq dt,
body #contents #contents-main .faq dd {
    display: table;
    width: 100%;
    font-size: 16px;
    text-align: left;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    position: relative;
    border-spacing: 0;
}

body #contents #contents-main .faq dt {
    cursor: pointer;
    line-height: 100%;
    margin: 0;
    padding: 0;
    border-top: 1px solid #ccc;
    box-sizing: border-box;
}

body #contents #contents-main .faq dd {
    display: none;
    margin: 0;
    padding: 10px 0;
    background: #eee;
    border-top: 1px solid #ccc;
}

body #contents #contents-main .faq dd.active {
    display: block;
}

body #contents #contents-main .faq dt:hover {
    cursor: pointer;
    background: #eee;
}

body #contents #contents-main .faq dt span,
body #contents #contents-main .faq dd span {
    display: table-cell;
    color: #fff;
    margin: 0;
    box-sizing: border-box;
    width: 42px;
    height: 42px;
    vertical-align: middle;
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    line-height: 42px;
}

body #contents #contents-main .faq dt span {
    background: #ed193a;
    padding: 0 16px;
}

body #contents #contents-main .faq dd span {
    background: #666;
    padding: 0px 17px 0px 16px;
}

body #contents #contents-main .faq dt p {
    padding: 7px 18px 8px 18px;
    display: table-cell;
    width: 96%;
    box-sizing: border-box;
    height: 42px;
}

body #contents #contents-main .faq dd p {
    padding: 6px 18px 8px 64px;
    display: table-cell;
    width: 96%;
}

body #contents #contents-main .faq dd a {
    text-decoration: underline;
}

/* policy */
img.fr.pp_mark {
    width: 110px;
    margin-left: 32px;
}

img.fr.ism_mark {
    width: 180px;
    margin-left: 32px;
}

/* compliance pop up */
body #compliance {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 100%;
    -ms-overflow-style: none;
}

body #compliance #contents,
body #compliance #contents #contents-main {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 100%;
}

body #compliance #contents #contents-main p {
    margin-bottom: 0;
    padding: 8px;
    font-size: 15px;
}

body #compliance #contents #contents-main .chart-03 {
    margin-top: 0;
    width: 100%;
}

body #compliance #contents #contents-main .chart-03 th,
body #compliance #contents #contents-main .chart-03 td {
    padding: 4px 8px;
    font-size: 15px;
    text-align: left;
}

body #compliance #contents #contents-main .chart-03 td a {
    text-decoration: underline;
}

br.sp {
    display: none;
}

/* 20210430 追加  */
body #compliance #contents #contents-main .chart-04 th,
body #compliance #contents #contents-main .chart-04 td {
    font-size: 14px;
}

body #contents #contents-main .chart-04 td.textM {
    vertical-align: middle;
}

body #contents #contents-main .pic_frame {
    display: inline-block;
    text-align: center;
    margin-right: 50px;
    margin-top: 20px;
}

body #contents #contents-main .pic_frame02 {
    display: inline-block;
    margin: 30px;
}

/* recruite 20240220 */
body #contents #contents-main .pic_frame03 {
    display: inline-block;
    margin: 10px;
    width: 230px;
}

@media only screen and (min-width: 1120px) and (max-width: 1400px) {
    .w-sp-scroll {
        width: 101%;
        overflow-x: auto;
    }

    body #contents #contents-main .mt30.chart-03.w1100.mb40.tbl_financial {
        margin-left: auto;
        margin-right: auto;
        width: 90%;
    }
}

@media only screen and (min-width: 1025px) and (max-width: 1120px) {
    .w-sp-scroll {
        width: 98vw;
        overflow-x: auto;
    }

    body #contents #contents-main .w1100,
    body #contents #contents-main .mt30.chart-03.w1100.mb40.tbl_financial {
        margin-left: auto;
        margin-right: auto;
        width: 99%;
    }
}

@media only screen and (max-width: 1024px) {

    body #contents #contents-head {
        width: 100%;
        height: 400px !important;
        overflow: visible;
    }

    body #contents #contents-head .wrap {
        height: 240px !important;
    }

    body #contents #contents-head .wrap.contents-head-sp {
        background-position: center top;
        background-repeat: no-repeat;
        -moz-background-size: cover;
        background-size: cover;
    }

    /*
body #contents #contents-head .wrap.contents-head-service {
background-image: url(../img/ttl/contents-head-service-sp.png);
}
body #contents #contents-head .wrap.contents-head-fintech {
background-image: url(../img/ttl/contents-head-fintech-sp.png);
}

body #contents #contents-head .wrap.contents-head-service-Amp {
    background-image: url(../img/ttl/contents-head-amp-sp.png);
    }
body #contents #contents-head .wrap.contents-head-service-AmpBanking {
    background-image: url(../img/ttl/contents-head-ampBanking-sp.png);
    }
body #contents #contents-head .wrap.contents-head-service-AmpSyLoan {
    background-image: url(../img/ttl/contents-head-ampSyloan-sp.png);
    }
body #contents #contents-head .wrap.contents-head-service-InstFinance {
    background-image: url(../img/ttl/contents-head-ampInstFinance-sp.png);
    }

body #contents #contents-head .wrap.contents-head-regtech {
background-image: url(../img/ttl/contents-head-regtech-sp.png);
}
body #contents #contents-head .wrap.contents-head-bigdata {
background-image: url(../img/ttl/contents-head-bigdata-sp.png);
}
body #contents #contents-head .wrap.contents-head-development-tools {
background-image: url(../img/ttl/contents-head-development-tools-sp.png);
}
body #contents #contents-head .wrap.contents-head-company {
background-image: url(../img/ttl/contents-head-company-sp.png);
}
body #contents #contents-head .wrap.contents-head-history {
background-image: url(../img/ttl/contents-head-history-sp.png);
}
body #contents #contents-head .wrap.contents-head-ideology {
background-image: url(../img/ttl/contents-head-ideology-sp.png);
}
body #contents #contents-head .wrap.contents-head-partner {
background-image: url(../img/ttl/contents-head-partner-sp.png);
}
body #contents #contents-head .wrap.contents-head-other {
background-image: url(../img/ttl/contents-head-other-sp.png);
}
body #contents #contents-head .wrap.contents-head-csr {
background-image: url(../img/ttl/contents-head-csr-sp.png);
}
body #contents #contents-head .wrap.contents-head-ir {
background-image: url(../img/ttl/contents-head-ir-sp.png);
}
body #contents #contents-head .wrap.contents-head-news {
background-image: url(../img/ttl/contents-head-news-sp.png);
}
body #contents #contents-head .wrap.contents-head-contact {
background-image: url(../img/ttl/contents-head-contact-sp.png);
}
body #contents #contents-head .wrap.contents-head-ir-library{
background-image: url(../img/ttl/contents-head-ir-library-sp.png);       
}
body #contents #contents-head .wrap.contents-head-ir-faq{
background-image: url(../img/ttl/contents-head-ir-faq-sp.png);       
}
body #contents #contents-head .wrap.contents-head-ir-stock-holder{
background-image: url(../img/ttl/contents-head-ir-stock-holder-sp.png);       
}
body #contents #contents-head .wrap.contents-head-ir-schedule{
background-image: url(../img/ttl/contents-head-ir-schedule-sp.png);       
}
body #contents #contents-head .wrap.contents-head-ir-exemption{
background-image: url(../img/ttl/contents-head-ir-exemption-sp.png);       
}
body #contents #contents-head .wrap.contents-head-ir-koukoku{
background-image: url(../img/ttl/contents-head-ir-koukoku-sp.png);       
}
body #contents #contents-head .wrap.contents-head-ir-financial{
background-image: url(../img/ttl/contents-head-ir-financial-sp.png);       
}
body #contents #contents-head .wrap.contents-head-recruit{
background-image: url(../img/ttl/contents-head-recruit-sp.png);       
}
body #contents #contents-head .wrap.contents-head-recruit-request{
background-image: url(../img/ttl/contents-head-recruit-request-sp.png);       
}
body #contents #contents-head .wrap.contents-head-recruit-person{
background-image: url(../img/ttl/contents-head-recruit-person-sp.png);       
}   
body #contents #contents-head .wrap.contents-head-recruit-employ{
background-image: url(../img/ttl/contents-head-recruit-employ-sp.png);       
}
body #contents #contents-head .wrap.contents-head-recruit-employ_n{
    background-image: url(../img/ttl/contents-head-recruit-employ_n-sp.png);       
    }
body #contents #contents-head .wrap.contents-head-recruit-roundtable{
    background-image: url(../img/ttl/contents-head-ir-sp.png);       
    }
body #contents #contents-head .wrap.contents-head-recruit-shinsotsu{
    background-image: url(../img/ttl/contents-head-ir-sp.png);       
    }
*/

    /* column 携帯 */
    body #contents #contents-head .wrap.contents-head-column {
        background-image: url(../img/ttl/contents-head-column-sp.png);
    }

    body #contents #contents-head img {}

    body #contents #contents-head .wrap .mask {
        position: absolute;
        width: 100%;
        height: 100%;
        background: url(../img/ttl/contents-head-mask.png) right bottom no-repeat;
        background-size: 200%;
        z-index: 1;
    }

    body #contents #contents-head .ttl-block-sp {
        position: absolute;
        top: 180px;
        width: 100%;
        z-index: 9;
    }

    body #contents #contents-head .ttl-block {
        position: static;
        margin: 0px auto;
        text-align: center;
        width: 300px;
        height: 200px;
        z-index: 10;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner {}

    body #contents #contents-head .ttl-block .ttl-block-inner h2 {
        font-weight: 600;
        line-height: 1.2;
        vertical-align: middle;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner span {
        display: block;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner .line-01 {
        font-size: 34px;

        text-align: center;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner .line-01-02 {
        font-size: 40px;

        text-align: center;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner .line-01-02 span {
        font-size: 18px;
        display: block;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner .line-02 {
        font-size: 28px;

    }

    body #contents #contents-head .ttl-block .ttl-block-inner .line-03 {
        font-size: 34px;

        text-align: center;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner h2 span {
        display: block;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01 {
        font-size: 34px;

        text-align: center;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01-02 {
        font-size: 40px;

        text-align: center;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner h2.line-01-02 span {
        font-size: 18px;
        display: block;
    }

    body #contents #contents-head .ttl-block .ttl-block-inner h2.line-02 {
        font-size: 28px;

    }

    body #contents #contents-head .breadcrumb {
        position: absolute;
        top: 400px;
        left: 20px;
    }

    body #contents #contents-head .breadcrumb li {
        font-size: 14px;
        display: inline-block;
    }

    body #contents #contents-head .breadcrumb li:after {
        content: ">";
        padding: 0 10px;
    }

    body #contents #contents-head .breadcrumb li:last-child:after {
        content: '';
    }

    body #contents #contents-main {
        width: 100%;
        margin: 60px auto;
        text-align: center;
    }

    body #contents #contents-main .wrap {
        width: 90%;
        text-align: center;
        margin: 0px auto;
    }

    body #contents #contents-main h2 {
        font-size: 26px;
        margin-bottom: 30px;
        padding: 0px 5%;
    }

    body #contents #contents-main .wrap h2 {
        padding: 0px;
    }

    body #contents #contents-main p.lead,
    body #contents #contents-main p.lead-2 {
        font-size: 18px;
        text-align: left;
    }

    body #contents #contents-main p {
        font-size: 16px;
        line-height: 1.8;
        padding: 0px 5%;
    }

    body #contents #contents-main .wrap p {
        padding: 0px;
    }

    body #contents #contents-main .wrap h1 {
        font-size: 28px;
        line-height: 1.4;
        padding: 0px;
        position: relative;
    }

    body #contents #contents-main .wrap h1:after {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        border-bottom: 3px solid #000000;
        width: 120px;
        height: 3px;
        text-align: center;
        margin: 0px auto;
        padding-bottom: 15px;
    }

    body #contents #contents-main .wrap h1 span {
        display: block;
    }

    body #contents #contents-main .fintech h2 {
        font-size: 22px;
        line-height: 1.4;
        font-weight: bold;
        text-align: left;
        background: #f3f3f3;
        padding: 15px 20px;
    }

    body #contents #contents-main .fintech h2 span {
     
    }

    body #contents #contents-main h3 {
        font-size: 24px;
        line-height: 1.4;
        padding: 0px 5%;
    }

    body #contents #contents-main .wrap h3 {
        font-size: 28px;
        line-height: 1.4;
        padding: 0px;
        position: relative;
    }

    body #contents #contents-main .wrap:not(.fintech) h3:after {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        border-bottom: 3px solid #000000;
        width: 120px;
        height: 3px;
        text-align: center;
        margin: 0px auto;
        padding-bottom: 15px;
    }

    body #contents #contents-main .wrap h3 span {
        display: block;


    }

    body #contents #contents-main .wrap.fintech h3 {
        font-size: 18px;
        line-height: 1.4;
        padding-left: 10px !important;
    }

    body #contents #contents-main h4 {
        font-size: 22px;
        line-height: 1.4;
        font-weight: bold;
        text-align: left;
        background: #f3f3f3;
        padding: 15px 20px;
    }

    body #contents #contents-main h5 {
        font-size: 18px;
        line-height: 1.4;
        padding: 0px 2%;
    }

    body #contents #contents-main .wrap h5 {
        padding: 0px !important;
    }

    body #contents #contents-main .chart-01,
    body #contents #contents-main .chart-01-p10 {
        width: 100%;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
    }

    body #contents #contents-main .chart-01 th,
    body #contents #contents-main .chart-01 td,
    body #contents #contents-main .chart-01-p10 th,
    body #contents #contents-main .chart-01-p10 td {
        font-size: 16px;
        width: calc(100% - 40px);
        display: block;
        table-layout: fixed;
        word-break: break-all;
        padding: 10px 20px 8px;
    }

    body #contents #contents-main .chart-01 th span,
    body #contents #contents-main .chart-01 td span,
    body #contents #contents-main .chart-01-p10 th span,
    body #contents #contents-main .chart-01-p10 td span {
        padding: 0px 20px;
    }

    body #contents #contents-main .chart-01 th,
    body #contents #contents-main .chart-01 td,
    body #contents #contents-main .chart-01 {
        border: none;
    }

    body #contents #contents-main .chart-01 th {
    
    }

    body #contents #contents-main .chart-01 td {
     
    }

    /* Contact Form */
    .contact_service_box {
        width: auto;
    }

    .c.recruit_btn {
        max-width: 40%;
        font-size: 17px;
    }

    body #contents #contents-main .chart-01-p10 th {
        padding: 20px 0px;
    }

    body #contents #contents-main .chart-01-p10 td {
        padding: 20px 0px;
    }

    body #contents #contents-main .chart-02 {
        width: 100%;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
    }

    body #contents #contents-main .chart-02 th,
    body #contents #contents-main .chart-02 td {
        font-size: 16px;
        width: 100%;
        display: block;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
    }

    body #contents #contents-main .chart-02 th {
        padding: 20px 0px;
    }

    body #contents #contents-main .chart-02 td {
        padding: 20px 0px;
    }

    .w-sp-scroll {
        overflow-x: auto;
    }

    body #contents #contents-main .layout-01 {
        margin: 0px auto;
        text-align: center;
        width: 90%;
    }

    body #contents #contents-main .layout-01:after {
        content: " ";
        display: block;
        clear: both;
    }

    body #contents #contents-main .layout-01 .leftside {
        float: none;
    }

    body #contents #contents-main .layout-01 .rightside {
        float: none;
    }

    body #contents #contents-main .w1100,
    body #contents #contents-main .w920,
    body #contents #contents-main .w860,
    body #contents #contents-main .w780,
    body #contents #contents-main .w520,
    body #contents #contents-main .w200,
    body #contents #contents-main .w620 {
        width: 100%;
        box-sizing: border-box;
    }

    body #contents #contents-main .w860.pp-list,
    body #contents #contents-main .w780.pp-list {
        width: 90%;
    }

    body #contents #contents-main .mt40.list-02.w860 {
        width: 90%;
        padding-left: 0;
    }

    body #contents #contents-main .w-sp {
        width: 90%;
        margin: 0px 5%;
    }

    body #contents #contents-main .wrap .w-sp {
        width: 100%;
        margin: 0px;
    }

    body #contents #contents-main .layout-motto li {
        width: 300px;
        height: 300px;
        margin: 0px auto 30px auto;
        text-align: center;
    }

    body #contents #contents-main .layout-motto li p {
        padding-top: 115px;
    }

    body #contents #contents-main .layout-motto li p span {
        display: block;
    }

    body #contents #contents-main .layout-02 {
        text-align: left;
    }

    body #contents #contents-main .layout-02 li {
        display: block;
        width: 100% !important;
        height: auto;
        margin-right: 0px;
        margin-bottom: 40px;
        text-align: center;
        position: relative;
    }

    body #contents #contents-main .layout-02 li .mask {
        position: absolute;
        width: 80%;
        height: 100%;
        background: url(../img/common/layout-02-mask.png) -50px top no-repeat;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-sp {
        position: absolute;
        top: 27%;
        left: 0;
        width: 100%;
    }

    body #contents #contents-main .layout-02 li div.ttl-block {
        position: static;
        width: 220px;
        height: 120px;
        display: block;
        text-align: center;
        margin: 0px auto;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2 {
        font-size: 18px;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2 span {
        display: block;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-01 {
        padding-top: 35px;
        text-align: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-02 {
        padding-top: 25px;
        text-align: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h2.line-03 {
        padding-top: 25px;
        text-align: center;
    }

    /* SERVICE */
    body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-03 {
        padding-top: 25px;
        text-align: center;
    }

    /* END */
    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3 {
        font-size: 18px;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3 span {
        display: block;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-01 {
        padding-top: 35px;
        text-align: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-02 {
        padding-top: 25px;
        text-align: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block .ttl-block-inner h3.line-03 {
        padding-top: 25px;
        text-align: center;
    }

    /* SERVICE 携帯(SP) */
    body #contents #contents-main .layout-02 li div.ttl-block-sp-service {
        position: absolute;
        top: 27%;
        left: 0;
        width: 100%;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-service {
        /* 携帯View */
        position: static;
        width: 240px;
        height: 150px;
        display: block;
        text-align: center;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2 {
        font-size: 18px;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2 span {
        display: block;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-01 {
        padding-top: 35px;
        text-align: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-02 {
        padding-top: 25px;
        text-align: center;
    }

    body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h2.line-03 {
        padding-top: 25px;
        text-align: center;

        body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3 {
            font-size: 18px;
        }

        body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3 span {
            display: block;
        }

        body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3.line-01 {
            padding-top: 35px;
            text-align: center;
        }

        body #contents #contents-main .layout-02 li div.ttl-bloc-servicek .ttl-block-inner h3.line-02 {
            padding-top: 25px;
            text-align: center;
        }

        body #contents #contents-main .layout-02 li div.ttl-block-service .ttl-block-inner h3.line-03 {
            padding-top: 25px;
            text-align: center;
        }

    }

    /* END */
    body #contents #contents-main .list-01 {}

    body #contents #contents-main .list-01 li {
        list-style-type: circle;
        font-size: 17px;
        text-align: left;
        margin: 0px 0px 15px 25px;
    }

    body #contents #contents-main .list-02 {}

    body #contents #contents-main .list-02 li {
        list-style-type: circle;
        font-size: 17px;
        text-align: left;
        margin: 0px 0px 5px 25px;
    }

    body #contents #contents-main .news dl {
        text-align: left;
        width: 100%;
        display: block;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
    }

    body #contents #contents-main .news dt,
    body #contents #contents-main .news dd {
        font-size: 16px;
        padding: 0px 5%;
    }

    body #contents #contents-main .news dt {
        width: 100px;
        margin-bottom: 10px;
    }

    body #contents #contents-main .news dd.cate {
        width: 100px;
        margin-bottom: 10px;
    }

    body #contents #contents-main .news dd.cont {
        width: 90% !important;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
        padding: 0px 5%;
    }

    body #contents #contents-main .news dd.cont span {
        padding: 0px 5%;
        display: block;
    }

    body #contents #contents-main .select-news-year {
        text-align: center;
        margin-top: 80px;
        padding-top: 20px;
    }

    body #contents #contents-main .select-news-year select {
        padding: 25px;
        width: 280px;
        font-size: 16px;
        font-weight: 600;
        box-shadow: 0px 0px 20px #dadada;
        border: 1px solid #f2f2f2;
    }

    body #contents #contents-main .select-news-year option {
        font-size: 16px;
        font-weight: 600;
    }

    body #contents #contents-main ul.news-date {
        margin-top: -10px !important;
        padding: 0px 5%;
    }

    /* column */
    body #contents #contents-main .column dl {
        text-align: left;
        width: 100%;
        display: block;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
    }

    body #contents #contents-main .column dt,
    body #contents #contents-main .column dd {
        font-size: 16px;
        padding: 0px 5%;
    }

    body #contents #contents-main .column dt {
        width: 100px;
        margin-bottom: 10px;
    }

    body #contents #contents-main .column dd.cate {
        width: 100px;
        margin-bottom: 10px;
    }

    body #contents #contents-main .column dd.cont {
        width: 100% !important;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-all;
        padding: 0px;
    }

    body #contents #contents-main .column dd.cont span {
        padding: 0px 5%;
        display: block;
    }


    /* --------------------- */
    body #contents #contents-main .inline-frame {
        width: 100%;
        padding: 0px;
    }

    body #contents #contents-main .inline-frame-sp {
        padding: 20px;
    }

    body #contents #contents-main .btn-01 li {
        display: block;
        margin: 0px auto;
        text-align: center;
    }

    body #contents #contents-main .btn-01 li a {
        margin: 0px auto 10px auto;
        text-align: center;
        font-size: 15px;
        display: block;
        padding: 15px 0px;
        width: 80%;
    }

    body #contents #contents-main .gmap {
        width: 100%;
        height: 300px;
    }

    body #contents #contents-main .logo-cpp-jic-sp {
        width: 9rem;
    }

    body #contents #contents-main .line-tp-01 {
        border-top: 1px solid #bebebe;
        padding-top: 40px !important;
    }

    br.sp {
        display: inline-block;
    }

}

@media screen and (min-width: 757px) and (max-width:780px) {

    body #contents #contents-main .date-table table,
    body #contents #contents-main .date-table02 table {
        width: 36%;
    }
}

@media screen and (min-width: 721px) and (max-width:756px) {

    body #contents #contents-main .date-table table,
    body #contents #contents-main .date-table02 table {
        width: 39%;
    }
}

@media screen and (max-width: 720px) {

    body #contents #contents-main .chart-03.w1100 {
        width: auto;
        min-width: 110vw;
    }

    body #contents #contents-main .chart-03 th,
    body #contents #contents-main .chart-03 td {
        display: table-cell;
        width: auto;
        padding: 10px;
        word-break: keep-all;
        font-size: 12px;
    }

    /* ir */
    th.w50 {
        width: auto;
    }

    /* ir faq */
    body #contents #contents-main dl.faq {
        width: 100%;
        margin: 0 auto;
    }

    body #contents #contents-main .faq dt,
    body #contents #contents-main .faq dd {
        margin: 0;
        padding: 0;
    }

    body #contents #contents-main .faq dt span,
    body #contents #contents-main .faq dd span {
        top: 0;
        bottom: 0;
    }

    body #contents #contents-main .faq dt p {
        padding: 2px 8px 4px 16px;
        width: 90%;
        line-height: 1.2em;
        vertical-align: middle;
        font-size: 15px;
    }

    body #contents #contents-main .faq dd p {
        padding: 4px 0 6px 50px;
        width: 90%;
        line-height: 1.2em;
        height: 62px;
        vertical-align: top;
        font-size: 15px;
    }

    /* privacy */
    img.fr.pp_mark {
        width: 40vw !important;
        display: block;
        float: none;
        clear: both;
        margin: 30px auto;
    }

    img.fr.pp_mark:after,
    img.fr.ism_mark:after {
        content: ".";
        width: 100%;
        height: 1px;
        float: none;
        clear: both;
    }

    img.fr.ism_mark {
        width: 50vw !important;
        display: block;
        float: none;
        clear: both;
        margin: 30px auto;
    }

    body #contents #contents-main .date-table,
    body #contents #contents-main .date-table02 {
        text-align: right;
        float: none;
        clear: both;
        height: auto;
        min-height: 100px;
        width: 100%;
        position: relative;
    }

    body #contents #contents-main .date-table table {
        width: 50%;
        font-size: 14px;
    }

    body #contents #contents-main .date-table02 table {
        width: 70%;
        font-size: 14px;
    }

    /* compliance */
    #compliance {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        text-overflow: ellipsis;
    }

    body #contents #contents-main #compliance p.lead {
        padding: 0.5em;
        letter-spacing: -1px;
    }

    body #contents #contents-main #compliance .chart-01 {
        margin: 0 auto;
        width: 98%;
    }

    body #contents #contents-main #compliance .chart-01 th,
    body #contents #contents-main #compliance .chart-01 td {
        display: table-cell;
        width: auto;
        padding: 10px;
        word-break: keep-all;
        font-size: 16px;
        line-height: 1.5em;
    }

    body #contents #contents-main #compliance .chart-01 th {
        width: 20%;
    }

    body #contents #contents-main #compliance .chart-01 td {
        width: 80%;
    }

    body #contents #contents-main .list-02 {
        padding: 10px;
    }
}

@media screen and (max-width:610px) {
    body #contents #contents-main .pp-table table {
        margin: 0 auto 0 1em;
        width: 100%;
        display: block;
    }

    body #contents #contents-main .pp-table th {
        width: 100%;
        display: block;
    }

    body #contents #contents-main .pp-table td {
        width: 100%;
        display: block;
    }

    .contact_service_box {
        padding: 20px;
    }

    .contact_service_box>div {
        padding: 20px;
    }

    .contact_service_box {
        width: auto;
    }

    .contact_btn_box {
        flex-wrap: wrap;
    }

    .contact_btn_box>a:first-child {
        margin-bottom: 20px;
    }

    .recruit_btn {
        max-width: calc(100% -40px);
        font-size: 18px;
    }
}

@media screen and (max-width: 485px) {

    body #contents #contents-main .date-table table,
    body #contents #contents-main .date-table table02 {
        width: 70%;
    }

    body #contents #contents-main h4 {
        font-size: 20px;
    }

    body #contents #contents-main .head_balloon {
        font-size: 18px;
    }
}

@media screen and (max-width: 320px) {

    body #contents #contents-main .date-table table,
    body #contents #contents-main .date-table02 table {
        width: 80%;
    }
}

.mt30.chart-01.w1100.w-sp.history th {
    width: 20%;
}

/* 2023.04.04 沿革 */
.mt5.chart-01.w1100.w-sp.history th {
    width: 20%;
}

.pc_di{
    display: block!important;
}
.sp_di{
    display: none!important;
}
@media screen and (max-width: 640px) {
    .pc_di{
        display: none!important;
    }
    .sp_di{
        display: block!important;
    }
}

.pagination-wrap{

}
.page-numbers{
    display: flex;
    margin: 0 auto;
    width: 100%;
    justify-content: center;
    margin-top: 20px;
}
.page-numbers > li{
    min-width: 25px;
}


/* Contact Page */
body #contents #contents-main .inline-frame {
	background-color: #fff;
}

.contact_sub_atten {
	text-align: center !important;
	margin-bottom: 20px;
}

.contact_sub_atten>span {
	margin-right: 5px;
}

.contact_box {
	width: calc(100% - 100px);
	padding: 50px;
	background-color: #f6f6f6;
}

.contact_line {
	display: flex;
	flex-wrap: wrap;
	text-align: left;
	margin-bottom: 20px;
}

.contact_line>li:first-child {
	width: 30%;
}

.contact_line>li:nth-child(2) {
	width: 50px;
	margin-right: 20px;
}

.contact_line>li:nth-child(3) {
	width: calc(70% - 50px - 20px);
}

.c_required {
	background-color: #ed193a;
	color: #fff;
	padding: 2px 10px;
	font-size: 15px;
	height: 28px;
}

.contact_line>li:nth-child(3)>textarea {
	width: 100%;
}

.contact-chek {}

input[type="submit"] {
	background-color: #ed193a;
	color: #fff;
	font-size: 20px;
	width: 250px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin: 20px auto;
	border: none;
}

input[type="submit"]:hover {
	cursor: pointer;
}

.agree_check {
	text-align: center;
	margin: 20px auto 0;
	width: 100%;
	display: block;
}

.agree>p>span>.wpcf7-not-valid-tip {
	text-align: center;
	width: 100%;
}

.contact_service_box {
	width: 100%;
	max-width: calc(920px - 60px);
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	padding: 30px;
	background-color: #f3f3f3;
}

.contact_service_box>p {
	display: flex;
	text-align: center;
	width: 100%;
	justify-content: center;
	padding-bottom: 20px;
	font-weight: bold;
	font-size: 23px !important;
}

.contact_btn_box {
	display: flex;
	justify-content: space-evenly;
	width: 100%;
	margin-top: 10px;
}

.contact_service_box>div {
	width: 100%;
	padding: 30px 0;
	background-color: #fff;
}

.contact_service_box>div>P {
	width: 100%;
	display: flex;
	justify-content: center;
	background-color: #fff;
}

.contact_service_box>div>p>a {
	justify-content: center;
	background-color: #ed193a;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	max-width: 370px;
	width: 100%;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: none;
	margin-top: 10px;
}

.contact_service_box>div>p>a:hover {
	cursor: pointer;
	opacity: 0.8;
	text-decoration: none;
}

#compliance_form {
	margin-top: 100px;
}

.comp_form_ttl {
	text-align: center !important;
	font-size: 24px !important;
	font-weight: bold;
	color: #ed193a;
	margin-top: 30px;
}

body #contents #contents-main .chart-03 {
	margin: 0 auto;
}

body #contents #contents-main .chart-03 th {
	padding: 10px !important;
	text-align: left !important;
}

body #contents #contents-main .chart-03 td {
	padding: 10px !important;
	text-align: left !important;
}

.recruit_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	background-color: #ed193a;
	color: #fff !important;
	text-decoration: none !important;
	height: 80px;
	width: 100%;
	max-width: 350px;
}

.contact_atten {
	font-size: 14px;
}

@media only screen and (min-width: 320px) and (max-width: 640px) {
	.contact_box {
		width: calc(100% - 40px);
		padding: 20px;
	}

	.contact_line {}

	.contact_line>li:first-child {
		width: auto;
	}

	.contact_line>li:nth-child(2) {
		width: auto;
		margin-right: 0;
		margin-left: 10px;
	}

	.contact_line>li:nth-child(3) {
		width: 100%;
	}

	.c_required {
		font-size: 12px;
		position: relative;
		top: -2px
	}
    .contact_service_box{
        width: 100%;
        padding: 20px;
        max-width: calc(100% - 40px);
    }
    .contact_service_box > p{
        width: 100%!important;
        padding: 0!important;
    }
    .contact_service_box > div{
        padding: 15px 0;
    }
    .contact_service_box > div > p{
        padding: 0 !important;
        /* width: 90%; */
    }
    .contact_service_box > div > p:first-child{
        padding: 0 15px!important;
        width: calc(100% - 30px);
    }
    .contact_service_box > div > p > a{
        width: 90%;
    }
}

/* company outline */
.outline_member{
    display: flex;
    flex-wrap: wrap;
}
.outline_member > dt{
    width: 30%;
}
.outline_member > dd{
    width: 70%;
}
body #contents #contents-main .chart-01 th{
    width: 160px;
}
@media only screen and (max-width: 1024px) {
    body #contents #contents-main .chart-01 th{
        width: auto;
    }
}
@media only screen and (min-width: 320px) and (max-width: 640px) {
    .outline_member > dt{
    width: 45%;
    }
    .outline_member > dd{
        width: 55%;
}
}

/* content common */

.content_flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

ul.content_flex > li{
    margin-right: 0!important;
    margin-bottom: 50px!important;
}