@charset "utf-8";
/*-----------------------------------------------------

モジュール

------------------------------------------------------*/

/* =========================================================
パンくず
========================================================= */
.bl_breadcrumbList { margin-bottom: 15px; display: flex; }
.bl_breadcrumbList .bl_breadcrumbList_item { margin-right: 25px; position: relative; }
.bl_breadcrumbList .bl_breadcrumbList_item .bl_breadcrumbList_item_txt { font-size: 11px; display: inline-block; position: relative; }
.bl_breadcrumbList .bl_breadcrumbList_item .bl_breadcrumbList_item_txt::after { margin: auto; width: 5px; height: 5px; content: ""; display: inline-block; border-top: 1px solid #888; border-right: 1px solid #888; transform: rotate(45deg); position: absolute; top: 0; bottom: 0; right: -13px; }
.bl_breadcrumbList .bl_breadcrumbList_item:last-child .bl_breadcrumbList_item_txt::after { content: none; }
.bl_breadcrumbList .bl_breadcrumbList_item .bl_breadcrumbList_item_txt:hover { color: #333;  }
.bl_breadcrumbList .bl_breadcrumbList_item .bl_breadcrumbList_item_txt.is_current { color: #888; }


/* =========================================================
ページタイトル
========================================================= */
.bl_pageTitleBlock_outer { padding-top: 70px; width: 100%; min-width: 1300px; background-color: #f6f6f6; position: relative; }
.bl_pageTitleBlock_outer::before,
.bl_pageTitleBlock_outer::after { content: ""; width: 50%; display: block; background-color: #fff; position: absolute; z-index: 1; }
.bl_pageTitleBlock_outer::before { height: 80%; left: 0; top: 70px; }
.bl_pageTitleBlock_outer::after { height: 43%; right: 0; bottom: 0; }
.bl_pageTitleBlock_outer .bl_pageTitleBlock { margin: 0 auto 60px; width: 1300px; position: relative; z-index: 2; }
.bl_pageTitleBlock_outer .bl_pageTitleBlock .bl_pageTitleBlock_inner { padding: 41px 60px 41px 0; width: 650px; background-color: #fff; }
.bl_pageTitleBlock_outer .bl_pageTitleBlock .bl_pageTitleBlock_inner .bl_pageTitleBlock_heading { font-size: 40px; color: #000; line-height: 1.2; font-weight: bold; letter-spacing: 0.02em; }


/* =========================================================
レイアウトパターン
========================================================= */
.bl_contBlock { margin: 0 auto 40px; max-width: 1600px; width: 100%; min-width: 1440px; }
.bl_contBlock p + p { margin-top: 20px; }
.bl_contBlock a { text-decoration: underline; }
.bl_contBlock.bl_contBlock__normal { max-width: none; width: 1300px; min-width: auto; }
.bl_contBlock.bl_contBlock__small { max-width: none; width: 980px; min-width: auto; word-break: break-all; }

/* =========================================================
見出し
========================================================= */
/* 見出し共通 */
[class^="el_heading_"] { margin: 0 auto; max-width: 1300px; color: #000; position: relative; }

/* type01 */
.el_heading_type01 { margin-bottom: 60px; padding-bottom: 39px; font-size: 30px; letter-spacing: 0.02em; text-align: center; border-bottom: 1px solid #ccc; }
.el_heading_type01::after { margin: auto; content: ""; width: 240px; height: 3px; display: block; position: absolute; left: 0; right: 0; bottom: -2px; background-color: #e5004f; }

/* type02 */
.el_heading_type02 { margin-bottom: 24px; font-size: 24px; font-weight: bold; letter-spacing: 0.06em; text-align: center; }

/* type03 */
.el_heading_type03 { margin-bottom: 25px; padding-bottom: 17px; font-size: 22px; font-weight: bold; letter-spacing: 0.06em; text-align: center; }
.el_heading_type03::after { content: ""; width: 100px; height: 1px; display: block; position: absolute; left: 50%; transform: translateX(-50%); bottom: 0; background-color: #e5004f; }

/* type04 */
.el_heading_type04 { margin-bottom: 24px; padding-bottom: 8px; font-size: 20px; font-weight: bold; letter-spacing: 0.06em; }
.el_heading_type04::after { content: ""; width: 20px; height: 2px; display: block; position: absolute; left: 0; bottom: 0; background-color: #e5004f; }

/* type05 */
.el_heading_type05 { margin-bottom: 17px; padding-left: 16px; font-size: 17px; font-weight: bold; letter-spacing: 0.06em; }
.el_heading_type05::before { content: ""; width: 10px; height: 2px; display: inline-block; vertical-align: middle; background-color: #e5004f; position: absolute; top: 15px; left: 3px; }


/* =========================================================
テキスト
========================================================= */
/* テキスト */
.el_txt_small { font-size: 14px; }
.el_txt_capture { font-size: 12px; }
.el_txt_warning { color: #e5004f; }
.el_txt_lead { font-size: 17px; line-height: 2; }

/* リンクテキスト */
.el_link:visited,
.el_link:link { text-decoration: underline; }
.el_link { padding-left: 22px; display: inline-block; position: relative; text-decoration: underline; }
.el_link::hover { color: #e5004f; }
.el_link::before { margin: auto; width: 13px; height: 13px; content: ""; display: inline-block; vertical-align: middle; background-repeat: no-repeat; background-size: contain; background-image: url(/common/images/icon_link.svg); position: absolute; left: 0; top: 8px; }
.el_link.el_link__newWindow::before { background-image: url(/common/images/icon_new_window.svg); }
.el_link.el_link__pdf::before { background-image: url(/common/images/icon_pdf.svg); }
.el_link.el_link__download::before { width: 14px; background-image: url(/common/images/icon_download.svg); }


/* =========================================================
画像＋テキスト
========================================================= */
.bl_articleBlock { margin: 0 auto 40px; max-width: 1300px; display: flex; }
.bl_articleBlock a { text-decoration: underline; }
.bl_articleBlock .bl_articleBlock_img { margin-right: 30px; flex-shrink: 0; }
.bl_articleBlock .bl_articleBlock_body { margin-top: 11px; flex-shrink: 1; }
.bl_articleBlock .bl_articleBlock_body .bl_articleBlock_txt { margin: 20px 0; }
.bl_articleBlock .bl_articleBlock_body .bl_articleBlock_txt + .bl_articleBlock_txt { margin-top: 30px; }


/* =========================================================
ボックス
========================================================= */
.bl_boxBlock { margin: 0 auto; padding: 24px 40px; max-width: 1300px; }
.bl_boxBlock.bl_boxBlock__gray { border: 2px solid #fff; background-color: #f6f6f6; }
.bl_boxBlock.bl_boxBlock__enclose { border: 1px solid #333; }

.bl_boxBlock > div:last-of-type { margin-bottom: 0; }
.bl_boxBlock .bl_boxBlock_heading { margin-bottom: 30px; padding-bottom: 25px; font-size: 20px; font-weight: bold; color: #000; line-height: 1.5; letter-spacing: 0.02em; border-bottom: 1px solid #e5004f; }
.bl_boxBlock .bl_boxBlock_img { margin-bottom: 34px; }
.bl_boxBlock .bl_boxBlock_img img { margin: 0 auto; }
.bl_boxBlock .bl_boxBlock_txt { margin-bottom: 33px; }
.bl_boxBlock .bl_boxBlock_txt p + p { margin-top: 18px; }
.bl_boxBlock .bl_boxBlock_btn { margin-bottom: 38px; }
.bl_boxBlock .bl_boxBlock_btn .bl_btnBlock { margin: 0 -20px -20px; flex-wrap: wrap; }
.bl_boxBlock .bl_boxBlock_btn .bl_btnBlock .bl_btn { margin-top: 0; }
.bl_boxBlock .bl_box_Block_tel { margin-bottom: 30px; }

/* 2カラム */
.bl_boxBlock_wrap { margin: 0 auto; max-width: 1300px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.bl_boxBlock_wrap > .bl_boxBlock { margin: 0; padding: 34px 40px 40px; width: 49%; }


/* =========================================================
表組
========================================================= */
.bl_tableBlock { margin: 0 auto 40px; max-width: 1300px; width: 100%; table-layout: fixed; word-wrap: break-word; overflow-wrap: break-word; }
.bl_tableBlock.bl_tableBlock__small { width: 980px; }

/* タイプ01 */
.bl_tableBlock.bl_tableBlock__type01 tr th,
.bl_tableBlock.bl_tableBlock__type01 tr td { border-bottom: 1px solid transparent; vertical-align: top; }
.bl_tableBlock.bl_tableBlock__type01 tr th { padding: 30px 10px; width: 23%; border-bottom-color: #e5004f; }
.bl_tableBlock.bl_tableBlock__type01 tr td { padding: 30px; width: 77%; border-bottom-color: #ccc; }

/* タイプ02 */
.bl_tableBlock.bl_tableBlock__type02 tr th,
.bl_tableBlock.bl_tableBlock__type02 tr td { padding: 19px 20px; border: 1px solid #ccc; }
.bl_tableBlock.bl_tableBlock__type02 tr th { background-color: #f6f6f6; }
.bl_tableBlock.bl_tableBlock__type02 tr td {  }

/* テーブルの横幅 */
.bl_tableBlock .bl_tableBlockSell_sizeS  { width: 20%; }
.bl_tableBlock .bl_tableBlockSell_sizeM  { width: 40%; }
.bl_tableBlock .bl_tableBlockSell_sizeL  { width: 70%; }


/* =========================================================
フリーダイヤル
========================================================= */
.bl_freeDialBlock { margin: 0 auto; max-width: 980px; }
.bl_freeDialBlock .bl_freeDialBlock_num { margin-right: 9px;font-weight: bold; color: #000; letter-spacing: 0.02em; text-decoration: none; display: inline-block; pointer-events: none; position: relative; }
.bl_freeDialBlock .bl_freeDialBlock_num::before { content: ""; background-image: url(/common/images/icon_free_dial.svg); background-repeat: no-repeat; background-size: contain; display: inline-block; }

/* タイプ01 */
.bl_freeDialBlock.bl_freeDialBlock__type01 { display: flex; align-items: center; }
.bl_freeDialBlock.bl_freeDialBlock__type01 .bl_freeDialBlock_num { font-size: 30px; }
.bl_freeDialBlock.bl_freeDialBlock__type01 .bl_freeDialBlock_num::before { margin-right: 6px; width: 40px; height: 23px; }
.bl_freeDialBlock.bl_freeDialBlock__type01 .bl_freeDialBlock_txt .bl_freeDialBlock_txt_green { margin-right: 19px; font-size: 12px; color: #12a73b; line-height: 2.25; display: inline-block; }

/* タイプ02 */
.bl_freeDialBlock.bl_freeDialBlock__type02 { padding: 23px 30px 28px; background-color: #f6f6f6; }
.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_heading { margin-bottom: 7px; font-size: 17px; font-weight: bold; color: #000; }
.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_num::before { margin-right: 10px; width: 51px; height: 29px; }
.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_num { margin-bottom: 12px; font-size: 50px; line-height: 1; }
.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_detail .bl_freeDialBlock_detail_heading { margin-right: 10px; font-weight: bold; color: #12a73b; float: left; clear: left; }
.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_detail .bl_freeDialBlock_detail_txt { margin-left: 70px; line-height: 1.5; }


/* =========================================================
リスト
========================================================= */
/* リスト基本 */
.bl_list { padding-left: 24px; list-style: none; }
.bl_list .bl_list_item { padding: 5px 20px; position: relative; }
.bl_list .bl_list_item::before { position: absolute; }
.bl_list .bl_list_item > .bl_list { padding-left: 0; }

/* 序列なしリスト_赤四角 */
.bl_list.bl_list__redSquare {}
.bl_list.bl_list__redSquare > .bl_list_item { padding-left: 14px; }
.bl_list.bl_list__redSquare > .bl_list_item::before { margin: 0 10px; width: 6px; height: 6px; content: ""; display: inline-block; vertical-align: middle; background-color: #e5004f; transform: rotate(45deg); top: 15px; left: -11px; }

/* 序列なしリスト_中点 */
.bl_list.bl_list__dot { }
.bl_list.bl_list__dot > .bl_list_item { padding-left: 16px; }
.bl_list.bl_list__dot > .bl_list_item::before { content: "・"; top: 5px; left: -4px; }

/* 序列リスト_数字 */
.bl_list.bl_list__num { counter-reset: number 0; }
.bl_list.bl_list__num > .bl_list_item { padding-left: 20px; }
.bl_list.bl_list__num > .bl_list_item::before { margin-right: 10px; content: counter(number) "."; counter-increment: number 1; top: 5px; left: -3px; }

/* 序列リスト_カタカナ */
.bl_list.bl_list__kana { }
.bl_list.bl_list__kana > .bl_list_item { padding-left: 30px; }
.bl_list.bl_list__kana > .bl_list_item .bl_list_item_marker { position: absolute; left: -2px; }

/* 定義型リスト */
.bl_defList {}
.bl_defList .bl_defList_head { padding: 10px 10px 10px 37px; font-weight: bold; background-color: #f6f6f6; position: relative; }
.bl_defList .bl_defList_head::before { width: 6px; height: 6px; content: ""; display: inline-block; background-color: #e5004f; transform: rotate(45deg); position: absolute; top: 20px; left: 21px; }
.bl_defList .bl_defList_body { padding: 12px 10px 12px 20px; }
.bl_defList .bl_defList_body + .bl_defList_head { margin-top: 20px; }


/* =========================================================
ボタン
========================================================= */
.bl_btn:visited,
.bl_btn:link { color: #e5004f; }
.bl_btn { margin: 20px; padding: 10px 40px; min-width: 250px; color: #e5004f; text-align: center; border: 2px solid #e5004f; border-radius: 25px; display: inline-block; transition: background-color .3s, color .3s; }
.bl_btn .bl_btn_inner { padding: 0 10px; position: relative; display: inline-block; }
.bl_btn .bl_btn_inner::after { margin: auto 0; width: 7px; height: 7px; content: ""; border-top: 2px solid #e5004f; border-right: 2px solid #e5004f; transform: rotate(45deg); position: absolute; right: 0; top: 0; bottom: 0; transition: border-color .3s; }

/* 戻るボタン */
.bl_btn.bl_btn__back .bl_btn_inner::after { left: 0; transform: rotate(225deg); }

/* クリック無効ボタン */
.bl_btn.bl_btn__disabled { color: #c1c1c1; border-color: #c1c1c1; pointer-events: none; }
.bl_btn.bl_btn__disabled .bl_btn_inner::after { border-color: #c1c1c1; }

/* アコーディオンボタン */
.bl_btn.bl_btn__acc .bl_btn_inner::after { right: -7px; transform: rotate(135deg); }
.bl_btn.bl_btn__acc.is_open .bl_btn_inner::after { transform: rotate(-45deg); }

@media (min-width: 751px) {
	/* ホバー */
	.bl_btn:hover { text-decoration: none; color: #fff; background-color: #e5004f; cursor: pointer; }
	.bl_btn:hover .bl_btn_inner::after { border-color: #fff; }
} /* media */

/* ボタンレイアウト */
.bl_btnBlock { display: flex; align-items: center; justify-content: center; }
.bl_btnBlock.bl_btnBlock__left { justify-content: flex-start; }
.bl_btnBlock.bl_btnBlock__right { justify-content: flex-end; }

/* buttonのスタイルリセット */
button { padding: 0; background-color: transparent; border: none; cursor: pointer; outline: none; appearance: none; font-size: 15px; line-height: 1.8; font-family: 'NotoSansCJKjp', sans-serif; cursor: pointer; }
button:hover { color: #e5004f; }


/* =========================================================
バナー
========================================================= */
.bl_bnrBlock { margin: -20px auto 40px; max-width: 1300px; }
.bl_bnrBlock .bl_bnrList { display: flex; flex-wrap: wrap; justify-content: space-between; }
.bl_bnrBlock .bl_bnrList .bl_bnrList_item { margin-top: 20px; width: 49%; }
.bl_bnrBlock .bl_bnrList .bl_bnrList_item .bl_bnrLinst_item_link { color: #000; display: block; }
.bl_bnrBlock .bl_bnrList .bl_bnrList_item .bl_bnrLinst_item_link:hover { text-decoration: none; }
.bl_bnrBlock .bl_bnrList .bl_bnrList_item .bl_bnrLinst_item_link .bl_bnrList_item_heading { margin-bottom: 12px; font-size: 18px; font-weight: bold; display: block; }
.bl_bnrBlock .bl_bnrList .bl_bnrList_item .bl_bnrLinst_item_link .bl_bnrList_item_img {  }


/* =========================================================
あいさつ
========================================================= */
.bl_greetingBlock { margin: 0 auto 40px; max-width: 1300px; display: flex; justify-content: space-between; }
.bl_greetingBlock .bl_greetingBlock_img { width: 32%; }
.bl_greetingBlock .bl_greetingBlock_img img {}
.bl_greetingBlock .bl_greetingBlock_body { padding: 44px 0; width: 66%; }
.bl_greetingBlock .bl_greetingBlock_body .bl_greetingBlock_txt { padding-right: 10px; }
.bl_greetingBlock .bl_greetingBlock_body .bl_greetingBlock_txt + .bl_greetingBlock_txt { margin-top: 17px; }
.bl_greetingBlock .bl_greetingBlock_body .bl_greetingBlock_name { margin-top: 30px; font-size: 18px; font-weight: bold; line-height: 1.5; text-align: right; }


/* =========================================================
沿革
========================================================= */
.bl_historyBlock { margin: 20px auto 100px; padding: 10px 0 10px 186px; max-width: 980px; position: relative; }
.bl_historyBlock::before { width: 1px; height: 100%; content: ""; display: inline-block; background-color: #ccc; position: absolute; top: 0; left: 134px; }
.bl_historyBlock .bl_historyBlock_head { margin-bottom: 50px; width: 179px; font-weight: bold; float: left; clear: left; position: relative; }
.bl_historyBlock .bl_historyBlock_head::before { width: 9px; height: 9px; content: ""; display: inline-block; background-color: #ccc; border-radius: 50%; position: absolute; top: 10px; left: -56px; }
.bl_historyBlock .bl_historyBlock_body { margin: 0 0 50px 179px; }
.bl_historyBlock .bl_historyBlock_body:last-of-type { margin-bottom: 0; }
.bl_historyBlock .bl_historyBlock_body .bl_historyList { }
.bl_historyBlock .bl_historyBlock_body .bl_historyList .bl_historyList_item { padding-left: 16px; position: relative; }
.bl_historyBlock .bl_historyBlock_body .bl_historyList .bl_historyList_item + .bl_historyList_item { margin-top: 2px; }
.bl_historyBlock .bl_historyBlock_body .bl_historyList .bl_historyList_item::before { width: 5px; height: 1px; content: ""; display: inline-block; background-color: #333; position: absolute; top: 12px; left: 0; }


/* =========================================================
CSR
========================================================= */
.bl_csrList_wrap { margin: 0 auto 80px; max-width: 1300px; }
.bl_csrList_wrap .bl_csrList { margin-top: -60px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.bl_csrList_wrap .bl_csrList .bl_csrList_item { margin-top: 60px; width: 49%; display: flex; justify-content: space-between; }
.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_img { width: 47%; }
.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_body { padding: 5px 0; width: 48%; }
.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_body .bl_csrList_item_ttl { margin-bottom: 10px; font-size: 16px; font-weight: bold; line-height: 1.5; }
.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_body .bl_csrList_item_txt { font-size: 14px; }


/* =========================================================
フォーム
========================================================= */
/* フォーム全体ラップ */
.bl_formBlock_wrap { margin: 0 auto 70px; width: 980px; }

/* フロー図 */
.bl_formFlowList { margin: 0 auto 70px; width: 980px; display: flex; justify-content: space-between; align-items: center; position: relative; }
.bl_formFlowList .bl_formFlowList_item { width: 32%; height: 60px; font-size: 18px; line-height: 1.5; color: #ccc; display: flex; align-items: center; justify-content: center; border: 1px solid #ccc; background-color: #f6f6f6; position: relative; z-index: 2; }
.bl_formFlowList .bl_formFlowList_item::before { width: 50%; height: 3px; content: ""; display: block; background-color: #ccc; position: absolute; top: 50%; left: 100%; transform: translateY(-50%); z-index: 1; }
.bl_formFlowList .bl_formFlowList_item:last-child::before { content: none; }
.bl_formFlowList .bl_formFlowList_item .bl_formFlowList_item_num { margin-right: 10px; width: 26px; height: 26px; font-size: 16px; color: #fff; background-color: #ccc; border-radius: 50%; display: inline-flex; justify-content: center; align-items: center; line-height: 1.22; }

/* フロー図 カレント表示 */
.bl_formFlowList .bl_formFlowList_item.is_current { color: #333; background-color: #fff; }
.bl_formFlowList .bl_formFlowList_item.is_current .bl_formFlowList_item_num { background-color: #e5004f; }

/* フォーム */
.bl_formBlock { display: flex; border-bottom: 1px solid #ccc; }
.bl_formBlock .bl_formBlock_head { padding: 30px 20px; width: 29%; font-weight: bold; display: inline-block; }
.bl_formBlock .bl_formBlock_head .bl_form_required { margin-left: 12px; padding: 3px 7px; font-size: 12px; font-weight: normal; color: #e5004f; border: 1px solid #e5004f; display: inline-block; vertical-align: middle; line-height: 1; }
.bl_formBlock .bl_formBlock_body { padding: 30px 20px 30px 0; width: 71%; }
.bl_formBlock .bl_formBlock_body .bl_form_capture { margin-top: 5px; font-size: 12px; display: block; }
.bl_formBlock .bl_formBlock_body .bl_form_error { margin-top: 5px; font-size: 12px; color: #e5004f; display: block; }
.bl_formBlock .bl_formBlock_body .bl_formLine { margin: 0 -5px; display: flex; align-items: center; flex-wrap: wrap; }
.bl_formBlock .bl_formBlock_body .bl_formLine .bl_formLine_item { margin: 0 5px; }
.bl_formBlock .bl_formBlock_body .bl_formLine.bl_formLine__choose { margin: -6px -25px; }
.bl_formBlock .bl_formBlock_body .bl_formLine.bl_formLine__choose.bl_formLine__choose__vertival { flex-direction: column; align-items: flex-start; }
.bl_formBlock .bl_formBlock_body .bl_formLine.bl_formLine__choose .bl_formLine_item { margin: 6px 25px; }

/* フォーム 入力欄 */
.bl_form_input_txt,
.bl_form_input_txtArea { padding: 5px 15px; border: 1px solid #f6f6f6; background-color: #f6f6f6; border-radius: 5px; font-size: 15px; color: #333; line-height: 1.8; font-family: 'NotoSansCJKjp', sans-serif; -webkit-appearance: none; }

.bl_form_input_txt { height: 40px; }
.bl_form_input_txtArea { height: 100px; resize: none; }

/* フォーム 入力欄 エラー */
.bl_form_input_txt.error,
.bl_form_input_txtArea.error { border-color: #ffebeb; background-color: #ffebeb; }

/* フォーム サイズ */
.bl_form_sizeSS { width: 80px; }
.bl_form_sizeS  { width: 100px; }
.bl_form_sizeM  { width: 190px; }
.bl_form_sizeL  { width: 412px; }
.bl_form_sizeLL { width: 100%; }

/* フォーム ラベル */
.bl_form_label { cursor: pointer; }

/* フォーム ラジオボタン */
.bl_form_radio { display: none; }
.bl_form_radio_parts { padding-left: 25px; display: inline-block; position: relative; }
.bl_form_radio_parts::before { width: 20px; height: 20px; content: ""; display: block; position: absolute; top: 4px; left: 0; border: 1px solid #ccc; border-radius: 50%; background-color: #fff; }
.bl_form_radio:checked + .bl_form_radio_parts::after { width: 12px; height: 12px; content: ""; display: block; position: absolute; top: 8px; left: 4px; background: #333; border-radius: 50%; }

/* フォーム チェックボックス */
.bl_form_checkBox { display: none; }
.bl_form_checkBox_parts { padding-left: 25px; display: inline-block; position: relative; }
.bl_form_checkBox_parts::before { width: 18px; height: 18px; content: ""; display: block; position: absolute; top: 5px; left: 0; border: 1px solid #ccc; background-color: #fff; }
.bl_form_checkBox:checked + .bl_form_checkBox_parts::after { width: 18px; height: 18px; content: ""; display: block; position: absolute; top: 5px; left: 0; background-image: url(/common/images/icon_form_check.svg); background-repeat: no-repeat; background-size: 14px 10px; background-position: center; }

/* フォーム セレクトボックス */
.bl_form_select { padding: 5px 15px; height: 40px; border: 1px solid #f6f6f6; background-color: #f6f6f6; border-radius: 5px; font-size: 15px; color: #333; line-height: 1.8; font-family: 'NotoSansCJKjp', sans-serif; }
.bl_form_select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-image: url(/common/images/icon_form_select_arrow.png); background-repeat: no-repeat; background-size: 8px 8px; background-position: right 7px center; }
.bl_form_select::-ms-expand { display: none; }

/* フォームボタン */
.bl_formBtn_wrap { position: relative; }
.bl_formBtn_wrap .bl_formBtn.bl_formBtn__back { position: absolute; top: 50%; transform: translateY(-50%); }

/* プライバシーポリシー */
.bl_privacyPolicyBlock { padding: 25px 30px; text-align: center; background-color: #f6f6f6; }
.bl_privacyPolicyBlock .bl_privacyPolicyBlock_txt { font-size: 14px; }
.bl_privacyPolicyBlock .bl_privacyPolicyBlock_check { margin-top: 30px; font-weight: bold; }

/* スパイラル */
.bl_spiralBlock { margin: 0 auto 80px; padding: 25px 30px 23px; width: 980px; font-size: 13px; line-height: 1.8; border-collapse: separate; border: 1px solid #333; }
.bl_spiralBlock .bl_spiralBlock_desc { width: 740px; vertical-align: top; }
.bl_spiralBlock .bl_spiralBlock_desc a { text-decoration: underline; }
.bl_spiralBlock .bl_spiralBlock_desc a:hover { color: #e5004f; }
.bl_spiralBlock .bl_spiralBlock_img { padding-top: 5px; text-align: right; }
.bl_spiralBlock .bl_spiralBlock_img a { display: inline-block; }


/* =========================================================
会社概要
========================================================= */
.bl_outlineBlock { padding: 70px 0 50px; background-color: #f6f6f6; }
.bl_outlineBlock .bl_outlineBlock_inner { margin: 0 auto; width: 980px; }
.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineBlock_heading { margin: 0 auto 32px; width: 350px; }
.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList { display: flex; flex-wrap: wrap; justify-content: space-between; }
.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList .bl_outlineList_item { margin-bottom: 20px; padding: 20px 30px 22px; width: 48%; background-color: #fff; border: 1px solid #000; }
.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList .bl_outlineList_item .bl_outlineList_item_heading { margin-bottom: 5px; font-size: 20px; font-weight: bold; color: #000; text-align: center; }
.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList .bl_outlineList_item .bl_outlineList_item_txt {}


/* =========================================================
画像
========================================================= */
.bl_imgBlock { margin: 30px auto; }
.bl_imgBlock img { margin: 0 auto; }


/* =========================================================
動画
========================================================= */
.bl_videoBlock { padding-top: 56.25%; width: 100%; height: 0; position: relative; overflow: hidden; }
.bl_videoBlock iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }


/* =========================================================
コラム
========================================================= */
.bl_sectBlock_column { width: 100%; background: #f6f6f6; padding: 40px 0; margin: 0 auto 36px; }
.bl_sectBlock_column_link { width: 100%; height: 100%; display: block; }
.bl_sectBlock_column_link:hover { text-decoration: none; }
/*.bl_sectBlock_column_box { margin: 0 5% 15px; background: #fff; }*/
.bl_sectBlock_column_box { margin: 0 5% 15px;}
.bl_sectBlock_column_img { margin: 0; }
.bl_sectBlock_column_ttl { font-size: 20px; font-weight: bold; text-align: center; margin-bottom: 18px; width: 100%; }
.bl_sectBlock_column_inner { padding: 12px 4% 26px; position: relative; word-break: break-all;}
.bl_sectBlock_column_lead { font-size: 15px; font-weight: bold; margin-bottom: 12px; line-height: 1.5; }
.bl_sectBlock_column_txt { font-size: 14px; line-height: 24px; margin-bottom: 12px; color: #333; text-decoration: none; }
.bl_sectBlock_column_info { display: flex; justify-content: space-between; }
.bl_sectBlock_column_info_date { font-size: 12px; color: #888888; color: #333; text-decoration: none; }
.bl_sectBlock_column_info_cat { font-size: 12px; color: #888888; border: 1px solid #888888; padding: 0 6px; color: #333; text-decoration: none; }

@media (min-width: 751px) {
	.bl_sectBlock_column { padding: 24px 0; min-width: 1300px; margin-bottom: 85px; padding: 65px 0 50px; }
	.bl_sectBlock_column_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; width: 1300px; margin: 0 auto 18px; }
	/*.bl_sectBlock_column_box { width: 410px; height: 420px; background: #fff; margin: 0; }*/
	.bl_sectBlock_column_box { width: 410px; height: 420px; margin: 0; }
	.bl_sectBlock_column_img { margin: 0 0 12px 0; }
	.bl_sectBlock_column_ttl { font-size: 26px; margin-bottom: 26px; line-height: 45px; }
	.bl_sectBlock_column_inner { margin: 0; word-break: break-all; }
	.bl_sectBlock_column_lead { font-size: 18px; }
	.bl_sectBlock_column_info_cat { font-size: 10px; padding: 0 10px; bottom: 30px; }
} /* media */


/* =========================================================
アコーディオン
========================================================= */
.bl_accBlock { margin: 30px 0; text-align: center; }
.bl_accBlock .bl_accBlock_head { }
.bl_accBlock .bl_accBlock_body { text-align: left; display: none; }


/* =========================================================
ヘルパー　※多用は禁止
========================================================= */
/* フォントの太さ */
.hp_fwN { font-weight: normal!important; }
.hp_fwB { font-weight: bold!important; }

/* テキストのレイアウト */
.hp_taR { text-align: right!important; }
.hp_taC { text-align: center!important; }
.hp_taL { text-align: left!important; }

/* 背景色 */
.hp_bgC_gray { background-color: #f6f6f6!important; }

/* ボーダー */
.hp_border_gray { border: 1px solid #ccc; }

/* 余白 */
.hp_mb_sizeSS { margin-bottom: 40px!important; }
.hp_mb_sizeS  { margin-bottom: 60px!important; }
.hp_mb_sizeM  { margin-bottom: 80px!important; }
.hp_mb_sizeL  { margin-bottom: 130px!important; }

/* 余白（微調整用） */
.hp_mt0   { margin-top: 0!important; }
.hp_mt0   { margin-top: 0!important; }
.hp_mt5   { margin-top: 5px!important; }
.hp_mt10  { margin-top: 10px!important; }
.hp_mt15  { margin-top: 15px!important; }
.hp_mt20  { margin-top: 20px!important; }
.hp_mt25  { margin-top: 25px!important; }
.hp_mt30  { margin-top: 30px!important; }
.hp_mt35  { margin-top: 35px!important; }
.hp_mt40  { margin-top: 40px!important; }
.hp_mt45  { margin-top: 45px!important; }
.hp_mt50  { margin-top: 50px!important; }
.hp_mt55  { margin-top: 55px!important; }
.hp_mt60  { margin-top: 60px!important; }
.hp_mt65  { margin-top: 65px!important; }
.hp_mt70  { margin-top: 70px!important; }
.hp_mt75  { margin-top: 75px!important; }
.hp_mt80  { margin-top: 80px!important; }
.hp_mt85  { margin-top: 85px!important; }
.hp_mt90  { margin-top: 90px!important; }
.hp_mt95  { margin-top: 95px!important; }
.hp_mt100 { margin-top: 100px!important; }

.hp_mb0   { margin-bottom: 0!important; }
.hp_mb5   { margin-bottom: 5px!important; }
.hp_mb10  { margin-bottom: 10px!important; }
.hp_mb15  { margin-bottom: 15px!important; }
.hp_mb20  { margin-bottom: 20px!important; }
.hp_mb25  { margin-bottom: 25px!important; }
.hp_mb30  { margin-bottom: 30px!important; }
.hp_mb35  { margin-bottom: 35px!important; }
.hp_mb40  { margin-bottom: 40px!important; }
.hp_mb45  { margin-bottom: 45px!important; }
.hp_mb50  { margin-bottom: 50px!important; }
.hp_mb55  { margin-bottom: 55px!important; }
.hp_mb60  { margin-bottom: 60px!important; }
.hp_mb65  { margin-bottom: 65px!important; }
.hp_mb70  { margin-bottom: 70px!important; }
.hp_mb75  { margin-bottom: 75px!important; }
.hp_mb80  { margin-bottom: 80px!important; }
.hp_mb85  { margin-bottom: 85px!important; }
.hp_mb90  { margin-bottom: 90px!important; }
.hp_mb95  { margin-bottom: 95px!important; }
.hp_mb100 { margin-bottom: 100px!important; }

.hp_pt0   { padding-top: 0!important; }
.hp_pt5   { padding-top: 5px!important; }
.hp_pt10  { padding-top: 10px!important; }
.hp_pt15  { padding-top: 15px!important; }
.hp_pt20  { padding-top: 20px!important; }
.hp_pt25  { padding-top: 25px!important; }
.hp_pt30  { padding-top: 30px!important; }
.hp_pt35  { padding-top: 35px!important; }
.hp_pt40  { padding-top: 40px!important; }
.hp_pt45  { padding-top: 45px!important; }
.hp_pt50  { padding-top: 50px!important; }
.hp_pt55  { padding-top: 55px!important; }
.hp_pt60  { padding-top: 60px!important; }
.hp_pt65  { padding-top: 65px!important; }
.hp_pt70  { padding-top: 70px!important; }
.hp_pt75  { padding-top: 75px!important; }
.hp_pt80  { padding-top: 80px!important; }
.hp_pt85  { padding-top: 85px!important; }
.hp_pt90  { padding-top: 90px!important; }
.hp_pt95  { padding-top: 95px!important; }
.hp_pt100 { padding-top: 100px!important; }

.hp_pb0   { padding-bottom: 0!important; }
.hp_pb5   { padding-bottom: 5px!important; }
.hp_pb10  { padding-bottom: 10px!important; }
.hp_pb15  { padding-bottom: 15px!important; }
.hp_pb20  { padding-bottom: 20px!important; }
.hp_pb25  { padding-bottom: 25px!important; }
.hp_pb30  { padding-bottom: 30px!important; }
.hp_pb35  { padding-bottom: 35px!important; }
.hp_pb40  { padding-bottom: 40px!important; }
.hp_pb45  { padding-bottom: 45px!important; }
.hp_pb50  { padding-bottom: 50px!important; }
.hp_pb55  { padding-bottom: 55px!important; }
.hp_pb60  { padding-bottom: 60px!important; }
.hp_pb65  { padding-bottom: 65px!important; }
.hp_pb70  { padding-bottom: 70px!important; }
.hp_pb75  { padding-bottom: 75px!important; }
.hp_pb80  { padding-bottom: 80px!important; }
.hp_pb85  { padding-bottom: 85px!important; }
.hp_pb90  { padding-bottom: 90px!important; }
.hp_pb95  { padding-bottom: 95px!important; }
.hp_pb100 { padding-bottom: 100px!important; }


.hp_mt100_minus { margin-top: -100px!important; }


/*--------------------------------------------------------------------------
	[ RWD Style ]
--------------------------------------------------------------------------*/
@media screen and (max-width: 750px){

	/* =========================================================
	パンくず
	========================================================= */
	.bl_breadcrumbList { display: none; }


	/* =========================================================
	ページタイトル
	========================================================= */
	.bl_pageTitleBlock_outer { padding-top: 25px; min-width: auto; }
	.bl_pageTitleBlock_outer::before { display: none; }
	.bl_pageTitleBlock_outer .bl_pageTitleBlock { margin-bottom: 25px; width: 100%; }
	.bl_pageTitleBlock_outer .bl_pageTitleBlock .bl_pageTitleBlock_inner { padding: 33px 5%; width: 91%; }
	.bl_pageTitleBlock_outer .bl_pageTitleBlock .bl_pageTitleBlock_inner .bl_pageTitleBlock_heading { font-size: 24px; }


	/* =========================================================
	レイアウトパターン
	========================================================= */
	.bl_contBlock { max-width: none; width: 90%; min-width: auto; }
	.bl_contBlock p + p { margin-top: 20px; }
	.bl_contBlock.bl_contBlock__normal,
	.bl_contBlock.bl_contBlock__small { max-width: none; width: 90%; min-width: auto; }


	/* =========================================================
	見出し
	========================================================= */
	/* 見出し共通 */
	[class^="el_heading_"] { line-height: 1.2; }

	/* type01 */
	.el_heading_type01 { margin-bottom: 30px; padding-bottom: 23px; font-size: 20px; }
	.el_heading_type01::after { width: 100px; }

	/* type02 */
	.el_heading_type02 { margin-bottom: 19px; padding: 0 10%; font-size: 19px; }

	/* type03 */
	.el_heading_type03 { margin-bottom: 15px; padding: 0 10% 14px; font-size: 18px; }
	.el_heading_type03::after { width: 75px; }

	/* type04 */
	.el_heading_type04 { margin-bottom: 14px; padding-bottom: 11px; font-size: 17px; }
	.el_heading_type04::after { width: 20px; }

	/* type05 */
	.el_heading_type05 { margin-bottom: 13px; padding-left: 13px; font-size: 15px; }
	.el_heading_type05::before { content: ""; width: 7px; top: 8px; left: 1px; }


	/* =========================================================
	テキスト
	========================================================= */
	/* テキスト */
	.el_txt_small { font-size: 13px; }
	.el_txt_capture { font-size: 11px; }
	.el_txt_lead { font-size: 14px; }

	/* リンクテキスト */
	.el_link { padding-left: 22px; }
	.el_link::before { top: 6px; }


	/* =========================================================
	画像＋テキスト
	========================================================= */
	.bl_articleBlock { max-width: none; width: 90%; flex-direction: column; }
	.bl_articleBlock .bl_articleBlock_img { margin-right: 0; flex-shrink: 0; }
	.bl_articleBlock .bl_articleBlock_img img { width: 100%; }
	.bl_articleBlock .bl_articleBlock_body { margin-top: 30px; }
	.bl_articleBlock .bl_articleBlock_body .bl_articleBlock_txt { margin: 20px 0; }
	.bl_articleBlock .bl_articleBlock_body .bl_articleBlock_txt + .bl_articleBlock_txt { margin-top: 30px; }


	/* =========================================================
	ボックス
	========================================================= */
	.bl_boxBlock { padding: 19px 6%; max-width: none; }

	.bl_boxBlock .bl_boxBlock_heading { margin-bottom: 20px; padding-bottom: 11px; font-size: 17px; }
	.bl_boxBlock .bl_boxBlock_img { margin-bottom: 23px; }
	.bl_boxBlock .bl_boxBlock_txt { margin-bottom: 25px; }
	.bl_boxBlock .bl_boxBlock_txt p + p { margin-top: 18px; }
	.bl_boxBlock .bl_boxBlock_btn { margin-bottom: 29px; }
	.bl_boxBlock .bl_boxBlock_btn .bl_btnBlock .bl_btn + .bl_btn { margin-top: 20px; }
	.bl_boxBlock .bl_box_Block_tel { margin-bottom: 30px; }

	/* 2カラム */
	.bl_boxBlock_wrap { max-width: none; flex-direction: column; }
	.bl_boxBlock_wrap > .bl_boxBlock { padding: 20px 6% 26px; width: 100%; }
	.bl_boxBlock_wrap > .bl_boxBlock + .bl_boxBlock { margin-top: 20px; }


	/* =========================================================
	表組
	========================================================= */
	.bl_tableBlock { max-width: none; }
	.bl_tableBlock.bl_tableBlock__small { width: auto; }

	/* タイプ01 */
	.bl_tableBlock.bl_tableBlock__type01 tr th,
	.bl_tableBlock.bl_tableBlock__type01 tr td { width: 100%; display: block; }
	.bl_tableBlock.bl_tableBlock__type01 tr th { padding: 14px 0 4px 0; border-bottom: none; }
	.bl_tableBlock.bl_tableBlock__type01 tr td {  padding: 0 0 18px 0; position: relative; }
	.bl_tableBlock.bl_tableBlock__type01 tr td::after { width: 45%; height: 1px; content: ""; background-color: #e5004f; position: absolute; left: 0; bottom: -1px; }

	/* タイプ02 */
	.bl_tableBlock.bl_tableBlock__type02 tr th,
	.bl_tableBlock.bl_tableBlock__type02 tr td {  }
	.bl_tableBlock.bl_tableBlock__type02 tr th {  }
	.bl_tableBlock.bl_tableBlock__type02 tr td {  }


	/* テーブルの横スクロール */
	.bl_tableBlock_scroll { overflow: auto; white-space: nowrap; }
	.bl_tableBlock_scroll::-webkit-scrollbar { height: 7px; }
	.bl_tableBlock_scroll::-webkit-scrollbar-track { background-color: #b1b1b1; }
	.bl_tableBlock_scroll::-webkit-scrollbar-thumb { background-color: #626262; }
	.bl_tableBlock_scroll .bl_tableBlock { table-layout: auto; }


	/* =========================================================
	フリーダイヤル
	========================================================= */
	.bl_freeDialBlock { max-width: none; }
	.bl_freeDialBlock .bl_freeDialBlock_num { margin-right: 9px; text-decoration: underline; pointer-events: auto; }
	.bl_freeDialBlock .bl_freeDialBlock_num::before { }
	.bl_freeDialBlock .bl_freeDialBlock_num::after { margin-top: 2px; width: 14px; height: 14px; content: ""; display: inline-block; background-image: url(/common/images/icon_link.svg); background-repeat: no-repeat; background-size: contain; position: absolute; top: 50%; transform: translateY(-50%); right: -21px; }
	.bl_freeDialBlock .bl_freeDialBlock_txt { font-size: 11px; line-height: 1.22; }

	/* タイプ01 */
	.bl_freeDialBlock.bl_freeDialBlock__type01 { flex-direction: column; align-items: flex-start; }
	.bl_freeDialBlock.bl_freeDialBlock__type01 .bl_freeDialBlock_num { margin-bottom: 4px; margin-right: 0; font-size: 25px ;}
	.bl_freeDialBlock.bl_freeDialBlock__type01 .bl_freeDialBlock_num::before { margin-right: 4px; width: 27px; height: 16px; }
	.bl_freeDialBlock.bl_freeDialBlock__type01 .bl_freeDialBlock_txt .bl_freeDialBlock_txt_green { margin-right: 6px; font-size: 11px; line-height: 1.22; }

	/* タイプ02 */
	.bl_freeDialBlock.bl_freeDialBlock__type02 { padding: 14px 4% 20px; }
	.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_heading { margin-bottom: 6px; font-size: 14px; }
	.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_num::before { margin: 0 4px 0 2px; width: 27px; height: 16px; }
	.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_num { margin-bottom: 14px; font-size: 25px; }
	.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_detail .bl_freeDialBlock_detail_heading { margin-right: 7px; font-size: 11px; line-height: 1.22; font-weight: normal; }
	.bl_freeDialBlock.bl_freeDialBlock__type02 .bl_freeDialBlock_detail .bl_freeDialBlock_detail_txt { margin-left: 51px; font-size: 11px; line-height: 1.22; }



	/* =========================================================
	リスト
	========================================================= */
	/* リスト基本 */
	.bl_list { padding-left: 12px; }
	.bl_list .bl_list_item { padding: 2px 5px 2px 15px; }
	.bl_list .bl_list_item::before { }
	.bl_list .bl_list_item > .bl_list { margin-left: -15px; }

	/* 序列なしリスト_赤四角 */
	.bl_list.bl_list__redSquare {}
	.bl_list.bl_list__redSquare > .bl_list_item { padding-left: 14px; }
	.bl_list.bl_list__redSquare > .bl_list_item::before { width: 4px; height: 4px; left: -10px; }

	/* 序列なしリスト_中点 */
	.bl_list.bl_list__dot { }
	.bl_list.bl_list__dot > .bl_list_item { padding-left: 17px; }
	.bl_list.bl_list__dot > .bl_list_item::before { top: 3px; }

	/* 序列リスト_数字 */
	.bl_list.bl_list__num { counter-reset: number 0; }
	.bl_list.bl_list__num > .bl_list_item { padding-left: 22px; }
	.bl_list.bl_list__num > .bl_list_item::before { top: 2px; left: 3px; }

	/* 序列リスト_カタカナ */
	.bl_list.bl_list__kana {  }
	.bl_list.bl_list__kana > .bl_list_item { padding-left: 27px; }
	.bl_list.bl_list__kana > .bl_list_item .bl_list_item_marker { margin-left: 5px; }

	/* 定義型リスト */
	.bl_defList {}
	.bl_defList .bl_defList_head { padding: 5px 10px 5px 24px; }
	.bl_defList .bl_defList_head::before { width: 4px; height: 4px; top: 15px; left: 12px; }
	.bl_defList .bl_defList_body { padding: 10px 11px; }
	.bl_defList .bl_defList_body + .bl_defList_head { margin-top: 10px; }


	/* =========================================================
	ボタン
	========================================================= */
	.bl_btn:visited,
	.bl_btn:link { text-decoration: none; }
	.bl_btn { padding: 8px; border-radius: 22px; transition: none; }
	.bl_btn + .bl_btn { margin-top: 0; }
	.bl_btn .bl_btn_inner { display: block; }
	.bl_btn .bl_btn_inner::after { width: 5px; height: 5px; right: 4px; transition: none; }

	/* 戻るボタン */
	.bl_btn.bl_btn__back .bl_btn_inner::after { left: 8px; }

	/* アコーディオンボタン */
	.bl_btn.bl_btn__acc .bl_btn_inner::after { right: 10%; }

	/* ホバー */
	.bl_btn:hover { text-decoration: none; }

	/* ボタンレイアウト */
	.bl_btnBlock { flex-direction: column; }
	.bl_btnBlock.bl_btnBlock__left,
	.bl_btnBlock.bl_btnBlock__right { justify-content: center; }

	/* buttonのスタイルリセット */
	button { font-size: 13px; }


	/* =========================================================
	バナー
	========================================================= */
	.bl_bnrBlock { max-width: none; width: 90%; }
	.bl_bnrBlock .bl_bnrList { flex-direction: column; }
	.bl_bnrBlock .bl_bnrList .bl_bnrList_item { margin-top: 20px; width: 100%; }
	.bl_bnrBlock .bl_bnrList .bl_bnrList_item .bl_bnrLinst_item_link { }

	/* 2カラム */
	.bl_bnrBlock .bl_bnrList.bl_bnrList__2col { justify-content: column; }
	.bl_bnrBlock .bl_bnrList.bl_bnrList__2col .bl_bnrList_item { width: 100%; }


	/* =========================================================
	あいさつ
	========================================================= */
	.bl_greetingBlock { max-width: none; width: 90%; flex-direction: column; }
	.bl_greetingBlock .bl_greetingBlock_img { margin: 0 auto; width: 61%; }
	.bl_greetingBlock .bl_greetingBlock_img img {}
	.bl_greetingBlock .bl_greetingBlock_body { padding: 24px 0; width: 100%; }
	.bl_greetingBlock .bl_greetingBlock_body .bl_greetingBlock_txt { padding-right: 0; }
	.bl_greetingBlock .bl_greetingBlock_body .bl_greetingBlock_txt + .bl_greetingBlock_txt { margin-top: 21px; }
	.bl_greetingBlock .bl_greetingBlock_body .bl_greetingBlock_name { font-size: 14px; }


	/* =========================================================
	沿革
	========================================================= */
	.bl_historyBlock { padding: 0 5% 0 7.7%; max-width: none; width: 100%; }
	.bl_historyBlock::before { left: 7.7%; }
	.bl_historyBlock .bl_historyBlock_head { margin-bottom: 5px; padding-left: 6%; width: auto; float: none; }
	.bl_historyBlock .bl_historyBlock_head::before { top: 8px; left: -4px; }
	.bl_historyBlock .bl_historyBlock_body { margin: 0 0 11% 0; }
	.bl_historyBlock .bl_historyBlock_body:last-of-type { margin-bottom: 0; }
	.bl_historyBlock .bl_historyBlock_body .bl_historyList { }
	.bl_historyBlock .bl_historyBlock_body .bl_historyList .bl_historyList_item { margin-left: 7%; padding-left: 4%; }
	.bl_historyBlock .bl_historyBlock_body .bl_historyList .bl_historyList_item + .bl_historyList_item { margin-top: 7px; }
	.bl_historyBlock .bl_historyBlock_body .bl_historyList .bl_historyList_item::before { width: 8px; left: 0; }


	/* =========================================================
	CSR
	========================================================= */
	.bl_csrList_wrap { margin: 0 auto 40px; max-width: none; width: 89%; }
	.bl_csrList_wrap .bl_csrList { margin-top: -30px; flex-direction: column; }
	.bl_csrList_wrap .bl_csrList .bl_csrList_item { margin-top: 30px; width: 100%; }
	.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_img { width: 31%; }
	.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_body { padding: 0; width: 66%; }
	.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_body .bl_csrList_item_ttl { margin-bottom: 6px; font-size: 14px; line-height: 1.8; }
	.bl_csrList_wrap .bl_csrList .bl_csrList_item .bl_csrList_item_body .bl_csrList_item_txt { font-size: 12px; line-height: 1.95; }


	/* =========================================================
	フォーム
	========================================================= */
	/* フォーム全体ラップ */
	.bl_formBlock_wrap { margin-bottom: 70px; width: 89%; }

	/* フロー図 */
	.bl_formFlowList { margin: 0 auto 30px; width: 100%; }
	.bl_formFlowList .bl_formFlowList_item { width: 27%; height: 65px; font-size: 14px; line-height: 1; flex-direction: column; }
	.bl_formFlowList .bl_formFlowList_item::before { height: 2px; }
	.bl_formFlowList .bl_formFlowList_item .bl_formFlowList_item_num { margin-bottom: 5px; margin-right: 0; width: 25px; height: 25px; font-size: 15px; }

	/* フロー図 カレント表示 */
	.bl_formFlowList .bl_formFlowList_item.is_current { }
	.bl_formFlowList .bl_formFlowList_item.is_current .bl_formFlowList_item_num { }

	/* フォーム */
	.bl_formBlock { flex-direction: column; }
	.bl_formBlock .bl_formBlock_head { padding: 14px 0 12px; width: 100%; display: block; }
	.bl_formBlock .bl_formBlock_head .bl_form_required { margin-left: 11px; padding: 2px 7px; font-size: 11px; }
	.bl_formBlock .bl_formBlock_body { padding: 0 0 19px 0; width: 100%; }
	.bl_formBlock .bl_formBlock_body .bl_form_capture { margin-top: 5px; font-size: 11px; }
	.bl_formBlock .bl_formBlock_body .bl_form_error { margin-top: 5px; font-size: 11px; }
	.bl_formBlock .bl_formBlock_body .bl_formLine { flex-wrap: nowrap; }
	.bl_formBlock .bl_formBlock_body .bl_formLine .bl_formLine_item { margin: 0 3px; }
	.bl_formBlock .bl_formBlock_body .bl_formLine.bl_formLine__choose { margin: -19px 0 0 0; align-items: flex-start; flex-direction: column; }
	.bl_formBlock .bl_formBlock_body .bl_formLine.bl_formLine__choose + .bl_formLine.bl_formLine__choose { margin-top: 0; }
	.bl_formBlock .bl_formBlock_body .bl_formLine.bl_formLine__choose .bl_formLine_item { margin: 11px 0 0 0; }

	/* フォーム 入力欄 */
	.bl_form_input_txt,
	.bl_form_input_txtArea { padding: 2px 8px; font-size: 13px; }

	.bl_form_input_txt { height: 35px; }
	.bl_form_input_txtArea { height: 80px; resize: none; }

	/* フォーム 入力欄 エラー */
	.bl_form_input_txt.error,
	.bl_form_input_txtArea.error {  }

	/* フォーム サイズ */
	.bl_form_sizeSS { width: 70px; }
	.bl_form_sizeS  { width: 100px; }
	.bl_form_sizeM  { width: 163px; }
	.bl_form_sizeL  { width: 100%; }
	.bl_form_sizeLL { width: 100%; }

	/* フォーム ラベル */
	.bl_form_label { }

	/* フォーム ラジオボタン */
	.bl_form_radio {  }
	.bl_form_radio_parts { padding-left: 24px; }
	.bl_form_radio_parts::before { width: 15px; height: 15px; top: 3px; left: 0; }
	.bl_form_radio:checked + .bl_form_radio_parts::after { width: 9px; height: 9px; top: 6px; left: 3px; }

	/* フォーム チェックボックス */
	.bl_form_checkBox {  }
	.bl_form_checkBox_parts { padding-left: 24px; }
	.bl_form_checkBox_parts::before { width: 15px; height: 15px; top: 4px; left: 0; }
	.bl_form_checkBox:checked + .bl_form_checkBox_parts::after { width: 15px; height: 15px; top: 4px; left: 0; background-size: 11px 8px; }

	/* フォーム セレクトボックス */
	.bl_form_select { padding: 2px 8px; height: 35px; font-size: 13px; }
	.bl_form_select { }

	/* フォームボタン */
	.bl_formBtn_wrap { position: relative; }
	.bl_formBtn_wrap .bl_formBtn.bl_formBtn__back { position: relative; top: auto; transform: none; }
	.bl_formBtn_wrap .bl_formBtn.bl_formBtn__submit { margin-top: 13px; }

	/* プライバシーポリシー */
	.bl_privacyPolicyBlock { margin-bottom: 14px; padding: 20px 6%; text-align: left; }
	.bl_privacyPolicyBlock .bl_privacyPolicyBlock_txt { font-size: 13px; }
	.bl_privacyPolicyBlock .bl_privacyPolicyBlock_check { margin-top: 22px; text-align: center; }

	/* スパイラル */
	.bl_spiralBlock { margin-bottom: 70px; padding: 10px 15px; width: 89%; font-size: 12px; }
	.bl_spiralBlock .bl_spiralBlock_desc { margin-bottom: 7px; width: 100%; display: block; }
	.bl_spiralBlock .bl_spiralBlock_desc a:hover { text-decoration: none; }
	.bl_spiralBlock .bl_spiralBlock_img { width: 100%; display: block; text-align: left; }


	/* =========================================================
	会社概要
	========================================================= */
	.bl_outlineBlock { padding: 30px 0 40px; }
	.bl_outlineBlock .bl_outlineBlock_inner { width: 89%; }
	.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineBlock_heading { margin-bottom: 20px; width: 250px; }
	.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList { flex-direction: column; }
	.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList .bl_outlineList_item { margin-bottom: 8px; padding: 15px 7%; width: 100%; }
	.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList .bl_outlineList_item .bl_outlineList_item_heading { margin-bottom: 0; font-size: 15px; }
	.bl_outlineBlock .bl_outlineBlock_inner .bl_outlineList .bl_outlineList_item .bl_outlineList_item_txt { font-size: 12px; }


	/* =========================================================
	画像
	========================================================= */
	.bl_imgBlock img { width: 100%; }


	/* =========================================================
	ヘルパー
	========================================================= */
	/* 余白 */
	.hp_mb_sizeSS { margin-bottom: 40px!important; }
	.hp_mb_sizeS  { margin-bottom: 80px!important; }
	.hp_mb_sizeM  { margin-bottom: 100px!important; }
	.hp_mb_sizeL  { margin-bottom: 160px!important; }


} /* media */