#map {
  margin: 0px auto;
  display: flex;
  background: #fff;
  position: relative;
  z-index: 100000;
}

#map a {
  text-decoration: none;
}

#map-area {
  float: left;
  height: 290px;
  margin: 4px;
  position: relative;
  width: 660px;
}

#map-search-result {
  background: url('./../img/backframe.png') no-repeat;
  display: none;
  height: 280px;
  left: 7px;
  opacity: 0.98;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 4px;
  position: absolute;
  top: 8px;
  width: 635px;
  z-index: 5;
}

#map-search-form {
  font-size: 90%;
}

.components {
  height: 30px;
  border-bottom: solid 2px #009380;
}

#map-search-form .components input[type='image'] {
  float: right;
}

.map-search-form-unit {
  font-size: 12px;
  padding: 6px 6px 0px 6px;
}

.search-text-box input[type="text"] {
  border: none;
}

.map-search-form-header {
  font-weight: bold;
  margin: 0 0 4px 0px;
  font-size: 0.8rem;
  background: #009380;
  color: #fff;
  padding: 0.5rem;
  border-radius: 50px;
  width: 320px;
}

.map-search-form-bottom {
  font-size: 11px;
  line-height: 11px;
  margin-top: 4px;
}

.search-result-box {
  height: 300px;
  position: relative;
  font-size: 12px;
}

.search-result-balloon {
  border: 0;
  left: 0;
  position: absolute;
  top: -23px;
  z-index: 4;
}

.search-word {
  font-weight: bold;
  margin: 4px 0 8px 8px;
}

.search-result-box img {
  vertical-align: top;
}

.search-result-unit {
  color: #000;
  cursor: pointer;
  margin: 0 4px 0;
  padding: 0 4px;
}

.search-result-unit .search-result-school {
  font-size: 16px;
  padding: 2px;
  text-decoration: none;
  display: inline-block;
  width: 450px;
}

.search-result-unit .search-result-address {
  font-size: 12px;
}

.search-result-image {
  float: left;
  height: 35px;
  margin: 0 32px 0 0;
  padding: 0;
  width: 27px;
  display: inline-block;
}

.search-result-image img {
  border: 1px solid #555;
}

.search-close {
  font-size: 13px;
  position: absolute;
  right: 6px;
  top: 4px;
  z-index: 3;
  display: flex;
}

.pref-header {
  font-weight: bold;
  margin: 2px 0 6px 4px;
}

.pref-table {
  border-spacing: 4px 3px;
  font-size: 12px;
  width: 100%;
}

.pref-table.others {
  border-spacing: 4px 8px;
}

.pref-table td {
  background: #f2f6f8;
  border: 1px solid #cad3d8;
  color: #6f99c6;
  cursor: pointer;
  font-weight: bold;
  line-height: 12px;
  padding: 2px 8px;
  width: 20%;
}

.pref-table.others td {
  padding: 6px 8px;
}

.pref-table td:hover {
  background: #eaeff1;
  color: #4f79a6;
}

.map-search-box {
  margin: 0 0 4px 0;
}

.search-text-box {
  float: left;
  margin: 6px 0 0 0;
  width: 160px;
}

#school-map-search .area {
  position: absolute;
}

#school-map-search .area img {
  border: none;
}

#school-map-search .area h3 {
  background: none;
  background-image: none;
  left: 0;
  margin: 0;
  padding: 0;
  /* position: absolute; */
  top: 0;
  width: auto;
  z-index: 2;
}

#school-map-search .area ul {
  background: url('./../img/popup_bg.png');
  border: 2px #fff solid;
  border-bottom-color: #a5aaaf;
  border-right-color: #a5aaaf;
  display: none;
  left: -9px;
  list-style: none;
  margin: 0;
  padding: 46px 0 9px 9px;
  position: absolute;
  top: -9px;
  width: 216px;
  z-index: 1;
}

#school-map-search .area li {
  background: url('./../img/link_bg.png');
  color: #06c;
  cursor: pointer;
  float: left;
  font-size: 15px;
  height: 22px;
  line-height: 19px;
  margin: 0 8px 7px 0;
  padding: 0 0 0 17px;
  text-decoration: underline;
  width: 82px;
}

#school-map-search .area li:hover {
  color: #09c;
}

.search-result-nothing-text {
  margin: 12px 4px 8px;
  text-align: center;
}

.search-result-nothing-box {
  border: 2px solid #4169e1;
  margin: 20px auto;
  width: 530px;
}

.search-result-dot-box {
  border: 1px dotted #ccc;
  line-height: 1.2;
  margin: 1px;
  text-align: center;
}

.hs-color {
  color: #20b2aa;
}

.near-school {
  color: blue;
  font-size: 12px;
  text-decoration: underline;
}

.hs-img {
  height: 35px;
  width: 27px;
}

.dist-box {
  margin: 32px 0;
  text-align: center;
}

.japan-map {
  height: 310px;
}

.area-box {
  height: 260px;
  margin-top: 12px;
  overflow-y: auto;
}

.right {
  float: right;
  display: inline-block
}

a:hover {
  color: #09f;
}

a {
  color: #444;
}

a:hover {
  color: #444;
}

.school-info {
  color: #333;
  font-size: 12px;
}

.school-info h3 {
  float: left;
  font-weight: bold;
  padding: 0 0 0 15px;
  width: 150px;
}

.school-info #school-map-search {
  margin: 0 auto;
  width: 762px;
}

.cf:after {
  clear: both;
  content: ' ';
  display: block;
}

.nospace {
  line-height: 0;
  font-size: 0;
}

.small {
  font-size: smaller;
}

.green-text {
  color: #009900;
}

.rosen-text {
  font-weight: bold;
}

.center {
  text-align: center;
}

.shiryou-link-out {
  border: 2px solid #4169E1;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  width: 530px
}

.shiryou-link-in {
  border: 1px dotted #ccc;
  margin: 1px;
  text-align: center;
  line-height: 1.2;
  font-size: 12px
}

.red-text {
  color: #B3424A;
}

.shiryou-text {
  color: #20B2AA;
}

.line-type {
  margin: 4px 0 8px 0;
}

.line-names {
  overflow-y: auto;
  height: 230px;
}

.priv-end {
  height: 2px;
}

.school-info {
  font-size: 12px;
  color: #333;
  padding-bottom: 20px;
}

.index-main-column h2.title {
  margin: 0 0 15px 0;
}

.pref-table th .group {
  width: 120px;
  height: 30px;
  line-height: 28px;
  background: url('./../img/title_small.jpg') no-repeat;
  text-align: center;
  font-weight: normal;
}

.black-text {
  color: #000000;
}

.brackets {
 color: #000000;
 letter-spacing: -2px;
}
