@charset "UTF-8";
/********************** トップページのスタイル **********************/
.main {
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: visible;
  background: #FFF;
}
.main h2 {
  color: #FFF;
  padding: 10px 4px 10px 44px;
  background: #6B6C83;
    position: relative;
}
.main h2::before {
  content: '';
  position: absolute;
  left: 12px;
  background: url(img/rekimin_h2.png) no-repeat;
  background-size: auto;
  background-size: contain;
  height: 22px;
  width: 22px;
  top: 0.9em;
  top: 11px;
}
.main h2 a {
  color: #FFF;
  display: block;
}
.main h2 a:hover {
  text-decoration: none;
  color: #fff;
}
.main .h2 {
  background:#6B6C83;
  overflow: hidden;
  position: relative;
}
.main .h2::before {
  content: '';
  position: absolute;
  left: 12px;
  background: url(img/rekimin_h2.png) no-repeat;
  background-size: auto;
  background-size: contain;
  height: 22px;
  width: 22px;
  top: 0.7em;
}
.main .h2 p {
  float: right;
  padding: 0;
  margin: 0;
}
.main .h2 h2 {
  float: left;
  padding: 8px 8px 4px 8px;
  padding: 0;
}
.main li {
  position: relative;
  padding-left: 16px;
}
.main li::before {
  display: block;
  content: '';
  position: absolute;
  top: 0.6em;
  left: 3px;
  width: 7px;
  height: 7px;
  border-right: 1px solid #52546C;
  border-bottom: 1px solid #52546C;
  transform: rotate(-45deg);
}
.main li .list_icon img {
  vertical-align: middle;
  margin-top: -5px;
  margin-right: 4px;
  max-height: 18px;
}
@media only screen and (max-width: 1024px) {
  .main {
    padding: 0 0 60px;
  }
}
@media only screen and (max-width: 480px) {
  .main .h2 p {
    float: right;
    padding: 8px 20px 8px 8px;
    margin: 0;
  }
}
/**** 分類1のスタイル ****/
.main .category_p01, .sub .main .full_category-box {
  padding: 0;
}
.sub .main .full_category-box {
  margin-top: 0;
  padding-top: 24px;
}
.sub .main .full_category-box .category_p01 {
  padding: 10px;
  border: 1px solid #6B6C83;
}
@media only screen and (max-width: 1024px) {
  .sub .main .full_category-box {
    padding: 24px 0 0;
  }
}
.sub .main .full_category-box .category_p01 p {
  margin-top: 0;
}
.main_out-box {
  justify-content: center;
}
/**** 緊急情報のスタイル ****/
.main_out-box .emergency_out-box {
  margin: 0 auto;
  padding: 24px 32px;
  max-width: 960px;
  background: #FFF;
}
.main_out-box .emergency_out-box .emergency {
  margin-top: 0;
}
.main_out-box li {
  position: relative;
  padding-left: 16px;
}
.main_out-box li::before {
  position: absolute;
  content: '';
}
.main .emergency {
  margin-top: 24px;
}
.main_out-box .emergency_out-box .emergency .h2 {
  overflow: hidden;
}
.main_out-box .emergency_out-box .emergency .h2 p {
  float: right;
}
.main_out-box .emergency_out-box .emergency h2 {
  float: left;
  font-size: 120%;
}
.main_out-box .emergency_out-box .emergency h2, .main_out-box .emergency_out-box .emergency .h2, .main .emergency h2, .main .emergency .h2 {
  background: #aC1D33;
  color: #fff;
  padding: 4px 4px 3px 8px;
  border-radius: 6px 6px 0 0;
}
.main_out-box .emergency_out-box .emergency_lower, .main .emergency_lower {
  border: 2px solid #a90000;
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0 0 6px 6px;
  background-color: #ffefef;
}
.main_out-box .emergency_out-box .emergency_lower li::before, .main .emergency_lower li::before {
content: '';
  display: inline-block;
  position: absolute;
  background: url("img/rekimin_icon01.png") no-repeat;
    background-size: auto;
  background-size: auto;
  background-size: auto;
  background-size: contain;
  width: 10px;
  height: 12px;
  top: 6px;
  left: 1px;
  border-right: 0px solid #52546C;
  border-bottom: 0px solid #52546C;
  transform: rotate(0deg);
  
}
/**** 重要なお知らせのスタイル ****/
.main_out-box .emergency_out-box .important, .main .important {
  margin-top: 24px;
}
.main_out-box .emergency_out-box .important .h2 {
  overflow: hidden;
}
.main_out-box .emergency_out-box .important .h2 p {
  float: right;
  margin-top: 0;
}
.main_out-box .emergency_out-box .important h2, .main_out-box .emergency_out-box .important .h2, .main .important h2, .main .important .h2 {
  background: #b13800;
  color: #fff;
  border-radius: 6px 6px 0 0;
  padding: 4px 4px 3px 8px;
}
.main_out-box .emergency_out-box .important h2, .main .important h2 {
  padding: 8px 4px 0 8px;
}
.main_out-box .emergency_out-box .important h2 {
  float: left;
  font-size: 120%;
}
.main_out-box .emergency_out-box .important .h2 p, .main .important .h2 p {
  padding: 8px 12px 12px 0;
}
.main_out-box .emergency_out-box .important_lower, .main .important_lower {
  border: 2px solid #b13800;
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0 0 4px 4px;
}
.main_out-box .emergency_out-box .important_lower li::before, .main .important_lower li::before {
content: '';
  display: inline-block;
  position: absolute;
  background: url("img/rekimin_icon01.png") no-repeat;
    background-size: auto;
  background-size: auto;
  background-size: auto;
  background-size: auto;
  background-size: contain;
  width: 10px;
  height: 12px;
  top: 6px;
  left: 1px;
  border-right: 0px solid #52546C;
  border-bottom: 0px solid #52546C;
  transform: rotate(0deg);
}
.main_out-box .emergency_out-box li::before {
  left: 0;
}
/**** 画像リストのスタイル ****/
.main .ilist {
  margin-top: 24px;
}
.main .ilist h2 {
  /*! border-radius: 6px; */
}
.main .ilist_lower ul {
  display: flex;
  flex-flow: row wrap;
}
.main .ilist_lower ul > li {
  display: flex;
  padding-left: 0;
  margin-right: 12px;
  text-align: center;
  width: calc((100% - 60.1px) / 6);
}
.main .ilist_lower ul > li:nth-of-type(6n) {
  margin-right: 0;
}
.main .ilist_lower ul > li::before {
  display: none;
}
.main .ilist_lower ul > li a {
  display: block;
  height: 100%;
  width: 100%;
  text-decoration: none;
}
.main .ilist_lower ul > li .ilist_in {
  /*! background: #E8E8EB; */
  padding: 16px;
  height: 100%;
  width: 100%;
  border: 1px solid #6B6C83;
}
.main .ilist_lower .ilist_right {
  margin-top: 8px
}
.main .ilist_lower ul > li .ilist_title {
  text-align: center;
}
.main .ilist_lower ul > li .ilist_text {
  text-align: left;
  font-size: 85%;
  margin-top: 0;
}
.main .ilist .ilist_title {
  margin-top: 0;
}
@media only screen and (max-width: 1024px) {
  .main .ilist_lower ul > li {
    width: calc((100% - 36.1px) / 3);
  }
  .main .ilist_lower ul > li:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 480px) {
  .main .ilist_lower ul > li:nth-of-type(n) {
    margin-right: 0;
    width: 100%;
  }
}
/**** 画像リスト2のスタイル ****/
.main .ilist2 {
  margin-top: 24px;
}
.main .ilist2_lower ul {
  display: flex;
  flex-flow: row wrap;
}
.main .ilist2_lower ul > li {
  padding-left: 0;
  margin-right: 12px;
  text-align: center;
  width: calc((100% - 36.1px) / 4);
}
.main .ilist2_lower ul > li:nth-of-type(4n) {
  margin-right: 0;
}
.main .ilist2_lower ul > li::before {
  display: none;
}
.main .ilist2_lower ul > li a {
  display: block;
  height: 100%;
  width: 100%;
  text-decoration: none;
}
.main .ilist2_lower ul > li .ilist_in {
  /*! background: #E8E8EB; */
  padding: 16px;
  display: flex;
  height: 100%;
  width: 100%;
  border: 1px solid #6B6C83;
}
.main .ilist2_lower ul > li .ilist_left {
  align-self: center;
  width: 40%;
}
.main .ilist2_lower ul > li .ilist_right {
  align-self: center;
  width: 54%;
  margin-left: 6%;
}
.main .ilist2 .ilist_title {
  margin-top: 0;
}
@media only screen and (max-width: 1024px) {
  .main .ilist2_lower ul > li {
    width: calc((100% - 24.1px) / 2);
  }
  .main .ilist2_lower ul > li:nth-of-type(3n) {
    margin-right: 12px;
  }
  .main .ilist2_lower ul > li:nth-of-type(even) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 480px) {
  .main .ilist2_lower ul > li:nth-of-type(n) {
    margin-right: 0;
    width: 100%;
  }
}
/**** スライドショーのスタイル ****/
.vis {
  position: relative;
  margin-top: 24px;
}
.vis h2 {
  padding: 0;
  margin: 0;
  height: 0;
}
.vis .vis_bg {
  position: relative;
}
.vis .vis_bg li {
  margin: 0;
  padding: 0;
}
.vis .vis_bg li::before {
  display: none;
}
/**** メインビジュアル ****/
.vis_wrap .head_vis {
  margin-top: 0;
  background: #6A6C83;
  box-shadow: none;
  padding: 0;
  width: auto;
  overflow: inherit;
}
.head_vis h2 {
  height: 0;
  background: none;
}
.head_vis .vis_bg {
  display: block;
  margin: 0 auto;
  width: 960px;
  height: auto;
}
@media only screen and (max-width: 1024px) {
  .main_out-box .vis_wrap .head_vis {
    text-align: center;
  }
}
@media only screen and (max-width: 960px) {
    .head_vis .vis_bg {
    width: 100%;
  }
}
/**** メインビジュアル（フルページ用） ****/
/*
.vis-fullbox .vis_wrap .head_vis {
	margin: 24px auto 0;
	width: 100%;
	border-top: 7px solid #752100;
}
.vis-fullbox .head_vis .vis_bg {
	width: 98%;
}
*/
/**** 分類のスタイル ****/
.main .category {
  margin-top: 24px;
}
.main .category h2 {
  /*! color: #0033CC; */
  /*! border-bottom: 2px solid #000; */
  /*! padding: 14px 0px 14px 40px; */
}
.main .category2 {
  margin-top: 24px;
}
.main .category3 {
  margin-top: 24px;
}
.main .category4 {
  margin-top: 24px;
}
.main .category5 {
  margin-top: 24px;
}
.main .category2 h2, .main .category3 h2, .main .category4 h2 {
  color: #0033CC;
  padding: 10px 4px 10px 44px;
}
.main .category_3_ul {
  font-size: 85%;
}
.main .category_lower {
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .category_lower ul li ul.category_3, .main .category_lower ul li ul.category_4 {
  display: flex;
  flex-wrap: wrap;
}
.main .category_lower ul li ul.category_3 li, .main .category_lower ul li ul.category_4 li {
  margin-right: 16px;
}
.main .category_lower ul li ul.category_3 li:last-child, .main .category_lower ul li ul.category_4 li:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 1024px) {
  .main .category_lower ul li ul.category_3, .main .category_lower ul li ul.category_4 {
    display: inherit;
  }
}
/**** 各課の窓口のスタイル ****/
.main .kakuka {
  margin-top: 24px;
}
/**** 催し物・講座のスタイル ****/
.main .event {
  margin-top: 24px;
}
.main .event h2 {
  color: #0033CC;
  padding: 10px 4px 10px 44px;
}
.main .event_lower {
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .event_lower ul.event_month li {
  padding-left: 0;
}
.main .event_lower ul.event_month li::before {
  display: none;
}
.main .event_lower ul.event_month li {
  border-bottom: none;
  padding-bottom: 0;
}
.main .event_lower li {
  border-bottom: 1px solid #ccc;
  padding-bottom: 8px;
}
.main .event_lower li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.main .event_lower li:first-child::before {
  top: .8em;
}
.main .event_lower li .eve_cate {
  display: inline-block;
  font-size: 85%;
  background: #007bbb;
  color: #fff;
  border-radius: 4px;
  padding: 4px 4px 2px;
  margin-right: 8px;
  text-align: center;
  vertical-align: top;
  line-height: 1;
  min-width: 80px;
}
.main .event_lower ul:not(.event_month) li {
  padding-left: 20px;
}
.main .event_lower ul:not(.event_month) li span.list_icon {
  margin-right: 4px;
}
.main .event_lower .event_month li {
  margin-right: 8px;
  display: inline-block;
  font-size: 130%;
  margin-top: 8px;
  margin-bottom: 4px;
}
.main .event_lower .event_month img {
  vertical-align: middle;
}
.event_month li.pre a, .event_month li.next a {
  display: inline-block;
  background: -moz-linear-gradient(top, #BCBDBD, #FFF);
  background: -webkit-linear-gradient(top, #BCBDBD, #FFF);
  /*! background: linear-gradient(to bottom, #BCBDBD, #FFF); */
  border: 1px solid #6B6C83;
  font-size: 81.25%;
  margin-bottom: 10px;
  text-decoration: none;
  padding: 0 5px;
  position: relative;
  background: #E8E8EB;
}
.event_month li.pre a {
  padding-left: 16px;
  border-radius: 4px;
}
.event_month li.next a {
  padding-right: 15px;
  border-radius: 4px;
}
.event_month li.pre a:before, .event_month li.next a:before {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -4px;
  width: 0;
  height: 0;
  border-style: solid;
}
.event_month li.pre a:before {
  left: 4px;
  border-width: 4px 6px 4px 0;
  border-color: transparent #222 transparent transparent;
}
.event_month li.next a:before {
  right: 4px;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #222;
}
@media only screen and (max-width: 1024px) {
  .main .event_lower li {
    border-bottom: none;
  }
}
/**** イベントカレンダーのスタイル ****/
.main .calendar {}
.main .calendar_lower {
  /*! overflow: auto; */
  padding: 4px 16px 16px;
  /*! border: 2px solid #358035; */
  /*! border-radius: 10px; */
}
.main .calendar_lower li {
  padding-left: 0;
}
.main .calendar_lower li::before {
  display: none;
}
.main .calendar_lower .event_month li {
  margin-right: 8px;
  display: inline-block;
}
.main .calendar_lower .event_month img {
  vertical-align: middle;
}
.main .calendar table {
  width: 100%;
}
.main .calendar caption {
  position: absolute;
  display: none;
}
.main .calendar th {
  border: 1px solid #6B6C83;
  text-align: center;
  width: calc(100%/7);
  background: #D3D3DD;
}
.main .calendar th img {
  vertical-align: middle;
}
.main .calendar td {
  border: 1px solid #6B6C83;
  text-align: center;
}
.main .calendar .sun {
  background: #ffd8d6;
}
.main .calendar .sat {
  background: #d9e4fc;
}
.main .calendar .today {
  background: #c9171e;
  color: #fff;
}
.main .calendar .sun span {
  display: block;
  margin-top: 2px;
  font-size: 85%;
}
.main .calendar .today > strong, .main .calendar .today > a, .main .calendar .today > a strong {
  color: #fff;
}
/**** 新着情報のスタイル ****/
.main .new {
  margin-top: 24px;
}
.main .new h2 {
  color: #FFF;
  padding: 10px 4px 10px 44px;
  background: #6B6C83;
  position: relative;
}
.main .new_lower {
  border-top: none;
  padding: 4px 16px 24px;
  border-radius: 0;
}
.main .new div.date {
  margin-left: 0;
}
.main .new ul li {
  overflow: hidden;
  border-bottom: 1px solid #ccc;
  padding: 0 20px 10px 18px;
  border-bottom: 2px dotted #808083;
}
.main .new ul.more li {
  overflow: visible;
  border-bottom: none;
  padding: 0;
  width: auto;
  margin-top: 0;
}
.main .new ul.more li.rss a {
  color: #0033CC;
}
.main .new ul.more li.rss a:hover {
  background: initial;
  color: #9f0000;
  background: #E8E8EB;
}
.main .new ul li.catch_lst .new_lst {
  margin-right: 108px;
}
.main .new ul li.catch_lst .new_lst span.list_icon {
  margin-right: 4px;
}
.main .new ul li.catch_lst .new_img {
  float: right;
  margin-top: 0;
}
@media only screen and (max-width: 1024px) {
  .main .new_lower ul.more {
    margin: 12px 0 6px;
    justify-content: flex-end;
  }
}
@media only screen and (max-width: 600px) {
  .main .new_lower ul.more {
    flex-wrap: nowrap;
    margin-bottom: -12px;
  }
  .main .new_lower ul.more li {
    width: calc((100% - 8px) / 2);
  }
}
/**** トピックスのスタイル ****/
.main .topics {
  margin-top: 24px;
}
.main .topics .h2 {
  color: #0033CC;
  padding: 10px 4px 10px 44px;
}
.main .topics .h2 h2 {
  background: transparent;
  padding: 0;
  position: relative;
}
.main .topics .h2 h2:before {
 left: -32px;
 top: 0.1em;
}
.main .topics_lower {
  border-top: none;
  padding: 4px 16px 14px 12px;
  border-radius: 0;
}
.main .topics_lower li {
  border-bottom: 1px solid #ccc;
  padding: 0 20px 10px 18px;
  border-bottom: 2px dotted #808083;
}
.main .topics_lower li span.list_icon {
  margin-right: 4px;
}
.main .topics_lower ul.more li {
  border-bottom: none;
  padding: 0;
  margin-top: 0px;
  width: fit-content;
}
.main .topics_lower ul.more li.rss a {
  color: #0033CC;
}
.main .topics_lower ul.more li.rss a:hover {
  background: initial;
  color: #9f0000;
  background: #E8E8EB;
}
.main .topics div.date {
  margin-left: 0;
}
.main .topics ul li.catch_lst .topics_lst {
  margin-right: 100px;
}
.main .topics ul li.catch_lst .topics_img {
  float: right;
  margin-top: 0;
}
@media only screen and (max-width: 1024px) {
  .main .topics_lower li {
    border-bottom: none;
  }
  .main .topics_lower ul.more {
    margin: 12px 0 6px;
    justify-content: flex-end;
  }
}
@media only screen and (max-width: 600px) {
  .main .topics_lower ul.more {
    flex-wrap: nowrap;
  }
  .main .topics_lower ul.more li {
    width: calc((100% - 8px) / 2);
  }
}
/**** 新着情報・トピックス一覧のスタイル ****/
.main .more {
  font-size: 87.5%;
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-left: auto;
}
.main .more li {
  padding: 0;
  width: 140px;
}
.main .more li::before {
  display: none;
}
.main .more li a {
  color: #0033CC;
  background: #FFF;
  border: 1px solid #6B6C83;
  display: inline-block;
  padding: 8px 10px 8px 24px;
  text-align: center;
  text-decoration: none;
  width: 100%;
  border-radius: 4px;
  position: relative;
  font-size: 114%;
  margin-top: 0px;
  margin-bottom: 6px;
}
.main .more li a::before {
  position: absolute;
  content: '';
  width: 6px;
  height: 6px;
  border-right: 1px solid #52546C;
  border-top: 1px solid #52546C;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  top: 1em;
  left: 6px;
}
.main .more li a:hover {
  background: initial;
  color: #9f0000;
  background: #E8E8EB;
}
.main .more li.rss {
  margin-left: 12px;
  margin: 12px 0 0 16px;
}
.main .more li.rss a {
  color: #222;
  background: #fff;
}
.main .more li.rss span {
  background: url(../images/rss_o.svg) no-repeat left center;
  background-size: 12px 12px;
  padding-left: 20px;
}
@media only screen and (max-width: 1024px) {
  .main .more {
    flex-wrap: wrap;
    justify-content: center;
    margin-left: 0;
  }
  .main .more li {
    padding: 0;
    width: calc((100% - 16px) / 2)
  }
}
@media only screen and (max-width: 350px) {
  .main .more li.rss {
    margin: 12px 0 0 8px;
  }
  .main .more li {
    padding: 0;
    width: calc((100% - 8px) / 2);
  }
}
/**** タブ切り替えのスタイル ****/
.main .free_tab {
  margin-top: 24px;
}
.main .free_tab .tab_index {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #000;
  margin-bottom: -25px;
}
.main .free_tab .tab_index .tab_change {
  text-align: center;
  display: flex;
  font-size: 120%;
  width: 49.5%;
}
.main .free_tab .tab_index .tab_change a {
  border: 1px solid #000;
  border-bottom: 0;
  display: inline-block;
  padding: 10px 10px 10px;
  width: 100%;
  text-decoration: none;
  background: #E8E8EB;
}
.main .free_tab .tab_index div:not(.is-active) a:hover {
  background: #D3D3DD;
}
.main .free_tab .tab_index .tab_change.is-active a {
  background: #6A6C83;
}
.main .free_tab .tab_index .tab_change.is-active a > strong {
  color: #fff;
}
.main .free_tab li.tab_panel {
  margin: 0;
  padding: 0;
}
.main .free_tab li.tab_panel::before {
  display: none;
}
.main .free_tab h2 {
  background: none;
  position: absolute;
  z-index: -1;
}
.main .free_tab .new_lower, .main .free_tab .topics_lower {
  background: #fff;
}
.main .free_tab ul.more {
  margin-top: 24px;
}
.main .free_tab .topics_lower ul.more {
  margin-top: 16px;
}
/**** ピックアップ1のスタイル ****/
.main .pickup {
  margin-top: 24px;
}
.main .pickup h2 {
  color: #0033CC;
  padding: 10px 4px 10px 44px;
}
.main .pickup_lower {
  border: 0px solid #C5C5C5;
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .pickup_lower .pickup_sub {
  margin-top: 20px;
}
.main .pickup_lower .pickup_sub:first-child {
  margin-top: 12px;
}
.main .pickup_lower .pickup_sub h3 {
  background: transparent;
  padding: 4px 6px 0;
  font-size: 110%;
  background: #D1D1DB;
}
.main .pickup_lower .pickup_sub p {
  font-size: 85%;
  margin-top: 6px;
  padding-left: 8px;
}
.main .pickup_lower .pickup_sub ul {
  margin: 0 8px;
}
.main .pickup_lower ul li::before {
  left: 4px;
}
.main .pickup_lower ul li {
  padding-left: 24px;
}
.main .pickup_lower ul li span.list_icon {
  margin-right: 4px;
}
/**** ピックアップ2のスタイル ****/
.main .pickup2 {
  margin-top: 24px;
}
.main .pickup2 h2 {
  color: #0033CC;
  padding: 10px 4px 10px 44px;
}
.main .pickup2_lower {
  border: 0px solid #C5C5C5;
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .pickup2_lower .pickup_sub {
  margin-top: 20px;
}
.main .pickup2_lower .pickup_sub:first-child {
  margin-top: 12px;
}
.main .pickup2_lower .pickup_sub h3 {
  background: transparent;
  padding: 4px 6px 0;
  font-size: 110%;
  color: #6A6C83;
  border-bottom: 4px double #6A6C83;
}
.main .pickup2_lower .pickup_sub p {
  font-size: 85%;
  margin-top: 6px;
  padding-left: 8px;
}
.main .pickup2_lower .pickup_sub ul {
  margin: 0 8px;
}
.main .pickup2_lower ul li::before {
  left: 4px;
}
.main .pickup2_lower ul li {
  padding-left: 24px;
}
.main .pickup2_lower ul li span.list_icon {
  margin-right: 4px;
}
/**** ランキングのスタイル ****/
.main .ranking {
  margin-top: 24px;
}
.main .ranking h2 {
  /*! color: #222; */
  padding: 10px 4px 10px 44px;
}
.main .ranking_lower {
  /*! border: 1px solid #C5C5C5; */
  border-top: none;
  padding: 4px 16px 16px 10px;
  border-radius: 0;
}
.main .ranking_lower ol li {
  list-style-type: decimal;
  padding-left: 0;
  margin-left: 40px;
}
.main .ranking_lower ol li::before {
  display: none;
}
/**** 人口・世帯数のスタイル ****/
.main .j_s {
  margin-top: 24px;
}
.main .j_s h2 {
  padding: 10px 4px 10px 44px;
}
.main .j_s_lower {
  /*! border: 1px solid #C5C5C5; */
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .j_s li {
  padding-left: 0;
}
.main .j_s li::before {
  display: none;
}
.main .j_s li b {
  margin-right: 8px;
}
.main .j_s p {
  font-size: 85%;
}
/**** バナー広告のスタイル ****/
.main .bana {
  margin-top: 24px;
}

.main .bana_h2 {}
.main .bana_h2 h2 {
  color: #FFF;
  padding: 10px 4px 10px 44px;
  background: #6B6C83;
    position: relative;
}
.main .bana_h2 p {
  color: #222;
  margin-left: 8px;
  margin-top: 8px;
  font-size: 85%;
}
.main .bana_lower {
  /*! border: 1px solid #C5C5C5; */
  border-top: none;
  padding: 4px 16px 16px;
  text-align: center;
  border-radius: 0;
}
.main .bana .bana_img {
  display: inline-block;
}
.main .bana ul {
  display: flex;
  flex-wrap: wrap;
}
.main .bana li {
  padding-left: 0;
  width: 154px;
  margin-right: 4px;
  margin-left: 4px;
}
.main .bana li::before {
  display: none;
}
.main .bana li img {
  width: 100%;
}
.main .bana li .window {
  margin-top: 5px;
}
@media only screen and (max-width: 1024px) {
  .main .bana li {
    margin: 12px 0 0;
    padding: 0 4px;
    width: calc(100% / 3);
  }
}
@media only screen and (max-width: 480px) {
  .main .bana li {
    width: 50%;
  }
  .main .bana_h2 p {
    margin-left: 0px;
  }
}
/**** RSSのスタイル ****/
.main .rss {
  margin-top: 24px;
}
.main .rss .rss_lower {
  border: 2px solid #007bbb;
  border-top: none;
  padding: 4px 16px 16px;
}
.main .rss li {
  padding-left: 0;
}
.main .rss li::before {
  display: none;
}
/**** 外部RSSのスタイル ****/
.main .rssfide {
  margin-top: 24px;
}
.main .rssfide .h2 {
  color: #222;
  padding: 10px 4px 10px 44px;
}
.main .rssfide h2 {
  background: transparent;
  border: 0;
}
.main .rssfide h2:before {
 left: -32px;
 top: 0.1em;
}
.main .rssfide .h3 {
  overflow: hidden;
}
.main .rssfide .h3 h3 {
  float: left;
  margin: 10px 12px 10px 0;
}
.main .rssfide .h3 p {
  float: left;
  padding: 8px 0;
  margin: 0;
}
.main .rssfide .rssfide_lower {
  /*! border: 1px solid #C5C5C5; */
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .rssfide .rssfide_management {
  background: #E8E8EB;
  font-size: 85%;
  padding: 8px;
  margin-top: 12px;
}
.main .rssfide .rssfide_management .title {
  margin: 0 0 8px;
  padding: 0 0 4px;
  border-bottom: 1px solid #aaa;
}
.main .rssfide .rssfide_management .rssfide_copy {
  margin-top: 6px;
}
.main .rssfide .rssfide_management li {
  padding: 0;
  margin: 0;
}
.main .rssfide .rssfide_management li::before {
  display: none;
}
.main .rssfide .rssfide_list li p {
  padding: 0;
  margin: 0;
}
.main .rssfide .rssfide_list li {
  padding-left: 20px;
}
.main .rssfide .rssfide_list li .list p {
  font-size: 85%;
  margin-top: 4px;
}
/**** リンク・画像領域（画像）のスタイル ****/
.main .image {
  text-align: center;
  margin-top: 24px;
}
.main .image h2 {
  background: none;
  padding: 0;
  border-bottom: none;
  width: fit-content;
  margin: 0 auto;
}
.main .image h2:before {
  display: none;
}
.main .image .image_img {
  display: block;
}
/**** リンク・画像領域（テキスト）のスタイル ****/
.main .link {
  margin-top: 24px;
}
.main .link h2 {
  color: #222;
  padding: 10px 4px 10px 44px;
}
/**** RSS一覧のスタイル ****/
.main .rss_list {
  margin-top: 24px;
}
/**** オプションのスタイル ****/
.main .option {
  margin-top: 24px;
}
.main .option h2 {
  color: #222;
  padding: 10px 4px 10px 44px;
}
.main .option_lower {
  border: 0px solid #C5C5C5;
  border-top: none;
  padding: 4px 16px 16px;
  border-radius: 0;
}
.main .option_lower li::before {
  top: .6em;
}
.main .option_lower li {
  padding-left: 20px;
}
.main .option_lower li a span.window {
  margin-bottom: -2px;
}
/**** FAQ（よくある質問）のスタイル ****/
.main .faq {
  margin-top: 24px;
}
/**** 新着FAQ ****/
.main .faq_new {
  margin-top: 24px;
}
.main .faq_new_lower {
  border: 2px solid #007bbb;
  border-top: none;
  padding: 4px 16px 16px;
}
.main .faq_new div.date {
  margin-left: 0;
}
.main .faq_new_lower p {
  font-size: 85%;
  margin-top: 4px;
}
/**** 見られているFAQのスタイル ****/
.main .popular {
  margin-top: 24px;
}
.main .popular_lower {
  border: 2px solid #007bbb;
  border-top: none;
  padding: 4px 16px 16px;
}
.main .popular_lower p {
  font-size: 85%;
  margin-top: 4px;
}
/********************** 領域1個別のスタイル **********************/
.zone01_index .zone01_in {
  padding: 0;
}
/********************** 領域2個別のスタイル **********************/
@media print, screen and (min-width: 1025px) {
  .main .zone0102 .zone02 .ilist_lower ul > li {
    width: calc((100% - 24.1px) / 3);
  }
  .main .zone0102 .zone02 .ilist_lower ul > li:nth-of-type(3n) {
    margin-right: 0;
  }
  .main .zone0102 .zone02 .ilist2_lower ul > li {
    width: calc((100% - 12.1px) / 2);
  }
  .main .zone0102 .zone02 .ilist2_lower ul > li:nth-of-type(even) {
    margin-right: 0;
  }
}
.main #zone0203 {
  display: inline-block;
  width: 100%;
}
.main #zone0203 #zone02 {
  margin: 0 auto;
  width: calc(100% / 2);
  float: left;
}
.main #zone02 .zone02_in {
margin: 40px 32px 0px 32px;
padding: 0;
}
@media only screen and (max-width: 1024px) {
  .main #zone0203 #zone02 {
    width: 100%;
    float: none;
  }
  .main #zone02 .zone02_in {
    padding: 0 12px;
    margin: 40px 0;
  }
}
@media only screen and (max-width: 570px) {
  .main #zone0203 {
    width: auto;
    display: block;
  }
    .main #zone02 .zone02_in {
    padding: 0 12px;
    margin: 0px 0;
  }

}
/**** ピックアップ1（お知らせ）のスタイル ****/
.main .oshirase .pickup {
  margin-top: 0;
  /*! padding: 40px 32px; */
}
@media only screen and (max-width: 570px) {
.main .oshirase .pickup {
  margin-top: 40px;
  padding: 40px 0 0 0 !important;
}
  }
.main .oshirase .pickup h2 {
  color: #fff;
  padding: 22px 4px 22px 44px;
  font-size: 143.8%;
  position: relative;
  border: 0px solid #C5C5C5;
  letter-spacing: 0.05em;
  background: #6B6C83;
}
.main .oshirase .pickup h2::before {
  content: '';
  position: absolute;
  left: 12px;
  background: url(img/rekimin_h2.png);
  background-size: auto;
  background-size: contain;
  height: 22px;
  width: 22px;
  top:33%;
}
.main .oshirase .pickup_lower {
  padding: 0 2px 0 12px;
  border-radius: 0;
  border: 0px;
}
.main .oshirase .pickup_lower .pickup_sub {
  margin-top: 24px;
  margin-bottom: 60px;
}
.main .oshirase .pickup_lower:last-child .pickup_sub {
  margin-top: 40px;
  margin-bottom: 54px;
}
.main .oshirase .pickup_lower .pickup_sub h3 {
  background: #F2D2E1;
  padding: 9px 14px 9px 30px;
  font-size: 112.5%;
  color: #000;
  position: relative;
}
.main .oshirase .pickup_lower .pickup_sub h3::before {
  content: '';
  position: absolute;
  left: 10px;
  background: url(img/rekimin_top_h3.png);
  background-size: auto;
  background-size: contain;
  height: 10px;
  width: 10px;
  top: 0.9em;
}
.main .oshirase .pickup_lower .pickup_sub p {
  font-size: 85%;
  margin-top: 6px;
  padding-left: 8px;
}
.main .oshirase .pickup_lower .pickup_sub ul {
  margin: 8px 0 0 25px;
}
.main .oshirase .pickup_lower ul li::before {
  content: '';
  display: inline-block;
  position: absolute;
  background: url("img/rekimin_icon01.png") no-repeat;
    background-size: auto;
  background-size: auto;
  background-size: contain;
  width: 10px;
  height: 12px;
  top: 1.6em;
  left: 5px;
  border-right: 0px solid #52546C;
  border-bottom: 0px solid #52546C;
  transform: rotate(0deg);
}
.main .oshirase .pickup_lower ul li {
  padding-left: 24px;
  border-bottom: 1px dotted #000;
  padding: 20px 0 32px 24px;
}
.main .oshirase .pickup_lower ul li span.list_icon {
  margin-right: 4px;
}
@media only screen and (max-width: 1024px) {
  .main .oshirase .pickup {
    margin-top: 0;
    padding: 0;
  }
  .main .oshirase .pickup_lower {
  padding: 0 10px;
  border-radius: 0;
  border: 0px;
}
  .main .oshirase .pickup h2 {
  color: #fff;
  padding: 16px 4px 16px 44px;
  font-size: 143.8%;
  position: relative;
  border: 0px solid #C5C5C5;
  letter-spacing: 0.05em;
  background: #6B6C83;
}
  .main .oshirase .pickup_lower .pickup_sub h3 {
  padding: 9px 14px 9px 30px;
  font-size: 112.5%;
}
  .main .oshirase .pickup_lower .pickup_sub ul {
  margin: 8px 6px 0;
}
}
@media only screen and (max-width: 480px) {
    .main .oshirase .pickup h2 {
  padding: 16px 4px 16px 44px;
  font-size: 120%;
}
  .main .oshirase .pickup_lower .pickup_sub h3 {
  padding: 8px 12px 6px 30px;
  font-size: 112.5%;
}
  .main .oshirase .pickup_lower .pickup_sub ul {
  margin: 20px 6px 0;
}
  .main .oshirase .pickup_lower ul li {
  border-bottom: 1px dotted #000;
  padding: 12px 0 24px 24px;
}
    .main .oshirase .pickup_lower ul li::before {
  top: 1.1em;
}
  .main .oshirase .pickup_lower:last-child .pickup_sub {
  margin-top: 24px;
  margin-bottom: 40px;
}
}
/********************** 領域3個別のスタイル **********************/
.main #zone0203 #zone03 {
  margin: 0 auto;
  width: calc(100% / 2);
  float: right;
}
.zone03_in {
  padding: 0 0 40px 0;
  /*! background: #F2F2F2; */
  margin: 40px 32px 0px 32px;
}
@media only screen and (max-width: 1024px) {
  .main #zone0203 #zone03 {
    width: 100%;
    float: none;
  }
  .zone03_in {
  margin: 40px 10px 0;
  padding: 0;
}
}

/**** 施設案内のスタイル ****/
.main .top_annai {
  /*! padding: 40px 32px 0; */
}
.main .top_annai h2 {
  color: #000;
  padding: 0 0 24px 40px;
  font-size: 137.5%;
  position: relative;
  border-bottom: 2px solid #000;
}
.main .top_annai h2::before {
  top: .2em;
}
.main .top_annai .annai_lower {
  padding: 24px;
}
.main .top_annai .annai_lower {
  padding: 12px 24px 24px 24px;
  margin: 24px 0 0;
  background: #F4F4F4;
}
.main .top_annai .annai_lower dl dt {
  margin-top: 12px;
}
.main .top_annai .annai_lower dl dd a[href^="tel:"] {
  cursor: default;
  color: #222;
  text-decoration: none;
}
.main .top_annai .annai_lower dl dd span {
  display: block;
}
@media only screen and (max-width: 1024px) {
  .main .top_annai {
    padding: 40px 0px 0;
  }
  .main .top_annai .annai_lower dl dd a[href^="tel:"] {
    cursor: pointer;
    color: #0033CC;
    text-decoration: underline;
  }
  .main .top_annai .annai_lower dl dd a[href^="tel:"]:hover {
    color: #9f0000;
  }
}

/**** 休館日カレンダータブ（タブ切り替え）のスタイル ****/
.main .closeddays .free_tab {
  width: calc(100% - 48px);
  margin: 40px auto 0;
}
@media only screen and (max-width: 1024px) {
  .main .closeddays .free_tab {
  width: calc(100% - 90px);
    margin: 40px auto 0;
  }
}
@media only screen and (max-width: 480px) {
  .main .closeddays .free_tab {
    width: auto;
    margin: 40px 20px 0;
  }
}
@media only screen and (max-width: 389px) {
  .main .closeddays .free_tab {
    width: auto;
    margin: 40px 10px 0;
  }
}
.main .closeddays .free_tab .tab_index {
  display: flex;
  justify-content: space-between;
  border-bottom: 0px solid #6B6C83;
  margin-bottom: 0;
}
.main .closeddays .free_tab .tab_index .tab_change {
  text-align: center;
  display: flex;
  font-size: 100%;
  width: 49.5%;
}
.main .closeddays .free_tab .tab_index .tab_change a {
  border: 1px solid #6B6C83;
  border-bottom: 0;
  display: inline-block;
  padding: 8px 10px 6px;
  width: 100%;
  text-decoration: none;
  border-radius: 10px 10px 0 0;
  background: #D3D3DD;
}
.main .closeddays .free_tab .tab_index div:not(.is-active) a:hover {
  background: #D3D3DD;
}
.main .closeddays .free_tab .tab_index .tab_change.is-active a {
  background: #6A6C83;
  color: #fff;
}
/**** 休館日カレンダーのスタイル ****/
.main .closeddays {
  padding: 0 0 40px 0;
  background: #F2F2F2;
}
.main .closeddays .calendar {
  padding: 0px 0 0;
}
@media only screen and (max-width: 1024px) {
  .main .closeddays .calendar {
    padding: 0 0 40px 0;
  }
  .main .closeddays {
    padding: 0;
  }
}
.main .closeddays .calendar h2 {
  background: #6E6D6D;
  border-radius: 0 40px 40px 0;
  color: #fff;
  width: 12.5em;
  border: 0;
  padding: 22px 40px 22px 44px;
  font-size: 143.8%;
  position: relative;
  width: 70%;
}
.main .closeddays .calendar h2::before {
  content: '';
  position: absolute;
  left: 12px;
  background: url(img/rekimin_h2.png);
  background-size: auto;
  background-size: contain;
  height: 22px;
  width: 22px;
  top: 33%;
}
@media only screen and (max-width: 1024px) {
  .main .closeddays .calendar h2 {
  padding: 16px 40px 16px 44px;
      /*! width: 14em; */
}
}
@media only screen and (max-width: 480px) {
  .main .closeddays .calendar h2 {
    padding: 16px 4px 16px 44px;
    font-size: 120%;
  }
}
.main .closeddays .calendar_lower {
  overflow: auto;
  padding: 4px 16px 16px;
  border: 0 solid #6B6C83;
  border-radius: 0;
  border-top: 0;
  padding: 0;
}
.main .closeddays .calendar table {
  font-size: 106%;
}
.main .closeddays .calendar th {
  background: #fff;
}
.main .closeddays .calendar td {
  padding: 4px;
  height: 50px !important;
  background: #fff;
}
.main .closeddays table td.close b {
  color: #c32222;
  display: block;
}
.main .closeddays table td.close {
  background-color: #FFE6E6;
}

@media only screen and (max-width: 389px) {
.main .closeddays table td.close b {
 font-size: 85%;
}
}


/********************** 領域4個別のスタイル **********************/