.load-page {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background-color: #fff
}

.load-page__inner {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center
}

.load-page__logo {
  width: 278px;
  height: 58px;
  text-align: center;
  position: relative
}

.load-page__logo .logo01,
.load-page__logo .logo02 {
  width: 100%;
  height: 58px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden
}

.load-page__logo .logo01 img,
.load-page__logo .logo02 img {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto
}

.load-page__logo .logo02 {
  height: 0
}

body.top {
  padding-top: 0
}

.wrap-top {
  margin-top: 100vh;
  position: relative;
  z-index: 100;
  background-color: #fff
}

@media (min-width: 1000px) {
  .wrap-top {
    padding-bottom: 180px;
    margin-top: 100vh !important
  }
}

@media (max-width: 999px) {
  .wrap-top {
    margin-top: 153.6vw;
    padding-bottom: 84px
  }
}

.l-fContact:before {
  content: "";
  width: 100%;
  height: 50px;
  background-color: #fff;
  position: absolute;
  top: -25px;
  left: 0;
  z-index: -1
}

.mv {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background-color: #000
}

.mv .mv-slide {
  position: relative
}

.mv .mv-slide .img-slide {
  width: 100%;
  height: 100vh;
  background-position: center;
  background-size: cover
}

@media (min-width: 1000px) {
  .mv .mv-slide .img-slide {
    height: 100vh !important
  }
}

@media (max-width: 999px) {
  .mv .mv-slide .img-slide {
    height: 153.6vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center
  }
}

.mv .mv-slide .swiper-button-prev,
.mv .mv-slide .swiper-button-next {
  width: 27px;
  height: 62px;
  background-color: rgba(255, 244, 255, 0.72);
  margin-top: -32px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 8px 10px;
  transition: 0.3s
}

@media only screen and (min-width: 1025px) {

  .mv .mv-slide .swiper-button-prev:hover,
  .mv .mv-slide .swiper-button-next:hover {
    background-color: rgba(35, 24, 21, 0.72)
  }
}

@media (max-width: 999px) {

  .mv .mv-slide .swiper-button-prev,
  .mv .mv-slide .swiper-button-next {
    width: 23px;
    height: 52px;
    margin-top: -26px
  }
}

.mv .mv-slide .swiper-button-prev {
  left: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='10' viewBox='0 0 8 10'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23231815;stroke-linecap:round;stroke-width:1.5px;%7D%3C/style%3E%3C/defs%3E%3Cg transform='translate(1.301 1.045)'%3E%3Cpath class='a' d='M1584.03,4997.186l-5.675,4,5.675,4' transform='translate(-1578.354 -4997.186)'/%3E%3C/g%3E%3C/svg%3E")
}

@media only screen and (min-width: 1025px) {
  .mv .mv-slide .swiper-button-prev:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='10' viewBox='0 0 8 10'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23fff;stroke-linecap:round;stroke-width:1.5px;%7D%3C/style%3E%3C/defs%3E%3Cg transform='translate(1.301 1.045)'%3E%3Cpath class='a' d='M1584.03,4997.186l-5.675,4,5.675,4' transform='translate(-1578.354 -4997.186)'/%3E%3C/g%3E%3C/svg%3E")
  }
}

.mv .mv-slide .swiper-button-next {
  right: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='10' viewBox='0 0 8 10'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23231815;stroke-linecap:round;stroke-width:1.5px;%7D%3C/style%3E%3C/defs%3E%3Cg transform='translate(1.045 1.045)'%3E%3Cpath class='a' d='M1578.355,4997.186l5.675,4-5.675,4' transform='translate(-1578.354 -4997.186)'/%3E%3C/g%3E%3C/svg%3E")
}

@media only screen and (min-width: 1025px) {
  .mv .mv-slide .swiper-button-next:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='10' viewBox='0 0 8 10'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23fff;stroke-linecap:round;stroke-width:1.5px;%7D%3C/style%3E%3C/defs%3E%3Cg transform='translate(1.045 1.045)'%3E%3Cpath class='a' d='M1578.355,4997.186l5.675,4-5.675,4' transform='translate(-1578.354 -4997.186)'/%3E%3C/g%3E%3C/svg%3E")
  }
}

.mv .mv-slide .mv-hd {
  position: absolute;
    bottom: 10%;
    left: 6.5vw;
    z-index: 3;
    margin-top: -4vw;
}

.mv .mv-slide .mv-hd__txt {
  width: 42vw;
  position: absolute;
  top: -8.1vw;
  left: 0vw;
  opacity: .9;
  text-shadow: 2px 4px 12px rgba(0,0,0,.9)
}

.mv .mv-slide .mv-hd__ttl span {
  display: inline-block;
  font-size: 5vw;
  line-height: 4vw; 
  line-height: 6vw;
  letter-spacing: .25vw;
  color: #fff;
  font-family: "游明朝体", "游明朝", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.25);
  font-weight: 600
}
.mv-hd__ttl .mv-hd__sub { font-size:1.9rem !important; font-weight:400 !important; letter-spacing:.1em; color:#fff; text-shadow:1px 2px 6px rgba(0,0,0,.4) !important; display:block; }
.mv .mv-slide .mv-hd img {
  width: 100%
}

.js-inview.l-header {
  opacity: 0;
  transform: translateY(-30px);
  transition: all 1s ease-out;
  transition-delay: 1.5s
}

.js-inview.mv .mv-slide .swiper-button-prev,
.js-inview.mv .mv-slide .swiper-button-next {
  transition: transform 2s ease 0.1s, opacity 2s ease 0.1s;
  transition-delay: 1.5s;
  opacity: 0
}

.js-inview.mv .mv-slide .mv-hd {
  transition: transform 2s ease 0.1s, opacity 2s ease 0.1s;
  transition-delay: 2.5s;
  opacity: 0
}

.js-inview.mv .scroll-icon {
  transition: transform 2s ease 0.1s, opacity 2s ease 0.1s;
  transition-delay: 2.5s;
  opacity: 0
}

.js-inview.mv .news {
  transition: transform 2s ease 0.1s, opacity 2s ease 0.1s;
  transform: translateY(80px);
  transition-delay: 2.5s;
  opacity: 0
}

.is-inview-active.l-header {
  opacity: 1;
  transform: translateY(0)
}

.is-inview-active.mv .mv-slide .swiper-button-prev,
.is-inview-active.mv .mv-slide .swiper-button-next {
  opacity: 1
}

.is-inview-active.mv .mv-slide .mv-hd {
  opacity: 1
}

.is-inview-active.mv .scroll-icon {
  opacity: 1
}

.is-inview-active.mv .news {
  opacity: 1;
  transform: translateY(0)
}

.scroll-icon {
  text-align: center;
  width: 12px;
  height: 135px;
  padding-left: 1px;
  position: absolute;
  bottom: 0;
  right: 94px;
  z-index: 1
}

@-webkit-keyframes sdl {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
  }

  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
  }

  50.1% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
  }

  to {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
  }
}

@keyframes sdl {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
  }

  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
  }

  50.1% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
  }

  to {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
  }
}

.scroll-icon:before {
  content: "";
  width: 2px;
  height: 73px;
  background-color: rgba(255, 255, 255, 0.4);
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  animation: sdl 2.5s cubic-bezier(1, 0, 0, 1) infinite
}

.news {
  width: 50%;
  height: 68px;
  position: absolute;
  right: 0;
  background-color: rgba(255, 255, 255, 0.72);
  z-index: 1
}

@media (min-width: 1000px) {
  .news {
    bottom: 0 !important
  }
}

@media (max-width: 999px) {
  .news {
    top: calc(153.6vw - 70px);
    width: calc(100% - 20px);
    height: 70px
  }
}

.news__inner {
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center
}

.news__hd {
  width: 85px;
  position: relative;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
  line-height: 26px;
  letter-spacing: .02em;
  font-weight: 600;
  color: #333;
  font-family: 'Montserrat', sans-serif
}

@media (max-width: 999px) {
  .news__hd {
    width: 65px;
    font-size: 16px;
    font-size: 1.6rem
  }
}

.news__hd:before {
  content: "";
  width: 1px;
  height: 32px;
  background-color: #4D4D4D;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -16px
}

@media (max-width: 999px) {
  .news__hd:before {
    display: none
  }
}

.news__content {
  width: calc(100% - 85px);
  position: relative
}

.news__content:before {
  content: "";
  width: 8px;
  height: 12px;
  margin-top: -6px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23231815;stroke-miterlimit:10;%7D%3C/style%3E%3C/defs%3E%3Cpath class='a' d='M1466.641,834.608l6.74-5.354-6.739-5.354' transform='translate(-1466.33 -823.509)'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 50%;
  right: 10px
}

@media (min-width: 1000px) {
  .news__content {
    height: 100%
  }
}

@media (max-width: 999px) {
  .news__content {
    width: calc(100% - 65px)
  }
}

.news__link {
  padding-right: 25px;
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center
}

@media (min-width: 1000px) {
  .news__link {
    height: 68px
  }
}

@media (max-width: 999px) {
  .news__link {
    height: 70px
  }
}

@media (min-width: 1000px) {
  .news__wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center
  }
}

.news__date {
  text-align: center;
  width: 100px;
  min-width: 100px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 23px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #4D4D4D;
  font-family: 'Montserrat', sans-serif
}

@media (max-width: 999px) {
  .news__date {
    margin-bottom: -2px;
    text-align: left;
    font-size: 9px;
    font-size: .9rem;
    line-height: 18px
  }
}

.news__txt {
  width: calc(100% - 100px);
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 26px;
  letter-spacing: .08em;
  font-weight: 500;
  color: #000;
  overflow: hidden;
  width: 100%;
  -webkit-line-clamp: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: normal
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .news__txt {
    margin-top: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
  }
}

@media (max-width: 999px) {
  .news__txt {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 21px;
    letter-spacing: .02em;
    font-weight: 500;
    overflow: hidden;
    width: 100%;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: normal
  }
}

.about {
  padding: 72px 0 112px;
  position: relative
}

@media (max-width: 999px) {
  .about {
    padding: 85px 0 76px
  }
}

.about .ttl01 {
  text-align: center;
  color: #333;
}

.about .ttl01__txt01 {
  display: block;
  font-size: 33px;
  font-size: 3.3rem;
  letter-spacing: .02em;
  font-weight: 600;
  text-transform: uppercase;
  font-family: 'Montserrat', sans-serif
}

.about .ttl01__txt02 {
  margin-top: 34px;
  display: block;
  font-size: 22px;
  font-size: 1.5rem;
  line-height: 46px;
  letter-spacing: .15em;
  font-weight: 600;
  font-family: "游明朝体", "游明朝", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-smooth: auto;
  -webkit-font-smoothing: auto
}

@media (max-width: 999px) {
  .about .ttl01__txt02 {
    margin: 23px -15px 0;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 35px;
    letter-spacing: .05em
  }
}

@media only screen and (max-width: 350px) {
  .about .ttl01__txt02 {
    font-size: 15px;
    font-size: 1.5rem
  }
}

.about .ttl01 .color01 {
  color: #A27630
}

.about .c-btn02 {
  margin-top: 28px
}

@media (max-width: 999px) {
  .about .c-btn02 {
    margin-top: 34px
  }
}

.about .about-bg {
  width: 100%;
  height: 30%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1
}

.about .about-txt {
  width: 100%;
  height: 100%;
  background-position: center bottom -15px !important;
  background-size: 101% auto !important
}

@media (max-width: 999px) {
  .about .about-txt {
    background-position: center bottom -3px !important
  }
}

.works {
  padding: 78px 0 88px;
  position: relative
}

@media (max-width: 999px) {
  .works {
    padding: 50px 0 113px
  }
}

.works:before {
  content: "";
  width: 100%;
  height: 296px;
  background-color: #F6F1EA;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

@media (max-width: 999px) {
  .works:before {
    height: 200px
  }
}

.works .lst-card {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

@media (min-width: 1000px) {
  .works .lst-card {
    margin-top: 56px
  }
}

@media (max-width: 999px) {
  .works .lst-card {
    margin-top: 22px;
    padding: 0 20px
  }
}

@media (min-width: 1000px) {
  .works .lst-card>li {
    width: calc(100%/3 - 10px);
    margin: 0 0 47px 15px
  }

  .works .lst-card>li:nth-child(3n+1) {
    margin-left: 0
  }
}

@media (max-width: 999px) {
  .works .lst-card>li {
    margin-bottom: 16px;
    width: 100%
  }

  .works .lst-card>li:nth-child(2),
  .works .lst-card>li:nth-child(3) {
    width: calc(50% - 2.5px)
  }

  .works .lst-card>li:nth-child(2) .image-card,
  .works .lst-card>li:nth-child(3) .image-card {
    position: relative
  }

  .works .lst-card>li:nth-child(2) .image-card:before,
  .works .lst-card>li:nth-child(3) .image-card:before {
    display: block;
    content: " ";
    width: 100%;
    padding-top: 100%
  }

  .works .lst-card>li:nth-child(2) .image-card>.content,
  .works .lst-card>li:nth-child(3) .image-card>.content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
  }

  .works .lst-card>li:nth-child(2) {
    margin-right: 5px
  }

  .works .lst-card>li:nth-child(5),
  .works .lst-card>li:nth-child(6) {
    display: none
  }
}

@media (max-width: 999px) {
  .works .c-card02__detail {
    text-align: left;
    padding: 4px 0
  }

  .works .c-card02__ttl {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.works .c-btn02 {
  margin-top: 20px
}

.event {
  background-color: #F2E7E7;
  padding: 95px 0 6vw;
  position: relative
}

@media (max-width: 999px) {
  .event {
    padding: 1px 0 93px
  }
}

@media (min-width: 1000px) {
  .event .inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto
  }
}

@media (max-width: 999px) {
  .event .inner {
    padding: 0 20px
  }
}

@media (min-width: 1000px) {
  .event .bl01 {
    width: 21.5%
  }
}

@media (max-width: 999px) {
  .event .bl01 {
    margin-top: -53px
  }
}

@media (min-width: 1000px) {
  .event .bl01 .ttl01 {
    margin: 5px 0 25px
  }
}

@media (max-width: 999px) {
  .event .bl01 .ttl01 {
    max-width: 332px;
    margin: 0 auto
  }
}

.event .bl01 .ttl01 img {
  width: 100%
}

.event .bl01 .c-btn02 {
  width: 100%;
  max-width: 230px;
  height: 54px
}

@media (min-width: 1000px) {
  .event .lst-card {
    width: 75.2%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between
  }

  .event .lst-card>li {
    width: 48%
  }
}

@media (max-width: 999px) {
  .event .lst-card {
    margin-top: 28px
  }

  .event .lst-card>li {
    margin-bottom: 20px
  }
}

@media (max-width: 999px) {
  .event .event-btn .c-btn02 {
    width: 100%
  }
}

.event .deco01 {
  width: 6.534vw;
  position: absolute;
  left: 1.3vw;
  bottom: 2.1vw
}

@media (max-width: 999px) {
  .event .deco01 {
    width: 98px;
    left: 11px;
    bottom: -20px
  }
}

.event .deco01 img {
  width: 100%
}

.event .deco02 {
  width: 2.4vw;
  position: absolute;
  left: 23.7vw;
  bottom: 1vw
}

@media (max-width: 999px) {
  .event .deco02 {
    width: 36px;
    left: auto;
    right: 21px;
    bottom: -12px
  }
}

.event .deco02 img {
  width: 100%
}

@media only screen and (min-width: 1025px) {
  .event .c-card03:hover .c-card03__inner:before {
    transition: transform 0.3s ease;
    transform: scaleX(0)
  }

  .event .c-card03:hover .c-card03__inner:after {
    transition: transform 0.3s ease 0.3s;
    transform: scaleX(1)
  }
}

@media only screen and (min-width: 1500px) {
  .event .c-card03 {
    padding: 6% 5%
  }
}

@media (min-width: 1000px) {

  .event .c-card03__inner:before,
  .event .c-card03__inner:after {
    content: "";
    width: 23px;
    height: 1px;
    background-color: #231815;
    z-index: 2;
    position: absolute;
    right: 0;
    top: 50%
  }

  .event .c-card03__inner:before {
    transition: transform 0.3s ease 0.3s;
    transform: scaleX(1);
    transform-origin: 100% 100%
  }

  .event .c-card03__inner:after {
    transition: transform 0.3s ease;
    transform: scaleX(0);
    transform-origin: 0 0
  }

  .event .c-card03__img {
    width: 33.543%
  }

  .event .c-card03__detail {
    width: 61%
  }

  .event .c-card03__txt {
    overflow: hidden;
    width: 100%;
    -webkit-line-clamp: 5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: normal
  }
}

@media screen and (min-width: 1000px) and (-ms-high-contrast: active),
(min-width: 1000px) and (-ms-high-contrast: none) {
  .event .c-card03__txt {
    overflow: hidden;
    position: relative;
    line-height: 28px;
    max-height: 140px;
    text-align: justify;
    margin-right: -1.15em;
    padding-right: 1.15em
  }

  .event .c-card03__txt:before {
    content: '…';
    position: absolute;
    right: 0;
    bottom: 0
  }

  .event .c-card03__txt:after {
    content: '';
    position: absolute;
    right: 0;
    width: 1.15em;
    height: 1em;
    margin-top: 0.2em;
    background: #fff
  }
}

@media screen and (min-width: 1000px) and (-ms-high-contrast: active) and (-ms-high-contrast: active),
screen and (min-width: 1000px) and (-ms-high-contrast: none) and (-ms-high-contrast: active),
screen and (min-width: 1000px) and (-ms-high-contrast: active) and (-ms-high-contrast: none),
(min-width: 1000px) and (-ms-high-contrast: none) and (-ms-high-contrast: none) {
  .event .c-card03__txt {
    text-justify: inter-cluster
  }
}

@media (max-width: 999px) {
  .event .c-card03 .c-btn02 {
    margin-top: 12px
  }
}

.blog {
  padding: 64px 0 70px
}

@media (max-width: 999px) {
  .blog {
    padding: 70px 0 76px
  }
}

@media (min-width: 1000px) {
  .blog .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    border-bottom: 1px solid #DEDEDE;
    padding: 48px 0 46px
  }
}

.blog .row:last-of-type {
  border-bottom: none
}

@media (min-width: 1000px) {
  .blog .row .row-ttl {
    width: 170px
  }
}

@media (min-width: 1000px) {
  .blog .row .row-lst {
    width: calc(100% - 182px);
    max-width: 876px
  }
}

@media (max-width: 999px) {
  .blog .row+.row {
    margin-top: 79px
  }
}

@media (min-width: 1000px) {
  .blog .lst-card {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
  }

  .blog .lst-card>li {
    margin-left: 5.477%;
    width: 29.682%
  }

  .blog .lst-card>li:first-of-type {
    margin-left: 0
  }
}

@media (max-width: 999px) {
  .blog .lst-card>li {
    border-bottom: 1px solid #DEDEDE;
    padding: 20px 0
  }
}

.blog .c-ttl01 {
  margin: -10px 0 28px;
  text-align: left
}

@media (max-width: 999px) {
  .blog .c-ttl01 {
    margin: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    -ms-align-items: flex-end;
    align-items: flex-end;
    padding-bottom: 9px;
    border-bottom: 1px solid #231815
  }
}

.blog .c-ttl01__en {
  font-size: 16px;
  font-size: 1.6rem
}

@media (max-width: 999px) {
  .blog .c-ttl01__en {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 18px;
    margin-left: 5px
  }
}

.blog .c-ttl01__jp {
  margin-top: 10px;
  font-size: 30px;
  font-size: 3rem
}

@media (max-width: 999px) {
  .blog .c-ttl01__jp {
    margin-top: 0;
    font-size: 28px;
    font-size: 2.8rem;
    letter-spacing: .05em
  }
}

@media (max-width: 999px) {
  .blog .c-card01 {
    padding: 0
  }
}

@media (max-width: 999px) {
  .blog .c-card01__img {
    width: 32.836%
  }
}

@media (max-width: 999px) {
  .blog .c-card01__detail {
    width: 67.164%
  }
}

@media (max-width: 999px) {
  .blog .c-card01__info {
    margin-top: 7px
  }
}

.blog .c-card01__ttl {
  overflow: hidden;
  width: 100%;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: normal
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .blog .c-card01__ttl {
    overflow: hidden;
    position: relative;
    line-height: 24.75px;
    max-height: 49.5px;
    text-align: justify;
    margin-right: -1.15em;
    padding-right: 1.15em
  }

  .blog .c-card01__ttl:before {
    content: '…';
    position: absolute;
    right: 0;
    bottom: 0
  }

  .blog .c-card01__ttl:after {
    content: '';
    position: absolute;
    right: 0;
    width: 1.15em;
    height: 1em;
    margin-top: 0.2em;
    background: #fff
  }
}

@media screen and (-ms-high-contrast: active) and (-ms-high-contrast: active),
screen and (-ms-high-contrast: none) and (-ms-high-contrast: active),
screen and (-ms-high-contrast: active) and (-ms-high-contrast: none),
(-ms-high-contrast: none) and (-ms-high-contrast: none) {
  .blog .c-card01__ttl {
    text-justify: inter-cluster
  }
}

@media (max-width: 999px) {
  .blog .c-card01__ttl {
    margin-top: 0
  }
}

@media (min-width: 1000px) {
  .blog .c-btn02 {
    width: 100%
  }
}

@media (max-width: 999px) {
  .blog .c-btn02 {
    margin-top: 22px;
    width: 218px
  }
}

@media (min-width: 1000px) {
  .story .inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
  }
}

.story .ttl01 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 50px;
  letter-spacing: .65em;
  font-weight: 500;
  color: #fff;
  font-family: "游明朝体", "游明朝", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  position: relative
}

@media (min-width: 1000px) {
  .story .ttl01 {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    margin-top: 18px
  }
}

@media (max-width: 999px) {
  .story .ttl01 {
    letter-spacing: .12em
  }
}

.story .ttl01 .txt {
  position: absolute;
  bottom: -27px;
  left: -45px
}

@media (max-width: 999px) {
  .story .ttl01 .txt {
    bottom: -50px;
    left: auto;
    right: -60px
  }
}

@media (min-width: 1000px) {

  .story .bl01,
  .story .c-card02 {
    width: calc(100%/3 - 2px)
  }
}

.story .bl01 {
  overflow: hidden
}

@media (min-width: 1000px) {
  .story .bl01 {
    min-height: 445px
  }
}

@media (max-width: 999px) {
  .story .bl01 {
    height: 55vw;
    margin-bottom: 4px
  }
}

.story .bl01__bg {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center
}

.story .story_txt {
  margin-top: 2px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 30px;
  letter-spacing: .02em;
  font-weight: 500;
  color: #000
}

@media (max-width: 999px) {
  .story .c-card02__link {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
  }
}

@media only screen and (min-width: 1025px) {
  .story .c-card02__link:hover .c-card02__detail:before {
    transition: transform 0.3s ease;
    transform: scaleX(0)
  }

  .story .c-card02__link:hover .c-card02__detail:after {
    transition: transform 0.3s ease 0.3s;
    transform: scaleX(1)
  }
}

@media (min-width: 1000px) {
  .story .c-card02 {
    margin-left: 3px
  }

  .story .c-card02:nth-child(4) {
    display: none
  }
}

@media (max-width: 999px) {
  .story .c-card02 {
    display: block;
    margin-bottom: 7px
  }
}

.story .c-card02__img .image-card {
  position: relative
}

.story .c-card02__img .image-card:before {
  display: block;
  content: " ";
  width: 100%;
  padding-top: 92.36948%
}

.story .c-card02__img .image-card>.content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

@media (max-width: 999px) {
  .story .c-card02__img {
    width: 43.2%
  }
}

.story .c-card02__detail {
  padding: 24px 35px 0;
  background-color: #F8F4EE;
  position: relative
}

.story .c-card02__detail:before,
.story .c-card02__detail:after {
  content: "";
  width: 23px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 0
}

.story .c-card02__detail:before {
  transition: transform 0.3s ease 0.3s;
  transform: scaleX(1);
  transform-origin: 100% 100%
}

.story .c-card02__detail:after {
  transition: transform 0.3s ease;
  transform: scaleX(0);
  transform-origin: 0 0
}

@media (min-width: 1000px) {
  .story .c-card02__detail {
    height: 139px
  }
}

@media (max-width: 999px) {
  .story .c-card02__detail {
    width: 56.8%;
    text-align: left;
    padding: 17px 35px 0 17px
  }
}

.story .c-card02__ttl {
  line-height: 30px;
  letter-spacing: .02em;
  overflow: hidden;
  width: 100%;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: normal
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .story .c-card02__ttl {
    overflow: hidden;
    position: relative;
    line-height: 24px;
    max-height: 48px;
    text-align: justify;
    margin-right: -1.15em;
    padding-right: 1.15em
  }

  .story .c-card02__ttl:before {
    content: '…';
    position: absolute;
    right: 0;
    bottom: 0
  }

  .story .c-card02__ttl:after {
    content: '';
    position: absolute;
    right: 0;
    width: 1.15em;
    height: 1em;
    margin-top: 0.2em;
    background: #fff
  }
}

@media screen and (-ms-high-contrast: active) and (-ms-high-contrast: active),
screen and (-ms-high-contrast: none) and (-ms-high-contrast: active),
screen and (-ms-high-contrast: active) and (-ms-high-contrast: none),
(-ms-high-contrast: none) and (-ms-high-contrast: none) {
  .story .c-card02__ttl {
    text-justify: inter-cluster
  }
}

@media (max-width: 999px) {
  .story .c-card02__ttl {
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 28px;
    overflow: hidden;
    width: 100%;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: normal
  }
}

.bg-parallax {
  margin-top: 4px;
  width: 100%;
  height: 437px
}

@media (min-width: 1000px) {
  .bg-parallax {
    background-attachment: fixed
  }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .bg-parallax {
    display: none
  }
}

@media (max-width: 999px) {
  .bg-parallax {
    height: 53.334vw
  }
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .bg-parallax {
    display: none
  }
}

.bg-parallax-ie {
  margin-top: 4px;
  width: 100%;
  height: 437px;
  display: none
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .bg-parallax-ie {
    display: block
  }
}

@media (max-width: 999px) {
  .bg-parallax-ie {
    height: 53.334vw
  }
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .bg-parallax-ie {
    display: block
  }
}

.sns {
  padding: 155px 0 107px;
  overflow: hidden
}

@media (max-width: 999px) {
  .sns {
    padding: 64px 0 86px
  }
}

.sns__wrap {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto
}

@media (min-width: 1000px) {
  .sns .inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between
  }
}

@media (min-width: 1000px) {
  .sns .box {
    width: 50%;
    max-width: 500px
  }

  .sns .box.w505 {
    max-width: 505px
  }
}

.sns .box__ttl {
  text-align: center;
  margin-bottom: 32px
}

@media (max-width: 999px) {
  .sns .box__ttl {
    margin-bottom: 20px
  }
}

@media (min-width: 1000px) {
  .sns .box__inner {
    height: 350px
  }
}

.sns .box__inner.center {
  text-align: center
}

.sns .box__link {
  margin-top: 9px;
  text-align: center
}

@media (max-width: 999px) {
  .sns .box__link {
    margin-top: 14px
  }
}

.sns .box__link a {
  display: inline-block;
  position: relative;
  padding: 3px 2px
}

.sns .box__link a:before,
.sns .box__link a:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #231815;
  position: absolute;
  left: 0;
  bottom: 0
}

.sns .box__link a:before {
  transition: transform 0.3s ease 0.3s;
  transform: scaleX(1);
  transform-origin: 100% 100%
}

.sns .box__link a:after {
  transition: transform 0.3s ease;
  transform: scaleX(0);
  transform-origin: 0 0
}

@media only screen and (min-width: 1025px) {
  .sns .box__link a:hover {
    opacity: 1
  }

  .sns .box__link a:hover:before {
    transition: transform 0.3s ease;
    transform: scaleX(0)
  }

  .sns .box__link a:hover:after {
    transition: transform 0.3s ease 0.3s;
    transform: scaleX(1)
  }
}

@media (max-width: 999px) {
  .sns .box+.box {
    margin-top: 57px
  }
}

@media (min-width: 1000px) {
  .sns .lst-post .swiper-wrapper {
    transition-duration: 0s !important;
    transform: translate3d(0, 0, 0) !important;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }

  .sns .lst-post .swiper-slide {
    width: 50px;
    width: calc(100%/3) !important;
    padding-right: 6px !important;
    margin-bottom: 13px !important
  }
}

@media (max-width: 999px) {
  .sns .lst-post .swiper-slide {
    width: 194px
  }
}

.sns .lst-post .item-post {
  display: block;
  position: relative;
  overflow: hidden
}

@media only screen and (min-width: 1025px) {
  .sns .lst-post .item-post:hover {
    opacity: 1
  }

  .sns .lst-post .item-post:hover .title-post {
    opacity: 1
  }
}

.sns .lst-post .image-post {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

.sns .lst-post .image-post:before {
  display: block;
  content: " ";
  width: 100%;
  padding-top: 100%
}

.sns .lst-post .image-post>.content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

.sns .lst-post .title-post {
  padding: 18px 18px 10px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 20px;
  letter-spacing: 0;
  font-weight: 500;
  background-color: rgba(255, 255, 255, 0.85);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: 0.3s
}

.sns .lst-post .title-post p {
  overflow: hidden;
  width: 100%;
  -webkit-line-clamp: 6;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: normal
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .sns .lst-post .title-post p {
    overflow: hidden;
    position: relative;
    line-height: 20px;
    max-height: 120px;
    text-align: justify;
    margin-right: -1.15em;
    padding-right: 1.15em
  }

  .sns .lst-post .title-post p:before {
    content: '…';
    position: absolute;
    right: 0;
    bottom: 0
  }

  .sns .lst-post .title-post p:after {
    content: '';
    position: absolute;
    right: 0;
    width: 1.15em;
    height: 1em;
    margin-top: 0.2em;
    background: #fff
  }
}

@media screen and (-ms-high-contrast: active) and (-ms-high-contrast: active),
screen and (-ms-high-contrast: none) and (-ms-high-contrast: active),
screen and (-ms-high-contrast: active) and (-ms-high-contrast: none),
(-ms-high-contrast: none) and (-ms-high-contrast: none) {
  .sns .lst-post .title-post p {
    text-justify: inter-cluster
  }
}

.info {
  background-color: #F4F4F4;
  padding: 94px 0
}

@media (max-width: 999px) {
  .info {
    background-color: #fff;
    padding: 0 0
  }
}

.info .lst-card {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto
}

@media (min-width: 1000px) {
  .info .lst-card {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
  }

  .info .lst-card>li {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border-left: 1px solid #D9D9D9;
    padding: 0 30px
  }

  .info .lst-card>li:first-of-type {
    border-left: none
  }
}

@media (max-width: 999px) {
  .info .lst-card>li:not(:first-child) {
    margin-top: 6px
  }
}

.info .card {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  padding-bottom: 76px
}

@media only screen and (min-width: 1025px) {
  .info .card:hover {
    opacity: 1
  }

  .info .card:hover .image-card {
    transform: scale(1.05);
    opacity: 0.75
  }

  .info .card:hover .c-btn02 {
    background-color: #231815;
    color: #fff
  }

  .info .card:hover .c-btn02__icon:before,
  .info .card:hover .c-btn02__icon:after {
    background-color: #fff
  }

  .info .card:hover .c-btn02__icon:before {
    transition: transform 0.3s ease;
    transform: scaleX(0)
  }

  .info .card:hover .c-btn02__icon:after {
    transition: transform 0.3s ease 0.3s;
    transform: scaleX(1)
  }

  .info .card:hover .c-btn02 .blank:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 13 13'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23ffffff;stroke-miterlimit:10;stroke-width:0.857px;%7D%3C/style%3E%3C/defs%3E%3Cg transform='translate(-1120.535 -889.776)'%3E%3Crect class='a' width='8.281' height='8.281' transform='translate(1120.964 893.379)'/%3E%3Cpath class='a' d='M1124.968,890.205h7.591V897.8'/%3E%3C/g%3E%3C/svg%3E")
  }
}

@media (max-width: 999px) {
  .info .card {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    background-color: #F4F4F4;
    padding: 34px 0 35px
  }

  .info .card:before {
    content: "";
    width: 23px;
    height: 1px;
    background-color: #231815;
    position: absolute;
    top: 50%;
    right: 0
  }
}

@media only screen and (min-width: 1025px) {
  .info .card--nolink:hover {
    opacity: 1
  }

  .info .card--nolink:hover .image-card {
    transform: scale(1);
    opacity: 1
  }
}

@media (max-width: 999px) {
  .info .card--nolink:before {
    height: 0
  }
}

.info .card__img {
  overflow: hidden
}

.info .card__img .image-card {
  position: relative
}

.info .card__img .image-card:before {
  display: block;
  content: " ";
  width: 100%;
  padding-top: 59.69231%
}

.info .card__img .image-card>.content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

@media (max-width: 999px) {
  .info .card__img .image-card {
    position: relative
  }

  .info .card__img .image-card:before {
    display: block;
    content: " ";
    width: 100%;
    padding-top: 123.45679%
  }

  .info .card__img .image-card>.content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
  }
}

@media (max-width: 999px) {
  .info .card__img {
    width: 43.2%
  }
}

.info .card__detail {
  margin-top: 30px
}

@media (max-width: 999px) {
  .info .card__detail {
    margin-top: 0;
    width: 56.8%;
    padding-left: 20px;
    padding-right: 25px
  }
}

@media (min-width: 1000px) {
  .info .card__logo {
    text-align: center
  }

  .info .card__logo.logo03 {
    margin: -5px 0 -7px
  }
}

@media (max-width: 999px) {
  .info .card__logo.logo01 {
    margin: -9px 0 0
  }

  .info .card__logo.logo02 {
    margin: 13px 0 -4px
  }

  .info .card__logo.logo03 {
    margin: 13px 0 0px
  }
}

.info .card__ttl {
  margin-top: 15px;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  letter-spacing: 0;
  font-weight: bold
}

@media (max-width: 999px) {
  .info .card__ttl {
    margin-top: 11px;
    text-align: left;
    line-height: 25px
  }
}

.info .card__txt {
  margin-top: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  letter-spacing: 0;
  font-weight: 500
}

@media (max-width: 999px) {
  .info .card__txt {
    margin-top: 5px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 20px;
    letter-spacing: .02em
  }
}

.info .card__txt--nohd {
  margin-top: 30px
}

@media (max-width: 999px) {
  .info .card__txt--nohd {
    margin-top: 15px
  }
}

.info .card .c-btn02 {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  transition: 0.3s
}

.living {
  margin-top: 130px;
  padding: 117px 0 154px;
  position: relative
}

@media (max-width: 999px) {
  .living {
    margin-top: 87px;
    padding: 91px 0 93px
  }
}

.living:before {
  content: "";
  width: 90%;
  height: 100%;
  background-color: #F6F1EA;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1
}

@media (max-width: 999px) {
  .living:before {
    width: 80%
  }
}

@media (min-width: 1000px) {
  .living .bl01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between
  }

  .living .bl01.bl01-imgRight {
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }

  .living .bl01.bl01-imgRight .bl01__detail {
    padding-right: 0;
    padding-left: 5%
  }
}

@media (max-width: 999px) {
  .living .bl01.bl01-imgRight .bl01__img {
    margin-left: auto
  }
}

@media (min-width: 1000px) {
  .living .bl01__img {
    width: 50%
  }

  .living .bl01__img img {
    width: 100%
  }
}

@media (max-width: 999px) {
  .living .bl01__img {
    width: calc(100% - 20px)
  }
}

.living .bl01__detail {
  position: relative;
  z-index: 2
}

@media (min-width: 1000px) {
  .living .bl01__detail {
    width: 45.5%;
    padding-right: 5%
  }
}

@media (max-width: 999px) {
  .living .bl01__detail {
    margin-top: 26px;
    padding: 0 20px
  }
}

.living .bl01__ttl {
  margin: -5px 0 10px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 34px;
  letter-spacing: .02em;
  font-weight: 600;
  font-family: "游明朝体", "游明朝", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-smooth: auto;
  -webkit-font-smoothing: auto
}

@media (max-width: 999px) {
  .living .bl01__ttl {
    margin: 0 0 13px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 30px;
    letter-spacing: 0
  }
}

.living .bl01__txt {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 30px;
  letter-spacing: 0;
  font-weight: 500
}

@media (max-width: 999px) {
  .living .bl01__txt {
    line-height: 25px;
    letter-spacing: .02em
  }
}

.living .bl01+.bl01 {
  margin-top: 111px
}

@media (max-width: 999px) {
  .living .bl01+.bl01 {
    margin-top: 62px
  }
}

.living .txt-living {
  position: absolute;
  left: 56px;
  bottom: 0
}

@media (max-width: 999px) {
  .living .txt-living {
    max-width: 236px;
    left: 22px;
    bottom: -43px
  }
}

/*# sourceMappingURL=maps/top.min.css.map */