@charset "utf-8";

/* ↓↓↓ #contents ↓↓↓ */
.contents-box {
  margin: 0 calc(50% - 50vw);
  padding: 0 20px 80px 20px;
  background-color: #ececec;
}

@media screen and (max-width: 750px) {
  .contents-box {
    padding: 0 10px;
  }
}

.contents-box .box-wrap {
  padding: 0 20px;
}

@media screen and (max-width: 750px) {
  .contents-box .box-wrap {
    padding: 0;
  }
}

.contents-box .inner {
  max-width: 1040px;
  margin: 0 auto;
  padding: 80px 45px 70px 45px;
  background-color: #fff;
}

@media screen and (max-width: 750px) {
  .contents-box .inner {
    padding: 60px 0 35px 0;
    background-color: transparent;
  }
}

/* ↑↑↑ #contents ↑↑↑ */

/* ↓↓↓ #index ↓↓↓ */

#index.contents-box {
  position: relative;
  background-color: unset;
  background: url(../img/index-bg.svg);
}

@media screen and (max-width: 840px) {
  #index.contents-box .box-wrap {
    padding: 0;
  }
}

#index.index-mobile .box-wrap {
  padding: 0;
}

#index.contents-box .overlay {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, .8);
  display: none;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  z-index: 1;
}

#index.contents-box .inner {
  background-color: unset;
  max-width: 974px;
  margin: 0 auto;
}

/* @media screen and (max-width: 1049px) {
  #index.contents-box .inner {
    width: 100%;
  }
} */

#index.contents-box .inner .pagetitle {
  margin-bottom: 25px;
}

@media screen and (max-width: 840px) {
  #index.contents-box .inner .pagetitle {
    margin-bottom: 40px;
  }
}

#index.index-mobile .inner .pagetitle {
  margin-bottom: 40px;
}

#index.contents-box .inner .-wb {
  display: inline-block;
}

#index.contents-box .inner .lead-txt {
  font-size: 1.8rem;
  font-weight: bold;
  color: #008803;
  margin-bottom: 100px;
}

#index .main-visual {
  width: 100vw;
  height: 200px;
  margin: 0 calc(50% - 50vw);
  /* background: url(../img/main-visual.jpg) no-repeat; */
  background-color: #fff;
  background-position: center bottom;
  background-size: cover;
  overflow: hidden;
  position: relative;
}

@media screen and (max-width: 750px) {
  #index .main-visual {
    /* width: calc(100vw - 10px); */
    margin: 0 calc(50% - 50vw);
    padding: 0 0 0 10px;
    height: 120px;
  }
}

#index .main-visual #youtube-wrap,
#index .main-visual video {
  width: 100%;
  height: 100%;
  padding-bottom: 56.25%;
  /* object-fit: cover; */
  /* object-position: center center; */
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 750px) {

  #index .main-visual #youtube-wrap,
  #index .main-visual video {
    height: 100%;
    /* padding-bottom: 0; */
  }
}

#index .main-visual #youtube-wrap #wrapper_youtube {
  top: -17% !important;
}

#index .main-visual .title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 913px;
  z-index: 2;
}

#index .title-group {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  #index .title-group {
    flex-direction: column;
  }
}

#index .title-group .title {
  width: 45.58%;
}

@media screen and (max-width: 750px) {
  #index .title-group .title {
    width: 100%;
    max-width: 380px;
  }
}

#index .title-group .icon-box {
  width: 38.737%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: flex-start;
  display: none;
}

@media screen and (max-width: 750px) {
  #index .title-group .icon-box {
    margin-top: 35px;
    width: 100%;
  }
}

#index .title-group .icon-box li {
  width: 32.609%;
  height: 24px;
  margin-bottom: 1.09%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /* cursor: pointer; */
}

@media screen and (max-width: 750px) {
  #index .title-group .icon-box li {
    width: 31.5%;
    height: 40px;
    margin-bottom: 2.2%;
  }
}

.-underlayer .pager-group .inner .cat-own .-tech+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .title.-tech,
#future.-underlayer .caption::before,
.-underlayer .submenu .list .title.-tech,
.-underlayer .pager-group .inner .cat-other .list a.-tech,
/* #takawa.-underlayer .submenu .linkmenu-list li p span.-color,
#initiatives.-underlayer .submenu .linkmenu-list li p span.-color,
#future.-underlayer .submenu .linkmenu-list li p span.-color, */
#index .link-group .link-item .cap-group.-tech span,
#index .link-group .link-item .cap-group.-tech h2,
#index .title-group .icon-box li.tech {
  background-color: #00522a;
}

#index .title-group .icon-box li.tech img {
  width: 75%;
}

.-underlayer .submenu .list .title.-proj,
.-underlayer .pager-group .inner .cat-other .list a.-proj,
.-underlayer .pager-group .inner .cat-own .title.-proj,
/* #mobility.-underlayer .submenu .linkmenu-list li p span.-color,
#next10.-underlayer .submenu .linkmenu-list li p span.-color,
#atacs.-underlayer .submenu .linkmenu-list li p span.-color, */
.-underlayer .pager-group .inner .cat-own .-proj+.list li p span.-color,
#index .link-group .link-item .cap-group.-proj span,
#index .link-group .link-item .cap-group.-proj h2,
#index .title-group .icon-box li.proj {
  background-color: #00387a;
}

#index .title-group .icon-box li.proj img {
  width: 50%;
}

#challenge.-underlayer .interview-group .profile,
.-underlayer .pager-group .inner .cat-own .title.-chal,
#challenge.-underlayer .caption::before,
.-underlayer .submenu .list .title.-chal,
.-underlayer .pager-group .inner .cat-other .list a.-chal,
.-underlayer .submenu .-chal+.linkmenu-list li p span.-color,
.-underlayer .pager-group .inner .cat-own .-chal+.list li p span.-color,
#index .link-group .link-item .cap-group.-chal span,
#index .link-group .link-item .cap-group.-chal h2,
#index .title-group .icon-box li.chal {
  background-color: #856021;
}

#index .title-group .icon-box li.chal img {
  width: 66.667%;
}

.-underlayer .pager-group .inner .cat-own .-womn+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .title.-womn,
#woman.-underlayer .caption::before,
.-underlayer .submenu .list .title.-womn,
.-underlayer .pager-group .inner .cat-other .list a.-womn,
.-underlayer .submenu .-womn+.linkmenu-list li p span.-color,
#index .link-group .link-item .cap-group.-womn span,
#index .link-group .link-item .cap-group.-womn h2,
#index .title-group .icon-box li.womn {
  background-color: #a54489;
}

#index .title-group .icon-box li.womn img {
  width: 42.5%;
}

#global.-underlayer .caption::before,
.-underlayer .pager-group .inner .cat-own .-glob+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .title.-glob,
#global.-underlayer .interview-group .profile,
.-underlayer .submenu .list .title.-glob,
.-underlayer .pager-group .inner .cat-other .list a.-glob,
.-underlayer .submenu .-glob+.linkmenu-list li p span.-color,
#index .link-group .link-item .cap-group.-glob span,
#index .link-group .link-item .cap-group.-glob h2,
#index .title-group .icon-box li.glob {
  background-color: #891500;
}

#index .title-group .icon-box li.glob img {
  width: 45%;
}

#index .link-group .link-item .cap-group.-all span,
#index .link-group .link-item .cap-group.-all h2,
#index .title-group .icon-box li.all {
  background-color: #4c4c4c;
}

#index .title-group .icon-box li.all img {
  width: 20.84%;
}

.-underlayer .submenu .-transport+.linkmenu-list li p span.-color,
.-underlayer .submenu .list .title.-transport,
#initiatives.-underlayer .caption::before,
#atacs.-underlayer .interview-group .profile,
#atacs.-underlayer .caption::before,
#future.-underlayer.-transport .caption::before,
#transport.-underlayer .caption::before{
  background-color: #7AC843;
}

.-underlayer .submenu .-it+.linkmenu-list li p span.-color,
.-underlayer .submenu .list .title.-it,
#mobility.-underlayer .interview-group .profile,
#mobility.-underlayer .caption::before,
#future.-underlayer.-it .caption::before,
#it.-underlayer .caption::before{
  background-color: #147DA0;
}
.-underlayer .submenu .-life+.linkmenu-list li p span.-color,
.-underlayer .submenu .list .title.-life,
#next10.-underlayer .interview-group .profile,
#next10.-underlayer .caption::before,
#takawa.-underlayer .caption::before,
#life.-underlayer .caption::before{
  background-color: #FF921E;
}

#index .mapblock {
  font-family: 'Noto Sans JP',Hiragino Sans;
  position: relative;
}

#index .map-img img {
  width: 100%;
}

#index .mapblock .sp-tab-link {
  content: '';
  position: absolute;
  padding-top: 7.715%;
  display: none;
  cursor: pointer;
}

@media screen and (max-width: 840px) {
  #index .mapblock .sp-tab-link {
    display: block;
    transition: background-color ease .3s;
  }

  #index .mapblock .sp-tab-link:hover {
    background-color: rgba(255, 255, 255, .3);
  }
}

#index.index-mobile .mapblock .sp-tab-link {
  display: block;
  transition: background-color ease .3s;
}

#index.index-mobile .mapblock .sp-tab-link:hover {
  background-color: rgba(255, 255, 255, .3);
}

#index .mapblock .sp-tab-link:nth-of-type(1) {
  width: 30.855%;
  top: 9.95%;
  left: 14.195%;
}

#index .mapblock .sp-tab-link:nth-of-type(2) {
  width: 41.655%;
  top: 12.307%;
  left: 48.44%;
}

#index .mapblock .sp-tab-link:nth-of-type(3) {
  width: 30.24%;
  bottom: 7.855%;
  left: 40.726%;
}

#index .mapblock .sp-tab-link:nth-of-type(4) {
  width: 33.015%;
  top: -1px;
  left: 35.484%;
}

#index .mapblock .sp-tab-link:nth-of-type(5) {
  width: 33.94%;
  bottom: 11.52%;
  left: 1px;
}

#index .mapblock .sp-tab-link:nth-of-type(6) {
  width: 20.98%;
  bottom: 0;
  left: 75.28%;
}

#index .mapblock .service {
  position: absolute;
  width: fit-content;
  filter: drop-shadow(0px 0 6px rgba(255,255,255));
  z-index: 0;
}

#index .mapblock .service-cat {
  position: absolute;
  width: fit-content;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  z-index: 0;
}

#index .mapblock .service-cat {
  animation: scaleAnime 1.5s ease-in-out infinite alternate-reverse;
}

#index .mapblock .service:hover {
  animation: upDownAnime 1s ease-in-out infinite alternate-reverse;
}

#index .mapblock .service.-hoverAnimeSide:hover {
  animation: leftRightnAnime 1s ease-in-out infinite alternate-reverse;
}

@keyframes scaleAnime {
  0%{
    transform: scale(0.9,0.9);
  }
  100%{
    transform: scale(1,1);
  }
}

@keyframes upDownAnime {
  0%{
    transform: translateY(-8%);
  }
  100%{
    transform: translateY(8%);
  }
}

@keyframes leftRightnAnime {
  0%{
    transform: translateX(-3%);
  }
  100%{
    transform: translateX(3%);
  }
}

#index .mapblock .service-cat:hover {
  animation-play-state: paused;
}

#index .mapblock .service a:hover,
#index .mapblock .service-cat a:hover {
  text-decoration: unset;
}

@media screen and (max-width: 840px) {
  #index .mapblock .service,
  #index .mapblock .service-cat {
    display: none;
  }
}

#index.index-mobile .mapblock .service,
#index.index-mobile .mapblock .service-cat {
  display: none;
}

#index .mapblock .service.active,
#index .mapblock .service-cat.active {
  z-index: 2;
}

#index .mapblock .service:nth-of-type(1) {
  top: 18.505%;
  left: 14.028%;
}

#index .mapblock .service:nth-of-type(2) {
  top: 13.578%;
  left: 6.562%;
}

#index .mapblock .service:nth-of-type(3) {
  top: 28.597%;
  left: 18.78%;
}

#index .mapblock .service:nth-of-type(4) {
  bottom: 37.489%;
  left: 48.417%;
}

#index .mapblock .service:nth-of-type(5) {
  bottom: 44.457%;
  left: 21.494%;
}

#index .mapblock .service:nth-of-type(6) {
  top: 24.032%;
  right: 10.341%;
}

#index .mapblock .service:nth-of-type(7) {
  top: 26.676%;
  right: 20.112%;
}

#index .mapblock .service:nth-of-type(8) {
  top: 36.408%;
  right: 5.77%;
}

#index .mapblock .service:nth-of-type(9) {
  top: 35.566%;
  left: 33.033%;
}

#index .mapblock .service:nth-of-type(10) {
  top: 35.566%;
  right: 33.033%;
}

#index .mapblock .service:nth-of-type(11) {
  bottom: 34.845%;
  right: 8.712%;
}

#index .mapblock .service-cat.transport {
  top: 0;
  left: 14.933%;
}

#index .mapblock .service-cat.it {
  top: 2.403%;
  left: 52.037%;
}

#index .mapblock .service-cat.life {
  bottom: 0;
  left: 41.856%;
}

#index .mapblock .service-cat .cat-txt {
  font-size: clamp(2.4rem,35/1280*100vw,3.5rem);
  font-weight: 400;
  color: #fff;
  text-align: end;
  line-height: 1;
}

#index .mapblock .service .dots {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border: 1px solid #018802;
  background-color: rgba(255, 255, 255, .5);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(255, 255, 255, .5);
  transition: opacity ease .3s;
}

#index .mapblock .service-cat .dots {
  content: '';
  position: absolute;
  width: 40px;
  height: 70.2%;
  background-color: #fff;
  border-radius: 50%;
  transition: opacity ease .3s;
  top: 9px;
  left: 10px;
}

#index .mapblock .service-cat.transport .dots {
  width: 14.185%;
  border: 1px solid #4B9C00;
}

#index .mapblock .service-cat.it .dots {
  width: 10.585%;
  border: 1px solid #005798;
}

#index .mapblock .service-cat.life .dots {
  width: 14.39%;
  border: 1px solid #cb741a;
}

#index .mapblock .service .dots::before {
  content: '';
  position: absolute;
  width: 150%;
  height: 150%;
  border: 1px solid rgba(1, 136, 2, .5);
  border-radius: 50%;
  box-sizing: border-box;
  top: -25%;
  left: -25%;
  animation: 1.5s linear 0s normal none infinite focuse;
}

#index .mapblock .service-cat .dots::before {
  content: '';
  position: absolute;
  width: 150%;
  height: 150%;
  border-radius: 50%;
  box-sizing: border-box;
  top: -25%;
  left: -25%;
}

#index .mapblock .service .dots:hover::before,
#index .mapblock .service.active .dots::before {
  animation-play-state: paused;
}

@keyframes focuse {
  0% {
    transform: scale(0.8);
    opacity: 1;
  }

  75% {
    transform: scale(1.2);
    opacity: 0;
  }

  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}

#index .mapblock .service:not(.active) .dots:hover {
  opacity: .7;
}

#index .mapblock .service .dots .dots-core {
  content: '';
  position: absolute;
  width: 34.5%;
  height: 34.5%;
  background-color: #018802;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}

#index .mapblock .service-cat .dots .dots-core {
  content: '';
  position: absolute;
  width: 34.5%;
  height: 34.5%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}

#index .mapblock .service-cat.transport .dots .dots-core {
  background-color: #4B9C00;
}

#index .mapblock .service-cat.it .dots .dots-core {
  background-color: #005798;
}

#index .mapblock .service-cat.life .dots .dots-core {
  background-color: #cb741a;
}

/* #index .mapblock .service .linkbox,
#index .mapblock .service-cat .linkbox {
  width: calc(((329 + 102) - (260 + 74)) * ((100vw - 750px) / (1280 - 750)) + (260px + 74px));
  z-index: 1;
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service .linkbox,
  #index .mapblock .service-cat .linkbox {
    width: calc(329px + 102px);
  }
} */

#index .mapblock .service .linkbox.-right {
  transform: translate(0, -50%);
  top: 50%;
  left: 0;
}

#index .mapblock .service .linkbox.-left {
  transform: translate(0, -50%);
  top: 50%;
  right: 0;
}

#index .mapblock .service .linkbox.-top {
  transform: translate(-50%, 0);
  bottom: 0;
  left: 50%;
}

#index .mapblock .service .linkbox.-bottom {
  transform: translate(-50%, 0);
  top: 0;
  left: 50%;
}

#index .mapblock .service:nth-of-type(2) .linkbox {
  width: 363px;
}

#index .mapblock .service:nth-of-type(4) .linkbox {
  width: calc(((329 + 102) - (260 + 74)) * ((100vw - 750px) / (1280 - 750)) + (260px + 74px));
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service:nth-of-type(4) .linkbox {
    width: calc(329px + 102px);
  }
}

#index .mapblock .service:nth-of-type(5) .linkbox {
  width: 333px;
}

#index .mapblock .service:nth-of-type(6) .linkbox {
  width: calc((329 - 275) * ((100vw - 750px) / (1280 - 750)) + 275px);
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service:nth-of-type(6) .linkbox {
    width: 329px;
  }
}

#index .mapblock .service:nth-of-type(7) .linkbox {
  width: calc(((407 + 102) - (385 + 74)) * ((100vw - 750px) / (1280 - 750)) + (385px + 74px));
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service:nth-of-type(7) .linkbox {
    width: calc(407px + 102px);
  }
}

#index .mapblock .service:nth-of-type(8) .linkbox {
  width: calc(((299 + 102) - (299 + 74)) * ((100vw - 750px) / (1280 - 750)) + (299px + 74px));
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service:nth-of-type(8) .linkbox {
    width: (299px + 102px);
  }
}

#index .mapblock .service:nth-of-type(9) .linkbox {
  width: calc(((329 + 102) - (260 + 74)) * ((100vw - 750px) / (1280 - 750)) + (260px + 74px));
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service:nth-of-type(9) .linkbox {
    width: calc(329px + 102px);
  }
}

#index .mapblock .service:nth-of-type(10) .linkbox {
  width: calc(((293 + 102) - (260 + 74)) * ((100vw - 750px) / (1280 - 750)) + (260px + 74px));
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service:nth-of-type(10) .linkbox {
    width: calc(293px + 102px);
  }
}

#index .mapblock .service:nth-of-type(11) .linkbox {
  width: 263px;
}

/* #index .mapblock .service-cat.transport .linkbox,
#index .mapblock .service-cat.life .linkbox {
  width: calc((414 - 320) * ((100vw - 840px) / (1280 - 840)) + 320px);
  left: 0;
  padding-left: 30.145%;
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service-cat.transport .linkbox,
  #index .mapblock .service-cat.life .linkbox {
    width: 414px;
  }
}

#index .mapblock .service-cat.it .linkbox {
  width: calc((509 - 380) * ((100vw - 840px) / (1280 - 840)) + 380px);
  left: 0;
  padding-left: 47.62%;
  padding-left: calc((180 - 100) * ((100vw - 840px) / (1280 - 840)) + 100px);
}

@media screen and (min-width: 1280px) {
  #index .mapblock .service-cat.it .linkbox {
    width: 509px;
    padding-left: 180px;
  }
} */

#index .mapblock .service .linkbox::before {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10.5px 18px 10.5px 0;
  transition: opacity ease .3s;
}

#index .mapblock .service.-transport .linkbox::before {
  border-color: transparent #4BA900 transparent transparent;
}

#index .mapblock .service.-it .linkbox::before {
  border-color: transparent #005798 transparent transparent;
}

#index .mapblock .service.-life .linkbox::before {
  border-color: transparent #FF7F28 transparent transparent;
}

#index .mapblock .service.-other .linkbox::before {
  border-color: transparent #018802 transparent transparent;
}

#index .mapblock .service .linkbox.-right::before {
  transform: translate(-100%, -50%);
  top: 50%;
  left: 0;
}

#index .mapblock .service .linkbox.-left::before {
  transform: translate(100%, -50%) rotate(180deg);
  top: 50%;
  right: 0;
}

#index .mapblock .service .linkbox.-top::before {
  transform: translate(-50%, 100%) rotate(-90deg);
  bottom: 2px;
  left: 50%;
}

#index .mapblock .service.-challenge .linkbox.-bottom::before {
  left: 21.43%;
}

#index .mapblock .service.-woman .linkbox.-bottom::before {
  left: 64.29%;
}

#index .mapblock .service.-big-data .linkbox.-bottom::before {
  left: 35.06%;
}

#index .mapblock .service .linkbox.-bottom::before {
  transform: translate(-50%, -100%) rotate(90deg);
  top: 1px;
  left: 50%;
}

#index .mapblock .service .linkbox .linkbox-inner {
  width: 100%;
  display: block;
  background-color: #fff;
  padding: 5px 5px 6px;
  transition: opacity ease .3s;
}

#index .mapblock .service.-transport .linkbox-inner {
  border: 2px solid #4BA900;
}

#index .mapblock .service.-it .linkbox-inner {
  border: 2px solid #005798;
}

#index .mapblock .service.-life .linkbox-inner {
  border: 2px solid #FF7F28;
}

#index .mapblock .service.-other .linkbox-inner {
  border: 2px solid #018802;
}

#index .mapblock .service-cat .linkbox .linkbox-inner {
  width: 100%;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 3px  3px 0 rgba(0,0,0,0.5);
  padding: 15px 18px 17px;
  transition: opacity ease .3s;
}

#index .mapblock .service-cat.transport .linkbox .linkbox-inner {
  background: linear-gradient(135deg, #308500, #7AC843);
}

#index .mapblock .service-cat.it .linkbox .linkbox-inner {
  background: linear-gradient(135deg, #005798, #147DA0);
}

#index .mapblock .service-cat.life .linkbox .linkbox-inner {
  background: linear-gradient(135deg, #ff4b00, #ff921e);
}

#index .mapblock .service .linkbox .link-head {
  font-size: clamp(1.4rem,18/1280*100vw,1.8rem);
  font-weight: 500;
  line-height: 1;
  color: #000;
}

#index .mapblock .service-cat .linkbox .link-head {
  font-size: clamp(2.4rem, 35/1280*100vw, 3.5rem);
  font-weight: 400;
  line-height: 1;
}

#index .mapblock .service .linkbox .link-text {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.6;
  color: #fff;
  padding-top: 20px;
}

#index .mapblock .service-cat .linkbox .link-text {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.6;
  color: #fff;
}

#index .sp-link-list {
  display: none;
}

@media screen and (max-width: 840px) {
  #index .sp-link-list {
    display: block;
  }
}

#index.index-mobile .sp-link-list {
  display: block;
}

#index .sp-link-container {
  display: none;
}

#index .sp-link-container.-active {
  display: block;
}

#index .sp-link-list .sp-link-block {
  margin: 90px auto 0;
}

#index .sp-link-list .sp-link-block:first-of-type {
  margin: 0 auto;
  padding-top: 45px;
}

#index .sp-link-list .sp-link-block .sp-link-img,
#index .sp-link-list .sp-link-block .sp-link-img img {
  width: 100%;
  display: block;
  transition: opacity ease .3s;
}

#index .sp-link-list .sp-link-block .sp-link-img:hover {
  opacity: .7;
}

#index .sp-link-list .sp-link-block .sp-link-textgroup {
  margin: 25px auto 0;
}

#index .sp-link-list .sp-link-block.cat .sp-link-textgroup {
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: unset;
  color: #fff;
  padding: 30px;
  transition: opacity ease .3s;
}

@media screen and (max-width: 750px) {
  #index .sp-link-list .sp-link-block.cat .sp-link-textgroup {
    padding: 31px 7.045% 27px;
  }
}

#index .sp-link-list .sp-link-block.cat .sp-link-textgroup:hover {
  opacity: .7;
}

#index .sp-link-list .sp-link-block.cat .sp-link-textgroup .icon-arrow {
  position: relative;
  width: 36px;
  height: 36px;
  display: block;
  border: 1px solid #fff;
  border-radius: 50%;
}

#index .sp-link-list .sp-link-block.cat .sp-link-textgroup .icon-arrow::before {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent #fff; 
  transform: translateY(-50%); 
  top: 50%;
  left: 43%;
}

#index .sp-link-list .sp-link-block.cat.-l-green .sp-link-textgroup {
  background-color: #7ac843;
}

#index .sp-link-list .sp-link-block.cat.-orange .sp-link-textgroup {
  background-color: #FF921E;
}

#index .sp-link-list .sp-link-block.cat.-blue .sp-link-textgroup {
  background-color: #147DA0;
}

#index .sp-link-block .sp-link-textgroup .group {
  width: fit-content;
  font-size: 2.1rem;
  font-weight: 400;
  color: #fff;
  text-align: center;
  padding: 8px 10px 5px;
}

#index .sp-link-block.-l-green .sp-link-textgroup .group {
  background-color: #7ac843;
}

#index .sp-link-block.-orange .sp-link-textgroup .group {
  background-color: #ff921e;
}

#index .sp-link-block.-blue .sp-link-textgroup .group {
  background-color: #147da0;
}

#index .sp-link-block.-dk-green .sp-link-textgroup .group {
  background-color: #008803;
}

#index .sp-link-block .sp-link-textgroup .head {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.2;
  display: block;
  padding-top: 15px;
  cursor: pointer;
  transition: opacity ease .3s;
}

#index .sp-link-block .sp-link-textgroup .head:hover {
  text-decoration: none;
  opacity: .7;
}

#index .sp-link-block.-l-green .sp-link-textgroup .head {
  color: #7ac843;
}

#index .sp-link-block.-orange .sp-link-textgroup .head {
  color: #ff921e;
}

#index .sp-link-block.-blue .sp-link-textgroup .head {
  color: #147da0;
}

#index .sp-link-block.-dk-green .sp-link-textgroup .head {
  color: #008803;
}

#index .sp-link-block.cat .sp-link-textgroup .head {
  font-size: 3.5rem;
  font-weight: 400;
  color: #fff;
  flex: 1;
  padding: unset;
}

#index .sp-link-block .sp-link-textgroup .text {
  font-size: 1.4rem;
  font-weight: 400;
  padding-top: 18px;
}

/* ↑↑↑ #index ↑↑↑ */

/* ↓↓↓  ↓↓↓ */
.wrap {
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 45px;
  background-color: #fff;
}

@media screen and (max-width: 750px) {
  .wrap {
    padding: 0 10.23%;
  }
}

.wrap .inner {
  width: 100%;
  padding: 0 0 75px 0;
}

@media screen and (max-width: 750px) {
  .wrap .inner {
    padding: 0 0 10px 0;
  }
}

.inner .main-visual {
  width: 100%;
  margin-bottom: 60px;
  position: relative;
}

@media screen and (max-width: 750px) {
  .inner .main-visual {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 40px;
  }
}

.inner .main-visual .title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.inner .caption-index {
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 1px;
}

.inner .text {
  font-size: 1.4rem;
  line-height: 1.8;
  text-align: justify;
  text-justify: inter-ideograph;
}

.inner .atacs-notes {
  width: 100%;
  margin-top: 30px;
  padding: 6.316% 7.37%;
  background-color: #EBF7E3;
}

.inner .atacs-notes .title-box {
  text-align: center;
}

.inner .atacs-notes .title-box .title {
  font-size: 2.4rem;
  letter-spacing: 1px;
}

@media screen and (max-width: 750px) {
  .inner .atacs-notes .title-box .title {
    font-size: 1.5rem;
  }
}

.inner .atacs-notes .title-box .sub {
  margin-top: 5px;
  margin-bottom: 60px;
  font-size: 1.4rem;
  position: relative;
}

.inner .atacs-notes .title-box .sub::after {
  content: '';
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 2px;
  background-color: #7AC843;
}

@media screen and (max-width: 750px) {
  .inner .atacs-notes .title-box .sub {
    margin-bottom: 30px;
  }

  .inner .atacs-notes .title-box .sub::after {
    bottom: -15px;
  }
}

.inner .atacs-notes .title-box .text {
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

.inner .link-woman,
.inner .link-list {
  margin-top: 65px;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 750px) {

  .inner .link-woman,
  .inner .link-list {
    margin-top: 30px;
    flex-direction: column;
  }
}

.inner .link-list .list {
  width: 31.369%;
  margin-right: 2.948%;
  margin-bottom: 4.737%;
}

@media screen and (max-width: 750px) {
  .inner .link-list .list {
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }
}

.inner .link-list .list:hover {
  opacity: .7;
}

.inner .link-list .list.grayout:hover {
  opacity: 1;
}

.inner .link-list .list a {
  color: #000;
}

.inner .link-list .list a:hover {
  text-decoration: none;
}

.inner .link-list .list:nth-of-type(3n) {
  margin-right: 0;
}

.inner .link-list .list .image {
  position: relative;
}

.inner .link-list .list .image .arrow {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 30px;
  height: 40px;
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 750px) {
  .inner .link-list .list .image .arrow img {
    width: 10px;
    height: 17px;
  }
}

.inner .link-list .list .title-group {
  margin-top: 15px;
  display: flex;
}

.inner .link-list .list .title-group.-alc {
  align-items: center;
}

.inner .link-list .list .title-group .number {
  width: 40px;
  margin-right: 10px;
}

.inner .link-list .list .title-group .title {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: -0.03em;
}

@media screen and (max-width: 750px) {
  .inner .link-list .list .title-group .title {
    font-size: 1.8rem;
  }
}

.inner .link-list .list .title-group .title span {
  letter-spacing: -0.05em;
}

.inner .link-list .list .title-group .title span.-wb {
  letter-spacing: inherit;
}

.inner .link-list .list .profile {
  margin-top: 20px;
  line-height: 1.7;
}

@media screen and (max-width: 750px) {
  .inner .link-list .list .profile {
    margin-top: 15px;
  }
}

.inner .link-list .list .profile .name {
  font-weight: bold;
}

@media screen and (max-width: 750px) {
  .inner .link-list .list .profile .name {
    font-size: 1.8rem;
  }
}

.inner .link-list .list .profile .Joining {
  padding-top: 5px;
}

@media screen and (max-width: 750px) {
  .inner .link-list .list .profile .Joining {
    padding-top: 0;
  }
}

.inner .link-woman .list {
  width: calc(50% - 1px);
  margin-right: 2px;
  margin-bottom: 2px;
}

@media screen and (max-width: 750px) {
  .inner .link-woman .list {
    width: 100%;
    margin-right: 0;
  }
}

.inner .link-woman .list:nth-of-type(2n) {
  margin-right: 0;
}

.inner .link-woman .list a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 3.165%;
  color: #000;
  background-color: #d2aaff;
  position: relative;
}

.inner .link-woman .list a:hover {
  text-decoration: none;
  opacity: .7;
}

.inner .link-woman .list a .arrow {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 30px;
  height: 40px;
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 750px) {
  .inner .link-woman .list a .arrow img {
    width: 10px;
    height: 17px;
  }
}


.inner .link-woman .list a .theme {
  margin-top: 10px;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 1px;
}

.wrap-under {
  max-width: 950px;
  margin: 0 auto;
  padding: 5.86% 0 0 0;
  box-sizing: content-box;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

@media screen and (min-width: 1281px) {
  .wrap-under {
    padding: 75px 20px 0;
  }
}

@media screen and (max-width: 750px) {
  .wrap-under {
    padding: 0;
    flex-direction: column;
  }
}

.wrap-under .titlenotice {
  width: 100%;
  margin-top: 30px;
  margin-bottom: 0;
}

.wrap-under .cont {
  width: 65.895%;
  position: relative;
}

@media screen and (max-width: 750px) {
  .wrap-under .cont {
    width: 100%;
  }
}

.wrap-under .submenu .box,
.wrap-under .cont .box {
  width: 100%;
  height: 100%;
  padding: 0;
  background-color: #fff;
  position: relative;
  z-index: 2;
}

.wrap-under .cont .box {
  padding-bottom: 60px;
}

.wrap-under .submenu {
  width: 31.579%;
  position: relative;
}

@media screen and (max-width: 750px) {
  .wrap-under .submenu {
    width: 100%;
    margin-top: 40px;
  }
}

.wrap-under .submenu .box {
  padding: 8.334% 6.67%;
  overflow: hidden;
}

.cat-other .box .title a:hover,
.wrap-under .submenu .box .title a:hover {
  opacity: .7;
}

.wrap-under .submenu::after,
.wrap-under .cont::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 90%;
  height: 10px;
  border-radius: 50%;
  box-shadow: 0px 10px 30px 10px rgba(0, 0, 5, .3);
  z-index: 1;
}

.-underlayer span.-wb {
  display: inline-block;
}

.-underlayer .submenu .list li {
  background-color: #fff;
  cursor: pointer;
}

.-underlayer .submenu .list li .grayout {
  cursor: default;
}

.-underlayer .submenu .list .title {
  width: 100%;
  height: 100%;
  margin-top: 10px;
  padding: 5px 10px 5px 15px;
  color: #000;
  display: block;
  position: relative;
  text-align: start;
}

.-underlayer .submenu .list .title:not(.-nolist):after {
  content: '＋';
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  font-size: 1.8rem;
  color: #fff;
}

.-underlayer .submenu .list .title.-nolist:after {
  content: '>';
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  font-size: 1.6rem;
  color: #fff;
}

.-underlayer .submenu .list .title:not(.-nolist).-active::after {
  content: '－';
}

.-underlayer .submenu .linkmenu-list {
  width: 100%;
  display: none;
  opacity: 0;
  visibility: hidden;
}

.-underlayer .submenu .linkmenu-list.-active {
  opacity: 1;
  visibility: visible;
}

.-underlayer .main-visual {
  width: 100%;
  position: relative;
}

.-underlayer .main-visual .title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 750px) {

  .-underlayer .main-visual,
  .-underlayer .main-visual .title {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 30px;
    padding: 0 10px;
  }
}

.-underlayer .title-group {
  margin-top: 60px;
  display: flex;
}

.-underlayer .title-group.-alc {
  align-items: center;
}

@media screen and (max-width: 750px) {
  .-underlayer .title-group.-op {
    width: 100vw;
    margin: -30px calc(50% - 50vw) 0;
    padding: 30px 10px 15px;
  }
}

#future.-underlayer .title-group {
  margin-bottom: 20px;
  align-items: center;
}

.-underlayer .title-group.-notitle {
  padding: 0 11.183%;
}

@media screen and (max-width: 750px) {
  .-underlayer .title-group.-notitle {
    width: 100%;
    padding: 0 11.183%;
    margin: -30px auto 0;
  }
}

.-underlayer .title-group .number {
  position: relative;
  width: 56px;
  margin-right: 15px;
}

.-underlayer .title-group .title {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  flex: 1;
}

.-underlayer .main-visual .title_link {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 125px;
}

@media screen and (max-width: 750px) {
  .-underlayer .main-visual .title_link {
    width: 26.67%;
    right: 10px;
  }
}

.-underlayer .main-visual .title_link:hover {
  opacity: .7;
}


.-underlayer .interview-group {
  margin-top: 15px;
  position: relative;
}

@media screen and (max-width: 750px) {
  .-underlayer .interview-group {
    margin-top: 0;
  }

  .-underlayer .interview-group .image {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 0 10px;
  }
}

.-underlayer .interview-group .profile {
  position: absolute;
  top: 17.5%;
  right: 4.793%;
  width: 225px;
  padding: 3.994% 2.876%;
  z-index: 1;
}

.-underlayer#global .interview-group .profile {
  top: unset;
  bottom: 0;
}

.-underlayer .interview-group .profile.-limit {
  padding: 3.994% 2.876% 1.917%;
}

@media screen and (max-width: 750px) {
  .-underlayer .interview-group .profile {
    position: relative;
    right: 0;
    width: 80%;
    margin: -45px auto;
    padding: 30px;
  }

  .-underlayer .interview-group .profile.-limit {
    padding: 30px;
  }
}

.-underlayer .interview-group .profile .interview01 {
  width: 80%;
}

@media screen and (max-width: 750px) {
  .-underlayer .interview-group .profile .interview01 {
    width: 50%;
  }
}

.-underlayer .interview-group .profile h4 {
  margin-top: 11%;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
}

@media screen and (max-width: 750px) {
  .-underlayer .interview-group .profile h4 {
    margin-top: 25px;
  }
}

.-underlayer .interview-group .profile .name-group {
  margin-top: 33%;
  margin-bottom: 14%;
  padding-bottom: 14%;
  border-bottom: 1px solid #fff;
  color: #fff;
  display: flex;
  flex-direction: column;
}

.-underlayer#global .interview-group .profile .name-group {
  margin-top: 9.53%;
}

.-underlayer .interview-group .profile .name-group.-mt15 {
  margin-top: 15%;
}

@media screen and (max-width: 750px) {
  .-underlayer .interview-group .profile .name-group {
    margin-top: 20px;
    margin-bottom: 13px;
    padding-bottom: 15px;
    align-items: baseline;
  }

  .-underlayer .interview-group .profile .name-group.-mt15 {
    margin-top: 20px;
  }
}

.-underlayer .interview-group .profile .name-group .name {
  font-size: 1.8rem;
  font-weight: bold;
}

.-underlayer .interview-group .profile .name-group .furigana {
  font-size: 1.2rem;
}

.-underlayer .interview-group .profile .career {
  font-size: 1.3rem;
  letter-spacing: -0.04em;
  line-height: 2;
  color: #fff;
}

.-underlayer .caption {
  width: 100%;
  margin-top: 100px;
  margin-bottom: 50px;
  padding-left: 3px;
  position: relative;
}

#transport.-underlayer .caption,
#it.-underlayer .caption,
#life.-underlayer .caption {
  margin-top: 45px;
}

@media screen and (max-width: 950px) {
  .-underlayer .caption {
    margin-top: calc(50px + 13vw);
  }
}

@media screen and (max-width: 750px) {
  .-underlayer .caption {
    margin-top: 18%;
    margin-bottom: 30px;
  }
  #transport.-underlayer .caption,
  #it.-underlayer .caption,
  #life.-underlayer .caption {
    margin-top: 52px;
    margin-left: 20px;
    margin-right: 20px;
  }
}

.-underlayer .caption::before {
  content: '';
  position: absolute;
  top: -120%;
  left: -9%;
  width: 120px;
  height: 8px;
  transform: rotateZ(45deg);
}

@media screen and (max-width: 750px) {
  .-underlayer .caption::before {
    top: -100%;
    left: 0;
    width: 67px;
    height: 5px;
  }

  #transport.-underlayer .caption::before,
  #it.-underlayer .caption::before,
  #life.-underlayer .caption::before {
    left: -10px;
  }
}

@media screen and (max-width: 375px) {
  .-underlayer .caption::before {
    top: -130%;
    left: 0;
  }
}

.-underlayer .caption.-challenge::before {
  content: '';
  position: absolute;
  top: -53%;
  left: -9%;
  width: 120px;
  height: 8px;
  transform: rotateZ(45deg);
}

@media screen and (max-width: 750px) {
  .-underlayer .caption.-challenge::before {
    top: -40%;
    left: 0;
    width: 67px;
    height: 5px;
  }
}

#future.-underlayer .caption.-outline {
  margin-top: 100px;
}

@media screen and (max-width: 750px) {
  #future.-underlayer .caption.-outline {
    margin-top: 50px;
  }

  #takawa.-underlayer .caption.-outline,
  #initiatives.-underlayer .caption.-outline {
    margin-top: 70px;
  }
}

.-underlayer .caption.-mission img {
  width: 55%;
}

.-underlayer .caption.-about img {
  width: 42.5%;
}

.-underlayer .caption.-theme {
  margin-top: 110px;
}

@media screen and (max-width: 750px) {
  .-underlayer .caption.-theme {
    margin-top: 80px;
  }
}

.-underlayer .caption.-theme img {
  width: 50%;
}

@media screen and (max-width: 750px) {
  .-underlayer .caption.-theme img {
    width: 278px;
  }
}

.-underlayer .caption.-outline img {
  width: 56.662%;
}

.-underlayer .caption.-casestudy img {
  width: 78.493%;
}

@media screen and (max-width: 750px) {
  .-underlayer .caption.-outline img {
    width: 66.305%;
  }
}

.-underlayer .text-box {
  width: 100%;
  margin: 0 auto;
  padding: 0 11.183%;
}

.-underlayer .text-box.-nontitle {
  margin-top: 50px;
}

.-underlayer .text-box .w-title {
  padding-top: 30px;
  font-size: 2.0rem;
  color: #a54489;
}

@media screen and (max-width: 750px) {
  .-underlayer .text-box .w-title {
    padding-top: 0;
  }
}

.-underlayer .text-box .w-text,
.-underlayer .title-group.-op .text,
.-underlayer .text-box .text {
  color: #333;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 750px) {
  .-underlayer .title-group.-op .text {
    margin-top: 60px;
  }
  .-underlayer .title-group.-op .text .-pc {
    display: none;
  }
}

.-underlayer .text sub {
  vertical-align: sub;
  font-size: smaller;
}

.-underlayer .text-box .w-text {
  margin-bottom: 20px;
  display: flex;
}

.-underlayer .text-box .text sup {
  font-size: 1.0rem;
  vertical-align: super;
}

.-underlayer .text-box .text .indent {
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}

.-underlayer .text-box .text .-color1 {
  color: #59bef3;
}

.-underlayer .text-box .w-notes {
  letter-spacing: 1px;
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
}

.-underlayer .text-box .w-notes2 {
  margin-top: 20px;
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
}

.-underlayer .text-box .w-text .name {
  width: 60px;
  text-align: right;
  color: #b769a1;
  font-weight: bold;
}

.-underlayer .text-box .w-text .text {
  flex: 1;
}

.-underlayer .text-box .image {
  position: relative;
}

.-underlayer .text-box .image .link-icon {
  position: absolute;
  width: 25px;
  top: 10px;
  right: 12px;
}

.-underlayer .-mission01 {
  margin-top: 12%;
}

.-underlayer .sub-cap {
  margin: 35px 0 25px 0;
  font-size: 1.4rem;
  font-weight: bold;
}

.-underlayer .-mission02+.text,
#transport .-mission02+.text-box,
#life .-mission02+.text-box,
#it .-mission02+.text-box,
.-underlayer .-mission02+.sub-cap {
  margin: 50px 0 25px 0;
}

@media screen and (max-width: 750px) {

  .-underlayer .-mission02+.text,
  .-underlayer .sub-cap,
  .-underlayer .-mission02+.sub-cap {
    margin: 20px 0 15px 0;
  }

  #transport .-mission02+.text-box,
  #life .-mission02+.text-box,
  #it .-mission02+.text-box {
    margin: 40px 0 15px 0;
  }
}

.-underlayer .sub-cap span {
  display: inline-block;
}

.-underlayer .-mission02 {
  margin-top: 9.6%;
}

.-underlayer .-mission03 {
  margin-top: 6.173%;
}

.-underlayer .-mt5 {
  margin-top: 5%;
}

.-underlayer .-mt5 .notes,
.-underlayer .-mission02 .notes {
  padding: 10px 11.183% 0;
  font-size: 1.2rem;
  text-align: right;
  padding: 10px 0 0 0;
}

.-underlayer .-mt5 .notes.-tl,
.-underlayer .-mission02 .notes.-tl {
  text-align: left;
}

.-underlayer .-future01 .notes,
.-underlayer .-mission01 .notes {
  padding: 10px 0 0 0;
  font-size: 1.2rem;
}

.-underlayer .-mission01 .notes.-mc {
  width: fit-content;
  margin: 0 auto;
}

.-underlayer .-mission01 .notes.-id3 {
  display: block;
  padding-left: 3em;
  text-indent: -3em;
}

.-underlayer .-mt5 a:hover,
.-underlayer .-mission02 a:hover {
  opacity: .7;
}

.-underlayer .caption.-future {
  width: 100%;
  margin-top: 100px;
  margin-bottom: 30px;
  padding-left: 3px;
  position: relative;
}

@media screen and (max-width: 750px) {
  .-underlayer .caption.-future {
    margin-top: 55px;
  }

  .-underlayer .caption.-future {
    margin-top: 100px;
  }
}

.-underlayer .caption.-future img {
  width: 50%;
}

.-underlayer .caption.-challenge img {
  width: 84%;
}

.-underlayer .caption.-technology img {
  width: 87.801%;
}

.-underlayer .caption.-interview img {
  width: 73.195%;
}

.-underlayer .-future01 {
  margin-top: 6%;
}

.-underlayer .image.-movie {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
}

.-underlayer .image.-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.-underlayer .caption.-afterword {
  width: 100%;
  margin-top: 100px;
  margin-bottom: 30px;
  padding-left: 3px;
  position: relative;
}

.-underlayer .caption.-profile {
  width: 100%;
  margin-top: 100px;
  margin-bottom: 30px;
  padding-left: 3px;
  position: relative;
}

.-underlayer .caption.-challenge {
  width: 100%;
  margin-top: 100px;
  margin-bottom: 30px;
  padding-left: 3px;
  position: relative;
}

.-underlayer .caption.-member {
  width: 35.69%;
  margin-top: 85px;
  margin-left: -45px;
  margin-bottom: 50px;
  padding-left: 3px;
  position: relative;
}

@media screen and (max-width: 750px) {

  .-underlayer .caption.-challenge,
  .-underlayer .caption.-afterword {
    margin-top: 55px;
  }

  .-underlayer .caption.-member {
    width: 290px;
    margin-top: 70px;
    margin-bottom: 30px;
  }
}

.-underlayer .-afterword {
  margin-top: 6%;
}

.-underlayer .caption.-afterword img {
  width: 80.6%;
}

.-underlayer .caption.-profile img {
  width: 55.6%;
}

.-underlayer .pager-group {
  max-width: 950px;
  margin: 50px auto 0 auto;
  padding: 0 20px;
  box-sizing: content-box;
}

@media screen and (max-width: 750px) {
  .-underlayer .pager-group {
    display: none;
  }
}

.-underlayer .pager-group .inner {
  width: 65.895%;
  margin: 0 auto 0 0;
  padding: 0;
  background-color: transparent;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.-underlayer .pager-group .inner .cat-own,
.-underlayer .pager-group .inner .cat-other {
  width: 47.924%;
  position: relative;
  z-index: 2;
}

.-underlayer .pager-group .inner .cat-own::after,
.-underlayer .pager-group .inner .cat-other::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 90%;
  height: 10px;
  border-radius: 50%;
  box-shadow: 0px 10px 30px 10px rgba(0, 0, 5, .3);
  z-index: 1;
}

.-underlayer .pager-group .inner .cat-own .box,
.-underlayer .pager-group .inner .cat-other .box {
  width: 100%;
  height: 100%;
  padding: 8.334% 6.67% 10%;
  background-color: #fff;
  position: relative;
  z-index: 2;
}

.-underlayer .pager-group .inner .cat-own .title {
  width: 100%;
  padding: 5px 10px 5px 15px;
  position: relative;
}

.-underlayer .pager-group .inner .cat-own .title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 10px;
  height: 100%;
}

.-underlayer .pager-group .inner .cat-other .list a.-tech.-active::before {
  background-color: #008803;
}

.-underlayer .pager-group .inner .cat-other .list a.-proj.-active::before,
.-underlayer .pager-group .inner .cat-own .title.-proj::before {
  background-color: #4b73a1;
}

.-underlayer .pager-group .inner .cat-other .list a.-chal.-active::before,
.-underlayer .pager-group .inner .cat-own .title.-chal::before {
  background-color: #a88d60;
}

.-underlayer .pager-group .inner .cat-other .list a.-womn.-active::before,
.-underlayer .pager-group .inner .cat-own .title.-womn::before {
  background-color: #c78cb7;
}

.-underlayer .pager-group .inner .cat-other .list a.-glob.-active::before,
.-underlayer .pager-group .inner .cat-own .title.-glob::before {
  background-color: #ac5b4c;
}

.-underlayer .pager-group .inner .cat-other .list a.-tech.-active::before,
.-underlayer .pager-group .inner .cat-own .title.-tech::before {
  background-color: #00885a;
}

.-underlayer .submenu .list .title .cate,
.-underlayer .pager-group .inner .cat-other .list .title .cate,
.-underlayer .pager-group .inner .cat-own .title .cate {
  padding-bottom: 3px;
  font-size: 1.0rem;
  font-family: initial;
  font-weight: bold;
  color: #fff;
  border-bottom: 1px solid #fff;
}

.-underlayer .submenu .list .title p,
.-underlayer .pager-group .inner .cat-other .list a p,
.-underlayer .pager-group .inner .cat-own .title p {
  margin-top: 7px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
}

.-underlayer .submenu .list .title p .break,
.-underlayer .pager-group .inner .cat-other .list a p .break,
.-underlayer .pager-group .inner .cat-own .title p .break {
  display: inline-block;
}

.-underlayer .submenu .linkmenu-list li,
.-underlayer .pager-group .inner .cat-own .list li {
  margin-top: 10px;
}

.-underlayer .submenu .linkmenu-list li .grayout,
.-underlayer .submenu .linkmenu-list li a,
.-underlayer .pager-group .inner .cat-own .list .grayout,
.-underlayer .pager-group .inner .cat-own .list a {
  width: 100%;
  height: 100%;
  color: #000;
  display: flex;
  align-items: center;
}

.-underlayer .submenu .linkmenu-list li p,
.-underlayer .pager-group .inner .cat-own .list li p {
  flex: 1;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.4;
  display: flex;
  align-items: center;
}

.-underlayer .pager-group .inner .cat-own .list li .grayout p,
.-underlayer .submenu .linkmenu-list li .grayout p {
  color: #c0c0c0;
}

.-underlayer .submenu .linkmenu-list li p span,
.-underlayer .pager-group .inner .cat-own .list li p span {
  width: 32px;
  height: 32px;
  margin-right: 10px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #333;
  background-color: #E5E5E5;
  display: flex;
  justify-content: center;
  align-items: center;
}

.-underlayer .pager-group .inner .cat-own .-tech+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .-proj+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .-chal+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .-womn+.list li p span.-color,
.-underlayer .pager-group .inner .cat-own .-glob+.list li p span.-color,
.-underlayer .submenu .linkmenu-list li p span.-color {
  color: #fff;
}

.-underlayer .pager-group .inner .cat-own .list li .grayout p span,
.-underlayer .submenu .linkmenu-list li .grayout p span {
  color: rgb(122, 122, 122);
}

.-underlayer .submenu .linkmenu-list li figure,
.-underlayer .pager-group .inner .cat-own .list li figure {
  width: 64px;
  margin-left: 5px;
}

.-underlayer .submenu .list a:hover,
.-underlayer .submenu .linkmenu-list li a:hover,
.-underlayer .pager-group .inner .cat-other .list a:hover,
.-underlayer .pager-group .inner .cat-own .list a:hover {
  text-decoration: none;
  opacity: .7;
}

.-underlayer .pager-group .inner .cat-other .list a {
  width: 100%;
  height: 100%;
  margin-top: 10px;
  padding: 5px 10px 5px 15px;
  color: #000;
  display: block;
  position: relative;
}

.-underlayer .pager-group .inner .cat-other .list a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 10px;
  height: 100%;
}

.-underlayer .pager-group .inner .cat-other .list a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 15px;
  height: 20px;
  background-image: url(../img/icon_arrow_white.svg);
  background-size: 6px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #000;
}

.member-list {
  width: 100%;
}

.member-list .member {
  margin-bottom: 15px;
  padding: 25px;
  border: 4px solid #e5e5e5;
  display: flex;
}

@media screen and (max-width: 750px) {
  .member-list .member {
    margin-bottom: 25px;
    flex-direction: column;
  }
}

.member-list .member .image {
  width: 236px;
}

@media screen and (max-width: 750px) {
  .member-list .member .image {
    width: 100%;
  }
}

.member-list .member .text-group {
  margin-left: 15px;
  flex: 1;
}

@media screen and (max-width: 750px) {
  .member-list .member .text-group {
    margin-left: 0;
    margin-top: 10px;
  }
}

.member-list .member .text-group .name {
  margin-top: 10px;
  display: flex;
  align-items: baseline;
}

@media screen and (max-width: 750px) {
  .member-list .member .text-group .name {
    flex-direction: column;
  }
}

.member-list .member .text-group .name h3 {
  font-size: 2.1rem;
  color: #d2aaff;
  letter-spacing: 1px;
}

.member-list .member .text-group .name span {
  margin-left: 10px;
  font-size: 1.2rem;
  color: #d2aaff;
}

@media screen and (max-width: 750px) {
  .member-list .member .text-group .name span {
    margin-top: 3px;
    margin-left: 0;
  }
}

.member-list .member .text-group .duties {
  margin-top: 20px;
  font-size: 1.2rem;
  line-height: 1.8;
  letter-spacing: 1px;
}

@media screen and (max-width: 750px) {
  .member-list .member .text-group .duties {
    margin-top: 15px;
  }
}

.member-list .member .text-group .text {
  margin-top: 20px;
  font-size: 1.2rem;
  line-height: 1.8;
  letter-spacing: 1px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 750px) {
  .member-list .member .text-group .text {
    line-height: 2;
  }
}

.-underlayer .box-in {
  width: 100%;
  margin-top: 35px;
}

.-underlayer .box-in h4 {
  margin-bottom: 10px;
  padding: 5px 5px 3px 5px;
  font-size: 1.4rem;
  font-weight: bold;
  display: inline-block;
}

.-underlayer .box-in h4.-yellow {
  background-color: #ffff00;
}

.-underlayer .box-in h4.-pink {
  color: #fff;
  background-color: #ea1e79;
}

.-underlayer .box-in h4.-blue {
  color: #fff;
  background-color: #147da0;
}

.-underlayer .box-in .image {
  margin-top: 10px;
  text-align: center;
}

.-underlayer .box-in .image .notes {
  padding: 10px 0 0 0;
  font-size: 1.2rem;
  text-align: left;
}

.-underlayer .-interview+.text-box .interview-box {
  width: 100%;
  display: flex;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .interview-box {
    flex-direction: column;
  }
}

.-underlayer .-interview+.text-box .interview-box .iamge {
  width: 53.91%;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .interview-box .iamge {
    width: 100%;
  }
}


.-underlayer .-interview+.text-box .interview-box .iamge img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.-underlayer .-interview+.text-box .interview-box .text-group {
  flex: 1;
  padding: 5.145%;
  background-color: #e6e6e6;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .interview-box .text-group {
    padding: 30px;
  }
}

.-underlayer .-interview+.text-box .interview-box .text-group .name {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 2px;
}

.-underlayer .-interview+.text-box .interview-box .text-group .name.-mts1 {
  margin-top: 14.37%;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .interview-box .text-group .name.-mts1 {
    margin-top: 0;
  }
}

.-underlayer .-interview+.text-box .interview-box .text-group .furigana {
  margin-top: 5px;
  font-size: 1.2rem;
  letter-spacing: 1px;
}

.-underlayer .-interview+.text-box .interview-box .text-group hr {
  border: 1px solid #000;
}

.-underlayer .relation-link {
  width: 100%;
  margin-top: 70px;
}

.-underlayer .relation-link h4 {
  display: block;
  position: relative;
  font-weight: bold;
}

.-underlayer .relation-link h4::before {
  content: '';
  position: absolute;
  top: 20%;
  left: -9%;
  width: 42px;
  height: 3px;
  transform: rotateZ(45deg);
  background-color: #00522a;
}

@media screen and (max-width: 750px) {
  .-underlayer .relation-link h4::before {
    top: 50%;
    left: -10%;
  }
}

.-underlayer .relation-link .box-book {
  margin-top: 20px;
}

.-underlayer .relation-link .box-book a:hover {
  opacity: .7;
}

.-underlayer .relation-link .box-book a {
  position: relative;
  height: 100%;
  display: block;
}

.-underlayer .relation-link .box-book a .link-icon {
  position: absolute;
  width: 3.087%;
  top: 10px;
  right: 10px;
}

@media screen and (max-width: 750px) {
  .-underlayer .relation-link .box-book a .link-icon {
    width: calc(12/375*100vw);
    top: calc(6/375*100vw);
    right: calc(8/375*100vw);
  }
}

.-underlayer .relation-link .box {
  margin-top: 20px;
  padding: 0;
}

.-underlayer .relation-link .box:hover {
  opacity: .7;
}

.-underlayer .-interview+.text-box .relation-link .box.-color1 {
  background-color: #33a8c8;
}

.-underlayer .-future+.text-box .relation-link .box.-color2 {
  background-color: #00387a;
}

.-underlayer .relation-link .box a {
  padding: 5px;
  color: #fff;
  display: flex;
}

@media screen and (max-width: 750px) {
  .-underlayer .relation-link .box a {
    padding: 10px;
    flex-direction: column-reverse;
  }
}

.-underlayer .relation-link .box a:hover {
  text-decoration: none;
}

.-underlayer .-interview+.text-box .relation-link .box .text-group {
  padding: 4.202% 3.152% 0;
  flex: 1;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .relation-link .box .text-group {
    padding: 10px 0;
  }
}

.-underlayer .-interview+.text-box .relation-link .box .text-group .tag {
  display: flex;
}

.-underlayer .-interview+.text-box .relation-link .box .text-group .tag li {
  height: 18px;
  margin-right: 5px;
  padding: 3px 10px 0 10px;
  font-size: 1.1rem;
  color: #000;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .relation-link .box .text-group .tag li {
    height: 24px;
    font-size: 1.4rem;
  }
}

.-underlayer .-interview+.text-box .relation-link .box .text-group .tag .area {
  color: #33a8c8;
}

.-underlayer .-interview+.text-box .relation-link .box .text-group p {
  margin-top: 10px;
  font-size: 1.1rem;
  letter-spacing: 1px;
  line-height: 1.6;
  display: block;
}

.-underlayer .-interview+.text-box .relation-link .box .text-group span {
  font-size: 1.4rem;
  font-weight: bold;
  display: block;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .relation-link .box .text-group p {
    font-size: 1.4rem;
  }

  .-underlayer .-interview+.text-box .relation-link .box .text-group span {
    font-size: 1.6rem;
  }
}

.-underlayer .-interview+.text-box .relation-link .box .text-group p:nth-of-type(2) {
  margin-top: 7px;
}

.-underlayer .-interview+.text-box .relation-link .box .image {
  width: 55.463%;
}

@media screen and (max-width: 750px) {
  .-underlayer .-interview+.text-box .relation-link .box .image {
    width: 100%;
  }
}

.-underlayer .relation-link.-integ .box .text-group {
  padding-left: 10px;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media screen and (max-width: 750px) {
  .-underlayer .relation-link.-integ .box .text-group {
    padding-left: 0;
    margin-top: 15px;
  }
}

.-underlayer .relation-link.-integ .box .text-group .cap1 {
  font-size: 1.4rem;
}

.-underlayer .relation-link.-integ .box .text-group .cap2 {
  font-size: 2.0rem;
}

.-underlayer .relation-link.-integ .text-group hr {
  width: 45%;
  margin: 10px 0;
  border-top: 2px solid #fff;
}

@media screen and (max-width: 750px) {
  .-underlayer .relation-link.-integ .text-group hr {
    width: 25%;
  }
}

/* ↑↑↑  ↑↑↑ */