@charset "UTF-8";

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


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

.main-ttl-area {
  display: block;
  width: 100%;
  padding-top: calc(130 var(--w-formulae));
  padding-bottom: calc(105 var(--w-formulae));
  text-align: center;

  @media (width < 1200px) {
    padding-top: 204px
  }

  & .page-ttl {
    font-size: calc(38 var(--w-formulae));
    font-weight: 700;
    letter-spacing: .08em;
    margin-bottom: calc(24 var(--w-formulae));

  }
  & .en {
    font-size: calc(16 var(--w-formulae));
    font-weight: 400;
    letter-spacing: .08em;

  }
}

.fv-area {
  display: block;
  width: 100%;
  max-width: 1830px;
  padding: 0 15px;
  margin: 0 auto calc(120 var(--w-formulae));

  & .topic-path {
    margin-left: calc(30 var(--w-formulae));
    margin-bottom: calc(15 var(--w-formulae));
  }
}

.recruit-info-area {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0 auto calc(190 var(--w-formulae));
  column-gap: 50px;

  & .side-menu-area {
    display: block;
    flex: 0 0 calc(250px + (50vw - 700px));
  }
  & .right-side {
    display: block flow-root;
    flex: 1 0 calc(1100px + (50vw - 700px));
    overflow: hidden;
  }
}
@media (width < 1400px) {
  .recruit-info-area {
    column-gap: calc(50 / 1400 * 100vw);
  }
  .recruit-info-area .side-menu-area {
    flex-basis: calc(250 / 1400 * 100vw);
  }
  .recruit-info-area .right-side {
    flex-basis: calc(1100 / 1400 * 100vw);
  }
}

.anchor-links {
  position: sticky;
  top: 120px;
  float: right;
  margin-left: 42px;

  & h4 {
    display: inline-block;
    height: 25px;
    padding: 0 1em;
    font-size: 16px;
    font-weight: 400;
    line-height: 23px;
    letter-spacing: .08em;
    background-color: gray;
    color: #fff;
    border-radius: 100px;
    margin-bottom: 40px;

    &::before {
      content: '';
      display: inline-block;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background-color: currentColor;
      vertical-align: middle;
      margin-right: 7px;
    }
  }
  & li {
    min-width: 158px;
    margin-bottom: 1em;

    & a {
      display: inline-block;
      font-size: calc(13 var(--w-formulae));
      font-weight: 700;
      letter-spacing: .05em;
      line-height: 1.5384615384615385;
      color: currentColor;
      padding-left: 22px;
      text-indent: -22px;
      transition: color .3s ease;


      &::before {
        content: '';
        display: inline-block;
        height: 1px;
        width: 12px;
        background-color: currentColor;
        vertical-align: middle;
        margin-right: 10px;
      }
    }
  }
}
@media (hover: hover) {
  .anchor-links li a {
    opacity: 1;
    transition: opacity .3s ease;

    &:hover {
      opacity: .4;
    }
  }
}

.recruit-info-area .anchor-links li a.current {
  color: var(--pro-color1);
  transition: color .3s ease;
}


.recruit-info-area .anchor-links h4 {
  background-color: var(--pro-color1);
}



.info-1 {
  display: block;
  width: 100%;
  padding: calc(105 var(--w-formulae)) calc(30 var(--w-formulae)) calc(170 var(--w-formulae)) calc(110 var(--w-formulae));
  border-radius: 30px 0 0 30px;
  background-color: var(--color3);
  position: relative;

  & .bg-text {
    position: absolute;
    top: calc(145 var(--w-formulae));
    right: -13px;
    font-size: calc(150 var(--w-formulae));
    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: 410px;
    height: 101px;
    background: url(/recruit/newgraduates/shared/images/bg-orn-rb.svg) no-repeat right bottom / cover;
    position: absolute;
    top: calc(100% - 1px);
    right: 0;
  }
}
@media (width < 1200px) {
  .info-1 {
    padding-left: calc(65 / 1400 * 100vw)
  }
}

.info-sec-ttl {
  font-feature-settings: "palt";
  color: var(--pro-color1);
  display: flex;
  flex-direction: column-reverse;
  margin-bottom: calc(85 var(--w-formulae));
  padding-top: calc(45 var(--w-formulae));

  & .en {
    font-size: calc(16 var(--w-formulae));
    letter-spacing: .08em;
    margin-bottom: calc(30 var(--w-formulae));

    &::before {
      content: '';
      display: inline-block;
      width: calc(5 var(--w-formulae));
      height: calc(5 var(--w-formulae));
      border-radius: 50%;
      background-color: currentColor;
      vertical-align: middle;
      margin-right: calc(10 var(--w-formulae));
      transform: translateY(-50%);
    }
  }
  & .sec-ttl {
    font-size: calc(40 var(--w-formulae));
    font-weight: 700;
    letter-spacing: .08em
  }
}
.category {
  position: relative;
  z-index: +1;

  & .category-name {
    font-feature-settings: "palt";
    font-size: calc(24 var(--w-formulae));
    font-weight: 700;
    letter-spacing: .08em;
    color: var(--pro-color1);
    margin-bottom: calc(20 var(--w-formulae));

    &::before {
      content: '';
      display: inline-block;
      width: calc(10 var(--w-formulae));
      height: calc(10 var(--w-formulae));
      border-radius: 50%;
      background-color: currentColor;
      vertical-align: middle;
      margin-right: calc(10 var(--w-formulae));
      transform: translateY(-25%);
    }
  }
}
.info-1 .category + .category {
  margin-top: 100px;
}

.job-list {
  font-feature-settings: "palt";
  display: block;
  margin-bottom: calc(50 var(--w-formulae));

  & li {
    display: block;
    width: 100%;
    padding: calc(24 var(--w-formulae)) calc(43 var(--w-formulae)) calc(24 var(--w-formulae)) calc(29 var(--w-formulae));
    max-width: calc(930 var(--w-formulae));
    border-radius: 20px;
    background-color: #fff;

    & + & {
      margin-top: calc(15 var(--w-formulae));
    }
  }

  & dl {
    display: grid;
    grid-template-columns: 32% auto;
  }
}

.job-name {
  align-content: center;
  padding-right: calc(29 var(--w-formulae));
  padding-left: calc(116  var(--w-formulae));
  min-height: calc(105 var(--w-formulae));
  font-size: calc(20 var(--w-formulae));
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.5;
  white-space: nowrap;
  text-align: center;
  color: var(--pro-color1);
  position: relative;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: calc(116 var(--w-formulae)) calc(105 var(--w-formulae));

  &::after {
    content: '';
    display: block;
    width: 7px;
    height: 100%;
    background-image: radial-gradient(var(--pro-color1) 28.57%, transparent 0);
    background-size: 7px 7px;
    position: absolute;
    top: 0;
    left: calc(100% - 3.5px);
    transform: translateX(-50%)
  }
}


.job-des {
  align-content: center;
  padding-left: calc(29 var(--w-formulae));
  font-size: calc(14 var(--w-formulae));
  line-height: 2;
  letter-spacing: .07em;
}

.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);
}

@media (width < 1200px) {
  .job-list dl dt {
    padding-right: calc(29 / 1200 * 100vw);
    padding-left: calc(116 / 1200 * 100vw);
    font-size: calc(20 / 1400 * 100vw);
    background-size: calc(116 / 1200 * 100vw) calc(105 / 1200 * 100vw);
  }
  .job-des {
    padding-left: calc(29 / 1200 * 100vw);
  }
}
@media (width < 1024px) {
  .job-list dl {
    grid-template-columns: 205px auto;

    & dt {
      font-size: 15.5px
    }
  }
}



.bttn-case {
  display: block;
  width: 100%;
  max-width: calc(930 var(--w-formulae));
  text-align: center;
}
.anchor-link-bttn {
  display: inline-block;
  width: 100%;
  max-width: calc(500 var(--w-formulae));
  height: calc(80 var(--w-formulae));
  background-color: var(--pro-color1);
  border-radius: 25px;
  position: relative;

  &::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: solid 6px transparent;
    border-top: solid 7px #fff;
    position: absolute;
    right: calc(38 var(--w-formulae));
    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(18 var(--w-formulae));
    font-weight: 500;
    letter-spacing: .05em;
    color: #fff;
  }
}
.matrix-bttn {
  display: inline-block;
  width: 100%;
  max-width: calc(790 var(--w-formulae));
  height: calc(130 var(--w-formulae));
  border-radius: 25px;
  overflow: hidden;
  background: var(--pro-color1) url(/recruit/newgraduates/info/images/bttn-matrix_pc.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(24 var(--w-formulae));
    font-weight: 700;
    letter-spacing: .05em;
    color: #fff;
  }
}
.bttn-case .bttn + .bttn {
  margin-top: calc(20 var(--w-formulae))
}
@media (hover: hover) {
  .bttn-case .bttn a {
    transition: background-color .3s ease
  }
  .bttn-case .bttn a:hover {
    background-color: rgba(255, 255, 255, .2)
  }
}





.terms-area {
  margin-top: 99px;
  background-color: var(--color3);

  & .inner {
    display: block;
    width: calc(100% - calc(110 var(--w-formulae)));
    border-radius: 0 30px 30px 0;
    background-color: #fff;
    padding: 0 0 calc(155 var(--w-formulae)) calc(110 var(--w-formulae));
  }
  .category {
    margin-right: calc(65 var(--w-formulae));
  }
  .category + .category {
    margin-top: calc(70 var(--w-formulae));
  }
}

@media (width < 1200px) {
  .terms-area .inner {
    padding-left: calc(65 / 1400 * 100vw);
  }
}


.eligible {
  display: block;
  width: 100%;
  max-width: 840px;
  padding: calc(45 var(--w-formulae));
  border-radius: 20px;
  background-color: var(--color3);
  font-feature-settings: "palt";
  font-size: calc(15 var(--w-formulae));
  line-height: 2;
}



.cat-list {
  display: block;
  width: 100%;
  max-width: 840px;

  & + & {
    margin-top: calc(25 var(--w-formulae));
  }
}
.acc-trigger-case,
.txt-case {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: calc(110 var(--w-formulae));
  padding: calc(40 var(--w-formulae)) calc(55 var(--w-formulae));
  border-radius: 20px;
  background-color: var(--color3);
  position: relative;

  &.acc-trigger-case {
    cursor: pointer;
    transition: border-radius .1s linear .3s;
  }
  &.is-open.acc-trigger-case {
    border-radius: 20px 20px 0 0;
    transition: border-radius .1s;
  }
  & .trigger-name {
    display: flex;
    flex-direction: column;
    justify-content: center;
    row-gap: calc(10 var(--w-formulae));
    width: 100%;
    height: 100%;
  }
  & .cat-ttl {
    font-size: calc(16 var(--w-formulae));
    font-weight: 700;
    color: var(--pro-color1)
  }
  & .cat-des {
    font-size: calc(14 var(--w-formulae));
    line-height: 2
  }
  & button {
    display: block;
    width: calc(38 var(--w-formulae));
    height: calc(38 var(--w-formulae));
    border-radius: 50%;
    background: #fff url(/recruit/newgraduates/info/images/ico-plus.svg) no-repeat center / cover;
    position: absolute;
    right: calc(55 var(--w-formulae));
    top: 50%;
    transform: translateY(-50%)
  }
  &.is-open button {
    background-image: url(/recruit/newgraduates/info/images/ico-minus.svg);
  }
}
.detail-area {
  font-feature-settings: "palt";
  display: none;
  width: 100%;
  padding: 0 calc(55 var(--w-formulae)) calc(14 var(--w-formulae));
  background-color: var(--color3);
  border-radius: 0 0 20px 20px;

  & .detail-list {
    table-layout: fixed;
    width: 100%;
  }
}
.detail-txt,
.detail-ttl {
  padding: calc(34 var(--w-formulae)) 0 calc(24 var(--w-formulae));
  border-top: 1px solid #dad9d6;
  vertical-align: top;
}
.detail-ttl {
  font-size: calc(14 var(--w-formulae));
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 2;
  width: 22.2892%;
  padding-left: calc(20 var(--w-formulae));
}
.detail-txt {
  font-size: calc(14 var(--w-formulae));
  letter-spacing: .01em;
  line-height: 2;

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


.results {
  width: 100%;
  table-layout: fixed;
}
.results th {
  font-weight: 400;

  &[scope='row'] {
    width: 9em;
  }
}




.welfare-area {
  margin-top: calc(100 var(--w-formulae));
  overflow: hidden;
}




.more-contents-bttn-area {
  margin-top: calc(80 var(--w-formulae));
  margin-bottom: calc(120 var(--w-formulae));
}

.more.contents-bttn {
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(130 var(--w-formulae));
  width: 100%;
  padding-right: calc(100% - calc(840 var(--w-formulae)));
  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: 18px 18px;
  border-radius: 30px 0 0 30px;
  overflow: hidden;
  position: relative;

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


    @media (width < 1250px) {
      right: calc(30 / 1200 * 100vw);
    }
  }

  & .jp {
    font-size: calc(26 var(--w-formulae));
    font-weight: 700;
    font-feature-settings: "palt";
    letter-spacing: .08em;
    line-height: 1.3846153846153846;
    padding-left: calc(75 var(--w-formulae));
    text-indent: calc(-75 var(--w-formulae));

    &::before {
      content: '';
      display: inline-block;
      width: calc(60 var(--w-formulae));
      height: 1px;
      background-color: #fff;
      margin-right: calc(15 var(--w-formulae));
      vertical-align: middle;
    }
  }
}
@media (hover: hover) {
  .more.contents-bttn {
    transition: .3s ease;

    &::after {
      transition: background-color .3s ease
    }
    & .jp::before {
      transition: background-color .3s ease
    }
  }
  .more.contents-bttn:hover {
    color: var(--pro-color1);
    background-color: rgba(var(--pro1-rgb), .2);
    background-image: linear-gradient(rgba(255, 255, 255, .25) 1px, transparent 0), linear-gradient(90deg, rgba(255, 255, 255, .25) 1px, transparent 0);
  
    &::after {
      background-color: var(--pro-color1);
      background-image: url(/recruit/newgraduates/shared/images/bttn-popup_wht.svg);
    }
    & .jp::before {
      background-color: var(--pro-color1);
    }
  }
}




.facility-area {
  display: block;
  width: 100%;
  margin-top: 100px;
  padding: calc(105 var(--w-formulae)) calc(30 var(--w-formulae)) calc(170 var(--w-formulae)) calc(110 var(--w-formulae));
  border-radius: 30px 0 0 30px;
  background-color: var(--color3);
  position: relative;

  &::before {
    content: '';
    display: block;
    width: 410px;
    height: 101px;
    background: url(/recruit/newgraduates/shared/images/bg-orn-rt.svg) no-repeat right bottom / auto 100%;
    position: absolute;
    top: -100px;
    right: 0;
  }
}
@media (width < 1200px) {
  .facility-area {
    padding-left: calc(65 / 1400 * 100vw)
  }
}

.facilities {
  font-feature-settings: "palt";
  display: block;
  width: 100%;
  max-width: calc(930 var(--w-formulae));

  & + & {
    margin-top: calc(65 var(--w-formulae));
  }

  & .fac-name {
    font-size: calc(18 var(--w-formulae));
    font-weight: 700;
    color: var(--pro-color1);
    margin-bottom: calc(10 var(--w-formulae));
  }
  & .fac-txt {
    font-size: calc(14 var(--w-formulae));
    line-height: 2;
    margin-bottom: calc(15 var(--w-formulae));
  }
}
.facility-list ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(calc(300 var(--w-formulae)), 1fr));
  gap: calc(15 var(--w-formulae));

  &::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
  }

  & li {
    display: block;

    & > img,
    & figure {
      display: block;
      border-radius: 20px;
      overflow: hidden;
      position: relative;

      & figcaption {
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        font-size: calc(13 var(--w-formulae));
        background-color: var(--pro-color1);
        color: #fff;
        line-height: 1.9230769230769231;
        padding: 0 .75em 0 1.25em;
      }
    }
  }
  & .des-txt {
    display: block;
    padding: 1em .75em;
    font-size: calc(14 var(--w-formulae));
    line-height: 1.7142857142857142
  }
}
.facility-list ul li:nth-child(2) {
  --el-index: 3;
}
.facility-list ul li:nth-child(3) {
  --el-index: 6;
}

