@charset "UTF-8";
/* Scss Document */
@import url(reset.css);
@import url(swiper.min.css);
/*=======================================================
    css
========================================================*/
/*-------------- ブレークポイント作成 ここから ----------------*/
/*-------------- ブレークポイント作成 ここまで ----------------*/
/*-------------- calc mixin ここから ----------------*/
/*-------------- calc mixin ここまで ----------------*/
html {
  font-size: 62.5%;
}

body {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  background-color: #fff;
  font-size: 1.4rem;
  color: #323232;
  line-height: 1.71;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
    line-height: 1.6;
  }
}

main {
  display: block;
}

a {
  text-decoration: none;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
a:hover {
  opacity: 0.7;
  cursor: pointer;
}
a:visited,
a:link {
  color: #323232;
}

img {
  max-width: 100%;
}

.wrapper {
  overflow: hidden;
  font-family: "Noto Serif JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", serif;
  margin: 0 auto;
}

.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

.inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1240px) {
  .inner {
    width: 1240px;
    padding: 0 1.42%;
  }
}
@media screen and (max-width: 767px) {
  .inner {
    width: 100%;
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .pc {
    display: block;
  }
  .sp {
    display: none !important;
  }
}

/*=======================================================

     header

========================================================*/
.header {
  width: 100%;
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}
.header .inner {
  height: 50px;
  position: relative;
}
.header_logo {
  line-height: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
}
@media screen and (max-width: 1240px) {
  .header_logo {
    left: 1.4%;
  }
}
.header_logo a {
  display: inline-block;
}
.header_sns {
  line-height: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
}
@media screen and (max-width: 1240px) {
  .header_sns {
    right: 1.4%;
  }
}
.header_sns a {
  display: inline-block;
}

/*=======================================================

     footer

========================================================*/
.footer .inner {
  position: relative;
}

.footer_top {
  background-color: #f5f5f5;
}
@media screen and (max-width: 767px) {
  .footer_top {
    padding: 14px 0 9px;
  }
}

.footer_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 25px 20px 20px;
}

.footer_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 195px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 15px;
}
.footer_list li {
  width: 50%;
  color: #007e48;
  letter-spacing: 0.075em;
  font-size: 1.1rem;
  line-height: 1.63;
}

.footer_logo {
  line-height: 0;
  position: absolute;
  top: 15px;
  right: 30px;
}

.footer_btn {
  text-align: right;
}
.footer_btn span {
  display: inline-block;
  font-size: 1.2rem;
  padding-right: 20px;
  background: url(../img/btn_top.png) no-repeat right center;
  background-size: 14.5px auto;
}

.footer_bot {
  padding: 5px 0 70px;
}
@media screen and (max-width: 767px) {
  .footer_bot {
    padding: 3.6vw;
    background-color: #b2b2b2;
  }
}

.footer_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer_link li:not(:first-of-type) {
  margin-left: 10px;
}
@media screen and (max-width: 767px) {
  .footer_link {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .footer_link li:nth-of-type(4) {
    margin-left: 0;
  }
}
.footer_link li a {
  font-size: 1rem;
}

@media screen and (max-width: 1240px) {
  .footer_right {
    right: 1.42%;
  }
}

@media screen and (min-width: 768px) {
  .footer_right {
    position: absolute;
    top: 0;
    right: 0;
  }
}

.footer_right .footer_link {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.footer_copy {
  color: #666666;
  font-size: 0.9rem;
}
@media screen and (max-width: 767px) {
  .footer_right .footer_link {
    justify-content: flex-start;
  }
  .footer_copy {
    margin-top: 6vw;
    text-align: center;
    color: #fff;
  }
}

/*=======================================================

     .home

========================================================*/
.home .hero {
  position: relative;
}
.home .hero .swiper-pagination {
  line-height: 0;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.home .hero .swiper-pagination-bullet {
  width: 13px;
  height: 13px;
  margin: 0 7px;
  background-color: #fff;
  opacity: 1;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.home .hero .swiper-pagination-bullet:hover {
  background-color: #2a2e2f;
}
.home .hero .swiper-pagination-bullet-active {
  background-color: #2a2e2f;
}
.home .hero .slider01_box {
  padding-bottom: 62.5%;
}
@media screen and (min-width: 768px) {
  .home .hero .slider01_box-01 {
    background: url(../img/img_hero_01_220930_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .home .hero .slider01_box-02 {
    background: url(../img/img_hero_02_220930_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .home .hero .slider01_box-03 {
    background: url(../img/img_hero_03_220930_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .home .hero .slider01_box-04 {
    background: url(../img/img_hero_04_220930_pc.jpg) no-repeat center;
    background-size: cover;
  }
}
@media screen and (max-width: 767px) {
  .home .hero .slider01_box {
    padding-bottom: 69.33%;
  }
  .home .hero .slider01_box-01 {
    background: url(../img/img_hero_01_220930_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .home .hero .slider01_box-02 {
    background: url(../img/img_hero_02_220930_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .home .hero .slider01_box-03 {
    background: url(../img/img_hero_03_220930_sp.jpg) no-repeat center;
    background-size: cover;
  }
  .home .hero .slider01_box-04 {
    background: url(../img/img_hero_04_220930_sp.jpg) no-repeat center;
    background-size: cover;
  }
}
.home .hero_img {
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .home .hero_img {
    display: block;
  }
}
.home .hero_img img {
  width: 100%;
}
.home .hero_head {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .home .hero_head {
    position: absolute;
    bottom: 13%;
    left: 0;
    z-index: 2;
  }
}
@media screen and (max-width: 767px) {
  .home .hero_head {
    position: absolute;
    bottom: 15%;
    left: 0;
    z-index: 2;
    /* padding: 25px 0 20px; */
    /* background: #3d4244; */
  }
}

@media screen and (max-width: 767px) {
  .home .hero .title {
    /* text-align: center; */
    margin-left: 2.66vw;
  }
}
.home .hero_title {
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .home .hero_title img {
    width: 74.66vw !important;
  }
}
.home .hero_text {
  color: #fff;
  margin-top: 10px;
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .home .hero_text {
    font-size: 1.5rem;
    line-height: 1.66;
    margin-top: 5px;
  }
}
.home .hero_menu {
  position: absolute;
  right: 0;
  bottom: 50%;
  transform: translateY(50%);
  z-index: 20;
  -webkit-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  background-color: #fff;
  box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.7);
}
.home .hero_menu.fixed {
  position: fixed;
  bottom: 10vh;
  transform: translateY(0);
}
.home .hero_menu ul li:not(:first-of-type) {
  margin-top: 1px;
}
/* .home .hero_menu ul li:nth-of-type(1) a {
  background-color: rgba(51, 51, 51, 0.8);
}
.home .hero_menu ul li:nth-of-type(2) a {
  background-color: rgba(145, 169, 169, 0.8);
}
.home .hero_menu ul li:nth-of-type(3) a {
  background-color: rgba(145, 195, 195, 0.8);
}
.home .hero_menu ul li:nth-of-type(4) a {
  background-color: rgba(161, 161, 161, 0.8);
}
.home .hero_menu ul li:nth-of-type(5) a {
  background-color: rgba(173, 206, 193, 0.8);
}
.home .hero_menu ul li:nth-of-type(6) a {
  background-color: rgba(186, 181, 159, 0.8);
}
.home .hero_menu ul li:nth-of-type(7) a {
  background-color: rgba(161, 161, 161, 0.8);
}
.home .hero_menu ul li:nth-of-type(8) a {
  background-color: rgba(105, 98, 86, 0.8);
}
.home .hero_menu ul li:nth-of-type(9) a {
  background-color: rgba(201, 201, 201, 0.8);
} */
.home .hero_menu ul li a {
  background-color: #292e3e;
  display: block;
  width: 135px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  font-size: 1.2rem;
  padding: 6px 5px 6px 30px;
  line-height: 1.2;
  position: relative;
}
.home .hero_menu ul li a::before {
  content: "■";
  display: inline-block;
  margin-right: 8px;
  font-size: 0.8rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 15px;
}

.home .case {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .home .case {
    padding-bottom: 35px;
  }
}
@media screen and (min-width: 768px) {
  .home .case .layout-01 > div.pc {
    width: 64.6%;
    padding: 70px 0 70px 35px;
  }
}
.home .case_head {
  padding: 45px 8% 11.76% 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .home .case_head {
    background-color: #91a9a9;
  }
}
@media screen and (max-width: 767px) {
  .home .case_head {
    background: url(../img/sp_img_case_01.jpg) no-repeat right center;
    background-size: cover;
    margin: 0 -5.14%;
    padding: 44.85% 0 0;
  }
}
@media screen and (min-width: 768px) {
  .home .case_head::after {
    content: "";
    display: block;
    width: 117.64%;
    padding-bottom: 58.82%;
    background: url(../img/img_case_01.png) no-repeat center;
    background-size: cover;
    position: absolute;
    top: -205px;
    right: 10%;
  }
}
@media screen and (max-width: 1240px) {
  .home .case_head::after {
    top: 0;
    right: 0;
    margin-top: -47.5%;
  }
}
.home .case .title {
  position: relative;
  margin-top: 190px;
}
@media screen and (max-width: 1240px) {
  .home .case .title {
    margin-top: 44.7%;
  }
}
@media screen and (max-width: 767px) {
  .home .case .title {
    margin-top: 0;
  }
}
.home .case .title::before {
  background-color: #91a9a9;
}
.home .case_title {
  font-size: 2.6rem;
}
@media screen and (max-width: 767px) {
  .home .case_title {
    width: 80%;
    max-width: 400px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.3rem;
    background-color: #91a9a9;
    padding: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 3.33% 12.66% 3.33% 9.33%;
  }
}
.home .case_title span {
  display: block;
  text-align: right;
  font-size: 1.8rem;
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .home .case_title span {
    font-size: 0.9rem;
    margin-top: 7.5px;
  }
}
.home .case_text {
  margin-top: 55px;
}
@media screen and (max-width: 767px) {
  .home .case_text {
    margin-top: 22.5px;
    font-size: 1rem;
    padding: 0 4.41%;
  }
}
.home .case_box {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .home .case_box {
    float: left;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box .layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box .layout > div {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box .layout > div:first-of-type .case_label {
    text-align: left;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-01 {
    width: 43%;
    padding-top: 9.45%;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-01 {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-01 .layout {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-01 .layout > div {
    width: 49.5%;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-01 .case_label {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-01 .case_desc {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-02 {
    width: 57%;
    padding-left: 10px;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-02 > .layout {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-02 > .layout > div:first-of-type {
    width: 42.64%;
    padding: 0 5%;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-02 > .layout > div:last-of-type {
    width: 57.36%;
    padding-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-02 > .layout > div:last-of-type .layout > div {
    width: 48.71%;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-02 .case_label {
    margin-top: 15px;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-03 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-03 {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-03 .layout > div:first-of-type {
    width: 63.5%;
    padding-top: 25px;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-03 .layout > div:first-of-type {
    width: 58.23%;
    padding-top: 20px;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-03 .layout > div:last-of-type {
    width: 36.5%;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-03 .layout > div:last-of-type {
    width: 41.77%;
  }
}
.home .case_box-03 .case_label {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .home .case_box-03 .case_label {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-03 .case_desc {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .home .case_box-03 .case_desc span {
    display: inline-block;
    text-align: left;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-03 .case_desc-01 {
    padding-left: 16.66%;
  }
}
@media screen and (min-width: 768px) {
  .home .case_box-03 .case_desc-02 {
    padding-left: 19%;
  }
}
.home .case_label {
  text-align: center;
}
.home .case_label a {
  display: inline-block;
  font-weight: bold;
  font-size: 1.7rem;
  color: #fff;
  background-color: #4eabab;
  padding: 3px 40px 3px 30px;
  position: relative;
  border-radius: 3px;
}
@media screen and (max-width: 767px) {
  .home .case_label a {
    font-size: 1.4rem;
    background-size: 12px auto;
    background-position: left 6px;
    padding: 3px 30px 3px 5px;
    text-align: left;
  }
}
.home .case_label a::after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background: #4eabab url(../img/ico_case_01.png) no-repeat center;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 9px;
}
@media screen and (max-width: 767px) {
  .home .case_label a::after {
    width: 14px;
    height: 14px;
    background-size: 14px auto;
  }
}
.home .case_img {
  text-align: center;
}
.home .case_img a {
  display: inline-block;
}
.home .case_desc {
  font-size: 1.2rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .home .case_desc {
    font-size: 0.65rem;
  }
}
.home .case_desc span {
  display: inline-block;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .home .gallery .layout > div:first-of-type {
    width: 37.5%;
  }
}

@media screen and (min-width: 768px) {
  .home .gallery .layout > div:last-of-type {
    width: 62.5%;
  }
}

@media screen and (min-width: 768px) {
  .home .gallery .title {
    background-color: #3d4244;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 2% 0 10%;
  }
}

@media screen and (max-width: 767px) {
  .home .gallery .title {
    padding: 15px 15px 20px;
    background: #fff;
  }
}

.home .gallery .title::before {
  background-color: #3d4244;
}

@media screen and (min-width: 768px) {
  .home .gallery_pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 37.5%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1px;
  }
}

.home .gallery_head {
  background-color: #9ac3c3;
}
@media screen and (max-width: 767px) {
  .home .gallery_head {
    text-align: center;
  }
}

.home .gallery_title {
  font-size: 2.28vw;
}
@media screen and (max-width: 767px) {
  .home .gallery_title {
    font-size: 2rem;
  }
}
.home .gallery_title span {
  font-size: 1vw;
}
@media screen and (min-width: 768px) {
  .home .gallery_title span {
    margin-top: 4%;
  }
}
@media screen and (max-width: 767px) {
  .home .gallery_title span {
    font-size: 1.4rem;
    color: #333;
  }
}

.home .gallery_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.home .gallery_item {
  width: 12.5%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1px;
  line-height: 0;
}

@media screen and (max-width: 767px) {
  .home .gallery_item {
    width: 50%;
  }
}
@media screen and (min-width: 768px) {
  .home .gallery_item:nth-of-type(n + 30) {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .home .gallery_item:nth-of-type(n + 7) {
    display: none;
  }
}
.home .gallery_item span {
  display: block;
}
.home .gallery_item span img {
  width: 100%;
}

.home .gallery_btn {
  text-align: center;
  padding: 15px 0;
}
.home .gallery_btn span {
  cursor: pointer;
}

.home .interior_vr {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  color: #fff;
  padding: 50px 0;
}
.home .interior_vr div {
  width: 50%;
}
.home .interior_vr div p {
  margin-top: 30px;
}

.home .interior {
  position: relative;
  background-color: #292e3e;
}
@media screen and (min-width: 768px) {
  .home .interior {
    padding-top: 2%;
  }
}
@media screen and (max-width: 767px) {
  .home .interior {
  }
}
.home .interior .slider02 {
  position: relative;
  bottom: -100px;
  margin-top: -120px;
}
.home .interior .slider02_label {
  text-align: left;
  padding: 0 5px;
  margin-bottom: 8px;
  line-height: normal;
  font-size: 20px;
}
.home .interior .slider_btn {
  min-width: 320px;
  height: 20px;
  position: absolute;
  bottom: -150px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}

@media screen and (max-width: 767px) {
  .home .interior .slider02 {
    bottom: 0;
    margin-top: 0;
  }
  .home .interior .slider02_label {
    text-align: left;
    font-size: 1.8rem;
    margin: 5px 0 3vw 10px;
  }
}
.home .interior .slider02_box {
  line-height: 0;
  color: #fff;
}
.home .interior .slider02_box img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .home .interior .slider02_btn {
    width: 100%;
    position: absolute;
    top: calc(50% - -28px);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    z-index: 2;
  }
  .home .interior .slider02_btn {
  }
  .home .interior .slider02_btn .swiper-pagination-bullet-active {
    opacity: 1;
    background: #fff;
  }
  .home .interior .slider02_btn.slider_btn .swiper-btn-arrow:before {
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
  }
}
@media screen and (max-width: 767px) {
  .home .interior .layout-01 {
    max-width: 96vw;
    margin: 0 auto;
    padding: 22vw 0 30px;
  }
}
@media screen and (min-width: 768px) {
  .home .interior .layout-01 > div:last-of-type {
    padding-left: 6.66%;
  }
}
.home .interior .title {
  padding: 2.5% 5% 2.5% 0;
}
@media screen and (max-width: 767px) {
  .home .interior .title {
    background-color: #292e3e;
    padding: 13.3vw 10px 20px;
  }
}
@media screen and (max-width: 767px) {
  .home .interior_title {
    text-align: left;
    font-size: 2.2rem;
  }
  .home .interior_title span {
    font-size: 1.4rem;
  }
}
.home .interior_cont {
  position: relative;
}
@media screen and (min-width: 768px) {
  .home .interior_cont {
    background-color: #fff;
    padding: 1.93% 3.22% 1.93% 19.42%;
  }
}
@media screen and (min-width: 768px) {
  .home .interior_cont::after {
    content: "360°パノラマVIEW";
    font-size: 1.1rem;
    color: #fff;
    background-color: #ea5504;
    padding: 0 5px;
    position: absolute;
    top: 0;
    right: 0;
  }
}
.home .interior .panorama {
  position: relative;
}
@media screen and (min-width: 768px) {
  .home .interior .panorama .layout > div:last-of-type {
    background: url(../img/img_panorama_02.png) no-repeat 10px center;
    background-size: 25.09%;
    padding: 5.55% 0 0 19.44%;
  }
}
.home .interior .panorama .layout > div:last-of-type p {
  font-size: 1.3rem;
}
.home .interior .panorama .layout > div:last-of-type p span {
  color: #ea5504;
}
.home .interior .panorama_img {
  position: absolute;
  top: -16px;
}
@media screen and (min-width: 768px) {
  .home .interior .panorama_img {
    width: 25.22%;
    left: -42px;
  }
}
@media screen and (max-width: 767px) {
  .home .interior .panorama_img {
    top: -8px;
    right: 0;
  }
}
@media screen and (max-width: 349px) {
  .home .interior .panorama_img {
    width: 100px;
    top: 10px;
    right: -10px;
  }
}
.home .interior .panorama_title {
  font-size: 2.2rem;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .home .interior .panorama_title {
    text-align: left;
    font-size: 1.7rem;
    color: #fff;
    margin-bottom: 8vw;
    line-height: 1.7;
  }
  .home .interior .panorama_title span {
    font-size: 1.4rem;
  }
}
.home .interior .panorama_text {
  line-height: 1.28;
}
@media screen and (min-width: 768px) {
  .home .interior .panorama_text {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .home .interior .panorama_text {
    font-size: 1.2rem;
    line-height: 1.66;
  }
}
.home .interior .panorama_more {
  margin-top: 5px;
}
.home .interior .panorama_more a {
  display: block;
  height: 25px;
  line-height: 25px;
  background-color: #82b8cb;
  color: #fff;
  text-align: center;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
}
.home .interior .panorama_more a::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 7px;
  background: url(../img/ico_panorama_01.png) no-repeat center;
  background-size: contain;
  margin-right: 10px;
}
.home .interior .panorama_kome {
  font-size: 0.9rem;
  margin: 5px 0 10px;
}
@media screen and (min-width: 768px) {
  .home .interior .panorama_kome {
    padding-left: 19.42%;
  }
}
@media screen and (max-width: 767px) {
  .home .interior .panorama_kome {
    color: #fff;
    margin: 10px 0 0;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .home .interior .panorama_box {
    position: relative;
    background-color: #292e3e;
    border: 1px solid #fff;
    padding: 15px 10px;
    color: #fff;
  }
}
/* @media screen and (max-width: 767px) {
  .home .interior .panorama_box::after {
    content: "360°パノラマVIEW";
    font-size: 1rem;
    color: #fff;
    background-color: #ea5504;
    padding: 0 5px;
    position: absolute;
    top: -9px;
    left: 0;
  }
} */
.home .interior .panorama_btn {
  display: flex;
  justify-content: center;
  margin-top: 25px;
  text-align: center;
}
.home .interior .panorama_btn a {
  display: inline-block;
  width: 38.4vw;
}
.home .interior .panorama_btn a + a {
  margin-left: 5vw;
}
@media screen and (max-width: 349px) {
  .home .interior .panorama_btn a:last-of-type {
    margin-left: 10px;
  }
}

.home .type {
  position: relative;
}
.home .type .slider03.slider {
  background-color: #d1c9bc;
}
@media screen and (min-width: 768px) {
  .home .type {
    background-color: #efeae5;
    padding-top: 180px;
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 767px) {
  .home .type {
    padding-bottom: 13.3vw;
    background: #efeae5;
  }
  .home .type .slider03.slider {
    margin: 0 15px;
    padding: 12vw 0;
  }
}
@media screen and (max-width: 767px) {
  .home .type .inner {
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  .home .type .swiper-slide {
    width: 25%;
  }
}
@media screen and (min-width: 768px) {
  .home .type .swiper-slide:last-of-type {
    width: 25%;
  }
}
.home .type .slider_btn {
  width: 100%;
  position: absolute;
  top: 20%;
  left: 0;
  z-index: 5;
}
@media screen and (max-width: 767px) {
  .home .type .slider_btn {
    top: 54%;
  }
  .home .type .swiper-btn-prev03 {
    left: 4vw;
  }
  .home .type .swiper-btn-next03 {
    right: 8vw;
  }
}
/* .home .type .slider_btn > div:first-of-type {
  background: url(../img/btn_slider_left_type.png) no-repeat center;
  background-size: contain;
}
.home .type .slider_btn > div:last-of-type {
  background: url(../img/btn_slider_right_type.png) no-repeat center;
  background-size: contain;
} */
.home .type .title {
  padding: 7.05% 8% 7.05% 0;
}
@media screen and (max-width: 767px) {
  .home .type .title {
    margin-bottom: 0;
    padding: 13.3vw 15px;
  }
}
/* .home .type .title::before {
  background-color: #d0c9bc;
}
.home .type_head {
  background-color: #d0c9bc;
} */
@media screen and (max-width: 767px) {
  .home .type_head {
    background-color: #efeae5;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .home .type_title {
    font-size: 2rem;
    text-align-last: left;
  }
  .home .type_title span {
    font-size: 1.4rem;
  }
}
.home .type_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .type .swiper-container {
    overflow: visible;
  }
  .home .type_inner {
    padding: 40px 0;
    margin-bottom: 40px;
  }
}
.home .type_box {
  text-align: center;
}
.home .type_label {
  position: relative;
  line-height: 0;
}
.home .type_label .mod_new {
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -30px;
}
@media screen and (min-width: 768px) {
  .home .swiper-slide:nth-of-type(2) .type_label,
  .home .swiper-slide:nth-of-type(2) .type_label + p {
    padding-left: 0%;
  }
  .home .swiper-slide:nth-of-type(4) .type_label,
  .home .swiper-slide:nth-of-type(4) .type_label + p {
    padding-right: 0%;
  }
  .home .type_label .mod_new {
    left: 43%;
  }
}
.home .type_box img {
  margin: auto;
}
@media screen and (max-width: 767px) {
  .type .swiper-container {
    overflow: visible;
  }
  .home .type_label {
    height: 72px;
  }
}
.home .type_label + p {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .home .type_label + p {
    font-size: 1.7rem;
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .home .type_img img {
    width: auto;
  }
}
@media screen and (min-width: 768px) {
  .home .type_list {
    margin-top: 0%;
  }
}
@media screen and (max-width: 767px) {
  .home .type_list {
    display: inline-block;
    margin-top: 15px;
  }
}
@media screen and (max-width: 349px) {
  .home .type_list {
    max-width: 80%;
  }
}
.home .type_list li {
  text-align: left;
  font-size: 1.1rem;
  line-height: 2.1;
  padding-left: 14px;
  text-indent: -14px;
  letter-spacing: -1px;
}
@media screen and (min-width: 768px) {
  .home .type_list li {
    margin: 0 4.34%;
  }
}
@media screen and (max-width: 767px) {
  .home .type_list li {
    font-size: 1.2rem;
    padding-left: 16px;
    text-indent: -16px;
  }
}

.home .plan {
  background-color: #fff;
  position: relative;
  padding-bottom: 140px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .home .plan {
    padding-bottom: 20vw;
  }
}
.home .plan .slider_btn {
  min-width: 320px;
  height: 20px;
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}

@media screen and (min-width: 768px) {
  /* .home .plan .slider_btn {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  } */
}
@media screen and (max-width: 767px) {
  .home .plan .slider_btn {
    min-width: 100%;
    top: 30%;
  }
}
/* .home .plan .slider_btn > div:first-of-type {
  background: url(../img/btn_slider_left_plan.png) no-repeat center;
  background-size: contain;
}
.home .plan .slider_btn > div:last-of-type {
  background: url(../img/btn_slider_right_plan.png) no-repeat center;
  background-size: contain;
} */

/*========================
				PLAN
========================*/
.home .plan .inner {
  background-color: #fff;
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .home .plan .inner {
    width: 1200px;
    padding: 0;
  }
}
.home .plan::after {
  content: "";
  position: absolute;
  right: -112px;
  bottom: 90px;
  width: 1230px;
  height: 300px;
  background-color: #d1c8bd;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .home .plan::after {
    right: 0;
    bottom: 13.3vw;
    width: 83vw;
    height: 106.7vw;
  }
}
.home .plan .slider04 {
  position: relative;
  z-index: 1;
}
.home .plan .slider04_box {
  padding: 5.41% 9%;
}
.home .plan .slider04 .swiper-container {
  border: 1px solid #d1c8bd;
  padding-bottom: 76px;
}
@media screen and (min-width: 768px) {
  .home .plan .slider04_box-01 + .layout .info {
  }
  .home .plan .slider04 .layout {
    justify-content: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .home .plan .slider04 .swiper-container {
    padding-bottom: 6vw;
  }
  .home .plan .slider04 {
    padding: 0 4.66%;
  }
  div.plan_ttl {
    position: absolute;
    top: 30px;
  }

  .home .plan .slider04_box {
    padding: 28.41% 9% 7%;
  }
  .home .plan .slider04_box-01 + .layout .info_title {
    padding-left: 0px;
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .home .plan .plan_ttl {
    padding-left: 100px;
  }
  .home .plan .slider04_box-02 + .layout .info {
  }
}
@media screen and (max-width: 767px) {
  .home .plan .slider04_box-02 + .layout .info_title {
    padding-left: 0px;
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .home .plan .slider04_box-03 + .layout .info {
  }
}
@media screen and (max-width: 767px) {
  .home .plan .slider04_box-03 + .layout .info_title {
    padding-left: 0px;
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .home .plan .slider04_box-04 + .layout .info {
  }
}
@media screen and (max-width: 767px) {
  .home .plan .slider04_box-04 + .layout .info_title {
    padding-left: 0px;
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .home .plan .slider04_box-05 + .layout .info {
  }
}
@media screen and (max-width: 767px) {
  .home .plan .slider04_box-05 + .layout .info_title {
    padding-left: 0px;
    text-align: center;
  }
}
.home .plan .slider04_label {
  text-align: center;
  font-size: 2.4rem;
  margin-bottom: 45px;
}
@media screen and (max-width: 767px) {
  .home .plan .slider04_label {
    font-size: 1.5rem;
    margin-bottom: 5px;
  }
}
.home .plan .slider04_img {
  text-align: center;
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .home .plan .slider04_img img {
    width: 100%;
    max-width: 330px;
  }
}
.home .plan_head {
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.home .plan .title {
  padding: 4% 8% 0 8%;
}
.plan_title span {
  color: #333 !important;
}

@media screen and (max-width: 767px) {
  .home .plan .title {
    padding: 13.3vw 15px 20px;
    text-align-last: left;
  }
  .home .plan .title span {
    font-size: 1.4rem;
  }
}
.home .plan .title::before {
  background-color: #b9b49d;
}
@media screen and (max-width: 767px) {
  .home .plan_title {
    text-align: left;
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .home .plan_title span {
    font-size: 1rem;
  }
}
@media screen and (min-width: 768px) {
  .home .plan .info {
    /* padding: 1.8% 9.67% 2.32% 5.8%; */
    margin-left: 30px;
  }
}
@media screen and (max-width: 767px) {
  .home .plan .info {
    text-align: center;
    padding: 0 20px;
  }
}
.home .plan .info_title {
  font-size: 1.8rem;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .home .plan .info_title {
    display: inline-block;
    padding-left: 70px;
    line-height: 1.27;
    text-align: left;
  }
}
.home .plan .info_text {
  line-height: 1.57;
  margin-top: 10px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .home .plan .info_text {
    font-size: 1.2rem;
    margin-top: 15px;
  }
}

.home .plan .info_text br {
  display: block;
}
@media screen and (max-width: 1063px) {
  .home .plan .info_text br {
    display: none;
  }
}

.home .plan .info_kome {
  font-size: 1rem;
  line-height: 1.8;
  margin-top: 5px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .home .plan .info_kome {
    margin-top: 15px;
  }
}
.home .plan .info_kome li {
  padding-left: 10px;
  text-indent: -10px;
}
.home .plan > .inner {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0;
  z-index: 2;
}
.home .plan .js-tab_content div {
  display: none;
}
.home .plan .js-tab_content div.active {
  display: block;
}
.home .plan .js-tab_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 30px;
}
.home .plan .js-tab_menu li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  font-size: 1.3rem;
  color: #fff;
  background-color: #92959d;
  /* border-bottom: 2px solid #f3f0e1; */
  padding: 2px 0;
  height: 4em;
}
.home .plan .js-tab_menu li.active {
  color: #fff;
  background-color: #292e3e;
  /* border-bottom: 2px solid #535353; */
}
.home .plan .js-tab_menu li span {
  display: block;
  width: 100%;
}
.home .plan .js-tab_menu-02 li {
  width: 49.5%;
}
.home .plan .js-tab_menu-03 li {
  width: 33%;
}
.home .plan .js-tab_menu-04 li {
  width: 24.5%;
}

.home .series {
  background-color: #5c513f;
}
.home .series_catch {
  text-align: center;
  font-size: 2.8rem;
  color: #fff;
  padding: 6.07% 0 3.92%;
}
@media screen and (max-width: 767px) {
  .home .series_catch {
    font-size: 2rem;
    padding: 35px 0 25px;
  }
}
.home .series .slider {
  position: relative;
}
.home .series .slider_btn {
  width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  z-index: 5;
}
.home .series .slider_btn > div:first-of-type {
  background: url(../img/btn_slider_left_series.png) no-repeat center;
  background-size: contain;
}
.home .series .slider_btn > div:last-of-type {
  background: url(../img/btn_slider_right_series.png) no-repeat center;
  background-size: contain;
}
.home .series .slider05_img {
  line-height: 0;
}
.home .series .slider05_img img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .home .series .title {
    background-color: #493f30;
  }
}
.home .series .title::before {
  background-color: #493f30;
}
.home .series_head {
  background-color: #493f30;
  padding: 7.05% 10% 12.94% 0;
}
@media screen and (max-width: 767px) {
  .home .series_head {
    text-align: center;
    padding: 15px 15px 20px;
  }
}
@media screen and (max-width: 767px) {
  .home .series_title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .home .series_title span {
    font-size: 1rem;
  }
}
.home .series_text {
  color: #fff;
  padding: 6.45% 12%;
}
@media screen and (max-width: 767px) {
  .home .series_text {
    padding: 0 15px 40px;
    font-size: 1.3rem;
    line-height: 2.3;
  }
}

@media screen and (max-width: 767px) {
  .home .present {
    padding: 40px 0 70px;
  }
}

@media screen and (max-width: 767px) {
  .home .present .layout-01 {
    padding: 0 20px;
  }
}

@media screen and (min-width: 768px) {
  .home .present .layout-01 > div {
    padding: 5.83% 4.16% 2.91%;
  }
}

@media screen and (min-width: 768px) {
  .home .present .layout-01 > div:first-of-type {
    text-align: center;
  }
}

.home .present_title {
  line-height: 0;
  font-size: 24px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .home .present_title {
    text-align: center;
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 767px) {
  .home .present_img {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .home .present_list {
    padding-right: 10px;
  }
}

@media screen and (max-width: 767px) {
  .home .present_list {
    padding: 0 20px;
    margin-top: 30px;
  }
}

.home .present_list li {
  font-size: 1.6rem;
  padding-left: 16px;
  text-indent: -16px;
}
@media screen and (max-width: 767px) {
  .home .present_list li {
    font-size: 1.4rem;
  }
}
.home .present_list li span {
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  .home .present_list li span {
    font-size: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .home .present_btn {
    margin-top: 75px;
  }
}

.home .present_btn a {
  display: block;
  text-align: center;
  border: 1px solid #eeeeee;
  background-color: #292e3e;
  color: #fff;
  font-size: 1.6rem;
  padding: 15px;
}
@media screen and (max-width: 767px) {
  .home .present_btn a {
    font-size: 1.5rem;
  }
}
.home .present_btn a span {
  display: inline-block;
  text-align: left;
  padding-left: 30px;
  position: relative;
}
.home .present_btn a span::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 7px;
  background: url(../img/ico_panorama_01.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
}
@media screen and (max-width: 767px) {
  .home .present_btn a span::before {
    width: 8px;
    height: 10px;
  }
}

.home .banner {
  background-color: #d1c8bd;
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  .home .banner {
    padding: 25px 0;
  }
}
.home .banner_inner {
  padding: 0 30px;
}
@media screen and (min-width: 768px) {
  .home .banner_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .home .banner_inner {
    padding: 0 14.7%;
  }
}
.home .banner_inner a {
  display: block;
  line-height: 0;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .home .banner_inner a {
    width: 30.7%;
  }
}
.home .banner_inner a img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .home .banner_inner a:not(:first-of-type) {
    margin-top: 30px;
  }
}

.banner ul {
  width: 88%;
  margin: auto;
  padding-top: 20px;
}
.banner ul:after {
  content: "";
  display: block;
  clear: both;
}
.banner li {
  list-style: none;
  display: inline-block;
  width: 18%;
  text-align: center;
}
.banner li a {
  padding: 0 0 0 15px;
  position: relative;
  background: url(../img/icon.png) no-repeat 0 40%;
}
@media screen and (max-width: 768px) {
  .banner ul {
    width: 100%;
  }
  .banner li {
    width: 48%;
    text-align: center;
    margin-bottom: 10px;
  }
  .banner li a {
    padding: 0 0 0 15px;
  }
}

/*=======================================================

     共通パーツ

========================================================*/
@media screen and (min-width: 768px) {
  .layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.layout > div {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* @media screen and (min-width: 768px) {
  .layout > div {
    width: 50%;
  }
} */

@media screen and (min-width: 768px) {
  .layout-01 > div:first-of-type {
    /* width: 520px; */
    padding-left: 0px;
    padding-top: 0px;
  }
}

/* @media screen and (min-width: 768px) {
  .layout-01 > div:last-of-type {
    width: 60%;
  }
} */

.title {
  color: #fff;
  position: relative;
}
@media screen and (min-width: 768px) {
  .title::before {
    content: "";
    display: block;
    width: 300%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 100%;
  }
}
.title h2 {
  font-size: 3.6rem;
  font-family: "Noto Serif JP", serif;
}
.title h2 span {
  display: block;
  font-size: 1.4rem;
  line-height: 1.57;
  margin-top: 10px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .title h2 span {
    margin-top: 5px;
    line-height: 1.8;
  }
}

/* .slider_btn {
  height: 100px;
  position: relative;
  pointer-events: none;
}*/
.slider_btn .swiper-btn-arrow {
  position: absolute;
  top: -6px;
  display: inline-block;
  padding: 10px;
  cursor: pointer;
}
.slider_btn .swiper-btn-arrow:before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  position: absolute;
  transform: rotate(45deg);
  z-index: 5;
}
.slider_btn .swiper-btn-prev {
  left: 0;
}
.slider_btn .swiper-btn-prev:before {
  transform: rotate(-135deg);
}
.slider_btn .swiper-btn-next {
  right: 0;
}
.slider_btn .swiper-btn-next:before {
  transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
  .slider_btn > div {
    /* width: 35px;
    height: 35px; */
  }
  .slider_btn .swiper-btn-arrow:before {
    content: "";
    width: 4vw;
    height: 4vw;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
  }
  .slider_btn .swiper-btn-prev {
    left: 8vw;
  }
  .slider_btn .swiper-btn-next {
    right: 13vw;
  }
}
/* .slider_btn > div:first-of-type {
  left: 10px;
  background: url(../img/btn_slider_left.png) no-repeat center;
  background-size: contain;
}
.slider_btn > div:last-of-type {
  right: 10px;
  background: url(../img/btn_slider_right.png) no-repeat center;
  background-size: contain;
} */

.slider_btn .swiper-pagination {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  display: inline-block;
  border-radius: 100%;
  background: #d1c8bd;
  margin: 0 7px;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #292e3e;
}

.mfp-close {
  display: none !important;
}

.mfp-wrap .mfp-image-holder .mfp-content {
  max-width: 80%;
}

.mfp-wrap .mfp-counter {
  display: none !important;
}

.mfp-wrap .mfp-title {
  text-align: right;
  padding-right: 0;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .mfp-wrap .mfp-title {
    font-size: 1.4rem;
  }
}

.mfp-wrap .mfp-figure img {
  padding: 0;
}

.mfp-wrap .mfp-bottom-bar {
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .mfp-wrap .mfp-arrow {
    width: 45px;
  }
}

.mfp-wrap .mfp-arrow-left {
  background: url(../img/ico_modal_left.png) no-repeat right center;
}

.mfp-wrap .mfp-arrow-right {
  background: url(../img/ico_modal_right.png) no-repeat left center;
}

.mfp-wrap .mfp-arrow-left::before,
.mfp-wrap .mfp-arrow-left::after,
.mfp-wrap .mfp-arrow-right::before,
.mfp-wrap .mfp-arrow-right::after {
  border: none;
}

.house {
  width: 77.14%;
  max-width: 1080px;
  margin: 0 auto;
}
.house .layout > div:first-of-type {
  background-color: #91a9a9;
  padding: 2.77% 3.7%;
}
@media screen and (max-width: 767px) {
  .house .layout > div:first-of-type {
    padding: 10px 15px;
  }
}
.house .layout > div:first-of-type dl {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .house .layout > div:first-of-type dl dt {
    font-size: 1.2rem;
  }
}
.house .layout > div:first-of-type dl dt span {
  display: block;
  font-size: 3rem;
}
@media screen and (max-width: 767px) {
  .house .layout > div:first-of-type dl dt span {
    font-size: 2rem;
  }
}
.house .layout > div:first-of-type dl dd {
  margin-top: 20px;
  line-height: 2.5;
}
@media screen and (max-width: 767px) {
  .house .layout > div:first-of-type dl dd {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .house .layout > div:first-of-type dl dd br {
    display: none;
  }
}
.house .layout > div:last-of-type {
  line-height: 0;
  background-color: #fff;
}

span.new {
  padding: 1px 5px;
  background: #900;
  display: inline-block !important;
  font-size: 0.5em !important;
  vertical-align: text-top;
}
@media screen and (max-width: 767px) {
  span.new {
    padding: 0 4px;
  }
}

.vr {
  width: 70.85%;
  max-width: 985px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  border: 10px solid #dcd1ae;
  background-color: #fff;
  padding: 20px 15px 20px 30px;
}
.vr_inner {
  padding-left: 210px;
  background: url(../img/img_vr_01.png) no-repeat left center;
}
.vr_title {
  font-size: 1.9rem;
  line-height: 1.47;
}
.vr_title span {
  font-size: 1.7rem;
}
.vr .layout {
  margin-top: 25px;
  width: 82.64%;
  padding-left: 30px;
}
.vr .layout > div {
  width: 43.6%;
}
.vr_qr {
  line-height: 0;
}
.vr_btn {
  line-height: 0;
  margin-top: 10px;
}
.vr_kome {
  background-color: #f3f3f3;
  margin-top: 30px;
  padding: 10px 35px;
}
.vr_kome li {
  font-size: 1.2rem;
  line-height: 1.33;
  padding-left: 12px;
  text-indent: -12px;
}

/*=====================追加CSS 20190208=========================*/
img.thumbnail {
  width: 100% !important;
  height: 160px !important;
  object-fit: cover; /* この一行を追加するだけ！ */
}

/*=====================追加CSS 20191120 century areaone =========================*/
#scene_box {
  width: 100%;
  background: #efeae5;
  color: #000;
}
.img1,
.img2,
.img3,
.lead,
.scene h3 {
  position: absolute;
  /* text-shadow: 1px 2px 2px #222; */
  display: block;
}

.scene {
  width: 1200px;
  margin: auto;
  position: relative;
}
.scene div p {
  text-align: left;
}
.no1 {
  height: 970px;
}
.no2 {
  height: 865px;
}
.no3 {
  height: 1120px;
}
.no4 {
  height: 1175px;
}
.no2,
.no3,
.no4 {
  margin-top: 100px;
}
.scene::after {
  content: "";
  position: absolute;
  width: 1230px;
  height: 300px;
  background-color: #d1c8bd;
  z-index: 0;
}
.scene.no1::after {
  right: -112px;
  bottom: 140px;
}
.scene.no2::after {
  left: -112px;
  bottom: 190px;
}
.scene.no3::after {
  right: -112px;
  bottom: 300px;
}
.scene.no4::after {
  left: -112px;
  bottom: 440px;
}
.scene h3 {
  font-size: 28px;
  line-height: 1.46;
  z-index: 1;
}

.no1 h3 {
  font-size: 28px;
  left: 0px;
  top: 120px;
  line-height: 1.46;
  z-index: 1;
}
.no1 .img1 {
  right: -112px;
  top: 120px;
  width: 860px;
  z-index: 1;
}
.no1 .img2 {
  left: 0px;
  bottom: 0px;
  width: 401px;
  z-index: 1;
}
.no1 .lead {
  text-align: left;
  left: 0px;
  top: 240px;
  width: 420px;
  z-index: 2;
  font-size: 15px;
}

.no2 h3 {
  font-size: 28px;
  right: 165px;
  top: 0px;
  z-index: 1;
}
.no2 .img1 {
  left: -112px;
  top: 0px;
  width: 860px;
  z-index: 1;
}
.no2 .img2 {
  right: 0px;
  bottom: 0px;
  width: 537px;
  z-index: 2;
}
.no2 .lead {
  text-align: left;
  right: 0px;
  top: 130px;
  width: 420px;
  z-index: 2;
  font-size: 15px;
}

.no3 h3 {
  font-size: 28px;
  left: 0px;
  top: 0px;
  z-index: 1;
}
.no3 .img1 {
  right: -112px;
  top: 0px;
  width: 860px;
  z-index: 1;
}
.no3 .img2 {
  left: 140px;
  bottom: 140px;
  width: 364px;
  z-index: 2;
  text-align: center;
}
.no3 .img3 {
  right: 70px;
  bottom: 0px;
  width: 547px;
  z-index: 1;
  text-align: center;
}
.no3 .lead {
  text-align: left;
  left: 0px;
  top: 140px;
  width: 420px;
  z-index: 2;
  font-size: 14px;
}

.no4 h3 {
  font-size: 28px;
  right: 30px;
  top: 60px;
  z-index: 1;
}
.no4 .img1 {
  left: -112px;
  top: 0px;
  width: 860px;
  z-index: 1;
}
.no4 .img1 p {
  margin-left: 120px;
}
.no4 .img2 {
  right: 0px;
  bottom: 320px;
  width: 420px;
  z-index: 2;
  text-align: center;
}
.no4 .img3 img {
  width: 345px;
}
.no4 .img3 {
  left: 54px;
  bottom: 100px;
  z-index: 1;
  text-align: center;
  display: flex;
  align-items: flex-end;
  flex-direction: row-reverse;
}
.no4 .lead {
  text-align: right;
  right: 60px;
  bottom: 100px;
  z-index: 2;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  #scene_box {
    padding: 13.3vw 0;
  }
  .no1,
  .no2,
  .no3,
  .no1 {
    height: auto;
  }
  .no2,
  .no3,
  .no4 {
    margin-top: 13.33vw;
  }
  .img1,
  .img2,
  .img3 {
    display: none !important;
  }
  .lead,
  .scene h3 {
    display: block;
    position: static;
    padding: 20px;
    box-sizing: border-box;
  }
  .scene h3 {
    font-size: 2.4rem;
    text-align: left;
    position: static;
    padding: 15px;
  }
  .scene .lead {
    width: 100%;
    text-align: left;
  }
  .scene {
    width: 100%;
    height: auto;
    box-sizing: border-box;
  }
  .scene::after {
    content: none;
    width: 97.3vw;
    height: 61.3vw;
  }
  .scene.no1::after {
    right: 0;
    bottom: 90px;
  }
  .scene.no2::after {
    left: 0;
    bottom: 190px;
  }
  .scene.no3::after {
    right: 0;
    bottom: 300px;
  }
  .scene.no4::after {
    left: 0;
    bottom: 460px;
  }
  /* .no1 h3 {
    font-size: 2.4rem;
    text-align: left;
    position: static;
    padding: 15px;
  }
  .no1 .lead {
    width: 100%;
    text-align: left;
  }
  .no2 h3 {
    font-size: 2.4rem;
    text-align: left;
    position: static;
    padding: 15px;
  }
  .no2 .lead {
    width: 100%;
    text-align: left;
  }
  .no3 h3 {
    font-size: 2.4rem;
    text-align: left;
    position: static;
    padding: 15px;
  }
  .no3 .lead {
    width: 100%;
    text-align: left;
  }
  .no4 h3 {
    font-size: 2.4rem;
    text-align: left;
    position: static;
    padding: 15px;
  }
  .no4 .lead {
    width: 100%;
    text-align: left;
  } */
}

#monocoque {
  background: #292e3e;
}
#monocoque .inner {
  height: 746px;
  background: url(../img/area/monocoque_bg.jpg) no-repeat left top;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: flex-end;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
/* .footer_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex !important;
} */
@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
  h2.gallery_title img {
    width: 90%;
    margin: auto;
  }
  #monocoque .inner {
    height: 80%;
    background: url(../img/area/monocoque_bg_sp.jpg) no-repeat center top 5%;
    background-size: 90%;
    display: block;
    padding-top: 75%;
    padding-bottom: 5%;
  }
}
