@import url("https://fonts.googleapis.com/css2?family=Manrope");
@font-face {
  font-family: "A-OTF UD Shin Go NT Pro";
  src: url("../fonts/A-OTF-UDShinGoNTPro-Bold.otf") format("opentype");
  font-weight: bold;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "A-OTF UD Shin Go NT Pro";
  src: url("../fonts/A-OTF-UDShinGoNTPro-Heavy.otf") format("opentype");
  font-weight: 800;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "A-OTF UD Shin Go NT Pro";
  src: url("../fonts/A-OTF-UDShinGoNTPro-Medium.otf") format("opentype");
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "A-OTF UD Shin Go NT Pro";
  src: url("../fonts/A-OTF-UDShinGoNTPro-Regular.otf") format("opentype");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}
.img_wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 1901px) {
  .img_wrap img {
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.header {
  position: absolute;
  font-family: "Noto Sans JP", sans-serif;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 100;
  background: #fff;
}
.header .header__inr {
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 11px 24px;
}
.header .header__logo img {
  max-width: 298px;
  vertical-align: text-bottom;
  line-height: 1;
}
.header .license {
  font-size: 14px;
  line-height: 1.2;
  color: #484848;
}

@media screen and (max-width: 1000px) {
  .header .header__inr {
    padding: 17px 6px;
    gap: 4px;
  }
  .header .header__logo img {
    max-width: 215px;
  }
  .header .license {
    font-size: 7px;
  }
}
.line__btn {
  height: 72px;
  width: 100%;
  display: flex;
  align-items: center;
  background-color: var(--green--color);
  color: #fff;
  font-size: 20px;
  font-weight: bold;
}
.line__btn.line_btn_fixed {
  font-family: "Noto Sans JP", sans-serif;
  position: fixed;
  bottom: 73px;
  right: 80px;
  width: 341px;
  z-index: 100;
}
.line__btn.line_btn_fixed p {
  width: 104px;
}
.line__btn p {
  width: 141px;
  margin-right: 33px;
  background-color: #111111;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
  margin-right: 32px;
  font-size: 17px;
  line-height: 1.1;
  position: relative;
}
.line__btn p .number {
  font-size: 28px;
}
.line__btn p::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -8px;
  height: 10px;
  width: 10px;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='10' viewBox='0 0 9 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.31359 4.65685L0.66382 -0.00708161L0.66382 9.32079L8.31359 4.65685Z' fill='black'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
}
.line__btn img {
  margin-left: 32px;
}

@media screen and (max-width: 768px) {
  .line__btn.line_btn_fixed {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
  }
  .line__btn.line_btn_fixed p {
    margin-right: 56px;
  }
  .line__btn.line_btn_fixed img {
    margin-left: 52px;
  }
  .line__btn p {
    width: 106px;
    margin-right: 34px;
  }
  .line__btn img {
    margin-left: 32px;
  }
}
.section__title {
  font-size: 36px;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 40px;
}

.desc__common {
  font-size: 20px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.02em;
}

.main {
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
}

.main__container {
  position: relative;
  max-width: 932px;
  padding: 0 16px;
  margin: 0 auto;
}

.mainvisual {
  position: relative;
  width: 100%;
  height: 662px;
  background: linear-gradient(to right, #e81d17 50%, #fcc40d 50%);
}
.mainvisual .main__container {
  height: 100%;
  display: flex;
  align-items: end;
}

@media screen and (max-width: 768px) {
  .mainvisual {
    height: auto;
  }
}
.main {
  position: relative;
}

.support {
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 38px 0 100px;
  color: #fff;
  /*font-family: 'A-OTF UD Shin Go Pro';*/
  box-shadow: 1px 4px 15px 0px rgba(0, 0, 0, 0.2509803922);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
          clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
}
.support .support__heading {
  max-width: 349px;
  margin: 0 auto;
  margin-bottom: 37px;
}
.support .support__title {
  margin-bottom: 49px;
  text-align: center;
  line-height: 2;
}
.support .support__title .txt_small {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.support .support__title .txt_small span {
  font-size: 24px;
}
.support .support__title .txt_big {
  font-size: 28px;
  font-weight: 800;
  margin-bottom: 18px;
}
.support .support__list {
  max-width: 451px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 30px;
  -moz-column-gap: 21px;
       column-gap: 21px;
}
.support .support__img {
  width: 130px;
  margin: 0 auto;
}
.support .support__txt {
  font-size: 18px;
  line-height: 2;
  text-align: center;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .support {
    padding: 28px 0 86px;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
            clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
  }
  .support .support__heading {
    max-width: 246px;
  }
  .support .support__title {
    margin-bottom: 26px;
  }
  .support .support__title .txt_small {
    font-size: 16px;
  }
  .support .support__title .txt_small span {
    font-size: 20px;
  }
  .support .support__title .txt_big {
    font-size: 24px;
    margin-bottom: 19px;
  }
  .support .support__list {
    row-gap: 24px;
    -moz-column-gap: 17px;
         column-gap: 17px;
  }
  .support .support__img {
    width: 100px;
    margin: 0 auto;
  }
  .support .support__txt {
    font-size: 14px;
  }
}
.support02 {
  padding: 141px 0 80px;
  /*font-family: 'A-OTF UD Shin Go Pro';*/
  color: #616161;
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
}
.support02 .support02__heading {
  text-align: center;
  margin-bottom: 40px;
}
.support02 .support02__heading .txt_small {
  font-size: 31px;
  line-height: 1.2;
  margin-bottom: 14px;
}
.support02 .support02__heading .txt_big {
  font-size: 45px;
  line-height: 1.2;
}
.support02 .support02__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 31px;
}
.support02 .support02__item {
  border-radius: 8px;
  background: #fff;
  box-shadow: 0.78px 3.12px 11.7px 0px rgba(0, 0, 0, 0.2509803922);
  overflow: hidden;
  text-align: center;
  line-height: 2;
}
.support02 .support02__title {
  width: 100%;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  text-align: center;
  padding: 8px;
  color: #FFF;
  font-size: 16px;
  line-height: 2;
}
.support02 .support02__content {
  padding: 12px;
}
.support02 .support02__img {
  height: 113px;
  margin-bottom: 14px;
}
.support02 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-items: start;
  -moz-column-gap: 25px;
       column-gap: 25px;
  row-gap: 6px;
  width: 206px;
  margin: 0 auto;
  font-size: 14px;
  margin-bottom: 6px;
}
.support02 ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  line-height: 1.2;
}
.support02 p {
  font-size: 11px;
  line-height: 1.2;
  text-align: center;
}
.support02 p.mb-6 {
  margin-bottom: 6px;
}
.support02 p span {
  color: #FF3300;
}
.support02 p span .number {
  font-size: 16px;
}
.support02 .txt_medium {
  font-size: 12px;
}
.support02 .office {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: #FF3300;
  margin-bottom: 9px;
}
.support02 .office span {
  width: 50px;
  height: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  color: #fff;
  font-size: 11px;
}

@media screen and (max-width: 768px) {
  .support02 {
    padding: 45px 0 73px;
  }
  .support02 .support02__heading {
    margin-bottom: 42px;
  }
  .support02 .support02__heading .txt_small {
    font-size: 20px;
    margin-bottom: 8px;
  }
  .support02 .support02__heading .txt_big {
    font-size: 29px;
  }
  .support02 .support02__list {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .support02 .support02__item {
    border-radius: 10px;
  }
  .support02 .support02__title {
    padding: 10px;
    font-size: 20px;
  }
  .support02 .support02__content {
    padding: 16px;
  }
  .support02 .support02__img {
    height: 145px;
    margin-bottom: 18px;
  }
  .support02 ul {
    -moz-column-gap: 32px;
         column-gap: 32px;
    row-gap: 8px;
    width: 260px;
    font-size: 18px;
    line-height: 1;
    margin-bottom: 8px;
  }
  .support02 ul li {
    gap: 5px;
  }
  .support02 ul li img {
    width: 19px;
    height: 19px;
  }
  .support02 p {
    font-size: 14px;
  }
  .support02 p span .number {
    font-size: 20px;
  }
  .support02 .txt_medium {
    font-size: 16px;
  }
  .support02 .office {
    gap: 7px;
    margin-bottom: 12px;
  }
  .support02 .office span {
    width: 64px;
    height: 23px;
    font-size: 14px;
  }
}
.line_number {
  padding: 40px 0;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  color: #fff;
}
.line_number .line_number__container {
  max-width: 380px;
  margin: 0 auto;
}
.line_number .line_number__heading {
  line-height: 2;
  margin-bottom: 40px;
  text-align: center;
}
.line_number .line_number__heading .txt_small {
  font-size: 24px;
  margin-bottom: 8px;
}
.line_number .line_number__heading .txt_big {
  font-size: 24px;
}
.line_number .line_number__heading .txt_big span {
  font-size: 48px;
  font-weight: 800;
}
.line_number .line_number__img {
  margin-bottom: 40px;
}
.line_number .line_number__txt {
  font-size: 16px;
  text-align: center;
  margin-bottom: 26px;
}

@media screen and (max-width: 768px) {
  .line_number .line_number__heading {
    max-width: 350px;
    margin: 0 auto;
    margin-bottom: 40px;
    border-bottom: 2px solid #fff;
  }
  .line_number .line_number__txt {
    font-size: 20px;
  }
}
.line_btn {
  margin: 0 auto;
  max-width: 320px;
  height: 60px;
  background-color: #06C755;
  box-shadow: 2px 4px 0px 0px #FFFFFF;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: #FFF;
}
.line_btn p {
  font-size: 22px;
  font-weight: 500;
}
.line_btn p span {
  color: #FFF674;
}

.card {
  background-color: #fff;
  box-shadow: 1px 4px 15px 0px rgba(0, 0, 0, 0.1490196078);
  border-radius: 10px;
  padding: 0 16px;
}

.promise {
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
  padding: 135px 0 80px;
}
.promise .promise__desc {
  font-size: 20px;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 40px;
}
.promise .promise__desc span {
  font-size: 24px;
  color: #FF0000;
}
.promise .promise__img {
  max-width: 454px;
  margin: 0 auto;
}
.promise .promise__container {
  padding: 80px 0 67px;
  max-width: 430px;
  margin: 0 auto;
}
.promise .promise__list {
  margin-bottom: 60px;
  display: flex;
  flex-direction: column;
  gap: 44px;
}
.promise .promise__item {
  font-size: 42px;
  line-height: 1.3;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 23px;
}
.promise .promise__item span {
  width: 67px;
  height: 67px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  color: #fff;
  border-radius: 6px;
  font-family: "Manrope", sans-serif;
  font-size: 30px;
  font-weight: 600;
}
.promise .note_heading {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 38px;
  text-align: center;
}
.promise .note_heading span {
  color: #FF8606;
}
.promise .note_warning {
  position: relative;
}
.promise .note_warning .title_wrap {
  padding: 0 7px;
  background-color: #fff;
  position: relative;
  z-index: 1;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.promise .note_warning .title {
  display: flex;
  justify-content: center;
  gap: 15px;
  padding: 7px 28px;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  color: #fff;
  border-radius: 50px;
}
.promise .note_warning .title img {
  width: 18px;
}
.promise .note_warning .title p {
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
}
.promise .note_warning::after {
  content: "";
  position: absolute;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  height: 5px;
  left: 0;
  width: calc(50% - 50px);
  top: 50%;
  transform: translateY(-100%);
  z-index: 0;
}
.promise .note_warning::before {
  content: "";
  position: absolute;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  height: 5px;
  right: 0;
  width: calc(50% - 50px);
  top: 50%;
  transform: translateY(-100%);
  z-index: 0;
}
.promise .note_content {
  padding: 10px 0 51px;
  position: relative;
}
.promise .note_content::after {
  content: "";
  position: absolute;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  height: 5px;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
}
.promise .note_content .note_heading {
  font-weight: bold;
  margin-bottom: 15px;
}
.promise .note_content .note_title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-bottom: 13px;
  font-size: 15px;
  font-weight: bold;
}
.promise .note_content .note_title .title_block {
  padding: 8px 16px;
  border-radius: 3px;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  color: #fff;
}
.promise .note_content .note_desc {
  font-size: 14px;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  .promise {
    padding: 37px 0;
  }
  .promise .promise__heading {
    font-size: 32px;
    margin-bottom: 24px;
  }
  .promise .promise__desc {
    font-size: 16px;
  }
  .promise .promise__desc span {
    font-size: 24px;
  }
  .promise .promise__container {
    padding: 35px 0 52px;
  }
  .promise .promise__list {
    max-width: 282px;
    margin: 0 auto;
    margin-bottom: 50px;
  }
  .promise .promise__item {
    font-size: 24px;
    gap: 15px;
  }
  .promise .promise__item span {
    width: 44px;
    height: 44px;
    font-size: 20px;
  }
  .promise .note_heading {
    font-size: 16px;
  }
  .promise .note_warning {
    margin-bottom: 15px;
  }
  .promise .note_warning .title {
    padding: 7px 10px;
    gap: 3px;
  }
  .promise .note_content {
    padding: 0 0 15px;
    position: relative;
  }
  .promise .note_content .note_heading {
    font-size: 18px;
  }
  .promise .note_content .note_title {
    gap: 5px;
    margin-bottom: 13px;
    font-size: 15px;
    font-weight: bold;
  }
  .promise .note_content .note_title .title_block {
    padding: 8px 10px;
  }
  .promise .note_content .note_desc {
    font-size: 14px;
    line-height: 1.5;
    padding: 0 15px;
  }
}
.consult {
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
  padding: 80px 0;
}
.consult .consult__card {
  padding: 57px 10px 0;
}
.consult .consult__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 33px;
  -moz-column-gap: 36px;
       column-gap: 36px;
  max-width: 684px;
  margin: 0 auto;
  margin-bottom: 85px;
}
.consult .consult__item {
  text-align: center;
  padding: 13px 10px 32px;
}
.consult .consult__item .title {
  font-size: 36px;
  line-height: 2;
  border-bottom: 3px solid #FF3300;
  max-width: 256px;
  margin: 0 auto;
  font-weight: 500;
}
.consult .consult__item .img {
  width: 130px;
  margin: 20px auto;
}
.consult .consult__item .txt {
  font-size: 30px;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .consult {
    padding: 40px 0 80px;
  }
  .consult .section__title {
    font-size: 28px;
  }
  .consult .consult__card {
    padding: 49px 16px 0;
  }
  .consult .consult__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 8px;
    -moz-column-gap: 8px;
         column-gap: 8px;
    margin: 0 auto;
  }
  .consult .consult__item {
    text-align: center;
    padding: 10px 7px 16px;
  }
  .consult .consult__item .title {
    font-size: 18px;
    line-height: 2;
    border-bottom: 2px solid #FF3300;
  }
  .consult .consult__item .img {
    width: 90px;
    margin: 18px auto;
  }
  .consult .consult__item .txt {
    font-size: 15px;
  }
  .consult .consult__img {
    margin-left: -16px;
  }
}
.map {
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
  padding: 66px 0;
}
.map .map__container {
  padding: 50px 50px 80px;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  box-shadow: 1px 4px 15px 0px rgba(0, 0, 0, 0.2);
  border-radius: 20px;
}
.map .map__title {
  color: #fff;
  margin-bottom: 56px;
  line-height: 1.33;
  position: relative;
}
.map .map__title::after {
  content: "";
  position: absolute;
  width: 176px;
  height: 2px;
  background-color: #fff;
  bottom: -28px;
  left: 50%;
  transform: translateX(-50%);
}
.map .map__block {
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
  box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.2509803922);
  border-radius: 10px;
  padding: 40px 57px;
}
.map .map__block {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 80px;
}
.map .map__desc {
  font-size: 16px;
  line-height: 1.6;
  font-weight: 500;
  max-width: 279px;
}
.map .map__desc span {
  color: #FF3300;
  font-weight: 600;
}
.map .map__img {
  width: 327px;
}

@media screen and (max-width: 768px) {
  .map {
    padding: 17px 0 45px;
  }
  .map .map__container {
    padding: 50px 16px 80px;
  }
  .map .map__title {
    margin-bottom: 56px;
    font-size: 28px;
  }
  .map .map__title::after {
    width: 58px;
    height: 2px;
    bottom: -30px;
  }
  .map .map__block {
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 40px 16px;
  }
  .map .map__desc {
    font-size: 16px;
    max-width: 100%;
  }
  .map .map__img {
    width: 100%;
  }
}
.recruit {
  padding: 70px 0 126px;
}
.recruit .recruit__title {
  font-size: 36px;
  text-align: center;
  font-weight: 500;
  line-height: 1.5;
  color: #FF3300;
}
.recruit .recruit__ttl {
  font-size: 28px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 23px;
}
.recruit .recruit__ttl .txt_big {
  font-size: 36px;
}
.recruit .recruit__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  justify-content: center;
  max-width: 800px;
  margin: 0 auto;
  gap: 24px;
}
.recruit .recruit__item {
  background-color: #FFFFFF;
  padding: 12px 11px;
}
.recruit h3 {
  font-size: 17px;
  line-height: 2;
  font-weight: 500;
  margin-bottom: 4px;
  text-align: center;
}
.recruit dl {
  padding: 14px 4px 4px;
  border-top: 1px solid #ccc;
  display: flex;
  align-items: center;
}
.recruit dl:first-child {
  border: 0;
}
.recruit dl:last-child {
  align-items: start;
}
.recruit dl .main_color {
  font-size: 14px;
}
.recruit dt {
  font-size: 11px;
  flex: 0 0 57px;
  line-height: 1.5;
}
.recruit dt .txt_ls {
  letter-spacing: 0.31em;
}
.recruit dd {
  font-size: 11px;
  max-width: 210px;
  line-height: 1.5;
  font-weight: 500;
  margin-left: 10px;
}
.recruit dd p {
  margin-bottom: 13px;
}

@media screen and (max-width: 768px) {
  .recruit {
    padding: 40px 0 80px;
  }
  .recruit .recruit__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
  .recruit .recruit__item {
    min-height: 513px;
    padding: 18px 16px;
  }
  .recruit .recruit__content {
    padding: 0;
  }
  .recruit h3 {
    font-size: 24px;
    margin-bottom: 8px;
  }
  .recruit img {
    width: 100%;
  }
  .recruit dl {
    padding: 10px 3px;
  }
  .recruit dl .main_color {
    font-size: 20px;
  }
  .recruit dt {
    font-size: 16px;
    line-height: 1.8;
    flex: 0 0 80px;
  }
  .recruit dd {
    font-size: 16px;
  }
  .recruit dl:last-child dd {
    font-size: 14px;
  }
}
.soku_line {
  position: relative;
  width: 100%;
  height: 412px;
  background: linear-gradient(to right, #f5af19 50%, transparent 50%), url("../images/bg_gradation.png") repeat-x right center;
  background-size: 100% 100%, 100% 100%;
}
.soku_line .main__container {
  position: absolute;
  width: 100%;
  bottom: 27px;
  left: 0;
  right: 0;
}
.soku_line .main__container .line_btn {
  margin-left: 154px;
}
.soku_line .main__container .line_btn.soku02 {
  margin-left: auto;
  margin-right: 154px;
}

@media screen and (max-width: 768px) {
  .soku_line .main__container .line_btn {
    margin: 0 auto !important;
  }
}
.reason {
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  padding: 50px 0 193px;
}
.reason .reason__heading {
  color: #fff;
  font-size: 28px;
  margin-bottom: 47px;
}
.reason .reason__list {
  margin: 0 -16px;
}
.reason .reason__list .slick-prev,
.reason .reason__list .slick-next {
  z-index: 10;
  width: 40px;
  height: 40px;
  font-weight: 700;
  border-radius: 50%;
  top: 55%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  background-color: #fff;
  border: 1px solid #FF8606;
  color: #FF8606;
}
.reason .reason__list .slick-prev {
  left: 6px;
}
.reason .reason__list .slick-prev:before {
  font-size: 30px;
  content: url("data:image/svg+xml,%3Csvg width='11' height='21' viewBox='0 0 11 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.7059 2.34609L9.13117 0.739252L0.553958 9.49651C0.415698 9.63684 0.305973 9.8037 0.231098 9.9875C0.156222 10.1713 0.117676 10.3684 0.117676 10.5675C0.117676 10.7666 0.156222 10.9637 0.231098 11.1475C0.305973 11.3313 0.415698 11.4981 0.553958 11.6385L9.13117 20.4003L10.7044 18.7934L2.65411 10.5698L10.7059 2.34609Z' fill='%23FF8606'/%3E%3C/svg%3E%0A");
  color: #FF8606;
}
.reason .reason__list .slick-next {
  right: 6px;
}
.reason .reason__list .slick-next:before {
  font-size: 30px;
  content: url("data:image/svg+xml,%3Csvg width='11' height='21' viewBox='0 0 11 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.40161 18.7938L8.76587 11.2694L9.45142 10.5692L8.76587 9.87L1.40063 2.34753L1.57544 2.16882L9.43774 10.1962L9.4397 10.1981L9.50122 10.2753C9.51954 10.3031 9.53611 10.3333 9.54907 10.3651C9.57484 10.4285 9.58811 10.4974 9.58813 10.5673C9.58813 10.6374 9.57499 10.7068 9.54907 10.7704C9.5232 10.8339 9.48537 10.89 9.4397 10.9364L9.43774 10.9393L1.57544 18.9716L1.40161 18.7938Z' fill='%23FF8606' stroke='%23FF8606' stroke-width='2'/%3E%3C/svg%3E%0A");
  color: #FF8606;
}
.reason .reason__list .slick-dots {
  position: relative;
  bottom: -20px;
}
.reason .reason__list .slick-dots li {
  background-color: #A2A2A2;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  border-radius: 50%;
}
.reason .reason__list .slick-dots li button {
  width: 10px;
  height: 10px;
}
.reason .reason__list .slick-dots li button:before {
  content: none;
}
.reason .reason__list .slick-dots li.slick-active {
  background-color: #FFFFFF;
}
.reason .reason__item {
  height: 488px;
  padding: 14px 21px;
  margin: 0 16px;
}
.reason .reason__item:last-child {
  text-align: center;
}
.reason .reason__item:last-child .reason__desc {
  font-size: 16px;
  margin-bottom: 12px;
}
.reason .reason__index {
  width: 80px;
  margin: 0 auto;
  margin-bottom: 10px;
}
.reason .reason__title {
  font-size: 18px;
  height: 44px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 12px;
}
.reason .reason__img {
  margin-bottom: 26px;
  height: 186px;
  width: 100%;
  text-align: center;
}
.reason .reason__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.reason .reason__desc {
  font-size: 16px;
  line-height: 1.3;
}
.reason .reason__desc span {
  font-weight: bold;
}
.reason .reason__desc.text_center {
  font-size: 20px;
  margin-bottom: 12px;
}
.reason .reason__note {
  font-size: 10px;
  line-height: 1.3;
}
.reason .text_center {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .reason {
    padding: 40px 0 80px;
  }
  .reason .reason__heading {
    font-size: 36px;
    margin-bottom: 58px;
  }
  .reason .reason__list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    -moz-column-gap: 30px;
         column-gap: 30px;
    row-gap: 40px;
    margin: 0;
  }
  .reason .reason__item {
    max-width: 280px;
    height: 380px;
    margin: 0;
  }
  .reason .reason__index {
    width: 62px;
    margin-bottom: 18px;
  }
  .reason .reason__title {
    font-size: 14px;
    line-height: 1.2;
    height: 34px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 8px;
  }
  .reason .reason__img {
    margin-bottom: 26px;
    height: 146px;
  }
  .reason .reason__desc {
    font-size: 12px;
    line-height: 1.3;
  }
  .reason .reason__desc span {
    font-weight: bold;
  }
  .reason .reason__note {
    font-size: 8px;
    line-height: 1.3;
  }
}
.voice {
  padding: 80px 0 40px;
  font-family: "Noto Sans JP", sans-serif;
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
}
.voice .voice__heading {
  font-size: 28px;
  font-weight: 600;
}
.voice .voice__item {
  padding: 12px 16px 24px;
  margin: 0 10px;
  margin-bottom: 15px;
  font-weight: 500;
}
.voice .voice__title {
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 5px;
}
.voice .voice__img {
  margin-bottom: 24px;
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}
.voice .voice__desc {
  font-size: 14px;
  color: #3B4856;
  line-height: 1.4;
  margin-bottom: 16px;
}
.voice .voice__tags {
  display: flex;
  gap: 8px;
}
.voice .tag {
  padding: 5px;
  background-color: #DCDCDC;
  font-size: 13px;
  border-radius: 4px;
  color: #3B4856;
}
.voice .tiktok_block {
  padding: 0 34px;
  margin-top: 50px;
}
.voice .tiktok_block .tiktok_title {
  font-size: 18px;
  font-weight: bold;
  position: relative;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 20px;
}
.voice .tiktok_block .tiktok_title::after {
  content: "";
  position: absolute;
  background-color: #3B4856;
  width: 45px;
  height: 1.5px;
  right: 0;
  top: 50%;
  transform: translate(100%, -50%) rotate(-60deg);
}
.voice .tiktok_block .tiktok_title::before {
  content: "";
  position: absolute;
  background-color: #3B4856;
  width: 45px;
  height: 1.5px;
  left: 0;
  top: 50%;
  transform: translate(-100%, -50%) rotate(60deg);
}
.voice .tiktok_block .tiktok_btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  padding: 15px 23px;
  border-radius: 12px;
  max-width: 322px;
  margin: 0 auto;
}
.voice .tiktok_block .tiktok_btn .content {
  display: flex;
  align-items: center;
}
.voice .tiktok_block .tiktok_btn .content p {
  text-align: center;
  font-size: 18px;
  color: #000;
  font-weight: bold;
  margin-right: 13px;
}

@media screen and (min-width: 768px) {
  .voice {
    padding: 200px 0 40px;
  }
  .voice .voice__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: 800px;
    margin: 0 auto;
  }
  .voice .voice__item {
    padding: 16px;
    margin: 0;
  }
  .voice .voice__title {
    font-size: 17px;
  }
  .voice .voice__desc {
    font-size: 13px;
  }
}
.employment {
  padding: 49px 0px 89px;
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
  font-family: "Noto Sans JP", sans-serif;
}
.employment .employment_ttl {
  text-align: center;
  margin-bottom: 16px;
  font-weight: 900;
}
.employment .employment_ttl .txt_small {
  font-size: 23px;
  font-weight: 600;
}
.employment .employment_ttl .txt_small span {
  font-size: 27px;
}
.employment .employment_ttl .txt_big {
  font-size: 28px;
  font-weight: bold;
}
.employment .title_decor {
  margin-bottom: 32px;
}
.employment .employment_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 23px;
}
.employment .employment_item {
  width: 100%;
  padding: 0 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
}
.employment .employment_item:last-child {
  margin-bottom: 0;
}
.employment .employment_content {
  font-size: 20px;
  line-height: 1.4;
}
.employment .employment_content h3 {
  text-align: center;
  font-weight: bold;
  color: #FF3300;
  white-space: nowrap;
}
.employment .employment_content p {
  text-align: center;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  .employment {
    padding: 49px 0;
  }
  .employment .employment_ttl .txt_big {
    font-size: 31px;
  }
  .employment .employment_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
  }
  .employment .employment_item {
    padding: 0 20px;
  }
  .employment .employment_item img {
    width: 84px;
  }
  .employment .employment_content {
    font-size: 16px;
  }
}
.housing {
  padding: 120px 0 130px;
}
.housing .housing__title {
  font-size: 28px;
  line-height: 1.33;
}
.housing .housing__desc {
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 40px;
  text-align: center;
}
.housing .housing_list {
  max-width: 544px;
  margin: 0 auto;
}
.housing .housing_img {
  margin-bottom: 19px;
}

@media screen and (max-width: 768px) {
  .housing {
    padding: 40px 0;
  }
  .housing .housing_img {
    margin-bottom: 8px;
  }
}
.step {
  padding: 53px 0 72px;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
}
.step .step__heading {
  color: #fff;
  margin-bottom: 26px;
}
.step .step_first_img {
  width: 358px;
  margin-left: 113px;
}
.step .step__list {
  display: flex;
  justify-content: space-between;
  gap: 13px;
  padding: 0 20px;
}
.step .step__item {
  max-width: 180px;
  height: 480px;
  padding: 20px 0;
  position: relative;
}
.step .step__index {
  width: 85px;
  margin-bottom: 18px;
}
.step .step__title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  height: 44px;
  margin-bottom: 27px;
  text-align: center;
}
.step .step__img {
  width: 107px;
  margin: 0 auto 27px;
}
.step .step__desc {
  font-size: 15px;
  line-height: 1.6;
}
.step .step_next_decor {
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -40px;
}

@media screen and (max-width: 768px) {
  .step .step__heading {
    font-size: 28px;
    margin-bottom: 20px;
  }
  .step .step_first_img {
    margin-left: 0;
    width: 100%;
  }
  .step .step__list {
    flex-direction: column;
    align-items: center;
    gap: 71px;
    padding: 40px 0;
  }
  .step .step__item {
    max-width: 100%;
    height: auto;
    padding: 0 16px;
  }
  .step .step__index {
    width: 103px;
    margin-bottom: 8px;
  }
  .step .step__title {
    font-size: 24px;
    height: auto;
    margin-bottom: 16px;
  }
  .step .step__img {
    width: 102px;
    margin-bottom: 16px;
  }
  .step .step__desc {
    font-size: 14px;
    line-height: 1.6;
  }
  .step .step_next_decor {
    top: unset;
    left: 0;
    right: 0;
    bottom: -60px;
    height: auto;
  }
}
.faq {
  padding: 80px 0;
  background: linear-gradient(270deg, #F8FAFF 0%, #F6F9FF 50%, #F3FAFF 100%);
}
.faq .faq__heading {
  font-size: 32px;
}
.faq .faq__item {
  margin-bottom: 24px;
  position: relative;
  background-color: #fff;
  padding: 0;
  overflow: hidden;
}
.faq .faq__item:last-child {
  margin-bottom: 0;
}
.faq .faq__item .quest {
  width: 100%;
  padding: 16px 40px;
  display: flex;
  align-items: flex-end;
  gap: 4px;
  background: linear-gradient(282.99deg, #FF3300 -0.14%, #FF8606 100.08%);
  color: #fff;
}
.faq .faq__item .quest .icon {
  flex: 0 0 14px;
}
.faq .faq__item .ans {
  padding: 42px 133px 42px 150px;
}
.faq .faq__item .ans_img {
  position: absolute;
  left: 10px;
  bottom: 0;
  max-width: 110px;
}
.faq .faq__item p {
  font-size: 16px;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .faq {
    padding: 40px 0 80px;
  }
  .faq .faq__heading {
    font-size: 20px;
  }
  .faq .faq__item {
    margin-bottom: 40px;
  }
  .faq .faq__item .quest {
    padding: 16px 12px;
    font-size: 14px;
    gap: 4px;
    align-items: start;
  }
  .faq .faq__item .quest .icon {
    margin-top: 4px;
  }
  .faq .faq__item .ans {
    padding: 16px 18px 24px 100px;
    min-height: 105px;
  }
  .faq .faq__item .ans_img {
    left: 0;
    max-width: 100px;
  }
  .faq .faq__item .ans_img img {
    width: 100%;
    height: auto;
  }
  .faq .faq__item p {
    font-size: 14px;
  }
}
.footer_banner {
  width: 100%;
  height: 459px;
  background: linear-gradient(to right, #ff3c00 50%, #ff6100 50%);
}

@media screen and (max-width: 768px) {
  .footer_banner {
    height: 473px;
  }
}
.section_footer {
  padding: 80px 0 62px;
  background-color: #616161;
  color: #fff;
}
.section_footer .footer_main {
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 31px;
}
.section_footer .copy_right {
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .section_footer {
    padding: 40px 0 217px;
  }
}/*# sourceMappingURL=index.css.map */