@charset "UTF-8";
/*==========================================

 各ページオリジナルレイアウト

============================================*/

/*--------------------------------------
 トップページ
--------------------------------------*/
.contents {
    width: 1264px;
    margin: 0 auto;
    padding: 0 32px;
}

@media all and (max-width: 767px) {
    .contents {
        width: 100%;
        padding: 62px 0 0 0;
    }
}

/* Slider */
.slick-slider {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
}

.slick-list a:hover {
    opacity: 1;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    content: "";
    display: table;
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* Slider */
/* Icons */
@font-face {
    font-family: "slick";
    font-weight: 500;
    font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
    position: absolute;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0;
    font-size: 0;
    cursor: pointer;
    background: transparent;
    color: transparent;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    padding: 0;
    border: none;
    outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
    font-size: 2.0rem;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -25px;
}

[dir="rtl"] .slick-prev {
    left: auto;
    right: -25px;
}

.slick-prev:before {
    content: "←";
}

[dir="rtl"] .slick-prev:before {
    content: "→";
}

.slick-next {
    right: -25px;
}

[dir="rtl"] .slick-next {
    left: -25px;
    right: auto;
}

.slick-next:before {
    content: "→";
}

[dir="rtl"] .slick-next:before {
    content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: -25px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    border: 0;
    background: transparent;
    display: block;
    height: 20px;
    width: 20px;
    outline: none;
    line-height: 0;
    font-size: 0;
    color: transparent;
    padding: 5px;
    cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    font-family: "slick";
    font-size: 0.6rem;
    line-height: 20px;
    text-align: center;
    color: black;
    opacity: 0.25;
}

.slick-dots li.slick-active button:before {
    color: black;
    opacity: 0.75;
}


body.Index .container,
.business-top .container {
    overflow: hidden;
}

/*--------------------------------------
 スライドの表示テキスト
--------------------------------------*/

body.Index .mv .mv-txt,
.business-top .mv .mv-txt {
    position: absolute;
    text-align: right;
    z-index: 10;
    width: 89%;
    max-width: 1200px;
    bottom: 160px;
    left: calc((100% - 1200px) / 2);
}

body.Index .mv .mv-txt span,
.business-top .mv .mv-txt span {
    display: inline-block;
    padding: 14px 10px;
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff;
    font-size: 80%;
    text-align: center;
}
@media screen and (max-width: 767px) {

  body.Index .mv .mv-txt,
  .business-top .mv .mv-txt {
      bottom: 60px;
      left: auto;
      right: 20px;
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
      font-size: 12px;
  }
  
  body.Index .mv .mv-txt span,
  .business-top .mv .mv-txt span {
      font-size: 12px;
  }
}


/* body.Index .mv,
.business-top .mv {
    position: relative;
    left: -32px;
    width: 100vw;
    min-width: 1184px;
}

body.Index .mv .slick-prev,
body.Index .mv .slick-next,
.business-top .mv .slick-prev,
.business-top .mv .slick-next {
    z-index: 10;
    top: 35%;
}

@media screen and (max-width: 767px) {

    body.Index .mv .slick-prev,
    body.Index .mv .slick-next,
    .business-top .mv .slick-prev,
    .business-top .mv .slick-next {
        top: 50%;
    }
}

body.Index .mv .slick-prev::before,
body.Index .mv .slick-next::before,
.business-top .mv .slick-prev::before,
.business-top .mv .slick-next::before {
    content: "" !important;
}

body.Index .mv .slick-prev,
.business-top .mv .slick-prev {
    left: calc((100vw - 1200px)/2);
}

body.Index .mv .slick-prev::after,
.business-top .mv .slick-prev::after {
    content: url(../common/mg/icon_prev_white.svg);
}

@media screen and (max-width: 767px) {

    body.Index .mv .slick-prev,
    .business-top .mv .slick-prev {
        left: 20px;
    }
}

body.Index .mv .slick-next,
.business-top .mv .slick-next {
    right: calc((100vw - 1200px)/2);
}

body.Index .mv .slick-next::after,
.business-top .mv .slick-next::after {
    content: url(../common/mg/icon_next_white.svg);
}

@media screen and (max-width: 767px) {

    body.Index .mv .slick-next,
    .business-top .mv .slick-next {
        left: auto;
        right: 20px;
    }
}

body.Index .mv .slick-dots,
.business-top .mv .slick-dots {
    position: absolute;
    bottom: 10px;
}

body.Index .mv .slick-dots li button:after,
.business-top .mv .slick-dots li button:after {
    display: none;
}

body.Index .mv .slick-dots li button,
.business-top .mv .slick-dots li button {
    width: 11px;
    height: 11px;
    display: inline-block;
    overflow: hidden;
    text-indent: 100px;
}

body.Index .mv .slick-dots li button:before,
.business-top .mv .slick-dots li button:before {
    width: 11px;
    height: 11px;
    border-radius: 100%;
    opacity: 1;
    border: 2px solid #fff;
    background-color: transparent;
    content: "";
}

body.Index .mv .slick-dots li.slick-active button:before,
.business-top .mv .slick-dots li.slick-active button:before {
    background-color: #0092cb;
}

@media screen and (min-width: 1184px) {

    body.Index .mv,
    .business-top .mv {
        left: calc(50% - 50vw);
    }
}

body.Index .mv .mv-inner,
.business-top .mv .mv-inner {
    position: relative;
    overflow: hidden;
    max-height: 748px;
    z-index: 1;
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeInFirst {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeInFirst {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

body.Index .mv .slick-current .mv-elm,
.business-top .mv .slick-current .mv-elm {
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
    animation: fadeIn 1s ease 0s 1 normal;
}

body.Index .mv .slick-current .mv-elm.mv-elm-first,
.business-top .mv .slick-current .mv-elm.mv-elm-first {
    -webkit-animation: fadeInFirst 0s ease 0s 1 normal;
    animation: fadeInFirst 0s ease 0s 1 normal;
}

body.Index .mv .mv-elm,
.business-top .mv .mv-elm {
    position: relative;
    width: 100%;
}

body.Index .mv .mv-elm a:hover,
.business-top .mv .mv-elm a:hover {
    opacity: 1;
}

body.Index .mv .mv-ttl,
.business-top .mv .mv-ttl {
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

body.Index .mv .mv-ttl img,
.business-top .mv .mv-ttl img {
    width: 1120px;
}

body.Index .mv .mv-img,
.business-top .mv .mv-img {
    width: 100%;
}

body.Index .mv .mv-img img,
.business-top .mv .mv-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media screen and (min-width: 1184px) {

    body.Index .mv .mv-img,
    .business-top .mv .mv-img {
        position: relative;
        overflow: hidden;
        height: 748px;
    }

    body.Index .mv .mv-img img,
    .business-top .mv .mv-img img {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

body.Index .mv .mv-txt,
.business-top .mv .mv-txt {
    position: absolute;
    bottom: 158px;
    left: 50%;
    min-width: 1120px;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    text-align: right;
    color: #fff;
    z-index: 10;
}

body.Index .mv .mv-txt span,
.business-top .mv .mv-txt span {
    display: inline-block;
    padding: 4px 10px;
    background-color: rgba(0, 0, 0, 0.4);
    font-size: 80%;
    text-align: center;
}

body.Index .mv .slick-dots,
.business-top .mv .slick-dots {
    bottom: 160px;
}

body.Index .mv .slick-dots .mv-ui,
.business-top .mv .slick-dots .mv-ui {
    position: absolute;
    top: -4px;
    margin-left: -5px;
}

body.Index .mv .slick-dots .mv-ui a,
.business-top .mv .slick-dots .mv-ui a {
    position: relative;
}

body.Index .mv .slick-dots .mv-ui a span,
.business-top .mv .slick-dots .mv-ui a span {
    position: absolute;
    top: 0;
}

body.Index .mv .slick-dots .mv-ui a[data-play="true"] .play,
.business-top .mv .slick-dots .mv-ui a[data-play="true"] .play {
    display: none;
}

body.Index .mv .slick-dots .mv-ui a[data-play="false"] .stop,
.business-top .mv .slick-dots .mv-ui a[data-play="false"] .stop {
    display: none;
}

.firefox .mv-ui {
    top: 11.5px !important;
}

body.Index .mv .slick-prev,
body.Index .mv .slick-next,
.business-top .mv .slick-prev,
.business-top .mv .slick-next {
    top: 36%;
    height: 38px;
}

body.Index .mv .slick-prev::after,
body.Index .mv .slick-next::after,
.business-top .mv .slick-prev::after,
.business-top .mv .slick-next::after {
    width: 17px;
    height: 38px;
    display: inline-block;
}

body.Index .mv .slick-slide,
.business-top .mv .slick-slide {
    opacity: 1 !important;
    z-index: 997 !important;
}

body.Index .mv .slick-slide.slick-before,
.business-top .mv .slick-slide.slick-before {
    z-index: 998 !important;
}

body.Index .mv .slick-slide.slick-current,
.business-top .mv .slick-slide.slick-current {
    z-index: 999 !important;
} */

/* body.Index .mv .mv-nav,
.business-top .mv .mv-nav {
    position: absolute;
    bottom: 15px;
    left: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1120px;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    z-index: 2;
}

body.business-top .mv-nav {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
}

body.Index .mv .mv-nav.mv-nav-l .mv-nav-block.col1,
.business-top .mv .mv-nav.mv-nav-l .mv-nav-block.col1 {
    width: 25% !important;
}

body.Index .mv .mv-nav.mv-nav-l .mv-nav-block.personal,
.business-top .mv .mv-nav.mv-nav-l .mv-nav-block.personal {
    width: 25%;
}

body.Index .mv .mv-nav.mv-nav-l .mv-nav-block.business,
.business-top .mv .mv-nav.mv-nav-l .mv-nav-block.business {
    width: 50%;
}

body.Index .mv .mv-nav.mv-nav-l .mv-nav-block.internet,
.business-top .mv .mv-nav.mv-nav-l .mv-nav-block.internet {
    width: 25%;
}

body.Index .mv .mv-nav .mv-nav-block,
.business-top .mv .mv-nav .mv-nav-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 10px;
    padding-top: 5px;
    margin: 0 3px;
    border-radius: 4px;
}

body.Index .mv .mv-nav .mv-nav-block.col1,
.business-top .mv .mv-nav .mv-nav-block.col1 {
    width: 20.3% !important;
}

body.Index .mv .mv-nav .mv-nav-block.col1 .mv-nav-elm,
.business-top .mv .mv-nav .mv-nav-block.col1 .mv-nav-elm {
    width: 100%;
}

body.Index .mv .mv-nav .mv-nav-block.personal,
.business-top .mv .mv-nav .mv-nav-block.personal {
    width: 39.3%;
    background-color: rgba(244, 87, 105, 0.8);
}

body.Index .mv .mv-nav .mv-nav-block.personal .mv-nav-elm a::after,
.business-top .mv .mv-nav .mv-nav-block.personal .mv-nav-elm a::after {
    background-image: url("../img/icon_arrow_kib.svg");
    background-repeat: no-repeat;
}

body.Index .mv .mv-nav .mv-nav-block.business,
.business-top .mv .mv-nav .mv-nav-block.business {
    width: 39.3%;
    background-color: rgba(0, 186, 175, 0.8);
}

body.Index .mv .mv-nav .mv-nav-block.business .mv-nav-elm-03 a::after,
.business-top .mv .mv-nav .mv-nav-block.business .mv-nav-elm-03 a::after {
    background-image: url("../img/icon_arrow_hib.svg");
    background-repeat: no-repeat;
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
    right: 6px;
}

body.Index .mv .mv-nav .mv-nav-block.business .mv-nav-elm-04 a::after,
.business-top .mv .mv-nav .mv-nav-block.business .mv-nav-elm-04 a::after {
    background-image: url("../img/icon_blank_hib.svg");
    background-repeat: no-repeat;
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
    right: 6px;
}

body.Index .mv .mv-nav .mv-nav-block.internet,
.business-top .mv .mv-nav .mv-nav-block.internet {
    width: 20.3%;
    background-color: rgba(248, 134, 54, 0.8);
}

body.Index .mv .mv-nav .mv-nav-block.internet .mv-nav-elm,
.business-top .mv .mv-nav .mv-nav-block.internet .mv-nav-elm {
    width: 100%;
}

body.Index .mv .mv-nav .mv-nav-block.internet .mv-nav-elm a::after,
.business-top .mv .mv-nav .mv-nav-block.internet .mv-nav-elm a::after {
    background-image: url("../img/icon_arrow_loan.svg");
    background-repeat: no-repeat;
}

body.Index .mv .mv-nav .mv-nav-block h5,
.business-top .mv .mv-nav .mv-nav-block h5 {
    font-size: 2rem;
    width: 100%;
    text-align: center;
    color: #fff;
}

body.Index .mv .mv-nav .mv-nav-elm,
.business-top .mv .mv-nav .mv-nav-elm {
    width: 49%;
}

body.Index .mv .mv-nav .mv-nav-elm a,
.business-top .mv .mv-nav .mv-nav-elm a {
    font-size: 1.4rem;
    line-height: 1.3;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 15px 10px;
    text-decoration: none;
    border-radius: 4px;
    background-color: #fff;
    min-height: 75px;
    color: #00384f;
}

body.Index .mv .mv-nav .mv-nav-elm a:after,
.business-top .mv .mv-nav .mv-nav-elm a:after {
    position: absolute;
    top: 50%;
    right: 4px;
    display: block;
    width: 12px;
    height: 8px;
    content: "";
    -webkit-transform: translate(0%, -50%) rotate(-90deg);
    transform: translate(0%, -50%) rotate(-90deg);
    background-size: 100% auto;
}

body.Index .mv .mv-nav .mv-nav-elm a img,
.business-top .mv .mv-nav .mv-nav-elm a img {
    margin-right: 10px;
}

@media screen and (max-width: 767px) {

    body.Index .mv,
    .business-top .mv {
        left: 0;
        min-width: 100%;
        width: 100%;
    }

    body.Index .mv .mv-inner,
    .business-top .mv .mv-inner {
        max-height: none;
    }

    body.Index .mv .mv-ttl,
    .business-top .mv .mv-ttl {
        top: 50%;
    }

    body.Index .mv .mv-ttl img,
    .business-top .mv .mv-ttl img {
        width: 65vw;
    }

    body.Index .mv .mv-img,
    .business-top .mv .mv-img {
        height: auto;
    }

    body.Index .mv .mv-img img,
    .business-top .mv .mv-img img {
        position: static;
    }

    body.Index .mv .mv-txt,
    .business-top .mv .mv-txt {
        bottom: 60px;
        left: auto;
        right: 20px;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        font-size: 12px;
    }

    body.Index .mv .mv-txt span,
    .business-top .mv .mv-txt span {
        font-size: 12px;
    }

    body.Index .mv .slick-dots,
    .business-top .mv .slick-dots {
        bottom: 20px;
    }

    body.Index .mv .mv-nav,
    .business-top .mv .mv-nav {
        position: static;
        display: block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 100%;
        margin-top: -40px;
        padding: 20px 11px;
        -webkit-transform: translate(0%, 0);
        transform: translate(0%, 0);
    }

    body.Index .mv .mv-nav.mv-nav-l .mv-nav-block.col1,
    .business-top .mv .mv-nav.mv-nav-l .mv-nav-block.col1 {
        width: 100% !important;
    }

    body.Index .mv .mv-nav .mv-nav-block,
    .business-top .mv .mv-nav .mv-nav-block {
        display: block;
        width: 100% !important;
        margin: 0;
        margin-bottom: 10px;
        padding-bottom: 5px;
    }

    body.Index .mv .mv-nav .mv-nav-block.col1,
    .business-top .mv .mv-nav .mv-nav-block.col1 {
        width: 100% !important;
    }

    body.Index .mv .mv-nav .mv-nav-block.business,
    .business-top .mv .mv-nav .mv-nav-block.business {
        display: none;
    }

    body.business-top .mv .mv-nav {
        margin-top: -10px;
    }

    body.business-top .mv .mv-nav .mv-nav-block.business {
        display: block !important;
    }

    body.Index .mv .mv-nav .mv-nav-elm,
    .business-top .mv .mv-nav .mv-nav-elm {
        width: 100%;
        margin-bottom: 10px;
    }

    body.Index .mv .mv-nav .mv-nav-elm a,
    .business-top .mv .mv-nav .mv-nav-elm a {
        font-size: 1.8rem;
        width: 100%;
    }

    body.Index .mv .mv-nav .mv-nav-elm a br,
    .business-top .mv .mv-nav .mv-nav-elm a br {
        display: none;
    }
} */


/* 重要なお知らせ */


/* 商品・サービスのご案内 */


/* お知らせ */
iframe.news-top,
iframe.campaign-top {
    width: 100%;
    height: 498px;
}
iframe.info-top{
	width: 100%;
    height: 200px;
}
iframe.attention-top{
	width: 100%;
    height: 200px;
}
iframe.info-kib,
iframe.info-hib,
iframe.info-densai{
	width: 100%;
    height: 200px;
}
iframe.news-kib,
iframe.news-hib,
iframe.news-densai,
iframe.news-recruit{
    width: 100%;
    height: 300px;
}
.news_top_tmp ul.news-list > li {
    padding: 2.1rem 1.8rem;
}

iframe.news-top,
iframe.campaign-top {
    width: 100%;
    height: 498px;
}
iframe.info-top{
	width: 100%;
    height: 200px;
}
iframe.attention-top{
	width: 100%;
    height: 200px;
}
iframe.info-kib,
iframe.info-hib,
iframe.info-densai{
	width: 100%;
    height: 200px;
}
iframe.news-kib,
iframe.news-hib,
iframe.news-densai,
iframe.news-recruit{
    width: 100%;
    height: 300px;
}

.news_top_tmp ul.news-list > li {
    padding: 2.1rem 1.8rem;
}


/* ご注意ください */


/* スライドバナー */



/*--------------------------------------
 かりる
--------------------------------------*/

/* 同意チェックボックス */
.entryBlock_loan {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}
.entryBlock_loan input[type="checkbox"] {
    margin: .5em .5em 0 0;
}
@media screen and (max-width: 767px) {
    .entryBlock_loan {
        justify-content: space-between;
    }
    .entryBlock_loan span {
        width: calc(100% - 1.5em);
    }
}


/*--------------------------------------
 店舗・ATM一覧
--------------------------------------*/
.branch-contents-01 {
    /* 店舗情報 */
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
}

.branch-contents-01 .branch-photo {
    width: 448px;
}

.branch-contents-01 .branch-photo img {
    width: 448px;
}

.branch-contents-01 .branch-details {
    width: 640px;
}

.branch-contents-01 .branch-details table {
    width: 100%;
    margin: 0 0 1rem;
    border-top: 1px #707070 solid;
    border-bottom: 1px #707070 solid;
}

.branch-contents-01 .branch-details table th {
    text-align: left;
    font-weight: bold;
}

.branch-contents-01 .branch-details table .head-col th {
    border-bottom: 1px #707070 solid;
}

.branch-contents-01 .branch-details table .head-col th:first-of-type {
    width: 20%;
}

.branch-contents-01 .branch-details table th,
.branch-contents-01 .branch-details table td {
    padding: 1rem 2rem;
    border-bottom: 1px #707070 dashed;
}

.branch-contents-01 .branch-details ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.5%;
}

.branch-contents-01 .branch-details ul li {
    width: 24%;
    margin: 1% 0.5% 0;
    padding: 1rem 0.5rem;
    background: #707070;
    color: #FFF;
    text-align: center;
}

@media screen and (max-width: 767px) {

    .branch-contents-01,
    .branch-contents-01 .branch-photo,
    .branch-contents-01 .branch-details {
        /* 店舗情報SP */
        display: block;
        width: 100%;
    }

    .branch-contents-01 .branch-photo img {
        width: 100%;
        margin-bottom: 2rem;
    }

    .branch-contents-01 .branch-details table th:first-of-type {
        width: inherit;
        white-space: nowrap;
    }

    .branch-contents-01 .branch-details table th,
    .branch-contents-01 .branch-details table td {
        padding: 0.5rem;
    }

    .branch-contents-01 .branch-details ul li {
        width: 49%;
        padding: 0.5rem;
    }
}

/*--------------------------------------
 よくあるご質問
--------------------------------------*/
.qa-text {
    /* Q&A Q */
    padding: 0 0.4rem;
    color: var(--main-color);
    font-weight: bold;
}

.indent-text-ol {
    /* Q&A A */
    display: table;
    width: 100%;
}

.content .indent-text-ol>dt,
.content .indent-text-ol>dd {
    display: table-cell;
    vertical-align: top;
}

.indent-text-ol>dt {
    width: 3rem;
    color: var(--main-color);
}


/*--------------------------------------
 ローンシミュレーション
--------------------------------------*/
.input-01,
.input-02 {
    /* ローンシミュレーション */
    margin-right: 1rem;
    padding: 0.9rem;
    border: 1px #B8B8B8 solid;
    border-radius: 4px;
    text-align: right;
}

.input-01 {
    width: 5em;
}

.input-02 {
    width: 120px;
}

.select-01 {
    padding: 0.4rem;
    border: 1px #707070 solid;
    border-radius: 4px;
}

.checkbox-01 {
    display: flex;
    justify-content: center;
}

.checkbox-01>dt {
    padding: 0 4rem;
    font-weight: bold;
}

.checkbox-01>dd {
    padding: 0 1rem;
}

@media screen and (max-width: 767px) {
    .checkbox-01 {
        display: block;
    }
}

/*--------------------------------------
 店舗・ATM一覧
--------------------------------------*/
.branch-contents-01 {
    /* 店舗情報 */
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
}

.branch-contents-01 .branch-photo {
    width: 448px;
}

.branch-contents-01 .branch-photo img {
    width: 448px;
}

.branch-contents-01 .branch-details {
    width: 640px;
}

.branch-contents-01 .branch-details table {
    width: 100%;
    margin: 0 0 1rem;
    border-top: 1px #707070 solid;
    border-bottom: 1px #707070 solid;
}

.branch-contents-01 .branch-details table th {
    text-align: left;
    font-weight: bold;
}

.branch-contents-01 .branch-details table .head-col th {
    border-bottom: 1px #707070 solid;
}

.branch-contents-01 .branch-details table .head-col th:first-of-type {
    width: 20%;
}

.branch-contents-01 .branch-details table th,
.branch-contents-01 .branch-details table td {
    padding: 1rem 2rem;
    border-bottom: 1px #707070 dashed;
}

.branch-contents-01 .branch-details ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.5%;
}

.branch-contents-01 .branch-details ul li {
    width: 24%;
    margin: 1% 0.5% 0;
    padding: 1rem 0.5rem;
    background: #707070;
    color: #FFF;
    text-align: center;
}

@media screen and (max-width: 767px) {

    .branch-contents-01,
    .branch-contents-01 .branch-photo,
    .branch-contents-01 .branch-details {
        /* 店舗情報SP */
        display: block;
        width: 100%;
    }

    .branch-contents-01 .branch-photo img {
        width: 100%;
        margin-bottom: 2rem;
    }

    .branch-contents-01 .branch-details table th:first-of-type {
        width: inherit;
        white-space: nowrap;
    }

    .branch-contents-01 .branch-details table th,
    .branch-contents-01 .branch-details table td {
        padding: 0.5rem;
    }

    .branch-contents-01 .branch-details ul li {
        width: 49%;
        padding: 0.5rem;
    }
}

/*--------------------------------------
 よくあるご質問
--------------------------------------*/
.qa-text {
    /* Q&A Q */
    padding: 0 0.4rem;
    color: var(--main-color);
    font-weight: bold;
}

.indent-text-ol {
    /* Q&A A */
    display: table;
    width: 100%;
}

.indent-text-ol>dt,
.indent-text-ol>dd {
    display: table-cell;
    vertical-align: text-bottom;
}

.indent-text-ol>dt {
    width: 3rem;
    color: var(--main-color);
}


/*--------------------------------------
 ローンシミュレーション
--------------------------------------*/
.input-01,
.input-02 {
    /* ローンシミュレーション */
    margin-right: 1rem;
    padding: 0.9rem;
    border: 1px #B8B8B8 solid;
    border-radius: 4px;
    text-align: right;
}

.input-01 {
    width: 5em;
}

.input-02 {
    width: 120px;
}

.select-01 {
    padding: 0.4rem;
    border: 1px #707070 solid;
    border-radius: 4px;
}

.checkbox-01 {
    display: flex;
    justify-content: center;
}

.checkbox-01>dt {
    padding: 0 4rem;
    font-weight: bold;
}

.checkbox-01>dd {
    padding: 0 1rem;
}

@media screen and (max-width: 767px) {
    .checkbox-01 {
        display: block;
    }
}

/*--------------------------------------
 ためる
--------------------------------------*/
.saving #saving01.headline {
    margin-top: 6rem;
}
@media screen and (max-width: 767px) {
    .saving #saving01.headline {
        margin-top: 4rem;
    }
}

/*--------------------------------------
 かりる
--------------------------------------*/
.loan #loan01.headline {
    margin-top: 6rem;
}
@media screen and (max-width: 767px) {
    .loan #loan01.headline {
        margin-top: 4rem;
    }
}


/*--------------------------------------
 ローン 商品テンプレート
--------------------------------------*/
.loan-product .step-box-area {
    margin: 0 auto 60px;
}
.loan-product .step-box-area .step-box {
    padding: 40px;
}
.loan-product .step-box .grid-box {
    margin: 3rem auto 0;
}
/* 共通スタイル */
.grid-box .step-detail-box-01,
.grid-box .step-detail-box-02,
.grid-box .step-detail-box-03 {
  background-color: #fff;
  padding: 4rem 3rem;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0; /* gapに任せるので余分なmarginなし */
}

/* grid-box 上書き：共通で gap: 10px */
.loan-product .grid-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0 10px;
  margin-bottom: 2rem;
}

/* --- 各カラム幅指定 --- */

/* 6カラム = step-detail-box-01 */
.grid-box .step-detail-box-01 {
  flex: 0 0 calc((100% - 10px * 5) / 6);
}

/* 4カラム = step-detail-box-02 */
.grid-box .step-detail-box-02 {
  flex: 0 0 calc((100% - 10px * 3) / 4);
}

/* 3カラム = step-detail-box-03 */
.grid-box .step-detail-box-03 {
  flex: 0 0 calc((100% - 10px * 2) / 3);
}

@media screen and (max-width: 768px) {
  .grid-box .step-detail-box-03 {
    flex: 0 0 100%;
  }

  /* スマホで横２枚 */
  .grid-box .step-detail-box-01,
  .grid-box .step-detail-box-02 {
    flex: 0 0 calc(50% - 12px); /* 2個並んでgap 24pxを均等に割ったサイズ */
  }
}
.loan-product .step-box .grid-box .step-detail-box-01 img,
.loan-product .step-box .grid-box .step-detail-box-02 img,
.loan-product .step-box .grid-box .step-detail-box-03 img {
    width: 48px;
    margin: 0 auto 1.5rem;
}
.loan-product .step-box .grid-box .step-detail-box-01 p,
.loan-product .step-box .grid-box .step-detail-box-02 p,
.loan-product .step-box .grid-box .step-detail-box-03 p {
    margin: 0;
    width: 100%;
}
.loan-product .step-box-area .step-box .step-detail .step-detail-space,
.loan-product .step-box-area .step-box .step-detail .subheading-03 {
    margin-left: 128px;
}
.loan-product .link-arrow:not(:last-child) {
    width: 250px;
}
.loan-product .step-box-area .step-box .step-detail .step-detail-space {
    margin-bottom: 0;
}
.loan-product .loan-features .list-box-01-inner.column-01,
.loan-product .loan-features .grid-06.column-01 {
    margin-bottom: 0;
}
.loan-product #apply .grid-06.column-01 {
    margin-bottom: 0;
}
@media screen and (max-width: 767px) {
    .loan-product .step-box .grid-box {
        display: flex;
        margin: 0;
    }
    
    .loan-product .step-box .grid-box .step-detail-box-01 {
        width: 48%;
        padding: 4rem 2rem;
        margin: 1.5rem 0 0;
    }
    .loan-product .step-box .grid-box .step-detail-box-02 {
        width: 48%;
        padding: 4rem 2rem;
        margin: 1.5rem 0 0;
    }
    .loan-product .step-box .grid-box .step-detail-box-02 p {
        font-size: 1.4rem;
    }
    .loan-product .step-box .grid-box .step-detail-box-03 {
        width: 100%;
        padding: 2rem;
        min-height: 180px;
        margin: 1.5rem 0 0;
    }
    .loan-product .step-box-area {
        margin: 0 auto 40px;
    }
    .loan-product .step-box-area .step-box .step-detail .step-detail-space {
        margin: 1.5rem 0 0;
    }
    .loan-product .step-box-area .step-box .step-detail .subheading-03 {
        margin: 2.5rem 0 0;
        font-size: 2rem;
    }
    .loan-product .step-box-area .step-box,
    .loan-product .step-box-area .step-box:last-child {
        padding: 40px 20px 20px;
    }
    .loan-product .list-box-01 .list-box-01-inner {
        margin-bottom: 2rem;
    }
    .loan-product .list-box-01 .list-box-01-inner .rate {
        margin: 1.2rem 0;
    }
    .loan-product .loan-features .list-box-01-inner.column-01:first-child,
    .loan-product .loan-features .grid-06.column-01:first-child {
        margin-bottom: 2rem;
    }
    .loan-product .loan-features .list-box-01-inner.column-01 + .list-box-01-inner.column-01{
        margin-bottom: 2rem;
    }
    .loan-product .loan-features .step-box-area .step-box .step-detail {
        margin-bottom: 0;
    }
    .loan-product .loan-features .column-01 .column-headline {
        font-size: 2rem;
    }
    .loan-product .loan-features .column-01 .column-btn-02 a {
        font-size: 2rem;
    }
    .loan-product #apply .column-01 .column-headline {
        font-size: 2rem;
    }
    .loan-product #apply .grid-06.column-01:first-child {
        margin-bottom: 2rem;
    }
    .loan-product #apply .grid-06.column-01 + .grid-06.column-01{
        margin-bottom: 2rem;
    }
}


/*--------------------------------------
 個人のお客さま向けインターネットバンキング（W）
--------------------------------------*/
.kib .main-header-title-head-text {
    font-size: 3.4rem;
}
.kib .merit-box {
    margin: 0 auto 40px;
}
.kib .merit-box .merit-box-number span {
    width: 35%;
    line-height: initial;
    margin-bottom: 3px;
}
.kib .service-merit .btn-link-list .btn-link-02 {
    width: 448px;
    height: 64px;
}
.kib .kib-news .btn-link-list .btn-link-05 {
    width: 280px;
    height: 44px;
}
@media screen and (max-width: 767px) {
    .kib .main-header-title-head-text {
        font-size: 2.0rem;
    }
    .kib .anchor-link .grid-box>div:first-child {
        margin-bottom: 40px;
    }
    .kib .service-merit .btn-link-list .btn-link-02 {
        width: 100%;
    }
    .kib .kib-news .btn-link-list .btn-link-05 {
        width: 100%;
    }
}

/*--------------------------------------
 法人のお客さま向けインターネットバンキング（W）
--------------------------------------*/
.hib .main-header-title-head-text {
    font-size: 3rem;
}
.hib .main-header-title-head-sub {
    font-size: 1.8rem;
}
.hib .merit-box .merit-box-number span {
    width: 35%;
    line-height: initial;
    margin-bottom: 3px;
}
.hib .service-merit .btn-link-list .btn-link-02 {
    width: 448px;
    height: 64px;
}
.hib .service-merit .btn-link-list .btn-link-02 {
    width: 448px;
    height: 64px;
}
@media screen and (max-width: 767px) {
    .hib .main-header-title-head-sub {
        font-size: 1.4rem;
    }
    .hib .main-header-title-head-text {
        font-size: 2.0rem;
    }
    .hib .anchor-link .grid-box>div:first-child {
        margin-bottom: 40px;
    }
    .hib .service-merit .btn-link-list .btn-link-02 {
        width: 100%;
    }
}

/*--------------------------------------
 法人のお客さま向けインターネットバンキング（S）
--------------------------------------*/
.hib-s .main-header-title-head-text {
    font-size: 3rem;
}
.hib-s .main-header-title-head-sub {
    font-size: 1.8rem;
}
.hib-s .merit-box .merit-box-number span {
    width: 35%;
    line-height: initial;
    margin-bottom: 3px;
}
.hib-s .service-merit .btn-link-list .btn-link-02 {
    width: 448px;
    height: 64px;
}
@media screen and (max-width: 767px) {
    .hib-s .main-header-title-head-sub {
        font-size: 1.4rem;
    }
    .hib-s .main-header-title-head-text {
        font-size: 2.0rem;
    }
    .hib-s .anchor-link .grid-box>div:first-child {
        margin-bottom: 40px;
    }
    .hib-s .service-merit .btn-link-list .btn-link-02 {
        width: 100%;
    }
}

/*--------------------------------------
 しんきん電子記録債権サービス
--------------------------------------*/
.densai .main-header-title-head-text {
    font-size: 3rem;
}
.densai .main-header-title-head-sub {
    font-size: 1.8rem;
}
.densai .merit-box .merit-box-number span {
    width: 35%;
    line-height: initial;
    margin-bottom: 3px;
}
.densai .service-merit .btn-link-list .btn-link-02 {
    width: 448px;
    height: 64px;
}
.densai #info .news-list li:first-child {
    padding-top: 0;
}
@media screen and (max-width: 767px) {
    .densai .main-header-title-head-text {
        font-size: 1.8rem;
    }
    .densai .main-header-title-head-sub {
        font-size: 1.4rem;
    }
    .densai .anchor-link .grid-box>div:first-child {
        margin-bottom: 40px;
    }
    .densai .service-merit .btn-link-list .btn-link-02 {
        width: 100%;
    }
}

/*--------------------------------------
 でんさい
--------------------------------------*/

.top-reset-p {
    padding-top: 0;
}

/*--------------------------------------
 しんきん通帳アプリ
--------------------------------------*/

/* しんきん通帳アプリでできること */
@media screen and (max-width: 767px) {
    .ability .layout-box-01 .layout-box-01-inner:first-of-type.bottom-reset {
        margin-bottom: 2rem;
    }
    .ability .layout-box-01 .layout-box-01-inner .text {
        text-align: left;
        margin-bottom: 1rem;
    }
    .ability .subheading-03 {
        font-size: 2rem;
    }
}

/* しんきん通帳アプリご利用方法 */
.appbook .how-to-shinkin-app .app-book-box {
    display: flex;
    align-items: center;
}
.appbook .how-to-shinkin-app .app-box {
    align-items: center;
    padding: 2.4rem;
    margin-left: 3.3rem;
    width: 648px;
    background-color: #F5F5F5;
}
.appbook .how-to-shinkin-app .app-box-item {
    display: flex;
    flex-wrap: wrap;
}
.appbook .how-to-shinkin-app .app-box-item:first-child {
    margin: 0 4rem 0 0;
}
.appbook .how-to-shinkin-app .app-box-item h4 {
    font-size: 1.8rem;
    margin: 0 0 11px;
    width: 100%;
    text-align: left;
}
.appbook .how-to-shinkin-app .app-box-item-image {
    display: flex;
    align-items: center;
}
.appbook .how-to-shinkin-app .app-box-item-image .qr-image {
    margin: 0 2rem 0 0;
}
.appbook .how-to-shinkin-app .step-box-02 img {
    width: auto;
}

.appbook .how-to-shinkin-app .step-box-02 .step-detail,
.appbook .how-to-shinkin-app .step-box-03 .step-detail,
.appbook .how-to-shinkin-app .step-box-04 .step-detail,
.appbook .how-to-shinkin-app .step-box-05 .step-detail,
.appbook .how-to-shinkin-app .step-box-06 .step-detail,
.appbook .how-to-shinkin-app .step-box-07 .step-detail,
.appbook .how-to-shinkin-app .step-box-08 .step-detail{
    width: 518px;
}
.appbook .how-to-shinkin-app .step-box-01 .step,
.appbook .how-to-shinkin-app .step-box-06 .step,
.appbook .how-to-shinkin-app .step-box-07 .step,
.appbook .how-to-shinkin-app .step-box-08 .step {
    width: 474px;
}
.appbook .how-to-shinkin-app .step-box p {
    font-weight: normal;
}
.appbook .how-to-shinkin-app .step-box .em {
    font-weight: bold;
}
.appbook .how-to-shinkin-app .app-book-box .book-image {
    display: block;
    margin: 0 auto 1rem;
    width: 141px;
}
.appbook .how-to-shinkin-app .app-book-box .book-app-image {
    display: block;
    width: 160px;
}
.appbook .step-box-area .step-box .step-image-01 {
    width: 474px;
}
.appbook .step-box-area .step-box .step-image-02 {
    width: 235px;
}
.appbook .step-box-area .step-box .step-image-03 {
    width: 474px;
}
@media screen and (max-width: 767px) {

    /* しんきん通帳アプリご利用方法 */
    .appbook .how-to-shinkin-app .app-book-box {
        flex-wrap: wrap;
    }
    .appbook .how-to-shinkin-app .app-box {
        width: 100%;
        flex-wrap: wrap;
        margin-left: 0;
    }
    .appbook .how-to-shinkin-app .app-book-box .book-image {
        display: block;
        margin: 0 auto 1rem;
        width: 94px;
    }
    .appbook .step-box-area .grid-box .step {
        width: 100%;
    }
    .appbook .step-box-area .step-box .step {
        width: 100%;
        margin: 0 auto;
    }
    .appbook .how-to-shinkin-app .app-box-item {
        width: 100%;
        margin: 0 auto;
        justify-content: center;
    }
    .appbook .how-to-shinkin-app .app-box-item:first-child {
        margin: 0 auto 2.6rem;
    }
    .appbook .how-to-shinkin-app .app-box-item h4 {
        text-align: center;
    }
    .appbook .how-to-shinkin-app .app-box .qr-image {
        width: 90px;
    }
    .appbook .how-to-shinkin-app .step-box-02 .step-detail,
    .appbook .how-to-shinkin-app .step-box-03 .step-detail,
    .appbook .how-to-shinkin-app .step-box-04 .step-detail,
    .appbook .how-to-shinkin-app .step-box-05 .step-detail,
    .appbook .how-to-shinkin-app .step-box-06 .step-detail,
    .appbook .how-to-shinkin-app .step-box-07 .step-detail,
    .appbook .how-to-shinkin-app .step-box-08 .step-detail{
        width: 100%;
    }
    .appbook .how-to-shinkin-app .step-box-02 img,
    .appbook .how-to-shinkin-app .step-box-03 img,
    .appbook .how-to-shinkin-app .step-box-04 img,
    .appbook .how-to-shinkin-app .step-box-05 img,
    .appbook .how-to-shinkin-app .step-box-06 img,
    .appbook .how-to-shinkin-app .step-box-07 img,
    .appbook .how-to-shinkin-app .step-box-08 img {
        margin: auto;
    }
    .appbook .step-box-area .step-box .step-image-01 {
        max-width: 350px;
        margin: 0 auto;
        width: 90%;
    }
    .appbook .step-box-area .step-box .step-image-02 {
        width: 70%;
        max-width: 310px;
        margin: 0 auto;
    }
    .appbook .step-box-area .step-box .step-image-03 {
        width: 70%;
        max-width: 310px;
        margin: 0 auto;
    }
}

/* 通帳アプリへの切替方法 */

.appbook .how-to-switch .step-box-02 .step-detail,
.appbook .how-to-switch .step-box-03 .step-detail {
    width: 518px;
}
.appbook .how-to-switch .step-box-01 .step {
    width: 235px;
}
.appbook .how-to-switch .step-box-02 .step {
    width: 474px;
}
.appbook .how-to-switch .step-box-03 .step {
    width: 474px;
}
.appbook .how-to-switch .step-box p {
    font-weight: 300;
}
.appbook .how-to-switch .step-box .em {
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .appbook .how-to-switch .step-box-02 .step-detail,
    .appbook .how-to-switch .step-box-03 .step-detail {
        width: 100%;
    }
    .appbook .how-to-switch .step-box-02 .step,
    .appbook .how-to-switch .step-box-03 .step {
        width: 100%;
    }
    .appbook .how-to-switch .step-box-01 img,
    .appbook .how-to-switch .step-box-02 img,
    .appbook .how-to-switch .step-box-03 img,
    .appbook .how-to-switch .step-box-04 img {
        margin: auto;
    }
    .appbook .how-to-switch .step-box-01 .step{
        width: 70%;
        max-width: 310px;
        margin: 0 auto;
    }
    .step-box-area .step-box .step.step-box-02,
    .step-box-area .step-box .step.step-box-03{
        width: 70%;
        max-width: 310px;
        margin: 0 auto;
    }
}

/*--------------------------------------
 店舗・ATMのご案内
--------------------------------------*/
.store-atm .store-info-table {
    width: 735px;
}
/* 営業時間のご案内 */
.store-atm .business-hour table {
    margin-bottom: 3.2rem;
}
.store-atm .business-hour .table-outline-01 tbody th,
.store-atm .business-hour .table-outline-01 td  {
    font-weight: normal;
}
@media screen and (max-width: 767px) {
    .store-atm .store-info-table {
        width: 100%;
    }
    .store-atm .business-hour table {
        margin-bottom: 2.2rem;
    }
}

/*--------------------------------------
 金利一覧ページ
--------------------------------------*/
.kinri #kinri01 .headline {
    margin-top: 6rem;
}
@media screen and (max-width: 767px) {
    .kinri #kinri01 .headline {
        margin-top: 4rem;
    }
}

/*--------------------------------------
 手数料一覧ページ
--------------------------------------*/
.tesuryo #tesuryo01.headline {
    margin-top: 6rem;
}
@media screen and (max-width: 767px) {
    .tesuryo #tesuryo01.headline {
        margin-top: 4rem;
    }
}

/*--------------------------------------
 トップページスライド　メニューをメインカラーに変換
--------------------------------------*/
@media screen and (min-width: 768px) {

  /* メニュー文字をメインカラーに変更 */
  body:has(.slick-slide.menu-maincolor.slick-active) .header {
      li a {color: var(--text-main-color);}
      .gnavi-upper:before {background: rgb(var(--main-color-rgb), .5)}
      .gnavi-lower .drop .drop-nav li a:before {
          background: url(../img/icon_arrow01_01.svg) no-repeat center / contain;
      }
  }
  
  /* 背景グラデーション */
  body:has([class*="menu-back-"]) .mv-inner::after{
    position: absolute;
    width: 100%;
    height: 130px;
    left: 0;
    top: 0;
    content: "";
 }
 
  body:has(.menu-back-01.slick-active) .mv-inner::after{
    background: linear-gradient(rgba(0, 0, 0, .05) 0%, rgba(0, 0, 0, .05) 60%, rgba(0, 0, 0, .02) 90%, rgba(0, 0, 0, 0) 100%);
  }
  body:has(.menu-back-02.slick-active) .mv-inner::after{
    background: linear-gradient(rgba(50, 50, 50, .7) 0%, rgba(50, 50, 50, .7) 60%, rgba(50, 50, 50, .1) 90%, rgba(50, 50, 50, 0) 100%);
  }
  body:has(.menu-back-03.slick-active) .mv-inner::after{
    background: linear-gradient(rgba(255, 255, 255, .4) 0%, rgba(255, 255, 255, .3) 60%, rgba(255, 255, 255, .2) 90%, rgba(255, 255, 255, 0) 100%);
  }
  
}

/*--------------------------------------
 404ページ
--------------------------------------*/
.not-found .outer-06 {
    width: 996px;
    padding: 4rem;
}
.not-found .main-text {
    font-weight: bold;
    margin-bottom: 1.8rem;
    font-size: 2rem;
}
.not-found .btn-link-list a {
    width: 486px;
    height: 67px;
}
@media screen and (max-width: 767px) {
    .not-found .outer-06 {
        width: 100%;
        padding: 2rem;
        margin-bottom: 4rem;
    }
    .not-found .main-text {
        font-size: 1.8rem;
        text-align: center;
    }
    .not-found .btn-link-list li:not(:last-of-type) {
        margin-bottom: 2rem;
    }
    .not-found .btn-link-list a {
        width: 100%;
    }
    .not-found .content img {
        width: 225px;
    }
    .not-found .bottom-space-03 {
        margin-bottom: 4rem;
    }
}

/*--------------------------------------
 お問い合わせフォーム
--------------------------------------*/
.contact-form-text .text01 {
    margin-bottom: 2rem;
}
.contact-form-text .text02 {
    margin-bottom: 2rem;
}
.contact-form-text .text03 {
    margin-bottom: 4rem;
}
.contact-form .form-table {
    margin: 0 auto 60px;
    width: 100%;
    table-layout: fixed;
}

.contact-form .form-row {
    border-bottom: 1px solid #E0E0E0;
    display: flex;
    align-items: center;
}

.contact-form .form-notice {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 500;
    margin: 0;
}

.contact-form .form-index {
    width: 320px;
    display: flex;
    align-items: center;
    text-align: left;
    padding: 30px 0 30px 16px;
    flex-wrap: wrap;
}

.contact-form .form-input {
    border: 1px solid #B8B8B8;
    border-radius: 4px;
    height: 44px;
    padding: 9px;
    font-size: 1.6rem;
}

.contact-form .form-margin-bottom {
    margin-bottom: 16px;
}

.contact-form .form-margin-top {
    margin-top: 16px;
}

.contact-form .form-input.type01 {
    width: 500px;
}
.contact-form .form-input.type02 {
    width: 697px;
}
.contact-form .form-input.type03 {
    width: 240px;
}
.contact-form .form-input.type04 {
    width: 100%;
}
.contact-form .form-input.type05 {
    width: 80px;
}
.contact-form .form-input.type06 {
    width: 50px;
}
.contact-form .form-input.form-input-error {
    border-color: #EB2C2C;
    background: linear-gradient(0deg, rgba(235, 44, 44, 0.05), rgba(235, 44, 44, 0.05)), #FFFFFF;
}

.contact-form .form-input-area {
    padding: 20px 20px 20px 16px;
    width: calc(100% - 320px);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.contact-form .form-select-area {
    position: relative;
}
.contact-form .form-select {
    width: 500px;
    height: 44px;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
}
.contact-form .form-select-area::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    top: calc(50% - 1px);
    right: 16px;
    width: 10px;
    height: 10px;
    border-right: 3px solid #292929;
    border-bottom: 3px solid #292929;
    transform: translateY(-50%) rotate(45deg);
}

.contact-form .label-required {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 0 12px;
    padding: 2px 8px;
    border-radius: 3px;
    background-color: #FF8E09;
    color: #fff;
    font-size: 1.2rem;
    transform: translateY(-2px);
}

.contact-form .error-message {
    position: relative;
    font-size: 1.4rem;
    margin: 10px 0 0;
    padding-left: 26px;
    width: 100%;
}
.contact-form .error-message::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 18px;
    height: 18px;
    margin: auto;
    background: url(../common/img/icon_attention.svg) no-repeat center / contain;
    content: '';
}

/* 確認・送信ボタン */
.contact-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    text-decoration: none;
    outline: 0;
    border: none;
    border-radius: 4px;
    text-align: center;
    position: relative;
}
.contact-form button::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: auto;
    right: 1.2rem;
    width: 22px;
    height: 22px;
    margin: auto;
    background: url(../common/img/icon_arrow01_white.svg) no-repeat center / contain;
    transform: rotate(-90deg);
    content: '';
}
.contact-form .button-01 {
    background-color: var(--main-color);
    color: #FFF;
    width: 400px;
    height: 80px;
    font-size: 2rem;
    font-weight: bold;
}

.contact-form button.disabled {
    background-color: #D6D6D6;
}

.contact-form button:hover {
    opacity: 0.6;
}
    
/* 各項目の個別対応 */
/* 性別 */
.contact-form .radio-list {
    display: flex;
    margin: 0;
}

.contact-form .radio-item {
    margin: 0;
}
.contact-form .radio-item label {
    cursor: pointer;
}
.contact-form .radio-item:not(:first-of-type) {
    margin: 0 0 0 40px;
}

.contact-form input[type=radio] {
    margin: 0 5px 0 0;
    width: 28px;
    height: 28px;
    cursor: pointer;
}

/* 住所 */
.contact-form .form-address .form-notice:first-of-type {
    margin: 0 8px 0 0;
}
.contact-form .form-address .form-notice:last-of-type {
    margin: 0 0 0 8px;
}

/* メールアドレス */
.contact-form .form-mail .form-notice {
    margin: 0 0 0 8px;
}

/* お問い合わせ内容 */
.contact-form .form-message .form-textarea {
    height: 294px;
    resize: vertical;
}
.contact-form .form-message .text-notice {
    margin: 12px 0 0;
}

.contact-form .form-select {
    color: var(--text-color);
}

.contact-form .link-arrow {
    margin: 0 auto 1.5rem;
}


/* 同意するのチェックボックス */
.contact-form .check-area {
    margin: 60px auto 40px;
    text-align: center;
    position: relative;
}

.contact-form .check-area input[type="checkbox"] {
    position: absolute;
    top: 2px;
}

.contact-form .check-area input[type="checkbox"] + label {
    display: none;
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding-left: 40px;
}

.contact-form .check-area input[type="checkbox"] + label::before {
    content: "";
    position: absolute;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 28px;
    height: 28px;
    margin-top: -10px;
    left: 0;
    top: 9px;
    background: #fff;
    border-radius: 3px;
    border: 1px solid #B8B8B8;
}

.contact-form .check-area input[type="checkbox"]:checked + label::before {
    border-color: #fff;
    background: var(--main-color);
}

.contact-form .check-area input[type="checkbox"]:checked + label::after {
    content: "";
    position: absolute;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 14px;
    height: 8px;
    margin-top: -4px;
    top: 50%;
    left: 8px;
    transform: rotate(-45deg);
    background: var(--main-color);
    border-bottom: 2px solid;
    border-left: 2px solid;
    border-color: #fff;
}

@media screen and (max-width: 767px) {
    .contact-form .form-row {
        flex-wrap: wrap;
    }
    .contact-form .form-input-area {
        width: 100%;
        padding: 20px 12px;
    }
    .contact-form .form-index {
        width: 100%;
        padding: 20px 12px 0 12px;
    }
    .contact-form .form-input.type01 {
        width: 100%;
    }
    .contact-form .form-input.type02 {
        width: 100%;
    }
    .contact-form .form-input.type03 {
        width: 100%;
    }

    .contact-form .form-select {
        width: 100%;
    }
    .contact-form .form-select-area {
        width: 100%;
    }

    /* 各項目の個別対応 */
    /* 性別 */
    .contact-form .radio-list {
        display: block;
    }
    .contact-form .radio-item:not(:first-of-type) {
        margin: 20px 0 0 0;
    }
    /* 住所 */
    .contact-form .form-address .form-notice:last-of-type {
        font-size: 1.2rem;
    }
    .contact-form .form-address .form-input:first-of-type {
        width: 98px;
    }
    /* メールアドレス */
    .contact-form .form-mail .form-notice {
        margin: 8px 0 0 0;
    }
    /* 確認・送信ボタン */
    .contact-form button {
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        text-decoration: none;
        outline: 0;
        border: none;
        border-radius: 4px;
        text-align: center;
    }
    .contact-form .check-area {
        margin: 40px auto;
    }
    .contact-form .button-01 {
        width: 279px;
        margin: auto;
    }
}

/*--------------------------------------
 新着情報ページ用コンテンツ
--------------------------------------*/
.news-list div.date {
    white-space: nowrap;
}

.news-list .new-01 div.date:after {
    content: "NEW";
    padding: 3px 1.3rem;
    background: var(--main-color);
    border-radius: 3px;
    margin-left: 1rem;
    color: #FFF;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
}
ul.news-list-top > li {
    padding: 2.1rem 1.8rem;
}
/*--------------------------------------
 トップページ　重要なお知らせ・ご注意ください用コンテンツ
--------------------------------------*/
.news-list .new-02 div.txt a:after {
    content: "NEW";
    padding: 3px 1.3rem;
    background: var(--main-color);
    border-radius: 3px;
    margin-left: 1rem;
    color: #FFF;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
	.info-content .news-list > li {
    	display: flex;
    	padding: 1.2rem 1.8rem;
	}
	.info-content .news-list > li .txt {
    	width: calc(100% - 124px);
    	padding-left: 16px;
	}
	.info-content .news-list > li .txt a {
    	font-size: 1.6rem;
    	display: inline-block;
 }
}



/* =====================
 削除予定（ib-info/ib-login/hib-login）
===================== */


/*--------------------------------------
 IB
--------------------------------------*/
/* タイトル画像上ポイント画像 */
.main-header-title>div {
    position: relative;
}

.main-header-title>div ul {
    position: absolute;
    top: 2rem;
    right: 0;
}

.main-header-title>div ul li img {
    width: 325px;
    vertical-align: top;
}

.ib-info {
    /* インターネットバンキングお知らせ */
    display: table;
    width: 1120px;
    margin: 30px auto;
}

.ib-info>dl,
.ib-info>ul,
.ib-info>div {
    display: table-cell;
}

.ib-info>dl {
    width: 17rem;
    padding: 0 0.5rem;
    border-right: 1px #0092cb solid;
    vertical-align: middle;
    text-align: center;
}

.ib-info>dl dt img {
    padding-bottom: 1rem;
    vertical-align: top;
}

.ib-info>dl dd {
    font-size: 2rem;
    line-height: 1.2;
}

.ib-info>dl dd span {
    display: block;
    font-size: 1.6rem;
}

.ib-info>ul {
    padding: 0 30px;
    border-right: 1px #0092cb solid;
    vertical-align: top;
}

.ib-info>ul li {
    padding: 1rem 0 1rem 1rem;
    font-size: 1.5rem;
    border: none;
}

.ib-info>ul li:first-child {
    padding-top: 1rem;
}

.ib-info>ul li .date {
    width: 14rem;
    color: #333;
    font-weight: 500;
}

.ib-info>div {
    width: 18rem;
    padding: 0 0.5rem;
    vertical-align: middle;
    text-align: right;
}

.ib-info>div a {
    display: inline-block;
    width: 12em;
    padding: 0.5rem;
    color: var(--main-color);
    border-radius: 4px;
    color: #fff;
    font-size: 1.2rem;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .ib-info {
        /* インターネットバンキングお知らせSP */
        display: block;
        width: inherit;
        margin: 0 2rem;
        padding: 3rem 0;
    }

    .ib-info>dl,
    .ib-info>ul,
    .ib-info>div {
        display: block;
    }

    .ib-info>dl {
        display: table;
        width: 100%;
        padding: 0 0 0.8rem;
        margin-bottom: 1rem;
        border-right: none;
        border-bottom: 2px #0092cb solid;
        text-align: left;
    }

    .ib-info>dl dt,
    .ib-info>dl dd {
        display: table-cell;
        vertical-align: middle;
    }

    .ib-info>dl dd span {
        display: inline;
    }

    .ib-info>dl dt {
        width: 3rem;
    }

    .ib-info>dl dt img {
        width: 3rem;
        padding: 0;
    }

    .ib-info>dl dd {
        padding-left: 1rem;
    }

    .ib-info>ul {
        padding: 0;
        margin-bottom: 2rem;
        border-right: none;
    }

    .ib-info>ul li {
        padding: 0 0 1.6rem;
        border-bottom: 1px solid #0092cb;
        margin-bottom: 1.6rem;
        font-size: 100%;
    }

    .ib-info>ul li:first-child {
        padding-top: 1.6rem;
    }

    .ib-info>ul li .date {
        width: 100%;
    }

    .ib-info>div {
        width: inherit;
        padding: 0;
        text-align: left;
    }

    .ib-info>div a {
        position: relative;
        width: 100%;
        padding: 0.5rem;
        color: #03569D;
        font-size: 1.4rem;
        display: inline-block;
    }

    .ib-info>div a:before {
        position: absolute;
        top: 50%;
        left: 1.5rem;
        display: block;
        width: 11px;
        height: 7px;
        content: '';
        -webkit-transform: translateY(-50%) rotate(-90deg);
        transform: translateY(-50%) rotate(-90deg);
        background-size: 100% auto;
        background-repeat: no-repeat;
        background-image: url("../img/icon_arrow01_01.svg");
    }
}

/* インターネットバンキング（ログイン） */
.ib-login {
    /* 個人 電子記録債権 */
    padding: 30px 0;
    background: #E1F6FD;
}

.hib-login {
    /* 法人 */
    padding: 5rem 0 6rem;
    background: #E1F6FD;
}

.hib-login.bg-none {
    background-color: #FFF;
}

.ib-login>dl,
.hib-login>dl {
    display: table;
    width: 940px;
    margin: 0 auto;
    border: 2px #0092cb solid;
    border-radius: 4px;
    background: #FFF;
}

.ib-login>dl>dt,
.ib-login>dl>dd,
.hib-login>dl>dt,
.hib-login>dl>dd {
    display: table-cell;
    vertical-align: middle;
}

.ib-login>dl>dt {
    padding: 2rem 2rem 2rem 16rem;
    background: url("../img/icon_pc.svg") no-repeat 3rem center;
    font-size: 2.4rem;
    line-height: 1.2;
    font-weight: bold;
}

.hib-login>dl>dt {
    padding: 1rem 2rem 1rem 16rem;
    background: url("../img/icon_pc.svg") no-repeat 3rem center;
    font-size: 2.4rem;
    line-height: 1.2;
    font-weight: bold;
}

.ib-login>dl>dt span {
    display: block;
    color: #0092cb;
}

.hib-login>dl>dt>dl>dt span {
    color: #0092cb;
}

.hib-login>dl>dt>dl>dd {
    padding-top: 1rem;
    font-size: 1.6rem;
}

.ib-login>dl>dd,
.hib-login>dl>dd {
    padding: 2rem 3rem 2rem 2rem;
    text-align: right;
}

.hib-login>dl>dd ul li a span {
    display: block;
    font-size: 1.6rem;
}

.hib-login>dl>dd ul li {
    padding: 1rem 0;
}

.ib-login>dl>dd a,
.hib-login>dl>dd ul li a {
    display: inline-block;
    position: relative;
    border-radius: 4px;
    background: #0092cb;
    color: #FFF;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}

.ib-login>dl>dd a {
    width: 14em;
    padding: 2.4rem 1rem;
    font-size: 2.2rem;
}

.hib-login>dl>dd ul li a {
    width: 15em;
    padding: 0.7em;
    font-size: 2rem;
}

.ib-login>dl>dd a:before,
.hib-login>dl>dd ul li a:before {
    position: absolute;
    top: 50%;
    left: 15px;
    width: 16px;
    height: 10px;
    content: '';
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-image: url("../img/icon_arrow01_white.svg");
}

.ib-login>dl>dd a.link-blank:before,
.hib-login>dl>dd ul li a.link-blank:before {
    width: 14px;
    height: 14px;
    -webkit-transform: translateY(-50%) rotate(0);
    transform: translateY(-50%) rotate(0);
    background-image: url("../img/icon_blank_white.svg");
}

@media screen and (max-width: 767px) {
    .hib-login {
        /* インターネットバンキング（ログイン）SP */
        padding: 30px 0 10px;
    }

    .ib-login>dl,
    .hib-login>dl {
        display: block;
        width: inherit;
        margin: 0 2rem;
    }

    .ib-login>dl>dt,
    .ib-login>dl>dd,
    .hib-login>dl>dt,
    .hib-login>dl>dd {
        display: block;
    }

    .ib-login>dl>dt,
    .hib-login>dl>dt {
        padding: 11rem 2rem 2rem 2rem;
        background: url("../img/icon_pc.svg") no-repeat center 2rem;
    }

    .ib-login>dl>dd,
    .hib-login>dl>dd {
        padding: 0 2rem 2rem;
        text-align: left;
    }

    .ib-login>dl>dd a,
    .hib-login>dl>dd ul li a {
        width: 100%;
    }

    .hib-login>dl>dd ul li {
        padding: 0 0 1rem;
    }

    .hib-login>dl>dd ul li:last-child {
        padding: 0;
    }
}


/*
.flow-down（arrow_down.svg）
*/

.flow-down {
    /* 流れ（下矢印） */
    margin-bottom: 30px;
    padding-bottom: 80px;
    background: url("../img/icon_arrow01_01.svg") no-repeat center bottom;
}
.flow-down {
    /* 流れ（下矢印） */
    margin-bottom: 30px;
    padding-bottom: 80px;
    background: url("../img/icon_arrow01_01.svg") no-repeat center bottom;
}


/* =====================
 ↑ 削除予定ここまで
===================== */
