@charset "UTF-8";
/*
======== context ======================================

Last Updated:YYMMDD
Summary: トップページ固有レイアウト設定

- 
- 
=======================================================
*/

.index #contentsArea *,
.index #contentsArea *::before,
.index #contentsArea *::after {
  box-sizing: border-box;
}

.index #headerArea {
  margin-bottom: 0;
}
.index #ciBlock h1 {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  line-height: 1;
}
.index #ciBlock h1:after,
.index #ciBlock h1:before {
  content: none;
}
.index #contentsArea {
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.index .en #contentsArea {
  padding-bottom: 56px;
}

.index #contents {
  width: 1200px;
  margin: 0 auto;
}

.index #contentsArea .topMainVisual {
  padding: 64px 0 48px;
  position: relative;
  z-index: 0;
}
.index .en #contentsArea .topMainVisual {
  padding: 80px 0;
}
.index #contentsArea .topMainVisual::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc((100vw - 1200px) / -2);
  width: 100vw;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 61%;
  background-image: url(/common4/img/top_mainvisual.jpg);
  z-index: -1;
}
.index #contentsArea .topMainVisual .topTopicPickup {
  display: flex;
  justify-content: space-between;
}
.index .en #contentsArea .topMainVisual .topTopicPickup {
  flex-direction: column;
}
.index #contentsArea .topMainVisual .topTopicPickup > div {
  width: calc(50% - 20px);
  padding: 32px;
  background: rgba(255, 255, 255, .9);
  border: 1px solid #D9D9D9;
  border-top-width: 8px;
  border-radius: 8px;
}
.index .en #contentsArea .topMainVisual .topTopicPickup > div {
  width: 100%;
}
.index #contentsArea .topMainVisual .topTopicPickup > div h2 {
  font-size: 2.4rem;
  line-height: 1;
  margin: 0 0 24px;
  padding: 0;
  border: none;
}
.index #contentsArea .topMainVisual .topTopicPickup > div h2::before {
  content: none;
}
.index #contentsArea .topMainVisual .topTopicPickup .topTopic {
  display: flex;
  flex-direction: column;
  border-top-color: #004697;
}
.index .en #contentsArea .topMainVisual .topTopicPickup .topTopic {
  margin: 0 0 48px;
}
.index #contentsArea .topMainVisual .topTopicPickup .topTopic h2 {
  color: #004697;
}
.index #contentsArea .topMainVisual .topTopicPickup .topTopic .topTopicInner {
  padding: 32px 24px 0;
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 4px;
  flex-grow: 1;
}
.index #contentsArea .topMainVisual .topTopicPickup .topTopic .topTopicInner ul {
  margin: 0;
}
.index #contentsArea .topMainVisual .topTopicPickup .topTopic .topTopicInner ul li {
  font-size: 1.8rem;
  line-height: 1.3333;
  margin-bottom: 24px;
  padding: 0 0 0 25px;
  background-position-y: 3px;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup {
  border-top-color: #007a60;
}
.index .en #contentsArea .topMainVisual .topTopicPickup .topTopic + .topPickup {
  margin-bottom: -32px;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup h2 {
  color: #007a60;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  list-style: none;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li {
  line-height: 1.3333;
  text-align: center;
  width: calc(50% - 8px);
  min-height: 152px;
  margin: 0 0 16px 0;
  position: relative;
}
.index .en #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li {
  margin: 0;
  width: calc(25% - 12px);
  min-height: 140px;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li:nth-of-type(n+3) {
  margin-bottom: 0;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a {
  display: block;
  height: 100%;
  padding: 101px 0 8px;
  background: #fff;
  border: 1px solid #9D9D9D;
  border-radius: 4px;
  box-shadow: 0 0 6px rgba(0, 0, 0, .06);
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a:hover,
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a:focus {
  background: #007a60;
  border-color: #007a60;
  box-shadow: none;
  color: #fff;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a img {
  position: absolute;
  top: 16px;
  left: 50%;
  transform: translateX(-50%);
  width: 78px;
  height: 78px;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a br {
  display: none;
}
.index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a span {
  font-size: 1.4rem;
  display: block;
}

.topMainVisual .urgentBlock,
.topMainVisual .noticeBlock {
  margin: -16px 0 48px;
}
.en .topMainVisual .urgentBlock,
.en .topMainVisual .noticeBlock {
  margin-top: -32px;
}

.topMainVisual + .urgentBlock,
.topMainVisual + .noticeBlock {
  margin-top: 56px;
}


.index #contentsArea .topMinister {
  margin-bottom: 64px;
  padding: 64px 0 52px;
  position: relative;
  z-index: 0;
}
.index #contentsArea .topMinister::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc((100vw - 1200px) / -2);
  width: 100vw;
  height: 100%;
  background: #F8F8F5;
  z-index: -1;
}
.index #contentsArea .topMinister > div {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin: 0 0 30px;
}
.index #contentsArea .topMinister > div h2 {
  font-size: 3.2rem;
  line-height: 1;
  margin: 0;
  padding: 0;
  border: none;
}
.index #contentsArea .topMinister > div h2::after {
  content: none;
}
.index #contentsArea .topMinister ul {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 14px);
  margin: 0;
  list-style: none;
}
.index #contentsArea .topMinister ul li {
  width: calc(25% - 14px);
  min-height: 346px;
  margin: 0 14px 12px 0;
}
.index #contentsArea .topMinister ul li a {
  display: block;
  height: 100%;
  padding: 20px 20px 40px;
  background: #fff;
  border: 1px solid #9D9D9D;
  border-radius: 10px;
  box-shadow: 0 0 6px rgba(0, 0, 0, .06);
  color: #333;
  text-decoration: none;
}
.index #contentsArea .topMinister ul li a:hover,
.index #contentsArea .topMinister ul li a:focus {
  background: #004697;
  border-color: #004697;
  box-shadow: none;
  color: #fff;
}
.index #contentsArea .topMinister ul li a img:not(.ico) {
  display: block;
  width: 100%;
  border-radius: 4px;
  margin-bottom: 24px;
}
.index #contentsArea .topMinister ul li a span {
  display: block;
  font-size: 1.4rem;
  line-height: 1;
  margin-bottom: 8px;
}
.index #contentsArea .topMinister ul li a p {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4444;
  letter-spacing: .05em;
  margin: 0;
}

a.bulletLinkG {
  margin-left: 26px;
  color: #333;
  font-size: 1.8rem;
  position: relative;
}
.bulletLinkG::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -26px;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background-size: contain;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cpath%20d%3D%22M18%2C9a9%2C9%2C0%2C1%2C0-9%2C9A9%2C9%2C0%2C0%2C0%2C18%2C9ZM7.051%2C13.194a1.073%2C1.073%2C0%2C0%2C1%2C0-1.518l2.7-2.67-2.7-2.67a1.073%2C1.073%2C0%2C0%2C1%2C0-1.518%2C1.094%2C1.094%2C0%2C0%2C1%2C1.534%2C0l3.463%2C3.43a1.072%2C1.072%2C0%2C0%2C1%2C0%2C1.518L8.585%2C13.194A1.092%2C1.092%2C0%2C0%2C1%2C7.051%2C13.194Z%22%20fill%3D%22%23007a60%22%2F%3E%3C%2Fsvg%3E");
  pointer-events: none;
}

.index #contentsArea .topSpcontentsWrap {
  margin: 96px 0 128px;
}
.index #contentsArea .topSpcontentsWrap > div {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin: 0 0 30px;
}
.index #contentsArea .topSpcontentsWrap > div h2 {
  font-size: 3.2rem;
  line-height: 1;
  margin: 0;
  padding: 0;
  border: none;
}
.index #contentsArea .topSpcontentsWrap > div h2::after {
  content: none;
}

.index #contentsArea .topSpcontents {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  margin: 0 0 32px;
  padding: 48px;
  border: 1px solid #9D9D9D;
  border-radius: 8px;
  box-shadow: 0 0 6px rgba(0, 0, 0, .06);
  color: #333;
  text-decoration: none;
}
.index #contentsArea .topSpcontents:hover,
.index #contentsArea .topSpcontents:focus {
  background: #004697;
  border-color: #004697;
  box-shadow: none;
  color: #fff;
}
.index #contentsArea .topSpcontents .topSpcontentsTxt h3 {
  border: none;
  margin: 8px 0 16px;
  padding: 0;
  font-size: 2.2rem;
  line-height: 1.4545;
}
.index #contentsArea .topSpcontents .topSpcontentsTxt p {
  margin-bottom: 0;
  line-height: 1.6666;
}
.index #contentsArea .topSpcontents .topSpcontentsImg {
  flex-shrink: 0;
  width: 49.5%;
  margin-right: 48px;
}
.index #contentsArea .topSpcontents .topSpcontentsImg img {
  width: 100%;
  border-radius: 4px;
  vertical-align: bottom;
}

.index #contentsArea .topNews {
  margin: 0 0 64px;
  padding: 48px;
  border: 1px solid #D9D9D9;
  border-radius: 8px;
}
.index .en #contentsArea .topNews {
  margin-top: 64px;
}
.index #contentsArea .topNews .topNewsH {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 32px;
}
.index #contentsArea .topNews .topNewsH h2 {
  font-size: 3.2rem;
  line-height: 1;
  margin: 0;
  padding: 0;
  border: none;
}
.index #contentsArea .topNews .topNewsH h2::after {
  content: none;
}
.index #contentsArea .topNews .topNewsH ul {
  display: flex;
  list-style: none;
  margin: 0;
}
.index #contentsArea .topNews .topNewsH ul li {
  margin-left: 32px;
  font-size: 1.8rem;
}
.index #contentsArea .topNews .topNewsH ul li a {
  color: #333;
}
.index #contentsArea .topNews .topNewsH ul li .rss {
  position: relative;
}
.index #contentsArea .topNews .topNewsH ul li .rss::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -26px;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cg%20transform%3D%22translate(-3.866%20-29.946)%22%3E%3Cpath%20d%3D%22M7.037%2C23.418a1.338%2C1.338%2C0%2C1%2C0%2C0%2C2.677%2C6.487%2C6.487%2C0%2C0%2C1%2C6.47%2C6.489%2C1.339%2C1.339%2C0%2C1%2C0%2C2.677%2C0A9.167%2C9.167%2C0%2C0%2C0%2C7.037%2C23.418Z%22%20transform%3D%22translate(-1.157%2013.37)%22%20fill%3D%22%23007a60%22%2F%3E%3Cpath%20d%3D%22M7.065%2C4.8a1.339%2C1.339%2C0%2C1%2C0%2C0%2C2.677%2C13.337%2C13.337%2C0%2C0%2C1%2C13.3%2C13.341%2C1.339%2C1.339%2C0%2C0%2C0%2C2.678%2C0A16.018%2C16.018%2C0%2C0%2C0%2C7.065%2C4.8Z%22%20transform%3D%22translate(-1.175%2025.141)%22%20fill%3D%22%23007a60%22%2F%3E%3Cellipse%20cx%3D%222.347%22%20cy%3D%222.347%22%20rx%3D%222.347%22%20ry%3D%222.347%22%20transform%3D%22translate(3.866%2043.252)%22%20fill%3D%22%23007a60%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  pointer-events: none;
}

.index #contentsArea .topNews .selectLabel {
  padding: 20px 20px 20px;
  background: #F8F8F5;
  border: 1px solid #D9D9D9;
  border-radius: 8px 8px 0 0;
}
.index #contentsArea .topNews .selectLabel h3 {
  margin: 0 0 16px;
  padding: 0;
  border: none;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
}
.index #contentsArea .topNews .selectLabel #newsTab {
  display: flex;
  justify-content: space-between;
  list-style: none;
  margin: 0;
}
.index #contentsArea .topNews .selectLabel button {
  display: block;
  width: calc(10% - (36px / 10));
  padding: 0;
  border-width: 2px;
  border-style: solid;
  border-radius: 4px;
  font-size: 1.8rem;
  letter-spacing: .05em;
  line-height: 40px;
  text-align: center;
  transition: .2s;
  appearance: none;
  position: relative;
}
.index #contentsArea .topNews .selectLabel button:focus {
  outline: none;
}
.index #contentsArea .topNews .selectLabel button:focus-visible {
  outline: 4px solid #FF6110;
  outline-offset: 4px;
}

.selectLabel button::after {
  content: "";
  position: absolute;
  right: 2px;
  bottom: 2px;
  border-top: 6px solid transparent;
  border-right: 6px solid transparent;
}
.selectLabel [aria-controls="panel-00"]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 19px;
  transform: translateY(-50%);
  width: 16px;
  height: 12px;
  border: none;
  background-color: #767676;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.5%22%20height%3D%2212%22%20viewBox%3D%220%200%2016.5%2012%22%3E%3Cpath%20d%3D%22M10.25%2C8.75a.75.75%2C0%2C0%2C0%2C0%2C1.5h10.5a.75.75%2C0%2C1%2C0%2C0-1.5ZM6.5%2C8A1.5%2C1.5%2C0%2C1%2C0%2C8%2C9.5%2C1.5%2C1.5%2C0%2C0%2C0%2C6.5%2C8Zm3.75%2C5.25a.75.75%2C0%2C1%2C0%2C0%2C1.5h10.5a.75.75%2C0%2C0%2C0%2C0-1.5ZM6.5%2C12.5A1.5%2C1.5%2C0%2C1%2C0%2C8%2C14%2C1.5%2C1.5%2C0%2C0%2C0%2C6.5%2C12.5Zm3.75%2C5.25a.75.75%2C0%2C0%2C0%2C0%2C1.5h10.5a.75.75%2C0%2C0%2C0%2C0-1.5ZM6.5%2C17A1.5%2C1.5%2C0%2C1%2C0%2C8%2C18.5%2C1.5%2C1.5%2C0%2C0%2C0%2C6.5%2C17Z%22%20transform%3D%22translate(-5%20-8)%22%20fill%3D%22%23777%22%2F%3E%3C%2Fsvg%3E");
}
.selectLabel [aria-controls="panel-00"] {
  background-color: #F8F8F8;
  border-color: #767676;
  color: #333;
}
.selectLabel [aria-controls="panel-00"] span {
  padding-left: 24px;
}
.selectLabel [aria-controls="panel-01"] {
  background-color: #F9F3F8;
  border-color: #8D1A6E;
  color: #8D1A6E;
}
.selectLabel [aria-controls="panel-01"]::after {
  border-right-color: #8D1A6E;
}
.selectLabel [aria-controls="panel-02"] {
  background-color: #FDF3F1;
  border-color: #D02800;
  color: #D02800;
}
.selectLabel [aria-controls="panel-02"]::after {
  border-right-color: #D02800;
}
.selectLabel [aria-controls="panel-03"] {
  background-color: #F2F8F7;
  border-color: #00765D;
  color: #00765D;
}
.selectLabel [aria-controls="panel-03"]::after {
  border-right-color: #00765D;
}
.selectLabel [aria-controls="panel-04"] {
  background-color: #F2F5FA;
  border-color: #004697;
  color: #004697;
}
.selectLabel [aria-controls="panel-04"]::after {
  border-right-color: #004697;
}
.selectLabel [aria-controls="panel-05"] {
  background-color: #FEFCF1;
  border-color: #FFD800;
  color: #333 !important;
}
.selectLabel [aria-controls="panel-05"]::after {
  border-right-color: #FFD800;
}
.selectLabel [aria-controls="panel-06"] {
  background-color: #F8F8F4;
  border-color: #73762E;
  color: #73762E;
}
.selectLabel [aria-controls="panel-06"]::after {
  border-right-color: #73762E;
}
.selectLabel [aria-controls="panel-07"] {
  background-color: #F2F8F9;
  border-color: #006F89;
  color: #006F89;
}
.selectLabel [aria-controls="panel-07"]::after {
  border-right-color: #006F89;
}
.selectLabel [aria-controls="panel-08"] {
  background-color: #F5F8F2;
  border-color: #387900;
  color: #387900;
}
.selectLabel [aria-controls="panel-08"]::after {
  border-right-color: #387900;
}
.selectLabel [aria-controls="panel-09"] {
  background-color: #F7F6F2;
  border-color: #645101;
  color: #645101;
}
.selectLabel [aria-controls="panel-09"]::after {
  border-right-color: #645101;
}
.selectLabel button[aria-selected="true"] {
  color: #fff;
}
.selectLabel button::before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 0;
  transition: .2s;
}
.selectLabel button:hover::before,
.selectLabel button[aria-selected="true"]::before {
  height: 4px;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-00"],
.selectLabel [aria-controls="panel-00"]::before {
  background-color: #767676;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-01"],
.selectLabel [aria-controls="panel-01"]::before {
  background-color: #8D1A6E;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-02"],
.selectLabel [aria-controls="panel-02"]::before {
  background-color: #D02800;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-03"],
.selectLabel [aria-controls="panel-03"]::before {
  background-color: #00765D;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-04"],
.selectLabel [aria-controls="panel-04"]::before {
  background-color: #004697;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-05"],
.selectLabel [aria-controls="panel-05"]::before {
  background-color: #FFD800;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-06"],
.selectLabel [aria-controls="panel-06"]::before {
  background-color: #73762E;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-07"],
.selectLabel [aria-controls="panel-07"]::before {
  background-color: #006F89;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-08"],
.selectLabel [aria-controls="panel-08"]::before {
  background-color: #387900;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-09"],
.selectLabel [aria-controls="panel-09"]::before {
  background-color: #645101;
}
.selectLabel button[aria-selected="true"][aria-controls="panel-00"]::after {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.5%22%20height%3D%2212%22%20viewBox%3D%220%200%2016.5%2012%22%3E%3Cpath%20d%3D%22M10.25%2C8.75a.75.75%2C0%2C0%2C0%2C0%2C1.5h10.5a.75.75%2C0%2C1%2C0%2C0-1.5ZM6.5%2C8A1.5%2C1.5%2C0%2C1%2C0%2C8%2C9.5%2C1.5%2C1.5%2C0%2C0%2C0%2C6.5%2C8Zm3.75%2C5.25a.75.75%2C0%2C1%2C0%2C0%2C1.5h10.5a.75.75%2C0%2C0%2C0%2C0-1.5ZM6.5%2C12.5A1.5%2C1.5%2C0%2C1%2C0%2C8%2C14%2C1.5%2C1.5%2C0%2C0%2C0%2C6.5%2C12.5Zm3.75%2C5.25a.75.75%2C0%2C0%2C0%2C0%2C1.5h10.5a.75.75%2C0%2C0%2C0%2C0-1.5ZM6.5%2C17A1.5%2C1.5%2C0%2C1%2C0%2C8%2C18.5%2C1.5%2C1.5%2C0%2C0%2C0%2C6.5%2C17Z%22%20transform%3D%22translate(-5%20-8)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
}

.index #contentsArea .topNews .topNewslist {
  margin: 0;
  list-style: none;
  border: 1px solid #D9D9D9;
  border-top: none;
  border-radius: 0 0 8px 8px;
}
.index .en #contentsArea .topNews .topNewslist {
  border-top: 1px solid #D9D9D9;
  border-radius: 8px;
}
.index #contentsArea .topNews #newsPanel > div.isHidden {
  display: none;
}
.index #contentsArea .topNews #newsPanel > div:focus-visible {
  outline: 4px solid #FF6110;
  outline-offset: 4px;
}
.index #contentsArea .topNews .topNewslist li {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin: 0;
  padding: 24px 20px 20px;
  border-bottom: 1px solid #D9D9D9;
}
.index .en #contentsArea .topNews .topNewslist li {
  justify-content: flex-start;
  padding: 20px;
}
.index #contentsArea .topNews .topNewslist li:last-of-type {
  border: none;
}
.index #contentsArea .topNews .topNewslist li .newsLabel {
  width: 74px;
  margin-right: auto;
  padding: 7px 0;
  border-radius: 4px;
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1;
}
.index #contentsArea .topNews .topNewslist li .newsDate {
  width: 174px;
  font-size: 1.6rem;
}
.index #contentsArea .topNews .topNewslist li > div {
  width: calc(100% - 74px - 16px - 174px);
  margin-bottom: 20px;
}
.index .en #contentsArea .topNews .topNewslist li > div {
  margin: 0;
}
.index #contentsArea .topNews .topNewslist li > div a {
  font-size: 1.8rem;
  line-height: 1.5555;
}
.index #contentsArea .topNews .topNewslist li .newsCate {
  width: 100%;
  font-size: 1.6rem;
  text-align: right;
}
.index #contentsArea .topNews .topNewslist li .newsAnnotation {
  margin: 0 auto;
  font-size: 1.6rem;
}

.index #contentsArea .topLink {
  margin-bottom: 64px;
  padding: 40px 48px 48px;
  background: #F8F8F5;
  border-radius: 8px;
}
.index #contentsArea .topLink h2 {
  font-size: 3.2rem;
  line-height: 1;
  border: none;
  margin: 0 0 32px;
  padding: 0;
}
.index #contentsArea .topLink h2::after {
  content: none;
}
.index #contentsArea .topLink ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  width: calc(100% + 24px);
  list-style: none;
}
.index #contentsArea .topLink ul li {
  width: calc(33.3333% - 24px);
  margin: 0 24px 24px 0;
}
.index #contentsArea .topLink ul li:nth-of-type(n+4) {
  margin-bottom: 0;
}
.index #contentsArea .topLink ul li a {
  display: flex;
  align-items: center;
  padding-right: 16px;
  background: #fff;
  border: 1px solid #9D9D9D;
  border-radius: 8px;
  box-shadow: 0 0 6px rgba(0, 0, 0, .06);
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
  line-height: 1.4444;
}
.index .en #contentsArea .topLink ul li a {
  line-height: 1.1111;
}
.index #contentsArea .topLink ul li a:hover,
.index #contentsArea .topLink ul li a:focus {
  background: #004697;
  border-color: #004697;
  box-shadow: none;
  color: #fff;
}
.index #contentsArea .topLink ul li a img {
  width: 120px;
  margin-right: 24px;
  border-radius: 6.5px 0 0 6.5px;
  background: #fff;
}
.index #contentsArea .topLink ul li a .ico {
  background: none;
  width: 16px;
  height: 16px;
  margin: 0 0 0 6px;
  border-radius: 0;
}

.index #contentsArea .topSns {
  margin-top: 120px;
  padding: 40px 0;
  border-top: 4px solid #004697;
  text-align: center;
}
.index #contentsArea .topSns h2 {
  margin: 0 0 32px;
  padding: 0;
  border: none;
  font-size: 3.2rem;
  line-height: 1;
}
.index #contentsArea .topSns h2::before {
  content: none;
}
.index #contentsArea .topSns ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 0 8px;
  list-style: none;
}
.index #contentsArea .topSns ul li {
  margin: 0 24px 24px;
}
.index #contentsArea .topSns ul li a {
  display: flex;
  align-items: center;
  color: #333;
  font-size: 1.8rem;
  letter-spacing: 0;
  position: relative;
}
.index #contentsArea .topSns ul li a img {
  width: 48px;
  height: 48px;
}
.index #contentsArea .topSns ul li a span {
  margin: 0 0 0 16px;
}
.index #contentsArea .topSns > a {
  display: inline-block;
  font-size: 1.8rem;
}


/************************************************************************************
smaller than 1247 PC
*************************************************************************************/
@media screen and (max-width: 1247px) {

  .index #contentsArea {
    margin: 0px;
  }
  .index #contents {
    width: 100%;
    padding: 0 24px;
  }
  .index #contentsArea .topMainVisual {
    padding: 48px 0 32px;
  }
  .index #contentsArea .topMainVisual::before {
    top: 0;
    left: -24px;
  }

  .topMainVisual .urgentBlock,
  .topMainVisual .noticeBlock {
    margin-bottom: 32px;
  }
  .topMainVisual + .urgentBlock,
  .topMainVisual + .noticeBlock {
    margin-top: 48px;
  }

  .index #contentsArea .topMainVisual .topTopicPickup > div {
    width: calc(50% - 10px);
  }

  .index #contentsArea .topMinister {
    margin-bottom: 48px;
    padding: 48px 0;
  }
  .index #contentsArea .topMinister::before {
    left: -24px;
  }
  .index #contentsArea .topMinister ul li {
    width: calc(25% - 10px);
    margin: 0 10px 8px 0;
  }
  .index #contentsArea .topMinister ul li a {
    padding: 1.4vw 1.4vw 32px;
  }

  .index #contentsArea .topSpcontents {
    padding: 32px;
  }
  .index #contentsArea .topSpcontents .topSpcontentsImg {
    margin-right: 3%;
  }

  .index #contentsArea .topNews {
    margin-bottom: 48px;
    padding: 32px;
  }
  .index #contentsArea .topNews .selectLabel {
    padding-bottom: 8px;
  }
  .index #contentsArea .topNews .selectLabel #newsTab {
    flex-wrap: wrap;
  }
  .index #contentsArea .topNews .selectLabel button {
    width: calc(20% - (16px / 5));
    margin-bottom: 12px;
  }
  .selectLabel button::before {
    bottom: -8px;
  }

  .index #contentsArea .topLink {
    margin-bottom: 48px;
    padding: 32px;
  }
  .index #contentsArea .topLink ul {
    width: calc(100% + 16px);
  }
  .index #contentsArea .topLink ul li {
    width: calc(33.3333% - 16px);
    margin: 0 16px 16px 0;
  }
  .index #contentsArea .topLink ul li a {
    font-size: 1.6rem;
  }
  .index #contentsArea .topLink ul li a img {
    width: 9.6vw;
  }
}


/************************************************************************************
smaller than 960 TB
*************************************************************************************/
@media screen and (max-width: 960px) {

  .index #contentsArea .topMainVisual .topTopicPickup {
    flex-direction: column;
  }
  .index #contentsArea .topMainVisual .topTopicPickup > div {
    width: 100%;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topTopic {
    margin-bottom: 32px;
  }

  .index #contentsArea .topMinister ul {
    width: calc(100% + 10px);
  }
  .index #contentsArea .topMinister ul li {
    width: calc(33.3333% - 10px);
  }

  .index #contentsArea .topSpcontents {
    flex-direction: column-reverse;
    padding: 48px;
  }
  .index #contentsArea .topSpcontents .topSpcontentsImg {
    width: 100%;
    margin: 0 0 24px;
  }

  .index #contentsArea .topNews .topNewslist li {
    justify-content: flex-start;
  }
  .index #contentsArea .topNews .topNewslist li .newsLabel {
    margin: 0 24px 16px 0;
  }
  .index #contentsArea .topNews .topNewslist li > div {
    width: 100%;
  }

  .index #contentsArea .topLink ul li {
    width: calc(50% - 16px);
  }
  .index #contentsArea .topLink ul li a img {
    width: 11vw;
  }
}


/************************************************************************************
smaller than 640 SP
*************************************************************************************/
@media screen and (max-width: 640px) {

  .index #contents {
    width: 100%;
    padding: 0 8px;
  }
  .index #contentsArea .topMainVisual,
  .index .en #contentsArea .topMainVisual {
    padding: 24px 0;
  }
  .index #contentsArea .topMainVisual::before {
    top: 0;
    left: -8px;
    background-position-x: 75%;
  }

  .topMainVisual .urgentBlock,
  .topMainVisual .noticeBlock,
  .en .topMainVisual .urgentBlock,
  .en .topMainVisual .noticeBlock {
    margin: 0 0 24px;
  }
  .topMainVisual + .urgentBlock,
  .topMainVisual + .noticeBlock {
    margin-top: 24px;
  }

  .index #contentsArea .topMainVisual .topTopicPickup > div {
    padding: 24px 16px 16px;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topTopic,
  .index .en #contentsArea .topMainVisual .topTopicPickup .topTopic {
    margin-bottom: 24px;
  }
  .index .en #contentsArea .topMainVisual .topTopicPickup .topTopic + .topPickup {
    margin-bottom: 0;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topTopic .topTopicInner {
    padding: 16px 12px 0;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topTopic .topTopicInner ul li{
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li {
    min-height: 148px;
  }
  .index .en #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li {
    width: calc(50% - 8px);
    min-height: 142px;
    margin-bottom: 16px;
  }
  .index .en #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li:nth-of-type(n+3) {
    margin-bottom: 0;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a {
    padding: 90px 0 0;
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a img {
    width: 64px;
    height: 64px;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a span {
    font-size: 1.1rem;
    line-height: 1.8;
  }
  .index #contentsArea .topMainVisual .topTopicPickup .topPickup .topPickupInner ul li a br {
    display: block;
  }

  .index #contentsArea .topMinister {
    margin-bottom: 32px;
    padding: 40px 0;
  }
  .index #contentsArea .topMinister::before {
    left: -8px;
  }
  .index #contentsArea .topMinister > div {
    flex-direction: column;
    align-items: flex-start;
    margin: 0 0 24px 16px;
  }
  .index #contentsArea .topMinister > div h2 {
    margin: 0 0 12px;
    font-size: 2.8rem;
  }
  .index #contentsArea .topMinister ul {
    width: calc(100% + 6px);
  }
  .index #contentsArea .topMinister ul li {
    width: calc(50% - 6px);
    min-height: 237px;
    margin: 0 6px 4px 0;
  }
  .index #contentsArea .topMinister ul li a {
    padding: 10px 10px 16px;
  }
  .index #contentsArea .topMinister ul li a img:not(.ico) {
    margin-bottom: 12px;
  }
  .index #contentsArea .topMinister ul li a span {
    font-size: 1.2rem;
  }
  .index #contentsArea .topMinister ul li a p {
    font-size: 1.4rem;
  }


  .index #contentsArea .topSpcontentsWrap {
    margin: 64px 0 80px;
  }
  .index #contentsArea .topSpcontentsWrap > div {
    flex-direction: column;
    align-items: flex-start;
    margin: 0 0 24px 16px;
  }
  .index #contentsArea .topSpcontentsWrap > div h2 {
    margin: 0 0 12px;
    font-size: 2.8rem;
  }

  .index #contentsArea .topSpcontents {
    padding: 16px;
    margin: 0 0 32px;
  }
  .index #contentsArea .topSpcontents .topSpcontentsTxt h3 {
    font-size: 1.8rem;
    margin: 0 0 16px;
  }
  .index #contentsArea .topSpcontents .topSpcontentsTxt p {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .index #contentsArea .topSpcontents .topSpcontentsImg {
    margin: 0 0 20px;
  }

  .index #contentsArea .topNews,
  .index .en #contentsArea .topNews {
    margin: 0 0 32px;
    padding: 0;
  }
  .index #contentsArea .topNews .topNewsH {
    flex-direction: column;
    align-items: flex-start;
    margin: 24px 16px;
  }
  .index .en #contentsArea .topNews .topNewsH {
    margin-bottom: 0;
  }
  .index #contentsArea .topNews .topNewsH h2 {
    margin-bottom: 16px;
    font-size: 2.8rem;
  }

  .index #contentsArea .topNews .selectLabel {
    padding: 16px 16px 4px;
    margin: 0 0 8px;
    border-left: none;
    border-right: none;
    border-radius: 0;
  }
  .index #contentsArea .topNews .selectLabel #newsTab {
    flex-wrap: wrap;
  }
  .index #contentsArea .topNews .selectLabel button {
    width: calc(33.3333% - (12px / 3));
    margin: 0 0 6px;
    font-size: 1.6rem;
  }
  .index #contentsArea .topNews .selectLabel button:first-of-type {
    width: 100%;
  }
  .selectLabel button::before {
    bottom: -5px;
  }
  .selectLabel button:hover::before,
  .selectLabel button[aria-selected="true"]::before {
    height: 2px;
  }
  .index #contentsArea .topNews .topNewslist,
  .index .en #contentsArea .topNews .topNewslist {
    border: none;
  }
  .index #contentsArea .topNews .topNewslist li {
    padding: 16px;
  }
  .index #contentsArea .topNews .topNewslist li .newsLabel {
    margin: 0 12px 12px 0;
  }
  .index #contentsArea .topNews .topNewslist li > div {
    margin: 0 0 8px;
  }
  .index #contentsArea .topNews .topNewslist li > div a {
    font-size: 1.6rem;
    line-height: 1.625;
  }
  .index #contentsArea .topNews .topNewslist li .newsAnnotation {
    font-size: 1.4rem;
  }

  .index #contentsArea .topLink {
    margin: 0 0 32px;
    padding: 32px 16px 16px;
  }
  .index #contentsArea .topLink h2 {
    margin: 0 0 16px;
    font-size: 2.8rem;
  }
  .index #contentsArea .topLink h2 {
    font-size: 2.4rem;
  }
  .index #contentsArea .topLink ul {
    flex-direction: column;
    width: 100%;
  }
  .index #contentsArea .topLink ul li {
    width: 100%;
    margin: 0 0 16px;
  }
  .index #contentsArea .topLink ul li:nth-of-type(n+4) {
    margin: 0 0 16px;
  }
  .index #contentsArea .topLink ul li a {
    font-size: 1.6rem;
  }
  .index #contentsArea .topLink ul li a img {
    width: 88px;
  }

  .index #contentsArea .topSns {
    padding: 16px 0;
  }
  .index #contentsArea .topSns h2 {
    margin: 0 0 16px;
    font-size: 1.8rem;
  }
  .index #contentsArea .topSns ul li {
    margin: 0 12px 12px;
  }
  .index #contentsArea .topSns ul li a {
    display: block;
    margin: 0;
    font-size: 1.4rem;
  }
  .index #contentsArea .topSns ul li a img {
    display: block;
    width: 44px;
    height: 44px;
  }
  .index #contentsArea .topSns ul li a span {
    display: none;
  }
  .index #contentsArea .topSns > a {
    font-size: 1.6rem;
  }

  a.bulletLinkG {
    font-size: 1.8rem;
  }
}
