@charset "utf-8";
/* CSS Document */

body {
	max-width: 100vw;
	overflow-x: none;
}

.body::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 24px;
	width: 100%;
	/*background: url(../images/upper.png) top center repeat-x;*/
}

img {
	max-width: 100%;
	height: auto;
}

/* floating bn
--------------------------------*/
#fixbn {
	width: 120px;
	top: 170px;
	right: 0;
	z-index: 9999;
	position: fixed;
	margin: 0;
	padding: 0;
}

#fixbn ul li {
	/* margin-bottom: 0px; */
}

#fixbn_left_out {
	top: 170px;
	left: -240px;
	z-index: 9999;
	position: fixed;
	margin: 0;
	padding: 0;
}

#fixbn_left_out:hover {
	left: 0 !important;
	-webkit-transition: 0.8s ease;
	-moz-transition: 0.8s ease;
	-o-transition: 0.8s ease;
	transition: 0.8s ease;
}

header img, h1 img, h2 img, h3 img {
	display: block;
	margin: 0 auto;
}


/* sticky menu
--------------------------------*/

#sticky {
	width: 100%;
	position: relative;
}

.navi_list {
	max-width: 850px;
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding: 60px 0 60px;
	gap: 2%;
}

.navi_list li {
	width: calc((100% - (16px * 3)) / 3);/*送料無料時 calc((100% - (16px * 4)) / 4)*/
	position: relative;
	display: flex;
	max-width: 268px;/*送料無料時 198px*/
	max-height: 85px;
	justify-content: center;
	border-radius: 10px;
	align-items: flex-end;
	text-align: center;
	box-sizing: border-box;
}

.navi_list li a {
	display: block;
	width: 100%;
	padding: 0.8rem 1rem 0.4rem;
}



.navi_list li:hover {
	box-shadow: none;
	transform: translate3d(0, 3px, 0);
}

.navi_list li[data-btn="no1"] {
	background: #da0b0b;
	box-shadow: 0px 5px #c80909;
}

.navi_list li[data-btn="no2"] {
	background: #d60051;
	box-shadow: 0px 5px #c10049;
}

.navi_list li[data-btn="no3"] {
	background: #541300;
	box-shadow: 0px 5px rgb(65 14 0);
}

.navi_list li[data-btn="no4"] {
	background: #541300;
	box-shadow: 0px 5px rgb(65 14 0);
}

#sticky_bg[data-stickynow="on"] {
	position: fixed;
	top: 0px;
	z-index: 100;
}

.navi_list li:hover {
	box-shadow: none;
	transform: translate3d(0, 3px, 0);
}

#sticky_bg {
	width: 100%;
	max-height: 190px;
	/* background: url("../images/xmas_page_02.png")repeat-x; */
}

#sticky_bg[data-stickynow="on"]+.sticky_space {
	padding: 17.3vw 0 0 0;
}

#sticky_bg[data-stickynow="off"] {
	position: absolute;
	top: 0;
	z-index: 100;
}

#sticky_bg[data-stickynow="off"]+.sticky_space {
	padding: 200px 0 0 0;
}

@media screen and (max-width:768px) {

	.navi_list li a {
		padding: 0.4rem 0.8rem;
	}

}

/*========================*/
/*    サイト全体背景       */
/*========================*/
.bkimg {
	background-image: url("../images/bkg.jpg");
	background-position: top;
	background-size: contain;
	background-repeat: repeat;
}

/*========================*/
/*    メインビジュアル     */
/*========================*/
.mv_img img {
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
}

.mv_img {
	width: 100%;
	background-size: cover;
	background: #ffdfdd;
}



/*========================*/
/*       sticky nav       */
/*========================*/

#sticky_bg[data-stickynow="on"] {
	position: fixed;
	top: 0px;
	z-index: 100;
	background: #dbb6e2;
}

#sticky_bg[data-stickynow="on"]+.sticky_space {
	padding: 17.3vw 0 0 0;
}

#sticky_bg[data-stickynow="off"] {
	position: absolute;
	top: 0;
	z-index: 100;
}

#sticky_bg[data-stickynow="off"]+.sticky_space {
	padding: 148px 0 0 0;
}

@keyframes updown {
	0% {
		transform: translate(0, 0)
	}

	10% {
		transform: translate(0, -1px)
	}

	20% {
		transform: translate(0, -2px)
	}

	30% {
		transform: translate(0, -3px)
	}

	40% {
		transform: translate(0, -4px)
	}

	50% {
		transform: translate(0, -5px)
	}

	60% {
		transform: translate(0, -6px)
	}

	70% {
		transform: translate(0, -4px)
	}

	80% {
		transform: translate(0, -3px)
	}

	90% {
		transform: translate(0, -2px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-webkit-keyframes updown {
	0% {
		transform: translate(0, 0)
	}

	10% {
		transform: translate(0, -1px)
	}

	20% {
		transform: translate(0, -2px)
	}

	30% {
		transform: translate(0, -3px)
	}

	40% {
		transform: translate(0, -4px)
	}

	50% {
		transform: translate(0, -5px)
	}

	60% {
		transform: translate(0, -6px)
	}

	70% {
		transform: translate(0, -4px)
	}

	80% {
		transform: translate(0, -3px)
	}

	90% {
		transform: translate(0, -2px)
	}

	100% {
		transform: translate(0, 0)
	}
}


@media screen and (max-width:1200px) {

	.navi_list li {
		width: calc((100% - (16px * 3)) / 3);/*送料無料時 calc((100% - (16px * 4)) / 4)*/
		position: relative;
	}

	#sticky_bg {
		background-size: contain;
	}

	#sticky::before {
		width: 20px;
	}

	#sticky::after {
		width: 20px;
	}

	#sticky_bg[data-stickynow="off"]+.sticky_space {
		padding: 16.7vw 0 0 0;
	}

	#sticky_bg[data-stickynow="on"]+.sticky_space {
		padding: 16.7vw 0 0 0;
	}
}

@media screen and (max-width:1000px) {
	#sticky_bg[data-stickynow="off"]+.sticky_space {
		padding: 18.4vw 0 0 0
	}
}

@media screen and (max-width:920px) {
	#sticky_bg[data-stickynow="on"] .navi_list {
		background: #EEB0B0;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		padding: 0px 0 20px;
		transition: 0.2s ease;
	}
}

@media screen and (max-width:870px) {
	.navi_list {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	.navi_list li {
		width: calc((100% - (4px * 3)) / 3);/*送料無料時 calc((100% - (16px * 4)) / 4)*/
	}
}

@media screen and (max-width:768px) {
	.sticky {
		position: fixed;
		top: 0;
		z-index: 10;
		background-color: rgb(84, 19, 0);
	}

	#sticky::before {
		width: 10px;
	}

	#sticky::after {
		width: 10px;
	}

	#sticky_bg {
		background-size: contain;
	}

	.sticky .navi_list {
		margin: 5px auto;
	}

	.navi_list {
		display: flex;
		justify-content: space-between;
		margin-bottom: 40px;
	}

	#sticky_bg[data-stickynow="off"]+.sticky_space {
		padding: 24.5vw 0 0 0
	}

	#sticky_bg[data-stickynow="on"]+.sticky_space {
		padding: 24.5vw 0 0 0
	}

	#sticky_bg[data-stickynow="on"] .navi_list {
		padding: 14px 0 16px;
	}
}

@media screen and (max-width:456px) {

	.navi_list {
		width: calc(100% - 30px);
		padding: 16px 0 24px;
	}

	#sticky_bg[data-stickynow="off"]+.sticky_space {
		padding: 28vw 0 0 0;
	}

	#sticky_bg[data-stickynow="on"]+.sticky_space {
		padding: 17vw 0 0 0;
	}

	#sticky_bg[data-stickynow="on"] .navi_list {
		width: calc(100% - 30px);
		/* padding: 6px 15px 12px; */
	}
}



/*========================*/
/*        イントロ        */
/*========================*/

#intro {
	margin: 0 4% 0;/*送料無料時 6% 4% 0*/
}

#intro p.txt {
	font-size: 16px;
    font-family: "Meiryo";
    color: #541300;
    font-weight: bold;
    line-height: 1.714;
    text-align: center;
}

#intro p.txt span.txt-ttl {
	color:#88263b;
	font-size: 1.4em;
	display: inline-block;
	margin: 1em 0;
}

#intro img {
    margin: 30px auto 30px;
	display: block;
}
@media screen and (max-width: 768px){
	#intro p.txt {
		font-size: 14px;
		font-family: "Meiryo";
		font-weight: bold;
		line-height: 1.714;
		text-align: center;
		/* padding: 24px 0 0; */
	}

	#intro img {
		width: 100%;
	}
}

/*========================*/
/*    メインコンテンツ   */
/*========================*/

#section2 {
    width: 100%;
    margin: 0 auto;
}

#section2 .annotation {
	margin: 2% 0 3% 0;
	color: #541300;
	text-align: center;
}

.mv_img_area {
	text-align: center;
}

.mv_img_area>img {
	width: 100%;
	/*max-width: 1260px;*/
}

.annotation {
	margin: 62px 0 14px 0;
	font-size: 13px;
}

.sp {
	display: none;
}

#sec3 #casual-bnr{
	margin: 40px auto 40px;
}
#sec3 #casual-bnr .spesial-bnr{
	margin: 0 auto 40px;
}
#sec3 #casual-bnr .spesial-bnr a:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	background-color: #ffffff;
}

@media screen and (max-width:1200px) {

	.mv_img img {
		max-width: 100%;
		/* margin: 2% auto; */
	}

	.navi_list {
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		padding: 35px 0 50px;
		max-width: 850px;
		width: calc(100% - 2vw);
		padding: 28px 0 56px;
	}

	.navi_list li {
		width: calc((100% / 4) - 15px);
		position: relative;
	}

}

@media screen and (max-width:1000px) {
	#sec1 p:first-child {
		padding: 5% 0 3%;
	}

	#sec1 {
		padding: 10% 3% 2%;
	}

	#sec1 img {
		max-width: 100%;
	}

	#sec3.wrapper, #sec4.wrapper {
		max-width: 850px;
		width: calc(100% - 2vw);
	}

	#sec3 {
		width: 100%;
		overflow-x: hidden;
	}

	#sec4 {
		width: 100%;
		overflow-x: hidden;
	}

	.canto_link {
		padding: 0 0 6%;
	}
}

@media screen and (max-width:920px) {
	.navi_list {
		/* width: calc(90% - 86px); */
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		/* padding: 35px 0 70px; */

		max-width: 850px;
		width: calc(100% - 2vw);
		padding: 34px 0 30px;
	}

}

@media screen and (max-width:768px) {


	.object {
		display: none !important;
	}

	#sec1 h2 img {
		width: 90%;
	}

	.annotation {
		font-size: 13px;
	}

	.sp {
		display: block;
	}
}


@media screen and (max-width:768px) {
	#sec3 div.wrapper {
		position: relative;
		margin: 45px auto 30px;
		background-color: #fff;
		width: 90%;
		padding: 5% 5%;
		box-sizing: border-box;
	}

	#sec4 div.wrapper {
		position: relative;
		margin: 45px auto 30px;
		background-color: #fff;
		width: 90%;
		padding: 5% 5%;
		box-sizing: border-box;
	}


	.navi_list {
		padding: 28px 0 34px;
		width: calc(100% - 2vw);
	}


	.navi_list li {
		width: calc((100% - (4px * 3)) / 3);/*送料無料時 calc((100% - (16px * 4)) / 4)*/
	}

}

@media screen and (max-width:456px) {

	.annotation {
		font-size: 13px;
	}

	#sec3 #casual-bnr{
		margin: 10% auto 10%;
	}
	#sec3 #casual-bnr .spesial-bnr{
		margin: 0 auto 10%;
	}
	#sec3 #casual-bnr .spesial-bnr a:hover{
		opacity: 0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha(opacity=70)";
		background-color: #ffffff;
	}

}





/*=======================
    　季節商品
========================*/

#seasongift .item_list li {
	width: 48%;/*44.6%*/
	padding: 0;
	display: flex;
}

#seasongift .item_list li::before{
	position: absolute;
  content: '';
  top: 0;
  left:0;
  display: block;
  width: 100%;
  background-image: url(../images/item_top.png);
  background-size: contain;
  /**/background-repeat: repeat-x;
	transform: translateY(5px);
	aspect-ratio: 1 / 0.142 ;
}

#seasongift .item_list li::after{
	position: absolute;
  content: '';
  bottom: 0;
  left:0;
  display: block;
  width: 100%;
  background-image: url(../images/item_bottom.png);
  background-size: contain;
  /**/background-repeat: repeat-x;
	aspect-ratio: 1 / 0.142 ;
}

#seasongift .item_description {
	width: 100%;
}

#seasongift .item_list p.item_icon{
	width: auto;
	position: absolute;
	top: 50px;
	right: 20px;
}

#seasongift .item_list .item_wrap{
	background-color: #ffffff;
	margin: 14% 0;
	display: flex;
	flex-wrap: wrap;
	align-content: space-around;
}


#seasongift .item_list p.content span {
	background-color: #d36c6c;
	padding: 2px 10px;
	color: #ffffff;
	margin-right: 10px;
	font-size: 1em;
}

#seasongift p {
	color: #6a1e23;
	margin: 0px auto 0px;
	text-align: center;
	width: 96%;
}

/*ボタン*/
#seasongift p.btn a {
	display: block;
	color: #fff;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	box-sizing: border-box;
	color: #fff;
	background-color: rgb(84, 19, 0);
	width: 96%;
	max-width: 260px;
	height: 46px;
	line-height: 42px;
	border-radius: 23px;
	margin: 0 auto 20px;
	border: 3px solid rgb(84, 19, 0);
}

#seasongift p.btn a:hover {
	color: rgb(84, 19, 0);
	background-color: #fff;
}


#seasongift p.btn2 a {
	color: #fff;
	background-color: rgb(234, 78, 129);
	width: 96%;
	max-width: 260px;
	height: 46px;
	line-height: 42px;
	border-radius: 23px;
	margin: 0 auto;
	border: 3px solid rgb(234, 78, 129);
	font-size: 18px;
	font-weight: bold;
	box-sizing: border-box;
}

#seasongift p.btn2:hover a {
	color: rgb(234, 78, 129);
	background-color: #fff;
}

#seasongift p.name {
	font-size: 23px;
	font-weight: bold;
	vertical-align: text-bottom;
}


#seasongift p.price {
	font-size: 20px;
	font-weight: bold;
	margin: 0px auto 12px;
}

#seasongift p span {
	font-size: 14px;
}

#seasongift p.content {
	font-size: 16px;
	margin: 0px auto 20px;
}

#seasongift p.content span {
	background-color: #d36c6c;
	padding: 2px 10px;
	color: #ffffff;
	margin-right: 10px;
	font-size: 1em;
}


@media screen and (max-width: 768px) {

}

@media screen and (max-width: 750px) {

	#seasongift .item_list li {
		max-width: none;
		width: 100%;
		margin: 0 0 1rem;
	}

	#seasongift .item_list li {
		margin: 0 auto 1rem;
	}
}

@media screen and (max-width: 480px) {

	#seasongift p.name {
		font-size: 20px;
		font-weight: bold;
	}

	#seasongift p.content {
		margin: 0px auto 10px;
	}

	#seasongift p.price {
		margin: 0px auto 8px;
	}
}
