.nest-wrap{
    background-color: #fff;
    padding-bottom: 200px;
}
@media screen and (min-width: 768px) {
    .nest-wrap{
    padding-bottom: 120px;
}
}
/* レスポンシブ */
.u-xs-none {
  display: none;
}

@media screen and (min-width: 544px) {
  .u-sm-none {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .u-md-none {
    display: none;
  }
}

@media screen and (min-width: 992px) {
  .u-lg-none {
    display: none;
  }
}

@media screen and (min-width: 1280px) {
  .u-xl-none {
    display: none;
  }
}

@media screen and (min-width: 544px) {
  .u-sm-block {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .u-md-block {
    display: block;
  }
}

@media screen and (min-width: 992px) {
  .u-lg-block {
    display: block;
  }
}

@media screen and (min-width: 1280px) {
  .u-xl-block {
    display: block;
  }
}


/* スマホでのみ改行を表示 */
.u-br-sp {
  display: none;
}

@media screen and (max-width: 640px) {
  .u-br-sp {
    display: inline;
  }
}


/* コンテナ */
.nest-container{
    padding: 0 20px;
}
@media screen and (min-width: 768px) {
  .nest-container {
    padding: 0 25px;
  }
}
@media screen and (min-width: 980px) {
  .nest-container {
    padding: 0 30px;
  }
}




/* メインビジュアル */
.nest-main-visual__wrap{
    display: block;
}
.nest-main-visual__logo{
    width: 33%;
    margin: 0 auto 20px;
    padding-top: 24px;
    position: relative; /* デフォルト */
    z-index: 10; /* 重なり優先度確保 */
}
.nest-main-visual__text{
    padding: 0 5vw ;
}
.nest-main-visual__text h1{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.75;
    margin-bottom: 8px;
}
.nest-main-visual__photo-wrap{
    position: relative;
    overflow: hidden;
}
.nest-main-visual__photo{
    position: relative;
    width: 100%;
    height: 420px;
    background: url('../images/nest-img/main-visual.jpg') no-repeat center/cover;
}
/* 白い三角形 */
.nest-main-visual__photo::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 101%;
    height: 70px;
    background: white;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    z-index: 2;  /* 三角を画像より前面に */
    transform: translateZ(0);
}
.nest-main-visual__sublogo{
    position: absolute;
    top: 64px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 90%; /* ロゴサイズは適宜調整 */
    height: auto;
}

/* フローティングバナー */
.nest-main-visual__floating{
    align-items: center;
    background: #F17190;
    background: linear-gradient(90deg,rgba(241, 113, 144, 1) 0%, rgba(219, 32, 77, 1) 100%);
    display: flex;
    position: fixed;
    bottom: 24px;
    justify-content: space-between;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    padding: 12px 16px;
    border-radius: 24px;
    z-index: 10; 
}
.nest-main-visual__floating:hover{
    filter: brightness(1.5); 
}
.nest-main-visual__floating-text{
    color: #fff;
    font-size: 16px;
    font-weight: bold;
}
.nest-main-visual__floating-btn{
    background: #fff;
    color: #232180;
    font-size: 16px;
    font-weight: bold;
    padding: 4px 16px;
    border-radius: 16px;
}
.nest-main-visual__floating-btn p{
    text-align: center;
}
@media screen and (min-width: 768px) {
    .nest-main-visual__photo{
        height: 640px;
        margin-left: auto;
    }
    .nest-main-visual__text h1,
    .nest-main-visual__text p{
        text-align: center;
    }
    .nest-main-visual__sublogo{
        top: 94px;
    }
    .nest-main-visual__floating-text{
        font-size: 20px;
    }
}
@media screen and (min-width: 980px) {
    .nest-main-visual__logo {
        position: fixed; /* 左上に固定 */
        top: 140px;
        left: 50px;
        width: 200px; /* 適宜調整 */
        margin: 0; /* 中央寄せは不要 */
        z-index: 999; /* 画像やテキストより前面 */
    }
    .nest-main-visual__wrap {
        display: flex;
        align-items: center; /* 縦中央揃え */
    }
    .nest-main-visual__text-wrap {
        width: 33%; /* テキスト幅 */
        padding-left: 5vw;
    }
    .nest-main-visual__text{
    padding: 0 ;
    }
    .nest-main-visual__text h1{
        font-size: 32px;
        text-align: left;
    }
    .nest-main-visual__text p{
        text-align: left;
    }
    .nest-main-visual__photo-wrap {
        width: 67%; /* 画像幅 */
        margin-left: 0; /* auto は不要 */
    }
    .nest-main-visual__photo{
        height: 876px; /* 高さは固定 */
        position: relative; /* サブロゴ用 */
    }
    .nest-main-visual__photo::before {
        width: 158px;
        height: 878px;
        clip-path: polygon(0 0, 100% 0, 0 100%);
    }
    .nest-main-visual__sublogo{
        top: 100px; /* PC時に位置を調整 */
        width: 70%; /* サイズ調整 */
        left: 57%;           /* 中央より少し右に寄せる */
        transform: translateX(-50%); /* leftを基準に中央寄せ */
    }
    .nest-main-visual__floating{
        padding: 32px 56px;
        border-radius: 100px;
        max-width: 1040px;
        bottom: 32px;
    }
    .nest-main-visual__floating-text{
        font-size: 24px;
    }
    .nest-main-visual__floating-btn{
        font-size: 24px;
        padding: 8px 20px;
        border-radius: 100px;
    }
}
@media screen and (min-width: 1080px) {
        .nest-main-visual__floating-text{
        font-size: 28px;
    }
}

/* こんな困ったことはありませんか？*/
.nest-problem {
    width: 100%;
}
.nest-problem h2{
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    background: #647882;
    padding: 12px 0;
}
.nest-problem__item-wrap {
    background-image: 
        linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 33%), 
        url('../images/nest-img/problems-back-visual.jpg');
    background-position: right bottom; /* 画像を右端・下に合わせる */
    background-size: cover;
    background-repeat: no-repeat;
    padding-bottom: 48px;
}
.nest__check-wrap{
    width:100%;
    padding: 24px 20px;
}
.nest-problem__item-wrap li{
    background: #fff;
    display: flex;
    font-size: 16px;
    padding: 8px;
    align-items: center;
    margin: 8px auto;
    max-width: 560px;
}
.nest-problem__item-wrap li p{
    text-align: left;
}

.nest__check-mark{
    flex: 0 0 40px;
}
.nest__check-mark img{
    width: 32px  !important;
    height: auto;
}
.nest-problem__triangle{
    width: 120px;
    height: 20px;
    background: #232180;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    margin: 0 auto 16px;
}
.nest-problem__answer-wrap{
    padding: 0 20px;
}
.nest-problem__answer{
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    width: 100%;
    max-width: 560px;
    background: #232180;
    margin: 16px auto;
    line-height: 1.75;
    padding: 4px;
}
@media screen and (min-width: 980px) {
    .nest-problem h2{
        font-size: 32px;
    }
    .nest-problem__item-wrap li{
        font-size: 20px;
        padding: 16px;
    }
    .nest-problem__triangle{
    width: 200px;
    height: 32px;
    }
}

/* 通常章タイトル*/
.nest-h2{
    color: #647882;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 24px;
}
.nest-h2::after{
    content: "";                  /* 必須 */
    display: block;               /* ブロック化して中央揃え可能に */
    width: 32px;                  /* 線の幅 */
    border-bottom: 4px solid #F17190; /* 線の太さと色 */
    margin: 8px auto 0;           /* 上下マージンと中央揃え */
}
@media screen and (min-width: 980px) {
    .nest-h2{
        font-size: 32px;
        margin-bottom: 32px;
    }
}

/* n・e・s・t について*/
.nest-about{
    padding: 48px 0;
}
.nest-about__features-wrap{
    padding: 16px 0;
    max-width: 1040px;
    margin: 0 auto;
}
.nest-about__features-item{
    padding: 16px;
    background: #fff;
    display: flex;
    align-items: center;
    box-shadow: 0px 0px 8px #8f8f8f;
    margin-bottom: 16px;
}
.nest-about__features-icon{
    flex: 80px 0 0;
}
.nest-about__features-text{
    padding-left: 12px;
}
.nest-about__features-text h3{
    color: #647882;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 8px;
}
.nest-about__discription{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.75;
    max-width: 1040px;
    padding-bottom: 24px;
    margin: 0 auto;
}

.nest-about__movie{
    max-width: 864px;
    margin: 0 auto;
    text-align: center; 
}
.nest-about__movie-ttl{
    font-size: 20px;
    font-weight: bold;
    padding: 12px 16px;
    background: #F17190;
    position: relative;    /* ::afterを相対配置用 */
    text-align: center;
    margin-bottom: 20px;
}
.nest-about__movie-ttl::after{
    content: "";                  /* 必須 */
    position: absolute;     /* 親に対して絶対位置 */
    bottom: -11px;          /* 四角の下に出す */
    left: 50%;              /* 中央に寄せる */
    transform: translateX(-50%); /* 左右中央揃え */    
    width: 32px;
    height: 20px;
    background: #F17190;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.nest-about__movie-item{
    position: relative;
    width: 100%;           /* 横幅いっぱい */
    max-width: 864px;      /* 任意で最大幅 */
    margin: 0 auto;        /* 中央揃え */
    padding-bottom: 56.25%; /* 16:9比率 (高さ/幅 * 100%) */
    height: 0;
}
.nest-about__movie-item iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (min-width: 768px) {
    .nest-about__features-item-wrap{
        display: flex;
    }
    .nest-about__features-item{
        flex:1;
        margin: 8px;
    }
    .nest-about__subcopy{
        text-align: center;
    }
}
@media screen and (min-width: 980px) {
    .nest-about__features-wrap{
        padding: 32px 0;
    }
    .nest-about__features-item{
        margin: 10px;
    }
    .nest-about__discription{
        font-size: 20px;
    }
    .nest-about__movie-ttl{
        font-size: 24px;
    }
}
/* 予約バナー*/
.nest-reserve-banner{
    display: block;
    background: linear-gradient(90deg,rgba(241, 113, 144, 1) 0%, rgba(219, 32, 77, 1) 100%);
    padding:16px 12px;
    border-radius: 16px;
    max-width: 1040px;
    margin: 0 auto;
}
.nest-reserve-banner:hover{
    filter: brightness(1.5); 
}
.nest-reserve-banner__text{
    margin-bottom: 16px;
}
.nest-reserve-banner__text-l{
    color: #F9F973;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 8px;
}
.nest-reserve-banner__text-s{
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
}
.nest-reserve-banner__btn{
    color: #232180;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    background: #fff;
    padding: 8px;
    width: 100%;
    border-radius: 100px;
}
.nest-reserve-banner__btn p{
    display: inline-block;
}
@media screen and (min-width: 980px) {
    .nest-reserve-banner{
        display: flex;
        border-radius: 16px;
        justify-content: space-between;
        align-items: stretch;
        padding: 24px 32px;
    }
    .nest-reserve-banner__text-l{
        font-size: 32px;
        margin-bottom: 16px;
    }
    .nest-reserve-banner__text-s{
        font-size: 28px;
        line-height: 1;
    }
    .nest-reserve-banner__btn{
        flex: 0 0 240px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 16px;
    }
}
/* サービス・料金*/
.nest-services{
    padding: 48px 0;
}
/* 料金*/
.nest-services__item{
    background: #fff;
    border-radius: 24px;
    box-shadow: 0px 0px 8px #8f8f8f;
    padding: 16px;
    margin-bottom: 20px;
}
.nest-services__item h3{
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    width: 100%;
    background: #F17190;
    padding: 12px 0;
    margin-bottom: 24px;
}
.nest-services__price{
font-weight: bold;
display: flex;
align-items: center;
justify-content: space-between;
padding-bottom: 8px;
border-bottom: #F9F973 solid 6px;
margin-bottom: 16px;
}
.nest-services__price-s{
    font-size: 24px;
}
.nest-services__price-l{
    font-size: 40px;
}
.nest-services__price-tax{
    font-size: 16px;
}
.nest-services__discription{
    font-size: 16px;
    margin-bottom: 14px;
}
.nest-services__time{
    color: #fff;
    background: #232180;
    display: flex;
    justify-content: center;
    font-size: 20px;
    font-weight: bold;
    padding: 14px 0;
    width: 100%;
    margin-bottom: 16px;
}
.nest-services__item ul{
    list-style-type: disc;
    padding-left: 16px;
}
@media screen and (min-width: 980px) {
    .nest-services__item-wrap{
        display: flex;
        justify-content: stretch;
        max-width: 1040px;
        margin: 0 auto 32px;
    }
    .nest-services__item{
        flex: 1;
        margin: 0 10px;
        padding: 32px 24px;
    }
    .nest-services__item h3{
        font-size: 32px;
    }
    .nest-services__price-s{
        font-size: 32px;
    }
    .nest-services__price-l{
        font-size: 48px;
    }
    .nest-services__price-tax{
        font-size: 24px;
    }
    .nest-services__time{
        font-size: 24px;
    }
    .nest-services__discription{
    font-size: 18px;
    }
}
/* 条件*/
.nest-services__conditions__item{
    max-width: 1040px;
    border: #647882 solid 2px;
    margin: 0 auto 16px;
}
.nest-services__conditions__item h3{
    background: #647882;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 8px 16px;
    width: 100%;
}
.nest-services__conditions__item-innner{
    background: #EEF6F9;
    padding: 16px;
}
.baggage-size__discription{
    list-style-type: disc;
    padding-left: 16px;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 18px;
}
.baggage-size__discription li{
    margin-bottom: 9px;
}
.baggage-size__img{
    width: 70%;
    margin: 0 auto;
    margin-bottom: 16px;
    max-width: 240px;
}
.baggage-size__total{
    font-size: 28px;
    font-weight: bold;
    display: flex;
    justify-content: center;
}
.time__timetable{
    background: #fff;
    padding: 16px;
}
.time__timetable:first-child{
    margin-bottom: 16px;
}
.time__timetable h4{
    color: #232180;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 8px;
}
.time__timetable p{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 4px;
}
.time__timetable ul{
    margin-bottom: 16px;
}
.time__timetable li{
    font-size: 16px;
    margin-bottom: 4px;
}
.hotel-text{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.75;
}
@media screen and (min-width: 768px) {
    .nest-services__conditions__item-innner{
        display: flex;
        padding: 36px;
    }
    .nest-services__conditions__item h3{
        font-size: 20px;
    }
    .baggage-size__discription{
        margin-right: 20px;
        flex: 2;
    }
    .baggage-size__img-total-wrap{
        display: flex;
        align-items: center;
        flex: 3;
    }
    .baggage-size__img{
        flex: 0 0 200px;
        margin: 0 20px 0 0;
    }
    .time__timetable{
        flex: 1;
    }
    .time__timetable:first-child{
        margin-bottom: 0;
        margin-right: 16px;
    }
    .time__timetable ul{
    margin-bottom: 0;
    }
    .nest-services__conditions__item.hotel{
        display: flex;
        flex-direction: row;
        align-items: stretch;
    }
    .nest-services__conditions__item.hotel h3{
        width: auto;
        display: flex;
        align-items: center;
    }
    .nest-services__conditions__item.hotel .nest-services__conditions__item-innner{
        flex: 1;
        display: flex;
        align-items: center; /* テキストを縦中央に */
        padding: 0 16px;
    }
    .hotel-text{
        font-size: 20px;
    }
}
@media screen and (min-width: 980px) {
    .baggage-size__discription{
        font-size: 20px;
    }
}
/* ご利用方法*/
.nest-howto{
    max-width: 1040px;
    margin: 0 auto 40px;
}
.nest-howto h3{
    background: #F17190;
    font-size: 18px;
    font-weight: bold;
    padding: 8px 16px;
    width: 100%;
    margin-bottom: 16px;
}
.nest-howto ul{
    display: flex;
    flex-direction: column;
}
.nest-howto li{
    margin-bottom: 24px;
    line-height: 1.75;
}
.delivery-img{
    max-width: 244px;
    height: auto;
    margin: 0 auto 12px;
}
.nest-howto h4{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 8px;
}
.delivery-ttl{
    text-align: center;
}

@media screen and (min-width: 768px) {
    .nest-howto h3{
        font-size: 20px;
    }
    .nest-howto ul{
        display: flex;
        flex-direction: row;
    }
    .nest-howto li{
        flex: 1;
        padding: 0 8px;
    }

    .nest-howto ul {
        display: grid;
        gap: 10px;
        grid-template-columns: 1fr;
    }
    .nest-howto li {
        display: grid;
        gap: 30px;
        grid-template-columns: 25% 75%;
    }

    .nest-howto h4 {
       text-align: left;
    }
}
@media screen and (min-width: 980px) {
    .nest-howto h4{
        font-size: 20px;
    }
}
/* 店舗案内*/
.nest-shopinfo{
    max-width: 1040px;
    margin: 0 auto 48px;
}
.nest-shopinfo h3{
    background: #232180;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    padding: 8px 0;
    text-align: center;
    margin-bottom: 12px;
}
.nest-shopinfo__shop{
    margin-bottom: 40px;
}
.nest-shopinfo__map{
    margin-bottom: 12px;
}
.nest-shopinfo__wrapper{
    display: flex;
    flex-direction: column;
}
.nest-shopinfo__photo{
    margin-bottom: 12px;
}
.shopinfo-service{
    border: #647882 solid 2px;
    margin-bottom: 12px;
}
.shopinfo-service p{
    background: #647882;
    color: #EEF6F9;
    font-size: 16px;
    font-weight: bold;
    padding: 2px 16px;
}
.shopinfo-service__inner{
    background: #EEF6F9;
    padding: 8px 8px 8px 16px;
}
.shopinfo-service__inner li{
    font-size: 18px;
    font-weight: bold;
    padding-left: 1.5em;
    text-indent: -1.5em;
    margin-bottom: 4px;
}
.shopinfo-service__inner li span{
    padding-right: 8px;
}
.shopinfo-add li{
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 4px;
    line-height: 1.5;
}
@media screen and (min-width: 768px) {
    .nest-shopinfo h3{
        font-size: 24px;
        padding: 12px 0;
        margin-bottom: 24px;
    }
    .nest-shopinfo__wrapper{
        display: flex;
        flex-direction: row-reverse;
    }
    .nest-shopinfo__photo{
        flex: 1;
        margin-left: 16px;
    }
    .nest-shopinfo__text{
        flex: 1;
    }
    .nest-shopinfo__map.second{
        width: 80%;
        margin: 12px auto;
    }
    .nest-shopinfo__wrapper{
        margin-top: 32px;
    }
}
/* FAQ*/
.nest-faq{
    max-width: 1040px;
    margin: 0 auto 48px;
}
.nest-faq__item {
    margin-bottom: 12px;
}

/* 初期非表示 */
.faq__item-q,
.faq__item-a {
    display: none;
}

/* Qが開いた時はflexで表示 */
.faq__item-q.open {
    display: flex;
    margin-bottom: 8px;
}

/* Aが開いた時 */
.faq__item-a.open {
    display: block;
}

/* 矢印回転 */
.faq-arrow {
    transition: transform 0.3s ease;
    width: 16px !important;
    height: auto;
}

/* TTLの矢印回転 */
.faq__item-ttl.open .faq-arrow {
    transform: rotate(180deg);
}

/* Qの矢印回転 */
.faq-arrow.open {
    transform: rotate(180deg);
}

/* FAQタイトル */
.faq__item-ttl{
    background: #647882;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 10px 16px;
    display: flex;
    justify-content: space-between;
    border-radius: 8px;
    align-items: center;
    margin-bottom: 8px;
}

/* Qのラベルとテキスト */
.faq-q-label{
    background-color: #232180;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
}
.faq-q-text{
    background: #EEF6F9;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    font-weight: bold;
}
.faq__item-a{
    padding: 0 0 10px 40px;
}
@media screen and (min-width: 768px) {
    .nest-faq__item {
        margin-bottom: 24px;
    }
    .faq__item-ttl{
        font-size: 24px;
        padding: 20px 24px;
        border-radius: 16px;
        margin-bottom: 16px;
    }
    .faq__item-q.open {
        margin-bottom: 12px;
    }
    .faq-q-label{
        font-size: 24px;
        width: 48px;
        height: 48px;
        flex: 0 0 48px;
    }
    .faq-q-text{
        font-size: 20px;
        padding: 8px 16px;
    }
    .faq__item-a{
    padding: 0 0 20px 48px;
    font-size: 18px;
}
}
@media screen and (min-width: 980px) {
        .nest-faq__item {
        margin-bottom: 32px;
    }
        .faq__item-q.open {
        margin-bottom: 16px;
    }
}
/* キャンセルポリシー */
.nest-cancellation-policy{
    padding: 24px 0;
    border-top: #232180 solid 1px;
    margin: 40px auto 0;
    max-width: 1040px;
}
.nest-cancellation-policy h2{
    color: #232180;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
    .nest-cancellation-policy h2{
        font-size: 20px;
    }
}
/* カスタマーサポート */
.nest-sustomer-support-ttl{
    display: flex;
    flex-direction: column;
}
.nest-sustomer-support{
    padding: 24px 0;
    border-top: #232180 solid 1px;
    margin: 0 auto;
    max-width: 1040px;
}
.nest-sustomer-support h2{
    color: #232180;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 4px;
}
.nest-support-time{
    color: #232180;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 8px;
}
.nest-support-cont-wrapper{
    display: flex;
    flex-direction: column;
    margin: 12px auto 20px;
}
.nest-cont-itme {
    margin-bottom: 24px;
}
.nest-cont-itme h3{
    background: #647882;
    color: #fff;
    font-size: 20px;
    padding: 4px 0;
    width: 100%;
    text-align: center;
    margin-bottom: 16px;
}
.nest-cont-itme.nest-line h3{
    background: #00B900;
}
.nest-cont-itme-text{
    text-align: center;
}
.nest-qr{
    display: none;
    width: 80%;
    margin: 0 auto 8px;
    max-width: 158px;
}
.nest-cont-itme-text a {
    font-size: 20px;
    color: #000;
    font-weight: bold;
    padding-bottom: 2px;
    border-bottom: #000 solid 1px;
    display: inline-block;
}
.nest-cont-itme p{
    text-align: center;
    margin-top: 8px;
}
.itme-text-pc{
    display: none;
}
@media screen and (min-width: 768px) {
    .nest-sustomer-support-ttl{
        flex-direction: row;
        align-items: stretch;
    }
    .nest-sustomer-support h2,
    .nest-support-time{
        font-size: 20px;
    }
    .nest-support-cont-wrapper{
        flex-direction: row;
    }
    .nest-cont-itme{
        flex: 1;
        padding: 0 8px;
    }
    .nest-cont-itme-text .cont-text-m{
        font-size: 16px;
    }
}
@media screen and (min-width: 980px) {
    .nest-qr{
        display: block;
    }
    .nest-cont-itme {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; /* ← これで中身を縦中央揃え */
    text-align: center;
    }
    .nest-cont-itme h3 {
    margin-bottom: auto; /* 上に寄せる（任意） */
    }
    .nest-cont-itme-text a{
        display: none;
    }
    .nest-cont-itme-text{
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }
    .itme-text-pc{
        display: block;
        font-size: 24px;
        color: #000;
        font-weight: bold;
    }
    .nest-cont-itme p{
        display: inline-block;
        margin: 0 auto;
    }
}
/* footer */
    .nest-footer{
    padding: 24px 0 0;
    border-top: #232180 solid 1px;
    margin: 0 auto;
    text-align: center;
    max-width: 1040px;
    }
    .nest-footer img{
        width: 60%;
        max-width: 200px;
    }
    @media screen and (min-width: 980px) {
        .nest-footer img{
            max-width: 320px;
        }
        .nest-footer{
            padding-bottom: 80px;
        }
    }

/* =========================================================
▼ Language-specific layout adjustments
========================================================= */
/* -en（英語） */
.nest-wrap.-en .nest-about__features-text p{
    line-height: 1.6em;
}
.nest-wrap.-en .nest-about__features-item{
    align-items: flex-start;
}

.nest-wrap.-en .nest-services__item ul,
.nest-wrap.-en .nest-services .time__timetable ul{
    line-height: 1.6em;
}

@media screen and (min-width: 768px) {
    .nest-wrap.-en .nest-services h3 {
        font-size: 28px;
    }
    .nest-wrap.-en .nest-services__price-s{
        font-size: 22px;
    }
    .nest-wrap.-en .nest-services__price-tax {
        font-size: 16px;
    }
    .nest-wrap.-en .nest-services__time p{
        font-size: 20px;
    }
    .nest-wrap.-en .nest-services .hotel-text{
        line-height: 1.6em;
    }

    .nest-wrap.-en .nest-about__features-text h3{
        line-height: 1.3em;
    }
    .nest-wrap.-en .nest-about__features-text {
        padding-left: 15px;
    }
}
@media screen and (min-width: 980px) {
    .nest-wrap.-en .nest-main-visual__floating {
        padding: 22px 56px;
    }

    .nest-wrap.-en .nest-reserve-banner{
        justify-content: center;
        align-items: center;
        padding: 16px 26px 8px;
        gap: 30px;
    }
    .nest-wrap.-en .nest-reserve-banner__btn {
        flex: initial;
        align-items: center;
        justify-content: center;
        height: fit-content;
        padding: 8px 20px;
        width: auto;
        border-radius: 30px;
        font-size: 22px;
    }

    .nest-wrap.-en .nest-reserve-banner__text-l{
        font-size: 24px;
        line-height: 1.25;
    }
    .nest-wrap.-en .nest-reserve-banner__text-s{
        font-size: 18px;
        line-height: 1.5;
    }
}
@media screen and (min-width: 1080px) {
    .nest-wrap.-en .nest-main-visual__floating-text{
        line-height: 1.6;
    }
}

@media screen and (max-width: 640px) {
    .nest-wrap.-en .nest-main-visual__floating-text{
        font-size: 16px;
        line-height: 1.5;
        margin-bottom: 5px;
    }
    .nest-wrap.-en .nest-main-visual__text h1 {
        line-height: 1.4;
    }
    .nest-wrap.-en .nest-main-visual__text{
        line-height: 1.4;
    }

    .nest-wrap.-en .nest-services__price-s{
        font-size: 16px;
    }
    .nest-wrap.-en .nest-services__price-l {
        font-size: 34px;
        line-height: 1.25;
    }
    .nest-wrap.-en .nest-services__price-tax{
        display: block;
    }

    .nest-wrap.-en .nest-reserve-banner__text-l,
    .nest-wrap.-en .nest-services__item h3{
        font-size: 20px;
    }
    .nest-wrap.-en .nest-reserve-banner__text-s,
    .nest-wrap.-en .nest-services__price-tax {
        font-size: 14px;
    }
    .nest-wrap.-en .nest-reserve-banner__btn,
    .nest-wrap.-en .nest-services__time{
        font-size: 18px;
    }

    .nest-wrap.-en .nest-services__item h3{
        margin-bottom: 12px;
    }
    .nest-wrap.-en .nest-services__time{
        justify-content: left;
        padding: 6px 16px;
    }

    .nest-wrap.-en .nest-services__price{
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .nest-wrap.-en .nest-main-visual__floating{
        display: block;
    }
}

/* -zh-hans（中国語（簡体字） */
@media screen and (min-width: 980px) {
    .nest-wrap.-zh-hans .nest-services__price-s{
        font-size: 24px;
    }
}
@media screen and (max-width: 640px) {
    .nest-wrap.-zh-hans .nest-main-visual__floating-text{
        font-size: 16px;
        line-height: 1.5;
        margin-bottom: 5px;
    }
    .nest-wrap.-zh-hans .nest-main-visual__floating{
        display: grid;
        gap: 10px;
        grid-template-columns: 2fr 1fr;
    }
    .nest-wrap.-zh-hans .nest-main-visual__floating-btn{
        padding: 4px 12px;
    }
    .nest-wrap.-zh-hans .nest-services__price-s{
        font-size: 18px;
    }
    .nest-wrap.-zh-hans .nest-services__price-l {
        font-size: 34px;
        line-height: 1.25;
    }
    .nest-wrap.-zh-hans .nest-services__item h3{
        font-size: 20px;
    }
    .nest-wrap.-zh-hans .nest-services__item h3{
        margin-bottom: 12px;
    }
}

/* -zh-hant（中国語（繁体字） */
@media screen and (min-width: 980px) {
    .nest-wrap.-zh-hant .nest-services__price-s{
        font-size: 24px;
    }
}
@media screen and (max-width: 640px) {
    .nest-wrap.-zh-hant .nest-main-visual__floating-text{
        font-size: 16px;
        line-height: 1.5;
        margin-bottom: 5px;
    }
    .nest-wrap.-zh-hant .nest-main-visual__floating{
        display: grid;
        gap: 10px;
        grid-template-columns: 2fr 1fr;
    }
    .nest-wrap.-zh-hant .nest-main-visual__floating-btn{
        padding: 4px 12px;
    }
    .nest-wrap.-zh-hant .nest-services__price-s{
        font-size: 18px;
    }
    .nest-wrap.-zh-hant .nest-services__price-l {
        font-size: 34px;
        line-height: 1.25;
    }
    .nest-wrap.-zh-hant .nest-services__item h3{
        font-size: 20px;
    }
    .nest-wrap.-zh-hant .nest-services__item h3{
        margin-bottom: 12px;
    }
}