@charset "UTF-8";
/*---個別に必要なcssを追記----*/
:root {
  --font_size_25: max(25px, 1.83vw);
  --font_size_18: max(18px, 1.32vw);
  --font_size_17: max(17px, 1.24vw);
  --font_size_16: max(16px, 1.17vw);
  --font_size_15: max(15px, 1.10vw);
  --font_size_13: max(13px, 1.17vw);
  --margin_50: max(50px, 3.66vw);
  --margin_60: max(60px, 4.39vw);
  --margin_30: max(30px, 2.20vw);
  --margin_80: max(80px, 5.86vw);
  --contact_50: max(50px, 3.51vw);
  --margin_120: max(120px, 8.78vw);
  --margin_160: max(160px, 11.71vw);
  --gap_30: max(30px, 2.20vw);
  --width20: max(22px, 1.61vw);
}

@media screen and (max-width: 770px) {
  :root {
    --font_size_25: max(17px, 4.53vw);
    --font_size_18: max(13px, 3.47vw);
    --font_size_17: max(13px, 3.73vw);
    --font_size_16: max(12px, 3.2vw);
    --font_size_16: max(14px, 3.73vw);
    --font_size_13: max(11px, 1.17vw);
    --margin_50: max(40px, 10.67vw);
    --margin_60: max(45px, 12vw);
    --margin_30: max(25px, 6.67vw);
    --margin_80: max(40px, 10.67vw);
    --contact_50: max(48px, 12.8vw);
    --margin_120: max(60px, 16vw);
    --margin_160: max(100px, 26.67vw);
    --gap_30: max(25px, 6.67vw);
    --width20: max(18px, 4.8vw);
  }
}
main {
  max-width: 100%;
  margin: 0 auto;
  padding-top: max(110px, 8.05vw);
}
main * {
  font-family: MFW-YuGoPr6N-Medium, "游ゴシック体 Pr6N M", "Yu Gothic Pr6N M", YuGothic, "游ゴシック体 Medium", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック体, 游ゴシック, "Yu Gothic", "ヒラギノ角ゴ Pro W3", Arial, Helvetica, メイリオ, Meiryo, "ＭＳ ゴシック", sans-serif;
}
main img {
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
  transition: transform 0.35s;
}
main .container {
  width: 93%;
  max-width: max(1100px, 80.53vw);
  margin: 0 auto;
}
main section {
  width: 100%;
  height: auto;
}
main .introArea {
  margin-bottom: var(--margin_70);
}
main .introArea .fv_img_box {
  width: 100%;
  max-width: max(800px, 58.57vw);
  margin: var(--margin_60) auto;
}
@media screen and (max-width: 770px) {
  main .introArea .fv_img_box {
    margin-top: max(25px, 6.67vw);
  }
}
main .introArea h1 {
  font-size: var(--font_size_25);
  margin-bottom: var(--margin_30);
  line-height: 1.65;
}
main .introArea p {
  font-size: var(--font_size_16);
  margin-bottom: var(--margin_80);
}
main .introArea p span.bold {
  font-size: var(--font_size_18);
  color: #AF1515;
}
main .aboutArea {
  margin-bottom: var(--margin_70);
}
main .aboutArea dl {
  margin-bottom: var(--margin_50);
}
main .aboutArea dl dt {
  font-size: var(--font_size_17);
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  line-height: 1.8;
}
main .aboutArea dl dt::before {
  content: "";
  width: var(--small_font);
  height: auto;
  display: block;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #1C1C1C;
  margin-right: clamp(5px, 3.565px + 0.383vw, 9px);
}
main .aboutArea dl dd {
  font-size: var(--font_size_17);
  line-height: 1.8;
}
main .aboutArea dl small {
  font-size: var(--small_font);
  display: block;
  line-height: 1.63;
}
main .aboutArea p.bold {
  font-size: var(--font_size_17);
  line-height: 1.8;
  margin-top: var(--margin_80);
}
main .aboutArea p.bold a {
  font-size: var(--font_size_19);
  text-decoration: underline;
  transition: opacity 0.35s;
}
main .aboutArea p.bold a:hover {
  opacity: 0.7;
}
main .aboutArea .btnBlock {
  margin: var(--margin_120) auto var(--margin_160);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--gap_30);
}
@media screen and (max-width: 770px) {
  main .aboutArea .btnBlock {
    flex-direction: column;
    align-items: unset;
    width: 76%;
  }
}
main .aboutArea .btnBlock .base_btn {
  margin: 0;
  padding: 1.5em 2em;
  background-color: #AF1515;
}
main .aboutArea .btnBlock .base_btn::after {
  background-color: #FFFFFF;
}
main .aboutArea .btnBlock .base_btn span {
  color: #FFFFFF;
  font-size: var(--font_size_15);
}
main .aboutArea .btnBlock .base_btn:hover span {
  color: #AF1515;
}
main .contactArea {
  margin-bottom: var(--section_margin);
}
main .contactArea .container {
  border-top: #DADDD8 solid 1px;
}
main .contactArea .inner {
  padding-top: var(--section_margin);
  max-width: max(800px, 58.57vw);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 50% 50%;
}
@media screen and (max-width: 770px) {
  main .contactArea .inner {
    grid-template-columns: 100%;
    grid-template-rows: auto auto;
  }
}
main .contactArea .inner_left {
  width: 100%;
}
main .contactArea .inner_left .headline {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
}
main .contactArea .inner_left .headline h2 {
  color: #B0B2AF;
  font-size: var(--contact_50);
  line-height: 1;
  margin-bottom: var(--small_font);
}
main .contactArea .inner_left .headline p {
  font-size: var(--font_size_14);
  line-height: 1;
}
main .contactArea .tel_mail {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  justify-content: end;
  padding-top: var(--list_margin);
}
@media screen and (max-width: 770px) {
  main .contactArea .tel_mail {
    padding-top: var(--title_margin);
    grid-template-columns: 100%;
    grid-template-rows: auto auto;
    justify-content: start;
    row-gap: var(--list_margin);
  }
}
main .contactArea .freePhone {
  margin-right: var(--list_margin);
}
main .contactArea .freePhone a {
  display: flex;
  align-items: center;
  justify-content: start;
  line-height: 1;
  gap: 5px;
  margin-bottom: 10px;
}
main .contactArea .freePhone a svg {
  width: var(--width20);
  height: auto;
  aspect-ratio: 41/27;
  transition: fill 0.35s;
  margin-right: 3px;
}
main .contactArea .freePhone a span {
  font-size: max(21px, 1.54vw);
  white-space: nowrap;
  line-height: 1;
}
main .contactArea .freePhone a:hover span {
  color: #B0B2AF;
}
main .contactArea .freePhone a:hover svg {
  fill: #B0B2AF;
}
main .contactArea .freePhone .announce {
  justify-items: start;
}
main .contactArea .freePhone .announce div {
  width: fit-content;
  display: flex;
  column-gap: 5px;
  margin-bottom: var(--font07);
}
main .contactArea .freePhone .announce p {
  font-size: var(--font12);
  line-height: 1;
  white-space: nowrap;
}
main .contactArea .mailForm a {
  margin-bottom: 7px;
  display: flex;
  align-items: center;
  justify-content: start;
}
main .contactArea .mailForm a::after {
  content: "";
  display: block;
  width: calc(var(--font07) + 2px);
  height: calc(var(--font07) + 2px);
  border-top: 1px solid #B0B2AF;
  border-right: 1px solid #B0B2AF;
  transform: rotate(45deg);
}
main .contactArea .mailForm a svg {
  width: clamp(20px, 5.333px + 1.222vw, 28.8px);
  height: auto;
  aspect-ratio: 1/1;
  transition: fill 0.35s;
  margin-right: 3px;
}
main .contactArea .mailForm a span {
  font-size: var(--base_font);
  white-space: nowrap;
  display: block;
  line-height: 1;
  margin-right: var(--font07);
}
main .contactArea .mailForm a:hover span {
  color: #B0B2AF;
}
main .contactArea .mailForm a:hover svg {
  fill: #B0B2AF;
}
main .contactArea .mailForm p {
  font-size: var(--font12);
  line-height: 1.58;
}
main .backBtnArea {
  margin-bottom: var(--section_margin);
}
main .backBtnArea .base_btn {
  width: fit-content;
  padding: 1.5em 4em;
  margin: 0 auto;
}
main .backBtnArea .base_btn span {
  font-size: var(--base_font);
  line-height: 1;
}/*# sourceMappingURL=style.css.map */