@charset "utf-8";

/*=============== ▼HEADER ===============*/

.l-header {
  height: 15.645vw;
}

.l-header.is-header-scroll-active {
  height: 15.645vw;
}

.l-header--logo {
  padding: 0 0 0 3.911vw;
}

.l-header--logo img {
  width: 48.24vw;
  height: auto;
  margin: 0;
}

.body.is-drawerActive .drawer-white-cover {
  top: 15.645vw;
}


.l-header--nav-cnt {
  top: 15.645vw;
  width: 89.961vw;
}

.body.is-drawerActive .l-header--nav-cnt {
  /*padding: 10.43vw 0 26.076vw 0;*/
  padding: 6vw 0 26.076vw 0;
}

.l-header--nav {
  max-width: 82.138vw;
}

.l-header--nav-list.flex .l-header--nav-list-item,
.l-header--nav-list.flex .l-header--nav-list-item.qa-margin {
  margin: 7.823vw 0 0 0;
}

.l-header--nav-list-item.is-active {
  background-color: #008b56;
}

.l-header--nav-link {
  /*padding: 4.172vw 40px 4.172vw 10px;*/
  padding: 4.172vw 10px 4.172vw 10px;
}

.l-header--nav-list-item:not(:nth-child(1)) .l-header--nav-link {
  /*padding: 4.172vw 0 4.172vw 10px;*/
  padding: 4.172vw 10px 4.172vw 10px;
  height: 100%;
}

.l-header--nav-link::before,
.l-header--nav-link::after {
  width: 3.911vw;
  height: 0.261vw;
}

.l-header--nav__child {
  padding: 0 3.911vw;
  opacity: 0;
}

.l-header--nav__child.is-nav-active {
  margin: 0 0 6.258vw 0;
  width: 82.138vw;
  opacity: 1;
}

.l-header--nav-link__child {
  padding: 6.258vw 0;
  font-size: 1.4rem;
}

.l-header--nav-list-item__child::after {
  width: 1.825vw;
  height: 1.825vw;
  border-top: 0.522vw solid #008b56;
  border-right: 0.522vw solid #008b56;
}

.l-header--nav-text {
  margin: 0 0 0 2.608vw;
  font-size: 1.6rem;
}

.l-header--nav-list.flex .l-header--nav-text {
  margin: 0 0 0 0.522vw;
  font-size: 1.4rem;
}

.l-header--lang-cnt {
  margin: 0 0 30px 10px;
}

.l-header--lang__jp,
.l-header--lang__en {
  padding: 0 6.258vw;
  font-size: 1.6rem;
  text-transform: uppercase;
}

.l-header__drawer {
  padding: 0 3.911vw 0 0;
}

.p-hamburger {
  width: 6.258vw;
  height: 6.258vw;
}

.p-hamburger__line {
  width: 5.215vw;
  height: 0.261vw;
}

/*=============== ▼FOOTER ===============*/

.l-footer {
  margin: 20px 0 0 0;
}

.l-footer__nav {
  flex-direction: column;
  padding: 0 0 0 0;
  width: 100%;
  max-width: 100vw;
}

.l-footer__nav-cnt {
  margin: 0 0 0 0;
  border-bottom: 1px solid #d9e7e5;
}

.l-footer__heading {
  position: relative;
  padding: 5.215vw 3.911vw;
  font-size: 1.6rem;
  font-weight: normal;
}

.l-footer__heading::before,
.l-footer__heading::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 5%;
  width: 3.911vw;
  height: 0.261vw;
  background-color: #008b56;
  transform: translateY(-50%);
}

.l-footer__heading::after {
  transform: translateY(-50%) rotate(90deg);
}

.l-footer__heading.is-nav-active::after {
  content: normal;
}

.l-footer__nav-list {
  margin: 0 auto;
  width: 90%;
  max-height: 0;
  overflow: hidden;
  transition: all 0.5s ease;
}

.l-footer__nav-list.is-nav-active {
  max-height: 500px;
  transition: max-height 0.5s ease;
}

.l-footer__nav-list-item {
  padding: 0 0 0 4.433vw;
}

/*.l-footer__nav-cnt:first-child .l-footer__nav-list-item:first-child {
  padding: 0 0 0 0;
}*/

.l-footer__nav-list-item:not(:first-child) {
  margin: 0 0 0 0;
  border-top: 1px solid #d9e7e5;
}

.l-footer__nav-list-link {
  display: block;
  font-size: 1.4rem;
}

.l-footer__nav-list-link::after {
  display: none;
}

.l-footer__nav-list-item:not(:first-child) .l-footer__nav-list-link {
  padding: 4.694vw 0;
}

.l-footer__nav-list-item:first-child .l-footer__nav-list-link {
  padding: 0 0 4.694vw 0;
}

.l-footer__address {
  margin: 9.126vw auto 0 auto;
  padding: 0 0 9.126vw 0;
  width: 100%;
  max-width: 80.834vw;
  font-size: 1.2rem;
  border: none;
}

.l-footer__link {
  flex-direction: column;
  align-items: center;
}

.l-footer__address-list--right {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.l-footer__link-list-item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 26.076vw;
  height: 26.076vw;
  background-color: #fff;
  border: 1px solid #d9e7e5;
  border-radius: 3px;
}

.l-footer__link-list-item:nth-child(3) {
  margin: 0 0 0 0;
}

.l-footer__link-list-item:nth-child(1) .p-footer__img {
  width: 15.645vw;
  height: auto;
}

.l-footer__link-list-item:nth-child(2) .p-footer__img {
  width: 11.213vw;
  height: auto;
}

.l-footer__link-list-item:nth-child(3) .p-footer__img {
  width: 9.518vw;
  height: auto;
  margin: 0 0 -12px 0;
}

.l-footer__link-list-text {
  margin: 3.129vw 0 0 0;
  color: #008b56;
}

.l-footer__address-list-item.sp {
  display: none;
}

.l-footer__content {
  flex-direction: column;
  margin: 6.519vw 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  max-width: 100vw;
}

.l-footer__site-map-list {
  flex-wrap: wrap;
}

.l-footer__site-map-list-item {
  width: calc(50% + 1px);
  margin-left: -1px;
  margin-bottom: -1px;
  border: 1px solid #d9e7e5;
  text-align: center;
}

.l-footer__site-map-list-item:not(:last-child)::after {
  display: none;
}

.l-footer__site-map-list-link {
  display: block;
  padding: 4.172vw 0;
  font-size: 1.1rem;
}

.l-footer__site-map-list-item:first-child .l-footer__site-map-list-link {
  padding: 4.172vw 0 0 0;
}

.l-footer__copy {
  margin: 6.258vw 0 0 0;
  font-size: 1rem;
  text-align: center;
}

.l-footer__content--cnt.flex {
  display: flex;
  justify-content: center;
  margin: 9.909vw 0 26vw 0;
}

.l-footer__logo {
  width: 56.063vw;
  height: auto;
}

/*=============== ▼ARROW-BTN ===============*/

.arrow-btn {
  position: relative;
  right: auto;
  bottom: auto;
  background-color: transparent;
}

.arrow-white {
  position: relative;
  left: 50%;
  margin: -4.5vw 0 0 0px;
  width: 9.126vw;
  height: 9.126vw;
  background-color: #008b56;
  border-radius: 50%;
  transform: translateX(-50%);
}

/*=============== ▼RESEARCH-REPORT-ASIDE-NAV ===============*/

.p-research-report__aside-nav {
  width: 100%;
}

.p-research-report__aside-nav-list-item {
  width: 100%;
}


.p-research-report__aside-nav-text {
  width: 305px;
  margin: 0 auto;
  font-size: 1.6rem;
  text-align: left;
}

.p-research-report__aside-nav-link-text {
  width: 305px;
  margin: 0 0 0 10px;
  font-size: 1.6rem;
}

.p-research__aside-nav-link-text.p-padding {
  padding: 0 0 0 6px;
}

.p-research-report__aside-nav-link {
  width: 285px;
}

.p-research-report-img {
  padding-top: 11px;
}

/*=============== ▼RESEARCH-ASIDE-NAV ===============*/

.p-research__content-right {
  width: auto;
  margin: 0 auto;
}

.p-research__aside-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  margin: 0;
  width: 100%;
}

.p-research__aside-nav-list {
  flex-direction: row;
  padding: 0;
  background-color: transparent;
}

.p-research__aside-nav-list-item {
  width: calc(100% / 4);
}

.btn-frame {
  padding:0;
  margin: 0;
  background:none;
}

.p-research__aside-nav-list-item.p-margin {
  margin: 0;
  padding:0;
}

.p-research__aside-nav-list-item + .p-research__aside-nav-list-item {
  border-left: 1px solid #ddd;
}


.p-research__aside-nav-list-item:nth-child(n + 3) {
  margin: 0;
}

.p-research__aside-nav-link {
  flex-direction: column;
  padding: 7px 0;
  width: auto;
  border-radius: 0px;
}

.p-bg-blue {
  box-shadow: none;
}

.p-bg-green {
  box-shadow: none;
}




.p-research__aside-nav-link-text {
  margin: 0;
  font-size: 1.2rem;
  text-align: center;
}


.database {padding:0; margin-bottom:0;}
.p-database {padding: 6px 0;}

.p-database .application {
  width: auto;
  height: 30px;
}

.p-database .p-research__aside-nav-link-text {
  font-size: 1.2rem;
  color: #008b56;
  margin: 0;
  }



/* X Icon */
.x-icon {
  right: 1.5rem;
  bottom: 3rem;}

.x-icon a {
  width: 40px;
  height: 40px;}

.x-icon a img {
  width: 1.8rem;
  height: auto;}

.x-icon a.hover {opacity: 0.75;}

