@charset "utf-8";
/* box_wrap
---------------------------------------- */
.box_wrap {
  position: relative;
  padding: 0 50px;
}
.box_wrap::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 164px;
  left: 0;
  width: 320px;
  height: 227px;
  background: url(../img/common/ico_dotted.svg) left top;
}
.box_wrap .inner {
  position: relative;
  z-index: 1;
  padding: 43px 0 100px;
}
.box_wrap .box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  align-items: center;
  margin-bottom: 100px;
}
.box_wrap figure {
  flex: none;
  width: 650px;
  max-width: 50%;
  padding: 0 5% 0 0;
}
.box_wrap .txt_wrap {
  width: 650px;
  max-width: 50%;
}
.box_wrap .txt {
  font-size: 1.5rem;
  letter-spacing: .05em;
  line-height: 2.333;
}
.box_wrap .jump_list {
  display: flex;
  justify-content: center;
}
.box_wrap .jump_item {
  width: 100%;
  max-width: 485px;
  border-radius: 0 5px 5px 0;
}
.txt_wrap .mid_linkbox {
  margin: 20px auto 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
}
.txt_wrap .mid_linkbox li {}
.txt_wrap .mid_linkbox li:nth-child(1) {
  width: 63%;
}
.txt_wrap .mid_linkbox li:nth-child(2) {
  width: 35%;
}
.txt_wrap .mid_linkbox li:not(:last-child) {
  margin-bottom: 15px;
}
.txt_wrap .mid_linkbox li a {
  margin: 0;
  max-width: 400px;
}
.box_wrap .important_notices {
  width: 810px;
  max-width: 100%;
  margin: 40px auto 0;
}
.box_wrap .important_notices .txt {
  display: block;
  width: 100%;
  font-size: 16px;
}
@media screen and (max-width: 1400px) {
  .txt_wrap .mid_linkbox li:nth-child(1) {
    width: 100%;
  }
  .txt_wrap .mid_linkbox li:nth-child(2) {
    width: 100%;
  }
  .txt_wrap .mid_linkbox li a {
    max-width: 370px;
  }
}
.box_wrap .jump_item:first-of-type {
  margin-right: 1px;
  border-radius: 5px 0 0 5px;
}
.box_wrap .jump_link {
  font-size: 1.8rem;
  letter-spacing: .05em;
  line-height: 1.5;
  color: #fff;
  display: block;
  padding: 26.5px 0;
  border-radius: 0 5px 5px 0;
  background: #EA1F27;
}
.box_wrap .jump_item:first-of-type .jump_link {
  border-radius: 5px 0 0 5px;
}
.flow_wrap_reuse .txt_bottom {
  margin-top: 10px;
}
.mail_flow_last_step {
  padding: 0 50px 100px;
}
.mail_flow_last_item {
  margin: 0 auto;
  width: 100%;
  max-width: 1300px;
}
.mail_flow_last_box {
  /*padding: 50px;*/
  /*border-radius: 10px;*/
  /*background: #F2F2F1;*/
  /*box-shadow: 3px 3px 0 rgb(0 0 0 / 15%);*/
  border-radius: 10px;
  background-color: #fff;
  margin-top: 50px;
  padding: 50px;
}
.mail_flow_last_main_tit {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: .06em;
  line-height: 1.5;
  margin-bottom: 30px;
}
.mail_flow_last_tit {
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: .06em;
  line-height: 1.5;
  margin-bottom: 10px;
  border-top: solid 1px #ccc;
  padding-top: 30px;
}
.mail_flow_last_tit2 {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: .05em;
  line-height: 1.45;
  padding-left: 18px;
  position: relative;
  margin-bottom: 10px;
}
.mail_flow_last_tit2:before {
  content: "";
  display: block;
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #EA1F27;
}
.mail_flow_last_txt {
  font-size: 1.5rem;
  letter-spacing: .05em;
  line-height: 2;
  margin-bottom: 30px;
}
.mail_flow_last_txt_bottom {
  margin-bottom: 0;
}
.mail_flow_last_txt span.caution {
  font-size: 1.2rem;
}
.mail_flow_last_txt a {
  color: #EA1F27;
  text-decoration: underline;
}
.invoice_box {
  margin: 20px auto 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}
.invoice_box .textbox {
	width: calc( 100% - 350px );
}
.invoice_box .imgbox {
	width: 350px;
}
@media screen and (max-width: 1024px) {
  .invoice_box .textbox {
	width: calc( 100% - 200px );
  }
  .invoice_box .imgbox {
	width: 200px;
  }
}
@media screen and (min-width: 769px) {
  .box_wrap .jump_link:hover {
    background: #D00008;
    opacity: 1;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .box_wrap {
    padding: 0 1.563vw;
  }
  .box_wrap .inner {
    padding: 3.359vw 0 7.813vw;
  }
  .box_wrap .box {
    margin-bottom: 7.813vw;
  }
  /*.box_wrap figure {
    margin-right: 4.688vw;
    width: 45.313vw;
  }*/
}
@media screen and (max-width: 768px) {
  .box_wrap {
    padding: 0;
  }
  .box_wrap::before {
    display: none;
  }
  .box_wrap .inner {
    padding: 10% 0;
  }
  .box_wrap .box {
    display: block;
    margin-bottom: 50px;
  }
  .box_wrap figure {
    margin: 0 auto 20px;
    width: 100%;
    max-width: 100%;
  }
  .box_wrap .important_notices {
    margin: 30px auto 0;
  }
  .box_wrap .important_notices .txt {
    font-size: 1.3rem;
  }
  .mail_flow_last_item {
    max-width: 92%;
  }
  .mail_flow_last_step {
    padding: 0 0 10%;
  }
  .mail_flow_last_box {
    /*padding: 10% 4%;*/
  }
  .box_wrap .txt_wrap {
    width: 800px;
    max-width: 100%;
  }
  .txt_wrap .mid_linkbox li a {
    font-size: 1.6rem;
  }
  .invoice_box .textbox {
	width: 100%;
  }
  .invoice_box .imgbox {
	width: 100%;
  }
}
@media screen and (max-width: 540px) {
  .box_wrap .txt {
    font-size: 1.3rem;
    line-height: 2;
  }
  .box_wrap .jump_link {
    font-size: 1.5rem;
    padding: 20px 0;
  }
  .mail_flow_last_box {
    padding: 10% 4%;
  }
  .mail_flow_last_main_tit {
    font-size: 2.2rem;
    margin: 0 0 20px;
  }
  .mail_flow_last_tit {
    font-size: 1.8rem;
  }
  .mail_flow_last_tit2 {
    font-size: 1.6rem;
  }
  .mail_flow_last_txt {
    font-size: 1.3rem;
  }
}
/* flow_wrap_reuse
---------------------------------------- */
.flow_wrap_reuse .item.mail_flow_item {
  border-top: none;
}
.flow_wrap_reuse .mail_flow_sttl {
  font-size: 2.8rem;
  letter-spacing: .05em;
  line-height: 1.464;
  text-indent: .05em;
  margin-bottom: 34px;
}
.flow_wrap_reuse .mail_flow_child_list {
  display: flex;
  justify-content: space-between;
}
.flow_wrap_reuse .mail_flow_child_item {
  width: 100%;
  max-width: 31.666%;
}
.flow_wrap_reuse .mail_flow_image {
  margin-bottom: 20px;
}
.flow_wrap_reuse .mail_flow_ssttl {
  font-size: 2rem;
  line-height: 1.45;
}
.flow_wrap_reuse .mail_flow_note {
  font-size: 1.2rem;
  letter-spacing: .05em;
  line-height: 2.083;
  text-indent: .05em;
  margin-top: 11.5px;
}
.flow_wrap_reuse .mail_flow_txt {
  font-size: 1.5rem;
  letter-spacing: .05em;
  line-height: 2;
  text-indent: .05em;
  margin-top: 10px;
}
.flow_wrap_reuse .flow_contact_wrap {
  padding: 50px;
}
.flow_wrap_reuse .red_btn_link {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0;
  height: 80px;
}
.flow_wrap_reuse .tel_btn .red_btn_link::after {
  display: none;
}
.flow_wrap_reuse .tel_btn .red_btn_link > span {
  letter-spacing: normal;
  line-height: 1.5;
  color: #fff;
  display: block;
}
.flow_wrap_reuse .tel_btn .red_btn_link .tel {
  font-size: 3rem;
}
.flow_wrap_reuse .tel_btn .red_btn_link .tel::before {
  content: "";
  display: inline-block;
  margin-right: 15px;
  width: 25px;
  height: 25px;
  background: url(../img/common/ico_tel01.svg) center / cover no-repeat;
}
.flow_wrap_reuse .tel_btn .red_btn_link .time {
  font-size: 1.2rem;
}
.flow_wrap_reuse .d_list.border_frame {
  display: flex;
  align-items: center;
  padding: 40px 50px;
  margin-top: 1em;
}
.flow_wrap_reuse .d_list.border_frame .d_term {
  font-size: 1.8rem;
  letter-spacing: .05em;
  line-height: 1.777;
  width: 180px;
}
.flow_wrap_reuse .d_list.border_frame .d_des {
  width: calc(100% - 180px);
}
.flow_wrap_reuse .d_list.border_frame .d_des address {
  font-size: 1.5rem;
  letter-spacing: .05em;
  line-height: 2;
  position: relative;
  padding-left: 50px;
}
.flow_wrap_reuse .d_list.border_frame .d_des address::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 47px;
  border-left: 1px dotted #1A1A1A;
  transform: translateY(-50%);
}
.flow_wrap_reuse .delivery_flow_list {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}
.flow_wrap_reuse .delivery_flow_item {
  padding: 2.5%;
  max-width: 23.75%;
  border: 1px solid #E8E8E8;
  border-radius: 5px;
  background: #fff;
}
.flow_wrap_reuse .delivery_flow_ssttl {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}
.flow_wrap_reuse .delivery_flow_num {
  font-size: 1.5rem;
  letter-spacing: .04em;
  line-height: 30px;
  text-indent: .04em;
  color: #fff;
  display: inline-block;
  margin-right: 15px;
  width: 30px;
  height: 30px;
  border-radius: 3px;
  background: #EA1F27;
}
.flow_wrap_reuse .delivery_flow_sttl_txt {
  font-size: 1.8rem;
  letter-spacing: .05em;
  line-height: 30px;
  height: 30px;
}
.flow_wrap_reuse .delivery_flow_image {
  margin-bottom: 15.5px;
}
.flow_wrap_reuse .delivery_flow_txt {
  font-size: 1.3rem;
  letter-spacing: .05em;
  line-height: 1.462;
}
@media screen and (max-width: 1679px) {
  .flow_wrap_reuse .mail_flow_ssttl {
    font-size: 1.8rem;
  }
  .flow_wrap_reuse .mail_flow_note {
    font-size: 1.1rem;
  }
  .flow_wrap_reuse .mail_flow_txt {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .flow_wrap_reuse .mail_flow_sttl {
    margin-bottom: 2.656vw;
  }
  .flow_wrap_reuse .mail_flow_image {
    margin-bottom: 1.563vw;
  }
  .flow_wrap_reuse .mail_flow_note {
    margin-top: 0.898vw;
  }
  .flow_wrap_reuse .mail_flow_txt {
    margin-top: 0.781vw;
  }
  .flow_wrap_reuse .flow_contact_wrap {
    padding: 3.906vw;
  }
  .flow_wrap_reuse .red_btn_link {
    height: 6.25vw;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link .tel::before {
    margin-right: 1.172vw;
    width: 1.953vw;
    height: 1.953vw;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link .time {
    letter-spacing: -.1em;
  }
  .flow_wrap_reuse .d_list.border_frame {
    padding: 3.125vw 3.906vw;
  }
  .flow_wrap_reuse .d_list.border_frame .d_term {
    width: 14.063vw;
  }
  .flow_wrap_reuse .d_list.border_frame .d_des {
    width: calc(100% - 14.063vw);
  }
  .flow_wrap_reuse .d_list.border_frame .d_des address {
    padding-left: 3.906vw;
  }
  .flow_wrap_reuse .d_list.border_frame .d_des address::before {
    height: 3.672vw;
  }
  .flow_wrap_reuse .delivery_flow_list {
    margin-top: 2.344vw;
  }
  .flow_wrap_reuse .delivery_flow_ssttl {
    margin-bottom: 1.172vw;
  }
  .flow_wrap_reuse .delivery_flow_num {
    line-height: 2.344vw;
    margin-right: 1.172vw;
    width: 2.344vw;
    height: 2.344vw;
  }
  .flow_wrap_reuse .delivery_flow_sttl_txt {
    line-height: 2.344vw;
    height: 2.344vw;
  }
  .flow_wrap_reuse .delivery_flow_image {
    margin-bottom: 1.211vw;
  }
}
@media screen and (max-width: 768px) {
  .flow_wrap_reuse .flow_contact_wrap .box {
    display: block;
  }
  .flow_wrap_reuse .flow_contact_wrap .btn {
    margin: 0 auto 20px;
    width: 100%;
  }
  .flow_wrap_reuse .mail_flow_child_list {
    display: block;
  }
  .flow_wrap_reuse .mail_flow_child_item {
    max-width: 100%;
  }
  .flow_wrap_reuse .flow_contact_wrap {
    padding: 4%;
  }
  .flow_wrap_reuse .d_list.border_frame {
    display: block;
    padding: 4%;
  }
  .flow_wrap_reuse .d_list.border_frame .d_term {
    width: 100%;
  }
  .flow_wrap_reuse .d_list.border_frame .d_des {
    width: 100%;
  }
  .flow_wrap_reuse .d_list.border_frame .d_des address {
    padding-left: 4%;
  }
  .flow_wrap_reuse .delivery_flow_list {
    flex-wrap: wrap;
    margin-top: 30px;
  }
  .flow_wrap_reuse .delivery_flow_item {
    margin-bottom: 4%;
    padding: 4%;
    max-width: 48%;
  }
  .flow_wrap_reuse .mail_flow_note, .flow_wrap_reuse .mail_flow_txt {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 540px) {
  .flow_wrap_reuse .mail_flow_sttl {
    font-size: 1.8rem;
    margin: 10px 0 15px;
  }
  .flow_wrap_reuse .mail_flow_ssttl {
    font-size: 1.6rem;
  }
  .flow_wrap_reuse .mail_flow_note {
    font-size: 1rem;
  }
  .flow_wrap_reuse .mail_flow_txt {
    font-size: 1.2rem;
  }
  .flow_wrap_reuse .red_btn_link {
    height: 60px;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link::after {
    display: none;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link > span {
    letter-spacing: normal;
    line-height: 1.5;
    color: #fff;
    display: block;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link .tel {
    font-size: 2.5rem;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link .tel::before {
    margin-right: 10px;
    width: 20px;
    height: 20px;
  }
  .flow_wrap_reuse .tel_btn .red_btn_link .time {
    font-size: 1rem;
  }
  .flow_wrap_reuse .d_list.border_frame .d_term {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
  .flow_wrap_reuse .d_list.border_frame .d_des address {
    font-size: 1.3rem;
    line-height: 1.6;
    padding-left: 0;
  }
  .flow_wrap_reuse .d_list.border_frame .d_des address::before {
    display: none;
  }
  .flow_wrap_reuse .delivery_flow_list {
    display: block;
    margin-top: 30px;
  }
  .flow_wrap_reuse .delivery_flow_item {
    padding: 4%;
    max-width: 100%;
  }
}
/* necessary_wrap_reuse
---------------------------------------- */
.necessary_wrap_reuse {
  padding: 100px 50px;
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .necessary_wrap_reuse {
    padding: 7.8125vw 1.563vw;
  }
}
@media screen and (max-width: 768px) {
  .necessary_wrap_reuse {
    padding: 10% 0;
  }
}
/* point_wrap_reuse
---------------------------------------- */
.point_wrap_reuse::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 320px;
  height: 210px;
  background: url(../img/common/ico_dotted.svg) left top;
}
.point_wrap_reuse .inner {
  padding: 130px 0 80px;
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .point_wrap_reuse::after {
    width: 25vw;
    height: 16.406vw;
  }
  .point_wrap_reuse .inner {
    padding: 10.156vw 0 6.25vw;
  }
}
@media screen and (max-width: 768px) {
  .point_wrap_reuse::after {
    display: none;
  }
  .point_wrap_reuse .inner {
    padding: 10% 0;
  }
}