@charset "UTF-8";
/* Breakpoints */
/* Percentages Default Value */
/* Font Family */
/* Font Weights */
/* Breakpoints */
/* Percentages Default Value */
/* Font Family */
/* Font Weights */
/* Media Queries */
/* Breakpoints */
/* Percentages Default Value */
/* Font Family */
/* Font Weights */
footer {
  position: relative;
}
footer .text_base {
  font-size: clamp(0.6rem, 0.5555555556vw + 0.3333333333rem, 0.75rem);
}
footer .text_lg {
  font-size: clamp(0.7rem, 0.6481481481vw + 0.3888888889rem, 0.875rem);
}
footer .btn_mod span {
  font-size: clamp(0.65rem, 0.6018518519vw + 0.3611111111rem, 0.8125rem);
}
footer .btn_mod span::after {
  right: clamp(-0.4rem, -0.3703703704vw + -0.2222222222rem, -0.5rem);
}
footer .inner {
  justify-content: space-between;
}
footer .footer_jma_gp {
  padding: clamp(1.6rem, 1.4814814815vw + 0.8888888889rem, 2rem) 0 clamp(1.25rem, 1.1574074074vw + 0.6944444444rem, 1.5625rem);
  background-color: #fdfaf2;
}
footer .footer_jma_gp .inner .col02_1 {
  width: 42%;
  margin-left: clamp(0.8rem, 0.7407407407vw + 0.4444444444rem, 1rem);
  max-width: 420px;
}
footer .footer_jma_gp .inner .col02_1 .footer_info {
  justify-content: space-between;
  align-items: flex-end;
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list {
  width: 48.8372093023%;
  max-width: 210px;
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list .title_h4 {
  margin-bottom: clamp(0.55rem, 0.5092592593vw + 0.3055555556rem, 0.6875rem);
  font-weight: 500;
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list a.text_base {
  margin-bottom: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem);
  color: #333333;
  position: relative;
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list a.text_base::after {
  position: absolute;
  top: 50%;
  right: clamp(-1.2rem, -1.1111111111vw + -0.6666666667rem, -1.5rem);
  width: clamp(0.9rem, 0.8333333333vw + 0.5rem, 1.125rem);
  height: clamp(0.9rem, 0.8333333333vw + 0.5rem, 1.125rem);
  background: url("../../images/common/arrow_btn_mod.png") no-repeat center;
  background-size: cover;
  content: "";
  transform: translateY(-50%);
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list a.text_base:hover {
  color: #e34e23;
  text-decoration: underline;
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list img {
  margin-bottom: clamp(0.25rem, 0.2314814815vw + 0.1388888889rem, 0.3125rem);
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li {
  margin-bottom: clamp(0.25rem, 0.2314814815vw + 0.1388888889rem, 0.3125rem);
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li a {
  color: #333333;
  position: relative;
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li a::after {
  position: absolute;
  top: 50%;
  right: clamp(-1.2rem, -1.1111111111vw + -0.6666666667rem, -1.5rem);
  width: clamp(0.9rem, 0.8333333333vw + 0.5rem, 1.125rem);
  height: clamp(0.9rem, 0.8333333333vw + 0.5rem, 1.125rem);
  background: url("../../images/common/arrow_btn_mod.png") no-repeat center;
  background-size: cover;
  content: "";
  transform: translateY(-50%);
}
footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li a:hover {
  color: #e34e23;
  text-decoration: underline;
}
footer .footer_jma_gp .inner .col02_2 {
  width: 54%;
  max-width: 540px;
}
footer .footer_jma_gp .inner .col02_2 .footer_info_list {
  width: 38.8888888889%;
  max-width: 210px;
}
footer .footer_jma_gp .inner .col02_2 .footer_info_list .title_h4 {
  margin-bottom: clamp(0.55rem, 0.5092592593vw + 0.3055555556rem, 0.6875rem);
  font-weight: 500;
}
footer .footer_jma_gp .inner .col02_2 .footer_info_list a.text_base {
  margin-bottom: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem);
  color: #333333;
  position: relative;
}
footer .footer_jma_gp .inner .col02_2 .footer_info_list a.text_base::after {
  position: absolute;
  top: 50%;
  right: clamp(-1.2rem, -1.1111111111vw + -0.6666666667rem, -1.5rem);
  width: clamp(0.9rem, 0.8333333333vw + 0.5rem, 1.125rem);
  height: clamp(0.9rem, 0.8333333333vw + 0.5rem, 1.125rem);
  background: url("../../images/common/arrow_btn_mod.png") no-repeat center;
  background-size: cover;
  content: "";
  transform: translateY(-50%);
}
footer .footer_jma_gp .inner .col02_2 .footer_info_list a.text_base:hover {
  color: #e34e23;
  text-decoration: underline;
}
footer .footer_jma_gp .inner .col02_2 .logo_info {
  position: relative;
  top: clamp(2.5rem, 2.3148148148vw + 1.3888888889rem, 3.125rem);
  width: 61.1111111111%;
  max-width: 330px;
}
footer .footer_jma_gp .inner .col02_2 .logo_info .title_h4 {
  margin-bottom: clamp(0.6rem, 0.5555555556vw + 0.3333333333rem, 0.75rem);
}
footer .footer_jma_gp .inner .col02_2 .logo_info img {
  width: clamp(8.5rem, 7.8703703704vw + 4.7222222222rem, 10.625rem);
  margin-bottom: clamp(0.55rem, 0.5092592593vw + 0.3055555556rem, 0.6875rem);
}
footer .footer_cb_menu {
  padding: clamp(2.25rem, 2.0833333333vw + 1.25rem, 2.8125rem) 0 clamp(1rem, 0.9259259259vw + 0.5555555556rem, 1.25rem);
}
footer .footer_cb_menu .inner {
  margin-bottom: clamp(0.75rem, 0.6944444444vw + 0.4166666667rem, 0.9375rem);
}
footer .footer_cb_menu .inner .col02_1 {
  width: 28%;
  padding: clamp(1.75rem, 1.6203703704vw + 0.9722222222rem, 2.1875rem) clamp(1.5rem, 1.3888888889vw + 0.8333333333rem, 1.875rem) clamp(2rem, 1.8518518519vw + 1.1111111111rem, 2.5rem);
  background-color: #fdfaf2;
  max-width: 280px;
  border-radius: clamp(1rem, 0.9259259259vw + 0.5555555556rem, 1.25rem);
}
footer .footer_cb_menu .inner .col02_1 .logo_jma {
  margin-bottom: clamp(2rem, 1.8518518519vw + 1.1111111111rem, 2.5rem);
}
footer .footer_cb_menu .inner .col02_1 .icon_phone img {
  position: relative;
  top: clamp(-0.325rem, -0.3009259259vw + -0.1805555556rem, -0.40625rem);
  width: clamp(1.9rem, 1.7592592593vw + 1.0555555556rem, 2.375rem);
  height: clamp(1.3rem, 1.2037037037vw + 0.7222222222rem, 1.625rem);
  margin-right: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem);
}
footer .footer_cb_menu .inner .col02_1 .icon_phone a {
  color: #3f961c;
  font-size: clamp(1.2rem, 1.1111111111vw + 0.6666666667rem, 1.5rem);
}
footer .footer_cb_menu .inner .col02_2 {
  position: relative;
  top: clamp(0.5rem, 0.462962963vw + 0.2777777778rem, 0.625rem);
  width: 68.4%;
  max-width: 684px;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu {
  justify-content: space-between;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li {
  margin-bottom: clamp(1rem, 0.9259259259vw + 0.5555555556rem, 1.25rem);
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li .item_link {
  padding-bottom: clamp(0.3rem, 0.2777777778vw + 0.1666666667rem, 0.375rem);
  color: #333333;
  font-weight: 500;
  transition: 0.2s;
  border-bottom: clamp(0.15rem, 0.1388888889vw + 0.0833333333rem, 0.1875rem) solid transparent;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li .item_link.active {
  color: #e34e23;
  border-bottom: clamp(0.15rem, 0.1388888889vw + 0.0833333333rem, 0.1875rem) solid #e34e23;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li .item_link:hover {
  color: #e34e23;
  border-bottom: clamp(0.15rem, 0.1388888889vw + 0.0833333333rem, 0.1875rem) solid #e34e23;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu01 {
  max-width: 170px;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu01 .btn_mod {
  width: clamp(7.15rem, 6.6203703704vw + 3.9722222222rem, 8.9375rem);
  padding: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem) clamp(1rem, 0.9259259259vw + 0.5555555556rem, 1.25rem) clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem) clamp(1.6rem, 1.4814814815vw + 0.8888888889rem, 2rem);
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu02 {
  max-width: 200px;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu02 .btn_mod {
  width: 100%;
  padding: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem) clamp(0.8rem, 0.7407407407vw + 0.4444444444rem, 1rem);
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 {
  max-width: 250px;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li {
  margin-bottom: clamp(1.5rem, 1.3888888889vw + 0.8333333333rem, 1.875rem);
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li p {
  margin-bottom: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem);
  font-weight: 500;
}
footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li .btn_mod {
  width: 100%;
  padding: clamp(0.4rem, 0.3703703704vw + 0.2222222222rem, 0.5rem) clamp(0.8rem, 0.7407407407vw + 0.4444444444rem, 1rem);
}
footer .footer_cb_menu .footer_text {
  font-size: clamp(0.6rem, 0.5555555556vw + 0.3333333333rem, 0.75rem);
  text-align: center;
  opacity: 0.6;
}
footer::before {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  z-index: -1;
  width: clamp(13.05rem, 12.0833333333vw + 7.25rem, 16.3125rem);
  height: clamp(12.9rem, 11.9444444444vw + 7.1666666667rem, 16.125rem);
  background: url("/casabonita/assets/images/common/footer_icon_flower.png") no-repeat right bottom;
  background-size: clamp(8.5rem, 7.8703703704vw + 4.7222222222rem, 10.625rem) auto;
  content: "";
}

/* For Tablet */
@media only screen and (min-width: 768px) and (max-width: 1200px) {
  footer::before {
    width: clamp(12rem, 11.1111111111vw + 6.6666666667rem, 15rem);
    height: clamp(12rem, 11.1111111111vw + 6.6666666667rem, 15rem);
    background-size: clamp(7.5rem, 6.9444444444vw + 4.1666666667rem, 9.375rem) auto;
  }
}
/* For Mobile */
@media (max-width: 767.9px) {
  footer .text_base {
    font-size: 0.2222222222rem;
  }
  footer .text_lg {
    font-size: 0.2222222222rem;
  }
  footer .btn_mod span {
    font-size: 0.2rem;
  }
  footer .btn_mod span::after {
    right: -0.0888888889rem;
  }
  footer .inner {
    width: 95%;
    max-width: 710px;
  }
  footer .footer_jma_gp {
    padding: 0.3333333333rem 0 0.5333333333rem;
  }
  footer .footer_jma_gp .inner .col02_1 .title_h4,
  footer .footer_jma_gp .inner .col02_2 .title_h4 {
    position: relative;
    left: 0rem;
  }
  footer .footer_jma_gp .inner .col02_1 {
    width: 100%;
    margin-bottom: 0.2222222222rem;
    margin-left: 0;
    max-width: 100%;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info {
    justify-content: center;
    gap: 0.4444444444rem;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list {
    width: 44.4444444444%;
    max-width: 300px;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list .title_h4 {
    margin-bottom: 0.2777777778rem;
    font-size: 0.2444444444rem;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list a.text_base {
    margin-bottom: 0.0888888889rem;
    font-size: 0.2rem;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list a.text_base::after {
    width: 0.2222222222rem;
    height: 0.2222222222rem;
    background-size: cover;
    right: -0.2666666667rem;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list img {
    margin-bottom: 0.0777777778rem;
    width: 90%;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li {
    margin-bottom: 0.0333333333rem;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li a {
    font-size: 0.2rem;
  }
  footer .footer_jma_gp .inner .col02_1 .footer_info .footer_info_list ul li a::after {
    width: 0.2222222222rem;
    height: 0.2222222222rem;
    background-size: cover;
    right: -0.2666666667rem;
  }
  footer .footer_jma_gp .inner .col02_2 {
    width: 100%;
    max-width: 100%;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info {
    justify-content: space-between;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .footer_info_list {
    width: 44.4444444444%;
    margin-left: 0.2222222222rem;
    max-width: 300px;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .footer_info_list .title_h4 {
    margin-bottom: 0.2222222222rem;
    font-size: 0.2444444444rem;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .footer_info_list a.text_base {
    margin-bottom: 0.1111111111rem;
    font-size: 0.2rem;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .footer_info_list a.text_base::after {
    width: 0.2222222222rem;
    height: 0.2222222222rem;
    background-size: cover;
    right: -0.2666666667rem;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .logo_info {
    top: 0.9777777778rem;
    width: 50.3703703704%;
    max-width: 340px;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .logo_info .title_h4 {
    left: 0;
    margin-bottom: 0.1333333333rem;
    font-size: 0.2rem;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .logo_info img {
    width: 2.2222222222rem;
    margin-bottom: 0.1111111111rem;
  }
  footer .footer_jma_gp .inner .col02_2 .footer_info .logo_info .text_base {
    margin-bottom: 0.1333333333rem;
    font-size: 0.1555555556rem;
    letter-spacing: -0.0155555556rem;
  }
  footer .footer_cb_menu {
    padding: 0.6111111111rem 0 0.3333333333rem;
  }
  footer .footer_cb_menu .inner {
    margin-bottom: 0.4444444444rem;
  }
  footer .footer_cb_menu .inner .col02_1 {
    width: 48.8888888889%;
    padding: 1.2222222222rem 0.4444444444rem 0.8888888889rem;
    max-width: 330px;
    border-radius: 0.2222222222rem;
  }
  footer .footer_cb_menu .inner .col02_1 .logo_jma {
    margin-bottom: 0.2777777778rem;
  }
  footer .footer_cb_menu .inner .col02_1 .icon_phone img {
    top: -0.1333333333rem;
    width: 0.5888888889rem;
    height: 0.3888888889rem;
    margin-right: 0.0888888889rem;
  }
  footer .footer_cb_menu .inner .col02_1 .icon_phone a {
    font-size: 0.3333333333rem;
    letter-spacing: 1px;
  }
  footer .footer_cb_menu .inner .col02_1 .text_base {
    margin-bottom: 0.3888888889rem;
    font-size: 0.2rem;
  }
  footer .footer_cb_menu .inner .col02_1 .btn_mod {
    width: 2.6333333333rem;
    margin: 0 auto 0.3333333333rem;
    padding: 0.1111111111rem 0.7555555556rem 0.1111111111rem 0.6444444444rem;
  }
  footer .footer_cb_menu .inner .col02_1 .btn_mod:nth-of-type(2) {
    padding: 0.1222222222rem 0.2444444444rem 0.1222222222rem 0.1777777778rem;
  }
  footer .footer_cb_menu .inner .col02_2 {
    top: 0;
    width: 47.4074074074%;
    max-width: 320px;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu {
    flex-direction: column;
    justify-content: flex-start;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li {
    margin-bottom: 0.1888888889rem;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li .item_link {
    padding-bottom: 0.0444444444rem;
    border-bottom: 0.0333333333rem solid transparent;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li .item_link.active {
    border-bottom: 0.0333333333rem solid #e34e23;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li .item_link:hover {
    border-bottom: 0.0333333333rem solid #e34e23;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .mod_menu li:last-child {
    margin-bottom: 0;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu01,
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu02,
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 {
    width: 100%;
    max-width: 100%;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li {
    margin-bottom: 0.1111111111rem;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li p {
    margin-bottom: 0.1111111111rem;
    font-size: 0.2rem;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li .btn_mod {
    width: 3.1111111111rem;
    padding: 0.1111111111rem 0.2888888889rem 0.1111111111rem 0.2333333333rem;
  }
  footer .footer_cb_menu .inner .col02_2 .footer_menu .footer_menu03 li:last-child {
    margin-bottom: 0;
  }
  footer .footer_cb_menu .footer_text {
    font-size: 0.2rem;
    letter-spacing: 0.8px;
  }
  footer::before {
    bottom: -0.1333333333rem;
    width: 0.8888888889rem;
    height: 1.8222222222rem;
    background: url("/casabonita/assets/images/common/footer_icon_flower_sp.png") no-repeat right bottom;
    background-size: 0.8888888889rem auto;
  }
}
/* ----------------------------------------
   Page Top Button
---------------------------------------- */
#page_top {
  position: fixed;
  right: clamp(3rem, 2.7777777778vw + 1.6666666667rem, 3.75rem);
  bottom: clamp(3rem, 2.7777777778vw + 1.6666666667rem, 3.75rem);
  z-index: 100;
  display: none;
}
#page_top.is_visible {
  display: block;
}
#page_top a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(3rem, 2.7777777778vw + 1.6666666667rem, 3.75rem);
  height: clamp(3rem, 2.7777777778vw + 1.6666666667rem, 3.75rem);
  border-radius: 50%;
  background-color: #ea8a21;
  text-decoration: none;
  transition: background-color 0.2s, opacity 0.2s;
  opacity: 0.9;
}
#page_top a:hover {
  background-color: #e34e23;
  opacity: 1;
}
#page_top .page_top_arrow {
  display: block;
  width: clamp(0.6rem, 0.5555555556vw + 0.3333333333rem, 0.75rem);
  height: clamp(0.6rem, 0.5555555556vw + 0.3333333333rem, 0.75rem);
  margin-bottom: clamp(0.1rem, 0.0925925926vw + 0.0555555556rem, 0.125rem);
  border-top: clamp(0.1rem, 0.0925925926vw + 0.0555555556rem, 0.125rem) solid #ffffff;
  border-right: clamp(0.1rem, 0.0925925926vw + 0.0555555556rem, 0.125rem) solid #ffffff;
  transform: rotate(-45deg);
  margin-top: clamp(0.2rem, 0.1851851852vw + 0.1111111111rem, 0.25rem);
}
#page_top .page_top_text {
  display: block;
  color: #ffffff;
  font-size: clamp(0.5rem, 0.462962963vw + 0.2777777778rem, 0.625rem);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
}

/* Page Top — Mobile */
@media (max-width: 767.9px) {
  #page_top {
    right: 0.2222222222rem;
    bottom: 0.2222222222rem;
  }
  #page_top a {
    width: 0.7777777778rem;
    height: 0.7777777778rem;
  }
  #page_top .page_top_arrow {
    width: 0.1555555556rem;
    height: 0.1555555556rem;
    border-top-width: 0.0222222222rem;
    border-right-width: 0.0222222222rem;
    margin-bottom: 0.0222222222rem;
    margin-top: 0.0555555556rem;
  }
  #page_top .page_top_text {
    font-size: 0.1777777778rem;
  }
}

/*# sourceMappingURL=footer.css.map */
