@charset "UTF-8";

/*-------------------------------共通css-------------------------------*/
body {overflow-wrap: break-word;word-break: normal;font-family: futura-pt, sans-serif;overflow-x: hidden;color: #333;display: flex;flex-flow: column;min-height: 100vh;}
main{margin-top:auto; width: 100%;letter-spacing: 1px;overflow: hidden; font-family: serif;}

.sp {display: none;}
.pc {display: block;}
img {width: 100%;height: auto;}
.ttl {font-size: 14px;}
#top .ttl h2 {font-size: 25px; text-align: center;}
#top .ttl h2::after {content: " ";border: solid 1px #664994;display: block;width: 55px;margin: 15px auto;}
p {line-height: 2;font-size: 15px;}
.red{color: #d54a4a;}
.wrapper {overflow-x: hidden;}
/* パンくずりすと */
.breadcrumbs {width: 85%;margin: 0 0 1% auto;font-size: 14px;}
.breadcrumbs a {color: #4865b2;}
/* 404ページ */
.error404 {text-align: center;padding: 100px 0;}
.error404 h2 {text-align: center;margin-bottom: 20px;font-size: 25px;}
.error404 .home {text-align: center;}
.error404 p a {text-align: center;display: inline-block;margin: 20px 0;color: #4773ba;}

.wp-pagenavi {text-align: center;margin: 5% 0;}
.wp-pagenavi span {text-decoration: none;display: inline-block;margin: 0 8px 8px;padding: 3px 8px;font-size: 14px;}
.object-fit-img {object-fit: cover;font-family: "object-fit: contain;";}


/* PV数表示 */
.post-views{display: inline; position: fixed; bottom: 170px; right:4%; z-index:101;}
.top_view{display: inline; position: fixed; bottom: 170px; right:4%; z-index:101;}

/* PV数表示 */
.post-views{display: inline; position: fixed; bottom: 170px; right:4%; z-index:101;}
.top_view{display: inline; position: fixed; bottom: 170px; right:4%; z-index:101;}

/*マーカーアニメーション*/
.marker.active {background-position: -100% .5em;}
.marker{
  background-image: -webkit-linear-gradient(left, transparent 50%, #f9e5ff 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #f9e5ff 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #f9e5ff 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #f9e5ff 50%);
  background-image: linear-gradient(left, transparent 50%, #f9e5ff 50%);
  background-repeat: repeat-x;
  background-size: 200% .8em;
  background-position: 0 .5em;
  transition: all 1.5s ease;
  font-weight: bold;}


/* 光るボタン ---------------------- */
.btn-shine {text-align: center;margin: 1rem;}
.btn-shine a {display: inline-block;padding:0.9em 6em;background:#a46bca;color: #fff;text-decoration: none;border-radius: 100vh;transition: 0.3s; color: #fff!important; position: relative;overflow: hidden;} 
.btn-shine a:hover {opacity: 1;box-shadow: none;transform: scale(0.99, 0.99) translateY(1px);}
.btn-shine a:after {content: "";position: absolute;top: -50%;left: -50%;width: 10%;height: 150%;opacity: 0.5;filter: blur(1px);background: rgba(255, 255, 255, 0.5); transform: rotate(45deg);animation: reflect 3s ease-in-out infinite;}

/*** 光のアニメーション ***/
@keyframes reflect {
  0%,
  75% {transform: rotate(45deg) scale(0);opacity: 1;}
  100% {transform: rotate(45deg) scale(100);opacity: 0;}
}
/*** ボタンを光らせるここまで ---------------------------***/
/* shopify用css */
.shopify-buy__product__title{font-family: "Noto Serif JP", serif!important;font-size: 2vw;font-weight: bold;position: relative;margin-bottom: 3%;}

/* PV数表示 */
.post-views{display: inline; position: fixed; bottom: 170px; right:4%; z-index:101;}

/* おろしはこちら */
.sale{width: 85%; margin:0 0 0 auto; padding: 80px 0;}
.sale h2 {font-size: 16px!important; text-align: center;}
.Wholesale{background-color: #626262; width: 350px; margin: 40px auto;}
.Wholesale a{color:#fff ; padding: 7px 20px; display: block; margin: 0 auto; text-align: center;}

/*-------------------------------header-------------------------------*/
header {width: 15%;height: 100vh;position: fixed;z-index: 100;}
header .container {position: absolute;z-index: 6;height: 100%;}
/* ロゴ。以前は header h1 に指定していたが、ロゴをpに統一したため
   ラッパーの .header-logo に付け替え（下層ページでロゴが大きすぎる不具合も解消） */
header .header-logo {color: #fff;text-align: center;width: 35%;margin: 0 auto;max-width: 150px;position: relative;z-index: 1;}
/* imgタグ側の width="100%" を実寸(px)に変えたぶん、表示幅はCSSで指定する
   （実寸を入れることでブラウザが表示前に高さを確保でき、読み込み中のガタつきが減る） */
header .header-logo img {width: 100%;height: auto;}
header .menu {height: 100vh;width: 100%;text-align: center;position: absolute;top: 50%;transform: translateY(-50%);-webkit-transform: translateY(-50%);}
header .menu:before {content: "";background-color: #986eb3;position: absolute;top: 0;right: 0;bottom: 0;left: 0;opacity: 0.9;z-index: -1;}
header .menu nav {width: 100%;position: absolute;top: 50%;left: 0%;transform: translateY(-50%) translateX(-0%);-webkit-transform: translateY(-50%) translateX(-0%);}
header .menu li {margin-bottom: 3%;}
header .menu li a {font-size: 11px;color: #fff;display: block;padding: 10px;}
header .sns {width: 100%;padding: 15px;position: absolute;left: 50%;transform: translateY(-5%) translateX(-50%);-webkit-transform: translateY(-0%) translateX(-50%);bottom: 35px;text-align: center;}
header .sns .line {color: #fff;margin-bottom: 15px;}
header .sns .line p {line-height: 1.6;}
header .sns .line a {font-size: 11px;}
header .sns a {color: #fff;}
header .sns ul {display: flex;justify-content: space-around;}
header .sns ul li a {color: #fff;display: block;font-size: 15px;transition: 0.2s;margin-bottom: 3%;}
header .sns ul li a:hover {opacity: 1;}
header .sns ul li .twitter:hover {color: #00acee;}
header .sns ul li .insta:hover {color: #cf2e92;}
header .sns ul li .facebook:hover {color: #3c5a99;}
.sp-humberger{width: 100%; background-color: #fff; position: fixed; top: 0; left: 0; z-index: 999; transition: transform 0.3s ease-in-out; display: none;}
.sp-humberger .container{ display: flex; align-items: center;}
.sp-humberger .humberger{width: 10%;}
.sp-humberger .logo{width: 40%; margin: 0 10% 0 20%;}
.sp-humberger .logo img {width: 100%;height: auto;}
.humberger {width: 62px;height: 62px;text-align: center;padding-top: 14px;z-index: 100;border-radius: 50%;}
.humberger p {line-height: 1;color: #333;font-size: 10px;}
.menu-trigger,
.menu-trigger span {display: inline-block;transition: all 0.4s;box-sizing: border-box;}
.menu-trigger {position: relative;width: 30px;height: 20px;}
.menu-trigger span {position: absolute;left: 0;width: 100%;height: 2px;background-color: #333;border-radius: 4px;}
.menu-trigger span:nth-of-type(1) {top: 0;}
.menu-trigger span:nth-of-type(2) {top: 9px;}
.menu-trigger span:nth-of-type(3) {bottom: 0;}
#menu02.active span:nth-of-type(1) {-webkit-transform: translateY(10px) rotate(-315deg);transform: translateY(10px) rotate(-315deg);}
#menu02.active span:nth-of-type(2) {opacity: 0;}
#menu02.active span:nth-of-type(3) {-webkit-transform: translateY(-9px) rotate(315deg);transform: translateY(-9px) rotate(315deg);}
@media (max-width: 768px) {
  .sp-humberger{display: flex!important; transform: translateY(0);}
  header { width:100%;left: -100%;transition: 0.2s ease-in-out;height: 100vh;}
  .openNav {left: 0;}
  header .menu li a {font-size: 15px;}
  header .menu:before {background-color: #fff;opacity:1;}
  header .menu li a {color: #333;}
  header .menu li {margin-bottom: 0%; border-bottom:1px solid #dadada ; padding: 5px 0;}
}


footer{background-color: #a58caa; color: #E5E5E4; padding: 20px 0; width: 85%; margin:  0 0 0 auto;}
footer .container{ max-width:1200px; margin: 0 auto; width:90%!important;} 
footer .ttl{position: inherit!important; top:0; }
footer .other{padding-bottom: 30px;}
footer .other .cards{display: flex;}
footer .other .cards .card{width:28%; margin-right: 3%;}
footer .other .cards .img{padding-top: 66%; margin-bottom: 10px;}
footer .other .cards .card1 .img{background-image:url(../img/footer_1.jpg);}
footer .other .cards .card2 .img{background-image:url(../img/footer_2.jpg);}
footer .other .cards .card3 .img{background-image:url(../img/footer_3.jpg);}

footer .other h3{font-size:18px; margin-bottom: 12px;}
footer .menu{border-top: 1px solid #fff; border-bottom: 1px solid #fff; padding: 30px 0;}
footer a{color: #fff!important;} 
footer .menu ul{display:flex; flex-wrap: wrap;}
footer .menu ul li { padding:0 30px 0 0; margin-bottom: 10px;}
footer .info{padding-top: 30px;}
footer .info h3{font-size: 16px; margin-bottom: 15px;}
footer .info p{font-size: 13px;}
footer .info .map i{font-size: 11px; padding-left: 5px;} 
footer .sns {display: flex; }
footer .sns p {margin: 0 10px 0 0;}
footer .sns i{font-size: 15px;}
footer .copy{text-align: center;}
@media screen and (max-width:768px){
  footer .menu ul{justify-content: space-between;}
  footer .menu ul li {width: 33%; padding:0;}
  footer .other .cards {display:block;}
  footer .other .cards .card {width:100%; margin: 0 auto 25px auto;}
}


/* contactform7 */
.contactform{max-width: 800px; margin:0 auto;}
.contactform form p{font-size: 13px!important; margin-bottom: 10px!important;}
.contactform form input{margin:5px 0 15px 0; font-weight: bold; background-color: #f5f5f5; border-radius: 4px;box-shadow: none;color: #333;font-family: var(--s-font-61aeba65);font-size: 16px;font-weight: 400;height: 50px;justify-content: center;letter-spacing: 0em;line-height: 1.4;opacity: 1;padding: 10px 16px 10px 16px;text-align: left;width: 100%;max-width: 100%; border: none;}
.contactform form textarea {margin:10px 0 15px 0; font-weight: bold;background: #f5f5f5;border-radius: 4px;box-shadow: none;color: #333;font-family: var(--s-font-61aeba65);font-size: 16px;font-weight: 400;height: 160px;justify-content: center;letter-spacing: 0em;line-height: 1.4;opacity: 1;padding: 10px 16px 10px 16px;text-align: left;width: 100%;max-width: 100%;}
.contactform form input[type="submit"] {
  background: #bdbdbd;
  border-radius:6px;
  box-shadow: 0px 2px 12px 0px rgba(51, 51, 51, 0.3);
  color: #fff;
  flex: none;
  font-size: 18px;
  justify-content: center;
  margin: 0px auto;
  opacity: 1;
  padding: 12px 48px 12px;
  text-align: center;
  letter-spacing: 0.2em;
  display: block;
}
/*デフォルトの送信ボタンのスタイルを無効化する*/
input[type="submit"] {appearance: none;-webkit-appearance: none;-moz-appearance: none;}
span.wpcf7-spinner {display: none;}
.contact form input[type="submit"]{background: #333;border-radius: 320px;box-shadow: 0px 2px 12px 0px rgba(51, 51, 51, 0.3);color: #fff;flex: none;font-size: 18px;justify-content: center;margin: 0px 12px 12px;opacity: 1;padding: 12px 48px 12px;width: 280px;max-width: calc(100% - 24px);text-align: center; letter-spacing: 0.2em;}
/* お問いあわせチェックボックス */
.container .contactform form .checkbox input[type=checkbox] {display: none;}
.container .contactform form .checkbox input{background: #fff;border: 2px solid #231815;content: ''; height: 20px;left: 0px;margin:1px 0 0 0;width: 20px;}
.container .contactform .checkbox{display: flex; margin-bottom: 30px;}
.container .contactform .checkbox .wpcf7-list-item { display: block!important; padding: 5px 30px 5px 0px; margin:0 0 5px 0px!important;}
.container .contactform .checkbox .wpcf7-list-item label {box-sizing: border-box;cursor: pointer; display: block; position: relative;width: auto; font-weight:bold ; margin:0 0 5px 30px;}
.container .contactform .checkbox .wpcf7-list-item label::before  {background: #fff;border: 2px solid #9c9998;content: '';display: block;height: 15px;left: -30px;margin: 0 0 3px 0;position: absolute;top: 3px;width: 15px;}
.container .contactform .checkbox .wpcf7-list-item label span::after{border-right: 3px solid #ed7a9c; border-bottom: 3px solid #ed7a9c;content: '';display: block;height: 15px;left: -22px;margin-top: -7px;opacity: 0;position: absolute;top: 32%;transform: rotate(45deg);width: 5px;}
input[type=checkbox]:checked + span:after{opacity:1!important;}
@media screen and (max-width:768px){
  .container .contactform .checkbox {display:block;}
  .container .contactform .checkbox .wpcf7-list-item label {margin: 0 0 0px 30px;}
  .container .contactform .checkbox .wpcf7-list-item {margin: 0 0 0px 0px !important;}
  .container .contactform .checkbox p{margin: 0!important;}
}



/*-------------------------------トップ画像-------------------------------*/
.message {margin-top: -80px;position: relative;}

/* top画像切り替え */
.top {position: relative;}
.top .bg_container {position: relative;width: 100%;max-width: 100%;height: 95vh;}
.top .bg_container .image {position: absolute;width: 100%;height: 95vh;opacity: 0;animation: change-img-anim 9s infinite;}
.top .bg_container .image:nth-of-type(1) {animation-delay: 0s;}
.top .bg_container .image:nth-of-type(2) {animation-delay: 3s;}
.top .bg_container .image:nth-of-type(3) {animation-delay: 6s;}
@keyframes change-img-anim {
  0% {opacity: 0;}
  20% {opacity: 1;}
  33% {opacity: 1;}
  63% {opacity: 0;}
  100% {opacity: 0;}
}
.top .txt {color: #fff;opacity: 0;text-align: center;width: 100%;height: 95vh;z-index: 0;position: absolute;padding: 60px 0 4% 4%;top: 50%;left: 50%;transform: translateY(-50%) translateX(-50%);-webkit-transform: translateY(-50%) translateX(-50%);animation: change-txt-anim 9s infinite;background: linear-gradient(to top, rgba(0, 0, 0, 0.3), transparent);}
.top .txt:nth-child(1) {animation-delay: 0s;}
.top .txt:nth-child(2) {animation-delay: 3s;color: #a46bca;background: linear-gradient(to top, rgba(0, 0, 0, 0), transparent);}
.top .txt:nth-child(3) {animation-delay: 6s;}
/* メインビジュアルのキャッチコピー。1枚目はh1、2・3枚目はpだが見た目は共通
   （LPページのh1に影響させないため、要素名ではなくクラスで指定する） */
.top .txt .mv-copy {font-weight: lighter;line-height: 1;font-size: 3.4vw;position: absolute;top: 50%;left: 50%;transform: translateY(-50%) translateX(-50%);-webkit-transform: translateY(-50%) translateX(-50%);}
.top .txt .mv-copy span {font-size: 1.7vw;}
@keyframes change-txt-anim {
  0% {opacity: 0;}
  20% {opacity: 1;}
  33% {opacity: 1;}
  63% {opacity: 0;}
  100% {opacity: 0;}
}
@media screen and (max-width: 768px) {
  .top {height: 90vh;}
  .top .bg_container {height: 90vh;}
  .top .bg_container .image {height: 90vh;}
  .top .txt {margin: 0;text-align: center;width: 100%;height: 90vh;position: absolute;bottom: inherit;top: 0%;left: 0%;transform: translateY(0%) translateX(0%);-webkit-transform: translateY(0%) translateX(0%);}
  .top .txt .mv-copy {font-size: 7vw;width: 100%;}
  .top .txt .mv-copy span {font-size: 4.8vw;}
}
/*-------------------------------news-------------------------------*/
.news {width: 85%;margin: 0 0 0 auto;padding: 2%;}
#top .news {padding: 70px 2%;}
#top .news .ttl {text-align: center;}
#top .news dl {display: flex;flex-wrap: wrap;}
#top .news dl dt,
#top .news dl dd {margin-bottom: 20px;}

/* ページナビゲーション */
.pager {padding-top: 40px;width: 100%;margin-bottom: 30px;}
.pager .pagination {text-align: center;line-height: 0;}
.pager .pagination li {display: inline;margin: 0 2px;padding: 0;display: inline-block;width: 40px;height: 40px;overflow: hidden;text-align: center;position: relative;border-radius: 2px;}
.pager .pagination li a {vertical-align: middle;position: absolute;top: 0;left: 0;width: 100%;height: 100%;text-align: center;display: table;text-decoration: none;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: al0.3s ease;}
.pager .pagination li a span {display: table-cell;vertical-align: middle;transform: none;}
.pager .pagination li a:hover {color: #fff;background: #830000;opacity: 1;}
.pager .pagination li .active {color: #fff;background: #000;}
@media (max-width: 750px) {
  .pager .pagination li {display: none;}
  .pager .pagination .pre,
  .pager .pagination .next {display: inline-block;width: 40%;height: 50px;text-align: center;}
  .pager .pagination .pre a,
  .pager .pagination .next a {width: 100%;text-align: center;}
  .pager .pagination .pre span:after {content: " 前のページ";}
  .pager .pagination .next span:before {content: " 次のページ ";}
}

/*-------------------------------story-------------------------------*/
.concept .imgtxt .txt .ttl {text-align: center;}
.concept .imgtxt {width: 100%;display: flex;justify-content: space-around;}
.concept .imgtxt .img {background-image: url(../img/_SP_8037.jpg);background-size: cover;background-position: center center;background-repeat: no-repeat;width: 50%;}
.concept .imgtxt .txt {position: relative;width: 50%;margin: 0 0 0 auto;padding: 80px 0;}
.concept .imgtxt .txt .container {width: 80%;margin: 0 auto;}
.concept .imgtxt .txt h3 {position: relative;z-index: 1;font-size: 20px;margin-bottom: 5%;}
.concept .imgtxt .txt h3 span{font-size: 0.6rem; position: absolute;}
.concept .imgtxt .txt .h3 {color: #e8dcf2;font-size: 7.5vw;position: absolute;top: 12%;left: 3%;z-index: 0;line-height: 1;}
.concept .imgtxt .txt p {margin-bottom: 5%;position: relative;z-index: 1;}
.concept .imgtxt .txt span{font-size: 0.8rem;}
/*ギフト*/
.gift {width: 85%;margin: 0 0 0 auto;padding:30px 0;}
.gift .imgtxt {display: flex;justify-content: space-between;}
.gift .imgtxt .txt {width: 50%;position: relative;}
.gift .imgtxt .txt .inner-txt {width: 80%;position: absolute;top: 50%;left: 50%;transform: translateY(-50%) translateX(-50%);-webkit-transform: translateY(-50%) translateX(-50%);}
.gift .imgtxt .txt .gift-ttl {text-align: center;margin-bottom: 10%;}
.gift .imgtxt .txt .inner-txt p {margin-bottom: 5%;}
.gift .imgtxt .in-img {width: 60%;}

.gift .ShopMore {display: block;width: 100px;margin: 0 auto;border: 1px solid #111;color: #111;text-align: center;padding: 5px 20px;min-width: 140px;letter-spacing: 1px;position: relative;-webkit-transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);}
.gift .items .cards {width: 96%; margin: 0 auto; display: flex;flex-wrap: wrap;}
.gift .items .cards .card {width: 31%;margin: 0 3.5% 30px 0;vertical-align: top;}
.gift .items .cards .card:nth-of-type(3n) {margin-right: 0 !important;}
.gift .items .cards .card a {width: 100%;transition: 0.3s;}
.gift .items .cards .card a:hover {box-shadow: 0 15px 30px -5px rgb(0 0 0 / 15%), 0 0 5px rgb(0 0 0 / 10%);transform: translateY(-2px);opacity: 1;}
.gift .items .cards .card .img {height: auto;overflow: hidden;}
.gift .items .cards .card .txt {width: 100%;font-family: sans-serif;}
.gift .items .cards .card .txt .productName {font-size: 13px;line-height: 1.6;}
.gift .items .cards .card .txt .productPrice {font-size: 13px;}

/* セット */
.set {padding: 90px 0;}
/* 話題性 */
.snsinfo {padding: 0 0 60px 0;}
.snsinfo .container {width: 85%;margin: 0 0 0 auto;}
.snsinfo .container .ttl {text-align: center;margin-bottom: 50px;}
.snsinfo .container .ttl p {font-size: 16px;}
.snsinfo .container .cards {display: flex;justify-content: space-between;flex-wrap: wrap;width: 96%;margin: 0 auto;}
.snsinfo .container .cards .card {width: 24%;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);margin-bottom: 30px;}

/* -------話題性 紫ワイン------------------ */
.review-slider {padding: 0 0 70px 0;width: 85%;margin: 0 0 0 auto;}
.review-slider .ttl{text-align: center;}
.review-slider .ttl h3{font-size: 25px;}
.review-slider .ttlsquare{margin:80px auto 20px auto;}
.l-section .l-inner {padding-top:40px;padding-bottom: 8rem;}
.l-inner {position: relative;-webkit-box-sizing: content-box;box-sizing: content-box;max-width: 1200px;margin: 0 auto;padding: 0 10%;}
.swiper-pointer-events {touch-action: pan-y;}
.swiper {margin-left: auto;margin-right: auto;position: relative;overflow: hidden;list-style: none;padding: 0;z-index: 1;}
.review_card .slide { overflow: hidden;-webkit-transition: var(--transition), opacity 1s;transition: var(--transition), opacity 1s;border-radius: 4px;-webkit-box-shadow: var(--box-shadow);box-shadow:2px 3px 17px #dcdcdc;}
.review_card .swiper-slide{display: block;flex-shrink: 0 !important;}
.review_card .swiper-slide:not(.swiper-slide-visible) { opacity: 0.3;pointer-events: none;}
.review_card .slide-media {padding-top: 62.5%;}
.slide-media, .thumb-media {position: relative;overflow: hidden;}
.review_card .slide-media img {height: calc(100% + 16px);-webkit-transform: translateY(-16px);transform: translateY(-16px);}
.slide-media img, .thumb-media img {position: absolute;top: 0;left: 0;width: 100%;height: 100%;-o-object-fit: cover;object-fit: cover;}
.review_card {
  .swiper-slide {&:not(.swiper-slide-visible) {.slide {pointer-events: none;opacity: .3;}}
  }
}
.review_card .slide-content { padding:20px 8px;}
.review_card .slide-date { font-size: 14px; line-height: 1; display: block; color: #f5695f;}
.review_card .slide-title { line-height: 1.6; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; height: 3.2em; margin-top: 1.6rem;}
.review_card .swiper-button-prev, 
.review_card .swiper-button-next {position: absolute;z-index: 1;top: 0;bottom: 0;margin: auto; width: 50px;}
.review_card .swiper-button-prev::before,
.review_card .swiper-button-next::before {background-color: rgba(0, 0, 0, 0.3);height: 50px;}

.swiper-button-prev::before,
.swiper-button-next::before {position: absolute;top: 0;right: 0;bottom: 0;left: 0;content: "";border-radius: 50%;}
.review_card .swiper-button-prev::after, .review_card .swiper-button-next::after {border-color: #fff;font-size: 15px;}
.swiper-button-prev::after {margin: 5px 5px 1px 1px;-webkit-transform: rotate(0deg);transform: rotate(0deg);color: #fff;}
.swiper-button-prev::after, .swiper-button-next::after {content: "";border-width: 3px 3px 0 0;}
.swiper-button-next::after {margin: 5px 0px 1px 1px;-webkit-transform: rotate(0deg);transform: rotate(0deg);color: #fff;}
.swiper-button-next::after, .swiper-button-next::after {content: "";border-width: 3px 3px 0 0;}
@media screen and (max-width: 768px) {
  .review-slider {width:95%;margin: 0 auto;}
}
.card03 .slide-content { padding:20px 8px;}
.card03 .slide-date { font-size: 14px; line-height: 1; display: block; color: #9e7ca3;}
.card03 .slide-title { line-height: 1.6; display: -webkit-box; -webkit-box-orient: vertical; margin-top:10px; font-size: 14px; font-weight: lighter;}
.card03 .swiper-button-prev, .card03 .swiper-button-next {position: absolute;z-index: 1;top: 0;bottom: 0;margin: auto; width: 50px;}
.card03 .swiper-button-prev::before,
.card03 .swiper-button-next::before {background-color: rgba(0, 0, 0, 0.3);height: 50px;}
.card03 .swiper-button-prev::after, .card03 .swiper-button-next::after {border-color: #fff;font-size: 15px;}

/* お客様の声 */
.card03 .swiper {overflow: visible; padding: 0;} 
.card03 .slide {-webkit-transition: var(--transition), opacity 1s;transition: var(--transition), opacity 1s;border-radius: 4px;-webkit-box-shadow: var(--box-shadow);box-shadow:2px 3px 17px #dcdcdc;}
.card03 .swiper-slide:not(.swiper-slide-visible) { opacity: 0.3;pointer-events: none;}
.card03 .slide-media {padding-top: 62.5%;}
.card03 {
  .swiper-slide {&:not(.swiper-slide-visible) {.slide {pointer-events: none;opacity: .3;}}
  }
}
/* モーダル画像 */
.snsinfo .container .cards .card:hover {opacity: 0.8;}
.snsinfo .container .cards .card img {width: 100%;}
.modal {position: fixed;top: 0;left: 0;width: 100%;height: 100vh;background-color: rgba(0, 0, 0, 0.8);display: none;z-index: 1000;}
.bigimg {position: absolute;top: 50%;left: 50%;transform: translateY(-50%) translateX(-50%);-webkit-transform: translateY(-50%) translateX(-50%);margin: 0 0 0 auto;}
#top .close-btn {color: #fff;font-size: 40px;position: absolute;right: 0px;top: 0;z-index: 1;width: 100%;height: 100vh;}
#top .close-btn a {color: #fff;text-decoration: none;position: absolute;right: 10px;top: 10px;}

/* お客様の声 */
.voice {width: 85%;margin: 0 0 0 auto;padding: 40px 0 90px 0;}
.voice .ttl {text-align: center;margin-bottom: 30px;}
.voice .cards {display: flex;justify-content: space-between;width: 95%;margin: 0 auto;}
.voice .cards .card {margin-bottom: 20px;width: 48%;border: 1px solid #c4abd4;padding: 5px;box-shadow: 0 0 8px gray;}
.voice .cards2 .card {width: 32%;}
.voice .cards .card .ttl {padding-bottom: 10px;position: relative;display: flex;justify-content: space-between;border-bottom: 1px solid #a46bca;text-align: left;margin: 0;}
.voice .cards .card .ttl .ttlTxt {width: 80%;padding: 0 5px 0 0;}
.voice .cards .card .ttl .img {width: 20%;}
.voice .cards .card .ttl p {font-size: 11px;position: absolute;top: -5px;left: -9px;background-color: #a46bca;color: #fff;padding: 2px 7px;transform: rotate(-8deg);line-height: 1.2;}
.voice .cards .card .ttl h3 {margin-top: 30px;font-weight: bold;}
.voice .cards .card .txt {padding: 5px 0 10px 0;}

/* gallery */
.gallary {padding: 80px 0;}
.gallary .card {height: 250px;overflow: hidden; width: 32%!important;}
.gallary .card img {height: 100%;}
/*-------------------------------chara-------------------------------*/
.story {color: #fff;padding: 8% 0%;position: relative;background-image: url(../img/bg-chara02.jpg);width: 100%;background-size: cover;background-position: center center;background-repeat: no-repeat;}
.story::before {content: "";background-color: rgba(0, 0, 0, 0.7);position: absolute;top: 0;right: 0;bottom: 0;left: 0;}
.story .container {width: 85%;margin: 0 0 0 auto;}
.story .ttl {text-align: center;}
.story .ttl h2 {color: #fff;position: relative;}
.story .ttl h2::after {border: solid 1px #fff;}
.story .txt {padding: 4% 0 0 0%;width: 80%;margin: 0 auto;position: relative;}
.story .txt h3 {position: relative;z-index: 1;font-size: 2.5vw;margin-bottom: 5%;}
.story .txt h3 span {font-size: 1.5vw;}
.story .txt .h3 {color: #c7bfae;font-size: 8vw;position: absolute;top: -20%;left: -8%;z-index: 0;line-height: 1;}
.story .txt p {margin-bottom: 3%; font-size: 15px;}
.story .txt .pur {color: #c7bfae;font-size: 4vw;position: absolute;bottom: -11%;right: -8%;z-index: 0;line-height: 1;}

/*-------------------------------menu-------------------------------*/
.product {width: 85%;margin: 0 0 0 auto;}
.product .ttl {text-align: center;padding-top: 5%;margin-bottom: 8%;}
.product .card {margin-bottom: 10%;}
.product .imgtxt {display: flex;justify-content: space-between;margin-bottom: 2%;}
.product .imgtxt .img {width: 50%;background-repeat: no-repeat;background-size: cover;background-position: center center;}
.sparkonly .card1 .imgtxt .img {background-image:inherit;}
.sparkonly .card2 .imgtxt .img {background-image: inherit ;}
.product .imgtxt .txt {width: 50%;padding: 0 5% 0 5%;}
.product .imgtxt .txt h3 {font-size: 17px;position: relative;margin-bottom: 3%;}
.product .imgtxt .txt .tax {font-size: 15px;position: relative;margin-bottom: 15%;}
.product .imgtxt .txt .tax::after {position: absolute;top: 140%;content: " ";border-bottom: solid 1px #a563c3;display: block;width: 150%;}
.product .imgtxt .txt .tax span {font-size: 11px;display: block;line-height: 1.25;}
.product .imgtxt .txt table {width: 100%;line-height: 2;margin-bottom: 8%;text-align: left;}
.product .imgtxt .txt table th {width: 30%;}
.product .imgtxt .txt table tr {width: 70%;margin: 0;}
.product .card2 .imgtxt .txt .tax::after {right: 0%;}
.product .ShopMore {display: block;width: 50%;margin: 0 auto;border: 1px solid #111;color: #111;text-align: center;padding: 5px 20px;min-width: 140px;letter-spacing: 1px;position: relative;-webkit-transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);}
.product .imgtxt .txt .caution {font-size: 12px;margin-top: 20px;}
.product .news {font-size: 14px;text-align: right;padding: 3%;}
.product .comming {color: firebrick;text-align: center;}

.sparkonly .card1 .imgtxt .img {background-image:inherit;}
.sparkonly .card2 .imgtxt .img {background-image: inherit ;}

.ttl-sns {margin-top: 20%;text-align: left !important;}

/* topお知らせ */
.top_news { max-width: 1200px; width: 85%; padding:85px 0 35px 0; margin:0 0 0 auto;}
.top_news .articles{width: 90%; margin: 0 auto;}
.top_news article{margin-bottom: 20px;}
.top_news .ttl h2{font-size: 25px; text-align: center;}
.top_news .ttl h3{font-size: 15px; font-family: serif;}
.top_news dt{font-family: futura-pt; font-size: 13px;}
.top_news dd{margin: 0; font-size: 15px;}

/* readmore  */
.more{width: 190px; border-bottom: 1px solid #444; margin: 50px 0; }
.more a{font-size: 13px;}

.Collabo{width: 85%; padding:85px 0 35px 0; margin:0 0 0 auto;}
.Collabo .container{width: 96% ; margin: 0 auto;}
.Collabo .cards{display: flex; justify-content: space-between;}
.Collabo .cards .card{width: 30%;position: relative;overflow: hidden; border-radius: 15px;box-shadow: 0 12px 24px rgba(0, 0, 0, 0.25);}
.Collabo .cards .card::before{content: "";padding-top: 177%;display: block;}

.Collabo .cards .card img{width: 100%;height: 100%;position: absolute;top: 0;left: 0;object-fit: cover; position: absolute;}
.Collabo .cards .card .txt{position: absolute; bottom: 0; left: 3%;}
.Collabo .cards .card .txt h3{color: #fff;}
/*-------news-archive-------*/
#archive main {font-family: sans-serif;}
#archive .main-ttl {margin-top: 10px;text-align: center;margin-bottom: 50px;}
#archive .main-ttl h1 {font-size: 35px;}
#archive main .container {width: 85%;margin: 0 0 0 auto;display: flex;justify-content: space-between;}
#archive .articles {padding: 0 0 0 1%;width: 66%;display: flex;justify-content: space-between;flex-wrap: wrap;height: fit-content;}
#archive .articles .ttl {padding: 3%;font-weight: bold;}
#archive .articles .ttl .date-cat {display: flex;justify-content: space-around;}
#archive .cat,
#single .cat{display: inline-block;}
#archive .cat a,
#single .cat a {background-color: #bd90c3;padding: 2px 4px;color: #fff; font-size: 12px;}
#archive .articles .ttl .date-cat p {font-size: 12px;flex: 1;}
#archive .articles .ttl .date-cat a {font-size: 12px;}
#archive .articles .ttl h2 {font-size: 14px;line-height: 1.8;}
#archive .articles .card {padding-bottom: 20px;width: 49%;}
#archive .articles .imgtxt .img {overflow: hidden;flex-basis: 100%;height: 180px;}
#archive .articles .imgtxt .img .link {position: relative;overflow: hidden;}
#archive .articles .imgtxt .img img {transition: 1s all;width: 100%;height: 100%;object-fit: cover;}
#archive .articles .imgtxt .img img:hover {transform: scale(1.2, 1.2);transition: 1s all;}

/*-------news-single-------*/
#single .date{display: inline; font-size: 12px;}
#single .news .articles {margin-top: 3%;}
#single .news .articles{display: block;width:90%;background-color: #fff; margin: 0 auto; max-width: 700px;}
#single .news .articles .card {width: 100%;}
#single .news .articles .imgtxt .img {padding-top: 60%; margin-bottom: 25px;}
#single .news .articles h1 {font-size: 23px; line-height: 1.5; font-weight: bold; margin:0 0 10px 0; text-align: left;}
#single .news .articles .imgtxt h2 {font-size: 20px;margin: 40px 0 20px 0;padding: 2%;background-color: #f7f7f7;color: #333;border-left: 9px solid #a46bca;}
#single .news .articles .imgtxt h3 {font-size: 18px;margin-bottom: 15px;padding: 1%;margin: 40px 0 20px 0;font-weight: bold;line-height: 1.8;}
#single .news .articles .imgtxt ul {list-style: inherit;padding-left: 7%;margin-bottom: 5%;}
#single .news .articles .imgtxt ol {list-style: decimal;padding-left: 7%;margin-bottom: 5%;}
#single .news .articles .imgtxt li {font-size: 16px;line-height: 1.8;margin-bottom: 1%;}
#single .news .articles .imgtxt p {margin-bottom: 30px;line-height: 2;}
#single .news .articles .imgtxt a {color: cornflowerblue;}
#single .news .articles .imgtxt ul,
#single .news .articles .imgtxt ol {background-color: #f8f9ff;border: dashed 1px #4865b2;padding-top: 40px;padding-bottom: 36px;padding-right: 10px;}
#single .news .articles .imgtxt figure {width: 100%;}
#single .news .articles .imgtxt figure ul {border: none;background-color: #fff;padding: 0;}
#single .news .articles .imgtxt .pre {font-size: 16px;padding: 20px;background-color: #fafafa;outline: 1px solid #f0f0f0;border-color: #f0f0f0;margin: 15px 0 60px 0;}
#single .news .articles .imgtxt .point {margin-bottom: 15px;border: 3px solid #830000;padding: 15px;}
#single .news .articles .imgtxt table tr:last-child td:last-child {border-radius: 0 0 5px 0;}
#single .news .articles table { width: 100%; border-collapse: collapse; }
#single .news .articles th,#single .news .articles td { padding: 12px 15px; border: 1px solid #ddd; text-align: left; border:1px solid #c8c8c8!important;}
#single .news .articles th { background-color: #f4f4f4; }
#single .news .articles tr:nth-child(even) { background-color: #f9f9f9; }
#single .news .articles tr:hover { background-color: #f1f1f1; }

#single .back-top {text-align: center;}
/* 背景色の指定がなく、白文字のボタンが見えない状態だったため背景を追加 */
#single .back-top a {display: inline-block;padding: 10px 20px;background-color: #a46bca;color: #fff;border-radius: 4px;}
/* 画像クレジット */
.wp-block-image figcaption {text-align: center;}
/* 引用 */
.wp-block-quote {background-color: #f7f7f7;margin: 0;padding: 20px;}
/* 関連記事 */
#single .post-connection {margin-bottom: 30px;background-color: #eaedf2;text-align: center;padding: 10px 0;font-weight: bold;}
#single .related-post {flex-wrap: wrap;display: flex;justify-content: space-between;}
#single .related-post .card {width: 31% !important;padding: 0;box-shadow: 0 2px 4px #00000026;}
#single .related-post p {margin: 0 !important;}
#single .related-post a {font-weight: normal;color: #333 !important;}

/*サイドバー
--------------*/
aside {width: 30%;}
aside p {font-size: 14px;}
aside a {color: #4865b2;}
aside h4 {margin: 2% 0;text-align: center;font-size: 16px;font-weight: bold;}
aside h4::after {content: " ";border: solid 1px #a46bca;display: block;width: 55px;margin: 15px auto;}
aside li {list-style: none;font-size: 14px;margin-bottom: 10px;}
aside .card {margin-bottom: 8%;background-color: #fff;}
aside .card .txt {padding: 3% 5%;}
aside .plofile {padding-top: 10%;}
aside .plofile .img {background-image: url(../img/profile_icon.png);border-radius: 50%;padding-top: 50% !important;margin: 0 auto;width: 50%;}
aside .plofile .sns {text-align: right;margin: 2% 0;}
aside .plofile .sns a {color: #4865b2;font-weight: bold;}
aside .plofile .ranking {display: flex;margin-bottom: 10%;}
aside .plofile .ranking a {width: 88px;height: 31px;display: block;padding: 5% 0;margin-right: 2%;}
.blogmura-blogparts {margin-top: 5%;overflow-x: hidden;}
.blogmura-blogparts img {height: 0;}
.blogmura-blogparts iframe {width: 100%;}
aside .search {padding: 8% 3%;}
aside .search form {position: relative;}
aside .search form input {height: 60px;background: #f5f5f5;border: 1px solid #ebebeb;width: 100%;}
aside .search form span {position: absolute;right: 5%;top: 50%;transform: translateY(-50%);-webkit-transform: translateY(-50%);}
aside .search form span i {font-size: 20px;}
aside .popular {padding: 3%;}
aside .archive,
aside .report {background-color: #fff;margin-bottom: 8%;padding: 3%;}
aside .report .cards .card {margin-bottom: 1%;}
aside .report .cards .card .q h5 {position: relative;}
aside .report .cards .card .q h5:hover {opacity: 0.5;}
aside .report .cards .card .a {position: relative;display: none;}
aside .report .cards .card .a li {position: relative;}
/*-------------------------------飲めるお店・買えるお店-------------------------------*/
.aside p {font-size: 14px;letter-spacing: 3px;padding-bottom: 3px;border-bottom: 1px solid #d3b5e1;}
.aside a {color: #333;}
.aside li {padding: 12px 0 10px 10px;border-bottom: 1px dotted #d3b5e1;background: url(../images/arrow.png) no-repeat right 18px;font-size: 14px;}

#restaurant main .container {padding: 5% 5% 10% 5%;width: 85%;margin: 0 0 0 auto;font-family: serif;}
#restaurant .container .ttl {text-align: center;margin-bottom: 5%;}
#restaurant .container .ttl h1::after {content: " ";border: solid 1px #a563c3;display: block;width: 55px;margin: 15px auto;}
/* 都道府県ページの導入文（h1のすぐ下）。何のページかを1行で伝えるために追加 */
#restaurant .container .ttl .pref-lead {max-width: 640px;margin: 0 auto;font-size: 14px;line-height: 1.8;}
#restaurant .container .cards {margin-bottom: 5%;}
#restaurant .container .cards .card {width: 31%;display: inline-block;margin: 0 2% 10% 0;vertical-align: top;/* box-shadow: 0 0 10px rgba(0,0,0,.3); */}
#restaurant .container .cards .card:nth-of-type(3n) {margin-right: 0 !important;}
#restaurant .container .cards .card .img {overflow: hidden;flex-basis: 100%;height: 160px;}
#restaurant .container .cards .card .img .link {position: relative;overflow: hidden;}
#restaurant .container .cards .card .img img {transition: 1s all;width: 100%;height: 100%;object-fit: cover;}
#restaurant .container .cards .card .img img:hover {transform: scale(1.2, 1.2);transition: 1s all;}
#restaurant .container .cards .card a:hover {opacity: 1;color: #204aa4;}
#restaurant .container .cards .card .txt h2 {font-size: 16px;font-weight: bold;margin: 15px 0;}
#restaurant .container .cards .card .txt p {line-height: 1.6;}
#restaurant .container .cards .card .txt dl {display: flex;width: 100%;margin: 1% 0 2% 0;}
#restaurant .container .cards .card .txt dl dt {width: 70px;font-weight: bold;font-size: 12px;}
#restaurant .container .cards .card .txt dl dt i {padding-right: 5px;}
#restaurant .container .cards .card .txt dl dd {margin: 0px;font-size: 12px;flex: 1;}
#restaurant .container .cards .card .txt .address {margin-bottom: 10px;}
#restaurant .container .aside {width: 20%;}
#restaurant-single .container {padding: 5% 5% 10% 5%;width: 85%;margin: 0 0 0 auto;}
#restaurant-single .container .MainImg {margin-bottom: 25px;}
#restaurant-single .container .MainImg img {height: 300px;width: 100%;object-fit: cover;}
#restaurant-single .container .txt .name {margin-bottom: 20px;}
#restaurant-single .container .txt .site {border-top: 1px solid #cccaca;border-bottom: 1px solid #cccaca;padding: 13px 0;margin-bottom: 55px;}
#restaurant-single .container .txt .site ul li {display: inline-block;font-family: sans-serif;font-size: 12px;margin-right: 10px;color: #b2b2b2;}
#restaurant-single .container .txt .site ul li i {padding-right: 2px;color: #b2b2b2;}
#restaurant-single .container .txt .description {margin-bottom: 20px;}
#restaurant-single .container .txt .ttl {text-align: center;}
#restaurant-single .container .txt h2 {margin: 0 0 30px 0;}
#restaurant-single .container .txt p {margin-bottom: 10px; font-family: sans-serif;}
#restaurant-single .container .txt a{color: #337ab7;}
#restaurant-single .container .txt .info {padding: 20px 0;}
#restaurant-single .container .txt dl {max-width: 800px;margin: 0 auto;font-family: sans-serif;display: flex;border-bottom: 1px solid #cccaca;padding: 18px 0;}
#restaurant-single .container .txt dl dt {width: 80px;font-weight: bold;}
#restaurant-single .container .txt dl dd {width: 70%;flex: 1;}
#restaurant-single .container .txt .imges {padding: 10px 0 20px 0;max-width: 800px;margin: 0 auto;}
#restaurant-single .container .txt .imges .inner .img {width: 31%;display: inline-block;margin: 0 2% 2% 0;height: 190px;}
#restaurant-single .container .txt .imges .inner .img:nth-of-type(3n) {margin-right: 0 !important;}
#restaurant-single .container .txt .imges .inner .img img {width: 100%;height: 100%;object-fit: cover;}
#restaurant-single .container .txt .site .tabelog:hover {color: #ffaa01;opacity: 1;}
#restaurant-single .container .txt .site .gurunavi:hover {color: #e51e00;opacity: 1;}
#restaurant-single .container .txt .site .facebook:hover {color: #3b5998;opacity: 1;}
#restaurant-single .container .txt .site .instagram:hover {color: #cf2e92;opacity: 1;}
#restaurant-single .container .txt .site .twitter:hover {color: #1da1f2;opacity: 1;}
#restaurant-single .container .txt .site .line:hover {color: #00b900;opacity: 1;}
#restaurant-single .container .txt .map {margin: 50px 0 30px 0;}
#restaurant-single .container .txt .map iframe {width: 100%;}
#restaurant-single .container .txt .map {margin: 50px 0 30px 0;}
#restaurant-single .container .back {margin-bottom: 20px;}
#restaurant-single .container .back a {color: #204aa4;margin-bottom: 15px;display: block;}
.acf-map {width: 100%;height: 400px;}
.acf-map img {max-width: inherit !important;}
/* モーダル画像 */
#restaurant-single .close-btn {color: #fff;font-size: 40px;position: absolute;right: 0px;top: 0;z-index: 1;width: 100%;height: 100vh;}
#restaurant-single .close-btn a {color: #fff;text-decoration: none;position: absolute;right: 10px;top: 10px;}

/*------------------------------- ワインにあるレシピ-------------------------------*/
#archive-recipe .container {display: flex;justify-content: space-between;flex-direction: row-reverse;}
#archive-recipe .cards {width: 75%;font-family: a-otf-ud-shin-maru-go-pr6n, sans-serif;}
#archive-recipe .restaurant {width: 85%;margin: 0 0 0 auto;padding: 10% 2%;}
#archive-recipe .restaurant .ttl {text-align: center;margin-bottom: 5%;}
#archive-recipe .restaurant .ttl h1 {margin-bottom: 3%;}
#archive-recipe .restaurant article {margin-bottom: 5%;}
#archive-recipe .restaurant article a {display: flex;}
#archive-recipe .restaurant article a .img {width: 30%;padding-right: 3%;}
#archive-recipe .restaurant article a .txt {width: 70%;}
#archive-recipe .restaurant h2 {margin-bottom: 4%;font-weight: bold;font-size: 16px;}
#archive-recipe .restaurant p {font-size: 14px;}
.aside p {font-size: 14px;letter-spacing: 3px;padding-bottom: 3px;border-bottom: 1px solid #d3b5e1;}
.aside a {color: #333;}
.aside li {padding: 12px 0 10px 10px;border-bottom: 1px dotted #d3b5e1;background: url(../images/arrow.png) no-repeat right 18px;font-size: 14px;}

/*-------single-recipe------*/
#single-recipe main {font-family: a-otf-ud-shin-maru-go-pr6n, sans-serif;}
#single-recipe .txt {width: 85%;margin: 0 0 0 auto;padding: 5% 10%;}
#single-recipe .txt h1 {font-size: 30px;margin-bottom: 5%;font-weight: bold;}
#single-recipe .txt h2 {font-size: 25px;margin-bottom: 5%;font-weight: bold;padding: 2%;border-left: 5px solid #a563c3;margin-bottom: 3%;background-color: #f7f7f7;}
#single-recipe .txt h3 {font-size: 20px;line-height: 2;margin-bottom: 2%;font-weight: bold;}
#single-recipe .txt h4 {font-size: 18px;line-height: 2;margin-bottom: 2%;font-weight: bold;}
#single-recipe .txt ul {list-style: inherit;padding-left: 7%;margin-bottom: 5%;}
#single-recipe .txt ol {list-style: decimal;padding-left: 7%;margin-bottom: 5%;}
#single-recipe .txt li {font-size: 18px;line-height: 1.8;margin-bottom: 1%;}
#single-recipe .txt img {margin-bottom: 5%;}
#single-recipe .txt p {margin-bottom: 5%;line-height: 2;}
#single-recipe .txt p a {color: cornflowerblue;}
#single-recipe .txt .back-top {text-align: center;}

/*-------------------------------メディア掲載情報-------------------------------*/
#archive-publication .ttl h1 {font-size: 30px;text-align: center;margin: 25px 0;}
#archive-publication .ttl h1::after {content: " ";border: solid 1px #664994;display: block;width: 55px;margin: 15px auto;}
#archive-publication article {margin-bottom: 25px;}
#archive-publication p a {color: #337ab7;}
#archive-publication h2{font-size: 16px;}


/* === FAQ accordion === */
.qa .container{width: 85%;margin: 0 0 0 auto;}
.faq-acc{padding: 40px 0 90px 0;}
.faq-acc-item{width: 96%; margin: 0 auto; border:1px solid #e0e0e0;background:#fafafa;margin-bottom:1rem;}
.faq-acc-btn{display:flex;align-items:center;gap:.5em;width:100%;padding:1rem 1.25rem;background:none;border:none;text-align:left;font-weight:600;cursor:pointer;}
.faq-acc-btn:after{content:'▼';margin-left:auto;transition:.3s transform;}
.faq-acc-btn[aria-expanded=true]:after{transform:rotate(-180deg);}
.faq-acc-content{max-height:0;overflow:hidden;padding:0 1.25rem 0 3rem;}
.faq-acc-content.show{max-height:500px;padding:0 1.25rem 1rem 3rem;transition: 0.5s;}
.faq-acc-content p{margin:0;}



/*-------------------------------レスポンシブ-------------------------------*/
@media screen and (max-width: 768px) {
  p{font-size: 16px;}
  .sp {display: block !important;}
  .pc {display: none !important;}
  .ttl h1 {font-size: 6vw;}
  .ttl h2 {font-size: 6vw;}
  .breadcrumbs {width: 100%;margin: 0 auto 20px auto;}
  /* 話題性 */
  .snsinfo .container {width: 100%;margin: 0 auto;}
  .snsinfo .container .cards .card {width: 48%;}
  /* モーダル */
  .snsinfo .container {width: 100%;margin: 0 auto;}
  .snsinfo .container .cards .card {width: 48%;}.bigimg {width: 85%;}

  .top_news {margin:0 auto;}
  .top_news .container {width:100%;margin:0 auto;}
  .top_news .articles {width: 100%;}
  .sale {width:90%;margin:0 auto;}
  /*------------------------------再販のお知らせ-------------------------------*/
  .resale {width: 100%;margin: 0;padding: 10% 0 0 0;}
  .resale2 {text-align: center;margin: 15px 0 0 0;}
  .resale2 a {color: #ff4500 !important;width: 100% !important;}
  #archive main .container {width: 100%;display: block;}
  #archive .articles {width: 100%;}
  #archive .articles .ttl .date-cat {display: block;}
  aside {width: 100%;}
  /*-------------------------------news-------------------------------*/
  .news {width: 100%;margin: 0;padding: 5%;}
  .news .ttl {text-align: center;margin: 10% 0;}
  .news article {margin-bottom: 8%;}
  .news dl {display: inherit;}
  .news dl dt {margin-bottom: 5%;}
  .news dl dd {margin: 0;}
  .news dl dd h3 {margin-bottom: 3%;}
  /*-------------------------------news-single-------------------------------*/
  #single .news{padding:0px 0 100px 0; color: #333;}
  #single .news .container {max-width: 700px;margin: 40px auto 0 auto;}
  #single .news .container .articles {display: block;}
  #single .news .container .articles article {width: 100%;display: block; margin-top: 0;}
  #single .news .container .articles article .ttl {padding: 0;}
  #single .news .container .articles article .ttl .date {display: inline;font-size: 13px;font-weight: bold;padding: 0; color: #727271;}
  #single .news .container article i{color:#727271 ;}
  #single .news .container article .imgtxt{width: 100%;}
  #single .news .container article .img {padding-top: 66%;margin:0 auto 20px auto;}
  #single .news .container article {width: 100%;height: fit-content;}
  #single .news .container article h1 {font-size: 20px;}
  #single .news .container article h2 {font-size: 18px; margin: 5% 0 3% 0;padding: 2%;background-color: #f7f7f7;}
  #single .news .container article h3{font-size: 15px;}
  #single .news .container article h4{font-size: 15px;}
  #single .news .container article h5{font-size: 15px;}
  #single .news .container article p{font-size: 13px;}
  /* 目次要素とのスペース */
  #single .news .container article h2:first-of-type {margin-top: 60px;}
  #single .news .container article h3 {text-align: left;border-bottom: 1px solid #4a4a4a;width: 100%;margin: 40px 0 5px;}
  #single .news .container article h4 {font-size: 16px;line-height: 2;padding: 5px 1%;font-weight: bold;margin: 0;text-align: left;background-color: #f7f7f7;}
  #single .news .container article h4:before {content: "✓";}
  #single .news .container article h4::after {content: none;border: inherit;}
  #single .news .container article ul {list-style: inherit;padding-left: 7%;margin:15px 0;}
  #single .news .container article ol {list-style: decimal;padding-left: 7%;margin:15px 0;}
  #single .news .container article li {font-size: 14px;line-height: 1.8;margin-bottom:5px;}
  #single .news .container article img {margin: 20px 0;border-radius: 1.5%;border: 2px solid #e9e9e9;}
  #single .news .container article img.portrait {width: 50%;margin: 0;}
  #single .news .container article img.landscape {width: 100%;}
  
  #single .news .container article p {margin-bottom: 30px;line-height: 2;}
  #single .news .container article blockquote {background-color: #f5f5f5;margin: 0;padding: 20px;}
  #single .news .container article blockquote p {margin-bottom: 20px;}
  #single .news .container article .credit p {font-size: 13px;text-align: center;color: #939090;letter-spacing: 0.05em;margin: 0 !important;}
  #single .news .container article a {color: #7d9cd4;}
  #single .news .container article .back-top {text-align: center;}
  #single .news .container article ul,
  #single .news article ol {padding-right: 10px;}
  #single .news .container article figure ul {border: none;background-color: #fff;padding: 0;}
  
  .wp-block-image figcaption {color: #939090; margin:-20px 0 0 0!important;}
  /* classの付与 */
  #single .news .imgtxt .pre {border: none;padding: 20px 10px 20px 40px;background-color: #fafafa;outline: 1px solid #f0f0f0;border-color: #f0f0f0;margin: 15px 0 60px 0;}
  #single .news .imgtxt .pre p {padding: 15px 0;margin-bottom: 0;}
  
  /* iframe */
  #single .img {width:100%;overflow: hidden; margin: 0 auto;}
  #single .img iframe{width: 80%; margin: 0 auto;display: block; object-fit: cover;border: none; height: 420px;}
  
  /* タグ */
  .tags {font-weight: bold;}
  
  #single .post-connection {text-align: left;border-bottom: 1px solid #4a4a4a;width: 100%;padding: 0 0 5px 0;margin: 40px 0 20px 0 !important;}
  #single .post-connection::before {content: "" !important;}
  #single .related-post article {width: 100% !important;padding: 0;display: flex !important;margin-bottom: 30px;}
  #single .related-post article .imgtxt {width: 30% !important;margin: 0 !important;}
  #single .related-post article .imgtxt .img {margin: 0 !important;width: 100%;}
  #single .related-post article .ttl {padding-left: 20px !important;}
  #single .related-post h2 {padding: 10px 0 !important;font-size: 15px !important;background-color: inherit !important;border: none !important;font-weight: bold;margin-top: 0 !important ;}
  #single .related-post .title a {font-size: 15px;}
  #single .related-post p {margin: 0 !important; font-size: 15px}
  #single .related-post a {font-weight: normal;color: #333 !important;}

  /*-------------------------------concept-------------------------------*/
  .concept .imgtxt .txt .ttl {padding-bottom: 5%;}
  .concept .imgtxt {width: 100%;display: inherit;}
  .concept .imgtxt .txt {width: 100%; padding-bottom: 50px;}
  .concept .imgtxt .txt .container {width: 90%;}
  .concept .imgtxt .txt h3 {font-size: 20px;}
  .concept .imgtxt .txt .h3 {font-size: 90px;top: 17%;left: 0%;margin-bottom: 10%;}
  .concept .imgtxt .txt p {margin-bottom: 7%;line-height: 1.8;}

  /*-------------------------------story-------------------------------*/
  .story .container {margin: 0 auto;width: 95%;}
  .story .ttl {padding-bottom: 5%;}
  .story .txt {width: 100%;}
  .story .txt h3 {font-size: 6vw;}
  .story .txt h3 span {font-size: 4.5vw;}
  .story .txt .h3 {top: -8%;left: -2%;font-size: 17vw;}
  .story .txt p {font-size: 4vw;margin-bottom: 5%;line-height: 1.8;}
  .story .txt .pur {bottom: -6%;font-size: 6vw;}

  .gift {width: 100%;margin: 0 auto;padding:5% 0;}
  .gift .imgtxt {display: block;}
  .gift .imgtxt .txt {width: 100%;margin: 0 auto;}
  .gift .imgtxt .txt .inner-txt {width: 100%;position: static;top: 0;left: 0%;transform: translateY(0%) translateX(0%);-webkit-transform: translateY(0%) translateX(0%);}
  .gift .imgtxt .txt .gift-ttl {margin-bottom: 0%;}
  .gift .imgtxt .txt .gift-ttl h2 {font-size: 5vw;}
  .gift .imgtxt .txt .inner-txt p {margin-bottom: 8%;text-align: center;}
  .gift .items .cards .card {width: 49%;margin: 0 2% 30px 0;}
  .gift .items .cards .card:nth-of-type(3n) {margin-right: 2% !important;}
  .gift .items .cards .card:nth-of-type(2n) {margin-right: 0% !important;}
  .product {width: 95%;margin: 0 auto;}
  .product .ttl {padding-top:0%;margin-bottom: 5%;}
  .product .imgtxt {display: inherit;}
  .product .imgtxt .img {width: 100%;}
  .sparkonly .imgtxt .img {padding-top: 0;}
  .product .imgtxt .txt {width: 100%;padding: 1% 0;}
  .product .imgtxt .txt h3 {font-size:18px; margin: 8px 0; text-align: center;}
  .product .imgtxt .txt .tax {font-size: 15px; margin-bottom: 10px;text-align: center;}
  .product .imgtxt .txt .tax::after {width: 100%; position: inherit; }
  .product .imgtxt .txt table {font-size: 2vh;line-height: 1.8;}
  .product .imgtxt .txt table td {padding-left: 3%; font-size: 13px;}
  .product .imgtxt .txt table th {font-size: 13px;}
  .product .news {font-size: 2.7vw;text-align: right;padding: 3%;}

  .contact {padding: 8% 0 15% 0;}
  .contact .container {width: 95%;margin: 0 auto;}
  .contact .ttl {margin-bottom: 10%;}
  .contact .txt {padding: 3% 0 0 0%;width: 95%;text-align: center;}
  .contact .txt .jp h3 {font-size: 6vw;margin-bottom: 3%;}
  .contact .txt .jp ul {text-align: left;}
  .contact .txt .jp li {font-size: 4vw;line-height: 1.8;}
  .contact .txt .make {margin: 0;width: 100%;}
  .contact .txt .jp,
  .contact .txt .make {width: 100%;margin: 0 auto 10% auto;}
  .contact .txt .i {display: none;}
  .contact .txt .w {display: none;}
  .contact .icons p {padding-left: 0%;}

  .voice {width: 95%;margin: 0 auto;}
  .voice .cards {display: block;}
  .voice .cards .card {width: 100%;}

  .gallary .container .cards {width: 100%;}
  .gallary .container .cards .card {width: 33.3%;height: 120px;margin-bottom: 0;}
  .qa .container {width: 96%;margin: 0 auto;}
  .Collabo { width: 96%; margin: 0 auto; padding-top: 0;}
  /*-------------------------------飲めるお店・買えるお店-------------------------------*/
  #restaurant-single .container .txt dl {font-size: 14px;}
  #restaurant-single .container .txt dl dd {line-height: 1.8;margin-left: 20px;}
  #restaurant main .container {width: 95%;margin: 0 auto;padding: 0;}
  #restaurant .container .ttl {padding-top: 15%;}
  #restaurant .container .cards .card {width: 100%;display: block;margin: 0 0 20px 0;border: 1px solid #e9e8e8;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);}
  #restaurant .container .cards .card .imgtxt .img {height: 200px;}
  #restaurant .container .cards .card .imgtxt .txt {padding: 15px;}
  #restaurant .container .cards .card .imgtxt .txt h2 {font-size: 16px;margin: 0 0 10px 0;}
  #restaurant .container .aside {width: 100%;}
  #restaurant-single .container {padding: 0;width: 95%;margin: 0 auto;}
  #restaurant-single .container .txt .site ul li {padding: 5px 0;font-size: 14px;}
  #restaurant-single .container .txt .imges .inner .img {width: 47%;height: 112px;}
  #restaurant-single .container .txt .imges .inner .img:nth-of-type(3n) {margin-right: 2% !important;}
  #restaurant-single .container .txt .imges .inner .img:nth-of-type(2n) {margin-right: 0 !important;}

  /*-------------------------------よくある質問-------------------------------*/
  #qa main .container {width: 100%;margin: 0 auto 0 auto;padding: 7% 2%;}
  /*-------------------------------footer-------------------------------*/
  footer {width: 100%;padding: 25px 0 110px 0;}
  footer .copy {margin: 0 auto;}
  /* footer .footer_menu {padding: 0;position: fixed;bottom: 0;left: 0;width: 100%;z-index: 10;background-color: #a47da5;} */
  /* footer .footer_menu ul {flex-wrap: wrap;width: 100%;}
  footer .footer_menu ul li {text-align: center;width: 25%;border-right: 1px solid #d9d9d9;border-top: 1px solid #d9d9d9;margin-bottom: 0;}
  footer .footer_menu ul li a {display: block;font-size: 14px;padding: 10px 0;height: 100%;} */
  .f-menu {width: 100%; margin: 0; position: fixed;bottom: 10px;left: 50%;transform: translateX(-50%);-webkit-transform: translateX(-50%);}
  .f-menu a{font-size: 12px; width: 90%; padding:15px 0;}
}

aside{margin:20px auto 0 auto;}
aside .cards .card{overflow: hidden; border: 1px solid #d7d7d7; border-radius: 10px;}
aside .cards .card .img{overflow: hidden; padding: 0!important; margin: 0!important;}
aside .cards .card .img img{transition: transform 0.3s ease, box-shadow 0.3s ease;}
aside .cards .card .img img:hover {transform: scale(1.05); box-shadow: 0 8px 16px rgba(0,0,0,0.2);}
aside .cards .card .txt{padding: 10px;}
aside table tr{font-size: 13px; color: #555;}
aside table tr th{text-align: left; padding-right: 10px; color: #666; font-weight: bold;}
aside .name{font-weight: bold; font-size: 18px; color: #222; margin-bottom: 5px;}
aside .big{font-size: 18px; color: #ff3952; font-weight: bold;}
.strikethrough{text-decoration: line-through; color: #999;}
aside .cards .card .txt p {margin: 5px 0!important;}
aside .cards .card .txt .button-container {margin-top: 10px;}
aside p a {font-size: 14px; color: #007bff; text-decoration: underline;}
aside p a:hover {color: #0056b3;}
aside .cards .card .txt a.button {display: block;padding: 10px 20px;margin: 10px auto;background-color: #d2a2da;color: #fff;text-decoration: none;border-radius: 5px;font-weight: bold;transition: background-color 0.3s ease;text-align: center;}
aside .cards .card .txt a.button:hover {background-color: #b06bbb;}


/* =========================================
   「紫ワインとは」ページへの導線ボタン
   既定の .btn-shine は左右余白が6em固定のため、
   文言が長いとスマホで横にはみ出す。専用に余白を狭める。
   ========================================= */
.btn-shine--about a {padding: 0.9em 2.2em; max-width: 100%; font-size: 15px;}

/* =========================================
   Responsive: Mobile
   ========================================= */
@media (max-width: 768px) {
	.btn-shine--about a {padding: 0.9em 1.6em; font-size: 14px;}
}

/* =========================================
   コラム（読み物記事）
   一覧・本文の基本デザインは #archive / #single のスタイルを流用し、
   ここでは足りない分だけを補う
   ========================================= */
#archive .main-ttl .archive-lead {max-width: 640px;margin: 20px auto 0;padding: 0 5%;font-size: 14px;line-height: 1.8;}
#archive .articles .ttl .excerpt {margin-top: 10px;font-size: 12px;line-height: 1.8;font-weight: normal;color: #555;}
#archive .no-post {width: 100%;padding: 40px 0;text-align: center;}
aside .column-cats {margin-bottom: 40px;}
aside .column-cats li {padding-bottom: 8px;border-bottom: 1px dotted #ccc;}
#single .news.column .breadcrumbs {width: 90%;max-width: 700px;margin: 0 auto 20px;}
#single .news.column .articles .ttl .cat {margin-left: 10px;}
#single .news.column .articles .imgtxt .img {padding-top: 0;margin-bottom: 25px;}
#single .news.column .articles .imgtxt .img img {width: 100%;height: auto;}
/* コラムは1段落1〜2文で書くため、お知らせ用の余白（30px）だと間延びする。
   段落の間隔を詰めつつ、行間より広く保って段落の切れ目が分かるようにする */
#single .news.column .articles .imgtxt p {margin-bottom: 16px;line-height: 1.9;}
#single .news.column .articles .imgtxt h2 {margin: 56px 0 24px 0;}
#single .news.column .articles .imgtxt h3 {margin: 40px 0 16px 0;}
#single .news.column .articles .imgtxt ul,
#single .news.column .articles .imgtxt ol {margin: 24px 0 32px 0;}
#single .news.column .articles table {margin: 24px 0 32px 0;}

/* =========================================
   Responsive: Mobile
   ========================================= */
@media (max-width: 768px) {
	#archive .main-ttl .archive-lead {font-size: 13px;text-align: left;}
	#archive .articles .ttl .excerpt {display: none;}
	#single .news.column .breadcrumbs {width: 90%;font-size: 12px;}
	#single .news.column .articles .ttl .cat {display: block;margin: 8px 0 0 0;}
	#single .news.column .articles .imgtxt p {margin-bottom: 14px;line-height: 1.85;}
	#single .news.column .articles .imgtxt h2 {margin: 40px 0 20px 0;}
}
