@charset "UTF-8";
/*----------------------------------------------------------

setting

----------------------------------------------------------*/
/*----------------------------------------------------------

mixin

----------------------------------------------------------*/
.pc {
  display: block;
}
@media only screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}
.sp {
  display: none;
}
@media only screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}
/* common_label  */
.common_label {
  background-color: #EFEFEF;
  padding: 36px 50px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .common_label {
    padding: 27px 35px;
  }
}
.common_label_container {
  max-width: 710px;
  width: 100%;
  margin-inline: auto;
}
.common_label_btnLists {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .common_label_btnLists {
    flex-direction: column;
  }
}
.common_label_btnList {
  width: 280px;
  height: 46px;
  max-width: 100%;
  display: flex;
  flex-direction: column-reverse;
}
@media only screen and (max-width: 768px) {
  .common_label_btnList {
    width: 360px;
    margin-inline: auto;
  }
}
.common_label_btnList:last-child {
  margin-left: 30px;
}
@media only screen and (max-width: 768px) {
  .common_label_btnList:last-child {
    margin-top: 25px;
    margin-left: 0;
    margin-inline: auto;
  }
}
.common_label_btnLabel {
  width: 90px;
  max-width: 100%;
  margin-left: 25%;
  height: 100%;
  position: relative;
  z-index: 2;
  aspect-ratio: 90/28;
  transition: all 0.3s ease 0s;
}
.common_label_btnLabel img {
  height: auto;
}
.common_label_btnLink {
  color: #0E9352;
  font-weight: 700;
  margin-top: -18px;
  background-color: #FFF;
  padding: 10px;
  display: block;
  transition: all 0.3s ease 0s;
}
.common_label_btnLink:hover {
  box-shadow: 0 2px 0 #0A6D3D;
  transform: translateY(2px);
}
.common_label_btnLink:hover + .common_label_btnLabel {
  transform: translateY(2px);
}
.common_label_btnLink::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-top: solid 1px #FFF;
  border-right: solid 1px #FFF;
  right: 23px;
  transform: rotate(135deg) translateY(-50%);
  transform-origin: top;
  top: 47%;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .common_label_btnLink::before {
    right: 18px;
  }
}
.common_label_btnLink::after {
  content: "";
  position: absolute;
  background: #0E9352;
  border-radius: 23px;
  width: 23px;
  height: 23px;
  right: 15px;
  transform: translateY(-50%);
  transform-origin: top;
  top: 50%;
  z-index: 0;
}
@media only screen and (max-width: 1024px) {
  .common_label_btnLink::after {
    right: 10px;
  }
}
/*----------------------------------------------------------

ご購入の流れ

----------------------------------------------------------*/
/* 見出し */
/* ============================================ */
.flow_kv {
  background-color: #EFF7F2;
}
.flow_kv_container {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media only screen and (max-width: 768px) {
  .flow_kv_container {
    flex-direction: column;
    height: 100%;
    align-items: flex-start;
    margin-left: 20px;
    margin-right: 20px;
  }
}
.flow_kv_img {
  width: min(20vw, 280px);
  height: 100%;
  max-width: 100%;
  margin-right: min(6.0714285714vw, 85px);
}
@media only screen and (max-width: 768px) {
  .flow_kv_img {
    margin-right: 22px;
    width: 94px;
    margin-left: auto;
  }
}
.flow_kv_img img {
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 768px) {
  .flow_kv_img img {
    display: flex;
  }
}
.common_btn_link {
  letter-spacing: 0.05em;
  line-height: 40px;
}
@media only screen and (max-width: 768px) {
  .common_btn_link {
    line-height: 50px;
  }
}
@media only screen and (max-width: 768px) {
  .common_btn_flow {
    padding-block: 17px;
  }
}
.flow_label {
  font-size: 18px;
}
@media only screen and (max-width: 768px) {
  .flow_label {
    font-size: 18px;
  }
}
.flow_br_1250 {
  display: none;
}
@media (max-width: 1250px) {
  .flow_br_1250 {
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .flow_br_1250 {
    display: none;
  }
}
.flow_commonHead {
  color: #0E9352;
  font-weight: 700;
  font-size: 24px;
  position: relative;
  width: 100%;
  border-bottom: 4px solid #cccccc;
  line-height: 1.6;
}
@media only screen and (max-width: 768px) {
  .flow_commonHead {
    font-size: 20px;
    border-bottom: 3px solid #cccccc;
    line-height: 1.92;
  }
}
.flow_commonHead:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 190px;
  height: inherit;
  border-bottom: 4px solid #0e9352;
}
@media only screen and (max-width: 768px) {
  .flow_commonHead:before {
    width: 140px;
    border-bottom: 3px solid #0e9352;
    bottom: -3px;
  }
}
.flow_title_container {
  padding-left: min(4.2857142857vw, 60px);
  padding-right: min(4.2857142857vw, 60px);
}
@media only screen and (max-width: 768px) {
  .flow_title_container {
    padding-inline: 20px;
  }
}
.flow_title {
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .flow_title {
    display: block;
  }
}
.flow_titleEn {
  color: #0E9352;
  display: block;
  font-size: 13px;
}
@media only screen and (max-width: 768px) {
  .flow_titleEn {
    font-size: 11px;
  }
}
.flow_titleJa {
  display: block;
  margin-top: 2px;
  font-size: 32px;
}
@media only screen and (max-width: 768px) {
  .flow_titleJa {
    font-size: 24px;
  }
}
@media only screen and (max-width: 768px) {
  .flow_common_visit_container {
    margin-inline: 10px;
  }
}
.common_visit {
  width: 78%;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .common_visit {
    width: 100%;
  }
}
.common_visit_br {
  display: none;
}
@media (max-width: 1300px) {
  .common_visit_br {
    display: block;
  }
}
.common_visit_nav {
  display: flex;
  margin: 0 auto;
  padding: 50px;
  border: 1px solid #0E9352;
  border-radius: 30px;
  width: 85%;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav {
    flex-direction: column;
  }
}
.common_visit_nav .common_visit_navBlock {
  display: flex;
  flex-direction: column;
  flex-basis: 50%;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlock {
    display: block;
    width: 100%;
  }
}
.common_visit_nav .common_visit_navBlock:first-child {
  padding-right: 50px;
  border-right: 1px solid #0E9352;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlock:first-child {
    padding-right: 0;
    padding-bottom: 50px;
    border-right: none;
    border-bottom: 1px solid #0E9352;
  }
}
.common_visit_nav .common_visit_navBlock:last-child {
  padding-left: 50px;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlock:last-child {
    padding-left: 0;
    padding-top: 50px;
  }
}
.common_visit_nav .common_visit_navBlockTxt {
  flex-grow: 1;
  font-size: 18px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlockTxt {
    font-weight: 700;
  }
}
.common_visit_nav .common_visit_navBlockBtn {
  position: relative;
  display: block;
  width: 100%;
  box-shadow: 0 4px 0 #0A6D3D;
  border: 1px solid #0E9352;
  border-radius: 6px;
  text-align: center;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlockBtn {
    width: 100%;
  }
}
.common_visit_nav .common_visit_navBlockBtn.btn_white {
  background-color: #FFFFFF;
  color: #0E9352;
}
.common_visit_nav .common_visit_navBlockBtn.btn_green {
  background-color: #0E9352;
  color: #FFFFFF;
}
.common_visit_nav .common_visit_navBlockBtn.btn_grey {
  background-color: #CCC;
  border-color: #CCC;
  box-shadow: 0 3px 0 #AAA;
  color: #FFFFFF;
}
.common_visit_nav .common_visit_navBlockBtn.btn_no_shadow {
  box-shadow: none;
}
.common_visit_nav .common_visit_navBlockBtn_link {
  line-height: 58px;
  letter-spacing: 0.1em;
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlockBtn_link {
    line-height: 58px;
    font-size: 18px;
  }
}
.common_visit_nav .common_visit_navBlockBtn_link .btn_icon, .common_visit_nav .common_visit_navBlockBtn_link .btn_text {
  vertical-align: middle;
}
.common_visit_nav .common_visit_navBlockBtn_link .btn_icon {
  aspect-ratio: auto 1/1;
  margin-right: 7px;
  width: 20px;
  height: 20px;
}
.common_visit_nav .common_visit_navBlockBtn_links {
  line-height: 58px;
  font-size: 18px;
  font-weight: 700;
}
@media (max-width: 1300px) {
  .common_visit_nav .common_visit_navBlockBtn_links {
    line-height: 1.5;
    padding-block: 18px;
  }
}
@media only screen and (max-width: 768px) {
  .common_visit_nav .common_visit_navBlockBtn_links {
    font-size: 18px;
  }
}
.common_visit_nav .common_visit_navBlockBtn .btn_arrow {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}
.common_visit_nav .common_visit_navBlockBtn:hover {
  box-shadow: 0 2px 0 #0A6D3D;
  transform: translateY(2px);
}
.common_visit_nav .common_visit_navBlockBtn.btn_grey:hover {
  box-shadow: 0 2px 0 #AAA;
}
.common_visit_nav.common_visit_3col {
  flex-basis: 33.3333333333%;
  justify-content: space-between;
}
.common_visit_nav.common_visit_3col .common_visit_block:first-child {
  padding-right: 25px;
  padding-left: 25px;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav.common_visit_3col .common_visit_block:first-child {
    padding-right: 0;
    padding-left: 0;
  }
}
.common_visit_nav.common_visit_3col .common_visit_block:nth-child(2) {
  padding-left: 25px;
  padding-right: 25px;
  border-right: 1px solid #0E9352;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav.common_visit_3col .common_visit_block:nth-child(2) {
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 50px;
    padding-top: 50px;
    border-right: none;
    border-bottom: 1px solid #0E9352;
  }
}
.common_visit_nav.common_visit_3col .common_visit_block:last-child {
  padding-left: 25px;
  padding-right: 25px;
}
@media only screen and (max-width: 768px) {
  .common_visit_nav.common_visit_3col .common_visit_block:last-child {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .common_visit_nav {
    width: 100%;
    margin-top: 40px;
    padding-inline: 37px;
  }
}
.common_visit_single {
  display: flex;
  margin: 0 auto;
  padding: 50px;
  border: 1px solid #0E9352;
  border-radius: 30px;
  width: 480px;
  max-width: 100%;
  display: block;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .common_visit_single {
    flex-direction: column;
  }
}
.common_visit_single .common_visit_navBlock {
  display: flex;
  flex-direction: column;
  flex-basis: 50%;
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlock {
    display: block;
    width: 100%;
  }
}
.common_visit_single .common_visit_navBlock:first-child {
  padding-right: 50px;
  border-right: 1px solid #0E9352;
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlock:first-child {
    padding-right: 0;
    padding-bottom: 50px;
    border-right: none;
    border-bottom: 1px solid #0E9352;
  }
}
.common_visit_single .common_visit_navBlock:last-child {
  padding-left: 50px;
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlock:last-child {
    padding-left: 0;
    padding-top: 50px;
  }
}
.common_visit_single .common_visit_navBlockTxt {
  flex-grow: 1;
  font-size: 18px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlockTxt {
    font-weight: 700;
  }
}
.common_visit_single .common_visit_navBlockBtn {
  position: relative;
  display: block;
  width: 100%;
  box-shadow: 0 4px 0 #0A6D3D;
  border: 1px solid #0E9352;
  border-radius: 6px;
  text-align: center;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlockBtn {
    width: 100%;
  }
}
.common_visit_single .common_visit_navBlockBtn.btn_white {
  background-color: #FFFFFF;
  color: #0E9352;
}
.common_visit_single .common_visit_navBlockBtn.btn_green {
  background-color: #0E9352;
  color: #FFFFFF;
}
.common_visit_single .common_visit_navBlockBtn.btn_grey {
  background-color: #CCC;
  border-color: #CCC;
  box-shadow: 0 3px 0 #AAA;
  color: #FFFFFF;
}
.common_visit_single .common_visit_navBlockBtn.btn_no_shadow {
  box-shadow: none;
}
.common_visit_single .common_visit_navBlockBtn_link {
  line-height: 58px;
  letter-spacing: 0.1em;
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlockBtn_link {
    line-height: 58px;
    font-size: 18px;
  }
}
.common_visit_single .common_visit_navBlockBtn_link .btn_icon, .common_visit_single .common_visit_navBlockBtn_link .btn_text {
  vertical-align: middle;
}
.common_visit_single .common_visit_navBlockBtn_link .btn_icon {
  aspect-ratio: auto 1/1;
  margin-right: 7px;
  width: 20px;
  height: 20px;
}
.common_visit_single .common_visit_navBlockBtn_links {
  line-height: 58px;
  font-size: 18px;
  font-weight: 700;
}
@media (max-width: 1300px) {
  .common_visit_single .common_visit_navBlockBtn_links {
    line-height: 1.5;
    padding-block: 18px;
  }
}
@media only screen and (max-width: 768px) {
  .common_visit_single .common_visit_navBlockBtn_links {
    font-size: 18px;
  }
}
.common_visit_single .common_visit_navBlockBtn .btn_arrow {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}
.common_visit_single .common_visit_navBlockBtn:hover {
  box-shadow: 0 2px 0 #0A6D3D;
  transform: translateY(2px);
}
.common_visit_single .common_visit_navBlockBtn.btn_grey:hover {
  box-shadow: 0 2px 0 #AAA;
}
.common_visit_single.common_visit_3col {
  flex-basis: 33.3333333333%;
  justify-content: space-between;
}
.common_visit_single.common_visit_3col .common_visit_block:first-child {
  padding-right: 25px;
  padding-left: 25px;
}
@media only screen and (max-width: 768px) {
  .common_visit_single.common_visit_3col .common_visit_block:first-child {
    padding-right: 0;
    padding-left: 0;
  }
}
.common_visit_single.common_visit_3col .common_visit_block:nth-child(2) {
  padding-left: 25px;
  padding-right: 25px;
  border-right: 1px solid #0E9352;
}
@media only screen and (max-width: 768px) {
  .common_visit_single.common_visit_3col .common_visit_block:nth-child(2) {
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 50px;
    padding-top: 50px;
    border-right: none;
    border-bottom: 1px solid #0E9352;
  }
}
.common_visit_single.common_visit_3col .common_visit_block:last-child {
  padding-left: 25px;
  padding-right: 25px;
}
@media only screen and (max-width: 768px) {
  .common_visit_single.common_visit_3col .common_visit_block:last-child {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .common_visit_single {
    margin-top: 40px;
    width: 100%;
    padding-inline: 30px;
  }
}
.common_visit_singleBlockTxt {
  flex-grow: 1;
  font-size: 18px;
  margin-bottom: 20px;
}
.flow_about {
  padding-top: 80px;
}
@media only screen and (max-width: 768px) {
  .flow_about {
    padding-top: 40px;
  }
}
.flow_about_container {
  width: 85.7vw;
  max-width: 1200px;
  margin: auto;
}
@media screen and (max-width: 1400px) {
  .flow_about_container {
    width: 95%;
  }
}
@media only screen and (max-width: 768px) {
  .flow_about_container {
    width: 100vw;
  }
}
.flow_about_head {
  margin-top: 40px;
  font-weight: 700;
  font-size: 24px;
  color: #0E9352;
}
@media only screen and (max-width: 768px) {
  .flow_about_head {
    margin-top: 25px;
    font-size: 20px;
  }
}
.flow_about_text {
  margin-top: 30px;
  font-size: 15px;
  font-weight: 500;
}
@media only screen and (max-width: 768px) {
  .flow_about_text {
    margin-top: 20px;
    font-size: 16px;
  }
}
.flow_aboutBox {
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox {
    margin-top: 40px;
  }
}
.flow_aboutBox_list:not(:first-child) {
  margin-top: 73px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_list:not(:first-child) {
    margin-top: 45px;
  }
}
.flow_aboutBox_list:not(:last-child) {
  position: relative;
}
.flow_aboutBox_list:not(:last-child)::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  border-top: 30px solid #0E9352;
  border-bottom: 0;
  bottom: -33px;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_list:not(:last-child)::after {
    border-right: 40px solid transparent;
    border-left: 40px solid transparent;
    border-top: 20px solid #0E9352;
    bottom: -23px;
  }
}
.flow_aboutBox_list {
  border-top: 5px solid #0E9352;
  border-bottom: 5px solid #0E9352;
  background-color: #EFF7F2;
  padding-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_list {
    padding-bottom: 60px;
  }
}
.flow_aboutBox_title {
  display: flex;
  align-items: center;
  font-size: 30px;
  font-weight: 700;
  color: #0E9352;
  border-bottom: 1px solid #0E9352;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_title {
    flex-direction: column;
    font-size: 24px;
    padding-top: 20px;
  }
}
.flow_aboutBox_number {
  width: min(8.2142857143vw, 115px);
  max-width: 100%;
  height: min(8.2142857143vw, 115px);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: min(3vw, 42px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_number {
    font-size: 32px;
    width: 100%;
    height: 100%;
    position: relative;
  }
  .flow_aboutBox_number::after {
    content: "";
    position: absolute;
    background-color: #0E9352;
    width: 24px;
    height: 1px;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.flow_aboutBox_titleJa {
  height: 100%;
  padding-block: 25px;
  border-left: 1px solid #0E9352;
  letter-spacing: 0.025em;
  padding-left: min(2.5714285714vw, 36px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_titleJa {
    padding-left: 0;
    padding-top: 15px;
    padding-bottom: 30px;
    border-left: none;
    line-height: 1.5833333333;
    text-align: center;
  }
}
.flow_aboutBox_item {
  margin-top: 60px;
  display: flex;
  padding-inline: min(4.2857142857vw, 60px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_item {
    flex-direction: column;
    margin-top: 20px;
    padding-inline: 20px;
  }
}
.flow_aboutBox_img {
  flex-shrink: 0;
  height: 100%;
  max-width: 100%;
  width: min(25.7142857143vw, 360px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_img {
    width: 100%;
    text-align: center;
  }
}
.flow_aboutBox_img img {
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
}
.flow_aboutBox_body {
  margin-left: min(3.5714285714vw, 50px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_body {
    margin-left: 0;
    margin-top: 20px;
  }
}
.flow_aboutBox_body p {
  font-weight: 500;
  font-size: 15px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_body p {
    font-size: 16px;
    line-height: 1.6;
  }
}
.flow_aboutBox_body span {
  color: #FFF;
  background-color: #0E9352;
  padding-bottom: 1px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_body span {
    padding-bottom: 0;
    line-height: 1.7333333333;
  }
}
.flow_aboutBox_body strong {
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_body strong {
    font-size: 18px;
  }
}
.flow_aboutBox_bodyLink {
  color: #0E9352;
  text-decoration: underline;
  font-weight: 700;
}
.flow_aboutBox_body small {
  margin-top: 20px;
  font-size: 13px;
  display: block;
  position: relative;
  padding-left: 15px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_body small {
    font-size: 13px;
  }
}
.flow_aboutBox_body small::before {
  content: "※";
  position: absolute;
  width: 15px;
  height: 15px;
  top: 0;
  left: 0;
}
.flow_aboutBox_body p:not(:first-child) {
  margin-top: 15px;
}
.flow_aboutBox_btn {
  margin-top: 20px;
}
.flow_aboutBox_btn > a {
  margin-left: auto;
  width: 100%;
  max-width: 300px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_btn > a {
    margin-left: 0;
    margin-inline: auto;
    padding-block: 12px;
  }
}
.flow_aboutBox_btn260 > a {
  width: 260px;
  max-width: 100%;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_btn260 > a {
    width: 300px;
  }
}
.flow_aboutBox_btn300 > a {
  max-width: 300px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_btn300 > a {
    max-width: 300px;
  }
}
.flow_aboutBox_btn30 {
  margin-top: 30px;
}
.flow_aboutBox_contentBottom {
  margin-top: 20px;
  max-width: min(16.4285714286vw, 230px);
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contentBottom {
    max-width: 300px;
    margin-inline: auto;
  }
}
.flow_aboutBox_contentBottom > a {
  width: 100%;
  margin-left: auto;
  padding-left: min(1.8571428571vw, 26px);
}
.flow_aboutBox_contentBtn {
  margin-top: 20px;
}
.flow_aboutBox_contentBtnFax {
  margin-top: -20px;
}
.flow_aboutBox_contentBtn img {
  max-width: 100%;
  height: auto;
  width: 205px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contentBtn img {
    width: 300px;
  }
}
.flow_aboutBox_contentBtnLink {
  color: #0E9352;
  font-weight: 700;
  letter-spacing: -0.01em;
  font-size: min(2.2857142857vw, 32px);
  position: relative;
  padding-left: 20px;
  white-space: nowrap;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contentBtnLink {
    font-size: 32px;
  }
}
.flow_aboutBox_contentBtnLink::before {
  content: "";
  position: absolute;
  width: 18px;
  height: 24px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.flow_aboutBox_contentBtnTel {
  line-height: 0.6;
}
.flow_aboutBox_contentBtnTel::before {
  background: url("/assets/img/flow/icon_tel.webp") no-repeat center center/contain;
}
.flow_aboutBox_contentBtnFax {
  padding-left: 25px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contentBtnFax {
    padding-left: 35px;
  }
}
.flow_aboutBox_contentBtnFax::before {
  width: 24px;
  height: 24px;
  background: url("/assets/img/flow/icon_fax.webp") no-repeat center center/contain;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contentBtnFax::before {
    width: 30px;
    height: 30px;
  }
}
.flow_aboutBox_contentBtnText {
  letter-spacing: -0.01em;
  font-size: 11px;
}
.flow_aboutBox_contactHead {
  margin-top: 79px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactHead {
    margin-top: 60px;
  }
}
.flow_aboutBox_contactText {
  margin-top: 20px;
  font-weight: 500;
  font-size: 15px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactText {
    font-size: 15px;
  }
}
.flow_aboutBox_contactLists {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  padding-inline: min(2.1428571429vw, 30px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactLists {
    grid-template-columns: repeat(1, 1fr);
    padding-inline: 10px;
  }
}
.flow_aboutBox_contactList:not(:first-child) {
  position: relative;
  border-left: 1px dashed #C0C0C0;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactList:not(:first-child) {
    border-left: none;
  }
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactList:not(:first-child) > .flow_aboutBox_contactTop {
    border-top: 1px dashed #C0C0C0;
  }
}
.flow_aboutBox_contactList {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding-block: 40px;
  padding-inline: min(1.9285714286vw, 27px);
  background-color: #FFF;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactList {
    padding-inline: 27px;
    padding-top: 0;
  }
}
.flow_aboutBox_contactList_small {
  padding-inline: min(1.5714285714vw, 22px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactList_small {
    padding-inline: 27px;
  }
}
.flow_aboutBox_contactListFax {
  justify-content: flex-start;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactTop {
    padding-top: 40px;
    width: 100%;
  }
}
.flow_aboutBox_contactImg {
  width: 100%;
  height: auto;
  max-width: min(9.2857142857vw, 130px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactImg {
    max-width: 130px;
  }
}
.flow_aboutBox_contactImg img {
  height: 100%;
  width: 100%;
}
.flow_aboutBox_contactExplain {
  margin-top: 15px;
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactExplain {
    font-size: 18px;
  }
}
.flow_aboutBox_contactContent {
  margin-top: 20px;
}
.flow_aboutBox_contactLead {
  color: #0E9352;
  font-weight: 700;
  font-size: 15px;
  white-space: nowrap;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactLead {
    font-size: 16px;
  }
}
.flow_aboutBox_contactmessage {
  margin-top: 10px;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_contactmessage {
    padding-inline: 25px;
  }
}
.flow_aboutBox_bodyText {
  margin-top: 41px;
  padding-inline: 60px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_bodyText {
    padding-inline: 20px;
  }
}
.flow_aboutBox_bodyText p:not(:first-child) {
  margin-top: 15px;
}
.flow_aboutBox_thumbnail {
  margin-top: 21px;
  margin-inline: min(4.2857142857vw, 60px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_thumbnail {
    margin-inline: calc(50% - 50vw);
    width: 100vw;
  }
}
.flow_aboutBox_return {
  margin-top: 40px;
  width: 90%;
  margin-inline: auto;
}
.flow_aboutBox_returnHead {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  z-index: 2;
  position: relative;
  text-align: center;
  font-weight: 700;
  font-size: 24px;
  background-image: linear-gradient(to bottom, #EFF7F2 50%, white 50%);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_returnHead {
    font-size: 18px;
  }
}
.flow_aboutBox_returnBox {
  margin-top: -20px;
  border: 1px solid #333;
  background-color: #FFF;
  padding: 48px 0 36px;
  padding-inline: min(3.2142857143vw, 45px);
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_returnBox {
    margin-top: -16px;
  }
}
.flow_aboutBox_returnbtn {
  margin-top: 25px;
  max-width: 100%;
  margin-inline: auto;
  width: 300px;
}
@media only screen and (max-width: 768px) {
  .flow_aboutBox_returnbtn {
    margin-top: 20px;
  }
}
.flow_lease {
  padding-top: 140px;
}
@media only screen and (max-width: 768px) {
  .flow_lease {
    padding-top: 80px;
  }
}
.flow_lease_container {
  max-width: min(77.1428571429vw, 1080px);
  width: 100%;
  margin-inline: auto;
}
@media only screen and (max-width: 768px) {
  .flow_lease_container {
    max-width: 710px;
    padding-inline: 20px;
  }
}
.flow_lease_container_bottom {
  max-width: min(77.1428571429vw, 1080px);
  width: 100%;
  margin-inline: auto;
}
@media only screen and (max-width: 768px) {
  .flow_lease_container_bottom {
    max-width: 710px;
  }
}
.flow_lease_title {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  margin-top: 60px;
  font-weight: 700;
  color: #FFF;
  background-color: #0E9352;
  letter-spacing: 0.1em;
  font-size: 24px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_title {
    margin-inline: calc(50% - 50vw);
    width: 100vw;
    margin-top: 25px;
    font-size: 18px;
    justify-content: flex-start;
    padding-left: 20px;
  }
}
.flow_lease_title120 {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_title120 {
    margin-top: 80px;
  }
}
.flow_lease_HeadMt40 {
  margin-top: 40px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_HeadMt40 {
    margin-top: 30px;
  }
}
.flow_lease_text {
  margin-top: 31px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.6;
}
@media only screen and (max-width: 768px) {
  .flow_lease_text {
    margin-top: 20px;
    font-size: 16px;
  }
}
.flow_lease_text p:not(:first-child) {
  margin-top: 15px;
}
.flow_lease_HeadMt60 {
  margin-top: 60px;
}
.flow_lease_table {
  margin-top: 30px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table {
    margin-top: 20px;
  }
}
.flow_lease_table_listGreen {
  display: flex;
  color: #FFF;
  background-color: #0E9352;
  height: 50px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listGreen {
    font-size: 16px;
    height: 40px;
  }
}
.flow_lease_table_listGreen dt {
  letter-spacing: 0.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: min(18.5714285714vw, 260px);
  max-width: 100%;
  border-right: 1px solid #CCCCCC;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listGreen dt {
    width: 128px;
  }
}
.flow_lease_table_listGreen dd {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-weight: 700;
}
.flow_lease_table_listContent {
  font-size: 15px;
  display: flex;
  border-bottom: 1px solid #CCCCCC;
  border-left: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
}
.flow_lease_table_listContent dt {
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: min(18.5714285714vw, 260px);
  max-width: 100%;
  background-color: #EFEFEF;
  border-right: 1px solid #CCCCCC;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent dt {
    width: 128px;
    font-size: 16px;
    text-align: center;
  }
}
.flow_lease_table_listContent_dd {
  font-weight: 500;
  width: 100%;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
  padding-left: min(1.7857142857vw, 25px);
  padding-right: min(3.7857142857vw, 53px);
  padding-block: 20px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent_dd {
    font-size: 15px;
    padding: 15px;
  }
}
.flow_lease_table_listContent_dd > small {
  font-size: 13px;
  letter-spacing: 0.025em;
  line-height: 2.1538461538;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent_dd > small {
    line-height: 1.9846153846;
  }
}
.flow_lease_table_listContent_ddSmall {
  padding-left: min(1.4285714286vw, 20px);
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent_ddSmall {
    padding: 15px;
  }
}
.flow_lease_table_listContent_ddLearge {
  padding-top: 37px;
  padding-bottom: 37px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent_ddLearge {
    padding: 15px;
  }
}
.flow_lease_table_listContent_border {
  border-top: 1px solid #CCCCCC;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent_bottom {
    flex-direction: column;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listContent_bottom dt {
    width: 100%;
    padding: 18px 20px;
    justify-content: flex-start;
    border-right: none;
  }
}
.flow_lease_listsMt15 {
  margin-top: 15px;
}
.flow_lease_listsMt10 {
  margin-top: 8px;
  padding-bottom: 15px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_listsMt10 {
    margin-top: 3px;
    padding-left: 3px;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lease_lists {
    padding-right: 25px;
  }
}
.flow_lease_list {
  position: relative;
  padding-left: 25px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_list {
    padding-left: 15px;
  }
}
.flow_lease_list::before {
  content: "";
  position: absolute;
  background-color: #0E9352;
  width: min(0.5714285714vw, 8px);
  height: min(0.5714285714vw, 8px);
  left: 10px;
  top: 35%;
  border-radius: 50%;
}
@media only screen and (max-width: 768px) {
  .flow_lease_list::before {
    width: 8px;
    height: 8px;
    top: 9px;
    left: 0;
  }
}
.flow_lease_table_listHead {
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  .flow_lease_table_listHead {
    font-size: 16px;
  }
}
.flow_lease_small {
  display: block;
  margin-top: 15px;
  font-weight: 500;
  font-size: 13px;
}
.flow_lease_itemsBox {
  padding-bottom: 140px;
  margin-top: 15px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 min(3.0714285714vw, 43px);
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemsBox {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
    padding-bottom: 80px;
    margin-top: 12px;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lease_items {
    max-width: 710px;
    width: 100%;
    padding-right: 10px;
  }
}
.flow_lease_item {
  margin-top: 15px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_item {
    margin-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .flow_lease_item:not(:first-child) {
    margin-top: 10px;
  }
}
.flow_lease_itemBox {
  margin-top: -25px;
  background-color: #EFF7F2;
  border-radius: 6px;
  padding-block: 30px;
  height: 148px;
  padding-inline: min(2.8571428571vw, 40px);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemBox {
    padding: 25px 30px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-left: 10px;
  }
}
.flow_lease_itemBox_arrow {
  position: relative;
}
.flow_lease_itemBox_arrow::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 16px solid transparent;
  border-left: 16px solid transparent;
  border-top: 15px solid #0E9352;
  border-bottom: 0;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemBox_arrow::after {
    bottom: -12px;
    border-right: 13px solid transparent;
    border-left: 13px solid transparent;
    border-top: 13px solid #0E9352;
  }
}
.flow_lease_itemBox_head {
  color: #0E9352;
  font-weight: 700;
  font-size: 24px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemBox_head {
    font-size: 20px;
  }
}
.flow_lease_itemBox_text {
  margin-top: 6px;
  font-weight: 500;
  font-size: 15px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemBox_text {
    font-size: 16px;
  }
}
.flow_lease_itemBox_img {
  width: min(3.5714285714vw, 50px);
  max-width: 100%;
  height: auto;
  position: relative;
  z-index: 3;
  left: -18px;
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemBox_img {
    width: 40px;
    left: 0;
  }
}
.flow_lease_itemBox_img img {
  height: 100%;
  display: block;
}
.flow_lease_item_nestArrow {
  position: relative;
}
.flow_lease_itemBox_imgArrow {
  position: absolute;
  height: min(3.0714285714vw, 43px);
  width: min(3.3571428571vw, 47px);
  top: 50%;
  right: -8%;
  transform: translateY(-50%);
  z-index: -1;
}
@media only screen and (max-width: 768px) {
  .flow_lease_itemBox_imgArrow {
    display: none;
  }
} /*# sourceMappingURL=flow.css.map */