
@font-face {
	src: url("/fonts/NotoSansJP-Regular2.woff") format("woff");
	font-family: "Noto Sans JP";
	font-style: 400;
	font-display: swap;
}

@font-face {
	src: url("/fonts/Montserrat-Medium.woff") format("woff");
	font-family: "Montserrat";
	font-style: 600;
	font-display: swap;
}
@font-face {
	src: url("/fonts/Montserrat-SemiBold.woff") format("woff");
	font-family: "Montserrat";
	font-style: 500;
	font-display: swap;
}



#opening{
	opacity: 1;
	position: fixed;
	background: #f5ded4;
	width:100%;
	height: 100%;
	pointer-events: none;
	z-index: 1100;
	top: 0;
	left: 0;
}
#opening .logo{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
	width:100%;
	height: 60px;
	opacity: 0;
	text-align: center;
}
#opening .logo{
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-size: 34px;
	letter-spacing: .2em;
	margin-left: 0;
}
#opening .logo img{
	width: 70%;
	height: auto;
	
}
#opening .logo img.openlogo{
	width: 30%;
	height: auto;
	
}

#opening2{
	opacity: 1;
	position: fixed;
	background: #f5ded4;
	width:100%;
	height: 100%;
	pointer-events: none;
	z-index: 1100;
	top: 0;
	left: 0;
}



/*COMMON*/


html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}


body,html {
	width:100%;
	height:100%;

}
body {
	color: #303030;
	font-size: 100%;
	line-height: 160%;

	font-family: "Montserrat",'Noto Sans JP', sans-serif;
	font-weight: 400;

	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	
	position:relative;
	
	background: #F8F7F3;
	letter-spacing: 0.08em;


}
input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

#wrap{
	position: relative;
}


.home #wrap{
	overflow: hidden;
	position: relative;
}



p{
	line-height:160%;
	margin-bottom: 10px
}

a,a:hover,a:visited,a:active{
	color:#303030;
	text-decoration: none;
}
img{
  vertical-align:bottom;
}

h1 {
	margin-bottom: 40px;
}

*:focus {
  outline: none;
}
a {
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  cursor:pointer;
}



ul.disc li{
position:relative;
margin-bottom:10px;
padding-left:10px;
}
ul.disc li::before{
content:"";
position:absolute;
width:3px;
height:3px;
border-radius:10px;
background:#000;
top:10px;
left:0;
}


/* -------- 共通 --------*/
h2.contTitle{
	font-size: 28px;
	margin-bottom: 8vw;
	letter-spacing: .14em;
}
h2.contTitle.h2titleC{
	text-align: center;
}
h2.contTitle.h2titleS{
	text-align: left;
	font-size: 10px;
	position: relative;

	
	align-items: center;
    display: flex;
    justify-content: space-between;
    white-space: nowrap;
}
h2.contTitle.h2titleS::after{
    background-color: #000;
    content: "";
    display: block;
    height: 1px;
    margin-left: 1.5rem;
    opacity: .1;
    transform: scaleX(1);
    transition: opacity 2.5s, transform 2.5s cubic-bezier(.19,1,.22,1);
    transform-origin: left;
    width: 100%;
}



h2.contTitle.h2titleSC{
	text-align: center;
	font-size: 10px;
	margin-bottom: 10px;
}

.taxtxt{
	font-size: 70%;
}



/*header*/
header{
	padding: 0;
	text-align: center;
    position: fixed;
    z-index: 100;
    

    width:100%;
	height: 18vw;
	
    
    top: 0;
    left: 0;
    
    box-shadow: 0 0 5px rgba(0,0,0,.1);
    
	/*border-bottom: 10px solid #C58580;*/
		mix-blend-mode: exclusion;

}


.home header{
    box-shadow: 0 0 5px rgba(0,0,0,0);
	transition: all .3s ease-in-out;
}

.home header.is-fixed {
	background: rgba(0,0,0,.2);
}


#logo{
    position: absolute;
    z-index: 600;
	top: 6vw;
	left: 7.4vw;
}

#logo h1{
	margin: 0;
	text-align: left;
	padding: 0 0 0 0;
	width: 140px;
	height: 26px
}
#logo h1{
	font-size: 0;
	background: url("../../images/logo_w.png") no-repeat 0 0;
	background-size: 100% auto;
}
#logo img{
	width:auto;
	height: 63px;
}
#logo h1 a{
	display: block;
	height: 100%;
}

#headSmenu{
	position: absolute;
	right: 60px;
	top: 50%;
	transform: translateY(-50%);
}

#headSmenu ul{
	display: flex;
}


#headSmenu ul li{
	font-size: 12px;
	margin-left: 10px;
	
}
#headSmenu ul li a{
	text-decoration: none;
	color: #fff;
	font-weight: 500;

}


/*ハンバーガーメニュー*/
#panel-btn {
	position: absolute;
	right: 0;
	top: 0;
	width:50px;
	height: 18vw;
	margin: 0 0 0 0;
	padding: 0 0;
	cursor:pointer;
	z-index:500;


}


#panel-btn-icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 1px;
	margin: 0 0 0 -11px;
	background: #fff;
	overflow: visible;
	transition: .3s;
}
#panel-btn-icon:before, #panel-btn-icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 1px;
	margin-left: -11px;
	background: #fff;
	transition: .3s;
}
.is-fixed #panel-btn-icon,
.is-fixed #panel-btn-icon:before, .is-fixed #panel-btn-icon:after{
	background: #fff;
}
#panel-btn-icon:before {
	margin-top: -7px;
}
#panel-btn-icon:after {
	margin-top: 6px;
}

#panel-btn .close {
	transform: rotate(-360deg);
	-webkit-transform: rotate(-360deg);
	background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after {
	background: #7C7C7C;
	margin-top: -1px;
}
#panel-btn .close:before {
	transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
}
#panel-btn .close:after {
	transform: rotate(-150deg);
	-webkit-transform: rotate(-150deg);
}

#panel{
	display: none;
	position: fixed;
	top:0;
	left: 0;
	z-index: 95;
	width:100%;
	height: 100%;
	transform: translateY(0);
	-webkit-transform: translateY(0);
	background: #192632;
}
#panelBg{
	display: none;
	position: fixed;
	top:0;
	left: 0;
	width:100%;
	height: 100%;
	background: rgba(6,6,6,.5);
	z-index: 94;
}
#panel ul{
	position: absolute;
	top: 70px;
	left: 0;

	width:100%;

	padding: 0 7.5%;

	z-index: 101;
}
#panel ul li{
	font-weight: 500;
	font-style: normal;
	transition: all .3s ease-in-out .2s;
	margin: 0;


	opacity: 1;
	display: block;

	position: relative;
	width:100%;

	letter-spacing: .1em;
	text-align: left;


}


#panel ul li span,
#panel ul li a{
	text-decoration: none;
	color: #fff !important;
	display: block;

	font-size: 8px;
	line-height: 100%;
	padding: 20px 0;
	text-align: left;

}



#gnavi > li {
	position: relative;
}
#gnavi > li > ul {
	visibility:visible;
	opacity: 1;
	z-index: 1;

}
#gnavi > li > ul {
	position: relative;
	top: inherit;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid rgba(255,255,255,.2);
	
	justify-content: space-between;
}
#gnavi > li:hover > ul {
	top: inherit;
	visibility: visible;
	opacity: 1;
}
#gnavi > li > ul > li {
	display: block;
	width:50%;
}
#gnavi > li > ul > li:nth-of-type(2n) {
	width:45%;
}
#gnavi > li > ul > li:nth-last-of-type(1) {
	border-bottom: none;
}
#gnavi > li > ul > li a{
	display: block;
	line-height: 160%;
	padding: 12px 0;
	color: #333;
	font-weight: normal;
}
#gnavi > li > ul > li a::before{
	content: "-";
}

#gnavi > li.listbrd {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid rgba(255,255,255,.2);
}





/*promotion*/

#promotion{
	position: relative;
	
	
}
#promotion .promoMain{
}

#promotion .promoMain.promo00 div{
}

#promotion .promoMain.promo01{
	background: url("../../images/promotion/promotion1.jpg?v=0002") no-repeat center center;
	background-size: cover;
}


#promotion .promoMain.promo02{
	background: url("../../images/promotion/promotion2.jpg?v=0002") no-repeat center center;
	background-size: cover;
}
#promotion .promoMain.promo03{
	background: url("../../images/promotion/promotion3.jpg?v=0002") no-repeat center center;
	background-size: cover;
}
#promotion .promoMain.promo04{
	background: url("../../images/promotion/promotion4.jpg?v=0002") no-repeat center center;
	background-size: cover;
}

/*スライド拡大アニメ*/
.slide {
  margin-inline: auto;
  overflow: hidden; /* 画像がはみ出ないようにする */
}
.promoMain {
  width: 100%;
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15); /* 拡大率 */
  }
}
@keyframes zoomUp2 {
  0% {
	transform: scale(1);
	 	background: url("../../images/promotion/promotion1.jpg?v=0001") no-repeat left 0 center;
 	background-size: cover;
  }
  100% {
	transform: scale(1);/* 拡大率 */
	 	background: url("../../images/promotion/promotion1.jpg?v=0001") no-repeat left 100% center;
 	background-size: cover;
  }
}
.add-animation {
  animation: zoomUp 6.5s linear 0s normal both;
}
.add-animation:nth-of-type(2) {
  animation: none;
}


.add-animation .promo01 {
  animation: zoomUp2 6.5s linear 0s normal both;
}





.slick-dotted{
    position: relative;
	padding: 0 0 0;
}
.slick-dotted .slick-dots{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    justify-content: flex-start;

    position: absolute;
    bottom: 5.2vw;
    left: 9%;
    width:84%;
	text-align: left;
}
.slick-dotted .slick-dots li{
    width:6px;
    height: 6px;
    margin: 0 10px 0 0;
}
.slick-dotted .slick-dots li button{
    width:100%;
    height: 100%;
    display: block;
    background:#fff;;
	background:rgba(255,255,255,.0);
	border: 1px solid #fff;
	border-radius: 50%;
    text-indent: -9999px;
    line-height: 100%;
    padding: 0;
    outline:0;
	
	cursor: pointer;
}
.slick-dotted .slick-dots li.slick-active button {
    background:#fff;;
}


#promotion .promoInfo{
	position: absolute;
	bottom: 15vw;
	left: 8%;
	width:84%;
	
	background: #E6D6CD;
	
	display: flex;
	flex-wrap: wrap;
}
#promotion .promoInfo a{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#promotion .promoInfo .promoInfoImg{
	width: 24%;
	
}
#promotion .promoInfo .promoInfoImg img{
	width: 100%;
	height: auto;
}
#promotion .promoInfo .promoInfoTxt{
	width: 76%;
	font-size: 12px;
	line-height: 160%;
	padding: 7px 14px 8px;
	
}
#promotion .promoInfo .promoInfoTxt .promoInfoDate{
	font-size: 8px;
	opacity: .7;
	display: block;
}


.slick-slide video {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}





/*concept*/


#concept{
	padding: 40px 7.5% 30px;
}

.conceptTitle{
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-size: 4vw;
	text-align: center;
	margin-bottom: 30px;
	letter-spacing: .4em;
}

.conceptTxt{
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-size: 3vw;
	text-align: center;
	line-height: 320%;
	letter-spacing: .2em;
}



/*information*/


#information{
	padding: 30px 0 50px;
}
#information h2.contTitle{
	padding: 0 7.5% 0;
}
.infoSlide{
	padding: 0 calc(7.5% - 14px) 0;
}
.infoSlide .infoSlideBox{
	padding: 0 14px;
}
.infoSlide .infoSlideBox a{
	display: block;
	text-decoration: none;
	
}

.infoSlide .infoSlideBox .infoSlideImg{
	margin-bottom: 10px;
}

.infoSlide .infoSlideBox .infoSlideImg img{
	width: 100%;
	height: auto;
	
}
.infoSlide .infoSlideBox .infoSlideDate{
	font-size: 8px;
	text-decoration: none;
	opacity: .7;
	display: block;
}
.infoSlide .infoSlideBox .infoSlideTxt {
	font-size: 10px;
	text-decoration: none;
	color: #303030;
	line-height: 160%;
}




.infoSlide .slick-prev,.infoSlide .slick-next{
	content: "";
	width: 10px;
	height: 10px;
	z-index: 1;
	top: 31%;
}
.infoSlide .slick-prev{
	left: 10px;
	transform: rotate(-45deg);
	border-top: 1px solid #000;
	border-left: 1px solid #000;
}

.infoSlide .slick-next {
	right: 10px;
	transform: rotate(135deg);
	border-top: 1px solid #000;
	border-left: 1px solid #000;
}


.infoSlide .slick-prev:before{
	content: "";
}

.infoSlide .slick-next:before {
	content: "";
}



/*product*/


#product{
	padding: 20px 0 50px;
}
#product h2.contTitle{
	padding: 0 7% 0;
}

.homeProductList{
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ACACAC;
}

.homeProductBox{
	width: 50%;
	text-align: center;
	line-height: 100%;
	border-bottom: 1px solid #ACACAC;
	padding: 20px 0;
}
.homeProductBox:nth-of-type(2n-1){
	border-right: 1px solid #ACACAC;

}
.homeProductBox a{
	text-decoration: none;
	color: #333;
}
.homeProductName{
	font-size: 9px;
}
.homeProductImg{
	text-align: center;
	padding: 10px 0 14px;
}
.homeProductImg img{
	width: 75%;
	height: auto;
	
}

.homeProductPrice{
	font-size: 9px;
}
.homeProductIcon{
	text-align: center;
}
.homeProductIcon span{
	display: inline-block;
	font-size: 7px;
	background: #fff;
	padding: 4px 8px;
	border: 1px solid #acacac;
	border-radius: 30px;
	line-height: 100%;

}


/*story*/


#story{
	padding: 30px 0 30px;
	
	/*background:#edd5cd;*/
	background:#F1DFD9;
	
}
#story h2.contTitle{
	padding: 0 7.5% 0;
	margin-bottom: 30px;
}

.homeStoryArea{
	display: flex;
	flex-wrap: wrap;
	padding: 0 7.5% 0;

}
.homeStoryTxt{
	width: 72%;
	
}
.homeStoryTxt p{
	font-size: 7px;
	line-height: 300%;
}

.homeStoryImg{
	width: 28%;
	
}
.homeStoryImg img{
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 10px;
}
.homeStoryImgName{
	display: block;
	font-size: 7px;
	text-align: right;
	line-height: 200%;
}

.storyOpen{

	padding-top: 0;
	text-align: center;
}
.storyOpen img{
	width: 24px;
	height: 16px;
	display: inline-block;
}

.storyMore{
	display: none;
}




/*insta*/


#insta{
	padding: 30px 0 50px;
	
}
#insta h2.contTitle{
	padding: 0 7.5% 0;
	margin-bottom: 30px;
}

.instaTitle{
	position: relative;
	
}
.instaTitle::before{
	content: "";
		background:#F8F7F3 url("../../images/insta_icon.png") no-repeat 3px 3px;
		background-size: 40px auto;
	width: 45px;
	height: 45px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	padding: 5px;
	border-radius: 50%;
	z-index: 1;
}

.instaBoxs{
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	width: 67%;
	
}
.instaBox{
	width: 33.3333333%;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	height: 22vw;
}




#pageTopFix{
	position: fixed;
	bottom: 44px;
	right: calc(12.5vw - 36px);
	z-index: 1;
}

#pageTopFix a{
	display: inline-block;

}

#pageTopFix img{
	width: 40px;
	height: 40px;
	display: block;
}
#pageTopFix.productFixBtn img.pagetopimg1{
	height: 40px;
	width: auto;
	display: block;
}
#pageTopFix.productFixBtn img.pagetopimg2{
	width: 37px;
	height: 40px;
	display: block;
}
#pageTopFix form{
	display: inline-block;
}
#pageTopFix input[type=image]{
	height: 40px;
	width: auto;
}

	
	





footer{
	padding: 30px 7.5% 30px;
	
	background:#edd5cd;
}

.footTop{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
.footLogo{
	width: 50%;
	text-align: left;
	
}
.footLogo img{
	width: 75%;
	height: auto;
}
.footCatch{
	width: 50%;
	text-align: right;
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-size: 4.65vw;
	letter-spacing: .2em;
}

.footMenu{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
}

.footMenuL{
	width: 50%;
}

.footMenuR{
	width: 45%;
}

.footMenuList{
	margin-bottom: 34px;
}


.footMenuList li{
	font-size: 8px;
	line-height: 100%;
	margin-bottom: 13px;
}

.footMenuList li a{
	color: #303030;
	text-decoration: none;
}



.footBtm{
	display: flex;
	flex-wrap: wrap;
}
.copyrigh{
	width:50%;
	font-size: 8px;
	line-height: 100%;
}
#pagetop{
	width:50%;
	text-align: right;
	line-height: 100%;
	font-size: 10px;
	
	display: none !important;
}
#pagetop a{
	display: inline-block;
	padding: 0 0 0 15px;
	background: url("../../images/pagetop.png") no-repeat left top;
	background-size: auto 100%;
	color: #333333;
	text-decoration: none;
}





/*pageCont 通常ページコンテンツ*/
#pageCont{
	
}


.infoTable{
	
}



.infoImg{
	margin-bottom: 20px;	
}
.infoImg img{
	display: block;
	width: 100%;
	height: auto;
}

.infoTable table{
	width: 100%;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}


.infoTable table th,
.infoTable table td{
	padding: 10px;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
}
.infoTable table th{
	background: #eee;
}



/**/
.inview{
	transition: 1s ease-out;
	transition-delay:0.2s;
	opacity: 0;
	transform: translateX(30px);
	-webkit-transform: translateX(30px);
  display: block;
  mask-image: linear-gradient(135deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
  -webkit-mask-image: linear-gradient(135deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
  mask-size: 450% 450%;
  -webkit-mask-size: 450% 450%;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: 130% 130%;
  -webkit-mask-position: 130% 130%;
  animation: mask-animation 1.5s linear forwards;

	}
.inviewOn{
	opacity: 1;
	transform: translateX(0);
	-webkit-transform: translateX(0);

	    mask-position: 0 0;
    -webkit-mask-position: 0 0;

}
.inview2{
	transition: 1s ease-out;
	transition-delay:0.2s;
	opacity: 0;
	transform: translateX(-30px);
	-webkit-transform: translateX(-30px);
}
.inviewOn2{
	opacity: 1;
	transform: translateX(0);
	-webkit-transform: translateX(0);
}
.inview3{
	transition: 1s ease-out;
	transition-delay:0.2s;
	opacity: 0;
}
.inviewOn3{
	opacity: 1;
}

.inview4{
	transition: 1s ease-out;
	transition-delay:0.2s;
	opacity: 0;
	transform: translateY(30px);
	-webkit-transform: translateY(30px);
}
.inviewOn4{
	opacity: 1;
	transform: translateY(0);
	-webkit-transform: translateY(0);
}

.inview5{
	overflow: hidden
}
.inview5 img{
	display: inline-block;
	opacity: 0;
	transition: 0.6s ease-out;
	transition-delay:0.3s;
	transform: scale(1.3);
}
.inview5 .pdttopimg{
	display: inline-block;
	opacity: 0;
	transition: 1s ease-out;
	transition-delay:0.0s;
	transform: scale(1.08);
}

.inviewOn5 img{
 	opacity: 1;
	transform: scale(1);
}
.inviewOn5 .pdttopimg{
 	opacity: 1;
	transform: scale(1);
}




.inview6{
	overflow: hidden
}
.inview6 img{
	display: inline-block;
	opacity: 0;
	transition: 0.6s ease-out;
	transition-delay:0.3s;
	transform: scale(1.3);
}
.inview6 .pdttopimg{
	display: inline-block;
	opacity: 0;
	transition: .5s ease-out;
	transition-delay:0.0s;
	transform: scale(1.05);
}

.inviewOn6 img{
 	opacity: 1;
	transform: scale(1);
}
.inviewOn6 .pdttopimg{
 	opacity: 1;
	transform: scale(1);
}


.inviewslideinfo{
	transition: 1s ease-out;
	opacity: 0;
	transform: translateX(-60px);
	-webkit-transform: translateX(-60px);


  display: block;
  mask-image: linear-gradient(135deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
  -webkit-mask-image: linear-gradient(135deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.4) 45%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
  mask-size: 450% 450%;
  -webkit-mask-size: 450% 450%;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: 130% 130%;
  -webkit-mask-position: 130% 130%;
  animation: mask-animation 1.5s linear forwards;

	
	
}
.inviewOnslideinfo{
	opacity: 1;
	transform: translateX(0);
	-webkit-transform: translateX(0);

    mask-position: 0 0;
    -webkit-mask-position: 0 0;

}



	.sp{
		display: block;
	}
	
	.pc{
		display: none;
	}





@media screen and (min-width: 762px) {

	.pc{
		display: block;
	}	

	.sp{
		display: none;
	}

	
	
	

	#opening{
		opacity: 1;
		position: fixed;
		background: #f5ded4;
		width:100%;
		height: 100%;
		pointer-events: none;
		z-index: 1100;
		top: 0;
		left: 0;
	}
	#opening .logo{
	  position: absolute;
	  top: 0;
	  bottom: 0;
	  left: 0;
	  right: 0;
	  margin: auto;
	  max-width: 100%;
	  max-height: 100%;
		width:100%;
		height: 60px;
		opacity: 0;
		text-align: center;
	}
	#opening .logo{
		font-family: "fot-tsukumin-pr6n", sans-serif;
		font-size: 34px;
		letter-spacing: .2em;
		margin-left: 0;
	}
	#opening .logo img{
		width: 300px;
		height: auto;

	}
	#opening .logo img.openlogo{
		width: 190px;
		height: auto;

	}
	
	
	ul.disc {
		margin-bottom: 30px;
	}

	ul.disc li{
		font-size:12px;
		line-height: 160%;
	}
    .home #wrap{
        overflow: hidden;
    }



	


	/* -------- 共通 --------*/
	h2.contTitle{
		font-size: 38px;
		margin-bottom: 50px;
	}
	h2.contTitle.h2titleC{
		text-align: center;
	}
	h2.contTitle.h2titleS{
		text-align: left;
		font-size: 18px;
	}
	h2.contTitle.h2titleS.pcLtitle{
		align-items:flex-start;
		text-align: left;
		font-size: 38px;
		display: block;
	}
	h2.contTitle.h2titleS.pcLtitle::after{
		display: none;
	}
	
	
	h2.contTitle.h2titleSC{
		text-align: center;
		font-size: 18px;
		margin-bottom: 20px;
	}

	/*header*/
	header{
		padding: 0;
		text-align: center;
		position: fixed;
		z-index: 100;


		width:100%;
		height: 86px;


		top: 0;
		left: 0;

		/*border-bottom: 10px solid #C58580;*/

	}
	.home header{
		box-shadow: 0 0 5px rgba(0,0,0,0);
		transition: all .3s ease-in-out;
	}

	.home header.is-fixed {
		background: rgba(0,0,0,.0);
	}

	#headSmenu{
		position: absolute;
		right: 100px;
		top: 50%;
		transform: translateY(-50%);
	}

	#headSmenu ul{
		display: flex;
	}


	#headSmenu ul li{
		font-size: 14px;
		margin-left: 20px;

	}
	#headSmenu ul li a{
		text-decoration: none;
		color: #fff;
		font-weight: 500;
	}
	
	

	#logo{
		position: absolute;
		z-index: 600;
		top: 30px;
		left: 30px;
	}

	#logo h1{
		margin: 0;
		text-align: left;
		padding: 0 0 0 0;
		width: 140px;
		height: 26px
	}
	#logo h1{
		font-size: 0;
		background: url("../../images/logo_w.png") no-repeat 0 0;
		background-size: 100% auto;
	}
	#logo img{
		width:auto;
		height: 63px;
	}



	.debutIcon{
		position: absolute;
		top:144px;
		right: 5%;
		width:160px;
		height: 160px;

		z-index: 90;

		transition: 1s all;
	}

	.debutIcon img{
		width:100%;
		height: auto;
	}







	/*ハンバーガーメニュー*/
	#panel-btn {
		position: absolute;
		right: 20px;
		top: 0;
		width:50px;
		height: 86px;
		margin: 0 0 0 0;
		padding: 0 0;
		cursor:pointer;
		z-index:500;


	}


	#panel-btn-icon {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 42px;
		height: 1px;
		margin: 0 0 0 -21px;
		background: #fff;
		overflow: visible;
		transition: .3s;
	}
	#panel-btn-icon:before, #panel-btn-icon:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 42px;
		height: 1px;
		margin-left: -21px;
		background: #fff;
		transition: .3s;
	}
	.is-fixed #panel-btn-icon,
	.is-fixed #panel-btn-icon:before, .is-fixed #panel-btn-icon:after{
		background: #fff;
	}
	#panel-btn-icon:before {
		margin-top: -7px;
	}
	#panel-btn-icon:after {
		margin-top: 6px;
	}

	#panel-btn .close {
		transform: rotate(-360deg);
		-webkit-transform: rotate(-360deg);
		background: transparent;
	}
	#panel-btn .close:before, #panel-btn .close:after {
		background: #7C7C7C;
		margin-top: -1px;
	}
	#panel-btn .close:before {
		transform: rotate(-30deg);
		-webkit-transform: rotate(-30deg);
	}
	#panel-btn .close:after {
		transform: rotate(-150deg);
		-webkit-transform: rotate(-150deg);
	}

	#panel{
		display: none;
		position: fixed;
		top:0;
		left: auto;
		right: 0;
		z-index: 95;
		width:40%;
		height: 100%;
		transform: translateY(0);
		-webkit-transform: translateY(0);
	}
	#panelBg{
		display: none;
		position: fixed;
		top:0;
		left: 0;
		width:100%;
		height: 100%;
		background: rgba(0,0,0,.5);
		z-index: 94;
	}
	#panel ul{
		position: absolute;
		top: 70px;
		left: 0;

		width:100%;

		padding: 0 8%;

		z-index: 101;
	}
	#panel ul li{
		font-weight: 500;
		font-style: normal;
		transition: all .3s ease-in-out .2s;
		margin: 0;

		opacity: 1;
		display: block;

		position: relative;
		width:100%;

		letter-spacing: .1em;
		text-align: left;


	}


	#panel{
	}
	#panel ul li span,
	#panel ul li a{
		text-decoration: none;
		color: #fff !important;
		display: block;

		font-size: 10px;
		line-height: 100%;
		padding: 12px 0;
		text-align: left;

	}



	#gnavi > li {
		position: relative;
	}
	#gnavi > li > ul {
		visibility:visible;
		opacity: 1;
		z-index: 1;

	}
	#gnavi > li > ul {
		position: relative;
		top: inherit;
		display: flex;
		flex-wrap: wrap;
		padding: 0 0 20px;
		margin-bottom: 20px;
		border-bottom: 1px solid rgba(255,255,255,.2);
	}
	#gnavi > li:hover > ul {
		top: inherit;
		visibility: visible;
		opacity: 1;
	}
	#gnavi > li > ul > li {
		display: block;
		width:50%;
	}
	#gnavi > li > ul > li:nth-last-of-type(1) {
		border-bottom: none;
	}
	#gnavi > li > ul > li a{
		display: block;
		line-height: 100%;
		padding: 12px 0;
		color: #333;
		font-weight: normal;
	}
	#gnavi > li > ul > li a::before{
		content: "-";
	}

	#gnavi > li.listbrd {
		padding-bottom: 15px;
		margin-bottom: 15px;
		border-bottom: 1px solid rgba(255,255,255,.2);
	}





	/*promotion*/

	#promotion{
		position: relative;

	}
	#promotion .promoMain{
	}


	#promotion .promoMain.promo01{
		background: url("../../images/promotion/promotion1.jpg?v=0001") no-repeat center center;
		background-size: cover;
	}
	#promotion .promoMain.promo02{
		background: url("../../images/promotion/promotion2.jpg?v=0001") no-repeat center center;
		background-size: cover;
	}
	#promotion .promoMain.promo03{
		background: url("../../images/promotion/promotion3.jpg?v=0001") no-repeat center center;
		background-size: cover;
	}
	#promotion .promoMain.promo04{
		background: url("../../images/promotion/promotion4.jpg?v=0001") no-repeat center center;
		background-size: cover;
	}

	/*スライド拡大アニメ*/
	.slide {
	  margin-inline: auto;
	  overflow: hidden; /* 画像がはみ出ないようにする */
	}
	.promoMain {
	  width: 100%;
	}
	@keyframes zoomUp {
	  0% {
		transform: scale(1);
	  }
	  100% {
		transform: scale(1.15); /* 拡大率 */
	  }
	}
	@keyframes zoomUp2 {
	  0% {
		transform: scale(1);
			background: url("../../images/promotion/promotion1.jpg?v=0001") no-repeat left 0 center;
		background-size: cover;
	  }
	  100% {
		transform: scale(1);/* 拡大率 */
			background: url("../../images/promotion/promotion1.jpg?v=0001") no-repeat left 0 center;
		background-size: cover;
	  }
	}
	.add-animation {
	  animation: zoomUp 6.5s linear 0s normal both;
	}
	.add-animation:nth-of-type(2) {
	  animation: zoomUp 6.5s linear 0s normal both;
	}


	.add-animation .promo01 {
	  animation: zoomUp2 6.5s linear 0s normal both;
	}





	.slick-dotted{
		position: relative;
		padding: 0 0 0;
	}
	.slick-dotted .slick-dots{
		display: -webkit-box;
		display: -ms-flexbox;
		display: block;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		justify-content: flex-start;

		position: absolute;
		bottom: 50%;
		left: auto;
		right: 40px;
		width:20px;
	}
	.slick-dotted .slick-dots li{
		width:6px;
		height: 6px;
		margin: 0 0 17px 0;
		display: block;
	}
	.slick-dotted .slick-dots li button{
		width:100%;
		height: 100%;
		display: block;
		background:#fff;;
		background:rgba(255,255,255,.0);
		border: 1px solid #fff;
		border-radius: 50%;
		text-indent: -9999px;
		line-height: 100%;
		padding: 0;
		outline:0;

		cursor: pointer;
	}
	.slick-dotted .slick-dots li.slick-active button {
		background:#fff;;
	}


	#promotion .promoInfo{
		position: absolute;
		bottom: 70px;
		left: 9%;
		width:430px;

		background: #E6D6CD;

		display: flex;
		flex-wrap: wrap;
	}

	#promotion .promoInfo .promoInfoImg{
		width: 30%;

	}
	#promotion .promoInfo .promoInfoImg img{
		width: 100%;
		height: auto;
	}
	#promotion .promoInfo .promoInfoTxt{
		width: 70%;
		font-size: 12px;
		line-height: 160%;
		padding: 12px 14px 8px;

	}
	#promotion .promoInfo .promoInfoTxt .promoInfoDate{
		font-size: 8px;
		opacity: .7;
		display: block;
	}


	.slick-slide video {
	  display: block;
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  min-width: 100%;
	  min-height: 100%;
	  width: auto;
	  height: auto;
	  -webkit-transform: translate(-50%, -50%);
	  transform: translate(-50%, -50%);
	}



	

	/*concept*/


	#concept{
		padding: 100px 7% 50px;
	}

	.conceptTitle{
		font-family: "fot-tsukumin-pr6n", sans-serif;
		font-size: 42px;
		text-align: center;
		margin-bottom: 60px;
		margin-top: 80px;
		letter-spacing: .4em;
	}

	.conceptTxt{
		font-family: "fot-tsukumin-pr6n", sans-serif;
		font-size: 24px;
		text-align: center;
		line-height: 320%;
		letter-spacing: .2em;
	}



	/*information*/


	#information{
		padding: 50px 0 50px;
	}
	#information section{
		display: flex;
		flex-wrap: wrap;
		padding: 0 0 0 7%;
		align-items: flex-start;
		
	}
	
	#information h2.contTitle{
		padding: 0 40px 0 0; 
		width: 22%;
	}
	.infoSlide{
		width: 78%;
		padding: 0 0 0 0;
	}
	
	.infoSlide .slick-list {
		padding: 0 10% 0 1% !important;
	}
	
	
	.infoSlide .infoSlideBox{
		padding: 0 14px;
	}
	.infoSlide .infoSlideBox a{
		display: block;
		text-decoration: none;

	}

	.infoSlide .infoSlideBox .infoSlideImg{
		margin-bottom: 10px;
	}

	.infoSlide .infoSlideBox .infoSlideImg img{
		width: 100%;
		height: auto;

	}
	.infoSlide .infoSlideBox .infoSlideDate{
		font-size: 8px;
		text-decoration: none;
		opacity: .7;
		display: block;
	}
	.infoSlide .infoSlideBox .infoSlideTxt {
		font-size: 10px;
		text-decoration: none;
		color: #303030;
		line-height: 160%;
	}




	.infoSlide .slick-prev,.infoSlide .slick-next{
		content: "";
		width: 16px;
		height: 16px;
		z-index: 1;
		top: 36%;
	}
	.infoSlide .slick-prev{
		left: 4px;
		transform: rotate(-45deg);
		border-top: 1px solid #000;
		border-left: 1px solid #000;
	}

	.infoSlide .slick-next {
		right: 9.4%;
		transform: rotate(135deg);
		border-top: 1px solid #000;
		border-left: 1px solid #000;
	}


	.infoSlide .slick-prev:before{
		content: "";
	}

	.infoSlide .slick-next:before {
		content: "";
	}



	/*product*/


	#product{
		padding: 50px 0 50px;
	}
	#product h2.contTitle{
		padding: 0 7% 0;
	}

	.homeProductList{
		display: flex;
		flex-wrap: wrap;
		border-top: 1px solid #ACACAC;
	}

	.homeProductBox{
		width: 33.333333%;
		text-align: center;
		line-height: 100%;
		border-bottom: 1px solid #ACACAC;
		padding: 20px 20px;
		border-right: 1px solid #ACACAC;
		transition: all .4s ease-in-out;
	}
	.homeProductBox:nth-of-type(2n-1){
		border-right: 1px solid #ACACAC;

	}
	.homeProductBox a{
		text-decoration: none;
		color: #333;
	}
	.homeProductBox:hover{
		background: #fff;
	}
	.homeProductName{
		font-size: 14px;
		line-height: 200%;
	}
	.homeProductImg{
		text-align: center;
		padding: 14px 0 18px;
	}
	.homeProductImg img{
		width: 94%;
		height: auto;

	}

	.homeProductPrice{
		font-size: 14px;
	}
	.homeProductIcon{
		text-align: center;
		margin-top: 15px;
	}
	.homeProductIcon span{
		display: inline-block;
		font-size: 12px;
		background: #fff;
		padding: 4px 8px;
		border: 1px solid #acacac;
		border-radius: 30px;
		line-height: 100%;

	}


	/*story*/


	#story{
		padding: 60px 0 60px;

		/*background:#edd5cd;*/
		background:#F1DFD9;

	}
	#story h2.contTitle{
		width: 1000px;
		margin: 0 auto 30px;
		padding: 0 0 0;
	}

	.homeStoryArea{
		width: 1000px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		padding: 0 0 0;

	}
	.homeStoryTxt{
		width: 70%;
		font-family: "fot-tsukumin-pr6n", sans-serif;
	}
	.homeStoryTxt p{
		font-size: 16px;
		line-height: 300%;
	}

	.homeStoryImg{
		width: 30%;

	}
	.homeStoryImg img{
		width: 100%;
		height: auto;
		display: block;
		margin-bottom: 10px;
	}
	.homeStoryImgName{
		display: block;
		font-size: 12px;
		text-align: right;
		line-height: 200%;
		font-family: "fot-tsukumin-pr6n", sans-serif;
	}

	.storyOpen{

		padding-top: 0;
		text-align: center;
	}
	.storyOpen img{
		width: 36px;
		height: 27px;
		display: inline-block;
	}

	.storyMore{
		display: none;
	}




	/*insta*/


	#insta{
		padding: 60px 0 60px;

	}
	#insta h2.contTitle{
		padding: 0 0 0;
		width: 1000px;
		margin: 0 auto 30px;
	}

	.instaTitle{
		position: relative;
	}
	.instaTitle::before{
		content: "";
		background:#F8F7F3 url("../../images/insta_icon.png") no-repeat 3px 3px;
		background-size: 40px auto;
		width: 45px;
		height: 45px;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		padding: 5px;
		z-index: 1;
	}
	.instaBoxs{
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
		width: 1000px;

	}
	.instaBox{
		width: 33.3333333%;
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		height: 22vw;
	}


	#pageTopFix{
		position: fixed;
		bottom: 50px;
		right: calc(5vw - 55px);
		z-index: 1;
	}

	#pageTopFix a{
		display: inline-block;

	}
	
	#pageTopFix img{
		width: 50px;
		height: 50px;
		display: block;
	}
	#pageTopFix.productFixBtn img.pagetopimg1{
		height: 50px;
		width: auto;
		display: block;
	}
	#pageTopFix.productFixBtn img.pagetopimg2{
		width: 46px;
		height: 50px;
		display: block;
	}
	#pageTopFix form{
		display: inline-block;
	}
	#pageTopFix input[type=image]{
		height: 50px;
		width: auto;
	}
	
	
	
	
	footer{
		padding: 60px 7% 60px;

		background:#edd5cd;
		
		display: flex;
		
		flex-wrap: wrap;
	}

	.footTop{
		width: 40%;
		
		display: block;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}
	.footLogo{
		width: 100%;
		text-align: left;
		margin-bottom: 20px;

	}
	.footLogo img{
		width: 150px;
		height: auto;
	}
	.footCatch{
		width: 50%;
		text-align: left;
		font-family: "fot-tsukumin-pr6n", sans-serif;
		font-size: 18px;
	}

	.footMenu{
		width: 60%;
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}

	.footMenuL{
		width: 50%;
		display: flex;
		flex-wrap: wrap;
	}

	.footMenuR{
		display: flex;
		flex-wrap: wrap;
		width: 50%;
	}

	.footMenuList{
		margin-bottom: 40px;
		width: 50%;
		
	}


	.footMenuList li{
		font-size: 10px;
		line-height: 100%;
		margin-bottom: 18px;
	}

	.footMenuList li a{
		color: #303030;
		text-decoration: none;
	}



	.footBtm{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.copyrigh{
		width:50%;
		font-size: 10px;
		line-height: 100%;
	}
	#pagetop{
		width:50%;
		text-align: right;
		line-height: 100%;
		font-size: 8px;
		
		display: none !important;
	}
	#pagetop a{
		display: inline-block;
		padding: 0 0 0 15px;
		background: url("../../images/pagetop.png") no-repeat left top;
		background-size: auto 100%;
		color: #333333;
		text-decoration: none;
	}






    

}



.grecaptcha-badge {
	bottom: -7px !important;
	right: -172px !important;
	transform: scale(0.75);
	opacity: 0.6;
}