@charset "utf-8";
/*
Theme Name: suzukake 4
Theme URI: https://suzukake.co.jp/
Version: 4.0
*/

/* common
---------------------------------------------------------------------------*/
:root {
	--color-font: #111111;
	--color-font-light: #888888;
	--color-red: #91301D;
	--color-bg: #FFFFFF;
	--color-bg-gray: #F7F7F7;
	--color-bg-gray-dark: #EFEFEF;
	--color-border: #E8E8E8;
	--color-border-btn: #CDCDCD;
	--color-border-frame: #E7E7E7;
	--color-border-section: rgba(0,0,0,0.3);
	--font-min: ryo-text-plusn, '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	--font-gothic: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	--font-serif: "adobe-garamond-pro", ryo-text-plusn, '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

body {
	overflow-y: scroll;
	background-color: #FFFFFF;
	color: var(--color-font);
	font-size: 16px;
	font-family: var(--font-min);
	font-weight: 500;
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

body.noscroll { overflow-y: scroll; position: fixed; width: 100%; }

::-moz-selection { background: #E6E6E6; color: var(--color-font); }
::selection { background: #E6E6E6; color: var(--color-font); }

h1,h2,h3,h4,h5,h6,strong,em,i,th { font-weight: 500; line-height: 1.6; letter-spacing: 0.06em; }
p { font-size: 16px; line-height: 2; letter-spacing: 0.08em; margin-bottom: 15px; }
p:last-of-type { margin-bottom: 0 !important; }
p.attention { font-size: 13px !important; letter-spacing: 0.08em !important; }
address,i { font-style: normal; }
img { width: 100%; max-width: none; height: auto; }

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

.block { display: inline-block !important; }
.wide { display: inline-block !important; }
.narrow { display: none !important; }
.lazy { transition: .4s ease-out; opacity: 0; }
.lazyloaded { opacity: 1; }

.btn-nav.hidden,
header.hidden,
footer.hidden {
/* 	display: none !important; */
	opacity: 0 !important;
	transform: none !important;
	transition: none !important;
	pointer-events: none !important;
}

header.hidden,
footer.hidden {
	overflow: hidden !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* #loading
------------------------------------*/
#loading,
.loading-post {
	display: block;
	opacity: 1;
	position: fixed;
	top: 50%;
	left: 50%;
	border: 1px solid rgba(0,0,0,0.4);
	border-top-color: transparent;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	z-index: 9990;
	animation: spin .5s infinite linear;
}

.loading-post {
	position: absolute;
	width: 14px;
	height: 14px;
	margin: -7px 0 0 -7px;
	z-index: 2;
}

.item-list.relation .loading-post,
.notec .loading-post { display: none !important; }

.item-list-api article.notec figure img,
.item-list-api article.notec h3,
.item-list-api article.notec .label,
.item-list-api article.notec .price {
	opacity: 1 !important;
}

@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); }}

/* link
------------------------------------*/
a, .hover { color: var(--color-font); text-decoration: none; transition: .15s ease-out; -webkit-transform: translateZ(0); cursor: pointer; }
a:hover, .hover:hover { text-decoration: none; opacity: 0.7; }
p a, .link-line, .link-line-title {
	display: inline-block;
	position: relative;
	line-height: 1;
	padding-bottom: 2px;
}

p a:after, .link-line a:after, .link-line-title:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: var(--color-font);
	width: 100%;
	height: 1px;
}

.line { text-decoration: underline; }

a.tel,
.recruit-detail .inner .txt p a { pointer-events: none; }
a.tel:after,
.recruit-detail .inner .txt p a:after { display: none; }

/* .btn
------------------------------------*/
.btn-line a, .btn-line > span {
	display: block;
	box-sizing: border-box;
	border: 0.5px solid #666666;
	padding: 22px 22px 22px 24px;
	font-size: 16px;
	text-align: center;
	letter-spacing: 0.06em;
}

.btn-line a:hover {
	border-color: #D4D4D4;
	color: #AAAAAA;
	opacity: 1 !important;
}

p + .btn-line { margin-top: 40px; }
.btn-set p + .btn-line { margin-top: 25px; }

.btn-line.size-s a {
	display: inline-block;
	border-color: var(--color-border-btn);
	padding: 8px 14px 8px 16px;
}

p + .btn-line.size-s { margin-top: 15px; }

.btn-line.inline a {
	display: inline-block;
	padding: 20px 24px 20px 26px;
	letter-spacing: 0.12em;
}

/* .btn-set
------------------------------------*/
.btn-set > div:not(:last-child) { margin-bottom: 10px; }

/* .btn-nav
------------------------------------*/
.btn-nav {
	position: fixed;
	top: 64px;
	right: 7.5%;
	box-sizing: border-box;
	width: 80px;
	height: 70px;
	margin: 0 -15px;
	z-index: 10000;
	cursor: pointer;
}

.btn-nav.off { pointer-events: none; }
.btn-nav:hover div { opacity: 0.7; }

.btn-nav div, .btn-nav span { display: inline-block; box-sizing: border-box; transition: all .2s; }
.btn-nav div { display: block; position: relative; width: 50px; height: 23px; margin: 26px auto 0; }
.btn-nav span { position: absolute; left: 0; background-color: #888888; width: 100%; height: 1px; }
.btn-nav.white span { background-color: #FFFFFF; }

.btn-nav span:nth-of-type(1) { top: 0; }
.btn-nav span:nth-of-type(2) { top: 11px; }
.btn-nav span:nth-of-type(3) { bottom: 0; }

/* .btn-nav.active
------------------------------------*/
.btn-nav.active span { background-color: #888888 !important; }
.btn-nav.active span:nth-of-type(1) { transform: translateY(11px) rotate(-20deg); }
.btn-nav.active span:nth-of-type(2) { animation: active-menu-bar02 .4s forwards; opacity: 0; }
.btn-nav.active span:nth-of-type(3) { transform: translateY(-11px) rotate(20deg); }
@-webkit-keyframes active-menu-bar02 {100%{ height: 0; }}
@keyframes active-menu-bar02 {100%{ height: 0; }}

/* .nav
------------------------------------*/
.nav-bg {
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.25);
	width: 100%;
	height: 100%;
	cursor: pointer;
	z-index: 9998;
	display: none;
	opacity: 0;
}

.nav {
	position: fixed;
	top: 0;
	right: 0;
	background: #FFFFFF;
	box-sizing: border-box;
	width: 50%;
	min-width: 620px;
	height: 100%;
	white-space: nowrap;
	z-index: 9999;
	display: none;
	opacity: 0;
}

.nav .inner {
	position: relative;
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	min-width: 620px;
	height: 100%;
	padding: 195px 0 75px;
	-webkit-overflow-scrolling: touch;
}

.nav .inner::-webkit-scrollbar { width: 1px; }
.nav .inner::-webkit-scrollbar-track { border-radius: 0; background: #FFFFFF; }
.nav .inner::-webkit-scrollbar-thumb { border-radius: 0; background: #DBDBDB; }

.nav .inner-s { width: 440px; margin: 0 auto; opacity: 0; }
.nav .header { padding: 0; }

/* .nav .gnav
------------------------------------*/
.nav .gnav { margin-bottom: 140px; }

.nav .gnav > ul > li,
.nav .gnav li li { border-bottom: 1px solid var(--color-border) !important; }
.nav .gnav > ul > li:last-of-type { border-bottom: none !important; }

.nav .gnav > ul > li:first-of-type,
.nav .gnav li li:first-of-type,
.nav .gnav > ul > li.mt { border-top: 1px solid var(--color-border) !important; }

.nav .gnav > ul > li.mt { margin-top: 45px; }

.nav .gnav > ul > li > a,
.nav .gnav > ul > li > span {
	display: block;
	padding: 18px 18px 18px;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.nav .gnav > ul > li#gnav-top > a { padding-top: 22px; padding-bottom: 22px; }
.nav .gnav > ul > li.let > a { letter-spacing: 0.02em; }
.nav .gnav > ul > li > a i { font-size: 10px; }

.nav .gnav > ul > li > span {
	display: block;
	padding: 50px 18px 18px;
	font-size: 14px;
	letter-spacing: 0.06em;
}

.nav .gnav li li:last-of-type { border-bottom: none !important; }

.nav .gnav li li a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	padding: 10px 0 10px 18px;
}

.nav .gnav li li img { align-self: flex-start; width: 50px; min-width: 50px; }
.nav .gnav li li strong { padding: 0 0 0 20px; font-size: 15px; }
.nav .gnav li li strong span { padding-left: 4px; font-size: 12px; }

/* .nav .snav
------------------------------------*/
.nav .snav { margin-bottom: 60px; }
.nav .snav a { display: inline-block; padding: 12px 30px; font-size: 15px; letter-spacing: 0.06em; }

/* .nav .fnav
------------------------------------*/
.nav .fnav { margin-left: -18px; }
.nav .fnav li { margin-bottom: 5px; }
.nav .fnav li:last-of-type { margin-bottom: 0; }
.nav .fnav a { display: inline-block; padding: 2px 10px 12px 0; font-size: 14px; letter-spacing: 0.08em; }
.nav .fnav a span { display: inline-block; border-bottom: 1px solid rgba(0,0,0,0.5); padding-bottom: 1px; }

/* .nav-btm
------------------------------------*/
.nav-btm { position: relative; margin-left: -18px; padding: 40px 0 0; }
.nav-btm .copyright { color: #888888; font-size: 13px; letter-spacing: 0.02em; }
.nav-btm .copyright i { display: inline-block; transform: translateY(2px); }

/* .sns
------------------------------------*/
.nav .sns {
	position: absolute;
	bottom: 3px;
	right: -13px;
	display: -webkit-box;
	display: flex;
	margin: 0 -11px -11px 0;
}

.nav .sns a { display: block; padding: 11px; }

/* .nav .gnav-en
------------------------------------*/
.nav .gnav-en,
body.en .nav .gnav,
body.en .nav .fnav,
body.en .header .cart-check { display: none !important; }

body.en .nav {
	width: 460px;
  min-width: 460px;
}

body.en .nav .inner-s {
	position: absolute;
	bottom: 80px;
	left: 80px;
}

body.en .nav .gnav-en {
	display: block !important;
	margin-bottom: 15px;
	font-family: var(--font-serif);
}

.nav .gnav-en > ul > li:first-of-type { border-top: none !important; }
.nav .gnav-en > ul > li { border-bottom: none !important; }

.nav .gnav-en > ul > li > a {
	padding-top: 15px;
	padding-left: 0;
	font-size: 23px;
	letter-spacing: 0.01em;
}

.nav .gnav-en > ul > li .current { display: none; }
body.en-top .nav .gnav-en > ul > li .other { display: none; }
body.en-top .nav .gnav-en > ul > li .current { display: block; }

body.en .nav-btm { margin-left: 2px; }
body.en .nav .sns { position: static; margin: 0 0 45px -11px; }


/* #wrap
---------------------------------------------------------------------------*/
#wrap { position: relative; min-width: 1240px; }

#wrap.column2 .header { position: relative; left: 50%; width: 50%; }
#wrap.column2 .header .cart-check { top: 70px; left: 55px; }
#wrap.column2 .header .logo { pointer-events: none; opacity: 0 !important; }
#wrap.column2 .btn-nav { top: 40px; right: 55px; }

body.onlineshop-category #onlineshopContents,
body.onlineshop-single #onlineshopContents,
#oiwaiContents,
#choujiContents,
#osonaeContents,
#order-itemContents,
#kasanegashiContents,
body.shops-single #mainContents > .contents,
body.en:not(.thismonth-en) #mainContents > .contents,
#wrap.column2 footer {
	padding-left: 50%;
}

.item-list,
.item-bnr,
#onlineshopContents.category .title-page,
#onlineshopContents.category .sec-common,
body.shops-single .sec-common,
body.oiwai .title-page,
body.oiwai .sec-common,
body.chouji .title-page,
body.chouji .sec-common,
body.osonae .title-page,
body.osonae .sec-common,
body.order-item .sec-common,
body.en .sec-common {
	box-sizing: border-box;
	width: 100%;
	padding-right: 21%;
	padding-left: 21%;
}

.top-wrap,
#aboutContents .img-main,
#shopsContents .img-main,
.month-lead,
.item-list-month,
.feature-main,
.feature-main .bnr,
.onlineshop-top-item,
#kashiContents .item-list,
#setContents .sec-common,
.item-list-set {
	width: 1140px;
	margin: 0 auto;
}


/* header
---------------------------------------------------------------------------*/
.header {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 80px 0 0;
}

header {
	transition: none !important;
	pointer-events: none;
	opacity: 0;
}

body.top header { margin-bottom: 110px; }

body.onlineshop-set header,
body.original header,
body.news header,
body.about header,
body.guide header,
body.suzunari header,
body.suzunari-single header,
body.shops:not(.shops-single) header,
body.recruit header,
body.faq header,
body.order header,
body.contact header,
body.privacy header,
body.terms header {
	margin-bottom: 100px;
}

body.onlineshop-archive header,
body.kashi header,
body.set header {
	margin-bottom: 40px;
}

header.active { pointer-events: auto; opacity: 1; }

.header .logo { width: 58px; margin: 0 auto; }
.header .logo a { display: block; position: relative; }

header .logo img,
header .cart-check img,
.nav .cart-check img {
	transition: .15s ease-out;
}

.header .logo .white,
.header .cart-check .white,
.nav .cart-check .white,
.header .cart-account .white,
.nav .cart-account .white {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: .15s ease-out;
}

.header .cart-check { position: absolute; top: 87px; left: 7.5%; }
.nav .cart-check { display: none; }
.header .cart-check img { width: 32px; }

header .logo .white,
header.white .logo img,
header .cart-check .white,
header.white .cart-check img,
header .cart-account .white,
header.white .cart-account img { opacity: 0; }

header.white .logo .white,
header.white .cart-check .white,
header.white .cart-account .white { opacity: 1; }

.wrap-modal .cart-check { opacity: 0; pointer-events: none; }


/* footer
---------------------------------------------------------------------------*/
footer {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 250px 0 105px;
	text-align: center;
}

footer .logo { width: 95px; margin: 0 auto; }


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}

.contents { opacity: 0; }

.about-kodawari,
.about-shokunin .lead,
.about-shokunin .inner,
.about-outline {
	width: 800px;
	margin: 0 auto;
}

.post-item .bnr-nav { width: 58%; margin: 0 auto; }

/* .img-main / 2column
------------------------------------*/
.slider-top { min-width: 620px; }

.slider-header,
#kashiContents .img-main {
	position: fixed !important;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	width: 50%;
	height: 100%;
	overflow: hidden;
}

.slider-item { z-index: 1; }

.slider-header .inner {
	width: 100% !important;
	height: 100vh !important;
	margin: 0 !important;
	padding: 0 !important;
}

.slider-header .inner img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

/* .img-main-fix
------------------------------------*/
.img-main-fix {
	position: fixed !important;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	box-sizing: border-box;
	width: 50%;
	min-width: 620px;
	height: 100%;
	padding: 55px;
	overflow: hidden;
}

.img-main-fix .slider-top {
	width: 100% !important;
	min-width: 100% !important;
	height: 100% !important;
}

.img-main-fix .slick-list,
.img-main-fix .slick-track {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.img-main-fix .inner {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	width: 100%;
	height: 100%;
	transform: translate(-50%,-50%) !important;
}

.img-main-fix img {
	display: inline-block !important;
	width: auto !important;
	max-width: 100%;
	height: auto !important;
	max-height: 100%;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	transform: translate(-50%,-50%) !important;
}

/* .img-main / 1column
------------------------------------*/
body.suzunari .img-main {
	height: 100vh;
	min-height: 600px;
	margin-bottom: 130px;
}

body.suzunari .img-main .inner { height: 100%; }
body.suzunari .img-main img { object-fit: cover; width: 100%; height: 100%; }

/* .title-page
------------------------------------*/
.title-page { margin-bottom: 90px; text-align: center; }
.item-list + .title-page { margin-top: 90px; margin-bottom: 24px !important; }
.item-list + .title-page.mb { margin-bottom: 35px !important; }

#aboutContents .title-page,
#shopsContents .title-page { margin-bottom: 65px; }

#setContents .title-page { margin-bottom: 40px; }

#contactContents .title-page,
#privacyContents .title-page { margin-bottom: 120px; }

.sec-common .title-page { margin-bottom: 25px; }

.title-page time {
	display: block;
	margin-bottom: 30px;
	font-family: var(--font-serif);
	font-size: 14px;
	letter-spacing: 0.06em;
}

.title-page strong {
	display: block;
	font-size: 24px;
	letter-spacing: 0.06em;
}

h1.title-page strong { font-feature-settings: normal; font-feature-settings: 'palt' 1; letter-spacing: 0.14em;}
.item-list + .title-page strong { font-size: 22px; }
.title-page strong.kana { letter-spacing: 0.18em; }

.title-page strong .link-line-title {
	display: block;
	font-size: 20px;
	text-align: center;
}

.title-page strong .link-line-title:after { display: none; }

.contents.single .title-page strong .link-line-title {
	font-size: 14px;
	line-height: 1.7;
	text-align: left;
}

.title-page em {
	display: block;
	margin-top: 12px;
	font-size: 12px;
}

/* .title-bracket
------------------------------------*/
.title-bracket {
	margin-bottom: 20px;
	font-size: 16px;
	letter-spacing: 0.1em;
}

/* .title-center
------------------------------------*/
.title-center { margin-bottom: 25px; text-align: center; }

.title-center,
.title-center strong { font-size: 20px; letter-spacing: 0.1em; }

.title-center.size-s,
.title-center.size-s strong { font-size: 18px; }

/* .title-left
------------------------------------*/
.title-left {
	margin-bottom: 15px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.08em;
	text-align: left;
}

/* .nav-anchor
------------------------------------*/
.nav-anchor {
	text-align: center;
	margin: 25px 0 60px;
}

.nav-anchor li {
	display: inline-block;
	border-right: 1px solid var(--color-border-frame);
	margin-right: -4px;
}

.nav-anchor li:first-of-type { border-left: 1px solid var(--color-border-frame); }

.nav-anchor li a {
	display: inline-block;
	padding: 2px 16px;
	font-size: 14px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.nav-anchor li a.prl { padding-right: 18px; padding-left: 18px; }
.nav-anchor li a span { display: inline-block; padding-bottom: 1px; }
.nav-anchor li.current a span { border-bottom: 1px solid var(--color-font); }

/* .dot-list
------------------------------------*/
.dot-list li {
	position: relative;
	margin: 0 0 6px 3px;
	padding-left: 15px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}
.dot-list li:last-of-type { margin-bottom: 0; }
.dot-list li:before { display: block; content: '・'; position: absolute; top: -2px; left: 0; font-size: 17px; }

/* .attention-list
------------------------------------*/
.attention-list li {
	position: relative;
	margin: 0 0 2px;
	padding-left: 15px;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}
.attention-list.size-s li { margin-bottom: 5px; font-size: 11px; }
.attention-list li:last-of-type { margin-bottom: 0; }
.attention-list li:before { display: block; content: '※'; position: absolute; top: 0; left: 0; }

/* .dl-num
------------------------------------*/
.dl-num > div:not(:last-of-type) { margin-bottom: 45px; }

.dl-num dt {
	position: relative;
	margin-bottom: 22px;
	font-size: 17px;
	letter-spacing: 0.08em;
}

.dl-num dt i { display: none; }
.dl-num dd { padding-left: 55px; }
.dl-num dd p { line-height: 2; }

/* .dl-txt
------------------------------------*/
.dl-txt { border-top: 1px solid var(--color-border); }

.dl-txt > div {
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid var(--color-border);
	padding: 28px 0 28px 20px;
	letter-spacing: 0.08em!important;
}

.dl-txt dt { width: 175px; min-width: 175px; }

.dl-txt dt,
.dl-txt dd p,
.dl-txt dd address {
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.06em;
}

.dl-txt dd address { line-height: 1.6; }

/* .dl-txt-horizontal
------------------------------------*/
.dl-txt-horizontal { border-top: 1px solid var(--color-border); }

.dl-txt-horizontal > div {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid var(--color-border);
	padding: 20px 5px;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.dl-txt-horizontal dt { padding-right: 20px; letter-spacing: 0.06em; }
.dl-txt-horizontal dd { text-align: right; letter-spacing: 0; }

/* .sec-common
------------------------------------*/
.sec-common {
	box-sizing: border-box;
	width: 800px;
	margin: 0 auto 120px;
}

.sec-common.border-bottom {
	position: relative;
	margin-bottom: 45px;
	padding-bottom: 90px;
}

.sec-common.border-bottom:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: var(--color-border);
	width: 100%;
	height: 1px;
}

#kashiContents .sec-common.border-bottom:after { left: 21%; width: 58%; }

.sec-common:last-child { margin-bottom: 0 !important; }

.sec-common p, .sec-common address { line-height: 2; }
.sec-common p { text-align: justify; letter-spacing: 0.07em; }
.sec-common.size-m p { font-size: 14px; }
.sec-common.center p { text-align: center; white-space: nowrap; font-size: 17px;}
.sec-common p.attention { padding-top: 6px; }
.sec-common p + p.attention { margin-top: -4px; padding-top: 0; line-height: 1.9; }
/* .sec-common.p-height-s p { font-size: 14px; line-height: 1.9; } */

#suzunariContents .sec-common p br { display: none; }

/* .sec-lead
------------------------------------*/
.sec-lead h2 { margin: 50px 0 9px; font-size: 16px; }
.sec-lead h2:first-child { margin-top: 0; }

/* .txt-index
------------------------------------*/
.txt-index {
	position: absolute;
	top: 65px;
	left: 58%;
	font-size: 13px;
	letter-spacing: 0.1em;
	white-space: nowrap;
}


/* news
---------------------------------------------------------------------------*/

/* .news-list
------------------------------------*/
.news-list article { border-bottom: 1px solid var(--color-border); }
.news-list article:first-of-type { border-top: 1px solid var(--color-border); }

.news-list article a {
	display: -webkit-box;
	display: flex;
	box-sizing: border-box;
	width: 100%;
	padding: 26px 3px 25px 11px;
}

.news-list article a > div {
	width: 220px;
	min-width: 220px;
	padding: 5px 15px 0 0;
	white-space: nowrap;
}

.news-list article .category,
.news-list article h2 {
	font-size: 16px;
}

.news-list article time {
	display: inline-block;
	font-family: var(--font-serif);
	font-size: 17px;
	letter-spacing: 0.02em;
}

.news-list article .category {
	display: inline-block;
	position: relative;
	margin-left: 17px;
	min-height: 13px;
	letter-spacing: 0.06em;
}

.news-list article .category:before {
	display: block;
	content: '｜';
	position: absolute;
	top: 0;
	left: -19px;
}

.top-news .news-list article .category:before { left: -17px; }
.news-list article h2 { letter-spacing: 0.06em; }

/* .news-list-s
------------------------------------*/
.news-list-s article { border-bottom: 1px solid var(--color-border); }
.news-list-s article:first-of-type { border-top: 1px solid var(--color-border); }

.news-list-s article a { display: block; padding: 22px 0 22px 5px; }
.news-list-s article a > div { padding-top: 0; }

.news-list-s article time,
.news-list-s article .category { font-size: 13px; }

.news-list-s article .category {
	position: relative;
	margin-left: 11px;
}

.news-list-s article .category:before {
	display: block;
	content: '｜';
	position: absolute;
	top: 0;
	left: -13px;
}

.news-list-s article h2 { margin-top: 8px; }


/* psot
---------------------------------------------------------------------------*/

/* .post
------------------------------------*/
.post, .post p {
	font-size: 16px;
	line-height: 2.15;
	letter-spacing: 0.08em;
	text-align: justify;
}

.post p { margin-bottom: 25px; word-break: break-all; }
.faq-list .post p { margin-bottom: 18px; }
.post p:last-child { margin-bottom: 0; }
.post a { text-decoration: underline; word-break: break-all; }
.post a:after { display: none; }
.post strong { font-weight: bold; }
.post em { font-style: italic; }
.post del { text-decoration: line-through; }

.post img {
	display: block;
	max-width: 100%;
	height: auto;
	padding: 60px 0 35px;
}

.post img + img, .post > img:first-child, .post > p:first-child img:first-child { padding-top: 0; }
.post img + img { margin-top: 10px; }
.post .wp-caption { max-width: 100%; margin-bottom: 25px; }
.post .wp-caption-text { margin-top: -5px; }

.post ul, .post ol, .post blockquote { margin: 30px 0; }
.post ul li { list-style: disc; margin: 0 0 6px 25px; }
.post ol li { list-style: decimal; margin: 0 0 6px 25px; }
.post ul li:last-of-type, .post ol li:last-of-type { margin-bottom: 0; }

.post blockquote {
	background: #F5F5F5;
	padding: 28px 35px;
}

/* .sec-table
------------------------------------*/
.sec-table { margin-top: 75px; }

.sec-table h3 {
	margin: 0 0 15px 10px;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.news-table {
	box-sizing: border-box;
	border-top: 1px solid var(--color-border);
	width: 100%;
	margin-bottom: 35px;
}

.news-table tr { border-bottom: 1px solid var(--color-border); }

.news-table th,
.news-table td {
	padding-top: 19px;
	padding-bottom: 18px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.news-table th {
	position: relative;
	box-sizing: border-box;
	width: 20%;
	padding-right: 10px;
	padding-left: 10px;
	text-align: left;
	vertical-align: top;
}

.news-table td { box-sizing: border-box; width: 80%; }
.news-table-attention { margin-top: -10px; }
.news-table-attention p { font-size: 14px; letter-spacing: 0.06em; }

/* .news-link
------------------------------------*/
.news-link { overflow: hidden; margin-top: 45px; }
.news-link li { float: left; margin: 0 12px 12px 0; }


/* .wp-pagenavi
---------------------------------------------------------------------------*/
.wp-pagenavi {
	overflow: hidden;
	margin-top: 100px;
	font-family: var(--font-serif);
	font-size: 18px;
	text-align: center;
}

#suzunariContents .wp-pagenavi { margin-top: 200px; }

.wp-pagenavi .extend { display: none; }
.wp-pagenavi a { margin: 0 5px; padding: 5px; }

.wp-pagenavi .current {
	display: inline-block;
	border-bottom: 1px solid #666666;
	margin: 0 10px;
	padding: 5px 0 2px;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	display: inline-block;
	text-indent: -9999px;
	background: url(img/share/ico-arrow-right-s.svg) no-repeat center center;
	width: 18px;
	height: 18px;
}

.wp-pagenavi a.previouspostslink { margin-right: 20px; transform: translateY(-1px) scaleX(-1); }
.wp-pagenavi a.nextpostslink { margin-left: 20px; transform: translateY(-1px); }
.wp-pagenavi a.first, .wp-pagenavi a.last { display: none; }


/* .faq-list
---------------------------------------------------------------------------*/
.faq-list { border-top: 1px solid var(--color-border); text-align: left; }
.faq-list > div {
	border-bottom: 1px solid var(--color-border);
}

.faq-list dt,
.faq-list dd,
.faq-list dd * {
	font-size: 17px;
	line-height: 1.9;
	letter-spacing: 0.06em;
}

.faq-list dt {
	position: relative;
	padding: 16px 0 16px 45px;
	font-size: 17px;
}

.faq-list dt i {
	display: block;
	position: absolute;
	top: 27px;
	left: 7px;
	width: 9px;
	height: 9px;
	transition: .1s ease-out;
}

.faq-list dt i:before,
.faq-list dt i:after {
	display: block;
	content: '';
	position: absolute;
	background-color: var(--color-font);
}

.faq-list dt i:before { top: 0; left: 4px; width: 1px; height: 100%; }
.faq-list dt i:after { top: 4px; left: 0; width: 100%; height: 1px; }
.faq-list dt.active i { transform: rotate(135deg); }

.faq-list dd {
	display: none;
	padding: 0 9px 15px 45px;
	text-align: justify;
	transform: translateY(-5px);
	font-size: 15px;
	letter-spacing: 0.03em;
}


/* page top
---------------------------------------------------------------------------*/
body.top footer { padding-top: 170px; }

.top-wrap { display: -webkit-box; display: flex; justify-content: space-between; }
.top-wrap-inner { position: relative; width: 515px; }

/* .top-img
------------------------------------*/
.top-img {
	width: 514px;
	min-width: 514px;
	height: 767px;
}

.top-img a { display: block; }
.top-img a figure { display: none; }
.top-img a figure:first-of-type { display: block; }
.top-img img { object-fit: cover; width: 100%; height: 100%; }

.top-img h2 {
	position: absolute;
	bottom: 48px;
	left: 35px;
	font-size: 30px;
	letter-spacing: 0.04em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
	z-index: 1;
}

.top-img h2.white { color: #FFFFFF; }

.dot-none .slick-dots { display: none !important; }

.slider-top .slick-dots {
	display: -webkit-box;
	display: flex;
	position: absolute;
	bottom: 20px;
	left: 50px;
	width: calc(100% - 100px);
	z-index: 2;
}

.slider-top .slick-dots li {
	position: relative;
	width: calc(100% / 4 - 6px);
	height: 42px;
	margin-right: 20px;
}
.slider-top .slick-dots li:last-of-type { margin-right: 0; }
.slider-top .slick-dots li:first-of-type:last-of-type { display: none; }

.slider-top .slick-dots button {
	position: relative;
	width: 100%;
	height: 42px;
	text-indent: -9999px;
}

.slider-top .slick-dots button:after {
	display: block;
	content: '';
	position: absolute;
	top: 19px;
	left: 0;
	background: rgba(255,255,255,0.2);
	width: 100%;
	height: 2px;
	transition: .15s ease-out;
}

.slider-top .slick-dots .slick-active button:after { background: rgba(255,255,255,1); }
.slider-top.slider-sub { min-width: auto; }
.slider-top.slider-sub .slick-dots { bottom: -50px; left: 0; width: 100%; }
.slider-top.slider-sub .slick-dots button:after { background: #CCCCCC; }
.slider-top.slider-sub .slick-dots .slick-active button:after { background: #222222; }

.top-img .inner h2 {
	position: absolute;
	bottom: 100px;
	left: 50px;
	color: #FFFFFF;
	font-size: 20px;
	letter-spacing: 0.08em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
	z-index: 1;
}

.top-img .inner.black h2 { color: var(--color-font); }

/* .top-bnr
------------------------------------*/
.top-bnr-wrap {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-bnr-wrap > h2 {
	width: 100%;
	margin-bottom: 75px;
	text-align: center;
}

.top-bnr-wrap > h2 span {
	display: inline-block;
	font-size: 21px;
	letter-spacing: 0.4em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.top-bnr { width: 240px; }
.top-bnr a { display: block; }
.top-bnr figure { position: relative; }

.top-bnr figcaption {
	position: absolute;
	top: 18px;
	right: 18px;
	font-size: 18px;
	letter-spacing: 0.06em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.top-bnr figcaption.white { color: #FFFFFF; }

.top-bnr h2 {
	margin-top: 17px;
	font-size: 15px;
	text-align: center;
}

/* .top-news
------------------------------------*/
.top-news {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.top-news .news-list article a {
	padding-top: 11px;
	padding-bottom: 9px;
	padding-left: 5px;
}

.top-news .news-list article .category,
.top-news .news-list article h2 { font-size: 13px; }
.top-news .news-list article time { font-size: 14px; }

.top-news .news-list article a > div {
	width: 160px;
	min-width: 160px;
	padding-top: 0;
}

/* .bnr-nav (top page / onlineshop detail)
------------------------------------*/
.bnr-nav .inner { margin-bottom: 180px; }
.post-item .bnr-nav .inner { margin-bottom: 45px; }
.bnr-nav .inner:last-of-type { margin-bottom: 0 !important; }
.bnr-nav figure { margin-bottom: 20px; }

.bnr-nav h2 { line-height: 1.5; }

.bnr-nav h2 em {
	display: block;
	margin: 0 0 6px 1px;
	font-size: 14px;
	letter-spacing: 0.1em;
}

.bnr-nav h2 strong {
	font-size: 18px;
	letter-spacing: 0.14em;
}


/* page news
---------------------------------------------------------------------------*/

/* .news-title
------------------------------------*/
.news-title { margin-bottom: 30px; }

.news-title time,
.news-title .category {
	display: inline-block;
	font-size: 14px;
	white-space: nowrap;
}

.news-title time {
	margin-right: 8px;
	font-family: var(--font-serif);
	font-size: 16px;
	letter-spacing: 0.02em;
}

.news-title .category { letter-spacing: 0.06em; }

.news-title h1,
.news-title h2 {
	margin-top: 14px;
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-title h2 { margin-top: 8px; font-size: 14px; }
.news-title h2 + h1 { margin-top: 6px; font-size: 20px; }

/* .news-other
------------------------------------*/
.news-other { margin-top: 160px; }
.news-other .btn-line { margin-top: 100px; }


/* page about
---------------------------------------------------------------------------*/
#aboutContents .img-main,
#shopsContents .img-main { margin: 0 auto 100px; }
#aboutContents .img-main img,
#shopsContents .img-main img { height: auto; }

#aboutContents .img-main figcaption {
	margin-top: 16px;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-align: right;
}

/* .about-outline
------------------------------------*/
.about-outline { margin-top: -5px; }

.about-outline > p {
	font-size: 18px;
	line-height: 2.2;
	letter-spacing: 0.1em;
	text-align: center;
}

.about-outline dl { margin-top: 95px; }

.about-outline dl > div {
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid var(--color-border);
	padding: 21px 0 21px 10px;
}

.about-outline dl > div:last-of-type { margin-bottom: 0; }

.about-outline dt,
.about-outline dd,
.about-outline dd p {
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.about-outline dd p { margin-bottom: 0; }

.about-outline dt {
	box-sizing: border-box;
	width: 20%;
	min-width: 20%;
}


/* page suzunari
---------------------------------------------------------------------------*/
body.suzunari .title-page { margin-bottom: 40px; }
body.suzunari-single .title-page { margin-bottom: 120px; }
body.suzunari .sec-lead.center { width: auto; margin-bottom: 60px; }
body.suzunari .sec-lead.center p:nth-of-type(1),
body.suzunari .sec-lead.center p:nth-of-type(3) { margin-bottom: 0; letter-spacing: 0.1em;}

/* .suzunari-list
------------------------------------*/
.suzunari-list-wrap { width: 800px; }

.suzunari-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.suzunari-list article {
	box-sizing: border-box;
	border-bottom: 1px solid var(--color-border);
	width: 380px;
	padding: 24px 5px 24px 5px;
}

.suzunari-list article:nth-of-type(1),
.suzunari-list article:nth-of-type(2) {
	border-top: 1px solid var(--color-border);
}

.suzunari-list article a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}

.suzunari-list figure { width: 110px; min-width: 110px; }
.suzunari-list .txt { padding: 0 0 0 30px; }

.suzunari-list time {
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.06em;
}

.suzunari-list h3 {
	margin-bottom: 8px;
	font-size: 17px;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.suzunari-list + .btn-line { margin-top: 80px; }


/* suzunari single
---------------------------------------------------------------------------*/
body.suzunari-single .title-page strong {
	margin-bottom: -2px;
	font-size: 28px;
	letter-spacing: 0.04em;
	font-feature-settings : normal;
}

body.suzunari-single .title-page em {
	margin-left: -4px;
	font-size: 14px;
	letter-spacing: 0.04em;
	font-feature-settings : normal;
}

/* .suzunari-other
------------------------------------*/
.suzunari-other { margin-top: 160px; }
.suzunari-other h2 { margin-bottom: 20px; font-size: 18px; letter-spacing: 0.1em; }


/* page shops
---------------------------------------------------------------------------*/
#shopsContents .sec-common { margin-bottom: 120px; }
#shopsContents .title-center { display: none; }

body.shops #hibiyaContents .img-main img { object-position: 50% 90%; }

/* .shops-detail
------------------------------------*/
.shops-detail { border-top: 1px solid var(--color-border); }
#shopsContents .shops-detail { margin-top: 120px; }

.shops-detail .inner {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid var(--color-border);
	padding: 22px 0 0 5px;
	line-height: 1.6;
}

.shops-detail .inner h3 {
	box-sizing: border-box;
	width: 80px;
	min-width: 80px;
	padding: 1px 15px 0 0;
	font-size: 17px;
	white-space: nowrap;
}

.shops-detail .inner .txt { width: 100%; }
.shops-detail .inner-s { border-bottom: 1px solid var(--color-border); padding: 22px 0 22px 10px; }
.shops-detail .inner-s:first-child { padding-top: 2px !important; }
.shops-detail .inner-s:last-of-type { border-bottom: none; }
.shops-detail .inner-s a { display: block; }

.shops-detail .inner .txt h4 { margin-bottom: 6px; font-size: 16px; }
.shops-detail .inner .txt h4 span { padding-left: 6px; }

.shops-detail .inner .txt p,
.shops-detail .inner .txt address {
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.06em !important;
	text-align: left;
}

body.shops-single .shops-detail .inner .txt address br { display: block !important; }

.shops-detail .inner .txt p.attention { padding-top: 2px; }
.shops-detail .inner .txt p + p.attention { margin-top: -16px; }
.shops-detail .inner .txt .attention-list { margin-top: 6px; }
.shops-detail .inner .txt dl { margin-top: 16px; }
.shops-detail .inner .txt dl:first-child { margin-top: 2px; }
.shops-detail .inner .txt dl:not(:last-child) { margin-bottom: 16px; }

.shops-detail .inner .txt dl > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 5px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.shops-detail .inner .txt dl > div:last-of-type { margin-bottom: 0; }

.shops-detail .inner .txt dt {
	width: 35px;
	min-width: 35px;
	padding-right: 10px;
}

.shops-detail + p {
	padding-top: 0 !important;
	margin-top: 16px;
	line-height: 1.8;
	letter-spacing: 0.06em;
}

#shopsContents .shops-detail .inner-s {
	padding-top: 24px;
	padding-bottom: 24px;
}

#shopsContents .shops-detail .inner h3,
#shopsContents .shops-detail .inner-s:first-child {
	padding-top: 8px !important;
}

#shopsContents .shops-detail .inner h3 {
	width: 140px;
	min-width: 140px;
}

#shopsContents .shops-detail .inner .txt h4,
#shopsContents .shops-detail .inner .txt p,
#shopsContents .shops-detail .inner .txt address {
	font-size: 17px;
	line-height: 1.7;
	letter-spacing: 0.02em !important;
}

#shopsContents .shops-detail .inner .txt address {
	color: var(--color-font-light);
	font-size: 15px;
}


/* shops single
---------------------------------------------------------------------------*/
body.shops-single .contents { padding-top: 75px; }
body.shops-single .sec-common { margin-bottom: 90px; }

body.shops-single .sec-common.sec-lead .title-center { margin-bottom: 35px; text-align: left; }
body.shops-single .sec-common.sec-lead .title-center:last-child { margin-bottom: -40px; }
body.shops-single .sec-common.sec-lead .title-center strong { font-size: 26px; font-feature-settings : normal; letter-spacing: 0.02em; }
body.shops-single .sec-common.sec-lead p { font-size: 18px; }

body.shops-single .title-center.wide { display: block !important; }
body.shops-single .title-center.wide strong { font-size: 22px; }

body.shops-single .img-sub,
body.en .img-sub { margin-right: -40px; margin-left: -40px; }

body.shops-single .img-sub { margin-bottom: 100px; }
body.en .img-sub { margin-bottom: 70px; }

body.shops-single .contents.single:not(#hontenContents) .sec-lead { margin-bottom: 43px; }
body.shops-single .shops-detail { border-top: 1px solid var(--color-border); margin-top: 80px; }
body.shops-single .shops-list-wrap .shops-detail { margin-top: 0; }
body.shops-single .sec-common:not(.shops-list-wrap) .shops-detail .inner { padding: 22px 0 22px 5px; }
body.shops-single .sec-common:not(.shops-list-wrap) .shops-detail .inner h3 { width: 90px; min-width: 90px; font-size: 16px; }

body.shops-single .shops-list-wrap { margin-top: 30px; }

/* .shops-list-chaho
------------------------------------*/
.shops-list-chaho { margin-top: 40px; }

.shops-list-chaho ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.shops-list-chaho li { width: 47%; margin-bottom: 25px; }
.shops-list-chaho li:nth-of-type(1) { width: 100%; margin-bottom: 40px; }

.shops-list-chaho figure { margin-bottom: 0 !important; }

.shops-list-chaho figcaption {
	margin-top: 12px;
	font-size: 15px;
	letter-spacing: 0.01em;
}

.shops-list-chaho ul + p {
	margin-left: 0 !important;
	font-size: 13px !important;
	line-height: 1.9 !important;
}

/* .shops-map
------------------------------------*/
.shops-map { margin-bottom: 80px; }
.shops-map .map { position: relative; overflow: hidden; width: 100%; height: 0; padding-bottom: 100%;	}
.shops-map .btn-line { margin-top: 30px; }

.shops-map .map iframe {
	position: absolute;
	top: -170px;
	left: -60px;
	width: calc(100% + 60px);
	height: calc(100% + 170px);
}

.shops-map .map,
.googlemaps iframe,
.googlemaps object,
.googlemaps embed {
  filter: grayscale(100%);
}

/* .shops-news
------------------------------------*/
.shops-news { margin-bottom: 80px; }
.shops-news .title-left { margin-left: 5px; }
.shops-news .btn-line { margin-top: 40px; }
.shops-news .btn-line:first-child { margin-top: -65px; }

/* .shops-list
------------------------------------*/
.shops-list { border-top: 1px solid var(--color-border); }
.shops-list li { border-bottom: 1px solid var(--color-border); }

.shops-list li a {
	display: block;
	padding: 21px 15px 21px 17px;
	font-size: 15px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.shops-list + .btn-line { margin: 50px auto 0; }


/* page recruit
---------------------------------------------------------------------------*/
#recruitContents.single .title-page { margin-bottom: 40px; }

#recruitContents.single .sec-common {
	width: 800px;
	margin-bottom: 0;
	padding: 0;
}

/* .recruit-list
------------------------------------*/
.recruit-list {
	border-top: 1px solid var(--color-border);
	width: 800px;
	margin: 0 auto;
}

.recruit-list article { border-bottom: 1px solid var(--color-border); }

.recruit-list article a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	padding: 28px 12px;
}

.recruit-list figure { width: 325px; min-width: 325px; }
.recruit-list .txt { padding: 0 0 0 58px; }

.recruit-list h3 {
	margin-bottom: 16px;
	font-size: 20px;
	line-height: 1.7;
	letter-spacing: 0.08em;
}

.recruit-list .category span,
.title-page .category span {
	display: inline-block;
	margin-bottom: 7px;
	font-size: 14px;
	letter-spacing: 0.1em;
}

.recruit-list .category span:last-of-type i,
.title-page .category span:last-of-type i { display: none; }


/* recruit single
---------------------------------------------------------------------------*/
#recruitContents.single .img-main { margin-bottom: 45px; }

/* .recruit-detail
------------------------------------*/
.recruit-detail { border-top: 1px solid var(--color-border); }

.recruit-detail .inner {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid var(--color-border);
	padding: 22px 10px 24px 6px;
	line-height: 1.6;
}

.recruit-detail .inner h2,
.recruit-detail .inner .txt h3,
.recruit-detail .inner .txt .dot-list li {
	font-size: 15px;
	letter-spacing: 0.08em;
}

.recruit-detail .inner h2 {
	box-sizing: border-box;
	width: 160px;
	min-width: 160px;
	padding: 3px 15px 0 0;
	font-size: 15px;
	letter-spacing: 0.08em;
}

.recruit-detail .inner .txt { width: calc(100% - 90px); }

.recruit-detail .inner .txt h3 { margin: 18px 0 8px; }
.recruit-detail .inner .txt h3:first-child { margin-top: 3px; }

.recruit-detail .inner .txt .dot-list li { margin-bottom: 1px; padding-left: 16px; }
.recruit-detail .inner .txt .dot-list li span { display: block; margin: 5px 0 7px -17px; }
.recruit-detail .inner .txt .dot-list li.indent span { margin: 0 0 8px; }

.recruit-detail .inner .txt .attention-list { margin-top: 6px; }
.recruit-detail .inner .txt .dot-list + .attention-list { margin-top: 18px; }

.recruit-detail .inner .txt p,
.recruit-detail .btn-line a { font-size: 15px; }
.recruit-detail .inner .txt p:empty { margin: 0; }

/* .recruit-other
------------------------------------*/
.recruit-other { margin-top: 160px; }
.recruit-other > .title-center { margin-bottom: 50px; }


/* page contact
---------------------------------------------------------------------------*/
#contactContents .sec-lead .inner,
.form-wrap {
	position: relative;
	margin-bottom: 80px;
	padding-left: 200px;
}

#contactContents .sec-lead .inner h2,
.form-wrap > h2 {
	position: absolute;
	top: 3px;
	left: 0;
	margin: 0;
	font-size: 17px;
}

#contactContents .sec-lead p.attention {
	margin-top: -11px;
	font-size: 14px !important;
}

.form-wrap > h2 .attention {
	display: block;
	margin-top: 6px;
	font-size: 12px;
	letter-spacing: 0.1em;
}

#contactContents .sec-lead .inner p.mt { margin-top: 35px; }
#contactContents .sec-lead .inner p + .btn-line { margin-top: 20px; }

#contactContents .sec-lead .dl-txt-horizontal { width: 620px; margin-top: 25px; }

/* .form-wrap
------------------------------------*/
.form-wrap {
	position: relative;
	box-sizing: border-box;
	padding-left: 200px;
}

.form-wrap > div { width: 620px; }

.form-wrap dl > div:first-of-type dt { display: none; }
.form-wrap dl > div { margin-bottom: 25px; }
.form-wrap dl > div:first-of-type { margin-bottom: 40px; }
.form-wrap dl > div:last-of-type { margin-bottom: 0; }

.form-wrap div > dt {
	margin-bottom: 5px;
	font-size: 16px;
	line-height: 1.9;
	letter-spacing: 0.08em;
}

.form-wrap div > dt span {
	padding-left: 6px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.form-wrap div > dt i {
	display: inline-block;
	padding-left: 2px;
	transform: translateY(-3px);
}

.form-wrap .txt-s {
	font-size: 11px;
	color: #555555;
	margin-top: 6px;
	text-align: justify;
	letter-spacing: 0.04em;
	line-height: 1.95;
}

.form-wrap div > dd + p { display: none; }

.form-wrap .btn-select, .form-wrap .btn-select * { cursor: pointer; }
.form-wrap .btn-select { width: 100%; display: block; position: relative; transition: .15s ease-out; }
.form-wrap .btn-select:hover { opacity: 0.7; }
.form-wrap .btn-select .wpcf7-form-control-wrap { display: block; }

.form-wrap .btn-select .customSelect {
	display: block !important;
	position: relative;
	box-sizing: border-box;
	background: #FFFFFF;
	border: solid 1px var(--color-border-frame);
	border-radius: 0;
	width: 100%;
	height: 56px;
	margin-bottom: 0;
	padding: 11px 0 0 22px;
	font-size: 16px;
	letter-spacing: 0.12em;
	pointer-events: none;
}

.form-wrap .btn-select .customSelect:after {
	position: absolute;
	background-image: url(img/share/ico-arrow-down-s.svg);
	background-size: 13px auto;
	content: '';
	display: block;
	right: 20px;
	top: calc(50% - 3px);
	width: 13px;
	height: 7px;
	pointer-events: none;
}

.form-wrap .btn-select .customSelect .customSelectInner { width: 100% !important; }
.form-wrap .hidden-fields-container { border: none; margin: 0; padding: 0; }

/* input
------------------------------------*/
/* .wpcf7-form-control-wrap { display: inline-block; } */
.form-wrap input[type="checkbox"] { width: auto; margin-right: 8px; transform: translateY(2px); }

.form-wrap input[type="text"],
.form-wrap input[type="email"],
.form-wrap input[type="tel"],
.form-wrap textarea {
	-webkit-appearance: none;
	display: inline-block;
	box-sizing: border-box;
	background: #FFFFFF;
	border: solid 1px var(--color-border-frame);
	border-radius: 0;
	width: 100%;
	height: 52px;
	padding: 5px 22px;
	color: #000000;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.form-wrap textarea { height: 280px; padding: 18px 22px; line-height: 1.7; }
.wpcf7-display-none { display: none !important; }

/* privacy check
------------------------------------*/
.form-wrap .privacy-check { font-size: 16px; letter-spacing: 0.08em; }
.form-wrap .privacy-check .wpcf7-not-valid-tip { margin: 10px 0 0; }
.check-wrap {	padding-left: calc(32% - 9px); margin: 15px 0 45px; }

.form-wrap .your-consent .wpcf7-list-item-label {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 0.08em;
	transform: translate(11px,-2px);
	white-space: nowrap;
}

/* .btn-submit
------------------------------------*/
.submit-wrap {
	margin: 10px 0 0;
	font-size: 12px;
	letter-spacing: 0.04em;
}

.form-wrap .btn-submit {
	display: block;
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin: 100px 0 0;
	transition: .15s ease-out;
}

.form-wrap .btn-submit:hover { opacity: 0.7; }

.form-wrap .btn-submit input {
	display: block;
	box-sizing: border-box;
	background: #111111;
	border: none;
	border-radius: 0;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 29px 0;
	color: #FFFFFF;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.08em;
	appearance: none;
}

.grecaptcha-badge { pointer-events: none; z-index: -999; opacity: 0; }
body.contact .grecaptcha-badge { pointer-events: auto; z-index: 0; opacity: 1; }

/* error
------------------------------------*/
.wpcf7-not-valid-tip,
.form-wrap .txt-error,
.wpcf7-not-valid-tip {
	display: block;
	margin: 12px 0 30px;
	padding: 0;
	font-size: 13px;
	line-height: 1.4;
	letter-spacing: 0.08em;
}

.screen-reader-response { display: none; }

.txt-response,
.wpcf7-response-output {
	display: inline-block;
	margin: 24px 0 0;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}


/* page privacy
---------------------------------------------------------------------------*/
#privacyContents .title-page + .sec-lead { margin-bottom: 80px; }
#privacyContents .sec-common { margin-bottom: 100px; text-align: justify; }
#privacyContents .sec-common p { display: inline; line-height: 2.05; letter-spacing: 0.08em; }


/* page faq
---------------------------------------------------------------------------*/
#faqContents .title-page { margin-bottom: 107px; }

/* .btn-select.anchor
------------------------------------*/
.btn-select.anchor {
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0 auto 60px;
}

#faqContents .btn-select.anchor { width: 86%; }

.btn-select.anchor select {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 2;
}

.btn-select.anchor .customSelect {
	display: block;
	box-sizing: border-box;
	width: 100%;
	color: #282828;
	font-size: 16px;
	text-align: left;
	letter-spacing: 0.1em;
}

.btn-select.anchor .customSelect .customSelectInner {
	display: block !important;
	box-sizing: border-box;
	background: url(img/share/ico-arrow-down-s.svg) no-repeat right 20px center;
	border: 1px solid var(--color-border-frame);
	width: 122% !important;
	margin: 0 -11%;
	padding: 20px 0 20px 20px;
	transform-origin: center center;
	transform: scale(0.8);
}

/* .faq-list-wrap
------------------------------------*/
.faq-list-wrap,
#contactContents .sec-common { box-sizing: border-box; width: 960px; }
.faq-list-wrap > div { position: relative; padding-left: 200px; }
.faq-list-wrap > div:not(:last-of-type) { margin-bottom: 100px; }

.faq-list-wrap h2 {
	position: absolute;
	top: 17px;
	left: 0;
	font-size: 17px;
	letter-spacing: 0.08em;
}

.faq-list-wrap h2 i { display: none; }
.faq-list-wrap .faq-list { border-top: none; }


/* page terms
---------------------------------------------------------------------------*/
#termsContents .sec-common { width: 840px; }


/* page thismonth
---------------------------------------------------------------------------*/
.month-lead,
.item-list-month,
.feature-main,
.onlineshop-top-item,
#kashiContents .item-list,
#setContents .sec-common {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0;
}

/* .month-lead
------------------------------------*/
.month-lead {
	position: relative;
	margin-bottom: 20px !important;
	padding-top: 80px !important;
	text-align: center;
}

.month-title {
	position: relative;
	margin-bottom: 95px;
}

.month-lead h1 {
	display: inline-block;
	position: relative;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
	font-size: 28px;
	letter-spacing: 0.2em;
	transform: translateY(3px);
	z-index: 1;	
}

body.thismonth-en .month-lead h1 {
	writing-mode: inherit;
	transform: translateY(-1px);
}

.nav-arrow {
	position: absolute;
	top: 50%;
	left: calc(50% - 320px);
	transform: translateY(-50%);
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	width: 640px;
	z-index: 0;
}

.wrap-modal .nav-arrow {
	position: fixed !important;
	left: 50.5%;
	width: 49%;
}

.nav-arrow a {
	display: block;
	width: 55px;
	height: 75px;
}

.nav-arrow a.prev { transform: scaleX(-1); }

.nav-arrow a i {
	display: block;
	background: url(img/share/ico-arrow-nav.svg) no-repeat center center;
	width: 100%;
	height: 100%;
	opacity: 0;
}

.month-lead .attention { text-align: right; color: #888 !important; }

.month-lead .modal-saijiki + .attention {
	position: absolute;
	bottom: -3px;
	right: -2px;
	z-index: 1;
}

/* .btn-modal-saijiki
------------------------------------*/
.btn-modal-saijiki { display: block; position: relative; text-align: left; z-index: 1; }
.btn-modal-saijiki .inner { display: inline-block; }

.btn-modal-saijiki h2 {
	display: inline-block;
	margin-right: 12px;
	font-size: 14px;
	letter-spacing: 0.14em;
}

.btn-modal-saijiki h3 {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 0.08em;
}

.btn-modal-saijiki h3 span { border-bottom: 1px solid var(--color-font); }

/* .modal-saijiki
------------------------------------*/
.modal-saijiki {
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	width: 50%;
	height: 100%;
	z-index: 10001;
	display: none;
	opacity: 0;
}

.modal-saijiki-inner {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	opacity: 0;
}

.modal-saijiki-inner .inner {
	position: relative;
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 100px 14% 45px;
	-webkit-overflow-scrolling: touch;
	text-align: left;
}

.modal-saijiki-inner .inner::-webkit-scrollbar { width: 2px; }
.modal-saijiki-inner .inner::-webkit-scrollbar-track { border-radius: 0; background: #FFF; }
.modal-saijiki-inner .inner::-webkit-scrollbar-thumb { border-radius: 0; background: #FFF; }


.modal-saijiki-inner .modal-close-btn {
	position: absolute;
	top: 0;
	right: 0;
	padding: 40px 34px;
}

.modal-saijiki-inner h2 { display: none; }

.modal-saijiki-inner h3,
.modal-saijiki-inner h4 {
	margin-left: 6.5%;
}

.modal-saijiki-inner h3 {
	margin-bottom: 8px;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.modal-saijiki-inner h4 {
	margin-bottom: 28px;
	font-size: 20px;
	letter-spacing: 0.1em;
}

.modal-saijiki-inner .txt { padding: 0 6.5%; }

.modal-saijiki-inner .txt > img:first-child,
.modal-saijiki-inner .txt p:first-of-type img {
	width: 115%;
	margin: 0 -7.5% 45px;
}

.modal-saijiki-inner .txt p {
	margin-bottom: 20px;
	line-height: 2.1;
	letter-spacing: 0.06em;
	text-align: justify;
}

.modal-saijiki-inner .btn-line { margin: 80px -7.5% 0; }
.modal-saijiki-inner .btn-line + .btn-line { margin-top: 10px; }

/* .nav-month
------------------------------------*/
.thismonth footer,
.thismonth-en footer { padding-top: 160px; }

.nav-month {
	margin: 75px auto 0;
	padding-bottom: 50px;
	text-align: center;
}

.nav-month ul {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin: 0 auto;
}

.nav-month li a {
	display: block;
	padding: 20px 12px 40px;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.nav-month li span {
	display: block;
	width: 15px;
	border-right: 1px solid #FFFFFF;
	padding-right: 4px;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

body.thismonth-en .nav-month {
	width: 1100px;
	padding-right: 0;
	padding-left: 0;
}

body.thismonth-en .nav-month ul {
	flex-direction: initial;
}

body.thismonth-en .nav-month li.current {
	pointer-events: none !important;
}

body.thismonth-en .nav-month li.off {
	opacity: 0.2 !important;
	pointer-events: none !important;
}

body.thismonth-en .nav-month li a {
	letter-spacing: 0.02em;
}

body.thismonth-en .nav-month li span {
	border-right: none;
	border-bottom: 1px solid #FFFFFF;
	writing-mode: inherit;
	width: auto;
	padding-right: 2px;
	font-size: 19px;
}

.nav-month li.current span { border-color: #666666 !important; }

/* .modal-item / .not-ec
------------------------------------*/
.post-item .modal-item-close { display: none; }
.post-item .modal-item-close.active { display: block; }
.post-item .btn-line.modal-item-close { display: none !important; }
.modal-close-btn.modal-item-close { position: absolute; top: 0; right: 0; padding: 60px; z-index: 100; }
.modal-close-btn.modal-item-close img { width: 50px; opacity: 0.5; }
.btn-line.modal-item-close { width: 58%; margin: 60px auto 60px; }
.post-item-inner.btm + .btn-line.modal-item-close { margin-top: 20px; }
.post-item.notsale .post-item-inner.btm + .btn-line.modal-item-close { margin-top: 65px; }

.item-list .not-ec .post-item .txt { margin-top: 35px; }
.item-list .not-ec .post-item .dl-line {
	border-top: 1px solid var(--color-border);
	padding-top: 16px;
}


/* page onlineshop
---------------------------------------------------------------------------*/
.title-onlineshop { margin-top: -25px; margin-bottom: 100px !important; }
.title-onlineshop strong { font-size: 16px; }

#onlineshopContents .sec-common { margin-bottom: 120px; }
#onlineshopContents .sec-common.news-onlineshop { margin-bottom: 80px; }
#onlineshopContents .sec-common .btn-set { margin-top: 50px; }

#onlineshopContents .sec-common.btn-set {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	width: 710px;
	margin: 40px auto 0;
}

#onlineshopContents .sec-common.btn-set .btn-line { width: 335px; }

#onlineshopContents .sec-common.btn-set .btn-line a {
	padding-top: 14px;
	padding-bottom: 15px;
	font-size: 18px;
	letter-spacing: 0.12em;
}

#onlineshopContents .item-list-category article { margin-top: 9%; }
#onlineshopContents:not(.archive) .item-list-category h3,
#onlineshopContents .item-list-category h4 { display: none; }

#kashiContents .item-list-category h3 { margin-top: 12px; }

#kashiContents .sec-lead { margin-bottom: 90px; }
#kashiContents .sec-lead p + p.attention { margin-top: -8px; }

#kashiContents h1.title-page { margin-bottom: 50px; }
#kashiContents h1.title-page strong { letter-spacing: 0.1em; }

#kashiContents .title-center { margin-bottom: 50px; }

#kashiContents .item-list article,
#kashiContents .item-list article:nth-child(even) { width: 261px; margin: 0 32px 50px 0 !important; }
#kashiContents .item-list article:nth-of-type(4n) { margin-right: 0 !important; }

/* .feature-main
------------------------------------*/
.feature-main { margin-bottom: 120px !important; }

.feature-main .bnr { position: relative; height: 616px; margin-bottom: 38px; }
.feature-main .bnr a { display: block; position: relative; width: 100%; height: 100%; }
.feature-main .bnr img { object-fit: cover; width: 100%; height: 100%; }

.feature-main .bnr h2 {
	position: absolute;
	top: 50%;
	right: 15%;
	transform: translateY(-50%);
	margin-top: 6px;
	font-size: 36px;
	letter-spacing: 0.12em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.feature-main .bnr h2.white { color: #FFFFFF; }

.feature-main-inner { display: -webkit-box; display: flex; justify-content: space-between; }
.feature-main-txt { color: var(--color-font-light); }

.feature-main-txt h2 {
	margin-bottom: 12px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.feature-main-txt h2 strong { padding-right: 10px; letter-spacing: 0.02em; }
.feature-main-txt h2 span { font-size: 13px; }
.feature-main-txt p { font-size: 17px; line-height: 1.95; letter-spacing: 0.03em; }

.news-onlineshop { width: 46.6%; }

.news-onlineshop .news-list article .category,
.news-onlineshop .news-list article h2 {
	font-size: 14px;
}

.news-onlineshop .news-list article a {
	padding-top: 13px;
	padding-bottom: 11px;
	padding-left: 7px;
}

.news-onlineshop .news-list article a > div {
	width: 135px;
	min-width: 135px;
	padding-top: 2px;
}

/* .onlineshop-top-item
------------------------------------*/
.onlineshop-top-item { overflow: hidden; text-align: center; }

.onlineshop-top-item > h2 {
	display: inline-block;
	margin-bottom: 100px;
	font-size: 30px;
	letter-spacing: 0.55em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.onlineshop-top-item .item-list {
	justify-content: space-between;
	width: calc(1140px + 86px) !important;
	padding: 0;
}

.onlineshop-top-item .item-list article,
.onlineshop-top-item .item-list article:nth-child(even) {
	width: 220px;
	margin: 0 86px 80px 0 !important;
}

.onlineshop-top-item .item-list:before,
.onlineshop-top-item .item-list:after {
	display: block;
	content: '';
	width: 220px;
	margin-right: 86px;
}

.onlineshop-top-item .item-list:before { order: 1; }

/* .feature-sub
------------------------------------*/
.feature-sub { width: 527px; margin: 0 86px 80px 0; }
.feature-sub a { display: block; }

.feature-sub h3,
.onlineshop-top-item .item-list-category article h3 {
	margin-top: 20px;
	font-size: 16px;
	text-align: center;
}

/* .bnr-onlineshop-common
------------------------------------*/
.bnr-onlineshop-common { margin-bottom: 35px; }
.bnr-onlineshop-common figure { margin-bottom: 10px; }
.bnr-onlineshop-common h2 { font-size: 15px; }

/* .item-list
------------------------------------*/
.item-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.item-list article {
	position: relative;
	width: 45%;
	margin: 9.5% 10% 0 0;
	text-align: left;
}

.item-list-api article figure img,
.item-list-api article h3,
.item-list-api article .label,
.item-list-api article .price,
.item-list-api article p { opacity: 0; }

.item-list article:nth-of-type(1),
.item-list article:nth-of-type(2) { margin-top: 0 !important; }
.item-list article:nth-child(even) { margin-right: 0 !important; }
.item-list article a { display: block; }
.item-list article > figure img.lazyload { height: 125%; }

.item-list article figure {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-bottom: 149%;
}

.item-list article figure img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.item-list article h3 {
	margin: 14px 0 0 1px;
	font-size: 15px;
	letter-spacing: 0.08em;
}

.item-list article h3 em {
	display: block;
	margin-top: 3px;
	font-size: 13px;
}

.item-list article h4 {
	margin-top: 6px;
	font-size: 12px;
	opacity: 0.6;
}

.item-list article .price {
	margin: 3px 0 0 !important;
	font-size: 17px !important;
}

.item-list .label,
.item-list-set .label {
	position: absolute;
	top: 0;
	left: -20px;
	font-size: 13px;
	letter-spacing: 0.1em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

body.thismonth-en .item-list .label {
	display: none !important;
}

.item-list .label-sold,
.item-list-set .label-sold,
.item-list .label-kikangai,
.item-list-set .label-kikangai { display: none; }

.item-list .sold:not(.kikangai) .label-sold,
.item-list .kikangai .label-kikangai,
.item-list-set .sold:not(.kikangai) .label-sold,
.item-list-set .kikangai .label-kikangai { display: block; }

/* .item-list.relation
------------------------------------*/
.sec-relation { margin-top: 140px; padding-bottom: 40px; }

#newsContents .sec-relation { margin-top: 60px; }
#suzunariContents .sec-relation { margin-top: -20px; }
.sec-relation + .sec-relation { margin-top: 100px; }

.sec-relation > h2 { margin-bottom: -30px; font-size: 20px; }
.item-list.relation { padding: 0; }
.item-list.relation article { width: 29.4%; margin: 8% 5.9% 0 0 !important; }
.item-list.relation article:nth-of-type(3n) { margin-right: 0 !important; }
.item-list.relation article .price { display: none; }
.item-list.relation .label { left: -18px; font-size: 13px; }

/* .item-list-set
------------------------------------*/
.item-list-set { display: -webkit-box; display: flex; flex-wrap: wrap; }
.item-list-set article { width: 222px; margin: 0 84px 50px 0; }
.item-list-set article:nth-of-type(4n) { margin-right: 0; }
.item-list-set article a { display: block; }
.item-list-set figure { position: relative; margin-bottom: 20px; }
.item-list-set .txt { padding: 0; }

.item-list-set h3 {
	margin-bottom: 2px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.item-list-set .price {
	font-size: 17px;
	letter-spacing: 0.03em;
}

.item-list-set .price strong { letter-spacing: 0.03em; }

.item-list-set .price span {
	padding-left: 3px;
	font-size: 12px;
	letter-spacing: 0.06em;
}

.item-list-set .txt p {
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.7;
}

/* .item-list-category
------------------------------------*/
.item-list-category { padding: 0; }

.item-list-category article h3 {
	margin-top: 20px;
	font-size: 15px;
}

.item-list-category article h4 {
	margin: 6px 0 0 1px;
	font-size: 12px;
	line-height: 1.6;
	letter-spacing: 0.08em;
	opacity: 0.6;
}

/* .item-list-month
------------------------------------*/
.item-list-month article,
.item-list-month article:nth-child(even) { width: 332px; margin: 0 72px 70px 0 !important; }
.item-list-month article:nth-of-type(3n) { margin-right: 0 !important; }
.item-list-month article h3 { margin-top: 20px; text-align: center; }

/* .item-list-catalog
------------------------------------*/
.item-list-catalog {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 1200px;
	margin: 0 auto;
	transform: translateX(30px);
}

.item-list-catalog article {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	box-sizing: border-box;
	width: 25%;
	margin-bottom: 50px;
	padding-right: 30px;
}

.item-list-catalog figure {
	position: relative;
	overflow: hidden;
	width: 99px;
	min-width: 99px;
	height: 0;
	margin-right: 20px;
	padding-bottom: calc(99px * 1.49);
}

.item-list-catalog figure img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.item-list-catalog h3 {
	margin-bottom: 6px;
	font-size: 16px;
}

.item-list-catalog h4 {
	font-size: 12px;
	opacity: 0.6;
}

.item-list-catalog h4 i { padding-right: 2px; }
.item-list-catalog h4 i:last-of-type { display: none; }

/* .item-bnr
------------------------------------*/
.item-bnr { margin: 0 auto 75px; }
.item-bnr a { display: block; }
.item-bnr figure { margin-bottom: 25px; }
.item-bnr h3 { margin-bottom: 12px; font-size: 19px; }
.item-bnr p { font-size: 16px; }
.item-bnr .btn-line { margin-top: 30px; }


/* .txt-box-line
------------------------------------*/
.txt-box-line .inner {
	border: 1px solid var(--color-border-frame);
	padding: 30px 25px;
}

.txt-box-line .inner h2 {
	margin-bottom: 10px;
	font-size: 18px;
	letter-spacing: 0.12em;
}

.txt-box-line .inner p,
.txt-box-line .inner address {
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.06em;
}

.txt-box-line .inner address { margin-top: 15px; }
.txt-box-line .btn-line { margin-top: 30px; }


/* page onlineshop category
---------------------------------------------------------------------------*/
#onlineshopContents.category .title-page,
#oiwaiContents .title-page,
#choujiContents .title-page,
#osonaeContents .title-page { margin-bottom: 40px; padding-top: 60px; }

#order-itemContents .title-page { margin-bottom: 60px; padding-top: 20px; }

#onlineshopContents.category .sec-lead,
#oiwaiContents .sec-lead,
#choujiContents .sec-lead,
#osonaeContents .sec-lead { margin-bottom: 80px; }

.sec-lead.sub { margin-bottom: 45px !important; }

#onlineshopContents.category .title-page,
#onlineshopContents.category .sec-lead p,
#oiwaiContents .title-page,
#oiwaiContents .sec-lead p,
#choujiContents .title-page,
#choujiContents .sec-lead p,
#osonaeContents .title-page,
#osonaeContents .sec-lead p,
#order-itemContents .title-page,
#order-itemContents .sec-lead p { text-align: left; }

#onlineshopContents.category .btn-line { margin-top: 80px; }


/* page onlineshop kashi
---------------------------------------------------------------------------*/
#kashiContents { overflow: hidden; margin-top: -25px; padding-top: 25px; }


/* page order / oiwai,chouji,osonae
---------------------------------------------------------------------------*/

/* .post-item-s
------------------------------------*/
.dl-line + .post-item-s { margin-top: 80px; }
.post-item-s + .order-kakegami { margin-top: 130px; }
.post-item-s { margin-bottom: 60px; text-align: left; }
.post-item-s figure { margin-bottom: 26px; }
.post-item-s .post-item-title { margin: 0; }
.post-item-s .post-item-title h2 { font-size: 17px; }
.post-item-s .post-item-title .price { margin-top: 4px; }
.post-item-s .post-item-title h2 strong { padding-right: 8px; color: var(--color-red); font-size: 15px; }
.post-item-s .post-item-title h2 ruby > rt { transform: translateY(-4px); }

.post-item .post-item-s .txt { margin-top: 12px; }
.post-item .post-item-s .txt p { font-size: 14px; }

.post-item .post-item-s .dl-line {
	border-top: 1px solid var(--color-border);
	margin-top: 25px;
}

.post-item .post-item-s .dl-line > div {
	margin-bottom: 0;
	padding-top: 11px;
	padding-bottom: 10px;
}

/* .order-kakegami
------------------------------------*/
.order-kakegami { margin-top: 90px; }
.order-kakegami figure { margin-bottom: 16px; }
.order-kakegami p { font-size: 14px; text-align: justify; letter-spacing: 0.06em; }
.order-kakegami .btn-line { margin-top: 25px; }

/* .order-info
------------------------------------*/
.order-info { margin-top: 80px; }

.order-info .inner {
	box-sizing: border-box;
	border: 1px solid var(--color-border-frame);
	padding: 60px 45px 55px;
	text-align: left;
}

.order-info .inner h2 {
	margin-bottom: 30px;
	font-size: 19px;
	line-height: 1.6;
}

.order-info .inner h3 {
	margin-top: 25px;
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 1.6;
}

.order-info .inner dl + h3 {
	margin-top: 40px;
}

.order-info .inner p {
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 1.85;
	letter-spacing: 0.06em;
	text-align: justify;
}

.order-info .inner h2 + p.attention { margin-top: -20px; margin-bottom: 40px; }

.order-info .inner dl { margin-top: 35px; font-size: 15px; }
.order-info .inner dl > div { margin-bottom: 16px; }
.order-info .inner dl > div:has(dd) { margin-bottom: 20px; }
.order-info .inner dl > div:last-of-type { margin-bottom: 0; }
.order-info .inner dt { margin-bottom: 10px; letter-spacing: 0.04em; }
.order-info .inner dd { letter-spacing: 0; }

.order-info .btn-line { margin-top: 45px; }
.order-info + .btn-line { margin-top: 20px !important; }


/* page original
---------------------------------------------------------------------------*/
#originalContents { width: 860px; margin: 0 auto; }
#originalContents .title-page { margin-bottom: 55px; }
#originalContents .sec-lead.center { text-align: center; }
#originalContents .sec-lead p { font-size: 17px; line-height: 2.2; letter-spacing: 0.1em; }
#originalContents .sec-lead.center p { line-height: 2.1; }
#originalContents .img-original { margin: 60px 0 40px; }
#originalContents .img-original figure { margin-bottom: 30px; }


/* page onlineshop single
---------------------------------------------------------------------------*/
.post-item { position: relative; }

.post-item .item-detail,
.post-item .faq-list,
.post-item .bnr-wrap,
.post-item .item-kakegami { margin-top: 80px; }

.post-item .bnr-nav,
.post-item .post-relation,
#kashiContents .bnr-wrap { margin-top: 120px; }

.slider-header a { pointer-events: none; }

/* .slider-item-nav
------------------------------------*/
.slider-item-nav { overflow: hidden; z-index: 2; }

.slider-item-nav .slick-track {
	display: -webkit-box !important;
	display: flex !important;
	justify-content: inherit !important;
	width: 100% !important;
}

.slider-item-nav .slick-track { transform: translate3d(0, 0, 0) !important; }

.slider-item-nav .img-inner {
	position: relative;
	display: block !important;
	float: none !important;
	width: 60px !important;
	margin: 0 20px 0 0 !important;
	transform: none !important;
	opacity: 1 !important;
}

.slider-item-nav .img-inner.narrow { display: none !important; }
.slider-item-nav .img-inner:last-of-type { margin-right: 0 !important; }

.slider-item-nav .img-inner.noimg { pointer-events: none; }
.slider-item-nav .img-inner.noimg:not(:last-child):after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background: var(--color-border-frame);
	width: 1px;
	height: 100%;
}

.slider-item-nav .img-inner img { display: none; }

.slider-item-nav {
	position: fixed !important;
	width: calc(50% - 70px);
	bottom: 20px;
	left: 35px;
	z-index: 10;
}

.slider-item-nav .slick-track {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.slider-item-nav .img-inner {
	position: relative;
	box-sizing: border-box;
	width: calc((100% / 4) - 10px);
	height: 2px;
	padding: 15px 0;
	transition: .15s ease-out;
}

.slider-item-nav .img-inner:after {
	display: block;
	content: '';
	background: rgba(255,255,255,0.2);
	position: absolute;
	top: 14px;
	left: 0;
	width: 100%;
	height: 2px;
	transition: .15s ease-out;
}

.slider-item-nav .img-inner.slick-current:after { background: rgba(255,255,255,1); }
.slider-item-nav .img-inner img { display: none !important; }

/* .post-item
------------------------------------*/
.wrap-modal .post-item {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: center;
	align-items: center;
	min-height: 100vh;
}

.wrap-modal .post-item-wrap { width: 100%; padding-bottom: 140px; }

.post-item-inner,
#recruitContents .sec-common { width: auto; padding: 60px 21% 0; }

.post-item-inner + .post-item-inner.btm { padding-top: 20px !important; }

.wrap-modal .post-item-inner { padding-top: 180px; }
.wrap-modal .post-item-inner.btm { padding-top: 60px; }

.post-item-title { position: relative; }

.post-item-title .nav-arrow { display: none; }
.post-item-title .nav-arrow.active { display: -webkit-box; display: flex; }

.post-item-title .nav-arrow.active + h1,
.post-item-title .nav-arrow.active + h1 + .price {
	margin-right: 0;
	margin-left: 0;
}

.post-item-title h1,
.post-item-title .price {
	position: relative;
	z-index: 1;
}

.post-item-title h1 {
	font-size: 25px;
	letter-spacing: 0.1em;
	font-feature-settings : normal;
	letter-spacing: 0.04em;
}

.post-item-title h1 i {
	display: block;
	margin-left: 1px;
	font-size: 11px;
	letter-spacing: 0.2em;
	font-feature-settings : "palt" 1;
}

.post-item-title .price,
.item-list article .price {
	margin: 13px 0 0 1px;
	font-size: 18px;
	letter-spacing: 0.03em;
}

.post-item-title .price strong,
.item-list article .price strong {
	margin-left: 1px;
	font-family: var(--font-serif);
	font-size: 18px;
	letter-spacing: 0.03em;
}

.post-item-title .price span,
.item-list article .price span {
	padding-left: 3px;
	font-size: 13px;
	letter-spacing: 0.06em;
	white-space: nowrap;
}

.post-item .txt { margin-top: 45px; }
.post-item h1 + .txt { margin-top: 30px; }

.post-item .txt p,
#onlineshopContents.category .sec-lead p,
#oiwaiContents .sec-lead p,
#choujiContents .sec-lead p,
#osonaeContents .sec-lead p,
#order-itemContents .sec-lead p {
	margin-bottom: 24px;
	font-size: 17px;
	line-height: 2;
	letter-spacing: 0.1em;
	white-space: initial;
}

.sec-lead p.attention { font-size: 14px!important; }

.post-item-inner .strage {
	margin: 18px 0 0;
	font-size: 16px;
	letter-spacing: 0.1em;
}

.post-item-inner > .btn-line { margin-top: 55px; }
.post-item-inner.btm > .btn-line { margin-top: 20px; }
.post-item-inner.btm > .btn-line:first-of-type { margin-top: 0; }
.post-item-inner > .btn-line a { letter-spacing: 0.1em; }
.post-item-inner .btn-oiwai-index, .post-item-inner .btn-chouji-index, .post-item-inner .btn-osonae-index { display: none; }

/* .cart-wrap
------------------------------------*/
.cart-wrap {
	position: relative;
	margin-top: 70px;
	text-align: left;
}

.cart-wrap.sold { margin-top: 55px; }

.cart-wrap > p,
.cart-wrap form p { font-size: 12px; letter-spacing: 0.1em; }
.cart-wrap form p { font-size: 14px; white-space: nowrap; letter-spacing: 0.06em; }

.dl-cart {
	margin: 16px 0 42px;
	text-align: left;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.dl-cart + .dl-cart.border {
	border-top: 1px solid var(--color-border);
	margin-top: -10px;
	margin-bottom: 35px;
	padding-top: 20px;
}

.dl-cart > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 13px;
}
.dl-cart > div:last-of-type { margin-bottom: 0; }

.cart-wrap .price,
.dl-cart dt {
	box-sizing: border-box;
	width: 125px;
	min-width: 125px;
	padding-top: 11px;
	padding-right: 10px;
}

.dl-cart dt.size-s { padding-top: 1px; padding-right: 15px; font-size: 14px; }

.dl-cart .description {
	margin: 10px 0 6px;
	font-size: 13px;
	line-height: 1.75;
	letter-spacing: 0.04em;
	text-align: justify;
}

.dl-cart .description dt:first-child:last-child { padding-left: 115px; }

.dl-cart dd {
	position: relative;
	overflow: hidden;
	width: calc(100% - 70px);
	min-height: 42px;
}

.dl-cart dd.border,
.dl-cart dd .border { border: 1px solid #DBDBDB; }
.dl-cart dd > div { position: relative; }

.dl-cart dd input {
	-webkit-appearance: none;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	width: 100%;
	height: 42px;
	font-size: 15px !important;
	padding: 4px 0 4px 14px !important;
	transform-origin: left center;
}

/* .dl-cart-option
------------------------------------*/
.dl-cart-option-wrap {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	margin: 15px 0 0;
	padding-bottom: 1px;
}

.dl-cart-option {
	position: absolute;
	top: 45px;
	left: 0;
	width: 100%;
	margin: 0;
}

.dl-cart-option-txt, .dl-cart-option > div { display: none; }
.dl-cart-option > div.active { display: -webkit-box; display: flex; }

/*.dl-cart-option-wrap.txt-none { margin-top: -22px; }
.dl-cart-option-wrap.txt-none .dl-cart-option-txt { display: none !important }
.dl-cart-option-wrap.txt-none .dl-cart-option { top: 0; }*/

/* .cart-num
------------------------------------*/
.dl-cart dd.border.num { width: 75px; }
.dl-cart dd.border.num input { width: 135%; }

.cart-num select,
.dl-cart dd select {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	cursor: pointer !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 2;
}

.cart-num .customSelect,
.dl-cart dd .customSelect {
	display: block;
	box-sizing: border-box;
	background: url(img/share/ico-arrow-down-s.svg) no-repeat right 14px center;
	background-size: 13px auto;
	border: 1px solid #DBDBDB;
	width: 100%;
	padding: 15px 16px;
	font-size: 15px;
	text-align: left;
	letter-spacing: 0.06em;
}

.dl-cart dd .customSelect { padding: 10px 40px 10px 12px; }
.cart-num .customSelect .customSelectInner,
.dl-cart dd .customSelect .customSelectInner { box-sizing: border-box; width: 100% !important; }

.btn-cart {
	display: block;
	-webkit-appearance: none;
	box-sizing: border-box;
	background-color: #000000;
	border: none;
	border-radius: 0;
	width: 100%;
	margin: 15px auto 0;
	padding: 26px 0;
	color: #FFFFFF;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

.btn-cart.sold { background-color: rgba(0,0,0,0.2); pointer-events: none !important; }

.cart-wrap .btn-cart.sold.kikangai {
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #CCCCCC;
	z-index: 10;
	transition: .15s ease-out;
	opacity: 0;
	pointer-events: none !important;
}

.cart-wrap.kikangai .btn-cart { pointer-events: none !important; }
.cart-wrap.kikangai .btn-cart.sold.kikangai { opacity: 1; }

.cart-wrap.kikangai .dl-cart-option-wrap {
	opacity: 0.3;
	pointer-events: none;
}

/* .btn-question
------------------------------------*/
.btn-question {
	display: inline-block;
	width: 19px;
	height: 19px;
	font-size: 0;
	transform: translateY(4px);
}

.btn-question img { width: 100%;height: auto; } 

/* .ico-required
------------------------------------*/
.ico-required {
	display: inline-block;
	background-color: var(--color-font);
	border-radius: 2px;
	height: 18px;
	margin-left: 4px;
	padding: 1px 6px 1px 6px;
	color: #FFFFFF;
	font-size: 11px;
	letter-spacing: 0.04em;
	white-space: nowrap;
	transform: translateY(-3px);
}

/* .cart-nav
------------------------------------*/
.cart-nav { margin-top: 35px; text-align: left; }
.cart-nav li { display: block; margin-bottom: 12px; }
.cart-nav li:last-of-type { margin-bottom: 0; }

.cart-nav li a {
	display: inline-block;
	padding: 0 0 3px;
	font-size: 14px;
	letter-spacing: 0.1em;
	white-space: nowrap;
}

.cart-nav li a:after {
	background: var(--color-border-btn);
	left: 20px;
	width: calc(100% - 20px);
}

/* .attention-item
------------------------------------*/
.attention-item { margin-top: 20px; }

.attention-item li {
	position: relative;
	margin-bottom: 4px;
	padding-left: 18px;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.06em;
	text-align: justify;
}
.attention-item li:last-of-type { margin-bottom: 0; }

.attention-item li:before {
	display: block;
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

/* .post-item .dl-line
------------------------------------*/
.post-item .dl-line {
	margin: 60px 0 0;
	text-align: left;
	font-size: 15px;
	line-height: 1.65;
	letter-spacing: 0.06em;
}

.post-item .dl-line > div {
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid var(--color-border);
	margin-bottom: 14px;
	padding: 0 0 14px;
}
.post-item .dl-line > div:last-of-type { margin-bottom: 0; }

.post-item .dl-line dt {
	width: 125px;
	min-width: 125px;
	padding-right: 15px;
	padding-left: 3px;
	font-size: 15px;
}
.post-item .dl-line dd span:last-of-type i { display: none; }
.post-item .dl-line dd .size-s { font-size: 13px; }

/* .item-detail
------------------------------------*/
.item-detail .inner { margin-bottom: 50px; text-align: left; }
.item-detail .inner:last-of-type { margin-bottom: 0; }
.item-detail .inner figure { margin-bottom: 15px; }
.item-detail .inner p { font-size: 15px; text-align: justify; }

/* .post-relation
------------------------------------*/
.post-relation > h2 {
	margin-bottom: 40px;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center; 
}

.post-relation > .btn-line {
	width: 58%;
	margin: 50px auto 0;
}

.post-relation > .btn-line {
	margin-top: 80px;
	margin-bottom: -40px;
}

/* .bnr-wrap
------------------------------------*/
.bnr-wrap { padding: 0 8%; }

/* .item-kakegami
------------------------------------*/
.item-kakegami { text-align: left; }

.item-kakegami a {
	display: -webkit-box !important;
	display: flex !important;
	-webkit-box-align: center;
	align-items: center;
}

.item-kakegami figure {
	border: 1px solid var(--color-border);
	width: 84px;
	min-width: 84px;
}

.item-kakegami .txt {
	margin: 0;
	padding: 0 0 4px 24px;
}

.item-kakegami h2 {
	margin: 0 0 6px 1px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.item-kakegami h3 {
	font-size: 18px;
	letter-spacing: 0.08em;
}

/* .wrap-modal
------------------------------------*/
.wrap-modal .post-item .item-kakegami { margin-bottom: 80px; }
.wrap-modal .btn-cart { font-size: 16px; }

.wrap-modal .form-wrap input[type="text"],
.wrap-modal .form-wrap input[type="email"],
.wrap-modal .form-wrap input[type="tel"],
.wrap-modal .form-wrap textarea,
.wrap-modal .cart-num .customSelect,
.wrap-modal .dl-cart dd .customSelect { font-size: 14px !important; }

.post-item.notsale .btn-kakegami,
.post-item.notsale .post-item-inner.btm { display: none; }


/* page en
---------------------------------------------------------------------------*/
.en #mainContents > .contents { padding-top: 60px; }
.en #mainContents > .contents.single { padding-top: 0; }
#mainContents .en { font-family: var(--font-serif); }
.en #mainContents { font-family: var(--font-serif); }
.en h1, .en h2, .en h3, .en h4, .en h5, .en h6, .en strong { letter-spacing: 0.02em; }
.en .btn-line a, .btn-line.en a { padding-bottom: 20px; letter-spacing: 0.04em; }

.en .title-left { margin-left: 5px; font-size: 22px; }
.en h1.title-page { margin-left: 5px; }

.en h1.title-left,
.en h1.title-page { margin-bottom: 40px; font-size: 24px; text-align: left; }

.en h1.title-page,
.en .sec-lead + figure { padding-right: 21%; padding-left: 21%; }

.en .title-page strong,
.en .title-center,
.en .title-center strong { line-height: 1.2; letter-spacing: 0.02em; }

.en .sec-common { margin-bottom: 120px; }
.en .sec-lead { margin-bottom: 70px; }
.en .img-main { margin-bottom: 65px; }
.en .img-sub { margin-bottom: 60px; }

.en .title-left,
.en .sec-common p { margin-left: 5px; }

.en .sec-common p,
.en-location .office address {
	font-size: 17px;
	line-height: 1.7;
	letter-spacing: 0;
	text-align: left;
}
.en .sec-common p { margin-bottom: 20px; }
.en-location .office address { margin-bottom: 10px; }

.en .sec-common p + p.attention {
	line-height: 1.6;
	letter-spacing: 0 !important;
}

#enContents figure { margin-bottom: 65px; }
#enContents .sec-lead + figure { margin-bottom: -10px; }
#enContents figure picture + picture { display: block; margin-top: 1px; }
#enContents figure + .sec-common { margin-top: 55px; }

/* .en-location
------------------------------------*/
#en-location {
	margin-top: -65px;
	padding-top: 65px;
}

.en-location h2 { margin: 0 0 45px 5px; }
.en-location dl { padding: 0 0 0 5px; }

.en-location dl > div,
.en-location .office {
	display: -webkit-box;
	display: flex;
	margin-bottom: 65px;
}

.en-location dt,
.en-location .office h3 {
	width: 140px;
	min-width: 140px;
}

.en-location dt h3 { font-size: 15px; letter-spacing: 0.04em; }
.en-location dd { padding: 3px 0 0; }

.en-location dd h4 {
	margin: 30px 0 14px;
	font-size: 17px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.en-location dd h4:first-of-type { margin-top: 0; }
.en-location dd h4 a { display: inline-block; line-height: 0.9; }
.en-location dd h4 span { font-size: 14px; }

.en-location dd address {
	color: var(--color-font-light);
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0.02em;
}

.en-location .btn-line { margin-top: 80px; }

/* .en-location .office
------------------------------------*/
.en-location .office {
	border-top: 1px solid var(--color-border-section);
	margin-top: 60px;
	padding: 60px 0 0 5px;
}

.en-location .office h3 { margin-bottom: 20px; font-size: 16px; }
.en-location .office address { display: block; }

/* .en-store-detail
------------------------------------*/
.en-store-detail {
	border-top: 1px solid var(--color-border);
	margin-top: 90px;
	padding-top: 60px;
}

.en-store-detail .inner { margin-bottom: 25px; }

.en-store-detail h3 {
	margin-bottom: 8px;
	font-size: 17px;
}

.en-store-detail .txt { padding: 0 0 0 18px; }

.en-store-detail .txt p,
.en-store-detail .txt p a,
.en-store-detail .txt address,
.en-store-detail .txt dl {
	color: var(--color-font-light);
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0;
}

.en-store-detail .txt p.attention {
	letter-spacing: 0.02em !important;
}

.en-store-detail .txt dl { margin-bottom: 6px; }
.en-store-detail .txt p + dl {margin-top: 18px; }

.en-store-detail .txt dl > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 2px;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0.02em;
}

.en-store-detail .txt dl > div:last-of-type { margin-bottom: 0; }

.en-store-detail .txt dt {
	width: 50px;
	min-width: 50px;
	padding-right: 10px;
}

.en-store-detail .inner + p { margin-top: 50px; font-size: 15px; }

/* .en .saho
------------------------------------*/
.en .sec-common.saho .title-left i { font-style: italic; letter-spacing: 0; }

/* .en online-shop
------------------------------------*/
body.en .month-lead {
	padding-top: 100px !important;
}

body.en .month-lead .attention {
	color: #AAA !important;
	font-size: 16px !important;
	letter-spacing: 0.02em !important;
}

body.en .item-list article h3 {
	font-size: 17px;
	letter-spacing: 0.02em;
}

body.en .item-list article .price strong {
	font-size: 17px;
}

body.en .item-list article .loading-post {
	display: none !important;
}

body.en .item-list-month article h3 {
	margin-top: 26px;
	font-size: 19px;
	letter-spacing: 0.02em;
}

body.en .attention-item li {
	margin-bottom: 6px;
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0em;
	text-align: left;
}

body.en .item-detail .inner p {
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.02em;
	text-align: left;
}

body.en .post-relation > h2 {
	font-size: 22px;
	letter-spacing: 0.02em;
}

body.en #onlineshopContents .post-item-title .price strong {
	font-size: 21px;
}

body.en .post-item-title .price span {
	letter-spacing: 0.04em;
}

/* body.en #onlineshopContents .post-item .txt,
body.en #onlineshopContents .post-item .dl-line {
	width: 75%;
} */

body.en #onlineshopContents .post-item .txt p {
	margin-bottom: 16px;
	line-height: 1.8;
	letter-spacing: 0;
}

body.en #onlineshopContents .post-item .dl-line {
	letter-spacing: 0;
	line-height: 1.3;
}

body.en #onlineshopContents .post-item .dl-line > div {
	margin-bottom: 13px;
	padding-bottom: 13px;
}

body.en #onlineshopContents .post-item .dl-line dt {
	width: 100px;
	min-width: 100px;
	line-height: 1.3;
	/* width: 30%;
	min-width: 30%; */
}

body.en #onlineshopContents .post-item .attention-item {
	margin-top: 25px;
}


/* page set
---------------------------------------------------------------------------*/
#setContents .sec-common.sec-lead { margin-bottom: 65px !important; }


/* page guide
---------------------------------------------------------------------------*/
#guideContents .sec-common { width: 960px; }

/* .pnav-guide
------------------------------------*/
.pnav-guide { margin-bottom: 120px; text-align: center; }
.pnav-guide li { display: inline-block; margin: 0 2px; }

.pnav-guide li a {
	display: inline-block;
	padding: 14px 0px 1px 0px;
	margin: 0 7px;
	font-size: 15px;
	letter-spacing: 0.08em;
	border-bottom: 1px solid  #111;
	/* text-decoration: underline; */
}

/* .sec-guide
------------------------------------*/
.sec-guide {
	position: relative;
	margin: -90px 0 160px;
	padding: 90px 0 0 200px;
}

.sec-guide:last-child { margin-bottom: 0; }

.sec-guide h2 {
	position: absolute;
	top: 89px;
	left: 0;
	font-size: 17px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.sec-guide h3 {
	margin: 64px 0 18px -2px;
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.sec-guide h3:nth-child(2) { margin-top: 0 !important; }

.sec-guide h3.ms {
	margin-top: 42px !important;
	margin-bottom: 15px;
}

.sec-guide h3.mt {
	margin-top: -30px;
	margin-bottom: 15px;
	padding-top: 60px;
}

.sec-guide h4 {
	margin: 35px 0 10px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.sec-guide p,
.sec-guide dl {
	line-height: 2;
	letter-spacing: 0.06em;
	text-align: justify;
}

.sec-guide p.ml { margin-left: 24px; }

.sec-guide dl { margin-top: 22px; }
.sec-guide dl > div { margin-bottom: 20px; }

.sec-guide dt {
	position: relative;
	margin-bottom: 2px;
	padding: 0 0 0 26px;
}

.sec-guide dt:before {
	display: block;
	content: '';
	position: absolute;
	top: 15px;
	left: 1px;
	background-color: var(--color-font);
	width: 14px;
	height: 1px;
}

.sec-guide dd { padding: 0 0 0 26px; text-align: justify; }

.sec-guide table { width: 100%; margin: 55px 0 0; }
.sec-guide table tr { border-bottom: 1px solid var(--color-border-frame); }

.sec-guide table th {
	padding: 0 5px 11px;
	font-size: 14px;
	white-space: nowrap;
}

.sec-guide table th:last-of-type { padding-right: 3px; text-align: right; }

.sec-guide table td {
	padding: 20px 5px;
	font-size: 16px;
	letter-spacing: 0.06em;
}

.sec-guide table td span {
	display: block;
	margin-top: 14px;
	font-size: 14px;
}

.sec-guide table td:last-of-type {
	text-align: right;
	letter-spacing: 0;
	white-space: nowrap;
}

.sec-guide .attention-list { margin-top: 30px; }
.sec-guide p + .attention-list { margin-top: 18px; }
.sec-guide p + .attention-list.mt { margin-top: 40px; }

.sec-guide .attention-list li {
	margin-bottom: 2px;
	margin-left: 1px;
	padding-left: 23px;
	font-size: 14px;
	line-height: 1.8;
}

.sec-guide .attention-list.mb li { margin-bottom: 8px; }

.sec-guide .box {
	display: inline-block;
	box-sizing: border-box;
	background-color: var(--color-bg-gray-dark);
	max-width: 420px;
	margin-top: 10px;
	padding: 24px 34px 22px 32px;
}

.sec-guide .box.size-l {
	display: block;
	background: none;
	border: 1px solid var(--color-border-frame);
	max-width: 100%;
	margin-top: 30px;
	padding: 36px 38px 30px 40px;
}

.sec-guide ul + .box { margin-top: 40px; }

.sec-guide .box.mb { margin-bottom: 32px; }
.sec-guide .box h4 { margin: 0 0 20px; font-size: 16px; letter-spacing: 0.1em; }
.sec-guide .box p { text-align: justify; }
.sec-guide .box.size-l p { margin-bottom: 8px; font-size: 14px; letter-spacing: 0.06em; }
.sec-guide .box.size-l p strong { color: var(--color-red); }
.sec-guide .box p.let { letter-spacing: 0.02em; }

/* #sec-gift
------------------------------------*/
#sec-gift.sec-guide h3 { margin-top: 100px; }

#sec-gift.sec-guide h3#sec-kakegami {
	margin-top: 55px;
	padding-top: 85px;
}

#sec-gift.sec-guide h4 {
	margin-top: 90px;
	margin-bottom: 15px;
	letter-spacing: 0.1em;
}

/* .noshi-list
------------------------------------*/
.noshi-list-main,
.noshi-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.noshi-list-main {
	margin-top: 30px;
	margin-bottom: 105px;
}

.noshi-list-main li,
.noshi-list li { width: 354px; }

.noshi-list-main li h5 { margin-top: 14px; font-size: 15px; }

.noshi-list + .noshi-list { margin-top: 30px; }

.noshi-list li {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}

.noshi-list li:nth-of-type(1),
.noshi-list li:nth-of-type(2) { margin-top: 0; }

.noshi-list li figure { width: 140px; min-width: 140px; }
.noshi-list li > div { padding: 0 0 0 18px; }

.noshi-list li h5 {
	margin-bottom: 10px;
	font-size: 16px;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

.noshi-list li h5 span {
	padding-left: 4px;
	font-size: 13px;
	letter-spacing: 0.06em;
}

.noshi-list li p {
	font-size: 13px;
	line-height: 1.85;
	letter-spacing: 0.04em;
	text-align: justify;
}

.noshi-list + p.attention { margin-top: 35px; }

/* .kakegami-list
------------------------------------*/
.kakegami-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin-top: 50px;
}

.kakegami-list li { width: 225px; margin: 0 42px 40px 0; }
.kakegami-list li:nth-of-type(3n) { margin-right: 0; }

.kakegami-list li > div {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-top: 13px;
}

.kakegami-list li h4 {
	margin: 0 !important;
	font-size: 16px;
}

.kakegami-list li h4 span {
	padding-left: 4px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.kakegami-list li h5 {
	margin: 4px 2px 0 0 !important;
	font-size: 12px;
	white-space: nowrap;
}

/* #sec-kasane-kakegami
------------------------------------*/
#sec-kasane-kakegami {
	position: relative;
	margin-top: 140px;
}

#sec-gift.sec-guide #sec-kasane-kakegami h3 {
	margin-top: 0;
	margin-bottom: 20px;
}

.kasane-kakegami-list {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-top: 35px;
}

.kasane-kakegami-list li { width: 160px; }

#sec-gift.sec-guide .kasane-kakegami-list li h4 {
	margin: 14px 0 0;
	font-size: 14px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.noshiawabi {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	position: absolute;
	top: 20px;
	right: 0;
}

.noshiawabi figure { width: 31px; margin-right: 16px; }

.noshiawabi p {
	font-size: 14px;
	line-height: 1.55;
	transform: translateY(-7px);
}

#sec-kasane-kakegami .attention {
	margin-top: 20px;
	font-size: 14px !important;
	text-align: right;
}


/* error 404
---------------------------------------------------------------------------*/
#errorContents { position: relative; height: calc(100vh - 400px); text-align: center; }
#errorContents .inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
#errorContents h1 { margin-bottom: 32px; font-size: 24px; letter-spacing: 0.1em; }
#errorContents p { line-height: 2.2; }


/* media query
---------------------------------------------------------------------------*/
@media (max-width: 1400px) {
	/*.dl-cart { padding-right: 9%; }*/
}
@media (max-width: 1360px) {
	/*.header .cart-check { left: calc(50% - 570px); }
	.btn-nav { right: calc(50% - 570px); }*/
}
@media (max-width: 1240px) {
	.btn-nav { right: inherit; left: 1085px; }
	.nav { right: inherit; left: 620px; }
	.nav .inner { width: 620px; }
	body.en .nav { right: inherit; left: 765px; }
	body.en .nav .inner { width: 765px; }
}