@charset "UTF-8";
/*------------------------------------------------------------------

SCREEN SIZE

--------------------------------------------------------------------*/
/*------------------------------------------------------------------

FONT

--------------------------------------------------------------------*/
.noto {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
}

.robot {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: normal;
}

:root {
  --sans-serif: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Arial, sans-serif;
  --serif: serif;
}

/*------------------------------------------------------------------

WIDTH

--------------------------------------------------------------------*/
:root {
  --width-1250: min(calc(100% - 8%), 1250px);
}

/*------------------------------------------------------------------

COLOR

--------------------------------------------------------------------*/
:root {
  /* colors */
  --color-black: #222222;
  --color-gray: #707070;
  --color-primary: #3A34FF;
  --color-yellow: #FFFF00;
  --color-main-gradation: linear-gradient(90deg, #5800FF 0%, #5CE1E6 100%);
  --color-secondary-gradation: linear-gradient(90deg, #3A34FF 0%, #2D28C5 71.5%, #231F99 100%);
  --color-tertiary-gradation: linear-gradient(90deg, #5800FF 0%, #4D14FF 18.23%, #0096FF 100%);
}

/*------------------------------------------------------------------

SIZE

--------------------------------------------------------------------*/
:root {
  /*フォントサイズ*/
  --fontsize-m: 1rem; /*16*/
  --fontsize-headline-1: 5.875rem; /*94*/
  --fontsize-headline-2: 4.0625rem; /*65*/
  --fontsize-headline-3: 3.375rem; /*54*/
  --fontsize-headline-4: 2.5rem; /*40*/
  --fontsize-ll: 2.25rem; /*36*/
  --fontsize-l: 1.5rem; /*24*/
  --fontsize: 1.125rem; /*18*/
  --fontsize-s: 0.875rem; /*14*/
  --line-height: 2;
  --line-height-l: 2.3;
  --letter-spacing-l: 0.09em;
  --letter-spacing: 0.08em;
  /*角丸*/
  --radius: 8px;
  --radius-m: 6px;
}

/*------------------------------------------------------------------

ANIMATION

--------------------------------------------------------------------*/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*------------------------------------------------------------------

BASE

--------------------------------------------------------------------*/
body {
  color: var(--color-black);
  background-color: #FFF;
  font-size: var(--fontsize);
  line-height: var(--line-height);
  letter-spacing: var(--letter-spacing);
}

h1, h2, h3, h4, h5 {
  font-weight: 700;
}

.c {
  text-align: center;
  margin-inline: auto;
}

.hidden {
  visibility: hidden;
}

.only-pc {
  display: inherit;
  visibility: visible;
}
@media screen and (max-width: 767px) {
  .only-pc {
    display: none !important;
    visibility: hidden;
  }
}

.only-sp {
  display: none;
  visibility: hidden;
}
@media screen and (max-width: 767px) {
  .only-sp {
    display: inherit;
    visibility: visible;
  }
}

.only-ssp {
  display: none;
  visibility: hidden;
}
@media screen and (max-width: 500px) {
  .only-ssp {
    display: inherit;
    visibility: visible;
  }
}

.nopc {
  display: none;
  visibility: hidden;
}
@media screen and (max-width: 767px) {
  .nopc {
    display: inherit;
    visibility: visible;
  }
}

@media screen and (max-width: 767px) {
  .nosp {
    display: none;
    visibility: hidden;
  }
}
@media screen and (max-width: 500px) {
  .nossp {
    display: none;
    visibility: hidden;
  }
}
/*------------------------------------------------------------------

COMMON

--------------------------------------------------------------------*/
section {
  padding: 100px 0;
}

.contents_wrap {
  width: var(--width-1250);
  margin: auto;
  padding: 0;
  position: relative;
}

.pb_60 {
  padding-bottom: 60px;
}

.pb_100 {
  padding-bottom: 100px;
}

.bg_gradation_main {
  background: var(--color-main-gradation);
}

.bg_gradation_secondary {
  background: var(--color-secondary-gradation);
}

.bg_gradation_tertiary {
  background: var(--color-tertiary-gradation);
}

.bg_w {
  background-color: #FFF;
}

.bg_gray {
  background-color: #F7F7F7;
}

.bg_main {
  background: var(--color-main-gradation);
}

.bg_main::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(https://digirise.ai/wp-content/uploads/2024/12/3309.jpg) center/cover no-repeat;
  opacity: 0.2;
  position: absolute;
  mix-blend-mode: luminosity;
}

.btn_large {
  display: block;
  text-align: center;
  width: 100%;
  max-width: 440px;
  max-height: 80px;
  padding: 1.65rem 1rem;
}
.btn_large span {
  font-size: 18px;
  line-height: var(--line-height-s);
}

.section__title_wrap {
  padding-bottom: 80px;
  margin-top: 0;
  position: relative;
}

.section__title_wrap.row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.section__title_wrap.row .section__lead {
  margin-top: 0;
}

.section__title {
  font-size: var(--fontsize-ll);
  padding-bottom: 34px;
  position: relative;
}

.section__title span {
  font-family: "Roboto", sans-serif;
  font-size: var(--fontsize-headline-1);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  letter-spacing: -0.01em;
  color: var(--color-primary);
  display: block;
}

.section__title::before,
.section__title::after {
  content: "";
  width: 50px;
  height: 5px;
  display: block;
  background: linear-gradient(90deg, #5800FF 0%, #4D14FF 18.23%, #0096FF 100%);
  border-radius: 60px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.section__title::before {
  width: 42px;
  left: 0;
}

.section__title::after {
  width: 5px;
  left: 46px;
}

.section__lead {
  font-size: var(--fontsize);
  line-height: var(--line-height);
  letter-spacing: var(--letter-spacing);
  margin-top: 40px;
}

.section__title_wrap.white .section__title,
.section__title_wrap.white .section__title span,
.section__title_wrap.white .section__lead {
  color: #FFF;
}
.section__title_wrap.white .section__title::before,
.section__title_wrap.white .section__title::after {
  background: #FFF;
}

@media screen and (max-width: 979px) {
  .section__title span {
    font-size: clamp(3.5rem, 0.157rem + 14.07vw, 5.875rem);
  }
  .section__title_wrap.row {
    flex-direction: column;
    align-items: flex-start;
    justify-content: unset;
  }
  .section__title_wrap {
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .section__title {
    font-size: var(--fontsize-l);
  }
}
/* KV */
/* -------------------------------------------------- */
.kv {
  padding: 0;
  overflow: hidden;
  position: relative;
}

.kv__inner {
  padding-block: 160px 80px;
}

.kv__title_wrap {
  padding: 0;
  margin-bottom: 0;
  position: relative;
  background: url(https://digirise.ai/wp-content/uploads/2025/01/about_kv.jpg) center / 100% no-repeat;
  aspect-ratio: 1250/678;
  border-radius: var(--radius);
  display: grid;
  place-content: center;
}

.kv__lead {
  position: relative;
  display: inline;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  background: var(--color-primary);
  font-size: 4rem;
  font-size: clamp(2rem, 0.571rem + 4.57vw, 4rem);
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.06em;
  padding: 1px 20px 7px 24px;
  color: #FFF;
  white-space: nowrap;
}

.kv__title {
  font-family: "Roboto", sans-serif;
  font-size: var(--fontsize-headline-1);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  letter-spacing: -0.01em;
  color: var(--color-primary);
  font-size: 5.625rem;
  font-size: clamp(3rem, 1.125rem + 6vw, 5.625rem);
  position: absolute;
  right: 27px;
  bottom: 3px;
}
@media screen and (max-width: 1100px) {
	.kv__inner{
		padding-block: 80px;
	}
}
@media screen and (max-width: 767px) {
  .kv__inner {
    padding-block: 80px 140px;
  }
  .kv__lead_wrap {
    position: absolute;
    bottom: -5.8em;
    left: 4px;
  }
  .kv__lead {
    line-height: 1.85;
  }
  .kv__title {
    font-size: 2rem;
    right: 12px;
    bottom: 18px;
  }
}
/* about */
/* -------------------------------------------------- */
.about {
  padding-block: 35px 60px;
  overflow: hidden;
  position: relative;
}

.about__inner {
  position: unset;
  overflow: hidden;
}

.about__inner .is-layout-flex {
  justify-content: space-between;
  gap: 70px;
}

.about__logo {
  text-align: center;
}

.about__logo img {
  width: 80%;
  max-width: 295px;
}

.about__logo_wrap {
  width: 40%;
  max-width: 460px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: var(--radius);
  aspect-ratio: 460/300;
  display: grid;
  place-content: center;
}

.about__info_wrap {
  width: calc(60% - 70px);
  flex-grow: 1;
}

.about__info_wrap dl {
  display: flex;
  flex-wrap: wrap;
  color: #FFF;
  font-size: var(--fontsize-m);
  line-height: 2.2;
  letter-spacing: var(--letter-spacing-l);
}

.about__info_wrap dt {
  width: 140px;
  padding: 10px 12px;
  border-bottom: 1px solid #FFF;
}

.about__info_wrap dd {
  width: calc(100% - 140px);
  padding: 12px 24px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.about__info_wrap dt:not(:first-of-type), .about__info_wrap dd:not(:first-of-type) {
  margin-top: 12px;
}

@media screen and (max-width: 767px) {
  .about__inner .is-layout-flex {
    flex-direction: column;
    gap: 30px;
  }
  .about__logo_wrap {
    width: 100%;
    max-width: none;
  }
  .about__info_wrap {
    width: 100%;
  }
  .about__info_wrap dt {
    width: 110px;
  }
  .about__info_wrap dd {
    width: calc(100% - 110px);
  }
}
/* message, mvv */
/* -------------------------------------------------- */
.message {
  padding-bottom: 80px;
}

.message .is-layout-flex {
  align-items: flex-start;
  justify-content: space-between;
  gap: 77px;
}

.message_text_wrap {
  width: calc(60% - 77px);
}

.message_lead {
  color: var(--color-primary);
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.42;
  letter-spacing: 0.06em;
}

.message_text {
  text-align: justify;
  margin-top: 26px;
}

.message_text p {
  font-size: var(--fontsize);
  line-height: var(--line-height);
  letter-spacing: var(--letter-spacing-l);
  padding: 0 0 0.9em 0;
}

.message_name {
  text-align: right;
  font-size: var(--fontsize-ll);
  font-weight: 700;
  letter-spacing: var(--letter-spacing-l);
  margin-top: 10px;
}
.message_name span {
  font-size: var(--fontsize);
  font-weight: 400;
  display: block;
}

.message_img {
  width: 40%;
  border-radius: var(--radius);
  overflow: hidden;
}
.message_img img {
  vertical-align: bottom;
}

@media screen and (max-width: 767px) {
  .message {
    padding-bottom: 60px;
  }
  .message .is-layout-flex {
    flex-direction: column;
    gap: 30px;
  }
  .message_text_wrap {
    width: 100%;
    order: 2;
  }
  .message_lead {
    font-size: var(--fontsize-headline-4);
  }
  .message_name {
    font-size: var(--fontsize-l);
  }
  .message_img {
    width: 100%;
    order: 1;
  }
}
.mvv {
  padding-top: 0;
  padding-bottom: 120px;
}

.mvv__inner {
  background: #FAFBFE;
  max-width: 1100px;
  padding: 80px 60px;
}

.mvv__contents {
  text-align: center;
  margin-top: 110px;
}

.mvv__contents:first-of-type {
  margin-top: 0;
}

.mvv__contents .section__title {
  font-size: var(--fontsize-headline-4);
  line-height: 1.5;
  letter-spacing: var(--letter-spacing-l);
  margin-bottom: 32px;
}

.mvv__contents .section__title span {
  font-size: 2rem;
  padding-bottom: 10px;
}

.mvv__contents .section__title::before,
.mvv__contents .section__title::after {
  margin-inline: auto;
}

.mvv__contents .section__title::before {
  left: -8px;
}

.mvv__contents .section__title::after {
  right: -46px;
  left: 0;
}

.mvv__contents p {
  font-size: var(--fontsize);
  line-height: 2.2;
  letter-spacing: var(--letter-spacing-l);
}

@media screen and (max-width: 767px) {
  .mvv {
    padding-bottom: 60px;
  }
  .mvv__inner {
    padding: 60px 4%;
  }
  .mvv__contents {
    text-align: left;
    margin-top: 80px;
  }
  .mvv__contents .section__title {
    font-size: 2rem;
  }
  .mvv__contents .section__title::before,
  .mvv__contents .section__title::after {
    margin-inline: unset;
  }
  .mvv__contents .section__title::before {
    left: 0;
  }
  .mvv__contents .section__title::after {
    right: unset;
    left: 46px;
  }
  .mvv__contents p {
    line-height: var(--line-height);
  }
}
/* occupation */
/* -------------------------------------------------- */
.occupation {
  background: #F9F9F9;
}

.occupation .section__lead {
  text-align: right;
}

.card_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
}

.card_item {
  width: calc(33.3333333333% - 27px);
  border: 1px solid #DDD;
  border-radius: 6px;
  background: #FFF;
  overflow: hidden;
}

.card_img img {
  vertical-align: bottom;
}

.card_text {
  padding: 22px 22px;
}

.card_title {
  color: var(--color-primary);
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}

.card_item p {
  font-size: var(--fontsize);
  line-height: 1.83;
  letter-spacing: 0.02em;
  margin-top: 14px;
}

@media screen and (max-width: 767px) {
  .occupation {
    padding-top: 80px;
  }
  .occupation .section__lead {
    text-align: left;
  }
  .card_list {
    gap: 20px;
  }
  .card_item {
    width: 100%;
  }
  .card_title {
    font-size: var(--fontsize-l);
  }
  .card_item p {
    font-size: var(--fontsize-m);
  }
}
/* cta */
/* -------------------------------------------------- */
.cta {
  position: relative;
  overflow: hidden;
}

.cta__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 100px 0px;
  gap: 25px;
  max-width: none;
}

.cta__content {
  width: 100%;
  background: #FFF;
  border-radius: var(--radius);
  position: relative;
  overflow: hidden;
}

.cta__content a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 50px 65px;
  position: relative;
  z-index: 1;
}

.cta__title {
  color: var(--color-primary);
  background: var(--color-main-gradation);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: var(--fontsize-headline-3);
  font-weight: 700;
  line-height: 142%;
  letter-spacing: var(--letter-spacing);
}

.cta__lead {
  font-size: var(--fontsize);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing);
  margin-top: 22px;
}

.entry {
  position: relative;
}

.entry p {
  font-family: "Roboto", sans-serif;
  font-size: var(--fontsize-headline-1);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  letter-spacing: -0.01em;
  color: var(--color-primary);
  position: relative;
  padding-right: 120px;
  transition: all 0.3s ease;
}

.entry p::before {
  content: "";
  width: 150px;
  height: 150px;
  bottom: 0;
  position: absolute;
  top: 0;
  left: 0;
  left: auto;
  right: 0;
  margin: auto;
  border: 1px solid var(--color-primary);
  border-radius: 50%;
}

.entry p::after {
  content: "\f2d2";
  font-family: "Font Awesome 5 Free";
  font-size: var(--fontsize);
  font-weight: 400;
  font-style: normal;
  display: inline;
  width: 18px;
  height: 21px;
  color: var(--color-primary);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 66px;
  margin: auto;
  transition: all 0.3s ease;
}

.cta__content:hover .cta__title {
  color: var(--color-yellow);
  background: var(--color-yellow);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.cta__content:hover .cta__lead, .cta__content:hover .entry p {
  color: #FFF;
}
.cta__content:hover .entry p {
  padding-right: 116px;
}
.cta__content:hover .entry p::before {
  border-color: #FFF;
}
.cta__content:hover .entry p::after {
  color: #FFF;
}

.cta__content::after {
  content: "";
  background: var(--color-tertiary-gradation);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 0;
  transition: opacity 0.3s;
}

.cta__content:hover::after {
  opacity: 0.85;
}

@media screen and (max-width: 979px) {
  .cta__inner {
    padding: 6% 0;
  }
  .cta__content a {
    flex-direction: column;
    padding: 52px 30px 60px;
    gap: 30px;
  }
  .entry p {
    font-size: var(--fontsize-headline-2);
    padding: 0 0 130px;
  }
  .entry p::before {
    width: 120px;
    height: 120px;
    top: unset;
    bottom: 0;
    left: 0;
  }
  .entry p::after {
    top: unset;
    left: 0;
    right: 0;
    bottom: 50px;
  }
  .cta__content:hover .entry p {
    padding: 0 0 130px;
  }
}
@media screen and (max-width: 767px) {
  .cta__content a {
    padding: 32px 20px 60px;
  }
  .cta__title {
    font-size: var(--fontsize-headline-4);
  }
  .cta__lead {
    line-height: var(--line-height);
  }
}/*# sourceMappingURL=recruit-about-style.css.map */