@-webkit-keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
#contents {
  margin: 30px auto;
  width: 900px;
  font-family: sans-serif;
  line-height: 1.7;
  color: #333;
}

/* main
------------------------------------------------------------*/
#main {
  float: right;
  width: 670px;
}
#main #main01 {
  margin: 0 0 20px 0;
  height: 154px;
}
#main #top-news {
  float: left;
  width: 100%;
  height: auto;
  margin-bottom: 15px;
  border: 1px solid #d63333;
  position: relative;
  background-color: #ffeaea;
  font-family: gothic;
  background: #ffeaea;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZWFlYSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #ffeaea));
  background-image: -moz-linear-gradient(top, #ffffff, #ffeaea);
  background-image: -webkit-linear-gradient(top, #ffffff, #ffeaea);
  background-image: linear-gradient(to bottom, #ffffff, #ffeaea);
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFFFFFFF', endColorstr='#FFFFEAEA');
}
#main #top-news #bxslider {
  overflow: hidden;
}
#main #top-news #bxslider .block {
  padding: 20px 15px;
}
#main #top-news #bxslider .block .block2 {
  width: 630px;
  height: auto;
  overflow: hidden;
}
#main #top-news #bxslider .block .block2 .ttl {
  font-size: 1.2em;
  line-height: 20px;
  font-weight: bold;
  background: url(/img/top-news_ttl.gif) no-repeat left top;
  padding: 0 0 5px 12px;
  overflow: hidden;
  font-family: "Hiragino Kaku Gothic Pro W6", "Hiragino Kaku Gothic Pro", Roboto, "YuGothic", Meiryo, Osaka, "MS PGothic", sans-serif;
}
#main #top-news #bxslider .block .block2 .p {
  float: right;
  padding: 5px 0 0 0;
  width: 120px;
  height: 120px;
}
#main #top-news #bxslider .block .block2 .t {
  font-size: 1.2em;
  float: left;
  width: 500px;
  padding: 3px 0 0 0;
}
#main #top-news a.bx-prev, #main #top-news a.bx-next {
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  position: absolute;
}
#main #top-news a.bx-prev {
  height: 17px;
  width: 18px;
  top: 0;
  right: 17px;
  background: url(/img/top-news_arrow.gif) no-repeat left top;
}
#main #top-news a.bx-next {
  height: 17px;
  width: 17px;
  top: 0;
  right: 0;
  background: url(/img/top-news_arrow.gif) no-repeat right top;
}
#main #top-news a.bx-prev:hover, #main #top-news a.bx-next:hover {
  filter: alpha(opacity=70);
  opacity: 0.7;
  -moz-opacity: 0.7;
}
#main ul#marugoto {
  float: left;
  width: 235px;
  height: 154px;
  position: relative;
  margin: 10px 0 0 0;
}
#main ul#marugoto li.n01 {
  position: absolute;
  top: 0;
  left: 0;
}
#main ul#marugoto li.n02 {
  position: absolute;
  top: 84px;
  left: 0;
}
#main ul#marugoto02 {
  display: table;
  table-layout: fixed;
  margin: 10px 0px;
  width: 405px;
  height: 57px;
}
#main ul#marugoto02 li.n01, #main ul#marugoto02 li.n02 {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}

/*左バナーエリア*/
#side .bnr__block {
  margin-bottom: 20px;
}

/*右バナーエリア*/
#main .bnr__block {
  float: right;
  width: 270px;
  height: auto;
  box-sizing: border-box;
  background-color: #b39849;
  margin-bottom: 20px;
}
#main . p a img{
  width: 100％;
}
#main .bnr__block p a:hover img{
  opacity:0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=70)";
  -moz-opacity:0.8;
  -khtml-opacity: 0.8;
}
/*右バナーエリア*/

#main #scroll-news {
  margin: 20px 0;
}
#main #scroll-news .block {
  width: 670px;
  margin: 0 0 10px 0;
}
#main #scroll-news .block .scroll {
  border: 1px solid #ccc;
  border-top: none;
  height: 196px;
  overflow: auto;
}
#main #scroll-news .block .scroll02 {
  border: 1px solid #ccc;
  border-top: none;
  height: 120px;
  overflow: auto;
}

#main #scroll-news .block .scroll ul {
  padding: 0 9px 9px 9px;
  font-size: 1.2em;
}
#main #scroll-news .block .scroll02 ul {
  padding: 0 9px 9px 9px;
  font-size: 1.2em;
}

#main #scroll-news .block .scroll ul li {
  padding: 9px 0 10px 0;
  background: url(/img/dot.gif) repeat-x left bottom;
}
#main #scroll-news .block .scroll02 ul li {
  padding: 9px 0 10px 0;
  background: url(/img/dot.gif) repeat-x left bottom;
}

#main #scroll-news .block .scroll ul li div.left {
  float: left;
  width: 100px;
  vertical-align: top;
}
#main #scroll-news .block .scroll02 ul li div.left {
  float: left;
  width: 100px;
  vertical-align: top;
}

#main #scroll-news .block .scroll ul li div.right {
  width: 525px;
  float: right;
}
#main #scroll-news .block .scroll02 ul li div.right {
  width: 525px;
  float: right;
}

#main #scroll-news .block .scroll ul li span img {
  margin: 0 5px -2px 0;
}
#main #scroll-news .block .scroll02 ul li span img {
  margin: 0 5px -2px 0;
}

#main #links {
  float: left;
  width: 515px;
}
#main #links .project, #main #links .kyodo {
  width: 250px;
}
#main #links h2.first {
  margin: 0;
}
#main #links .line {
  background: url(/img/dot.gif) repeat-x left bottom;
  padding: 0 0 1px 0;
}
#main #links .line .block {
  width: 250px;
}
#main #links .line .block .t {
  float: right;
  width: 190px;
  font-size: 1.2em;
  line-height: 1.6;
  padding: 12px 0;
}
#main #links .line .block .t h3 a {
  background: url(/img/arrow_blue.gif) no-repeat 3px 7px;
  text-indent: 10px;
  display: block;
}
#main #links .kyodo .line .block .t h3 a {
  background: url(/img/arrow_orange.gif) no-repeat 3px center;
  padding: 0 0 0 10px;
}
#main #links .line .block .p {
  float: left;
  width: 50px;
  padding: 15px 0;
}
#main #links .line .block .p a img {
  padding: 1px;
  background: #ccc;
}
#main #right {
  width: 135px;
  float: right;
}
#main #right ul#bnrs {
  vertical-align: bottom;
  font-size: 0;
  line-height: 0;
}
#main #right ul#bnrs li {
  margin: 0 0 10px 0;
}
#main #right ul#bnrs li img {
  display: block;
  width: 100%;
  height: auto;
}
#main #right #counter {
  margin-top: 20px;
  text-align: center;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 5px 0 10px 0;
  font-size: 1.2em;
  line-height: 20px;
}
#main #right dl.link {
  border: 1px solid #ccc;
  padding: 9px;
  font-size: 1.2em;
  margin: 20px 0 0 0;
}
#main #right dl.link dt {
  padding: 0 0 5px 0;
}
#main #right dl.link dd a {
  background: url(/img/arrow_green.gif) no-repeat 2px center;
  padding: 0 0 0 10px;
}

/* side
------------------------------------------------------------*/
#side {
  float: left;
  width: 210px;
}
#side #president {
  margin: 0 0 20px 0;
}
#side dl.navi {
  background: url(/img/navi_bg.gif) repeat-y left top;
  margin: 15px 0 0 0;
}
#side dl.navi-m0 {
  background: url(/img/navi_bg.gif) repeat-y left top;
  margin: 0;
}
#side dl.navi-m0 dd, #side dl.navi dd {
  margin: 0 10px;
  border-bottom: 1px solid #85ad33;
  font-size: 1.4em;
  line-height: 1.5;
}
#side dl.navi-m0 dd.last, #side dl.navi dd.last {
  background: url(/img/navi_last.gif) no-repeat left bottom;
  border: none;
  margin: 0;
  padding: 0 10px 1px 10px;
}
#side dl.navi-m0 dd a {
  display: block;
  text-decoration: none;
  padding: 6px 0 6px 10px;
  background: url(/img/arrow_green_l.gif) no-repeat 2px 13px;
}
#side dl.navi dd a {
  display: block;
  text-decoration: none;
  padding: 6px 0 6px 10px;
  background: url(/img/arrow_green_l.gif) no-repeat 2px 13px;
}
#side dl.navi dd .bnr_area{
  background:none;
}
#side dl.navi dd .bnr_area img{
  border-radius: 5px ;
  -moz-border-radius: 5px ;
  -webkit-border-radius: 5px ;
}
#side dl.navi dd.img-nav div.ph {
  float: left;
  width: 50px;
  margin: 0 5px 0 0;
}
#side dl.navi dd.img-nav div.ph a {
  text-decoration: none;
  padding: 6px 0;
  background: none;
}
#side dl.navi dd.img-nav div.ph img {
  padding: 1px;
  background: #CCC;
}
#side dl.navi dd.img-nav div.txt {
  float: left;
  width: 135px;
}
#side dl.navi dd.img-nav div.txt p {
  font-size: 0.8em;
  margin: 0 0 6px 10px;
}
#side dl.navi-m0 dd a:hover, #side dl.navi dd a:hover {
  color: #666;
}
#side dl.navi-m0 dd a.attention, #side dl.navi dd a.attention {
  background: #fcc url(/img/arrow_red_l.gif) no-repeat 2px center;
  color: #c00;
  margin: 10px 0;
  font-weight: bold;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
#side dl.navi-m0 dd a.attention:hover, #side dl.navi dd a.attention:hover {
  color: #c33;
}
#side dl.navi-m0 dt.pulldown, #side dl.navi dt.pulldown {
  position: relative;
}
#side dl.navi-m0 dt.pulldown span.n01 {
  width: 210px;
  height: 35px;
  display: block;
  background: url(/img/navi01.gif) no-repeat left top;
  text-indent: -9999px;
  z-index: 0;
}
#side dl.navi dt.pulldown span.n02 {
  width: 210px;
  height: 35px;
  display: block;
  background: url(/img/navi02.gif) no-repeat left top;
  text-indent: -9999px;
  z-index: 0;
}
#side dl.navi dt.pulldown span.n03 {
  width: 210px;
  height: 35px;
  display: block;
  background: url(/img/navi03.gif) no-repeat left top;
  text-indent: -9999px;
  z-index: 0;
}
#side dl.navi dt.pulldown span.n04 {
  width: 210px;
  height: 35px;
  display: block;
  background: url(/img/navi04.gif) no-repeat left top;
  text-indent: -9999px;
  z-index: 0;
}
#side dl.navi-m0 dt.pulldown span.n01 {
  background-position: left top;
}
#side dl.navi dt.pulldown span.n02, #side dl.navi dt.pulldown span.n03, #side dl.navi dt.pulldown span.n04 {
  background-position: left top;
}
#side dl.navi-m0 dt.hovering span.n01 {
  background-position: left bottom;
}
#side dl.navi dt.hovering span.n02, #side dl.navi dt.hovering span.n03, #side dl.navi dt.hovering span.n04 {
  background-position: left bottom;
}
#side dl.navi-m0 dt.pulldown .drop, #side dl.navi dt.pulldown .drop {
  display: none;
}
#side dl.navi-m0 dt.hovering, #side dl.navi dt.hovering {
  z-index: 999999 !important;
}
#side dl.navi-m0 dt.hovering .drop, #side dl.navi dt.hovering .drop {
  display: block;
  background: #333;
  position: absolute;
  top: 35px;
  left: 0;
  padding: 5px 10px;
  border-radius: 5px;
  -ms-border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}
#side dl.navi-m0 dt.hovering .drop ul, #side dl.navi dt.hovering .drop ul {
  font-size: 1.4em;
  line-height: 1.7;
  width: 190px;
}
#side dl.navi-m0 dt.hovering .drop ul li, #side dl.navi dt.hovering .drop ul li {
  border-bottom: 1px solid #666;
  padding: 5px 0 5px 10px;
  background: url(/cmn/img/header/arrow.gif) no-repeat 3px 13px;
}
#side dl.navi-m0 dt.hovering .drop ul li.last, #side dl.navi dt.hovering .drop ul li.last {
  border-bottom: none;
}
#side dl.navi-m0 dt.hovering .drop ul li a, #side dl.navi dt.hovering .drop ul li a {
  color: #fff;
  display: block;
}
#side dl.link {
  border: 1px solid #ccc;
  padding: 9px;
  font-size: 1.2em;
  margin: 20px 0 0 0;
}
#side dl.link dt {
  padding: 0 0 5px 0;
}
#side dl.link dd a {
  background: url(/img/arrow_green.gif) no-repeat 2px center;
  padding: 0 0 0 10px;
}
/*サイドカレンダー*/
#side .calendar__block {
  width: 210px;
  border: 1px solid #669900;
  box-sizing: border-box;
  background-color: #f4f8f1;
  padding: 10px;
  margin-bottom: 20px;
  font-size: 1.2em;
  font-family: "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", Roboto, "YuGothic", Meiryo, Osaka, "MS PGothic", sans-serif;
}
#side .calendar__block .calendar__title {
  font-size: 1.4em;
  text-align: center;
  font-family: "Hiragino Kaku Gothic Pro W6", "Hiragino Kaku Gothic Pro", Roboto, "YuGothic", Meiryo, Osaka, "MS PGothic", sans-serif;
  color: #669900;
  border-bottom: 1px solid #b2cc7f;
  padding-bottom: 5px;
  margin-bottom: 10px;
  line-height: 1.2;
}
#side .calendar__block .calendar__title {
  font-size: 1.4em;
  text-align: center;
  font-family: "Hiragino Kaku Gothic Pro W6", "Hiragino Kaku Gothic Pro", Roboto, "YuGothic", Meiryo, Osaka, "MS PGothic", sans-serif;
  color: #669900;
  border-bottom: 1px solid #b2cc7f;
  padding-bottom: 5px;
  margin-bottom: 10px;
  line-height: 1.2;
}
#side .calendar__block .navi {
  position: relative;
}
#side .calendar__block .navi .prev {
  position: absolute;
  left: 0;
  top: 0;
}
#side .calendar__block .navi .next {
  position: absolute;
  right: 0;
  top: 0;
}
#side .calendar__block .caption {
  color: #669900;
  font-size: 1.2em;
  text-align: center;
  margin-bottom: 5px;
}
#side .calendar__block .calendar__body > div {
  overflow: visible !important;
}
#side .calendar__block .calendar__body table, #side .calendar__block .calendar__body td, #side .calendar__block .calendar__body th {
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}
#side .calendar__block .calendar__body table.calendar {
  width: 100%;
  background-color: #fff;
  margin-bottom: 10px;
  border-top: 1px solid #84ad32;
  border-right: 1px solid #84ad32;
}
#side .calendar__block .calendar__body table.calendar th, #side .calendar__block .calendar__body table.calendar td {
  border-bottom: 1px solid #84ad32;
  border-left: 1px solid #84ad32;
  text-align: center;
  padding: 3px 0;
  line-height: 1.4;
  vertical-align: top;
}
#side .calendar__block .calendar__body table.calendar th {
  padding: 0;
  font-size: 0.8em;
}
#side .calendar__block .calendar__body table.calendar .otherMonth {
  color: #ccc;
}
#side .calendar__block .calendar__body table.calendar .calendar__events {
  display: block;
  color: #669900;
  font-size: 0.8em;
  cursor: pointer;
  text-decoration: underline;
}
#side .calendar__block .calendar__body table.calendar .calendar__events:hover {
  text-decoration: none;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip {
  position: relative;
  display: none;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip.active {
  display: block;
  -webkit-animation: show 0.3s linear 0s;
  animation: show 0.3s linear 0s;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip ul {
  background-color: #222;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 20px;
  padding-top: 10px;
  color: #fff;
  font-size: 1.05em;
  line-height: 1.5;
  width: 200px;
  box-sizing: border-box;
  margin-left: -100px;
  position: absolute;
  top: 3px;
  left: 50%;
  z-index: 200000;
  font-family: serif;
  border-radius: 5px;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip ul li {
  border-bottom: 1px solid #4e4e4e;
  font-size: 1.2em;
  font-family: "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", Roboto, "YuGothic", Meiryo, Osaka, "MS PGothic", sans-serif;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip ul li a {
  color: #fff;
  display: block;
  text-align: left;
  padding: 5px 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 1.4em;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip ul li:last-child {
  border-bottom: none;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip ul li:last-child a {
  padding-bottom: 0;
}
#side .calendar__block .calendar__body table.calendar .calendar__tooltip:after {
  content: ' ';
  display: block;
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-bottom: 8px solid #222;
  border-bottom: 8px solid rgba(0, 0, 0, 0.8);
  position: absolute;
  left: 50%;
  top: -13px;
  margin-left: -8px;
}
#side .calendar__block .todayLink {
  text-align: center;
}
/*サイドカレンダー*/
