/*!
global > color
------------------------------
*/
/*!
global > content-width
------------------------------
*/
/*!
global > font
------------------------------
*/
/*!
global > mixin
------------------------------
*/
.guideline_wrapper {
  padding: 40px 0 113px;
}
.guideline_ttl {
  text-align: center;
}
.guideline_ttl__en {
  display: block;
  font-size: 0.8125rem;
  line-height: 1;
  color: #E67339;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 3px;
}
.guideline_ttl__jp {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
}

.require {
  margin-bottom: 60px;
}
.require .guideline_ttl {
  margin-bottom: 29px;
}
.require_wrap {
  background-color: #fff;
  border-radius: 50px;
  padding: 30px 20px;
}
.require_tbl__item {
  padding: 12px 0;
  border-bottom: 1px solid #e8e8e8;
}
.require_tbl__item:last-child {
  border: none;
}
.require_tbl__ttl {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  color: #E67339;
  letter-spacing: 0.05em;
}
.require_tbl__txt {
  width: 100%;
  letter-spacing: 0.05em;
  font-size: 0.9375rem;
}
.require_btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 auto;
  width: min(100%, 300px);
  height: 60px;
  padding: 10px;
  border-radius: 999px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  background-color: #2C4198;
  border: 1px solid #2C4198;
}

.entry {
  background-color: #fff;
  padding: 60px 0;
  border-radius: 50px;
  margin-bottom: 60px;
}
.entry .guideline_ttl {
  margin-bottom: 30px;
}
.entry_tbl {
  background-color: #FFFCDE;
  padding: 20px;
  border-radius: 30px;
}
.entry_tbl__item {
  padding: 12px 0;
  border-bottom: 1px solid #e8e8e8;
}
.entry_tbl__item:last-child {
  border: none;
}
.entry_tbl__ttl {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  color: #E67339;
  letter-spacing: 0.05em;
}
.entry_tbl__txt {
  font-size: 0.9375rem;
  width: 100%;
  letter-spacing: 0.05em;
}
.entry_tbl__txt .sm {
  font-size: 0.875rem;
  margin-top: 8px;
}

.flow .guideline_ttl {
  margin-bottom: 29px;
}
.flow_step__item {
  position: relative;
  background-color: #fff;
  border-radius: 20px;
  padding: 20px;
}
.flow_step__item:not(:last-child)::after {
  content: "";
  position: absolute;
}
.flow_step__ttl {
  text-align: center;
  font-size: 1.25rem;
  font-weight: 700;
  color: #E67339;
  margin-bottom: 13px;
  letter-spacing: 0.05em;
}
.flow_step__icon {
  margin-bottom: 50px;
  margin: 0 auto 20px;
  text-align: center;
}
.flow_step__icon img {
  max-height: 101px;
}
.flow_step__txt .sm {
  font-size: 0.875rem;
}
.flow_banner {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: min(100%, 540px);
  margin: 60px auto 0;
  height: 180px;
  padding: 26px 40px 20px;
}
.flow_banner__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.flow_banner__bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  border: 6px solid #fff;
  z-index: 1;
}
.flow_banner__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.flow_banner__logo {
  width: min(300px, 100%);
  margin: 0 auto 20px;
}
.flow_banner__btn {
  width: 220px;
  height: 50px;
  margin: 0 auto;
}
.flow_banner__btn > span {
  width: 100%;
  height: 100%;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  background-color: #4CAF50;
  color: #fff;
  border-radius: 999px;
}
.flow_banner__btn > span::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 14px;
  aspect-ratio: 1;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="13.455" height="13.455" viewBox="0 0 13.455 13.455"><path id="Icon_ionic-md-open" data-name="Icon ionic-md-open" d="M16.46,16.46H5.995V6h4.672V4.5H5.995A1.5,1.5,0,0,0,4.5,6V16.46a1.5,1.5,0,0,0,1.495,1.5H16.46a1.5,1.5,0,0,0,1.495-1.5V11.788H16.46ZM12.349,4.5V6h3.065l-7.55,7.55L8.91,14.591l7.55-7.55v3.065h1.495V4.5Z" transform="translate(-4.5 -4.5)" fill="%23fff"/></svg>') center/contain no-repeat;
}

.c_ubtn {
  margin-top: 64px;
  padding: 0;
}

@media screen and (max-width: 767px) {
  .require_tbl__ttl {
    margin-bottom: 5px;
  }
  .entry_tbl__ttl {
    margin-bottom: 5px;
  }
  .flow_step__item {
    margin-bottom: 38px;
  }
  .flow_step__item:last-child {
    margin-bottom: 0;
  }
  .flow_step__item:not(:last-child)::after {
    bottom: -26px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 12px solid #E67339;
  }
}

@media screen and (min-width: 768px) {
  .guideline_wrapper {
    padding: 42px 0 236px;
  }
  .guideline_ttl__jp {
    font-size: 2rem;
  }
  .require {
    margin-bottom: 100px;
  }
  .require_wrap {
    padding: min(4.42vw, 53px) min(8.33vw, 100px) min(5.83vw, 70px);
  }
  .require_tbl__item {
    padding: 26px 0 24px;
    display: flex;
    align-items: center;
  }
  .require_tbl__ttl {
    width: 151px;
    flex-shrink: 0;
    padding-left: 20px;
  }
  .require_tbl__txt {
    padding-left: 30px;
    font-size: 1.0625rem;
  }
  .require_btn {
    margin-top: -1px;
  }
  .require_btn a {
    width: min(100%, 450px);
    height: 75px;
    font-size: 1.25rem;
  }
  .entry {
    padding: min(5.19vw, 83px) 0 min(6.31vw, 101px);
    margin-bottom: 98px;
  }
  .entry_tbl {
    padding: 30px;
  }
  .entry_tbl__item {
    display: flex;
    align-items: center;
  }
  .entry_tbl__ttl {
    width: 151px;
    flex-shrink: 0;
    padding-left: 20px;
  }
  .entry_tbl__txt {
    font-size: 1.0625rem;
    padding-left: 30px;
  }
  .flow_step {
    display: flex;
    gap: 38px;
  }
  .flow_step__item {
    width: calc((100% - 30px) / 3);
  }
  .flow_step__item:not(:last-child)::after {
    top: 50%;
    right: -26px;
    transform: translateY(-50%);
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 12px solid #E67339;
  }
  .flow_step__ttl {
    font-size: 1.125rem;
  }
  .flow_banner {
    margin-top: 80px;
    height: 220px;
    width: min(100%, 700px);
  }
  .flow_banner__bg::before {
    border-width: 10px;
  }
  .flow_banner__logo {
    width: min(400px, 100%);
  }
}

@media screen and (min-width: 992px) {
  .flow_step__ttl {
    font-size: 1.25rem;
  }
}

@media screen and (min-width: 1200px) {
  .entry_tbl {
    padding: 28px 100px 20px;
  }
  .entry_tbl__item {
    padding: 26px 0 24px;
  }
  .flow_step__item {
    width: calc((100% - 76px) / 3);
    padding: 45px 38px 23px;
  }
  .flow_step__icon {
    margin-bottom: 56px;
  }
  .flow_banner {
    margin-top: 150px;
    height: 298px;
    width: min(100%, 1000px);
  }
  .flow_banner__bg::before {
    border-width: 15px;
  }
  .flow_banner__logo {
    margin-bottom: 37px;
    width: min(500px, 100%);
  }
}

@media (any-hover: hover) and (pointer: fine) {
  .require_btn a:hover {
    opacity: 1;
    color: #2C4198;
    background-color: #fff;
  }
  .flow_banner:hover {
    opacity: 0.8 !important;
  }
}
/*# sourceMappingURL=maps/guideline.css.map */
