@charset "UTF-8";
/* aタグ設定
------------------------------------- */
a:hover,
.alpha {
  opacity: 0.75;
}

a {
  transition-property: all;
  transition-duration: 0.3s;
  transition-timing-function: ease;
  transition-delay: 0s;
  text-decoration: none;
}

/* 基本設定
------------------------------------- */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  -webkit-text-size-adjust: 100%;
  font-size: 1.4rem;
  /* =14px */
  font-family: "Zen Kaku Gothic New", sans-serif;
}

ul {
  list-style: none;
}

/* レスポンシブ設定
------------------------------------- */
.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
#header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
}
#header .header_contents {
  display: flex;
  align-items: flex-start;
  width: 100%;
  padding: 3.4722222222vw 10.0694444444vw 3.4722222222vw 2.7777777778vw;
}
@media screen and (max-width: 768px) {
  #header .header_contents {
    align-items: center;
    padding: 5.3333333333vw 18.6666666667vw 5.3333333333vw 5.3333333333vw;
  }
}
#header .header_contents .logo {
  display: block;
  width: 11.1111111111vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  #header .header_contents .logo {
    width: 26.6666666667vw;
  }
}
#header .header_contents .logo img {
  width: 100%;
  height: auto;
}
#header .header_contents nav {
  margin-left: auto;
}
#header .header_contents nav ul {
  display: flex;
  align-items: center;
  gap: 2.0833333333vw;
  padding: 1.3888888889vw 2.7777777778vw;
  background-color: #fff;
  border-radius: 6.9444444444vw;
}
#header .header_contents nav ul li a {
  font-size: 1.1111111111vw;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  color: #482b1b;
}
#header .header_contents .recruitment_btn {
  margin-left: 1.7361111111vw;
  width: 10.5555555556vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  #header .header_contents .recruitment_btn {
    width: 28.2666666667vw;
    margin-left: auto;
    margin-top: -0.5333333333vw;
  }
}
#header .header_contents .recruitment_btn img {
  width: 100%;
  height: auto;
}
#header .contact_btn {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 9.7222222222vw;
  right: 2.7777777778vw;
  width: 5.5555555556vw;
  height: 5.5555555556vw;
  background-color: #0d7b30;
  border-radius: 100%;
  z-index: 100;
}
@media screen and (max-width: 768px) {
  #header .contact_btn {
    top: 21.3333333333vw;
    right: 2.6666666667vw;
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
}
#header .contact_btn img {
  width: 2.2916666667vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  #header .contact_btn img {
    width: 5.3333333333vw;
  }
}

.hamburger_btn {
  position: fixed;
  top: 2.7777777778vw;
  right: 2.7777777778vw;
  width: 5.5555555556vw;
  height: 5.5555555556vw;
  background-color: #c33a3a;
  border-radius: 100%;
  z-index: 120;
}
@media screen and (max-width: 768px) {
  .hamburger_btn {
    top: 5.3333333333vw;
    right: 2.6666666667vw;
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
}
.hamburger_btn.on span {
  opacity: 0;
}
.hamburger_btn.on::before {
  top: calc(50% - 0vw);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.hamburger_btn.on::after {
  top: calc(50% + 0vw);
  transform: translate(-50%, -50%) rotate(45deg);
}
.hamburger_btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2.2222222222vw;
  height: 0.2083333333vw;
  border-radius: 0.2083333333vw;
  background-color: #fff;
  opacity: 1;
  transition: 0.5s;
}
@media screen and (max-width: 768px) {
  .hamburger_btn span {
    width: 5.3333333333vw;
    height: 0.5333333333vw;
    border-radius: 0.8vw;
  }
}
.hamburger_btn::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.6944444444vw);
  left: 50%;
  transform: translate(-50%, -50%) rotate(0);
  width: 2.2222222222vw;
  height: 0.2083333333vw;
  border-radius: 0.2083333333vw;
  background-color: #fff;
  transition: 0.5s;
}
@media screen and (max-width: 768px) {
  .hamburger_btn::before {
    top: calc(50% - 1.8666666667vw);
    width: 5.3333333333vw;
    height: 0.5333333333vw;
    border-radius: 0.8vw;
  }
}
.hamburger_btn::after {
  content: "";
  position: absolute;
  top: calc(50% + 0.6944444444vw);
  left: 50%;
  transform: translate(-50%, -50%) rotate(0);
  width: 2.2222222222vw;
  height: 0.2083333333vw;
  border-radius: 0.2083333333vw;
  background-color: #fff;
  transition: 0.5s;
}
@media screen and (max-width: 768px) {
  .hamburger_btn::after {
    top: calc(50% + 1.8666666667vw);
    width: 5.3333333333vw;
    height: 0.5333333333vw;
    border-radius: 0.8vw;
  }
}

.menu_contents {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: rgba(50, 43, 14, 0.3);
}
@media screen and (max-width: 768px) {
  .menu_contents {
    background-color: initial;
  }
}
.menu_contents .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.6944444444vw;
  width: -moz-fit-content;
  width: fit-content;
  height: 100%;
  padding: 2.7777777778vw 8.6805555556vw;
  margin-left: auto;
  background-color: #fff;
  overflow: auto;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner {
    width: 100%;
    gap: 2.6666666667vw;
    padding: 17.3333333333vw 5.3333333333vw;
    height: 100%;
    align-items: flex-start;
    justify-content: flex-start;
  }
}
.menu_contents .inner nav {
  width: 20.4861111111vw;
  margin-bottom: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner nav {
    width: 100%;
    margin-bottom: 16vw;
  }
}
.menu_contents .inner nav ul {
  width: 100%;
}
.menu_contents .inner nav ul li {
  width: 100%;
}
.menu_contents .inner nav ul li a {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.9722222222vw;
  padding: 1.3888888889vw 0;
  border-bottom: 0.1388888889vw dashed #c5bbaf;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner nav ul li a {
    gap: 3.2vw;
    padding: 4.8vw 0;
    border-bottom: 0.5333333333vw dashed #c5bbaf;
  }
}
.menu_contents .inner nav ul li a img {
  width: 1.3888888889vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner nav ul li a img {
    width: 5.3333333333vw;
  }
}
.menu_contents .inner nav ul li a span {
  font-size: 1.25vw;
  letter-spacing: 0;
  line-height: 1;
  font-weight: 700;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner nav ul li a span {
    font-size: 4.2666666667vw;
  }
}
.menu_contents .inner .recruitment_information_btn {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6.9444444444vw;
  background-color: #f2c81c;
  border: 0.1388888889vw dashed #482b1b;
  padding: 1.3888888889vw;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner .recruitment_information_btn {
    border-radius: 26.6666666667vw;
    border: 0.5333333333vw dashed #482b1b;
    padding: 5.3333333333vw;
  }
}
.menu_contents .inner .recruitment_information_btn span {
  font-size: 1.1111111111vw;
  letter-spacing: 0;
  line-height: 1;
  font-weight: 700;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner .recruitment_information_btn span {
    font-size: 3.7333333333vw;
  }
}
.menu_contents .inner .contact_btn {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.6944444444vw;
  gap: 0.6944444444vw;
  background-color: #0d7b30;
  padding: 1.3888888889vw;
  border-radius: 6.9444444444vw;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner .contact_btn {
    margin-top: 2.6666666667vw;
    gap: 2.6666666667vw;
    padding: 5.3333333333vw;
    border-radius: 26.6666666667vw;
  }
}
.menu_contents .inner .contact_btn span {
  font-size: 1.1111111111vw;
  letter-spacing: 0;
  line-height: 1;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner .contact_btn span {
    font-size: 3.7333333333vw;
  }
}
.menu_contents .inner .contact_btn img {
  width: 1.3888888889vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  .menu_contents .inner .contact_btn img {
    width: 5.3333333333vw;
  }
}

.common_page .fv {
  padding: 5.5555555556vw 5.5555555556vw 4.1666666667vw;
  background-color: #fff;
  border-bottom: 0.1388888889vw dashed #c5bbaf;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  .common_page .fv {
    padding: 16vw 5.3333333333vw;
    border-bottom: 0.5333333333vw dashed #c5bbaf;
  }
}
.common_page .fv .inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.7777777778vw;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner {
    flex-direction: column;
    gap: 5.3333333333vw;
    justify-content: flex-start;
  }
}
.common_page .fv .inner .box .breadcrumbs_list {
  display: flex;
  align-items: center;
  gap: 0.9027777778vw;
  font-size: 0.9722222222vw;
  font-weight: 500;
  color: #482b1b;
  margin-bottom: 0.8333333333vw;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .box .breadcrumbs_list {
    gap: 2.6666666667vw;
    font-size: 3.7333333333vw;
    margin-bottom: 5.3333333333vw;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}
.common_page .fv .inner .box .breadcrumbs_list .link {
  display: flex;
  align-items: center;
  gap: 0.2777777778vw;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .box .breadcrumbs_list .link {
    gap: 1.0666666667vw;
  }
}
.common_page .fv .inner .box .breadcrumbs_list .link img {
  width: 1.1111111111vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .box .breadcrumbs_list .link img {
    width: 3.7333333333vw;
  }
}
.common_page .fv .inner .box .breadcrumbs_list .link span {
  color: #482b1b;
  text-decoration: underline;
}
.common_page .fv .inner .box h1 {
  font-size: 2.5vw;
  line-height: 1.8;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .box h1 {
    font-size: 8vw;
    text-align: center;
    line-height: 1.5;
  }
}
.common_page .fv .inner .page_link_list {
  max-width: 58.3333333333vw;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .page_link_list {
    max-width: initial;
    width: 100%;
  }
}
.common_page .fv .inner .page_link_list ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.3472222222vw;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .page_link_list ul {
    justify-content: flex-start;
    gap: 1.3333333333vw;
  }
}
.common_page .fv .inner .page_link_list ul li a {
  display: flex;
  align-items: center;
  gap: 0.2777777778vw;
  padding: 1.25vw 1.3888888889vw;
  border: 0.0694444444vw solid #482b1b;
  border-radius: 0 1.0416666667vw 0 0;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .page_link_list ul li a {
    gap: 1.0666666667vw;
    padding: 2.6666666667vw 4vw;
    border: 0.2666666667vw solid #482b1b;
  }
}
.common_page .fv .inner .page_link_list ul li a img {
  width: 1.1111111111vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .page_link_list ul li a img {
    width: 3.7333333333vw;
  }
}
.common_page .fv .inner .page_link_list ul li a span {
  font-size: 0.9722222222vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  .common_page .fv .inner .page_link_list ul li a span {
    font-size: 3.2vw;
  }
}

.common_sec .ttl_box {
  width: -moz-fit-content;
  width: fit-content;
}
.common_sec .ttl_box.mid {
  margin: 0 auto;
}
.common_sec .ttl_box h2 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.9444444444vw;
  font-weight: 500;
  line-height: 1.8;
  padding-bottom: 0.2083333333vw;
  margin-bottom: 3.4722222222vw;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  .common_sec .ttl_box h2 {
    font-size: 6.9333333333vw;
    padding-bottom: 0.8vw;
    margin-bottom: 10.6666666667vw;
  }
}
.common_sec .ttl_box h2::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  height: 0.2083333333vw;
  background-image: url("/assets/images/ttl_border.svg");
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .common_sec .ttl_box h2::before {
    height: 0.8vw;
  }
}

.wavy_line_top {
  position: relative;
}
.wavy_line_top::before {
  position: absolute;
  top: -1px;
  left: 0;
  content: "";
  width: 100%;
  height: 4.0277777778vw;
  background-image: url("/assets/images/wavy_line_white.svg");
  background-position: center;
  background-size: cover;
  z-index: 90;
}
.wavy_line_bottom {
  position: relative;
}
.wavy_line_bottom::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: "";
  width: 100%;
  height: 4.0277777778vw;
  background-image: url("/assets/images/wavy_line_white.svg");
  background-position: center;
  background-size: cover;
  transform: rotate(180deg);
  z-index: 90;
}
.section_border {
  width: 100%;
  height: auto;
  border-top: 0.1388888889vw dashed #c5bbaf;
}
@media screen and (max-width: 768px) {
  .section_border {
    border-top: 0.5333333333vw dashed #c5bbaf;
  }
}

.affiliated_clinic {
  padding: 3.4722222222vw 0 8.3333333333vw;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic {
    padding: 16vw 5.3333333333vw;
  }
}
.affiliated_clinic .inner {
  width: 70.5555555556vw;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner {
    width: 100%;
  }
}
.affiliated_clinic .inner .clinic_list {
  width: 100%;
}
.affiliated_clinic .inner .clinic_list ul {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.7361111111vw;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul {
    gap: 6.6666666667vw;
  }
}
.affiliated_clinic .inner .clinic_list ul li {
  display: flex;
  width: 100%;
  height: 19.4444444444vw;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li {
    height: auto;
    flex-direction: column;
  }
}
.affiliated_clinic .inner .clinic_list ul li .img {
  width: 31.9444444444vw;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .img {
    width: 100%;
    height: auto;
  }
}
.affiliated_clinic .inner .clinic_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .img img {
    width: 100%;
    height: auto;
  }
}
.affiliated_clinic .inner .clinic_list ul li .text_box {
  width: calc(100% - 31.9444444444vw);
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 1.3888888889vw 5.5555555556vw;
  color: #482b1b;
  background-color: #faf8f0;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .text_box {
    width: 100%;
    padding: 10.6666666667vw 5.3333333333vw;
  }
}
.affiliated_clinic .inner .clinic_list ul li .text_box .clinic_name {
  font-size: 1.3888888889vw;
  line-height: 1;
  font-weight: 500;
  margin-bottom: 1.3888888889vw;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .text_box .clinic_name {
    font-size: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.affiliated_clinic .inner .clinic_list ul li .text_box .text {
  font-size: 1.1111111111vw;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1.0416666667vw;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .text_box .text {
    font-size: 4.2666666667vw;
    margin-bottom: 4vw;
  }
}
.affiliated_clinic .inner .clinic_list ul li .text_box .link {
  display: flex;
  align-items: center;
  gap: 1.3888888889vw;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .text_box .link {
    gap: 5.3333333333vw;
  }
}
.affiliated_clinic .inner .clinic_list ul li .text_box .link span {
  font-size: 1.25vw;
  line-height: 1.8;
  font-weight: 500;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .text_box .link span {
    font-size: 4.8vw;
  }
}
.affiliated_clinic .inner .clinic_list ul li .text_box .link img {
  width: 2.8472222222vw;
  height: 2.8472222222vw;
  padding: 0.9027777778vw;
  background-color: #0d7b30;
  border-radius: 100%;
}
@media screen and (max-width: 768px) {
  .affiliated_clinic .inner .clinic_list ul li .text_box .link img {
    width: 10.9333333333vw;
    height: 10.9333333333vw;
    padding: 3.4666666667vw;
  }
}

#footer .contact_box {
  padding: 6.25vw 0 6.9444444444vw;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  #footer .contact_box {
    padding: 24vw 5.3333333333vw 24vw;
  }
}
#footer .contact_box .inner {
  width: 88.8888888889vw;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner {
    width: 100%;
  }
}
#footer .contact_box .inner .ttl_box {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .ttl_box {
    margin-bottom: 21.3333333333vw;
  }
}
#footer .contact_box .inner .ttl_box h2 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.9444444444vw;
  font-weight: 500;
  line-height: 1.8;
  padding-bottom: 0.2083333333vw;
  color: #482b1b;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .ttl_box h2 {
    font-size: 4.8vw;
    padding-bottom: 0.8vw;
  }
}
#footer .contact_box .inner .ttl_box h2::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  height: 0.2083333333vw;
  background-image: url("/assets/images/ttl_border.svg");
  background-position: center;
  background-size: cover;
}
#footer .contact_box .inner .contact_flow_list {
  display: flex;
  align-items: flex-start;
  gap: 2.7777777778vw;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list {
    flex-direction: column;
    gap: 10.6666666667vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(50% - 1.3888888889vw);
  height: 15.1388888889vw;
  padding: 1.3888888889vw 1.3888888889vw;
  border-radius: 0 4.1666666667vw 0 0;
  border: 0.0694444444vw solid #482b1b;
  color: #482b1b;
  background-color: #faf8f0;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel {
    width: 100%;
    height: 65.6vw;
    padding: 10.6666666667vw;
    border-radius: 0 16vw 0 0;
    border: 0.2666666667vw solid #482b1b;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel .list_ttl {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 0.9722222222vw;
  font-weight: 500;
  line-height: 1.8;
  padding-bottom: 0.2083333333vw;
  margin: 0 auto 0.6944444444vw;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel .list_ttl {
    font-size: 3.7333333333vw;
    padding-bottom: 0.8vw;
    margin-bottom: 4vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel .list_ttl::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  height: 0.2083333333vw;
  background-image: url("/assets/images/ttl_border.svg");
  background-position: center;
  background-size: cover;
}
#footer .contact_box .inner .contact_flow_list .contact_tel .list_ttl span {
  color: #0d7b30;
}
#footer .contact_box .inner .contact_flow_list .contact_tel .tel_text {
  text-align: center;
  font-size: 2.5vw;
  letter-spacing: 0.02em;
  line-height: 1;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel .tel_text {
    font-size: 8.5333333333vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel .border {
  width: 22.5vw;
  height: auto;
  border-top: 0.1388888889vw dashed #c5bbaf;
  margin: 1.3888888889vw auto;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel .border {
    width: 100%;
    border-top: 0.5333333333vw dashed #c5bbaf;
    margin: 5.3333333333vw 0;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel .text {
  text-align: center;
  font-size: 0.9722222222vw;
  line-height: 1.6;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel .text {
    font-size: 3.2vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel .icon {
  position: absolute;
  top: 50%;
  right: 2.7777777778vw;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.1666666667vw;
  height: 4.1666666667vw;
  background-color: #fff;
  border: 0.0694444444vw solid #482b1b;
  border-radius: 100%;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel .icon {
    top: 0%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 14.9333333333vw;
    height: 14.9333333333vw;
    border: 0.2666666667vw solid #482b1b;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_tel .icon img {
  width: 1.875vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_tel .icon img {
    width: 6.9333333333vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_web {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(50% - 1.3888888889vw);
  height: 15.1388888889vw;
  padding: 1.3888888889vw 1.3888888889vw;
  border-radius: 0 4.1666666667vw 0 0;
  border: 0.0694444444vw solid #482b1b;
  color: #482b1b;
  background-color: #fff;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_web {
    width: 100%;
    height: 42.6666666667vw;
    padding: 10.6666666667vw;
    border-radius: 0 16vw 0 0;
    border: 0.2666666667vw solid #482b1b;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_web .list_ttl {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.3888888889vw;
  font-weight: 500;
  line-height: 1.8;
  padding-bottom: 0.2083333333vw;
  margin: 0 auto 1.3888888889vw;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_web .list_ttl {
    font-size: 3.7333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_web .list_ttl::before {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  height: 0.2083333333vw;
  background-image: url("/assets/images/ttl_border.svg");
  background-position: center;
  background-size: cover;
}
#footer .contact_box .inner .contact_flow_list .contact_web .list_ttl span {
  color: #0d7b30;
}
#footer .contact_box .inner .contact_flow_list .contact_web .text {
  width: 22.2222222222vw;
  font-size: 0.9722222222vw;
  line-height: 1.6;
  font-weight: 500;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_web .text {
    text-align: center;
    width: 100%;
    font-size: 3.2vw;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_web .icon {
  position: absolute;
  top: 50%;
  right: 2.7777777778vw;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.1666666667vw;
  height: 4.1666666667vw;
  background-color: #fff;
  border-radius: 100%;
  background-color: #0d7b30;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_web .icon {
    top: 0%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 14.9333333333vw;
    height: 14.9333333333vw;
    border: 0.2666666667vw solid #482b1b;
  }
}
#footer .contact_box .inner .contact_flow_list .contact_web .icon img {
  width: 1.875vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  #footer .contact_box .inner .contact_flow_list .contact_web .icon img {
    width: 6.1333333333vw;
  }
}
#footer .bottom_box {
  padding: 6.9444444444vw 5.5555555556vw 5.5555555556vw;
  background-color: #faf8f0;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box {
    padding: 21.3333333333vw 8vw;
  }
}
#footer .bottom_box .inner {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 19.0972222222vw;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner {
    height: auto;
  }
}
#footer .bottom_box .inner .left_content {
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content {
    width: 100%;
  }
}
#footer .bottom_box .inner .left_content .logo {
  width: 7.2916666667vw;
  height: auto;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .logo {
    width: 28vw;
    margin: 0 auto 10.6666666667vw;
  }
}
#footer .bottom_box .inner .left_content .logo img {
  width: 100%;
  height: auto;
}
#footer .bottom_box .inner .left_content .address {
  display: flex;
  align-items: center;
  margin-top: 1.3888888889vw;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .address {
    margin-top: 0;
  }
}
#footer .bottom_box .inner .left_content .address span {
  font-size: 0.8333333333vw;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .address span {
    font-size: 3.2vw;
  }
}
#footer .bottom_box .inner .left_content .address img {
  width: 0.8333333333vw;
  height: auto;
  margin-left: 0.8333333333vw;
  margin-right: 0.4166666667vw;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .address img {
    width: 3.2vw;
    margin: 0 1.6vw 0 3.2vw;
  }
}
#footer .bottom_box .inner .left_content .address a {
  font-size: 1.1111111111vw;
  line-height: 1.8;
  text-decoration: underline;
  color: #482b1b;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .address a {
    font-size: 3.7333333333vw;
  }
}
#footer .bottom_box .inner .left_content .tel {
  font-size: 0.9722222222vw;
  line-height: 1.8;
  font-weight: 500;
  margin-bottom: 1.1111111111vw;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .tel {
    font-size: 3.7333333333vw;
    margin-bottom: 6.6666666667vw;
  }
}
#footer .bottom_box .inner .left_content .tel a {
  color: #0d7b30;
  text-decoration: underline;
}
#footer .bottom_box .inner .left_content .link {
  display: flex;
  align-items: center;
  gap: 1.1111111111vw;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .link {
    gap: 4.2666666667vw;
  }
}
#footer .bottom_box .inner .left_content .link li a {
  font-size: 0.9722222222vw;
  font-weight: 700;
  line-height: 1;
  color: #482b1b;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .left_content .link li a {
    font-weight: 500;
    font-size: 3.7333333333vw;
  }
}
#footer .bottom_box .inner .right_content {
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media screen and (max-width: 768px) {
  #footer .bottom_box .inner .right_content {
    display: none;
  }
}
#footer .bottom_box .inner .right_content .link_list {
  width: 32.2916666667vw;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.7361111111vw 2.0833333333vw;
}
#footer .bottom_box .inner .right_content .link_list li {
  width: calc(33.33% - 1.3888888889vw);
}
#footer .bottom_box .inner .right_content .link_list li a {
  display: flex;
  align-items: center;
  gap: 0.8333333333vw;
}
#footer .bottom_box .inner .right_content .link_list li a img {
  width: 1.3888888889vw;
  height: auto;
}
#footer .bottom_box .inner .right_content .link_list li a span {
  font-size: 1.25vw;
  font-weight: 500;
  color: #482b1b;
  white-space: nowrap;
}
#footer .bottom_box .inner .right_content .copyright {
  text-align: end;
  margin-top: auto;
  font-size: 0.8333333333vw;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  #footer .copyright {
    background-color: #fff;
    padding: 10.6666666667vw 5.3333333333vw;
    border-top: 0.8vw dashed #482b1b;
  }
}
#footer .copyright p {
  text-align: center;
}
@media screen and (max-width: 768px) {
  #footer .copyright p {
    font-size: 3.2vw;
  }
}/*# sourceMappingURL=common.css.map */