@charset "utf-8";
/* CSS Document */
/*new*/
.new {
  color: #e38989;
  margin-left: 0.5em;
}

/*共通ーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
/*ボタン*/
.btn {
  width: 16.8em;
}
.btn a {
  display: inline-block;
  background-image: none;
  text-decoration: none;
  cursor: pointer;
  -webkit-appearance: none;
  position: relative;
  border-radius: 100vh;
  line-height: 1;
  padding: 1em;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}
.btn a:hover,
.btn a:focus {
  outline: none;
}
.btn a::-moz-foucus-inner {
  padding: 0;
  border: none;
}
.btn.btn_arrow a::after {
  position: absolute;
  content: "\02192";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 50%;
  right: 5%;
  left: auto;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*黒*/
.btn_black a {
  color: #000;
  border: solid 2px #000;
}
.btn_black a:hover {
  background: #000;
  color: #fff;
}

/*コーラルピンク*/
.btn_coral_p a {
  color: #e5848d;
  border: solid 2px #e5848d;
}
.btn_coral_p a:hover {
  background: #e5848d;
  color: #fff;
}

/*コーラルピンク_反転*/
.btn_coral_p_solid a {
  background: #e5848d;
  color: #fff;
  border: solid 2px #e5848d;
}
.btn_coral_p_solid a:hover {
  color: #e5848d;
  border: solid 2px #e5848d;
  background: initial;
}
/*ピンク*/
.btn_pink a {
  color: #d573a4;
  border: solid 2px #d573a4;
}
.btn_pink a:hover {
  background: #d573a4;
  color: #fff;
}

/*ベージュ*/
.btn_beige a {
  color: #b2966e;
  border: solid 2px #b2966e;
}
.btn_beige a:hover {
  background: #b2966e;
  color: #fff;
}

/*青*/
.btn_blue a {
  color: #82adc2;
  border: solid 2px #82adc2;
}
.btn_blue a:hover {
  background: #82adc2;
  color: #fff;
}

/*ベージュ_反転*/
.btn_beige_solid a {
  background: #b2966e;
  color: #fff;
  border: solid 2px #b2966e;
}
.btn_beige_solid a:hover {
  color: #b2966e;
  border: solid 2px #b2966e;
  background: #fff;
}

/*白背景ベージュ*/
.beige_bk_white a {
  color: #b2966e;
  border: solid 2px #b2966e;
  background: #fff;
}
.beige_bk_white a:hover {
  background: #b2966e;
  color: #fff;
}

/*水色*/
.btn_light_blue a {
  color: #67c4ba;
  border: solid 2px #67c4ba;
}
.btn_light_blue a:hover {
  background: #67c4ba;
  color: #fff;
}

/*白背景水色*/
.light_blue_bk_white a {
  color: #67c4ba;
  border: solid 2px #67c4ba;
  background: #fff;
}
.light_blue_bk_white a:hover {
  background: #67c4ba;
  color: #fff;
}

/*水色_反転*/
.btn_light_blue_solid a {
  background: #67c4ba;
  color: #fff;
  border: solid 2px #67c4ba;
}
.btn_light_blue_solid a:hover {
  color: #67c4ba;
  border: solid 2px #67c4ba;
  background: initial;
}

.tel_btn {
  width: 16.8em;
}
.tel_btn a {
  font-weight: 600;
  font-size: 112.5%;
  letter-spacing: 1px;
  display: inline-block;
  background-image: none;
  text-decoration: none;
  cursor: pointer;
  -webkit-appearance: none;
  position: relative;
  border-radius: 100vh;
  line-height: 1;
  padding: 0.9em;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}
.tel_btn a:hover,
.tel_btn a:focus {
  outline: none;
}
.tel_btn a::-moz-foucus-inner {
  padding: 0;
  border: none;
}
.tel_btn.tel_ico a::before {
  position: absolute;
  content: "\f2a0";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 45%;
  left: 8%;
  right: auto;
  bottom: auto;
  -webkit-transform: translateY(-45%);
  -ms-transform: translateY(-45%);
  transform: translateY(-45%);
  font-size: 1.5em;
}
@media screen and (max-width: 767px) {
  .btn {
    width: 60%;
  }
  .tel_btn {
    width: 60%;
  }
  .btn a {
    display: block;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
  .telbtn a {
    padding: 0.8em;
    display: block;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
}

@media screen and (max-width: 480px) {
  .btn {
    width: 90%;
  }
  .tel_btn {
    width: 90%;
  }
}
@media screen and (max-width: 320px) {
  .btn {
    width: 90%;
  }
  .tel_btn {
    width: 90%;
  }
}

/*TOPここから*/
/******************************************************************************

 mainView

******************************************************************************/
#mainView {
  margin-top: 12em;
  position: relative;
}
.mainView {
  max-width: 1420px;
  width: 90%;
  margin: 0 auto;
  position: relative;
}
.mv_txt {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 2.6em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 162.5%;
  line-height: 2;
  letter-spacing: 2px;
  font-weight: normal;
}

@media screen and (max-width: 1070px) and (min-width: 768px) {
  #mainView {
    margin-top: 8em;
    position: relative;
  }
  .mv_txt {
    left: 1em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 850px) and (min-width: 768px) {
  .logo_box {
    width: 100%;
    margin-bottom: 0;
  }
  .logo {
    width: 20%;
    padding: 0;
    margin-left: auto;
  }
  #mainView {
    margin-top: 9em;
    position: relative;
  }
  .sns {
    top: 9em;
  }
  .nav_box {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #mainView {
    width: 100%;
    margin-top: 0;
  }
  .mainView {
    width: 100%;
    position: relative;
  }
  .mv_txt {
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    line-height: 2;
    text-align: center;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .mv_txt {
    font-size: 128.571%;
  }
}
/*TOP見出し*/
.mi01 {
  font-size: 250%;
  line-height: 1.4em;
  width: 80%;
  max-width: 263px;
  margin: 0 auto 2em;
}
@media screen and (max-width: 1070px) {
  .mi01 {
    /*
  margin: 0 auto 0.8em;
*/
  }
}

/******************************************************************************

 read

******************************************************************************/
#read {
  position: relative;
  width: 90%;
  max-width: 1420px;
  margin: 0 auto 15em;
  text-align: center;
  background-color: #b2966e;
  padding-bottom: 3em;
}
#read:before {
  content: "";
  display: block;
  background: #000;
  height: 1.28%;
  max-height: 5px;
  width: 20%;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
#read .read_txt {
  padding: 5em 0 3.75em 0;
  line-height: 2.3;
}
#read .btn {
  margin: 0 auto;
}
@media screen and (max-width: 1070px) {
  #read {
    margin-bottom: 4.3em;
  }
}
@media screen and (max-width: 767px) {
  #read {
    position: relative;
    width: 100%;
  }
}

/******************************************************************************
 top-service
******************************************************************************/
.service_bg {
  padding-bottom: 6.4em;
}
#service .item_box {
  position: relative;
}
#service .item_img {
  width: 50%;
}
#service .item_txt_box {
  padding-left: 2em;
  padding-right: 2em;
  box-sizing: border-box;
  width: 50%;
  font-weight: 600;
}
.item_box .item_txt_box {
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.service_item03 .item_img {
  margin-left: 5%;
}
.service_item02 .item_img,
.service_item04 .item_img {
  margin-left: auto;
  margin-right: 8%;
}

.service_item02 .item_txt_box,
.service_item04 .item_txt_box {
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.item_mi {
  padding-bottom: 0.8em;
  font-size: 175%;
  line-height: 1.2;
  font-weight: 600;
}
.item_mi .small01 {
  font-size: 71.42%;
}
.item_mi .small02 {
  font-size: 57%;
  font-weight: 600;
}
.item_txt {
  width: 90%;
  padding-bottom: 2em;
  line-height: 1.6;
}
#service .btn_box {
  justify-content: flex-start;
  display: flex;
}
#service .btn_box .btn a {
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  /*  margin: 0 auto;*/
}
#service .btn_box .btn {
  margin-bottom: 0.5em;
  margin-right: 0.5em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  #service .item_box {
    width: 96%;
    margin: 0 auto 3em;
  }
  #service .btn_box .btn:first-child {
    margin-bottom: 2%;
  }
  .service_item03 .item_img {
    margin-left: 0;
  }
  .service_item02 .item_img,
  .service_item04 .item_img {
    margin-right: 0;
  }
  #service .btn_box {
    display: flex;
    flex-wrap: wrap;
  }
  #service .item_txt_box {
    width: 60%;
    padding: 0 0 0 1em;
  }
  #service .item_img {
    width: 40%;
  }
  #service .item_txt {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #service .item_box {
    margin: 0 auto;
    position: relative;
  }
  #service .item_img {
    width: 65%;
    margin: 0 auto 1.4em;
  }
  #service .item_txt_box {
    box-sizing: border-box;
    width: 100%;
    padding-left: 0em;
    padding-right: 0em;
  }
  .item_box .item_txt_box {
    position: initial;
    transform: initial;
    -webkit-transform: initial;
    -ms-transform: initial;
  }
  .service_item02 .item_txt_box,
  .service_item04 .item_txt_box {
    position: initial;
  }
  .item_box {
    padding-bottom: 4.4em;
  }
  .item_mi {
    padding-bottom: 1.2em;
    font-size: 200%;
    text-align: center;
    letter-spacing: -2px;
  }
  .item_txt {
    width: 100%;
    padding-bottom: 1em;
  }

  #service .btn_box .btn {
    margin: 0 auto;
  }
  #service .btn_box .btn:first-child {
    margin-bottom: 0.8em;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  #service .item_img {
    width: 80%;
  }
}
/******************************************************************************
 top-faq
******************************************************************************/
.faq_bg {
  background-color: #ece5d5;
  padding-top: 3.5em;
  padding-bottom: 3.5em;
}
.faq .btn {
  margin: 0 auto;
}
.faq .btn a {
  background-color: #fff;
}
.faq .btn a:hover {
  background-color: #b2966e;
  color: #fff;
}
.faq .faq_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 85.1%;
  max-width: 1080px;
  margin: 0 auto;
}
.faq .faq_item {
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  width: 32%;
  margin-bottom: 2em;
  box-sizing: border-box;
  border: solid 2px #af986c;
  border-radius: 3px;
}
.faq .faq_item a {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.faq .faq_item a:hover {
  opacity: 0.6;
}
.faq .faq_item:not(:nth-of-type(3n)) {
  margin-right: 2%;
}
.faq_item_txt {
  width: 100%;
  padding: 1.8em;
  box-sizing: border-box;
  line-height: 1.5;
}
.faq .case {
  padding: 1.1em 0;
  text-align: center;
  margin-top: auto;
  border-top: solid 1px #af986c;
  width: 100%;
}
.faq .case img {
  max-width: 106px;
}

@media screen and (max-width: 1070px) {
  .faq .faq_item {
    width: 48%;
  }
  .faq .faq_item:not(:nth-of-type(3n)) {
    margin-right: auto;
  }
  .faq .faq_item:not(:nth-of-type(2n)) {
    margin-right: auto;
  }
}
@media screen and (max-width: 769px) {
  .faq_box {
    border-top: solid 2px #fff;
    padding-bottom: 2.8em;
    width: 100% !important;
    padding: 0;
  }
  .faq .faq_item {
    width: 100%;
    margin: 0 auto;
    background-color: #ece5d5;
    border: none;
    border-bottom: solid 2px #fff;
    box-sizing: border-box;
    padding: 0;
  }
  .faq_item_txt {
    padding: 1.8em 1em;
    width: 80%;
    order: 2;
  }
  .faq .case {
    padding: 1em;
    width: 20%;
    margin-bottom: auto;
    border-top: none;
    box-sizing: border-box;
    order: 1;
  }
  .faq .case img {
    display: flex;
    align-items: center;
  }
}
/******************************************************************************
top_recruit
******************************************************************************/
.recruit_bg {
  padding-top: 3.5em;
  padding-bottom: 3.5em;
  text-align: center;
}
.recruit_read {
  font-size: 175%;
  line-height: 1.6;
  padding-bottom: 2.1em;
}
.recruit_txt {
  line-height: 2;
  font-weight: normal;
  padding-bottom: 4em;
}
#recruit .btn:first-child {
  margin-right: 0.5em;
}

@media screen and (max-width: 1070px) and (min-width: 768px) {
  .recruit_txt {
    width: 90%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .recruit_read {
    font-size: 100%;
  }
  .recruit_txt {
    text-align: left;
  }
  #recruit .btn {
    margin: 0 auto;
  }
  #recruit .btn:first-child {
    margin-bottom: 0.5em;
    margin-right: auto;
  }
  .faq .btn {
    margin: 2em auto 0;
  }
}
/******************************************************************************
 top-please
******************************************************************************/
.please {
  text-align: center;
  background-color: #000;
  color: #fff;
  line-height: 2;
  padding: 3.4em 0;
}
.please_mi {
  padding-bottom: 0.5em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .please .please_txt {
    width: 90%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .please .please_txt {
    text-align: left;
    line-height: 2;
  }
}

/******************************************************************************

休業のお知らせ

******************************************************************************/
.closed {
  background-color: #e69999;
  position: relative;
  width: 90%;
  max-width: 1420px;
  margin: 0 auto;
  text-align: center;
  padding: 5em 0;
}
.closed_ttl {
  font-size: 225%;
  font-weight: 600;
  text-align: center;
  line-height: 1.6;
  padding-bottom: 1.38em;
}
.closed_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.closed_item {
  width: 25%;
}
.closed_item:not(:last-child) {
  margin-right: 3.5%;
}
.closed_item dl dt {
  font-size: 137.5%;
  color: #fff;
  font-weight: 600;
  padding: 0.4em;
  border: solid 1px #fff;
  border-radius: 2em;
  margin: 0 2% 0.72em;
}
.closed_item dl dd {
  font-size: 106.25%;
  font-weight: 600;
}
@media screen and (max-width: 1070px) {
  .closed_item {
    width: 80%;
  }
  .closed_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 2.3em;
  }
}
@media screen and (max-width: 767px) {
  .closed {
    position: relative;
    width: 100%;
    padding: 3.5em 0;
  }
  .closed .inner {
    width: 96%;
  }
  .closed_ttl {
    font-size: 200%;
    line-height: 1.2;
    padding-bottom: 0.82em;
  }
  .closed_item {
    width: 100%;
  }
  .closed_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 2.3em;
  }
  .closed_item dl dt {
    font-size: 114%;
    color: #fff;
    font-weight: 400;
    padding: 0.1em 0;
    margin-bottom: 0.62em;
  }
  .closed_item dl dd {
    font-size: 121.429%;
  }
}

@media screen and (max-width: 320px) {
  .closed_item dl dd {
    font-size: 114%;
  }
}

/*ここから下層＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/******************************************************************************

messegeページ

******************************************************************************/
.message_bg {
  background: url("../images/message/bg.svg");
  background-repeat: no-repeat;
  background-size: 80% 40%;
}
.messege_inner {
  max-width: 980px;
  margin: 0 auto;
}
.messege_ttl {
  font-size: 250%;
  font-weight: 600;
  text-align: center;
  line-height: 1.5;
  padding-bottom: 5.8em;
  padding-top: 7em;
  position: relative;
}
.messege_ttl::after {
  content: "";
  display: block;
  background: #000;
  height: 3.5em;
  width: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1.3em;
  margin: auto;
}
.messege_box {
  text-align: center;
}
.messege_txt {
  font-size: 100%;
  line-height: 1.8;
  margin-bottom: 6em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .messege_inner {
    width: 90%;
    margin: 0 auto;
  }
  .messege_ttl {
    padding-top: 5.5em;
  }
}
@media screen and (max-width: 767px) {
  .message_bg {
    background-size: 120% 20%;
  }
  .messege_inner {
    width: 85%;
    margin: 0 auto;
  }
  .messege_box {
    text-align: left;
  }
  .messege_ttl {
    padding-top: 3.5em;
    padding-bottom: 5.5em;
    font-size: 200%;
  }
  .messege_ttl::after {
    bottom: 1em;
  }
  .messege_txt {
    margin-bottom: 3em;
  }
}

/******************************************************************************

companyページ

******************************************************************************/
.company_mv {
  background-image: url("../images/company/mv_bg02.jpg"),
    url("../images/company/mv_bg01.jpg");
  background-repeat: no-repeat, no-repeat;
  background-position: bottom right, top left;
  background-color: #ede4d6;
  padding-top: 16.25em;
}
.company_ttl_img {
  max-width: 588px;
  margin: 0 auto 4.1em;
}
.company_ttl_img img {
  width: 100%;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .company_ttl_img {
    margin: 0 auto 2.1em;
    width: 60%;
  }
  .company_mv {
    padding-top: 13em;
  }
}
@media screen and (max-width: 767px) {
  .company_mv {
    background-size: 30%;
    padding-top: 8.125em;
  }
  .company_ttl_img {
    margin: 3em auto 2em;
    width: 65%;
  }
}
/*ttl*/
.company_ttl {
  font-size: 250%;
  font-weight: 600;
  line-height: 1;
  padding-bottom: 5em;
  text-align: center;
}
.company_box_ttl {
  font-size: 250%;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  padding: 2.5em 0 0.7em 0;
}
@media screen and (max-width: 767px) {
  .company_mv {
    padding-top: 4em;
  }
  .company_ttl {
    font-size: 142%;
    padding-bottom: 3em;
  }
  .company_box_ttl {
    font-size: 200%;
    padding: 1.5em 0 1em 0;
    padding: 1.5em 0 1em 0;
    padding: 1.5em 0 1em 0;
  }
}
/*philosophy*/
.company_philosophy {
  background: #fff;
}
.company_philosophy_txt {
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 5.6em;
}
.company_pholosophy_inner {
  max-width: 1080px;
  margin: 0 auto;
}
.company_philosophy_wrap {
  display: flex;
  flex-wrap: wrap;
  font-size: 118.75%;
  line-height: 1.8;
  margin-bottom: 2.5em;
}
.company_philosophy_wrap dt {
  width: 20%;
  padding: 1em 1em 1em 0;
  box-sizing: border-box;
  border-bottom: solid 1px #c4b090;
  text-align: right;
}
.company_philosophy_wrap dd {
  width: 80%;
  padding: 1em 0 1em 1em;
  box-sizing: border-box;
  border-bottom: solid 1px #c4b090;
}
.company_philosophy_wrap dt:first-child {
  border-top: solid 1px #c4b090;
}
.company_philosophy_wrap dt:first-child + dd {
  border-top: solid 1px #c4b090;
}
.company_philosophy_img {
  padding-bottom: 4.1em;
  max-width: 530px;
  margin: 0 auto;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .company_philosophy_txt {
    width: 80%;
    margin: 0 auto 3em;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .company_philosophy_txt {
    font-size: 114%;
    text-align: left;
    width: 80%;
    margin: 0 auto 3em;
    line-height: 1.6;
  }
  .company_philosophy_wrap {
    font-size: 100%;
    margin-bottom: 2.5em;
  }
  .company_philosophy_wrap dt {
    width: 30%;
    padding: 1em 0.5em;
  }
  .company_philosophy_wrap dd {
    padding: 1em 0.5em;
    width: 70%;
  }
  .company_philosophy_img {
    padding-bottom: 2.5em;
    width: 90%;
  }
}
/*business*/
.company_business {
  background-color: #ede4d6;
  padding-bottom: 5.4em;
}
.company_business_inner {
  max-width: 1300px;
  margin: 0 auto;
}
.company_business_txt {
  text-align: center;
  font-size: 100%;
  margin-bottom: 5.8em;
}
.company_business_img {
  margin: 0 auto 6.25em;
  max-width: 380px;
}
.company_business_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 96%;
  margin: 0 auto;
}
.company_business_item {
  width: 30%;
  text-align: center;
  font-size: 112.5%;
  line-height: 2;
}
.company_business_item_ttl {
  margin-bottom: 0.6em;
}
.company_business_item_txt {
  text-align: left;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .company_business_txt {
    width: 80%;
    margin: 0 auto 5.8em;
    text-align: left;
  }
  .company_business_box {
    width: 96%;
    margin: 0 auto;
  }
  .company_business_item {
    font-size: 107%;
  }
}
@media screen and (max-width: 767px) {
  .company_business {
    padding-bottom: 0;
  }
  .company_business_txt {
    font-size: 114%;
    text-align: left;
    width: 80%;
    margin: 0 auto 2em;
    line-height: 1.6;
  }
  .company_business_img {
    width: 80%;
    margin: 0 auto 5em;
  }
  .company_business_box {
    margin-bottom: 0;
  }
  .company_business_item {
    width: 90%;
    margin: 0 auto 3.75em;
    font-size: 100%;
  }
  .company_business_item_ttl {
    margin-bottom: 1em;
  }
}
/*group*/
.company_group {
  background: #fff;
}
.company_group_box {
  margin-bottom: 3em;
}
.company_group_item {
  text-align: center;
  font-size: 112.5%;
  line-height: 2;
  padding: 0.25em;
}
.company_group_item a:hover {
  opacity: 0.6;
}
.company_group_btn {
  margin: 0 auto 3em;
}
@media screen and (max-width: 767px) {
  .company_group_item {
    font-size: 114%;
  }
}
@media screen and (max-width: 340px) {
  .company_group_item {
    font-size: 107%;
  }
}
/******************************************************************************

policy and rulesページ

******************************************************************************/
.policy-rules_mv {
  max-width: 1200px;
  margin: 13em auto 6em;
}
.policy-rules_ttl_img {
  max-width: 700px;
  margin: 0 auto;
}
.policy-rules_inner {
  max-width: 1200px;
  margin: 0 auto 6em;
  border-bottom: solid 1px #b1966c;
}
.policy-rules_box dt {
  font-size: 175%;
  padding: 1em;
  line-height: 1;
  color: #b1966c;
  border-top: solid 1px #b1966c;
  text-align: center;
}
.policy-rules_box dd {
  display: none;
  max-width: 960px;
  width: 90%;
  margin: 0 auto;
}
.policy-rules_box dt {
  position: relative;
}
.policy-rules_box dt:before {
  content: "";
  width: 20px;
  height: 30px;
  background-image: url("../images/compliance/arrow.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
  position: absolute;
  left: 2em;
}
.policy-rules_box_list {
  font-size: 125%;
  line-height: 1.8;
  font-weight: 400;
}
.policy-rules_box_list_read {
  margin-bottom: 1em;
}
.policy-rules_box_list li {
  margin-bottom: 2em;
}
.policy-rules_box_list li ol {
  /*
  list-style-type: decimal;
*/
}
.policy-rules_box_list_ttl {
  font-size: 122%;
  font-weight: 600;
  margin-bottom: 0.2em;
}
.openButton.toggleactive:before {
  transform: rotate(-90deg);
}
.policy-rules_box_boder {
  border: 1px solid #c8a063;
  padding: 2em 2em 0 2em;
  margin-bottom: 2em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .policy-rules_box dt::before {
    left: 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .policy-rules_mv {
    width: 80%;
    margin: 6em auto 3em;
  }
  .policy-rules_box dt {
    font-size: 142%;
    padding: 1.2em;
  }
  .policy-rules_box dd {
    width: 90%;
    margin: 0 auto;
    padding: 0;
    line-height: 1.2;
  }
  .policy-rules_box dt:before {
    content: "";
    width: 0.7em;
    height: 1.4em;
    position: absolute;
    left: 5%;
  }

  .policy-rules_box_list {
    font-size: 100%;
    line-height: 1.8;
    font-weight: 400;
  }
  .policy-rules_box_list_ttl {
    font-size: 100%;
    font-weight: 600;
  }
}
@media screen and (max-width: 480px) {
  .policy-rules_box dt {
    font-size: 128%;
  }
}

/******************************************************************************

faqページ

******************************************************************************/
.bg_faq {
  background-color: #efe9e0;
}
.faq_mv {
  max-width: 1050px;
  margin: 13em auto 6em;
}
.faq_img {
  max-width: 480px;
  margin: 0 auto;
}
.faq_inner {
  max-width: 1050px;
  margin: 0 auto;
}
.faq_application {
  padding-bottom: 5.6em;
}
.faq_inner .faq_item:last-child {
  margin-bottom: 0;
}
.faq_ttl {
  text-align: center;
  font-size: 200%;
  font-weight: 600;
  color: #b1966c;
  line-height: 1;
  margin-bottom: 1em;
}
.faq_item {
  border: solid 2px #b1966c;
  border-radius: 3px;
  background-color: #fff;
  margin-bottom: 1.5em;
}
.faq_item_case {
  border-bottom: solid 1px #b1966c;
  text-align: center;
  padding: 0.875em;
}
.faq_item_case img {
  max-width: 110px;
}
.faq_question_box {
  padding: 1.5em 1em 0.5em 1em;
}
.faq_question_txt {
  font-size: 112.85%;
  line-height: 1.8;
  text-align: center;
  margin: 0 auto 0.5em;
}
.faq_question_arrow {
  max-width: 25px;
  margin: 1em auto 0;
}

.faq_answer_box {
  text-align: center;
  padding-bottom: 2.2em;
  line-height: 1.4;
  display: none;
  margin: 0 1em;
}
.faq_item:target .faq_answer_box {
  /* #によるtargetが効いたときに表示*/
  height: auto;
  padding: 1rem;
  display: block;
}
.faq_answer_box .faq_tel {
  margin: 0 auto;
}

.faq_answer_img {
  max-width: 120px;
  margin: 0 auto 1.5em;
}
.faq_answer_txt {
  font-size: 100%;
  width: 80%;
  text-align: left;
  margin: 0 auto 1em;
  line-height: 1.8;
}
.faq_answer_txt span {
  color: #b1966c;
}
.faq_document {
  margin: 2em auto 0;
}
.faq_merchant {
  margin: 3em auto 0;
}
.faq_repayment {
  background-color: #fff;
}
.faq_repayment {
  padding: 5.6em 0;
}

.faq_consultation_ttl {
  font-size: 187.2%;
  font-weight: 600;
  margin-bottom: 1.42em;
  line-height: 1.2;
}
.faq_consultation_txt {
  font-size: 112.5%;
  line-height: 1.8;
  margin-bottom: 3em;
}
.faq_consultation a:hover {
  background-color: #fff;
  border: solid 2px #66c4b9;
  color: #66c4b9;
}
.faq_consultation {
  padding: 3em 0;
  text-align: center;
}
.faq_consultation_btn {
  margin: 0 auto;
}
.faq_btn_wrap {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
}
.faq_btn_wrap li {
  margin-right: 0.5em;
}
.faq_btn_wrap li:first-child {
  margin-left: 0.5em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .faq_mv {
    max-width: 1050px;
    margin: 13em auto 6em;
  }
  .faq_item {
    width: 90%;
    margin: 0 auto 1em;
  }
}
@media screen and (max-width: 767px) {
  .faq_mv {
    width: 80%;
    margin: 6em auto 3em;
  }
  .faq_inner {
    width: 90%;
    margin: 0 auto;
  }
  .faq_ttl {
    font-size: 175%;
  }
  .faq_item {
    margin: 0 auto 1em;
  }
  .faq_question_txt {
    font-size: 114%;
    text-align: left;
    font-weight: 600;
  }
  .faq_answer_txt_box {
    margin: 0 1em;
  }
  .faq_answer_txt {
    font-size: 100%;
    width: 100%;
    line-height: 2;
    box-sizing: border-box;
  }
  .faq_document {
    width: 60%;
  }
  .faq_repayment {
    padding: 4em 0;
  }
  .faq_application {
    padding-bottom: 4em;
  }
  .faq_merchant {
    width: 80%;
  }
  .faq_consultation_ttl {
    font-weight: 600;
    margin-bottom: 0.8em;
    line-height: 1.4;
  }
  .faq_consultation_txt {
    text-align: left;
  }
  .faq_btn_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .faq_btn_wrap li {
    margin: 0 auto;
    width: 60%;
  }
  .faq_btn_wrap li:not(:last-child) {
    margin-bottom: 0.5em;
  }
  .faq_btn_wrap li:first-child {
    margin-left: auto;
  }
}
@media screen and (max-width: 480px) {
  .faq_btn_wrap li {
    width: 100%;
  }
  .faq_document {
    width: 90%;
  }
}
/******************************************************************************

listページ

******************************************************************************/
.list_mv {
  max-width: 1200px;
  margin: 13em auto 6em;
}
.list_img {
  max-width: 700px;
  margin: 0 auto;
}

.list_inner {
  max-width: 1200px;
  margin: 0 auto;
  width: 96%;
}
.list_store_wrap {
  border-bottom: solid 1px #da8485;
  max-width: 1200px;
  margin: 0 auto;
}
.list_box dt {
  font-size: 175%;
  padding: 1em;
  line-height: 1;
  text-align: center;
}
.list_box dt:not(.list_box_red) {
  border-top: solid 1px #b1966c;
  color: #b1966c;
}
.list_box dd {
  display: none;
  max-width: 960px;
  margin: 0 auto;
  padding-bottom: 2em;
  font-size: 125%;
  line-height: 1.8;
  width: 90%;
}
.list_box_red {
  border-top: solid 1px #da8485;
  color: #da8485;
}
.list_box dt:before {
  content: "";
  width: 20px;
  height: 30px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
  position: absolute;
  left: 2em;
  top: 1.1em;
}
.list_box dt:not(.list_box_red):before {
  background-image: url("../images/list/arrow.png");
}
.list_box dt {
  position: relative;
}
.list_box_red:before {
  background-image: url("../images/list/arrow02.png");
}
.list_reservation {
  text-align: center;
}
.list_reservation .list_inner {
  padding-bottom: 6em;
  padding-top: 8em;
  border-bottom: solid 1px #b2966e;
}
.list_reservation_txt {
  font-size: 262%;
  line-height: 1;
  padding-bottom: 0.8em;
}
.list_reservation_note {
  font-size: 150%;
  line-height: 1.2;
}
.list_inner .btn {
  margin: 2em auto 2em;
}
.list_inner .tel_btn {
  margin: 2em auto 0;
}
.list_tel a {
  color: #b2966e;
  border: solid 2px #b2966e;
  background-color: #fff;
  font-weight: 600;
  width: 100%;
  box-sizing: border-box;
  font-size: 150%;
  padding: 1em 1em 1em 2em;
}
.list_tel a:hover {
  color: #fff;
  border: solid 2px #b2966e;
  background-color: #b2966e;
}
.list_contact {
  text-align: center;
}

.list_contact_ttl {
  font-size: 162%;
  font-weight: 600;
  margin-bottom: 1.5em;
}
.list_contact_note {
  font-size: 125%;
  margin-bottom: 6em;
}
.store_list {
  margin-bottom: 2em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .list_box dt::before {
    left: 2.5em;
  }
  .list_reservation_txt {
    width: 90%;
    margin: 0 auto;
    line-height: 1.4;
    letter-spacing: -5px;
  }
  .list_reservation_note {
    width: 90%;
    margin: 0 auto;
  }
  .list_tel {
    width: 60%;
  }
  .list_contact_note {
    width: 90%;
    margin: 0 auto 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .list_mv {
    width: 80%;
    margin: 6em auto 3em;
  }
  .list_inner {
    width: 90%;
    margin: 0 auto;
  }
  .list_box dt {
    font-size: 142%;
    padding: 1.2em;
    line-height: 1.5;
  }
  .list_box_red {
    font-size: 128.571% !important;
  }

  .list_box dd {
    width: 90%;
    margin: 0 auto 1em;
    padding: 0;
    font-size: 114.286%;
  }
  .list_box dt:before {
    content: "";
    width: 0.7em;
    height: 1.4em;
    position: absolute;
    top: 1.5em;
    left: 1.2em;
  }
  .list_reservation_txt {
    font-size: 185%;
    line-height: 1.4;
  }
  .list_reservation_note {
    font-size: 114%;
    text-align: left;
  }
  .list_tel {
    width: 80%;
  }
  .list_tel a {
    font-size: 142.857%;
  }
  .list_contact_ttl {
    font-size: 128.571%;
    margin-bottom: 1em;
  }
  .list_contact_note {
    font-size: 114%;
    text-align: left;
  }
}

/******************************************************************************

smart_life ページ

******************************************************************************/
.smart_life_mv {
  max-width: 80%;
  margin: 0 auto 2em;
}
.smart_life_img {
  width: 60%;
  max-width: 1200px;
  margin-right: auto;
}
.smart_life_inner {
  text-align: center;
}
.smart_life_ttl {
  font-size: 250%;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 0.8em;
}

.smart_life_ttl span {
  font-size: 50%;
}
.smart_life_txt {
  line-height: 1.8;
  margin-bottom: 5em;
}
.smart_life_contact {
  text-align: center;
  background-color: #ffd147;
  padding-top: 5.6em;
  padding-bottom: 5.6em;
}
.smart_life_contact_txt {
  font-size: 175%;
  margin-bottom: 1em;
  line-height: 1.2;
}
.smart_life_contact_tel {
  margin: 3em auto 0;
}

.smart_life_note {
  text-align: center;
}
.smart_life_note {
  padding-top: 5.6em;
  padding-bottom: 5.6em;
}
.smart_life_note_ttl {
  font-size: 125%;
  font-weight: 600;
  margin-bottom: 1.6em;
}
.smart_life_note_txt {
  font-weight: 600;
  font-size: 100%;
}
/*ポイント共通*/
.point_item_icon {
  max-width: 79px;
  margin: 0 auto 2.5em;
}
.point_item_ttl {
  font-size: 175%;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 1em;
}
.point_item_txt {
  line-height: 1.8;
  margin-bottom: 5.625em;
}
.point_item:last-child .point_item_txt {
  margin-bottom: 7.9em;
}
.smart_life_btnbox .btn{
margin: 0 auto;
}
.smart_life_btnbox .tel_btn{
margin: 0 auto 0.5em;
}

.smart_life_btnbox .btn:not(:last-child){
margin-bottom: 0.5em;
}

@media screen and (max-width: 1070px) and (min-width: 768px) {
  .smart_life_mv {
    max-width: 90%;
    margin: 0 auto 3em;
  }
  .smart_life_img {
    width: 90%;
  }

  .smart_life_inner {
    width: 90%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .smart_life_mv {
    max-width: 100%;
    margin: 0 auto 2.5em;
  }
  .smart_life_img {
    width: 100%;
  }
  .smart_life_inner {
    width: 90%;
    margin: 0 auto;
  }
  .smart_life_ttl {
    font-size: 200%;
  }
  .smart_life_txt {
    margin-bottom: 5em;
    text-align: left;
  }
  .smart_life_contact_txt {
    line-height: 1.4;
  }
  .smart_life_contact {
    padding: 4em 0;
  }
  .smart_life_note {
    padding: 4em 0;
  }
  .smart_life_note_ttl {
    margin-bottom: 1em;
  }
  .smart_life_note_txt {
    text-align: left;
    line-height: 1.6;
  }
  /*ポイント共通*/
  .point_item_icon {
    width: 17%;
    margin: 0 auto 1.5em;
  }
  .point_item_ttl {
    margin-bottom: 1em;
  }
  .point_item_txt {
    text-align: left;
  }
}
@media screen and (max-width: 365px) {
  /*ポイント共通*/
  .point_item_ttl {
    font-size: 171.429%;
  }
}
/******************************************************************************

honeymoonページ

******************************************************************************/

.honeymoon_mv {
  max-width: 100%;
  margin: 0 auto 6em;
}
.honeymoon_img {
  width: 70%;
  max-width: 1200px;
  margin-left: auto;
}
.honeymoon_inner {
  margin: 0 auto;
  padding: 0;
  max-width: 1300px;
  height: auto;
}
.honeymoon_title {
  margin-bottom: 5em;
}
.hm_tit_ttl {
  font-size: 250%;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 0.8em;
  text-align: center;
}
.hm_tit_txt {
  text-align: center;
  line-height: 1.8em;
}
.honeymoon_point {
  margin-bottom: 5.6em;
}
.hm_po_box:not(:last-child) {
  margin-bottom: 5.6em;
}
.hm_po_img {
  margin: 0 auto 2.5em;
  max-width: 80px;
}
.hm_po_ttl {
  margin-bottom: 1em;
  font-size: 175%;
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
}
.hm_po_txt {
  font-size: 100%;
  line-height: 1.8em;
  text-align: center;
}
.hm_mb01 {
  margin-bottom: 5.6em;
}
.hm_table_ttl {
  margin-bottom: 1.5em;
  text-align: center;
  color: #669999;
  font-size: 156%;
  font-weight: 600;
}
.hm_po_table {
  margin-bottom: 2em;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
}
.hm_po_table dl {
  /*
		width: 20%;
*/
  font-size: 112.5%;
  text-align: center;
}
.hm_po_table dl:not(:last-child) {
  width: 18%;
  border-right: 1px solid #707070;
}
.hm_po_table dt {
  padding: 1.5em 0.4em;
  background: #ede4d6;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
}
.hm_po_table dd {
  padding: 1.25em 0.4em;
  border-bottom: 1px solid #707070;
}
.hm_table_txt {
  text-align: center;
  font-size: 100%;
}
.attention_box {
  padding: 5.6em 0;
}
.attention_tit_ttl {
  font-size: 125%;
  font-weight: 600;
  margin-bottom: 1.6em;
  text-align: center;
}
.attention_txt {
  font-size: 112.5%;
  text-align: center;
  line-height: 1.4;
}
.honeymoon_conditions {
  padding: 5.6em 0;
  background: #ede4d6;
}
.hm_conditions_inner {
  margin: 0 auto;
  padding: 0;
  max-width: 1300px;
  height: auto;
}
.conditions_tit_ttl {
  margin-bottom: 1.5em;
  text-align: center;
  color: #b1966c;
  font-size: 160%;
  font-weight: 600;
}
.conditions_box {
  margin: 0 auto;
  width: 90%;
  max-width: 1400px;
}
.conditions_box dl {
  padding: 1.5em 0;
  display: flex;
  font-size: 118.75%;
  line-height: 1.6;
}
.conditions_box dl:first-of-type {
  border-top: 1px solid #b1966c;
}
.conditions_box dl:not(:last-child) {
  border-bottom: 1px solid #b1966c;
}
.conditions_box dt {
  padding-right: 1.6em;
  width: 20%;
  text-align: right;
}
.conditions_box dd {
  padding-left: 1.6em;
  width: 66%;
}
.conditions_box dd p {
  margin-bottom: 1em;
}
.conditions_box dd .con_stxt {
  margin-bottom: 0;
  font-size: 80%;
}
.honeymoon_contact {
  padding: 10em 0;
}
.hm_contact_txt {
  margin-bottom: 4em;
  font-size: 144%;
  text-align: center;
  line-height: 1.8;
}
.honeymoon_contact {
  padding: 5.6em 0;
}
.hm_contact_txt {
  margin-bottom: 4em;
  font-size: 125%;
  text-align: center;
  line-height: 1.8;
}
.hm_btn_area li {
  margin: 0 auto;
}
.hm_btn_area li:not(:last-child) {
  margin-bottom: 0.5em;
}
@media screen and (max-width: 1070px) {
  .honeymoon_img {
    width: 90%;
  }
  .honeymoon_inner {
    margin: 0 auto;
    width: 90%;
  }
  .hm_po_table dl:not(:last-child) {
    width: 26%;
  }
  .hm_po_table dl {
    width: 40%;
  }
  .conditions_box {
    width: 100%;
  }
  .conditions_box dt {
    padding-right: 1em;
    width: 24%;
  }
  .conditions_box dd {
    padding-left: 1em;
    width: 66%;
  }
}
@media screen and (max-width: 767px) {
  .honeymoon_mv {
    max-width: 100%;
    margin: 0 auto 3em;
  }
  .honeymoon_img {
    width: 100%;
  }
  .hm_tit_ttl {
    font-size: 187.5%;
  }
  .hm_tit_txt {
    font-size: 112%;
    text-align: left;
  }
  .hm_po_box:not(:last-child) {
    margin-bottom: 5em;
  }
  .hm_po_ttl {
    margin-bottom: 1em;
    line-height: 1.4;
  }
  .hm_po_img {
    margin: 0 auto 2em;
    max-width: 60px;
  }
  .hm_po_txt {
    text-align: left;
  }
  .hm_table_ttl {
    margin-bottom: 1.2em;
    font-size: 136%;
  }
  .hm_po_table dl {
    width: 34%;
    font-size: 108%;
  }
  .hm_po_table dl:not(:last-child) {
    width: 30%;
  }
  .hm_po_table dt {
    padding: 0.8em 0.4em 1em;
    height: 1.5em;
  }
  .hm_pad01 {
    padding: 0.5em 0 1.3em !important;
    line-height: 1.2;
  }
  .hm_table_txt {
    text-align: left;
    line-height: 1.8;
  }
  .honeymoon_point {
    margin-bottom: 4em;
  }
  .attention_tit_ttl {
    margin-bottom: 0.8em;
  }
  .attention_txt {
    font-size: 100%;
    text-align: left;
    line-height: 1.8;
  }
  .honeymoon_conditions {
    padding: 3em 0;
  }
  .hm_conditions_inner {
    width: 100%;
  }
  .conditions_tit_ttl {
    margin-bottom: 1em;
  }
  .conditions_box dl {
    padding: 1.2em 1em;
    font-size: 100%;
  }
  .conditions_box dd {
    padding-left: 0;
  }
  .conditions_box dd .con_stxt {
    font-size: 90%;
  }
  .con_stxt span {
    display: block;
  }
  .honeymoon_contact {
    padding: 2em 0;
  }
  .hm_contact_txt {
    margin-bottom: 2em;
    font-size: 100%;
    text-align: left;
  }
  .attention_box {
    padding: 4em 0;
  }
}
@media screen and (max-width: 320px) {
  .hm_po_table dl {
    font-size: 90%;
  }
}

/*---------- 返済シミュレーション共通▼ --------------*/
.repayment_box {
  padding: 5.6em 0;
}
.repayment_inner {
  margin: 0 auto;
  padding: 0;
  max-width: 1000px;
  height: auto;
}
.simu_ttl {
  margin-bottom: 1em;
  font-size: 175%;
  font-weight: 600;
  text-align: center;
}
.simu_txt {
  margin-bottom: 3em;
  font-size: 125%;
  text-align: center;
}
.check_txt_box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 60%;
  margin: 0 auto 3.4em;
}
.check_txt_01,
.check_txt_02 {
  width: 50%;
  display: flex;
  align-items: center;
}
.check_txt_box select {
  width: 80%;
  margin-right: 0.6em;
  padding: 0.6em 0.6em 0.6em 0.6em;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border: 2px solid #788d95;
  color: #788d95;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: linear-gradient(
      45deg,
      transparent 50%,
      rgba(120, 141, 149, 1) 50%
    ),
    linear-gradient(135deg, rgba(120, 141, 149, 1) 50%, transparent 50%);
  background-size: 9px 10px, 9px 10px;
  background-position: calc(100% - 19px) 50%, calc(100% - 10px) 50%;
  background-repeat: no-repeat;
}
.simu_box_btn {
  text-align: center;
  width: 16.8em;
  margin: 0 auto;
  position: relative;
}
.simu_box_btn input[type="submit"] {
  margin: 0 auto;
  padding: 1em;
  width: 16.8em;
  background: #fff;
  color: #000;
  border: solid 2px #000;
  font-weight: 600;
  font-size: 100%;
  border-radius: 100vw;
  -webkit-border-radius: 100vw;
  -moz-border-radius: 100vw;
  text-align: center;
  position: relative;
  line-height: 1;
}
.simu_box_btn::after {
  position: absolute;
  top: 0.8em;
  right: 5%;
  display: inline-block;
  content: "\02192";
}
.simu_box_btn:hover::after {
  color: #fff;
}
.simu_box_btn input[type="submit"]:hover {
  background: #000;
  color: #fff;
}
.resultbox_ttl {
  padding: 4em 0 2em;
  font-size: 160%;
  font-weight: 600;
  text-align: center;
  line-height: 1.5;
}
.calresult_txt {
  margin-bottom: 1em;
  font-size: 136%;
  text-align: center;
}
.calresult_txt:nth-last-child(2) {
  margin-bottom: 3em;
}
.calresult_txt span {
  font-size: 160%;
}
@media screen and (max-width: 1070px) {
  .repayment_inner {
    width: 90%;
  }
}

@media screen and (max-width: 769px) {
  .simu_ttl {
    margin-bottom: 0.5em;
    font-size: 137%;
  }
  .simu_txt {
    margin-bottom: 2em;
    font-size: 100%;
  }
  .simu_box_btn::after {
    right: 10%;
  }

  .check_txt_box {
    margin: 0 auto 4.4em;
    text-align: center;
    display: table;
    width: 100%;
  }
  .check_txt_01 {
    margin-bottom: 0.6em;
  }
  .check_txt_01,
  .check_txt_02 {
    width: 100%;
    text-align: left;
  }
  .check_txt_box select {
  }
  .calresult_txt {
    font-size: 112%;
  }
  .repayment_box {
    padding: 4em 0;
  }
}
.repayment_box_blue {
  background-color: #a7cee0;
}
.repayment_box_coral {
  background-color: #f5baa8;
}

.repayment_box_pink {
  background-color: #e697bf;
}
@media screen and (max-width: 767px) {
  .simu_box_btn input[type="submit"] {
    width: 60%;
  }
}

@media screen and (max-width: 480px) {
  .simu_box_btn input[type="submit"] {
    width: 90%;
  }
}
@media screen and (max-width: 320px) {
  .simu_box_btn input[type="submit"] {
    width: 90%;
  }
}

/******************************************************************************

life_planning

******************************************************************************/
.life_planning_mv {
  max-width: 90%;
  margin: 0 auto 5em;
}
.life_planning_img {
  width: 70%;
  max-width: 1200px;
  margin-right: auto;
}
.life_planning_inner {
  text-align: center;
}
.life_planning_ttl {
  font-size: 250%;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 0.8em;
}
.life_planning_ttl span {
  font-size: 50%;
}
.life_planning_txt {
  line-height: 1.8;
  margin-bottom: 7.9em;
}
.life_planning_voice {
  padding-bottom: 9.6em;
}
.life_planning_voice_box {
  margin: 0 auto;
  max-width: 600px;
}

.life_planning_questionnaire {
  padding-top: 5.6em;
  background-color: #ede4d6;
}

.life_planning_voice_ttl {
  font-size: 175%;
  font-weight: 600;
  margin-bottom: 2em;
}
.life_planning_questionnaire_ttl {
  font-size: 175%;
  font-weight: 600;
  margin-bottom: 2.8em;
}

.question_item_nom {
  max-width: 130px;
  margin: 0 auto 3em;
}
.question_item_q {
  font-size: 187.5%;
  font-weight: 600;
  margin-bottom: 1em;
  line-height: 1;
}

.question_item_a {
  font-size: 100%;
  margin-bottom: 1.75em;
}
.question_item_table {
  margin: 0 auto;
  max-width: 460px;
  padding-bottom: 5.6em;
}
.life_planning_consultation {
  padding-top: 3.5em;
  padding-bottom: 3.5em;
}
.life_planning_consultation_ttl {
  font-size: 187.2%;
  font-weight: 600;
  margin-bottom: 1.42em;
  line-height: 1.2;
}
.life_planning_consultation_txt {
  font-size: 112.5%;
  line-height: 1.8;
  margin-bottom: 3em;
}
.life_planning_consultation .btn,
.life_planning_consultation .tel_btn {
  margin: 0 auto;
}
.life_planning_consultation .tel_btn {
  margin-bottom: 0.5em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .life_planning_img {
    width: 100%;
  }
  .life_planning_inner {
    max-width: 90%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .life_planning_mv {
    max-width: 100%;
    margin: 0 auto 2.5em;
  }
  .life_planning_img {
    width: 100%;
  }
  .life_planning_inner {
    max-width: 90%;
    margin: 0 auto;
  }
  .life_planning_ttl {
    font-size: 200%;
  }
  .life_planning_txt {
    margin-bottom: 4em;
    text-align: left;
  }
  .life_planning_voice_ttl {
    font-size: 128%;
    margin-bottom: 1em;
  }
  .life_planning_voice {
    padding-bottom: 5em;
  }
  .life_planning_questionnaire_ttl {
    font-size: 128%;
  }
  .life_planning_questionnaire {
    padding-top: 4em;
  }
  .question_item_table {
    padding-bottom: 4em;
  }
  .question_item_nom {
    width: 30%;
    margin: 0 auto 1.75em;
  }
  .question_item_q {
    font-weight: 600;
    margin-bottom: 0.8em;
    line-height: 1.4;
  }
  .question_item_a {
    text-align: left;
  }
  .life_planning_consultation_ttl {
    font-weight: 600;
    margin-bottom: 0.8em;
  }
  .life_planning_consultation_txt {
    text-align: left;
  }
}
/******************************************************************************

plan

  ******************************************************************************/
.plan_inner {
  max-width: 1400px;
  margin: 0 auto;
  width: 96%;
}
.plan_ttl_img {
  max-width: 441px;
  margin: 0 auto;
  padding-bottom: 1em;
}
.plan_mv {
  padding-top: 16em;
  padding-bottom: 6em;
}
.plan_ttl {
  border-top: solid 1px #efd7d0;
  text-align: center;
  font-size: 250%;
  font-weight: 600;
  line-height: 1.8;
  padding: 2em 0 0.8em 0;
}
.plan_txt {
  font-size: 100%;
  text-align: center;
  line-height: 1.8;
}
.plan_step {
  padding-top: 3.3em;
}
.plan_step .plan_txt {
  padding-bottom: 4.1em;
}
.plan_tel_btn,
.plan_btn {
  margin: 0 auto;
}
.plan_tel_btn {
  margin-bottom: 0.5em;
}
.plan_btn {
  margin-bottom: 2em;
}
.plan_headding {
  position: relative;
  width: 35%;
  max-width: 500px;
  color: #555;
  background: #fff;
  border: solid 2px #b1966c;
  box-sizing: border-box;
  padding: 2.8em;
  display: flex;
  justify-content: center;
  margin: 0 auto 3.5em;
}

.plan_headding:before {
  content: "";
  position: absolute;
  bottom: -46px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top-color: transparent;
  border-top-style: solid;
  border-top-width: 12px;
  border-top: 36px solid #fff;
  z-index: 2;
}

.plan_headding:after {
  content: "";
  position: absolute;
  bottom: -54px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-top-color: transparent;
  border-top-style: solid;
  border-top-width: 14px;
  border-top: 40px solid #b1966c;
  z-index: 1;
}
.plan_headding h3 {
  text-align: center;
  font-size: 175%;
  color: #b1966c;
  letter-spacing: -2px;
}
.plan_nom {
  position: absolute;
  top: -3.3em;
  width: 52%;
}
.plan_item_name {
  color: #fff;
  font-size: 137.5%;
  text-align: center;
  padding: 0.8em;
  margin-bottom: 1.5em;
}
.plan_item .plan_txt {
  padding-bottom: 4.1em;
}

.plan_mv .loan_pause {
  padding: 1.5em;
  margin: 0 auto;
  background: #FFF;
  border: 2px solid #F00;
  text-align: center;
  font-size: 137.5%;
  line-height: 1.8;
  width: 60%;
}

/*表*/
.loan_conditions {
  padding: 5.6em 0;
  background: #fff;
}
.loan_conditions_inner {
  margin: 0 auto;
  padding: 0;
  max-width: 1300px;
  height: auto;
}
.loan_conditions_tit_ttl {
  margin-bottom: 1.5em;
  text-align: center;
  color: #b1966c;
  font-size: 160%;
  font-weight: 600;
}
.loan_conditions_box {
  margin: 0 auto;
  width: 90%;
  max-width: 1400px;
}
.loan_conditions_box dl {
  padding: 1.5em 0;
  display: flex;
  font-size: 118.75%;
  line-height: 1.6;
}
.loan_conditions_box dl:first-of-type {
  border-top: 1px solid #b1966c;
}
.loan_conditions_box dl:not(:last-child) {
  border-bottom: 1px solid #b1966c;
}
.loan_conditions_box dt {
  padding-right: 1.6em;
  width: 20%;
  text-align: right;
}
.loan_conditions_box dd {
  padding-left: 1.6em;
  width: 80%;
}
.loan_conditions_box dd p {
  margin-bottom: 1em;
}
.loan_conditions_box dd .con_stxt {
  margin-bottom: 0;
  font-size: 80%;
}
@media screen and (max-width: 1070px) {
  .plan_mv {
    padding-top: 8em;
  }
  .plan_mv_inner {
    width: 90%;
    margin: 0 auto;
  }
  .plan_inner {
    width: 90%;
    margin: 0 auto;
  }
  .plan_headding {
    width: 100%;
    padding: 1.3em;
  }
  .plan_nom {
    top: -2.6em;
    width: 50%;
    max-width: 170px;
  }
  .plan_step {
    padding-top: 2.6em;
  }
  .loan_conditions_box {
    width: 100%;
  }
  .loan_conditions_box dt {
    padding-right: 1em;
    width: 30%;
  }
  .loan_conditions_box dd {
    padding-left: 1em;
    width: 70%;
  }
  .plan_headding {
    margin: 0 auto 3.5em;
  }
}
@media screen and (max-width: 767px) {
  .plan_mv {
    padding-top: 8em;
    padding-bottom: 3.5em;
  }
  .plan_mv_inner {
    width: 90%;
    margin: 0 auto;
  }
  .plan_inner {
    width: 90%;
    margin: 0 auto;
  }
  .plan_ttl_img {
    width: 60%;
    padding-bottom: 0;
  }
  .plan_ttl {
    border-top: none;
    font-size: 180%;
  }
  .plan_txt {
    text-align: left;
  }
  .plan_headding {
    width: 100%;
    padding: 1.3em;
  }
  .plan_headding h3 {
    font-size: 128.5%;
    font-weight: 600;
  }
  .plan_nom {
    top: -2.6em;
    width: 50%;
    max-width: 170px;
  }
  .plan_step {
    padding-top: 2.6em;
  }
  .plan_step .plan_txt {
    padding-bottom: 2.6em;
  }
  .plan_item_name {
    font-size: 114%;
    padding: 0.6em;
  }

  .loan_conditions {
    padding: 6em 0 2em;
  }
  .loan_conditions_inner {
    width: 100%;
  }
  .loan_conditions_tit_ttl {
    margin-bottom: 1em;
  }
  .loan_conditions_box dl {
    padding: 1.2em 1em;
    font-size: 100%;
  }
  .loan_conditions_box dd {
    padding-left: 0;
  }
  .loan_conditions_box dd .con_stxt {
    font-size: 90%;
  }
  .plan_mv .loan_pause {
    padding: 0.5em;
    width: 85%;
  }
  
}
@media screen and (max-width: 480px) {
  .loan_conditions_box dd {
  }
  .loan_conditions_box dt {
  }
}
/*ローンプラン*/
.plan_bg_blue {
  background-color: #c7dbd8;
}
.plan_item_name_blue {
  background-color: #9dbfba;
}

/*クレジットプラン*/
.plan_bg_pink {
  background-color: #efd7d0;
}
.plan_item_name_pink {
  background-color: #e3a795;
}

/******************************************************************************

member

******************************************************************************/
.member_mv {
  background-color: #5a7891;
  padding-bottom: 5em;
  margin-bottom: 5.6em;
}
.member_img {
  max-width: 420px;
  margin: 0 auto;
  padding-top: 13em;
  padding-bottom: 2em;
}
.member_mv_txtarea {
  color: #fff;
  text-align: center;
}
.member_mv_txtarea span {
  color: #ffd147;
  font-size: 112.5%;
  display: inline-block;
  margin-bottom: 0.5em;
}
.member_mv_ttl {
  font-size: 275%;
  line-height: 1;
  margin-bottom: 0.7em;
}
.member_mv_txt {
  display: inline-block;
  line-height: 1.8;
  text-align: center;
  padding-bottom: 4em;
}
.member_mv .btn {
  margin: 0 auto;
}
.member_inner {
  text-align: center;
  max-width: 1170px;
  margin: 0 auto;
}
.member_ttl {
  font-size: 250%;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 0.8em;
  color: #b1966c;
}
.member_voice_ttl {
  display: none;
}
.member_txt {
  display: inline-block;
  text-align: center;
  font-size: 100%;
  line-height: 1.8;
  margin-bottom: 4.1em;
}
.member_voice {
  background-color: #ede4d6;
  padding-top: 5.6em;
}

.voice_item_box dt {
  font-size: 175%;
  font-weight: 600;
  margin-bottom: 1em;
  line-height: 1.4;
}
.voice_item_box dt::before {
  content: "";
  background-image: url("../images/member/attention.png");
  display: block;
  margin: 0 auto 0.7em;
  width: 2.3em;
  height: 0.7em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.voice_item_box dd {
  margin-bottom: 1.75em;
  display: inline-block;
  text-align: center;
  line-height: 1.8;
  max-width: 80%;
}
.voice_item_table {
  margin: 0 auto;
  max-width: 510px;
  padding-bottom: 5.6em;
}
.member_contact {
  background-color: #5a7891;
  color: #fff;
  padding-top: 3.75em;
  padding-bottom: 3em;
}
.member_contact_ttl {
  font-size: 175%;
  line-height: 1;
  margin-bottom: 0.8em;
}
.member_contact_txt {
  line-height: 1.8;
  display: inline-block;
  text-align: center;
  font-weight: 400;
  max-width: 75%;
}
.member_contact_arrow {
  max-width: 25px;
  margin: 2.4em auto;
}
.member_form_bg {
  background-color: #efe9e0;
}
.member_form_btn {
  margin: 0 auto;
  padding-bottom: 4em;
  text-align: center;
}
.member_form_btn a {
  background-color: #66c4b9;
  color: #fff;
}
.member_form_inner {
  width: 90%;
  margin: 0 auto;
}
.member_btn input[type="submit"] {
  margin-bottom: 0;
}

@media screen and (max-width: 1070px) {
  .member_img {
    width: 90%;
  }
  .member_contact_arrow {
    max-width: 20px;
    margin: 2.4em auto;
  }

  .member_mv_txtarea {
    width: 90%;
    margin: 0 auto;
  }
  .member_inner {
    width: 90%;
  }
  .member_mv_ttl {
    line-height: 1.4;
  }
}
@media screen and (max-width: 767px) {
  .member_mv {
    padding-bottom: 5em;
    margin-bottom: 5em;
  }
  .member_img {
    width: 70%;
    padding-top: 5.7em;
    padding-bottom: 2em;
  }
  .member_mv_txtarea {
    width: 90%;
    margin: 0 auto;
  }
  .member_mv_ttl {
    font-size: 200%;
    line-height: 1.4;
  }

  .member_inner {
    width: 90%;
  }
  .member_ttl {
    font-size: 187.5%;
    line-height: 1.4;
    margin-bottom: 1em;
  }
  .member_txt {
    margin-bottom: 3.75em;
    text-align: left;
  }
  .voice_item_box dt {
    line-height: 1.4;
    font-weight: 600;
    font-size: 162.5%;
  }
  .voice_item_box dd {
    max-width: 100%;
    text-align: left;
  }
  .voice_item_box dt::before {
    margin: 0 auto 0.5em;
  }
  .voice_item_table {
    padding-bottom: 5.7em;
  }
  .member_voice {
    padding-top: 4.2em;
  }
  /*form*/
  .member_contact {
    background-color: #5a7891;
    color: #fff;
    padding-top: 2.1em;
  }
  .member_contact_ttl {
    line-height: 1;
  }
  .member_contact_txt {
    max-width: 100%;
    text-align: left;
  }
}

/*確認　完了/*/
.member_confilm,
.member_thanks {
  padding-top: 13em !important;
}
.member_confilm .confirm_txt,
.member_confilm .thank_kakuninn {
  margin-top: 4em;
}
@media screen and (max-width: 767px) {
  .member_confilm,
  .member_thanks {
    padding-top: 6em !important;
  }
  .member_confilm .confirm_txt,
  .member_confilm .thank_kakuninn {
    margin-top: 2em;
  }
}
/******************************************************************************

bridal

******************************************************************************/
.bridal_mv {
  max-width: 100%;
  margin: 0 auto 6em;
}
.bridal_img {
  width: 70%;
  max-width: 1200px;
  margin-left: auto;
}
.bridal_inner {
  margin: 0 auto;
  padding: 0;
  max-width: 1300px;
  width: 90%;
  height: auto;
}
.bridal_read {
  margin-bottom: 5em;
}
.bridal_read_ttl {
  font-size: 250%;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 0.8em;
  text-align: center;
}
.bridal_read_ttl span {
  font-size: 57%;
  display: block;
}
.bridal_read_txt {
  text-align: center;
  line-height: 1.8;
}
.bridal_point {
  text-align: center;
}
.bridal_point_box {
  margin-bottom: 5.6em;
}
.bridal_point_box_ttl {
  font-size: 137.5%;
  color: #e38989;
  font-weight: 600;
  margin-bottom: 1em;
}
.bridal_point_box_txt {
  margin-bottom: 1.5em;
  line-height: 1.8;
}
.bridal_point_box_img {
  max-width: 597px;
  margin: 0 auto;
}

.bridal_application {
  text-align: center;
  padding-top: 8em;
}
.bridal_application_ttl {
  font-size: 200%;
  line-height: 1;
  margin-bottom: 2em;
}
.bridal_application_item:not(:last-child) {
  margin-bottom: 6em;
}
.bridal_application_item_ttl {
  max-width: 191px;
  margin: 0 auto 2em;
}
.bridal_application_txt {
  font-size: 100%;
  line-height: 1.8;
  margin-bottom: 2em;
}

.bridal_application_btn_box li {
  margin: 0 auto;
}
.bridal_application_btn_box li:not(:last-child) {
  margin-bottom: 0.5em;
}
.bridal_btn_area li {
  margin: 0 auto;
}
.bridal_btn_area li:not(:last-child) {
  margin-bottom: 0.5em;
}

.bridal_conditions {
  padding: 5.6em 0;
  background: #ede4d6;
}
.bridal_inner {
  width: 100%;
}
.bridal_contact {
  padding: 6em 0;
}
.bridal_contact_txt {
  margin-bottom: 4em;
  font-size: 125%;
  text-align: center;
  line-height: 1.8;
}

@media screen and (max-width: 1070px) {
  .bridal_inner {
    margin: 0 auto;
    width: 90%;
  }
  .bridal_img {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .bridal_mv {
    max-width: 100%;
    margin: 0 auto 3em;
  }
  .bridal_img {
    width: 100%;
  }
  .bridal_read {
    margin-bottom: 6em;
  }
  .bridal_read_ttl {
    font-size: 200%;
  }
  .bridal_read_txt {
    font-size: 112%;
    text-align: left;
  }
  .bridal_application {
    padding-top: 3.5em;
  }
  .bridal_application_ttl {
    font-size: 200%;
    margin-bottom: 1.7em;
  }
  .bridal_application_txt {
    text-align: left;
  }
  .braidal .attention_box {
    padding-top: 4em;
    padding-bottom: 4em;
  }
  .bridal_point_box_txt {
    text-align: left;
  }
  .bridal_conditions {
    padding: 3em 0;
  }
  .bridal_contact {
    padding: 2em 0;
  }
  .bridal_contact_txt {
    margin-bottom: 2em;
    font-size: 100%;
    text-align: left;
  }
}

/******************************************************************************

partnerページ

******************************************************************************/
.partner_mv {
  max-width: 1200px;
  margin: 13em auto 6em;
}
.partner_ttl_img {
  max-width: 700px;
  margin: 0 auto;
}
.partner_inner {
  max-width: 1200px;
  margin: 0 auto 6em;
  border-bottom: solid 1px #b1966c;
}
.partner_box dt {
  font-size: 175%;
  padding: 1em;
  line-height: 1;
  color: #b1966c;
  border-top: solid 1px #b1966c;
  text-align: center;
}
.partner_box dd {
  display: none;
  max-width: 960px;
  width: 90%;
  margin: 0 auto;
}
.partner_box dt {
  position: relative;
}
.partner_box dt:before {
  content: "";
  width: 20px;
  height: 30px;
  background-image: url("../images/compliance/arrow.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
  position: absolute;
  left: 2em;
  /*
  top:1.1em;
*/
}
.partner_box_list {
  font-size: 112.5%;
  line-height: 1.8;
  font-weight: 400;
}
.partner_box_list_read {
  margin-bottom: 1em;
}
.partner_box_list_item {
  margin-bottom: 2em;
}
.partner_box_list_item ul li {
  padding: 0.5em 0;
}
.partner_box_list_item li a {
  text-decoration: underline;
}
.partner_box_list_item li a:hover {
  opacity: 0.6;
  filter: alpha(opacity=80);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.partner_box_list_ttl {
  font-size: 122%;
  font-weight: 600;
  margin-bottom: 0.2em;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
  .partner_box dt::before {
    left: 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .partner_mv {
    width: 80%;
    margin: 6em auto 3em;
  }
  .partner_box dt {
    font-size: 142%;
    padding: 1.2em;
  }
  .partner_box dd {
    width: 90%;
    margin: 0 auto;
    padding: 0;
    line-height: 1.2;
  }
  .partner_box dt:before {
    content: "";
    width: 0.7em;
    height: 0.8em;
    position: absolute;
    left: 5%;
  }

  .partner_box_list {
    font-size: 100%;
    line-height: 1.8;
    font-weight: 600;
  }
  .partner_box_list_ttl {
    font-size: 100%;
    font-weight: 600;
  }
}

/******************************************************************************

form_mv

******************************************************************************/
.bg_gray {
  background: #efe9e0;
}
.form_mv {
  text-align: center;
}
.form_mv_img {
  width: 15.625%;
  margin: 13em auto 0;
}
.form_mv_txt {
  line-height: 1.2;
  display: inline-block;
  font-weight: 600;
}
.form_mv_ttl {
  font-size: 275%;
  margin-bottom: 0.7em;
}
.form_mv_ttl span {
  font-size: 31.8%;
}
.form_mv_lead {
  text-align: center;
  line-height: 1.4;
  margin-bottom: 4em;
}

@media screen and (max-width: 767px) {
  .form_mv_img {
    width: 42%;
    margin: 6em auto 0;
  }
  .form_mv {
    width: 92%;
    margin: 0 auto;
  }
  .form_mv_ttl {
    font-size: 200%;
    margin-bottom: 0.7em;
  }
  .form_mv_lead {
    text-align: left;
  }
}

/*step*/
.form_step_wrap {
  margin-bottom: 4.5em;
}
.form_step_wrap ul {
  display: flex;
  justify-content: space-between;
  max-width: 300px;
  margin: 0 auto;
  background-size: 50% 5%, 50% 5%;
  background-repeat: no-repeat;
  background-position: left 10px top 10px, right 10px top 10px;
}
.form_step_wrap ul.green {
  background-image: url("../images/member/boder01.png"),
    url("../images/member/boder02.png");
}
.form_step_wrap ul.pink {
  background-image: url("../images/contact/boder01.png"),
    url("../images/contact/boder02.png");
}
.form_step_wrap ul.thnk {
  background-image: url("../images/contact/boder01.png"),
    url("../images/contact/boder01.png");
}
.form_step_wrap ul.thnk_green {
  background-image: url("../images/member/boder01.png"),
    url("../images/member/boder01.png");
}

.form_step_box {
  display: flex;
  justify-content: space-between;
  max-width: 216px;
  margin: 0 auto;
}
.form_step_box {
}

.form_step_item {
  text-align: center;
}
.form_step_item_img {
  width: 20px;
  margin: 0 auto;
  display: flex;
  align-items: center;
}
.form_step_item span {
  display: block;
}

.form_step_item_active_pink {
  color: #e38989;
}
.form_step_item_active_green {
  color: #66c4b9;
}
@media screen and (max-width: 1070px) and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
  .form_step_wrap ul {
    width: 80%;
  }
}

/******************************************************************************

form_共通

******************************************************************************/
.form_inner {
  margin: 0 auto 3.0em;
  padding: 0;
  max-width: 850px;
  height: auto;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
    "sans-serif";
  font-weight: 400;
  width: 92% !important;
}
.form_ttl {
  width: 100%;
  color: #fff;
  text-align: center;
  padding: 1em 0;
  position: relative;
  margin-bottom: 2.6em;
  margin-top: 4.6em;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
    "sans-serif";
}
.form_ttl_pink {
  background: #f2a9a5;
}
.form_ttl_green {
  background: #66c4b9;
}
.form_ttl span {
  position: absolute;
  top: -0.5em;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.form_inner_ttl {
  margin-bottom: 0.8em;
  margin-top: 0.5em;
  font-weight: 600;
  line-height: 1.5;
  width: 100%;
  font-size: 87.5%;
}
.form_inner_ttl span {
  font-weight: normal;
}
#plan_txt {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .form_ttl {
    margin-bottom: 2.2em;
  }
}
/*必須*/
.req {
  color: #fff;
  background: #ff0099;
  padding: 0.3em 0.7em;
  margin: 0 0.5em;
  border-radius: 5px;
}
/*任意*/
.any {
  color: #fff;
  background: #959589;
  padding: 0.3em 0.7em;
  margin: 0 0.5em;
  border-radius: 5px;
}
/*複数*/
.multiple {
  color: #ff0099;
  font-weight: 600 !important;
}
.form_date_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.form_date_box .date_note {
  display: inline-block;
  color: #ff0099;
  font-weight: 400;
  line-height: 1.4;
}
.form_date_box dd {
  font-size: 87.5%;
  margin-bottom: 0.5em;
  width: 100%;
}
.form_date_box_item {
  width: 19.5% !important;
}

/*チェックボックス*/
.form_check_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 87.5%;
}

.form_check_item {
  width: 49.5%;
  box-sizing: border-box;
  padding: 1em;
  background-color: #e1d2c0;
  margin-bottom: 1%;
}
.form_check_item:nth-child(2n + 1):last-child {
  width: 100%;
}
.form_check_item .textarea {
  width: 100%;
  height: 100px;
  margin-top: 0.5em;
  padding: 0.5em;
  box-sizing: border-box;
}
.form_check_wrap input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  width: 24px;
  height: 19px;
  vertical-align: middle;
  background: url(../images/checkbox.png) left top;
  margin-right: 10px;
  border: none;
}

.form_check_wrap input[type="checkbox"]:checked::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 0px;
  width: 24px;
  height: 17px;
  background: url(../images/checkbox.png) left bottom;
  border: none;
}

/*セレクトボックス*/
.form_date_box .cp_ipselect {
  overflow: hidden;
  text-align: center;
}
.form_date_box .cp_ipselect select {
  width: 100%;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  outline: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 3px;
  border: solid 2px #aeada4;
  background: #ffffff;
  background-image: url("../images/triangle.png");
  background-repeat: no-repeat;
  background-position: right 0.5em center;
  padding: 0.5em;
}
.form_date_box .cp_ipselect select::-ms-expand {
  display: none;
}
.form_date_box .cp_ipselect.cp_sl01 {
  position: relative;
  display: flex;
  align-items: baseline;
  text-align: left;
}
.form_date_box .textarea {
  width: 100%;
  height: 100px;
  margin-top: 0.5em;
  padding: 0.5em;
  box-sizing: border-box;
}
.form_date_box textarea {
  height: 9.6em;
  width: 100%;
  padding: 0.5em;
  box-sizing: border-box;
}
.form_box {
  margin-bottom: 3em;
}
.form_date_box dd input {
  width: 100%;
  border-radius: 3px;
  border: solid 2px #aeada4;
  padding: 0.5em;
  box-sizing: border-box;
}
.form_inner dd input[type="radio"] {
  width: auto !important;
}
.coment_radio label {
  margin-right: 2em;
}

@media screen and (max-width: 767px) {
  .form_check_item {
    width: 100%;
    margin-bottom: 0 auto 1%;
  }
}

.fram_box::placeholder {
  color: #aeada4;
}
.name_box .form_inner_ttl {
  width: 100%;
}
.name_box dd {
  width: 49%;
}
.name_box dd:nth-of-type(odd) {
  margin-right: 1%;
}

.relationship_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.relationship_box dd {
  margin-right: 2em;
  width: inherit !important;
  display: flex;
  align-items: center;
}
.relationship_box dd input {
  margin-right: 0.5em;
}
.mail_note {
  color: #949488;
  font-size: 87.5%;
  line-height: 1.6;
}

.paty_day_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.paty_day_box dd {
  margin-right: 2em;
  width: inherit !important;
  display: flex;
  align-items: center;
}
.paty_day_box dd input {
  margin-right: 0.5em;
}

/******************************************************************************

プライバシーポリシー

******************************************************************************/
.privacy_ttl {
  margin: 0 auto;
  font-size: 137.5%;
  color: #b1966c;
  margin-bottom: 1em;
  text-align: center;
}
.privacy_sub_ttl {
  font-weight: 600;
  margin-bottom: 1em;
}
.privacy_txt {
  margin-bottom: 1em;
  font-size: 87.6%;
}
.pri_inframe {
  background: #fff;
  height: 300px;
  overflow: scroll;
  padding: 0.5em;
  margin-bottom: 5.6em;
}
.form_privacy_inner {
  margin: 0 auto 5em;
  padding: 0;
  max-width: 817px;
  height: auto;
}

.form_btn {
  display: block;
  margin: 0 auto 1em;
  padding: 1em 0;
  text-decoration: none;
  text-align: center;
  border-radius: 30px;
  -webkit-border-radius: 30px; /* for Safari and Chrome 対応*/
  -moz-border-radius: 30px; /* for Firefox 対応*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #e1d2c0;
  border: none;
  max-width: 16.8em;
}
.confirm_btn {
  margin: 0 auto;
  max-width: 16.8em;
}
.member_btn {
  padding-bottom: 2em;
}

.confirm_btn input[type="submit"] {
  padding: 1em;
  display: block;
  text-align: center;
  border-radius: 30px;
  -webkit-border-radius: 30px; /* for Safari and Chrome 対応*/
  -moz-border-radius: 30px; /* for Firefox 対応*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 100%;
  background-color: #e1d2c0;
  color: #000;
  max-width: 16.8em;
  line-height: 1;
}
.confirm_btn:not(.member_btn) input[type="submit"] {
  margin: 0 auto 1em;
}
.confirm_btn input[type="submit"]:hover {
  background-color: #f2baa5;
  color: #000;
}
.confirm_btn_submit {
  margin: 0 auto;
}
.confirm_btn_submit input[type="submit"] {
  width: 100%;
  line-height: 1;
}
.confirm_btn button {
  margin: 0 auto 1em;
  line-height: 1;
  padding: 1em;
  display: block;
  text-align: center;
  border-radius: 100vh;
  -webkit-border-radius: 30px; /* for Safari and Chrome 対応*/
  -moz-border-radius: 30px; /* for Firefox 対応*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #e1d2c0;
  width: 100%;
  border: 0;
}

.confirm_btn button:hover {
  background-color: #f2baa5;
  color: #000;
}
.confirm_btn button:disabled {
  background-color: #e1d2c0;
  color: #fff;
}
.form_btn input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  width: 24px;
  height: 19px;
  vertical-align: middle;
  background: url(../images/checkbox.png) top;
  margin-right: 10px;
  border: none;
}

.form_btn input[type="checkbox"]:checked::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 0px;
  width: 24px;
  height: 17px;
  background: url(../images/checkbox.png) bottom;
  border: none;
}

.submit a {
  margin: 0 auto 1em;
  padding: 1em;
  display: block;
  text-align: center;
  border-radius: 30px;
  -webkit-border-radius: 30px; /* for Safari and Chrome 対応*/
  -moz-border-radius: 30px; /* for Firefox 対応*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #e1d2c0;
  color: #000;
  line-height: 1;
}
.submit a:hover {
  background-color: #f2baa5;
  color: #000;
}

@media screen and (max-width: 767px) {
  .form_btn {
    width: 82%;
  }
  .pri_inframe {
    margin: 0 auto 2em;
  }
  .confirm_btn {
    width: 80%;
  }

  .confirm_btn_submit {
    width: 80%;
    margin: 0 auto;
  }

  .confirm_btn input[type="submit"][disabled] {
    width: 100%;
  }
}

/*ライフプランニングフォーム*/
.hope_ttl {
  color: #ff0099;
  font-size: 150%;
  line-height: 1;
  margin-bottom: 1.5em;
  font-weight: 600;
}
.hope_ttl .req {
  font-size: 66%;
}
.hope_txt {
  color: #ff0099;
  font-weight: 400;
  margin-bottom: 2.1em;
}

/*確認*/
.confirm_txt {
  text-align: center;
  margin: 2em auto;
}
.confirm_item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: solid 1px #aeada4;
  border-right: solid 1px #aeada4;
  border-left: solid 1px #aeada4;
  font-size: 87.5%;
  margin-bottom: 2em;
}
.confirm_item dt {
  width: 30%;
  background-color: #e1d2c0;
  padding: 0.5em;
  box-sizing: border-box;
  border-bottom: solid 1px #aeada4;
  border-right: solid 1px #aeada4;
}
.confirm_item dd {
  width: 70%;
  background-color: #fff;
  padding: 0.5em;
  box-sizing: border-box;
  border-bottom: solid 1px #aeada4;
  min-height: 30px;
}
.cof_hope .hope_ttl {
  margin-bottom: 0.5em;
}
.btn_confirm_size {
  width: 40%;
  margin: 0 auto;
  max-width: 16.8em;
}
@media screen and (max-width: 767px) {
  .btn_confirm_size {
    width: 80%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .confirm_item dt {
    width: 100%;
    border-right: none;
  }
  .confirm_item dd {
    width: 100%;
  }
}

/*完了*/
.thank_kakuninn {
  text-align: center;
  margin-bottom: 2em;
  margin-top: 2em;
}

.member_bg .form_ttl {
  margin-top: 0 !important;
}

.back.submit {
  margin: 0 auto;
  max-width: 16.8em;
}
@media screen and (max-width: 767px) {
  .back.submit {
    margin: 0 auto;
  }
}
/******************************************************************************

グループ会社一覧

******************************************************************************/

.group_box_ttl {
  font-size: 150%;
  letter-spacing: -1px;
  font-weight: 600;
  margin-bottom: 0.8em;
}
.group_box_ttl a:hover {
  opacity: 0.6;
}
.common_table {
  width: 100%;
  margin-bottom: 6em;
}
.common_table th {
  background: #f0f0f0;
  border: solid 1px #ccc;
  padding: 1.5em;
  width: 20%;
  text-align: left;
}
.common_table td {
  border: solid 1px #ccc;
  padding: 1.5em;
}

@media screen and (max-width: 767px) {
  .group_box_ttl {
    font-size: 114%;
    line-height: 1.4;
  }
  .common_table th {
    width: 100%;
    box-sizing: border-box;
    border-bottom: none;
  }
  .common_table td {
    border-bottom: none;
  }
  .common_table {
    border-bottom: solid 1px #ccc;
  }
  .common_table th,
  .common_table td {
    display: block;
  }
}
.faq_item:target dd {
  display: block;
}
/******************************************************************************

recruit

******************************************************************************/
.recruit_mv {
  background-color: #f2baa5;
}
.recruit_img {
  max-width: 750px;
  margin: 0 auto;
  padding-top: 13.5em;
  padding-bottom: 3em;
}
.recruit_mv_txtarea {
  color: #000;
  text-align: center;
}
.recruit_mv_txt {
  display: inline-block;
  line-height: 1.8;
  text-align: center;
  padding-bottom: 4em;
  font-size: 118.75%;
}
.recruit_inner {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}
.staff {
  background-color: #ede4d6;
}
.staff_img {
  padding-bottom: 1.6em;
}
.staff_img img {
  width: 17.5em !important;
  height: 17.5em !important;
  object-fit: cover;
  border-radius: 50%;
}
.staff_name {
  display: flex;
  justify-content: center;
  padding-bottom: 1.5em;
}
.staff_name dt,
.staff_name dd {
  font-size: 125%;
  color: #fff;
  padding: 0.4em;
}
.staff_name dt {
  background-color: #b1966c;
}
.staff_name dd {
  background-color: #000;
}
.staff_ttl {
  font-size: 175%;
  line-height: 1.4;
  font-weight: 600;
  padding-bottom: 1em;
}
.staff_txt {
  font-size: 100%;
  line-height: 1.8;
  text-align: left;
}
.staff_about {
  background-image: url("../images/recruit/staff_bg.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: auto 95%;
  padding-top: 5.6em;
}
.staff_article_box {
  padding-bottom: 5.4em;
}
.readmore {
  font-size: 100%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 5.4em;
}
.readmore:before {
  content: "";
  width: 0.85em;
  height: 1.1em;
  background-image: url("../images/recruit/arrow.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
  margin-right: 1em;
}
.readmoreactive:before {
  transform: rotate(-90deg);
}

.readmore:hover {
}
.article_more_area {
}
.president_headding {
  background-color: #c7dbd8;
  padding: 11em 0 13em;
}
.president_ttl {
  max-width: 540px;
  margin: 0 auto;
  width: 60%;
}
.president_img {
  max-width: 605px;
  margin: -4.2em auto 4.2em;
}

@media screen and (max-width: 1070px) {
  .recruit_img {
    width: 90%;
  }

  .recruit_inner {
    width: 90%;
  }
  .staff_ttl {
  }
}
@media screen and (max-width: 767px) {
  .recruit_img {
    width: 90%;
    padding-top: 5.7em;
    padding-bottom: 2em;
    max-width: 320px;
    margin: 0 auto;
  }
  .recruit_mv_txt {
    font-size: 114%;
  }
  .recruit_inner {
    text-align: center;
  }
  .staff_item {
    background-image: url("../images/recruit/staff_bg_sp.png");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% auto;
  }
  .staff_about {
    background-image: none;
  }
  .staff_name dt,
  .staff_name dd {
    font-size: 114%;
    color: #fff;
    padding: 0.4em;
  }

  .readmore {
    justify-content: flex-start;
  }
  .staff_article_box {
    padding-bottom: 3em;
  }
  .president_headding {
    background-color: #c7dbd8;
    padding: 3.5em 0 7.8em;
  }
  .president {
    padding-bottom: 3em;
  }
}
.object-fit-img {
  object-fit: cover;
  font-family: "object-fit: cover;";
}
/* 20230111アンケートフォーム */
#questionnaire {
  margin-bottom: 5.0em;
}
#questionnaire .textarea {
	width: 100%;
	height: 100px;
	margin-top: 0.5em;
	padding: 0.5em;
	box-sizing: border-box;
	border: solid 2px #aeada4;
	border-radius: 3px;
}
#questionnaire .textarea_high {
	height: 200px;
}
.form_box .form_check_wrap .form_check_item_half {
	width: 49.5%;
}
@media screen and (max-width: 767px) {
	.form_box .form_check_wrap .form_check_item_half {
		width: 100%;
	}
}
.form_sub_text {
	margin-bottom: 0.8em;
}
.name_box dd {
	margin-top: auto;
}






/* --------20240625追記---------- */
#download .pcNone{
display: none;
}
#download .spNone{
	display: block;
	}
@media screen and (max-width: 767px) {
	#download .pcNone{
		display: block;
		}
		#download .spNone{
			display: none;
			}
}
#download {
	padding-top: clamp(8em,25vw,15em);
}
#download .download-wrap {
	margin-inline: auto;
	width: min(900px,80%);
  margin-bottom: 3em;
}
@media screen and (max-width:767px) {
	#download .download-wrap {
		width: 100%;
	}
}
#download .download-btn{
	display: grid;
	column-gap: 1em;
	row-gap: 1em;
}
@media screen and (max-width:1024px) {
	#download .download-btn{
		grid-template-columns: auto;
	}
}
#download .download-btn span {
	font-size: clamp(13px,2vw,14px);
}
#download .download-btn a{
	color: #fff;
    background-color: #e38989;
    padding: 1em;
    display: block;
	position: relative;
	font-size: clamp(14px,3vw,18px);
	transition: .3s;
}
#download .download-btn a:hover{
	transition: .3s;
	opacity: .8;
}
#download .pdf-icon {
	display: block;
	position: absolute;
	right: 1em;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: clamp(16px,3vw,20px);
}

#download .form_mv_img {
    width: 15.625%;
    margin: 3em auto 0;
}
