@charset "UTF-8";

html {
  height: 100%;
}

body {
  margin: 0px;
  padding: 0px;
  background: #ffffff;
  color: #000000;
  font: 100% "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 160%;
}

/*  ##################################
     CSS BASIC ELEMENTS
  ################################## */

a {
  text-decoration: underline;
}

a:link {
  color: #07477b;
}

a:hover {
  color: #bc0000;
  text-decoration: none;
}

a:visited {
  color: #440066;
}

p {
  margin: 0px;
  padding: 0px;
}

img {
  margin: 0px;
  padding: 0px;
  border: none;
  vertical-align: top;
}

/*  ##################################
     BASIC LAYOUT
  ################################## */

#wrapper {
  margin: 0px;
  padding: 0px;
}

#page {
  position: relative;
  min-width: 1000px;
  height: 800px;
  margin: 0px;
  padding: 0px;
}

#header {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0px;
  padding: 0px;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
  color: #ffffff;
  z-index: 2;
}

#content {
  margin: 0px;
  padding: 0px;
}

/*  ##################################
     HEADINGS
  ################################## */

h1 {
  margin: 0px;
  padding: 0px;
  font-size: 180%;
  font-weight: bold;
  text-align: left;
  line-height: 1;
}

h1 a {
  text-decoration: none;
}

h1 .icon-shimanemark {
  font-size: 140%;
}

h1 .web-title {
  position: absolute;
  top: 25px;
  left: 70px;
}

/*  ##################################
     HEADER
  ################################## */

.header-left {
  float: left;
  min-width: 180px;
  margin: 0px;
  padding: 0px;
}

.header-right {
  float: right;
  min-width: 760px;
  margin: 0px;
  padding: 0px;
}

.header-menu {
  width: 760px;
  margin: 0px;
  padding: 0px;
}

.header-menu ul {
  width: 770px;
  margin: 0 -10px 0 0;
  padding: 0px;
  overflow: hidden;
  zoom: 1;
  _zoom: 1;
}

.header-menu ul li a {
  float: left;
  margin: 0 10px 0 0;
  padding: 4px 10px;
  text-decoration: none;
  color: #ffffff;
  display: inline;
  list-style: none;
  border-radius: 4px;
  -webkit-border-radius: 4px;  /* Safari,Google Chrome */
  -moz-border-radius: 4px;  /* Firefox */
  -o-border-radius: 4px;    /* opera */
}

.header-menu ul li a.m01 {
  background: #aa0000;
}

.header-menu ul li a.m02 {
  background: #004890;
}

.header-menu ul li a.m03 {
  background: #185d00;
}

.header-menu ul li a.m04 {
  background: #000000;
}

.header-menu ul li a:hover.m01 {
  background: #880000;
}

.header-menu ul li a:hover.m02 {
  background: #00376e;
}

.header-menu ul li a:hover.m03 {
  background: #0f3b00;
}

.header-menu ul li a:hover.m04 {
  background: #333333;
}

/*  ##################################
     SLIDER
  ################################## */

.flexslider {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.flexslider ul {
  margin: 0px;
  padding: 0px;
}

.slides,
.slides li {
  margin: 0px;
  padding: 0px;
}

.slides li img {
  position: relative;
  max-height: 800px;
  object-fit: cover;
  vertical-align: bottom;
}

/*  ##################################
     SEARCH
  ################################## */

#search-box {
  position: absolute;
  top: 110px;
  right: 20px;
  width: 460px !important;
  margin: 0px;
  padding: 20px 0;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 10;
}

#cse-search-box {
  width: 420px !important;
}

#cse-search-boxm table.gsc-search-box td.gsc-input {
  padding: 0px !important;
}

#cse-search-box input[type="text"] {
  float: left;
  width: 200px;
  height: 32px;
  padding: 0 !important;
  display: block;
}

#cse-search-box input[type="submit"] {
  float: left;
  width: 60px;
  height: 34px;
  margin-left: 4px !important;
  padding: 0px;
  background: #004890;
  border: none;
  color: #ffffff;
  display: block;
  border-radius: 4px;
  -webkit-border-radius: 4px;  /* Safari,Google Chrome */
  -moz-border-radius: 4px;  /* Firefox */
  -o-border-radius: 4px;    /* opera */
  cursor: pointer;
}

#cse-search-box label.ss {
  float: left;
  margin: 0 10px 0 0;
  padding: 5px 0 0 40px;
  text-shadow: 1px 1px 2px #ffffff, -1px -1px 2px #ffffff, -1px 1px 2px #ffffff, 1px -1px 2px #ffffff;
}

#cse-search-box #tmp-query {
  margin: 0px;
  padding: 0px;
  color: #666666;
  border: 1px solid #cccccc;
}

/*  ##################################
     CONTENT
  ################################## */

.content-left {
  float: left;
  margin: 0px;
  padding: 0px;
}

.content-left h2 {
  position: absolute;
  top: 100px;
  left: 20px;
  margin: 0px;
  padding: 0px;
  z-index: 5;
}

.content-left .main-box {
  position: absolute;
  bottom: 40px;
  left: 20px;
  text-align: center;
  display: inline-block;
  z-index: 15;
}

.content-left .main-box img {
  width: 340px;
  height: 340px;
  margin: 0px;
  padding: 0px;
  border: 4px solid #ffffff;
  border-radius: 50%;
}

.content-left .main-box a,
.content-left .main-box a:hover
.content-left .main-box a:visited {
  color: #ffffff;
}

.content-left .main-box h1,
.content-left .main-box h2,
.content-left .main-box h3,
.content-left .main-box h4,
.content-left .main-box h5,
.content-left .main-box h6 {
  position: absolute;
  left: 0;
  top: 30%;
  width: 260px;
  padding: 40px;
  font-size: 200%;
  font-weight: bold;
  text-align:center;
  color: #ffffff;
  display: inline-block;
  text-shadow: 1px 1px 2px #000000, -1px -1px 2px #000000, -1px 1px 2px #000000, 1px -1px 2px #000000;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.content-left .main-box p {
  position: absolute;
  left: 0;
  top: 65%;
  width: 260px;
  padding: 40px;
  text-align:center;
  color: #ffffff;
  display: inline-block;
  text-shadow: 1px 1px 2px #000000, -1px -1px 2px #000000, -1px 1px 2px #000000, 1px -1px 2px #000000;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.content-right {
  float: right;
  margin: 0px;
  padding: 0px;
}

.content-right ul {
  position: absolute;
  right: 20px;
  top: 204px;
  margin: 0px;
  padding: 0px;
  z-index: 15;
}

.content-right ul li {
  margin: 0 0 20px 0;
  padding: 0px;
}

/* ピックアップが重要なお知らせの場合（黄色） */
.content-right ul li .sub_topic-important {
  background: #fff600;
}

/* ピックアップが緊急情報の場合（赤色） */
.content-right ul li .sub_topic-danger {
  background: #aa0000;
  color: #ffffff;
}

.content-right ul li .sub_topic-danger a {
  color: #ffffff;
}

.content-right ul li .sub_topic {
  background: #ffffff;
}

a.pickup-box-wrapper:visited {
  color: inherit;
}

.content-right ul li .pickup-box {
  width: 460px;
  margin: 0px;
  padding: 0px;
}

.content-right ul li .pickup-box .pickup-box-thumb {
  float: left;
  width: 120px;
  margin: 0px;
  padding: 0px;
}

.content-right ul li .pickup-box .pickup-box-txt {
  float: right;
  width: 320px;
  height: 100px;
  margin: 0px;
  padding: 10px;
  overflow: hidden;
}

.content-right ul li .pickup-box .pickup-box-txt h3 {
  margin: 0 0 10px 0;
  padding: 0px;
  font-size: 120%;
  font-weight: bold;
}

.content-right ul li .pickup-box .pickup-box-txt p {
  margin: 0px;
  padding: 0px;
  font-size: 90%;
  line-height: 140%;
}

.content-right ul li .pickup-box .pickup-box-txt a,
.content-right ul li .pickup-box .pickup-box-txt a:hover
.content-right ul li .pickup-box .pickup-box-txt a:visited {
  color: #000000;
}

/*  ##################################
     SUB CONTENT
  ################################## */

#sub-content-wrapper {
  min-width: 1000px;
  margin: 0px;
  padding: 0px;
  background: #fcf6f1;
}

#sub-content {
  margin: 0px;
  padding: 2%;
}

.sub-content-box {
  width: 100%;
  margin: 0px;
  padding: 0px;
}

#sub-content ul {
  margin: 0 -2% -2% 0;
  width: 102%;
  padding: 0px;
  overflow: hidden;
  zoom: 1;
  _zoom: 1;
}

#sub-content ul li {
  float: left;
  width: 48%;
  margin: 0 2% 2% 0;
  padding: 0px;
  display: inline;
  list-style: none;
}

#sub-content ul li .sub-pickup-box {
  width: 100%;
  margin: 0px;
  padding: 0px;
  background: #ffffff;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-thumb {
  float: left;
  width: 20%;
  margin: 0px;
  padding: 0px;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-thumb img {
  width: 100%;
  height: 100%;
  margin: 0px;
  padding: 0px;
  object-fit: cover;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-content {
  float: right;
  width: 80%;
  margin: 0px;
  padding: 0px;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-content .sub-pickup-box-txt {
  height: 100px;
  margin: 10px;
  padding: 0px;
  overflow: hidden;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-content .sub-pickup-box-txt h3 {
  margin: 0 0 5px 0;
  padding: 0px;
  font-size: 110%;
  font-weight: bold;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-content .sub-pickup-box-txt p {
  margin: 0px;
  padding: 0px;
  font-size: 90%;
  line-height: 140%;
}

#sub-content ul li .sub-pickup-box .sub-pickup-box-content .sub-pickup-box-txt a,
#sub-content ul li .sub-pickup-box .sub-pickup-box-content .sub-pickup-box-txt a:hover
#sub-content ul li .sub-pickup-box .sub-pickup-box-content .sub-pickup-box-txt a:visited {
  color: #000000;
}

/*  ##################################
     FOOTER
  ################################## */

#footer {
  min-width: 1000px;
  margin: 20px 0 0 0;
  padding: 0px;
}

#footer .ad-box {
  min-width: 1010px;
  margin: 0 20px;
  padding: 0 0 20px 0;
  border-bottom: 1px solid #dddddd;
}

#footer .ad-box p.admore {
  margin: 0 0 10px 0;
  padding: 0px;
}

#footer .ad-box p.admore .ick {
  margin: 0 5px 0 0;
  color: #004890;
}


#footer .ad-box ul {
  margin: 0 -10px -10px 0;
  padding: 0px;
  list-style: none;
  overflow: hidden;
  zoom: 1;
  _zoom: 1;
}

#footer .ad-box ul li {
  float: left;
  width: 234px;
  margin: 0 10px 10px 0;
  padding: 0px;
  display: inline;
}

#footer .copyright {
  margin: 20px 0 0 0;
  padding: 0 20px;
}

#footer .copyright a {
  margin: 0 0 0 10px;
  padding: 4px 6px;
  background: #004890;
  font-size: 90%;
  text-decoration: none;
  color: #ffffff;
  display: inline;
  list-style: none;
  border-radius: 2px;
  -webkit-border-radius: 2px;  /* Safari,Google Chrome */
  -moz-border-radius: 2px;  /* Firefox */
  -o-border-radius: 2px;    /* opera */
}

#footer .copyright a:hover {
  background: #00376e;
}

#footer .fmenu {
  margin: 20px 0 0 0;
  padding: 20px;
  background: #f0edec;
  font-size: 90%;
}

#footer .fmenu ul {
  margin: 0 -10px 0 0;
  padding: 0px;
  list-style: none;
  overflow: hidden;
  zoom: 1;
  _zoom: 1;
}

#footer .fmenu ul li {
  float: left;
  margin: 0 10px 0 0;
  padding: 0px;
  display: inline;
}

#footer .fmenu .en {
  margin: 5px 0 0 0;
  padding: 0px;
}

/*  ##################################
     SKIP LINK
  ################################## */

#skip {
  position: absolute;
  left: 0px;
  top: 0px;
  margin: 0px;
  padding: 0px;
  line-height: normal;
}

p.skiplink a {
  position: absolute;
  width: 120px;
  margin: 0px;
  padding: 5px;
  left: -9999px;
  top: 0px;
  text-align: center;
  z-index: 50;
}

p.skiplink a:focus, p.skiplink a:active {
  left: 0px;
  top: 0px;
  background: #000000;
  color: #ffffff;
}

/*  ##################################
     CLEARFIX
  ################################## */

/* For modern browsers */
.clearfix:before,
.clearfix:after {
  content: "";
  display: block;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.clearfix {
  zoom: 1;
}