.accordion_cont {
  height: 0;
  overflow: hidden;
}

.accordion_cont.open {
  height: auto;
}

.accordionBtn>div {
  position: relative;
}

.accordionBtn>div:after {
  content: "＋";
  display: block;
  font-weight: 700;
  cursor: pointer;
  margin-left: auto;
}

.accordionBtn.active>div:after {
  content: "－";
}


footer .accordionBtn.active {
  background-color: rgb(8 0 89/var(--tw-bg-opacity));
}

footer .accordionBtn.active p.cursor-pointer {
  color: rgb(255 255 255/var(--tw-text-opacity));
}

footer .accordionBtn.active>div:after {
  color: rgb(255 255 255/var(--tw-text-opacity));
}

footer .accordionBtn.active.sub {
  background-color: rgb(229 228 244/var(--tw-bg-opacity));
}

footer .accordionBtn.active.sub p.cursor-pointer {
  color: rgb(8 0 89/var(--tw-text-opacity));
}

footer .accordionBtn.active.sub>div:after {
  color: rgb(8 0 89/var(--tw-text-opacity));
}

.tab__menu-item {
  --tw-bg-opacity: 1;
  background-color: rgb(247 248 251 / var(--tw-bg-opacity));
}

.tab__menu-item.is-active {
  --tw-bg-opacity: 1;
  background-color: rgb(8 0 89 / var(--tw-bg-opacity));
  color: #fff;
}

.tab__panel-box {
  display: none;
}

.tab__panel-box.is-show {
  display: block;
  z-index: 99;
}


.headerTab__menu-item {}

.headerTab__menu-item.is-active {}

.headerTab__panel-box {
  display: none;
  transition-duration: .3s;
}

.headerTab__panel-box.is-show {
  display: block;
  z-index: 100;
}

.headerTab__panel-box {
  z-index: 100;
}

header nav ol .items-center a.header_link {
  display: block;
  width: 100%;
}

.anchor {
  display: block;
}

.anchor span {
  display: inline-block;
}

#sp_menuCont {
  opacity: 0;
  display: none;
  transition: .3s;
}

#sp_menuCont.open {
  opacity: 100;
  display: block;
}

#sp_menuCont .accordionBtn.active {
  --tw-bg-opacity: 1;
  background-color: rgb(8 0 89 / var(--tw-bg-opacity));
  color: #fff;
}

#sp_menuBtn.close span:nth-child(1) {
  transform: rotate(-45deg);
  top: 50%;
}

#sp_menuBtn.close span:nth-child(2) {
  display: none;
}

#sp_menuBtn.close span:nth-child(3) {
  transform: rotate(45deg);
  top: 50%;
}

/* sidebar */
.category-news #aside-nav-ol li:nth-child(2),
.category-corporate #aside-nav-ol li:nth-child(3),
.category-product #aside-nav-ol li:nth-child(4),
.category-event #aside-nav-ol li:nth-child(5),
.page-id-491 #aside-nav-ol>li:nth-of-type(2),
.page-id-470 #aside-nav-ol>li:nth-of-type(3),
.page-id-60 #aside-nav-ol>li:nth-of-type(4),
.page-id-476 #aside-nav-ol>li:nth-of-type(5),
.page-id-150 #aside-nav-ol>li.bg,
.page-id-209 #aside-nav-ol li:nth-child(2),
.page-id-213 #aside-nav-ol li:nth-child(3),
.page-id-93 #aside-nav-ol li:nth-child(2),
.parent-pageid-93 #aside-nav-ol li:nth-child(2),
.parent-pageid-80 #aside-nav-ol li:nth-child(3) {
  --tw-bg-opacity: 1;
  background-color: rgb(229 228 244/var(--tw-bg-opacity));
}

a.td_u {
  text-decoration: underline;
}

.top-label-wrap .top-label img {
  display: block;
  width: 60%;
  max-width: 640px;
  margin: 0 auto .25rem;
}

.top-label-wrap.bg-blue {
  background: #0b015b;
}

.page .top-label-wrap .top-label img {
  width: 100%;
}

.top-inspection {
  flex-wrap: wrap;
}

span.fs_large {
  font-size: 26px;
  font-weight: bold;
  line-height: 1.3;
}

span.large_num,
span.large_text {
  font-size: 50px;
}

span.note {
  font-size: .9em;
  font-weight: bold;
  padding-left: 1em;
}

.ta_c {
  text-align: center;
}


.purpose div.flex {
  width: 50%;
  overflow: hidden;
  text-align: center;
}

.purpose div.flex img {
  display: block;
  width: 100%;
  height: 250px;
  object-fit: cover;
}

.heading-blue {
  background: #080059;
  color: #fff;
  padding: 1em;
}

.heading-blue .fs_s {
  font-size: 18px;
  line-height: 1;
}

@media (max-width: 1023px) {
  .ins-txt {
    order: 1;
  }

  .ins-btn {
    order: 2;
  }

  .ins-img {
    order: 3;
  }

  .top-label-wrap .top-label img {
    width: 100%;
  }

  span.large_text {
    font-size: 40px;
  }


  .purpose div.flex img {
    height: 200px;
  }

}
