@charset "UTF-8";

/*
	##### DNP RECRUITING #####
	/recruit/newgraduates/info/css/info_pc.css
*/


/* --------------------------------------------------
RECRUIT
-------------------------------------------------- */

.main-ttl-area {
  display: block;
  width: 100%;
  padding-top: calc(196 / 750 * 100vw);
  padding-bottom: calc(80 / 750 * 100vw);
  text-align: center;

  & .page-ttl {
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: .08em;
    margin-bottom: calc(24 / 750 * 100vw);
  }
  & .en {
    font-size: calc(18 / 750 * 100vw);
    font-weight: 400;
    letter-spacing: .08em
  }
}

.fv-area {
  display: block;
  width: calc(700 / 750 * 100vw);
  margin: 0 auto calc(80 / 750 * 100vw);

   & .topic-path {
    display: none;
   }
   & .image-box {
    width: 100%;
    height: calc(400 / 750 * 100vw);
    border-radius: calc(28 / 750 * 100vw);
    overflow: hidden
   }
}


.recruit-info-area {
  width: 100%;
  margin: 0 auto calc(250 / 750 * 100vw);

  & .side-menu-area {
    display: none;
  }
  & .right-side {
    display: block;
    width: 100%;
    overflow: hidden;
  }
}


.info-1 {
  display: block;
  width: calc(725 / 750 * 100vw);
  padding: calc(180 / 750 * 100vw) calc(47.5 / 750 * 100vw) calc(170 / 750 * 100vw);
  margin-left: auto;
  border-radius: calc(30 / 750 * 100vw) 0 0 calc(30 / 750 * 100vw);
  background-color: var(--color3);
  position: relative;

  & .bg-text {
    position: absolute;
    top: calc(36 / 750 * 100vw);
    right: calc(-13 / 750 * 100vw);
    font-size: calc(150 / 750 * 100vw);
    font-weight: 700;
    line-height: 1;
    letter-spacing: .02em;
    color: #f7f7fa;
    text-align: right;
    mix-blend-mode: multiply;
    z-index: 0;
  }

  &::after {
    content: '';
    display: block;
    width: calc(300 / 750 * 100vw);
    height: calc(101 / 750 * 100vw);
    background: url(/recruit/newgraduates/shared/images/bg-orn-rb.svg) no-repeat left bottom / auto 100%;
    position: absolute;
    top: calc(100% - 1px);
    right: 0;
  }
}


.info-sec-ttl {
  font-feature-settings: "palt";
  color: var(--pro-color1);
  display: flex;
  flex-direction: column-reverse;
  margin-bottom: calc(80 / 750 * 100vw);

  & .en {
    font-size: calc(24 /750 * 100vw);
    letter-spacing: .08em;
    margin-bottom: calc(40 / 750 * 100vw);

    &::before {
      content: '';
      display: inline-block;
      width: calc(8 / 750 * 100vw);
      height: calc(8 / 750 * 100vw);
      border-radius: 50%;
      background-color: currentColor;
      vertical-align: middle;
      margin-right: calc(10 / 750 * 100vw);
      transform: translateY(-25%);
    }
  }
  & .sec-ttl {
    font-size: calc(54 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: .06em
  }
}

.category {
  position: relative;
  z-index: +1;

  & .category-name {
    font-feature-settings: "palt";
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: .08em;
    color: var(--pro-color1);
    margin-bottom: calc(36 / 750 * 100vw);

    &::before {
      content: '';
      display: inline-block;
      width: calc(16 / 750 * 100vw);
      height: calc(16 / 750 * 100vw);
      border-radius: 50%;
      background-color: currentColor;
      vertical-align: middle;
      margin-right: calc(15 / 750 * 100vw);
      transform: translateY(-25%);
    }
  }
}
.info-1 .category + .category {
  margin-top: calc(170 / 750 * 100vw);
}


.job-list {
  font-feature-settings: "palt";
  display: block;
  margin-bottom: calc(50 / 750 * 100vw);

  & li {
    display: block;
    width: 100%;
    padding: calc(35 / 750 * 100vw) calc(58 / 750 * 100vw) calc(30 / 750 * 100vw);
    border-radius: calc(30 / 750 * 100vw);
    background-color: #fff;

    & + & {
      margin-top: calc(40 / 750 * 100vw);
    }
  }

  & dl {
    display: block;

    & dt {
      background-repeat: no-repeat;
      background-position: center top;
      background-size: calc(220 / 750 * 100vw) calc(200 / 750 * 100vw)
    }
  }
}

.job-name {
  align-content: center;
  padding-top: calc(220 / 750 * 100vw);
  padding-bottom: calc(35 / 750 * 100vw);
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.5;
  white-space: nowrap;
  text-align: center;
  color: var(--pro-color1);
  position: relative;

  &::after {
    content: '';
    display: block;
    width: 100%;
    height: calc(10 / 750 * 100vw);
    background-image: radial-gradient(var(--pro-color1) 28.57%, transparent 0);
    background-size: calc(10 / 750 * 100vw) calc(10 / 750 * 100vw);
    position: absolute;
    top: 100%;
    left: 0;
    transform: translateY(-50%)
  }
}

.job-des {
  align-content: center;
  padding-top: calc(43 / 750 * 100vw);
  font-size: calc(28 / 750 * 100vw);
  line-height: 2.0714285714285716;
  letter-spacing: .05em;
  text-align: justify;
}

.job-1 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-1.svg);
}
.job-2 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-2.svg);
}
.job-3 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-3.svg);
}
.job-4 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-4.svg);
}
.job-5 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-5.svg);
}
.job-6 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-6.svg);
}
.job-7 dt {
  background-image: url(/recruit/newgraduates/info/images/ico-7.svg);
}



.bttn-case {
  display: block;
  width: 100%;
  text-align: center;
}
.anchor-link-bttn {
  display: inline-block;
  width: 100%;
  height: calc(150 / 750 * 100vw);
  background-color: var(--pro-color1);
  border-radius: calc(25 / 750 * 100vw);
  position: relative;

  &::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: solid calc(12 / 750 * 100vw) transparent;
    border-top: solid calc(14 / 750 * 100vw) #fff;
    position: absolute;
    right: calc(45 / 750 * 100vw);
    top: 50%;
    transform: translate(0, -25%);
  }
  
  & a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    font-feature-settings: "palt";
    font-size: calc(32 / 750 * 100vw);
    font-weight: 500;
    letter-spacing: .05em;
    line-height: 1.375;
    color: #fff;
  }
}

.matrix-bttn {
  display: inline-block;
  width: 100%;
  height: calc(200 / 750 * 100vw);
  border-radius: calc(25 / 750 * 100vw);
  overflow: hidden;
  background: var(--pro-color1) url(/recruit/newgraduates/info/images/bttn-matrix_sp.jpg) no-repeat center / cover;
  background-blend-mode: multiply;

  & a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    font-feature-settings: "palt";
    font-size: calc(32 / 750 * 100vw);
    font-weight: 700;
    color: #fff;
  }
}
.bttn-case .bttn + .bttn {
  margin-top: calc(40 / 750 * 100vw)
}




.terms-area {
  margin-top: calc(99 / 750 * 100vw);
  background-color: var(--color3);

  & .inner {
    display: block;
    width: calc(725 / 750 * 100vw);
    border-radius: 0 calc(30 / 750 * 100vw) calc(30 / 750 * 100vw) 0;
    background-color: #fff;
    padding: calc(170 / 750 * 100vw) 0 calc(200 / 750 * 100vw) calc(47.5 / 750 * 100vw);
  }
  .category {
    margin-right: calc(47.5 / 750 * 100vw);
  }
  .category + .category {
    margin-top: calc(90 / 750 * 100vw);
  }
}

.eligible {
  display: block;
  width: 100%;
  padding: calc(45 / 750 * 100vw) calc(50 / 750 * 100vw);
  border-radius: calc(30 / 750 * 100vw);
  background-color: var(--color3);
  font-feature-settings: "palt";
  font-size: calc(28 / 750 * 100vw);
  line-height: 2;
  letter-spacing: .05em;
  text-align: justify;
}

.cat-list {
  font-feature-settings: "palt";
  display: block;
  width: 100%;

  & + & {
    margin-top: calc(30 / 750 * 100vw);
  }
}

.acc-trigger-case,
.txt-case {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: calc(170 / 750 * 100vw);
  padding: calc(45 / 750 * 100vw) calc(50 / 750 * 100vw);
  border-radius: calc(30 / 750 * 100vw);
  background-color: var(--color3);
  position: relative;

  &.acc-trigger-case {
    padding-right: calc(110 / 750 * 100vw);
    cursor: pointer;
    transition: border-radius .1s linear .3s;
  }
  &.is-open.acc-trigger-case {
    border-radius: calc(30 / 750 * 100vw) calc(30 / 750 * 100vw) 0 0;
    transition: border-radius .1s;
  }
  & .trigger-name {
    display: flex;
    flex-direction: column;
    justify-content: center;
    row-gap: calc(17 / 750 * 100vw);
    width: 100%;
    height: 100%;
  }
  & .cat-ttl {
    font-size: calc(28 / 750 * 100vw);
    font-weight: 700;
    color: var(--pro-color1)
  }
  & .cat-des {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.75
  }
  & button {
    display: block;
    width: calc(60 / 750 * 100vw);
    height: calc(60 / 750 * 100vw);
    border-radius: 50%;
    background: #fff url(/recruit/newgraduates/info/images/ico-plus.svg) no-repeat center / cover;
    position: absolute;
    right: calc(35 / 750 * 100vw);
    top: 50%;
    transform: translateY(-50%)
  }
  &.is-open button {
    background-image: url(/recruit/newgraduates/info/images/ico-minus.svg);
  }
}

.detail-area {
  display: none;
  width: 100%;
  padding: 0 calc(50 / 750 * 100vw) calc(30 / 750 * 100vw);
  background-color: var(--color3);
  border-radius: 0 0 calc(30 / 750 * 100vw) calc(30 / 750 * 100vw);

  & .detail-list {
    display: block;
    width: 100%;

    & > tbody {
      display: block;
      width: 100%;
    }
    & .detail {
      display: flex;
      flex-direction: column;
      width: 100%;
    }
  }
}
.detail-txt,
.detail-ttl {
  display: block;
  width: 100%;
}
.detail-ttl {
  padding: calc(50 / 750 * 100vw) 0 calc(40 / 750 * 100vw);
  border-top: 1px solid #acabab;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 2;
}

.detail-txt {
  padding-bottom: calc(40 / 750 * 100vw);
  font-size: calc(26 / 750 * 100vw);
  letter-spacing: .05em;
  line-height: 1.9230769230769231;
  text-align: justify;

  & .note {
    line-height: 1.75;
    padding-left: 1em;
    text-indent: -1em;
  }
}
.des-txt + .des-ttl {
  margin-top: 2em;
}

.results {
  display: flex;
  column-gap: 1em;

  & thead {
    color: #969696;
  }

  & tr {
    display: flex;
    flex-direction: column;

    & th {
      font-weight: 400;
    }
  }
}



.welfare-area {
  margin-top: calc(170 / 750 * 100vw);
  overflow: hidden;
}


.more-contents-bttn-area {
  margin-top: calc(170 / 750 * 100vw);
  margin-bottom: calc(82 / 750 * 100vw);
}

.more.contents-bttn {
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(204 / 750 * 100vw);
  width: 100%;
  color: #fff;
  background-color: var(--pro-color1);
  background-image: linear-gradient(#b1505e 1px, transparent 0), linear-gradient(90deg, #b1505e 1px, transparent 0);
  background-position: center;
  background-size: calc(18 / 750 * 100vw) calc(18 / 750 * 100vw);
  border-radius: calc(30 / 750 * 100vw) 0 0 calc(30 / 750 * 100vw);
  overflow: hidden;
  position: relative;

  &::after {
    position: absolute;
    right: calc(50 / 750 * 100vw);
    content: '';
    display: block;
    width: calc(60 / 750 * 100vw);
    height: calc(60 / 750 * 100vw);
    border-radius: 50%;
    background: no-repeat center center / contain;
    background-color: #fff;
    background-image: url(/recruit/newgraduates/shared/images/bttn-popup_p1.svg);
}

  & .jp {
    font-size: calc(36 / 750 * 100vw);
    font-weight: 700;
    font-feature-settings: "palt";
    letter-spacing: .08em;
    line-height: 1.3888888888888888;
    text-indent: calc(-82 / 750 * 100vw);

    &::before {
      content: '';
      display: inline-block;
      width: calc(60 / 750 * 100vw);
      height: calc(2 / 750 * 100vw);
      background-color: #fff;
      margin-right: calc(22 / 750 * 100vw);
      vertical-align: middle;
    }
  }
}


.facility-area {
  display: block;
  width: calc(725 / 750 * 100vw);
  margin-top: calc(100 / 750 * 100vw);
  padding: calc(170 / 750 * 100vw) calc(47.5 / 750 * 100vw) calc(170 / 750 * 100vw);
  margin-left: auto;
  border-radius: calc(30 / 750 * 100vw) 0 0 calc(30 / 750 * 100vw);
  background-color: var(--color3);
  position: relative;

  &::before {
    content: '';
    display: block;
    width: calc(300 / 750 * 100vw);
    height: calc(101 / 750 * 100vw);
    background: url(/recruit/newgraduates/shared/images/bg-orn-rt.svg) no-repeat left bottom / auto 100%;
    position: absolute;
    top: calc(-100 / 750 * 100vw);
    right: 0;
  }
}
.facilities {
  font-feature-settings: "palt";
  display: block;
  width: 100%;

  & + & {
    margin-top: calc(100 / 750 * 100vw);
  }

  & .fac-name {
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    color: var(--pro-color1);
    margin-bottom: calc(30 / 750 * 100vw);
  }
  & .fac-txt {
    font-size: calc(28 / 750 * 100vw);
    line-height: 2;
    margin-bottom: calc(20 / 750 * 100vw);
    text-align: justify;
  }
}
.facility-list ul {
  display: block;
}
.facility-list ul li {
  display: block;

  & + & {
    margin-top: calc(30 / 750 * 100vw);
  }
  & > img,
  & figure {
    display: block;
    border-radius: calc(30 / 750 * 100vw);
    overflow: hidden;
    position: relative;

    & figcaption {
      display: inline-block;
      position: absolute;
      bottom: 0;
      left: 0;
      font-size: calc(26 / 750 * 100vw);
      background-color: var(--pro-color1);
      color: #fff;
      line-height: calc(50 / 750 * 100vw);
      padding: 0 .75em 0 1.25em;
    }
  }
  & .des-txt {
    display: block;
    padding: .5em 0;
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.4285714285714286
  }
}