@charset "UTF-8";
/*------------------------------------------------------------Content*/
/*====================
お申し込みの流れ
=======================*/
.step_list {
  counter-reset: number;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
}
.step_list > li {
  position: relative;
  width: calc(50% - 12px);
  max-width: 220px;
  border: 4px solid #5c6373;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background: linear-gradient(180deg, #5c6373 0%, #5c6373 45%, #fff 45%, #fff 100%);
}
.step_list > li:not(:last-child):after {
  font-family: remixicon !important;
  font-style: normal;
  content: "\ea6d";
  font-size: 2em;
  position: absolute;
  top: calc(50% - 0.8em);
  right: 0;
  z-index: 10;
  color: #09090d;
  -webkit-transform: translateX(0.95em);
          transform: translateX(0.95em);
}
@media print, screen and (min-width: 768px) {
  .step_list > li {
    width: calc(25% - 18px);
  }
}
@media print, screen and (min-width: 1200px) {
  .step_list > li {
    width: calc(20% - 19.2px);
  }
}
.step_list > li p {
  font-size: clamp(1.2rem, 1.02vw, 1.4rem);
  line-height: 1.4;
  padding: calc(50% + 5px) 1em 0;
}
.step_list > li p::before {
  content: "Step";
  position: absolute;
  top: 0.6em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #fff;
  font-size: 1.8rem;
  font-family: "Anton", sans-serif;
  font-weight: 400;
}
@media print, screen and (min-width: 768px) {
  .step_list > li p::before {
    top: clamp(10px, 1.46vw, 20px);
    font-size: 2rem;
  }
}
.step_list > li p::after {
  counter-increment: number;
  content: "0" counter(number);
  position: absolute;
  top: 0.8em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #fff;
  font-size: 3.2rem;
  font-family: "Anton", sans-serif;
  font-weight: 400;
}
@media print, screen and (min-width: 768px) {
  .step_list > li p::after {
    top: clamp(24px, 2.78vw, 38px);
    font-size: 3.8rem;
  }
}

/*====================
証明書写真の撮影における注意事項
=======================*/
/*====================
顔写真をカンタンに撮影するには？
=======================*/
.app_camera_box {
  border: 4px solid #c3cbcc;
  border-radius: 10px;
  padding-inline: 16px;
  padding-block: 16px;
}

.app_camera_ti {
  margin-bottom: 1em;
  font-size: clamp(2.2rem, 2.64vw, 3.2rem);
  font-weight: 700;
}

.app_camera_ti:before {
  content: "\ee58";
  font-family: "remixicon";
  font-style: normal;
  font-weight: normal;
  display: block;
  color: #c81507;
  font-size: 1.5em;
  line-height: 1;
}

.app_camera_box_in .img_box {
  margin-bottom: 16px;
}

.app_camera_box_in .img_box img {
  width: 90px;
  height: auto;
}

.app_camera_box_in .tx_box {
  text-align: left;
}

.app_camera_box_in .tx_box p + p {
  margin-top: 1em;
}

@media print, screen and (min-width: 768px) {
  .app_camera_box {
    width: 80%;
    max-width: 960px;
    padding-inline: 28px;
    padding-block: 28px;
    margin: auto;
  }
  .app_camera_ti:before {
    display: inline-block;
    -webkit-margin-end: 0.2em;
            margin-inline-end: 0.2em;
    -webkit-transform: translateY(0.2em);
    transform: translateY(0.2em);
  }
  .app_camera_box_in {
    display: inline-flex;
    justify-content: center;
  }
  .app_camera_box_in .img_box {
    margin-bottom: 0;
    margin-right: 24px;
  }
}
/*====================
faq
=======================*/
.accordion_wrap .accordion_item + .accordion_item {
  margin-top: 24px;
}
.accordion_wrap .accordion_item .aco_head {
  cursor: pointer;
  background: #09090d;
  color: #fff;
  position: relative;
  font-size: clamp(1.6rem, 1.61vw, 2.2rem);
  font-weight: 700;
  text-align: left;
  padding: 0.7em 2em 0.7em 1em;
  line-height: 1.4;
  border-radius: 4px;
  border: 2px solid #09090d;
  transition: 0.2s;
}
.accordion_wrap .accordion_item .aco_head:hover {
  background: rgba(9, 9, 13, 0.6);
}
.accordion_wrap .accordion_item .aco_head::after {
  font-family: remixicon !important;
  font-style: normal;
  content: "\ea13";
  display: block;
  position: absolute;
  inset: 50% 1em auto auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.accordion_wrap .accordion_item .aco_inner {
  overflow: hidden;
  block-size: 1px;
  min-block-size: 1px;
  opacity: 0;
  transition-duration: 0.5s;
  transition-property: all;
  padding: 0 1.5em;
}
.accordion_wrap .accordion_item.open .aco_head {
  cursor: pointer;
  border-radius: 4px 4px 0 0;
}
.accordion_wrap .accordion_item.open .aco_head::after {
  font-family: remixicon !important;
  font-style: normal;
  content: "\f1af";
}
.accordion_wrap .accordion_item.open .aco_inner {
  block-size: auto;
  min-block-size: 1em;
  opacity: 1;
  background: #fff;
  border-radius: 0 0 4px 4px;
  border-top: none;
  border: 2px solid #09090d;
  border-top: none;
  padding: 1.5em;
}