@charset "utf-8";

/* general
======================================================================================*/

#contents {
	font-size: 1.4rem;
	line-height: 1.8;
	overflow: hidden;
}
@media only screen and (max-width: 768px) {
#contents {
	font-size: 1.2rem;
}
}

@media only screen and (min-width: 769px) {
#contents .pc_hidden{
	display: none;
}
}
@media only screen and (max-width: 768px) {
#contents .sp_hidden{
	display: none;
}
}

#contents section{
	position: relative;
	z-index: 10;
}

#contents .inner{
	width: 850px;
	max-width: calc(100% - 40px);
	margin: auto;
	position: relative;
}

@media only screen and (min-width: 769px) {
#contents a,
#contents .over{
	transition: opacity .3s ease-in-out;
	cursor: pointer;
}
#contents a:hover,
#contents .over:hover{
	opacity: .7;
}
}

#contents .large{font-size: 1.1em;}
#contents .larger{font-size: 1.2em;}
#contents .largest{font-size: 1.4em;}

#contents .small{font-size: .9em;}
#contents .smaller{font-size: .8em;}
#contents .smallest{font-size: .7em;}

#contents .tac{text-align: center;}
#contents .tar{text-align: right;}
#contents .tal{text-align: left;}

#contents .inb{display: inline-block;}

#contents strong{font-weight: bold;}

#contents .common_tit{
	width: 224px;
	max-width: 100%;
	margin: auto;
}
@media only screen and (max-width: 768px) {
#contents .common_tit{
	width: 170px;
}
}

#contents .bottom_line{
	border-bottom: 8px solid #000;
}

#contents .down_arrow{
	position: relative;
}
#contents .down_arrow::after{
	content: "";
	position: absolute;
	z-index: 10;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 50px 0 50px;
	border-color: #000 transparent transparent transparent;
}

#contents .basket img{
	position: absolute;
	z-index: -1;
}


/* sec_nav
======================================================================================*/

#contents .sec_nav{
	background: #000;
	padding: 30px 0;
	position: relative;
	z-index: 100;
}
@media only screen and (max-width: 768px) {
#contents .sec_nav{
	padding: 15px 0;
}
}

#contents .sec_nav.js-menu_fix{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}

#contents .sec_nav .inner{
	width: 940px;
	position: static;
}

#contents .sec_nav nav{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#contents .sec_nav nav h1{
	width: 23.015%;
	display: flex;
	align-items: center;
}
#contents .sec_nav nav h1 img{
	width: 100%;
}
#contents .sec_nav .sp_nav_btn{
	display: none;
}
#contents .sec_nav nav .nav_list{
	width: 72%;
}
#contents .sec_nav nav ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#contents .sec_nav nav ul li{
	width: 25%;
}
#contents .sec_nav nav ul li:first-child{
	border-left: 1px solid #ad0d45;
}
#contents .sec_nav nav ul li:nth-child(2n+1){
	border-right: 1px solid #c6a435;
}
#contents .sec_nav nav ul li:nth-child(2n){
	border-right: 1px solid #ad0d45;
}
#contents .sec_nav nav ul li a{
	display: block;
	text-align: center;
	padding: 10px;
}
#contents .sec_nav nav ul li a img{
	width: 90px;
	max-width: 100%;
}
@media only screen and (max-width: 768px) {
#contents .sec_nav .sp_nav_btn{
	display: block;
	position: absolute;
	width: 25px;
	height: 100%;
	top: 0;
	right: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#contents .sec_nav .sp_nav_btn>div{
	background: #fff;
	width: 100%;
	height: 3px;
	transition: all .3s ease-in-out;
	position: absolute;
	top: calc(50% - 1.5px);
	right: 0;
}
#contents .sec_nav .sp_nav_btn>div:first-child{
	transform: translateY(-7px);
}
#contents .sec_nav .sp_nav_btn>div:last-child{
	transform: translateY(7px);
}
#contents .sec_nav nav h1{
	width: 140px;
}
#contents .sec_nav nav .nav_list{
	display: none;
	overflow: hidden;
	position: absolute;
	width: 100%;
	top: 100%;
	left: 0;
	background: rgba(0,0,0,.9);
}
#contents .sec_nav nav ul{
	display: block;
}
#contents .sec_nav nav ul li{
	width: 100%;
	padding: 5px 0;
	border-left: none !important;
	border-right: none !important;
}
#contents .sec_nav nav ul li:first-child{
	border-top: 1px solid #ad0d45;
}
#contents .sec_nav nav ul li:nth-child(2n+1){
	border-bottom: 1px solid #c6a435;
}
#contents .sec_nav nav ul li:nth-child(2n){
	border-bottom: 1px solid #ad0d45;
}

#contents .sec_nav .sp_nav_btn.js-sp_active>div{
	position: absolute;
}
#contents .sec_nav .sp_nav_btn.js-sp_active>div:first-child{
	transform: rotate(45deg);
}
#contents .sec_nav .sp_nav_btn.js-sp_active>div:last-child{
	transform: rotate(-45deg);
}
#contents .sec_nav .sp_nav_btn.js-sp_active>div:nth-child(2){
	opacity: 0;
}
}


/* sec_main
======================================================================================*/

#contents .sec_main{
	background: url(../images/main_bg.png) no-repeat center/cover;
	padding: 30px 0;
}
@media only screen and (max-width: 768px) {
#contents .sec_main{
	padding: 20px 0;
}
}

/* sec_about
======================================================================================*/

#contents .sec_about{
	background: #e9e9e9;
	padding: 70px 0;
	font-size: 1.6rem;
	overflow: hidden;
}
#contents .sec_about::before{
	content: "";
	background: url(../images/scroll.png) no-repeat center/100%;
	position: absolute;
	z-index: 20;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 20px;
	z-index: 100;
}
@media only screen and (max-width: 768px) {
#contents .sec_about{
	padding: 40px 0;
	font-size: 1.2rem;
}	
}

#contents .sec_about .about_box{
	background: url(../images/about_box_head.png) no-repeat top/100% auto,
				url(../images/about_box_foot.png) no-repeat bottom/100% auto,
				url(../images/about_box_body.png) repeat-y center/100% auto;
	padding: 40px 30px;
	max-width: 780px;
	margin: auto;
	text-align: center;
}
@media only screen and (max-width: 768px) {
#contents .sec_about .about_box{
	padding: 30px 20px;
}
#contents .sec_about .about_box p{
	text-align: left;
}
}

#contents .sec_about .about_tit{
	display: inline-block;
	margin-bottom: 30px;
	font-size: 2.6rem;
	line-height: 1.2;
}
#contents .sec_about .about_tit::after{
	content: "";
	display: block;
	margin-top: 10px;
	width: 100%;
	height: 5px;
	background: #922654;
	background: -moz-linear-gradient(left,  #922654 0%, #922654 50%, #000000 50%, #000000 100%);
	background: -webkit-linear-gradient(left,  #922654 0%,#922654 50%,#000000 50%,#000000 100%);
	background: linear-gradient(to right,  #922654 0%,#922654 50%,#000000 50%,#000000 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#922654', endColorstr='#000000',GradientType=1 );
}
@media only screen and (max-width: 768px) {
#contents .sec_about .about_tit{
	font-size: 2.0rem;
	margin-bottom: 20px;
}	
}

#contents .basket [src*="about_fruits1"]{
	height: 100%;
	width: auto;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#contents .basket [src*="about_fruits2"]{
	height: 100%;
	width: auto;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
@media only screen and (max-width: 768px) {
#contents .basket [src*="about_fruits1"]{
	left: -60px;
}
#contents .basket [src*="about_fruits2"]{
	right: -60px;
}
}

/* sec_combine
======================================================================================*/

#contents .sec_combine{
	background: url(../images/combine_bubble1.png) repeat-y left/300px,
				url(../images/combine_bubble2.png) repeat-y right/300px;
	padding: 70px 0;
	position: relative;
}
#contents .sec_combine.down_arrow::after{
	content: "";
	position: absolute;
	z-index: 10;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 50px 0 50px;
	border-color: #e9e9e9 transparent transparent transparent;
}
@media only screen and (max-width: 768px) {
#contents .sec_combine{
	background: url(../images/combine_bubble1.png) repeat-y left/150px,
				url(../images/combine_bubble2.png) repeat-y right/150px;
	padding: 40px 0;
}
}

#contents .sec_combine .combine_box{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
#contents .sec_combine .combine_box>div{
	width: 44.706%;
	text-align: center;
}
#contents .sec_combine .combine_box>div>img[src*="combine_txt"]{
	width: 250px;
	margin-top: 20px;
}
#contents .sec_combine .combine_box img[src*="combine_plus"]{
	width: 7.412%;
	margin-bottom: 5%;
}
@media only screen and (max-width: 768px) {
#contents .sec_combine .combine_box>div{
	width: 100%;
}
#contents .sec_combine .combine_box img[src*="combine_plus"]{
	width: 10%;
	margin: 20px auto;
}
}


/* sec_mockbar
======================================================================================*/

#contents .sec_mockbar{
	background: #f2f4da;
	padding: 50px 0;
	text-align: center;
	overflow: hidden;
}
@media only screen and (max-width: 768px) {
#contents .sec_mockbar {
	padding: 30px 0;
}
#contents .sec_mockbar p{
	text-align: left;
}
}

#contents .sec_mockbar .mockbar_tit{
	display: inline-block;
	margin: 30px;
}
#contents .sec_mockbar .mockbar_tit::after{
	content: "";
	display: block;
	margin-top: 20px;
	width: 100%;
	height: 5px;
	background: #d60557;
	background: -moz-linear-gradient(left,  #d60557 0%, #d60557 50%, #3cb541 50%, #3cb541 100%);
	background: -webkit-linear-gradient(left,  #d60557 0%,#d60557 50%,#3cb541 50%,#3cb541 100%);
	background: linear-gradient(to right,  #d60557 0%,#d60557 50%,#3cb541 50%,#3cb541 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d60557', endColorstr='#3cb541',GradientType=1 );
}
@media only screen and (max-width: 768px) {
#contents .sec_mockbar .mockbar_tit{
	margin: 20px 0;
}
}

#contents .basket [src*="mockbar_fruits1"]{
	width: 13%;
	max-width: 300px;
	top: -20px;
	left: 10%;
	transform: translateX(-50%);
}
#contents .basket [src*="mockbar_fruits2"]{
	width: 22%;
	max-width: 300px;
	bottom: -20px;
	right: 5%;
	transform: translateX(50%);
}
@media only screen and (max-width: 768px) {
#contents .basket [src*="mockbar_fruits1"]{
	top: -10px;
	width: 20%;
	max-width: 140px;
}
#contents .basket [src*="mockbar_fruits2"]{
	bottom: auto;
	top: -40px;
	width: 30%;
	max-width: 180px;
}
}

/* sec_products
======================================================================================*/

#contents .sec_products{
	background: url(../images/products_bg.png) no-repeat top/100% auto;
	padding: 50px 0;
	text-align: center;
}
@media only screen and (max-width: 768px) {
#contents .sec_products{
	background: url(../images/products_bg.png) no-repeat top/auto;
	padding: 50px 0 30px;
}
}

#contents .sec_products .products_box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-top: 30px;
}
#contents .sec_products .products_box>*{
	width: 44.706%;
}
#contents .sec_products .products_box>*>img{
	width: 380px;
	max-width: 100%;
}
@media only screen and (max-width: 768px) {
#contents .sec_products .products_box>*{
	width: 100%;
	margin: 20px 0;
}
#contents .sec_products .products_box>*>img{
	width: 250px;
}
}

#contents .sec_products .component_box{
	font-weight: bold;
	margin-top: 30px;
}
#contents .sec_products .component_box p{
	padding: 5px;
}
#contents .sec_products .component_box .black_box{
	display: flex;
	justify-content: space-between;
	margin-bottom: 5px;
}
#contents .sec_products .component_box .black_box p{
	background: #000;
	color: #fff;
	width: 49%;
}
#contents .sec_products .component_box .white_box{
	background: #fff;
	border: 1px solid #000;
}
@media only screen and (max-width: 768px) {
#contents .sec_products .component_box{
	margin-top: 10px;
}
}


/* sec_point
======================================================================================*/

#contents .sec_point{
	background: url(../images/point_bubble1.png) repeat-y left/350px,
				url(../images/point_bubble2.png) repeat-y right/350px,
				#ff7068;
	background: url(../images/point_bubble1.png) repeat-y left/350px,
				url(../images/point_bubble2.png) repeat-y right/350px,
				-moz-linear-gradient(top, #ff7068 0%, #dde09a 100%);
	background: url(../images/point_bubble1.png) repeat-y left/350px,
				url(../images/point_bubble2.png) repeat-y right/350px,
				-webkit-linear-gradient(top, #ff7068 0%, #dde09a 100%);
	background: url(../images/point_bubble1.png) repeat-y left/350px,
				url(../images/point_bubble2.png) repeat-y right/350px,
				linear-gradient(to bottom,  #ff7068 0%,#dde09a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff7068', endColorstr='#dde09a',GradientType=0 );
	padding: 50px 0;
}
@media only screen and (max-width: 768px) {
#contents .sec_point{
	padding: 50px 0 30px;
}
}

#contents .sec_point .point_box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 40px;
}
#contents .sec_point .point_box>li{
	border: 2px solid #000;
	margin: 10px 0;
	padding: 15px;
}
#contents .sec_point .point_box h3{
	margin-bottom: 15px;
}
#contents .sec_point .point_box img{
	width: 380px;
	max-width: 100%;
}
#contents .sec_point .point_box>.point1{
	width: 100%;
	background: #e3c463;
}
#contents .sec_point .point_box>.point1>div{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
}
#contents .sec_point .point_box>.point1 img{
	max-width: calc(49% - 30px);
}
#contents .sec_point .point_box>.point2{
	width: 49%;
	background: #d085a5;
}
#contents .sec_point .point_box>.point3{
	width: 49%;
	background: #a7c05c;
}
@media only screen and (max-width: 768px) {
#contents .sec_point .point_box{
	margin-top: 20px;
}
#contents .sec_point .point_box>.point1 img{
	max-width: 100%;
	margin: 10px 0;
}
#contents .sec_point .point_box>.point1,
#contents .sec_point .point_box>.point2,
#contents .sec_point .point_box>.point3{
	width: 100%;
	max-width: 500px;
	text-align: center;
	margin: 10px auto;
}
}

#contents .sec_point .more_box{
	text-align: center;
	margin: -30px auto 0;
	width: 554px;
	max-width: 100%;
	position: relative;
}

#contents .basket [src*="point_fruits1"]{
	width: 22%;
	max-width: 300px;
	top: -50px;
	right: 15%;
	transform: translateX(50%);
}
@media only screen and (max-width: 768px) {
#contents .basket [src*="point_fruits1"]{
	top: -20px;
}
}

/* sec_comment
======================================================================================*/

#contents .sec_comment{
	padding: 50px 0 80px;
	text-align: center;
	position: relative;
}
@media only screen and (max-width: 768px) {
#contents .sec_comment{
	padding: 50px 0 50px;
}
}

#contents .sec_comment .logo_box{
	display: flex;
	justify-content: space-around;
	align-items: center;
}
#contents .sec_comment .logo_box img{
	width: 100%;
}

#contents .sec_comment .comment_box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 60px;
}
#contents .sec_comment .comment_box>div{
	width: 47%;
}
#contents .sec_comment .comment_box>div.comment_x{
	width: 34px;
	max-width: 6%;
}
#contents .sec_comment .comment_box .logo_box{
	width: 280px;
	max-width: 100%;
	margin: 0 auto 40px;
}
#contents .sec_comment .comment_box .name_box {
	margin: 20px 0;
}
#contents .sec_comment .comment_box .name_box h5{
	font-size: 2.4rem;
}
@media only screen and (max-width: 768px) {
#contents .sec_comment .comment_box{
	margin-top: 30px;
}
#contents .sec_comment .comment_box>div{
	width: 100%;
}
#contents .sec_comment .comment_box>div:first-child{
	padding-bottom: 40px;
	border-bottom: 1px solid #ccc;
	margin-bottom: 30px;
}
#contents .sec_comment .comment_box>div.comment_x{
	display: none;
}
#contents .sec_comment .comment_box .logo_box{
	width: 180px;
	margin: 0 auto 30px;
}
}

#contents .sec_comment .comment_box .txt_box {
	color: #fff;
	text-align: left;
	padding: 10px;
/* 	border: 2px solid #fff; */
	font-size: 1.3rem;
	line-height: 2;
	letter-spacing: -.4px;
}
#contents .sec_comment .comment_box>div:first-child .txt_box {
	background: #9d2b4b;
}
#contents .sec_comment .comment_box>div:last-child .txt_box {
	background: #d6804a;
}
@media only screen and (max-width: 768px) {
#contents .sec_comment .comment_box .txt_box {
	font-size: 1.1rem;
}
}

#contents .basket [src*="comment_fruits1"]{
	width: 24%;
	max-width: 300px;
	top: -70px;
	left: 5%;
	transform: translateX(-50%);
}
#contents .basket [src*="comment_fruits2"]{
	width: 19%;
	max-width: 300px;
	top: 60px;
	right: 0;
	transform: translateX(50%);
}
#contents .basket [src*="comment_fruits3"]{
	width: 22%;
	max-width: 300px;
	top: 40%;
	left: 5%;
	transform: translateX(-50%);
}
#contents .basket [src*="comment_fruits4"]{
	width: 17%;
	max-width: 300px;
	bottom: 0;
	right: 2%;
	transform: translateX(50%);
}
@media only screen and (max-width: 768px) {
#contents .basket [src*="comment_fruits1"]{
	width: 30%;
	top: -15px;
}
#contents .basket [src*="comment_fruits2"]{
	top: 10%;
	width: 30%;
}
#contents .basket [src*="comment_fruits3"]{
	width: 28%;
	top: 55%;
}
#contents .basket [src*="comment_fruits4"]{
	width: 28%;
	bottom: 25%;
}
}


/* sec_enjoy
======================================================================================*/

/* モーダル開いたときにスクロールオフ */
body.js-modal_on{
	height: 100vh;
	overflow: hidden;
}

#contents .sec_enjoy .enjoy_btn{
	position: fixed;
	bottom: -200px;
	right: 20px;
	width: 180px;
	cursor: pointer;
	transition: bottom .4s ease-in-out;
}
@media only screen and (max-width: 768px) {
#contents .sec_enjoy .enjoy_btn{
	right: 0px;
	width: 120px;
}
}

#contents .sec_enjoy .enjoy_modal{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: none;
}
#contents .sec_enjoy .enjoy_modal_bg{
	background: rgba(0,0,0,.9);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#contents .sec_enjoy .enjoy_slideBox{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 600px;
	max-width: calc(100% - 100px);
}
#contents .sec_enjoy .enjoy_slideBox h2{
	text-align: center;
	background: #b8255d;
	border-bottom: none;
	padding: 10px 0 5px;
	position: relative;
}
#contents .sec_enjoy .enjoy_slideBox h2 img{
	width: auto;
	height: 50px;
	max-height: 5vh;
}
@media only screen and (max-width: 768px) {
#contents .sec_enjoy .enjoy_slideBox h2 img{
	height: auto;
}
}

#contents .sec_enjoy .enjoy_modal_close{
	position: absolute;
	background: #fff;
	top: 30px;
	right: 30px;
	width: 50px;
	height: 50px;
	font-size: 3.0rem;
	line-height: 1;
	color: #b8255d;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 3px solid #b8255d;
}
@media only screen and (max-width: 768px) {
#contents .sec_enjoy .enjoy_modal_close{
	top: 20px;
	right: 20px;
}
}

#enjoy_slide .slick-list{
}
#enjoy_slide .slick-slide{
	border: 8px solid #b8255d;
	background: #fff;
}
#enjoy_slide .slick-slide img{
	max-height: 70vh;
	margin: auto;
}


#enjoy_slide .slick-arrow{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
}
#enjoy_slide .slick-prev{
	left: -70px;
}
#enjoy_slide .slick-next{
	right: -70px;
}
@media only screen and (max-width: 768px) {
#enjoy_slide .slick-arrow{
	width: 35px;
	height: 35px;
}
#enjoy_slide .slick-prev{
	left: -45px;
}
#enjoy_slide .slick-next{
	right: -45px;
}
}

#enjoy_slide .slick-dots{
	display: flex;
	justify-content: center;
}
#enjoy_slide .slick-dots>li{
	background: #fff;
	width: 12px;
	height: 12px;
	margin: 20px 8px;
	border-radius: 50%;
	text-indent: -999999px;
}
#enjoy_slide.slick-dots>li button{
	display: none;
}
#enjoy_slide .slick-dots>li.slick-active{
	background: #b8255d;
}

/* safariのバグ対応
======================================================================================*/

#contents .sec_enjoy {
	z-index: 999999;
}

/*
#contents .sec_enjoy .enjoy_modal,
#contents .sec_enjoy .enjoy_modal_bg,
#contents .sec_enjoy .enjoy_btn,
#contents .sec_enjoy .enjoy_slideBox{
	z-index: 999999;
	-webkit-transform: translateZ(1px);
	transform: translateZ(1px);
}
*/



/* scroll out
======================================================================================*/

.js-fadein[data-scroll]{
	transition: all 700ms 700ms;
}
.js-fadein[data-scroll="out"]{
	opacity: 0;
	transform: translateY(30px);
}
.js-fadein[data-scroll="in"]{
	opacity: 1;
	transform: translateY(0);
}


