{
    margin: 0;
    padding-left: 0;
    list-style: none;
    text-decoration: none;
}

p {
    font-size: 1.04vw;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 300;
    letter-spacing: 0.13rem;
    line-height: 2.2vw
}

.sp__class {
    display: none;
}

.header {
    width: 100%;
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    display: flex;
}

.header__wrap {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    box-sizing: border-box;
    padding: 3.8% 6vw 3.8% 4.4vw;
}

.nav {
    width: 100%;
    margin-top: 2rem;
}

.nav ul {
    width: 100%;
    display: flex;
    justify-content: flex-end; /* 右寄せ */
    gap: 2.5vw;
}

.nav__list {

}

.nav__list a {
    color: #fff;
    font-size: 1.3vw;
    font-family: "Crimson Text", serif;
    font-weight: 300;
    letter-spacing: 0.1rem;
}

.main {
    width: 100%;
}
/* 

mv

*/

.mv {
    width: 100%;
}

.mv__wrap {
    width: 100%;
    position: relative;
}

.mv__wrap img {
    width: 100%;
    display: block;
}

.mv__title-wrap {
    width: 100%;
    height: 56vw;
    position: absolute;
    top: 0vw;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mv__title-wrap h1 {
    color: #fff;
    font-size: 5.2vw;
    font-family: "Crimson Text", serif;
    font-weight: 400;
    letter-spacing: 1.03rem;
    margin-top: -2vw;
    margin-left: 1vw;
}

/* 

about

*/

.about {
    width: 100%;
    margin-top: -1px;
}

.about__wrap {
    width: 100%;
    text-align: center;
    background-color: #1a0506;
    box-sizing: border-box;
    padding: 9.3% 0vw;
}

section.about {
    background-color: #1a0506; /* 他のセクションと同じ背景色 */
}

.section__content {
    width: 100%;
}

.section__content:nth-child(2) {
    margin-top: 9.5%;
}

.section_title-wrap {
    margin-bottom: 1.7vw;
    margin-top: 0.2%;
}

.section_title-wrap h2 {
    color: #928568;
    font-size: 1.88vw;
    font-family: "Crimson Text", serif;
    font-weight: 100;
    letter-spacing: 0.45rem;
}

.section_text-wrap {

}

.section__text-wrap p {
    
}

/*

Team 

*/

.team {
    width: 100%;
    margin-top: -1px;
}

.team__wrap {
    background-color: #1a0506;
    box-sizing: border-box;
    padding: 5.9vw 0;
}

.team__title {
    width: 100%;
    text-align: center;
    margin-bottom: 4%;
}

.team__title h2 {
    font-family: "Crimson Text", serif;
    font-weight: 100;
    color: #928568;
    font-size: 3.2vw;
    letter-spacing: 0.07rem;
}

.team__container {
    width: 100%;
}

.team__content {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.team__content:nth-child(1) {
    margin-bottom: 9%;
}

.staff__img {
    width: 100%;
    margin-bottom: 3.2%;
}

.staff__img img {
    width: 19%;
    background-color: #fff;
}


.staff__name {
    margin-bottom: 2.1%;
}

.staff__name h3 {
    color: #fff;
    font-size: 2.1vw;
    letter-spacing: 0.7rem;
    margin-bottom: 0.3%;
}
.staff__name p {
    font-family: "IBM Plex Serif", serif;
    font-weight: 300;
    color: #fff;
    letter-spacing: 0.4rem;
}

.staff__text {
    width: 67.7%;
    margin: 0 auto;
    text-align: start;
}

.staff__text p {
    line-height: 2.1vw;
}

.team__content-2 .staff__img {
    margin-bottom: 2.4vw;
}


/* 

wine

*/

.wine {
    width: 100%;
    background-color: #1a0506;
    margin-top: -1px;
    box-sizing: border-box;
    padding: 9% 0 11.1% 0;
}

.wine__wrap {
    width: 100%;
}

.wine__title {margin-bottom: 6%;}

.wine__title h2 {
    color: #928568;
    font-size: 1.88vw;
    font-family: "Crimson Text", serif;
    font-weight: 100;
    letter-spacing: 0.45rem;
    text-align: center;
}

.wine__about {
    width: 100%;
    margin-bottom: 0.4%;
}

.wine__about h4,
.ferrari__about h4 {
    width: 100%;
    text-align: center;
    font-size: 1.24vw;
    color: #fff;
    letter-spacing: 0.16rem;
    margin-bottom: 0.8%;
}

.wine__about p {
    width: 64.4%;
    margin: 0 auto;
    letter-spacing: 0.12rem;
    line-height: 2.1vw;
}

.ferrari__about {
    width: 100%;
}

.ferrari__content {
    width: 59.9%;
    display: flex;
    margin: 0 auto;
    margin-top: 3.5%;
}

.wine__img {
    width: 19.9%;
    margin-left: 5.4vw;
    display: flex;
    align-items: center;
}

.wine__img img {
   width: 100%;
}

.ferrari__content p {
    width: 84.8%;
    line-height: 1.5vw;
    letter-spacing: 0.05rem;
    box-sizing: border-box;
    padding: 0 1.4vw;
    margin-top: -1%;
    display: flex;
    align-items: center;
}
/*

Message 

*/

.message {
    width: 100%;
    margin-top: -1px;
}

.message__wrap {
    background-color: #1a0506;
    box-sizing: border-box;
    padding: 5.9vw 0;
}

.message__title {
    width: 100%;
    text-align: center;
    margin-bottom: 1%;
}

.message__title h2 {
    font-family: "Crimson Text", serif;
    font-weight: 100;
    color: #928568;
    font-size: 3.2vw;
    letter-spacing: 0.07rem;
}

.message__container {
    width: 100%;
}

.message__content {
    width: 100%;
    margin: o auto;
    text-align: center;
}

.message__content:nth-child(1) {
    margin-bottom: 9%;
}

/*

contact

*/
.contact {
    width: 100%;
    background-color: #928568;
    margin-top: -1px;
}

.contact__wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 7.3% 0 5.2% 0;
}

.contact__wrap h3 {
   font-size: 1.3vw;
   font-family: 'Merriweather', serif;
   font-weight: bold;    
   color: #1a0506;
    text-align: center;
    letter-spacing: 0.32rem;
    line-height: 2.6vw;
    margin-bottom: 1%;
}

.contact__wrap p{
    color: #1a0506;
    font-weight: 500;
    width: 64.4%;
    margin: 0 auto;
    letter-spacing: 0.25rem;
    line-height: 2.3vw;
    margin-bottom: -2.5%;
}

.address__area {
    text-align: center;
    margin-bottom: 5.2%;
    margin-top: 6%;
}
.address__area p {
    color: #1a0506;
    font-weight: 500;
    letter-spacing: 0.21rem;
    line-height: 4.9vw;
}

.address__area .email-link {
  color: white;
}

form {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; 
  width: 100%;
  max-width: 600px; /* 最大幅を設定 */
  margin: 0 auto;
  padding: 20px;
  box-sizing: border-box;
}

input[type="text"],
input[type="email"],
textarea {
  width: 100%; /* 画面幅に応じて広がる */
  max-width: 100%; /* スマホでの幅を全画面に */
  padding: 10px;
  margin-bottom: 10px;
  box-sizing: border-box;
 font-size: 16px; /* テキストを読みやすく */
}

textarea {
  height: auto;
  min-height: 150px; /* メッセージボックスの高さを拡大 */
}

button {
  width: 100%; /* ボタンの幅を100%に */
  max-width: 600px;  
  padding: 10px 20px;
  font-size: 1rem;
  cursor: pointer;
  background-color: #928568;
  color: white;
  border: none;
  border-radius: 5px;
}


.qr__wrap {
    width: 13%;
    margin: 0 auto;
    margin-top: 1.8%;
    margin-bottom: -5%;
}

.qr__wrap img {
    width: 100%;
    background-color: #fff;
}

.btn__area {
    text-align: center;
}
.btn__area p {
    color: #1a0506;
    font-weight: 500;
    letter-spacing: 0.25rem;
    margin-bottom: 2.8%;
    
}

.btn {
    margin-bottom: 1%;
}
.btn a {
    color: #fff;
    background-color: #1a0506;
    font-size: 1vw;
    box-sizing: border-box;
    padding: 2.3vw 6.1vw;
    font-family: "Crimson Text", serif;
    font-weight: 100;
    letter-spacing: 0.4rem;
    transition: 0.3s;
}

.btn a:hover {
    cursor: pointer;
    color: #1a0506;
    background-color: #fff;
    transition: 0.3s;
}

.footer {
    background-color: #1a0506;
    text-align: center;
    box-sizing: border-box;
    padding: 2.7% 0;
}

.footer p {
    font-size: 0.8vw;
}


/*

membership

*/

.nav-links {
            text-align: center;
            background-color: transparent; /* 背景セクション内に配置するため */
            padding-top: 10px;
}

.nav-links a {
            color: white;
            font-family: 'Noto Sans JP', sans-serif;
            font-size: 0.8rem;
            text-decoration: none;
            margin: 0 15px; /* リンク間のスペース */
}

        /* スペースの設定 */
.nav-spacing {
            margin-bottom: 5rem; /* 3行のスペース */
}


.membership {
    width: 100%;
    background-color: #1a0506; /* #928568; */
    margin-top: -1px;
}

.membership__wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 7.3% 0 5.2% 0;
    background-color: #1a0506; /* 背景色はそのまま */
}

.membership__wrap h2 {
    color: #1a0506; /* #928568; */
    text-align: center;
    font-size: 1.88vw;
    font-family: "Crimson Text", serif;
    font-weight: 100;
    letter-spacing: 0.45rem;
}

.membership_text-wrap {

}

.membership__text-wrap p {
    
}


.membership__wrap h3 {
   font-size: 1.3vw;
   font-family: 'Merriweather', serif;
   font-weight: bold;    
   color: #1a0506;
    text-align: center;
    letter-spacing: 0.32rem;
    line-height: 2.6vw;
    margin-bottom: 1%;
}

.membership__wrap p{
    color: #1a0506;
    font-weight: 500;
    width: 64.4%;
    margin: 0 auto;
    letter-spacing: 0.25rem;
    line-height: 2.3vw;
    margin-bottom: -2.5%;
}


.membership svg {
    width: 100%;
    height: auto;
    max-width: 100%;
    display: block;
    margin: 0 auto;
    opacity: 1;
    filter: none;
    mix-blend-mode: normal;
}



/* 会員規約のスタイル */
.regulations {
    text-align: center;
    color: #fff; /* テキストを白色 */
    line-height: 1.8;
}

.regulations h2 {
    color: #928568; /* ゴールド色 */
    font-family: 'Crimson Text', serif;
    font-size: 2.5vw; /* レスポンシブ対応 */
    margin-bottom: 2vw;
}

.regulations p {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2vw;
    line-height: 1.8;
    margin-bottom: 2vw;
}

 .social-icons-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 10px;
  }

  .social-icons {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
  }

  .social-icon {
    width: 32px;
    height: 32px;
    object-fit: contain;
  }

  .social-text {
    text-align: center;
    font-size: 14px;
    color: white;
    margin: 0;
  }

  .social-text a {
    color: white;
    text-decoration: underline;
    margin: 0 4px;
  }

  .social-text a:hover {
    opacity: 0.8;
  }

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {

  .nav {
    display: flex;
    justify-content: center; /* ナビゲーション全体を中央揃え */
    align-items: center;
    width: 100%; /* nav自体の幅を100%に */
    box-sizing: border-box;
  }

  .nav ul {
    width: auto; /* 幅を自動にして、内容に合わせる */
    padding: 0;
    margin: 0;
    list-style: none; /* ulの余白をリセット */
    box-sizing: border-box;
  }

  .nav__list {
    display: flex;
    justify-content: center; /* リスト内の要素を中央に配置 */
    flex-wrap: wrap; /* 必要に応じて折り返し */
    width: auto;
    box-sizing: border-box;
  }

  .nav__list a {
    color: #fff;
    font-size: 1rem; /* フォントサイズを小さく（1.2remから1remに変更） */
    font-family: "Crimson Text", serif;
    font-weight: 400;
    letter-spacing: 0.1rem;
    margin: 0 10px; /* 両側に適度な余白を設定 */
    flex-grow: 0; /* フレックスで拡大しない */
    text-align: center;
    white-space: nowrap; /* テキストが折り返されないようにする */
    box-sizing: border-box;
  }

 form {
    width: 90%; /* 小さい画面では幅を調整 */
  }

    .regulations h2 {
        font-size: 4vw;
    }

    .regulations p {
        font-size: 3vw;
        margin-bottom: 4vw;
    }
     .nav-links a {
        display: block;
        margin: 10px 0;
        font-size: 1rem;
         }

}


@media screen and (max-width:450px) {
    * {
        margin: 0;
        padding-left: 0;
        list-style: none;
        text-decoration: none;
}
.membership svg {
    width: 90%;       /* モバイルでは幅を少し小さめにする */
    margin: 0 auto;   /* 画像を中央に配置 */
    opacity: 1;
    filter: none;
    mix-blend-mode: normal;
  }
    
    p {
        font-size: 2.94vw;
        color: #fff;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 300;
        letter-spacing: 0.13rem;
        line-height: 5vw;
    }

    .sp__class {
        display: inline;
    }
    
    .header {
        width: 100%;
        position: absolute;
        z-index: 10;
        top: 0;
        left: 0;
        display: flex;
    }
    
    .header__wrap {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        box-sizing: border-box;
        padding: 3.8% 4.4vw;
    }
    
    .nav {
        width: 100%;
    }
    
    .nav ul {
        width: 100%;
    }
    
    .nav__list {
        
    }
    
    .nav__list a {
        color: #fff;
        font-size: 2.5vw;
        font-family: "Crimson Text", serif;
        font-weight: 400;
        letter-spacing: 0.1rem;
        margin: 0 2vw;
    }
    
    .main {
        width: 100%;
    }
    /* 
    
    mv
    
    */
    
    .mv {
        width: 100%;
    }
    
    .mv__wrap {
        width: 100%;
        position: relative;
    }
    
    .mv__wrap img {
        width: 100%;
        display: block;
    }
    
    .mv__title-wrap {
        width: 100%;
        height: 56vw;
        position: absolute;
        top: 0vw;
        left: 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    .mv__title-wrap h1 {
        color: #fff;
        font-size: 7.2vw;
        font-family: "Crimson Text", serif;
        font-weight: 400;
        letter-spacing: 1.03rem;
        margin-top: -2vw;
        margin-left: 1vw;
    }
    
    /* 
    
    about
    
    */
    
    .about {
        width: 100%;
        margin-top: -1px;
    }
    
    .about__wrap {
        width: 100%;
        text-align: center;
        background-color: #1a0506;
        box-sizing: border-box;
        padding: 9.3% 0vw;
    }
    
    .section__content {
        width: 100%;
    }
    
    .section__content:nth-child(2) {
        margin-top: 20%;
    }
    
    .section_title-wrap {
        margin-bottom: 1.7vw;
        margin-top: 0.2%;
    }
    
    .section_title-wrap h2 {
        color: #928568;
        font-size: 4.88vw;
        font-family: "Crimson Text", serif;
        font-weight: 100;
        letter-spacing: 0.45rem;
    }
    
 
    /*
    
    Team 
    
    */
    
    .team {
        width: 100%;
        margin-top: -1px;
    }
    
    .team__wrap {
        background-color: #1a0506;
        box-sizing: border-box;
        padding: 5.9vw 0;
    }
    
    .team__title {
        width: 100%;
        text-align: center;
        margin-bottom: 4%;
    }
    
    .team__title h2 {
        font-family: "DM Serif Text", serif;
        font-weight: 100;
        color: #928568;
        font-size: 4.9vw;
        letter-spacing: 0.07rem;
    }
    
    .team__container {
        width: 100%;
    }
    
    .team__content {
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
    
    .team__content:nth-child(1) {
        margin-bottom: 10%;
    }
    
    .staff__img {
        width: 100%;
        margin-bottom: 3.2%;
    }
    
    .staff__img img {
        width: 40%;
        background-color: #fff;
    }
    
    
    .staff__name {
        margin-bottom: 7%;
    }
    
    .staff__name h3 {
        color: #fff;
        font-size: 5.1vw;
        letter-spacing: 0.7rem;
        margin-bottom: 0.3%;
    }
    .staff__name p {
        font-family: "IBM Plex Serif", serif;
        font-weight: 300;
        color: #fff;
        letter-spacing: 0.4rem;
    }
    
    .staff__text {
        width: 80%;
        margin: 0 auto;
        text-align: start;
    }
    
    .staff__text p {
        line-height: 5.5vw;
    }
    
    .team__content-2 .staff__img {
        margin-bottom: 2.4vw;
    }
    
    
    /* 
    
    wine
    
    */
    
    .wine {
        width: 100%;
        background-color: #1a0506;
        margin-top: -1px;
        box-sizing: border-box;
        padding: 9% 0 11.1% 0;
    }
    
    .wine__wrap {
        width: 100%;
    }
    
    .wine__title {margin-bottom: 6%;}
    
    .wine__title h2 {
        color: #928568;
        font-size: 4.5vw;
        font-family: "Crimson Text", serif;
        font-weight: 100;
        letter-spacing: 0.45rem;
        text-align: center;
    }
    
    .wine__about {
        width: 100%;
        margin-bottom: 11.4%;
    }
    
    .wine__about h4,
    .ferrari__about h4 {
        width: 100%;
        text-align: center;
        font-size: 3.24vw;
        color: #fff;
        letter-spacing: 0.16rem;
        margin-bottom: 2.8%;
    }
    
    .wine__about p {
        width: 80%;
        margin: 0 auto;
        letter-spacing: 0.02rem;
        line-height: 5vw;
    }
    
    .ferrari__about {
        width: 100%;
    }
    
    .ferrari__content {
        width: 90%;
        display: flex;
        margin: 0 auto;
        margin-top: 3.5%;
        flex-direction: column;
        align-items: center;
    }
    
    .wine__img {
        width: 80%;
        margin: 0 auto;
        order: 2;
    }
    
    .wine__img img {
        width: 100%;
    }
    
    .ferrari__content p {
        width: 80%;
        line-height: 4.5vw;
        letter-spacing: 0.05rem;
        box-sizing: border-box;
        padding: 0;
        margin-top: -1%;
        margin-bottom: 5%;
    }
 /*
    
    Message 
    
 */
    
    .message {
        width: 100%;
        margin-top: -1px;
    }
    
    .message__wrap {
        background-color: #1a0506;
        box-sizing: border-box;
        padding: 5.9vw 0;
    }
    
    .message__title {
        width: 100%;
        text-align: center;
        margin-bottom: 4%;
    }
    
    .message__title h2 {
        font-family: "DM Serif Text", serif;
        font-weight: 100;
        color: #928568;
        font-size: 4.9vw;
        letter-spacing: 0.07rem;
    }
    
    .message__container {
        width: 100%;
    }
    
    .message__content {
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
    
    .message__content:nth-child(1) {
        margin-bottom: 10%;
    }

    /* 
    
    contact
    
    */
    .contact {
        width: 100%;
        background-color: #928568;
        margin-top: -1px;
    }
    
    .contact__wrap {
        width: 100%;
        box-sizing: border-box;
        padding: 7.3% 0 5.2% 0;
    }
    
    .contact__wrap h3 {
        font-size: 3.6vw;
        color: #1a0506;
        text-align: center;
        letter-spacing: 0.32rem;
        line-height: 5vw;
        margin-bottom: 4%;
    }
    
    .contact__wrap p{
        color: #1a0506;
        font-weight: 500;
        width: 80%;
        margin: 0 auto;
        letter-spacing: 0.25rem;
        line-height: 5vw;
        margin-bottom: 0.5%;
    }
    
    .address__area {
        text-align: center;
        margin-bottom: 10.2%;
        margin-top: 14%;
    }
    .address__area p {
        color: #1a0506;
        font-weight: 500;
        letter-spacing: 0.21rem;
        line-height: 4.9vw;
    }
    
    .qr__wrap {
        width: 29%;
        margin: 0 auto;
        margin-top: 1.8%;
        margin-bottom: -5%;
    }
    
    .qr__wrap img {
        width: 100%;
        background-color: #fff;
    }
    
    .btn__area {
        text-align: center;
    }
    .btn__area p {
        color: #1a0506;
        font-weight: 500;
        letter-spacing: 0.25rem;
        margin-bottom: 6.8%;
    }
    
    .btn {
        margin-bottom: 1%;
    }
    .btn a {
        color: #fff;
        background-color: #1a0506;
        font-size: 4vw;
        box-sizing: border-box;
        padding: 4.3vw 17.1vw;
        font-family: "Crimson Text", serif;
        font-weight: 100;
        letter-spacing: 0.4rem;
    }
    
    .footer {
        background-color: #1a0506;
        text-align: center;
        box-sizing: border-box;
        padding: 2.7% 0;
    }
    
    .footer p {
        font-size: 0.8vw;
    }
    
}

    input[type="text"],
    input[type="email"],
    textarea {
        width: 90%; /* 小さい画面では幅を90%に調整 */
    }

    button {
        width: 100%; /* ボタンの幅も全画面に対応 */
    }

.regulations {
    text-align: center;
    color: #fff; /* テキストを白色 */
    line-height: 1.8;
}

.regulations h2 {
    color: #928568; /* ゴールド色 */
    font-family: 'Crimson Text', serif;
    font-size: 2.5vw; /* レスポンシブ対応 */
    margin-bottom: 2vw;
}

.regulations p {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2vw;
    line-height: 1.8;
    margin-bottom: 2vw;

}
}