@charset "utf-8";

@media print, screen and (min-width:601px) {
body {
  margin: 0px;
  background-color: #eee;
}
#container {
  width: 100%;
  max-width: 850px;
  margin: 0 auto;
  font-family: "Meiryo","BIZ UDゴシック","游ゴシック",sans-serif;
  font-size: 16px;
  color: #152197;
  background-color: #fff;
  border-left: 1px solid #777;
  border-right:1px solid #777;
  box-shadow: 5px 5px 5px #bbb;
  border-top: 1px solid #777;
}
header {
  width: 100%;
  height: 160px;
  background-image: url("../img/header_02_850_160.png");
}
h1 {
  color: DeepPink;
  font-size: 34px;
  font-weight: bold;
  letter-spacing: 3px;
  padding: 70px 20px 0 0;
  text-align: right;
  text-shadow: 2px 2px 1px white, -2px 2px 1px white, 2px -2px 1px white, -2px -2px 1px white;
}

/* ==========■■ nav ■■========== */
nav {
  width: 100%;
  background-color: #444;
  border-top: 2px solid #999;
  border-bottom: 2px solid #999;
  display: grid;
  grid-auto-rows: minmax(45px, auto);
  grid-template-columns: repeat(7, auto);
  grid-row-gap: 5px;
}
.menu {
  font-size: 15px;
  color: #fff;
  padding: 17px 0px 0 0px;
  text-align: center;
  background-color: #444;
}
.tile:link,.tile:visited {
  color: #fff;
  text-decoration: none;
}
.tile:hover {
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  background-color: #999;
}
.mcom {
  color: #fff;
  text-decoration: none;
}
.thin {
  background-color: #999;
}

/* ==========■■ main ■■========== */
main {
  width: 100%;
  margin-bottom: 40px;
  padding: 0 0 10px 0;
}
h2 {
  width: calc(100% - 20px);
  font-size: 20px;
  margin: 30px 0 0 20px;
  letter-spacing: 2px;
}
h2::before {
  content: "■";
  font-family: "ＭＳ ゴシック";
  font-weight: bold;
  margin-right: 2px;
}
h3 {
  width: calc(100% - 30px);
  color: #000;
  font-size: 17px;
  margin: 10px 0 5px 30px;
}
h3::before {
  content: "●";
  font-family: "ＭＳ ゴシック";
  font-weight: bold;
  margin-right: 2px;
}
.h4s {
  width: calc(100% - 30px);
  color: #000;
  margin: 30px 0 5px 30px;
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
}
.h4s1 {
  font-size: 17px;
  font-weight: bold;
}
.h4s1::before {
  content: "◆";
  font-family: "ＭＳ ゴシック";
  color: Maroon;
  font-weight: bold;
  margin-right: 2px;
}
.h4s2 {
}
.tile2:link,.tile2:visited {
  color: #191970;
  font-size: 17px;
}
.tile2:hover {
  color: red;
  font-weight: bold;
  text-decoration: none;
}
.fs14 {
  font-size: 14px;
}

/* ==========■■ 個別地図のセット ■■========== */
#map1 {
  width: calc(100% - 80px);
  margin: 10px auto 0;
}
.image {
  width: 100%;
  vertical-align: bottom;
  border: 1px solid #999;
}
.com {
  width: calc(100% - 40px);
  margin-top: 3px;
  color: #000;
  font-size: 13px;
  text-align: right;
}

/* ==========■■ 町内会名と区域の表 ■■========== */
.table2 {
  width: 511px;
  margin: 10px 100px 10px 60px;
  font-size: 15px;
  color: black;
  line-height: 20px;
  border: 1px solid #777;
}
.title {
  background-color: #f8f8f8;
  display: flex;
  flex-wrap: wrap;
}
.data {
  display: flex;
  flex-wrap: wrap;
}
.r1c1 {
  flex: 0 0 200px;
  text-align: center;
  padding: 2px 5px 0 5px;
  border-bottom: 1px solid #777;
}
.r1c2 {
  flex: 0 0 300px;
  text-align: center;
  padding-top: 2px;
  border-bottom: 1px solid #777;
  border-left: 1px solid #777;
}
.r2c1 {
  flex: 0 0 200px;
  align-self: center;
  text-align: center;
  padding: 2px 5px 0 5px;
}
.r2c2 {
  flex: 0 0 300px;
  border-left: 1px solid #777;
}
.r2c2p {
  padding: 2px 0 2px 4px;
  border-bottom: 1px solid #777;
}
.bb0 {
  border-bottom: none;
}
.text1 {
  width: calc(100% - 50px);
  margin: 10px 20px 0 30px;
  font-weight: bold;
  line-height: 20px;
}
.text2 {
  width: calc(100% - 75px);
  margin: 5px 30px 0 45px;
  line-height: 20px;
}
.text3 {
  margin: 30px 0 0 41px;
  font-size: 15px;
  font-weight: bold;
}
.text4 {
  width: calc(100% - 84px);
  margin: 10px 20px 0 64px;
  font-size: 15px;
  text-indent: -15px;
  line-height: 20px;
}
.text5 {
  width: calc(100% - 50px);
  margin: 5px 0 0 50px;
  font-size: 15px;
  line-height: 20px;
}

/* ==========■■ footer ■■========== */
footer {
  width: 100%;
  height: 40px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.2em;
  text-align: center;
  margin: 0 0 5px 0;
  padding-top: 20px;
  background-color: #444;
}
}









@media print, screen and (max-width:600px) {
body {
  margin: 0px;
  background-color: #eee;
}
#container {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  font-family: "Meiryo","BIZ UDゴシック","游ゴシック",sans-serif;
  font-size: 16px;
  color: #152197;
  background-color: #fff;
  border-left: 1px solid #777;
  border-right:1px solid #777;
  box-shadow: 5px 5px 5px #bbb;
  border-top: 1px solid #777;
}
header {
  width: 100%;
  height: 160px;
  background-image: url("../img/header_02_850_160.png");
}
h1 {
  color: DeepPink;
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 3px;
  padding: 84px 10px 0 0;
  text-align: right;
  text-shadow: 2px 2px 1px white, -2px 2px 1px white, 2px -2px 1px white, -2px -2px 1px white;
}
nav {
  width: calc(100% - 6px);
  padding: 2px 4px 2px 2px;
  background-color: #444;
  border-top: 2px solid #999;
  border-bottom: 2px solid #999;
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 8px;
}
.menu {
  align-self: center;
  font-size: 13px;
  color: #fff;
  line-height: 15px;
  padding: 5px 2px 5px 2px;
  background-color: #666;
}
.tile {
}
.mcom {
  color: #fff;
  text-decoration: none;
}
.thin {
  background-color: #999;
}

/* ==========■■ main ■■========== */
main {
  width: 100%;
  margin-bottom: 40px;
  padding: 0 0 10px 0;
}
h2 {
  width: calc(100% - 10px);
  font-size: 18px;
  margin: 30px 0 0 10px;
  letter-spacing: 2px;
}
h2::before {
  content: "■";
  font-family: "ＭＳ ゴシック";
  margin-right: 2px;
}
h3 {
  width: calc(100% - 20px);
  color: #000;
  font-size: 17px;
  margin: 10px 0 5px 20px;
}
h3::before {
  content: "●";
  font-family: "ＭＳ ゴシック";
  margin-right: 2px;
}
.h4s {
  width: calc(100% - 40px);
  color: #000;
  margin: 10px 0 5px 40px;
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
}
.h4s1 {
  font-size: 17px;
  font-weight: bold;
  text-indent: -20px;
  line-height: 20px;
}
.h4s1::before {
  content: "◆";
  font-family: "ＭＳ ゴシック";
  color: Maroon;
  font-weight: bold;
  margin-right: 2px;
}
.h4s2 {
  line-height: 20px;
}
.tile2:link,.tile2:visited {
  color: #191970;
  font-size: 17px;
}
.tile2:hover {
  color: red;
  font-weight: bold;
  text-decoration: none;
}
.fs14 {
  font-size: 14px;
}
#map1 {
  width: calc(100% - 40px);
  margin: 10px auto 0;
}
.image {
  width: 100%;
  vertical-align: bottom;
  border: 1px solid #999;
}
.com {
  width: calc(100% - 20px);
  margin-top: 3px;
  color: #000;
  font-size: 13px;
  text-align: right;
}
.table2 {
  width: calc(100% - 40px);
  margin: 5px 20px 30px 20px;
  font-size: 15px;
  color: black;
  line-height: 20px;
  border: 1px solid #777;
}
.title {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.data {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.r1c1 {
  flex: 0 0 calc(35% - 10px);
  text-align: center;
  padding: 0 5px 0 5px;
  background-color: #f6f6f6;
  border-bottom: 1px solid #777;
}
.r1c2 {
  flex: 0 0 calc(65% - 1px);
  text-align: center;
  background-color: #f6f6f6;
  border-bottom: 1px solid #777;
  border-left: 1px solid #777;
}
.r2c1 {
  flex: 0 0 calc(35% - 10px);
  align-self: center;
  text-align: center;
  padding: 0 5px 0 5px;
}
.r2c2 {
  flex: 0 0 calc(65% - 1px);
  border-left: 1px solid #777;
}
.r2c2p {
  padding: 2px 0 2px 4px;
  border-bottom: 1px solid #777;
}
.bb0 {
  border-bottom: none;
}
.text1 {
  width: calc(100% - 40px);
  margin: 10px 20px 0 20px;
  font-weight: bold;
  line-height: 20px;
}
.text2 {
  width: calc(100% - 60px);
  margin: 5px 30px 0 30px;
  line-height: 20px;
}
.text3 {
  margin: 30px 0 0 21px;
  font-size: 15px;
  font-weight: bold;
}
.text4 {
  width: calc(100% - 64px);
  margin: 10px 20px 0 44px;
  font-size: 15px;
  text-indent: -15px;
  line-height: 20px;
}
.text5 {
  width: calc(100% - 30px);
  margin: 5px 0 0 30px;
  font-size: 15px;
  line-height: 20px;
}

/* ==========■■ footer ■■========== */
footer {
  width: 100%;
  height: 40px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.2em;
  text-align: center;
  margin: 0 0 5px 0;
  padding-top: 20px;
  background-color: #444;
}

}