@charset "utf-8";

.sp_content {
	font-family: "Yu Gothic", "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Noto Sans", "Noto Sans JP", BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", "Meiryo", sans-serif;
	font-feature-settings: "palt" 1; /* プロポーショナルメトリクスを有効にする指定 */
	hanging-punctuation: allow-end;  /* Safari用ぶら下がり */
  margin-bottom: 70px;
	text-align: center;
	font-weight: 400; 
	color: #333;
}

/* テキスト、見出し */
.sp_content p,
.sp_content h1,
.sp_content h2,
.sp_content h3,
.sp_content h4,
.sp_content h5,
.sp_content figcaption {
	margin: 0;
	padding: 0;
	text-align: center;
	line-height: 2;
	letter-spacing: .18em;
}

.sp_content h1 {
	font-size: 27px;
	font-weight: bold;
	line-height: 1.6;
	margin-top: 48px;
}
.sp_content h2 {
	font-size: 26px;
	font-weight: bold;
	margin-top: 50px;
	letter-spacing: .2em;
}
.sp_content h3 {
	font-size: 20px;
	margin-top: 14px;
}
.sp_content p {
	letter-spacing: .13em;
	font-size: 17px;
	margin-top: 20px;
	font-feature-settings: "halt" 1;
}
.sp_content ul p {
	margin-top: 7px;
	font-size: 15.5px;
	text-align: justify;
  text-justify: inter-ideograph;
	line-break: strict;
}
.sp_content p span.p_small {
	font-size: 14px;
	display: block;
	margin-top: 10px;
	line-height: 1.7;
}
.sp_content p.p_caution {
	font-size: 13px;
	color: #999;
}

/*  img
------------------------*/
.sp_content img {
	width: 100%;
}

/*  a
------------------------*/
.sp_content a {
	color: #333;
	transition: color 0.3s ease;
}
.sp_content a:hover {
	color: #999;
	text-decoration: none;
}
.sp_content a.a_underline {
	text-decoration: underline;
}

/*  フェードインアニメーション
------------------------*/
.sp_content .sa {
	opacity: 0;
	transition: opacity 2s ease;
}

.sp_content .sa.show {
	opacity: 1;
	transform: none;
}

/*  ul 
------------------------*/
.sp_content ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.sp_content > article > section ul {
	margin-top: 50px;
}

/*  スライドショー
------------------------*/
.sp_content .slide_show {
	margin: 0 auto;
	position: relative;
}
.sp_content .slide_show img {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
}

/*  section
------------------------*/
.sp_content > article > section:nth-of-type(n+2),
.sp_content > article > div.content_line_wrap {
	margin-top: 80px;
}
.sp_content > article > section:nth-of-type(n+2)::before,
.sp_content > article > div.content_line_wrap::before {
	background: url(/sp/stamp/images/line.jpg) repeat;
	content:"";
	display:inline-block;
	width: 760px;
	height: 7px;
	background-size:contain;
	margin: 0 auto;
	opacity: 0.6;
}

/*  もっと見るボタン
------------------------*/
.sp_content .more {
	position: relative;
	/*text-align: center;*/
	line-height: 5.2em;
	margin: 60px auto 50px;
}

.sp_content .more a {
	width: 70%;
	margin: 0 auto;
	display: block;
	border: 2px solid #eee;
	font-size: 15px;
	box-sizing: border-box;
	letter-spacing: .15em;
	border-radius: 6px;
	font-weight: bold;
}

.sp_content .more a:hover {
	border: 2px solid #eee;
	background-color: #eee;
}

.sp_content .close {
	display: none;
	position: relative;
	/*text-align: center;*/
	line-height: 5.2em;
	margin: 60px auto 50px;
}

.sp_content .close a {
	width: 70%;
	margin: 0 auto;
	display: block;
	border: 2px solid #eee;
	font-size: 15px;
	box-sizing: border-box;
	letter-spacing: .15em;
	border-radius: 6px;
	font-weight: bold;
}

.sp_content .close a:hover {
	border: 2px solid #eee;
	background-color: #eee;
}



/* =====================
　　メイン
===================== */
#sp_main .slide_show {
	height: 516px;
}
#sp_main p {
	margin-top: 30px;
}

/* =====================
　　メニュー
===================== */
#sp_menu ul {
	justify-content: center;
	gap: 30px;
}
#sp_menu li {
	width: 200px;
	padding: 15px 0;
	border: solid 2px #eee ;
	box-sizing: border-box;
	border-radius: 8px;
}
#sp_menu li a {
	font-size: 15px;
	font-weight: bold;
	letter-spacing: .2em;
	display: block;
}

/* =====================
　　ABOUT
===================== */

#sp_about li {
	width: 410px;
	margin-right: 40px;
}
#sp_about li:nth-child(even) {
	margin-right: 0;
}
#sp_about li:nth-child(n+3) {
	margin-top: 40px;
}
#sp_about li p {

}

/* ストアアイテム紹介 */
#sp_about a.lim_ink {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	margin-top: 30px;
}
#sp_about a.lim_ink > img {
	flex: 0 0 100px;
	width: 100px;
}
#sp_about a.lim_ink > p {
	flex: 1; /* 残りの幅をすべて使う */
	font-size: 14px;
	margin-top: 0;
}
#sp_about a.lim_ink > p > span.p_caution {
	color: #999;
	font-size: 12px;
	display: block;
	margin-top: 5px;
}


/* =====================
　　LINEUP
===================== */

#sp_lineup li {
	width: 260px;
	margin-right: 40px;
}
#sp_lineup li:nth-child(3n) {
	margin-right: 0;
}
#sp_lineup li:nth-child(n+4) {
	margin-top: 30px;
}
#sp_lineup li a p {
	font-size: 15px;
	text-align: center;
	margin-top: 0;
}
#sp_lineup li a p span.brown {
 color: #8D5906;
}


/* =====================
　　GALLERY
===================== */

/* my-gallery
------------------------*/
.my-gallery {
	width: 100%;
	margin: 45px auto 0;
	overflow: hidden;

}
.my-gallery figure {
	opacity: 1;
	transition: all 0.5s ease 0s;
	transition: all 0s ease 0s;
	width: 260px;
	margin: 50px 40px 0 0;
	float: left;
}
.my-gallery figure.is-hidden-gallery {
	display: none;
}

.my-gallery figure:nth-child(-n+3) {
	margin-top: 0;
}
.my-gallery figure:nth-child(3n) {
	margin-right: 0;
}

.my-gallery h3 {
	font-size: 17px;
	font-weight: bold;
	line-height: 2 !important;
	text-align: center;
	margin-top: 12px !important;
}
.my-gallery figcaption {
	display: none;
}

/* photoswipe
------------------------*/

.pswp__bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #fff !important;
	opacity: 0.5;
	opacity: 0;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	will-change: opacity;
}

.pswp__button.pswp__button--share {
	display: none !important;
}

.pswp__top-bar,
.pswp__caption,
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
	background-color: #fff !important;
}

.pswp__caption__center {
	text-align: center !important;
	max-width: 900px !important;
	color: #666 !important;
	font-size: 15px !important;
	padding: 20px !important;

}

.pswp__caption__center h3 {
	text-align: center;
	margin: 5px 0 10px 0;
	font-size: 17px;
}

.pswp__caption__center .caption_caution {
	display: block;
	font-size: 12px;
	margin: 5px auto 0;
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
	background-color: #fff !important;
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
	content: '';
	top: 35px;
	background-color: rgba(0, 0, 0, 0.3);
	width: 41px !important;
	height: 37px !important;
	position: absolute;
}

.pswp__counter {
	color: #666 !important;
}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}


/* =====================
  レコメンド
===================== */

#sp_recommend ul {
	justify-content: space-between;
	margin-left: 50px;
	margin-right: 50px;
}
#sp_recommend ul li {
	width: 360px;
	margin: 40px 0 0;
}
#sp_recommend ul li:nth-child(-n+2) {
	margin-top: 0;
}
#sp_recommend a {
	display: flex;
}
#sp_recommend ul li img {
	width: 100px;
	height: 100px;
	object-fit: cover;
	margin-right: 20px;
}
#sp_recommend ul li p {
	display: inline-block;
	align-self: center;
	font-size: 15px;
	font-weight: bold;
	margin: 0;
}


/* =====================
　　Instagram
===================== */

#sp_instagram p {
	font-size: 15.5px;
	margin-top: 60px;
}

a.insta_info_btn {
	padding: 0.5em;
	margin: 24px auto 0 -20px;
	display: inline-block;
	font-weight: bold;
	font-size: 19px;
}

a.insta_info_btn:before {
	content: "";
	display: inline-block;
	width: 40px;
	height: 40px;
	margin: -3px 20px 0 0;
	background: url("/sp/stamp/images/Instagram_Glyph_Gradient.png") no-repeat;
	background-size: contain;
	vertical-align: middle;
}

.sp_content a.insta_info_btn:hover {
	color: #333;
	cursor: pointer;
	opacity: .6;
}