@charset "UTF-8";


/*
  --------------------------------
  Created: 2015.04.01
  Last Modified: 2023.06.22
  --------------------------------
*/


@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap');

/* --------------------------------
  初期スタイル
-------------------------------- */

:where(#area_container) *,
:where(#area_container) ::after,
:where(#area_container) ::before {
  box-sizing: unset;
}

:where(#area_container) ol,
:where(#area_container) ul {
  list-style: none;
}

:where(#area_container) img {
  vertical-align: bottom;
}

:where(#area_container) sub {
  vertical-align: bottom;
  line-height: unset;
  bottom: unset;
}

:where(#area_container) .txt10 {
  font-size: 0.625rem;
  line-height: 1.5;
}

:where(#area_container) .txt12 {
  font-size: 0.75rem;
  line-height: 1.417;
}

:where(#area_container) .txt14 {
  font-size: 0.875rem;
  line-height: 1.357;
}

:where(#area_container) .txt16 {
  font-size: 1rem;
  line-height: 1.25;
}

:where(#area_container) .txt18 {
  font-size: 1.125rem;
  line-height: 1.222;
}


/* --------------------------------
  サイト共通レイアウト
-------------------------------- */

/* パンくず、SNSボタン --------------- */
#breadcrumbs_wrap {
  position: relative;
  width: 980px;
  min-height: 32px;
  margin: 0 auto;
}

#social_wrap {
  position: absolute;
  top: 0;
  right: 0;
}

.breadcrumb-list {
  padding-bottom: 0;
}


/* サイトタイトル --------------- */
#module_titleArea .site_title {
  float: left;
  padding: 9px 0 10px;
}

#module_titleArea .nav_text {
  float: left;
  padding: 9px 0 0 14px;
}


#social_wrap{
  position:absolute;
  top:7px;
  right:13px;
}
#social_wrap li{
  float:left;
}
#social_wrap #twitter{
  width:110px !important;
}

.sh-name {
  font-size: 1.25em;
}

.sh-name a {
  color: inherit;
  text-decoration: none;
}


/* コンテナ --------------- */

#area_container {
  position: relative; /* pagetop固定用 */
  min-width: 980px;
  line-height: 1.5;
}


/* メインエリア --------------- */
#area_body {
  padding: 0 0 60px;
  font-size: 0.875rem;
}


/* フッター ---------- */

.area_footer {
  position: relative;
  padding: 45px 0;
  background-color: #eee;
}

.footer_container {
  width: 980px;
  margin: 0 auto;
}

.footer_pagetop > a {
  position: fixed;
  right: 20px;
  bottom: 0;
}
.footer_pagetop > a:hover {
  opacity: 0.7;
}

.footer_pagetop.is-absoluted > a {
  position: absolute;
  top: -46px;
  bottom: auto;
}

.footer_sitemap {
  display: flex;
  font-size: 14px;
}

.footer_sitemap a {
  color: inherit;
}

.footer_sitemap_nav > ul {
  margin-top: -7px;
}

.footer_sitemap_nav > ul > li {
  margin-top: 7px;
}

.footer_sitemap_nav > ul > li::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 6px;
  height: 5px;
  margin: -4px 4px -1px 0;
  background: url(/business/area/shared/img/arw_02.png) no-repeat;
}

.footer_sitemap_primary {
  flex-shrink: 0;
  padding-right: 40px;
  border-right: 1px solid #b6b6b6;
}

.footer_sitemap_branch {
  flex: 1;
  margin: 0 30px 0 33px;
}

.footer_sitemap_branch .footer_sitemap_nav > ul {
  display: flex;
  flex-wrap: wrap;
}

.footer_sitemap_branch .footer_sitemap_nav > ul > li {
  flex: 0 0 50%;
  max-width: 50%;
}

.footer_sitemap_branch_heading {
  margin-bottom: 9px;
  font-weight: bold;
}

.footer_aside {
  flex-shrink: 0;
  margin-left: auto;
}

.footer_bnrs > ul > li:not(:first-child) {
  margin-top: 14px;
}

.footer_bnrs > ul > li img {
  width: 100%;
  vertical-align: bottom;
}


/* jquery.bxslider.css 上書き --------------- */
.bx-wrapper {
  margin-bottom: 0;
}
.bx-wrapper .bx-viewport {
  -moz-box-shadow: 0 0 0;
  -webkit-box-shadow: 0 0 0;
  box-shadow: 0 0 0;
  border: 0;
  left: 0;
  background: inherit;
}
.bx-wrapper .bx-loading {
  background-image: url(/business/area/shared/img/loading.gif);
}



/* --------------------------------
  レイアウトモジュール
-------------------------------- */

/* 見出し付きセクション --------------- */
.mod_section {
  margin-top: 45px;
}

.mod_section > .header {
}
.mod_section > .header_border {
  padding-bottom: 4px;
  border-bottom: 1px solid #ccc;
}

.mod_section > .header .h {
  font-weight: bold;
}

.mod_section > .body {
  margin: 20px 0 0;
}

.mod_section > .body > p {
  margin: 20px 0 0;
}


/* 一覧（ニュースなど） --------------- */
.mod_index .list_item + .list_item {
  margin: 18px 0 0;
}

.mod_index .list_item {
  padding-left: 10px;
}

.mod_index .list_item .head {
  position: relative;
  margin-bottom: 2px;
  margin-left: -10px;
  padding: 0 0 0 10px;
}
.mod_index .list_item .head:before {
  content: '';
  display: block;
  position: absolute;
  top: 7px;
  left: 0;
  width: 6px;
  height: 5px;
  background: url(/business/area/shared/img/arw_01.png) no-repeat 0 0;
}

.mod_events-index .desc {
  font-size: 16px;
}

.mod_events-index .info {
  display: flex;
  align-items: center;
  margin-top: 3px;
}

.mod_events-index .end-message {
  margin-right: 10px;
  color: #d81e00;
  font-size: 12px;
}


/* リンクリスト --------------- */
.mod_link-list {
}
.mod_link-list_horizontal {
  margin-right: -30px;
}
.mod_link-list_horizontal .list_item {
  display: inline-block;
  margin-right: 30px;
}


/* リンクボタン（囲み線有り） --------------- */
.mod_link-btn {
  display: inline-block;
  font-size: 12px;
  line-height: 1;
}

.mod_link-btn a {
  display: inline-block;
  padding: 5px 9px 4px;
  border: 1px solid #999;
  background: #fff;
  color: #000;
}
.mod_link-btn a:before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: -5px 6px -2px 0;
  vertical-align: middle;
  background: url(/business/area/shared/img/arw_03.png) no-repeat 0 0;
}
.mod_link-btn a:hover {
  text-decoration: none;
}

.mod_link-btn-list {
}
.mod_link-btn-list .list_item + .list_item {
  margin-top: 10px;
}

/* MAPリンク */
.mod_link-btn_map {
  margin: 0 0 0 10px;
  vertical-align: 1px;
}


/* 画像＋キャプション --------------- */
.mod_img-caption {
  border-collapse: collapse;
  border-spacing: 0;
}

.mod_img-caption .item {
  vertical-align: top;
}

.mod_img-caption .img {
  margin-top: 0 !important;
}

.mod_img-caption .caption {
  margin: 4px 0 0;
}


/* テーブル --------------- */
.mod_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.mod_table th,
.mod_table td {
  padding: 24px 30px;
  border: 1px solid #ccc;
}

.mod_table th {
  width: 240px;
  padding: 24px 30px;
  background: #f4f3f3;
  font-size: 107.14%;
  text-align: left;
}

.mod_table td p {
  margin: 20px 0 0;
}
.mod_table td p:first-child {
  margin-top: 0;
}

.mod_table_horizontal {
}


/* 定義リスト --------------- */
.mod_dl {
}
.mod_dl_horizontal {
  display: table;
}

.mod_dl_horizontal dt,
.mod_dl_horizontal dd {
  display: table-cell;
}

.mod_dl_horizontal dt {
  white-space: nowrap;
}


/* アコーディオン --------------- */
.mod_accordions .mod_accordion:not(:first-child) {
  margin-top: 10px;
}

.mod_accordion {
  padding: 0 20px;
  border: 3px solid #ccc;
  background-color: #fff;
}

.mod_accordion_h {
  font-size: 18px;
}

.mod_accordion_trigger {
  display: block;
  position: relative;
  margin-right: -20px;
  margin-left: -20px;
  padding: 12px 20px;
  color: #005e8c;
  font-size: inherit;
}
.mod_accordion_trigger:hover {
  text-decoration: none;
}
.mod_accordion_trigger:visited {
  color: #005e8c;
}

.mod_accordion_trigger::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
  width: 17px;
  height: 17px;
  background: url(/business/area/shared/img/accordion_toggle.png) no-repeat;
}
.is-open .mod_accordion_trigger::after {
  background-position: 0 -17px;
}

.mod_accordion_body_inner {
  padding: 25px 0 30px;
  border-top: 1px solid #ccc;
}



/* --------------------------------
  汎用class
-------------------------------- */

/* 表示・レイアウト --------------- */
#area_container .u_ov-hidden { overflow: hidden !important;}

#area_container .u_block-center { margin: 0 auto;}

#area_container .u_al-center { text-align: center !important;}
#area_container .u_al-left { text-align: left !important;}
#area_container .u_al-right { text-align: right !important;}

#area_container .u_fl-left { float: left !important;}
#area_container .u_fl-right { float: right !important;}


/* ボックスモデル --------------- */
#area_container .u_w_half { width: 50% !important;
  -webkit-box-sizing : border-box;
  -moz-box-sizing : border-box;
  box-sizing : border-box;
}

#area_container .u_mt0 { margin-top: 0 !important;}
#area_container .u_mt5 { margin-top: 5px !important;}
#area_container .u_mt10 { margin-top: 10px !important;}
#area_container .u_mt20 { margin-top: 20px !important;}
#area_container .u_mt30 { margin-top: 30px !important;}
#area_container .u_mt40 { margin-top: 40px !important;}

#area_container .u_mr0 { margin-right: 0 !important;}
#area_container .u_mr5 { margin-right: 5px !important;}
#area_container .u_mr10 { margin-right: 10px !important;}
#area_container .u_mr20 { margin-right: 20px !important;}
#area_container .u_mr30 { margin-right: 30px !important;}
#area_container .u_mr40 { margin-right: 40px !important;}

#area_container .u_mb0 { margin-bottom: 0 !important;}
#area_container .u_mb5 { margin-bottom: 5px !important;}
#area_container .u_mb10 { margin-bottom: 10px !important;}
#area_container .u_mb20 { margin-bottom: 20px !important;}
#area_container .u_mb30 { margin-bottom: 30px !important;}
#area_container .u_mb40 { margin-bottom: 40px !important;}

#area_container .u_ml0 { margin-left: 0 !important;}
#area_container .u_ml5 { margin-left: 5px !important;}
#area_container .u_ml10 { margin-left: 10px !important;}
#area_container .u_ml20 { margin-left: 20px !important;}
#area_container .u_ml30 { margin-left: 30px !important;}
#area_container .u_ml40 { margin-left: 40px !important;}

#area_container .u_pt10 { padding-top: 10px !important;}
#area_container .u_pt20 { padding-top: 20px !important;}
#area_container .u_pt30 { padding-top: 30px !important;}
#area_container .u_pt40 { padding-top: 40px !important;}

#area_container .u_pr10 { padding-right: 10px !important;}
#area_container .u_pr20 { padding-right: 20px !important;}
#area_container .u_pr30 { padding-right: 30px !important;}
#area_container .u_pr40 { padding-right: 40px !important;}

#area_container .u_pb5 { padding-bottom: 5px !important;}
#area_container .u_pb10 { padding-bottom: 10px !important;}
#area_container .u_pb20 { padding-bottom: 20px !important;}
#area_container .u_pb30 { padding-bottom: 30px !important;}
#area_container .u_pb40 { padding-bottom: 40px !important;}

#area_container .u_pl10 { padding-left: 10px !important;}
#area_container .u_pl20 { padding-left: 20px !important;}
#area_container .u_pl30 { padding-left: 30px !important;}
#area_container .u_pl40 { padding-left: 40px !important;}


/* タイポグラフィ --------------- */
#area_container .font-serif { font-family: 'Noto Serif JP', serif;}

#area_container .txt11 { font-size: 78.57%;}
#area_container .txt13 { font-size: 92.86%;}
#area_container .txt15 { font-size: 107.14%;}
#area_container .txt17 { font-size: 121.43%;}
#area_container .txt20 { font-size: 142.86%;}

#area_container .txt_caution { color: #d81e00 !important;}


/* 装飾 --------------- */

/* 三角マーク */
#area_container .i_arw:before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 5px;
  margin: -4px 4px -1px 0;
  vertical-align: middle;
  background: url(/business/area/shared/img/arw_01.png) no-repeat 0 0;
}

/* 三角マーク（赤） */
#area_container .i_arw-red:before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: -5px 6px -2px 0;
  vertical-align: middle;
  background: url(/business/area/shared/img/arw_03.png) no-repeat 0 0;
}

/* 別ウィンドウアイコン */
#area_container a.i_blank:after {
  content: '';
  display: inline-block;
  width: 12px;
  height: 11px;
  margin: -7px 0 -4px 4px;
  vertical-align: middle;
  background: url(/business/area/shared/img/ico_blank.png) no-repeat 0 0;
}

/* PDFアイコン */
#area_container a.i_pdf:after {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: -11px 0 -7px 6px;
  vertical-align: middle;
  background: url(/business/area/shared/img/ico_pdf.png) no-repeat 0 0;
}

/* XLSXアイコン */
#area_container a.i_xlsx:after {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: -11px 0 -7px 6px;
  vertical-align: middle;
  background: url(/business/area/shared/img/ico_xlsx.png) no-repeat 0 0;
}

/* NEWアイコン */
#area_container .i_new {
  display: inline-block;
  margin: -10px 0 -6px 10px;
  vertical-align: middle;
}


/* 不透明度ロールオーバー --------------- */
.opacity {
  opacity: 1;
}
.opacity:hover {
  opacity: 0.7;
}


/* clearfix --------------- */

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}