

.menu_wrap{
  width: 100%;
  background-image: url('http://cuoreforte.jp/wp-content/themes/cuoreforte.jp/img/menu_back.png');
  background-size: cover;
  padding-top:120px;
  padding-bottom: 120px;
 
}

.menu_wrap h2{
  color:#FFF
}

ul.menu_box{
  width:100%;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
 }
 ul.menu_box li{
  width:90%;
  margin:auto;
 }
 ul.menu_box li img{
  margin-bottom: 10px;
  border-radius: 30px;
 }
 ul.menu_box li h3{
  color:#FFF;
  width: 100%;
  font-weight: 500;
  padding:0 4%;
 }
.drink_wrap{
  width: 100%;
  background-color: var(--brand-color);
  padding:var(--section-margin) 0
}
.drink_box{
  width:100%;
  display: flex;
  flex-wrap: wrap;
  padding:var(--section-margin) 0;
}
.drink_box .box_01{
  width:100%;
  order: 2;
  padding-top: var(--section-margin);

}

.drink_box .box_01 ul{
  width:100%;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  margin-bottom:40px
}
.drink_box .box_01 ul li{
  width: 100%;
  border-bottom: 1px solid #000;
  padding: 0 10% 20px;
  display: flex;
  flex-wrap: wrap;
}
.drink_box .box_01 ul li .name{
  width:70%;
}
.drink_box .box_01 ul li .price{
  width:30%;
  text-align: right;
}
.drink_box .box_01 .btn_wrap{
  margin-top:60px
}
.drink_box .box_02{
  width:100%;
  order: 1;
}
.drink_box .box_02 img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.access_wrap{
  width: 100%;
  background-image: url('http://cuoreforte.jp/wp-content/themes/cuoreforte.jp/img/access_back.png');
  background-size: cover;
  padding-top:var(--section-margin);
  padding-bottom:var(--section-margin);
  position: relative;
}
.access_wrap::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* 黒の半透明 */
  pointer-events: none; /* 背景の要素がクリック可能なままにする */
  z-index: 0; /* 追加 */
}
.access_wrap h2{
  color:#FFF
}
.access_wrap .access_box{
  width:100%;
  display: flex;
  flex-wrap: wrap;
  line-height: 0;
  position: relative; 
  z-index: 1;
  align-items: center;
}
.access_wrap .access_box .box_01{
  width:100%;
  padding-bottom: var(--section-margin);

}
.access_wrap .access_box .box_01 h2{
  color: #FFF;
  text-align: left;
}
.access_wrap .access_box .box_01 p.address{
  color: #FFF;
  text-align: left;
  font-size: 1.6rem;
}
.access_wrap .access_box .box_01 p.open{
  color: #FFF;
  text-align: left;
  font-size: 1.6rem;
}
.access_wrap .access_box .box_02{
  width:100%;
}


.cv_wrap{
  width:100%;
  padding-top:var(--section-margin);
  padding-bottom:var(--section-margin);
  text-align: center;
}
a.cv_btn{
  border: 2px solid var(--brand-color);
  border-radius: 50px;
  padding: 20px 60px;
  color: var(--brand-color);
  line-height: 180%;
  margin: auto;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}

a.cv_btn:hover{
  border: 2px solid var(--brand-color);
  background: var(--brand-color);
  color: #FFF;
  transform: scale(1.05); /* 追加: ホバー時に少し拡大 */
}


#contact_wrap .contact_box .box_02 a{
  color: var(--brand-color);
  font-size: 2.4rem;
  font-weight: 700;
  
}

.qa_wrap{
  width:100%;
  
  background-color: var(--sub-brand-color);
}
.qa_box {
  width: 100%;
  background: linear-gradient(to right, 
  var(--sub-brand-color) 2%, 
  var(--brand-color) 2%, 
  var(--brand-color) 98%, 
  var(--sub-brand-color) 2%);
  padding: var(--section-margin) 0;
}
.qa_wrap h2{
  color:#FFF
}


.qa_contents{
  width:100%;
  background: #FFF;
  border-radius: 10px;
  padding:20px;
  margin:0 0 30px;
}
.faq-item {
  margin-left: auto;
  margin-right: auto;

}

.faq-question__wrap {
  position: relative;
  padding: 10px 5px 10px 35px;
  cursor: pointer;

}

.minus-icon {
  position: absolute;
  content: "";
  width: 20px;
  height: 3px;
  background: var(--brand-color);
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
.plus-icon {
  position: absolute;
  content: "";
  width: 20px;
  height: 3px;
  background: var(--brand-color);
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transition: ease all 0.5s; /* 擬似要素のトランジションを追加 */
}

.plus-icon.active {
  transform: translateY(-50%);
}

.faq-question__title {
  font-weight: bold;
  font-size: 1.8rem;
  position: relative;
  width: 90%;
  padding: 0 0 0 20px;
  line-height: 140%;
}
.faq-question__title::before {
  position: absolute;
   content: "Q";
  top: 50%;
  left: -35px;
  transform: translateY(-50%);
  font-family: "Barlow", sans-serif;
  font-size: 3.2rem;
  background: var(--brand-color);
  color: white;
  display: inline-block;
  width: 4.0rem;
  height: 4.0rem;
  line-height: 3.5rem;
  text-align: center;
  border-radius: 50%;
  }

.faq-answer__wrap {
  background: #fff;
  padding: 10px 5px 10px 35px;
  transition: ease all 0.5s; /* 擬似要素のトランジションを追加 */
  height: 0;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
}

.faq-answer__wrap.active {
  height: auto;
  
}
.faq-answer__wrap {
  background: #fff;
  opacity: 0;
  padding: 10px 5px 10px 35px;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  transition: ease all 0.7s; /* 擬似要素のトランジションを追加 */
}

.faq-answer__wrap.active {
  opacity: 1;
  padding: 10px 5px 10px 35px;
}

.faq-answer__title {
  position: relative;
  font-weight: 500;
  color: #000;
  font-size: 1.5rem;
  padding: 0 0 0 20px;
  line-height: 140%;
  width: 90%;
}

.faq-answer__title::before {
    position: absolute;
    color: #a9c9bc;
    content: "A";
    top: 50%;
    left: -35px;
    transform: translateY(-50%);
    font-family: "Barlow", sans-serif;
  font-size: 3.2rem;
  display: inline-block;
  width: 4.0rem;
  height: 4.0rem;
  line-height: 3.5rem;
  text-align: center;
  border-radius: 50%;
  }

.faq-answer__text {
  margin-top: 5px;
}

.news_wrap{
  width:100%;
  padding-top:var(--section-margin);
  padding-bottom:var(--section-margin);
}


.news_box{
  width: 80%;
  margin:0 10%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.news_box .news_title{
  width:25%;
}
.news_box .news_title h2{
  text-align: left;
  margin: 0 0 6%;
}
.news_box .news_title h3{
  text-align: left;
  margin: 0 0 40px;
}

.news_box .news_contents{
  width:75%;
  display: flex;
  flex-wrap: wrap;
}

.news_box .news_contents ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: 2%;
  margin: 0 0 2%;
  border-bottom: 1px solid #dddddd;
}

.news_box .news_contents ul li{
  width:100%;
  display: flex;
  flex-wrap: wrap;
}
.news_box .news_contents ul li.date{
  width: 15%;
  display: flex;
  font-weight: 400;
  color: var(--brand-color);
  font-family: "Barlow", sans-serif;
  font-size: 1.4rem;
  justify-content: flex-start;

}
.news_box .news_contents ul li.tag{
  width: 15%;
  font-size: 1.4rem;
  color: #FFF;
  background:#000;
  text-align: center;
  padding:5px 10px;
  display: flex;
  justify-content: center;
}

.news_box .news_contents ul li.title{
  width:70%;
  padding-left: 4%;
}
.news_box .news_contents ul li.title a{
  color:#000;
  font-size:1.4rem;
}
