body{width:100%}
h4{margin:0}
.wrapCon4Box a{text-decoration:none;}
.ie21-header{box-shadow:0 3px 5px rgba(0,0,0,.16)}
.ie21-header__sub{display:none}
.c-fixed-side-btn{box-shadow:0 3px 6px rgba(0,0,0,.16);}
.c-fixed-side-btn div{
  color:#fff;
  font-weight:600;
  text-decoration:none;
}
main img{
  width:100%;
  vertical-align:middle;
  min-height:1px;
}
img,iframe{opacity:1;transition:opacity 0.2s}
img[data-echo],iframe[data-echo]{opacity:0}

.section--common{
  border-top:1px solid #ccc;
  padding-bottom:100px;
  padding-top:100px;
  margin-bottom:0!important;
}
.section--common.is-not-border{border:none;}
.boxed-btn{
  padding-left:20px;
  padding-right:20px;
  text-decoration:none;
}
.boxed-btn::after{transform:translateX(5px)}
.boxed-btn>span{margin-right:0;}

/* KV */
.p-kv{
  width:760px;
  height:189px;
  margin:109px auto 0;
}
.p-description{
  width:760px;
  margin:84px auto 0;
  display:flex;
  justify-content:right;
}
.p-description-inner{
  width:565px;
}
.p-description h2{
  margin:0;
  font-weight:600;
  font-size:18px;
}
.p-description-inner__text{
  margin-top:20px;
  font-size:16px;
  line-height:calc(30/16);
}

.p-house-types{
  margin-top:80px;
}
.p-house-types-container{
  display:flex;
  margin:0 auto;
  width:980px;
}
.p-house-types-container-inner{
  width:200px;
}
.p-house-types-container-inner__caption{
  margin-top:20px;
  font-size:13px;
  line-height:calc(23/13);
}

.p-video-container{
  width:760px;
  margin:100px auto 0;
  font-size:13px;
}
.p-video-container iframe{
  width:100%;
  height:427.5px;
}

.p-sales{
  margin-top:100px;
  border-top:1px solid #ccc;
  padding-top:50px;
}
.p-sales-title{
  width:200px;
  margin:0 auto;
  padding-bottom:25px;
}

/* 地域メニュー */
.p-sales-menu{
  position:sticky;
  width:100%;
  height:60px;
  background:#3C3C43;
  overflow-x:scroll;
  top:80px;
  z-index:5;
}
.p-sales-menu::-webkit-scrollbar{display:none;}
.p-sales-menu-inner{
  width:100%;
  height:100%;
  font-size:14px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:20px;
}
.p-sales-menu-inner__link{
  color:#6D6D72;
  text-decoration:none;
  font-weight:600;
}
.p-sales-menu-inner__link.is-selected{color:#fff;}
.p-sales-menu-inner__link:hover{color:#fff;}

/* 物件 */
.sales-item:first-child{
  border-top:none;
  padding-top:100px;
  margin-top:0;
}
.sales-item-con{
  padding-bottom:50px;
  border-bottom:1px solid #ccc;
}
.sales-item-con.is-empty{
  padding:0;
  border:none;
}
.sales-items-empty{
  border-bottom:1px solid #ccc;
}
.sales-items-empty__inner{
  width:450px;
  margin:100px auto;
  font-size:18px;
  font-weight:600;
}
.sales-item{
  padding-top:80px;
  margin-top:50px;
  border-top:1px solid #ccc;
}

.sales-items-header{
  width:760px;
  margin:0 auto;
}
.sales-items-header__area{
  font-size:13px;
  line-height:100%;
}
.sales-items-header__name{
  font-size:24px;
  font-weight:600;
  margin-top:20px;
  line-height:100%;
}
.sales-items-header__shop{
  font-size:13px;
  color:#6D6D72;
  margin-top:20px;
  line-height:100%;
}
.sales-items-header__link{
  text-decoration:none;
  width:fit-content;
  display:block;
  transition:opacity .3s ease;
}
.sales-items-header__link:hover{
  opacity:.8;
}
.sales-items-header__link-inner{
  margin-top:20px;
  background-color:#7F0019;
  color:#fff;
  padding:10px;
  padding-top:11px;
  border-radius:5px;
  width:133px;
  height:34px;
  line-height:100%;
  font-size:11px;
  font-weight:700;
  position:relative;
}
.sales-items-header__link-inner::after{
  content:'';
  position:absolute;
  width:10px;
  height:10px;
  border-top:1px solid #fff;
  border-right:1px solid #fff;
  transform:rotate(45deg);
  top:calc(50% - 5px);
}

/* 解説 */
.sales-items-desc{
  display:flex;
  justify-content:space-between;
  width:760px;
  margin:50px auto 0; 
}
.sales-items-desc__text{
  width:370px;
  overflow-wrap:break-word;
}
.sales-items-desc__img{width:350px}
.sales-items-desc__img img{height:auto;}
/* アコーディオン */
.sales-items-details{
  position:relative;
  width:100%;
  margin:50px auto 0;
}
.sales-items-details summary{
  width:760px;
  margin:0 auto;
  list-style:none;
  cursor:pointer;
  font-size:14px;
  font-weight:600;
}
.sales-items-details summary div{
  width:370px;
  position:relative;
}
.sales-items-details summary::-webkit-details-marker{display:none}
.sales-items-details summary div::after{
  content:'';
  position:absolute;
  right:0;
  top:9px;
  width:10px;
  height:10px;
  border-top:2px solid #000;
  border-right:2px solid #000;
  transform:rotate(45deg);
  transition:all 0.1s ease;
}
.sales-items-details[open] summary div::after{
  top:7px;
  transform:rotate(135deg);
}

/* 物件データコンテナ */
.sales-items-container{
  background:#f7f7f7;
  width:100%;
  padding-top:80px;
  padding-bottom:60px;
  margin-top:50px;
}
.sales-items-data{
  width:760px;
  margin:0 auto;
}
.sales-items-data.is-data{
  margin-top:100px;
}
/* */
.sales-items-data-title{
  font-size:18px;
  font-weight:600;
}
/* 物件図面 */
.sales-items-data__figure{
  width:100%;
  padding-top:30px;
}
.sales-items-data__figure figcaption{
  margin-top:10px;
  font-size:11px;
  line-height:calc(20/11);
}
/* 価格表 */
.prices-list{
  margin:51px auto 0;
  width:565px;
}
.prices-list-header{
  display:flex;
  justify-content: space-between;
  color:#808080;
  font-size:9px;

  padding-bottom:10px;
  border-bottom:1px solid #808080;
}
.price-list-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:11px;
  border-bottom:1px solid #ccc;
}
.price-list-item.is-main{
  margin-top:10px;
  margin-bottom:10px;
  padding-bottom:10px;
}
.price-list-item:last-child{border-bottom:unset;}
/* 価格表メイン部分終端 */ .price-list-item.is-main-end{border-bottom:1px solid #3C3C43;}
.prices-list-item__type-inner{
  display:flex;
  align-items:center;
  font-weight:600;
}

/* タイプごと */
.type-boxs{
  display:flex;
  flex-wrap:wrap;
  row-gap:5px;
}
.type-box{
  width:32px;
  height:16px;
  font-size:8px;
  display:flex;
  justify-content:center;
  align-items:center;
  color:#fff;
  background:#808080;
  margin-right:10px;
  white-space:nowrap;
}
.price-list-item.is-main .type-name{
  font-size:14px;
}
.type-box.is-ki{background:#7F0019} /*木の家*/
.type-box.is-mado{background:#11555F;} /*窓の家*/
.price-list-item{
  margin-top:8px;
  margin-bottom:8px;
  padding-bottom:8px;
}
.prices-list-item__type{
  width:80px;
  text-align:left;
}
.prices-list-item__size{
  width:130px;
  text-align:center;
}
.prices-list-item__price{
  width:100px;
  text-align:right;
}

  /* 個別建物・土地カード */
  .sales-items-data-cardbox{
    width:760px;
  }
  .sales-items-data-card{
    width:100%;
    background:#fff;
    margin-top:20px;
    padding-bottom:30px;
    border-radius:5px;
    font-size:11px;
    line-height:calc(20/11);
    filter:drop-shadow(0 0 5px rgba(0,0,0,.16));
  }
  .sales-items-data-card:first-child{margin-top:30px;}
  .sales-items-data-card .type-box{
    font-size:11px;
    font-weight:700;
    width:fit-content;
    padding:0 4px;
    height:17px;
  }

  .card-data-container{
    display:flex;
    margin-left:34px;
    padding-top:30px;
  }
  .card-header{
    width:145px;
  }
  .card-title{
    font-weight:700;
    font-size:24px; 
  }

  .card-price{
    width:192px;
    margin-right:20px;
  }
  .card-value-name{
    color:#808080;
  }
.card-price-type{
  margin-top:15px;
}
.card-price-value strong{
  font-size:20px;
  font-weight:500;
  margin-right:6px;
}
.card-property-text{
  width:192px;
  margin-top:15px;
}
.card-photo{
  width:150px;
}

.card-inner-flex-container{display:flex;}
.card-data-container.is-noimage .card-title,.card-data-container.is-setimage .card-title{font-size:16px}

.card-data-container.is-setimage .card-photo{margin-left:0px;}

  /* 写真ギャラリー */
  .card-gallery-container{
    width:100%;
    overflow:scroll;
    -ms-overflow-style:none;
    scrollbar-width:none;
    margin-top:40px;
  }
  .card-gallery-container .my-gallery{
    gap:20px;
    display:flex;
    width:max-content;
    padding:0 30px;
  }
  .card-gallery-container img{height:250px;}
  .card-gallery-container figure{min-width:250px;}
  .card-gallery-container a{text-decoration:none;}
  .card-gallery-container::-webkit-scrollbar{display:none}





  .sales-items-details-close-btn{
    width:50px;
    margin:60px auto 0;
    cursor:pointer;
    text-align:center;
    font-size:13px;
    font-weight:600;
    transition:opacity .1s ease;
  }
  .sales-items-details-close-btn:hover{
    opacity:.3;
  }

  /* アクセス */
  .access-title-container{
    width:760px;
    margin:80px auto 0;
  }
  .access-map-container{
    width:760px;
    height:570px;
    margin:30px auto 0;
  }
  .access-map-container iframe{
    width:100%;
    height:100%;
  }
  .access-address-container{
    width:760px;
    margin:20px auto 0;
  }

/* お問い合わせ */
  .contact-container{
    width:760px;
    margin:80px auto 0;
  }
  .contact-link-btn-container{
    text-decoration:none;
    display:block;
    width:fit-content;
    margin:0 auto;
  }
  .contact-link-container{
    width:315px;
    margin:20px auto 0;
  }

  .c-contact-btn{
    background:#7F0019;
    color:#fff;
    font-weight:600;
    line-height:calc(20/14);
    width:315px;
    height:60px;
    border-radius:5px;
    display:flex;
    margin:40px auto 0;
    justify-content:center;
    align-items:center;
    text-align:center;
  }

  /* 分譲詳細 */
  .property-data-title-container{
    width:760px;
    margin:80px auto 0;
  }
  .property-data-lists{
    width:585px;
    margin:30px auto 0;
    font-size:11px;
  }
  .property-data-lists .data-lists{
    display:flex;
    gap:51px;
    padding-bottom:10px;
    border-bottom:1px solid #ccc;
    margin-bottom:10px;
  }
  .property-data-lists .data-lists__type{
    width:90px;
    white-space:nowrap;
    color:#808080;
  }
  .property-data-lists .data-register-date{
    text-align:right;
    font-size:9px;
  }

  .p-mail-magazine{
    width:428px;
    margin:90px auto;
  }
  .p-mail-magazine__img{
    width:48.71px;
    margin:0 auto;
  }
  .p-mail-magazine__desc{
    white-space:nowrap;
    margin-top:30px;
  }
  .p-mail-magazine__btn{
    margin:30px auto 0;
    width:220px;
  }
  .p-mail-magazine__btn a{text-decoration:none}
  .c-link-btn{
    position: relative;
    border:1px solid #ccc;
    padding:20px;
    height:54px;
    line-height:100%;
    padding-right:30px;
    font-weight:600;
    font-size:14px;
  }
  .c-link-btn:after{
    content:'';
    position:absolute;
    width:10px;
    height:10px;
    top:calc(50% - 3px);
    border-top:1px solid black;
    border-right:1px solid black;
    transform:rotate(45deg);
  }

/* PC */
@media only screen and (min-width:769px) {
.c-fixed-side-btn{
  position:fixed;
  right:0;
  top:160px;
  height:max-content;
  writing-mode: vertical-rl;
  line-height:100%;
  padding:36px 19.5px;
  text-decoration:none;
  background:#7F0019;
  border-radius:8px 0 0 8px;
  z-index:999;
  transition:all 0.3s ease;
}
.c-fixed-side-btn.is-pc-hide{
  right:-60px;
  opacity:0;
}
.c-fixed-side-btn span{
  font-size:1.6rem;
}
.c-fixed-side-btn-arrow{
  width:20px;
  transform: translateX(2px);
}
a:hover .c-link-arrow-right{
  opacity:0.3;
}
}

/***    ***
 *** SP ***
 ***    ***/
@media only screen and (max-width:768px) {
  html,body{
    overflow-x:clip;
  }
  .p-kv{
    width:286px;
    height:286px;
    margin:31px auto 0;
  }
  .p-description{
    width:325px;
    margin:47px auto 0;
    display:flex;
    justify-content:right;
  }
  .p-description-inner{
    width:100%;
  }
  .p-description-inner__title{
    font-size:16px;
    line-height:calc(28/16);
  }
  .p-description-inner__text{
    font-size:14px;
    margin-top:30px;
    line-height:calc(26/14);
  }
  
  .p-house-types{
    overflow-x:scroll;
    margin-top:100px;
  }
  .p-house-types::-webkit-scrollbar{
    display:none;
  }
  .p-house-types-container{
    display:flex;
    width:860px;
    margin-left:50px;
    margin-right:80px;
  }
  .p-house-types-container-inner__caption{
    margin-top:20px;
    font-size:13px;
    line-height:calc(23/13);
  }
  
  .p-video-container{
    width:315px;
    margin:80px auto 0;
    font-size:13px;
  }
  .p-video-container iframe{
    width:100%;
    height:177px;
  }

  .p-sales-title{
    padding-bottom:50px;
  }
  .p-sales-title h3{margin:0}
  .p-sales-menu{
    position:sticky;
    width:100%;
    height:60px;
    background:#3C3C43;
    overflow-x:scroll;
    top:60px;
    z-index:5;
  }
  .p-sales-menu-inner{
    width:max-content;
    margin:0 20px;
    height:100%;
    font-size:14px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    white-space:nowrap;
  }  
  .sales-item{
    padding-top:50px;
  }
  .sales-item:first-child{
    padding-top:30px;
  }

  .sales-items-empty__inner{
    width:315px;
    margin:50px auto;
    font-size:16px;
    font-weight:600;
  }
  .sales-items-header{
    width:315px;
    margin:0 auto;
  }
  .sales-items-header__name{margin-top:20px;}
  .sales-items-header__name h4{font-size:24px;}
  .sales-items-header__shop{
    font-size:11px;
    margin-top:10px;
  }
  .sales-items-desc{
    width:100%;
    flex-direction:column;
    margin-top:30px;
  }
  .sales-items-desc__text{
    width:315px;
    margin:0 auto;
  }
  .sales-items-desc__img{
    width:100%;
    margin:40px auto 0;
    height:281px;
    object-fit:contain;
  }
  .sales-items-desc__img img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  /* アコーディオン */
  .sales-items-details,.sales-items-details summary{
    width:100%;
  }
  .sales-items-details summary div{
    width:315px;
    margin:0 auto;
  }
  .sales-items-details summary div::after{
    left:unset;
    right:0;
  }
  /* 物件データ */
  .sales-items-data{width:315px;}
  .sales-items-data.is-data{margin-top:50px;}
  .sales-items-data-title{
    font-size:16px;
  }
  .prices-list{
    width:100%;
  }
  .prices-list-header{
    padding-bottom:5px;
  }

  .price-list-item .prices-list-item__size{
    font-size:11px;
  }
  .price-list-item.is-main .prices-list-item__price{
    font-size:16px;
  }

  /* 個別建物・土地カード */
  .sales-items-data-cardbox{
    width:315px;
  }
  .sales-items-data-card{
    width:100%;
    background:#fff;
    margin-top:20px;
    border-radius:5px;
    font-size:11px;
    line-height:calc(20/11);
    filter:drop-shadow(0 0 5px rgba(0,0,0,.16));
    padding:34px 30.5px 46px;
  }
  .sales-items-data-card .type-box{
    font-size:11px;
    font-weight:700;
    width:max-content;
    height:17px;
  }
  .card-header{
    width:100%;
  }
  .card-title{
    font-weight:700;
    font-size:24px; 
  }
  .card-price{margin-top:30px;}
  .card-value-name{
    font-size:10px;
    margin-top:0
  }
  .card-price-type{margin-top:15px;}
  .card-price-value{font-size:14px;}
  .card-property-data{margin-top:30px;}
  .card-data-container{
    position: relative;
    flex-direction:column;
    padding-top:0;
    margin-left:0;
  }
  .card-gallery-container{
    width:315px;
    margin-top:30px;
    margin-left:-30px;
    padding-left:30px;
  }
  .card-data-container.is-noimage .card-property-text{
    width:152px;
  }
  .card-gallery-container .my-gallery{padding-left:0;}
  .card-gallery-container a{text-decoration:none;}
  .card-gallery-container figure{
    min-width:250px;
    width:250px;
  }
  
  .card-gallery-container img{height:auto;}
  .sales-items-data-card:first-child{margin-top:30px;}

.card-inner-flex-container{
  display:flex;
  flex-direction: column;
  width:85px;
  justify-content:space-between;
}
/* 写真なし */
.card-data-container.is-noimage{
  display:flex;
  flex-direction:row;
  justify-content:space-between;
}
.card-data-container.is-noimage .card-property-data{
  margin-top:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  width:152px;
  font-size:11px;
}
/* 画像設定あり */
.card-data-container.is-setimage .card-price,
.card-data-container.is-setimage .card-property-data{margin-top:30px}
.card-photo{
  position:absolute;
  right:0;
  top:0;
  margin-left:0;
}


/* アクセス */
.access-title-container{
  width:315px;
  margin-top:50px;
}
.access-map-container{
  width:100%;
  height:281px;
}
.access-address-container{
  width:315px;
  margin-top:50px;
}
/* お問い合わせ */
.contact-container{
  width:315px;
  margin-top:50px;
}
/* 分譲詳細 */
.property-data-title-container{
  margin-top:50px;
}
.property-data-title-container,.property-data-lists{
  width:315px;
}
.property-data-lists .data-lists{
  gap:11px;
}
.property-data-lists .data-lists__type{
  width:90px;
  font-size:9px;
}
.property-data-lists .data-lists__data{
  width:calc(100% - 101px);
}


.p-mail-magazine{
  width:222px;
  margin:50px auto;
}
.p-mail-magazine__desc{
  text-align:center;
}

  /* CTA */
  .c-fixed-side-btn{
    position:fixed;
    background:#7F0019;
    width:334.14px;
    height:54.14px;
    left:50%;
    transform:translateX(-50%);
    z-index:99;
    border-radius:6px;
    transition:bottom 0.3s ease;
    bottom:-70px;
  }
  .c-fixed-side-btn.is-show{
    bottom:30px;
  }

  .c-fixed-side-btn div{
    font-size:1.4rem;
    text-align:center;
    padding-top:12px;
  }
  .c-fixed-side-btn-arrow{
    width:17px;
    transform:translate(-5px,-1px) rotate(-90deg);
  }
}

/* PC */
@media only screen and (min-width:768px){
  .u-show-tb{display:none}
  .u-show-pc,.u-show-ge-tb{display:block}
  .u-show-sp{display:none}
}
/* TB */
@media only screen and (min-width:512px) and (max-width:767px){
  .u-show-tb,.u-show-ge-tb{display:block}
  .u-show-pc{display:none}
  .u-show-sp{display:none}
}
/* SP */
@media only screen and (max-width:511px){
  .u-show-tb, .u-show-ge-tb{display:none}
  .u-show-pc{display:none}
  .u-show-sp{display:block}
}
