@charset "UTF-8";

/** 各種文字調整 202608_Shin **/
main h1,
main h2,
main h3,
main p,
main .email,
main .wysiwyg,
main .article_text table tr,
main .date,
main .item_icon,
main .event_lead,
/*main .tagLink.tags2,*/
main .index_module_link {
  font-family: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif !important;
  font-size: 1.15em;
  line-height: 1.9 !important;
  color: #111;
}
/* イベントリード */
main .event_lead {
  font-size: 1.05em;
  font-weight: 500;
  color: #222;
}
/* 978px以下 */
@media (max-width: 978px) {
  main .event_lead {
    font-size: .8em;
  }
}
/* h2, h3 */
main h2, main h3 {
/*  font-size: 1.20em !important;*/
}
/* 一覧系ページ 一覧文字リンク色 */
body:not(.article) main .index_module .item_icon a {
  color: #111;
}
/* 978px以下 */
@media (max-width: 978px) {
  main .wysiwyg {
    font-size: 1em;
  }
}

/** 全ての背景色 202608_Shin **/
#contents {
/*  background-color: #fefeff !important;*/
}

/** レイアウト 202608_Shin **/
/* コンテンツエリア */
#contents {
/*  padding-bottom: 3em;*/
  margin-bottom: 0;
}
/* メイン カラム */
main .main_column {
  margin-top:0;
  padding-top: 3.5em;
  padding-bottom: 0.5em;
  margin-bottom:0;
}
/* 記事系ページ ブロック（最後のブロック以外） */
body.article .mimg_block .main_column:not(:last-child) {
  padding-bottom: 3em;
}


/** リンクhover時 202608_Shin **/
main a img,
#contents .main_image a img {
  transition: .25s !important;
}
main a img:hover,
#contents .main_image a img:hover {
  opacity: 0.85 !important;
  transition: .25s !important;
}


/** パンクズリスト調整 202608_Shin **/
.top_navi {
  margin-bottom: 1em;
}
/* IBTリンク */
.breadcrumb li:nth-child(2) a {
  color: #003e80 !important;
}
/* 自ページ */
.breadcrumb li:last-child {
  color: #666;
}


/** IBTロゴ（画面右下） 202608_Shin **/
main #ibt-home-lr {
  margin-top: 6em !important;
}
body.article main #ibt-home-lr {
  margin-top: 4em !important;
}
/* ボヤける不具合 -> 倍解像度で高解像度対応化 -> レスポンシブで表示バグ(簡単には直せない) */
main #ibt-home-lr img {
/*  width: 400px;
  text-align: right;
  height: auto;*/
}
/* hover調整 */
main #ibt-home-lr img:hover {
  opacity: 0.5 !important;
}


/** テーブル 202608_Shin **/
/* レイアウト */
main table {
  margin-top: .8em;
  margin-bottom: .8em;
  width: auto !important;
}
/* 枠線 余白padding */
main td {
  border: 1px solid #909090 !important;
  padding: .8em 1.2em !important;
}
/* 978px以下 */
@media (max-width: 978px) {
  main td {
    padding: .6em .8em !important;
  }
}
/* 文字 */
main table th, main table td {
  font-size: .92em;
  line-height: 1.7;
}
/* 978px以下 */
@media (max-width: 978px) {
  main table th, main table td {
  font-size: .84em;
  line-height: 1.5;
  }
}
/* 文字 small */
main table th, main table td small {
  font-size: .88em;
}

/** TOPページ IBT テキストメニュー整形 202608_Shin **/
/* IBTメニュー用カラム(.ibt-menuの親) 下ボーダ削除 */
.main_column_middle.cf:has(.ibt-menu) {
  border-bottom: none;
}
.main_column:has(.ibt-menu) {
  padding-top: 0 !important;
}
.article_module:has(.ibt-menu) {
  margin-top: 1em;
}
.ibt-menu {
  text-align: right;
  font-weight: 600;
  font-size: 1.15em;
  margin-bottom: 1em;
}

/** :not(.article) 一覧系ページ タイトル 202608_Shin **/
body:not(.article) .page_title_inner {
  box-shadow: none;
  border-bottom: 6px solid #0080cc;
}
body:not(.article) .title_l {
  background-image: none;
  background: linear-gradient(to right, #004ea2, #93a5d0);
  background: linear-gradient(to right, #004ea2 33%, #8596be);
  background: linear-gradient(to right, #004ea2 33%, #5777b2);
  background: linear-gradient(to right, #004ea2, #0080cc);
}

/** .article　記事系ページ タイトル 202608_Shin **/
body.article .page_title_inner {
/*  height: 7em;*/
  margin-left: .5em;
  margin-right: .5em;
  padding-left: 1.5em;
  border: none;
  box-shadow: none;
  border-radius: 1.4em;
  background: linear-gradient(to right, #004ea2, #afb0d4);
  background: linear-gradient(to right, #004ea2, #efcbdc);
  background: linear-gradient(to right, #004ea2 30%, #BBAFCB);
  background: linear-gradient(to right, #004ea2, #0080cc);
  background: linear-gradient(to right, #004ea2, #3397d1);
  background: linear-gradient(to right, #004ea2 33%, #919cc8);
}
body.article .page_title_inner .title_l {
  padding-top: 2em;
  padding-bottom: .8em;
}
/* 978px以下 */
@media (max-width: 978px) {
  body.article .page_title_inner .title_l {
    padding-top: 1.2em;
  }
  body.article .page_title_inner h1 {
    font-size: 1.4em !important;
  }
}
body.article .page_title_inner h1,
body.article .page_title_inner .sub_title span {
  color: #fff;
  padding-top: .3em;
}
body.article .page_title_inner h1 {
  font-size: 1.7em;
  font-weight: 500;
  line-height: 1.5 !important;
}
body.article .page_title_inner .sub_title {
  margin-top: .4em;
  font-size: 1.4em;
}
body.article .page_title_inner .sub_title span {
  font-size: .8em;
  line-height: 1 !important;
}


/** カラム h2 色変更 202608_Shin **/
main .block_title {
  margin-bottom: 1.5em;
  border-top: 6px solid #0080cc;
/*  border-image: linear-gradient(to right, #004ea2, #0080cc) 1;*/
}
main .main_column .block_title h2.sub-h2 {
  padding-top: .3em;
  background: linear-gradient(to right, #004ea2, #0080cc);
  background: linear-gradient(to right, #004ea2 33%, #8596be);
  background: linear-gradient(to right, #004ea2 33%, #5777b2);
  background: linear-gradient(to right, #004ea2, #0080cc);
/*  background-color: #004ea2;*/
}
body.article main .headlineDef:has(h2.sub-h2) {
  border-top: 6px solid #0080cc;
}
body.article main .headlineDef:has(h3.sub-h3) {
  border-top: none !important; 
}

/** h3装飾 **/
body.article main .sub-h3 {
  border-left: 7px solid #387fc6 !important;
  margin-top: .5em;
  padding: .1em 0em .1em .8em !important;
  font-size: 1.2em !important;
}
/** h2装飾 **/
body.article main h2.sub-h2 {
  color: #fff !important;
  border-left: none !important;
}

/** h2 添字子文字 **/
h2 .sub-ibt {
  font-size: .65em !important;
  font-weight: 400;
  color: #e2edf5;
}

/** カラム下 ボーダ＆ドロップシャドウ削除 202608_Shin **/
main .main_column_middle.cf {
  padding-bottom: 2.5em;
/*  border-bottom: 3px solid #004ea2;*/
  border-bottom: none;
  box-shadow: none !important;
}


/** 一覧系ページ h3 装飾調整 **/
body:not(.article) main .sub-h3 {
  margin-top: 0;
  border: none !important;
  background: linear-gradient(to right, #004ea2, #0080cc);
}
body.article main .sub-h3 {
  font-size: 1.1em;
}


/** 一覧系ページ NEWS, EVENT  202608_Shin **/
/* 日付 */
body:not(.article) .index_module ul:not([class]) .news .date {
  font-weight: 400;
  color: #666;
  font-size: .85em !important;
}
@media (max-width: 978px) {
  body:not(.article) .index_module ul:not([class]) .news .date {
    font-size: .75em !important;  
  }
}
/* タイトル */
body:not(.article) .index_module ul:not([class]) .news .item_icon {
  font-weight: 600;
}
@media (max-width: 978px) {
  body:not(.article) .index_module ul:not([class]) .news .item_icon {
    padding-top: 0em;
  }
}
/* イベント 右シフト */
body:not(.article) .index_module ul:not([class]) .news .event {
  padding-left: 9.5em;
}
@media (max-width: 978px) {
  body:not(.article) .index_module ul:not([class]) .news .event {
    padding-left: 0;
  }
}
/* 開催日 */
body:not(.article) .index_module ul:not([class]) .news .event_date {
  font-weight: 600;
  color: #111;
}
@media (max-width: 978px) {
  body:not(.article) .index_module ul:not([class]) .news .event_date  {
    font-size: 1em;
  }
}

/** イベントビジュアル 角丸 ★#main-image付与 202608_Shin **/
main #main-image img {
  border-radius: 2em;
  margin-bottom:2em;
}
/* 978px以下 */
@media (max-width: 978px) {
  main #main-image img {
    border-radius: 1em;
  }
}


/** 画像（文章中）上部調整 202608_Shin **/
main .article_image {
  margin-top: 1.5em !important;
}


/** リンクボタン 202608_Shin **/
main .linkBtnT a {
  background-color: #004ea2;
  margin-right: 1em;
  border-radius: 999em;
}


/** アンカー（上部ページ内リンク） 202608_Shin **/
main .anchor_list {
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 25px;
  padding-right: 25px;
}
main .anchor_a li {
  margin-right: .5em;
}
main .anchor_a li a {
  padding-right: .5em;
  border-radius: 999em;
}
@media (max-width: 980px) {
main .anchor_a li {
  margin-bottom: .4em;
}
main .anchor_a li a {
  font-size: .8em;
}
}
/* 記事系ページの最後のアンカーは非表示 */
.article .anchor_a li:last-child {
  display: none;
}


/** タイル表示 サムネイル表示 202608_Shin **/
/* タイトル IBT部 */
.index_module:has(.tile1) .item_icon {
  margin-right: 1em;
}
.index_module:has(.tile4) .item_icon {
  font-size: .84em !important;
}
/* 当該カラム背景色 */
#contents_inner .main_column:has(.tile3),
#contents_inner .main_column:has(.tile4),
#contents_inner .main_column:has(.tile5) {
  background-color: #f2f3f4 !important;
}
/* 記事系ページの場合 上部余白 */
body.article #contents_inner .main_column:has(.tile3),
body.article #contents_inner .main_column:has(.tile4),
body.article #contents_inner .main_column:has(.tile5) {
  padding-top: 6em;
}
/* カード背景＆輪郭 */
.index_module .tile3 li.news,
.index_module .tile4 li.news,
.index_module .tile5 li.news {
  background-color: #fff;
  box-shadow: none !important;
  border: .8px solid #777;
  border-radius: 15px; /* カード角丸 */
}
.index_module .tile4 .image_text {
  border-radius: 15px !important; /* カード角丸 */
}
.index_module .tile5 li.news .image_text {
  box-shadow: none !important; /* tile5内部影削除 */
}

/* サムネイル上部 角丸 */
.index_module .tile3 .image,
.index_module .tile4 .image,
.index_module .tile5 .image {
  border-radius: 15px 15px 0 0; /* カード角丸 */
}

/* 文字領域調整 */
.index_module .tile3 .newstext,
.index_module .tile4 .newstext,
.index_module .tile5 .newstext {
  padding-top: .7em !important;
}
/* 日付調整 */
.index_module .tile1 .date,
.index_module .tile3 .date,
.index_module .tile4 .date,
.index_module .tile5 .date {
  font-weight: 400;
  font-size: .82em !important;
  color: #888;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.index_module .tile4 .date {
  font-size: .74em !important;
}

/* タイトル強調 */
.index_module .tile1 .item_icon,
.index_module .tile3 .item_icon,
.index_module .tile4 .item_icon,
.index_module .tile5 .item_icon {
  line-height: 1.5 !important;
  margin-bottom: .3em !important;
  font-weight: 600;  
}

/* イベント情報調整 */
.index_module .tile3 .event,
.index_module .tile4 .event,
.index_module .tile5 .event {
  padding-top: .6em !important;
  line-height: 1.3;
}
.index_module .tile4 .event {
  font-size: .72em;
  color: #888;
}
/* 開催日強調 */
.index_module .tile1 .event_date,
.index_module .tile3 .event_date,
.index_module .tile4 .event_date,
.index_module .tile5 .event_date {
  font-weight: 600;
  color: #111;
}
/* カテゴリー アイコン 表示調整 */
.index_module .newstext .type {
  display: inline-block;
  padding: 0em 1.5em;
  line-height: 1.4;
  font-size: .75em;
  color: #222;
  border: 1px solid #888;
  border-radius: .3em;
}
/* hover時装飾無し */
.index_module .newstext .type:hover {
  text-decoration: none !important;
}
/* 各カテゴリー表示調整 */
.index_module .tile1 .newstext .type {
  font-size: .7em;
  border: 1px solid #777;
}
.index_module .tile3 .newstext .type {
  font-size: .75em;
}
.index_module .tile4 .newstext .type {
  font-size: .65em;
}
.index_module .tile5 .newstext .type {
  font-size: .65em;
}
/* 978px以下 */
@media (max-width: 978px) {
  .index_module .newstext .type {
    font-size: .65em;
  }
  .index_module .tile3 .newstext .type {
    font-size: .7em;
    padding: .2em .4em;
  }
}

/* tile1 上部調整 */
.index_module .tile1 li.news a {
  padding-top: .7em;
  padding-bottom: 1em !important;
}
/* tile1 横幅 調整 */
.index_module ul.tile1 {
  width: auto;
  margin-left: 8%;
  margin-right: 5%;
}
/* tile1 横幅 調整 一覧系ページ */
.index_module.news-list-tile1  ul.tile1 {
  margin-right: auto;
  margin-left: auto;
  }
/* 978px以下 */
@media (max-width: 978px) {
  .index_module ul.tile1 {
    margin-right: auto;
    margin-left: auto;
  }
}
/* tile1 TOPページ タイトル文字色 調整 */
.index_module .tile1 .item_icon {
  color: #131313 !important;
}
/*.index_module:not(.news-list-tile1) .tile1 .item_icon {
  color: #09090 !important;  
}*/
/* tile1 サムネイル 調整&角丸 */
.index_module .tile1 .image img {
  margin-top: .5em;
  border: .5px solid #000;
  border-radius: 6px; /* 角丸 */
}
/* tile1 サムネイル サイズ */
.index_module .tile1 .image,
.index_module .tile1 .image img {
  width: 80px;
  width: 94px;
  margin-right: 1.2em;
}
/* tile1, tile4 カテゴリ表示 */
.index_module .tile4 .tagLink.tags2,
.index_module .tile1 .tagLink.tags2 {
  margin-left: 0;
  margin-right: .5em;
  color: #222;
  border: 1px solid #888;
  border-radius: 3px;
}
/* tile1 TOPページのみカテゴリ表示背景色 */
.top-tile1 .tagLink.tags2 {
  background-color: #f9f9f9;
}
/* tile1 TOPページのみ日付表示調整 */
.top-tile1 .tile1 .date {
  color: #666;
}
..news-list-tile1 .tile1 .date {
  color: #555;
}
/* .tile1 イベント情報表示位置シフト */
.index_module .tile1  .event {
  margin-left: 8.7em;
}
/* 978px以下 */
@media (max-width: 978px) {
  .index_module .tile1 .event {
    margin-left: 0;
  }
}

/* tile4 カテゴリ表示 サイズ調整 */
.index_module .tile4 .tagLink.tags2 {
  font-size: .62em !important;
}
/* tile3 カテゴリ表示 */
.index_module .tile3 .tagLink.tags2 {
  margin-left: 0;
  margin-right: .5em;
  color: #222;
  border: 1px solid #888;
  border-radius: 3px;
}
/* tile3 カテゴリ表示 タグアイコン 除去 NG */
.index_module .tile3 span.tagLink.tags2::before {
  content: none !important;
}


/** タイル表示下「一覧へ」ボタン 202608_Shin **/
main .main_column_middle .index_module_link {
  margin-top: 2em;
}
main .main_column_middle .index_module_link .list a {
  border-radius: 999em;
  border: .7px solid #111;
  background-color: #dcdcdc;
  transition: background-color 0.3s;
  color: #111 !important;
}
main .main_column_middle .index_module_link .list a:hover {
  text-decoration: none;
/*  opacity: 0.6;*/
  background-color: #c9c9c9;
  transition: background-color 0.3s;
}


/** NEW表示 新着 表示調整 202608_Shin **/
main .newicon .icon {
  width: 46px;
  text-align: center;
  font-size:.85em;
  padding-top: .3em;
  padding-bottom: .3em;
  border-radius: .3em;
}


/** Google系 Embed 表示調整 202608_Shin **/
/** Youtube表示調整 **/
/* 画面フィット&レスポンシブ対応 */
main .article_text iframe[src*="youtube"] {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  margin-top: 1.5em;
  border-radius: 1.5em;
  border: .8px solid #777 !important;
}
/** GoogleMap 表示調整 **/
main .article_text iframe[src*="/maps/"] {
  margin-top: 1.5em;
  border-radius: 1.5em;
  border: .8px solid #777 !important;
}
/* 両者 978px以下 */
@media (max-width: 978px) {
  main .article_text iframe[src*="youtube"],
  main .article_text iframe[src*="/maps/"] {
      border-radius: 1.2em !important;
  }
}


/*** ------------ テンプレート バグ修正 ------------ ***/

/** 一覧系タイトルアイコンバグ修正 202608_Shin **/
.title_area .title_area_bg .title_innner {
  margin-left: .8em;
}
/* 1120px以下 */
@media (max-width: 1120px) {
  .title_area .title_area_bg {
    margin-top: .001em;
  }
  .title_area .title_area_bg .title_innner {
    margin-left: 0;
  }
}

/** 更新日表示バグ修正 202608_Shin **/
main .title_area_txt .date,
main .title_area_txt .info_author {
  max-width: 1440px;
  margin: 0 auto;
  padding-right: 1em;
}

/** 謎の h2.sub-h3 h3.sub-h2 上部border表示バグ修正 202608_Shin **/
main .block_title:has(h2.sub-h3),
main .module_title:has(h3.sub-h2) {
  border-top: none;
}


/** メインビジュアル表示バグ修正 202608_Shin **/
#contents .main_image {
  padding-top: 0 !important;
}
/* 978px以下 */
@media (max-width: 978px) {
  #contents .main_image {
    margin-top: 0 !important;
  }
}

