@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400&family=Noto+Serif+JP:wght@400&family=Oswald:wght@400&display=swap');
body{
-webkit-print-color-adjust: exact;
color:#222222; /* */
font-family: "Noto Sans JP", sans-serif, YuGothic, "Yu Gothic Medium", "Yu Gothic", 游ゴシック, "Hiragino Kaku Gothic ProN", メイリオ, meiryo, sans-serif;
-webkit-text-size-adjust: 100%;
line-height:1.5em;
text-align:center;
}
html{
  -webkit-font-smoothing: antialiased;
}

/* リンク */
a:link{
color:#222222; /* 色 */
text-decoration:none;
}
a:visited{
color:#222222; /* 色 */
text-decoration:none;
}
a:hover {
color:#222222; /* 色 */
text-decoration:none;
}
a:active {
color:#222222; /* 色 */
text-decoration:none;
}
.text-link a:hover,
a.text-link:hover{
  text-decoration: underline;
}

#wrapper{
  width:100%;
  overflow-x: hidden;
}

.image{
  font-size: 0;
  line-height: 0;
}
.image img{
  max-width: 100%;
  height: auto;
}
.txt-image{
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  font-size: 0;
  line-height: 0;
}
/* font
----------------------- */
.font-en{
  letter-spacing: 0.05em;
}
.font-serif{
  font-family: "Noto Serif JP", serif, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"
}
.font-number{
  font-family: "Oswald", "Noto Sans JP", sans-serif, YuGothic, "Yu Gothic Medium", "Yu Gothic", 游ゴシック, "Hiragino Kaku Gothic ProN", メイリオ, meiryo, sans-serif
}
.en-Up{
  text-transform: uppercase;
}
.al-right{text-align: right}
.al-center{text-align: center}
.al-left{text-align: left}
/* .image-f
----------------------- */
.image-f{
  font-size: 0;
  line-height: 0;
}
.image-f img{
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.15s linear;
}
.image-f:hover img{
  opacity:.6;filter: alpha(opacity=60);-ms-filter: "alpha(opacity=60)";
}
/* bg
----------------------- */
.bg-white{background-color: #fff;}
.bg-corol{background-color: #F9F7F7;}

.show{display: block !important;}
.hide{display: none !important;}
.start{
  opacity:0;filter: alpha(opacity=0);-ms-filter: "alpha(opacity=0)";
}
@media print, screen and (min-width:768px){
  body{
   font-size:14px;
   min-width:1040px;
  }
  .spVer{
    display: none !important;
  }
  #wrapper{
    padding-top: 100px;
  }
}

@media screen and (max-width: 767px){
  body{
   font-size:12px;
  }
  .pcVer{
    display: none !important;
  }
  #wrapper{
    overflow-x: hidden;
    padding-top: 14.6vw;
  }
}
.content-inner{
  text-align: left;
  margin: 0 auto;
  max-width: 1000px;
}
@media screen and (max-width: 767px){
  .content-inner{
    padding: 0 3vw;
  }
}
.border__yellow{
  border-top: solid 1px #B89535;
}
/* lead
----------------------- */
.content-lead{
  color: #B89535;
  line-height: 1.2em;
  border-bottom: solid 1px #B89535;
  padding-bottom: 0.4em;
  font-size: 20px;
}
.content-lead.mt{
  margin-top: 4em;
}
@media screen and (max-width: 767px){
  .content-lead{
    font-size: 4.9vw;
  }
  .content-lead.mt{
    margin-top: 2em;
  }
}
/* color
----------------------- */
.color-red{
  color: #6D1F21;
}
.color-red__right{
  color: #FF0000;
}
/* color-bt
----------------------- */
.color-bt{
  background-color: #fff;
}
.color-bt a,
.color-bt button,
.color-bt > div,
.color-bt input[type="submit"]{
      display:flex;
    justify-content: center;
    align-items: center;
  position: relative;
  text-align: center;
  height: 3.6em;
  padding: 0.3em 1.5em;
  color: #fff;
  font-weight: bold;
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.2s linear;
}
.color-bt a:hover,
.color-bt button:hover,
.color-bt input[type="submit"]:hover{
  opacity:.6;filter: alpha(opacity=60);-ms-filter: "alpha(opacity=60)";
}
.color-bt a::after,
.color-bt button::after,
.color-bt > div::after,
.color-bt input[type="submit"]::after{
  content: "";
  display: block;
  border-right:solid 1px #fff;
  border-top:solid 1px #fff;
  position: absolute;
  right: 1em;
  pointer-events: none;
  top: calc(50% - 0.2em);
  transform: rotate(45deg);
  width: 0.4em;
  height: 0.4em;
}
.color-bt.blank-bt a::after,
.color-bt.blank-bt button::after,
.color-bt.blank-bt > div::after,
.color-bt.blank-bt input[type="submit"]::after{
  border: none;
  background: url("../img/icon_blank_white.svg") no-repeat;
  -moz-background-size: 100% auto;
  background-size: 100% auto;
  transform: rotate(0);
  width: 1em;
  height: 1em;
  top: calc(50% - 0.5em);
}
.color-bt a span{
  font-weight: normal;
  font-size: 86%;
  line-height: 1em;
  margin-left: 1em;
}
.color-bt.color-bt__yellow a,
.color-bt.color-bt__yellow button,
.color-bt.color-bt__yellow input[type="submit"]{
  border: solid 1px #B89535;
  background-color: #B89535;
}
.color-bt.color-bt__yellow a.disabled,
.color-bt.color-bt__yellow button:disabled,
.color-bt.color-bt__yellow input[type="submit"]:disabled{
  border: solid 1px #888888;
  background-color: #888888;
  pointer-events: none;
}
.color-bt.color-bt__borderyellow a,
.color-bt.color-bt__borderyellow button,
.color-bt.color-bt__borderyellow input[type="submit"]{
  border: solid 1px #B89535;
  color: #222;
}
.color-bt.color-bt__borderyellow a::after,
.color-bt.color-bt__borderyellow button::after,
.color-bt.color-bt__borderyellow input[type="submit"]::after{
  border-color: #B89535;
}
.color-bt.color-bt__red a,
.color-bt.color-bt__red button,
.color-bt.color-bt__red input[type="submit"]{
  border: solid 1px #6D1F21;
  background-color: #6D1F21;
}
.color-bt.color-bt__orange a,
.color-bt.color-bt__orange button,
.color-bt.color-bt__orange input[type="submit"]{
  border: solid 1px #D1912A;
  background-color: #D1912A;
}
.color-bt.color-bt__white a,
.color-bt.color-bt__white button,
.color-bt.color-bt__white input[type="submit"]{
  border: solid 1px #000000;
  color: #000000;
}
.color-bt.color-bt__white a::after,
.color-bt.color-bt__white button::after,
.color-bt.color-bt__white input[type="submit"]::after{
  border-color: #000;
}
.color-bt.color-bt__blue a,
.color-bt.color-bt__blue button,
.color-bt.color-bt__blue > div,
.color-bt.color-bt__blue input[type="submit"]{
  border: solid 1px #1D346B;
  background-color: #1D346B;
}
.color-bt.color-bt__gray a,
.color-bt.color-bt__gray button,
.color-bt.color-bt__gray > div,
.color-bt.color-bt__gray input[type="submit"]{
  border: solid 1px #888888;
  background-color: #888888;
}
@media screen and (max-width: 767px){
  .color-bt a{
    font-size: 3vw;
    flex-direction: column;
    height: 3.2em;
  }
  .color-bt a span{
    margin: -0.2em -5em 0;
    display: block;
    transform: scale(0.7);
    transform-origin: 50% 50%;
  }
}
/* .more-bt
----------------------- */
.more-bt{
  background-color: #fff;
  margin-top: 20px;
}
.more-bt.hide{display: none;}
.more-bt a{
      display:flex;
    justify-content: center;
    align-items: center;
  position: relative;
  text-align: center;
  height: 3em;
  padding: 0.3em 1.5em;
  color: #fff;
  font-weight: bold;
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.2s linear;
  background-color: #D1912A;
  font-size: 16px;
}
.more-bt a:hover{
  opacity:.6;filter: alpha(opacity=60);-ms-filter: "alpha(opacity=60)";
}
.more-bt a::after{
  content: "";
  display: block;
  border-right:solid 2px #fff;
  border-top:solid 2px #fff;
  position: absolute;
  right: 1.5em;
  pointer-events: none;
  top: calc(50% - 0.6em);
  transform: rotate(135deg);  
  width: 0.8em;
  height: 0.8em;
}
@media screen and (max-width: 767px){
  .more-bt{
    margin-top: 0 3vw;
  }
  .more-bt a{
    font-size: 3vw;
  }
}
/* ========================================================
table
======================================================== */
/* table-corol
----------------------- */
.table-corol{
  width: 100%;
  background-color: #fff;
  border-top:solid 1px #DBD2C6;
  border-right:solid 1px #DBD2C6;
}
.table-corol th{
  background-color: #F4EFE9;
  font-weight: normal;
}
.table-corol th,
.table-corol td{
  border-bottom:solid 1px #DBD2C6;
  border-left:solid 1px #DBD2C6;
  padding: 1em;
}
.table-corol a{
  text-decoration: underline;
}
.table-corol a:hover{
  text-decoration: none;
}
/* ========================================================
pager
======================================================== */
.pager{
  display: flex;
  justify-content: flex-end;
  gap: 0 50px;
}
.pager-prev,.pager-next,.pager-list__item{
  background-color: #fff;
}
.pager a,
.pager span{
  display: block;
  font-weight: bold;
  text-align: center;
  line-height: 38px;
  font-size: 18px;
}
.pager a{
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.2s linear;
}
.pager a:hover{
  opacity:.6;filter: alpha(opacity=60);-ms-filter: "alpha(opacity=60)";
}
.pager-prev a, 
.pager-prev span,
.pager-next a, 
.pager-next span{
  padding: 0 1em;
}
.pager-prev a,
.pager-next a{
  border: solid 1px #B89535;
  color: #B89535;
  background-color: #fff;
}
.pager-prev span,
.pager-next span{
  border: solid 1px #888888;
  color: #fff;
  background-color: #888888;
}
.pager-list{
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  font-weight: bold;
  color: #B89535;
  gap: 0 20px;
}
.pager-list__item a{
  border: solid 1px #B89535;
  color: #B89535;
  background-color: #fff;
  width: 38px;
}
.pager-list__item span{
  border: solid 1px #B89535;
  color: #fff;
  background-color: #B89535;
  width: 38px;
}
@media screen and (max-width: 767px){
  .pager{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
    gap:0;
  }
  .pager a,
  .pager span{
    line-height: 10vw;
    font-size: 3.2vw;
  }
  .pager-prev a, 
  .pager-prev span,
  .pager-next a, 
  .pager-next span{
    padding: 0 0.8em;
  }
  .pager-list{
    gap: 0 3.8vw;
  }
  .pager-list__item a{
    width: 10vw;
  }
  .pager-list__item span{
    width: 10vw;
  }
}
/* ========================================================
header
======================================================== */
.header-area{
  background-color: #F4EFE9;
  position: fixed;
  z-index: 100;
  left: 0;
  top: 0;
  width: 100%;
  text-align: left;
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    align-items: center;
    flex-wrap: wrap;
  padding: 0 50px;
  height: 100px;
}
@media screen and (max-width: 767px){
  .header-area{
    padding: 0 4.35vw;
    height: 14.6vw;
  }
}
/* .header-logo
----------------------- */
.header-logo{
  width: 90px;
}
@media screen and (max-width: 767px){
  .header-logo{
    width: 10.25vw;
  }
}
/* .header-service
----------------------- */
.header-service{
  margin-right: auto;
  margin-left: 1.5em;
  padding-top: 0.5em;
}
.header-service a:hover{
  color: #B89535;
  text-decoration: underline;
}
@media screen and (max-width: 767px){
  .header-service{
    font-size: 2.5vw;
    padding-top: 0.3em;
  }
}
/* sp-menu__bt
----------------------- */
.sp-menu__bt{
  position: absolute;
  z-index: 2;
  right: 4.35vw;
  top: 3.8vw;
}
.sp-menu__bt .sp-menu__trigger,
.sp-menu__bt .sp-menu__trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.sp-menu__bt .sp-menu__trigger {
  position: relative;
  width: 7.7vw;
  height: 7.7vw;
  background-color: #B89535;
}
.sp-menu__bt .sp-menu__trigger span {
  position: absolute;
  right: 1.5vw;
  width: 4.6vw;
  height: 1px;
  background-color: #fff;
}
.sp-menu__bt .sp-menu__trigger span:nth-of-type(1) { top: 2vw;}
.sp-menu__bt .sp-menu__trigger span:nth-of-type(2) { top: 3.8vw;}
.sp-menu__bt .sp-menu__trigger span:nth-of-type(3) { top: 5.6vw;}
.sp-menu__bt .sp-menu__trigger.active span:nth-of-type(1) {
  transform: translateY(1.8vw) rotate(-45deg);
}
.sp-menu__bt .sp-menu__trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.sp-menu__bt .sp-menu__trigger.active span:nth-of-type(3) {
  transform: translateY(-1.8vw) rotate(45deg);
}
@media screen and (min-width: 768px){
  .sp-menu__bt{
    display: none;
  }
}
/* g-nav
----------------------- */
.g-nav__inner{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    align-items: center;
    flex-wrap: wrap;
}
.header-nav{
  display: flex;
  justify-content: flex-start;
  gap: 0 50px;
  margin-right: 50px;
}
.header-nav a:hover{
  color: #B89535;
  text-decoration: underline;
}
.header-contact{
  font-size: 16px;
  width: 250px;
}
@media screen and (max-width: 767px){
  .g-nav{
      display:flex;
    justify-content: center;
    align-items: center;
      width: 100vw;
      height: 100vh;
      padding: 4vw;
      position: fixed;
      text-align: center;
      left: 0;
      top: 0;
      background-color: #fff;
  }
  .g-nav__inner{
    width: 100%;
    display: block;
  }
  .header-nav{
    display: block;
    margin-right: 0;
    width: 100%;
  }
  .header-nav li:not(:first-of-type){
    border-top:solid 1px #D4BF86;
  }
  .header-nav li a{
    display: block;
    font-size: 4.9vw;
    padding: 1.2em;
  }
  .header-contact{
    font-size: 4.9vw;
    width: 100%;
    margin-top: 3vw;
  }
  .header__list{
    display: flex;
    justify-content: center;
    width: 100%;
    gap: 4.6vw;
    margin: 30vw 0 auto;
  }
}
.header-area.form-header .sp-menu__bt,
.header-area.form-header .g-nav{
  display: none !important;
}
/* ========================================================
headline-area
======================================================== */
.headline-area{
  padding: 40px 0 50px;
}
.headline-ttl{
  font-weight: normal;
  line-height: 1.6em;
  font-size: 36px;
}
.headline-lead{
  margin-top: 32px;
  line-height: 1.8em;
  font-size: 18px;
}
.headline-txt{
  margin-top: 2em;
}
@media screen and (max-width: 767px){
  .headline-area{
    padding: 9.2vw 0 10.7vw;
  }
  .headline-ttl{
    font-size: 6.3vw;
    text-align: center;
  }
  .headline-lead{
    text-align: center;
    margin-top: 7.7vw;
    font-size: 3.7vw;
  }
}
/* txt-caption
----------------------- */
.txt-caption{
  padding-left: 1em;
  text-indent: -1em;
  font-size: 82%;
}
/* ========================================================
list
======================================================== */
/* dot-list
----------------------- */
.dot-list li{
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.65em;
}
.dot-list li::before{
  content: "・";
  display: inline-block;
  width: 1em;
  height: 1em;
  text-indent: 0;
}
/* pagelink-list
----------------------- */
.pagelink-list li{
  padding: 0 2.5em;
  display: inline-block;
  line-height: 1.8em;
  font-size: 16px;
}
.pagelink-list li:not(:last-of-type){
  border-right:solid 1px #DDDDDD;
}
.pagelink-list li a{
  color: #B89535;
  text-decoration: underline;
  display: block;
}
.pagelink-list li a:hover{
  text-decoration:none;
}
.pagelink-list li a::after{
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 0.8em;
  height: 0.8em;
  border-right: solid 1px #B89535;
  border-bottom: solid 1px #B89535;
  transform: rotate(45deg);
  margin-left: 1em;
  margin-top: -0.5em;
}
@media screen and (max-width: 767px){
  .pagelink-list{
    display: inline-block;
  }
  .pagelink-list li{
    display: block;
    padding: 0;
  }
  .pagelink-list li:not(:last-of-type){
    border-right:none;
    margin-top: 0.2em;
  }
  .pagelink-list li a{
    text-align: left;
    position: relative;
    padding-right: 3em;
  }
  .pagelink-list li a::after{
    position: absolute;
    right: 0;
    top: calc(50% - 0.1em);
  }
}
/* ========================================================
residence-summary
======================================================== */
.residence-summary{
  margin-top: 50px;
  padding: 80px 0 50px;
}
.residence-summary:first-child{
  margin-top: 0;
}
@media screen and (max-width: 767px){
  .residence-summary{
    margin-top: 7.7vw;
    padding: 10.8vw 0 7.7vw;
  }
}
/* residence-headline
----------------------- */
.residence-headline{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
    align-items: center;
}
.residence-headline .residence-headline__deta{
  width: calc(100% - 400px);
}
.residence-headline .color-bt{
  width: 360px;
}
.residence-headline__name{
  line-height: 1.4em;
  margin-bottom: 0.2em;
  font-weight: normal;
  font-size: 36px;
}
.residence-headline__name a{
  color: #B89535;
}
.residence-headline__name a span{
  background: linear-gradient(rgba(184,149,53,0) 0%,rgba(184,149,53,0) 89%, rgba(184,149,53,1) 90%, rgba(184,149,53,1) 92%, rgba(184,149,53,0) 93%);
}
.residence-headline__name a:hover span{
  border: none;
}
.residence-headline__address{
  font-style: normal;
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
}
.residence-headline__map{
  display: inline-block;
  vertical-align: middle;
  margin-left: 45px;
}
.residence-headline__map a{
  display: block;
  color: #fff;
  background-color: #B89535;
  padding: 0.8em 1em;
  line-height: 1em;
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.2s linear;
  font-size: 10px;
}
.residence-headline__map a::after{
  display: inline-block;
  vertical-align: middle;
  content: "";
  margin: 0 0.5em;
  background-color: #fff;
  aspect-ratio: 1/cos(30deg);
  clip-path: polygon(0 0,100% 0,50% 100%);
  width: 0.8em;
}
.residence-headline__map a:hover{
  opacity:.6;filter: alpha(opacity=60);-ms-filter: "alpha(opacity=60)";
}
@media screen and (max-width: 767px){
  .residence-headline .residence-headline__deta{
    width: 100%;
  }
  .residence-headline .color-bt{
    width: 100%;
    margin-top: 4vw;
  }
  .residence-headline__name{
    font-size: 6.7vw;
  }
  .residence-headline__address{
    font-size: 3.7vw;
  }
  .residence-headline__map{
    margin-left: 1em;
  }
  .residence-headline__map a{
    font-size: 2.4vw;
    padding: 0.4em 0.6em;
  }
  .residence-headline__map a::after{
    margin: 0 0 0 0.5em;
  }
}
/* residence-unit
----------------------- */
.residence-unit{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
    margin-top: 40px;
}
.residence-point{
  border: solid 1px #B89535;
  width: 100%;
  padding: 1.3em;
  line-height: 1.6em;
  margin: 0 0 50px;
  font-size: 16px;
}
.residence-point__ttl{
  color: #B89535;
  margin-bottom: 0.2em;
}
.residence-image{
  width: 500px;
  text-align: center;
  overflow: hidden;
  opacity:0;
  filter: alpha(opacity=0);
  -ms-filter: "alpha(opacity=0)";
}
.residence-image.start{
  opacity:1;
  filter: alpha(opacity=100);
  -ms-filter: "alpha(opacity=100)";
}
.residence-image > .image,
.residence-image__view .slick-slide,
.residence-image__view .slick-slide li{
  aspect-ratio: 640 / 480;
  position: relative;
}
.residence-image img,
.residence-image__view img{
  max-width: 100%;
  width: auto;
  max-height: 100%;
  height: auto;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.residence-image__list{
  margin: 20px -51.5px 0 -7.5px;
}
.residence-image__list li{
  padding: 0 7.5px;
  cursor: pointer;
  position: relative;
  aspect-ratio: 1/0.85;
  display: block;
}
.residence-image__list .slick-slide{
  position: relative;
}
.residence-image__list .slick-current::before{
  content: "";
  display: block;
  width: calc(100% - 15px);
  height: 100%;
  border: solid 5px #B89535;
  position: absolute;
  top: 0;
  left: 7.5px;
  z-index: 2;
}
.residence-image__list li img{
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.residence-deta{
      display:flex;
    -ms-flex-pack:distribute;
    flex-direction: column;
    flex-wrap: wrap;
    word-break:break-all;
  width: 460px;
}
.residence-deta .border-box{
  border: solid 5px #F4EFE9;
  padding: 0.5em 1.5em 0.5em 0.5em;
  line-height: 2em;
  margin-top: 25px;
  font-size: 16px;
}
.residence-deta .border-box li{
  display: inline-block;
  vertical-align: bottom;
  padding-left: 1em;
}
.residence-deta .border-box li strong{
  display: inline-block;
  padding: 0 0.05em;
  line-height: 1.6em;
}
.residence-deta .border-box__price li strong{
  font-size: 1.714em;
}
.residence-deta .border-box__price li:first-child strong{
  color: #6D1F21;
  font-size: 1.875em;
}
.residence-deta .table-corol{
  margin-top: 25px;
}
.residence-deta .content-lead{
  line-height: 1em;
}
.residence-deta .content-lead + .table-corol{
  margin-top: 35px;
}
.residence-deta .table-corol th{
  width: 7.4em;
}
.residence-deta .table-corol strong{
  color: #6D1F21;
  line-height: 1em;
  vertical-align: middle;
  display: inline-block;
  margin-top: -0.4em;
  font-size: 1.6em;
  margin-right: 0.2em;
}
.residence-caption{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:flex-end;
    flex-wrap: wrap;
  gap: 0 1em;
  margin-top: auto;
  padding-top: 1em;
  font-size: 12px;
}
@media screen and (max-width: 767px){
  .residence-unit{
    margin-top: 0;
  }
  .residence-point{
    margin: 6.1vw 0 0;
    padding: 0.6em;
    font-size: 4.3vw;
  }
  .residence-point__ttl{
    font-size: 4.9vw;
  }
  .residence-image{
    width: 100vw;
    margin: 5.5vw -3vw 0;
  }
  .residence-image__list{
    margin: 3vw 1.5vw 0;
  }
  .residence-image__list li{
    padding: 0 1.5vw;
  }
  .residence-image__list .slick-current::before{
    width: calc(100% - 3vw);
    border: solid 1vw #B89535;
    left: 1.5vw;
  }
  .residence-deta{
    display: block;
    width: 100%;
    margin-top: 7.7vw;
  }
  .residence-deta .border-box{
    border: solid 1.3vw #F4EFE9;
    padding: 0.5em 1em 0.5em 0em;
    margin-top: 4.6vw;
    font-size: 3.7vw;
  }
  .residence-deta .table-corol,
  .residence-deta .content-lead + .table-corol{
    margin-top: 4.6vw;
  }
  .residence-caption{
      display:block;
      text-align: right;
    font-size: 2.9vw;
  }
}
/* ========================================================
roomlist-area
======================================================== */
.roomlist-area{
  padding: 50px 0 100px;
}
.roomlist-caption{
  line-height: 1.4em;
  margin-top: 1.2em;
  font-size: 12px;
}
@media screen and (max-width: 767px){
  .roomlist-area{
    padding: 7.7vw 0 20vw;
  }
  .roomlist-caption{
    font-size: 2.9vw;
  }
}
/* room-search
----------------------- */
@media screen and (min-width: 768px){
  .room-search{
    border: solid 1px #DBD2C6;
    background-color: #fff;
    font-size: 108%;
    margin-top: 1.5em;
    padding: 0 20px 20px;
    display: block !important;
  }
  .room-search__close{display: none;}
  .room-search h3{
    background-color: #F4EFE9;
    margin: 0 -20px;
    padding: 1em;
    border-bottom: solid 1px #DBD2C6;
    margin-bottom: 1.5em;
  }
  .room-search__unit{
      display:flex;
      -ms-flex-pack:distribute;
      justify-content:space-between;
      flex-wrap: wrap;
    align-items: center;
  }
  .room-search__unit:not(:first-of-type){
    margin-top: 1em;
  }
  .room-search__unit__ttl{
    width: 5em;
  }
  .room-search__unit__body{
    width: calc(100% - 5.5em);
  }
  #room-search__floorplan{
    width: calc(100% - 2.5em);
    margin-left: -3em;
  }
  .room-search__unit__body .check-wrap{
    display: inline-block;
    vertical-align: middle;
    margin: 0.5em 0 0.5em 3em;
  }
  .room-search__unit__body .sort-select + .check-wrap{
    margin: 0 0 0 3em;
  }
  #room-search__period .check-wrap{
    margin-left: 0;
  }
  .room-search__unit__body .sort-select{
    display: inline-block;
    vertical-align: middle;
  }
  .room-search__unit__body .inline{
    margin: 0 1em;
  }
  .room-search .color-bt{
    margin: 20px auto 0;
    width: 400px;
  }
  .room-search .color-bt a{
    height: 3em;
  }
}
@media screen and (max-width: 767px){
  .room-search{
    background-color: #fff;
    position: fixed;
    left: 0;
    top: 0;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    padding: 16.7vw 0 4vw;
    overflow-y: scroll;
  }
  .room-search.spstart{
    z-index: 2000;
  }
  .room-search__close{
    position: absolute;
    right: 4.5vw;
    top: 4.5vw;
  }
  .room-search__close a{
    display: block;
    position: relative;
    width: 7.7vw;
    height: 7.7vw;
    background-color: #B89535;
  }
  .room-search__close a span {
    position: absolute;
    right: 1.5vw;
    width: 4.6vw;
    height: 1px;
    background-color: #fff;
  }
  .room-search__close a span:nth-of-type(1) { top: 2vw;transform: translateY(1.8vw) rotate(-45deg);}
  .room-search__close a span:nth-of-type(2) { top: 5.6vw;transform: translateY(-1.8vw) rotate(45deg);}
  .room-search h3{
    background-color: #F4EFE9;
    text-align: center;
    padding: 1em;
    font-size: 108%;
  }
  .room-search__unit{
    margin: 2em 1em 0;
  }
  .room-search__unit + .room-search__unit{
    margin-top: 3em;
  }
  .room-search__unit__body{
    margin-top: 1em;
  }
  #room-search__floorplan{
    margin-top: 0.3em;
  }
  .room-search__unit__body .check-wrap{
    display: inline-block;
    vertical-align: middle;
    width: 48%;
    margin: 0.7em 0;
  }
  .room-search__unit__body .sort-select{
    display: inline-block;
    vertical-align: middle;
  }
  .room-search__unit__body .inline{
    margin: 0 1em;
  }
  .room-search .color-bt{
    margin: 3em auto 0;
    width: calc(100% - 2em);
  }
  .room-search .color-bt a{
    height: 3em;
  }
}
/* room-conditions
----------------------- */
@media screen and (min-width: 768px){
  .room-conditions{
    display: none;
  }
}
@media screen and (max-width: 767px){
  .room-conditions{
    border: solid 1px #DBD2C6;
    background-color: #fff;
    margin-top: 1.5em;
    padding: 0 2vw 2vw;
  }
  .room-conditions h3{
    background-color: #F4EFE9;
    margin: 0 -2vw;
    padding: 0.5em 1em;
    text-align: center;
    border-bottom: solid 1px #DBD2C6;
    margin-bottom: 1em;
    font-weight: normal;
  }
  .room-conditions .color-bt{
    margin: 4vw auto 0;
  }
  .room-conditions .color-bt a{
    height: 2.6em;
  }
}
/* sort-wrap
----------------------- */
.sort-wrap{
  text-align: right;
  margin-top: 25px;
}
.sort-wrap > *{
  display: inline-block;
  vertical-align: middle;
}
.sort-select{
  position: relative;
}
.sort-select select{
  border: solid 1px #BBBBBB;
  background-color: #fff;
  cursor: pointer;
  padding: 0.3em calc(1.2em + 30px) 0.3em 1.2em;
  height: 30px;
}
.sort-select::before,
.sort-select::after{
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
}
.sort-select::before{
  background-color: #BBBBBB;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  width: 30px;
  height: 30px;
}
.sort-select::after{
  width: 0.8em;
  height: 0.8em;
  border-right:solid 1px #fff;
  border-bottom:solid 1px #fff;
  transform: rotate(45deg);
  right: calc((30px - 0.8em)/2);
  top: calc((30px - 1em)/2);
}
@media screen and (max-width: 767px){
  .sort-wrap{
    margin-top: 4.6vw;
  }
  .sort-select select{
    height: 7.7vw;
  }
  .sort-select::before{
    width: 7.7vw;
    height: 7.7vw;
  }
  .sort-select::after{
    right: calc((7.7vw - 0.8em)/2);
    top: calc((7.7vw - 1em)/2);
  }
}
/* ========================================================
roomlist-list
======================================================== */
.roomlist-list__wrap{
      display:flex;
    -ms-flex-pack:distribute;
    flex-direction: column;
    flex-wrap: wrap;
}
.roomlist-list{
  border: solid 1px #DBD2C6;
  margin-top: 15px;
}
.roomlist-list.roomhide{display: none;}
.roomlist-list.roomhide.floorplanShow.floorareaShow.priceShow{display: block;}
.roomlist-list.morehide{display: none;}
.roomlist-list > a{
  display: block;
  background-color: #fff;
  position: relative;
  transition-property: background-color;
  transition: 0.2s linear;
  padding: 20px 93px 25px 150px;
}
.roomlist-list > a:hover{
  background-color: #f4efe9;
}
.roomlist-list > a::after{
  content: "";
  display: block;
  position: absolute;
  transform: rotate(45deg);
  top: calc(50% - 0.5em);
  right: 2em;
  width: 1em;
  height: 1em;
  border-right:solid 2px #000;
  border-top:solid 2px #000;
}
.roomlist-list__name{
  line-height: 1.4em;
  font-weight: bold;
  margin-left: -125px;
  font-size: 20px;
}
.roomlist-list__img{
  border: solid 1px #DBD2C6;
  position: absolute;
  background-color: #fff;
  left: 25px;
  bottom: 25px;
  height: 100px;
  width: 100px;
}
.roomlist-list__img img{
  object-fit:contain;
  height: 100%;
  width: 100%;
}
@media screen and (max-width: 767px){
  .roomlist-list{
    margin-top: 3vw;
  }
  .roomlist-list > a{
    padding: 3vw;
  }
  .roomlist-list > a::after{
    top: calc(50% - 6.9vw - 0.5em);
  }
  .roomlist-list__name{
    margin-left: 24vw;
    font-size: 3.7vw;
  }
  .roomlist-list__img{
    left: 3vw;
    bottom: auto;
    top: 3vw;
    height: 21vw;
    width: 21vw;
  }
}
/* .roomlist-list__deta
----------------------- */
.roomlist-list__deta{
  display: grid;
  align-items: end;
  grid-template-columns: 50% 50%;
    margin: 0 -1em;
}
.roomlist-list__deta li{
  padding: 0 0.8em;
  min-width: 50%;
}
.roomlist-list__deta .price{
  grid-column:1/2;
    grid-row:1/3;
}
.roomlist-list__deta .price strong{
  color: #6D1F21;
  line-height: 1em;
  vertical-align: bottom;
  font-size: 32px;
}
.roomlist-list__deta .floor,
.roomlist-list__deta .period{

}
.roomlist-list__deta .floor strong{
  font-size: 128%;
}
@media screen and (max-width: 767px){
  .roomlist-list__deta{
      display:block;
      margin: 0 0 0 24vw;
      font-size: 3vw;
      min-height: 16vw;
  }
  .roomlist-list__deta li{
    padding: 0;
    line-height: 1.4em;
  }
  .roomlist-list__deta .price strong{
    font-size: 4.9vw;
    line-height: 1.2em;
  }
  .roomlist-list__deta .floor strong{
    font-size: 108%;
  }
}
/* roomlist-list__btset
----------------------- */
.roomlist-list__btset{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
  margin-top: 15px;
}
.roomlist-list__btset .color-bt{
  width: calc((100% - 25px) / 2);
}
@media screen and (max-width: 767px){
  .roomlist-list__btset{
    margin-top: 3vw;
  }
  .roomlist-list__btset .color-bt{
    width: calc((100% - 3vw) / 2);
  }
  .roomlist-list__btset .color-bt a{
    height: 2.4em;
  }
}
/* .pager
----------------------- */
.roomlist-area .pager{
  margin-top: 20px;
}
@media screen and (max-width: 767px){
  .roomlist-area .pager{
    margin-top: 5vw;
  }
}
/* ========================================================
roomdeta-area
======================================================== */
.roomdeta-area{
  padding: 50px 0 100px;
  word-break:break-all;
}
.roomdeta-area .table-corol{
  margin-top: 25px;
}
.roomdeta-area .table-corol th{
  width: 9em;
}
@media screen and (max-width: 767px){
  .roomdeta-area{
    padding: 7.7vw 0 20vw;
  }
  .roomdeta-area .table-corol{
    margin-top: 3vw;
    
  }
  .roomdeta-area .table-corol tr{
    display:flex;
    -ms-flex-pack:distribute;
    flex-wrap: wrap;
  }
  .roomdeta-area .table-corol th,
  .roomdeta-area .table-corol td{
  }
  .roomdeta-area .table-corol th{
    width: 9em;
  }
  .roomdeta-area .table-corol td{
    width: calc(100% - 9em);
  }
}
/* room-detail__contact
----------------------- */
.room-detail__contact{
  margin-top: 50px;
}
.room-detail__btset{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
  margin-top: 15px;
}
.room-detail__btset .color-bt{
  width: calc((100% - 80px) / 2);
}
.room-detail__return{
  text-align: center;
  margin-top: 60px;
}
.room-detail__return .color-bt{
  width: calc((100% - 80px) / 2);
  margin: 0 auto;
}
.room-detail__return .color-bt a::after{
  right: auto;
  left: 1em;
  transform: rotate(225deg);
}
.room-detail__contact__caption{
  text-align: center;
  margin-top: 30px;
  font-size: 12px;
}
@media screen and (max-width: 767px){
  .room-detail__contact{
    margin-top: 0;
    position: fixed;
    z-index: 70;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: #fff;
    padding: 3vw;
  }
  .room-detail__btset{
    margin-top: 0;
  }
  .room-detail__btset .color-bt{
    width: calc((100% - 4.6vw) / 2);
  }
  .room-list__btset .color-bt a{
    height: 2.4em;
  }
  .room-detail__contact__caption{
    font-size: 3vw;
    line-height: 1.4em;
    margin: 1em 0 0.5em;
  }
  .room-detail__return{
    margin-top: 8vw;
  }
  .room-detail__return .color-bt{
    width: 100%;
  }
}
/* ========================================================
map-area
======================================================== */
.map-area{
  padding: 100px 0 150px;
}
.map-wrap{
  width: 100%;
  height: 568px;
  margin-top: 25px;
}
.map-wrap iframe{
  width: 100%;
  height: 100%;
}
.map-area .border__yellow{
  margin-top: 25px;
}
@media screen and (max-width: 767px){
  .map-area{
    padding: 7.7vw 0 20vw;
  }
  .map-wrap{
    height: 100vw;
    margin-top: 3vw;
  }
  .map-area .border__yellow{
    margin-top: 3vw;
  }
}
/* ========================================================
about-content
======================================================== */
.about-content{
  padding: 50px 0;
}
@media screen and (max-width: 767px){
  .about-content{
    padding: 7.7vw 0;
  }
}
/* about-point__list
----------------------- */
.about-point__list{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
  margin-top: 25px;
}
.about-point__list li{
      display:flex;
    -ms-flex-pack:distribute;
    flex-direction: column;
    flex-wrap: wrap;
  width: 300px;
}
.about-point__list li .about-point__list__image{
  border-radius: 9999px;
  overflow: hidden;
}
.about-point__list li .about-point__list__image img{
  width: 100%;
  height: auto;
}
.about-point__list__count{
  border-radius: 9999px;
  font-weight: bold;
  background-color: #B89535;
  text-align: center;
  position: relative;
  z-index: 2;
  padding-top: 33px;
  color: #fff;
  width: 120px;
  height: 120px;
  font-size: 24px;
  margin: -50px auto 0;
}
.about-point__list__count b{
  font-size: 150%;
  line-height: 1.25em;
  display: block;
}
.about-point__list__box{
  background-color: #F9F7F7;
  text-align: center;
  line-height: 1.6em;
  flex-grow: 2;
  padding: 45px 0 30px;
  margin-top: -30px;
}
.about-point__list__ttl{
  font-size: 18px;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px){
  .about-point__list{
    margin: 0 5.5vw;
  }
  .about-point__list li{
    width: 100%;
    margin-top: 7.7vw;
  }
  .about-point__list__count{
    padding-top: 5.4vw;
    width: 24vw;
    height: 24vw;
    font-size: 5.5vw;
    margin: -10vw auto 0;
  }
  .about-point__list__box{
    padding: 15.4vw 0 3vw;
    margin-top: -10vw;
  }
  .about-point__list__ttl{
    font-size: 18px;
  }
}
/* about-step__list
----------------------- */
.about-step__list{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
  margin-top: 25px;
}
.about-step__list li{
  position: relative;
  text-align: center;
  width: 220px;
}
.about-step__list li:not(:last-of-type)::after{
    position: absolute;
  content: "";
  background-color: #B89535;
  aspect-ratio: 1/cos(30deg);
  clip-path: polygon(0 0,100% 0,50% 66%);
  width: 30px;
  transform: rotate(-90deg);
  top: 105px;
  right: -40px;
}
.about-point__step__count{
  background-color: #F4EFE9;
  font-weight: bold;
  padding: 0.5em 0;
  font-size: 20px;
}
.about-point__step__count b{
  font-size: 130%;
  line-height: 1em;
}
.about-step__list__image{
  background-color: #fff;
  height: 160px;
}
.about-step__list__image img{
  width: auto;
  height: 100%;
}
.about-point__step__ttl{
  margin: 0.6em 0 0.4em;
  font-size: 16px;
}
@media screen and (max-width: 767px){
  .about-step__list{
    margin: -4.3vw 5.5vw 0;
  }
  .about-step__list li{
    width: 100%;
    margin-top: 12vw;
  }
  .about-step__list li:not(:last-of-type)::after{
    width: 9.2vw;
    transform: rotate(0deg);
    top: auto;
    bottom: -11vw;
    right: calc(50% - 5.6vw);
  }
  .about-point__step__count{
    font-size: 4.9vw;
  }
  .about-step__list__image{
    height: 48vw;
  }
  .about-point__step__ttl{
    font-size: 4.3vw;
  }
}
/* about-attention__content
----------------------- */
.about-attention__content{
  border: solid 1px #A16163;
  background-color: #F9F7F7;
  padding: 35px 200px;
}
.about-attention__content__ttl{
  text-align: center;
  line-height: 1.4em;
  font-size: 20px;
}
.about-attention__content .dot-list{
  margin-top: 1em;
}
.about-attention__box{
  background-color: #fff;
  padding: 1em;
  margin-top: 2em;
}
.about-attention__box__ttl{
  text-align: center;
  font-size: 100%;
}
.about-attention__box .dot-list{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
    width: calc(100% - 3em);
}
@media screen and (max-width: 767px){
  .about-attention__content{
    padding: 1em;
  }
  .about-attention__content__ttl{
    font-size: 4.3vw;
  }
  .about-attention__box{
    margin-top: 1em;
  }
  .about-attention__box .dot-list{
    width: 100%;
  }
  .about-attention__box .dot-list li{
    min-width: 40%;
  }
}
/* ========================================================
faq-content
======================================================== */
.faq-content{
  padding: 50px 0 80px;
}
.faq-content .content-lead{
  margin-top: 50px;
}
@media screen and (max-width: 767px){
  .faq-content{
    padding: 7.7vw 0 15.4vw;
  }
  .faq-content .content-lead{
    margin-top: 7.7vw;
  }
}
/* faq-list
----------------------- */
.faq-list{
  margin-top: 25px;
}
.faq-list li{
  display: block;
  border: solid 1px #F4EFE9;
}
.faq-list li:not(:first-of-type){
  margin-top: 20px;
}
.faq-list__q a{
  display: block;
  background-color: #F4EFE9;
  font-weight: bold;
}
.faq-list__q a,
.faq-list__a{
  padding: 20px 40px 20px calc(20px + 1.5em);
  position: relative;
}
.faq-list__q a::before,
.faq-list__a::before{
  position: absolute;
  line-height: 1.4em;
  display: block;
  width: 1.5em;
  left: 20px;
  top: 20px;
}
.faq-list__q a::before{
  content: "Q.";
}
.faq-list__a::before{
  content: "A.";
}
.faq-list__q a::after{
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-right: solid 1px #B89535;
  border-bottom: solid 1px #B89535;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 0.7em);
  transition-property: top,transform;
  transition: 0.2s linear;
  right: 20px;
}
.faq-list__q a.open::after{
  transform: rotate(-135deg);
  top: calc(50% - 0.3em);
}
.faq-list__a{
  min-height: 3em;
}
@media screen and (max-width: 767px){
  .faq-list{
    margin-top: 4.6vw;
  }
  .faq-list li:not(:first-of-type){
    margin-top: 1.5vw;
  }
  .faq-list__q a,
  .faq-list__a{
    padding: 1.5vw 6.5vw 1.5vw calc(1.5vw + 1.5em);
  }
  .faq-list__q a::before,
  .faq-list__a::before{
    left: 1.5vw;
    top: 1.5vw;
  }
  .faq-list__q a::after{
    right: 2.5vw;
    width: 0.65em;
    height: 0.65em;
  }
}
/* ========================================================
footer
======================================================== */
.footer-inner{
  max-width: 940px;
  margin: 0 auto;
  text-align: left;
  color: #fff;
}
.footer-inner a{
  color: #fff;
}
.footer-inner a:hover{
  color: #B89535;
}
@media screen and (max-width: 767px){/*SP無し*/
}
/* .footer-nav
----------------------- */
.footer-nav{
  background-color: #212121;
  padding: 50px 0;
}
.footer-nav__list{
  display: flex;
  justify-content: flex-start;
  gap: 0 50px;
}
@media screen and (max-width: 767px){
}
/* .footer-bottom
----------------------- */
.footer-bottom{
  background-color: #000;
  position: relative;
  padding: 45px 0;
}
.footer-bottom .footer-inner{
  position: relative;
}
.footer-bottom__list{
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  display: flex;
  justify-content: flex-start;
  gap: 0 50px;
}
.footer-logo{
  width: 175px;
}
.footer-copy{
  margin-top: 1em;
  font-size: 11px;
}
@media screen and (max-width: 767px){
  .footer-bottom{
    text-align: center;
    padding: 13.8vw 0;
  }
  .footer-logo{
    width: 40.8vw;
    margin: 0 auto;
  }
  .footer-copy{
    text-align: center;
    font-size: 3vw;
  }
}
/* .footer-gotop
----------------------- */
.footer-gotop{
  position: fixed;
  border: solid 1px #000;
  width: 50px;
  height: 50px;
  background-color: #fff;
  right: 100px;
  bottom: 0;
  top: auto;
}
.footer-gotop a{
  display: block;
  position: relative;
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.2s linear;
  background-color: #000;
  width: 48px;
  height: 48px;
}
.footer-gotop a:hover{
  opacity:.6;filter: alpha(opacity=60);-ms-filter: "alpha(opacity=60)";
}
.footer-gotop a::after{
    position: absolute;
  left: 22%;
  bottom: 35%;
  content: "";
  background-color: #fff;
  aspect-ratio: 1/cos(60deg);
  clip-path: polygon(50% 0,0 100%,100% 100%);
  width: 56%;
}
@media screen and (min-width: 768px){
  .footer-gotop.pcStop{
    top: -50px;
    bottom: auto;
    position: absolute;
  }
}
@media screen and (max-width: 767px){
  .footer-gotop{
    z-index: 80;
    border-color: #fff;
    width: 7.7vw;
    height: 7.7vw;
    right: 4.9vw;
    top: auto;
    bottom: 4.9vw;
  }
  .footer-gotop a{
    width: calc(7.7vw - 2px);
    height: calc(7.7vw - 2px);
  }
}
.footer-area.form-footer .footer-nav,
.footer-area.form-footer .footer-gotop,
.footer-area.form-footer .footer-bottom__list,
.footer-area.form-footer .footer-logo{
  display: none !important;
}
.footer-area.form-footer .footer-bottom{
  background-color: #F9F7F7;
}
.footer-area.form-footer .footer-copy{
  text-align: center;
  color: #222222;
  margin-top: 0;
}


/* ===============================================================================
form-area
=============================================================================== */
.form-area{
  padding: 50px 0;
}
.form-headline{
  font-weight: normal;
  line-height: 1.4em;
  font-size: 36px;
}
.form-bgwrap{
  background-color: #fff;
  padding: 50px;
  margin-top: 30px;
}
.form-bg{
  background-color: #F8F8F8;
}
.form-area .message{
  margin-top: 0.8em;
  color: #FF0000;
  display: block;
  font-size: 12px;
}
.form-area .message + .message{
  margin-top: 0;
}
@media screen and (max-width: 767px){
  .form-area{
    padding: 10vw 0;
  }
  .form-headline{
    font-size: 6.9vw;
    text-align: center;
  }
  .form-bgwrap{
    padding: 3vw;
    margin: 5vw -3vw 0;
  }
}
/* input
----------------------- */
.form-bgwrap input[type="text"],
.form-bgwrap input[type="email"],
.form-bgwrap input[type="number"]{
  width: 100%;
  border: solid 1px #BBBBBB;
  padding: 0.8em;
}
@media screen and (max-width: 767px){
}
/* form-step
----------------------- */
.form-step{
    display:flex;
    -ms-flex-pack:distribute;
    flex-wrap: wrap;
    align-items: center;
    color: #777777;
  margin-top: 50px;
  height: 50px;
  padding-left: 50px;
  font-size: 20px;
}
.form-step__item{
  width: calc(33.3% + 50px);
    display:flex;
    -ms-flex-pack:distribute;
    flex-wrap: wrap;
    align-items: center;
    font-weight: bold;
  background-color: #fff;
  border: solid 2px #BBBBBB;
  border-radius: 9999px;
  margin-left: -50px;
}
.form-step__item span{
  display: inline-block;
  position: relative;
  z-index: 1;
  background-color: #fff;
  border: solid 2px #BBBBBB;
  border-radius: 9999px;
  text-align: center;
  margin: -2px;
  margin-right: 1em;
  line-height: 46px;
  width: 50px;
  height: 50px;
}
.form-step__item.active{
  background-color: #B89535;
  border-color: #B89535;
  color: #fff;
  padding: 2px;
}
.form-step__item.active span{
  background-color: #B89535;
  border-color: #fff;
  color: #fff;
  line-height: 42px;
  width: 46px;
  height: 46px;
}
@media screen and (max-width: 767px){
  .form-step{
    margin: 6.6vw 8vw 0;
    height: 8vw;
    padding-left: 8vw;
    font-size: 3.7vw;
  }
  .form-step__item{
    width: calc(33.3% + 8vw);
    margin-left: -8vw;
  }
  .form-step__item span{
    line-height: calc(8vw - 4px);
    width: 8vw;
    height: 8vw;
    margin-right: 0.5em;
  }
  .form-step__item.active span{
    line-height: calc(8vw - 8px);
    width: calc(8vw - 4px);
    height: calc(8vw - 4px);
  }
}
/* form-lead
----------------------- */
.form-lead{
    text-align: left;
  line-height: 1.4em;
  margin-top: 50px;
}
@media screen and (max-width: 767px){
  .form-lead{
    margin: 6.6vw 3vw 0;
  }
}
/* form-attention
----------------------- */
.form-attention{
    text-align: left;
  line-height: 1.4em;
  font-size: 12px;
  margin-top: 2em;
}
.form-step + .form-attention{
  margin-top: 50px;
}
.form-attention li{
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 767px){
  .form-attention{
    font-size: 3.2vw;
    margin-right: 3vw;
    margin-left: 3vw;
  }
  .form-step + .form-attention{
    margin-top: 6.6vw;
  }
}
/* .form-content
----------------------- */
.form-content{
    display:flex;
    -ms-flex-pack:distribute;
    flex-wrap: wrap;
}
.contactTypeSwicthBody .form-content{
  margin-top: 20px;
}
.form-content dt{
  background-color: #F4EFE9;
  border-left:solid 1px #B89535;
  border-right:solid 1px #fff;
      display:flex;
  padding: 0.8em;
  font-weight: bold;
  width: 8.8em;
  margin-top: 20px;
}
.form-content dt.form-align__top{
    align-items: center;
}
.form-content dt sup{
  display: inline-block;
  height: 1em;
  margin-right: -0.5em;
  top: 0.2em;
}
.form-content dd{
  padding: 0.8em;
  width: calc(100% - 8.8em);
  margin-top: 20px;
  word-break:break-all;
}
.form-content dd .mt{
  margin-top: 1em;
}
.form-content dd input[type="text"],
.form-content dd input[type="email"],
.form-content dd input[type="number"]{
  width: calc(100% + 1.6em);
  margin: 1em -0.8em 0;
  word-break:break-all;
}
.form-content dd input[type="text"]:first-child,
.form-content dd input[type="email"]:first-child,
.form-content dd input[type="number"]:first-child{
  margin-top: -0.8em;
}
.form-content dd input[type="text"]:last-child,
.form-content dd input[type="email"]:last-child,
.form-content dd input[type="number"]:last-child{
  margin-bottom: -0.8em;
}
.form-content dt:first-of-type,
.form-content dt:first-of-type + dd{
  margin-top: 0;
}
@media screen and (max-width: 767px){
  .contactTypeSwicthBody .form-content{
    margin-top: 3.2vw;
  }
  .form-content dt{
    margin-top: 3.2vw;
  }
  .form-content dd{
    margin-top: 3.2vw;
  }
  .form-content dt.sp-wide,
  .form-content dd.sp-wide{
    width: 100%;
  }
  .form-content dt.sp-wide{
    border-right: none;
  }
  .form-content dd.sp-wide{
    margin-top: 0;
  padding: 0.8em 0;
  }
}
/* .form-calendar
----------------------- */
.form-calendar__hedaline{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:space-between;
    flex-wrap: wrap;
  margin-top: 10px;
}
.form-calendar__prev.color-bt{
  margin-right: auto;
}
.form-calendar__next.color-bt{
  margin-left: auto;
}
.form-calendar__prev.color-bt a,
.form-calendar__next.color-bt a,
.form-calendar__prev.color-bt button,
.form-calendar__next.color-bt button,
.form-calendar__prev.color-bt > div,
.form-calendar__next.color-bt > div{
  height: 1.8em;
  padding: 0.3em 2em;
  font-size: 16px;
}
.form-calendar__hedaline .color-bt a::after,
.form-calendar__hedaline .color-bt button::after,
.form-calendar__hedaline .color-bt > div::after{
    top: calc(50% - 0.3em);
    width: 0.6em;
    height: 0.6em;
    right: 0.5em;
}
.form-calendar__prev.color-bt a::after,
.form-calendar__prev.color-bt button::after,
.form-calendar__prev.color-bt > div::after{
  right: auto;
  left: 0.5em;
  transform: rotate(225deg);
}
@media screen and (max-width: 767px){
  .form-calendar__hedaline{
    margin-top: 3.2vw;
  }
  .form-calendar__prev.color-bt a,
  .form-calendar__next.color-bt a,
  .form-calendar__prev.color-bt button,
  .form-calendar__next.color-bt button,
  .form-calendar__prev.color-bt > div,
  .form-calendar__next.color-bt > div{
    font-size: 3.2vw;
    padding: 0.5em 2em;
    height:2.2em;
  }
}
/* .form-calendar__table
----------------------- */
.form-calendar__table{
  width: 100%;
  border-top:solid 2px #DDDDDD;
  border-left:solid 2px #DDDDDD;table-layout: fixed;
  margin-top: 10px;
}
.form-calendar__table caption{
  border-top:solid 2px #DDDDDD;
  border-left:solid 2px #DDDDDD;
  border-right:solid 2px #DDDDDD;
  padding: 0.5em 1em;
}
.form-calendar__table caption span{
  display: inline-block;
}
.form-calendar__table caption span + span::before{
  content: "/";
  display: inline-block;
  margin: 0 0.5em;
}
.form-calendar__table caption span.hide + span::before{
  display: none;
}
.form-calendar__table th,
.form-calendar__table td{
  border-bottom:solid 2px #DDDDDD;
  border-right:solid 2px #DDDDDD;
  text-align: center;
}
.form-calendar__table th{
  background-color: #F0E8E8;
  padding: 0.5em 1em;
  font-weight: normal;
  width: 3em;
}
.form-calendar__table thead .form-calendar__non{
  background-color: #fff;
}
.form-calendar__table tbody .form-calendar__non{
  background-color: #F8F8F8;
}
.form-calendar__table td input{display: none;}
.form-calendar__table td input + label{
  cursor: pointer;
  padding: 0.5em 1em;
  display: block;
  width: 100%;
}
.form-calendar__table thead .form-calendar__sunday{
  background-color: #eedde7;
}
.form-calendar__table thead .form-calendar__saturday{
  background-color: #d9e3ec;
}
.form-calendar__table td input:checked + label{
  background-color: #D4BF86;
}
.form-calendar__table td input:disabled + label{
  cursor: auto;
}
@media screen and (max-width: 767px){
  .form-calendar__table{
    margin-top: 3vw;
  }
  .form-calendar__table tbody th{
    padding: 0.5em;
    width: 4em;
  }
  .form-calendar__table td input + label{
    padding: 0.5em;
  }
}
/* .form-contact__radiowrap
----------------------- */
.form-contact__radiowrap{
  display: flex;
  justify-content: flex-start;
  gap: 0 2em;
}
.form-contact__radiowrap input[type="radio"]{
  display: none;
}
.form-contact__radiowrap label{
  line-height: 1.2em;
  cursor: pointer;
}
.form-contact__radiowrap label .radio-label{
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  line-height: 1.2em;
  margin-top: -0.2em;
}
.form-contact__radiowrap label .radio-label::before{
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 50%;
  margin: 0 0.5em 0 0;
  border: solid 1px #BBBBBB;
}
.form-contact__radiowrap input[type="radio"]:checked + label .radio-label::after{
  content: "";
  display: block;
  position: absolute;
  background-color: #222222;
  -moz-background-size: 100% auto;
  background-size: 100% auto;
  border-radius: 9999px;
  width: calc(1.2em - 6px);
  height: calc(1.2em - 6px);
  left: 3px;
  top: calc(50% - 4px);
}
/* .form-bgwrap__bottom
----------------------- */
.form-bgwrap__bottom{
  text-align: center;
  line-height: 1.5em;
  font-size: 12px;
}
.form-bgwrap__bottom a{
  color: #7f3b3d;
  text-decoration: underline;
}
.form-bgwrap__bottom a:hover{
  text-decoration: none;
}
.form-bgwrap__bottom .check-wrap{
  margin-top: 20px;
}
.check-wrap input{
  display: none;
}
.check-wrap label{
  cursor: pointer;
}
.check-wrap label span {
  position: relative;
  vertical-align: middle;
  line-height:1;
  border: solid 1px #DDDDDD;
  border-radius: 2px;
  width: 1.5em;
  height: 1.5em;
  display: inline-block;
  margin-right: 0.5em;
  margin-top: -0.2em;
}
.check-wrap input:checked + label span::before {
  content: "";
  display: block;
  position: absolute;
  border-right:solid 3px #222222;
  border-bottom:solid 3px #222222;
  width: 0.6em;
  height: 1em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 0.4em;
}
@media screen and (max-width: 767px){
  .form-bgwrap__bottom{
    font-size: 3.2vw;
  }
  .form-bgwrap__bottom .check-wrap{
    margin-top: 5.3vw;
  }
}
@media screen and (max-width: 767px){
}
/* .form-submit
----------------------- */
.form-submit{
  text-align: center;
  width: 100%;
  margin-top: 50px;
}
.form-submit__inner{
  display: inline-block;
  position: relative;
  margin: 0 25px;
  min-width: 200px;
}
.form-submit__inner .color-bt a::after,
.form-submit__inner .color-bt button::after,
.form-submit__inner .color-bt > div::after,
.form-submit__inner .color-bt input[type="submit"]::after{
    top: calc(50% - 0.3em);
    width: 0.6em;
    height: 0.6em;
    right: 0.8em;
}
.form-submit__inner__return .color-bt a::after,
.form-submit__inner__return .color-bt button::after,
.form-submit__inner__return .color-bt > div::after,
.form-submit__inner__return .color-bt input[type="submit"]::after{
  right: auto;
  left: 0.8em;
    transform: rotate(225deg);
}
.form-submit__inner__submit::after{
      content: "";
    display: block;
    border-right: solid 1px #fff;
    border-top: solid 1px #fff;
    position: absolute;
    right: 0.8em;
    pointer-events: none;
    top: calc(50% - 0.4em);
    transform: rotate(45deg);
    width: 0.8em;
    height: 0.8em;
}
.form-submit a,
.form-submit input[type="submit"],
.form-submit button{
  width: 100%;
  height: 3em;
  font-size: 20px;
}
@media screen and (max-width: 767px){
  .form-submit{
    margin-top: 6.6vw;
  }
  .form-submit__inner{
    min-width: 40vw;
    margin: 0 3vw;
  }
  .form-submit a,
  .form-submit input[type="submit"],
  .form-submit button{
    font-size: 3.7vw;
  }
}
/* .form-message
----------------------- */
.form-message{
  text-align: center;
  line-height: 1.6em;
  margin-top: 50px;
  font-size: 18px;
}
@media screen and (max-width: 767px){
  .form-message{
    margin-top: 6.6vw;
    font-size: 3.2vw;
  }
}
/* ========================================================
message-area
======================================================== */
.message-area .content-inner{
  text-align: center;
  padding: 100px 0 160px;
}
.message-area__headline{
  line-height: 1.6em;
  font-weight: normal;
  border-bottom: solid 1px #DDCEA4;
  padding-bottom: 50px;
  font-size: 36px;
}
.message-area__body{
  margin-top: 50px;
}
.message-area__body .color-bt{
  margin: 100px auto 0;
  width: 250px;
}
@media screen and (max-width: 767px){
  .message-area .content-inner{
    padding: 15vw 0 80vw;
  }
  .message-area__headline{
    padding-bottom: 15vw;
    font-size: 8vw;
  }
  .message-area__body{
    margin-top: 15vw;
  }
  .message-area__body .color-bt{
    margin-top: 30vw;
    width: 100%;
  }
}