@charset "utf-8";

.reindex-container {
  div:before,
  div:after,
  ul:before,
  ul:after,
  dl:before,
  dl:after {
    content: none;
    display: unset;
  }
}


:root {
  /* 色 */
  --color-blue-green: #0AA;
  --color-white: #fff;
  --color-right-gray: #F3F3F3;
  --color-right-blue: #F2FBFF;
  --color-blue: #36C;
  --color-marker: #FF0;
  --color-yellow: #FFFCE4;
  --color-orange: #EF6000;
  --color-green: #088;

  /* グラデーション */
  --gradient-01: linear-gradient(to bottom right, rgb(255 162 0 / 100%) 0%, var(--color-orange) 100%);
  --gradient-02: linear-gradient(180deg, rgb(255 162 0 / 100%) 0%, var(--color-orange) 100%);
  --gradient-03: linear-gradient(180deg, rgb(0 185 185 / 100%) 0, var(--color-green) 100%);
}


/*
---------------------------------------------------------------------
共通
---------------------------------------------------------------------
*/
.reindex-common-head-title {
  font-size: 20px;
  text-align: center;
  font-weight: 600;
  padding-top: 50px;
  position: relative;
}

.reindex-common-head-title > span {
  position: relative;

  &::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    background-repeat: no-repeat;
    margin: auto;
    background-position: center;
  }
}

.reindex-common-orange-btn,
.reindex-common-green-btn {
  display: inline-block;
  background: var(--gradient-02);
  border-radius: 1000px;
  width: 100%;
  margin-top: 15px;

  > a {
    font-size: 18px;
    font-weight: 600;
    color: var(--color-white);
    text-decoration: none;
    text-align: center;
    display: block;
    padding: 19px 25px 20px;
    border: 2px solid var(--color-orange);
    border-radius: 1000px;
    line-height: 1.4;
    background-image: url('data: image/svg+xml;utf8,<svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.717529 0.717896L6.71753 6.53555L0.717529 12.7179" stroke="%23ffffff" stroke-width="2"/></svg>');
    background-position: center right 13px;
    background-size: 8px auto;
    background-repeat: no-repeat;
    width: 100%;
    box-sizing: border-box;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
}

.reindex-common-green-btn {
  background: var(--gradient-03);

  > a {
    border: 2px solid var(--color-green);
  }
}

.reindex-common-btn {
  > a {
    font-size: 15.5px;
    font-weight: 600;
    color: var(--color-blue);
    text-decoration: none;
    text-align: center;
    display: block;
    padding: 15px 25px;
    border: 2px solid var(--color-blue);
    border-radius: 1000px;
    background-color: var(--color-white);
    line-height: 1.4;
    position: relative;
    background-image: url('data: image/svg+xml;utf8,<svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.717529 0.717896L6.71753 6.53555L0.717529 12.7179" stroke="%233366CC" stroke-width="2"/></svg>');
    background-position: center right 13px;
    background-size: 9px auto;
    background-repeat: no-repeat;
  }

  ._reindex-small {
    font-size: 13px;
    font-weight: 400;
  }

  + .reindex-common-btn {
    margin-top: 20px;
  }
}

.reindex-common-btn.sub {
  > a {
    padding: 10px 25px;
    border: 1px solid var(--color-blue);
    width: 75%;
    margin: 0 auto;
  }
}

._reindex-hide-sp {
  display: none;
}

._reindex-marker {
  color: var(--color-blue);
  font-weight: 600;
  background: linear-gradient(transparent 40%, var(--color-marker) 60%);
}

@media print,
screen and (min-width: 641px) {
  .reindex-common-head-title {
    font-size: 32px;
    padding-top: 0;
  }
  .reindex-common-orange-btn,
  .reindex-common-green-btn {
    margin-top: 0;

    > a {
      font-size: 24px;
      display: block;
      padding: 23px 25px 21px;
      border: 3px solid var(--color-orange);
      background-position: center right 18px;
      background-size: 13px auto;
    }
  }
  .reindex-common-green-btn {
    > a {
      border: 3px solid var(--color-green);
    }
  }
  .reindex-common-btn {
    > a {
      font-size: 20px;
      padding: 17px 25px 16px;
      background-position: center right 18px;
      background-size: 11px auto;
    }
    ._reindex-small {
      font-size: 16px;
      font-weight: 400;
    }
    + .reindex-common-btn {
      margin-top: 30px;
    }
  }
  .reindex-common-btn.sub {
    > a {
      font-size: 16px;
      width: 60%;
    }
    }
}


/* ホバー対応 */
@media (hover: hover) and (pointer: fine) {
  .reindex-application-btn a:hover,
  .reindex-info-list li a:hover,
  .reindex-method-type-btn a:hover,
  .reindex-common-orange-btn a:hover,
  .reindex-common-green-btn a:hover,
  .reindex-common-btn a:hover {
    opacity: 0.7;
  }
}


/*
---------------------------------------------------------------------
メインタイトル
---------------------------------------------------------------------
*/
.reindex-mv-title-sub {
  background-color: var(--color-blue-green);
  color: var(--color-white);
  font-size: 18px;
  line-height: 1.2;
  font-weight: 600;
  text-align: center;
  padding: 12px 10px;
}
.reindex-mv-img-wrap {
  position: relative;
}
/* アイコン */
.reindex-mv-icon {
  position: absolute;
  top: 8px;
  left: 20px;
  background-image: var(--gradient-01);
  color: var(--color-white);
  border: 2px solid var(--color-white);
  border-radius: 50%;
  box-shadow: 0 0 10px rgb(0 0 0 / 16%);
  width: 103px;
  height: 103px;
  display: grid;
  place-content: center;
  font-size: 14.5px;
  font-weight: 600;
  text-align: center;
  line-height: 1.6;
}
.reindex-mv-icon span em {
  font-size: 12px;
  font-style: normal;
}
.reindex-mv-title-main {
  position: absolute;
  bottom: -24.5px;
  left: 0;
  right: 0;
  margin-inline: auto;
  font-size: 24px;
  line-height: 130%;
  text-align: center;
  background-color: var(--color-blue);
  padding: 9px 15px;
  color: var(--color-white);
  width: fit-content;
  margin-inline: auto;
  z-index: 1;
  font-weight: 600;
}
.reindex-mv-img-box img {
  width: 100%;
}

@media print,
screen and (min-width: 641px) {
  .reindex-mv-title-sub {
    font-size: 20px;
    font-weight: 700;
    padding: 12px 10px 9px;
  }

  /* アイコン */
  .reindex-mv-icon {
    position: absolute;
    top: -20px;
    left: 50%;
    border: 3px solid var(--color-white);
    width: 134px;
    height: 134px;
    font-size: 18px;
    font-weight: 600;
    margin-left: -395px;
  }
  .reindex-mv-icon span em {
    font-size: 14px;
  }
  .reindex-mv-title-main {
    bottom: 50%;
    transform: translate(0, 50%);
    font-size: 40px;
    padding: 18px 22px 11px;
  }
  .reindex-mv-img-box {
    height: 280px;
    overflow: hidden;
  }
  .reindex-mv-img-box img {
    width: 100%;
    height: 280px;
    object-fit: cover;
  }

}

/*
---------------------------------------------------------------------
団体受験制度とは
---------------------------------------------------------------------
*/
.reindex-about-wrap {
  padding: 73px 15px 50px;
  background-color: var(--color-right-blue);
}
.reindex-about-head-title {
  font-size: 20px;
  text-align: center;
  font-weight: 600;
  padding-top: 66px;
  position: relative;
}
.reindex-about-head-title > span {
  position: relative;

  &::before,
  &::after {
    content: "";
    position: absolute;
    top: -66px;
    left: 0;
    right: 0;
    background-repeat: no-repeat;
    width: 124px;
    height: 52px;
    margin: auto;
  }

  &::before {
    background-image: url('/organization/_assets/img/icon/common-icon-02.svg');
    background-size: 54px auto;
    background-position: center left;

  }

  &::after {
    background-image: url('/organization/_assets/img/icon/common-icon-01.svg');
    background-size: 50px auto;
    background-position: center right;

  }
}
.reindex-about-text {
  font-size: 16px;
  line-height: 1.8;
  margin-top: 8px;
}
.reindex-about-list-wrap {
  margin-top: 24px;
}
.reindex-about-list {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  row-gap: 20px;
  padding-inline: 12.5px;

  > li {
    aspect-ratio: 64 / 39;
    background-position: center;
    background-size: 100%;
    overflow: hidden;
    border-radius: 5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: flex-end;
  }

  > li:nth-child(1) {
    background-image: url('/organization/_assets/img/about-img-01.png');
  }

  > li:nth-child(2) {
    background-image: url('/organization/_assets/img/about-img-02.png');
  }

  > li:nth-child(3) {
    background-image: url('/organization/_assets/img/about-img-03.png');
  }
}
.reindex-about-list-content {
  width: 100%;
  text-align: center;
  padding: 25px 15px;
  background-color: rgb(51 102 204 / 90%);
  color: var(--color-right-gray);
  font-size: 18px;
}
/* ボタン */
.reindex-about-btn-box {
  margin-top: 30px;
  text-align: center;
}
@media print,
screen and (min-width: 641px) {
  .reindex-about-wrap {
    padding: 0;
  }
  .reindex-about-inner {
    max-width: 1020px;
    margin-inline: auto;
    padding: 70px 15px 80px;
  }
  .reindex-about-head-title {
    font-size: 32px;
    line-height: 1.2;
    text-align: center;
    font-weight: 600;
    padding: 0 0 0;
  }
  .reindex-about-head-title > span {
    padding: 10px 70px 0 75px;
    &::before {
      content: "";
      position: absolute;
      top: 0;
      right: auto;
      width: 54px;
      height: 52px;
    }
    &::after {
      content: "";
      position: absolute;
      top: 0;
      left: auto;
      width: 54px;
      height: 52px;
    }
  }
  .reindex-about-text {
    font-size: 18px;
    margin-top: 12px;
    text-align: center;
  }
  .reindex-about-list-wrap {
    margin-top: 40px;
  }
  .reindex-about-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    row-gap: 0;
    column-gap: 30px;
    padding-inline: 0;

    > li {
      aspect-ratio: 64 / 45;
    }
  }
  .reindex-about-list-content {
    padding: 20px 15px;
    font-size: 20px;
  }
  /* ボタン */
  .reindex-about-btn-box {
    margin: 50px auto 0;
    max-width: 640px;
  }
}

/*
---------------------------------------------------------------------
資料・料金表ダウンロード・デモ申込
---------------------------------------------------------------------
*/
.reindex-guide-wrap {
  background-color: var(--color-yellow);
  padding-inline: 15px;
}
.reindex-guide-title {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
}
.reindex-guide-box {
  padding-block: 30px 25px;

  + .reindex-guide-box {
    padding-top: 25px;
    padding-bottom: 30px;
    border-top: 1px solid #999;
  }
}
.reindex-guide-box span {
  display: block;
  font-weight: 600;
}
.reindex-guide-box._reindex-download {
  .reindex-guide-title-box {
    padding-inline: 58px;
  }
  .reindex-guide-icon {
    width: 42px;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.reindex-guide-box._reindex-application {
  .reindex-guide-title-box {
    padding-inline: 65px;
  }
  .reindex-guide-icon {
    width: 46px;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.reindex-guide-title-box {
  position: relative;
  margin-inline: auto;
	padding-bottom: 10px;
}

@media print,
screen and (min-width: 641px) {
  .reindex-guide-inner {
    max-width: 920px;
    margin-inline: auto;
  }
  .reindex-guide-title {
    text-align: left;
  }
  .reindex-guide-title span {
    font-size: 20px;
    text-align: left;
  }
  .reindex-guide-box {
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;

    + .reindex-guide-box {
      padding-top: 30px;
      padding-bottom: 46px;
    }
  }
  .reindex-guide-box._reindex-download {
    .reindex-guide-title-box {
      padding-inline: 58px 0;
		padding-bottom: 0;
    }
    .reindex-guide-icon {
      width: 48px;
      position: absolute;
      top: 50%;
      left: 0;
      transform: translate(0, -50%);
    }
  }
  .reindex-guide-box._reindex-application {
	  display: block;
	  text-align: center;
    .reindex-guide-title-box {
      padding-inline: 65px 0;
    }
    .reindex-guide-icon {
      width: 52px;
      position: absolute;
      top: 50%;
      left: 0;
      transform: translate(0, -50%);
    }
	  .reindex-common-orange-btn{
		  width: 50%;
	  }
	  .reindex-common-orange-btn a {
		  padding: 10px;
	  }
  }
  .reindex-guide-title-box {
    width: auto;
    margin-inline: 0;
  }
}

/*
---------------------------------------------------------------------
受験の種類
---------------------------------------------------------------------
*/
.reindex-type-wrap {
  padding: 50px 15px;
  background: linear-gradient(#fff 26%, var(--color-right-blue) 26%);

  .reindex-common-head-title {
    padding-top: 54px;
  }
}
.reindex-type-wrap .reindex-common-head-title > span {
  &::before {
    background-image: url('/organization/_assets/img/icon/type-icon-01.svg');
    width: 47px;
    height: 47px;
    background-size: 45px auto;
    top: -54px;
  }
}
.reindex-type-text {
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
}

/* コンテンツ */
.reindex-type-content-wrap {
  margin-top: 27px;
  padding-inline: 12.5px;
}
.reindex-type-content-inner {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.reindex-type-content-box {
  background-color: var(--color-white);
  box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  border-top: 5px solid var(--color-blue);
  padding: 20px;
}
.reindex-type-content-img-box {
  background-color: #E6F7F7;
  padding: 8px;

  img {
    width: 60px;
    display: block;
    margin: auto;
  }
}
.reindex-type-content-title {
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  color: var(--color-blue);
  margin-top: 12px;
}
.reindex-type-content-title-sub {
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  color: var(--color-blue-green);
  margin-top: 5px;
}
.reindex-type-content-text {
  margin-top: 2px;
  margin-inline: 10px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
.reindex-type-btn {
  margin-top: 34px;
}

@media print,
screen and (min-width: 641px) {
  .reindex-type-wrap {
    padding: 0 15px;
    background: linear-gradient(#fff 50%, var(--color-right-blue) 50%);
    .reindex-common-head-title {
      padding-top: 0;
    }
  }
  .reindex-type-wrap .reindex-common-head-title > span {
    padding-inline: 60px;
    &::before {
      top: 50%;
      left: 0;
      right: auto;
      transform: translate(0, -60%);
    }
  }
  .reindex-type-inner {
    max-width: 1020px;
    padding: 80px 0;
    margin-inline: auto;
  }
  .reindex-type-text {
    font-size: 18px;
  }

  /* コンテンツ */
  .reindex-type-content-wrap {
    margin-top: 40px;
    padding-inline: 0;
  }
  .reindex-type-content-inner {
    display: flex;
    flex-direction: row;
    row-gap: 0;
    column-gap: 30px;
  }
  .reindex-type-content-box {
    width: 33.33%;
  }
  .reindex-type-content-img-box {
    padding: 10px;
  }
  .reindex-type-content-title {
    font-size: 22px;
  }
  .reindex-type-content-title-sub {
    font-size: 18px;
  }
  .reindex-type-btn {
    margin-top: 50px;
    display: grid;
    grid-template-columns: 1fr 320px;
    column-gap: 30px;

    .reindex-common-btn {
      margin-top: 0;
    }
  }
}

/*
---------------------------------------------------------------------
受験の手法
---------------------------------------------------------------------
*/
.reindex-method-wrap {
  padding: 50px 15px;

  .reindex-common-head-title {
    padding-top: 54px;
  }
}
.reindex-method-wrap .reindex-common-head-title > span {
  &::before {
    background-image: url('/organization/_assets/img/icon/method-icon-01.svg');
    width: 47px;
    height: 47px;
    background-size: 45px auto;
    top: -54px;
  }
}
.reindex-method-type-wrap {
  margin-top: 26px;
  border-top: 3px solid var(--color-blue);
  background-color: var(--color-right-blue);
  padding: 18px 15px 20px;
}
.reindex-method-type-title-all {
  font-size: 18px;
  line-height: 1.3;
  font-weight: 700;
  color: var(--color-blue);
  text-align: center;
}
.reindex-method-type-content {
  margin-top: 20px;
  border-top: 1px solid #ccc;
}
.reindex-method-type-content-box {
  margin-top: 25px;
  display: grid;
  grid-template-columns: 50px 1fr;
  column-gap: 15px;

  &:first-child {
    margin-top: 20px;
  }

  &._reindex-method-01 img {
    width: 35px;
  }
  &._reindex-method-02 img {
    width: 14px;
  }
  &._reindex-method-03 img {
    width: 35px;
  }
  &._reindex-method-04 img {
    width: 30px;
  }
  &._reindex-method-04 .reindex-method-type-text-box {
    align-self: center;
  }
}
.reindex-method-type-icon > span {
  display: block;
  width: 50px;
  height: 50px;
  background-color: var(--color-white);
  display: grid;
  place-items: center;
}
.reindex-method-type-title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--color-blue);
}
.reindex-method-type-text {
  font-size: 16px;
  line-height: 1.3;
}
.reindex-method-type-btn > a {
  margin-top: 10px;
  font-size: 16px;
  color: var(--color-blue);
  text-decoration: none;
  text-align: center;
  display: block;
  padding: 5px 20px 6px;
  border: 1px solid var(--color-blue);
  border-radius: 1000px;
  background-color: var(--color-white);
  line-height: 1.4;
  position: relative;
  background-image: url('data: image/svg+xml;utf8,<svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.717529 0.717896L6.71753 6.53555L0.717529 12.7179" stroke="%233366CC" stroke-width="2"/></svg>');
  background-position: center right 13px;
  background-size: 7px auto;
  background-repeat: no-repeat;
}
.reindex-method-type-img-box {
  margin-top: 20px;
  text-align: center;

  &:nth-child(1) img {
    width: 240px;
  }
  &:nth-child(2) img {
    width: 210px;
  }
}
.reindex-method-type {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.3;
  text-align: right;
}
.reindex-method-btn {
  margin-top: 26px;
}

@media print,
screen and (min-width: 641px) {
  .reindex-method-wrap {
    padding: 0 15px;
    .reindex-common-head-title {
      padding-top: 0;
    }
  }
  .reindex-method-wrap .reindex-common-head-title > span {
    padding-inline: 60px;
    &::before {
      top: 50%;
      left: 0;
      right: auto;
      transform: translate(0, -60%);
    }
  }
  .reindex-method-inner {
    padding: 80px 0;
  }
  .reindex-method-type-wrap {
    max-width: 1020px;
    margin-top: 8px;
    margin-inline: auto;
    border-top: 5px solid var(--color-blue);
    padding: 30px 46px 60px 55px;
    box-sizing: border-box;
  }
  .reindex-method-type-inner {
    display: grid;
    grid-template-columns: 125px 1fr 290px;
  }
  .reindex-method-type-title-all {
    font-size: 24px;
    text-align: left;
    align-self: center;
  }
  .reindex-method-type-content {
    margin-top: 0;
    border-top: none;
    border-left: 1px solid #ccc;
    padding: 0 5px 0 30px;
  }
  .reindex-method-type-content-box {
    margin-top: 20px;

    &:first-child {
      margin-top: 0;
    }
  }
  .reindex-method-type-title {
    font-size: 20px;
  }
  .reindex-method-type-btn {
    max-width: 240px;
  }
  .reindex-method-type-btn > a {
    padding: 8px 20px 6px;
  }
  .reindex-method-type-img-box {
    margin-top: 0;
    text-align: left;

    &:nth-child(1) img {
      display: block;
      width: 240px;
      margin-left: auto;
    }
    &:nth-child(2) {
      margin-top: 20px;
    }
    &:nth-child(2) img {
      width: 210px;
    }
  }
  .reindex-method-type {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.3;
    text-align: right;
    max-width: 1020px;
    margin-inline: auto;
  }
  .reindex-method-btn {
    margin-top: 50px;
    max-width: 640px;
    margin-inline: auto;
  }
}
/*
---------------------------------------------------------------------
試験別情報
---------------------------------------------------------------------
*/
.reindex-info-wrap {
  padding: 50px 15px;
  background-image: url('/organization/_assets/img/flow-bg-sp.png');
  background-size: 100%;
  background-color: #f8f8f8;
  background-repeat: no-repeat;

  .reindex-common-head-title {
    padding-top: 54px;
  }
}
.reindex-info-wrap .reindex-common-head-title > span {
  &::before {
    background-image: url('/organization/_assets/img/icon/info-icon-01.svg');
    width: 47px;
    height: 47px;
    background-size: 38px auto;
    top: -54px;
  }
}
.reindex-info-text {
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
  margin-top: 5px;
}
.reindex-info-list-wrap {
  margin-top: 26px;
}
.reindex-info-list li {
  border-bottom: 1px solid #ccc;

  &:first-child {
    border-top: 1px solid #ccc;
  }
}
.reindex-info-list li a {
  display: block;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.3;
  padding: 8px 2px 8px 25px;
  color: #333;
  background-image: url('data: image/svg+xml;utf8,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="9" cy="9" r="9" fill="%233366CC"/><path d="M12.3268 8.24404L12.9728 8.87158L8.74609 13.2266L7.4541 11.9732L10.4266 8.90937L7.47344 6.0459L8.72676 4.75391L12.3268 8.24404Z" fill="white"/></svg>');
  background-position: center left;
  background-size: 18px auto;
  background-repeat: no-repeat;
}

@media print,
screen and (min-width: 641px) {
  .reindex-info-wrap {
    padding: 0 15px;
    background-image: url('/organization/_assets/img/flow-bg-pc.png');
    background-size: 105%;
    .reindex-common-head-title {
      padding-top: 0;
    }
  }
  .reindex-info-wrap .reindex-common-head-title > span {
    padding-inline: 60px;
    &::before {
      top: 50%;
      left: 0;
      right: auto;
      transform: translate(0, -60%);
    }
  }
  .reindex-info-inner {
    padding: 80px 0;
  }
  .reindex-info-text {
    font-size: 18px;
    margin-top: 5px;
  }
  .reindex-info-list-wrap {
    margin-top: 40px;
    max-width: 1020px;
    margin-inline: auto;
  }
  .reindex-info-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
  }
  .reindex-info-list li {
    border-bottom: 1px solid #ccc;

    &:first-child {
      border-top: 1px solid #ccc;
    }
    &:nth-child(2) {
      border-top: 1px solid #ccc;
    }
  }
  .reindex-info-list li a {
    font-size: 16px;
    padding: 10px 2px 8px 26px;
    background-size: 20px auto;
  }
}
/*
---------------------------------------------------------------------
受験の流れ
---------------------------------------------------------------------
*/
.reindex-flow-wrap {
  padding: 50px 15px;
  background-color: var(--color-yellow);

  .reindex-common-head-title {
    padding-top: 54px;
  }

  .reindex-common-orange-btn {
    margin-top: 30px;
    a {
      font-size: 16px;
    }
  }
}
.reindex-flow-wrap .reindex-common-head-title > span {
  &::before {
    background-image: url('/organization/_assets/img/icon/common-icon-03.svg');
    width: 47px;
    height: 47px;
    background-size: 45px auto;
    top: -54px;
  }
}
.reindex-flow-list-wrap {
  margin-top: 20px;
}
.reindex-flow-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  column-gap: 15px;
  row-gap: 26px;
  counter-reset: num;
  li {
    width: calc(33.33% - 15px);
    list-style: none;
    position: relative;
    counter-increment: num;
    &::before {
      content: counter(num);
      display: grid;
      place-items: center;
      width: 20px;
      height: 20px;
      background-color: var(--color-blue);
      color: var(--color-white);
      position: absolute;
      top: 0;
      left: 0;
      font-size: 11px;
      border-radius: 2px 0 2px 0;
    }
    &::after {
      content: "";
      display: block;
      width: 7px;
      height: 14px;
      background-image: url('data: image/svg+xml;utf8,<svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.717529 0.717896L6.71753 6.53555L0.717529 12.7179" stroke="%23999999" stroke-width="2"/></svg>');
      background-position: 0 0;
      background-size: 7px auto;
      background-repeat: no-repeat;
      position: absolute;
      top: 35px;
      right: -12px;
    }

    &:last-child&::after {
      display: none;
    }
  }
  ._reindex-flow-01 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-02 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-03 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-04 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-05 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-06 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-07 .reindex-flow-list-img-box img {
    width: 40px;
  }
  ._reindex-flow-08 .reindex-flow-list-img-box img {
    width: 40px;
  }
}
.reindex-flow-list-img-box {
  width: 100%;
  height: 80px;
  background-color: var(--color-white);
  display: grid;
  place-items: center;
  border-radius: 2px;
}
.reindex-flow-list-text {
  margin-top: 5px;
  font-size: 14px;
  line-height: 1.3;
  text-align: center;
}
@media print,
screen and (min-width: 641px) {
  .reindex-flow-wrap {
    padding: 0 15px;
    .reindex-common-head-title {
      padding-top: 0;
    }
    .reindex-common-orange-btn {
      width: 460px;
      a {
        font-size: 24px;
        padding: 10px;
      }
    }
  }
  .reindex-flow-wrap .reindex-common-head-title > span {
    padding-inline: 60px;
    &::before {
      top: 50%;
      left: 0;
      right: auto;
      transform: translate(0, -60%);
    }
  }
  .reindex-flow-inner {
    padding: 80px 0;
  }
  .reindex-flow-list-wrap {
    margin-top: 40px;
    max-width: 1020px;
    margin-inline: auto;
  }
  .reindex-flow-list {
    flex-wrap: nowrap;
    column-gap: 30px;
    li {
      &::after {
        width: 14px;
        height: 20px;
        background-size: 12px auto;
        top: 30px;
        right: -23px;
      }
    }
  }
  .reindex-flow-btn {
    max-width: 640px;
    margin-inline: auto;
    text-align: center;
  }
}
/*
---------------------------------------------------------------------
団体受験申請
---------------------------------------------------------------------
*/
.reindex-application-wrap {
  padding: 50px 15px;

  .reindex-common-head-title {
    padding-top: 54px;
  }
}
.reindex-application-wrap .reindex-common-head-title > span {
  &::before {
    background-image: url('/organization/_assets/img/icon/application-icon-01.svg');
    width: 47px;
    height: 47px;
    background-size: 38px auto;
    top: -54px;
  }
}
.reindex-application-text {
  font-size: 16px;
  line-height: 1.8;
}
.reindex-application-btn {
  margin-top: 24px;
  > a {
    font-size: 15.5px;
    font-weight: 600;
    color: var(--color-white);
    text-decoration: none;
    text-align: center;
    display: block;
    padding: 15px 25px;
    border: 2px solid var(--color-green);
    border-radius: 1000px;
    background-color: var(--color-blue-green);
    line-height: 1.4;
    position: relative;
    background-image: url('data: image/svg+xml;utf8,<svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.717529 0.717896L6.71753 6.53555L0.717529 12.7179" stroke="%23FFFFFF" stroke-width="2"/></svg>');
    background-position: center right 13px;
    background-size: 9px auto;
    background-repeat: no-repeat;
  }
  + .reindex-common-btn {
    margin-top: 15px;
  }
}
@media print,
screen and (min-width: 641px) {
  .reindex-application-wrap {
    padding: 0 15px;
    .reindex-common-head-title {
      padding-top: 0;
    }
    .reindex-common-orange-btn {
      margin-top: 50px;
      a {
        font-size: 20px;
      }
    }
  }
  .reindex-application-wrap .reindex-common-head-title > span {
    padding-inline: 60px;
    &::before {
      top: 50%;
      left: 0;
      right: auto;
      transform: translate(0, -60%);
    }
  }
  .reindex-application-inner {
    padding: 80px 0;
  }
  .reindex-application-text {
    margin-top: 15px;
    font-size: 18px;
    text-align: center;
  }
  .reindex-application-btn {
    margin-top: 0;
    > a {
      font-size: 20px;
      padding: 17px 25px 16px;
      background-position: center right 18px;
      background-size: 11px auto;
    }
    + .reindex-common-btn {
      margin-top: 0;
    }
  }
  .reindex-application-btn-box {
    margin-top: 40px;
    max-width: 840px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;

    div:nth-child(1) {
      order: 2;
    }
    div:nth-child(2) {
      order: 1;
    }
  }
