@charset "utf-8";

/*---- icon ---*/
.exclamation1,.exclamation2{
  vertical-align: middle;
  width: 20px;
  width: 20px;
  font-size: 16px;
  color: #ffffff;
}

.exclamation3{
  width: 18px;
  height: 18px;
  font-size: 14px;
  line-height: 1.4;
}
/*---- /icon ---*/

/*---- ei_box ---*/
.ei_box{
  position: relative;
  display: block;
  /* #19704 START */
  width: 100%;
  max-width: 1024px;
  justify-self: center;
  /* #19704 END */
  margin: 30px auto;
  padding: 5px;
  box-sizing: border-box;
  background: #b22222;
}

.ei_box2{
  position: relative;
  display: block;
  width: calc(100% - 30px);
  margin: 10px auto;
  padding: 5px;
  box-sizing: border-box;
  background: #b22222;
}

.ei_box .button1, .ei_box2 .button1{
  position: absolute;
  margin: 0;
  padding: 8px 12px;
  text-align: center;
  font-size: 1rem;
  font-weight: normal;
  z-index: 1;
}

.ei_title_box{
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: bold;
}

/* 「, .ei_slide_box」を追記　*/
.ei_text_box, .ei_slide_box{
  background: #ffffff;
}

.ei_text{
  line-height: 1.2;
}

.ei_title_box i, .ei_title_box span{
  vertical-align: middle;
}

.ei_text .active{
  color: #e22c18;
  font-weight: bold;
}

.list_area {
  display: inline-block;
  vertical-align: top;
	margin: auto;
  border: none;
	text-align: center;
	overflow: hidden;
}

.list_area select {
	width: 100%;
  height: 100%;
	padding-right: 16px;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
  	-moz-appearance: none;
    -webkit-appearance: none;
    -o-appearance: none;
    -ms-appearance: none;
	appearance: none;
  font-size: 1rem;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	cursor: pointer;
}

.list_area select:-ms-expand {
    display: none;
}

.list_area.area1, .list_area.area2 {
	position: relative;
	border: none;
	background: #ffffff;
}

.list_area2.area1, .list_area2.area2 {
	position: relative;
	border: none;
  background: #ffffff;
  
  box-sizing: border-box;
  border-top: 1px solid #666666!important;
}

.list_area.area1, .list_area2.area1{
  box-sizing: border-box;
  border-right: 1px solid #666666;
}

@media screen and (min-width: 1090px){
  .ei_box{
    margin: 30px 25px 10px 30px
  }

  .ei_box2{
    margin: 15px auto 5px;
  }

  .ei_box .button1, .ei_box2 .button1{
    top: 50%;
    right: 12px;
    max-width: 100px;
    margin-top: -1.2rem;
  }

  .ei_title_box{
    display: inline-block;
    vertical-align: middle;
    width: 150px;
    padding: 5px 0;
    text-align: center;
  }

  .ei_text_box{
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 187px);
    height: auto;
    min-height: 20px;
    padding: 15px;
  }

  .ei_slide_box{
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 187px);
    height: auto;
    min-height: 20px;
    padding: 10px 15px 0px;
  }

  .ei_text{
    width: calc(100% - 120px);
  }

  .pld1{
    display: inline-block;
    max-width: 100%;
  }

  .pld1 .list_area {
  	width: 160px;
    height: 37px;
  }
  .pld1 .list_area2 {
  	width: 50%;
    height: 37px;
  }
  .pld3 .list_area2 {
  	width: 100%;
    height: 37px;
  }
}

@media screen and (max-width: 1089px){
  .ei_box, .ei_box2{
    margin: 20px auto;
    width: calc(100% - 20px)
  }

  .ei_box .button1, .ei_box2 .button1{
    top: 5px;
    right: 5px;
    width: auto;
    max-width: 100px;
    box-shadow: 0px 2px 4px 0px #9b1d1e;
    -moz-box-shadow: 0px 2px 4px 0px #9b1d1e;
    -webkit-box-shadow: 0px 2px 4px 0px #9b1d1e;
    -o-box-shadow: 0px 2px 4px 0px #9b1d1e;
    -ms-box-shadow: 0px 2px 4px 0px #9b1d1e;
  }

  .ei_title_box{
    padding: 10px 0;
    word-break: break-all;
  }

  .ei_text_box, .ei_slide_box{
    padding: 10px;
  }

  .ei_title_box span{
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 160px);
    word-break: break-all;
  }

  .pld1{
    display: block;
    height: 70px;
    margin: 10px 0;
    /* #19706 START */
    width: 100%;
    /* #19706 END */
  }

  .pld1 .select{
  	width: 50%;
    height: 40px;
  }
}
/*---- /ei_box ---*/

/*---- myarea ----*/
#area_name{
  font-size: 1.5rem;
}
small.info_update{
  margin-left: 10px;
  font-weight: normal;
}

.info_table, .info_table2{
  margin: 10px 0 0;
}

.info_table dl:last-child, .info_table2 dl:last-child{
  margin-bottom: 0;
}

.info_table .table, .info_table2 .table{
  display: block;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
  display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}

.info_table .table dt,.myarea_cont .table dd,
.info_table2 .table dt,.myarea_cont2 .table dd{
  display: inline-block;
  vertical-align: top;
  margin: 0;
  padding: 10px;
}

.myarea_cont2 .table dd{
  display: inline-block;
  vertical-align: top;
  margin: 0;
  padding: 10px;
}

.info_table .table dt, .info_table2 .table dt{
  width: 100px;
  border-style: solid;
  border-width: 1px;
  color: #ffffff;
  font-weight: bold;
}

.info_table .table dd, .info_table2 .table dd{
  border: 1px solid #666666;
}

.info_table .table dd strong, .info_table2 .table dd strong{
  font-size: 1rem;
}

.info_table .table.full dd, .info_table2 .table.full dd{
  width: calc(100% - 145px);
}

.info_table .EW_txt:after,
.info_table .War_txt:after,
.info_table .Adv_txt:after,
.info_table2 .EW_txt:after,
.info_table2 .War_txt:after,
.info_table2 .Adv_txt:after{
	content: "" ;
	white-space: pre ;
}

/* #20432 START */
.hzMapLink {
  margin: 10px 0;
}
/* #20432 END */

@media screen and (min-width: 1090px){
  .myarea_cont2{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    min-height: 500px;
    margin-top: 10px;
  }

  .info_table2 .table.half dt:first-child, .info_table2 .table.half dd:nth-child(2) {
    margin-bottom: 10px;
  }

  .myarea_cont .pld1{
    width: 458px;
    height: auto;
    min-height: 34px;
  }

  .myarea_cont2 .pld1{
    width: 100%;
    height: auto;
    min-height: 34px;
    margin:10px 0 0;
  }

  .myarea_cont .title{
    width: 114px;
    height: 100%;
  }

  .myarea_cont2 .title{
    width: 100%;
    height: 100%;
    text-align: center;
  }

  .info_table .table, .info_table2 .table{
    margin: 10px 0;
  }

  .info_table .table.half dd{
    width: calc(50% - 145px);
  }
  .info_table2 .table.half dd{
    width: calc(100% - 145px);
  }
  .myarea{
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 462px);
    font-size: 1.25rem;
  }
  .myarea2{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    font-size: 1.1rem;
    text-align: center;
    margin-top: 7px;
  }
  .myarea_cont .pld3{
    width: 351px;
  }
  .myarea3{
    width: calc(100% - 358px);
  }

  .pld1 .list_area {
    width: 135px;
    height: 37px;
  }
}

@media screen and (max-width: 1089px){
  .info_table .table, .info_table2 .table{
    margin: 10px 0;
  }

  .info_table .table.half dd{
    width: calc(50% - 145px);
  }
  .info_table2 .table.half dd{
    width: calc(100% - 145px);
  }
}

@media screen and (max-width: 1089px){
  .info_table .table, .info_table .table2{
    margin: 2px 0;
  }

  .info_table .table.half dd, .info_table .table.half dd2{
    width: calc(100% - 145px);
  }

  .info_table .table.half dt:first-child,
  .info_table .table.half dd:nth-child(2),
  .info_table2 .table.half dt:first-child,
  .info_table2 .table.half dd:nth-child(2){
    margin-bottom: 2px
  }
}

@media screen and (min-width: 1090px){
  .myarea_cont .pld3 .title{
    width: 192px;
    height: 100%;
  }

  .myarea{
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 460px);
    font-size: 1.25rem;
  }
  
  .myarea2{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    font-size: 1.1rem;
    text-align: center;
    margin-top: 7px;
  }

  .myarea3{
    /* #19706 START */
    width: calc(100% - 442px);
    /* #19706 END */
  }
}

@media screen and (max-width: 1089px){
  .container.myarea_cont, .container.myarea_cont2{
    margin: 10px;
  }

  .myarea, .myarea2{
    display: block;
    font-size: 1.1rem;
    text-align: center;
  }

  
  /* #20432 START */
  .hzMapLink {
    text-align: center;
  }
  /* #20432 END */
}
/*---- /myarea ----*/

/*--- menu1,2 ---*/
.menu1_tabs{
  position: relative;
  display: block;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
  display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
  /* #19708 START */
  flex-wrap:nowrap;
  /* #19708 END */
  width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.menu1_tabs li{
  display: inline-block;
  vertical-align: top;
  padding: 0;
  box-sizing: border-box;
  list-style: none;
  line-height: 1.5;
  text-align: center;
  cursor: pointer;
}

.menu1_tabs li .button{
  height: 100%;
  margin: 0;
  border: none;
  box-shadow: 0 0 8px 0px #a0a0a0;
    -moz-box-shadow: 0 0 8px 0px #a0a0a0;
    -webkit-box-shadow: 0 0 8px 0px #a0a0a0;
    -o-box-shadow: 0 0 8px 0px #a0a0a0;
    -ms-box-shadow: 0 0 8px 0px #a0a0a0;
  box-sizing: border-box;
  word-break: break-word;
}

.menu1_tabs li span{
  margin: 0;
  line-height: 1.1;
}

@media screen and (min-width: 1090px){
  .menu_cont{
    display: block;
      display:-webkit-box;
      display:-moz-box;
      display:-ms-flexbox;
      display:-webkit-flex;
      display:-moz-flex;
    display:flex;
      -webkit-box-lines:multiple;
      -moz-box-lines:multiple;
      -webkit-flex-wrap:wrap;
      -moz-flex-wrap:wrap;
      -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    margin: 0 10px;
}

  .menu_cont ul{
    width: 100%;
  }

  .menu1_cont{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    margin: 10px 0 0;
  }

  .menu1_tabs li{
    width: calc(19% - 4px);
    height: auto;
    min-height: 40px;
    margin: 0 10px 0 0;
  }

  .menu1_tabs li:last-child{
    margin: 0;
  }

  .menu1_tabs li .button{
    padding: 20px 0px 35px;
  }

  .menu1_tabs li .button2{
    position: relative;
    height: 100%;
    padding-top: 25px;
    z-index: 10;
  }

  .menu1_tabs li .button2:before{
  	position: absolute;
  	top: 100%;
  	left: 50%;
   	margin-left: -15px;
    border-right-color: transparent;
    border-right-style: solid;
    border-right-width: 15px;
    border-bottom-color: transparent;
    border-bottom-style: solid;
    border-bottom-width: 15px;
    border-left-color: transparent;
    border-left-style: solid;
    border-left-width: 15px;
    border-image-source: initial;
    border-image-slice: initial;
    border-image-width: initial;
    border-image-outset: initial;
    border-image-repeat: initial;
  	border-top-style: solid;
    border-top-width: 15px;
  	content: "";
  }

  .menu1_tabs li .button2:hover:before{
    border-right-color: transparent;
    border-right-style: solid;
    border-right-width: 15px;
    border-bottom-color: transparent;
    border-bottom-style: solid;
    border-bottom-width: 15px;
    border-left-color: transparent;
    border-left-style: solid;
    border-left-width: 15px;
    border-image-source: initial;
    border-image-slice: initial;
    border-image-width: initial;
    border-image-outset: initial;
    border-image-repeat: initial;
    border-top: solid 15px #4184BB;
  }
}

@media screen and (max-width: 1089px){
  .menu1_cont{
    margin: 10px;
  }

  /* #19708 START */
  .menu1_tabs li{
    width: calc(50% - 5px);
    height: auto;
    border: 2px solid #d97b00;
    border-bottom: 0;
  }

  .menu1_tabs li:not(:last-child){
    border-right: 0;
  }
  /* #19708 END */

  .menu1_tabs li .button{
    padding: 20px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
  }

  .menu1_tabs li .button span{
    margin: 0px 5px 0 0;
  }
}

.menu2_tabs{
  width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  display: block;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
  display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}

.menu2_tabs li{
  display: inline-block;
  vertical-align: top;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
  line-height: 1.5;
  text-align: center;
  cursor: pointer;
}

.menu2_tabs li .button{
  margin: 0;
  height: 100%;
  box-sizing: border-box;
  border: none;
  color: #995b00;
  word-break: break-all;
}

/* #20426 START */
.menu2_tabs li a.button{
  height: 62px;
}
/* #20426 END */

.menu2_tabs li .button3{
  position: relative;
  background: linear-gradient(#FF8600, #d97b00);
  background: -moz-linear-gradient(#FF8600, #d97b00);
  background: -webkit-linear-gradient(#FF8600, #d97b00);
  background: -o-linear-gradient(#FF8600, #d97b00);
  background: -ms-linear-gradient(#FF8600, #d97b00);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF8600', endColorstr='#d97b00', GradientType=0);
  color: #ffffff;
  text-decoration: none;
}

.menu2_tabs li .button3:hover{
  position: relative;
  background: linear-gradient(#fab23b, #FF8600);
  background: -moz-linear-gradient(#fab23b, #FF8600);
  background: -webkit-linear-gradient(#fab23b, #FF8600);
  background: -o-linear-gradient(#fab23b, #FF8600);
  background: -ms-linear-gradient(#fab23b, #FF8600);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fab23b', endColorstr='#FF8600', GradientType=0);
  color: #ffffff;
  text-decoration: none;
}

.menu2_tabs li span{
  line-height: 1.1;
}

@media screen and (min-width: 1090px){
  .menu2_cont{
    display: inline-block;
    vertical-align: top;
    width: 30%;
    margin: 10px 0 0 10%;
  }

  .menu2_tabs li{
    width: calc(50% - 5px);
    height: auto;
    min-height: 40px;
    margin: 0 10px 0 0;
  }

  .menu2_tabs li span{
    margin: 0;
  }

  .menu2_tabs li:last-child{
    margin: 0;
  }

  .menu2_tabs li .button{
    padding: 20px 2px 35px;
  }

  .menu2_tabs li .button3{
    position: relative;
    padding-top: 25px;
    z-index: 10;
  }

  .menu2_tabs li .button3:before{
    position: absolute;
  	top: 100%;
  	left: 50%;
   	margin-left: -15px;
  	border: 15px solid transparent;
  	border-top: 15px solid #d97b00;
  	content: "";
  }

  .menu2_tabs li .button3:hover:before{
    border-top: 15px solid #FF8600;
  }

  .menu2_bottom{
    display: none;
  }
}

@media screen and (max-width: 1089px){
  .menu2_cont{
    margin: 20px 0 20px
  }

  .menu2_tabs li{
    width: 50%;
    height: 100%;
    margin: 0;
    border: 2px solid #d97b00;
  }

  .menu2_tabs li:first-child{
    border-right: 0;
  }

  .menu2_tabs li .button{
    margin: 0;
    padding: 20px 10px;
    border-radius: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      -o-border-radius: 0;
      -ms-border-radius: 0;
    box-shadow: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      -o-box-shadow: none;
      -ms-box-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .menu2_tabs li .button:first-child{
    border-right: 0;
  }

  .menu2_bottom{
    margin: 0;
  }
}
/*--- /menu1,2 ---*/

/*--- main_info_box ---*/
div.main_info_box{
  background: #ffffff;
  box-shadow: 0px 2px 4px 0px #a0a0a0;
    -moz-box-shadow: 0px 2px 4px 0px #a0a0a0;
    -webkit-box-shadow: 0px 2px 4px 0px #a0a0a0;
    -o-box-shadow: 0px 2px 4px 0px #a0a0a0;
    -ms-box-shadow: 0px 2px 4px 0px #a0a0a0;
}

div.main_info_box h2{
  border-radius: 8px 8px 0 0;
    -moz-border-radius: 8px 8px 0 0;
    -webkit-border-radius: 8px 8px 0 0;
    -o-border-radius: 8px 8px 0 0;
    -ms-border-radius: 8px 8px 0 0;
}

.menutitle, .maptitle{
  display: none;
}

.menutitle:first-child, .maptitle:first-child{
  display: block;
}

.select_cont .menubox, .select_cont .mapbox{
  display: none;
}

.select_cont .menubox:first-child, .select_cont .mapbox:first-child{
  display: block;
}

.mapbox .box{
  width: 100%;
  margin: 10px 0;
  background: #efefef;
  border: 1px solid #666666;
  box-sizing: border-box;
}

.sub.map_cont .button{
  margin-top: 10px;
}

.h3_cont h3{
  margin-bottom: 0;
  font-weight: bold;
}

.h3_cont .info_update{
  display: block;
  margin: 0 0 10px;
  text-align: center;
  font-size: 0.875rem;
}

.sub.map_cont, .sub.mun_cont{
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}

.sub.table_cont, .sub.figure_cont, .sub.tableLeft_cont, .sub.tableRight_cont{
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}

.mun_cont .table1 dt{
  display:block;
}

.mun_cont .table1 dt:not(.active){
  border: 0;
}

.mun_cont .table1 dd{
  padding: 0;
}

.mun_cont .acMenu .table1 dd{
  display:none;
  clear:both;
}

.mun_cont .table1.table1-2 dd{
  width: 100%;
}

.mun_cont p.link{
  display: block;
  margin-top: 10px;
  text-align: right;
}

.mapimageArea {
  margin-top: 10px;
  position: relative;
  width:100%;
  padding-top: 400px;
  border: 1px solid #666666;
}

.mapimageArea iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  border:none;
}

.trgtImg{
  display:none;
}

.normalIcon{
  width: 24px;
  vertical-align: top;
}

.invertIcon{
  width: 24px;
  vertical-align: top;
}

@media screen and (min-width: 1090px){
  div.main_info_box h2{
    margin: 20px 20px 0;
  }

  .main_info_box{
    position: relative;
    display: block;
    margin-top: -20px;
    padding-top: 30px;
    padding-bottom: 10px;
  }

   .main_info_box2{
    position: relative;
    display: block;
    margin-top: -20px;
    padding-top: 30px;
  }

  .sub.map_cont h3, .sub.mun_cont h3{
    margin-top: 0;
  }

  .sub.map_cont{
    width: calc(45% - 30px);
  }

  .sub.mun_cont{
    width: calc(55% - 30px);
    margin-left: 0;
  }

  .sub.map_cont.road_map{
    width: calc(100% - 40px);
  }

  .sub.mun_cont.road_mun{
    width: calc(100% - 20px);
    margin: -25px 0px 10px 20px;
  }

  .select_cont.listInfo a{
    display: inline-block;
  }

  .sub.table_cont{
    width: calc(70% - 40px);
  }

  .sub.figure_cont{
    width: calc(30% - 40px);
    margin-left: 0;
    text-align: center;
  }
  .sub.tableLeft_cont{
    width: calc(60% - 40px);
  }

  .sub.tableRight_cont{
    width: calc(40% - 10px);
    margin-left: 0;
    margin-right: 0;
    text-align: center;
  }

  .pld2 .title{
    width: 108px;
    }

  .pld2 .select{
    height: 38px;
    width: calc(100% - 132px);
  }
}

@media screen and (max-width: 1089px){
  .main_info_box{
    margin: 0 5px;
    padding: 0 0 10px;
    border-radius: 8px;
      -moz-border-radius: 8px;
      -webkit-border-radius: 8px;
      -o-border-radius: 8px;
      -ms-border-radius: 8px;
  }

  .main_info_cont{
    margin: 20px 0;
    padding: 10px 0 20px;
  }

  .sub.map_cont, .sub.mun_cont{
    display: block;
    margin: 20px 20px 25px;
    padding: 0;
  }

  .sub.table_cont, .sub.figure_cont, .sub.tableLeft_cont, .sub.tableRight_cont{
    display: block;
    margin: 20px 20px 25px;
    padding: 0;
  }

  .pld2 .select {
    display: block;
  }

  .pld3 .select {
    width:100%;
  }
}
/*--- /main_info_box ---*/

/*--- .sidemenu ---*/
.sidemenu .container:first-child, .sidemenu3 .container:first-child, .sidemenu4 .container:first-child{
  margin-top: 0;
}

.twitter_box{
  width: 100%;
  border: 2px solid #666666;
  box-sizing: border-box;
  background: #ffffff;
  border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -o-border-radius: 8px;
    -ms-border-radius: 8px;
  box-shadow: 0px 2px 4px 0px #a0a0a0;
    -moz-box-shadow: 0px 2px 4px 0px #a0a0a0;
    -webkit-box-shadow: 0px 2px 4px 0px #a0a0a0;
    -o-box-shadow: 0px 2px 4px 0px #a0a0a0;
    -ms-box-shadow: 0px 2px 4px 0px #a0a0a0;
}

.twitter_box h2{
  background: #666666;
  border-radius: 3px 3px 0 0;
    -moz-border-radius: 3px 3px 0 0;
    -webkit-border-radius: 3px 3px 0 0;
    -o-border-radius: 3px 3px 0 0;
    -ms-border-radius: 3px 3px 0 0;
}

/** P_PUB_CM_TwitterBox.component内部で定義 */
/* .twitter-timeline{
  height: 500px!important;
} */

/* @media screen and (max-width: 768px){
  .twitter_box iframe{
    width: 500px!important;
  }
} */

.link_sidemenu h2{
  background: #1da1f2;
}

.link_sidemenu div.container{
  border: 2px solid #1da1f2;
}

.sidemenu div > div, .sidemenu3 div > div, .sidemenu4 div > div{
  margin: 0;
  border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
    -ms-border-radius: 0;
  box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    -ms-box-shadow: none;
}

.sidemenu div > div:not(:nth-child(2)), .sidemenu3 div > div:not(:nth-child(2)), .sidemenu4 div > div:not(:nth-child(2)){
  border-top-style: solid;
  border-top-width: 2px;
}

.sidemenu div h2, .sidemenu3 div h2, .sidemenu4 div h2{
  font-size: 1.25rem;
}

.sidemenu ul.link_list_cont li, .sidemenu4 ul.link_list_cont li{
  position: relative;
  padding: 15px 10px;
  font-size: 1.1rem;
  cursor: pointer;
}

.sidemenu ul.link_list_cont li > a, .sidemenu4 ul.link_list_cont li > a{
  display: block;
  color: #202020;
  text-decoration: none;
}

.sidemenu ul.link_list_cont li > a:after, .sidemenu4 ul.link_list_cont li > a:after{
  content: ">";
  position: absolute;
  right: 10px;
}

.sidemenu ul.link_list_cont li:not(:first-child), .sidemenu4 ul.link_list_cont li:not(:first-child){
  border-top-style: solid;
  border-top-width: 2px;
}

.sidemenu ul.link_list_cont li dl.acMenu, .sidemenu4 ul.link_list_cont li dl.acMenu{
  height:auto;
  overflow:hidden;
}

.sidemenu ul.link_list_cont li dl.acMenu dt, .sidemenu4 ul.link_list_cont li dl.acMenu dt{
  position: relative;
  display:block;
  padding-right: 30px;
}

.sidemenu ul.link_list_cont li dl.acMenu dt a, .sidemenu4 ul.link_list_cont li dl.acMenu dt a{
  display: block;
  color: #202020!important;
  text-decoration: none;
}

.sidemenu ul.link_list_cont li dl.acMenu dt a:hover, .sidemenu4 ul.link_list_cont li dl.acMenu dt a:hover{
  opacity: 1;
}

.sidemenu ul.link_list_cont li dl.acMenu dt:after, .sidemenu4 ul.link_list_cont li dl.acMenu dt:after{
  position: absolute;
  right: 3px;
  top: 3px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-top: 12px solid #666666;
}

.sidemenu ul.link_list_cont li dl.acMenu dt.active, .sidemenu4 ul.link_list_cont li dl.acMenu dt.active{
  padding-bottom: 10px;
  border-bottom: 1px solid #666666;
}

.sidemenu ul.link_list_cont li dl.acMenu dt.active:after, .sidemenu4 ul.link_list_cont li dl.acMenu dt.active:after{
  position: absolute;
  right: 3px;
  top: -5px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid transparent;
  border-bottom: 12px solid #666666;
}

.sidemenu ul.link_list_cont li dl.acMenu dd, .sidemenu4 ul.link_list_cont li dl.acMenu dd{
  display:none;
  padding: 10px 10px 5px 10px;
  clear:both;
}

.sidemenu ul.link_list_cont li dl.acMenu dd a, .sidemenu4 ul.link_list_cont li dl.acMenu dd a{
  display: block;
}

.sidemenu div.qr_cont dt{
  padding: 10px;
  font-size: 1.1rem;
  font-weight: bold;
}

.sidemenu div.qr_cont dt svg {
  vertical-align: text-top;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 10px 0 0;
  padding: 0;
  fill: currentColor;
}

.sidemenu div.qr_cont dd{
  margin: 10px;
  line-height: 1.5;
}

.sidemenu div h3{
  margin: 10px 0;
  padding: 0;
  border-top: 0;
}

.sidemenu div p{
  line-height: 1.35;
}

@media screen and (min-width: 1090px){
  .sidemenu{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    float: left;
  }
  .sidemenu3, .sidemenu4{
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .sidemenu div.qr_cont dt{
    text-align: center;
  }

  .sidemenu div.qr_cont dd{
    display: block;
  }
}

@media screen and (max-width: 1089px){
  .twitter_box{
    /* width: calc(100% - 20px); */
    width: 100%;
  }

  .sidemenu, .sidemenu3, .sidemenu4{
    display: block;
    margin: 20px 0;
  }

  /* 
  .sidemenu .section{
    position: relative;
    margin: 0;
    border-radius: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      -o-border-radius: 0;
      -ms-border-radius: 0;
    box-shadow: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      -o-box-shadow: none;
      -ms-box-shadow: none;
    border-left: none;
    border-right: none;
  } 
  */

  .sidemenu .section, .sidemenu3 .section2, .sidemenu4 .section2{
    position: relative;
    margin: 0;
    border-radius: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      -o-border-radius: 0;
      -ms-border-radius: 0;
    box-shadow: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      -o-box-shadow: none;
      -ms-box-shadow: none;
    border-left: none;
    border-right: none;
  }

  .sidemenu div.twitter_box{
    margin: 20px 10px;
  }

  .sidemenu2 div.twitter_box{
    margin: 20px 10px;
  }

  .sidemenu div.qr_cont dl dt{
    position: relative;
  }

  .sidemenu div.qr_cont dl dt:after{
    position: absolute;
    top: 18px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-top-style: solid;
    border-top-width: 12px;
    content: '';
  }

  .sidemenu div.qr_cont dl.active dt:after{
    position: absolute;
    top: 8px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid transparent;
    border-bottom-style: solid;
    border-bottom-width: 12px;
    content: '';
  }

  .sidemenu div.qr_cont dd{
    display: none;
  }

  .sidemenu div.qr_cont dl.active dd{
    display: block;
  }
}
/*--- /.sidemenu ---*/


/*--- container half ---*/
.linkpage .button{
  display: inline-block;
  padding: 8px 12px;
}

@media screen and (min-width: 1090px){
  .section.half{
      /* display: inline-block; */
      vertical-align: top;
      width: 100%;
      /* margin-left: 3%; */
  }

  .linkpage{
    text-align: right;
  }

  .linkpage .button{
    width: auto;
  }
}

@media screen and (max-width: 1089px){
  .section.half{
    margin: 0;
  }

  .linkpage .button{
    display: block;
    width: auto;
    padding: 16px 0;
  }
}
/*--- container half ---*/

/*--- table1-1 ---*/
.table1 dd p, table.table1 p{
  display: inline-block;
  vertical-align: top;
}

.table1 dd p.title, table.table1 p.title{
  width: 80px;
  padding-right: 5px;
  word-break: break-all;
}

.table1 dd .txt{
  padding-left: 5px;
  word-break: break-all;
}
table.table1 .txt{
  width: calc(100% - 90px);
  padding-left: 5px;
  word-break: break-all;
}

.table1.table1-1, .table1.table1-2{
  margin: 5px 0;
}

.table1.table1-1 dt, .table1.table1-2 > dt{
  text-align: left;
}

.acMenu .table1.table1-1 dt, .acMenu .table1.table1-2 > dt{
  position: relative;
  cursor: pointer;
}

.table1.table1-1 dt .btn_acc, .table1.table1-2 > dt .btn_acc{
  position: absolute;
  right: 0;
  bottom: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: none;
  box-shadow: none;
}

.table1.table1-1 dt .btn_acc:after, .table1.table1-2 > dt .btn_acc:after{
  position: absolute;
  right: 9px;
  top: 50%;
  margin-top: -17%;
  width: 0;
  height: 0;
  padding: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-top: 12px solid #ffffff;
  content: '';
}

.table1.table1-1 dt.active .btn_acc:after, .table1.table1-2 > dt.active .btn_acc:after{
  position: absolute;
  right: 9px;
  top: 50%;
  margin-top: -45%;
  width: 0;
  height: 0;
  padding: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid transparent;
  border-bottom: 12px solid #ffffff;
  content: '';
}

.table1 .about{
  margin: 20px 0 10px;
  padding: 10px;
  border: 1px solid #999999;
  font-size: 0.9rem;
}

.table1 .about li{
  display: inline-block;
  vertical-align: top;
  width: 49%;
  margin-right: 2%;
  margin-bottom: 2px;
  padding-left: 0.8rem;
  box-sizing: border-box;
}

.table1 .about li:nth-child(2n){
  margin-right: 0;
}

.table1 .about li:not(.clearfix):before{
  content: "・ ";
  margin-left: -0.8rem;
}

.table1 .about li.clearfix{
  display: block;
  width: auto;
  list-style: none;
}

@media screen and (min-width: 1090px){
  .table1{
    margin: 20px 0;
    text-align: left;
  }

  .table1.table1-1 dt,
  .table1.table1-2 > dt{
    position: relative;
    padding: 8px 40px 8px 8px;
  }

  .table1.table1-1 dt .btn_acc,
  .table1.table1-2 > dt .btn_acc{
    position: absolute;
    top: 0;
    right: 0;
    width: 35px;
    margin: 0;
    padding: 0;
  }

  .table1.table1-1 table{
    width: 100%;
  }

  .table1-1 table td,
  table.table1 td{
    vertical-align: top;
    width: 50%;
    padding: 10px;
  }

  .table1 table td:first-child,
  table.table1  td:first-child{
    box-sizing: border-box;
    border-right: solid 2px #ffffff;
  }

  .table1 table tr:nth-child(2n), table.table1 tr:nth-child(2n){
    background: #eeeeee;
  }
}

@media screen and (max-width: 1089px){
  .table1.table1-1 > dt,
  .table1.table1-2 > dt{
    min-height: 56px;
    padding: 8px 50px 8px 8px;
  }

  .table1.table1-1 > dt .btn_acc,
  .table1.table1-2 > dt .btn_acc{
    width: 40px;
  }

  .table1.table1-1 > dt .btn_acc:after,
  .table1.table1-2 > dt .btn_acc:after{
    right: 12px;
  }

  .table1.table1-1 > dt.active .btn_acc:after,
  .table1.table1-2 > dt.active .btn_acc:after{
    right: 12px;
  }

  .table1.table1-1 table,
  table.table1 {
    width: 100%;
  }

  .table1.table1-1 table td,
  table.table1 td{
    display: block;
    width: auto;
    padding: 10px;
  }

  .table1.table1-1 table > td,
  table.table1 > td{
    width: 100%;
  }
   .table1.table1-2 > dd{
     display: block;
    width: 100%;
  }

  .table1.table1-1 tr:nth-child(2n),
  table.table1  tr:nth-child(2n){
    background: #ffffff;
  }

  .table1.table1-1 td:nth-child(2n),
  table.table1 td:nth-child(2n){
    background: #eeeeee;
  }

  .table1 .about li{
    display: block;
    width: auto;
  }
}
/*--- /table1-1 ---*/

/*---- div.half --*/
.section.half .container:first-child{
  margin-top: 0;
}

.section.half .container .table1:first-child{
  margin-top: 0;
}

.section.half .container .table1:nth-last-child(2){
  margin-bottom: 0;
}

.section.half .container .table1:last-child{
  margin-bottom: 0;
}

/*--- table1-3 ---*/
.table1.table1-3 .title{
  width: auto;
  min-width: 48px;
  padding-right: 5px;
}

.table1.table1-3 td{
  position: relative;
}

.table1.table1-3 .txt{
  width: auto;
  padding-left: 5px;
}

.table1.table1-3 a, .table1.table1-3 a:hover, .table1.table1-3 a:visited{
  display: block;
  color: #202020;
  text-decoration: none;
}

.table1.table1-3 a:after {
  position: absolute;
  right: 10px;
  content: ">";
}

.table1.table1-3 a:hover:after {
  opacity: 0.8;
}

@media screen and (min-width: 1090px){
  .table1.table1-3{
    margin: 20px 0;
  }
}

@media screen and (max-width: 1089px){
  .table1.table1-3{
    width: 100%;
  }
}
/*--- /table1-3 ---*/
/*---- /div.half --*/

/*---- table2 ----*/
.table2{
  width: 100%;
  padding: 0;
  padding-bottom: 1px;
  background: #ffffff;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  line-height: 1.2;
  text-align: center;
}

.table2 tr.title{
  border-bottom: solid 1px #cccccc;
  font-size: 1rem;
}

.table2 th,
.table2 td{
  vertical-align: middle;
  padding: 5px 1px 6px;
  box-sizing: border-box;
  border-right: solid 1px #cccccc;
}

.table2 .hour th{
  border-bottom: solid 1px #cccccc;
}

.table2 th:last-child,
.table2 td:last-child{
  border-right: none;
}

.table2 th.mun{
  padding-left: 5px;
  padding-right: 5px;
  text-align: left;
}

.table2 thead{
  background: #eeeeee;
}

.table2 thead tr.date{
  border-bottom: 1px solid #cccccc;
  text-align: center;
}

.table2 thead tr.date th.mun{
  border-bottom: 0;
}

.table2 thead tr.hour{
  box-sizing: border-box;
  border-bottom: 1px solid #cccccc;
}

.table2 tbody tr:nth-child(even){
  background: #eeeeee;
}

@media screen and (min-width: 1101px){
  .table2{
    font-size: 0.875rem;
    }

    .table2 small{
      font-size: 0.75rem;
    }
}

@media screen and (max-width: 1100px){
  .table2{
    font-size: 1.25vw;
    }

    .table2 small{
      font-size: 1vw;
    }
}

@media screen and (max-width: 1089px){
  .table2{
    font-size: 1.8vw;
    }

    .table2 small{
      font-size: 1vw;
    }
}

@media screen and (max-width: 890px){
  .table2{
    font-size: 1.9vw;
    }

    .table2 small{
      font-size: 1vw;
    }
}

@media screen and (max-width: 749px){
  .table2{
    font-size: 2.0vw;
    }

    .table2 small{
      font-size: 2vw;
    }
}

@media screen and (max-width: 600px){
  .table2{
    font-size: 2.75vw;
    }

    .table2 small{
      font-size: 2vw;
    }
}
/*---- /table2 ----*/

/*---- table3 ----*/
.table3{
  width: 100%;
  padding: 0;
  background: #ffffff;
  border: solid 1px #cccccc;
  line-height: 1.2;
  text-align: center;
}


.table3 th,
.table3 td{
  vertical-align: middle;
  padding: 5px 1px 6px;
  box-sizing: border-box;
  border: solid 1px #cccccc;
}

.table3 th:last-child,
.table3 td:last-child{
  border-right: none;
}

@media screen and (min-width: 1101px){
  .table3{
    font-size: 0.875rem;
    }

    .table3 small{
      font-size: 0.75rem;
    }
}

@media screen and (max-width: 1100px){
  .table3{
    font-size: 1.25vw;
    }

    .table3 small{
      font-size: 1vw;
    }
}

@media screen and (max-width: 1089px){
  .table3{
    font-size: 2.75vw;
    }

    .table3 small{
      font-size: 2vw;
    }
}
/*---- /table3 ----*/
/*---- table4 ----*/
.table4{
  width: 100%;
  padding: 0;
  background: #E8F3FF;
  border: solid 1px #cccccc;
  line-height: 1.2;
  text-align: center;
}

.table4 tr.title{
  border-bottom: solid 1px #cccccc;
  font-size: 1rem;
}

.table4 th,
.table4 td{
  vertical-align: middle;
  padding: 5px 1px 6px;
  box-sizing: border-box;
  border: solid 1px #cccccc;
}

.table4 th{
  border-bottom: solid 1px #cccccc;
  background: #005ba4;
  color: #ffffff;
}

.table4 th:last-child,
.table4 td:last-child{
  border-right: none;
}

@media screen and (min-width: 1101px){
  .table4{
    font-size: 0.875rem;
    }

    .table4 small{
      font-size: 0.75rem;
    }
}

@media screen and (max-width: 1100px){
  .table4{
    font-size: 1.25vw;
    }

    .table4 small{
      font-size: 1vw;
    }
}

@media screen and (max-width: 1089px){
  .table4{
    font-size: 2.75vw;
    }

    .table4 small{
      font-size: 2vw;
    }
}
/*---- /table4 ----*/
/*---- table_attribute ----*/
.table_attribute{
  width: 100%;
  padding: 0px;
  background: #ffffff;
  border-style: solid;
  border-width: 1px;
  line-height: 1.2;
  text-align: left;
}

.table_attribute th,
.table_attribute td{
  vertical-align: middle;
  padding: 5px;
  box-sizing: border-box;
  border: solid 1px #cccccc;
}

.table_attribute tbody tr:nth-child(even){
  background: #eeeeee;
}

@media screen and (min-width: 1101px){
  .table_attribute{
    font-size: 0.875rem;
    }

    .table_attribute small{
      font-size: 0.75rem;
    }
}

@media screen and (max-width: 1100px){
  .table_attribute{
    font-size: 1.25vw;
    }

    .table_attribute small{
      font-size: 1vw;
    }
}

@media screen and (max-width: 1089px){
  .table_attribute{
    font-size: 2.75vw;
    }

    .table_attribute small{
      font-size: 2vw;
    }
}
/*---- /table_attribute ----*/
canvas{
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

/*--- pagetop ---*/
.pagetop_cont .button,
.pagetop_cont .menu2_tabs li{
  margin: 0;
}
/*--- /pagetop ---*/

/*---- footer ----*/
@media screen and (max-width: 1089px){
  /* _eco ADD */
  .footer, .footer_eco{
    margin-top: 30px;
    padding: 30px 10px 130px;
  }
}

.fotter_btn .btn{
  width: 130px;
  padding: 5px 15px 5px 30px;
  font-size: 1.0rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: block;
  margin: 0 auto;
  color: #005ba4;
  background: #ffffff;
  line-height: 1;
  border-radius: 30px;
  transition: all .2s;
}

.fotter_btn1 .btn{
  border: 1px solid #ffffff;
}

.fotter_btn1 .btn:hover{
  background-color: #005ba4;
  border-color: #fff;
  color: #ffffff;
}
/*---- /footer ----*/

/*---- mappage ----*/
.lower_select_box .pld{
  width: auto;
  max-width: 500px;
  margin: 20px auto;
}

.mapbox .box{
  position: relative;
}

.gis_box{
  position: absolute;
  width: 160px;
  margin: 10px;
  border-style: solid;
  border-width: 2px;
  background: #ffffff;
  box-shadow: 0px 2px 4px 0px #c9c9c9;
    -moz-box-shadow: 0px 2px 4px 0px #c9c9c9;
    -webkit-box-shadow: 0px 2px 4px 0px #c9c9c9;
    -o-box-shadow: 0px 2px 4px 0px #c9c9c9;
    -ms-box-shadow: 0px 2px 4px 0px #c9c9c9;
  z-index: 2;
}

.gis_areaname{
  padding: 5px 10px;
  box-sizing: border-box;
  color: #ffffff;
  word-break: break-all;;
}

.gis_data{
  padding: 10px;
}
/*---- /mappage ----*/
/*---- jumpLink----*/
.jumpLink{
  float:right;
}
/*---- /jumpLink----*/
/*---- mapImage----*/
.mapImage{
  max-width:100%;
  max-height:430px;
}
/*---- /mapImage----*/
.damTable{
  width: 100%;
  padding: 0;
  padding-bottom: 1px;
  background: #ffffff;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  line-height: 1.2;
  text-align: center;
}

.damTable tr.title{
  border-bottom: solid 1px #cccccc;
  font-size: 1rem;
}

.damTable th,
.damTable td{
  vertical-align: middle;
  padding: 5px 0px 6px;
  box-sizing: border-box;
  border-right: solid 1px #cccccc;
}

.damTable .hour th{
  border-bottom: solid 1px #cccccc;
}

.damTable th:last-child,
.damTable td:last-child{
  border-right: none;
}

.damTable th.mun{
  padding-left: 5px;
  padding-right: 5px;
  text-align: left;
}

.damTable thead{
  background: #005ba4;
  color:#ffffff;
  font-weight:bold;
}

.damTable thead tr.date{
  border-bottom: 1px solid #cccccc;
  text-align: center;
}

.damTable thead tr.date th.mun{
  border-bottom: 0;
}

.damTable thead tr.hour{
  box-sizing: border-box;
  border-bottom: 1px solid #cccccc;
}

.damTable tbody tr:nth-child(even){
  background: #eeeeee;
}

@media screen and (min-width: 1101px){
  .damTable{
    font-size: 0.76rem;
    }
}

@media screen and (max-width: 1100px){
  .damTable{
    font-size: 1.00vw;
    }
}

@media screen and (max-width: 1089px){
  .damTable{
    font-size: 2.35vw;
    }
}

/* #19706 START */
@media screen and (min-width: 1090px){
  .areaContainer{
        display: inline-block;
  }
}
@media screen and (max-width: 1089px){
  .areaContainer{
        display: flex;
        align-items: flex-end;
        height: auto;
  }
}
/* #19706 END */