.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

* {
  font-family: 'Noto Sans JP', sans-serif;
  color: #000000;
}

a:hover {
  opacity: 0.8;
}

.sup_text {
  font-size: 0.6em !important;
  vertical-align: top !important;
}

body {
  padding-bottom: 137.09px;
}

section>.inner {
  max-width: 920px;
  margin: auto;
  padding: 0 12px;
  box-sizing: content-box;
}

img {
  width: 100%;
}

h2 {
  font-family: "BIZ UDPMincho", serif;
  font-weight: 900;
  font-size: 40px;
  color: #002674;
  text-align: center;
}

h2>span {
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  color: inherit;
  text-align: inherit;
}

ul.footnote>li {
  margin-left: 1em;
  position: relative;
}

ul.footnote>li::before {
  font-size: inherit;
  position: absolute;
  content: '※';
  left: -1em;
}

.dot>li {
  text-indent: -1.25em;
  padding-left: 1.25em;
  text-align: left;
  font-size: 14px;
}

.dot>li::before {
  content: '・';
  margin-right: 0.25em;
}

/* .accordion */
.accordion {
  border-top: 2px solid #002674;
  border-bottom: 2px solid #002674;
}

.accordion_title {
  padding: 16px 0;
  position: relative;
  cursor: pointer;
}

.accordion_title:hover {
  opacity: 0.8;
}

.accordion_title>* {
  font-weight: 700;

  font-size: 20px;
  color: #002674;
}

.accordion_title::before,
.accordion_title::after {
  content: '';
  position: absolute;
  background-color: #002674;
  width: 30px;
  height: 2px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 0;
  transition: 0.25s;
}

.accordion_title::after {
  transform: none;
}

.accordion_title.open::after {
  transform: rotate(90deg);
}

/* .fv */
.fv {
  background-color: #ffffff;
}

.fv .header {
  background-color: #ffffff;
  padding: 12px 41px;
}

.fv .header img {
  width: 219px;
}

.fv .kv {
  background-image: url(../images/kv_bg.png);
  background-size: 100%;
  background-repeat: no-repeat;
  height: 595px;
  display: flex;
}

.fv .kv img {
  display: block;
  margin: auto;
  width: 1235px;
}

.fv .cv {
  padding: 40px 20px;
  text-align: center;
}

.fv .cv .ribbon_title {
  display: block;
  width: 628px;
  margin: auto;
}

.fv .cv p {
  font-size: 28px;
  margin: 11px 0 0;
  font-family: "BIZ UDPMincho", serif;
  font-weight: 700;
}

.fv .cv p span {
  font-size: 36px;
  font-family: inherit;
  font-weight: inherit;
}

.fv .cv ul.footnote {
  display: inline-block;
  text-align: center;
  padding: 0 15px;
  margin: 10px 0;
}

.fv .cv ul.footnote li {
  text-align: left;
  font-size: 16px;
}

.fv .cv a {
  display: block;
  margin: 0 auto;
}

.fv .cv .anchor_btn {
  max-width: 866px;
  margin-bottom: 16px;
}

/* .features */
.features {
  background-color: #F1F5F9;
  padding: 104px 0 100px;
}

.features h2 {
  margin-bottom: 70px;
  position: relative;
}

.features h2>span {
  z-index: 2;
  position: relative;
}

.features h2::before {
  content: '';
  background-image: url(../images/title_bg_white.png);
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 245px;
  height: 38px;
  z-index: 1;
}

.features .box {
  background-color: #ffffff;
  padding: 30px 70px;
}

.features .box+.box {
  margin-top: 20px;
}

.features h3 {
  color: #002674;
  font-weight: 700;
  font-size: 24px;
  line-height: 100%;
  text-align: center;
  line-height: 1.38;
}

.features h3 span {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  display: inline !important;
}

.features .head_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

.features .box:first-of-type .head_wrap div {
  width: 50px;
  height: 41px;
}

.features .box:nth-of-type(2) .head_wrap div {
  width: 78px;
  height: 64px;
}

.features .box:nth-of-type(3) .head_wrap div {
  width: 45px;
  height: 45px;
}

.features .box:nth-of-type(4) .head_wrap div {
  width: 56px;
  height: 38px;
}

.features .box .head_wrap div {
  display: flex;
  justify-content: center;
  align-items: center;
}

.features .box p {
  font-size: 14px;
  text-align: center;
  margin-top: 14px;
}

.features table {
  font-size: 14px;
  width: 540px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: solid 1px #002674;
  text-align: center;
  vertical-align: middle;
  margin: 18px auto 0;
}

.features table th {
  height: 56px;
  font-weight: 700;
  background-color: #002674;
  color: #ffffff;
  text-align: center;
  vertical-align: middle;
  border-right: solid 1px #D9D9D9;
}

.features table th:last-of-type {
  border-right: none;
}

.features table td {
  height: 32px;
  font-weight: 400;
  background-color: #ffffff;
  text-align: center;
  vertical-align: middle;
  border-bottom: solid 1px #D6D6D6;
  border-right: solid 1px #D6D6D6;
}

.features table tr:last-child>* {
  border-bottom: none;
}

.features table tr td:last-child {
  border-right: none;
}

.features table td:last-of-type {
  font-weight: 600;
  color: #FF262A;
}

.features .box>ul.footnote {
  text-align: center;
  margin-top: 14px;
}

.features .box>ul.footnote li {
  text-align: left;
  display: inline-block;
}

.features .box>ul.footnote+img {
  width: 239px;
  display: block;
  margin: 60px auto 51px;
}

.features .example {
  border: solid 1px #002674;
  padding: 60px 40px 30px;
  position: relative;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 29px;
}

.features .example div {
  width: 320px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.features .example h5 {
  width: 442px;
  padding: 18px 0;
  background-color: #002674;
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  position: absolute;
  top: -30px;
  right: 0;
  left: 0;
  margin: auto;
}

.features .example div h6 {
  font-weight: 700;
  font-size: 16px;
  text-align: center;
  margin-bottom: 34px;
}

.features .example div img {
  margin: 0 auto 20px;
  width: 315px;
  display: block;
}

.features .example div p {
  text-align: center;
  margin: 0 auto;
}

.features .example div p:nth-of-type(2) {
  font-weight: 700;
  font-size: 20px;
  margin: 12px auto 8px;
}

.features .example div p:nth-of-type(2) span {
  font-size: 24px;
}

.features .example>.box {
  width: 100%;
  text-align: center;
  background-color: #EBF8FF;
  padding: 30px 104px 20px;
  margin-top: 29px;
  position: relative;
}

.features .example>.box::after {
  content: '';
  background-image: url(../images/deco_star.png);
  background-size: contain;
  width: 471px;
  height: 67px;
  position: absolute;
  left: 0;
  right: 0;
  top: 70px;
  margin: auto;
  z-index: 1;
}

.features .example .box p {
  font-size: 24px;
  font-weight: 600;
}

.features .example .box .amount p {
  color: #FF262A;
  font-size: 32px;
  position: relative;
  line-height: 1.32;
  z-index: 2;
}

.features .example .box .amount {
  position: relative;
  width: 100%;
}

.features .example>.box>.amount {
  margin: 3px 0 6px;
}

.features .example>.box>.amount::before {
  content: '';
  background-color: #B8E4FF;
  width: 263px;
  height: 23px;
  position: absolute;
  left: 0;
  right: 0;
  top: 30px;
  margin: auto;
  z-index: 1;
}

.features .example .box .amount p>span {
  font-weight: inherit;
  color: inherit;
  display: inline-block;
}

.features .example .box .amount span.numbers {
  font-family: Inter;
  font-size: 48px;
  color: inherit;
  display: inline-block;
}

.features .example .box .box {
  width: 100%;
  padding: 25px 18px 10px;
  margin: auto;
  position: relative;
}

.features .example .box .box::before {
  content: '';
  background-image: url(../images/deco_woman.png);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 90px;
  height: 146px;
  position: absolute;
  left: -80px;
  bottom: -20px;
}

.features .example .box .box::after {
  content: '';
  background-image: url(../images/deco_men.png);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 112px;
  height: 153px;
  position: absolute;
  right: -94px;
  bottom: -20px;
}

.features .example .box .box p {
  font-size: 20px;
}

.features .example>.box>.box .amount {
  margin: 7px auto;
}

.features .example>.box>.box .amount::before {
  content: '';
  background-color: #FFDEDE;
  max-width: 418px;
  width: 100%;
  height: 23px;
  position: absolute;
  left: 0;
  right: 0;
  top: 30px;
  margin: auto;
  z-index: 1;
}

.features .example>.box>.box .amount p {
  font-size: 32px;
  z-index: 2;
  position: relative
}

.features .example>.box>.box ul.footnote {
  text-align: center;
  display: inline-block;
}

.features .example>.box>.box ul.footnote li {
  text-align: left;
}

.features .box .note {
  margin-top: 14px;
}

.features .box .note h5 {
  font-size: 14px;
  font-weight: 700;
}

.features .box .note h6 {
  font-size: 14px;
  font-weight: 400;
}

/* .step */
.step {
  padding: 100px 0;
  background-color: #ffffff;
}

.step h2 {
  margin-bottom: 49px;
  position: relative;
}

.step h2>span {
  z-index: 2;
  position: relative;
}

.step h2::before {
  content: '';
  background-image: url(../images/title_bg_blue.png);
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -25px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 305px;
  height: 47.3061224488px;
  z-index: 1;
}

.step_wrap {
  max-width: 920px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 76px 42px;
  flex-wrap: wrap;
}

.step_wrap>li {
  width: 278px;
  height: 300px;
  background-color: #F1F5F9;
  position: relative;
  margin-top: 21px;
  padding: 47px 0 33px;
}

.step_wrap li+li {
  position: relative;
}

.step_wrap li+li::before {
  content: '';
  background-image: url(../images/arrow_step.png);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 30px;
  height: 61.5px;
  position: absolute;
  left: -34px;
  top: 0;
  bottom: 0;
  margin: auto 0;
}

.step_wrap li h3 {
  font-family: "BIZ UDPMincho", serif;
  width: 142px;
  background-color: #002674;
  color: #ffffff;
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  padding: 6px 0;
  position: absolute;
  top: -21px;
  right: 0;
  left: 0;
  margin: 0 auto;
}

.step_wrap li h3 span {
  font-family: inherit;
  color: inherit;
  font-weight: inherit;
  font-size: 30px;
  line-height: 1
}

.step_wrap li h3+p {
  font-size: 16px;
  text-align: center;
}

.step_wrap li img {
  display: block;
  margin: 20px auto 0;
  width: 90px;
}

.step_wrap li img+p,
.step_wrap li img+ul.footnote>li {
  margin-top: 25px;
  font-size: 14px;
}

.step_wrap li img+p,
.step_wrap li img+ul.footnote {
  padding: 0 34px;
}

/* .loan_conditions */
.loan_conditions {
  background-color: #F1F5F9;
  padding: 100px 0 105px;
}

.loan_conditions h2 {
  position: relative;
  margin-bottom: 47px;
}

.loan_conditions h2>span {
  z-index: 2;
  position: relative;
}

.loan_conditions h2::before {
  content: '';
  background-image: url(../images/title_bg_white.png);
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 235px;
  height: 32px;
  z-index: 1;
}

.loan_conditions .table_wrap+ul.footnote {
  margin-top: 12px;
}

.loan_conditions .table_wrap+ul.footnote li {
  font-size: 13px;
}

.loan_conditions .table_wrap+ul.footnote li+li {
  margin-top: 8px;
}

.loan_conditions .accordion {
  max-width: 920px;
  margin: 0 auto;
}

.loan_conditions table {
  font-size: 14px;
  max-width: 920px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: solid 1px #002674;
  text-align: center;
  vertical-align: middle;
}

.loan_conditions table th {
  font-weight: 700;
  background-color: #002674;
  color: #ffffff;
  text-align: center;
  vertical-align: middle;
  table-layout: auto;
}

.loan_conditions table th:last-of-type {
  border-right: none !important;
}

.loan_conditions table td {
  font-weight: 400;
  background-color: #ffffff;
  text-align: left;
  vertical-align: middle;
}

.loan_conditions table tr:last-child>* {
  border-bottom: none !important;
}

.loan_conditions table tr td:last-child {
  border-right: none !important;
}

/* .loan_conditions .inner>.table_wrap table */
.loan_conditions .inner>.table_wrap table {
  margin: 0 auto;
}

.loan_conditions .inner>.table_wrap table th {
  width: 200px;
  height: 34px;
  border-bottom: solid 1px #D9D9D9;
}

.loan_conditions .inner>.table_wrap table td {
  height: 34px;
  border-right: dashed 1px #D6D6D6;
  border-bottom: solid 1px #D6D6D6;
  padding: 0 8px 0 14px;
}

.loan_conditions .inner>.table_wrap table td:first-of-type,
.loan_conditions .inner>.table_wrap table td:nth-of-type(2) {
  width: calc(100%/4.17255555555);
}

.loan_conditions .inner>.table_wrap table tr:nth-of-type(8) td {
  height: 102px;
}

/* .loan_conditions .accordion */
.loan_conditions .accordion {
  margin-top: 40px;
}

.loan_conditions .accordion_content {
  padding: 0 26px 16px 14px;
}

.loan_conditions .accordion_content table {
  margin: 18px auto 0;
  max-width: 880px;
}

.loan_conditions .accordion_content table th {
  width: 200px;
  height: 34px;
  border-right: solid 1px #D6D6D6;
}

.loan_conditions .accordion_content table td {
  height: 34px;
  border-right: solid 1px #D6D6D6;
  border-bottom: solid 1px #D6D6D6;
  text-align: center;
}

.loan_conditions .accordion_content table th:first-of-type,
.loan_conditions .accordion_content table th:nth-of-type(4) {
  width: calc(100%/7.33333333333);

}

.loan_conditions .accordion_content table th:nth-of-type(2),
.loan_conditions .accordion_content table th:nth-of-type(3) {
  width: calc(100%/6.28571428571);
}

.loan_conditions .accordion_content h4 {
  font-weight: 700;
  font-size: 14px;
  color: #002674;
  margin: 24px 0 14px;
}

.loan_conditions .accordion_content ul.footnote {
  margin-top: 12px;
}

.loan_conditions .accordion_content ul.footnote>li {
  font-size: 13px;
}

.loan_conditions .accordion_content ul.footnote>li+li {
  margin-top: 8px;
}

/* .joining_bonus */
.joining_bonus {
  padding: 100px 0;
  background-color: #ffffff;
}

.joining_bonus h2 {
  font-size: 32px;
  margin-bottom: 57px;
  position: relative;
}

.joining_bonus h2::before {
  content: '';
  background-image: url(../images/title_bg_blue.png);
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -15px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 245px;
  height: 38px;
  z-index: 1;
}

.joining_bonus h2>span {
  z-index: 2;
  position: relative;
}

.joining_bonus h3 {
  font-weight: 700;
  font-size: 24px;
  text-align: center;
  margin-bottom: 12px;
}

.joining_bonus h3 span {
  font-weight: inherit;
  font-size: inherit;
  color: #FF262A;
}

.joining_bonus h3 span span {
  font-size: 20px;
}

.joining_bonus .period h4 {
  font-weight: 700;
  font-size: 16px;
  text-align: center;
  width: 300px;
}

.joining_bonus .period {
  margin: 24px auto 32px;
  width: 600px;
}

.joining_bonus .period div+div {
  margin-top: 14px;
}

.joining_bonus .period>div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: auto;
  padding: 8px;
}

.joining_bonus .period>div:first-of-type {
  background-color: #FFFAA7;
  border: 2px solid #C5BC7D;
}

.joining_bonus .period>div:nth-of-type(2) {
  background-color: #FFCCDB;
  border: 2px solid #E47B9B;
}

.joining_bonus .period>div:last-of-type {
  background-color: #B9E3FF;
  border: 2px solid #6AABD6;
}

.joining_bonus .period>div div {
  width: 300px;
  padding: 10px 0 9px;
  background-color: #ffffff;
  text-align: center;
}

.joining_bonus .period p {
  font-weight: 700;
  font-size: 16px;
}

.joining_bonus p,
.joining_bonus ul.footnote>li,
.joining_bonus ul.dot>li {
  font-weight: 400;
  font-size: 14px;
}

.joining_bonus .inner>img {
  display: block;
  margin: 40px auto 0;
  max-width: 852px;
}

.joining_bonus .inner>ul.footnote {
  margin-top: 14px;
}

.joining_bonus .example_wrap {
  background-color: #F1F5F9;
  margin: 57px auto 20px;
  padding: 40px 34px;
}

.joining_bonus .example_wrap img+img {
  margin-top: 40px;
}

.joining_bonus .box {
  padding: 20px 68px;
  background-color: #F9F9F9;
}

.joining_bonus .box h5 {
  font-size: 14px;
  font-weight: bold;
}

.joining_bonus .box+.box {
  background-color: #ffffff;
  border: 1px solid #C2C2C2;
  margin-top: 20px;
}

.joining_bonus .box h5:not(:first-of-type) {
  margin-top: 1em;
}

/* .contact */
/* .contact {
  padding: 83px 0;
  background-color: #F2F2F2;
}

.contact img {
  display: block;
  max-width: 780px;
  margin: 0 auto;
} */
/* contact */

.contact {
  background: #EAEAEA;
  padding-top: 70px;
  padding-bottom: 100px;
  position: relative;
}

.contact .inner {
  max-width: 610px;
}

.contact .bold {
  font-weight: bold;
}

.contact h2 {
  width: 220px;
  margin: auto;
}

.contact .navi {
  display: flex;
  justify-content: space-between;
  margin-top: 34px;
}

.contact .navi .txt02 {
  font-size: 42px;
  font-weight: bold;
  line-height: normal
}

.contact .navi .txt02 span {
  font-size: 18px;
}

.contact .navi div:first-of-type {
  width: 101px;
}

.contact .navi div img {
  width: 100%;
}

.contact .box01 {
  margin-top: 20px;
  display: flex;
  align-items: center;
}

.contact .box01 span {
  font-size: 18px;
  font-weight: bold;
  border: solid 1px #000;
  border-radius: 10px;
  width: 122px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 20px;
}

.contact .box01 .bold {
  font-size: 16px;
  line-height: 1.8;
}

.contact .box01+* {
  margin-top: 10px;
}

.contact .footnote li {
  font-size: 16px;
  line-height: 1.6;
}

.contact .white_box {
  margin-top: 34px;
  margin-top: 20px;
  background: #fff;
  padding: 20px;
  text-align: center;
}

.contact .box02 .flex {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}

.contact .box02 span {
  font-size: 20px;
  font-weight: bold;
}

.contact .box02 .txt03 {
  font-size: 20px;
  line-height: normal;
}

.contact .box02 .txt03 span {
  font-size: 34px;
  font-weight: bold;
}

.contact .box03 {
  display: flex;
  justify-content: center;
  align-items: center;
}

.contact .box03 span {
  font-size: 18px;
  font-weight: bold;
  border: solid 1px #000;
  border-radius: 10px;
  width: 104px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 20px;
}

.contact .box03 .bold {
  font-size: 18px;
  line-height: 1.8;
}

.contact .txt05 {
  font-size: 18px;
  font-weight: bold;
  margin-top: 16px;
}

.contact .pagetop {
  position: absolute;
  right: 0;
  bottom: 0;
  margin-right: 70px;
  margin-bottom: 74px;
  cursor: pointer;
  -webkit-transition: opacity ease .3s;
  transition: opacity ease .3s;
  width: 15px;
}

.contact .white_box .box02 img {
  width: 38px;
}

/* .contact .pagetop:hover {
  opacity: .4;
} */

/* .footer */
.footer {
  padding: 40px 0 43px;
  background-color: #ffffff;
}

.footer p {
  font-weight: 400;
  font-size: 13px;
  text-align: center;
}

/* .cv_area */
.cv_area {
  width: 100%;
  padding: 19px 0 16px;
  background-color: #ffffff;
  z-index: 9999;
  position: fixed;
  bottom: 0;
}

.cv_area p {
  text-align: center;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 500;
}

.cv_area p a {
  font-size: inherit;
  color: #2071BD;
  text-decoration: underline;
}

.cv_area .cv_btn {
  display: block;
  width: 395px;
  margin: auto;
}

@media (767px < width <=1440px) {

  /* .fv */
  .fv .header {
    padding: 0.833333vw 2.847222vw;
  }

  .fv .header img {
    width: 15.208333vw;
  }

  .fv .kv {
    height: 41.319444vw;
  }

  .fv .kv img {
    width: 85.763888vw;
  }
}

/* sp */
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

  body {
    padding-bottom: 153.19px;
  }

  section>.inner {
    width: 89.333333vw;
    padding: 0;
  }

  h2 {
    font-size: 28px;
  }

  .dot>li {
    font-size: 14px;
  }

  /* .accordion */
  .accordion {
    border-top: 1px solid #002674;
    border-bottom: 1px solid #002674;
  }

  .accordion_title {
    padding: 16px 0;
  }

  .accordion_title>* {
    font-size: 20px;
  }

  .accordion_title::before,
  .accordion_title::after {
    width: 30px;
    height: 2px;
  }

  /* .fv */
  .fv .header {
    padding: 22px 0 18px 20px;
  }

  .fv .header img {
    width: 173px;
  }

  .fv .kv {
    background-image: url(../images/sp/kv_bg.png);
    height: 581px;
  }

  .fv .kv img {
    width: 335px;
  }

  .fv .cv {
    padding: 40px 0 60px;
  }

  .fv .cv .ribbon_title {
    width: 235px;
  }

  .fv .cv p {
    font-size: 28px;
    margin: 20px 0 5px;
  }

  .fv .cv p span {
    font-size: 36px;
  }

  .fv .cv ul.footnote {
    padding: 0 15px;
  }

  .fv .cv .anchor_btn {
    max-width: 415px;
  }

  /* .features */
  .features {
    padding: 60px 0;
  }

  .features h2 {
    margin-bottom: 40px;
  }

  .features h2::before {
    bottom: -16px;
    width: 245px;
    height: 38px;
  }

  .features .box {
    padding: 30px 25px;
    box-shadow: 0 4px 4px 0 #AAC5D240;
    border-radius: 10px;
  }

  .features .box:nth-of-type(4) {
    padding: 30px 10px;
  }

  .features .box+.box {
    margin-top: 20px;
  }

  .features h3 {
    font-size: 22px;
  }

  .features .head_wrap {
    gap: 16px;
    flex-direction: column-reverse;
  }

  .features .box:first-of-type .head_wrap div {
    width: 91.84px;
    height: auto;
  }

  .features .box:nth-of-type(2) .head_wrap div {
    width: 149px;
    height: auto;
  }

  .features .box:nth-of-type(3) .head_wrap div {
    width: 84.56px;
    height: auto;
  }

  .features .box:nth-of-type(4) .head_wrap div {
    width: 103.16px;
    height: auto;
  }

  .features .box p {
    font-size: 14px;
    margin-top: 16px;
    text-align: left;
    font-weight: 500;
  }

  .features table {
    font-size: 14px;
    width: 100%;
    border: solid 1px #002674;
    margin: 35px auto 0;
  }

  .features table th {
    width: 228px;
    height: 69.44px;
    border-right: solid 1px #D9D9D9;
    padding: 8px;
    box-sizing: content-box;
  }

  .features table td {
    height: 42.56px;
    border-bottom: solid 1px #D6D6D6;
    border-right: solid 1px #D6D6D6;
  }

  .features .box>ul.footnote+img {
    width: 239px;
    margin: 60px auto 58px;
  }

  .features .example {
    border: solid 1px #002674;
    padding: 53px 23px 20px;
    gap: unset;
  }

  .features .example div:nth-of-type(2) {
    margin-top: 40px;
  }

  .features .example>img {
    margin-top: 25px;
  }

  .features .example h5 {
    width: 293px;
    padding: 22px 0 19px;
    font-size: 16px;
    top: -37px;
  }

  .features .example div h6 {
    font-size: 20px;
    margin-bottom: 10px;
  }

  .features .example div img {
    margin: 0 auto 12px;
    width: 100%;
  }

  .features .example div p:nth-of-type(2) {
    font-size: 20px;
    margin: 8px auto;
  }

  .features .example div p:nth-of-type(2) span {
    font-size: 24px;
  }

  .features .example>.box {
    padding: 30px 20px 76px;
    margin-top: 25px;
  }

  .features .example>.box::after {
    content: '';
    background-size: 100%;
    background-repeat: no-repeat;
    width: 59.466666vw;
    height: 17.866666vw;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
  }

  .features .example .box p {
    font-size: 20px;
  }

  .features .example .box .amount p {
    font-size: 32px;
  }

  .features .example>.box>.amount {
    margin: 8px 0;
  }

  .features .example>.box>.amount::before {
    width: 223px;
    height: 23px;
  }

  .features .example>.box>.amount::after {
    display: none;
  }

  .features .example .box .amount span.numbers {
    font-weight: inherit;
    color: inherit;
    font-size: 40px;
  }

  .features .example .box .box {
    width: 100%;
    padding: 20px 12px 37px;
    margin: auto;
    position: relative;
  }

  .features .example .box .box::before {
    content: '';
    background-image: url(../images/deco_woman.png);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 58px;
    height: 94px;
    position: absolute;
    left: 48px;
    bottom: -76px;
  }

  .features .example .box .box::after {
    content: '';
    background-image: url(../images/deco_men.png);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 74px;
    height: 100px;
    position: absolute;
    right: 40px;
    bottom: -76px;
  }

  .features .example .box .box p {
    font-size: 18px;
  }

  .features .example>.box>.box .amount {
    margin: 8px auto;
    display: inline-block;
  }

  .features .example>.box>.box .amount::before {
    content: '';
    background-color: #FFDEDE;
    max-width: 300px;
    height: 23px;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1;
  }

  .features .example>.box>.box .amount p {
    font-size: 32px;
  }

  ul.footnote>li {
    font-size: 13px;
  }

  .features .box .note {
    margin-top: 20px;
  }

  .features .box .note h5 {
    font-size: 14px;
  }

  .features .box .note h6 {
    font-size: 14px;
  }

  /* .step */
  .step {
    padding: 60px 0;
  }

  .step h2 {
    margin-bottom: 60px;
  }

  .step h2::before {
    bottom: -20px;
    width: 245px;
    height: 38px;
  }

  .step_wrap {
    width: 100%;
    gap: 79px;
  }

  .step_wrap>li {
    width: 90vw;
    height: auto;
    margin-top: 21px;
    padding: 56px 16px 30px;
  }

  .step_wrap li+li::before {
    background-image: url(../images/sp/arrow_step.png);
    width: 91px;
    height: 38px;
    right: 0;
    left: 0;
    top: -72px;
    margin: 0 auto;
  }

  .step_wrap li h3 {
    width: 142px;
    font-size: 24px;
    padding: 1.333333vw 0;
    top: -24.625px;
  }

  .step_wrap li h3 span {
    font-size: 28px;
  }

  .step_wrap li h3+p {
    font-size: 16px;
  }

  .step_wrap li img {
    margin: 19px auto 0;
    width: 90px;
  }

  .step_wrap li img+p,
  .step_wrap li img+ul.footnote>li {
    margin-top: 20px;
    font-size: 13px;
  }

  .step_wrap li img+p,
  .step_wrap li img+ul.footnote {
    padding: 0;
  }

  /* .loan_conditions */
  .loan_conditions {
    padding: 60px 0;
  }

  .loan_conditions h2 {
    margin-bottom: 28px;
  }

  .loan_conditions h2::before {
    bottom: -8px;
    width: 235px;
    height: 32px;
  }

  .loan_conditions .table_wrap {
    margin: 0 auto;
    overflow-x: scroll;
  }

  .loan_conditions table {
    font-size: 14px;
    width: 880px;
    border: solid 1px #002674;
  }

  /* .loan_conditions .inner>.table_wrap table */
  .loan_conditions>.table_wrap {
    width: 89.333333vw;
  }

  .loan_conditions .inner>.table_wrap table th {
    width: 200px;
    height: 34px;
    border-bottom: solid 1px #D9D9D9;
  }

  .loan_conditions .inner>.table_wrap table td {
    height: 34px;
    border-right: dashed 1px #D6D6D6;
    border-bottom: solid 1px #D6D6D6;
    padding: 0 1.866666vw 0 14px;
  }

  .loan_conditions .inner>.table_wrap table td:first-of-type,
  .loan_conditions .inner>.table_wrap table td:nth-of-type(2) {
    width: calc(100%/4.17255555555);
  }

  .loan_conditions .inner>.table_wrap table tr:nth-of-type(8) td {
    height: 26.56249875;
  }

  /* .loan_conditions .accordion */
  .loan_conditions .accordion {
    margin-top: 60px;
    width: 89.333333vw;
  }

  .loan_conditions .accordion_content {
    padding: 0 0 16px 0;
  }

  .loan_conditions .accordion_content table {
    margin: 8px auto 0;
    width: 234.933333vw;
  }

  .loan_conditions .accordion_content table th {
    width: 32vw;
    height: 40px;
    border-right: solid 1px #D6D6D6;
  }

  .loan_conditions .accordion_content table td {
    height: 40px;
    border-right: solid 1px #D6D6D6;
    border-bottom: solid 1px #D6D6D6;
  }

  .loan_conditions .accordion_content h4 {
    font-size: 14px;
    margin: 24px 0 8px;
  }

  .loan_conditions .accordion_content ul.footnote {
    margin-top: 19px;
  }

  .loan_conditions .accordion_content ul.footnote>li {
    font-size: 13px;
  }

  .loan_conditions .accordion_content ul.footnote>li+li {
    margin-top: 12px;
  }

  /* .joining_bonus */
  .joining_bonus {
    padding: 60px 0;
  }

  .joining_bonus h2 {
    font-size: 28px;
    margin-bottom: 40px;
  }

  .joining_bonus h2::before {
    bottom: -5px;
    width: 235px;
    height: 32px;
  }

  .joining_bonus h3 {
    font-size: 24px;
    margin-bottom: 4.8vw;
  }

  .joining_bonus h3 span {
    font-size: inherit;
  }

  .joining_bonus h3 span span {
    font-size: 20px;
  }

  .joining_bonus .period h4 {
    font-size: 14px;
    width: 44.666666vw;
  }

  .joining_bonus .period {
    margin: 24px auto 8.533333vw;
    width: 100%;
  }

  .joining_bonus .period div+div {
    margin-top: 8px;
  }

  .joining_bonus .period>div {
    padding: 8px;
  }

  .joining_bonus .period>div:first-of-type {
    border: 2px solid #C5BC7D;
  }

  .joining_bonus .period>div:nth-of-type(2) {
    border: 2px solid #E47B9B;
  }

  .joining_bonus .period>div:last-of-type {
    border: 2px solid #6AABD6;
  }

  .joining_bonus .period>div div {
    width: 44.666666vw;
    padding: 10px 0 2.4vw;
  }

  .joining_bonus .period p {
    font-size: 11px;
  }

  .joining_bonus p,
  .joining_bonus ul.footnote>li,
  .joining_bonus ul.dot>li {
    font-size: 14px;
  }

  .joining_bonus .inner>img {
    margin: 40px auto 0;
    width: 100%;
  }

  .joining_bonus .example_wrap {
    margin: 40px auto 20px;
    padding: 7.199999vw 4.8vw 30px 22px;
  }

  .joining_bonus .example_wrap img+img {
    margin-top: 24px;
  }

  .joining_bonus .box {
    padding: 20px 12px;
  }

  .joining_bonus .box+.box {
    border: 1px solid #C2C2C2;
    margin-top: 20px;
  }

  .contact {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .contact h2 img {
    width: 41.066666vw;
  }

  .contact h2+* {
    margin-top: 20px;
    font-size: 15px;
  }

  .contact .sp_white {
    background: #fff;
    padding: 20px;
    text-align: center;
  }

  .contact .navi {
    margin-top: 10px;
    justify-content: center;
  }

  .contact .navi div:first-of-type {
    width: 17.866666vw;
  }

  .contact .navi .txt02 {
    font-size: 24px;
  }

  .contact .navi .txt02 span {
    font-size: 2.933333vw;
    display: block;
  }

  .contact .box01 {
    display: block;
  }

  .contact .box01 span {
    display: inline-flex;
    font-size: 16px;
    border-radius: 0;
    width: 125px;
    height: 22px;
    margin-right: 0;
  }

  .contact .box01 .bold {
    margin-top: 10px;
    display: flex;
    justify-content: space-around;
    font-size: 16px;
  }

  .contact .box01+* {
    margin-top: 20px;
  }

  .contact .txt05 {
    background: #fff;
    padding: 20px;
    padding-top: 0;
    text-align: center;
    margin-top: 0;
    color: #61A865;
    font-size: 15px;
  }

  .contact .footnote {
    text-align: left;
    padding-left: 12px;
  }

  .contact .footnote li {
    font-size: 12px;
  }

  .contact .box02 span {
    font-size: 16px;
  }

  .contact .box02 figure {
    position: relative;
  }

  .contact .box02 figure img {
    width: 35px;
    position: absolute;
    bottom: 0;
    margin-left: 8px;
    margin-bottom: -20px;
  }

  .contact .box02 .flex {
    padding-bottom: 10px;
    border-bottom: solid 1px #111;
    gap: 15px;
  }

  .contact .box02 .txt03 {
    padding-top: 15px;
    font-size: 16px;
  }

  .contact .box02 .txt03 span {
    font-size: 24px;
  }

  .contact .box03 {
    display: block;
  }

  .contact .box03 span {
    display: inline-flex;
    font-size: 16px;
    border-radius: 0;
    width: 125px;
    height: 22px;
    margin-top: 15px;
    margin-right: 0;
    margin-bottom: 10px;
  }

  .contact .box03 .bold {
    font-size: 13px;
    text-align: center;
  }

  .contact .pagetop {
    margin-right: 6px;
    margin-bottom: 30px;
  }

  .contact .pagetop img {
    width: 15px;
  }

  /* .footer */
  .footer {
    padding: 17px 20px 22px;
  }

  .footer p {
    font-size: 13px;
    text-align: right;
  }
}

@media screen and (max-width: 422px) {
  .features .example>.box>.box .amount::before {
    top: 70px;
  }
}

@media screen and (max-width: 376px) {
  body {
    padding-bottom: 40.688vw;
  }

  section>.inner {
    width: 89.333333vw;
    padding: 0;
  }

  h2 {
    font-size: 7.466666vw;
  }

  .dot>li {
    font-size: 3.733333vw;
  }

  /* .accordion */
  .accordion {
    border-top: 0.533333vw solid #002674;
    border-bottom: 0.533333vw solid #002674;
  }

  .accordion_title {
    padding: 4.266666vw 0;
  }

  .accordion_title>* {
    font-size: 5.333333vw;
  }

  .accordion_title::before,
  .accordion_title::after {
    width: 8vw;
    height: 0.533333vw;
  }

  /* .fv */
  .fv .header {
    padding: 5.866666vw 0 4.8vw 5.333333vw;
  }

  .fv .header img {
    width: 46.133333vw;
  }

  .fv .kv {
    background-image: url(../images/sp/kv_bg.png);
    height: 154.933333vw;
  }

  .fv .kv img {
    width: 85.763888vw;
  }

  .fv .cv {
    padding: 10.666666vw 0 16vw;
  }

  .fv .cv .ribbon_title {
    width: 89.333333vw;
  }

  .fv .cv p {
    font-size: 7.466666vw;
    margin: 5.333333vw 0 0;
  }

  .fv .cv p span {
    font-size: 9.6vw;
  }

  .fv .cv ul.footnote {
    width: 89.333333vw;
    margin-bottom: 1.333333vw;
  }

  .fv .cv ul.footnote li {
    font-size: 4vw;
  }

  .fv .cv .anchor_btn {
    width: 89.333333vw;
    margin-bottom: 0
  }

  .cv_area {
    position: fixed;
    bottom: 0;
    width: 100vw;
    padding: 25px 0;
  }

  .cv_area p {
    font-size: 3.733333vw;
    margin-bottom: 1.6vw;
  }

  .cv_area .cv_btn {
    width: 84.8vw;
  }

  /* .features */
  .features {
    padding: 16vw 0;
  }

  .features h2 {
    margin-bottom: 10.666666vw;
  }

  .features h2::before {
    bottom: -4.266666vw;
    width: 65.333333vw;
    height: 10.133333vw;
  }

  .features .box {
    padding: 8vw 6.666666vw;
    box-shadow: 0 1.066666vw 1.066666vw 0 #AAC5D240;
    border-radius: 2.666666vw;
  }

  .features .box:nth-of-type(4) {
    padding: 8vw 2.666666vw;
  }

  .features .box+.box {
    margin-top: 5.333333vw;
  }

  .features h3 {
    font-size: 5.866666vw
  }

  .features .head_wrap {
    gap: 4.266666vw;
    flex-direction: column-reverse;
  }

  .features .box:first-of-type .head_wrap div {
    width: 24.490666vw;
    height: auto;
  }

  .features .box:nth-of-type(2) .head_wrap div {
    width: 39.733333vw;
    height: auto;
  }

  .features .box:nth-of-type(3) .head_wrap div {
    width: 22.549333vw;
    height: auto;
  }

  .features .box:nth-of-type(4) .head_wrap div {
    width: 27.509333vw;
    height: auto;
  }

  .features .box p {
    font-size: 3.733333vw;
    margin-top: 4.266666vw;
    text-align: left;
    font-weight: 500;
  }

  .features table {
    font-size: 3.733333vw;
    width: 100%;
    border: solid 0.069444vw #002674;
    margin: 9.333333vw auto 0;
  }

  .features table th {
    width: 27.466666vw;
    height: 18.517333vw;
    border-right: solid 0.266666vw #D9D9D9;
    padding: 1.333333vw;
  }

  .features table td {
    height: 11.242666vw;
    border-bottom: solid 0.266666vw #D6D6D6;
    border-right: solid 0.266666vw #D6D6D6;
  }

  .features .box>ul.footnote {
    margin-top: 1.6vw;
  }

  .features .box>ul.footnote+img {
    width: 63.733333vw;
    margin: 16vw auto 15.466666vw
  }

  .features .example {
    border: solid 0.266666vw #002674;
    padding: 13.066666vw 6.133333vw 5.333333vw;
    gap: unset;
  }

  .features .example div:nth-of-type(2) {
    margin-top: 10.666666vw;
  }

  .features .example>img {
    margin-top: 6.666666vw;
  }

  .features .example h5 {
    width: 78.133333vw;
    padding: 5.866666vw 0 5.066666vw;
    font-size: 4.266666vw;
    top: -9.866666vw;
  }

  .features .example div h6 {
    font-size: 5.333333vw;
    margin-bottom: 2.666666vw;
  }

  .features .example div img {
    margin: 0 auto 3.2vw;
    width: 72.8vw;
  }

  .features .example div p:nth-of-type(2) {
    font-size: 5.333333vw;
    margin: 2.133333vw auto;
  }

  .features .example div p:nth-of-type(2) span {
    font-size: 6.4vw;
  }

  .features .example>.box {
    padding: 8vw 5.066666vw 20.266666vw;
    margin-top: 6.666666vw;
    position: relative;
  }

  .features .example>.box::after {
    background-image: url(../images/sp/deco_star.png);
    width: 59.466666vw;
    height: 17.866666vw;
    top: auto;
    bottom: 9.333333vw;
    right: 5.066666vw;
    left: auto;
    margin: 0 auto;
  }

  .features .example .box p {
    font-size: 5.333333vw;
  }

  .features .example .box .amount p {
    font-size: 8.533333vw;
  }

  .features .example>.box>.amount {
    margin: 0.8vw 0 1.6vw;
  }

  .features .example>.box>.amount::before {
    width: 59.466666vw;
    height: 6.133333vw;
  }

  .features .example .box .amount span.numbers {
    font-size: 12.8vw;
  }

  .features .example .box .box {
    width: 100%;
    padding: 6.666666vw 0 6.4vw;
  }

  .features .example .box .box::before {
    width: 15.466666vw;
    height: 25.066666vw;
    left: 12.8vw;
    bottom: -20.266666vw;
  }

  .features .example .box .box::after {
    width: 19.733333vw;
    height: 26.666666vw;
    right: 10.666666vw;
    bottom: -20.266666vw;
  }

  .features .example .box .box p {
    font-size: 5.333333vw;
  }

  .features .example>.box>.box .amount {
    margin: 1.866666vw auto;
  }

  .features .example>.box>.box .amount::before {
    width: 53.333333vw;
    height: 6.133333vw;
    top: 18.666666vw;
  }

  .features .example>.box>.box .amount p {
    font-size: 8.533333vw;
  }

  ul.footnote>li {
    font-size: 3.466666vw;
  }

  .features .box .note {
    margin-top: 5.333333vw;
  }

  .features .box .note h5 {
    font-size: 3.733333vw;
  }

  .features .box .note h6 {
    font-size: 3.733333vw;
  }

  /* .step */
  .step {
    padding: 16vw 0;
  }

  .step h2 {
    margin-bottom: 16vw;
  }

  .step h2::before {
    bottom: -5.333333vw;
    width: 65.333333vw;
    height: 10.133333vw;
  }

  .step_wrap {
    width: 100%;
    gap: 15.466666vw;
  }

  .step_wrap>li {
    width: 72vw;
    height: auto;
    margin-top: 5.6vw;
    padding: 14.933333vw 4.266666vw 8vw;
  }

  .step_wrap li+li::before {
    background-image: url(../images/sp/arrow_step.png);
    width: 21.066666vw;
    height: 7.6vw;
    right: 0;
    left: 0;
    top: -15.866666vw;
    margin: 0 auto;
  }

  .step_wrap li h3 {
    width: 37.866666vw;
    font-size: 6.4vw;
    padding: 1.333333vw 0;
    top: -5.6vw;
  }

  .step_wrap li h3 span {
    font-size: 7.466666vw;
  }

  .step_wrap li h3+p {
    font-size: 4.266666vw;
  }

  .step_wrap li img {
    margin: 5.066666vw auto 0;
    width: 24vw;
  }

  .step_wrap li img+p,
  .step_wrap li img+ul.footnote>li {
    margin-top: 5.333333vw;
    font-size: 3.466666vw;
  }

  .step_wrap li img+p,
  .step_wrap li img+ul.footnote {
    padding: 0;
  }

  /* .loan_conditions */
  .loan_conditions {
    padding: 16vw 0;
  }

  .loan_conditions h2 {
    margin-bottom: 7.466666vw;
  }

  .loan_conditions h2::before {
    bottom: -3.2vw;
    width: 65.333333vw;
    height: 10.133333vw;
  }

  .loan_conditions .table_wrap {
    margin: 0 auto;
    overflow-x: scroll;
  }

  .loan_conditions .table_wrap+ul.footnote {
    margin-top: 5.066666vw;
  }

  .loan_conditions .table_wrap+ul.footnote li {
    font-size: 3.466666vw;
  }

  .loan_conditions .table_wrap+ul.footnote li+li {
    margin-top: 3.2vw;
  }

  .loan_conditions table {
    font-size: 3.733333vw;
    width: 245.333333vw;
    border: solid 0.266666vw #002674;
  }

  /* .loan_conditions .inner>.table_wrap table */
  .loan_conditions>.table_wrap {
    width: 89.333333vw;
  }

  .loan_conditions .inner>.table_wrap table th {
    width: 53.333333vw;
    height: 9.066666vw;
    border-bottom: solid 0.266666vw #D9D9D9;
  }

  .loan_conditions .inner>.table_wrap table td {
    height: 9.066666vw;
    border-right: dashed 0.266666vw #D6D6D6;
    border-bottom: solid 0.266666vw #D6D6D6;
    padding: 0 1.866666vw 0 3.733333vw;
  }

  .loan_conditions .inner>.table_wrap table td:first-of-type,
  .loan_conditions .inner>.table_wrap table td:nth-of-type(2) {
    width: calc(100%/4.17255555555);
  }

  .loan_conditions .inner>.table_wrap table tr:nth-of-type(8) td {
    height: 7.083333vw;
  }

  /* .loan_conditions .accordion */
  .loan_conditions .accordion {
    margin-top: 16vw;
    width: 89.333333vw;
  }

  .loan_conditions .accordion_content {
    padding: 0 0 4.266666vw 0;
  }

  .loan_conditions .accordion_content table {
    margin: 2.133333vw auto 0;
    width: 234.933333vw;
  }

  .loan_conditions .accordion_content table th {
    width: 32vw;
    height: 10.666666vw;
    border-right: solid 0.266666vw #D6D6D6;
  }

  .loan_conditions .accordion_content table td {
    height: 10.666666vw;
    border-right: solid 0.266666vw #D6D6D6;
    border-bottom: solid 0.266666vw #D6D6D6;
  }

  .loan_conditions .accordion_content h4 {
    font-size: 3.733333vw;
    margin: 6.4vw 0 2.133333vw;
  }

  .loan_conditions .accordion_content ul.footnote {
    margin-top: 5.066666vw;
  }

  .loan_conditions .accordion_content ul.footnote>li {
    font-size: 3.466666vw;
  }

  .loan_conditions .accordion_content ul.footnote>li+li {
    margin-top: 3.2vw;
  }

  /* .joining_bonus */
  .joining_bonus {
    padding: 16vw 0;
  }

  .joining_bonus h2 {
    font-size: 7.466666vw;
    margin-bottom: 10.666666vw;
  }

  .joining_bonus h2::before {
    bottom: -2.133333vw;
    width: 65.333333vw;
    height: 10.133333vw;
  }

  .joining_bonus h3 {
    font-size: 6.4vw;
    margin-bottom: 4.8vw;
  }

  .joining_bonus h3 span {
    font-size: inherit;
  }

  .joining_bonus h3 span span {
    font-size: 5.333333vw;
  }

  .joining_bonus .period h4 {
    font-size: 3.733333vw;
    width: 44.666666vw;
  }

  .joining_bonus .period {
    margin: 6.4vw auto 8.533333vw;
    width: 100%;
  }

  .joining_bonus .period div+div {
    margin-top: 2.133333vw;
  }

  .joining_bonus .period>div {
    padding: 2.133333vw;
  }

  .joining_bonus .period>div:first-of-type {
    border: 0.533333vw solid #C5BC7D;
  }

  .joining_bonus .period>div:nth-of-type(2) {
    border: 0.533333vw solid #E47B9B;
  }

  .joining_bonus .period>div:last-of-type {
    border: 0.533333vw solid #6AABD6;
  }

  .joining_bonus .period>div div {
    width: 44.666666vw;
    padding: 2.666666vw 0 2.4vw;
  }

  .joining_bonus .period p {
    font-size: 11px;
  }

  .joining_bonus p,
  .joining_bonus ul.footnote>li,
  .joining_bonus ul.dot>li {
    font-size: 3.733333vw;
  }

  .joining_bonus .inner>img {
    margin: 10.666666vw auto 0;
    width: 100%;
  }

  .joining_bonus .inner>ul.footnote {
    margin-top: 1.6vw;
  }

  .joining_bonus .example_wrap {
    margin: 10.666666vw auto 5.333333vw;
    padding: 7.199999vw 4.8vw 8vw 5.866666vw;
  }

  .joining_bonus .example_wrap img+img {
    margin-top: 6.4vw;
  }

  .joining_bonus .box {
    padding: 5.333333vw 3.2vw;
  }

  .joining_bonus .box h5 {
    font-size: 3.733333vw;
  }

  .joining_bonus .box+.box {
    border: 0.266666vw solid #C2C2C2;
    margin-top: 5.333333vw;
  }

  .contact {
    padding-top: 8vw;
    padding-bottom: 8vw;
  }

  .contact h2 img {
    width: 41.066666vw;
  }

  .contact h2+* {
    margin-top: 5.333333vw;
    font-size: 4vw;
  }

  .contact .sp_white {
    background: #fff;
    padding: 5.333333vw;
    text-align: center;
  }

  .contact .navi {
    margin-top: 2.666666vw;
    justify-content: center;
  }

  .contact .navi div:first-of-type {
    width: 17.866666vw;
  }

  .contact .navi .txt02 {
    font-size: 6.4vw;
  }

  .contact .navi .txt02 span {
    font-size: 2.933333vw;
    display: block;
  }

  .contact .box01 {
    display: block;
  }

  .contact .box01 span {
    display: inline-flex;
    font-size: 4.266666vw;
    border-radius: 0;
    width: 33.333333vw;
    height: 5.866666vw;
    margin-right: 0;
  }

  .contact .box01 .bold {
    margin-top: 2.666666vw;
    display: flex;
    justify-content: space-around;
    font-size: 1.3rem;
  }

  .contact .box01+* {
    margin-top: 5.333333vw;
  }

  .contact .txt05 {
    background: #fff;
    padding: 5.333333vw;
    padding-top: 0;
    text-align: center;
    margin-top: 0;
    color: #61A865;
    font-size: 4vw;
  }

  .contact .footnote {
    text-align: left;
    padding-left: 3.2vw;
  }

  .contact .footnote li {
    font-size: 3.2vw;
  }

  .contact .box02 span {
    font-size: 4.266666vw;
  }

  .contact .box02 figure {
    position: relative;
  }

  .contact .box02 figure img {
    width: 9.333333vw;
    position: absolute;
    bottom: 0;
    margin-left: 2.133333vw;
    margin-bottom: -5.333333vw;
  }

  .contact .box02 .flex {
    padding-bottom: 2.666666vw;
    border-bottom: solid 0.266666vw #111;
    gap: 4vw;
  }

  .contact .box02 .txt03 {
    padding-top: 4vw;
    font-size: 4.266666vw;
  }

  .contact .box02 .txt03 span {
    font-size: 6.4vw;
  }

  .contact .box03 {
    display: block;
  }

  .contact .box03 span {
    display: inline-flex;
    font-size: 4.266666vw;
    border-radius: 0;
    width: 33.333333vw;
    height: 5.866666vw;
    margin-top: 4vw;
    margin-right: 0;
    margin-bottom: 2.666666vw;
  }

  .contact .box03 .bold {
    font-size: 3.466666vw;
    text-align: center;
  }

  .contact .pagetop {
    margin-right: 1.6vw;
    margin-bottom: 8vw;
  }

  .contact .pagetop img {
    width: 4vw;
  }

  /* .footer */
  .footer {
    padding: 4.533333vw 5.333333vw 5.866666vw;
  }

  .footer p {
    font-size: 3.466666vw;
    text-align: right;
  }
}

