@charset "UTF-8";
.top-main-container {
  overflow: hidden;
}

#top_main_img {
  width: 100%;
  height: auto;
  line-height: 0;
}
#top_main_img img {
  width: 100%;
  height: auto;
}

.port_main_img_ttl {
  width: 330px;
  height: 60px;
  background: url(../img/port_main_img_ttl.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10;
}

.img_01_cap {
  width: 132px;
  height: 22px;
  background: url(../img/img01_cp.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  position: absolute;
  right: 80px;
  bottom: 30px;
}

.img_02_cap {
  width: 132px;
  height: 22px;
  background: url(../img/img02_cp.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  position: absolute;
  right: 80px;
  bottom: 30px;
}

.port_center_ttl {
  width: 330px;
  height: 24px;
  margin: 29px auto;
  background: url(../img/port_center_ttl.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
}
.port_center_ttl img {
  width: 100%;
  height: auto;
}

.port_center_double {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  width: 100%;
  flex-flow: row;
  line-height: 0;
}
.port_center_double img {
  width: 100%;
  height: auto;
}

.port_center_tourism {
  border: 1px solid #cccccc;
}

.port_center_tourism p {
  display: block;
  width: 240px;
  height: 50px;
  background: url(../img/port_center_nav_ttl_02.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  margin: 9px auto 10px auto;
}

.port_center_immig {
  border: 1px solid #cccccc;
}

.port_center_immig p {
  display: block;
  width: 240px;
  height: 50px;
  background: url(../img/port_center_nav_ttl_03.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  margin: 9px auto 10px auto;
}

.port_center_ttl_04 {
  width: 264px;
  height: 26px;
  margin: 28px auto;
  background: url(../img/port_center_nav_ttl_04.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
}
.port_center_ttl_04 img {
  width: 100%;
  height: auto;
}

/* メガメニュー */
.port_center_nav {
  width: 100%;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-flow: row;
  color: white;
  position: relative;
}

.port_center_nav_each:hover > .port_center_nav_inner {
  height: 206px;
}

.port_center_nav_each:hover > a {
  opacity: 1;
}

.port_center_nav_inner {
  height: 0;
  position: absolute;
  overflow: hidden;
  left: 0;
  width: 100%;
  background-color: inherit;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-flow: row;
  z-index: 5;
}
.port_center_nav_inner div {
  width: 208px;
  border-right: solid 1px white;
  margin: 20px 30px 20px 0px;
}
.port_center_nav_inner p {
  font-size: 22px;
  font-size: 2.2rem;
  padding-top: 10px;
}

.port_center_nav_ul {
  padding: 35px 30px 0px 30px;
  font-size: 18px;
  list-style-type: disc;
  text-align: left;
  width: 801px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-flow: column wrap;
  align-content: flex-start;
  box-sizing: border-box;
}
.port_center_nav_ul a {
  color: white;
  text-decoration: none;
  display: block;
  line-height: 1.5;
}
.port_center_nav_ul li {
  width: 227px;
  margin-right: 30px;
  padding-bottom: 0.5em;
  line-height: 1.5;
  height: 27px;
}
.port_center_nav_ul .port_center_h54 {
  height: 54px;
}
.port_center_nav_ul span {
  font-size: 14px;
}

.port_center_nav_move {
  background: #3375D3;
}
.port_center_nav_move > a {
  display: block;
  width: 208px;
  height: 187px;
  background: url(../img/port_center_nav_move.png), linear-gradient(#3375D3 50%, #2D6DC9 50%);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_move:hover > a {
  background: #3375D3 url(../img/port_center_nav_move.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_marry {
  background: #F75E95;
}
.port_center_nav_marry > a {
  display: block;
  width: 208px;
  height: 187px;
  background: url(../img/port_center_nav_marry.png), linear-gradient(#F75E95 50%, #F25595 50%);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_marry:hover > a {
  background: #F75E95 url(../img/port_center_nav_marry.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_child {
  background: #F49160;
}
.port_center_nav_child > a {
  display: block;
  width: 208px;
  height: 187px;
  background: url(../img/port_center_nav_child.png), linear-gradient(#F49160 50%, #EF8054 50%);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_child:hover > a {
  background: #F49160 url(../img/port_center_nav_child.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_health {
  background: #8EB734;
}
.port_center_nav_health > a {
  display: block;
  width: 208px;
  height: 187px;
  background: url(../img/port_center_nav_health.png), linear-gradient(#8EB734 50%, #7FAF2B 50%);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_health:hover > a {
  background: #8EB734 url(../img/port_center_nav_health.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_loss {
  background: #AE6AE2;
}
.port_center_nav_loss > a {
  display: block;
  width: 208px;
  height: 187px;
  background: url(../img/port_center_nav_loss.png), linear-gradient(#AE6AE2 50%, #A261DB 50%);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

.port_center_nav_loss:hover > a {
  background: #AE6AE2 url(../img/port_center_nav_loss.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -3000px;
}

/* ↑メガメニュー↑ */
.top_inner {
  padding: 70px 40px 55px 40px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-flow: row;
  text-align: left;
}

.top_inner_left {
  width: 626px;
  margin-right: 60px;
}
.top_inner_left a {
  color: black;
  text-decoration: none;
}

.top_topics {
  display: inline-block;
  text-align: right;
  position: absolute;
  right: 0;
  font-size: 16px;
  font-size: 1.6rem;
  top: 10px;
}
.top_topics span {
  font-size: 12px;
  font-size: 1.2rem;
  position: relative;
  bottom: 2px;
}

#topics {
  height: 550px;
  overflow-y: scroll;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.5;
}

.inner {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-flow: row;
  border-bottom: solid 1px #B3B3B3;
}

.top_time_wrap {
  white-space: nowrap;
  padding: 20px;
}

.top_text_wrap {
  padding: 20px;
}

.top_inner_right {
  width: 274px;
}
.top_inner_right img {
  max-width: 100%;
  height: auto;
}

.top_right_bnr {
  margin-bottom: 45px;
  display: block;
}

.top_population {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 0 auto;
  line-height: 1.4;
}

.top_pop_month {
  font-weight: bold;
}

.top_kome {
  font-size: 8px;
  font-size: .8rem;
  text-align: right;
}

.top_main_bottom {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  width: 786px;
  text-align: center;
  justify-content: space-around;
  margin: 0 auto;
}

.top_bnr_wrap {
  margin-bottom: 15px;
}
.top_bnr_wrap img {
  width: 250px;
  height: 108px;
}

.top_bnr_koho {
  position: relative;
}

.top_koho_hover {
  display: none;
  width: 170px;
  height: 108px;
  background: url(../img/bnr_koho_back.png) no-repeat;
  background-size: contain;
  top: 0;
  right: 0;
  position: absolute;
}

.top_bnr_koho:hover .top_koho_hover {
  display: block;
}

.top_koho1 {
  display: block;
  width: 170px;
  height: 25px;
  background: url(../img/bnr_koho1.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  margin-top: 37px;
}

.top_koho2 {
  display: block;
  width: 170px;
  height: 25px;
  background: url(../img/bnr_koho2.png) no-repeat;
  background-size: contain;
  text-indent: -3000px;
  margin-top: 8px;
}
