:root {
  --color-primary: #FAF7EE;
  --color-secondary: #D9E3EF;
  --color-accent: #AD9F8A;
  --color-background-1: #FFFFFF;
  --color-background-2: #0B1130;
  --color-background-3: #A78DAC;
  --color-underline-1: #0B1130;
  --color-underline-2: #D9E3EF;
  --color-underline-3: #A78DAC;
  --color-botton: #A78DAC;
  --color-text-1: #A78DAC;
  --color-text-2: #111111;
  --color-red: #CC1515;
  --font-family-1: "Noto Sans JP", sans-serif;
  --font-family-2: "Baskervville", serif;
  --font-size-base: clamp(16px, calc(1rem + ((1vw - 13.66px) * 0.5415)), 19px);
  --font-size-mv-title: 50px;
  --font-size-sec-title: 40px;
  --font-size-big: clamp(35px, calc(2.1875rem + ((1vw - 13.66px) * 0.9025)), 40px);
  --font-size-lg: clamp(32px, calc(2rem + ((1vw - 13.66px) * 0.5415)), 35px);
  --font-size-secTitle: clamp(28px, calc(1.75rem + ((1vw - 13.66px) * 0.722)), 32px);
  --font-size-copy: clamp(24px, calc(1.5rem + ((1vw - 13.66px) * 0.722)), 28px);
  --font-size-form-btn: clamp(20px, calc(1.25rem + ((1vw - 13.66px) * 0.722)), 24px);
  --font-size-md: clamp(18px, calc(1.125rem + ((1vw - 13.66px) * 0.5415)), 21px);
  --font-size-16: clamp(16px, calc(1rem + ((1vw - 13.66px) * 0.5415)), 19px);
  --font-size-sm: clamp(14px, calc(0.875rem + ((1vw - 13.66px) * 0.361)), 16px);
  --font-size-mini: clamp(12px, calc(0.75rem + ((1vw - 13.66px) * 0.361)), 14px);
  --font-size-10: clamp(10px, calc(0.625rem + ((1vw - 13.66px) * 0.361)), 12px);
  --breakpoint-sp: 768px;
  --width-main: 1440px;
  --width-contents: 1080px;
  --width-base: 75%;
  --spacing-base: 4vh;
  --spacing-lg: 8vh;
  --spacing-big: 14vh;
  --variable-range-1: clamp(60px, calc(3.75rem + ((1vw - 13.66px) * 3.6101)), 80px);
  --variable-range-2: clamp(50px, calc(3.125rem + ((1vw - 13.66px) * 12.6354)), 120px);
  --grid-range-1: clamp(300px, calc(18.75rem + ((1vw - 13.66px) * 24.3682)), 435px);
}

@media (max-width: 430px) {
  :root {
    --font-size-base: 14px;
    --font-size-mv-title: 45px;
    --font-size-secTitle: 21px;
    --font-size-24: 24px;
    --width-main: 420px;
    --width-contents: 340px;
    --width-base: 90%;
    --spacing-base: 5dvh;
    --spacing-lg: 7dvh;
    --spacing-big: 9dvh;
  }
}
@media (max-width: 430px) {
  html {
    width: 100dvw;
  }
}

body {
  font-family: var(--font-family-1);
  font-size: var(--font-size-base);
  overflow-x: hidden;
  width: 100%;
}

h2, h3 {
  font-weight: 400;
}

p {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}

a {
  text-decoration: none;
  color: black;
  cursor: pointer;
}

ul {
  list-style: none;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}

section {
  margin-bottom: var(--spacing-big);
}
section:last-of-type {
  margin-bottom: 0;
}

img {
  -o-object-fit: cover;
     object-fit: cover;
}

.button-links {
  display: inline-block;
  margin-top: 5vh;
}
.button-links.newsBtn {
  color: white;
  margin-top: 0;
}
.button-links.tecBtn {
  color: white;
  margin-top: 10vh;
  padding-bottom: 10vh;
  display: flex;
  justify-content: flex-end;
}

.button-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1vw;
}
.button-container .button-text {
  position: relative;
  display: inline-block;
  padding-bottom: 4px;
}
.button-container .button-text:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: var(--color-underline-3);
}
.button-container .circle-button {
  width: 62px;
  height: 62px;
  background-color: var(--color-botton);
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.button-container .circle-button .arrow {
  border-top: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
  width: 18px;
  height: 18px;
  display: inline-block;
  rotate: 45deg;
  position: absolute;
  left: 18px;
}

.baseTitle .title {
  font-size: var(--font-size-secTitle);
}
.baseTitle .subTitle {
  font-size: var(--font-size-sm);
  font-family: var(--font-family-2);
  color: var(--color-text-1);
}

.accordion-point {
  position: relative;
}
.accordion-point .accordion-icon {
  position: absolute;
  top: calc(50% - 4vh);
  right: 0;
  width: 25px;
  height: 25px;
  cursor: pointer;
}
@media (max-width: 430px) {
  .accordion-point .accordion-icon {
    top: calc(50% - 8vh);
    width: 20px;
    height: 20px;
  }
}
.accordion-point .accordion-icon.comp {
  top: 50%;
  translate: 0 -50%;
}
.accordion-point .accordion-icon:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  border-top: 1px solid #000;
  width: 100%;
}
.accordion-point .accordion-icon:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  border-left: 1px solid #000;
  height: 100%;
  opacity: 1;
  rotate: 180deg;
  transition: rotate 0.5s, opacity 0.5s;
}
.accordion-point .accordion-icon.open:after {
  rotate: 90deg;
  opacity: 0;
}

.accordionWrap {
  overflow: hidden;
  position: relative;
  max-height: 0;
  transition: max-height 0.8s ease;
}
.accordionWrap-box {
  position: absolute;
  left: 50%;
  translate: -50% 0;
  padding-top: 50px;
}
.accordionWrap.open .js-organization-img-box, .accordionWrap.open .js-co-img-box, .accordionWrap.open .js-ea-img-box, .accordionWrap.open .js-society-box {
  padding-top: 50px;
}

.accordionWrap {
  height: 100%;
}
.accordionWrap.open {
  max-height: 260vh;
}
@media (max-width: 430px) {
  .accordionWrap.open {
    max-height: 260vh;
  }
}

.pointer {
  cursor: pointer;
}

.container {
  min-width: var(--width-contents);
  width: var(--width-base);
  margin: 0 auto;
}

.breadcrumb-item:not(.active):after {
  content: "";
  border-top: 1px solid var(--color-underline-3);
  rotate: 110deg;
  width: 15px;
  height: 15px;
  display: inline-block;
}

.breadcrumb-item {
  padding-left: 14px;
}
.breadcrumb-item:first-child {
  padding-left: 0;
}

.underline-1 {
  display: inline-block;
  position: relative;
}
.underline-1:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 77px;
  height: 1px;
  background-color: var(--color-underline-1);
}
.underline-1 .title {
  width: 275px;
  margin: 0 auto;
  padding-bottom: 40px;
}

.underline-2 {
  border-bottom: 1px solid var(--color-underline-2);
  display: inline-block;
}

.underline-3 {
  border-bottom: 1px solid var(--color-underline-3);
  display: inline-block;
  padding-bottom: 10px;
}

#about .mainVisual, #technology .mainVisual, #ourbusiness .mainVisual, #otherservice .mainVisual, #company .mainVisual, #recruit .mainVisual, #contact .mainVisual, #other .mainVisual, #news .mainVisual, #info .mainVisual {
  width: 100%;
  height: 400px;
}
@media (max-width: 430px) {
  #about .mainVisual, #technology .mainVisual, #ourbusiness .mainVisual, #otherservice .mainVisual, #company .mainVisual, #recruit .mainVisual, #contact .mainVisual, #other .mainVisual, #news .mainVisual, #info .mainVisual {
    height: 450px;
  }
}
#about .mainVisual .mainVisual-inner, #technology .mainVisual .mainVisual-inner, #ourbusiness .mainVisual .mainVisual-inner, #otherservice .mainVisual .mainVisual-inner, #company .mainVisual .mainVisual-inner, #recruit .mainVisual .mainVisual-inner, #contact .mainVisual .mainVisual-inner, #other .mainVisual .mainVisual-inner, #news .mainVisual .mainVisual-inner, #info .mainVisual .mainVisual-inner {
  height: 100%;
}
#about .mainVisual .mainVisual-inner .imgWrap, #technology .mainVisual .mainVisual-inner .imgWrap, #ourbusiness .mainVisual .mainVisual-inner .imgWrap, #otherservice .mainVisual .mainVisual-inner .imgWrap, #company .mainVisual .mainVisual-inner .imgWrap, #recruit .mainVisual .mainVisual-inner .imgWrap, #contact .mainVisual .mainVisual-inner .imgWrap, #other .mainVisual .mainVisual-inner .imgWrap, #news .mainVisual .mainVisual-inner .imgWrap, #info .mainVisual .mainVisual-inner .imgWrap {
  height: 100%;
}
#about .mainVisual .mainVisual-inner .imgWrap img, #technology .mainVisual .mainVisual-inner .imgWrap img, #ourbusiness .mainVisual .mainVisual-inner .imgWrap img, #otherservice .mainVisual .mainVisual-inner .imgWrap img, #company .mainVisual .mainVisual-inner .imgWrap img, #recruit .mainVisual .mainVisual-inner .imgWrap img, #contact .mainVisual .mainVisual-inner .imgWrap img, #other .mainVisual .mainVisual-inner .imgWrap img, #news .mainVisual .mainVisual-inner .imgWrap img, #info .mainVisual .mainVisual-inner .imgWrap img {
  width: 100%;
  height: 100%;
}
#about .mainVisual .mainVisual-inner .titleWrap, #technology .mainVisual .mainVisual-inner .titleWrap, #ourbusiness .mainVisual .mainVisual-inner .titleWrap, #otherservice .mainVisual .mainVisual-inner .titleWrap, #company .mainVisual .mainVisual-inner .titleWrap, #recruit .mainVisual .mainVisual-inner .titleWrap, #contact .mainVisual .mainVisual-inner .titleWrap, #other .mainVisual .mainVisual-inner .titleWrap, #news .mainVisual .mainVisual-inner .titleWrap, #info .mainVisual .mainVisual-inner .titleWrap {
  position: relative;
}
@media (max-width: 430px) {
  #about .mainVisual .mainVisual-inner .titleWrap, #technology .mainVisual .mainVisual-inner .titleWrap, #ourbusiness .mainVisual .mainVisual-inner .titleWrap, #otherservice .mainVisual .mainVisual-inner .titleWrap, #company .mainVisual .mainVisual-inner .titleWrap, #recruit .mainVisual .mainVisual-inner .titleWrap, #contact .mainVisual .mainVisual-inner .titleWrap, #other .mainVisual .mainVisual-inner .titleWrap, #news .mainVisual .mainVisual-inner .titleWrap, #info .mainVisual .mainVisual-inner .titleWrap {
    width: 100dvw;
  }
}
#about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner {
  position: absolute;
  bottom: 0;
  background-color: var(--color-background-2);
  color: white;
  width: 330px;
  height: 400px;
  text-align: center;
}
@media (max-width: 430px) {
  #about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner {
    bottom: 40px;
    width: 100dvw;
    height: 120px;
  }
}
#about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  height: 80%;
}
@media (max-width: 430px) {
  #about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box {
    justify-content: flex-start;
    align-items: flex-start;
    height: 100%;
    padding-left: 15px;
  }
}
#about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline {
  border-left: 1px solid white;
  width: 1px;
  height: 77px;
}
@media (max-width: 430px) {
  #about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvline {
    display: none;
  }
}
#about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvTitle {
  font-size: var(--font-size-mv-title);
  font-family: var(--font-family-2);
}
#about .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #technology .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #ourbusiness .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #otherservice .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #company .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #recruit .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #contact .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #other .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #news .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle, #info .mainVisual .mainVisual-inner .titleWrap .titleWrap-inner .titleWrap-box .mvSubtitle {
  font-size: var(--font-size-sm);
}

.mainVisual-top {
  margin-bottom: var(--spacing-big);
}

.mainVisual, .breadcrumb {
  margin-bottom: var(--spacing-base);
}

.breadcrumb .breadcrumb {
  display: flex;
}
@media (max-width: 430px) {
  .breadcrumb .breadcrumb {
    display: block;
  }
  .breadcrumb .breadcrumb .breadcrumb-item {
    display: inline;
  }
}

.red {
  color: var(--color-red);
}

.white {
  color: white;
}

.mb-00 {
  margin-bottom: 0 !important;
}

.pc {
  display: block;
}
@media (max-width: 430px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media (max-width: 430px) {
  .sp {
    display: block;
  }
}
/*# sourceMappingURL=base.css.map */