footer .logo {
  width: auto !important;
  max-width: 220px !important; 
  height: auto !important;
  display: inline-block !important;
  vertical-align: top !important;
  margin-bottom: 7px !important; /* 2/3: 10 → 7 */
}
footer .logo img {
  height:166px !important; /* 2/3: 200 → 166 */
  max-width: 100% !important;
  object-fit: contain !important;
  display: block !important;
}
footer .crm_inquiry_form_boxcustom_inquiry_form_1778658759233274 .inqury_submit {
  background-color: var(--color-second);
  border-radius: 10px;
}
footer .crm_inquiry_form_boxcustom_inquiry_form_1778658759233274 .inqury_title_box {
  padding: 0;
}
footer .crm_inquiry_form_boxcustom_inquiry_form_1778658759233274 .inqury-form .input-wrap {
  padding: 5px;
}
.crm_inquiry_form_boxcustom_inquiry_form_1778658759233274 .inqury_title_box .inqury_title_text {
  color: #ffffff !important;
}
.mb-32 {
  margin-bottom:21px; /* 2/3: 32 → 21 */
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mb-32 {
    margin-bottom: 17px; /* 2/3: 26 → 17 */
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mb-32 {
    margin-bottom: 15px; /* 2/3: 22 → 15 */
  }
}
@media (max-width: 767px) {
  .mb-32 {
    margin-bottom: 12px; /* 2/3: 18 → 12 */
  }
}
.mb-48 {
  margin-bottom:32px; /* 2/3: 48 → 32 */
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mb-48 {
    margin-bottom: 28px; /* 2/3: 42 → 28 */
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mb-48 {
    margin-bottom: 21px; /* 2/3: 32 → 21 */
  }
}
@media (max-width: 767px) {
  .mb-48 {
    margin-bottom: 16px; /* 2/3: 24 → 16 */
  }
  footer .footer-bottom p {
    font-size: 15px !important;
  }
}
/*-------------------------
    Buttons
  -------------------------*/
footer .cus-btn.primary {
  padding: 8px 21px; /* 2/3: 12→8, 32→21 */
  text-align: center;
  font-weight: 700;
  font-size: 18px; /* 略缩小*/
  line-height: 140%;
  border-radius: 24px; /* 2/3: 32→24 */
  border: 0;
  color: #fafafa;
  cursor: pointer;
  background-color:var(--color-primary);
  font-family: var(--title-font-family);
}
footer .cus-btn:hover {
  background-color: var(--bg-color);
  color: var(--color-primary);
}
footer {
  background-color: #000000;
}
footer .b {
  font-family: var(--title-font-family);
  font-style: normal;
  font-weight: 400;
}
footer .color-primary {
  color: #ffffff;
}
footer .content {
  padding: 20px 0 12px; /* 2/3: 30→20, 18→12 */
}
@media (max-width: 575px) {
  footer .content {
    padding: 47px 11px 43px; /* 2/3: 71→47, 64→43 */
  }
}
footer .content .about p {
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 0.03em;
  color: #ffffff;
  width: 80%;
  margin: 32px 0 64px; /* 2/3: 48→32, 96→64 */
}
@media (max-width: 1199px) {
  footer .content .about p {
    width: 95%;
    margin: 32px 0; /* 2/3: 48→32 */
  }
}
@media (max-width: 492px) {
  footer .content .about p {
    width: 100%;
  }
}
footer .content .about .social-icons {
  list-style: none;
  padding-left: 0;
}
footer .content .about p {
  word-wrap: break-word;
  overflow-wrap: break-word;
}
@media (max-width: 1199px) {
  footer .content .about .social-icons {
    margin-bottom: 43px; /* 2/3: 64→43 */
  }
}
footer .content .about .social-icons li {
  display: inline;
  margin-right: 21px; /* 2/3: 32→21 */
}
footer .content .about .social-icons li:last-child {
  margin-right: 0;
}
footer .content .about .social-icons li i {
  color: #ffffff;
  font-size: 24px;
}
footer .content .about .social-icons li i:hover {
  color: #E85221;
}
footer .content .contact ul {
  list-style: none;
  padding-left: 0;
  padding-top: 67px; /* 2/3: 100→67 */
}
footer .content .contact ul li {
  margin-bottom: 13px; /* 2/3: 20→13 */
  font-weight: 700;
  font-size: 18px;
  line-height: 140%;
  color: #000000;
}
footer .content .contact ul li.woicon {
  margin-left: 21px; /* 2/3: 32→21 */
}
footer .content .contact ul li span {
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 0.03em;
  color: #ffffff;
}
footer .content .contact ul li span b {
  font-weight: 700;
  font-size: 18px; /* 略缩小 */
  line-height: 140%;
}
footer .content .contact ul li i {
  margin-right: 8px;
  color: #ffffff;
  font-size: 24px;
}
footer .content .contact ul li span {
  max-width: 330px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
footer .content .contact ul li a {
  font-family: var(--title-font-family);
  word-wrap: break-word;
  overflow-wrap: break-word;
  color: #ffffff;
}
footer .content .contact ul li a:hover {
  color: #E85221;
}
footer .footer-bottom {
  background-color: #0d0d0d !important; 
  height: auto !important;              
  line-height: 1.2 !important;
  padding: 10px 0 !important;
}
footer .footer-bottom p {
  text-align: center;
  padding: 0 10px !important;    
  margin: 0 !important; /* 2/3: 20→13 */
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.03em;
  color: #fafafa;
}
footer .footer-bottom p a:hover {
  color: #E85221;
}
footer .float-end {
  float: right !important;
}