.achievements-top {
  position: relative;
  background-color: #fff;
  width: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  isolation: isolate;
  gap: 10px;
  text-align: left;
  font-size: 0.972vw;
  color: #0288d1;
  font-family: 'Noto Sans JP';
}

.achievements-wrapper {
  width: 100.000vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  z-index: 0;
}

.main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 5.972vw 0.000vw 0.000vw;
}

.title-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 2.777vw;
  color: #1a1c21;
}

.title-inner {
  align-self: stretch;
  height: 10.417vw;
  background-color: #fff;
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2.777vw 8.333vw;
  box-sizing: border-box;
}

.title-parent {
  width: 83.333vw;
  background-color: rgba(255, 255, 255, 0);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.title {
  position: relative;
  letter-spacing: 0.044vw;
  font-weight: 900;
  background: linear-gradient(267.36deg, #a0d8ec, #0288d1 28.04%, #004fc5);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.company-profile {
  position: relative;
  font-size: 0.972vw;
  font-weight: 600;
  font-family: Inter;
  padding-right: 2vw;
  background: linear-gradient(267.36deg, #a0d8ec, #0288d1 28.04%, #004fc5);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.company-top-tab {
  align-self: stretch;
  height: 4.444vw;
  background-color: #f2f2f2;
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0vw 8.333vw;
  box-sizing: border-box;
  text-align: center;
  font-size: 0.972vw;
}
 
.tab-group {
  align-self: stretch;
  width: 83.333vw;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tab1,
.tab4 {
  align-self: stretch;
  background-color: #f2f2f2;
  border-bottom: 0.069vw solid #e3e3e3;
  border-left: 0.069vw solid #e3e3e3;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.389vw 1.111vw;
  position: relative;
  gap: 0.625rem;
  min-width: 8.333vw;
}
 
.tab5 {
  align-self: stretch;
  border-bottom: 0.069vw solid #e3e3e3;
  border-left: 0.069vw solid #e3e3e3;
  background-color: #f2f2f2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.389vw 1.111vw;
  box-sizing: border-box;
  position: relative;
  gap: 0.625rem;
  min-width: 8.333vw;
}
 
.tab2,
.tab3,
.tab6 {
  align-self: stretch;
  background-color: #f2f2f2;
  border-bottom: 0.069vw solid #e3e3e3;
  border-left: 0.069vw solid #e3e3e3;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.389vw 1.111vw;
  position: relative;
  gap: 0.625rem;
  min-width: 8.333vw;
}
 
.tab7,
.tab8,
.tab9 {
  align-self: stretch;
  flex: 1;
  background-color: #f2f2f2;
  border-bottom: 0.069vw solid #e3e3e3;
  border-left: 0.069vw solid #e3e3e3;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.389vw 1.111vw;
  position: relative;
  gap: 0.625rem;
  min-width: 8.333vw;
}

.tab9{
  border-right: 0.069vw solid #e3e3e3;
}
 
.tab-child {
  height: 5.556vw;
  width: 100%;
  position: absolute;
  margin: 0 !important;
  top: 0vw;
  left: 0vw;
  background-color: #0288d1;
  z-index: 0;
  flex-shrink: 0;
  transform: scaleX(0);
  transform-origin: left;
}
 
.tab-item {
  height: 5.209vw;
  width: 100%;
  position: absolute;
  margin: 0 !important;
  top: 0vw;
  left: 0vw;
  background-color: #0288d1;
  z-index: 0;
  flex-shrink: 0;
  transform: scaleX(1);
  transform-origin: left;
}
 
.tab-b {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}
 
.tab1 .tab-b, .tab2 .tab-b, .tab3 .tab-b, .tab4 .tab-b,
.tab5 .tab-b, .tab6 .tab-b, .tab7 .tab-b, .tab8 .tab-b, .tab9 .tab-b {
  position: relative;
  overflow: hidden;
  text-decoration: none;
  transition: color 0.5s ease;
}
 
.tab4 .tab-b {
  color: #fff;
}

.tab4,
.tab5{
  border-left: 0;
}

 
.tab1.is-hover .tab-child,
.tab2.is-hover .tab-child,
.tab3.is-hover .tab-child,
.tab5.is-hover .tab-child,
.tab6.is-hover .tab-child,
.tab7.is-hover .tab-child,
.tab8.is-hover .tab-child,
.tab9.is-hover .tab-child {
  animation: tabIn 0.5s ease forwards;
}
 
.tab1.is-hover .tab-b,
.tab2.is-hover .tab-b,
.tab3.is-hover .tab-b,
.tab5.is-hover .tab-b,
.tab6.is-hover .tab-b,
.tab7.is-hover .tab-b,
.tab8.is-hover .tab-b,
.tab9.is-hover .tab-b {
  color: #fff;
  font-weight: 700;
}
 
.tab1.is-leaving .tab-child,
.tab2.is-leaving .tab-child,
.tab3.is-leaving .tab-child,
.tab5.is-leaving .tab-child,
.tab6.is-leaving .tab-child,
.tab7.is-leaving .tab-child,
.tab8.is-leaving .tab-child,
.tab9.is-leaving .tab-child {
  animation: tabOutBounce 0.55s ease forwards;
}

@keyframes tabIn{
  0% {transform: scaleX(0); }
  100% {transform: scaleX(1.01); }
}
 
@keyframes tabOutBounce {
  0%   { transform: scaleX(1); }
  50%  { transform: scaleX(0); }
  60%  { transform: scaleX(0.10);}
  100% { transform: scaleX(0); }
}

/* PCで見せないやつ　DEMO */
.sp-container,
.sp-container2,
.sp-tab6-wrapper,
.message-person-parent,
.message-person-wrapper,
.tab-frame {
  display: contents !important;
}

.sp-ceo-message-title,
.sp-position {
  display: none;
}


.bread-crumbs-wrapper {
  width: 100vw;
  background-color: #fff;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.667vw 8.333vw;
  box-sizing: border-box;
  font-size: 0.833vw;
}

.bread-crumbs-parent {
  width: 83.333vw;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.bread-top {
  height: 0.972vw;
  width: 2.5vw;
  position: relative;
  display: inline-block;
  flex-shrink: 0;
}

.bread-next-img {
  height: 0.833vw;
  width: 0.486vw;
  position: relative;
}

.bread-next {
  position: absolute;
  top: 0vw;
  left: 0vw;
  width: 0.486vw;
  height: 0.833vw;
}

.bread-link2,
.bread-link3 {
  position: relative;
}

.bread-current {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6b7075;
}

.bread-link1,
.bread-link2 {
  color: inherit;
  text-decoration: none;
  transition: color 0.01s ease;
}
 
.bread-link1:hover,
.bread-link2:hover {
  color: #6b7075;
}

.main-inner {
  width: 100.000vw;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 6.944vw 8.333vw;
  box-sizing: border-box;
  font-size: 1.111vw;
  color: #1a1c21;
}

.ahievements-frame-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 100%;
}

.description-wrapper {
  width: 100%;
  display: flex;
  align-items: flex-start;
  max-width: 100%;
}

.description {
  flex: 1;
  position: relative;
  line-height: 180%;
}

.main-child,
.main-child2 {
  width: 100.000vw;
  background-color: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5.556vw 8.333vw;
  box-sizing: border-box;
  font-family: Inter;
}

.main-child-container {
  width: 83.333vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.main-child-parent {
  align-self: stretch;
  display: flex;
  align-items: flex-start;
  gap: 50px;
}

.main-child-group {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}

.main-child-frame {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}

.main-child-wrapper {
  width: 5.417vw;
  border-right: 0.069vw solid #0288d1;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.project-parent {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.project {
  position: relative;
  line-height: 180%;
  font-weight: 600;
}

.project-number {
  position: relative;
  font-size: 2.777vw;
  line-height: 100%;
  font-weight: 600;
}

.project-content-wrapper {
  align-self: stretch;
  display: flex;
  align-items: flex-start;
  font-size: 1.111vw;
  color: #1a1c21;
  font-family: 'Noto Sans JP';
}

.project-img-wrapper {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
}

.project-img-parent {
  width: 32.75vw;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.project-img {
  align-self: stretch;
  flex: 1;
  position: relative;
  border-radius: 1.111vw;
  max-width: 100%;
  overflow: hidden;
  max-height: 100%;
  object-fit: cover;
}

.project-title,
.project-title1,
.project-title2 {
  position: relative;
  font-size: 1.667vw;
  line-height: 180%;
  color: #0288d1;
}


.main-inner-last {
  width: 100.000vw;
  background-color: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5.556vw 8.333vw 10.417vw;
  box-sizing: border-box;
  font-family: Inter;
}

.dx-parent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  font-size: 1.111vw;
  color: #1a1c21;
  font-family: 'Noto Sans JP';
}

.dx,
.dx2 {
  position: relative;
  line-height: 180%;
}
