@charset "utf-8";

/*
  ブレイクポイント:
  960px より大 : PC用デザイン
  960px 以下 : SP用デザイン
*/

/* ************************************************
  既存の style.css の設定を打ち消すための設定
************************************************ */
body {
  background-color: #fff;
  color: #505050;
  font-size: 100%;
  /* font-family: "游ゴシック","","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Meiryo,"メイリオ",Helvetica,sans-serif; */
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  line-height: normal;
  overflow-y: scroll;
  min-width: auto;
  -webkit-text-size-adjust: 100%;
}

h2 {
  border-top: none;
  line-height: normal;
  text-align: left;
  margin: 0;
  padding: 0;
  font-weight: bold;
  height: auto;
}

h2 span {
  position: static;
  top: auto;
  background-color: inherit;
}

/* ************************************************
  Bases
  要素型セレクタを使って適用したい必要最低限のスタイルがあれば。
************************************************ */
html {
  /* scroll-behavior: smooth; */
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}


/* ************************************
  レイアウト : ヘッダー上半分の、多重フレックスボックス
  - ly_hdFlexBox              : (ロゴ & (バナー群 & (サブメニュ & 文字サイズ) ) )
    - ly_hdSubFlexBox         : (バナー群 & (サブメニュ & 文字サイズ) )
      - ly_hdBreakableFlexBox : (サブメニュー & 文字サイズ)
      - ly_hdBreakableFlexBox_subFlexBox:
************************************ */
.ly_hdFlexBox {
  /* position: relative; */
}

.ly_hdFlexBox,
.ly_hdBreakableFlexBox {
  display: flex;
  flex-direction: row;
}
/* 大枠 (ロゴ & (バナー群 & (サブメニュ & 文字サイズ) ) ) */
.ly_hdFlexBox {
  justify-content: space-between;
  gap: 16px;
  /* margin-top: 30px; */
  margin-bottom: 36px;
  padding-top: 30px;
  padding-right: 10px;
  padding-left: 10px;
}
/* 中枠 (バナー群 & (サブメニュ & 文字サイズ) ) */
.ly_hdSubFlexBox{
  gap: 16px;
}
/* 小枠 (サブメニュー & 文字サイズ) */
.ly_hdBreakableFlexBox {
  gap: 16px;
  justify-content: flex-end;
  flex-shrink: 0;
  /* height: fit-content; */
  align-items: center;
  height: 70px;
}

@media screen and (max-width: 1400px) {
  .ly_hdBreakableFlexBox {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    height: fit-content;
    font-size: 16px;
  }
}

/* ヘッダ > 改行可能フレックスボックス > サブフレックスボックス(インスタグラム・アイコン & 文字サイズ変更) */
.ly_hdBreakableFlexBox_subFlexBox {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 16px;
  height: fit-content;
}

@media screen and (max-width: 960px) {
  .ly_bannerLinkUnit,
  .ly_hdBreakableFlexBox_subFlexBox,
  .ly_hdBreakableFlexBox {
    display: none;
  }
}

/* ************************************
  レイアウト: グローバルナヴィ。ブロックとしてのグローバルナヴィは後述
  - ly_globalNav
  - js_globalNav
  - is_fixed
************************************ */
.ly_globalNav {
  margin-bottom: 30px;
}
@media screen and (max-width: 1920px) {
  .ly_globalNav {
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media screen and (max-width: 960px) {
  .ly_globalNav {
    display: none;
  }
}

/* is_fixed が付いている場合。 */
.ly_globalNav.is_fixed {}


/*
旧ページのグローバルナヴィの移植
*/
.ly_oldGlobalNav {
  border-bottom: 3px solid #CCCCCC;
}
@media screen and (max-width: 960px) {
  .ly_oldGlobalNav {
    display: none;
  }
}

.bl_oldGlobalNav {
  width: 1000px;
  margin: 20px auto 3px;
  overflow: hidden;
}
@media screen and (max-width: 1000px) {
  .bl_oldGlobalNav {
    width: 96%;
    margin: 40px 2% 3px;
  }
}

.bl_oldGlobalNav_item {
  float: left;
  width: calc(100% / 5);
  text-align: center;
  list-style: none;
  border-left: 1px dashed #cccccc;
}
.bl_oldGlobalNav_item:last-child {
  border-right: 1px dashed #cccccc;
}

.bl_oldGlobalNav_item > a {
  display: block;
  padding-top: 5px;
  padding-bottom: 5px;
}
.bl_oldGlobalNav_item > a:hover {
  color: white;
}

.bl_oldGlobalNav_item__personal > a {
  color: #195178;
}
.bl_oldGlobalNav_item__corp > a {
  color: #4b0082;
}
.bl_oldGlobalNav_item__service > a {
  color: #37A6D3;
}
.bl_oldGlobalNav_item__aboutUs > a {
  color: #008000;
}
.bl_oldGlobalNav_item__discclosure > a {
  color: #FFA500;
}

.bl_oldGlobalNav_item i {
  display: block;
}

.bl_oldGlobalNav_item span {
  font-size: 14.4px;
  line-height: 1.6;
}

/* ************************************
  レイアウト : メインビジュアルから重要なお知らせまでを囲む position:relative の箱。
  - ly_mvRelativeBox
************************************ */
.ly_mvRelativeBox {
  position: relative;
}

/* ************************************************
  .ly_main
*/
.ly_main {
  line-height: 1.6;
}

/* ************************************************
  レイアウト(layout) : 共通コンテンツ
  - ly_cmnConts (common contents)   : max-width: 1,000px の共通コンテンツ枠
    - ly_cmnConts__importantNotices   : 「重要なお知らせ」用の修正
    - ly_cmnConts__accordion          : 「信用組合とは」アコーディオンボックス用の修正
    - ly_cmnConts__campaignsAndNotices: 「キャンペーン・お知らせ」用の修正
    - ly_cmnConts__service            : 「商品サービス」用の修正
    - ly_cmnConts__breadcrumb         : パンクズリスト用
    - ly_cmnConts__individualPageConts : 下層ページのメインコンテンツ用
  - ly_cmnConts_wrapper             : 共通コンテンツ・ラッパ。最大幅の背景描写用。
    - ly_cmnConts_wrapper__personal   : 「個人のお客様」用の修正
    - ly_cmnConts_wrapper__service    : 「商品サービス」用の修正
    - ly_cmnConts_wrapper__topics     : 「トピックス」用の修正
    - ly_cmnConts_wrapper__contacts   : 「緊急時のお問い合わせ」用の修正
    - ly_cmnConts_wrapper__footer     : 「footer」内の共通ラッパーの修正
    - ly_cmnConts_wrapper__breadcrumb : パンクズリストのラッパー
************************************************ */
/* 共通コンテンツ */
.ly_cmnConts {
  /* font-size: inherit; */
  max-width: 1030px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 96px;
  padding-bottom: 96px;
  padding-right: 15px;
  padding-left: 15px;
}

.ly_cmnConts__campaignsAndNotices {
  position: relative;
  margin-top: 96px;
  margin-bottom: 96px;
  padding-top: 0;
  padding-bottom: 0;
}

@media screen and (max-width: 960px) {
  /* 共通 */
  .ly_cmnConts {
    max-width: 530px;
    padding-top: 50px;
    padding-bottom: 80px;
  }

  /* アコーディオン */
  .ly_cmnConts.ly_cmnConts__accordion {
    padding-block: 0;
    margin-top: 40px;
  }

  /* キャンペーン・お知らせ */
  .ly_cmnConts__campaignsAndNotices {
    padding-bottom: 48px;
  }

  /* 商品サービス */
  .ly_cmnConts__service {
    padding-bottom: 64px;
  }
}


/* 共通コンテンツのラッパー */
.ly_cmnConts_wrapper {}

/*
  mvRelativeBox
*/
.ly_mvRelativeBox {
  position: relative;
}
/* 上記を親とした、絶対位置をとる子アイテム */
.ly_mvRelativeBox_absoluteItem {
  position: absolute;
  bottom: 0;
  right: 0;
}


/* 金融庁バナー＆重要なお知らせラッパー */
.ly_cmnConts__bannerAndImportantBox {
  margin-top: 60px;
  padding: 0;
  position: absolute;
  bottom: 16px;
  right: 8px;
  width: min(33.33333%, 650px);
}

@media screen and (max-width: 960px) {
  .ly_cmnConts__bannerAndImportantBox {
    position: static;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    bottom: auto;
    right: auto;
  }
}

/* 共通コンテンツ・「重要なお知らせ」のための修正 */
.ly_cmnConts__importantNotices {
  width: 100%;
  padding: 5%;
  display: flex;
  position: relative;
  align-items: center;
  background-color: #f08200;
  color: #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}
@media screen and (max-width: 960px) {
  .ly_cmnConts__importantNotices {
    width: 100%;
    flex-direction: column;
    align-items: start;
    padding: 20px;
    /* border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px; */
  }
}

/* 共通コンテンツ・アコーディオン用の修正 */
.ly_cmnConts__accordio {
}

/*
  共通コンテンツ・「緊急時のお問い合わせ」の修正
  上部パディングを小さくし、上部ボーダーを付ける。
*/
.ly_cmnConts__contacts {
  padding-top: 40px;
  padding-bottom: 50px
}
.ly_cmnConts_wrapper__contacts {
  border-top: 1px solid #f08200;
}



/* 「個人のお客様」コンテンツ・ラッパー装飾 */
.ly_cmnConts_wrapper.ly_cmnConts_wrapper__personal {
  background-color: #fef5eb;
}
/* 「法人のお客様」コンテンツ・ラッパー装飾 */
.ly_cmnConts_wrapper.ly_cmnConts_wrapper__corporation {
  background-color: #ebf8f2;
}
/* 「商品サービス」コンテンツ・ラッパー装飾 */
.ly_cmnConts_wrapper.ly_cmnConts_wrapper__service {
  background-color: #fafafa;
}

.ly_cmnConts_wrapper__topics{}
.ly_cmnConts_wrapper__contacts{}

/* footer 内のコンテンツボックス */
.ly_cmnConts__footer {
  padding-top: 50px;
  padding-bottom: 50px;
}
.ly_cmnConts_wrapper__footer {
  border-top: 1px solid #4fbf8a;
  background-color: #ebf8f2;
}

/* パンクズリスト */
.ly_cmnConts__breadcrumb {
  color: #505050;
  display: flex;
  padding: 20px 15px;
}
.ly_cmnConts_wrapper__breadcrumb {
  background-color: #eaeaea;
}
.ly_cmnConts__breadcrumb li::after {
  content: ">";
  margin: 0 1rem;
}
.ly_cmnConts__breadcrumb li:last-child::after {
  content: none;
  margin: 0;
}
.ly_cmnConts__breadcrumb li {
  white-space: unset;
}
.ly_cmnConts__breadcrumb a {
  color: inherit;
  text-decoration: underline;
}

/* 個別ページのコンテンツ */
.ly_cmnConts__individualPageConts {}

.bl_ftrAnchorList_item > a[href$=".pdf"]:after {
  content: "\f1c1";
  font-family: FontAwesome;
  margin: 0 0 0 5px;
  color: #ff0000;
}


/* ************************************
  ハンバーガーメニュー。pure-drawer.css で操作するが、display 等をここで管理。
  - bl_hambrugerMenu
************************************ */
.pure-container {
  display: none;
}
@media screen and (max-width: 960px) {
  .pure-container {
    display: block;
    position: relative;
    /* position: absolute; */
    /* top: 0;
    right: 0; */
    /* height: 100% ; */
    -webkit-overflow-scrolling: touch;
  }
}

/* ************************************
  pure-drawer.css の上書き
************************************ */
/* メニューの横幅と背景色 */
.pure-drawer {
  background-color: #fff;
  width: 320px;
}
/*
  オーバーレイ
  - アニメーションの早さ
*/
[data-effect='pure-effect-slide'] .pure-overlay {
  -webkit-transition-duration: 200ms;
  transition-duration: 200ms;
  /* transition-duration: 0ms !important; */
  -webkit-transition-delay: 0ms;
  transition-delay: 0ms;
}
/* オーバーレイの登場時の座標 */
.pure-toggle[data-toggle='right']:checked~.pure-overlay[data-overlay='right'] {
  right: 320px;
}

/* メニュー部分のアニメーションの早さ */
[data-effect='pure-effect-slide'] .pure-drawer {
  -webkit-transition-duration: 200ms;
  transition-duration: 200ms;
  /* transition-duration: 0ms !important; */
}

/* メニュー部分のスクロールを可能にする。 */
[data-effect="pure-effect-slide"] .pure-toggle[data-toggle="right"]:checked ~ .pure-drawer[data-position="right"] {
  overflow-y: auto;
}

/*
  ハンバーガーアイコン全体、閉じた時。座標はこれで変更
  - position: relative は上端固定にしないために必要。
*/
.pure-toggle-label[data-toggle-label="right"] {
  position: relative;
  color: #04A458;
  width: 36px;
  top: 0;
  right: 10px;
  transition-duration: 0s;
}
/* ハンバーガーアイコン全体、開いた時。 */
.pure-toggle:checked ~ .pure-toggle-label {
  /* right: 12px; */
  right: 20px;
}

@media screen and (max-width: 530px) {
  /* 小画面時、やや下に下がりすぎるので、5px 上方に。 */
  .pure-toggle-label[data-toggle-label="right"] {
    top: 0px;
  }
  .pure-toggle:checked ~ .pure-toggle-label {
    right: 20px;
  }
}

@media screen and (max-width: 360px) {
  /* 最小画面時、アイコン位置をさらに調整 */
  .pure-toggle-label[data-toggle-label="right"] {
    right: 0px;
    top: -1px;
  }
  .pure-toggle:checked ~ .pure-toggle-label {
    right: 0px;
  }
}


/* ハンバーガーアイコン下 menu の文字列、閉じた時 */
.el_pureToggleIconTxt {
  font-size: 12px;
  display: inline;
  color: #04A458;
}
/* menu の文字、開いた時、透明 */
.pure-toggle:checked ~ .pure-toggle-label > .el_pureToggleIconTxt {
  opacity: 0;
}

/* ハンバーガーアイコンの三本線、閉じた時 */
.pure-toggle-label .pure-toggle-icon:after {
  color: #04A458;
  font-size: 36px;
  display: block;
  height: 120%;
  content: "\f0c9";
  font-family: FontAwesome;
  transform: translate(0%);
  -webkit-transform: translate(0%);
  -moz-transform: translate(0%);
  -ms-transform: translate(0%);
  -o-transform: translate(0%);
}
/* ハンバーガーアイコンの三本線、開いた時 */
.pure-toggle:checked ~ .pure-toggle-label > .pure-toggle-icon:after {
  content: "\f00d";
}


/* ************************************
  ハンバーガーメニュー内の表示物
  - bl_hmbrgrMenu_heading
  - bl_hmbrgrMenu_bannerUnit
  - bl_hmbrgrMenu_banner
  -bl_hmbrgrMenu_list
    - bl_hmbrgrMenu_list__wide
  - bl_hmbrgrMenu_instagramAnchor
  - bl_hmbrgrMenu_soleLink
  - bl_hmbrgrMenu_contactUnit
  - bl_contactCard__inSubMenu (bl_contactCard の mod)
************************************ */

/* 見出し */
.bl_hmbrgrMenu_heading {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  color: #04a458;
  margin-top: 45px;
  font-size: 30px;
}

/* ハンバーガーメニューのバナー表示域全体 */
.bl_hmbrgrMenu_bannerUnit {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 25px;
}

/* ハンバーガーメニュー内のバナー１枚 */
.bl_hmbrgrMenu_banner {
  display: block;
}
.bl_bannerLink_img {
  width: 100%;
  height: auto;
}

/* メニュー */
.ly_hmbrgrMenu_list_wrap {
}
.ly_hmbrgrMenu_list {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
/* bl_hmbrgrMenu_list */
/* li */
.ly_hmbrgrMenu_list li {
  width: calc(calc(100% - 10px) /2);
}
.ly_hmbrgrMenu_list li.bl_hmbrgrMenu_list__wide {
  width: 100%;
}

/* a , button */
.bl_hmbrgrMenu_list_anchor,
.js_jumpToCrrentPageId {
  border: solid 2px black;
  display: block;
  height: 100%;
  width: 100%;
  padding: 10px 0;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  cursor: pointer;
}
/* home ボタン */
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__home {
  /* border-color: #04a458;
  color: #04a458; */
  border-color: #333;
  color: #333;
}
/* 個人客 ボタン */
.js_jumpToCrrentPageId.js_jumpToCrrentPageId__personal,
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__personal {
  border-color: #195178;
  color: #195178;
}
/* 法人客 ボタン */
.js_jumpToCrrentPageId.js_jumpToCrrentPageId__corp,
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__corp {
  border-color: #4b0082;
  color: #4b0082;
}
/* サービス・商品 ボタン */
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__service {
  border-color: #37A6D3;
  color: #37A6D3;
}
/* 当組合 ボタン */
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__about {
  border-color: #008000;
  color: #008000;
}
/* ディスクロージャー ボタン */
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__disclosure {
  border-color: #FFA500;
  color: #FFA500;
}
/* 質問・意見 ボタン */
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__mailform {
  border-color: #4b0082;
  color: #4b0082;
}
/* 店舗・atm ボタン */
.bl_hmbrgrMenu_list_anchor.bl_hmbrgrMenu_list_anchor__atm {
  border-color: #E15A78;
  color: #E15A78;
}
/* 店舗・atm ボタンの fontawesome サイズ調整 */
.bl_hmbrgrMenu_list_anchor_fa__atm {
  font-size: 19px;
}
.bl_hmbrgrMenu_list_anchor span::before,
.js_jumpToCrrentPageId span::before {
  vertical-align: inherit;
}


/*
  インスタグラムへのリンク(ハンバーガーメニュー内)
*/
.bl_hmbrgrMenu_instagramAnchor {
  display: inline-flex;
  text-transform: capitalize;
  gap: 10px;
}
/* インスタグラム、ラッパー、X軸方向の配置は、この justify-content で決まる */
.bl_hmbrgrMenu_instagramAnchor_wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90%;
  margin: 20px auto;
}
/* インスタグラムのリンク、アイコン */
.bl_hmbrgrMenu_instagramAnchor img {

}
/* インスタグラムのリンク、文字列 */
.bl_hmbrgrMenu_instagramAnchor span {
  text-transform: capitalize;
  color: #505050;
  display: inline-flex;
  align-items: center;
}

/* リンク群 */
.ly_hmbrgrMenu_soleLinkUnit {
  margin-top: 20px;
  margin-bottom: 25px;
  background-color: #f6f6f6;
}

/* リンク自体 */
.bl_hmbrgrMenu_soleLink {
  display: block;
  padding: 20px 0;
  text-align: center;
  color: #505050;
  border-bottom: 1px solid #c2c2c2;
}
.bl_hmbrgrMenu_soleLink:last-child {
  border-bottom: none;
}

/* ハンバーガーメニュー内のコンタクト一覧 */
.bl_hmbrgrMenu_contactUnit {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 25px;
  margin-bottom: 25px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* 上記のコンタクト一件。後から上書きがあるので詳細度 020 にしている。 */
.bl_contactCard.bl_contactCard__inSubMenu {
  padding: 10px 0;
}

/*
  しんくみATMセンター in ハンバーガーメニュ
*/
/* 上記が営業時間外の際は～ */
.el_cautionaryHeadline.el_cautionaryHeadline__isSubMenu {
  font-size: 12px;
  width: 90%;
  margin: 20px auto 20px auto;
}
.bl_altContact_name.bl_altContact_name__isSubMenu {
  font-size: 24px;
  display: block;
}
.bl_altContact_phoneNumber.bl_altContact_phoneNumber__isSubMenu {
  display: block;
}
/* 平日営業時間内は各店舗まで～ */
.el_small_txt.el_small_txt__isSubMenu {
  font-size: 12px;
  padding: 9px 0;
  margin-bottom: 15px;
  margin-top: 5px;
}


/* ************************************
  ブロック : 南部信用組合のロゴ
  - bl_nanbuLogo
    - bl_nanbuLogo__inHeader
    - bl_nanbuLogo__inFooter
    - bl_nanbuLogo_anchor
    - bl_nanbuLogo_img
************************************ */
.bl_nanbuLogo {
  flex-shrink: 1;
}

.bl_nanbuLogo_anchor {
  display: block;
  max-width: 450px;
  width: 100%;
  height: fit-content;
}

.bl_nanbuLogo_img {
  max-width: 100%;
  vertical-align: bottom;
  vertical-align: top;
  /* object-fit: cover; */
}

@media screen and (max-width: 960px) {
  /* ハンバーガーアイコンの余白を残すサイズに制限 */
  .bl_nanbuLogo {
    /* max-width: calc(100% - 50px); */
    /* max-width: 85%; */
    max-width: 324px;
    max-height: 45px;
    flex-shrink: 0;
  }
  .bl_nanbuLogo_anchor {
    max-width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .bl_nanbuLogo {
    max-width: 266px;
    max-height: 44px;
  }
}

/* ************************************
  ブロック : バナーリンクのユニット
  - bl_bannerLinkUnit
************************************ */
.bl_bannerLinkUnit {
  flex-grow: 1;/* 兄弟フレックスアイテム間で、余剰幅を自らの幅とする時の、もらう幅の割合。 */
  flex-shrink: 2;/* 兄弟フレックスアイテム間で不足する幅を自ら縮小して負担しあうときの負担割合 */
  display: flex;
  flex-direction: row;
  justify-content: right;
  gap: 1%;
}
@media screen and (max-width: 960px) {
  .bl_bannerLinkUnit {
    display: none;
  }
}


/* ************************************
  ブロック : バナーリンク
  - bl_bannerLink
    - bl_bannerLink_img
************************************ */
.bl_bannerLink {
  max-width: 210px;
  height: fit-content;
}
.bl_bannerLink_img {
  max-width: 100%;
  vertical-align: bottom;
}

/* ************************************
  ブロック : ヘッダのリンクリスト(名前が悪いかも)
  - bl_headerLinkList           :
    - bl_headerLinkList_item
    - bl_headerLinkList_anchor
      - bl_headerLinkList_anchor__usefulLinks : アイコン画像用
      - bl_headerLinkList_anchor__opinions    : アイコン画像用
      - bl_headerLinkList_anchor__sitemap     : アイコン画像用
************************************ */
.bl_headerLinkList {
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 32px;
  gap: 12px;
}

.bl_headerLinkList_item {
  white-space: nowrap;
}

.bl_headerLinkList_anchor {
  color: #04a458;
  font-size: 14px;
  /* font-weight: bold; */
  /* text-decoration: none; */
}

/* ************************************
  ブロック : インスタグラム・アイコン
  - bl_iconOfSns
************************************ */
.bl_iconOfSnsAnchor {
  display: block;
  height: 30px;
  width: 30px;
}
.bl_iconOfSnsAnchor_img {
  width: 100%;
  height: auto;
}

/* ************************************
  ブロック : 文字サイズ変更ウィジェット
  - bl_fontSizeChanger
    - bl_fontSizeChanger_ttl
    - bl_fontSizeChanger_buttonUnit
    - bl_fontSizeChanger_btn
  - js_fontSizeChanger
    - js_fontSizeChanger_btn
  #js_fontSizeChanger / .js_fontSizeChanger
************************************ */
.bl_fontSizeChanger {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  height: 32px;
}
.bl_fontSizeChanger_ttl {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  font-size: 14px;
  /* font-weight: bold; */
  height: 100%;
  white-space: nowrap;
}
.bl_fontSizeChanger_buttonUnit {
  display: flex;
  flex-direction: row;
  gap: 8px;
  height: 100%;
}
.bl_fontSizeChanger_btn {
  flex-shrink: 0;
  font-size: 18px;
  line-height: 1.6;
  width: 50px;
  height: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  cursor: pointer;
  border: 2px solid #04A458;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}
.bl_fontSizeChanger_btn.is_active {
  color: #fff;
  background-color: #04A458;
}

@media screen and (max-width: 1400px) {
}

/* ************************************
  ブロック : グローバルナヴィ
  - bl_globalNav  : ul
    - bl_globalNav_item : li
    - bl_globalNav_anchor : a
************************************ */
.bl_globalNav {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 24px;
}

.bl_globalNav_item {}

.bl_globalNav_anchor {
  color: #000;
  font-size: 18px;
  display: flex;
  align-items: center;
  border-bottom-style: solid;
  border-bottom-color: #fff;
  border-bottom-width: 3px;
}
.bl_globalNav_anchor:hover {
  color: #04a458;
  /* text-decoration: underline; */
  border-bottom-color: #04A458;
}
.bl_globalNav_item:last-child .bl_globalNav_anchor:hover {
  color: #fff;
  border-bottom-color: #fff;
}

.bl_globalNav_anchor > img {}


/* ************************************
  ブロック : スライドユニット
  - bl_slideUnit
    - bl_slideUnit_item
************************************ */
.bl_slideUnit {
}
.bl_slideUnit_item {}
/* img ではなく背景画像に変えたので不要か */
.bl_slideUnit img {
  width: 100%;
}

.bl_slideUnit_img {
  width: 100%;
  aspect-ratio: 2.56/1;
  background-position: center;
  background-size: cover;
}

/* インターネットバンキング対応で追加。 */
.bl_slideUnit_imgv2 {
  width: 100%;
  aspect-ratio: 2.56/1;
  background-position: center;
  background-size: cover;
}

/* スライダーの画像パネルを増やしたら、新たな修飾クラス(*__img04等)を作り、ここに画像自体の参照先を書く。 */
.bl_slideUnit_img__img01 {
  background-image: url(../images/main_visuals/mainvisual01.jpg);
}
.bl_slideUnit_img__img02 {
  background-image: url(../images/main_visuals/mainvisual02.jpg);
}
.bl_slideUnit_img__img03 {
  background-image: url(../images/main_visuals/mainvisual03.jpg);
}
.bl_slideUnit_img__img04 {
  background-image: url(../images/main_visuals/mainvisual04.jpg);
}
.bl_slideUnit_img__img05 {
  background-image: url(../images/main_visuals/mainvisual05.jpg);
}
.bl_slideUnit_img__img06 {
  background-image: url(../images/main_visuals/mainvisual06.jpg);
}

/*  */
@media screen and (max-width: 960px) {
  .bl_slideUnit img {
    /* height: 90vh; */
  }
  .bl_slideUnit_img {
    aspect-ratio: 1/1;
  }
  .bl_slideUnit_img__img01 {
    background-image: url(../images/main_visuals/mainvisual01_sp.jpg);
  }
  .bl_slideUnit_img__img02 {
    background-image: url(../images/main_visuals/mainvisual02_sp.jpg);
  }
  .bl_slideUnit_img__img03 {
    background-image: url(../images/main_visuals/mainvisual03_sp.jpg);
  }
  /* インターネットバンキング対応で追加。これ以降、アスペクト比が横長に変わった。 */
  .bl_slideUnit_imgv2 {
    aspect-ratio: 2.56/1;
  }
  .bl_slideUnit_imgv2.bl_slideUnit_img__img01 {
    background-image: url(../images/main_visuals/mainvisual01_1080x422.jpg);
  }
  .bl_slideUnit_imgv2.bl_slideUnit_img__img02 {
    background-image: url(../images/main_visuals/mainvisual02_1080x422.jpg);
  }
  .bl_slideUnit_imgv2.bl_slideUnit_img__img03 {
    background-image: url(../images/main_visuals/mainvisual03_1080x422.jpg);
  }
  .bl_slideUnit_imgv2.bl_slideUnit_img__img04 {
    background-image: url(../images/main_visuals/mainvisual04_1080x422.jpg);
  }
  .bl_slideUnit_imgv2.bl_slideUnit_img__img05 {
    background-image: url(../images/main_visuals/mainvisual05_1080x422.jpg);
  }
  .bl_slideUnit_imgv2.bl_slideUnit_img__img06 {
    background-image: url(../images/main_visuals/mainvisual06_1080x422.jpg);
  }
}

/* スライド画像をアンカーで囲むとき、その a のスタイル */
.el_slideAnchor {
  display: block;
  width: 100%;
  height: 100%;
}

/* スライド画像、PC用とSP用の可視化・不可視化 */
.el_slideImg {
  display: block;
  width: 100%;
  height: auto;
}
.el_slideImg.el_slideImg_sp {
  display: none;
}
@media screen and (max-width: 960px) {
  .el_slideImg.el_slideImg_pc {
    display: none;
  }
  .el_slideImg.el_slideImg_sp {
    display: block;
  }
}

/* ************************************
  Slick.js の Dots
************************************ */
.slick-dots {
  /* position: absolute;
  bottom: 4px; */
}


/* ************************************
  ブロック : 金融庁バナー
  - bl_fsaBanner
    - img
************************************ */
.bl_fsaBanner {
  display: block;
  width: 100%;
  height: fit-content;
  margin-bottom: 12px;
}
@media screen and (max-width: 960px) {
  .bl_fsaBanner {
    margin-bottom: 40px;
  }
}

/* バナー画像自体 */
.bl_fsaBanner img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* ************************************
  ブロック : 重要なお知らせ群
  - bl_importantNoticeUnit
************************************ */
.bl_importantNoticeUnit {
}

/* ************************************
  ブロック : 重要なお知らせ1件
    - bl_importantNotice
      - bl_importantNotice_anchor
        - bl_importantNotice_date
************************************ */
.bl_importantNotice {
  margin-bottom: 16px;
}
.bl_importantNotice:last-child {
  margin-bottom: 0;
}

.bl_importantNotice_anchor {
  color: #fff;
  /* text-decoration: none; */
}
.bl_importantNotice_date {
  /* font-size: 87.5%; */
  font-size: calc(87.5% * 10 / 9);
  display: block;
  font-weight: bold;
}
@media screen and (max-width: 960px) {
  .bl_importantNotice_date {
    margin-bottom: 8px;
  }
}


/* ************************************
  ブロック : アコーディオン
  - bl_accordion
    - bl_accordion_ttl
    - bl_accordion_body
      - bl_accordion_txt
      - bl_accordion_anchor
************************************ */
.bl_accordion {}

.bl_accordion_ttl {
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url("../images/common/grenn_bar.png");
  background-position: center center;
  font-size: calc(187.5% * 10 / 9);
  color: #fff;
  cursor: pointer;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}
@media screen and (max-width: 960px) {
  .bl_accordion_ttl {
    /* font-size: 162.5%; */
    font-size: calc(162.5% * 10 / 9);
  }
}

/* ホバー時の透過。ボーダー色も組み合わせで */
.bl_accordion_ttl:hover {
  opacity: 0.8;
}
.bl_accordion_ttl:hover ~ .bl_accordion_body {
  border-color: rgba(4, 164, 88, 0.8);
}
/* ホバー時の透過、ここまで */

.bl_accordion.is_open .bl_accordion_ttl {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.bl_accordion_ttl::after {
  content: "▼";
  /* font-size: 60%; */
  font-size: calc(60% * 10 / 9);
  margin-left: 1em;
}
.is_open .bl_accordion_ttl::after {
  content: "▲";
}

/* 「信用組合とは」body。通常は不可視 */
.bl_accordion_body {
  display: none;
  /* border: 5px #04a458 solid; */
  border-right: 5px #04a458 solid;
  border-left: 5px #04a458 solid;
  border-bottom: 5px #04a458 solid;
  width: calc(100% - 1px);
  margin-top: -8px;
  color: #363636;
  /* font-size: 112.5%; */
  font-size: calc(112.5% * 10 / 9);
  padding: 40px 50px 30px 50px;
}
/* is_open が付いたとき可視化 */
.bl_accordion.is_open .bl_accordion_body {
  display: block;
}

.bl_accordion_txt {
  margin-bottom: 50px;
  line-height: 2;
}

@media screen and (max-width: 960px) {
  .bl_accordion_body {
    padding: 30px 25px 25px 25px;
  }
  .bl_accordion_txt {
    margin-bottom: 30px;
    line-height: 1.6;
  }
}

.bl_accordion_anchor {
  display: block;
  width: fit-content;
  padding: 0 1em;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  /* text-decoration: none; */
  color: inherit;
  border-bottom: 1px solid #363636;
}
.bl_accordion_anchor:hover {
  border-bottom-color: #04a458;
}

/* ************************************
  ブロック(block)
  共通見出し(cmnHeadline, common head line)
  - bl_cmnHeadline
    - bl_cmnHeadline_subline
    - bl_cmnHeadline__personal
    - bl_cmnHeadline__corporation
    - bl_cmnHeadline__service
    - bl_cmnHeadline__importantNotice
    - bl_cmnHeadline_subline__importantNotice
    - bl_cmnHeadline__individualPage          : 下層ページの h2
    - bl_cmnHeadline_subline__individualPage  : 下層ページ h2 のサブ見出し

************************************ */

/*
  共通見出し(h2)
*/
.bl_cmnHeadline {
  /* font-size: 225%; */
  font-size: calc(225% * 10 / 9);
  line-height: 1.5;
  margin-bottom: 48px;
}
@media screen and (max-width: 960px) {
  .bl_cmnHeadline {
    /* font-size: 162.5%; */
    font-size: calc(162.5% * 10 / 9);
  }
}

/* 「重要なお知らせ」h2修正 */
.bl_cmnHeadline__importantNotice {
  color: inherit;
  /* font-size: 112.5%; */
  font-size: calc(112.5% * 10 / 9);
  margin-bottom: 0;
  margin-right: 7%;
  white-space: nowrap;
}
/* 「重要なお知らせ」サブ見出し */
.bl_cmnHeadline_subline.bl_cmnHeadline_subline__importantNotice {
  display: none;
}

@media screen and (max-width: 960px) {
  .bl_cmnHeadline__importantNotice {
    border-bottom: solid 1px white;
    /* font-size: 150%; */
    font-size: calc(150% * 10 / 9);
    margin-right: 0;
    margin-bottom: 15px;
    padding-bottom: 15px;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .bl_cmnHeadline__individualPage {
    /* font-size: 187.5%; */
    font-size: calc(187.5% * 10 / 9);
  }
}

/* 「個人のお客様」h2修正 */
.bl_cmnHeadline.bl_cmnHeadline__personal {
  color: #f08200;
}
/* 「法人のお客様」h2修正 */
.bl_cmnHeadline.bl_cmnHeadline__corporation {
  color: #259c56;
}
/* 「商品サービス」h2修正 */
.bl_cmnHeadline.bl_cmnHeadline__service {}

.bl_cmnHeadline.bl_cmnHeadline__center {
  text-align: center;
  color: #f08200;
}

/* 下層ページの h2 */
.bl_cmnHeadline__individualPage {
  text-align: center;
  margin: 0 0 60px 0;
}

/* キャンペーン・お知らせページ h2 修正 */
.bl_cmnHeadline__campaignPage {
  text-align: center;
  margin: 0 0 60px 0;
}

/* サブ見出し */
.bl_cmnHeadline_subline {
  display: block;
  /* font-size: 61.5%; */
  font-size: calc(61.5% * 10 / 9);
  text-transform: uppercase;
}
/* 下層ページ「個人ローン」のh2のサブ見出し修飾 */
.bl_cmnHeadline_subline__personalLoanPage {
  text-transform: capitalize;
}


/* ************************************
  ブロック : フレックス化された見出し
  bl_flexedHeadLine
************************************ */
.bl_flexedHeadLine {
  display: flex;
  justify-content: space-between;
  margin-bottom: 54px;
}

/* 上記の左右 */
.bl_flexedHeadLine_leftItem {
}
/* フレックス中にあるh2から mb を消す。フレックスボックスが持っているので */
.bl_flexedHeadLine_leftItem > h2 {
  margin-bottom: 0;
}

.bl_flexedHeadLine_rightItem {
  /* margin-top:10%; */
}


/* ************************************
  ブロック : カード・ユニット
  - bl_cardUnit
    - bl_cardUnit__4cols
    - bl_cardUnit__2cols
    - bl_cardUnit__5cols
    - bl_cardUnit__3cols
    - bl_cardUnit__personalLoans : 下層ページ「個人ローン」のサービス一覧用
************************************ */

/* カード・ユニット共通の設定 */
.bl_cardUnit {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  /* justify-content: space-between; */
  justify-content: center;
  align-items: center;
  column-gap: 10px;
}

.bl_cardUnit li {
  display: block;
}

/* カード・ユニット「キャンペーン・お知らせ」の修正 */
.bl_cardUnit__campaign li {
  width: calc(calc( 100% - 30px ) / 4);
}

/* カード・ユニット「個人のお客様」用修正 */
.bl_cardUnit__personal li {
  width: calc(calc(100% - 30px) / 4);
  /* height: 240px; */
  aspect-ratio: 1;
}

/* カード・ユニット、横長2列の修正 */
.bl_cardUnit__2cols li {
  width: calc( calc(100% - 10px) / 2);
  height: 150px;
}

/* カード・ユニット 5列用の修正 */
.bl_cardUnit__5cols li {
  width: calc(calc(100% - 40px) / 5);
  /* height: 130px; */
  aspect-ratio: 192/130;
}

/* カード・ユニット 3列用 mod (使用箇所: 電話番号) */
.bl_cardUnit__3cols li {
  width: min(320px, calc( calc(100% - 20px) / 3));
  /* height: 100%; */
}

/* 下層ページ「個人ローン」のサービス一覧 */
.bl_cardUnit__personalLoans {
  column-gap: 20px;
  row-gap: 120px;
}
.bl_cardUnit__personalLoans li {
  width: calc( calc(100% - 20px) / 2);
}

@media screen and (max-width: 960px) {
  .bl_cardUnit {
    row-gap: 10px;
  }
  .bl_cardUnit__5cols {
    justify-content: flex-start;
  }
  .bl_cardUnit__campaign li {
    width: calc(calc( 100% - 10px ) / 2);
  }
  .bl_cardUnit__personal li {
    width: calc(calc(100% - 10px) / 2);
    /* height: 240px; */
  }
  .bl_cardUnit__2cols li {
    /* width: 100%; */
    width: calc(calc(100% - 10px) / 2);
    height: auto;
    aspect-ratio: 1/1;
  }
  .bl_cardUnit__5cols li {
    width: calc( calc(100% - 10px) / 2);
  }
  .bl_cardUnit__3cols li {
    width: 100%;
  }
  .bl_cardUnit__personalLoans {
    row-gap: 80px;
  }
  .bl_cardUnit__personalLoans li {
    width: 100%;
  }
}

/* ************************************
  - bl_card
    - bl_card_anchor
    - bl_card_imgWrapper
    - bl_card_body
    - bl_card_ttl
    - bl_card_txt
    - bl_card_tags
      - span
************************************ */
.bl_card {
  display: block;
  overflow: hidden;
  border: 1px solid #000;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}
.bl_card:hover {
  box-shadow: 4px 4px 3px #a9a9a9;
}
/* 直下のアンカー。いっぱいに広げる */
.bl_card_anchor {
  color: #282828;
  display: block;
  height: 100%;
  display: flex;
  flex-direction: column;
  /* justify-content: space-between; */
}
.bl_card_imgWrapper {}
.bl_card_imgWrapper > img {
  /* max-width: 100%; */
  width: 100%;
  vertical-align: bottom;
  object-fit: cover;
}

/* ボディ */
.bl_card_body {
  padding: 18px 9px 18px;
  /* height: 66.66666%; */
  /* height: calc(100% - 83px); */
  line-height: 1.5;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.bl_car_body_upperBox {}

.bl_card_ttl {
  padding-bottom: 8px;
  border-bottom: #000 dashed 2px;
  /* font-size: 100%; */
  font-size: calc(100% * 10 / 9);
}

.bl_card_txt {
  margin-top: 8px;
  /* font-size: 81.25%; */
  font-size: calc(81.25% * 10 / 9);
}

.bl_card_tags {
  color: #919191;
  /* font-size: 87.5%; */
  font-size: calc(87.5% * 10 / 9);
}
.bl_card_tags > span:before {
  content: '#';
}


/* ************************************
  ブロック : シンプルカード。(オレンジ)
  - bl_simpleCard
    - bl_simpleCard_innerBorderedRect
    - bl_simpleCard_anchor
    - bl_simpleCard_imgWrapper
      - img
    - bl_simpleCard_txt
************************************ */
.bl_simpleCard {}

.bl_simpleCard_anchor {
  background-color: #f4a74c;
  display: block;
  width: 100%;
  height: 100%;
  padding: 12px;
}

.bl_simpleCard_anchor:hover {
  background-color: #fff;
}

/* 内部のボーダー */
.bl_simpleCard_innerBorderedRect {
  width: 100%;
  height: 100%;
  position: relative;
  border: 2px dashed #fad6ab;
  background-position: 50% 50%;
  background-size: 47%;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}
/* 親ボックスがホバーされた時にボーダー色を変更 */
.bl_simpleCard_anchor:hover .bl_simpleCard_innerBorderedRect {
  border-color: #f8c487;
}

/* テキスト (ためる・ふやす・かりる・そなえる・便利に使う) */
.bl_simpleCard_txt {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 4rem;
  /* font-size: 137.5%; */
  font-size: calc(137.5% * 10 / 9);
  line-height: 1.5;
  color: #fff;
  position: absolute;
  bottom: 10px;
}
/* テキスト、ホバー時 */
.bl_simpleCard_anchor:hover .bl_simpleCard_txt {
  color: #f8c487;
}

@media screen and (max-width: 530px) {
  .bl_simpleCard_txt {
    /* font-size: 125%; */
    font-size: calc(125% * 10 / 9);
    line-height: 1.3;
    height: 3rem;
    bottom: 8px;
  }
}
@media screen and (max-width: 400px) {
  .bl_simpleCard_txt {
    /* font-size: 106.25%; */
    font-size: calc(106.25% * 10 / 9);
    bottom: 5px;
  }
}

.bl_simpleCard_txt__IB {
  text-align: center;
}

/* 1「ためる・ふやす」の修正 */
.bl_simpleCard_innerBorderedRect__accumulate {
  background-image: url(../images/common/person01_01.png);
}
.bl_simpleCard_anchor:hover .bl_simpleCard_innerBorderedRect__accumulate {
  background-image: url(../images/common/person01_01_hover.png);
}

/* 2.「かりる」の修正 */
.bl_simpleCard_innerBorderedRect__borrow {
  background-image: url(../images/common/person02_01.png);
}
.bl_simpleCard_anchor:hover .bl_simpleCard_innerBorderedRect__borrow {
  background-image: url(../images/common/person02_01_hover.png);
}

/* 3.「そなえる」の修正 */
.bl_simpleCard_innerBorderedRect__prepare {
  background-image: url(../images/common/person03_01.png);
}
.bl_simpleCard_anchor:hover .bl_simpleCard_innerBorderedRect__prepare {
  background-image: url(../images/common/person03_01_hover.png);
}

/* 4.「便利に使う」の修正 */
.bl_simpleCard_innerBorderedRect__convenient {
  background-image: url(../images/common/person04_01.png);
}
.bl_simpleCard_anchor:hover .bl_simpleCard_innerBorderedRect__convenient {
  background-image: url(../images/common/person04_01_hover.png);
}



/* ************************************
  - bl_oblongCard
    - bl_oblongCard_anchor
    - bl_oblongCard_innerBorderedRect
    - bl_oblongCard_img
    - bl_oblongCard_txt
************************************ */
.bl_oblongCard {}

.bl_oblongCard_anchor {
  display: block;
  background-color: #04a458;
  color: #fff;
  width: 100%;
  height: 100%;
  padding: 12px;
  overflow: hidden;
}
.bl_oblongCard_anchor:hover {
  background-color: #fff;
  color: #04a458;
}

.bl_oblongCard_innerBorderedRect {
  display: flex;
  flex-direction: row;
  align-items: center;
  position: relative;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: inherit;
  border: 2px dashed #8ad5b1;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect {
  border-color: #96d5b9;
}

/* before から bg image へ */
.bl_oblongCard_innerBorderedRect {
  background-position: 3% -28%;
}
/* 前者の画像 */
.bl_oblongCard_innerBorderedRect__product {
  background-image: url(../images/common/corp01.png);
}
.bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__product {
  background-image: url(../images/common/corp01_hover.png);
}
.bl_oblongCard_innerBorderedRect__interest {
  background-image: url(../images/common/corp02.png);
}
.bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__interest {
  background-image: url(../images/common/corp02_hover.png);
}

/* 960px以下で「融資商品」の画像サイズ変更 */
@media screen and (max-width: 960px) {
  .bl_oblongCard_innerBorderedRect__product {
    background-image: url(../images/common/corp01L.png);
  }
  .bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__product {
    background-image: url(../images/common/corp01L_hover.png);
  }
}

/* 画像サイズ変更 */
@media screen and (max-width: 530px) {
  .bl_oblongCard_innerBorderedRect__product,
  .bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__product {
    background-size: 67%;
  }
  .bl_oblongCard_innerBorderedRect__interest,
  .bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__interest{
    background-size: 45%;
  }
}

/* .bl_oblongCard_innerBorderedRect::before {
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  align-items: center;
}
.bl_oblongCard_innerBorderedRect__product::before {
  content: url(../images/common/corp01.png);
}
.bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__product::before {
  content: url(../images/common/corp01_hover.png);
}
.bl_oblongCard_innerBorderedRect__interest::before {
  content: url(../images/common/corp02.png);
}
.bl_oblongCard_anchor:hover .bl_oblongCard_innerBorderedRect__interest::before {
  content: url(../images/common/corp02_hover.png);
} */

.bl_oblongCard_txt {
  /* font-size: 150%; */
  font-size: calc(150% * 10 / 9);
  position: absolute;
  /* right: 128px; */
  right: 28%;
  top: auto;
  bottom: auto;
}

@media screen and (max-width: 960px) {
  .bl_oblongCard_innerBorderedRect {
    background-position: 50% 35%;
  }
  .bl_oblongCard_txt {
    bottom: 10px;
    right: auto;
    left: auto;
  }
  .bl_oblongCard_innerBorderedRect.bl_oblongCard_innerBorderedRect__interest {
    background-position: 54% 35%;
  }
  .bl_oblongCard_innerBorderedRect.bl_oblongCard_innerBorderedRect__product {
    /* background-size: 130%; */
  }
}

@media screen and (max-width: 530px) {
  /* 「融資商品」「融資金利」の文字サイズ、530px以下でさらに小さく */
  .bl_oblongCard_txt {
    /* font-size: 125%; */
    font-size: calc(125% * 10 / 9);
  }
}



/* ************************************
  - bl_smallCard
    - bl_smallCard_anchor
    - bl_smallCard_imgWrapper
      - img
    - bl_smallCard_txt
************************************ */
.bl_smallCard {
  background-color: #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}
/* ホバー時に背景色を変更 */
.bl_smallCard:hover {
  background-color: #f4a74c;
}

/* アンカー部分の共通設定。背景画像付き。 */
.bl_smallCard_anchor {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  background-position: 50% 50%;
  background-size: auto;
}
/* ホバーされたアンカーの共通設定 */
.bl_smallCard_anchor:hover {}

@media screen and (max-width:400px) {
  .bl_smallCard_anchor {
    background-size: 70%;
  }
}


/* サービス1「預金のご案内」 修正 */
.bl_smallCard_anchor__deposit {
  background-image: url(../images/common/service01.png);
}
.bl_smallCard_anchor__deposit:hover {
  background-image: url(../images/common/service01_hover.png);
}

/* サービス2「金利」 修正 */
.bl_smallCard_anchor__interest {
  background-image: url(../images/common/service02.png);
}
.bl_smallCard_anchor__interest:hover {
  background-image: url(../images/common/service02_hover.png);
}

/* サービス3「手数料」 修正 */
.bl_smallCard_anchor__fee {
  background-image: url(../images/common/service03.png);
}
.bl_smallCard_anchor__fee:hover {
  background-image: url(../images/common/service03_hover.png);
}

/* サービス4「店舗」 修正 */
.bl_smallCard_anchor__shop {
  background-image: url(../images/common/service04.png);
}
.bl_smallCard_anchor__shop:hover {
  background-image: url(../images/common/service04_hover.png);
}

/* サービス5「しんくみ住宅ローン」 修正 */
.bl_smallCard_anchor__housingLoan {
  background-image: url(../images/common/service05.png);
}
.bl_smallCard_anchor__housingLoan:hover {
  background-image: url(../images/common/service05_hover.png);
}

/* テキスト(預金のご案内・金利・手数料・店舗ATM・しんくみ住宅ローン) */
.bl_smallCard_txt {
  /* font-size: 100%; */
  font-size: calc(100% * 10 / 9);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: fit-content;
  position: absolute;
  bottom: 10px;
  color: #04A458;
}
/* ホバー時 */
.bl_smallCard_anchor:hover .bl_smallCard_txt {
  color: #fff;
}
/* 文字サイズの変化 */
@media screen and (max-width: 960px) {
  .bl_smallCard_txt {
    /* font-size: 125%; */
    font-size: calc(125% * 10 / 9);
  }
}
@media screen and (max-width: 530px) {
  .bl_smallCard_txt {
    /* font-size: 100%; */
    font-size: calc(100% * 10 / 9);
  }
}
@media screen and (max-width: 400px) {
  .bl_smallCard_txt {
    bottom: 8px;
    /* font-size: 87.5%; */
    font-size: calc(87.5% * 10 / 9);
  }
}
@media screen and (max-width: 360px) {}

/* 現状で不要になったクラス名 */
.bl_smallCard_imgWrapper {}

/* ************************************
  - bl_dateTextList
    - bl_dateTextList_item
    - bl_dateTextList_date
    - bl_dateTextList_anchorTxt
************************************ */
.bl_dateTextList {
  /* font-size: 112.5%; */
  font-size: calc(112.5% * 10 / 9);
}

.bl_dateTextList_item {
  border-bottom: 2px #c0c0c0 solid;
  padding: 1em 2px;
  display: flex;
  flex-direction: row;
  gap: 80px;
}
@media screen and (max-width: 960px) {
  .bl_dateTextList_item {
    gap: 5%;
  }
}

.bl_dateTextList_item:hover {}

.bl_dateTextList_date:has(+ .bl_dateTextList_anchorTxt:hover) {
  color: #259c56;
}
.bl_dateTextList_anchorTxt {
  color: inherit;
}
.bl_dateTextList_anchorTxt:hover {
  color: #259c56;
}

/* ************************************
  - bl_contactCard
    - bl_contactCard_ttl
    - bl_contactCard_phoneNumber
    - bl_contactCard_flexBox
    - bl_contactCard_businessDays
    - bl_contactCard_businessHours
************************************ */
.bl_contactCard {
  border: 1px solid #7e7e7f;
  padding: 20px 30px 16px 30px;
}
.bl_contactCard_ttl {
  display: block;
  /* font-size: 162.5%; */
  font-size: calc(162.5% * 10 / 9);
  line-height: 1.2;
  /* font-weight: bold; */
  margin-bottom: 8px;
}
.bl_contactCard_phoneNumber {
  display: block;
  /* font-size: 200%; */
  font-size: calc(200% * 10 / 9);
  font-weight: bold;
  line-height: 1.3;
  color: #f08200;
  margin-bottom: 8px;
  white-space: nowrap;
  pointer-events: none;
}

.bl_contactCard_flexBox {
  display: flex;
  line-height: 1.3;
  gap: 10px;
  /* font-size: 112.5%; */
  font-size: calc(112.5% * 10 / 9);
}
.bl_contactCard_businessDays {
  display: flex;
  justify-content: space-between;
  margin-right: 150%;
}
.bl_contactCard_businessDays span:nth-child(1){
}
.bl_contactCard_businessHours {
  display: block;
}


@media screen and (max-width: 960px) {
  .bl_contactCard {
    text-align: center;
  }
  .bl_contactCard_ttl {
    /* font-size: 150%; */
    font-size: calc(150% * 10 / 9);
  }
  .bl_contactCard_phoneNumber {
    pointer-events: auto;
    /* font-size: 187.5%; */
    font-size: calc(187.5% * 10 / 9);
  }
  .bl_contactCard_flexBox {
    display: inline-flex;
  }
}


/* ************************************
  - bl_altContact
    - bl_altContact_name
    - bl_altContact_phoneNumber
************************************ */
.bl_altContact {
  text-align: center;
}
.bl_altContact_name {
  /* font-size: 187.5%; */
  font-size: calc(187.5% * 10 / 9);
}
.bl_altContact_phoneNumber {
  /* font-size: 225%; */
  font-size: calc(225% * 10 / 9);
  font-weight: bold;
  /* text-decoration: none; */
  color: #f08200;
  pointer-events: none;
}

@media screen and (max-width: 960px) {
  .bl_altContact_name,
  .bl_altContact_phoneNumber {
    display: block;
  }
  .bl_altContact_name {
    /* font-size: 162.5%; */
    font-size: calc(162.5% * 10 / 9);
  }
  .bl_altContact_phoneNumber {
    /* font-size: 187.5%; */
    font-size: calc(187.5% * 10 / 9);
  }
  .bl_altContact_phoneNumber {
    pointer-events: auto;
  }
}

/* ************************************
  ブロック : footer 内のリンク群
  - bl_ftrAnchorList
    - bl_ftrAnchorList_item
      - a
************************************ */
.bl_ftrAnchorList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  /* column-gap: 10px; */
  /* row-gap: 5px; */
}
.bl_ftrAnchorList_item {
  /* white-space: nowrap; */
  /* margin-right: 5px; */
}
.bl_ftrAnchorList_item:last-child {
  margin-right: 0;
}
.bl_ftrAnchorList_item::before {
  content: "≫";
}
.bl_ftrAnchorList_item a {
  /* text-decoration: none; */
  color: inherit;
}
@media screen and (max-width: 530px) {
  .bl_ftrAnchorList_item {
    font-size: 87.5%;
  }
}
@media screen and (max-width: 360px) {
  .bl_ftrAnchorList_item {
    font-size: 75%;
  }
}

/* ************************************
  ブロック : 個別ページの共通見出し
  - bl_pageHeadline
    - bl_pageHeadline_subHeading
************************************ */
.bl_pageHeadline {
  text-align: center;
}
.bl_pageHeadline_subHeading {
  display: block;
  text-transform: capitalize;
}

/* ************************************
  ブロック : 絞り込みリスト
  - bl_narrowDownList
************************************ */
.bl_narrowDownList {
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 60px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
/* 絞り込みボタン */
.bl_narrowDownList_button {
  text-transform: capitalize;
  cursor: pointer;
  font-size: calc(100% * 10 / 9);
}
.bl_narrowDownList_button.js_isActive {
  color: #04A458;
  font-weight: bold;
}

/* 区切りのスラッシュ */
.bl_narrowDownList_delimiter {
  margin-right: 1rem;
  margin-left: 1rem;
}


.bl_returnToTopButton {
  position: fixed;
  bottom: 77px;
  right: 20px;
  padding: 5px 5px 10px;
  /* background-color: #3498db; */
  background-color: #04A458;
  box-shadow: 2px 2px 2px black ;
  border-radius: 3px;
}
.bl_returnToTopButton:hover {
  background-color: rgba(4, 164, 88, 0.8);
}
.bl_returnToTopButton a {
  display: block;
}
.bl_returnToTopButton i {
  color: #fff;
}

/* ************************************
  レイアウト : キャンペーンのグリッドコンテナ
  - ly_canmaignUnit
************************************ */
.ly_campaignUnit {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 10px;
  row-gap: 50px;
}
@media screen and (max-width: 960px) {
  .ly_campaignUnit {
    grid-template-columns: repeat(2, 1fr);
  }
}


/* ************************************
  ブロック :「個人ローン」ページのサービス解説カード1枚
  - bl_personalLoanService :
    - bl_personalLoanService_headline :
    - bl_personalLoanService_products
      - bl_personalLoanService_products__loanSearch : mod
    - bl_personalLoanService_anchor
      - bl_personalLoanService_anchor__loanSearch : mod
************************************ */
.bl_personalLoanService {
}

/* 見出し h3 */
.bl_personalLoanService_headline {
  /* font-size: 187.5%; */
  font-size: calc(187.5% * 10 / 9);
  margin-bottom: 25px;
}
@media screen and (max-width: 960px) {
  .bl_personalLoanService_headline {
    /* font-size: 162.5%; */
    font-size: calc(162.5% * 10 / 9);
  }
}

/* 対象商品 dl */
.bl_personalLoanService_products {
  /* font-size: 112.5%; */
  font-size: calc(112.5% * 10 / 9);
}
/* 対象商品 dt */
.bl_personalLoanService_products_heading {
  color: #fff;
  /* width: max-content; */
  width: 7em;
  text-align: center;
  padding: 5px 0;
  margin-bottom: 5px;
}
/* 対象商品 dd */
.bl_personalLoanService_products_description {
  display: block;
  height: 75px;
  margin-bottom: 5px;
}

@media screen and (max-width: 960px) {
  .bl_personalLoanService_headline_subHeading {
  }
  .bl_personalLoanService_headline_subHeading {
    height: fit-content;
  }
}

/* リンク部分 */
.bl_personalLoanService_anchor {
  display: flex;
  height: 90px;
  justify-content: center;
  align-items: center;
  color: #fff;
  position: relative;
  font-size: calc(100% * 10 / 9);
}
.bl_personalLoanService_anchor:hover {
  opacity: 0.5;
}
.bl_personalLoanService_anchor::after {
  font-family: FontAwesome;
  content: "\f105";
  /* font-size: 250%; */
  font-size: calc(250% * 10 / 9);
  position: absolute;
  top: auto;
  bottom: auto;
  right: 2%;
}
@media screen and (max-width: 530px) {
  .bl_personalLoanService_anchor::after {
    /* font-size: 200%; */
    font-size: calc(200% * 10 / 9);
  }
  .bl_personalLoanService_anchor__subarukun {
    /* font-size: 87.5%; */
    font-size: calc(87.5% * 10 / 9);
  }
}

/* 背景色群。 */
.bl_personalLoanService_products__loanSearch .bl_personalLoanService_products_heading,
.bl_personalLoanService_anchor__loanSearch {
  background-color: #195178;
}
.bl_personalLoanService_products__papatto .bl_personalLoanService_products_heading,
.bl_personalLoanService_anchor__papatto {
  background-color: #399dc5;
}
.bl_personalLoanService_products__application .bl_personalLoanService_products_heading,
.bl_personalLoanService_anchor__application {
  background-color: #04a458;
}
.bl_personalLoanService_products__subarukun .bl_personalLoanService_products_heading,
.bl_personalLoanService_anchor__subarukun {
  background-color: #f08200;
}



/* ************************************
  エレメント : 注意をひく見出し
- el_cautionaryHeadline
************************************ */
.el_cautionaryHeadline {
  /* font-size: 150%; */
  font-size: calc(150% * 10 / 9);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  color: #fff;
  background-color: #f08200;
  border-radius: 25px;
  -webkit-border-radius: 25px;
  -moz-border-radius: 25px;
  -ms-border-radius: 25px;
  -o-border-radius: 25px;
}

@media screen and (max-width: 960px) {
  .el_cautionaryHeadline {
    /* font-size: 100%; */
    font-size: calc(100% * 10 / 9);
  }
}
@media screen and (max-width: 530px) {
  .el_cautionaryHeadline {
    /* font-size: 75%; */
    /* font-size: 87.5%; */
    font-size: calc(87.5% * 10 / 9);
  }
}
@media screen and (max-width: 360px) {
  .el_cautionaryHeadline {
    /* font-size: 70%; */
    /* font-size: 75%; */
    font-size: calc(75% * 10 / 9);
  }
}

/* ************************************
  - el_small_txt
    - el_small_txt__center
************************************ */
.el_small_txt {
  /* font-size: 100%; */
  font-size: calc(100% * 10 / 9);
}
.el_small_txt__center {
  text-align: center;
}


/* ************************************
  エレメント : ReadMore アンカー
************************************ */
.el_readMoreAnchor {
  height: 32px;
  display: flex;
  color: #505050;
  position: absolute;
  top: 0;
  right: 15px;
}
.el_readMoreAnchor:hover{
  opacity: 0.6;
}

.el_readMoreAnchor > span {
  /* font-size: 112.5%; */
  font-size: calc(112.5% * 10 / 9);
  line-height: 1.2;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  margin-left: 1em;
}
.el_readMoreAnchor > img {
  height: 100%;
  width: auto;
}
@media screen and (max-width: 960px) {
  .el_readMoreAnchor {
    top: auto;
    bottom: 0;
    right: auto;
    left: 15px;
  }
}

/* ************************************
  エレメント : bl_cmnHeadline__importantNotice
  重要なお知らせの一覧へのリンク
************************************ */
.el_toListOfImportantNotices {
  display: block;
  position: absolute;
  left: 10%;
  bottom: 10%;
  width: fit-content;
  color: #fff;
  /* font-size: 87.5%; */
  font-size: calc(87.5% * 10 / 9);
}
.el_toListOfImportantNotices:hover {
  opacity: 0.8;
}
.el_toListOfImportantNotices::before {
  /* content: url(../images/common/arrow.png); */

}

@media screen and (max-width: 960px) {
  .el_toListOfImportantNotices {
    left: auto;
    bottom: auto;
    top: 30px;
    right: 30px;
  }
}
@media screen and (max-width: 360px) {
  .el_toListOfImportantNotices {
    right: 10px;
  }
}

/* ************************************
  エレメント : Copyright
************************************ */
.el_copryright {
  background-color: #04a458;
  color: #fff;
  text-align: center;
  padding: 30px 0;
}

/* ************************************
  ヘルパー .hp_
************************************ */
/* トランジション期間を消す */
.hp_transitionDurationIsZero {
  transition-duration: 0ms !important;
  -o-transition-duration: 0ms !important;
  -moz-transition-duration: 0ms !important;
  -webkit-transition-duration: 0ms !important;
}
.hp_displayNone {
  display: none !important;
}

/* pdfアイコンを末尾に表示 */
.hp_pdfIcon::after {
  content: "\f1c1";
  font-family: FontAwesome;
  margin: 0 5px;
  color: #ff0000;
}

/* ************************************
  ユニーク .un_
************************************ */
.un_afterHoursContact {
  margin-top: 3em;
  margin-bottom: 2em;
}

@media screen and (max-width: 960px) {
  .un_afterHoursContact {
    /* font-size: 87.5%; */
  }
}
@media screen and (max-width: 530px) {
  .un_afterHoursContact {
    /* font-size: 75%; */
    margin-top: 2em;
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 360px) {
  .un_afterHoursContact {
    /* font-size: 70%; */
  }
}


/* ************************************
  ユニーク :
下層ページ「個人ローン」の、h2 の下のちょっとした解説文。
他にも登場しそうな要素だが、今のところ無いので、それまではこれで装飾
************************************ */
.un_personalLoanDescription {
  text-align: center;
  /* font-size: 150%; */
  font-size: calc(150% * 10 / 9);
  margin-bottom: 100px;
}
@media screen and (max-width: 960px) {
  .un_personalLoanDescription {
    /* font-size: 100%; */
    font-size: calc(100% * 10 / 9);
  }
}

/*
  2023-12-19 追加
  インターネットバンキング対応のため
*/
/*
  ボタンのラップ。ビューポートの大小で2つのボタンを表示し分けるために。
  - .bl_IBInfoButton_spWrap : スマホ用のボタンラップ
  - .bl_IBInfoButton_pcWrap : PC用のボタンラップ
*/
/* ボタンラップ・スマホ用 */
.bl_IBInfoButton_spWrap {
  display: none;
  height: 70px;
  max-width: 1030px;
  margin: 10px auto 60px;
}
/* ボタンラップ・PC版 */
.bl_IBInfoButton_pcWrap {
  display: block;
  height: 80px;
  max-width: 1030px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (max-width: 960px) {
  /* ボタンラップ・スマホ用 */
  .bl_IBInfoButton_spWrap {
    display: block;
    font-size: 80%;
  }
  /* ボタンラップ・PC版 */
  .bl_IBInfoButton_pcWrap {
    display: none;
  }
}
@media screen and (max-width: 399px) {
  .bl_IBInfoButton_spWrap {
    font-size: 70%;
  }
}

/* インターネットバンキング案内のボタン */
.bl_IBInformationButton {
  color: white;
  background-color: #3498db;
  background-image: url(../images/internet_banking/blue_bar3.png);
  background-position: center center;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: calc(187.5% * 10 / 9);
  font-weight: bold;
  width: 100%;
  height: 100%;
}
.bl_IBInformationButton::after {
  display: inline;
  content: "▶";
  /* font-family: FontAwesome; */
  margin-left: 8px;
  font-size: 70%;
}
.bl_IBInformationButton:hover,
.bl_IBInformationButton:active {
  background-color: #3498dbdd;
  opacity: 0.85;
}


/* IBコンテント・ラップ */
.ly_cmnConts_wrapper__IB {
  background-color: #3498db22;

}

/* IBコンテント本体 */
.ly_cmnConts__IB {
}

/* IB見出し */
.bl_cmnHeadline__IB {
  color: #2488cbff;
}

/* IB カードユニット(ul) */
.bl_cardUnit.bl_cardUnit__IB {
  justify-content: flex-start;
}

/* IB カードラップ(li) */
.bl_cardUnit__IB > li {
  width: calc(calc(100% - 30px) / 4);
  aspect-ratio: 1;
}

@media screen and (max-width: 960px) {
  .bl_cardUnit__IB li {
    width: calc(calc(100% - 10px) / 2);
    /* height: 240px; */
  }
}

/* IB カード自体(a) */
.bl_simpleCard_anchor.bl_simpleCard_anchor__IB {
  background-color: #3498db;
  color: white;
}
/* 上記のホバー時 */
.bl_simpleCard_anchor.bl_simpleCard_anchor__IB:hover {
  background-color: white;
  color: #3498db;
}

/* カード・内側の点線 */
.bl_simpleCard_innerBorderedRect.bl_simpleCard_innerBorderedRect__IB {
  /* border-color: #3498db99; */
  border-color: #dff;
}
.bl_simpleCard_innerBorderedRect.bl_simpleCard_innerBorderedRect__IB:hover {
  border-color: #3498db;
}
/* 親ボックスがホバーされた時にボーダー色を変更 */
.bl_simpleCard_anchor:hover .bl_simpleCard_innerBorderedRect.bl_simpleCard_innerBorderedRect__IB {
  border-color: #3498db;
}

/* カード内テキスト、ホバー時 */
.bl_simpleCard_anchor.bl_simpleCard_anchor__IB:hover .bl_simpleCard_txt {
  color: #3498db;
}

/* svg アイコン */
.el_internetBanking_svgIcon {
  color: white;
  display: block;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  width: 50%;
  transform: translateY(20px);
}
/* svg アイコン、ホバー時の変色 */
.bl_simpleCard_anchor.bl_simpleCard_anchor__IB:hover .el_internetBanking_svgIcon {
  color: #3498db;
}
@media screen and (max-width: 960px) {
  .el_internetBanking_svgIcon {
    width: 50%;
    transform: translateY(20px);
  }
}
@media screen and (max-width: 399px) {
  .el_internetBanking_svgIcon {
    width: 45%;
    transform: translateY(12px);
  }
}

/* ************************************************************
住宅ローン用
*/


/*  */
.bl_proceduralStepBox {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 4fr;
  border: #04A458 2px solid;
  width: 100%;
  height: fit-content;
}
.bl_proceduralStepBox_head {
  background-color: #04A458;
  color: white;
  font-size: calc(225% * 10 / 9);
  display: grid;
  place-items: center;
  text-transform: uppercase;
}
.bl_proceduralStepBox_text {
  font-size: calc(112.5% * 10 / 9);
  height: 100%;
  padding-inline: 1rem;
  padding-block: 1rem;
}

@media screen and (max-width: 960px) {
  .bl_proceduralStepBox {
    grid-template-columns: 1fr 3fr;
  }
  .bl_proceduralStepBox_head {
    font-size: calc(175% * 10 / 9);
  }
  .bl_proceduralStepBox_text {
    font-size: calc(100% * 10 / 9);
  }
}
@media screen and (max-width: 576px) {
  .bl_proceduralStepBox {
    display: block;
  }
  .bl_proceduralStepBox_head {
    line-height: 2;
  }
}


/* 手続きボックスの間の矢印 */
.bl_proceduralStepBox_arrow {
  width: calc(159px / 2);
  height: calc(80px / 2);
  margin-inline: auto;
  margin-block: 8px;
}
.bl_proceduralStepBox_arrow > img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

/* 留意事項のスクロールラップ */
.bl_considerationList_wrap {
  /* max-height: 17rem; */
  overflow-y: scroll;
  border: 1px solid gray;
  padding-block: 1rem;
  padding-inline: 1rem;
}
.bl_considerationList {
  padding-inline-start: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}


/* 同意文書のスクロールラップ */
.bl_termsOfAgreement_scrollWrap {
  height: 32rem;
  overflow-y: scroll;
  /* height: fit-content; */
  border: 1px solid gray;
}
/* 同意文書の本体 */
.bl_termsOfAgreement {
  margin: 1rem;
}
.bl_termsOfAgreement li {
  margin-block-start: 4px;
}
.bl_termsOfAgreement > h1 {
  font-size: calc(200% * 10 / 9);
  border-bottom: 3px double gray;
  text-align: center;
}
.bl_termsOfAgreement > h2 {
  font-size: calc(150% * 10 / 9);
  border-bottom: 1px solid gray;
  text-align: center;
  margin-block-start: 2rem;
}
.bl_termsOfAgreement > h3,
.bl_termsOfAgreement > h4 {
  margin-block-start: 1rem;
}
.bl_termsOfAgreement > h3 {
  font-size: calc(125% * 10 / 9);
}
.bl_termsOfAgreement > h4,
.bl_termsOfAgreement > h5 {
  font-size: calc(112.5% * 10 / 9);
}

.bl_termsOfAgreement ol,
.bl_termsOfAgreement ul {
  padding-inline-start: 2rem;
  margin-block: 0.5rem;
}
.bl_termsOfAgreement ol > li,
.bl_termsOfAgreement ul > li {
}
.bl_termsOfAgreement > p {
  margin-inline-start: 1rem;
  font-size: calc(100% * 10 / 9);
}
.bl_termsOfAgreement a {
  text-decoration: underline;
  color: blue;
}

@media screen and (max-width: 960px) {
  .bl_termsOfAgreement > h1 {
    font-size: calc(150% * 10 / 9);
  }
  .bl_termsOfAgreement > h2 {
    font-size: calc(125% * 10 / 9);
  }
  .bl_termsOfAgreement > h3 {
    font-size: calc(112.5% * 10 / 9);
  }
  .bl_termsOfAgreement > h4,
  .bl_termsOfAgreement > h5 {
    font-size: calc(112.5% * 10 / 9);
  }
  .bl_termsOfAgreement ol,
  .bl_termsOfAgreement ul {
    padding-inline-start: 2rem;
    margin-block: 0.5rem;
    font-size: calc(100% * 10 / 9);
  }
  .bl_termsOfAgreement > p {
    margin-inline-start: 1rem;
    font-size: calc(100% * 10 / 9);
  }
}

.bl_parenthesesOL {
  list-style-type: none;
  padding-inline-start: 2.2rem!important;
  list-style-position: outside;
  counter-reset: parentheses-ol-cnt 0;
}
.bl_parenthesesOL > li::before {
  counter-increment: parentheses-ol-cnt 1;
  content: "(" counter(parentheses-ol-cnt) ")";
  padding-right: 0.5rem;
  margin-left: -1.5rem;
}

.bl_plainBlackTable {
  border-collapse: collapse;
  margin-block: 1rem;
}
.bl_plainBlackTable td,
.bl_plainBlackTable th {
  border: 1px solid #333;
  padding-block: 4px;
  padding-inline: 8px;
}
.bl_plainBlackTable th {
  text-align: center;
}

.bl_borderedDivision {
  border: 1px solid #333;
  padding: 8px;
}


.bl_hlButtonAnchor {
	background-color: #04A458;
	border: none;
	border-radius: 5px;
	box-shadow: 2px 2px 6px #020202;
	color: white;
	display: grid;
	place-items: center;
	text-decoration: none;
	transition: background-color 0.5s ease;
	padding-right: 1.5rem;
	padding-left: 1.5rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	height: fit-content;
	width: fit-content;
	transition: background-color 0.5s ease;
}
.bl_hlButtonAnchor:hover {
	background-color: #04A458cc;
}
.bl_hlButtonAnchor_innerWrap {
	text-align: center;
}
.bl_hlButtonAnchor_largeText {
	font-size: 1.4rem;
}
.bl_ibButtonAnchor_smallText {
	font-size: 0.8rem;
}

.bl_emphasizedPhrase {
  font-weight: bold;
}

.bl_anchorWithIcon {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  text-decoration: underline;
}
.bl_anchorWithIcon_icon {
  width: 24px;
  height: auto;
}

.bl_leadingParagraph {
  font-size: calc(112.5% * 10 / 9);
  text-align: center;
}
@media screen and (max-width: 960px){
  .bl_leadingParagraph {
    font-size: calc(100% * 10 / 9);
  }
}
/*
  トップページのバナーボタン群
*/
.ly_bannerList {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  padding-top: 0!important;
  margin-bottom: 40px;
}

@media screen and (max-width: 960px) {
  .ly_bannerList {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
}
.ly_bannerList_item {
}


/*
  上記に入れるバナー
*/
.bl_bannerButton {
  border-width: 2px;
  border-style: solid;
  border-radius: 10px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
  width: 100%;
  padding-inline: 1rem;
  padding-block: 0.75rem;
  transition-property: background-color, color;
  transition-duration: 0.25s;
  transition-timing-function: ease;
  transition-delay: 0s;
}
@media screen and (max-width: 960px) {

}

.bl_bannerButton.bl_bannerButton_internetBanking {
  background-color: #3498db;
  color: white;
  border-color: #3498db;
}
.bl_bannerButton.bl_bannerButton_housingLoan {
  background-color: #f4a74c;
  color: white;
  border-color: #f4a74c;
}

/* バナーのアイコン */
.bl_bannerButton_icon {
  display: block;
  font-weight: 100;
  width: 16%;
  height: auto;
  color: inherit;
  flex-shrink: 0;
  flex-grow: 0;
}
/* バナーのテキスト */
.bl_bannerButton_txt {
  font-size: calc(175% * 10 / 9);
  color:  inherit;
  font-weight: bold;
  text-align: center;
  flex-shrink: 1;
  flex-grow: 1;
}

@media screen and (max-width: 960px) {
  .bl_bannerButton {
    /* height: 80px; */
  }
  .bl_bannerButton_txt {
    font-size: calc(162.5% * 10 / 9);
  }
  .bl_bannerButton_icon {
    width: 16%;
  }
}
@media screen and (max-width: 576px) {
  .bl_bannerButton {
    height: 80px;
  }
  .bl_bannerButton_txt {
    font-size: calc(125% * 10 / 9);
  }
  .bl_bannerButton_icon {
    width: 50px;
  }
}
@media screen and (max-width: 399px) {
  .bl_bannerButton_txt {
    font-size: calc(112.5% * 10 / 9);
  }
}

/* hover 時の設定 */
.bl_bannerButton.bl_bannerButton_internetBanking:hover {
  background-color: white;
  color: #3498db;
}
.bl_bannerButton.bl_bannerButton_housingLoan:hover {
  background-color: white;
  color: #f4a74c;
}

/*
新ページ共通スタイル
*/
.el_commonH3 {
  font-size: calc(150% * 10 / 9);
}
.el_commonH3.el_commonH3__underline {
  border-bottom: 1px solid #666;
  padding-bottom: 4px;
  margin-bottom: 1rem;
}
@media screen and (max-width: 960px) {
  .el_commonH3 {
    font-size: calc(125% * 10 / 9);
  }
}

.bl_commonUL {
  list-style-type: disc;
  margin-left: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/*
  ButtonToRevealNextSection用
*/
/* ボタン */
#js_confirmButton01.js_inactive,
#js_confirmButton02.js_inactive {
  pointer-events: none;
  background-color: gray;
  color: white;
}
/* ターゲット要素 */
#js_confirmButton01_target,
#js_confirmButton02_target {
  display: none;
}
#js_confirmButton01_target.js_active,
#js_confirmButton02_target.js_active {
  display: block;
}


#js_replaceDestinationWrap {
  display: none;
}
@media screen and (max-width: 960px) {
  #js_replaceDestinationWrap {
    display: block;
  }
  #js_replaceOriginWrap {
    display: none;
  }
}

/* 大見出し下のアンカー */
.uq_pdfAnchorUnderHeading {
  display: flex;
  align-items: center;
  gap: 4px;
  width: fit-content;
  margin-inline: auto;
  margin: 0 auto;
  color: #0000ff;
  text-decoration: none;
  font-size: calc(100% * 10 / 9);
}
.uq_pdfAnchorUnderHeading:hover {
  text-decoration: underline;
}


/*
  お申し込みページ用
  2024-07-29 追加
*/
.el_documentToBeRead {
  background-color: red;
}
.el_documentToBeRead.visited {
  background-color: green;
}

.ly_productInfoDataList {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.ly_productInfoDataList_set {
  display: flex;
}
.ly_productInfoDataList_set > dt {
  background-color: #ebebeb;
  padding-left: 1rem;
  padding-block: 0.75rem;
  width: 14rem;
  flex-shrink: 0;
  border-bottom: #fff 1px solid;
}
.ly_productInfoDataList_set > dd {
  padding-left:1rem;
  padding-block: 0.75rem;
  width: 100%;
  flex-shrink: 1;
  border-bottom: #ebebeb 1px solid;
}

@media screen and (max-width: 960px) {
  .ly_productInfoDataList {
    gap: 1rem;
  }
  .ly_productInfoDataList_set {
    flex-direction: column;
  }
  .ly_productInfoDataList_set > dt {
    width: 100%;
    border-bottom-style: none!important;
  }
  .ly_productInfoDataList_set > dd {
    border-bottom-style: none!important;
    width: 100%;
  }
}

@media screen and (max-width:576px) {
  .ly_productInfoDataList_set > dt {
    /* width: 10rem; */
  }
}

/*
  全同意で活性化されるボタン
  Button to be activated by full consent
*/
.bl_toBeActivatedByFullConsent {
	border: none;
	border-radius: 5px;
	box-shadow: 2px 2px 6px #020202;
	color: white;
	display: grid;
	place-items: center;
	text-decoration: none;
	transition: background-color 0.5s ease;
	padding-right: 1.5rem;
	padding-left: 1.5rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	height: fit-content;
	width: fit-content;
	transition: background-color 0.5s ease;
}
/* 上記の日活性状態 */
.bl_toBeActivatedByFullConsent.js_inactive {
  background-color: gray;
  pointer-events: none;
}
/* 活性化による変化 */
.bl_toBeActivatedByFullConsent.js_active {
  background-color: #04A458ff;
  pointer-events: all;
}
.bl_toBeActivatedByFullConsent.js_active:hover {
	background-color: #04A458cc;
}

.bl_toBeActivatedByFullConsent_innerWrap {
	text-align: center;
}
.bl_toBeActivatedByFullConsent_largeText {
	font-size: 1.4rem;
}
.bl_toBeActivatedByFullConsent_smallText {
	font-size: 0.8rem;
}

/*
  同意文書。上記のボタンと組み合わせ。
*/
.js_documentToBeViewed {
  background-color: #ffccccff;
}
.js_documentToBeViewed.js_active {
  background-color: #ccffccff;
}

/* 同意文書のリスト */
.bl_documentToBeViewdList {
  gap: 1rem!important;
  font-size: 112.5%;
}
.bl_documentToBeViewdList_item::after {
  margin-left: 8px;
}
.bl_documentToBeViewdList_item:has(.js_documentToBeViewed[class*="js_inactive"])::after {
  content:'【確認が必要です】';
}
.bl_documentToBeViewdList_item:has(.js_documentToBeViewed[class*="js_active"])::after {
  content: '【確認済み】';
}



/*
  個人ローン入口ページのバナー
*/
.ly_personalLoanUpperSect {
  width: 60%;
  margin-inline: auto;
}
@media screen and (max-width: 960px) {
  .ly_personalLoanUpperSect {
    width: 100%;
  }
}

.bl_personaLoanBunnerList_bunner {
  display: grid;
  place-items: center;
  padding-left: 20px;
  padding-right: 30px;
  height: 90px;
  color: #fff;
  position: relative;
  font-size: calc(125%* 10 / 9);
  /* width: 55%; */
  min-width: 300px;
}

.bl_personaLoanBunnerList_bunner>span {
  display: flex;
  gap: 12px;
  justify-content: center;
  align-items: center;
  color: inherit;
  flex-shrink: 1;
}
.bl_personaLoanBunnerList_bunner svg {
  fill: currentColor;
  stroke: currentColor;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}

@media screen and (max-width: 960px) {
  .bl_personaLoanBunnerList_bunner {
    /* width: 100%; */
    font-size: calc(100%* 10 / 9);
  }
  .bl_personaLoanBunnerList_bunner svg {
    width: 48px;
    height: 48px;
  }
}

.bl_personaLoanBunnerList_bunner__danger {
  /* background-color: #dc3545ff; */
  background-color: #B3424Aff;
}
.bl_personaLoanBunnerList_bunner__danger:hover {
  /* background-color: #dc3545cc; */
  background-color: #B3424Acc;
}


.bl_personaLoanBunnerList_bunner::after {
  font-family: FontAwesome;
  content: "\f105";
  font-size: calc(250%* 10 / 9);
  position: absolute;
  top: auto;
  bottom: auto;
  right: 2%;
}

.bl_personaLoanBunnerList_bunner__danger.bl_personaLoanBunnerList_bunner__reverse {
  background-color: white;
  color: #B3424Aff;
  border: 2px solid #B3424Aff;
}
.bl_personaLoanBunnerList_bunner__danger.bl_personaLoanBunnerList_bunner__reverse:hover {
  background-color: white;
  color: #B3424Acc;
  border: 2px solid #B3424Acc;
}


/*
  ユーティリティ
*/
/*
  font-size
  標準・拡大の文字サイズ変更機能に対応
*/
.hp_fs16 {
  font-size: calc(100% * 10 / 9);
}
.hp_fs18 {
  font-size: calc(112.5% * 10 / 9);
}
.hp_fs20 {
  font-size: calc(125% * 10 / 9);
}
.hp_fs24 {
  font-size: calc(150% * 10 / 9);
}
.hp_fs28 {
  font-size: calc(175% * 10 / 9);
}
.hp_fs32 {
  font-size: calc(200% * 10 / 9);
}

.hp_fontBold {
  font-weight: bold!important;
}

/* text-align */
.hp_textRight {
  text-align: right!important;
}
.hp_textCenter{
  text-align: center!important;
}

/* text-indent */
.hp_indent1 {
  text-indent: 1rem;
}

/* padding-y */
.hp_py0 {
  padding-top: 0!important;
  padding-bottom: 0!important;
}
.hp_py1rm {
  padding-top: 1rem!important;
  padding-bottom: 1rem!important;
}
.hp_py2rm {
  padding-top: 2rem!important;
  padding-bottom: 2rem!important;
}
.hp_py3rm {
  padding-top: 3rem!important;
  padding-bottom: 3rem!important;
}
.hp_py4rm {
  padding-top: 4rem!important;
  padding-bottom: 4rem!important;
}
.hp_py5rm {
  padding-top: 5rem!important;
  padding-bottom: 5rem!important;
}

/* padding top */
.hp_pt1rm {
  padding-top: 1rem!important;
}
.hp_pt2rm {
  padding-top: 2rem!important;
}
.hp_pt3rm {
  padding-top: 3rem!important;
}
.hp_pt4rm {
  padding-top: 4rem!important;
}
.hp_pt5rm {
  padding-top: 5rem!important;
}
.hp_pt6rm {
  padding-top: 6rem!important;
}

/* padding bottom */
.hp_pb1rm {
  padding-bottom: 1rem!important;
}
.hp_pb2rm {
  padding-bottom: 2rem!important;
}
.hp_pb3rm {
  padding-bottom: 3rem!important;
}
.hp_pb4rm {
  padding-bottom: 4rem!important;
}
.hp_pb5rm {
  padding-bottom: 5rem!important;
}
.hp_pb6rm {
  padding-bottom: 6rem!important;
}

@media screen and (max-width: 960px) {
  .hp_pb0_sp {
    padding-block-end: 0!important;
  }
}

/* padding-left */
.hp_ps1rm {
  padding-inline-start: 1rem!important;
}
.hp_ps2rm {
  padding-inline-start: 2rem!important;
}
.hp_ps3rm {
  padding-inline-start: 3rem!important;
}
.hp_ps4rm {
  padding-inline-start: 4rem!important;
}
.hp_ps5rm {
  padding-inline-start: 5rem!important;
}
.hp_ps6rm {
  padding-inline-start: 6rem!important;
}

/* padding-right */
.hp_pe1rm {
  padding-inline-end: 1rem!important;
}
.hp_pe2rm {
  padding-inline-end: 2rem!important;
}
.hp_pe3rm {
  padding-inline-end: 3rem!important;
}
.hp_pe4rm {
  padding-inline-end: 4rem!important;
}
.hp_pe5rm {
  padding-inline-end: 5rem!important;
}
.hp_pe6rm {
  padding-inline-end: 6rem!important;
}

/* margin-y */
.hp_my0 {
  margin-block: 0!important;
}
.hp_my1rm {
  margin-block: 1rem!important;
}
.hp_my2rm {
  margin-block: 2rem!important;
}
.hp_my3rm {
  margin-block: 3rem!important;
}
.hp_my4rm {
  margin-block: 4rem!important;
}
.hp_my5rm {
  margin-block: 5rem!important;
}
.hp_my6rm {
  margin-block: 6rem!important;
}

/* margin-top */
.hp_mt0 {
  margin-top: 0!important;
}
.hp_mt1rm {
  margin-top: 1rem!important;
}
.hp_mt2rm {
  margin-top: 2rem!important;
}
.hp_mt3rm {
  margin-top: 3rem!important;
}
.hp_mt4rm {
  margin-top: 4rem!important;
}
.hp_mt5rm {
  margin-top: 5rem!important;
}
.hp_mt6rm {
  margin-top: 6rem!important;
}
.hp_mt7rm {
  margin-top: 7rem!important;
}

/* margin-bottom */
.hp_mb0 {
  margin-bottom: 0!important;
}
.hp_mb1rm {
  margin-bottom: 1rem!important;
}
.hp_mb2rm {
  margin-bottom: 2rem!important;
}
.hp_mb3rm {
  margin-bottom: 3rem!important;
}
.hp_mb4rm {
  margin-bottom: 4rem!important;
}
.hp_mb5rm {
  margin-bottom: 5rem!important;
}
.hp_mb6rm {
  margin-bottom: 6rem!important;
}
.hp_mb7rm {
  margin-bottom: 7rem!important;
}

/* margin-x */
.hp_mxAuto {
  margin-inline: auto!important;
  /* margin-left: auto!important;
  margin-right: auto!important; */
}

/* margin-left (margin-inline-start) */
.hp_ms0 {
  margin-inline-start: 0!important;
}
.hp_ms1rm {
  margin-inline-start: 1rem!important;
}
.hp_ms2rm {
  margin-inline-start: 2rem!important;
}
.hp_ms3rm {
  margin-inline-start: 3rem!important;
}
.hp_ms4rm {
  margin-inline-start: 4rem!important;
}
.hp_ms5rm {
  margin-inline-start: 5rem!important;
}
.hp_ms6rm {
  margin-inline-start: 6rem!important;
}

/*
  font-weight
*/
.hp_fwBold {
  font-weight: bold!important;
}

.hp_pdfIconBefore::before {
  content: "\f1c1";
  font-family: FontAwesome;
  margin: 0 5px 0 0;
  color: #ff0000;
}
.hp_rightArrowAfter::after {
  content: "\f138";
  font-family: FontAwesome;
  margin: 0 0 0 0;
  color: inherit;
}


.uq_headingAnchor {
  font-size: 70%;
}

.hp_anchorColor {
  color: #0000ff;
  text-decoration: none;
}
.hp_anchorColor:hover{
  color: #0000ffcc;
  text-decoration: underline;
}
.hp_underlineHover:hover {
  text-decoration: underline;
}

.hp_inlineBlockFromLarge {
  display: none;
}
@media screen and (min-width: 961px) {
  .hp_inlineBlockFromLarge {
    display: inline-block;
  }
}

/* ************************************************
	2025-02-04
	注意喚起欄
*/
:root {
	--awareness-white: #ffffff;
	--awareness-bg: #f0f9f3;
	--awareness-red: #f33;
}

.ly_awarenessBackground {
	background-color: var(--awareness-bg);
	padding-block: 36px;
}

.ly_awarenessRect_outer {
	max-width: 1030px;
	margin-inline: auto;
	padding-inline: 15px;
}

.ly_awarenessRect {
	background-color: var(--awareness-white);
	border-width: 1px;
	border-style: solid;
	border-color: var(--awareness-red);
	display: flex;
	row-gap: 5px;
	column-gap: 1.5rem;
	padding: 15px 20px
}

@media screen and (max-width:1000px) {
	.ly_awarenessRect {
		flex-direction: column;
		padding: 15px 15px;
	}
}

/* 見出し */
.ly_awarenessRect_heading {
	color: var(--awareness-red);
	font-size: calc(112.5% * 10 / 9);
	line-height: 1.7;
}
@media screen and (max-width:1000px) {
	.ly_awarenessRect_heading {
		font-size: calc(100% * 10 / 9);
	}
}

/* リスト */
.bl_awarenessList {
	display: flex;
	flex-direction: column;
	padding-inline-start:20px;
	row-gap: 5px;
	list-style: disc;
}

/* アイテム */
.bl_awarenessItem {
	line-height: 1.7;
	font-size: calc(100% * 10 / 9);
}
.bl_awarenessItem_anchor {
	text-decoration: underline!important;
  text-underline-offset: 2px;
	color: #505050;
}
.bl_awarenessItem_anchor:hover {
	color: gray;
}

/** ************************************************
2025-03-13
個人ローンページの前面改訂。新しい商品情報リスト用
*/

/*
  背景色付きセクション。
  基本クラス名「ly_bgColoredSection」に加え、着色用 mod クラスを付加する
*/
.ly_bgColoredSection {
  padding-block: 4rem;
  clip-path:inset(0 -100vmax);
}
/* 着色mod */
.ly_bgColoredSection__blue {
  background-color: #E3F2FD;
  box-shadow: 0 0 0 100vmax #E3F2FD;
}
.ly_bgColoredSection__green {
  background-color: #E8F5E9;
  box-shadow: 0 0 0 100vmax #E8F5E9;
}
.ly_bgColoredSection__orange {
  background-color: #FFF3E0;
  box-shadow: 0 0 0 100vmax #FFF3E0;
}
.ly_bgColoredSection__gray {
  background-color: #F5F5F5;
  box-shadow: 0 0 0 100vmax #F5F5F5;
}
.ly_bgColoredSection__purple {
  background-color: #EDE7F6;
  box-shadow: 0 0 0 100vmax #EDE7F6;
}


/* セクション見出し */
.bl_bgColoredSectionHeading {
  font-size: calc(325% * 10 / 9);
  line-height: 1;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
}
/* 見出しのアイコン */
.bl_bgColoredSectionHeading_icon {
  display: block;
  min-height: fit-content;
  min-width: fit-content;
}
.bl_bgColoredSectionHeading_icon > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
@media (max-width:1000px) {
  .bl_bgColoredSectionHeading {
    font-size: calc(175% * 10 / 9);
  }
}


/*
  商品群のリスト
*/
.ly_productCardList {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: minmax(0, 1fr);
  gap: 1rem;
}

@media (max-width:1000px) {
  .ly_productCardList {
    grid-template-columns: 1fr;
  }
}

/*
  1枚の商品カード
*/
.bl_productCard {
  display: block;
}

/*
カード全体を覆う a
position relative は右端のシェブロンのため
*/
.bl_productCard_a {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  height: 100%;
  padding: 20px 30px 20px 30px;
  background-color: white;
  color: inherit;
  text-decoration: none;
  position: relative;
  transition: box-shadow 0.2s ease-in-out;
}

.bl_productCard_a:hover {
  box-shadow: 0 0 10px 0 #00000022;
}

/* 右端シェブロン表示 */
.bl_productCard_a > i {
  position:absolute;
  right: 20px;
  top:50%;
  transform: translateY(-50%);
}

/* カードの上段パート*/
.bl_productCard_upper{
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* カードの下段パート */
.bl_productCard_lower {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/*
商品名の上のタイトル
基本クラスに加え、着色modも使う
*/
.bl_productCard_title {
  font-size: calc(175% * 10 / 9);
  font-weight: bold;
  color: #f08200;
  /* color: inherit; */
}
.bl_productCard_title__blue {
  color: #336;
}
.bl_productCard_title__green {
  color: #363;
}
.bl_productCard_title__orange {
  color: #950;
}
.bl_productCard_title__gray {
  color: #456;
}
.bl_productCard_title__purple {
  color: #636;
}

.bl_productCard_namesFlex {
  display: flex;
  gap: 1rem;
  align-items: center;
}

/* 商品名 */
.bl_productCard_name {
  font-size: calc(150% * 10 / 9);
  font-weight: bold;
  line-height: 1;
}

/* 信用会社 */
.bl_productCard_insuranceCompany {
  font-size: calc(100% * 10 / 9);
  line-height: 1;
}

/* タグリスト */
.bl_productCard_tagList {
  display: flex;
  gap: 0.25rem;
}

/* タグ */
.bl_productCard_tag {
  display: inline-grid;
  border-radius: 100vmax;
  padding: 4px 20px;
  place-items: center;
  font-size: calc(125% * 10 / 9);
}

/* 金利 */
.bl_productCard_rate {
  font-size: calc(150% * 10 / 9);
  line-height: 1;
  font-weight: bold;
  text-align: right;
}