@charset "utf-8";
/* CSS Document */


/*---------------------------------------------------------------------
	main_slide
---------------------------------------------------------------------*/
#main_slide .owl-dots {
    position: absolute;
    width: 100%;
    bottom: 10px;
}
#main_slide .owl-controls {
  margin-top: 0;
}
#main_slide .owl-prev {
    left: 20px;
}
#main_slide .owl-next {
    right: 20px;
}

/*---------------------------------------------------------------------
	top_topics
---------------------------------------------------------------------*/
.top_topics {
	margin-bottom: 30px;
  background: url("/image/common/bg_01.png");
}
.bg_top_topics {
  padding: 20px 15px;
  background: url("/image/top/bg_top_topics.png") repeat-y center top;
}
.top_topics .inner {}

/* item */
.top_topics .item {
	position: relative;
	background: #fff;
	border-bottom: 5px solid;
  border-radius: 3px;
    overflow: hidden;
}
.top_topics .item + .item {
  margin-top: 15px;
}
.top_topics .color_01 { border-bottom-color: #003366; }
.top_topics .color_02 { border-bottom-color: #336600; }

.top_topics .item_head {
  padding: 10px;
  padding-right: 100px;
}
.top_topics .color_01 .item_head { background-color: #003366; }
.top_topics .color_02 .item_head { background-color: #336600; }

.top_topics .item_head .ttl {
  color: #fff;
  font-size: 100%;
  font-weight: bold;
}


/* link_list */
.top_topics .link_list {
  position: absolute;
  right: 10px;
  top: 6px;
  text-align: right;
}

.top_topics .link_list li {
	display: inline-block;
	width: 70px;
}
.top_topics .link_list a {
  color: #333333;
  display: block;
  text-decoration: none;
  font-size: 81.25%;
  font-weight: bold;
  background: #fff no-repeat 5px center;
  border-radius: 4px;
  padding: 5px 10px 3px;
  text-align: left;
  transition: .3s;
}
.top_topics .link_list a:hover {
  opacity: .7;
}
.top_topics .link_list .rss {
  display: none;
}
.top_topics .color_01 .link_list .rss a { background-image: url("/image/common/icon_rss_01.png"); }
.top_topics .color_02 .link_list .rss a { background-image: url("/image/common/icon_rss_02.png"); }

.top_topics .link_list .list a::before {
	content: "";
	position: absolute;
	right: 15px;
	top: 50%;
	width: 8px;
	height: 8px;
	border-right: 2px solid #333;
	border-bottom: 2px solid #333;
	transform: rotate(-45deg);
	margin-top: -5px;
}

.top_topics .link_list a:hover,
.top_topics .link_list a:focus,
.top_topics .link_list a:active {}


.top_topics .item_detail {
    padding: 10px 20px;
}

/*---------------------------------------------------------------------
	top_links
---------------------------------------------------------------------*/
.top_links {
    padding: 0 15px;
  margin-bottom: 45px;
}

.top_links .ttl {
  text-align: center;
  font-size: 150%;
  font-weight: normal;
  margin-bottom: 20px;
  padding-top: 50px;
  background: url(/image/top/ttl_top_links.png) no-repeat center top;
  background-size: 40px;
}
.top_links ul {
  letter-spacing: -.5em;
}
.top_links li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  margin: 0 1.31% 2.89% 0;
  width: 48.69%;
}
.top_links li:nth-child(2n) {
    margin-right: 0;
}
.top_links li a {
  display: block;
  text-decoration: none;
  color: #000;
  border-bottom: 12px solid #8AC2DC;
  transition: .3s;
  position: relative;
}
.top_links li a:hover {
  color: #000;
  border-bottom-color: #0079B2;
}
.top_links li a::after {
    content: "";
    width: 4px;
    height: 4px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: rotate(45deg);
    margin-left: -3px;
}
.top_links li img {
  width: 100%;
}
.top_links li span {
    display: block;
    font-size: 90%;
    text-align: center;
    padding: 10px 5px;
    background: url(/image/common/bg_01.png);
}

/*---------------------------------------------------------------------
	top_navi
---------------------------------------------------------------------*/
.top_navi {
  padding: 20px 15px;
  margin-bottom: 30px;
  background: url("/image/common/bg_02.jpg") 0 0;
  background-size: cover;
}
.top_navi .inner {
  max-width: 1000px;
  margin: 0 auto;
}
.top_navi .item {
	background-color: #fff;
}
.top_navi .item + .item {
	margin-top: 15px;
}

.top_navi .item .thumb {
  display: none;
}
.top_navi .item .thumb img { width: 100%;}

.top_navi .item .detail {
	padding: 10px;
}
.top_navi .item_01 .detail { background: #EDF6FA; }
.top_navi .item_02 .detail { background: #FFFBEE; }
.top_navi .item_03 .detail { background: #F7F2FB; }

.top_navi .item .ttl {
  font-weight: normal;
  font-size: 130%;
  margin-bottom: 13px;
  padding-left: 38px;
}
.top_navi .item_01 .ttl { background: url("/image/common/icon_bill.png") no-repeat 0 0; background-size: auto 24px; }
.top_navi .item_02 .ttl { background: url("/image/common/icon_bord.png") no-repeat 0 0; background-size: auto 24px; }
.top_navi .item_03 .ttl { background: url("/image/common/icon_cap.png") no-repeat 4px 3px; background-size: auto 24px; }

.top_navi .item ul {
  letter-spacing: -.5em;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.top_navi .item li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  /*margin: 0 2.89% 2.89% 0;*/
  width: calc(50% - 10px);
}
.top_navi .item li:nth-child(2n) {
  margin-right: 0;
}
.top_navi .item li a {
  display: flex;
  text-decoration: none;
  text-align: center;
  color: #000;
  background: #fff;
  border: 1px solid #bbb;
  border-radius: 3px;
  padding: 4px;
  transition: .3s;
      font-size: 90%;
  height: 100%;
  align-items: center;
  justify-content: center;
}
.top_navi .item li a:hover { color: #fff; }
.top_navi .item_01 li a:hover { background-color: #398baf; }
.top_navi .item_02 li a:hover { background-color: #ff8000; }
.top_navi .item_03 li a:hover { background-color: #7e3eb1; }

/*---------------------------------------------------------------------
	top_group
---------------------------------------------------------------------*/
.top_group {
	margin-bottom: 30px;
}

.top_group .ttl {
    font-size: 140%;
    font-weight: normal;
    text-align: center;
    margin-bottom: 10px;
    padding-top: 55px;
    background: url(/image/top/ttl_top_group.png) no-repeat center top;
    background-size: 70px;
}


.top_group .list {}
.top_group .item {
  background: no-repeat center bottom;
  background-size: cover;
}
.top_group .item_01 { background-image: url("/image/top/bg_top_group_01.jpg"); }
.top_group .item_02 { background-image: url("/image/top/bg_top_group_02.jpg"); }

.top_group .item_ttl {
  text-align: center;
  font-size: 120%;
  line-height: 1.1;
  font-weight: normal;
  padding: 8px;
}
.top_group .item_01 .item_ttl { background: #D9EEE5; }
.top_group .item_02 .item_ttl { background: #D9EBF4; }

.top_group .item_ttl span {
  display: block;
  font-size: 53.84%;
}
.top_group .item_01 .item_ttl span { color: #008C52; }
.top_group .item_02 .item_ttl span { color: #007AB3; }

.top_group ul {
  padding: 20px 40px;
}
.top_group ul li + li {
  margin-top: 5px;
}

.top_group ul a {
  color: #000;
  font-size: 100%;
  text-decoration: none;
  display: block;
  border: 1px solid;
  background: rgba(255,255,255,.9);
  padding: 8px 15px;
  position: relative;
  transition: .3s;
}
.top_group ul a:hover {
  background-color: #fff;
}
.top_group .item_01 ul a { border-color: #B7DFCE; }
.top_group .item_02 ul a { border-color: #B4D8E9; }

.top_group ul a::after {
    content: "";
    width: 7px;
    height: 7px;
    position: absolute;
    right: 13px;
    top: 50%;
    margin-top: -6px;
    border-right: 3px solid #000;
    border-bottom: 3px solid #000;
    transition: .3s;
    transform: rotate(-45deg);
}
.top_group .item_01 ul a::after { border-color: #008C52; }
.top_group .item_02 ul a::after { border-color: #007BB4; }
.top_group ul a:hover::after {
  right: 10px;
}

/*---------------------------------------------------------------------
	other_links
---------------------------------------------------------------------*/
.other_links {
  padding: 20px 0;
  background: url("/image/common/bg_03.jpg");
}
.other_links ul {
  letter-spacing: -.5em;
  text-align: center;
}
.other_links li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.89% 2.89% 0;
    width: 47.69%;
}
.other_links li:nth-child(2n) {
  margin-right: 0;
}

