@charset "UTF-8";

/*
■ リセット
■ 共通
■ キービジュアル
■ 導入
■ 商品一覧
■ VIEW ALL
■ アトリエ紹介
■ バックナンバー
■ フッター
■ ページの先頭へ
■ 印刷用設定

■ JSライブラリ
*/



/* ■ リセット ==================================================================================== */

body { margin: 0; padding: 0; }

#Feature_ div, #Feature_ section { margin: 0; color: inherit; word-break: normal; }
#Feature_ h1, #Feature_ h2, #Feature_ h3, #Feature_ h4, #Feature_ h5, #Feature_ p { margin: 0; padding: 0; letter-spacing: inherit; color: inherit; word-break: normal; }
#Feature_ dl, #Feature_ dt, #Feature_ dd { margin: 0; padding: 0; color: inherit; word-break: normal; }
#Feature_ *, #Feature_ *:before, #Feature_ *:after, #Feature_ *::before, #Feature_ *::after { box-sizing: border-box; }
#Feature_ *:focus { outline: none; }
#Feature_ figure,#Feature_ img,#Feature_ picture,#Feature_ video,#Feature_ canvas,#Feature_ svg { display: block; max-width: 100%; height: auto; border: none; vertical-align: bottom; }
#Feature_ form { margin: 0; padding: 0; }
#Feature_ li { list-style-type: none; }
#Feature_ table { width: 100%; border-collapse: collapse; border-spacing: 0; }
#Feature_ strong, #Feature_ em { font-style: normal; }
#Feature_ input, #Feature_ select, #Feature_ textarea, #Feature_ button { border-style: none; font-size: inherit; }
#Feature_ button { cursor: pointer; }
#Feature_ h2 { border: none; }

#Feature_ a:link {
text-decoration: none;
}

#Feature_ a:active {
text-decoration: none;
}

#Feature_ a:visited {
text-decoration: none;
}

#Feature_ a:hover {
text-decoration: none;
}


/* ページ管理用 --------------------------------------------------- */

.pane-contents {
margin-bottom: 0;
padding-bottom: 0;
}

body.page-page .pane-contents {
letter-spacing: inherit;
}

.pane-contents .container {
display: block;
padding-bottom: 0;
}

.pane-main {
margin-bottom: 0;
}

.block-page-freespace--caption {
margin-bottom: 0;
padding-top: 0;
}

.block-page-block--frame {
margin-bottom: 0;
padding: 0;
}

.block-page-block--contents {
display: block;
max-width: 100%;
}

.block-page-block--contents-text {
padding: 0;
}

.block-page-block--contents-body-text-1column {
width: 100%;
margin: 0;
}

.block-page-block--contents-body-text-1column div {
padding: 0;
}

.block-page-block--contents-body-text-1column img {
margin-inline: initial;
}

.block-page-block--contents-body-text-1column img:not(:first-child) {
margin-top: 0;
}

.block-page-freespace--caption img,
.block-pagecategory-freespace--top img,
.block-pagecategory-freespace--bottom img,
.block-page-block--frame img {
border-radius: inherit;
}

/* JSのZoom処理をリセット */
#Feature_ {
zoom: var(--body-reset-zoom); 
}

@media only screen and (max-width: 767px) {

	/* パンくず調整 */
	.block-topic-path {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	}

}



/* ■ 共通 ==================================================================================== */

/*
フォント
変数
汎用
アニメーション
*/


/* フォント --------------------------------------------------- */

#Feature_ * {
font-family: dnp-shuei-gothic-gin-std, sans-serif;
font-weight: 500;
}

#Feature_ .WF1,
#Feature_ .WF1 * {
font-family: "Crimson Text", serif;
}

#Feature_ .WF2,
#Feature_ .WF2 * {
font-family: dnp-shuei-shogomincho-std, sans-serif;
font-weight: 700;
}


/* 変数 --------------------------------------------------- */

/*
#Feature_ * {

--color1: #222224;
--color2: #f0e5da;
--color3: #5b4836;
--color4: #efefef;

}
*/


/* 汎用 --------------------------------------------------- */

#Feature_ {
color: #3E3A39;
background-color: #fff;
}

@media only screen and (max-width: 767px) {

	#Feature_ .PC {
	display: none !important;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .SP {
	display: none !important;
	}

}

@media (hover: hover) {

	#Feature_ a {
	transition: all 0.3s ease-in-out 0.01s;
	}

	#Feature_ a:hover {
	opacity: 0.7;
	}

}

/* 非アクティブ */
#Feature_ .Disabled {
opacity: 0.3;
pointer-events: none;
}


/* アニメーション --------------------------------------------------- */

#Feature_ .InView1,
#Feature_ .InView2,
#Feature_ .InView3,
#Feature_ .InView4 {
opacity: 0;
}

@media only screen and (max-width: 767px) {

	#Feature_ .InView1 {
	transition: opacity 2s ease 0.01s;
	}

	#Feature_ .InView2 {
	transition: opacity 2s ease 0.01s;
	}

	#Feature_ .InView3 {
	transition: opacity 2s ease 0.5s;
	}

	#Feature_ .InView4 {
	transition: opacity 2s ease 0.5s;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .InView1 {
	transition: opacity 2s ease 0.01s;
	}

	#Feature_ .InView2 {
	transition: opacity 2s ease 0.75s;
	}

	#Feature_ .InView3 {
	transition: opacity 2s ease 0.5s;
	}

	#Feature_ .InView4 {
	transition: opacity 2s ease 0.5s;
	}

}

@media print, screen and (min-width: 1090px) {

}

#Feature_ .Effect1 {
opacity: 1;
}

#Feature_ .Effect2 {
opacity: 1;
}



/* ■ キービジュアル ==================================================================================== */

#Feature_ .KeyVisual_ {
position: relative;
}

#Feature_ .KeyVisual_Logo {
position: absolute;
z-index: 1000;
}

@media only screen and (max-width: 767px) {

	#Feature_ .KeyVisual_Slide_PC {
	display: none;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .KeyVisual_Slide_PC {
	display: none;
	}

}

@media print, screen and (min-width: 1025px) {

	#Feature_ .KeyVisual_Slide_SP {
	display: none;
	}

	#Feature_ .KeyVisual_Slide_PC {
	display: block;
	}

}


/* アニメーション --------------------------------------------------- */

/*
.swiper-slide img {
width: 100%;
height: auto;
}

@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
animation: zoomUp 7s linear 0s normal both;
}
*/

.swiper-slide,
.swiper-img {
transform: translateZ(0);
will-change: transform, opacity;
backface-visibility: hidden;
}

.swiper-slide img {
display: block;
width: 100%;
height: auto;
}

@keyframes zoomUp {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.1);
	}
}

.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
animation: zoomUp 7s linear 0s normal both;
}



/* ■ 導入 ==================================================================================== */

#Feature_ .Introduction_ {
position: relative;
z-index: 10;
}

#Feature_ .Introduction_Mds {
text-align: center;
}

#Feature_ .Introduction_Mds img {
display: inline-block;
}

/* 店舗情報 */
#Feature_ .Introduction_ShopInfo {
background-color: #dcdcdc;
}

#Feature_ .Introduction_ShopInfo_Mds {
font-weight: 600;
letter-spacing: 0.08em;
text-align: center;
}

@media only screen and (max-width: 767px) {

	#Feature_ .Introduction_ {
	margin-top: -170px;
	padding: 50px 35px 60px;
	}

	#Feature_ .Introduction_Mds {
	margin-top: 40px;
	margin-bottom: 50px;
	}

	#Feature_ .Introduction_Mds img {
	width: 220px;
	}

	#Feature_ .Introduction_Lead {
	margin-top: 20px;
	font-size: 13px;
	line-height: 2;
	}

	/* 店舗情報 */
	#Feature_ .Introduction_ShopInfo {
	margin-top: 30px;
	padding: 20px 20px;
	border: 1px solid #595757;
	}

	#Feature_ .Introduction_ShopInfo_Mds {
	font-size: 13px;
	}

	#Feature_ .Introduction_ShopInfo_Lead {
	margin-top: 10px;
	font-size: 11px;
	line-height: 2;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Introduction_ {
	margin-top: -18%;
	padding: 8% 0 10%;
	}

	#Feature_ .Introduction_InBox {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 20px;
	}

	#Feature_ .Introduction_Mds {
	margin-bottom: 10%;
	}

	#Feature_ .Introduction_Mds img {
	width: 420px;
	}

	#Feature_ .Introduction_Lead {
	margin-top: 4%;
	font-size: 16.5px;
	line-height: 2;
	}

	/* 店舗情報 */
	#Feature_ .Introduction_ShopInfo {
	margin-top: 8%;
	padding: 30px 30px 40px;
	border: 2px solid #595757;
	}

	#Feature_ .Introduction_ShopInfo_Mds {
	font-size: 18px;
	}

	#Feature_ .Introduction_ShopInfo_Lead {
	margin-top: 15px;
	font-size: 14px;
	line-height: 2;
	text-align: center;
	}

}



/* ■ 商品一覧 ==================================================================================== */

#Feature_ .ItemList_1 {
background-color: #fcf5e9; 
}

#Feature_ .ItemList_2 {
background-color: #edf6fd; 
}

#Feature_ .ItemList_3 {
background-color: #edf3d9; 
}

#Feature_ .ItemList_ {
display: grid;
}

#Feature_ .ItemList_Photo {
overflow: hidden;
}

#Feature_ .ItemList_Name,
#Feature_ .ItemList_Name span,
#Feature_ .ItemList_Price {
line-height: 1.2;
}

#Feature_ .ItemList_PriceBtn {
display: flex;
align-items: center;
}

/* ボタン */
#Feature_ .ItemList_Btn a {
display: block;
position: relative;
text-indent: -9999px;
}

@media only screen and (max-width: 767px) {

	#Feature_ .ItemList_ {
	grid-template-columns: repeat(1, 1fr);
	gap: 6%;
	padding: 12% 6% 30%;
	}

	#Feature_ .ItemList_Each:nth-child(1) {
	padding-right: 12%;
	}

	#Feature_ .ItemList_Each:nth-child(2) {
	padding-left: 12%;
	}

	#Feature_ .ItemList_Credit {
	margin-top: 13px;
	}

	#Feature_ .ItemList_Name {
	font-size: 11px;
	}

	#Feature_ .ItemList_Catch {
	margin-top: 15px;
	font-size: 15px;
	line-height: 1.5;
	}

	#Feature_ .ItemList_Lead {
	margin-top: 5px;
	font-size: 11px;
	line-height: 1.8;
	}

	/* ボタン */
	#Feature_ .ItemList_Btn {
	margin-top: 20px;
	}

	#Feature_ .ItemList_Btn a {
	width: 100px;
	height: 28px;
	background: url(../img/Btn_Buy_On.png) no-repeat center;
	background-size: 100px 28px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .ItemList_ {
	grid-template-columns: repeat(2, 1fr);
	gap: 6%;
	padding: 8% 8% 8%;
	}

	#Feature_ .ItemList_Each:nth-child(2) {
	padding-top: 20%;
	}

	#Feature_ .ItemList_Photo {
	overflow: hidden;
	}

	#Feature_ .ItemList_Credit {
	margin-top: 15px;
	}

	#Feature_ .ItemList_Name {
	font-size: 13px;
	}

	#Feature_ .ItemList_Catch {
	margin-top: 15px;
	font-size: 16px;
	}

	#Feature_ .ItemList_Lead {
	font-size: 13px;
	line-height: 1.8;
	}

	/* ボタン */
	#Feature_ .ItemList_Btn {
	margin-top: 25px;
	}

	#Feature_ .ItemList_Btn a {
	width: 110px;
	height: 31px;
	background: url(../img/Btn_Buy_Off.png) no-repeat center;
	background-size: 110px 31px;
	}

}

@media (hover: hover) {

	#Feature_ .ItemList_Photo img {
	transition: transform 0.9s ease;
	}

	#Feature_ .ItemList_Photo a:hover {
	opacity: 1;
	}

	#Feature_ .ItemList_Photo a:hover img {
	transform: scale(1.075);
	}

	/* ボタン */
	#Feature_ .ItemList_Btn a::after {
	position: absolute;
	inset: 0;
	background: url(../img/Btn_Buy_On.png) no-repeat center;
	background-size: 110px 31px;
	opacity: 0;
	transition: all 0.3s ease-in-out 0.01s;
	content: "";
	}

	#Feature_ .ItemList_Btn a:hover,
	#Feature_ .ItemList_Btn a:hover::after {
	opacity: 1;
	}

}



/* ■ VIEW ALL ==================================================================================== */

#Feature_ .ViewAll_ {
text-align: center;
background-color: #f6f6f6;
}

#Feature_ .ViewAll_ img {
display: inline-block;
}

#Feature_ .ViewAll_Btn {
display: flex;
justify-content: center;
}

#Feature_ .ViewAll_Btn a {
display: block;
position: relative;
text-indent: -9999px;
}

@media only screen and (max-width: 767px) {

	#Feature_ .ViewAll_ {
	padding: 12% 8% 20px;
	border-bottom: 4px solid #251e1c;
	}

	#Feature_ .ViewAll_Btn a {
	width: 100%;
	max-width: 320px;
	aspect-ratio: 300 / 28;
	background: url(../img/ViewAll_Btn_On.png) no-repeat center;
	background-size: contain;
	transform: translateX(3px);
	}

	#Feature_ .ViewAll_Pict {
	margin-top: 10%;
	}

	#Feature_ .ViewAll_Pict img {
	width: 50px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .ViewAll_ {
	padding: 9% 8% 2%;
	border-bottom: 8px solid #251e1c;
	}

	#Feature_ .ViewAll_Btn a {
	width: 100%;
	max-width: 800px;
	aspect-ratio: 800 / 74;
	background: url(../img/ViewAll_Btn_Off.png) no-repeat center;
	background-size: contain;
	}

	#Feature_ .ViewAll_Pict {
	margin-top: 8%;
	}

	#Feature_ .ViewAll_Pict img {
	width: 120px;
	}

}

@media (hover: hover) {

	/* ボタン */
	#Feature_ .ViewAll_Btn a::after {
	position: absolute;
	inset: 0;
	background: url(../img/ViewAll_Btn_On.png) no-repeat center;
	background-size: contain;
	opacity: 0;
	transition: all 0.3s ease-in-out 0.01s;
	content: "";
	}

	#Feature_ .ViewAll_Btn a:hover,
	#Feature_ .ViewAll_Btn a:hover::after {
	opacity: 1;
	}

}



/* ■ アトリエ紹介 ==================================================================================== */

#Feature_ .AboutAtelier_Mds {
text-align: center;
}

#Feature_ .AboutAtelier_Mds span {
display: inline-block;
position: relative;
font-weight: 400;
letter-spacing: 0.1em;
color: #594c3a;
}

#Feature_ .AboutAtelier_Mds span::before,
#Feature_ .AboutAtelier_Mds span::after {
position: absolute;
top: 50%;
background-repeat: no-repeat;
background-size: contain;
content: "";
}

#Feature_ .AboutAtelier_Mds span::before {
background-image: url(../img/_common/Mds_ItemL.png);
}

#Feature_ .AboutAtelier_Mds span::after {
background-image: url(../img/_common/Mds_ItemR.png);
}

#Feature_ .AboutAtelier_Btn {
text-align: center;
}

#Feature_ .AboutAtelier_Btn a.Btn {
border: 1px solid #3E3A39;
font-weight: 600;
color: #3E3A39;
background-color: #fff;
}

@media only screen and (max-width: 767px) {

	#Feature_ .AboutAtelier_ {
	padding: 18% 8% 18%;
	}

	#Feature_ .AboutAtelier_Mds {
	font-size: 24px;
	}

	#Feature_ .AboutAtelier_Mds span::before,
	#Feature_ .AboutAtelier_Mds span::after {
	width: 30px;
	height: 2.5px;
	margin-top: -2px;
	}

	#Feature_ .AboutAtelier_Mds span::before {
	left: -40px;
	}

	#Feature_ .AboutAtelier_Mds span::after {
	right: -35px;
	}

	#Feature_ .AboutAtelier_Photo {
	margin-top: 40px;
	}

	#Feature_ .AboutAtelier_Lead {
	margin-top: 6%;
	font-size: 13px;
	line-height: 2.2em;
	}

	#Feature_ .AboutAtelier_Btn {
	margin-top: 8%;
	}

	#Feature_ .AboutAtelier_Btn .Btn {
	padding: 14px 50px 16px;
	font-size: 14px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .AboutAtelier_ {
	padding: 8% 0 8%;
	}

	#Feature_ .AboutAtelier_Mds {
	font-size: 50px;
	}

	#Feature_ .AboutAtelier_Mds span::before,
	#Feature_ .AboutAtelier_Mds span::after {
	width: 75px;
	height: 5px;
	margin-top: -2px;
	}

	#Feature_ .AboutAtelier_Mds span::before {
	left: -110px;
	}

	#Feature_ .AboutAtelier_Mds span::after {
	right: -105px;
	}

	#Feature_ .AboutAtelier_Photo {
	margin-top: 4%;
	padding: 0 17%;
	}

	#Feature_ .AboutAtelier_Lead {
	margin-top: 3%;
	padding: 0 25%;
	font-size: 16px;
	line-height: 2.4em;
	}

	#Feature_ .AboutAtelier_Btn {
	margin-top: 4%;
	}

	#Feature_ .AboutAtelier_Btn .Btn {
	padding: 20px 80px 21px;
	font-size: 16px;
	}

}

@media (hover: hover) {

	#Feature_ .AboutAtelier_Btn a.Btn:hover {
	color: #fff;
	background-color: #3E3A39;
	opacity: 1;
	}

}


/* ■ バックナンバー ==================================================================================== */

#Feature_ .BackNumberWrap {
background-color: #efeeed;
}

#Feature_ #BackNumberUnit .MdsH2 {
letter-spacing: 0.1em;
color: #594c3a;
}

#BackNumberUnit .MdsH2:before {
background-image: url(../img/_common/Mds_ItemL.png) !important;
}

#BackNumberUnit .MdsH2:after {
background-image: url(../img/_common/Mds_ItemR.png) !important;
}

#BackNumberUnit .Lead1 {
color: #594c3a !important;
}

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

}



/* ■ フッター ==================================================================================== */

#Feature_ .Footer_Logo {
display: flex;
justify-content: center;
}

#Feature_ .Footer_SNS {
display: flex;
justify-content: center;
align-items: center;
}

#Feature_ .Footer_Copyright {
display: flex;
justify-content: center;
}

@media only screen and (max-width: 767px) {

	#Feature_ .Footer_ {
	padding-top: 50px;
	padding-bottom: 50px;
	}

	#Feature_ .Footer_Logo img {
	width: 120px;
	}

	#Feature_ .Footer_SNS {
	margin-top: 30px;
	}

	#Feature_ .Footer_SNS a {
	margin: 0 15px;
	}

	#Feature_ .Footer_SNS img {
	width: 26px;
	}

	#Feature_ .Footer_Copyright {
	margin-top: 30px;
	font-size: 10px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ .Footer_ {
	padding-top: 80px;
	padding-bottom: 80px;
	}

	#Feature_ .Footer_Logo img {
	width: 140px;
	}

	#Feature_ .Footer_SNS {
	margin-top: 30px;
	}

	#Feature_ .Footer_SNS a {
	margin: 0 15px;
	}

	#Feature_ .Footer_SNS img {
	width: 26px;
	}

	#Feature_ .Footer_Copyright {
	margin-top: 30px;
	font-size: 10px;
	}

}



/* ■ ページの先頭へ ==================================================================================== */

#Feature_ #PageTop {
display: none;
position: fixed;
z-index: 10000;
opacity: 0.7;
}

@media only screen and (max-width: 767px) {

	#Feature_ #PageTop {
	bottom: 10px;
	right: 10px;
	}

	#Feature_ #PageTop {
	width: 40px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ #PageTop {
	bottom: 20px;
	right: 20px;
	}

}



/* ■ 印刷用設定 ==================================================================================== */

@media print {

	.InView1,
	.InView2,
	.InView3,
	.InView4 {
	opacity: 1 !important;
	}

}



/* ■ JSライブラリ ==================================================================================== */


