@charset "UTF-8";
/*;
* Copyright(c) 2008- All Rights Reserved
* Tecto co.,ltd.
* http://www.tec-tec.co.jp/
*/
/* Scss Document */
@font-face {
  /*フォントの名前*/
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSansJP-Regular-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSansJP-Regular-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSansJP-Medium-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSansJP-Medium-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSansJP-Bold-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSansJP-Bold-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Light-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Light-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Regular-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Regular-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Medium-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Medium-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Bold-subset.woff2") format("woff2"), url("/bunjo/info/frestier-funabashi-natsumidai/font/NotoSerifJP-Bold-subset.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Oswald";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("/bunjo/font/Oswald-Regular.ttf") format("truetype");
}
:root {
  --c-white01: #ffffff;
  --c-black01: #000000;
  --c-black02: #050505;
  --c-gray01: #c8c8c8;
  --c-gray02: #ebebeb;
  --c-navy01: #00305b;
  --c-red01: #e63828;
  --c-blue01: #28B4B4;
  --tran-all-a: all .25s ease-out 0s;
  --container: 1150px;
  --container-big: 1295px;
  --padding-side: 20px;
  --section-title-height: 24.4px;
  --section-title-height-high: calc(24.4px + 0.17em);
}
@media screen and (max-width: 767px) {
  :root {
    --padding-side: 15px;
    --section-title-height: 17.5px;
    --section-title-height-high: calc(17.5px + 0.125em);
  }
}

html,
body {
  color: var(--c-black02);
  font-size: 16px;
  overflow-x: hidden;
}

h1 {
  margin: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

h2 {
  margin: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

h3 {
  margin: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

h4 {
  margin: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

h5 {
  margin: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

h6 {
  margin: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

* {
  line-height: 1.75;
  box-sizing: border-box;
}

.wrapper {
  width: 100%;
  overflow: hidden;
}

a {
  color: var(--c-black01);
  text-decoration: none;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}
a:hover, a:active, a:focus {
  text-decoration: none;
  outline: none;
  color: inherit;
}

p {
  margin: 0;
  color: var(--c-black01);
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

ul,
ol,
dl {
  list-style: none;
  margin: 0;
  padding-left: 0;
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

li {
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

th,
td {
  color: var(--c-black01);
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
  letter-spacing: 0;
}

main {
  display: block;
}

button {
  border: none;
  background: none;
  padding: 0;
}
button:focus {
  outline: none;
}

section {
  padding: 0;
  position: relative;
  width: auto;
}

picture {
  display: block;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

.tel-link {
  pointer-events: none;
}
@media screen and (max-width: 991px) {
  .tel-link {
    pointer-events: auto;
  }
}

.page-anchor {
  display: block;
  width: 0;
  height: 0;
  color: transparent;
  background: none;
  opacity: 0;
  position: absolute;
  z-index: -1;
  visibility: hidden;
  top: calc(0px - (var(--bottom-menu-height)));
}
@media screen and (max-width: 767px) {
  .page-anchor {
    top: 0;
  }
}

.body-fixed {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
}

.first-section {
  margin-top: calc(var(--bunjo-header-height) + var(--bottom-menu-height));
}
@media screen and (max-width: 991px) {
  .first-section {
    margin-top: 0;
    transition: all 0.15s ease-out 0s;
  }
}

.fresco-bunjo-header-nav__li-link,
.fresco-bunjo-header-nav__item-text,
.fresco-bunjo-g-nav__li-link,
.fresco-bunjo-g-nav__nest-link {
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "sans-serif" !important;
}

.bottom-menu__area {
  position: fixed;
  top: var(--bunjo-header-height);
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  background-color: var(--c-gray02);
  padding-inline: var(--padding-side);
  z-index: 100;
  min-height: 71px;
  border-bottom: 1px solid var(--c-blue01);
  transition: background-color 0.15s ease-out 0s, border-bottom 0.15s ease-out 0s;
}
@media screen and (max-width: 991px) {
  .bottom-menu__area {
    border-bottom: 0;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.15s ease-out, visibility 0s linear 0.15s;
  }
  .bottom-menu__area.is-show {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.15s ease-out, visibility 0s;
  }
}

@media screen and (min-width: 992px) {
  .lenis-smooth .bottom-menu__area {
    background-color: unset;
    border-bottom: 0;
  }
}
.bottom-menu__wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-inline: auto;
  width: 100%;
  max-width: var(--container);
  padding-block: 10px;
}
@media screen and (max-width: 991px) {
  .bottom-menu__wrap {
    padding-block: 1px;
  }
}

.bottom-menu-logo__img-wrap {
  width: 100%;
  max-width: 144.3445px;
}

.bottom-menu__list {
  display: flex;
  gap: 5px;
  justify-content: space-between;
  width: 100%;
  max-width: 884px;
}
@media screen and (max-width: 991px) {
  .bottom-menu__list {
    flex-wrap: wrap;
    gap: 0;
    position: relative;
  }
  .bottom-menu__list::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: var(--c-blue01);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

@media screen and (max-width: 991px) {
  .bottom-menu__item {
    width: 25%;
    min-height: 37.5px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
  }
  .bottom-menu__item::before {
    content: "";
    width: 1px;
    height: 70%;
    background-color: var(--c-blue01);
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(50%, -50%);
  }
  .bottom-menu__item:nth-of-type(4n)::before {
    content: unset;
  }
}

.bottom-menu__link {
  display: block;
  font-size: 0.8125rem;
  font-weight: 500;
  transition: all 0.15s ease-out 0s;
}
@media screen and (max-width: 991px) {
  .bottom-menu__link {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .bottom-menu__link {
    font-size: 0.65625rem;
    line-height: 1;
  }
}
@media (any-hover: hover) {
  .bottom-menu__link:hover {
    color: var(--c-blue01);
  }
}

.concept .bottom-menu__link--concept {
  color: var(--c-blue01);
}

.landscape .bottom-menu__link--landscape {
  color: var(--c-blue01);
}

.modelhouse .bottom-menu__link--modelhouse {
  color: var(--c-blue01);
}

.equipment .bottom-menu__link--equipment {
  color: var(--c-blue01);
}

.life .bottom-menu__link--life {
  color: var(--c-blue01);
}

.location .bottom-menu__link--location {
  color: var(--c-blue01);
}

.visible-xxs {
  display: none;
}
@media screen and (max-width: 575px) {
  .visible-xxs {
    display: block;
  }
}

.bottom-form__area {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 100%;
  max-width: 600px;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.15s ease-out, visibility 0s linear 0.15s;
}
@media screen and (max-width: 991px) {
  .bottom-form__area {
    max-width: 100%;
  }
}
.bottom-form__area.is-show {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.15s ease-out, visibility 0s;
}

.bottom-form__list {
  display: flex;
}

.bottom-form__item {
  width: 50%;
  min-height: 70px;
}
@media screen and (max-width: 767px) {
  .bottom-form__item {
    min-height: 50px;
  }
}

.bottom-form__item--request {
  background-color: var(--c-blue01);
}
@media screen and (max-width: 767px) {
  .bottom-form__item--request {
    width: 37.5%;
  }
}

.bottom-form__item--reservation {
  background-color: var(--c-black01);
}
@media screen and (max-width: 767px) {
  .bottom-form__item--reservation {
    width: 37.5%;
  }
}

.bottom-form__item--tel {
  background-color: var(--c-navy01);
  width: 25%;
}
@media screen and (min-width: 768px) {
  .bottom-form__item--tel {
    display: none;
  }
}
.bottom-form__item--tel .bottom-form__img-wrap {
  max-width: 40px;
}

.bottom-form__link {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 1.375rem;
  font-weight: 500;
  color: var(--c-white01);
  transition: opacity 0.15s ease-out 0s;
}
@media screen and (max-width: 767px) {
  .bottom-form__link {
    font-size: 0.875rem;
  }
}
@media (any-hover: hover) {
  .bottom-form__link:hover {
    color: var(--c-white01);
    opacity: 0.6;
  }
}

.bottom-form__img-wrap {
  max-width: 30px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .bottom-form__img-wrap {
    max-width: 18.5px;
  }
}

.limited-contents__area {
  margin-top: 198px;
  padding-inline: var(--padding-side);
}
@media screen and (max-width: 767px) {
  .limited-contents__area {
    margin-top: 102px;
  }
}

.limited-contents__wrap {
  margin-inline: auto;
  width: 100%;
  max-width: var(--container);
  background-image: url("/bunjo/info/frestier-funabashi-natsumidai/img/limited-contents-bg.webp");
  background-position: center;
  background-size: cover;
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .limited-contents__wrap {
    padding: 5px;
  }
}

.limited-contents__inner {
  width: 100%;
  border: solid 1px var(--c-white01);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-block: 78px 64px;
}
@media screen and (max-width: 767px) {
  .limited-contents__inner {
    padding-block: 38px;
  }
}

.limited-contents__title-wrap {
  display: flex;
  flex-direction: column;
  gap: 19px;
  align-items: center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .limited-contents__title-wrap {
    gap: 12px;
  }
}

.limited-contents__title {
  width: 100%;
  max-width: 620px;
}
@media screen and (max-width: 767px) {
  .limited-contents__title {
    max-width: 310px;
  }
}

.limited-contents__title-text {
  font-size: 1.25rem;
  color: var(--c-white01);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .limited-contents__title-text {
    font-size: 0.875rem;
  }
}

.limited-contents__text {
  font-size: 0.875rem;
  text-align: center;
  color: var(--c-white01);
  margin-top: 31px;
}
@media screen and (max-width: 767px) {
  .limited-contents__text {
    font-size: 0.78125rem;
    margin-top: 13px;
  }
}

.limited-contents__link-area {
  display: flex;
  gap: 30px;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  margin-top: 34px;
}
@media screen and (max-width: 767px) {
  .limited-contents__link-area {
    gap: 10px;
    margin-top: 24px;
    padding-inline: 10px;
  }
}

.limited-contents__link-wrap {
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: center;
  width: 100%;
  max-width: 295px;
}
@media screen and (max-width: 767px) {
  .limited-contents__link-wrap {
    gap: 2px;
  }
}

.limited-contents__link-text {
  font-size: 1rem;
  color: var(--c-white01);
}
@media screen and (max-width: 767px) {
  .limited-contents__link-text {
    font-size: 0.78125rem;
  }
}

.limited-contents__link {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  color: var(--c-white01);
  border-radius: 40px;
  min-height: 70px;
  width: 100%;
  transition: all 0.15s ease-out 0s;
}
@media screen and (max-width: 767px) {
  .limited-contents__link {
    font-size: 0.78125rem;
    min-height: 40px;
  }
}

.limited-contents__link--entry {
  border: solid 1px var(--c-white01);
}
@media (any-hover: hover) {
  .limited-contents__link--entry:hover {
    border: solid 1px var(--c-black01);
    background-color: var(--c-black01);
    color: var(--c-white01);
  }
}

.limited-contents__link--login {
  background-color: var(--c-white01);
  color: var(--c-black01);
}
@media (any-hover: hover) {
  .limited-contents__link--login:hover {
    background-color: var(--c-black01);
    color: var(--c-white01);
  }
}

.other-contents__area {
  margin-top: 144px;
  padding-inline: var(--padding-side);
}
@media screen and (max-width: 767px) {
  .other-contents__area {
    padding-inline: calc(var(--padding-side) * 2);
    margin-top: 72px;
  }
}

.other-contents__title-wrap {
  display: flex;
  gap: 23px;
  align-items: center;
  margin-inline: auto;
  width: 100%;
  max-width: var(--container);
}
@media screen and (max-width: 767px) {
  .other-contents__title-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
  }
}

.other-contents__title {
  height: var(--section-title-height);
}
.other-contents__title > img {
  width: auto;
  height: 100%;
}

.other-contents__title-text {
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .other-contents__title-text {
    font-size: 0.875rem;
  }
}

.other-contents__list {
  margin-inline: auto;
  width: 100%;
  max-width: var(--container-big);
  display: flex;
  gap: 50px 2px;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .other-contents__list {
    gap: 1px;
    flex-direction: column;
    margin-top: 20px;
  }
}

.other-contents__item {
  width: calc(20% - 1.6px);
}
@media screen and (max-width: 767px) {
  .other-contents__item {
    width: 100%;
  }
}

.other-contents__link {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .other-contents__link {
    width: 100%;
    height: 100%;
  }
}
@media (any-hover: hover) {
  .other-contents__link:hover .other-contents__img-wrap {
    transform: scale(1.05);
  }
}

.other-contents__img-wrap {
  width: 100%;
  height: 100%;
  transition: all 0.3s ease-out 0s;
}
.other-contents__img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.other-contents__item-title-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title-wrap {
    gap: 3px;
  }
}

.other-contents__item-title--concept {
  width: 52.824%;
  padding-block: 15px 18px;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title--concept {
    width: 100%;
    max-width: 103.43115px;
    padding-block: 12px 15px;
  }
}
.other-contents__item-title--landscape {
  width: 68.789254902%;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title--landscape {
    width: 100%;
    max-width: 134.6914px;
  }
}
.other-contents__item-title--modelhouse {
  width: 40.9704313725%;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title--modelhouse {
    width: 100%;
    max-width: 80.2217px;
  }
}
.other-contents__item-title--equipment {
  width: 67.4810588235%;
  padding-block: 15px 13px;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title--equipment {
    width: 100%;
    max-width: 132.13035px;
    padding-block: 12px 10px;
  }
}
.other-contents__item-title--life {
  width: 72.9090196078%;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title--life {
    width: 100%;
    max-width: 142.7578px;
  }
}
.other-contents__item-title--location {
  width: 58.4503137255%;
}
@media screen and (max-width: 767px) {
  .other-contents__item-title--location {
    width: 100%;
    max-width: 114.44825px;
  }
}

.other-contents__item-title-text {
  font-size: 1rem;
  color: var(--c-white01);
}
@media screen and (max-width: 991px) {
  .other-contents__item-title-text {
    font-size: 0.8125rem;
  }
}

.other-contents__link-text {
  font-size: 1rem;
  color: var(--c-white01);
  display: flex;
  align-items: center;
  gap: 10px;
  position: absolute;
  right: 30px;
  bottom: 20px;
}
@media screen and (max-width: 991px) {
  .other-contents__link-text {
    font-size: 0.78125rem;
    right: 15px;
    bottom: 10px;
  }
}
.other-contents__link-text .arrow {
  width: 5px;
  height: 5px;
  border-style: solid;
  border-width: 1px 1px 0 0;
  border-color: var(--c-white01);
  transform: rotate(45deg);
}

.form__area {
  margin-top: 200px;
}
@media screen and (max-width: 767px) {
  .form__area {
    margin-top: 70px;
  }
}

.top .form__area {
  margin-top: 140px;
}
@media screen and (max-width: 767px) {
  .top .form__area {
    margin-top: 70px;
  }
}

.form__link-wrap {
  display: flex;
  gap: 2px;
}
@media screen and (max-width: 767px) {
  .form__link-wrap {
    flex-direction: column;
    gap: 1px;
  }
}

.form__link {
  width: calc(50% - 2.5px);
  display: block;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .form__link {
    width: 100%;
  }
}
@media (any-hover: hover) {
  .form__link:hover .form__img-wrap {
    transform: scale(1.05);
  }
  .form__link:hover .form__link-text {
    background-color: var(--c-white01);
    color: var(--c-black01);
  }
  .form__link:hover .form__link-text .arrow {
    border-color: var(--c-black01);
  }
}

.form__img-wrap {
  width: 100%;
  height: 100%;
  transition: all 0.3s ease-out 0s;
}

.form__text-area {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
}

.form__text-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .form__text-wrap {
    gap: 12px;
  }
}

.form__title {
  font-size: 1.375rem;
  color: var(--c-white01);
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .form__title {
    font-size: 0.9375rem;
  }
}

.form__text {
  font-size: 0.875rem;
  color: var(--c-white01);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .form__text {
    font-size: 0.78125rem;
  }
}

.form__link-text {
  font-size: 1rem;
  color: var(--c-white01);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 60px;
  border-radius: 30px;
  border: solid 1px var(--c-white01);
  width: 100%;
  max-width: 250px;
  transition: all 0.15s ease-out 0s;
}
@media screen and (max-width: 767px) {
  .form__link-text {
    font-size: 0.78125rem;
    min-height: 42px;
    max-width: 150px;
  }
}
.form__link-text .arrow {
  transition: all 0.15s ease-out 0s;
  width: 5px;
  height: 5px;
  border-style: solid;
  border-width: 1px 1px 0 0;
  border-color: var(--c-white01);
  transform: rotate(45deg);
}

.footer-menu__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  margin-top: 50px;
  margin-inline: auto;
  width: 100%;
  max-width: 1060px;
}
@media screen and (max-width: 991px) {
  .footer-menu__list {
    display: none;
  }
}

.footer-menu__link {
  font-size: 0.8125rem;
  transition: all 0.15s ease-out 0s;
}
@media (any-hover: hover) {
  .footer-menu__link:hover {
    color: var(--c-blue01);
  }
}

.banner__area {
  padding-inline: var(--padding-side);
  margin-top: 103px;
}
@media screen and (max-width: 767px) {
  .banner__area {
    margin-top: 53px;
  }
}

.banner__wrap {
  margin-inline: auto;
  width: 100%;
  max-width: var(--container);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .banner__wrap {
    flex-direction: column;
    width: 84vw;
    max-width: 560px;
    gap: 15px;
  }
}

.banner__link {
  width: calc(50% - 15px);
  display: block;
  transition: all 0.15s ease-out 0s;
}
@media screen and (max-width: 767px) {
  .banner__link {
    width: 100%;
  }
}
@media (any-hover: hover) {
  .banner__link:hover {
    opacity: 0.8;
  }
}

.footer__wrap {
  width: 100%;
  padding: 0 20px 40px;
  margin-top: 123px;
}
@media screen and (max-width: 991px) {
  .footer__wrap {
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 767px) {
  .footer__wrap {
    padding-bottom: 87px;
    margin-top: 49px;
  }
}

.footer__logo {
  max-width: 252px;
  margin-inline: auto;
}
@media screen and (max-width: 575px) {
  .footer__logo {
    max-width: 219px;
  }
}

.footer__logo-img {
  width: 100%;
}

.footer__nav-list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-evenly;
  gap: 20px;
  max-width: 1150px;
  margin: 0 auto 60px;
}
@media screen and (max-width: 991px) {
  .footer__nav-list {
    display: none;
  }
}

.footer__nav-list-link {
  transition: var(--tran-all-a);
}
.footer__nav-list-link:hover, .footer__nav-list-link:focus {
  opacity: 0.7;
}
.footer__nav-list-link[tabindex="-1"] {
  color: #7d7d7d;
}
.footer__nav-list-link[tabindex="-1"]:hover, .footer__nav-list-link[tabindex="-1"]:focus {
  opacity: 1;
}

.footer__info {
  max-width: 1150px;
  margin-inline: auto;
  margin-top: 65px;
}
@media screen and (max-width: 767px) {
  .footer__info {
    margin-top: 35px;
  }
}

.footer__info-inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 64px;
  gap: 10px;
}
@media screen and (max-width: 1199px) {
  .footer__info-inner {
    flex-direction: column;
    gap: 50px;
    align-items: center;
  }
}
@media screen and (max-width: 575px) {
  .footer__info-inner {
    gap: 22px;
    margin-bottom: 33px;
  }
}

.footer__info-company {
  display: flex;
  align-items: center;
  gap: 25px;
}
@media screen and (max-width: 991px) {
  .footer__info-company {
    flex-direction: column;
  }
}
@media screen and (max-width: 575px) {
  .footer__info-company {
    gap: 20px;
  }
}

.footer__info-logo {
  max-width: 238px;
}
@media screen and (max-width: 991px) {
  .footer__info-logo {
    max-width: 380px;
  }
}
@media screen and (max-width: 575px) {
  .footer__info-logo {
    max-width: 157px;
  }
}

.footer__info-logo-img {
  width: 100%;
  display: block;
}

.footer__info-cts {
  color: var(--c-black01);
  padding: 0 0px 0 31px;
  border-left: 2px solid var(--c-black01);
}
@media screen and (max-width: 991px) {
  .footer__info-cts {
    border-left: none;
  }
}
@media screen and (max-width: 575px) {
  .footer__info-cts {
    padding: 0 40px;
  }
}

.footer__info-name {
  font-weight: 600;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .footer__info-name {
    font-size: 0.875rem;
  }
}

.footer__info-address {
  display: block;
  margin-bottom: 5px;
  letter-spacing: 0;
  font-size: 0.8125rem;
}
@media screen and (max-width: 575px) {
  .footer__info-address {
    font-size: 0.65625rem;
    letter-spacing: 0.035em;
  }
}

.footer__info-tel {
  display: block;
  max-width: 360px;
}
@media screen and (max-width: 991px) {
  .footer__info-tel {
    max-width: 420px;
  }
}
@media screen and (max-width: 767px) {
  .footer__info-tel {
    margin-inline: auto;
  }
}

.footer__info-tel-img {
  width: 100%;
}

.footer__info-time {
  font-size: 14px;
  letter-spacing: 0.04rem;
  padding-top: 11px;
  display: block;
}
@media screen and (max-width: 575px) {
  .footer__info-time {
    font-size: 10px;
    padding-top: 3px;
    letter-spacing: 0.04rem;
    font-feature-settings: "palt";
  }
}

.footer__limited {
  max-width: 450px;
}
@media screen and (max-width: 1199px) {
  .footer__limited {
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .footer__limited {
    padding-inline: var(--padding-side);
  }
}

.footer__limited-link {
  transition: var(--tran-all-a);
}
.footer__limited-link:hover {
  opacity: 0.7;
}

.footer__limited-img {
  width: 100%;
}

.footer__info-copy {
  display: block;
  color: var(--c-black01);
  font-family: "Noto Serif JP", "YuMincho", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
}
@media screen and (max-width: 991px) {
  .footer__info-copy {
    text-align: center;
    font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "sans-serif" !important;
  }
}
@media screen and (max-width: 575px) {
  .footer__info-copy {
    font-size: 0.5rem;
  }
}