/* 共通リセットCSS */
a,
button,
input,
select,
h1,
h2,
h3,
h4,
h5,
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: none;
    text-decoration: none;
    background: none;
    -webkit-font-smoothing: antialiased;
}

menu, ol, ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.top,
.top * {
  box-sizing: border-box;
}
.top {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.header {
  background: #ffffff;
  padding: 0px 0px 0px 40px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  align-self: stretch;
  flex-shrink: 0;
  height: 80px;
  position: relative;
}
.link-to-top {
  flex-shrink: 0;
  width: 196px;
  height: 58px;
  position: relative;
  overflow: hidden;
  aspect-ratio: 196/58;
}
.group {
  height: auto;
  position: absolute;
  left: 0px;
  top: 0px;
  overflow: visible;
}
.nav {
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: flex-end;
  align-self: stretch;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}

.careers-text {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}


.image {
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
  aspect-ratio: 1920/740;
}
.aboutusimage0 {
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2248 {
  background: #ffffff;
  padding: 40px 16px 60px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2242 {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: row;
  gap: 40px;
  row-gap: 60px;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.image2-aboutus {
  flex: 1;
  min-width: 360px;
  position: relative;
}

.image2-logo {
  flex: 1;
  min-width: 360px;
  position: relative;
}

.sdn-sdn {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
  min-width: 360px;
}
.section {
  border-radius: 40px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  height: 120px;
  min-height: 120px;
  position: relative;
  overflow: hidden;
  object-fit: cover;
}
.frame-2249 {
  background: #ffffff;
  padding: 40px 16px 60px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-1461 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.image3 {
  flex: 1;
  min-width: 360px;
  position: relative;
}
.frame-2379 {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
}
.about-us {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.it-top {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}

.it-infrastructure {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}

.it2 {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.link-to-aboutus {
  background: var(--text-default, #282828);
  border-radius: 78px;
  padding: 16px 32px 16px 40px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  width: 260px;
  position: relative;
  overflow: hidden;
}
.view-more {
  color: #ffffff;
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 24px;
  line-height: 24px;
  letter-spacing: 2px;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.svg {
  flex-shrink: 0;
  width: 28px;
  height: 32px;
  position: relative;
  overflow: visible;
}
.frame-2243-top {
  background: #ffffff;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2298-top {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.link-to-products {
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.image4 {
  flex-shrink: 0;
  width: 380px;
  position: relative;
}
.frame-970 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.top-card-text {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.aws-digital-twin-liquid-metal {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.aws-digital-twin-liquid-metal-top {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex
;
  align-items: center;
  justify-content: center;
}
.frame-2288 {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
}
.link {
  background: var(--text-default, #282828);
  border-radius: 78px;
  padding: 16px 0px 16px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  position: relative;
  overflow: hidden;
}
.svg {
  flex-shrink: 0;
  width: 28px;
  height: 32px;
  position: relative;
  overflow: visible;
}
.link-to-solutions {
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}

.frame-2250 {
  background: var(--background-default, #fef2eb);
  border-radius: 40px;
  padding: 64px 16px 64px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-22422 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.careers {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.div-aboutus {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.link-to-careers {
  background: var(--text-default, #282828);
  border-radius: 78px;
  padding: 16px 32px 16px 40px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  width: 260px;
  position: relative;
  overflow: hidden;
}

.frame-2251 {
  background: #ffffff;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-1450 {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.you-tube {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.div2-top {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-23792 {
  background: #f6f8fc;
  border-radius: 40px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  min-width: 360px;
  max-width: 1440px;
  position: relative;
}
.frame-48099698 {
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.smart-display {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  position: relative;
  overflow: visible;
  aspect-ratio: 1;
}
.div3 {
  color: #f98235;
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 28px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
}
.frame-22982 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.youtube-infrastructure-1 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-infrastructure-2 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-infrastructure-3 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-22423 {
  background: var(--, #ffffff);
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2381 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.access {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
._3-24-8-r-1-f {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-bold-font-family, "-", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 400);
  position: relative;
  align-self: stretch;
}
._3-24-8-r-1-f-span {
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-weight: var(--body-bold-font-weight, 700);
}
._3-24-8-r-1-f-span2 {
  font-family: var(--body-bold-font-family, "NotoSansJp-Regular", sans-serif);
}
.map {
  flex-shrink: 0;
  width: 700px;
  height: 320px;
  position: relative;
  overflow: hidden;
}


/* About Us page specific styles */
.about-us,
.about-us * {
  box-sizing: border-box;
}
.about-us {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.frame-1353 {
  background: var(--primary, #f98235);
  padding: 0px 0px 60px 0px;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2293 {
  background: #ffffff;
  border-radius: 0px 0px 20px 0px;
  padding: 70px 16px 70px 16px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 480px;
  max-width: 1000px;
  position: relative;
}
.frame {
  flex-shrink: 0;
  width: 425px;
  height: 58px;
  position: relative;
  overflow: visible;
}
.frame-1 {
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex: 1;
  max-width: 640px;
  position: relative;
}
.enlightened-enterprise-computing {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.dev-ops-digital-twin {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-2245 {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2246 {
  background: #ffffff;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.ceo-message {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 1320px;
  max-width: 1440px;
}
.ai {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
  min-width: 360px;
}
.youtube-ceo-message {
  flex: 1;
  height: 360px;
  min-width: 360px;
  min-height: 185.14px;
  position: relative;
  overflow: hidden;
  aspect-ratio: 700/360;
}
.frame-2239 {
  background: #ffffff;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.employee {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 1320px;
  max-width: 1440px;
}
.frame-2243 {
  background: var(--background-default, #fef2eb);
  border-radius: 40px;
  padding: 60px 16px 60px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2364 {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.history {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.digital-twin-digital-twin {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-73 {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
}
.frame-97 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-1559 {
  flex-shrink: 0;
  width: 32px;
  height: 166px;
  position: relative;
}
.ellipse-3 {
  background: var(--primary, #f98235);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  position: absolute;
  left: 0px;
  top: 63.07px;
}
.rectangle-636 {
  background: var(--primary, #f98235);
  width: 4px;
  height: 400px;
  position: absolute;
  left: 50%;
  translate: -50%;
  top: 0px;
}
.link-to-history-1 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-2339 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
._2006 {
  color: #ffffff;
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
  height: 22.14px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.ntt {
  color: #ffffff;
  text-align: left;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-98 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-2 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-99 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-3 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-100 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-4 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-101 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-5 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-102 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-6 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-103 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-7 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-104 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-8 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-105 {
  padding: 12px 0px 12px 0px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.link-to-history-9 {
  background: var(--primary, #f98235);
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-2244 {
  background: #ffffff;
  padding: 60px 16px 60px 16px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.company-information {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.frame-14612 {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1000px;
  position: relative;
}
.frame-14502 {
  border-style: solid;
  border-color: #525d77;
  border-width: 0px 0px 1px 0px;
  padding: 20px 16px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div2 {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  width: 120px;
}
.div3-aboutus {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  height: 40px;
}
.frame-1457 {
  border-style: solid;
  border-color: #525d77;
  border-width: 0px 0px 1px 0px;
  padding: 20px 16px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-1454 {
  border-style: solid;
  border-color: #525d77;
  border-width: 0px 0px 1px 0px;
  padding: 20px 16px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.frame-1455 {
  border-style: solid;
  border-color: #525d77;
  border-width: 0px 0px 1px 0px;
  padding: 20px 16px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-1456 {
  border-style: solid;
  border-color: #525d77;
  border-width: 0px 0px 1px 0px;
  padding: 20px 16px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-12 {
  background: var(--primary, #f98235);
  padding: 24px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.youtube-ceo-message-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
.youtube-ceo-message-embed {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  box-shadow: var(--youtube-box-shadow, 15px 15px 0px 0px rgba(173, 198, 243, 1));
}

/* Products page specific styles */
.products,
.products * {
  box-sizing: border-box;
}

.digital-twin {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}

.digital-twin-liquid-metal-twin-builder {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 100%;
  max-width: 1440px;
}

.products {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.frame-2307 {
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.image-40 {
  flex: 1;
  min-width: 360px;
  position: relative;
  display: block;
  width: 100%;
  height: auto;
}
.digital-twin2 {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
  min-width: 360px;
}
.youtube-liquid-metal {
  flex: 1;
  height: 360px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-2303 {
  padding: 0px 16px 0px 16px;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.image-39 {
  flex: 1;
  min-width: 360px;
  position: relative;
}
.liquid-metal-liquid-metal-tm-twin-builder-16-1-u-gui {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
  min-width: 360px;
}
.frame-2300 {
  background: var(--background-default, #fef2eb);
  border-radius: 20px;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2365 {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
  max-width: 1440px;
  position: relative;
}
.div-products {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 28px;
  line-height: 200%;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
  align-self: stretch;
}
.frame-2304 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2319 {
  background: #ffffff;
  border-radius: 20px;
  padding: 32px 24px 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
}
.image-11 {
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
  aspect-ratio: 652/123;
}
.frame-2302 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-48099614 {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.check-circle {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  position: relative;
  overflow: visible;
}
.gui {
  color: #525d77;
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
}
.frame-1451 {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.frame-1452 {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.liquid-metal {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
  min-width: 360px;
}
.frame-12-products {
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div2-products {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  width: 1440px;
}
.div3-products {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-23072 {
  background: #ffffff;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 4px 0px 0px 0px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2305 {
  padding: 16px 0px 16px 0px;
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div4-products {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
}
.vm-docker {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
}
.docker {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
}
.frame-2309 {
  background: var(--background-default, #fef2eb);
  padding: 16px 0px 16px 0px;
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.text {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
}
.tagged-vlam {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  flex: 1;
}
.frame-23092 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2308 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2311 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-23052 {
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 0px 0px 4px 0px;
  padding: 16px 0px 16px 0px;
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2314 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2312 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2313 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2315 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2318 {
  background: #ffffff;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 0px 0px 4px 0px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.liquid-metal2 {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.liquid-metal-digital-twin {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
}
.frame-48099616 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.enterprise {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.apartment-24-dp-5-f-6368-fill-0-wght-400-grad-0-opsz-24-1 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
  object-fit: cover;
}
.liquid-metal-twin-builder {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-138 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-2299 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  min-width: 360px;
  position: relative;
}
.div5 {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 1440px;
}
.frame-137 {
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px 30px 40px 30px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
  overflow: hidden;
}
.open-flow-1-3-sdn {
  color: var(--gray-100, #525d77);
  text-align: left;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.open-v-net-2014-wakame-vdc-software-defined-network-sdn-open-flow-1-3 {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.link-to-history-9-products {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
._2024 {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-decoration: underline;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.open-v-net {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-decoration: underline;
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-14522 {
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px 30px 40px 30px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
  overflow: hidden;
}
.frame-23093 {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div6 {
  color: var(--gray-100, #525d77);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.wakame-vdc-2010 {
  color: var(--gray-100, #525d77);
  text-align: left;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.eosl-ntt-web-arena-vps {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.link-to-wakame {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
._2013 {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-decoration: underline;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.wakame-vdc {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-decoration: underline;
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-1453 {
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px 30px 40px 30px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
  overflow: hidden;
}
.aws {
  color: var(--gray-100, #525d77);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.wakame-2009 {
  color: var(--gray-100, #525d77);
  text-align: left;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.aws2 {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.link-to-history-3-products {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.aws-wakame {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-decoration: underline;
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-2240 {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.sdn-sdn-digital-twin-liquid-metal-tm-twin-builder-sdn-software-defined-networking {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
  min-width: 360px;
}


.frame-13 {
  background: var(--primary, #f98235);
  padding: 24px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

/* レスポンシブデザイン用メディアクエリ */
@media (max-width: 1024px) {
  .frame-22422,
  .frame-22982,
  .frame-2307,
  .frame-2303,
  .frame-2304 {
    flex-direction: column;
    gap: 20px;
  }
  
  .link-to-solutions,
  .youtube-infrastructure-1,
  .youtube-infrastructure-2,
  .youtube-infrastructure-3,
  .image-40,
  .digital-twin2,
  .youtube-liquid-metal,
  .image-39,
  .liquid-metal-liquid-metal-tm-twin-builder-16-1-u-gui {
    min-width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 800px) {
  .frame-22422,
  .frame-22982,
  .frame-2307,
  .frame-2303,
  .frame-2304 {
    padding: 0 16px;
    gap: 16px;
  }
  
  .link-to-solutions {
    min-width: 100%;
    max-width: 100%;
  }
  
  .frame-2293 {
    min-width: 100%;
    max-width: 100%;
    padding: 40px 16px;
  }
  
  .frame {
    width: 100%;
    max-width: 100%;
  }
  
  .frame-1 {
    max-width: 100%;
    padding: 16px;
  }
  
  .enlightened-enterprise-computing {
    font-size: 32px;
  }
  
  .div-products {
    font-size: 24px;
  }
  
  .youtube-ceo-message-container {
    max-width: 100%;
    padding: 0 16px;
  }
  
  .frame-23792 {
    min-width: 100%;
    max-width: 100%;
  }
  
  /* その他の要素の幅調整 */
  .image2,
  .image3,
  .image4,
  .image-40,
  .image-39 {
    min-width: 100%;
    max-width: 100%;
  }
  
  .sdn-sdn,
  .it,
  .ai,
  .digital-twin2,
  .liquid-metal-liquid-metal-tm-twin-builder-16-1-u-gui {
    min-width: 100%;
    max-width: 100%;
  }
  
  .map {
    width: 100%;
    max-width: 100%;
  }
  
  .frame-1461,
  .frame-2242 {
    padding: 0 16px;
  }
}

@media (max-width: 480px) {
  .frame-22422,
  .frame-22982,
  .frame-2307,
  .frame-2303,
  .frame-2304 {
    padding: 0 8px;
    gap: 12px;
  }
  
  .enlightened-enterprise-computing {
    font-size: 28px;
  }
  
  .div-products {
    font-size: 20px;
  }
  
  .frame-13 {
    padding: 16px 8px 32px 8px;
  }
}

/* Careers page specific styles */
.careers,
.careers * {
  box-sizing: border-box;
}
.careers {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.frame-1353-careers {
  background: var(--primary, #f98235);
  padding: 0px 0px 60px 0px;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2293-careers {
  background: #ffffff;
  border-radius: 0px 0px 20px 0px;
  padding: 70px 16px 70px 16px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 480px;
  max-width: 1000px;
  position: relative;
}
.frame-careers {
  flex-shrink: 0;
  width: 379px;
  height: 58px;
  position: relative;
  overflow: visible;
}
.frame-1-careers {
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex: 1;
  max-width: 640px;
  position: relative;
}
.div-careers {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-2245-careers {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div2-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.div3-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-2246-careers {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div4-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 1320px;
  max-width: 1440px;
}
.frame-1461-careers {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.image-careers {
  flex: 1;
  min-width: 360px;
  position: relative;
}
.div5-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
  height: 240px;
  min-width: 360px;
}
.frame-2247-careers {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2298-careers {
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-141-careers {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 24px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 360px;
  position: relative;
  overflow: hidden;
}
.div6-careers {
  color: var(--gray-100, #525d77);
  text-align: center;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-2352-careers {
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: flex-end;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div7-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 40px;
  line-height: 200%;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
._20-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 80px;
  letter-spacing: 0.04em;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-2238-careers {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 24px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 360px;
  position: relative;
  overflow: hidden;
}
._35-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 80px;
  letter-spacing: 0.04em;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-2239-careers {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 24px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 360px;
  position: relative;
  overflow: hidden;
}
._4-1-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 80px;
  letter-spacing: 0.04em;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-2240-careers {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 24px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 360px;
  position: relative;
  overflow: hidden;
}
._100-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 80px;
  letter-spacing: 0.04em;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-2241-careers {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 24px 24px 40px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 360px;
  position: relative;
  overflow: hidden;
}
._611-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 80px;
  letter-spacing: 0.04em;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-2248-careers {
  background: #ffffff;
  padding: 40px 16px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.image2-careers {
  flex: 1;
  min-width: 360px;
  position: relative;
}
.frame-2379-careers {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
}
.label-careers {
  background: #f98235;
  border-radius: 20px;
  padding: 20px 24px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: center;
  flex-shrink: 0;
  position: relative;
}
.point-careers {
  color: #ffffff;
  text-align: left;
  font-family: "NotoSansJp-Bold", sans-serif;
  font-size: 28px;
  line-height: 100%;
  letter-spacing: 0.02em;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
._10-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-2254-careers {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
._500-2021-611-10-5-5-1-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.section-careers {
  border-radius: 40px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  height: 120px;
  min-height: 120px;
  position: relative;
  overflow: hidden;
  object-fit: cover;
}
.frame-2250-careers {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2242-careers {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: row;
  row-gap: 16px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.image3-careers {
  flex: 1;
  min-width: 360px;
  position: relative;
}
.div8-careers {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.hack-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-2243-careers {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: row;
  row-gap: 16px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.div9-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-2244-careers {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: row;
  row-gap: 16px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-2255-careers {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

.div10-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: "-", sans-serif;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.02em;
  font-weight: 400;
  position: relative;
  flex: 1;
  min-width: 360px;
}
.div-10-span-careers {
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
}
.div-10-span2-careers {
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
}
.youtube-career {
  flex: 1;
  height: 360px;
  min-width: 360px;
  min-height: 185.14px;
  position: relative;
  overflow: hidden;
  aspect-ratio: 700/360;
}
.frame-22432-careers {
  background: #ffffff;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2364-careers {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-1450-careers {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-22982-careers {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.youtube-interview-1 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-interview-2 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-interview-3 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-interview-4 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-interview-5 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.youtube-interview-6 {
  flex: 1;
  height: 240px;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-2252-careers {
  background: var(--background-default, #fef2eb);
  border-radius: 40px;
  padding: 60px 16px 60px 16px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div11-careers {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 1440px;
}
.list-accordion-careers {
  background: #f98235;
  border-radius: 20px;
  padding: 24px 32px 24px 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  flex-shrink: 0;
  max-width: 1200px;
  position: relative;
}
.frame-1537-careers {
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div12-careers {
  color: #ffffff;
  text-align: left;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.expand-circle-up {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  position: relative;
  overflow: visible;
}
.frame-1538-careers {
  background: #ffffff;
  border-radius: 10px;
  padding: 20px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div13-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  flex: 1;
}
.expand-circle-down {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  position: relative;
  overflow: visible;
}

/* Solutions page specific styles */
.solutions,
.solutions * {
  box-sizing: border-box;
}
.solutions {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.frame-1353 {
  background: var(--primary, #f98235);
  padding: 0px 0px 60px 0px;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2293 {
  background: #ffffff;
  border-radius: 0px 0px 20px 0px;
  padding: 70px 16px 70px 16px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 480px;
  max-width: 1000px;
  position: relative;
}
.frame {
  flex-shrink: 0;
  width: 476px;
  height: 58px;
  position: relative;
  overflow: visible;
}
.frame-1 {
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex: 1;
  max-width: 640px;
  position: relative;
}
.it {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-2243 {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2364 {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-1450 {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.solution {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.ci-cd-ai {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-2298 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-140 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.enterprise {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--contents-title-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-font-size, 28px);
  line-height: var(--contents-title-line-height, 140%);
  letter-spacing: var(--contents-title-letter-spacing, 0.02em);
  font-weight: var(--contents-title-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.image-solutions {
  flex-shrink: 0;
  width: 120px;
  position: relative;
}
.liquid-metal-twin-builder {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-141 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-142 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-143 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-144 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}
.frame-145 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  position: relative;
  overflow: hidden;
}

.frame-23642 {
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-22982 {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1000px;
  position: relative;
}
.frame-2249-solutions {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-1 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
  overflow: hidden;
}
.group-1530 {
  height: auto;
  position: absolute;
  left: 50%;
  translate: -50% -50%;
  top: 50%;
  overflow: visible;
}
.bit-torrent {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "NotoSansJp-Medium", sans-serif;
  font-size: 14px;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-weight: 500;
  position: relative;
  align-self: stretch;
}
.frame-2251-solutions {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-2 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
}
.group-1531 {
  height: auto;
  position: absolute;
  left: 50%;
  translate: -50% -50%;
  top: 50%;
  overflow: visible;
}
.frame-22452 {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-3 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
}
.vector {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  left: 0%;
  bottom: 0%;
  top: 0%;
  transform: translate(0px, 0px);
  overflow: visible;
}
.vector2 {
  width: 12.4%;
  height: 20.27%;
  position: absolute;
  right: 42.48%;
  left: 45.12%;
  bottom: 26.05%;
  top: 53.68%;
  overflow: visible;
}
.vector3 {
  width: 13.64%;
  height: 21.51%;
  position: absolute;
  right: 41.86%;
  left: 44.5%;
  bottom: 25.43%;
  top: 53.06%;
  overflow: visible;
}
.group2 {
  width: 55.87%;
  height: 48.52%;
  position: absolute;
  right: 22.23%;
  left: 21.9%;
  bottom: 46.15%;
  top: 5.33%;
  overflow: visible;
}
.vector4 {
  width: 30.09%;
  height: 35.15%;
  position: absolute;
  right: 37.87%;
  left: 32.04%;
  bottom: 35.05%;
  top: 29.8%;
  overflow: visible;
}
.vector5 {
  width: 20.48%;
  height: 36%;
  position: absolute;
  right: 48.11%;
  left: 31.41%;
  bottom: 34.44%;
  top: 29.56%;
  overflow: visible;
}
.vector6 {
  width: 4.17%;
  height: 8.38%;
  position: absolute;
  right: 33.19%;
  left: 62.64%;
  bottom: 48.56%;
  top: 43.06%;
  overflow: visible;
}
.vector7 {
  width: 6.88%;
  height: 2.67%;
  position: absolute;
  right: 58.05%;
  left: 35.07%;
  bottom: 63.48%;
  top: 33.85%;
  overflow: visible;
}
.vector8 {
  width: 1.9%;
  height: 2.35%;
  position: absolute;
  right: 60.28%;
  left: 37.82%;
  bottom: 59.75%;
  top: 37.9%;
  overflow: visible;
}
.vector9 {
  width: 6.64%;
  height: 3.34%;
  position: absolute;
  right: 48.77%;
  left: 44.59%;
  bottom: 61.93%;
  top: 34.73%;
  overflow: visible;
}
.vector10 {
  width: 1.9%;
  height: 2.35%;
  position: absolute;
  right: 51.91%;
  left: 46.19%;
  bottom: 58.81%;
  top: 38.84%;
  overflow: visible;
}
.vector11 {
  width: 3.7%;
  height: 6.51%;
  position: absolute;
  right: 56.81%;
  left: 39.49%;
  bottom: 54.8%;
  top: 38.69%;
  overflow: visible;
}
.vector12 {
  width: 8.44%;
  height: 6.7%;
  position: absolute;
  right: 48.37%;
  left: 43.19%;
  bottom: 49.34%;
  top: 43.96%;
  overflow: visible;
}
.vector13 {
  width: 15.93%;
  height: 9.84%;
  position: absolute;
  right: 41.37%;
  left: 42.71%;
  bottom: 23.8%;
  top: 66.36%;
  overflow: visible;
}
.vector14 {
  width: 54.43%;
  height: 26.15%;
  position: absolute;
  right: 21.91%;
  left: 23.66%;
  bottom: 0%;
  top: 73.85%;
  overflow: visible;
}
.vector15 {
  width: 9.18%;
  height: 10.71%;
  position: absolute;
  right: 37.25%;
  left: 53.57%;
  bottom: 37.01%;
  top: 52.27%;
  overflow: visible;
}
.frame-2246-solutions {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-4 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
}
.vector16 {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  left: 0%;
  bottom: 0%;
  top: 0%;
  transform: translate(0px, 0px);
  overflow: visible;
}
.group-1534 {
  width: 67.07%;
  height: 71.97%;
  position: absolute;
  right: 16.26%;
  left: 16.67%;
  bottom: 18.86%;
  top: 9.17%;
  overflow: visible;
}
.frame-2247-solutions {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-5 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
}
.vector17 {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  left: 0%;
  bottom: 0%;
  top: 0%;
  transform: translate(0px, 0px);
  overflow: visible;
}
.group-1535 {
  height: auto;
  position: absolute;
  left: 23px;
  top: 11px;
  overflow: visible;
}
.frame-2248-solutions {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-6 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
}
.vector18 {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  left: 0%;
  bottom: 0%;
  top: 0%;
  transform: translate(0px, 0px);
  overflow: visible;
}
.group-1536 {
  height: auto;
  position: absolute;
  left: 23px;
  top: 10px;
  overflow: visible;
}
.frame-2250-solutions {
  background: var(--, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 200px;
  max-width: 300px;
  position: relative;
}
.man-7 {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  position: relative;
}
.vector19 {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  left: 0%;
  bottom: 0%;
  top: 0%;
  transform: translate(0px, 0px);
  overflow: visible;
}
.vector20 {
  width: 32.82%;
  height: 32.82%;
  position: absolute;
  right: 61%;
  left: 6.18%;
  bottom: 7.42%;
  top: 59.77%;
  transform: translate(7.97px, -22.88px);
  overflow: visible;
}
.vector21 {
  width: 68%;
  height: 61.21%;
  position: absolute;
  right: 13.28%;
  left: 18.72%;
  bottom: 28.55%;
  top: 10.25%;
  overflow: visible;
}
.group3 {
  width: 18.87%;
  height: 27.73%;
  position: absolute;
  right: 43.57%;
  left: 37.56%;
  bottom: 30.67%;
  top: 41.61%;
  overflow: visible;
}
.group4 {
  width: 28.41%;
  height: 33.53%;
  position: absolute;
  right: 36.69%;
  left: 34.9%;
  bottom: 42.98%;
  top: 23.49%;
  overflow: visible;
}
.vector22 {
  width: 8.52%;
  height: 7.89%;
  position: absolute;
  right: 53.11%;
  left: 38.36%;
  bottom: 44.41%;
  top: 47.7%;
  overflow: visible;
}
.vector23 {
  width: 2.45%;
  height: 3.41%;
  position: absolute;
  right: 48.85%;
  left: 48.7%;
  bottom: 63.04%;
  top: 33.55%;
  overflow: visible;
}
.vector24 {
  width: 7.34%;
  height: 5.31%;
  position: absolute;
  right: 42.89%;
  left: 49.77%;
  bottom: 50.04%;
  top: 44.65%;
  overflow: visible;
}
.vector25 {
  width: 4.05%;
  height: 9.1%;
  position: absolute;
  right: 41.25%;
  left: 54.7%;
  bottom: 58.89%;
  top: 32.01%;
  overflow: visible;
}
.vector26 {
  width: 6.62%;
  height: 8.4%;
  position: absolute;
  right: 61.28%;
  left: 32.11%;
  bottom: 55.53%;
  top: 36.08%;
  overflow: visible;
}
.vector27 {
  width: 7.24%;
  height: 2.73%;
  position: absolute;
  right: 46.81%;
  left: 45.95%;
  bottom: 66.33%;
  top: 30.94%;
  overflow: visible;
}
.vector28 {
  width: 2.42%;
  height: 3.44%;
  position: absolute;
  right: 38.75%;
  left: 58.83%;
  bottom: 63.08%;
  top: 33.49%;
  overflow: visible;
}
.vector29 {
  width: 7.24%;
  height: 2.73%;
  position: absolute;
  right: 36.7%;
  left: 56.06%;
  bottom: 66.37%;
  top: 30.89%;
  overflow: visible;
}
.vector30 {
  width: 10.6%;
  height: 10.91%;
  position: absolute;
  right: 59.84%;
  left: 29.56%;
  bottom: 46.19%;
  top: 42.9%;
  overflow: visible;
}
.vector31 {
  width: 13.89%;
  height: 1.24%;
  position: absolute;
  right: 34.57%;
  left: 51.54%;
  bottom: 24.25%;
  top: 74.51%;
  transform: translate(0px, -16.49px);
  overflow: visible;
}
.vector32 {
  width: 58.02%;
  height: 39.31%;
  position: absolute;
  right: 26.16%;
  left: 15.82%;
  bottom: 0%;
  top: 60.69%;
  overflow: visible;
}
.vector33 {
  width: 59.26%;
  height: 34.54%;
  position: absolute;
  right: 25.55%;
  left: 15.2%;
  bottom: 5.38%;
  top: 60.08%;
  overflow: visible;
}
.group5 {
  width: 19.45%;
  height: 19.6%;
  position: absolute;
  right: 45.16%;
  left: 35.39%;
  bottom: 24.37%;
  top: 56.03%;
  overflow: visible;
}
.ros-lte-epc {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-22462 {
  background: var(--background-default, #fef2eb);
  border-radius: 20px;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}

.div-top-careers {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}

.div2-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-48099615 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-2350 {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div3 {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.div4 {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frame-146 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-147 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-149 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-150 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-151 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-1402 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-1412 {
  background: #ffffff;
  border-radius: 60px;
  border-style: solid;
  border-color: var(--stroke, #e5e7ed);
  border-width: 1px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 450px;
  position: relative;
  overflow: hidden;
}
.frame-22472 {
  background: #ffffff;
  padding: 80px 16px 80px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.client {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
.image2 {
  flex: 1;
  min-width: 160px;
  max-width: 240px;
  position: relative;
}
.section {
  border-radius: 40px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  height: 120px;
  min-height: 120px;
  position: relative;
  overflow: hidden;
  object-fit: cover;
}
/* Contact固有のCSS */
.contact-no-form,
.contact-no-form * {
  box-sizing: border-box;
}
.contact-no-form {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.frame-1353-contact {
  background: var(--primary, #f98235);
  padding: 0px 0px 60px 0px;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2293-contact {
  background: #ffffff;
  border-radius: 0px 0px 20px 0px;
  padding: 70px 16px 70px 16px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 480px;
  max-width: 1000px;
  position: relative;
}
.frame-contact {
  flex-shrink: 0;
  width: 419px;
  height: 58px;
  position: relative;
  overflow: visible;
}
.frame-1-contact {
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex: 1;
  max-width: 640px;
  position: relative;
}
.div-contact {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-2245-contact {
  background: #ffffff;
  padding: 40px 16px 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.div2-contact {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  width: 1440px;
}
.frame-53-contact {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 800px;
  position: relative;
}
.div3-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-48099716-contact {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-48099717-contact {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.phone-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
}
._03-6300-7624-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-48099718-contact {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.email-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
}
.info-at-axsh-net-at-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-48099719-contact {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.address-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  align-self: stretch;
}
._151-0051-3-24-8-r-1-contact {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}


/* History固有のCSS */
.history-1,
.history-1 * {
  box-sizing: border-box;
}

.link-to-history-1-white {
  background: var(--whiteffffff, #ffffff);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.year-white {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--contents-title-small-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-small-font-size, 16px);
  line-height: var(--contents-title-small-line-height, 160%);
  letter-spacing: var(--contents-title-small-letter-spacing, 0.02em);
  font-weight: var(--contents-title-small-font-weight, 700);
  position: relative;
  align-self: stretch;
  height: 22.14px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.text-white {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--contents-title-small-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-small-font-size, 16px);
  line-height: var(--contents-title-small-line-height, 160%);
  letter-spacing: var(--contents-title-small-letter-spacing, 0.02em);
  font-weight: var(--contents-title-small-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.description-text-history {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--contents-title-small-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-small-font-size, 16px);
  line-height: var(--contents-title-small-line-height, 160%);
  letter-spacing: var(--contents-title-small-letter-spacing, 0.02em);
  font-weight: var(--contents-title-small-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.link-to-history-2-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-3-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-4-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-5-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-6-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-7-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-8-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-9-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-3-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-4-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-5-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-6-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-7-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-8-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.link-to-history-9-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.history-1 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.frame-1353-history {
  background: var(--primary, #f98235);
  padding: 0px 0px 60px 0px;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2293-history {
  background: #ffffff;
  border-radius: 0px 0px 20px 0px;
  padding: 70px 16px 70px 16px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 480px;
  max-width: 1000px;
  position: relative;
}
.frame-history {
  flex-shrink: 0;
  width: 367px;
  height: 58px;
  position: relative;
  overflow: visible;
}
.frame-1-history {
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex: 1;
  max-width: 640px;
  position: relative;
}
.digital-twin-digital-twin-history {
  color: var(--whiteffffff, #ffffff);
  text-align: left;
  font-family: var(--body-bold-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--body-bold-font-size, 20px);
  line-height: var(--body-bold-line-height, 200%);
  letter-spacing: var(--body-bold-letter-spacing, 0.02em);
  font-weight: var(--body-bold-font-weight, 700);
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.frame-2240-history {
  background: var(--, #ffffff);
  padding: 60px 16px 60px 16px;
  display: flex;
  flex-direction: column;
  gap: 80px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-2380-history {
  display: flex;
  flex-direction: row;
  gap: 80px;
  row-gap: 40px;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  flex-shrink: 0;
  max-width: 1440px;
  position: relative;
}
.frame-2360-history {
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 1000px;
  position: relative;
}
._1-ntt-history {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--title-section-font-family, "Poppins-SemiBold", sans-serif);
  font-size: var(--title-section-font-size, 40px);
  letter-spacing: var(--title-section-letter-spacing, 0.04em);
  font-weight: var(--title-section-font-weight, 600);
  position: relative;
  align-self: stretch;
}
._2006-6-2-99-ntt-ntt-ntt-ntt-ntt-ntt-r-d-jal-jal-ntt-liberty-alliance-history {
  color: var(--text-default, #282828);
  text-align: left;
  font-family: var(--body-default-font-family, "NotoSansJp-Medium", sans-serif);
  font-size: var(--body-default-font-size, 20px);
  line-height: var(--body-default-line-height, 200%);
  letter-spacing: var(--body-default-letter-spacing, 0.02em);
  font-weight: var(--body-default-font-weight, 500);
  position: relative;
  align-self: stretch;
}
.frame-73-history {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  min-width: 360px;
  max-width: 480px;
  position: relative;
  overflow: hidden;
}
.frame-101-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-12-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-1-orange {
  background: var(--primary, #f98235);
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.frame-2339-history {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.arrow-circle-right-history {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  position: relative;
  overflow: visible;
}
.frame-98-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-13-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-2-white {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}
.year-orange {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--contents-title-small-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-small-font-size, 16px);
  line-height: var(--contents-title-small-line-height, 160%);
  letter-spacing: var(--contents-title-small-letter-spacing, 0.02em);
  font-weight: var(--contents-title-small-font-weight, 700);
  position: relative;
  align-self: stretch;
  height: 22.14px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.text-orange {
  color: var(--primary, #f98235);
  text-align: left;
  font-family: var(--contents-title-small-font-family, "NotoSansJp-Bold", sans-serif);
  font-size: var(--contents-title-small-font-size, 16px);
  line-height: var(--contents-title-small-line-height, 160%);
  letter-spacing: var(--contents-title-small-letter-spacing, 0.02em);
  font-weight: var(--contents-title-small-font-weight, 700);
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.frame-99-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-14-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-3-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.frame-100-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-15-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-4-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.frame-102-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-16-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-5-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.frame-103-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-17-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-6-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.frame-104-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-18-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-7-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.frame-105-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-19-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-8-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

.frame-106-history {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}
.frame-110-history {
  flex-shrink: 0;
  width: 16px;
  height: 120px;
  position: relative;
  overflow: visible;
}
.link-to-history-9-history {
  border-radius: 20px;
  border-style: solid;
  border-color: var(--primary, #f98235);
  border-width: 2px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  position: relative;
}

/* ヘッダー */
/* リンクの下線を削除 */
a {
  text-decoration: none !important;
}

/* CSS変数の定義 */
:root {
  --primary: #f98235;
  --whiteffffff: #ffffff;
  --text-default: #282828;
}
/* すべてのナビゲーションリンクの基本スタイル */
.link-to-nav-1,
.link-to-nav-2,
.link-to-nav-3,
.link-to-nav-4,
.link-to-nav-5 {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  position: relative;
  margin-bottom: 0;
}

.frame-2382 {
  padding: 0px 16px 0px 0px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  position: relative;
}

.frame-2293 {
  background: #ffffff;
  border-radius: 0px 0px 20px 0px;
  padding: 70px 16px 70px 16px;
  display: flex;
  flex-direction: row;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-width: 480px;
  max-width: 1000px;
  position: relative;
}
  .nav {
    max-width: 100%;
  }
  
 
  
  .link-to-nav-1,
  .link-to-nav-2,
  .link-to-nav-3,
  .link-to-nav-4,
  .link-to-nav-5 {
    padding: 16px 8px 16px 8px;
    max-width: 100%;
  }
  
  .link-aboutus,
  .link-products,
  .link-solutions,
  .link-careers,
  .link-contact {
    font-size: 16px;
  }

.link-to-nav-1 {
  border-radius: 16px;
  padding: 22px 24px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}

.link-to-nav-2 {
  padding: 32px 24px 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}
.link-to-nav-3 {
  padding: 32px 24px 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}
.link-to-nav-4 {
  padding: 32px 24px 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}
.link-to-nav-5 {
  background: #ffffff;
  padding: 32px 24px 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}

.link-to-github {
  background: #ffffff;
  padding: 32px 24px 32px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  height: 80px;
  max-width: 502.3px;
  position: relative;
}
.github-mark-1 {
  flex-shrink: 0;
  width: 24px;
  height: 23.51px;
  position: relative;
  overflow: visible;
}
.frame-2247 {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
}

/* ページごとのヘッダースタイル */

.page-top .link-aboutus {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-top .link-products {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-top .link-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-top .link-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-top .link-contact {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-aboutus .link-to-nav-1 {
  background: var(--primary, #f98235);
  border-radius: 16px;
  padding: 22px 24px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}

.page-aboutus .link-aboutus {
  color: var(--whiteffffff, #ffffff);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-aboutus .link-products {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-aboutus .link-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-aboutus .link-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-aboutus .link-contact {
  color: var(--primary, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-products .link-to-nav-2 {
    background: var(--primary, #f98235);
    border-radius: 16px;
    padding: 22px 24px 22px 24px;
    display: flex;
    flex-direction: column;
    gap: 0px;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    max-width: 502.3px;
    position: relative;
}

.page-products .link-products {
  color: var(--text-whiteffffff, #ffffff);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-products .link-aboutus {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-products .link-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-products .link-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-products .link-contact {
  color: var(--primary, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-solutions .link-to-nav-3 {
  background: var(--primary, #f98235);
  border-radius: 16px;
  padding: 22px 24px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}

.page-solutions .link-solutions {
  color: var(--text-whiteffffff, #ffffff);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-solutions .link-aboutus {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-solutions .link-products {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-solutions .link-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-solutions .link-contact {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-careers .link-to-nav-4 {
  background: var(--primary, #f98235);
  border-radius: 16px;
  padding: 22px 24px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}

.page-careers .link-careers {
  color: var(--text-whiteffffff, #ffffff);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-careers .link-aboutus {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-careers .link-products {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-careers .link-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-careers .link-contact {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-contact .link-to-nav-5 {
  background: var(--primary, #f98235);
  border-radius: 16px;
  padding: 22px 24px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  max-width: 502.3px;
  position: relative;
}

.page-contact .link-contact {
  color: var(--text-whiteffffff, #ffffff);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-contact .link-aboutus {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-contact .link-products {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-contact .link-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-contact .link-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-contact .link-contact {
  color: var(--whiteffffff, #ffffff);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-history .link-aboutus {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-history .link-products {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-history .link-solutions {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-history .link-careers {
  color: var(--text-default, #282828);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-history .link-contact {
  color: var(--primary, #f98235);
  text-align: center;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 20px;
  line-height: 16px;
  font-weight: 600;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* モバイルメニューのスタイル */
.mobile-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  pointer-events: none;
}

.mobile-menu-overlay.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.mobile-menu-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 400px;
  height: 100vh;
  background-color: #ffffff;
  transform: translateX(-100%);
  transition: transform 0.3s ease;
  display: flex;
  flex-direction: column;
  box-shadow: 2px 0 10px rgba(0,0,0,0.1);
  z-index: 1000000;
  overflow-y: auto;
}

.mobile-menu-overlay.active .mobile-menu-content {
  transform: translateX(0);
}

.mobile-menu-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid #e0e0e0;
}

.button-menu-close {
  background: #ffffff;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 8px;
  transition: background-color 0.3s ease;
}

.button-menu-close:hover {
  background-color: #f5f5f5;
}

.close {
  width: 24px;
  height: 24px;
}

.mobile-menu-links {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 16px 0;
}

.mobile-nav-link {
  color: #282828;
  font-family: "Poppins-SemiBold", sans-serif;
  font-size: 18px;
  font-weight: 600;
  padding: 20px 24px;
  border-bottom: 1px solid #f0f0f0;
  transition: background-color 0.3s ease;
}

.mobile-nav-link:hover {
  background-color: #f5f5f5;
}

.mobile-nav-link.github-link {
  display: flex;
  align-items: center;
  gap: 12px;
}

.github-icon {
  width: 20px;
  height: 20px;
}

.button-menu-open {
  background: #ffffff;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 8px;
  transition: background-color 0.3s ease;
  border: 1px solid #e0e0e0;
  min-width: 48px;
  min-height: 48px;
}

.button-menu-open:hover {
  background-color: #f5f5f5;
}

.menu {
  width: 24px;
  height: 24px;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .desktop-nav {
    display: none !important;
  }
  
  .mobile-nav {
    display: flex !important;
  }
}

@media (min-width: 769px) {
  .mobile-nav {
    display: none !important;
  }
  
  .desktop-nav {
    display: flex !important;
  }
}
