@charset "utf-8";

/* common */
#wrapper { overflow:hidden;}
body { font-family:'Noto Sans JP', sans-serif; line-height:1.625; color:#222;}
article { font-weight:400; }

.sec-box { padding-block:min(8%,75px) min(10%,100px); position:relative; z-index:1; }
.sec-box.deco::before, .sec-box.deco::after {
  content:""; display:block; position:absolute; z-index:-1;
  width:min(22.2vw,244px); height:min(23.3vw,256px);
  background:url(../img/tachibana/deco2.png) no-repeat center / contain; }
.sec-box.deco::before { top:0; right:0; }
.sec-box.deco::after { bottom:0; left:0; transform:rotate(180deg); }

.en {  }
.txt { margin-block:0; }

.btn-def {
  display:inline-block; position:relative; cursor:pointer;
  padding:0.5em 1.5em; font-weight:500; text-align:center;
  background:#fff; border:solid 2px #764487; transition:all .5s; }
.btn-def:hover { color:#222; background:#e7e5f2 !important; }

/* ttl */
.ttl-def { margin-bottom:1em; font-size:clamp(22px,4vw,34px); font-weight:700; line-height:1.5; text-align:center; }
.ttl-def em { color:#764487; }
.ttl-def .en { font-size:0.65em; color:#764487; }
.ttl-def .en { display:inline-block; padding-inline:1em; position:relative; }

.ttl-def.movie { background:none; }
.ttl-def.movie .main-ttl { display:inline-block; padding:.1em 4em; font-size:.75em; color:#fff; background-color:#764487; border-radius:1em; }

/* mv ---------------------- */
#mv .pc { width:100%; max-width:inherit; }
#mv .sp { display:none; }
@media (orientation: portrait) and (max-width: 810px){
  #mv .pc { display:none; }
  #mv .sp { display:block; }
}

/* message ---------------------- */
#message { padding-top:clamp(2em,5vw,50px); }
#message .ttl-def em { font-size:1.25em; }
.message-box { padding:6.2% 5% 7%; border:10px solid #e7e5f2; position:relative; }
.message-box p + p { margin-top:1.4em; }
.message-box::before, .message-box::after {
  content:""; display:block; position:absolute;
  width:clamp(110px,25.4vw,244px); height:clamp(98px,22.6vw,217px);
  background:url(../img/tachibana/deco1.png) no-repeat center / contain; }
.message-box::before { top:max(-6.6vw,-50px); left:-5.6%; }
.message-box::after { bottom:max(-6.6vw,-50px); right:-5.6%; }


/* points ---------------------- */
#points { background:#e7e5f2; }
#points .ttl-def .big { font-size:1.5em; }

.strong-list { display:grid; grid-template-columns:repeat(2, 1fr); grid-row-gap:min(6vw,70px); }
.strong-list > li { text-align:center; padding-top:10%; padding-inline:6%; position:relative; }
.strong-list > li > div { height:100%; padding:6.8%; background-color:#fff; }
.strong-ttl { position:absolute; top:0; left:1.5%; max-width:25%; }
.strong-list .txt { text-align:left; padding:1.3em 0 0; }


/* map */
#map { padding-top:min(12%,120px); background:url(../img/tachibana/bg.png) no-repeat center / 100% auto; }
#map::after { display: none; }
#map .pic { margin-top:3%; }

#higashino { margin-bottom:6.5%; padding:5%; background-color:rgba(255,255,255,.8); border:10px solid #e7e5f2; }
#higashino .bukken-lead { margin-block:4.5%; }


.bnr_topics_member { padding-bottom: min(10%,100px); }
/* .bnr_topics_member::after { content: ""; display: block; position: absolute; bottom: 0; left: 0; transform: rotate(180deg); z-index: -1;
  width: min(22.2vw, 244px); height: min(23.3vw, 256px); background: url(../img/tachibana/deco2.png) no-repeat center / contain; } */

/* 物件情報 ---------------------- */
#bukken { padding-bottom:min(12%,120px); background-color:#e7e5f2; }
#bukken .ttl-def { margin-bottom:4%; }

.pickup::before {
  content:url(../img/tachibana/pickup.svg);
  position:absolute; top:-25px; left:50%; transform:translateX(-50%); }
.bukken-box .apeal_point { margin-block:5%; text-align:center; }

/* 物件共通の色替えなど */
.bukken-data { position:relative; z-index:1; }
.bukken-data::after {
  content:""; display:block; z-index:-1;
  position:absolute; top:0; bottom:0;
  left:calc(50% - 50vw); right:calc(50% - 50vw);
  background:url(../img/tachibana/bg.png) no-repeat center / 100% auto;
}

.bukken-data + .bukken-data { margin-top:7%; }
.bukken-name { margin-bottom:1em; font-size:clamp(24px,4.2vw,32px); font-weight:700; line-height:1; }
.bukken-lead { margin-top:1.5em; }

.bukken-slider .slick-prev::before,
.bukken-slider .slick-next::before{
  background-image:url(../img/tachibana/ico-arrow.svg); }

.bukken-info .ttl { background:#764487; }
.bukken-info .d-list > * { border-bottom-color:#666; }
.bukken-info .d-list dt { background:#e7e5f2; }

.bukken-fee-box { background:#e7e5f2; }
.bukken-fee-toggle dt { color:#764487; }
.bukken-fee-toggle dt > span::before { background:#764487; }

.bukken-link { max-width:680px; grid-column-gap:20px; }
.bukken-link .floor .icon::before { background-image:url(../img/tachibana/ico-hotel.svg); }
.bukken-link .calc .btn-def { background:#fff; }
.bukken-link .calc .icon::before { background-image:url(../img/tachibana/ico-calc.svg); }

.bukken-dlink > a { background:#764487; }

.bukken-movie { margin-top:2%; }

/* おすすめ */
#sp-etc { background-color: #e7e5f2; }

/* キャンペーンバナー */
#mv { position: relative; }
.bnr-cam { position: absolute; right: 3%; bottom: 4%; }

/* 山科東野オープン記念キャンペーン */
#cam { color: #222748; }
#cam p { margin: 0; }
#cam .cam-box { padding-bottom: 2em; border: 10px solid #efeb45; }
#cam .cam-ttl { padding: .5em 1em; font-size: 2em; text-align: center; font-weight: 800; background: #efeb45; line-height: 1.4; }
#cam .cam-con { justify-content: center; align-items: flex-end; column-gap: .5em; margin-block: 2em 1em; }
#cam .tokuten span { display: inline-flex; justify-content: center; align-items: center; width: 90px; height: 90px; font-weight: 700; font-size: 1.7em; color: #fff; background-color: #222748; border-radius: 50%; }
#cam .sub { font-size: 1.1em; border-bottom: 1px solid #565d8d; }

#cam .cam-txt { align-items: end; column-gap: .1em; font-size: 2em; line-height: 1.1; }
#cam .txt-l,
#cam .txt-r { font-weight: 700; }
#cam .txt-l { font-size: 1.4em; }
#cam .txt-l .sm { font-size: .7em; }
#cam .txt-l .sm.period { margin-left: .15em; font-size: .8em; }
#cam .txt-l .en { font-size: .9em; margin-right: -.15em; }
#cam .txt-l .discount { letter-spacing: 0; }
#cam .txt-r { color: #e73737; font-size: 2.5em; }
#cam .cam-note { width: fit-content; margin-inline: auto; padding-left: 2em; }

/* ================================================================
  レスポンシブ
=================================================================== */

/* 600以上(PC・タブレット) */
@media screen and (min-width:600px) {
  #pan { text-align:right; }
  .message-box { text-align:center; }
}

/* 1024px以上(PC) */
@media screen and (min-width:1024px) {
  .higashino { padding-inline:95px; }
}


/* ================================================================
  タブレット
=================================================================== */
@media screen and (min-width:600px) and (max-width:960px){
  .blink-list > li { width:48%; }
  .blink-list > li:nth-child(n+3) { margin-top:1.5em; }
}
/* 959以下 (タブレット以下) */
@media screen and (max-width:959px) {
}

/* ================================================================
  スマホ
=================================================================== */
@media screen and (max-width:599px){
  /* common */

  /* message */
  .message-box, .higashino { border-width:5px; }

  /* point */
  .strong-list { grid-template-columns:repeat(1,1fr); gap:2em; }
  .strong-list .txt { padding-top:1.6em;}

  /* キャンペーンバナー */
  #cam { padding-block: 25px 35px; }
  .bnr-cam { width: 33%; }

  /* 山科東野オープン記念キャンペーン */
  #cam .cam-box { padding-bottom: 2em; border: 5px solid #efeb45; }
  #cam .cam-ttl { padding: .5em; font-size: 1.4em; }
  #cam .cam-con { align-items: center; column-gap: .2em; margin-block: 2em 1em; }
  #cam .tokuten span { width: 55px; height: 55px; font-size: 1.1em; }
  #cam .sub { font-size: 1em; font-weight: 500; }
  #cam .txt-l { font-size: 1em; }
  #cam .txt-l .sm { font-size: .7em; }
  #cam .txt-l .sm.period { font-size: .82em; }
  #cam .txt-l .en { font-size: .9em; }
  #cam .txt-r { font-size: 1.2em; }
  #cam .cam-note { padding-left: 0; font-size: .9em; }



}
