@charset "UTF-8";

/* --エディタ関連（見た目調整） --*/

html :where(.wp-block) {
    margin-bottom:20px;
    margin-top:20px;
}*/

/* 管理画面（ブロックエディタ）用: デフォルトでpadding 0を設定 */
body.editor-styles-wrapper :where(p.has-background) {
    padding: 0;
}

/* 必要に応じて公開画面用に別のパディング設定を行う場合 */
html :where(p.has-background) {
    padding: 0;
}

html :where(.is-layout-flex) {
    gap: 0; 
}


a:where(:not(.wp-element-button)) {
    text-decoration: none !important;
}

body h1.has-background, body h2.has-background, body h3.has-background, body h4.has-background, body h5.has-background, body h6.has-background {
    padding: 0;
}

.block-editor-iframe__body {
    max-width: 880px;
    width: 80%;
    margin: auto;
}
/*ul,ol{
  margin:20px auto;
}*/

:-webkit-any(article, aside, nav, section) h1 {
    font-size: 2.0rem !important;
}

.wp-block-image .aligncenter{
  text-align: center;
}
.main-block ul.wp-block-list,ul.wp-block-list,
.main-block ol.wp-block-list,ol.wp-block-list{
  list-style:revert;
  padding-left: 20px;
  display: block;
  font-weight: 300;
}

.main-block ul.wp-block-list li,ul.wp-block-list li,
.main-block ol.wp-block-list li,ol.wp-block-list li{
  width:auto;
  margin: auto;
  padding: 0 0 5px 0;
}

.wp-block-group.is-layout-flex.wp-block-group-is-layout-flex{
  margin:0 0 5px;
}

.wp-block-spacer,.wp-block-columns{
  margin: 0 auto 10px;
}
.wp-block-separator {
  margin: 0.5em auto;
}

@media (max-width:768px) {
.wp-block-spacer,.wp-block-columns{
  gap: 10px;
}}

h3.wp-block-heading,
h4.wp-block-heading,
h5.wp-block-heading,
h6.wp-block-heading
{

  margin-bottom: 10px;
  font-weight:500;
}

span a,p a {
  display: inline-block;
  font-weight: normal;
}

figure{
  margin: auto;
}

/* --- 共通 --- */

body
{
  font-size: 1rem;/* remで指定（1rem = 16px） */
  margin: 0;
  padding: 0;
  line-height: 1.8;
  box-sizing: border-box;
  font-size: 100%;
  font-family: "Noto Sans JP", sans-serif;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; /* Safari */
}

b, strong {
    font-weight: 500 !important;
}

img{
  width:100%;
  vertical-align: top;
}
p{
  line-height: 1.8;
  font-weight: 300;
  margin-top: 0;
  }

a{
  text-decoration: none;
  padding: 0;
  color:#ab5971;
  font-weight: normal;
}

/* --- ファイルアイコン --- */

.pdf a::after, a.pdf::after, .prevention-category-list li.fileicon_pdf a::after, .emergency-other-list li.fileicon_pdf a::after, li.fileicon_pdf .news-heading::after
{
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px 3px 5px;
  background-image: url(../images/pdf-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
}

.web a::after,a.web::after, .prevention-category-list li.fileicon_web a::after, .emergency-other-list li.fileicon_web a::after,li.fileicon_web .news-heading::after{
  content: '';
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 5px 3px 5px;
  background-image: url(../images/web-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
}

.word a::after,a.word::after, .prevention-category-list li.fileicon_word a::after, .emergency-other-list li.fileicon_word a::after,li.fileicon_word .news-heading::after{
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px 3px 5px;
  background-image: url(../images/word-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
}

.excel a::after,a.excel::after, .prevention-category-list li.fileicon_excel a::after, .emergency-other-list li.fileicon_excel a::after,li.fileicon_excel .news-heading::after{
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px 3px 5px;
  background-image: url(../images/excel-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
}

.html a::after,a.html::after, .prevention-category-list li.fileicon_html a::after, .emergency-other-list li.fileicon_html a::after,li.fileicon_html .news-heading::after{
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px 3px 5px;
  background-image: url(../images/html-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
}

p.web,li.web,p.pdf,li.pdf,p.word,li.word,p.excel,li.excel,p.html,li.html{
  padding: 0 0 5px 0;
  margin: 0;
}

/* --- パンくずリスト --- */

.breadcrumblist{
  margin-bottom: 30px;
}

.breadcrumblist ul{
    list-style: none;
    margin-top: 0;
    padding: 0;
}

.breadcrumblist li{
      display: inline;
}

.breadcrumblist li a{
    display: inline;
}

.breadcrumblist li + li:before{
    content: ">";
    margin:.5em;
}

    /********************/
    /* ボタンのスタイル */
    /********************/
    .bl_sizeBtn_wrap {
      display: inline-flex;
      align-items: flex-end;
      font-weight: 500;
    }
    
    .bl_sizeBtn_wrap > span {
      font-size: 14px;
      letter-spacing: 0.05em;
    }
    
    .bl_sizeBtn_wrap > * + * {
      margin-left: 10px;
    }
    
    .bl_sizeBtn {
      background-color: #ddd;
      color: #666;
      padding: 3px;
      transition: opacity 0.4s;
      font-size: 13px;
      border: none;
        cursor : pointer;
    }
    
    /* 選択したボタンのスタイル */
    .bl_sizeBtn.is_active {
      background-color: #7a0617;
      color: #fff;
    }

/* --- header --- */
header{
  width:100%;
    z-index: 2;
    background-color: #fff;
}

.header-line{
    position: relative;
    width:100%;
    height:16px;
    background-color: #7a0617;
}

.header-line::after{
    position: absolute;
    content: '';
    border-bottom: 6px solid #d69800;
    width:100%;
    bottom:0px;
}

.header-info{
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1100px;
    margin: auto;
    padding: 10px;
}

.logo{
    display: flex;
    align-items: center;
    max-width: 550px;
}

.openbtn1 > div{
    display: none;
}

h1#Logo {
    position: absolute;
    top: -10px;
    left: 20px;
    z-index: 1;
    color: #999;
    border-bottom: none;
}

.h-contact {
    text-align: center;
}

.h-contact .h-tel{
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.5;
}

.h-contact .h-tel::before{
  content: '';
  display: inline-block;
  width: 15px;
  height: 25px;
  margin-right: 3px;
  background-image: url(../images/tel_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
}

.h-contact .h-mail{
    font-size: 1rem;
    font-weight: 500;
    color:#7a0617;
    border:2px solid #7a0617;
    text-align: center;
    border-radius: 6px;
    margin-top: 3px;
    padding: 0 5px 2px;
}

.h-contact .h-mail::before{
  content: '';
  display: inline-block;
  width: 25px;
  height: 20px;
  background-image: url(../images/mail_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin: 0 5px 3px 0;
}

.h-contact .h-mail a{
    color:#7a0617;
    display: inline-block;
}

header#header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
}

#header.UpMove {
  animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}

#header.DownMove {
  animation: DownAnime 0.5s forwards;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1
}

@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#header a img {
  transition: transform 0.5s linear
}

#header a img:hover {
  transform: rotateX(360deg)
}

.entry-content nav>ul {
  margin: 0;
}

header#header>a {
  position: fixed;
  top: 18px;
  left: 15px;
  z-index: 1;
}

/* -- ナビゲーション -- */
nav {
  background: #7a0617;
  color: #fff;
  text-align: center;
  height:73px;
  display: flex;
  align-items: center;
  position: relative;
}

/*ナビゲーションを横並びに*/
nav ul {
  list-style: none;
  display: flex;
  justify-content: center;
  top: 0;
  left: 0;
  margin: auto;
  padding: 0;
  max-width: 1100px;
}

/*2階層目以降は横並びにしない*/
nav ul ul {
  display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li.has-child::after {
    content: '';
    position: absolute;
    top: 50%; /* 縦線を上下中央に配置 */
    transform: translateY(-50%);
    right: 0;
    width: 1px; /* 縦線の幅 */
    height: 50%; /* 縦線の高さを調整 */
    background-color: #fff; /* 縦線の色 */
}
nav ul li.has-child:last-of-type::after {
    display: none;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li {
  position: relative;
}

nav ul li.has-child,nav ul li.no-child {
  width:16.6%;
}

/*ナビゲーションのリンク設定*/
nav ul li a {
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 5px 10px;
  transition: all .3s;
}

nav ul li li a {
  padding: 10px;
}

nav ul li a:hover {
  color: #fff;
}

/*==矢印の設定*/

/*2階層目を持つliの矢印の設定*/
/*nav ul li.has-child::before {
  content: '';
  position: absolute;
  left: 15px;
  top: 25px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #999;
  border-right: 2px solid #999;
  transform: rotate(135deg);
}/*

/*3階層目を持つliの矢印の設定*/
nav ul ul li.has-child::before {
  content: '';
  position: absolute;
  left: 6px;
  top: 17px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

/*== 2・3階層目の共通設定 */

/*下の階層を持っているulの指定*/
nav li.has-child ul {
  position: absolute;
  padding: 0;
  left: 50%;
  top: 72.34px;
  z-index: 4;
  background: #7a0617;
  width: 180px;
  visibility: hidden;
  opacity: 0;
  transition: all .3s;
  margin: 0;
  transform: translateX(-50%);
}

nav li.has-child:last-of-type ul{
  right: 0;
  left:auto;
  transform:unset;
}

nav li.has-child:first-of-type ul{
  left: 0;
  transform:unset;
}

/*hoverしたら表示*/
nav li.has-child:hover>ul,
nav li.has-child ul li:hover>ul,
nav li.has-child:active>ul,
nav li.has-child ul li:active>ul {
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a {
  color: #fff;
  border-bottom: solid 1px rgba(255, 255, 255, 0.6);
  background-color: #b26067;
  font-size: 0.9rem;
}

nav li.has-child ul li:last-child a {
  border-bottom: none;
}

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active {
  background: #7a0617;
}

/*==3階層目*/

/*3階層目の位置*/
nav li.has-child ul ul {
  top: 0;
  left: 182px;
  background: #66ADF5;
}

nav li.has-child ul ul li a:hover,
nav li.has-child ul ul li a:active {
  background: #7a0617;
}

nav::after{
    position: absolute;
    content: '';
    border-bottom: 8px solid #d69800;
    width: 100%;
    bottom: -8px;
}

.ham-contact{
  display: none;
}

#g-navi > li > a img:nth-child(1){
  display: block;
}

#g-navi > li > a img:nth-child(2){
  display: none;
}

/* --- footer --- */
.tel-list{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: auto;
  position: inherit;
  z-index: 2;
  padding: 0 3rem;
}

.tel-list table{
  margin-right: 3rem;
}

.tel-list table td{
  padding-right: 2rem;
  line-height: 1.5;
  font-size: 0.9rem;
}

.footer-info{
  width:100%;
  background-color: #7a0617;
  color:#fff;
}

footer{
  position: relative;
}

.footer-address p{
    margin: 0;
    font-size: 0.9rem;
}

.f-map{
 position: absolute;
 top:3rem;
 right:2rem;
 width: 350px;
}

.inner-wrap{
  position: relative;
  padding: 30px 30px 60px 30px;
  max-width:1100px;
  margin: auto;
  z-index: 2;
}

.inner-wrap.flex{
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.logo-symbol{
  width:70px;
}

.f-name{
  font-size: 1.85rem;
  font-weight: 600;
}

.sub-menu{
  display: flex;
  align-items: end;
}

.sub-menu a span{
  color:#fff;
  margin-right: 2rem;
}

.copyright{
  display: block;
  background-color:#d69800;
}

.copyright p{
  margin: 0;
  padding: 0.5rem 0;
  text-align: center;
  color:#fff;
  font-size: 0.9rem;
}

/* --- swiper（スライダー） --- */
.swiper-slide img {
  height: auto;
  width: 100%;
}

#mainvisual{
  padding-top: 8px;
}

#mainvisual img{
      object-fit: cover;
      height:350px;
      vertical-align:top;
}

/* --- トップページ --- */
.news-title{
  text-align: center;
  font-size: 1.1rem;
  margin-bottom: 20px;
  font-weight: 500;
  background-color: #7a0617;
  padding: 5px;
  color: #ffffff;
}
.news-outer{
  border:#919191 1px solid;
  border-radius: 10px;
  padding: 10px 20px;
  margin-bottom: 20px;
}

ul.news-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.news-list .news-item a{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333;
  border-bottom: 1px dotted #CCC;
  padding: 10px 0;
}

.news-list .news-item:last-child a{
  border:none;
}

.news-list .news-item .news-date{
  margin: 0;
  font-size: 1rem;
  color: #999;
  padding: 0 20px 0 0;
}

.news-list .news-item .news-category{
  margin: 0;
  padding: 0 20px 0 0;
}

.news-list .news-item .news-category span{
  color: #FFF;
  text-align: center;
  display: inline-block;
  padding: 5px;
  font-size: 0.85rem;
  line-height: 1;
  width: 70px;
  border-radius: 5px;
}

.news-list .news-item.notice .news-category span{
  background-color: #00a5f6;
}

.news-list .news-item.important_notice .news-category span{
  background-color: #cf0023;
}

.news-list .news-item .news-heading{
  margin: 0;
  width: 100%;
}

.news-list .news-item a:hover .news-heading{
  color:#7a0617;
}

.news-archive{
  display:flex;
  justify-content:center;
  margin:10px auto 13px;

}
.news-archive a{
  padding: 10px 20px;
    border: 1px #7a0617 solid;
    line-height: 1;
    color:#7a0617;
    /*transition: 0.3s;*/
}

.news-archive a:hover{
    border: 1px #7a0617 solid;
    color:#fff;
    background-color:#7a0617;
    transition: 0.3s;
    
}

.submit-btn input {
    background-color: #7a0617;
    border: 0;
    color: #ffffff;
    font-size: 1.3em;
    font-weight: bolder;
    margin: 0 auto;
    padding: 10px 35px;
    border-radius: 3px;
    cursor: pointer;
    text-align: center;
    margin:20px 10px;
}

.main-block .prevention-category-list ul, .main-block .emergency-other-list ul{
  display: block;
  list-style: revert;
  padding-left: 20px;
}

.main-block .prevention-category-list ul li, .main-block .emergency-other-list ul li{
  width:100%;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px){
.news-list .news-item a{
  flex-wrap: wrap;
}

.news-list .news-item .news-date{
  min-width: 100px;
}

.news-list .news-item .news-heading{
  margin-top: 8px;
}
}

.contents-category ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.contents-category ul li{
  width: 31.5%;
  text-align: center;
  margin-bottom: 20px;
}

.banner-area ul{
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content:space-between;
  margin: auto;
}

.banner-area ul li{
  width:48%;
  margin-bottom: 20px;
}

.banner-area ul li:first-child{
  width:100%;
}

.occurrence-status{
  width: 30%;
margin-bottom: 15px;
}

.occurrence-dial{
  border:1px solid #e29400;
  width: 30%;
margin-bottom: 15px;
}

.each-department{
  border:1px solid #716fd2;
  width: 30%;
 margin-bottom: 15px;
}

.o-status-ttl{
}

.o-dial-ttl{
  background-color: #e29400;
  padding: 5px;
  color:#fff;
  text-align: center;
  font-weight: 500;
}

.e-dep-ttl{
  background-color: #716fd2;
  padding: 5px;
  color:#fff;
  text-align: center;
  font-weight: 500;
}

.news-section,.contents-category,.banner-area{
  width:65%;
  margin-bottom: 20px;
  margin-right: 4%;
}
.banner-sidearea{
  width: 30%;
}
.banner-sidearea a{
  display: inline-block;
  margin-bottom: 15px;
}

iframe{
  width:100%;
  display: inline-block;
  vertical-align: bottom;
  border: none;
  aspect-ratio: 4 / 3;
  margin-bottom: 20px;
}
.tel-service{
  padding: 10px 10% 20px;
  line-height: 1.5;
}
.tel-service span{
  font-size: 1.5rem;
  font-weight: 900;
  display: block;
  text-align: center;
}
.tel-service span::after{
  display: block;
  content: '';
  width:100%;
  border-bottom: 1px solid #000;
}
.e-dep-tel{
  padding: 10px 10% 0;
  line-height: 1.5;
}
.e-dep-tel:last-child{
  padding: 10px 30px 20px;
}
.e-dep-tel span{
  font-size: 1.5rem;
  font-weight: 900;
  display: block;
  text-align: center;
}
.e-dep-tel span::after{
  display: block;
  content: '';
  width:100%;
  border-bottom: 1px solid #000;
}

/* --- 下層ページ --- */

.flex-wrap{
  display: flex;
  justify-content: space-between;
}

h1.title{
  font-size: 2.2rem;
  text-align: center;
  padding: 30px 0 20px;
  background-color: #ad5971;
  color:#fff;
  font-weight: 500;
  margin: 8px 0 0 0;
}

h1.title.about::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 75px;/*画像の高さ*/
  background-image: url(../images/h1-icon-fighter.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

h1.title.publication-materials::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 75px;/*画像の高さ*/
  background-image: url(../images/h1-icon-fighter.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

h1.title.organization::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 75px;/*画像の高さ*/
  background-image: url(../images/h1-icon-fighter.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

h1.title.notification_form::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 75px;/*画像の高さ*/
  background-image: url(../images/h1-icon-notification_form.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

h1.title.fire-119::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 50px;/*画像の幅*/
  height: 75px;/*画像の高さ*/
  background-image: url(../images/h1-icon-119.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

h1.title.fire-prevention::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 60px;/*画像の幅*/
  height: 75px;/*画像の高さ*/
  background-image: url(../images/h1-icon-prevention.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

h1.title.emergency::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 70px;/*画像の幅*/
  height: 60px;/*画像の高さ*/
  background-image: url(../images/h1-icon-ambulance.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 15px;
}

.menu-block{
  border:1px solid #7a0617;
}
.menu-block ul{
  list-style: none;
  padding: 0 30px;
  margin: 0;
}

.menu-block ul li{
  border-bottom:1px solid #7a0617;
}

.menu-block ul li:last-child{
  border-bottom:unset;
}

.menu-block ul li a{
  color: #7a0617;
  text-align: center;
  padding: 10px 0;
  font-size: 1.1rem;
  display: block;
  text-decoration: none;
}

.menu-block > ul > li > ul > li:last-child > a{
  border-bottom:unset;
}

.menu-block ul li ul li{
  border-bottom:1px dotted #7a0617;
}

.menu-block ul li ul li:last-child{
  border-bottom:unset;
}

.main-title{
  background-color: #ececec;
  padding: 5px;
  border-bottom: 6px solid #e29400;
  font-size: 2rem;
  font-weight: 500;
  color:#ad5971;
  text-align: center;
  margin-bottom: 30px;
}

.m-title{
  background-color: #7a0617;
  color:#fff;
  text-align: center;
  padding: 10px 0;
  font-size: 1.1rem;
  font-weight: 500;
}

.main-block{
  width:72%;
}

.menu-block-wrap{
  width:25%;
}

.main-block ul{
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap:6%;
}

.main-block ul li{
  width:47%;
  margin-bottom: 20px;
}

.sub-title-about,.is-style-sub-title-about,
.sub-title-notification_form,.is-style-sub-title-notification_form,
.sub-title-119,.is-style-sub-title-119,
.sub-title-prevention,.is-style-sub-title-prevention,
.sub-title-emergency,.is-style-sub-title-emergency,
.sub-title-emergency,.is-style-sub-title-caution,
.sub-title-home,.is-style-sub-title-home,
.sub-title-other,.is-style-sub-title-other,
.sub-title-no-icon,.is-style-sub-title-no-icon,
.sub-title {
  font-size: 1.75rem;
  color:#ab5971;
  border-bottom: 2px solid #7a0617;
  margin-top: 30px;
  font-weight: initial;
}

.sub-title-about::before,.is-style-sub-title-about::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 35px;/*画像の幅*/
  height: 35px;/*画像の高さ*/
  background-image: url(../images/firefighter-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-notification_form::before,.is-style-sub-title-notification_form::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 35px;/*画像の幅*/
  height: 35px;/*画像の高さ*/
  background-image: url(../images/notification_form_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-caution::before,.is-style-sub-title-caution::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 35px;/*画像の幅*/
  height: 35px;/*画像の高さ*/
  background-image: url(../images/caution_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-119::before,.is-style-sub-title-119::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 35px;/*画像の幅*/
  height: 40px;/*画像の高さ*/
  background-image: url(../images/119_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-emergency::before,.is-style-sub-title-emergency::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 50px;/*画像の幅*/
  height: 35px;/*画像の高さ*/
  background-image: url(../images/ambulance_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-prevention::before,.is-style-sub-title-prevention::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 40px;/*画像の幅*/
  height: 40px;/*画像の高さ*/
  background-image: url(../images/prevention_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-home::before,.is-style-sub-title-home::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 40px;/*画像の幅*/
  height: 40px;/*画像の高さ*/
  background-image: url(../images/favicon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.sub-title-other::before,.is-style-sub-title-other::before{
  content: '';/*何も入れない*/
  display: inline-block;
  width: 50px;/*画像の幅*/
  height: 40px;/*画像の高さ*/
  background-image: url(../images/firetruck-icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-bottom: 8px;
}

.fire_chief ul{
  display: flex;
  align-items: center;
  justify-content: center;
}

.fire_chief ul li:first-child{
  text-align: center;
  width: auto;
  font-size: 1.7rem;
}

.fire_chief ul li{
  text-align: center;
  width: 25%;
  font-size: 1.7rem;
}

.fire_chief ul li span{
  display: block;
  font-size: 1.8rem;
  font-weight: 600;
  color:#ab5971;
}

.congress-schedule ul,.management-plan ul,.financial-statements ul,.budget ul,.audit ul,.audit-results ul,#human-resources ul,
.r6-finished ul,.r5-finished ul,.bidding-terms ul,.bidding-style ul,.bidding-announcement ul,.bidding-spec ul,.bidding-spec ul,
.materials-index ul
{
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    margin: 20px 0 0 0;
}

.congress-schedule ul li,.management-plan ul li,.financial-statements ul li,.budget ul li,.audit ul li,.audit-results ul li,#human-resources ul li,
.r6-finished ul li,.r5-finished ul li,.bidding-terms ul li,.bidding-style ul li,.bidding-style ol li ul,.bidding-announcement ul li,.bidding-spec ul li,
.bidding-spec ol li ul,.materials-index ul li
{
margin:0 0 5px 0;
width:100%;
}

.parliamentary-minutes ul{
  gap:0;
}

#parliament .wp-block-group.is-vertical.is-layout-flex.wp-block-group-is-layout-flex{
    gap: 0;
}

.parliamentary-minutes ul li{
  width:25%;
}
.parliamentary-minutes ul li ul{
  flex-direction: column;
  margin:0;
}
.parliamentary-minutes ul li ul li{
  width:100%;
  margin-bottom: 5px;
}
.other-info ul {
  margin-top: 20px;
}

.contract,.outsourcing,.lease,.purchase,.services,.sale,.r6-finished,.r5-finished{
    margin-top: 20px;
}

.bidding-style ol li ul,.bidding-spec ol li ul{
  margin-top: 8px;
}

.bidding-style > ol > li,.bidding-spec > ol > li,#disclosure-file > ol > li{
  list-style-type: decimal;
}

.materials-others > ol > li{
  list-style-type: disc;
}

.fire_chief img{
  border-radius: 50%;
  object-fit: cover;
  height:100%;
}

.parliamentary-minutes{
    margin-top: 20px;
}

.parliamentary-minutes table td{
    padding-bottom: 20px;
}

/* 投稿関連 */
.nav-links{
    display: flex;
    justify-content: space-between;
    width: 100%;}
    
  nav.post-navigation{
    background-color:transparent;
  }
    nav.post-navigation::after{
    position: static;
    border:none;
    width: auto;
  }

ul.parliamentary_list {
  display: flex;
  width:100%;
  }
  
ul.parliamentary_list li{
  width:29%;
  }

ul.department_list {
  display: flex;
  justify-content: center;
  width:100%;
  }
  
ul.department_list li{
  width:47%;
  }
.department_list p{
  margin:10px 0;
  }
.department_ttl{
  font-size:1.5rem;
  font-weight:500;
  }
.g-map_btn a{
display:inline-block;
color:#7a0617;
border:1px #7a0617 solid;
padding:3px 20px;
}
.g-map_btn a::before{
display: inline-block;
    content: '';
    margin: 0 5px 0 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 10px solid #7a0617;
    transform: rotate(0deg);
}

/* --- トップへボタン --- */
.pagetop img:nth-of-type(1) {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
	opacity: 0;
}

.pagetop:hover img:nth-of-type(1) {
	opacity: 1;
}

.pagetop img:nth-of-type(2) {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
	opacity: 1;
}
.pagetop:hover img:nth-of-type(2) {
	opacity: 0;
}

.pagetop {
  height: 113px;
  width: 80px;
  position: fixed;
  right: 30px;
  bottom: 30px;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
  border:none;
  background-color:transparent;
}

/* --- お問い合わせ ---*/
.mw_wp_form input[type="email"], .mw_wp_form input[type="tel"], .mw_wp_form input[type="text"], .mw_wp_form textarea {
    padding: 1em;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 15px;
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    background-color: #f8f8f8;
}

.mw_wp_form_confirm .confirm-hidden {
display:none;
}
.mw_wp_form_confirm .privacy-check {
visibility:hidden
}

.required-srt {
    font-size: 0.9em;
    padding: 2px 4px;
    border-radius: 5px;
    margin-right: 10px;
    background: #ff0000;
    color: #ffffff;
}

#contact-form,.post-wrap{
    margin: auto;
    width: 80%;
}
.post-wrap .main-title{
  margin-bottom: 30px;
}

p.confirm-hidden,p.privacy-check,p.center{
  text-align: center;
}

/*h1.entry-title{
  color: #ab5971;
}*/

/* --- ページャー --- */
    .pagination{
    display:flex;
    justify-content: center;
    margin:30px 0;
    }
    .pagination a,.page-numbers{
    display: inline-block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 0.3em 0.6em;
    font-size: 1rem;
    margin:0 3px;

}
    .pagination a{
    border: 1px solid #e6e6e6;
    border-radius: 0.25em;
    }
    .page-numbers.current{
    background-color: #7a0617;
    border-color: #7a0617;
    color: #fff;
    pointer-events: none;
    border-radius: 0.25em;
    }
    
/* 検索窓*/
.search-form {
  position: relative;
}

.search-form .search-input {
  background: rgba(170, 171, 210, 0.17);
  border: none;
  border-radius: 3px;
  width: 160px;
  height: 30px;
  color: #7c7eba;
  padding: 0 40px 0 10px;
}

.search-form .search-input::placeholder {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.85;
  letter-spacing: 0.05em;
  color: #AAAAAA;
}

.search-btn {
  border: none;
  background: unset;
  vertical-align: middle;
  position: relative;
}

.search-btn::before {
  position: absolute;
  content: "\f002";
  cursor: pointer;
  top: 50%;
  transform: translateY(-50%);
  left: -1.5em;
  color: #ddd;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 21px;
}

.ttl {
  font-family: "TsukuARdGothic-Regular", sans-serif;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #7c7eba;
  text-align: left;
  border-left: 2px solid #db97c7;
  padding-left: 10px;
  margin-bottom: 10px;
  display: inline-block;
  padding: 5px 10px;
}

/* ブレークポイント 1100px */
@media (max-width:1100px) {

.inner-wrap {
    padding: 30px 30px 60px 30px;
}
.tel-service span {
    font-size: 1.3rem;
}

.e-dep-tel span {
    font-size: 1.3rem;
}

.e-dep-tel {
    padding: 10px 10px 0;
        font-size: 0.8rem;
}
.e-dep-tel:last-child {
    padding: 10px 10px 20px;
}
.tel-service {
    font-size: 0.8rem;
    padding: 10px 10px 20px;
}
.news-heading {
    font-size: 0.9rem;
}

}

/* スマホ */
@media (max-width:768px) {

/* --- header ---*/

header{
    position: fixed;
    max-height: 100vh;
    overflow-y: auto;
}
body.menu-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

.inner-wrap.flex{
  display: block
}

main{
  padding-top: 110px;
}

  h1#Logo {
    display: none;
  }

  a.top-button {
    scale: .7;
    right: 0;
  }

  #g-navi {
    width:100%;
    display: none;
  }

  .openbtn1 span {
    display: inline-block;
    transition: all 0.4s;
    position: absolute;
    left: calc(50% + -14px);
    height: 3px;
    background-color: #fff;
    width: 28px;
  }

  .openbtn1 span:nth-of-type(1) {
    top: calc(18% - 1px)
  }

  .openbtn1 span:nth-of-type(2) {
    top: calc(34% - 1px)
  }

  .openbtn1 span:nth-of-type(3) {
    top: calc(50% - 1px)
  }

  .openbtn1.active span:nth-of-type(1) {
    top: 8px;
    left: 9px;
    transform: translateY(6px) rotate(-45deg);
    width: 60%
  }

  .openbtn1.active span:nth-of-type(2) {
    opacity: 0
  }

  .openbtn1.active span:nth-of-type(3) {
    top: 20px;
    left: 9px;
    transform: translateY(-6px) rotate(45deg);
    width: 60%
  }
  
  .openbtn1 > div{
    display: block;
    position: absolute;
    font-size: 9.5px;
    color: #fff;
    left:50%;
    bottom:3px;
    transform:translateX(-50%)
  }

  .openbtn1 {
    position: fixed;
    z-index: 9999;
    top: 25px;
    right: 10px;
    cursor: pointer;
    width: 44px;
    height: 44px;
    background: #7a0617;
  }

  header#header>a {
    display: none
  }

  nav {
    padding: 0;
  }

  nav li.has-child ul,
  nav li.has-child ul ul {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    visibility: visible;
    /*JSで制御するため一旦表示*/
    opacity: 1;
    /*JSで制御するため一旦表示*/
    display: none;
    /*JSのslidetoggleで表示させるため非表示に*/
    transition: none;
    /*JSで制御するためCSSのアニメーションを切る*/
  }

  nav ul li.has-child a, nav ul li.no-child a{
    width: 100%;
  }
  
  nav ul li.has-child a img, nav ul li.no-child a img{
    width: 220px;
  }
  
    nav ul li.has-child ul li a {
    padding: 1rem 0;
    width: 100%;
    margin: auto;
  }

  /*矢印の位置と向き*/

  nav ul li.has-child::before {
    left: 20px;
  }

  nav ul ul li.has-child::before {
    transform: rotate(135deg);
    left: 20px;
  }

  nav ul li.has-child.active::before {
    transform: rotate(-45deg);
  }
  
  nav ul li.has-child::before {
  content: '';
  position: absolute;
  left: 80px;
  top: 30px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(135deg);
}

/*.h-contact,*/.bl_sizeBtn_wrap,.h-tel{
    display: none;
}

.logo{
    padding-right: 50px;
    max-width: 330px;
    margin-bottom: 8px;
}

.header-info{
    padding: 0.6rem;
    display: block;
}

.search-form .search-input {
    width: 60%;
}

nav {
  height:auto;
}

nav ul li.has-child::after {
    display: none;
}

nav li.has-child ul {
    transform: translateX(0);
}

nav ul li.has-child,nav ul li.no-child {
  width:100%;
  border-bottom: 1px solid #ccc;
}

nav::after{
    display: none;
}

#g-navi > li > a img:nth-child(2){
  display: block;
  margin: auto;
}

#g-navi > li > a img:nth-child(1){
  display: none;
}

#site-navigation ul {
  display: none;
}
#site-navigation.toggled ul {
  display: block;
}

.ham-contact{
  display: block;
  padding: 1.5rem 0;
  font-size: 1rem;
  color:#fff;
}

a.ham-contact::before{
  content: '';
  display: inline-block;
  width: 25px;/*画像の幅*/
  height: 25px;/*画像の高さ*/
  background-image: url(../images/mail_icon_white.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 5px;
  padding: 0;
}

.main-block,.menu-block-wrap {
    width: 100%;
    margin-bottom: 30px;
}

.flex-wrap {
    flex-direction: column-reverse;
}

.footer-info {
        position: absolute;
        bottom: 0;
}

.sub-menu {
    display: flex;
    align-items: start;
    flex-direction: column;
}

.tel-list table{
  display: none;
  }

.inner-wrap{
  padding: 20px 10px;
  z-index: 1;
  position: relative;
}

.f-name {
    font-size: 1.3rem;
    font-weight: 600;
}

.sub-menu a span {
    color: #fff;
    margin-right: 1rem;
    font-size: 1rem;
}

.logo-symbol {
    width: 60px;
}

.f-map {
    position: static;
    max-width:300px;
    margin-left: auto;
}

#mainvisual img{
      object-fit: cover;
      height:300px;
}

.copyright p {
    font-size: 0.8rem;
    margin: 0;
}

.footer-address p{
      font-size: 0.9rem;
    margin: 0;
}
.banner-area ul {
  display:block
}
.banner-area ul li{
  width:100%;
  margin-bottom: 1rem;
}

.occurrence-dial{
  position: unset;
  width:100%;
  margin-bottom: 30px;
}

.occurrence-status{
  position: unset;
  width:100%;
}

.each-department{
  position: unset;
  width:100%;
  margin-bottom: 30px;
}

.banner-sidearea{
  position: unset;
  width:100%;
}
.news-section,.contents-category,.banner-area{
  width:100%;
  padding: 0;
}

.contents-category ul li {
    width: 48%;
    text-align: center;
    margin-bottom: 10px;
}

.item_1{
  order:1;
}
.item_2{
  order:3;
}
.item_3{
  order:5;
}
.item_4{
  order:2;
}
.item_5{
  order:4;
}
.item_6{
  order:6;
}
.item_7{
  order:7;
}

.tel-service span {
    font-size: 1.5rem;
}

.e-dep-tel span {
    font-size: 1.5rem;
}

.e-dep-tel {
    padding: 10px 10%;
        font-size: 1rem;
}
.e-dep-tel:last-child {
    padding: 10px 10% 20px;
}
.tel-service {
    font-size: 1rem;
    padding: 10px 10% 20px;
}
.news-item {
    display: block;
    }
    
.parliamentary-minutes ul li {
    width: 50%;
}

.parliamentary-minutes table td{
    display: inline-block;
    width: 48%;
}

.fire_chief ul li {
    font-size: 1.5rem;
}

.main-block ul.department_list {
    flex-direction: column;
    flex-wrap: wrap;
}

.main-block ul.department_list li{
    width:100%;
}

.main-block ul.department_list.revers {
    flex-direction:column-reverse;
}
.main-block ul{
  gap:2%;
}

.main-block ul li{
  width:49%;
  margin-bottom: 2%;
}

.has-text-align-right {
    text-align: left !important;
}

h1.title {
    font-size: 2rem;
}

.main-title {
    font-size: 1.8rem;
}

.sub-title-about, .is-style-sub-title-about, .sub-title-organization, .is-style-sub-title-organization, .sub-title-seminar, .is-style-sub-title-seminar, .sub-title-119, .is-style-sub-title-119, .sub-title-prevention, .is-style-sub-title-prevention, .sub-title-emergency, .is-style-sub-title-emergency, .sub-title-emergency, .is-style-sub-title-caution, .sub-title {
    font-size: 1.6rem;
    }
    
/* --- トップへボタン --- */
/*.pagetop img:nth-of-type(1) {
	opacity: 1;
}

.pagetop:hover img:nth-of-type(1) {
	opacity: 1;
}

.pagetop img:nth-of-type(2) {
	opacity: 0;
}
.pagetop:hover img:nth-of-type(2) {
	opacity: 0;
}
*/
.pagetop {
  right: 6px;
  bottom: 10px;
}

#contact-form,.post-wrap{
    width: 100%;
}

ul.parliamentary_list {
  display: flex;
  width:100%;
  }
  
ul.parliamentary_list li{
  width:49%;
  margin-bottom: 20px;
  }


}