@charset "utf-8";
/* CSS Document */


/*////////共通////////*/
.btn_topage {
	/*padding: 7px;*/
	margin-bottom: 0;
}
.section {
    background-color: #f7ebd9;
    margin: 0 calc(50% - 50vw);
    padding: 80px calc(50vw - 50% + 8px);
    width: 100vw;
}
.section:nth-of-type(2n) {
    background-color: #FFFFFF;
}

.section02 {
	margin: 70px auto;
}


.heading2 {
	border-left: 4px solid #730202;
	margin-top: 0;
}

.heading2_02 {
	border-left: 4px solid #2a3a6f;
}

.heading3_underline {
	border-bottom: 1px solid #730202;
}
.heading2_condition {
	text-align: center;
    font-weight: bold;
    margin-bottom: 2rem;
    line-height: 1.5;
	margin-top: 0;
}

.head4 {
	font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.8;
    margin: 3rem 0 0;
}
.product_img {
    border:1px solid #F2F2F2;
}


/*アンカー*/
.anchor_3_area {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    justify-content: space-around;
}
.anchor_fair, .anchor_fair02 {
	font-size: 1.5rem;
    position: relative;
    display: block;
    width: 30%;
    margin-bottom: 40px;
    padding: 10px 30px 10px 10px;
    vertical-align: middle;
    text-decoration: none;
    transition: 1.0s;
    border-bottom: 1px solid;
    text-align: center;
}
.anchor_fair:link, .anchor_fair02:link {
    text-decoration: none;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
	color: inherit;
}
.anchor_fair:nth-of-type(n+4) {
	width: 40%;
}

.anchor_fair:nth-child(-n+3)::after {
	right: -215px;
}
.anchor_fair:hover, .anchor_fair:active, .anchor_fair02:hover, .anchor_fair:active {
	color: #222;
    text-decoration: none;
    background-color: #EFE9E6;
}

.anchor_fair02 {
	width: 40%;
}
.anchor_fair02::after {
	right: -300px;
}

.anchor_3, .anchor_3:link {
	background-color: #e0e4f1;
}
.anchor_3:hover, .anchor_3:active {
    color: #222;
    text-decoration: none;
}

.item_head {
	font-weight: bold;
    font-size: 1.7rem;
    text-align: center;
    margin-top: 3rem;
}
.cp_period_itemarea {
	    margin: 2rem auto 5rem!important;
}

/*下矢印*/
.arrow_down::after {
	right: -264px;
}

/*下向き▼*/
.triangle {
	background: #ccc;
    height: calc(tan(60deg)* 30px / 2);
    width: 30px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    margin: 0 auto;
    margin: 2rem auto;
}

/*コンテンツ*/
.contents_inner_imgbox {
    margin: 3.5rem auto;
}

.iv20Column02 {
	width: 660px;
}
.section_last {
    margin: 0 calc(50% - 50vw);
    padding: 0 calc(50vw - 50% + 8px);
    width: 100vw;
    background: #fff;
}
.wine_link {
	text-decoration: underline;
}
.contents_imgbox figcaption, .contents_inner_imgbox figcaption {
	margin: 10px 0;
}

/*==========================================

　　　　　　　　　SPレイアウト

==========================================*/
@media screen and (max-width: 680px) {
/*==========================================*/	
    .anchor_3_area {
        width: 100%;
        display: block;
        padding: 0 15px;
    }
	.anchor_fair {
        width: 100%;
        padding: 10px;
        margin-bottom: 20px;
    }
	.anchor_fair:nth-of-type(n+4) {
	width: 100%;
}

.anchor_fair:nth-child(-n+3)::after {
	right: -260px;
}
	.sample2::after {
		right: -260px;
	}	
	.anchor_fair02 {
    width: 100%;
}
	.anchor_fair02::after {
	right: -290px;
}
	
	
	/*コンプリートセット、SPで中央揃え*/
.products_list_center_sp {
	justify-content: center;
}
    .block_title {
        font-size: 1.9rem;
    }
	    .news_area {
        width: 100%;
    }
	    .news_area dt {
       margin-right: 2rem;
			padding: 0;
    }

	.news_area dd {
		width: 100%;
		line-height: 1.8;
	}
	.arrow_down::after {
    right: -190px;
}
	
	.btn_topage {
	    padding: 10px 25px 10px 15px;
		width: 270px;
}
	.btn_topage::after {
		top: 0;
		right: -215px;
	}
	.cp_period {
		width: 100%;
	}
	
    .caution_list h4 {
        font-size: 1.4rem;
    }
    .caution_list li {
        font-size: 1.4rem;
    }		
	.hq_HowToApply {
		padding: 2rem;
	} 
	.snscp_overflow {
	height: 350px;
	}
	.snscp_overflow {
		margin-bottom: 0;
	}
	
	.btn_topage {
		margin: 30px auto 0;
	}

	.heading2_condition {
		font-size: 2rem;
	}

	.complete_flex {
		display: block;
	}
	.complete_flex p, .complete_flex .contents_imgbox {
		width: 100%;
	}
	.hbf_contents_wrap {
		width: 100%;
	}
	.set_detail {
		width: 100%;
	}
	    .iv20Column02 {
        width: 100%;
    }

/*==========================================*/	
}
/*==========================================*/	



