@charset "utf-8";
/* CSS Document */
.header_frame{
    height: calc(330vw / 19.2);
}

@media screen and (max-width:1400px) {
.header_frame {
  height: calc(308vw/14);
}
}

@media screen and (max-width:1200px) {
.header_frame {
    height: calc(267vw/11);
  }
}
.lpwrap img
	{
	max-width: 100%;
	vertical-align: bottom;
	}

.lpwrap h2 img
	{
	width: 100%;
	}
@media screen and (max-width:768px) {
.lpwrap img
	{
	max-width: 100%;
	vertical-align: bottom;
	}
}



@media screen and (max-width:768px) {
#wrapper
	{
	width: 100% !important;
	}

main
	{
	width: 100%;
	}
iframe
	{
	display: none;
	}
}

@media screen and (min-width:769px) {

#sp_header
	{
	display: none !important;
	}

	.globalMenuSp
	{
	display:none;
	}

	.search
	{
	display: none;
	}

	.footer_top
	{
	display: none !important;
	}

	footer
	{
	display: none;
	}

	center
	{
	display: none;
	}


}

.lpwrap{
    width:100%;
}

.lpwrap h3{
    font-size: calc(40 / 16 * 1rem);
    text-align: center;
    font-family: "toppan-bunkyu-midashi-go-std", sans-serif;
    font-weight: 900;
    font-style: normal;
    line-height:1;
}

.lpwrap h3 small{
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.lpwrap section{
    padding:80px 0;
}

.lpwrap section:nth-child(even){
    background-color:#fff5f7;
}

.lpwrap section:nth-child(odd){
    background-color:#761b44;
}

.lpmenu ul{
    max-width:980px;
    margin: 0 auto;
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
    text-align: center;
    line-height: 1.2em;
}

.lpmenu ul li:nth-child(-n+4){
    width:calc((100% - 60px)/4);
    margin-bottom:20px;
}

.lpmenu ul li:nth-child(n+5){
    width:calc((100% - 40px)/3);
}


.lpmenu ul li a{
    display: flex;
    position: relative;
    width:100%;
    height:105px;
    background-color:#fff;
    justify-content:center;
    align-items:center;
    border-radius:10px;
    text-decoration:none;
    font-size: calc(20 / 16 * 1rem);
    font-weight:bold;
    color:#761b44;
    line-height: 1.4em;
    padding: 0 0 10px;
}
.pc_only{
    display: block;
}
.sp_only{
    display: none;
}

.lpmenu ul li a:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-bottom: solid 2px #761b44;
  border-right: solid 2px #761b44;
  transform: rotate(45deg);
  position: absolute;
  left: 0;
    right:0;
  bottom: 17%;
  margin: auto;
}

@media screen and (max-width:768px){
.lpwrap {
  overflow-x: hidden;
}
.lpwrap h3{
    font-size: calc(40 / 22 * 1rem);
    text-align: center;
    font-family: "toppan-bunkyu-midashi-go-std", sans-serif;
    font-weight: 900;
    font-style: normal;
    line-height:1;
}
.lpwrap section{
    padding:40px 0;
}
.lpmenu ul {
  max-width: 980px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 4%;
}
    
.lpmenu ul li:nth-child(-n+6){
    width:calc((100% - 10px)/2);
    margin-bottom:10px;
}

.lpmenu ul li:nth-child(n+7){
    width:calc(100%);
}
    
.lpmenu ul li a{
    display: flex;
    position: relative;
    width: 100%;
    height: 85px;
    background-color: #fff;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    text-decoration: none;
    font-size: calc(20 / 22 * 1rem);
    font-weight: bold;
    color: #761b44;
    text-align: center;
}
.pc_only{
    display: none;
}
.sp_only{
    display: block;
}
}

.ranking ul{
    max-width:1000px;
    margin: 30px auto;
}

.ranking .slick-dots{
    margin:40px auto 0;
}


.ranking ul li a{
    display: block;
    position: relative;
    max-width:100%;
    background-color:#fff;
    padding:45px 20px 45px;
    margin:35px 10px 0;
    text-decoration:none;
}

.ranking ul li a img{
    height: 190px;
    margin: auto;
    display: block;
    object-fit: contain;
}

.ranking ul li a::before{
    display:flex;
    justify-content: center;
    align-items: center;
    font-weight:bold;
    font-size: calc(28 / 16 * 1rem);
    text-align: center;
    width:70px;
    height:70px;
    position: absolute;
    background-color:#761b44;
    top:-35px;
    left:0;
    right:0;
    margin: 0 auto;
    border-radius:50%;
    color:#fff;
    letter-spacing:0.1em;
}
.ranking ul li a.rank1::before{
    content:"1位";
    background-color:#d0ac38;
}
.ranking ul li a.rank2::before{
    content:"2位";
    background-color:#9b9b9b;
}
.ranking ul li a.rank3::before{
    content:"3位";
    background-color:#d07838;
}
.ranking ul li a.rank4::before{
    content:"4位";
}
.ranking ul li a.rank5::before{
    content:"5位";
}
.ranking ul li a.rank5::before{
    content:"5位";
}
.ranking ul li a.rank6::before{
    content:"6位";
}
.ranking ul li a.rank7::before{
    content:"7位";
}
.ranking ul li a.rank8::before{
    content:"8位";
}
.ranking ul li a.rank9::before{
    content:"9位";
}
.ranking ul li a.rank10::before{
    content:"10位";
}

.ranking ul li a p,.ranking ul li a span,.ranking ul li a em,.ranking ul li a small{
    font-size: calc(14 / 16 * 1rem);
    font-weight: 400;
}

.ranking ul li a div{
display: none;
    width:calc(100% - 40px);
    position:absolute;
    bottom:20px;
    left:0;
    right:0;
    margin:auto;
}

.ranking ul li a p{
    line-height:1.57;
    letter-spacing:0.1em;
    margin:15px 0;
}

.ranking ul li a span{
    width:100%;
    padding:5px 0;
    margin:10px 0;
    display:block;
    border:1px solid #ff0000;
    color:#ff0000;
    text-align: center;
    font-weight:bold;
}

.ranking ul li a small{
    display:block;
    color:#999999;
    text-align: center;
}

.ranking ul li a em{
    display: block;
    color:#ff0000;
    font-style: normal;
    text-align: center;
    font-weight:bold;
}

.ranking .slick-dots li button::before {
  width: 10px !important;
  height: 10px !important;
  background-color: #2d1c0c;
  border-radius: 50%;
}

.ranking .slick-prev{
    background:url("https://ic4-a.wowma.net/mi/w/1280/h/1280/q/90/bcimg1-a.wowma.net/plus/u45288558/pc/lp/2024_wine/css/../images/prev_arrow.png") center center no-repeat!important;
    left: -50px !important;
}

.ranking .slick-next{
    background:url("https://ic4-a.wowma.net/mi/w/1280/h/1280/q/90/bcimg1-a.wowma.net/plus/u45288558/pc/lp/2024_wine/css/../images/next_arrow.png") center center no-repeat!important;
    right:-50px !important;
}

@media screen and (max-width:768px){
    .ranking ul li a::before{
    display:flex;
    justify-content: center;
    align-items: center;
    font-weight:bold;
    font-size: calc(28 / 22 * 1rem);
    text-align: center;
    width:70px;
    height:70px;
    position: absolute;
    background-color:#761b44;
    top:-35px;
    left:0;
    right:0;
    margin: 0 auto;
    border-radius:50%;
    color:#fff;
    letter-spacing:0.1em;
}
    .ranking ul li a {
  display: block;
  position: relative;
  max-width: 100%;
  background-color: #fff;
  padding: 45px 20px 45px;
  margin: 35px 10px 0;
  text-decoration: none;
}
    .ranking ul li a img{
    height: calc(128vw / 3.75);
    margin: auto;
    display: block;
    object-fit: contain;
}
    
    .ranking ul li a p,.ranking ul li a span,.ranking ul li a em,.ranking ul li a small{
    font-size: calc(14 / 22 * 1rem);
    font-weight: 400;
}
    
    .ranking .slick-prev {
  background: url("https://ic4-a.wowma.net/mi/w/1280/h/1280/q/90/bcimg1-a.wowma.net/plus/u45288558/pc/lp/2024_wine/css/../images/prev_arrow.png") center center no-repeat !important;
  left: -3% !important;
  background-size: 24% !important;
}
    
.ranking .slick-next{
    background:url("https://ic4-a.wowma.net/mi/w/1280/h/1280/q/90/bcimg1-a.wowma.net/plus/u45288558/pc/lp/2024_wine/css/../images/next_arrow.png") center center no-repeat!important;
    right: -3% !important;
  background-size: 24% !important;
    z-index:99;
}
}


.itemList{
    display:flex;
    flex-wrap: wrap;
    max-width:980px;
    padding-bottom:80px;
    border-bottom:1px solid #e4c9d3;
    margin: 20px auto 80px;
    justify-content: space-between;
}

.itemList::after{
    content:"";
    display:block;
    width:calc((100% - 40px)/3);
}


.itemList li a{
    display: block;
    position: relative;
    max-width:100%;
    background-color:#fff;
    padding:20px 20px 20px;
    margin:35px 0 0;
    text-decoration:none;
}
.itemList li a img{
    height: 270px;
    margin: auto;
    display: block;
    object-fit: contain;
}

.itemList li a p,.itemList li a span,.itemList li a em,.itemList li a small{
    font-size: calc(14 / 16 * 1rem);
    font-weight: 400;
}

.itemList li a div{
display: none;
    width:calc(100% - 40px);
    position:absolute;
    bottom:20px;
    left:0;
    right:0;
    margin:auto;
}

.itemList li a div .btn{
    max-width:100%;
    padding:20px 0;
    margin-bottom:0;
    background-color:#d11f5d;
    color:#fff;
    font-size: calc(18 / 16 * 1rem);
    text-align: center;
    font-weight:bold;
    border-radius: 50px;
    line-height: 1;
}

.itemList li{
    width:calc((100% - 40px)/3);
}

.itemList li a p{
    line-height:1.57;
    letter-spacing:0.1em;
    margin:15px 0;
}

.itemList li a .comment{
    color:#761b44;
    font-weight:bold;
    position: relative;
    border-bottom:1px solid #761b44;
    padding-bottom:15px;
}

.itemList li a .comment::before {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  width: 9px;
  height: 9px;
  box-sizing: border-box;
  background-color: #ffffff; 
  rotate: 135deg;
  translate: -50%;
}
.itemList li a .comment::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  width: 9px;
  height: 9px;
  box-sizing: border-box;
  border: 1px solid;
  border-color: #761b44 #761b44 transparent transparent;
  background-color: #ffffff;
  rotate: 135deg;
  translate: -50%;
}

.itemList li a span{
    width:100%;
    padding:5px 0;
    margin:10px 0;
    display:block;
    border:1px solid #ff0000;
    color:#ff0000;
    text-align: center;
    font-weight:bold;
}

.itemList li a small{
    display:block;
    color:#999999;
    text-align: center;
}

.itemList li a em{
    display: block;
    color:#ff0000;
    font-style: normal;
    text-align: center;
    font-weight:bold;
}



@media screen and (max-width:768px){
.itemList{
    padding:0 4% 40px;
    margin: 20px auto 40px;
}
    
.itemList li {
  width: calc((100% - 10px)/2);
}
.itemList li a p,.itemList li a span,.itemList li a em,.itemList li a small{
    font-size: calc(14 / 22 * 1rem);
    font-weight: 400;
}
.itemList li a {
  display: block;
  position: relative;
  max-width: 100%;
  background-color: #fff;
  padding: 20px 20px 20px;
  margin: 10px 0 0;
  text-decoration: none;
}
    .itemList li a img{
    height: calc(127.5vw / 3.75);
    margin: auto;
    display: block;
    object-fit: contain;
}
    .itemList li a div {
  width: calc(100% - 40px);
  position: absolute;
  bottom: 0px;
  left: 0;
  right: 0;
  margin: auto;
}
    
    
.itemList li a div .btn {
  max-width: 100%;
  padding: 10px 0;
  margin-bottom: 15px;
  background-color: #d11f5d;
  color: #fff;
  font-size: calc(18 / 22 * 1rem);
  text-align: center;
  font-weight: bold;
  border-radius: 50px;
  line-height: 1;
}
}


.lpwrap section:last-child{
    background-color:#fff;
}

.lpwrap section:last-child a{
    position: relative;
    max-width:480px;
    margin:0 auto;
    padding:15px 0;
    display:block;
    color:#fff;
    text-align: center;
    background-color:#333333;
    border-radius:10px;
    text-decoration: none;
    font-weight:400;
    font-size: calc(16 / 16 * 1rem);
}
.lpwrap section:last-child a::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 0;
  right:20px;
  bottom: 0;
  margin: auto;
}

@media screen and (max-width:768px){
    .emb {
  display: flex;
  background: #fff;
}
    
    .lpwrap section:last-child a{
        width:92%;
    }
}