@charset "utf-8";

.balcony_ttl{
    position: relative;
    padding-top: 32px;
}
.balcony_ttl ul{
    position: relative;
}
.balcony_ttl li{
    background: #fff;
    padding: 0 16px 16px;
    width: fit-content;
    font-size: 4svw;
    line-height: 1.5;
    font-weight: 600;
}
.balcony_ttl li span{
    font-size: 130%;
}
.balcony_ttl li:nth-of-type(2){
    margin-left: auto;
}


.balcony_ttl .ttl_mv{
    width: 90%;
    margin-left: auto;
    margin-top: -70px;
}
.balcony_ttl .obi{
    background: #C8BB9B;
    padding: 100px 0 24px;
    margin-top: -72px;
}
.balcony_ttl .obi dl{
    color: #000;
    text-align: center; 
}
.balcony_ttl .obi dl dt{
    font-size: 4.0rem;
    font-weight: 600;
    line-height: 1.6;
}
.balcony_ttl .obi dl dd{
    font-size: 2rem;
    font-weight: 500;
    padding-top: 8px;
}

.balcony_contents{
    padding: 6% 0;
}
.movie{
    position: relative;
}
.movie p{
    max-width: 1000px;
    margin: auto;
}
.movie::before{
    content: '';
    background-color: #C8BB9B;
    position: absolute;
    width: 50%;
    height: 20svw;
    left: 0;
    bottom: 8px;
    z-index: -1;
}

.con_wrap{
    position: relative;
    margin-top: 5%;
}

.con_wrap .con_ttl{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0 5%;
    position: relative;
}
.con_wrap .con_ttl::before{
    content: '';
    background-color: #C8BB9B;
    position: absolute;
    width: 80%;
    height: 20svw;
    left: 0;
    bottom: 14%;
    z-index: -1;
}
.con_wrap .con_ttl .con_txt_wrap{
 flex-basis: 25%;
}
.con_wrap .con_ttl .con_img_wrap{
    flex-basis: 60%;
}
.con_wrap .con_ttl .con_txt_wrap .en{
    font-family: "EB Garamond", serif;
    font-size: 6.4rem;
    line-height: 1.0;
}
.con_wrap.con1 .con_ttl .con_txt_wrap .en{
    color: #2CA6E0;
}
.con_wrap.con2 .con_ttl .con_txt_wrap .en{
    color: #40210F;
}
.con_wrap .con_ttl .con_txt_wrap dt{
    color: #231815;
    font-size: 2.4rem;
    line-height: 1.3;
    padding-top: 16px;
    font-weight: 600;
}
.con_wrap .con_ttl .con_txt_wrap dd{
    color: #231815;
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: justify;
    padding-top: 16px;
    max-width: 318px;
    font-weight: 500;
}
.slider_area{
    margin: 4% auto 0;
    max-width: 90%;
}
.slick-list {
  margin: 0 -15px;
}
.slick-slide {
  margin: 0 15px;
}
.figure_wrap{
    margin-top: 5%;
}
.figure_ttl{
    text-align: center;
    font-size: 4.2rem;
    line-height: 1.3;
    font-weight: 600;
    color: #231815;
}
.figure_ttl small{
    font-size: 60%;
    display: block;
}
.figure_img{
    max-width: 90%;
    margin: 2% auto 0;
}
.figure_txt{
    max-width: 620px;
    margin: -6% auto 0;
}
.balcony_topics{
    background: #F0EADC;
    padding: 4%;
    max-width: 960px;
    margin: 3% auto 0;
    position: relative;
}
.balcony_topics::after{
    content: '';
    border: 1px solid #40210F;
    position: absolute;
    top: 16px;
    right: -16px;
    width: 100%;
    height: 100%;
}
.balcony_topics dl{
    position: relative;
}
.balcony_topics dt{
    font-size: 4.8rem;
    line-height: 1.3;
    font-weight: 600;
}
.balcony_topics dt span{font-size: 130%;}
.balcony_topics dd{
    font-size: 2.4rem;
    line-height: 1.3;
    padding-top: 8px;
}


@media screen and (max-width: 768px) {
   .balcony_ttl{
    position: relative;
    padding-top: 72px;
}
.balcony_ttl ul{
    position: relative;
}
.balcony_ttl li{
    padding: 0 16px 4px;
}


.balcony_ttl .ttl_mv{
    margin-top: -24px;
}
.balcony_ttl .obi{
    background: #C8BB9B;
    padding: 100px 0 24px;
    margin-top: -88px;
}
.balcony_ttl .obi dl{
    color: #000;
    text-align: center; 
}
.balcony_ttl .obi dl dt{
    font-size: 2.0rem;
}
.balcony_ttl .obi dl dd{
    font-size: 1.3rem;
}

.balcony_contents{
    padding: 12% 0;
}
.movie::before{
    height: 30svw;
}

.con_wrap{
    position: relative;
    margin-top: 8%;
}

.con_wrap .con_ttl{
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    align-items: center;
    gap: 0 5%;
    position: relative;
}
.con_wrap .con_ttl::before{
    content: '';
    background-color: #C8BB9B;
    position: absolute;
    width: 95%;
    height: 55svw;
    left: 0;
    bottom: -5%;
    z-index: -1;
}
.con_wrap .con_ttl .con_txt_wrap{
 flex-basis: 25%;
}
.con_wrap .con_ttl .con_img_wrap{
    flex-basis: 60%;
}
.con_wrap .con_ttl .con_txt_wrap .en{
    font-family: "EB Garamond", serif;
    font-size: 4.8rem;
    line-height: 1.0;
}
.con_wrap.con1 .con_ttl .con_txt_wrap .en{
    color: #2CA6E0;
}
.con_wrap.con2 .con_ttl .con_txt_wrap .en{
    color: #40210F;
}
.con_wrap .con_ttl .con_txt_wrap dt{
    color: #231815;
    font-size: 2.0rem;
    line-height: 1.3;
    padding-top: 16px;
    font-weight: 600;
}
.con_wrap .con_ttl .con_txt_wrap dd{
    color: #231815;
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: justify;
    padding-top: 16px;
    max-width: 318px;
    font-weight: 500;
}
.slider_area{
    margin: 16% auto 0;
    max-width: 100%;
}
.slick-list {
  margin: 0 -15px;
}
.slick-slide {
  margin: 0 15px;
}
.figure_wrap{
    margin-top: 16%;
}
.figure_ttl{
    text-align: center;
    font-size: 3.2rem;
    line-height: 1.3;
    font-weight: 600;
    color: #231815;
}
.figure_ttl small{
    font-size: 60%;
    display: block;
}
.figure_img{
    max-width: 100%;
    margin: 10% auto 0;
}
.figure_txt{
    max-width: 100%;
    margin: -2% auto 0;
    font-size: 1.3rem;
}
.balcony_topics{
    background: #F0EADC;
    padding: 6% 1%;
    max-width: 960px;
    margin: 8% 20px 0;
    position: relative;
}
.balcony_topics::after{
    content: '';
    border: 1px solid #40210F;
    position: absolute;
    top: 8px;
    right: -8px;
    width: 100%;
    height: 100%;
}
.balcony_topics dl{
    position: relative;
}
.balcony_topics dt{
    font-size: 2.4rem;
    line-height: 1.3;
    font-weight: 600;
}
.balcony_topics dt span{font-size: 130%;}
.balcony_topics dd{
    font-size: 1.3rem;
    line-height: 1.3;
    padding-top: 8px;
}
}



