/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/
@import url("https://fonts.googleapis.com/css2?family=Arimo&family=Cormorant+Garamond:wght@300;400;500;600;700&family=Shippori+Mincho:wght@400;600&display=swap");
.f-mont {
  font-family: "Montserrat", sans-serif;
}
.f-main {
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 300;
  letter-spacing: 0.08em;
}
/* BASE */
img {
  -o-object-fit: cover;
  object-fit: cover;
  max-width: 100%;
}
img.c-svg-img {
  -o-object-fit: contain;
  object-fit: contain;
}
ul {
  list-style-type: none;
  margin-bottom: 0;
}
a {
  color: currentColor;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
a:hover {
  opacity: 0.7;
  color: currentColor;
  text-decoration: none;
}
/* UTILITIES */
/* COMPONENTS */
/* PAGE LOGO */
.c-logo {
  margin-bottom: 0;
}
.c-logo a, .c-logo img {
  display: block;
  width: 100%;
  height: 100%;
}
/* TEXT */
.c-info p {
  font-weight: 500;
  font-size: 1.332rem;
  letter-spacing: 0;
  margin-bottom: 0;
}
.c-phone {
  display: block;
  font-weight: 400;
  font-size: 2.985rem;
  letter-spacing: 0;
}
.c-phone span {
  display: inline-block;
  font-size: 2.059rem;
}
@media screen and (max-width: 991px) {
  .c-phone {
    font-size: 2rem;
  }
  .c-info p, .c-phone span {
    font-size: 1rem;
  }
}
.txt-center {
  text-align: center;
}
/* SECTION */
.c-section-textimg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-section-textimg .c-section-img {
  width: 50%;
}
.c-section-textimg .c-section-info {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.c-section {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
/* SECTION IMAGE */
.c-section-img {
  position: relative;
}
.c-section-img::before, .c-section-img::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: 62% center;
  background-repeat: no-repeat;
  background-size: cover;
}
/* SECTION INFO */
.c-section-info {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
/* SECTION TITLE */
.c-title1 {
  margin-bottom: 0;
}
.c-section-info .c-title1 {
  margin-bottom: 32px;
}
.c-title1 .f-mont {
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0;
  margin-bottom: 108px;
}
.c-title1 .big-text {
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0;
  line-height: 50px;
}
/* TITLE 2 */
.c-title2 {
  font-weight: 400;
  font-size: 3rem;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
.c-title2 .f-mont {
  display: block;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0;
  margin-bottom: 16px;
}
.c-title--center {
  text-align: center;
}
@media screen and (max-width: 991px) {
  .c-title1 .f-mont {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 576px) {
  .c-section-info .c-title1 {
    margin-bottom: 10px;
  }
  .c-title1 .f-mont {
    margin-bottom: 20px;
    font-size: 1.5rem;
  }
  .c-title1 .big-text {
    font-size: 2.5rem;
    line-height: normal;
  }
  .c-title2 {
    font-size: 2.5rem;
  }
  .c-title2 .f-mont {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
}
/* SECTION PARAGRAPH */
.c-section-p {
  font-weight: 300;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 30px;
  margin-bottom: 0;
}
.c-section-info .c-section-p + .c-section-p {
  margin-top: 30px;
}
.c-section-p--small {
  color: #808080;
  font-size: 1.4rem;
  letter-spacing: 0;
}
.c-section-info .c-section-p--small {
  margin-bottom: 52px;
}
@media screen and (max-width: 576px) {
  .c-section-p {
    font-size: 1.4rem;
    line-height: 25px;
  }
  .c-section-info .c-section-p--small {
    font-size: 0.9rem;
    margin-bottom: 30px;
  }
  .c-section-info .c-section-p + .c-section-p {
    margin-top: 15px;
  }
}
/* SECTION LIST */
.c-section-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 0;
  list-style-type: none;
  padding-left: 0;
}
.c-section-list a, .c-section-list img {
  display: block;
  width: 100%;
}
/* BTN 1 */
.c-btn1.inf-area3 a {
  padding: 8px;
  border-radius: 29px;
  font-weight: 700;
  font-size: 1.357rem;
  letter-spacing: 0;
}
.c-btn1 .top_bt_ani3 {
  width: 42px;
  margin-left: 30px;
}
.c-btn1 .top_bt_ani3::after {
  height: 8px;
  width: 8px;
  top: -3px;
}
@media screen and (max-width: 767px) {
  .c-btn1.inf-area3 a {
    font-size: 0.8rem;
  }
  .c-btn1 .top_bt_ani3 {
    width: 20px;
    margin-left: 10px;
  }
  .c-btn1 .top_bt_ani3::after {
    height: 5px;
    width: 5px;
    top: -2px;
  }
}
/*=================================================== */
/* HEADER */
header#header {
  width: 100%;
  max-width: unset;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  -webkit-transition: 0.4s ease-in-out;
  -o-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
  background-color: transparent;
  color: #fff;
}
header#header.view {
  color: #000;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 5px rgba(201, 197, 197, 0.75);
  box-shadow: 0 3px 5px rgba(201, 197, 197, 0.75);
}
@media screen and (max-width: 767px) {
  header#header.view {
    height: 70px;
  }
}
/* CONTAINER  */
.header_container {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 40px 55px 20px 103px;
  -webkit-transition: 0.4s ease-in-out;
  -o-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
header.view .header_container {
  padding-top: 20px;
}
/* LOGO */
.header_logo {
  width: 276px;
  margin-bottom: 0;
}
.header_logo .logo {
  fill: #fff;
}
header.view .logo {
  fill: #464646;
}
.header_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.c-btn1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  font-size: 1.5rem;
  letter-spacing: 0;
  color: #fff;
  border: 1px solid #fff;
  background-color: transparent;
  width: 180px;
  height: 50px;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  font-weight: 400;
}
.c-btn1:hover {
  background-color: #fff;
  color: #464646;
  opacity: 1;
}
.view .c-btn1 {
  color: #464646;
  border: 1px solid #464646;
  background-color: transparent;
}
.view .c-btn1:hover {
  background-color: #464646;
  color: #fff;
}
.header_tel {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 400;
  letter-spacing: 0;
  margin-left: 20px;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}
.header_tel span {
  font-size: 1.5rem;
}
.header_tel:hover {
  opacity: 1;
}
.view .header_tel {
  color: #464646;
}
.view .header_tel:hover {
  opacity: 0.7;
}
@media screen and (max-width: 1300px) {
  .header_container {
    padding-left: 5%;
    padding-right: 5%;
  }
}
@media screen and (max-width: 991px) {
  .header_logo {
    width: 250px;
  }
  .c-btn1 {
    width: 150px;
    height: 35px;
    line-height: 33px;
    margin-right: 10px;
  }
  .header_tel {
    font-size: 1.6rem;
  }
  .header_tel span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  header .c-info {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .header_logo {
    width: 180px;
  }
}
@media screen and (max-width: 450px) {
  .header_group {
    flex-direction: column;
  }
  .c-btn1 {
    width: 120px;
    font-size: 1.2rem;
    margin-right: 0;
  }
  .header_tel {
    margin-left: 0;
    font-size: 1.5rem;
  }
  .header_tel span {
    font-size: 1.2rem;
  }
}
/* ========================================================== */
/* MAIN */
.c-mainvisual {
  position: relative;
  margin-bottom: 101px;
}
#slider-mainvisual {
  width: 100%;
  margin-bottom: 0;
  background-color: #1a1a1a;
  padding-left: 0;
}
#slider-mainvisual .mainvisual-item {
  width: 100%;
  height: 100vh;
  min-height: 600px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
#slider-mainvisual .mainvisual-item:nth-child(1) {
  background-image: url("./../images/page-lp/fv.jpg");
}
#slider-mainvisual .mainvisual-item::after {
  position: absolute;
  content: "";
  background-color: rgba(0, 0, 0, 0.1);
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
}
.c-mainvisual__text {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 16.2%;
  padding: 0 5.3%;
  z-index: 1;
  color: #fff;
}
.c-mainvisual__text .big-text {
  font-weight: 400;
  font-size: 15rem;
  letter-spacing: 0;
  margin-bottom: -30px;
}
.c-mainvisual__text .big-text span {
  font-weight: 600;
  margin-right: 30px;
}
.c-mainvisual__text .medium-text {
  font-weight: 400;
  font-size: 3.5rem;
  letter-spacing: 0;
  margin-bottom: 0;
}
.c-mainvisual__text .medium-text.area {
  margin-top: 20px;
}
.c-mainvisual__text .medium-text.area span {
  background-color: #fff;
  color: #919296;
  font-size: 3rem;
  padding: 5px 20px;
  margin-right: 20px;
}
.c-mainvisual__text .small-text {
  font-weight: 400;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
  line-height: 27px;
  margin-bottom: 0;
}
@media screen and (max-width: 1300px) {
  .c-mainvisual__text {
    padding: 0 5%;
  }
  .c-mainvisual__text .big-text {
    font-size: 11rem;
  }
}
@media screen and (max-width: 991px) {
  #slider-mainvisual .mainvisual-item:nth-child(1) {
    background-position: 60% center;
  }
  .c-mainvisual__text .big-text {
    font-size: 9rem;
    margin-bottom: -20px;
  }
  .c-mainvisual__text .big-text span {
    margin-right: 15px;
  }
  .c-mainvisual__text .medium-text {
    font-size: 2.5rem;
    margin-bottom: 30px;
  }
  .c-mainvisual__text .medium-text.area span {
    font-size: 2rem;
    padding: 5px 10px;
  }
}
@media screen and (max-width: 767px) {
  .c-mainvisual__text .big-text {
    font-size: 4.5rem;
    margin-bottom: -8px;
  }
  .c-mainvisual__text .medium-text {
    font-size: 2rem;
    margin-bottom: 18px;
  }
  .c-mainvisual__text .medium-text.area span {
    font-size: 1.5rem;
  }
  .c-mainvisual__text .small-text {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 576px) {
  .c-mainvisual {
    margin-bottom: 50px;
  }
  #slider-mainvisual .mainvisual-item:nth-child(1) {
    background-position: 48% center;
  }
}
/* ======================================================== */
/* BANNER */
.openhouse_img {
  margin: 4rem auto 9rem;
  width: 90%;
  max-width: 780px;
}
.openhouse_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 991px) {
  .openhouse_img {
    margin: 4rem auto 6rem;
  }
}
@media screen and (max-width: 576px) {
  .openhouse_img {
    margin: -2rem auto 3rem;
  }
}
.header_day {
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 0;
}
.header_day .f-mont {
  font-size: 3rem;
}
.header_txt {
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .header_day {
    font-size: 2rem;
  }
  .header_day .f-mont {
    font-size: 5rem;
  }
  .header_txt {
    font-size: 3rem;
  }
}
@media screen and (min-width: 992px) {
  .header_day {
    font-size: 3rem;
  }
  .header_day .f-mont {
    font-size: 6rem;
  }
  .header_txt {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1400px) {
  .header_txt {
    margin-bottom: -2rem;
  }
}
/* ======================================================== */
/* CONCEPT */
.l-concept {
  width: 95%;
  max-width: 1556px;
  margin-bottom: 96px;
}
.l-concept .c-section-img {
  width: 43.5%;
  min-width: 500px;
}
.l-concept .c-section-img::after {
  content: "";
  background-image: url(./../images/page-lp/main.png);
  background-position: 90% 50%;
}
.l-concept .c-section-info {
  padding-top: 100px;
  padding-bottom: 50px;
}
.l-concept .c-section-info .c-title1 {
  margin-bottom: 22px;
}
.l-concept .c-section-info .c-title1 .f-mont {
  margin-bottom: 5rem;
}
.model_con {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0;
  padding: 0;
}
.model_con li {
  width: calc((100% - 8rem)/3);
  margin-bottom: 0;
}
.model_con_img {
  margin-bottom: 1rem;
}
.model_con_txt {
  font-weight: 300;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 30px;
  padding: 0 8px;
  margin-bottom: 0;
  text-align: center;
}
@media screen and (max-width: 1445px) {
  .model_con_txt {
    text-align: left;
  }
}
@media screen and (max-width: 991px) {
  .l-concept {
    width: 90%;
  }
  .l-concept .c-section-info {
    padding-bottom: 30px;
  }
  .model_con li {
    width: calc((100% - 6rem)/3);
  }
  .model_con_img {
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 576px) {
  .l-concept {
    margin-bottom: 50px;
  }
  .l-concept .c-section-info {
    padding-left: 0;
    padding-top: 60px;
  }
  .l-concept .c-section-p br.c-line-break {
    display: none;
  }
  .model_con {
    flex-direction: column;
  }
  .model_con li {
    width: 100%;
    margin-bottom: 3rem;
  }
  .model_con li:last-child {
    margin-bottom: 0;
  }
  .model_con_txt {
    font-size: 1.4rem;
    line-height: 25px;
  }
}
/* POINT */
.l-point {
  padding: 68px 5% 128px;
  background-color: #f9f9f9;
  margin-bottom: 130px;
}
.l-point .c-title2 {
  margin-bottom: 0;
}
.l-point-list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  counter-reset: section;
}
.l-point-list li {
  position: relative;
}
.l-point-list li + li {
  margin-left: 62px;
}
.l-point-list li + li::before {
  content: "";
  background-color: rgba(128, 128, 128, 0.5);
  display: inline-block;
  position: absolute;
  top: 36%;
  left: -56px;
  width: 50px;
  height: 1px;
}
.l-point-list img {
  width: 250px;
  height: 250px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 50%;
  margin-bottom: 24px;
}
.l-point-list p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.8rem;
  letter-spacing: 0;
  line-height: 27px;
  margin-bottom: 0;
}
.l-point-list p::before {
  counter-increment: section;
  content: "0"counter(section) ".";
  display: block;
  font-size: 5.63rem;
  margin-right: 10px;
  font-weight: 400;
  letter-spacing: 0;
  font-family: "Montserrat", sans-serif;
}
@media screen and (max-width: 1400px) {
  .l-point-list li + li {
    margin-left: 50px;
  }
  .l-point-list li + li::before {
    left: -42px;
    width: 35px;
  }
  .l-point-list img {
    width: 200px;
    height: 200px;
  }
  .l-point-list p {
    font-size: 1.4rem;
  }
  .l-point-list p::before {
    font-size: 5rem;
  }
}
@media screen and (max-width: 1150px) {
  .l-point {
    margin-bottom: 80px;
  }
  .l-point-list li {
    width: 45%;
  }
  .l-point-list li:nth-child(even) {
    margin-left: 5%;
  }
  .l-point-list li + li::before {
    width: 11.1%;
    left: -11.1%;
  }
  .l-point-list li:nth-child(3)::before {
    content: none;
  }
  .l-point-list li:nth-child(n + 3) {
    margin-top: 60px;
  }
  .l-point-list li + li {
    margin-left: 0;
  }
  .l-point-list img {
    width: 250px;
    height: 250px;
  }
  .l-point-list p {
    font-size: 1.8rem;
  }
  .l-point-list p::before {
    font-size: 5.63rem;
  }
}
@media screen and (max-width: 767px) {
  .l-point-list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .l-point-list li {
    width: 48%;
  }
  .l-point-list li:nth-child(even) {
    margin-left: 0;
  }
  .l-point-list li + li::before {
    content: none;
  }
  .l-point-list img {
    width: 195px;
    height: 195px;
  }
  .l-point-list p {
    font-size: 1.4rem;
    line-height: 25px;
  }
  .l-point-list p::before {
    font-size: 4.3rem;
  }
}
@media screen and (max-width: 576px) {
  .l-point {
    padding-top: 50px;
    padding-bottom: 80px;
    margin-bottom: 40px;
  }
  .l-point .c-title2 {
    margin-bottom: 0;
  }
  .l-point-list li:nth-child(n + 3) {
    margin-top: 30px;
  }
  .l-point-list img {
    width: 150px;
    height: 150px;
    margin-bottom: 14px;
  }
  .l-point-list p {
    font-size: 1.1rem;
    line-height: 22px;
  }
  .l-point-list p::before {
    font-size: 3rem;
    margin-right: 5px;
  }
}
/* ========================================================== */
/* PARALLAX */
.l-parallax {
  width: 100%;
  height: 578px;
  position: relative;
  overflow-x: hidden;
  margin-bottom: 68px;
}
.l-parallax__bg-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  clip: rect(0, auto, auto, 0);
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
}
.l-parallax__bg {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
  background-size: cover;
  background-position: center center;
  background-image: url("./../images/page-lp/parallax.jpg");
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  will-change: transform;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .l-parallax {
    background-size: cover;
    background-position: center center;
    background-image: url("./../images/page-lp/parallax.jpg");
    background-attachment: fixed;
  }
  .l-parallax__bg-wrap, .l-parallax__bg {
    display: none;
  }
}
@media screen and (max-width: 991px) {
  .l-parallax {
    height: 400px;
  }
}
@media screen and (max-width: 576px) {
  .l-parallax {
    height: 200px;
    margin-bottom: 40px;
  }
}
/* ========================================================== */
/* BENEFIT */
.l-benefit {
  max-width: 1415px;
  margin-bottom: 125px;
}
.l-benefit .c-title2 {
  margin-bottom: 56px;
}
.l-benefit-list li {
  width: calc((100% - 76px) / 3);
  background-color: #f9f9f9;
  padding: 20px;
}
.l-benefit-list img {
  height: 295px;
}
.l-benefit-list .post-info {
  padding-top: 32px;
  padding-bottom: 46px;
}
.l-benefit-list p.item-title {
  font-weight: 500;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
  text-align: center;
  margin-bottom: 14px;
}
.l-benefit-list p.item-title span {
  display: block;
  font-size: 2.1rem;
  letter-spacing: 0.02em;
  margin-bottom: 5px;
  font-weight: 400;
}
.l-benefit-list p.item-content {
  font-weight: 300;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 30px;
  padding: 0 8px;
  margin-bottom: 0;
}
@media screen and (max-width: 1300px) {
  .l-benefit-list li {
    width: calc((100% - 50px) / 3);
  }
}
@media screen and (max-width: 991px) {
  .l-benefit-list li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-benefit-list li + li {
    margin-top: 30px;
  }
  .l-benefit-list img {
    width: 50%;
    height: auto;
  }
  .l-benefit-list .post-info {
    padding-left: 20px;
    padding-top: 20px;
    padding-bottom: 0;
  }
  .l-benefit-list p.item-title span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 576px) {
  .l-benefit {
    margin-bottom: 50px;
  }
  .l-benefit .c-title2 {
    margin-bottom: 26px;
  }
  .l-benefit-list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 10px;
  }
  .l-benefit-list img {
    width: 100%;
  }
  .l-benefit-list .post-info {
    padding-left: 0;
    padding-bottom: 20px;
  }
  .l-benefit-list p.item-content {
    font-size: 1.4rem;
    line-height: 25px;
  }
}
/* ========================================================== */
.l-contact-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 90%;
  max-width: 702px;
}
.l-contact-btn__inner {
  width: 100%;
  height: 151px;
  background-color: #da9e2d;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.035em;
  color: #ffffff;
  position: relative;
  padding-right: 115px;
}
.l-contact-btn__inner::after {
  content: "";
  width: 115px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background-color: #231916;
  background-image: url(./../images/page-lp/icon_arrow.svg);
  background-size: 18px 11px;
  background-position: center;
  background-repeat: no-repeat;
}
.l-contact-btn .f-mont {
  font-weight: 400;
  font-size: 4.2rem;
  letter-spacing: 0;
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  .l-contact-btn img {
    display: none;
  }
  .l-contact-btn__inner {
    margin-top: 0;
  }
}
@media screen and (max-width: 576px) {
  .l-contact-btn__inner {
    height: 85px;
    font-size: 1.3rem;
    padding-left: 30px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding-right: 60px;
  }
  .l-contact-btn__inner::after {
    width: 60px;
  }
  .l-contact-btn .f-mont {
    font-size: 2.5rem;
    margin-bottom: -4px;
  }
}
/* ========================================================== */
/* NOTE */
.l-note {
  max-width: 1538px;
  counter-reset: section2;
  margin-bottom: 130px;
  margin-top: 78px;
}
.l-note .c-title2 {
  margin-bottom: 45px;
}
.l-note-list li {
  width: calc((100% - 60px) / 3);
}
.l-note-list li:nth-child(n + 4) {
  margin-top: 58px;
}
.l-note-list img {
  height: 330px;
  margin-bottom: 20px;
}
.l-note-list p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 400;
  font-size: 2rem;
  letter-spacing: 0;
  margin-bottom: 0;
}
.l-note-list p::before {
  counter-increment: section2;
  content: counter(section2);
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 2.2rem;
  letter-spacing: 0;
  display: block;
  width: 48px;
  height: 48px;
  color: #fff;
  background-color: #000;
  text-align: center;
  line-height: 48px;
  margin-right: 10px;
  flex-shrink: 0;
}
@media screen and (max-width: 991px) {
  .l-note-list li {
    width: calc((100% - 30px) / 2);
  }
  .l-note-list li:nth-child(n + 3) {
    margin-top: 30px;
  }
  .l-note-list img {
    height: 250px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 576px) {
  .l-note {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .l-note .c-title2 {
    margin-bottom: 26px;
  }
  .l-note-list li {
    width: 100%;
  }
  .l-note-list li:nth-child(n + 2) {
    margin-top: 30px;
  }
  .l-note-list p {
    font-size: 1.7rem;
  }
}
/* ========================================================== */
/* INTERVIEW */
.l-interview {
  background-color: #f9f9f9;
  padding-top: 74px;
  padding-bottom: 125px;
  margin-top: 125px;
  margin-bottom: 122px;
}
.l-interview .c-section-info {
  max-width: 1235px;
  color: #4d4d4d;
}
.l-interview p.sm-title {
  font-size: 2.6rem;
  letter-spacing: 0.03em;
  margin-bottom: 10px;
}
.l-interview p.p-title {
  font-size: 3rem;
  letter-spacing: 0.04em;
}
.l-interview__list {
  margin-top: 70px;
  padding-left: 0;
}
.l-interview__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
  -webkit-box-shadow: 1px 4px 9px rgba(139, 166, 180, 0.27);
  box-shadow: 1px 4px 9px rgba(139, 166, 180, 0.27);
}
.l-interview__list li + li {
  margin-top: 40px;
}
.l-interview__list img {
  width: 33.2%;
  height: auto;
  object-fit: contain;
}
.l-interview__list .list-content {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding: 30px 75px 80px;
}
.l-interview__list .list-content__group {
  margin-bottom: 26px;
}
.l-interview__list .list-content__group:last-child {
  margin-bottom: 0;
}
.l-interview__list .list-content__title {
  font-family: "Arimo", sans-serif;
  font-weight: 400;
  font-size: 1.1rem;
  letter-spacing: 0.065em;
  color: #808080;
  position: relative;
}
.l-interview__list .list-content__title1 {
  margin-bottom: 12px;
}
.l-interview__list .list-content__title2 {
  margin-bottom: 16px;
}
.l-interview__list .list-content__info {
  color: #666666;
  font-size: 1.6rem;
  line-height: 23px;
  letter-spacing: 0;
  margin-bottom: 0;
}
.l-interview__list .list-content__info-big {
  font-size: 1.9rem;
}
@media screen and (max-width: 1300px) {
  .l-interview__list img {
    width: 40%;
  }
  .l-interview__list .list-content {
    padding: 30px 45px;
  }
  .l-interview p.p-title::before {
    left: -30px;
  }
}
@media screen and (max-width: 991px) {
  .l-interview p.sm-title, .l-interview p.p-title {
    text-align: center;
  }
  .l-interview p.p-title::before {
    content: none;
  }
  .l-interview__list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .l-interview__list img {
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  .l-interview {
    padding-top: 50px;
    padding-bottom: 55px;
    margin-top: 55px;
    margin-bottom: 50px;
  }
  .l-interview p.sm-title {
    margin-bottom: 14px;
  }
  .l-interview p.p-title {
    font-size: 1.8rem;
  }
  .l-interview__list {
    margin-top: 25px;
  }
  .l-interview__list .list-content__group {
    margin-bottom: 13px;
  }
  .l-interview__list .list-content {
    padding: 20px 30px;
  }
  .l-interview__list .list-content__title1 {
    margin-bottom: 8px;
  }
  .l-interview__list .list-content__title2 {
    margin-bottom: 12px;
  }
  .l-interview__list .list-content__info {
    padding-left: 0;
    font-size: 1.3rem;
  }
  .l-interview__list .list-content__info-big {
    font-size: 1.5rem;
  }
}
/* ========================================================== */
/* MODEL HOUSE */
.l-model {
  max-width: 1600px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.l-model .c-section-img {
  width: 53.7%;
}
.l-model .c-section-img::after {
  content: "";
  background-image: url("./../images/page-lp/overview.jpg?2024");
  background-position: 78% center;
}
.l-model .c-section-info {
  padding-top: 46px;
  padding-right: 3%;
  padding-left: 7.5%;
  padding-bottom: 42px;
  width: 40%;
}
.l-model .c-title1 {
  margin-bottom: 38px;
}
.l-model .c-title1 .f-mont {
  margin-bottom: 56px;
}
.l-model .c-title1 .big-text {
  font-size: 3.5rem;
  letter-spacing: 0.09em;
}
.l-model .c-title1 span {
  position: relative;
}
.l-model .c-title1 span sup {
  font-size: 0.95rem;
  letter-spacing: 0.15em;
  line-height: 1.1;
  position: absolute;
  white-space: nowrap;
  left: 50%;
  top: -10%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  display: inline-block;
  font-weight: normal;
}
.l-model__list {
  width: 100%;
  max-width: 539px;
  margin-top: 62px;
  padding-left: 0;
}
.l-model__list li {
  border-top: 1px solid rgba(204, 204, 204, 0.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.l-model__list li:last-child {
  border-bottom: 1px solid rgba(204, 204, 204, 0.5);
}
.l-model__list li span {
  display: block;
  padding: 8px 16px;
  font-weight: 300;
  font-size: 1.5rem;
  letter-spacing: 0.037em;
  line-height: 30px;
}
.l-model__list li span:first-child {
  width: 218px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-weight: 500;
  background-color: #f9f9f9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media screen and (max-width: 1350px) {
  .l-model .c-section-img {
    width: 40%;
  }
  .l-model .c-section-img::after {
    background-position-x: 65%;
  }
  .l-model .c-section-info {
    padding-left: 5%;
    padding-right: 5%;
  }
}
@media screen and (max-width: 991px) {
  .l-model {
    width: 100%;
    padding-left: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .l-model .c-section-img {
    width: 100%;
    height: 400px;
    /* margin-left: auto; */
  }
  .l-model .c-section-info {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -30px;
    background-color: #fff;
    z-index: 1;
    -webkit-box-shadow: 1px 4px 9px rgba(139, 166, 180, 0.27);
    box-shadow: 1px 4px 9px rgba(139, 166, 180, 0.27);
  }
  .l-model p.sm-title {
    margin-bottom: 0;
  }
  .l-model .c-section-info .c-title1 {
    margin-bottom: 25px;
  }
  .c-section-info p.p-main2 + p.p-main2 {
    margin-top: 10px;
  }
  .l-model__list {
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 576px) {
  .l-model .c-section-img {
    height: 250px;
  }
  .l-model .c-section-info {
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin-top: 0;
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .l-model p.sm-title {
    margin-bottom: 10px;
  }
  .l-model .c-section-info .c-title1 {
    margin-bottom: 15px;
  }
  .l-model .c-title1 .f-mont {
    margin-bottom: 10px;
  }
  .l-model .c-title1 .big-text {
    font-size: 2.5rem;
  }
  .l-model .c-title1 span sup {
    top: -20%;
  }
  .l-model .c-section-p br {
    display: none;
  }
  /* LIST  */
  .l-model__list {
    margin-top: 30px;
  }
  .l-model__list li span:first-child {
    width: 90px;
  }
  .l-model__list li span {
    font-size: 1.3rem;
    padding: 8px;
  }
}
/* ========================================================== */
/* PLAN */
.l-plan {
  max-width: 1116px;
  margin-top: 86px;
  margin-bottom: 122px;
}
.l-plan .c-title2 {
  margin-bottom: 60px;
}
.l-plan ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  padding-left: 0;
}
.l-plan li {
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .l-plan {
    margin-top: 50px;
    margin-bottom: 50px;
  }
  .l-plan .c-title2 {
    font-size: 2.2rem;
    margin-bottom: 30px;
  }
}
/* ========================================================== */
/* IMGS SLIDE */
#slider-imgs {
  margin-top: 132px;
  margin-bottom: 132px;
}
#slider-imgs .slider-img {
  display: block;
  height: 310px;
}
#slider-imgs2 img {
  display: block;
  width: 100%;
  height: 667px;
}
@media screen and (max-width: 992px) {
  #slider-imgs2 img {
    height: 400px;
  }
}
@media screen and (max-width: 767px) {
  #slider-imgs {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  #slider-imgs .slider-img, #slider-imgs2 img {
    height: 250px;
  }
}
/* ========================================================== */
/* TABLE */
.l-table {
  max-width: 1439px;
  margin-bottom: 82px;
}
.l-table .c-title2 {
  letter-spacing: 0;
  font-size: 2.9rem;
  margin-bottom: 26px;
}
.l-table .c-title2 .small-txt {
  letter-spacing: 0.02em;
  font-size: 2.1rem;
  margin-bottom: 14px;
}
.l-table .c-title2 .gray-txt {
  color: #808080;
  letter-spacing: 0.09em;
  font-size: 1.58rem;
  margin-top: 38px;
}
.l-table .c-section-textimg {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.l-table__bg {
  display: block;
  width: 52.55%;
  margin-right: 57px;
}
.l-table table {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  border-collapse: collapse;
}
.l-table tr {
  height: 55px;
}
.l-table tr:last-child {
  height: 72px;
}
.l-table td, .l-table th {
  width: 33.33333%;
  border: 1px solid rgba(204, 204, 204, 0.66);
  padding: 0 10px;
  text-align: center;
  vertical-align: middle;
}
.l-table th {
  color: #fff;
  background-color: #000;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}
.l-table tr td {
  font-weight: 400;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}
.l-table tr:nth-child(odd) td {
  background-color: #f0f0f0;
}
.l-table tr td:first-child {
  font-size: 1.4rem;
}
.l-table tr td.l-table--cl-red {
  color: #ff0000;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  /* IE10+ CSS styles go here */
  .l-table th span {
    line-height: 42px;
  }
}
@media screen and (max-width: 1350px) {
  .l-table__bg {
    margin-right: 20px;
  }
}
@media screen and (max-width: 991px) {
  .l-table .c-section-textimg {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .l-table__bg {
    width: 100%;
    margin-right: 0;
    margin-bottom: 35px;
  }
}
@media screen and (max-width: 576px) {
  .l-table {
    margin-bottom: 60px;
  }
  .l-table__main-img {
    margin-bottom: 36px;
  }
  .l-table .c-title2 .small-txt {
    font-size: 1.8rem;
    margin-bottom: 8px;
  }
  .l-table .c-title2 .gray-txt {
    font-size: 1.4rem;
    margin-top: 20px;
  }
  .l-table td, .l-table th {
    padding: 0 5px;
  }
  .l-table th {
    font-size: 1.4rem;
  }
  .l-table tr td {
    font-size: 1.3rem;
  }
  .l-table tr td:first-child {
    font-size: 1.2rem;
  }
  .l-table tr:last-child {
    height: 55px;
  }
}
/* ========================================================== */
/* CONTACT US */
.l-form {
  margin-bottom: 130px;
}
.l-form .c-title2 {
  margin-bottom: 62px;
}
@media screen and (max-width: 1150px) {
  .l-form {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 576px) {
  .l-form {
    margin-bottom: 60px;
  }
  .l-form .c-title2 {
    margin-bottom: 35px;
  }
}
/* ========================================================== */
/* PAGEUP  */
.pageup {
  position: fixed;
  bottom: 5.5%;
  right: 3%;
  z-index: 1000;
  opacity: 0;
  margin-bottom: 0;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.pageup.show {
  opacity: 1;
}
.pageup a {
  width: 51px;
  height: 51px;
  border-radius: 50%;
  background-color: #fff;
  -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.pageup img {
  display: block;
  width: 20px;
}
@media screen and (max-width: 767px) {
  .pageup {
    display: none !important;
  }
}
/* FOOTER */
#footer {
  padding-top: 108px;
  padding-bottom: 62px;
  background-color: #000;
  color: #fff;
}
.footer_logo {
  width: 226px;
  margin: 0 auto 68px;
}
#footer .foot_copy {
  font-size: 1.3rem;
  letter-spacing: 0.065em;
  color: #fff;
}
@media screen and (max-width: 576px) {
  #footer {
    padding-top: 60px;
    padding-bottom: 40px;
  }
  .footer_logo {
    margin-bottom: 40px;
  }
}
.br-sp {
  display: none;
}
@media screen and (max-width: 576px) {
  .br-sp {
    display: block;
  }
}
/* ======================================================== */
/* 2棟同時見学会開催用 */
.l-book {
  width: 95%;
  max-width: 1140px;
  margin-bottom: 96px;
}
.l-book .c-section-img {
  width: 40%;
  min-width: 500px;
  order: 2;
}
.l-book .c-section-img::after {
  content: "";
  background-image: url(./../images/page-lp/hoshino_img01.png);
  background-position: 90% 50%;
  background-size: contain;
}
.l-book .c-section-info {
  padding-left: 8%;
  padding-top: 58px;
  padding-bottom: 58px;
  order: 1;
}
.l-book .c-title1 .f-mont {
  margin-bottom: 60px;
}
@media screen and (max-width: 1700px) {
  .l-book .c-section-info {
    padding-left: 8%;
  }
}
@media screen and (max-width: 1500px) {
  .l-book .c-section-img::after {
    background-position-x: 78%;
  }
  .l-book .c-section-info {
    padding-left: 5%;
  }
}
@media screen and (max-width: 991px) {
  .l-book {
    width: 90%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .l-book .c-section-img {
    width: 100%;
    min-width: unset;
    height: 400px;
  }
  .l-book .c-section-info {
    padding-bottom: 0;
  }
}
@media screen and (max-width: 576px) {
  .l-book {
    margin-bottom: 50px;
  }
  .l-book .c-section-img {
    height: 260px;
    margin-top: 40px;
  }
  .l-book .c-section-info {
    padding-left: 0;
    padding-top: 40px;
  }
  .l-book .c-section-p br.c-line-break {
    display: none;
  }
}
.book_container {
  width: 100%;
  padding: 8rem 0 12rem;
  margin: 8rem auto;
  background-color: #f9f9f9;
  text-align: center;
}
.book_container .f-ship {
  margin-bottom: 40px;
}
.book_container2 {
  text-align: center;
  margin: 8rem auto;
  width: 90%;
  max-width: 850px;
  border-left: solid 1px #000;
  border-right: solid 1px #000;
}
.book_container2 .c-title2 .f-mont {
  font-size: 7rem;
}
.book_container2_txt01_box {
  display: flex;
  justify-content: center;
  align-items: center;
}
.book_container2_txt01 {
  color: #fff;
  background: #313233;
  font-size: 5rem;
  margin-left: 2rem;
  padding: 1rem;
}
.book_container3 {
  text-align: center;
  margin: 8rem auto 10rem;
  width: 90%;
  max-width: 850px;
  border-left: solid 1px #000;
  border-right: solid 1px #000;
}
.book_container3 .c-title2 .f-mont {
  font-size: 7rem;
  margin-bottom: 3rem;
}
.book_container3_txt2_box {
  display: flex;
  justify-content: center;
  align-items: center;
}
.book_container3_txt1 {
  font-size: 2.5rem;
}
.book_container3_txt2 {
  color: #fff;
  background: #313233;
  font-size: 5rem;
  margin-left: 2rem;
  padding: 1rem;
}
@media screen and (max-width: 767px) {
  .book_container {
    padding: 5rem 0;
    margin: 6rem auto;
  }
  .book_container .book_container_inner {
    width: 90%;
    margin: 0 auto;
  }
  .book_container .f-ship {
    font-size: 2rem;
  }
  .book_container2 {
    margin: 1rem auto;
  }
  .book_container2 .c-title2 {
    font-size: 1.6rem;
  }
  .book_container2 .c-title2 .f-mont {
    font-size: 3rem;
  }
  .book_container2_txt01_box {
    flex-direction: column;
  }
  .book_container2_txt01 {
    font-size: 4rem;
    margin-left: 0;
    margin-top: 1rem;
  }
  .l-book .c-title1 .f-mont {
    margin-bottom: 20px;
  }
  .book_container3 {
    margin: 4rem auto 6rem;
  }
  .book_container3 .c-title2 {
    font-size: 1.6rem;
  }
  .book_container3 .c-title2 .f-mont {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
  .book_container3_txt1 {
    font-size: 1.8rem;
  }
  .book_container3_txt2_box {
    flex-direction: column;
    font-size: 2rem;
  }
  .book_container3_txt2 {
    margin-top: 1rem;
    font-size: 3.4rem;
    margin-left: 0;
  }
}
.br-pc {
  display: block;
}
.br-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .br-pc {
    display: none;
  }
  .br-sp {
    display: block;
  }
}
/*******************************
/* フォーム/テーブル
*******************************/
.wpcf7-submit {
  font-size: 1.2em;
  background-color: #000;
  color: #fff;
  border-style: none;
  width: 60%;
  margin-bottom: 30px;
  padding-top: 15px;
  padding-right: 40px;
  padding-bottom: 15px;
  padding-left: 40px;
}
#form {
  max-width: 100%;
  margin-bottom: 40px;
  background-color: #fff;
}
#form th span {
  font-size: 0.8em;
  color: #fff;
  background-color: #c00;
  padding: 3px;
}
#form th {
  padding: 10px;
  width: 30%;
  border-bottom: 1px solid #1a1a1a;
}
#form td {
  padding: 10px;
  border-bottom: 1px solid #1a1a1a;
  vertical-align: middle;
  font-weight: normal;
  text-align: left;
}
/* テキストエリアの設定 */
input[type="date"], input[type="text"], input[type="email"], input[type="tel"], textarea, select {
  width: 100%;
  color: #000;
  padding: 10px 0 10px 10px;
  margin: 10px 0;
}
input[type="date"]:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, textarea:focus, select:focus {
  background-color: #fff;
}
@media only screen and (max-width: 479px) {
  /* 479px以下用（スマートフォン用）の記述 */
  #form {
    max-width: 100%;
    margin-bottom: 40px;
  }
  #form th {
    width: 100%;
    display: block;
    border-top: none;
  }
  #form td {
    width: 100%;
    display: block;
    border-top: none;
  }
  #form tr:first-child th {
    border-top: 1px solid #ddd;
  }
  /* テキストエリアの設定 */
  input[type="date"], input[type="text"], input[type="email"], input[type="tel"], textarea, select {
    width: 100%;
    padding: 10px 0px 0px 0px;
    margin: 10px 0;
  }
  .wpcf7-submit {
    font-size: 1.2em;
    border-style: none;
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
/*******************************
/* プライバシーフレーム
***************************/
.formPrivacy {
  border: 1px solid #cccccc;
  background: #fff none repeat scroll 0%;
  height: 150px;
  overflow: scroll;
  max-width: 600px;
  padding: 10px 19px;
  margin: 0 auto 30px;
  text-align: left;
  font-size: 1em;
}
/*******************************
/* モデルハウス2変更点
***************************/
/*color*/
.p-model-lp2 {
  color: #464646;
}
/*btn*/
.p-model-lp2 .l-contact-btn__inner {
  background-color: #7a7a7a;
}
/*FV*/
.p-model-lp2 #slider-mainvisual .mainvisual-item:nth-child(1) {
  background-image: url(./../images/page-lp/fv_2.jpg);
}
.p-model-lp2 .c-mainvisual__text .big-text {
  font-size: 12rem;
  margin-bottom: 2.5rem;
  line-height: 1.1;
  font-weight: 500;
}
.p-model-lp2 .c-mainvisual__text {
  bottom: 7.5%;
}
@media screen and (max-width: 1300px) {
  .p-model-lp2 .c-mainvisual__text .big-text {
    font-size: 8rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 991px) {
  .p-model-lp2 .c-mainvisual__text .big-text {
    font-size: 7rem;
    margin-bottom: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  .p-model-lp2 .c-mainvisual__text .big-text {
    font-size: 4rem;
    margin-bottom: 1.2rem;
  }
}
@media screen and (min-width: 1400px) {
  .p-model-lp2 .header_txt {
    margin-bottom: 1.2rem;
  }
}
/*parallax*/
.p-model-lp2 .l-parallax__bg {
  background-image: url(./../images/page-lp/parallax_2.jpg);
}
/*Concept*/
.p-model-lp2 .l-concept .c-section-info .c-title1 .f-mont {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-model-lp2 .c-section-info2 {
    text-align: center;
  }
  .p-model-lp2 .l-concept .c-section-info .c-title1 {
    margin-bottom: 35px;
  }
}
/*point*/
ul.model-point-ul {
  padding: 0;
  width: 85%;
  margin: 4rem auto 0;
}
ul.model-point-ul .txt1 {
  font-size: 1.8rem;
  margin: 2rem 0 1.2rem;
  font-weight: 400;
}
ul.model-point-ul li {
  margin-bottom: 4.5rem;
}
ul.model-point-ul li:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 992px) {
  ul.model-point-ul {
    padding: 0;
    width: 77.77%;
    margin: 5rem auto 0;
    max-width: 1000px;
  }
  ul.model-point-ul li {
    margin-bottom: 5.5rem;
    text-align: center;
  }
  ul.model-point-ul .txt1 {
    font-size: 2.4rem;
    margin: 3.5rem 0 2rem;
  }
}
@media screen and (min-width: 1400px) {
  ul.model-point-ul {
    margin: 6rem auto 0;
  }
  ul.model-point-ul li {
    margin-bottom: 7.5rem;
  }
  ul.model-point-ul .txt1 {
    font-size: 2.6rem;
  }
}
/*modelhouse*/
.bk-gray {
  background-color: #f9f9f9;
}
.l-model-outline {
  margin-top: 7.5rem;
}
.l-model.l-model-outline .c-section-info {
  background-color: #f9f9f9;
  padding-top: 4rem;
  padding-bottom: 7rem;
}
.p-model-lp2 .l-model .c-section-img::after {
  background-image: url(./../images/page-lp/overview_2.jpg);
  background-position: 49% center;
}
.p-model-lp2 .l-model__list li span:first-child {
  background-color: #6b6b6b;
  color: #fff;
}
.p-model-lp2 .l-model__list {
  background: #fff;
}
@media screen and (min-width: 768px) {
  .l-model-outline {
    margin-top: 12rem;
    padding-bottom: 10rem;
  }
  .l-model.l-model-outline .c-section-info {
    background-color: #FFFFFF;
    padding-top: 5rem;
  }
}
@media screen and (min-width: 992px) {
  .l-model.l-model-outline .c-section-info {
    background-color: #f9f9f9;
    padding-top: 5rem;
  }
  .l-model-outline {
    margin-top: 12rem;
    padding: 10rem 0;
  }
}
@media screen and (min-width: 1200px) {
  .l-model-outline {
    margin-top: 14rem;
    padding: 13rem 0;
  }
}
/*こんな方におすすめ*/
.l-mode-check {
  width: 90%;
  margin: 0 auto;
}
.l-mode-check .c-title2 {
  margin-bottom: 3rem;
}
ul.l-check-ul {
  padding: 0;
}
ul.l-check-ul li {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #ddd;
  padding-bottom: 1rem;
  margin-bottom: 1.5rem;
}
.l-check-ul span.icon {
  background: url(../images/page-lp/icon_check.svg);
  background-repeat: no-repeat;
  width: 18px;
  height: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: space-evenly;
  margin-right: 0.7rem;
}
@media screen and (min-width: 768px) {
  .l-mode-check .c-title2 {
    margin-bottom: 5rem;
  }
  ul.l-check-ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  ul.l-check-ul li {
    padding-bottom: 1.5rem;
    margin-bottom: 2rem;
    width: calc(50% - 1.5rem);
  }
}
@media screen and (min-width: 992px) {
  ul.l-check-ul li {
    font-size: 1.6rem;
  }
  ul.l-check-ul {
    max-width: 900px;
    margin: 0 auto;
  }
}
/*申し込みフォーム*/
.p-model-lp2 #contact {
  margin-top: 6rem;
  margin-bottom: 6rem;
}
.p-model-lp2 #contact .c-title2 {
  margin-bottom: 4rem;
}
@media screen and (min-width: 768px) {
  .p-model-lp2 #contact {
    margin-top: 10rem;
    margin-bottom: 10rem;
  }
}
@media screen and (min-width: 1400px) {
  .p-model-lp2 #contact {
    margin-top: 12rem;
    margin-bottom: 12rem;
  }
  .p-model-lp2 #contact .c-title2 {
    margin-bottom: 5rem;
  }
}

/* FORM MODEL */
#form-model .form-group {
  margin-bottom: 56px;
}
#form-model .form-label {
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: 0;
  margin-bottom: 24px;
}
#form-model .form-label__required {
  color: #fff;
  display: inline-block;
  font-size: 1.3rem;
  letter-spacing: 0.04em;
  background-color: #d41515;
  padding: 2px 10px;
  margin-right: 18px;
}
#form-model input, #form-model textarea, #form-model select {
  display: block;
  width: 100%;
  border: none;
  outline: none;
  resize: none;
  margin: 0;
  border: 1px solid rgba(153, 153, 153, 0.5);
  padding: 23px 30px;
}
#form-model textarea {
  padding-bottom: 32px;
}
#form-model input, #form-model textarea, #form-model select {
  font-weight: 400;
  font-size: 1.5rem;
  letter-spacing: 0;
}
#form-model input.form-input__small300 {
  max-width: 300px;
}
#form-model input[type="submit"] {
  display: inline-block;
  width: 100%;
  max-width: 300px;
  font-weight: 500;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  background-color: #464646;
  padding: 20px 10px;
  color: #fff;
  margin-top: 48px;
}
#form-model p {
  margin-bottom: 0;
}
#form-model .form-scroll {
  border: 1px solid rgba(153, 153, 153, 0.5);
  background: #fff none repeat scroll 0%;
  height: 150px;
  overflow: scroll;
  padding: 10px 19px;
  font-weight: 300;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  line-height: 25px;
  margin-bottom: 36px;
}
#form-model .form-scroll__mb {
  margin-bottom: 30px;
}
#form-model .wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
  display: block;
  margin-top: 6px;
}
/* RADIO */
#form-model .form-input__checkbox .wpcf7-form-control {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
/* CUSTOM CHECKBOX */
#form-model .form-input__checkbox .wpcf7-list-item {
  margin: 0;
}
#form-model .form-input__checkbox .wpcf7-list-item + .wpcf7-list-item {
  margin-top: 6px;
}
#form-model .form-input__checkbox label {
  cursor: pointer;
}
#form-model .form-input__checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
#form-model .form-input__checkbox .wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  font-weight: 300;
  font-size: 1.6rem;
  letter-spacing: 0;
  border-radius: 50%;
}
#form-model .form-input__checkbox .wpcf7-list-item-label::before, #form-model .form-input__checkbox .wpcf7-list-item-label::after {
  content: "";
  border-radius: inherit;
  transition: 0.2s;
}
#form-model .form-input__checkbox .wpcf7-list-item-label::before {
  left: 0;
  display: block;
  height: 20px;
  width: 20px;
  margin-right: 14px;
  border: 1px solid rgba(153, 153, 153, 0.5);
}
#form-model .form-input__checkbox .wpcf7-list-item-label::after {
  position: absolute;
  top: 50%;
  left: 6px;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  opacity: 0;
  background-color: #464646;
}
#form-model .form-input__checkbox input:checked ~ .wpcf7-list-item-label::after {
  opacity: 1;
}
.form-top--text{
  margin-bottom: 4rem;
}
#form-model .form_c_item.datetime{
  display: flex;
  justify-content: space-between;
  gap: 5px;
}
#form-model .form_c_item.datetime .select_item{
  position: relative;
  width: calc((100% - 5px)/2);
}
#form-model .form_c_item.datetime .select_item select{
  width: 100%;
  padding-right: 50px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  color: #ccc;
}
#form-model .form_c_item.datetime .select_item select.selected{
  color: #000;
}
#form-model .form_c_item.datetime .select_item::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 8px;
  height: 8px;
  border-right: 1px solid #464646;
  border-bottom: 1px solid #464646;
  transform: translateY(-70%) rotate(45deg);
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .form-top--text, .form-bottom--text{
    text-align: center;
  }
  .form-top--text{
    margin-bottom: 6rem;
  }
}
@media screen and (max-width: 767px) {
  #form-model .form-group {
    margin-bottom: 30px;
  }
  #form-model input.form-input__small300 {
    max-width: unset;
  }
  #form-model .form-label {
    font-size: 1.5rem;
    margin-bottom: 15px;
  }
  #form-model .form-label__required {
    font-size: 1.1rem;
    margin-right: 10px;
  }
  #form-model input, #form-model textarea, #form-model select {
    font-size: 1.4rem;
    padding: 12px 16px;
  }
  #form-model input[type="submit"] {
    font-size: 1.6rem;
    padding: 16px 10px;
  }
  /* CUSTOM CHECKBOX */
  #form-model .form-input__checkbox .wpcf7-list-item-label {
    font-size: 1.4rem;
  }
  #form-model .form-input__checkbox .wpcf7-list-item-label::before {
    height: 16px;
    width: 16px;
    margin-right: 10px;
  }
  #form-model .form-input__checkbox .wpcf7-list-item-label::after {
    left: 3px;
    width: 10px;
    height: 10px;
  }
}
#form-model .wpcf7-spinner{
  display: none;
}

/*---------- 予約状況 ----------*/
.event-form{
	margin-top: 5.4928rem;
}
/***** 予約状況エリア全体 *****/
.res-status-container {
    margin: 0 auto 5.892rem;
}
.res-status-title{
  font-size: 18px;
  font-weight: 500;
	margin-bottom: 10px;
  letter-spacing: 0.08em;
	line-height: 1.5;
}
.res-status-lead{
	margin-bottom: 5px;
}
.res-status-item{
	font-size: 12px;
	margin-bottom: 0;
}
.res-status-body{
	margin-top: 30px;
}

/***** 日付ごとのブロック（日付＋枠） *****/
.res-date-group + .res-date-group {
    margin-top: 30px; /* 日付ごとの間隔 */
}

/* 日付ラベル：枠の上に配置 */
.res-date-label {
    display: block;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 12px;
    padding-bottom: 5px;
    border-bottom: 1px solid rgba(200,200,200,0.5);
    color: #464646;
}

/***** 予約枠グリッド（横並びの箱） *****/
.res-slot-grid {
    display: flex;
    flex-wrap: wrap;    /* 入りきらない場合に折り返す */
    gap: 10px;          /* ボタン同士の隙間（上下左右） */
}

/***** 枠ボタンの基本設定 *****/
.res-slot-btn {
    position: relative; /* バッジ（absolute）の基準点 */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row; /* 時間と記号を横に並べる */
    box-sizing: border-box;
    
    /* スマホ時：3列（隙間を考慮して約31%） */
    width: calc(33.333% - 7px); 
    
    padding: 10px 0;
    border: 1px solid #ddd;
    text-decoration: none;
    background: #fff;
    gap: 6px;
    transition: all 0.2s ease;
}
.res-slot-btn:hover{
	text-decoration: none;
}

/* 時間と記号の文字設定 */
.slot-time {
    font-size: 14px;
    font-weight: 500;
    color: #464646;
}
.slot-icon {
    font-size: 14px;
    color: #464646;
}

/***** 個別ステータス設定 *****/

/* --- 残りわずか (is-low) --- */
.res-slot-btn.is-low {
    border: 2px solid #808080 !important;
    background-color: #f5f5f5;
}
.res-slot-btn.is-low .slot-icon {
    color: #464646;
    font-weight: 500;
}

/* バッジ（残りn枠） */
.slot-badge {
    position: absolute;
    top: -8px;      /* ボタンの枠より少し上に出す */
    right: 5px;      /* 右側に配置 */
    z-index: 2;
    padding: 2px 6px 3px;
    background: #808080;
    color: #fff;
    font-size: 9px;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
    border-radius: 10px;
}

/* --- 満員 (is-full) --- */
.res-slot-btn.is-full {
    background-color: #F0F0F0;
    border: 1px solid #e0e0e0;
    pointer-events: none;
}
.res-slot-btn.is-full .slot-time,
.res-slot-btn.is-full .slot-icon {
    color: #b3b3b3;
}

/* --- 選択中のスタイル (is-active) --- */
.res-slot-btn.is-active {
    background-color: #464646 !important; /* ボタン全体の色 */
    border-color: #464646 !important;
    color: #fff !important;
}

.res-slot-btn.is-active .slot-time,
.res-slot-btn.is-active .slot-icon {
    color: #fff !important; /* 中の文字や記号も白抜きにする */
}


/***** レスポンシブ設定（PC画面） *****/
@media screen and (min-width: 768px) {
    .res-slot-btn {
        /* PCでは固定幅にして、横にたくさん並ぶようにする */
        width: 130px;
        padding: 12px 0;
    }
    
    .slot-time, .slot-icon {
        font-size: 15px;
    }
	.slot-badge{
		right: 10px;
		padding: 4px 8px;
	}
}
@media screen and (min-width: 1200px){
	#ev_form{
		margin-top: 8.928rem;
	}
	.event-form{
		margin-top: 8.527rem;
	}
	.res-status-container{
		margin-bottom: 10.528rem;
	}
	.res-status-title{
		font-size: 20px;
		margin-bottom: 0.785rem;
	}
}
