@media screen and (min-width: 768px) {
  /*----*/
  .sp_only,
.gnavi {
    display: none !important;
  }
} /*----*/
.flow2024 {
  font-family: "Hiragino Sans", sans-serif;
  width: 100%;
}
.flow2024 .fn {
  font-weight: normal;
}
.flow2024 .fb {
  font-weight: bold;
}
.flow2024 .fb600 {
  font-weight: 600;
}
.flow2024 .fb700 {
  font-weight: 700;
}
.flow2024 .fb800 {
  font-weight: 800;
}
.flow2024 .pr {
  position: relative;
}
.flow2024 .ib {
  display: inline-block;
}
.flow2024 .box1000 {
  margin-inline: auto;
  width: 962px;
  max-width: 96%;
}
.flow2024 i,
.flow2024 em {
  font-style: normal;
}
.flow2024 .txt_bl {
  color: #005aa6;
}
.flow2024 .txt18 {
  font-size: 18px;
}
.flow2024 .txt25 {
  font-size: 25px;
}
.flow2024 .txt40 {
  font-size: 40px;
}
.flow2024 .bg_aqua {
  background-color: #e7eff4;
}
.flow2024 .ls05 {
  letter-spacing: 0.05em;
}
.flow2024 .ls25 {
  letter-spacing: 0.15em;
}
.flow2024 .mb10 {
  margin-bottom: 10px;
}
.flow2024 .mb15 {
  margin-bottom: 15px;
}
.flow2024 .mb20 {
  margin-bottom: 20px;
}
.flow2024 .mb30 {
  margin-bottom: 30px;
}
.flow2024 .mb40 {
  margin-bottom: 40px;
}
.flow2024 .m50 {
  margin-bottom: 50px;
}

.txt01 {
  padding-top: 20px;
}

.step_list01 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.step_list01 li {
  height: 200px;
  position: relative;
  text-align: center;
  color: #fff;
  display: grid;
  align-items: center;
  place-content: center;
  gap: 10px;
  padding-left: 30px;
  box-sizing: border-box;
  width: 195px;
}
.step_list01 li:not(:last-child):before {
  display: block;
  content: "";
  top: 0;
  left: 100%;
  bottom: 0;
  margin: auto;
  position: absolute;
  width: 0;
  height: 0;
  border-top: 100px solid transparent;
  border-bottom: 100px solid transparent;
  border-left: 30px solid #8fb7db;
  z-index: 3;
}
.step_list01 li:first-child {
  width: 185px;
  padding-left: 10px;
  background: #8fb7db;
}
.step_list01 li:first-child:before {
  border-left: 30px solid #8fb7db;
}
.step_list01 li:nth-child(2) {
  background: #57a1e2;
}
.step_list01 li:nth-child(2):before {
  border-left: 30px solid #57a1e2;
}
.step_list01 li:nth-child(3) {
  background: #2b8ce1;
}
.step_list01 li:nth-child(3):before {
  border-left: 30px solid #2b8ce1;
}
.step_list01 li:nth-child(4) {
  background: #1e7bcc;
}
.step_list01 li:nth-child(4):before {
  border-left: 30px solid #1e7bcc;
}
.step_list01 li:nth-child(5) {
  background: #0c5d9f;
  width: 190px;
  padding-left: 20px;
}
.step_list01 li .txt30 {
  font-weight: 800;
  line-height: 1.1;
}
.step_list01 li .txt14 {
  font-weight: 600;
}
.step_list01 li .txt25 {
  font-weight: 700;
}
.step_list01 h3.txt25 {
  background: #0c5d9f;
  color: #fff;
  line-height: 50px;
}
.step_list01 h3.txt25:before {
  display: block;
  content: "";
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  position: absolute;
  width: 0;
  height: 0;
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 25px solid #0c5d9f;
  z-index: 3;
}
.step_list01 h3.txt25:after {
  display: block;
  content: "";
  width: 25px;
  height: 50px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background: #fff;
  z-index: 2;
}

.step_list02 p {
  font-size: 16px;
  letter-spacing: 0.03em;
}
.step_list02 dl {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
}
.step_list02 dl.ar:after {
  display: block;
  content: "";
  top: calc(100% + 15px);
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 23px solid #0c5d9f;
}
.step_list02 dl dt {
  width: 100px;
  background: #8fb7db;
  display: grid;
  place-items: center;
}
.step_list02 dl i {
  text-align: center;
  width: 100px;
  color: #fff;
  display: grid;
  align-items: center;
  place-content: center;
  gap: 5px;
}
.step_list02 dl i .txt18 {
  letter-spacing: 0.1em;
  display: block;
}
.step_list02 dl i span {
  line-height: 1;
}
.step_list02 dl:nth-of-type(2) dt {
  background: #57a1e2;
}
.step_list02 dl:nth-of-type(3) dt {
  background: #2b8ce1;
}
.step_list02 dl:nth-of-type(4) dt {
  background: #1e7bcc;
}
.step_list02 dl:nth-of-type(5) dt {
  background: #0c5d9f;
}
.step_list02 dl dd {
  align-items: center;
  width: calc(100% - 100px);
  padding: 40px 50px;
  border-top: 1px solid #005aa6;
  border-right: 1px solid #005aa6;
  border-bottom: 1px solid #005aa6;
}
.step_list02 dl dd .txt_box {
  text-align: left;
  width: calc(100% - 345px);
}
.step_list02 dl dd .txt_box .txt20 {
  font-weight: 600;
  background-color: #005aa6;
  color: #fff;
  line-height: 32px;
  padding: 0 10px;
  display: inline-block;
  letter-spacing: 0.1em;
}
.step_list02 dl dd .txt_box .txt24 {
  border-bottom: 1px solid #005aa6;
  padding: 0 0 10px 10px;
  letter-spacing: 0.1em;
}
.step_list02 dl dd .txt_box p {
  margin-left: 10px;
}
.step_list02 dl dd .btn_waku a {
  display: inline-block;
  position: relative;
  border: 2px solid #005bab;
  position: relative;
  line-height: 41px;
  padding: 0 30px 0 15px;
}
.step_list02 dl dd .btn_waku a:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 12px;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 2px solid #005bab;
  border-right: 2px solid #005bab;
  transform: rotate(45deg);
}
.step_list02 .txt28.bg_bl {
  font-size: 28px;
  background-color: #0c5d9f;
  line-height: 60px;
  color: #fff;
  border-radius: 30px;
  padding: 0 50px;
  display: inline-block;
  margin-inline: auto;
}

.btm_inq {
  background-color: #deeeff;
  padding: 40px;
}
.btm_inq .clm3 {
  gap: 20px;
}
.btm_inq .clm3 .bt_tel {
  border-radius: 3px;
  margin-right: 10px;
  padding: 17px 23px;
  background-color: #fff;
}
.btm_inq .clm3 .bt_tel .tel_wrap {
  background: url(/assets/img/flow/i_freedial.png) 0 50% no-repeat;
  background-size: 58px auto;
  padding-left: 64px;
}
.btm_inq .clm3 .bt_tel .txt_tel {
  font-size: 23px;
  line-height: 1;
}
.btm_inq .clm3 .bt_tel .txt_time {
  letter-spacing: 0.02em;
}
.btm_inq .clm3 .btn {
  width: 226px;
}
.btm_inq .clm3 .btn a {
  line-height: 45px;
  border-radius: 3px;
  color: #fff;
  display: block;
}
.btm_inq .clm3 .btn a .pr {
  padding-right: 18px;
}
.btm_inq .clm3 .btn a .pr:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
.btm_inq .clm3 .btn.bt_apply a {
  background: #c5101a;
}
.btm_inq .clm3 .btn.bt_mail a {
  background-color: #0c5d9f;
}
.btm_inq .txt_bl.txt22 {
  font-size: 22px;
}
.btm_inq .txt_bl.txt22 .pr {
  padding: 0 25px;
}
.btm_inq .txt_bl.txt22 .pr:before, .btm_inq .txt_bl.txt22 .pr:after {
  display: block;
  content: "";
  width: 12px;
  height: 2px;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  position: absolute;
  background: #0c5d9f;
}
.btm_inq .txt_bl.txt22 .pr::after {
  left: auto;
  right: 0;
}
.btm_inq .txt_ex {
  position: relative;
  line-height: 1.3;
  margin-bottom: 6px;
}
.btm_inq .txt_ex .pr {
  padding: 0 10px;
}
.btm_inq .txt_ex .pr:before, .btm_inq .txt_ex .pr:after {
  display: block;
  content: "";
  width: 1px;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  position: absolute;
  background: #333;
  transform: rotate(-35deg);
}
.btm_inq .txt_ex .pr:after {
  right: 0;
  left: auto;
  transform: rotate(35deg);
}

@media screen and (max-width: 767px) {
  /*----*/
  .flow2024 {
    padding: 0 2%;
  }
  .flow2024 .mb10 {
    margin-bottom: 10px;
  }
  .flow2024 .mb15 {
    margin-bottom: 15px;
  }
  .flow2024 .mb20 {
    margin-bottom: 10px;
  }
  .flow2024 .mb30 {
    margin-bottom: 15px;
  }
  .flow2024 .mb40 {
    margin-bottom: 20px;
  }
  .flow2024 .m50 {
    margin-bottom: 25px;
  }
  .flow2024 .tLsp {
    text-align: left;
  }
  .flow2024 .step_list01 li {
    place-content: start center;
    height: 140px;
    gap: 6px;
    padding-left: 10px;
    padding-top: 32px;
    width: 20%;
  }
  .flow2024 .step_list01 li:not(:last-child):before {
    border-top: 70px solid transparent;
    border-bottom: 70px solid transparent;
    border-left: 10px solid #8fb7db;
    z-index: 3;
  }
  .flow2024 .step_list01 li:first-child {
    width: 18%;
    padding-left: 5px;
  }
  .flow2024 .step_list01 li:first-child:before {
    border-left: 10px solid #8fb7db;
  }
  .flow2024 .step_list01 li:nth-child(2):before {
    border-left: 10px solid #57a1e2;
  }
  .flow2024 .step_list01 li:nth-child(3):before {
    border-left: 10px solid #2b8ce1;
  }
  .flow2024 .step_list01 li:nth-child(4):before {
    border-left: 10px solid #1e7bcc;
  }
  .flow2024 .step_list01 li:nth-child(5) {
    width: 22%;
    padding-left: 8px;
  }
  .flow2024 .step_list01 li .txt30 {
    font-size: 14px;
    line-height: 1.1;
  }
  .flow2024 .step_list01 li .txt14 {
    font-size: 8px;
  }
  .flow2024 .step_list01 li .txt25 {
    font-size: 14px;
    line-height: 1.3;
  }
  .flow2024 .step_list01 h3.txt25 {
    font-size: 15px;
    line-height: 36px;
    margin-bottom: 40px;
  }
  .flow2024 .step_list01 h3.txt25:before {
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-left: 10px solid #0c5d9f;
  }
  .flow2024 .step_list01 h3.txt25:after {
    width: 10px;
    height: 36px;
  }
  .flow2024 .step_list02 p {
    letter-spacing: 0.03em;
  }
  .flow2024 .step_list02 dl {
    display: flex;
    flex-direction: column;
    position: relative;
    margin-bottom: 50px;
  }
  .flow2024 .step_list02 dl.mb40 {
    margin-bottom: 30px;
  }
  .flow2024 .step_list02 dl dt {
    width: 100%;
    height: 80px;
  }
  .flow2024 .step_list02 dl i {
    width: 100%;
    gap: 5px;
  }
  .flow2024 .step_list02 dl i .txt40 {
    font-size: 35px;
  }
  .flow2024 .step_list02 dl i .txt18 {
    font-size: 15px;
    display: block;
  }
  .flow2024 .step_list02 dl dd {
    flex-direction: column-reverse;
    width: 100%;
    padding: 12px 12px 20px;
    border-top: none;
    border-left: 1px solid #005aa6;
  }
  .flow2024 .step_list02 dl dd .img {
    width: 100%;
  }
  .flow2024 .step_list02 dl dd .img img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
  }
  .flow2024 .step_list02 dl dd .txt_box {
    width: 100%;
  }
  .flow2024 .step_list02 dl dd .txt_box .txt20 {
    text-align: center;
    font-size: 16px;
    line-height: 28px;
    padding: 0 8px;
  }
  .flow2024 .step_list02 dl dd .txt_box .txt24 {
    font-size: 22px;
    padding: 0 0 5px 0;
    margin-bottom: 15px;
    letter-spacing: 0.05em;
  }
  .flow2024 .step_list02 dl dd .txt_box p {
    margin-left: 0;
  }
  .flow2024 .step_list02 .txt28.bg_bl {
    font-size: 18px;
    padding: 10px 20px;
    line-height: 1.6;
    border-radius: 45px;
    margin-bottom: 30px;
    max-width: 100%;
    width: 366px;
  }
  .flow2024 .btm_inq {
    margin-top: -10px;
    padding: 40px 15px;
  }
  .flow2024 .btm_inq .txt22 {
    font-size: 20px;
  }
  .flow2024 .btm_inq .clm3 {
    margin-inline: auto;
    width: 304px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  .flow2024 .btm_inq .clm3 .btn {
    width: 100%;
    max-width: 320px;
  }
  .flow2024 .btm_inq .clm3 .btn a {
    font-size: 16px;
    line-height: 55px;
  }
  .flow2024 .btm_inq .bt_tel {
    width: 100%;
    padding: 17px 22px;
    margin-bottom: 10px;
  }
  .flow2024 .btm_inq .tel_wrap {
    background-size: 54px auto;
    padding-left: 60px;
  }
  .flow2024 .btm_inq .txt_bl.txt22 {
    font-size: 20px;
  }
  .flow2024 .btm_inq .txt_bl.txt22 .pr {
    padding: 0 15px;
  }
  .flow2024 .btm_inq .txt_ex {
    position: relative;
    line-height: 1.3;
    margin-bottom: 6px;
  }
  .flow2024 .btm_inq .txt_ex .pr {
    padding: 0 10px;
  }
  .flow2024 .btm_inq .txt_ex .pr:before, .flow2024 .btm_inq .txt_ex .pr:after {
    display: block;
    content: "";
    width: 1px;
    height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    position: absolute;
    background: #333;
    transform: rotate(-35deg);
  }
  .flow2024 .btm_inq .txt_ex .pr:after {
    right: 0;
    left: auto;
    transform: rotate(35deg);
  }
} /*----*/
@media screen and (min-width: 768px) {
  /*----*/
  #result .movie_box li {
    width: 460px;
    max-width: 47%;
  }
  #form_box .form_table dt {
    width: 240px;
    border-bottom: 1px solid #e5ebf0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #form_box .form_table dt:not(.vt) {
    align-items: center;
  }
  #form_box .form_table dt.vt .must {
    margin-top: 5px;
  }
  #form_box .form_table dd {
    width: calc(100% - 240px);
  }
  #form_box input.w50 {
    width: 48%;
  }
  #form_box input.w50 + .w50 {
    margin-left: 10px;
  }
  #form_box .date {
    margin-left: 20px;
  }
  #form_box .btn .submit {
    gap: 30px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
} /*----*/
.list01 li .txt10 {
  font-size: 10px;
}

.txt11 {
  font-size: 11px;
}

.txt12 {
  font-size: 12px;
  line-height: 1.6;
}

.txt13 {
  font-size: 13px;
  line-height: 1.75;
}

.txt14 {
  font-size: 14px;
  line-height: 1.85;
}

.txt15 {
  font-size: 15px;
  line-height: 1.85;
}

.txt16 {
  font-size: 16px;
  line-height: 1.75;
}

.txt18 {
  font-size: 18px;
  line-height: 1.4;
}

.txt20 {
  font-size: 20px;
  line-height: 1.4;
}

.txt22 {
  font-size: 22px;
}

.txt23 {
  font-size: 23px;
}

.txt24 {
  font-size: 24px;
  line-height: 1.4;
}

.txt26 {
  font-size: 26px;
  line-height: 1.4;
}

.txt26 {
  font-size: 26px;
  line-height: 1.4;
}

.txt28 {
  font-size: 28px;
  line-height: 1.4;
}

.txt30 {
  font-size: 30px;
  line-height: 1.4;
}

.txt32 {
  font-size: 32px;
  line-height: 1.4;
}

.txt34 {
  font-size: 34px;
  line-height: 1.4;
}

.txt36 {
  font-size: 36px;
  line-height: 1.4;
}

.txt38 {
  font-size: 38px;
}

.txt40 {
  font-size: 40px;
}

.txt42 {
  font-size: 42px;
}

.txt44 {
  font-size: 44px;
}

.txt46 {
  font-size: 46px;
}

.txt48 {
  font-size: 48px;
  line-height: 1.8;
}

.txt50 {
  font-size: 50px;
  line-height: 1.3;
}

.txt54 {
  font-size: 52px;
}

.txt56 {
  font-size: 56px;
}

.txt60 {
  font-size: 60px;
}

.txt150 {
  font-size: 150px;
}

.mb0_pc,
.mb0 {
  margin-bottom: 0 !important;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb90 {
  margin-bottom: 90px;
}

.justify {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.flex-start {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.flex-end {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.flex-center {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.f-column,
.f_column {
  display: flex;
  flex-direction: column;
}

.alc {
  align-items: center;
}

.nowrap {
  white-space: nowrap;
}

.tL {
  text-align: left;
}

.tC {
  text-align: center;
}

.tR {
  text-align: right;
}

.db {
  display: block;
}

.ib {
  display: inline-block;
}

.fadein {
  opacity: 0;
  transform: translateY(10%);
  transition: opacity 725ms cubic-bezier(0.445, 0.05, 0.55, 0.95), transform 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: opacity;
}

.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0) !important;
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.main_btm.fadein {
  transform: translateY(30px);
}

.main_btm.fadein.scrollin {
  transform: translate(0, 0);
}

.zoom.fadein,
.stit_wrap.fadein {
  transform: scale(0.9);
  opacity: 0;
  transition: all 1s ease;
}

.zoom.fadein.scrollin,
.stit_wrap.fadein.scrollin {
  transform: scale(1);
  opacity: 1;
}

.fadein.delay {
  transition-delay: 0.35s;
}

.fadein.delay2 {
  transition-delay: 0.7s;
}

.fadein.delay3 {
  transition-delay: 1.05s;
}

.fadein.delay4 {
  transition-delay: 1.3s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*# sourceMappingURL=flow2024.css.map */