@charset "UTF-8";
/* p-topMv
-----------------------------------------------
------------------ */
.p-topMV {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-topMV__image {
  width: 100%;
}
.p-topMV__image__img {
  aspect-ratio: 1280/542;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 768px) {
  .p-topMV__image__img {
    aspect-ratio: 375/550;
  }
}
.p-topMV__textBox {
  position: absolute;
  padding-inline: 1em;
}
@media (max-width: 768px) {
  .p-topMV__textBox {
    width: 100%;
  }
}
.p-topMV__catch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  font-size: clamp(30px, 3.2407407407vw, 35px);
  font-weight: 400;
  letter-spacing: 0.08em;
  color: #fff;
}
@media (max-width: 768px) {
  .p-topMV__catch {
    width: 100%;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (max-width: 768px) {
  .p-topMV__catchItem {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
  }
}

/* p-topNews
-----------------------------------------------
------------------ */
.p-topNews {
  padding-top: 100px;
  margin-top: -100px;
}
@media (max-width: 768px) {
  .p-topNews {
    padding-top: 60px;
    margin-top: -60px;
  }
}
.p-topNews__wrapper {
  position: relative;
  z-index: 1;
  overflow-x: hidden;
}
.p-topNews__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 34px;
  padding-top: 68px;
  padding-bottom: 58px;
}
@media (max-width: 768px) {
  .p-topNews__head {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 33px;
    padding-bottom: 0;
  }
}
.p-topNews__contents {
  background-color: #fff;
  color: #000;
  padding-block: 27px 42px;
}
@media (max-width: 768px) {
  .p-topNews__contents {
    padding-top: 40px;
    padding-bottom: 76px;
    background-color: initial;
  }
}
.p-topNews__contentWrapper + .p-topNews__contentWrapper {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid #c9c9c9;
}
@media (max-width: 768px) {
  .p-topNews__contentWrapper + .p-topNews__contentWrapper {
    margin-top: 12px;
    padding-top: 14px;
  }
}
.p-topNews__content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 70.1369863014% 16.1643835616%;
  grid-template-columns: 70.1369863014% 16.1643835616%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 768px) {
  .p-topNews__content {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media (min-width: 769px) {
  .p-topNews__content:hover {
    opacity: 0.7;
  }
}
.p-topNews__date {
  font-size: clamp(12px, 1.6666666667vw, 18px);
  line-height: 1.1111111111;
  letter-spacing: 0.08em;
}
.p-topNews__title {
  margin-top: 16px;
  font-size: clamp(10px, 1.4814814815vw, 16px);
  line-height: 1.5625;
  letter-spacing: 0.08em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
}
@media (max-width: 768px) {
  .p-topNews__title {
    margin-top: 2px;
  }
}
.p-topNews__image {
  max-width: 177px;
  aspect-ratio: 177/112;
  overflow: hidden;
}
@media (max-width: 768px) {
  .p-topNews__image {
    display: none;
  }
}
.p-topNews__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* p-topAbout
-----------------------------------------------
------------------ */
.p-topAbout {
  overflow: hidden;
  padding-top: 100px;
  margin-top: -100px;
}
@media (max-width: 768px) {
  .p-topAbout {
    padding-top: 60px;
    margin-top: -60px;
  }
}
.p-topAbout__head {
  padding-block: 57px 60px;
}
@media (max-width: 768px) {
  .p-topAbout__head {
    padding-block: 38px 29px;
  }
}
.p-topAbout__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 1em;
}
@media (max-width: 768px) {
  .p-topAbout__content {
    display: block;
  }
}
.p-topAbout__img {
  aspect-ratio: 634/506;
  width: 100%;
  height: auto;
  min-height: 530px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 768px) {
  .p-topAbout__img {
    aspect-ratio: 375/171;
    min-height: initial;
  }
}
.p-topAbout__items {
  padding-block: 59px 53px;
  width: 49%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media (max-width: 768px) {
  .p-topAbout__items {
    width: 100%;
    position: relative;
    z-index: 10;
    padding-block: 34px 0;
  }
}
.p-topAbout__title {
  font-size: clamp(14px, 1.8518518519vw, 20px);
  line-height: 1.5;
  letter-spacing: 0.2em;
}
.p-topAbout__lists {
  margin-top: 20px;
  font-size: clamp(12px, 1.2962962963vw, 14px);
  line-height: 1.7857142857;
  letter-spacing: 0.2em;
}
@media (max-width: 768px) {
  .p-topAbout__lists {
    margin-top: 14px;
    line-height: 1.25;
  }
}
.p-topAbout__text {
  margin-top: 25px;
  margin-right: 20px;
  font-size: clamp(10px, 1.2962962963vw, 14px);
  line-height: 1.4285714286;
  letter-spacing: 0.2em;
}
@media (max-width: 768px) {
  .p-topAbout__text {
    margin-top: 12px;
    margin-right: 0;
  }
}
.p-topAbout__message {
  margin-top: 50px;
}
@media (max-width: 768px) {
  .p-topAbout__message {
    margin-top: 33px;
  }
}
.p-topAbout__messageEn {
  font-size: clamp(10px, 1.2962962963vw, 14px);
  line-height: 1.0714285714;
  letter-spacing: 0.2em;
  font-weight: 700;
  font-family: var(--en);
}
.p-topAbout__messageJa {
  margin-top: 8px;
  font-size: clamp(22px, 2.7777777778vw, 30px);
}
@media (max-width: 768px) {
  .p-topAbout__messageJa {
    margin-top: 5px;
    line-height: 1.4;
  }
}
.p-topAbout__btn {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .p-topAbout__btn {
    margin-top: 18px;
  }
}

/* p-topPerson
-----------------------------------------------
------------------ */
.p-topPerson {
  padding-top: 100px;
  margin-top: -100px;
}
@media (max-width: 768px) {
  .p-topPerson {
    padding-top: 60px;
    margin-top: -60px;
  }
}
.p-topPerson__head {
  padding-block: 67px 64px;
}
@media (max-width: 768px) {
  .p-topPerson__head {
    padding-block: 53px 26px;
  }
}
.p-topPerson__contents {
  padding-block: 85px 140px;
}
@media (max-width: 768px) {
  .p-topPerson__contents {
    padding-block: 51px 110px;
    position: relative;
    z-index: 10;
    overflow-x: hidden;
  }
}
.p-topPerson__contents:last-of-type {
  padding-block: 85px 57px;
}
@media (max-width: 768px) {
  .p-topPerson__contents:last-of-type {
    padding-block: 51px 12px;
  }
}
.p-topPerson__content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 59.5302619693% 32.0686540199%;
  grid-template-columns: 59.5302619693% 32.0686540199%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 768px) {
  .p-topPerson__content {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    row-gap: 10px;
    margin-inline: -14px;
  }
}
.p-topPerson__topPerson__image {
  width: 100%;
}
@media (max-width: 768px) {
  .p-topPerson__names {
    margin-left: 14px;
  }
}
.p-topPerson__title {
  display: inline-block;
  width: 100%;
  max-width: 161px;
  padding: 8px 11px 5px;
  text-align: center;
  font-size: clamp(12px, 1.4814814815vw, 16px);
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
  background-color: var(--col-blue);
}
@media (max-width: 768px) {
  .p-topPerson__title {
    max-width: 120px;
    text-align: start;
    padding: 5px 11px;
  }
}
.p-topPerson__titleBox {
  border-bottom: 1px solid var(--col-blue);
}
.p-topPerson__nameTitle {
  font-size: clamp(12px, 1.8518518519vw, 20px);
  letter-spacing: 0.2em;
}
.p-topPerson__name {
  margin-top: 8px;
  font-size: clamp(20px, 2.7777777778vw, 30px);
  letter-spacing: 0.6em;
}
@media (max-width: 768px) {
  .p-topPerson__name {
    margin-top: 5px;
    letter-spacing: 0.4em;
  }
}
.p-topPerson__nameEn {
  margin-top: 12px;
  font-size: clamp(10px, 1.2962962963vw, 14px);
  letter-spacing: 0.2em;
}
@media (max-width: 768px) {
  .p-topPerson__nameEn {
    margin-top: 4px;
  }
}
.p-topPerson__profile {
  margin-top: 46px;
}
@media (max-width: 768px) {
  .p-topPerson__profile {
    margin-bottom: 20px;
  }
}
.p-topPerson__profileText {
  margin-top: 18px;
  font-size: clamp(10px, 1.2962962963vw, 14px);
  line-height: 1.7857142857;
  letter-spacing: 0.2em;
}
.p-topPerson__profileBtnWrapper {
  text-align: right;
  margin-top: 0.5em;
}
.p-topPerson__lists {
  margin-top: 28px;
}
@media (max-width: 768px) {
  .p-topPerson__lists {
    margin-top: 13px;
    margin-left: 8px;
  }
}
.p-topPerson__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  gap: 1%;
  font-size: clamp(10px, 1.1111111111vw, 12px);
  letter-spacing: 0.1em;
}
.p-topPerson__list + .p-topPerson__list {
  margin-top: 19px;
}
@media (max-width: 768px) {
  .p-topPerson__list + .p-topPerson__list {
    margin-top: 5px;
  }
}
.p-topPerson__list dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-topPerson__list:last-child {
  margin-top: 19px;
}
@media (max-width: 768px) {
  .p-topPerson__list:last-child {
    margin-top: 5px;
  }
}
.p-topPerson__listBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
  font-size: clamp(10px, 1.1111111111vw, 12px);
  letter-spacing: 0.1em;
  margin-top: 32px;
}
@media (max-width: 768px) {
  .p-topPerson__listBox {
    margin-top: 16px;
    gap: 5px;
  }
}
.p-topPerson__listBox > dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
@media (max-width: 768px) {
  .p-topPerson__listBox > dd {
    gap: 5px;
  }
}
.p-topPerson__text {
  margin-top: 19px;
  font-size: clamp(10px, 1.1111111111vw, 12px);
  letter-spacing: 0.1em;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
@media (max-width: 768px) {
  .p-topPerson__text {
    margin-top: 5px;
  }
}
.p-topPerson__profileWrapper {
  display: -ms-grid;
  display: grid;
  row-gap: 20px;
}
.p-topPerson__career--02 {
  margin-top: 20px;
}

/* p-topRecruit
-----------------------------------------------
------------------ */
.p-topRecruit {
  overflow: hidden;
  padding-top: 100px;
  margin-top: -100px;
}
@media (max-width: 768px) {
  .p-topRecruit {
    padding-top: 60px;
    margin-top: -60px;
  }
}
.p-topRecruit__head {
  padding-block: 62px 65px;
}
@media (max-width: 768px) {
  .p-topRecruit__head {
    padding-block: 39px 24px;
  }
}
.p-topRecruit__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 1em;
}
@media (max-width: 768px) {
  .p-topRecruit__content {
    display: block;
  }
}
.p-topRecruit__items {
  padding-block: 46px 30px;
  width: 43.5%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 768px) {
  .p-topRecruit__items {
    width: 100%;
    position: relative;
    z-index: 10;
    padding-block: 46px 2px;
    display: block;
  }
}
.p-topRecruit__image {
  display: block;
  width: 100vw;
  margin-right: calc(50% - 50vw);
  position: relative;
}
@media (max-width: 768px) {
  .p-topRecruit__image {
    margin-inline: -36px;
  }
}
.p-topRecruit__img {
  aspect-ratio: 745/477;
  width: 100%;
  height: 100%;
  min-height: 461px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 768px) {
  .p-topRecruit__img {
    aspect-ratio: 375/171;
    min-height: initial;
  }
}
.p-topRecruit__itemBox {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 12% 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 75px 12%;
}
@media (max-width: 768px) {
  .p-topRecruit__itemBox {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 31px 0;
  }
}
.p-topRecruit__itemBox .p-topRecruit__item:nth-child(1),
.p-topRecruit__itemBox .p-topRecruit__item:nth-child(2) {
  -ms-grid-column: 1;
  grid-column: 1;
}
.p-topRecruit__itemBox .p-topRecruit__item:nth-child(3) {
  -ms-grid-column: 2;
  grid-column: 2;
  -ms-grid-row: 1;
  grid-row: 1;
}
@media (max-width: 768px) {
  .p-topRecruit__itemBox .p-topRecruit__item:nth-child(3) {
    -ms-grid-column: 1;
    grid-column: 1;
    grid-row: auto;
  }
}
.p-topRecruit__itemTitle, .p-topRecruit__itemTitle--letterSpacing {
  font-size: clamp(16px, 1.6666666667vw, 18px);
  line-height: 0.8888888889;
  letter-spacing: 0.05em;
}
.p-topRecruit__itemTitle--letterSpacing {
  letter-spacing: 0.2em;
}
.p-topRecruit__itemText {
  margin-top: 19px;
  font-size: 14px;
  letter-spacing: 0.2em;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-topRecruit__itemText {
    margin-top: 14px;
  }
}
.p-topRecruit__text {
  margin-top: 42px;
  font-size: clamp(12px, 1.2962962963vw, 14px);
  line-height: 2.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-topRecruit__text {
    line-height: 2.0833333333;
    margin-top: 20px;
  }
}
.p-topRecruit__btn {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .p-topRecruit__btn {
    margin-top: 16px;
  }
}

/* p-topInfo
-----------------------------------------------
------------------ */
.p-topInfo {
  padding-top: 100px;
  margin-top: -100px;
}
@media (max-width: 768px) {
  .p-topInfo {
    border-bottom: 1px solid #bcbaba;
    padding-top: 60px;
    margin-top: -60px;
  }
}
.p-topInfo__head {
  padding-block: 65px 67px;
}
@media (max-width: 768px) {
  .p-topInfo__head {
    padding-block: 46px 27px;
  }
}
.p-topInfo__contents {
  position: relative;
  z-index: 10;
  overflow-x: hidden;
}
.p-topInfo__content {
  padding-block: 41px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 53.2420091324% 40.7305936073%;
  grid-template-columns: 53.2420091324% 40.7305936073%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 768px) {
  .p-topInfo__content {
    padding-block: 38px 49px;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 17px;
  }
}
.p-topInfo__image {
  width: 100%;
}
.p-topInfo__items {
  margin-top: 83px;
}
@media (max-width: 768px) {
  .p-topInfo__items {
    margin-top: 0;
  }
}
.p-topInfo__listsNumber {
  margin-top: 24px;
}
.p-topInfo__list, .p-topInfo__list--number {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 22% auto;
  grid-template-columns: 22% auto;
  font-size: clamp(12px, 1.4814814815vw, 16px);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .p-topInfo__list, .p-topInfo__list--number {
    -ms-grid-columns: 35% auto;
    grid-template-columns: 35% auto;
  }
}
.p-topInfo__list + .p-topInfo__list, .p-topInfo__list--number + .p-topInfo__list, .p-topInfo__list + .p-topInfo__list--number, .p-topInfo__list--number + .p-topInfo__list--number {
  margin-top: 13px;
}
@media (max-width: 768px) {
  .p-topInfo__list + .p-topInfo__list, .p-topInfo__list--number + .p-topInfo__list, .p-topInfo__list + .p-topInfo__list--number, .p-topInfo__list--number + .p-topInfo__list--number {
    margin-top: 18px;
  }
}
@media (max-width: 768px) {
  .p-topInfo__list--number + .p-topInfo__list--number {
    margin-top: 4px;
  }
}
.p-topInfo__listDt, .p-topInfo__listDd-Title {
  letter-spacing: 0.2em;
}
.p-topInfo__number {
  letter-spacing: 0.1em;
}
.p-topInfo__mapTitle {
  font-size: clamp(12px, 1.4814814815vw, 16px);
  line-height: 1.5;
  letter-spacing: 0.2em;
}
.p-topInfo__mapArea {
  margin-top: 14px;
  max-width: 443px;
}
@media (max-width: 768px) {
  .p-topInfo__mapArea {
    margin-top: 6px;
  }
}
.p-topInfo__mapArea iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 443/232;
}
.p-topInfo__addressBox {
  margin-top: 28px;
  font-size: clamp(12px, 1.4814814815vw, 16px);
  line-height: 1.5;
  letter-spacing: 0.2em;
}
@media (max-width: 768px) {
  .p-topInfo__addressBox {
    margin-top: 23px;
  }
}
.p-topInfo__text {
  margin-top: 8px;
}
@media (max-width: 768px) {
  .p-topInfo__text {
    margin-top: 15px;
  }
}
.p-topInfo__telLink {
  pointer-events: none;
}
@media (max-width: 768px) {
  .p-topInfo__telLink {
    pointer-events: auto;
  }
}

/* p-topHead
-----------------------------------------------
------------------ */
.p-topHead {
  background-color: var(--bg-gray);
}
@media (max-width: 768px) {
  .p-topHead {
    background-color: initial;
    position: relative;
    z-index: 10;
    overflow-x: hidden;
  }
}

/* p-topTitle
-----------------------------------------------
------------------ */
.p-topTitle {
  font-size: clamp(16px, 2.2222222222vw, 24px);
  color: var(--col-blue);
  line-height: 0.875;
  letter-spacing: 0.2em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-topTitle::before {
  display: inline-block;
  content: "";
  width: 3px;
  height: 1em;
  margin-right: 0.6em;
  background-color: var(--col-blue);
}
@media (max-width: 768px) {
  .p-topTitle::before {
    width: 2px;
    height: 1.1em;
    margin-right: 0.4em;
  }
}

/* p-topButton
-----------------------------------------------
------------------ */
.p-topBtn, .p-topBtn--Person {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 128px;
  width: 100%;
  gap: 14px;
  padding: 0px 15px 2px 13px;
  padding: 0px 2px 2px;
  font-size: clamp(10px, 1.1111111111vw, 12px);
  font-family: var(--gothic);
  line-height: 2.0833333333;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: var(--col-blue);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .p-topBtn, .p-topBtn--Person {
    line-height: 2.1;
    gap: 8px;
    padding: 0px 2px;
    max-width: 99px;
  }
}
.p-topBtn--Person {
  font-family: var(--mincho);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 11px;
  max-width: 120px;
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: initial;
}
@media (max-width: 768px) {
  .p-topBtn--Person {
    padding: 0 11px 2px;
  }
}
@media (min-width: 769px) {
  .p-topBtn:hover, .p-topBtn--Person:hover {
    opacity: 0.7;
  }
}
.p-topBtn__icon, .p-topBtn__icon--right, .p-topBtn__icon--down {
  aspect-ratio: 5/10;
  max-width: 6px;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .p-topBtn__icon, .p-topBtn__icon--right, .p-topBtn__icon--down {
    max-width: 4px;
  }
}
.p-topBtn__icon--down {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
.p-topBtn__icon--right {
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

/* p-topTriangle
-----------------------------------------------
------------------ */
.p-topTriangle, .p-topTriangle--left02, .p-topTriangle--left, .p-topTriangle--02 {
  display: none;
}
@media (max-width: 768px) {
  .p-topTriangle, .p-topTriangle--left02, .p-topTriangle--left, .p-topTriangle--02 {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    clip-path: polygon(100% 0, 0 0, 100% 100%);
    background-color: #fff;
    aspect-ratio: 120/70;
    width: 140px;
    height: auto;
    z-index: -1;
  }
}
.p-topTriangle--02 {
  right: -36px;
}
.p-topTriangle--left {
  top: initial;
  bottom: 0;
  left: 0;
  clip-path: polygon(0 0, 0 100%, 100% 100%);
}
.p-topTriangle--left02 {
  top: initial;
  bottom: 0;
  left: -36px;
  clip-path: polygon(0 0, 0 100%, 100% 100%);
}

/* p-topAccordion
-----------------------------------------------
------------------ */
.p-topAccordion {
  cursor: pointer;
  /* -------- アコーディオンの中身のスタイル -------- */
}
.p-topAccordion.is-open .p-topAccordion__content {
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
}
.p-topAccordion.is-open .p-topBtn__icon--down {
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg);
}
.p-topAccordion__title {
  display: block;
}
.p-topAccordion__titleInner {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px 24px;
  border: 1px solid #d2beff;
  font-weight: bold;
  color: #025;
}
.p-topAccordion__content {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 0fr;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 0.6s ease-in-out;
  transition: grid-template-rows 0.6s ease-in-out;
  transition: grid-template-rows 0.6s ease-in-out, -ms-grid-rows 0.6s ease-in-out;
}
.p-topAccordion__contentInner {
  overflow: hidden;
}
.p-topAccordion__contentBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}

/* p-topAos
-----------------------------------------------
------------------ */
/* fade-upの移動距離 */
[data-aos=fade-up] {
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
}

[data-aos=fade-up].aos-animate {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* 初期状態（translateX(0%)） */
[data-aos=custom-slide-left] {
  -webkit-transform: translateX(0%);
          transform: translateX(0%);
  -webkit-transition: opacity 0.9s ease, -webkit-transform 0.9s ease;
  transition: opacity 0.9s ease, -webkit-transform 0.9s ease;
  transition: transform 0.9s ease, opacity 0.9s ease;
  transition: transform 0.9s ease, opacity 0.9s ease, -webkit-transform 0.9s ease;
}

/* custom-slide-leftの移動距離 */
[data-aos=custom-slide-left].aos-animate {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

/* SlideBox
-----------------------------------------------
------------------ */
.p-topSlideBox, .p-topSlideBox--recruit {
  display: block;
  width: 100vw;
  height: auto;
  min-height: 530px;
  margin-right: calc(50% - 50vw);
  position: relative;
}
@media (max-width: 768px) {
  .p-topSlideBox, .p-topSlideBox--recruit {
    min-height: initial;
    margin-inline: -36px;
  }
}
.p-topSlideBox--recruit {
  min-height: 461px;
}
@media (max-width: 768px) {
  .p-topSlideBox--recruit {
    min-height: initial;
  }
}
.p-topSlideBox__imageWrapper {
  position: relative;
  z-index: -1;
}
@media (max-width: 768px) {
  .p-topSlideBox__imageWrapper {
    z-index: initial;
  }
}
.p-topSlideBox__image {
  width: 100%;
}
@media (max-width: 768px) {
  .p-topSlideBox__image {
    z-index: initial;
  }
}
.p-topSlideBox__image::after {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  width: 26%;
  height: 101%;
  background-color: #fff;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
@media (max-width: 768px) {
  .p-topSlideBox__image::after {
    content: none;
  }
}
.p-topSlideBox__image--recruit::after {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  width: 30%;
  height: 101%;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
}
@media (max-width: 768px) {
  .p-topSlideBox__image--recruit::after {
    content: none;
  }
}
.p-topSlideBox .p-topSlideItem, .p-topSlideBox .p-topSlideItem--recruit, .p-topSlideBox--recruit .p-topSlideItem, .p-topSlideBox--recruit .p-topSlideItem--recruit {
  position: absolute;
  inset: 0;
  background-color: #fff;
  clip-path: polygon(0% 0, 100% 0, 80% 100%, 0% 100%);
  top: 0;
  right: -228px;
}
.p-topSlideBox .p-topSlideItem--recruit, .p-topSlideBox--recruit .p-topSlideItem--recruit {
  clip-path: polygon(0 0, 80% 0, 100% 100%, 0% 100%);
}

/* u-display-none
----------------------------------------------------------------- */
.u-displayNone--PU {
  display: block;
}
@media (max-width: 768px) {
  .u-displayNone--PU {
    display: none;
  }
}
.u-displayNone--PO {
  display: none;
}
@media (max-width: 768px) {
  .u-displayNone--PO {
    display: block;
  }
}
.u-displayNone--flexPU {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 768px) {
  .u-displayNone--flexPU {
    display: none;
  }
}
.u-displayNone--flexPO {
  display: none;
}
@media (max-width: 768px) {
  .u-displayNone--flexPO {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}