/* Author: c.nz */
/* ---------------------------------------------------
	common
------------------------------------------------------ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, a { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; -webkit-box-sizing: border-box; box-sizing: border-box;}
ol, ul { list-style: none; }
i, cite, em, var, address, dfn {font-style: normal;}

html {font-size: calc(100vw * (10 / 1920));}
@media screen and (max-width: 1600px) {
html {font-size: calc(100vw * (10 / 1600));}
}
@media screen and (max-width: 1280px) {
html {font-size: calc(100vw * (10 / 1280));}
}
@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
html {font-size: 10px;}
}
body {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-display: swap; font-size: 100%; color: #4c4948; background: #FCF9F2;}
body.nomove {overflow: hidden;}

#wrapper {width: 100%; margin: 0 auto; overflow: hidden; position: relative;}

a {-webkit-transition: all ease 0.2s; -moz-transition: all ease 0.2s; -o-transition: all ease 0.2s; transition: all ease 0.2s; box-sizing: border-box;}
a:link, a:visited {color: #4c4948; text-decoration: none;}
a:hover, a:visited {color: #4c4948; text-decoration: none;}
a:hover {opacity: .7;}
a[href^="tel:"] {pointer-events: none;text-decoration: none;}

img {max-width: 100%; height: auto; line-height: 1; vertical-align: bottom;}
img.max {width: 100%;}

p {line-height: 1.8; margin: 0; font-size: 1.6rem;}

.flexbox {display: -ms-flexbox; display: -webkit-box; display: flex; flex-wrap: wrap; align-items: top; justify-content: space-between;}
.flexbox.mid {align-items: center;}
.flexbox.center {justify-content: center;}
.flexbox.reverse {flex-direction: row-reverse;}

.flL {float: left;}
.flR {float: right;}

.taL {text-align: left;}
.taC {text-align: center;}
.taR {text-align: right;}

.rel {position: relative;}

.mincho {font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.gothic {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

.w20 {width: 20%;}
.w30 {width: 30%;}
.w70 {width: 70%;}
.w80 {width: 80%;}
.w1200 {max-width: 1200px;}

.pc-only {display: block;}
.sp-only {display: none;}
.pc-block {display: block;}
.sp-block {display: none;}
.pc-inline {display: inline;}
.sp-inline {display: none;}


@media screen and (max-width: 1366px) {
}

@media screen and (max-width: 1024px) {
}

/* IE用対応 */
/*
_:-ms-fullscreen . {}
*/

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
/* スマホ表示の調整 */
	body {}
	a:hover img {opacity: 1;}
	a[href^="tel:"] {pointer-events: auto;}
	.container {max-width: 100%;}
	p {line-height: 1.8; font-size: 14px;}
	.pc-only {display: none !important;}
	.sp-only {display: block;}
	.pc-block {display: none !important;}
	.sp-block {display: block;}
	.pc-inline {display: none !important;}
	.sp-inline {display: inline;}
	.pc-hidden {display: block;}
}

@media screen and (max-width: 844px) and (orientation:landscape) {
/* スマホ横の時の調整 */
	
}


/* ---------------------------------------------------
	header
------------------------------------------------------ */
.header-area {width: 100%; background: #FFF; position: relative; border-bottom: 3px solid #DA473A;}
.header {width: 100%; max-width: 1200px; height: 18rem; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; margin: auto; -ms-flex-align: center;}
.header h1 {margin-top: 5.5rem;}
.header .header-nav {display: block;}
.header .header-nav .hnav {margin-bottom: 3rem;}
.header .header-nav .hnav ul {display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: end; align-items: flex-end; font-size: 1.6rem;}
.header .header-nav .hnav ul li {display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: center; align-items: center; margin-left: 3.5rem;}
.header .header-nav .hnav ul li.header-signup {margin-bottom: 15px;}
.header .header-nav .hnav ul li.header-signup::before {content: ""; display: inline-block; width: 26px; height: 23px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-signup.png") no-repeat center center/contain; margin-right: 10px;}
.header .header-nav .hnav ul li.header-signup a:hover {color: #DA473A; opacity: 1;}
.header .header-nav .hnav ul li.header-login {margin-bottom: 15px;}
.header .header-nav .hnav ul li.header-login::before {content: ""; display: inline-block; width: 21px; height: 25px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-login.png") no-repeat center center/contain; margin-right: 10px;}
.header .header-nav .hnav ul li.header-login a:hover {color: #DA473A; opacity: 1;}
.header .header-nav .hnav ul li.header-cart {background: #686350; width: 160px; height: 90px; display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: end; align-items: flex-end; padding-bottom: 15px;}
.header .header-nav .hnav ul li.header-cart::before {content: ""; display: inline-block; width: 30px; height: 24px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-cart-w.png") no-repeat center center/contain; margin-right: 10px;}
.header .header-nav .hnav ul li.header-cart a {color: #FFF;}
.header .header-nav .hnav ul li.header-cart span {display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; background: #FFF; color: #686350; width: 25px; height: 25px; margin-left: 10px;}
.header .header-nav .gnav {}
.header .header-nav .gnav ul {display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: center; align-items: center; font-size: 2rem;}
.header .header-nav .gnav ul li {display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: center; align-items: center; margin-left: 2.5rem;}
.header .header-nav .gnav ul li a {display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: end; align-items: flex-end;}
.header .header-nav .gnav ul li a:hover {color: #DA473A; opacity: 1;}
.header .header-nav .gnav ul li a::before {content: ""; display: inline-block; width: 19px; height: 32px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-gnavi-on.png") no-repeat center center/contain; margin-right: 0.5rem; margin-bottom: -4px; transition: .4s all; opacity: 0;}
.header .header-nav .gnav ul li a:hover::before {opacity: 1;}

.header .header-nav-sp {display: none;}

@media screen and (max-width: 1280px) {
	.header {width: 100%; max-width: calc(100% - 80px);}
.header .header-nav .hnav {margin-bottom: 3rem;}
}
@media screen and (max-width: 1024px) {
	.header h1 {margin-top: 3.5rem;}
	.header .header-nav .hnav {margin-bottom: 1.5rem;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.header-area {width: 100%; }
	.header {width: 100%; max-width: 100%; height: auto; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; margin: auto; padding-top: 50px;}
	.header h1 {display: block; text-align: center; width: 100%; padding: 60px 0 30px; margin-top: 0;}
	.header h1 a {display: block;}
	
	.header .header-nav {display: none;}

	.header .header-nav-sp {background: rgba(255,255,255,0.85); display: block; position: fixed; top: 0; left: 0; width: 100%; height: 50px; border-bottom: 2px solid #C9C8C8; z-index: 5000;}
	.header .header-nav-sp .inner {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center;}

	.header .header-nav-sp .header-mrnu-btn {display: block; position: relative; cursor: pointer; width: 40px; height: 40px; margin: 10px 0 0 25px;}
	.header .header-nav-sp .header-mrnu-btn span {display: inline-block; transition: all .4s; position: absolute; left: 9px; height: 2px; border-radius: 2px; background: #4C4948; width: 18px;}
	.header .header-nav-sp .header-mrnu-btn span:nth-child(1) {top: 0;}
	.header .header-nav-sp .header-mrnu-btn span:nth-child(2) {top: 7px;}
	.header .header-nav-sp .header-mrnu-btn span:nth-child(3) {top: 14px;}
	.header .header-nav-sp .header-mrnu-btn .header-menu-btn-text {display: inline-block; text-align: center; font-size: 10px; font-feature-settings: "palt"; margin-top: 20px;}
	.header .header-nav-sp .header-mrnu-btn.active span:nth-child(1) {top: 5px; transform: translateY(6px) rotate(-45deg); left: 4px; width: 30px;}
	.header .header-nav-sp .header-mrnu-btn.active span:nth-child(2) {opacity: 0;}
	.header .header-nav-sp .header-mrnu-btn.active span:nth-child(3) {top: 17px; transform: translateY(-6px) rotate(45deg); left: 4px; width: 30px;}
	.header .header-nav-sp .header-mrnu-btn.active .header-menu-btn-text {opacity: 0;}
	.header .header-nav-sp .hnav {margin: 10px 25px 0 0; height: 40px;}
	.header .header-nav-sp .hnav ul {}
	.header .header-nav-sp .hnav ul li {display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-align: center; align-items: center;}
	.header .header-nav-sp .hnav ul li.header-cart a {display: inline-block; color: #4c4948;}
	.header .header-nav-sp .hnav ul li.header-cart a::before {content: ""; display: block; width: 22px; height: 19px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-cart.png") no-repeat center center/contain; margin-bottom: 3px; margin-left: 2px;}
	.header .header-nav-sp .hnav ul li.header-cart span {display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; background: #686350; color: #FFF; font-size: 13px; width: 25px; height: 25px; margin-top: -7px; margin-left: 10px;}
	
	.header-menu {display: none; position: fixed; top: 50px; left: 0; width: 100%; height: calc(100vh - 50px); background: #FCF9F2; overflow: auto!important; z-index: 4000; padding-top: 10px;}
	.header-menu .header-menu-inner {position: relative;}
	.header-menu .header-menu-inner > h2 {max-width: 100px; position: absolute; right: 18px; bottom: -40px; z-index: 4500;}
	.header-menu .inner-menu01 {padding: 15px 60px;}
	.header-menu .inner-menu01 {display: flex; justify-content: space-between; align-items: center; font-size: 13px;}
	.header-menu .inner-menu01 li {max-width: 50%; display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-align: center; align-items: center;}
	.header-menu .inner-menu01 li.header-signup::before {content: ""; display: inline-block; width: 22px; height: 23px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-signup.png") no-repeat center center/contain; margin-right: 14px; margin-left: 2px;}
	.header-menu .inner-menu01 li.header-login::before {content: ""; display: inline-block; width: 17px; height: 25px; background: url("https://file003.shop-pro.jp/PA01477/006/images/header/ico-login.png") no-repeat center center/contain; margin-right: 10px; margin-left: 3px;}
	.bg-header-menu {background: #686350; min-height: auto; height: auto; padding: 30px 0 20px;}
	.header-menu .inner-menu01 li a {font-weight: bold;}
	.header-menu .inner-menu02 {width: 100%; padding: 0 60px 15px;}
	.header-menu .inner-menu02 li {border-top: 1px solid #000;}
	.header-menu .inner-menu02 li:last-child {margin-bottom: 0; border-bottom: 2px dotted #4C4948;}
	.header-menu .inner-menu02 li a {display: block; text-align: center; font-size: 17px; font-weight: bold; padding: 15px 0;}
	.header-menu .inner-menu03 {padding: 30px 40px; display: flex; justify-content: flex-start; flex-wrap: wrap;}
	.header-menu .inner-menu03 li {width: 50%; font-size: 13px; margin-bottom: 18px;}
	.header-menu .inner-menu03 li:last-child {margin-bottom: 0;}
	.header-menu .inner-menu03 li a {color: #FFF; font-weight: bold;}
	.header-menu .inner-menu04 {display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; margin-bottom: 20px;}
	.header-menu .inner-menu04 li {width: 32%;}
	.header-menu .inner-menu04 li:first-child {margin-right: 4%;}
	.header-menu .inner-menu04 li a {display: block; text-align: center; width: 100%; font-size: 13px; font-weight: bold; line-height: 1.3;  padding: 10px; color: #FFF; background: rgba(255,255,255,0.2);}
	
	.header-menu .header-category {padding: 0 70px 15px;}
	.header-menu .header-category h2 {display: flex; justify-content: space-between; align-items: center; font-size: 17px; font-weight: 700; letter-spacing: 0.1em; font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; margin-bottom: 15px; white-space: nowrap;}
	.header-menu .header-category h2::before {content: ""; display: inline-block; width: 9px; height: 11px; background: url("https://file003.shop-pro.jp/PA01477/006/images/common/ico-arrow-red.png")no-repeat center left/9px; vertical-align: middle; margin-top: -4px; margin-right: 10px;}
	.header-menu .header-category h2::after {content: ""; display: inline-block; width: 12px; height: 4px; background: url("https://file003.shop-pro.jp/PA01477/006/images/common/side-menu-accodion.png") no-repeat center center/contain; vertical-align: middle; margin-left: auto;}
	.header-menu .header-category ul {display: none; padding-left: 2em; margin-bottom: 20px;}
	.header-menu .header-category ul li {font-size: 17px; font-weight: 600; letter-spacing: 0.1em; margin-bottom: 15px;}
	.header-menu .header-category ul li:last-child {margin-bottom: 0;}
	.header-menu .header-category ul li a:hover {opacity: 1;}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
	.header-menu {overflow: auto !important;}
	.bg-header-menu {height: auto;}
}


/* ---------------------------------------------------
	content
------------------------------------------------------ */
.container {width: 100%; max-width: 1200px; margin: 0 auto 6rem; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; padding: 0;}
.container.inpage {padding-top: 9rem;}

@media screen and (max-width: 1280px) {
	.container {width: 100%; max-width: calc(100% - 80px);}
	.container.inpage {padding-top: 8rem;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.container {width: 100%; max-width: 100%; margin: 0 auto 6rem; display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap;}
	.container.inpage {padding-top: 40px;}
}

/* ---------------------------------------------------
	main
------------------------------------------------------ */
.container .main {order: 2; width: 840px;}

@media screen and (max-width: 1280px) {
	.container .main {width: calc(100vw * (840 / 1280));}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.container .main {width: 100%; max-width: calc(100% - 54px); margin: auto;}
}

/* ---------------------------------------------------
	side
------------------------------------------------------ */
.container .sidebar {order: 1; width: 280px;}

@media screen and (max-width: 1280px) {
	.container .sidebar {width: calc(100vw * (280 / 1280));}

}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.container .sidebar {width: 100%; max-width: calc(100% - 54px); margin: auto;}
}

/* 検索窓 */
.side-search {margin-bottom: 4rem;}
.side-search form {display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-align: center; align-items: center;}
.side-search form input {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.side-search .search-box {border: 1px solid #686350; width: calc(100% - 4.5rem); height: 4.5rem; box-sizing: border-box; font-size: 1.6rem; font-weight: 700; padding: 5px; border-radius: 0;}
.side-search .search-btn {background: url("https://file003.shop-pro.jp/PA01477/006/images/common/ico-search.png") no-repeat center center/2.2rem #686350; color: #FFF; font-size: 0; width: 4.5rem; height: 4.5rem; border: 1px solid #686350; box-sizing: border-box; border-radius: 0;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-search {margin-bottom: 3rem;}
	.side-search form {max-width: 266px; margin: auto;}
	.side-search .search-box {border: 1px solid #686350; width: calc(100% - 4.5rem); height: 4.5rem; box-sizing: border-box; font-size: 1.6rem; padding: 5px;}
	.side-search .search-btn {background: url("https://file003.shop-pro.jp/PA01477/006/images/common/ico-search.png") no-repeat center center/2.2rem #686350; color: #FFF; font-size: 0; width: 4.5rem; height: 4.5rem; border: 1px solid #686350; box-sizing: border-box;}
}


/* サイドナビ */
.side-nav {margin-bottom: 4rem;}
.side-nav ul {}
.side-nav ul li {font-size: 2rem; font-weight: 700; letter-spacing: 0.15em; margin-bottom: 2rem;}
.side-nav ul li:last-child {margin-bottom: 0;}
.side-nav ul li a {}
.side-nav ul li a::before {content: "・"; display: inline-block; font-size: 2rem; letter-spacing: 0.15em;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-nav {display: none;}
}

/* バナー1 */
.side-banner1 {margin-bottom: 4rem;}
.side-banner1 ul {}
.side-banner1 ul li {margin-bottom: 15px;}
.side-banner1 ul li:last-child {margin-bottom: 0;}
.side-banner1 ul li a {}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-banner1 {margin-bottom: 3rem;}
	.side-banner1 ul {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap;}
	.side-banner1 ul li {margin-bottom: 0; max-width: 140px;}
	.side-banner1 ul li:nth-child(n+3) {margin-top: 10px;}
	.side-banner1 ul li:last-child {margin-bottom: 0;}
	.side-banner1 ul li a {}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
	.side-banner1 ul {-webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
	.side-banner1 ul li {margin-right: 15px;}
	.side-banner1 ul li:last-child {margin-right: 0;}
}


/* カテゴリー一覧 */
.side-menu {margin-bottom: 4rem;}
.side-menu h2 {font-size: 1.8rem; font-weight: 500; letter-spacing: 0.15em; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; margin-bottom: 2.5rem;}
.side-menu h2::before {content: ""; display: inline-block; width: 9px; height: 11px; background: url("https://file003.shop-pro.jp/PA01477/006/images/common/ico-arrow-red.png")no-repeat center left/9px; vertical-align: middle; margin-top: -4px; margin-right: 10px;}
.side-menu > div {padding: 4rem 0; border-bottom: 1px solid #B4B4B5;}
.side-menu > div:first-child {padding-top: 0;}
.side-menu ul { padding-left: 2em;}
.side-menu ul li {font-size: 2rem; font-weight: bold; letter-spacing: 0.15em; margin-bottom: 2rem;}
.side-menu ul li:last-child {margin-bottom: 0;}
.side-menu ul li a {}
.side-menu ul li a:hover {color: #DA473A; opacity: 1;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-menu {margin-bottom: 3rem; padding: 0 25px;}
	.side-menu h2 {font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 1.6rem; font-weight: 700; letter-spacing: 0.15em; margin-bottom: 1.5rem; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center;}
	.side-menu h2::before {}
	.side-menu h2::after {content: ""; display: inline-block; width: 12px; height: 4px; background: url("https://file003.shop-pro.jp/PA01477/006/images/common/side-menu-accodion.png") no-repeat center center/contain; vertical-align: middle; margin-left: auto;}
	.side-menu > div {padding: 0; border-bottom: none;}
	.side-menu > div:first-child {padding-top: 0;}
	.side-menu ul {display: none; margin-bottom: 3rem;}
	.side-menu ul li {font-size: 1.6rem; font-weight: bold; letter-spacing: 0.15em; margin-bottom: 1.5rem;}
	.side-menu ul li:last-child {margin-bottom: 0;}
	.side-menu ul li a {}
}

/* バナー2 */
.side-banner2 {margin-bottom: 4rem;}
.side-banner2 ul {}
.side-banner2 ul li {margin-bottom: 15px;}
.side-banner2 ul li:last-child {margin-bottom: 0;}
.side-banner2 ul li a {}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-banner2 {margin-bottom: 3rem;}
	.side-banner2 ul {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; border-bottom: 1px solid #B4B4B5;}
	.side-banner2 ul li {margin-bottom: 30px; max-width: 140px;}
	.side-banner2 ul li:last-child {margin-bottom: 30px;}
	.side-banner2 ul li a {}
}


/* Facebook */
.side-facebook {margin-bottom: 4rem; overflow: hidden;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-facebook {margin-bottom: 3rem; border-bottom: 1px solid #B4B4B5; padding-bottom: 3rem; text-align: center;}
}


/* バナー3 */
.side-banner3 {margin-bottom: 4rem;}
.side-banner3 ul {}
.side-banner3 ul li {margin-bottom: 15px;}
.side-banner3 ul li:last-child {margin-bottom: 0;}
.side-banner3 ul li a {}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.side-banner3 {display: none;}
}


/* ---------------------------------------------------
	page-title
------------------------------------------------------ */



/* ---------------------------------------------------
	topicpath
------------------------------------------------------ */



/* ---------------------------------------------------
	pager
------------------------------------------------------ */



/* ---------------------------------------------------
	404
------------------------------------------------------ */



/* ---------------------------------------------------
	footer
------------------------------------------------------ */
.footer-suggest {width: 100%; background: #FFF; text-align: center; padding-top: 6rem;}
.footer-suggest img {margin: auto;}

.footer-area {width: 100%; background: #686350; padding: 4rem 0;}
.footer {width: 100%; max-width: 1200px; margin: auto;}
.footer h2 {text-align: center; padding-bottom: 2rem;}

.footer .footer-contents {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 10rem;}

.footer .footer-contents .address {width: 44.1667%; max-width: 530px; color: #FFF;}
.footer .footer-contents .address h3 {font-size: 2rem; letter-spacing: 0.05em; border-bottom: 1px solid #FFF; margin-bottom: 2rem; padding-bottom: 0.5rem;}
.footer .footer-contents .address h3 + p {font-size: 2rem; letter-spacing: 0.05em; line-height: 1.7; margin-bottom: 2.5rem;}
.footer .footer-contents .address ul {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; width: 100%;}
.footer .footer-contents .address ul li {width: 47.17%;}
.footer .footer-contents .address ul li a {display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; background: rgba(255,255,255,0.2); width: 100%; height: 5rem; font-size: 2rem; font-weight: 700; letter-spacing: 0.1em; color: #FFF;}

.footer .footer-contents .footer-nav1 {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: start; align-items: flex-start; margin-top: 2.5rem;}
.footer .footer-contents .footer-nav1 ul {}
.footer .footer-contents .footer-nav1 ul:last-child {margin-left: 6rem;}
.footer .footer-contents .footer-nav1 ul li {font-size: 2rem; letter-spacing: 0.05em; margin-bottom: 2rem;}
.footer .footer-contents .footer-nav1 ul li a {color: #FFF;}

.footer .footer-nav2 {margin-bottom: 4rem;}
.footer .footer-nav2 ul {display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center;}
.footer .footer-nav2 ul li {font-size: 2rem; font-weight: 700; letter-spacing: 0.1em; border-right: 1px solid #FFF; padding: 0 3rem;}
.footer .footer-nav2 ul li:last-child {border-right: none;}
.footer .footer-nav2 ul li a {color: #FFF;}

.footer .footer-banner {margin-bottom: 4rem;}
.footer .footer-banner ul {display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center;}
.footer .footer-banner ul li {margin-right: 2rem;}
.footer .footer-banner ul li:last-child {margin-right: 0;}
.footer .footer-banner ul li a {}

.footer .footer-pay {margin-bottom: 6rem; text-align: center;}
.footer .footer-pay img {margin: auto;}

.footer .footer-sns {margin-bottom: 6rem;}
.footer .footer-sns ul {display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center;}
.footer .footer-sns ul li {width: 480px; max-width: 37.5%; margin-right: 4rem;}
.footer .footer-sns ul li:last-child {margin-right: 0;}
.footer .footer-sns ul li iframe {max-width: 100%;}
.footer .footer-sns ul li a {}

.footer .copy {text-align: center; color: #FFF; font-size: 1.2rem;}

.footer .pagetop {display: none; position: fixed; right: 14rem; bottom: 4rem; width: 11.1rem; height: 22rem; transition: .4s all; opacity: 0; z-index: 3500;}
.footer .pagetop.active {display: block; opacity: 1;}
.footer .pagetop a {display: block;}
.footer .pagetop a img {width: 100%; height: 100%;}

@media screen and (max-width: 1280px) {
	.footer {width: 100%; max-width: calc(100% - 80px);}
	
	.footer .pagetop {right: 2rem; bottom: 2rem; width: 8.88rem; height: 17.6rem;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.footer-suggest {width: 100%; text-align: center; padding-top: 3rem;}

	.footer-area {width: 100%; padding: 2rem 0;}
	.footer {width: 100%; max-width: 100%; margin: auto;}
	.footer h2 {padding-bottom: 2rem; max-width: 160px; margin: auto;}

	.footer .footer-contents {display: block; margin-bottom: 0;}

	.footer .footer-contents .address {width: 100%; max-width: calc(100% - 54px); margin: auto; padding-bottom: 25px; border-bottom: 1px solid #FFF;}
	.footer .footer-contents .address h3 {display: none;}
	.footer .footer-contents .address h3 + p {font-size: 1.6rem; margin-bottom: 2rem; text-align: center;}
	.footer .footer-contents .address h3 + p a {color: #FFF;}
	.footer .footer-contents .address ul {display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; width: 100%;}
	.footer .footer-contents .address ul li {width: 47.17%;}
	.footer .footer-contents .address ul li a {width: 100%; height: 6rem; font-size: 1.6rem; text-align: center;}

	.footer .footer-contents .footer-nav1 {width: 100%; max-width: calc(100% - 54px); margin: 3rem auto;}
	.footer .footer-contents .footer-nav1 ul {width: 47.17%;}
	.footer .footer-contents .footer-nav1 ul:last-child {margin-left: 0;}
	.footer .footer-contents .footer-nav1 ul li {font-size: 1.6rem; letter-spacing: 0.025em; margin-bottom: 2rem; font-feature-settings: "palt";}
	.footer .footer-contents .footer-nav1 ul li a {color: #FFF;}

	.footer .footer-nav2 {margin-bottom: 3rem;}
	.footer .footer-nav2 ul {-ms-flex-wrap: wrap; flex-wrap: wrap;}
	.footer .footer-nav2 ul li {font-size: 1.6rem; letter-spacing: 0.1em; border-right: 1px solid #FFF; padding: 0 3rem; margin: 15px 0;}
	.footer .footer-nav2 ul li:first-child {border-right: none; border-top: 1px solid #FFF; border-bottom: 1px solid #FFF; width: 100%; text-align: center; padding: 15px 0; margin: 0;}
	.footer .footer-nav2 ul li:last-child {border-right: none;}
	.footer .footer-nav2 ul li a {color: #FFF;}

	.footer .footer-banner {margin-bottom: 2rem;}
	.footer .footer-banner ul {display: block;}
	.footer .footer-banner ul li {margin-right: 0; margin-bottom: 15px; text-align: center;}
	.footer .footer-banner ul li:last-child {margin-right: 0; margin-bottom: 0;}
	.footer .footer-banner ul li a {}

	.footer .footer-pay {margin-bottom: 3.5rem; text-align: center; padding: 0 10px;}

	.footer .footer-sns {margin-bottom: 3.5rem;}
	.footer .footer-sns ul {display: block;}
	.footer .footer-sns ul li {width: 100%; max-width: 100%; margin: 0 auto 20px; padding: 0 20px; text-align: center;}
	.footer .footer-sns ul li:last-child {margin-right: 0;}
	.footer .footer-sns ul li a {}

	.footer .copy {font-size: 1rem;}

	.footer .pagetop {display: none; position: fixed; right: 2.5rem; bottom: 3rem; width: 5.5rem; height: 11rem;}
	.footer .pagetop.active {}
	.footer .pagetop a {}
	.footer .pagetop a img {}
}

@media screen and (max-width: 844px) and (orientation:landscape) {

	.footer .footer-banner ul {display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; width: calc(100% - 54px); margin: auto;}
	.footer .footer-banner ul li {margin-right: 15px; margin-bottom: 0;}
	.footer .footer-banner ul li:last-child {margin-right: 0; margin-bottom: 0;}
	.footer .footer-banner ul li a {}
}


/* ---------------------------------------------------
	About
------------------------------------------------------ */
/* 共通 */

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.free1 .header h1 {display: none;}
	.free1 .container {margin-bottom: 0;}
	.free1 .container aside {display: none;}
	.free1 .container main {width: 100%; max-width: 100%; margin: auto;}
	.free1 .footer-suggest {display: none;}
}

/* ---------------------------------------------------
	ページタイトル
------------------------------------------------------ */
.free1 .pagetit {position: relative; width: 100%; max-width: 1200px; height: 45.8333vw; max-height: 550px; background: url("https://file003.shop-pro.jp/PA01477/006/images/about/bg-pagetit.jpg") no-repeat top center/cover; margin: 0 auto 8rem;}
.free1 .pagetit h2 {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); padding: 2.5rem 4.5rem; font-size: 3.6rem; font-weight: 700; letter-spacing: 0.26em; display: block; background: rgba(255,255,255,0.85); text-align: center;}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.free1 .pagetit {width: 100%; height: 45.8333vw; margin: 80px auto 40px;}
	.free1 .pagetit h2 {top: -80px; left: 0; transform: translate(0,0); padding: 0; font-size: 23px; letter-spacing: 0.12em; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; background: #FFF; width: 100%; height: 80px; }
}

/* ---------------------------------------------------
	リード
------------------------------------------------------ */
.about-lead {margin-bottom: 9rem;}
.about-lead p {font-size: 2.2rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.about-lead { /*max-width: calc(100% - 54px);*/ margin: auto; margin-bottom: 75px;}
	.about-lead p {font-size: 1.6rem; line-height: 1.875; letter-spacing: 0.05em;}
}


/* ---------------------------------------------------
	Histry
------------------------------------------------------ */
.about-histry {margin-bottom: 8rem;}
.about-histry h2 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; text-align: center; position: relative; margin-bottom: 14rem;}
.about-histry h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}

.about-histry .flexbox {-ms-flex-align: start; align-items: flex-start;}
.about-histry .histry-item {background: #FFF; border: 1px solid #686350; position: relative; padding: 6.7rem 5rem 5rem; max-width: 400px; width: 49%;}
.about-histry .histry-item:nth-child(2) {margin-top: 19rem;}
.about-histry .histry-item:nth-child(3) {margin-top: 10rem;}
.about-histry .histry-item:nth-child(4) {margin-top: 28rem;}
.about-histry .histry-item .illust {position: absolute; top: -14rem; left: 50%; transform: translateX(-50%); width: 30rem;}
.about-histry .histry-item:nth-child(3) .illust {top: -17rem;}
.about-histry .histry-item:nth-child(4) .illust {top: -18rem;}
.about-histry .histry-item h3 {text-align: center; margin-bottom: 3rem;}
.about-histry .histry-item .txt {font-size: 1.8rem; font-weight: 500; line-height: 1.9; letter-spacing: 0.05em; margin-bottom: 3rem;}
.about-histry .histry-item .img {text-align: center;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.about-histry {/*max-width: calc(100% - 54px);*/ margin: auto; margin-bottom: 80px;}
	.about-histry h2 {font-size: 1.9rem; margin-bottom: 160px;}
	.about-histry h2::after {width: 20px; height: 3px; bottom: -10px;}

	.about-histry .flexbox {}
	.about-histry .histry-item {padding: 60px 40px 40px; width: 100%; max-width: 320px;}
	.about-histry .histry-item:nth-child(2) {margin-top: 150px;}
	.about-histry .histry-item:nth-child(3) {margin-top: 180px;}
	.about-histry .histry-item:nth-child(4) {margin-top: 185px;}
	.about-histry .histry-item .illust {position: absolute; top: -120px; width: 240px;}
	.about-histry .histry-item:nth-child(3) .illust {top: -138px;}
	.about-histry .histry-item:nth-child(4) .illust {top: -145px;}
	.about-histry .histry-item h3 {margin-bottom: 20px;}
	.about-histry .histry-item .txt {font-size: 1.6rem; line-height: 1.9; letter-spacing: 0; margin-bottom: 20px;}
	.about-histry .histry-item .img {}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
	.about-histry .histry-item {padding: 60px 30px 30px; max-width: 300px;}
	.about-histry .histry-item:nth-child(3) {margin-top: 100px;}
	
}


/* ---------------------------------------------------
	Niigata City
------------------------------------------------------ */
.about-niigata {margin-bottom: 8rem; background: url("https://file003.shop-pro.jp/PA01477/006/images/about/bg-niigata.png") no-repeat bottom right/500px;}
.about-niigata h2 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; text-align: center; position: relative; margin-bottom: 6rem;}
.about-niigata h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}
.about-niigata h3 {font-size: 2.6rem; font-weight: 700; font-feature-settings: "palt"; line-height: 1.8; letter-spacing: 0.1em; margin-bottom: 4rem; max-width: 49.5rem;}
.about-niigata .txt {font-size: 1.8rem; font-weight: 500; line-height: 1.9; letter-spacing: 0.05em; max-width: 49.5rem;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.about-niigata {/*max-width: calc(100% - 54px);*/ margin: auto; margin-bottom: 80px; background: none;}
	.about-niigata h2 {font-size: 1.9rem; margin-bottom: 40px;}
	.about-niigata h2::after {width: 20px; height: 3px; bottom: -10px;}
	.about-niigata h3 {font-size: 2.0rem; line-height: 1.65; letter-spacing: 0.05em; margin-top: 40px; margin-bottom: 30px; max-width: 100%; text-align: center;}
	.about-niigata .txt {font-size: 1.6rem; letter-spacing: 0; max-width: 100%;}
}


/* ---------------------------------------------------
	Member
------------------------------------------------------ */
.about-member {margin-bottom: 8rem;}
.about-member h2 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; text-align: center; position: relative; margin-bottom: 4.5rem;}
.about-member h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}
.about-member .img {width: 100%; margin-bottom: 3.5rem; text-align: center;}
.about-member .txt {font-size: 1.8rem; font-weight: 500; font-feature-settings: "palt"; line-height: 1.9; letter-spacing: 0.05em; text-align: center;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.about-member {margin-bottom: 80px;}
	.about-member h2 {font-size: 1.9rem; margin-bottom: 40px;}
	.about-member h2::after {width: 20px; height: 3px; bottom: -10px;}
	.about-member .img {width: 100%; margin-bottom: 40px;}
	.about-member .txt {max-width: calc(100% - 54px); margin: auto; font-size: 1.6rem; letter-spacing: 0; text-align: left;}
}


/* ---------------------------------------------------
	Media
------------------------------------------------------ */
.about-media {margin-bottom: 8rem;}
.about-media h2 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; text-align: center; position: relative; margin-bottom: 4.5rem;}
.about-media h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}
.about-media .img {width: 100%; text-align: center;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.about-media {/*max-width: calc(100% - 54px);*/ margin: auto; margin-bottom: 80px;}
	.about-media h2 {font-size: 1.9rem; margin-bottom: 40px;}
	.about-media h2::after {width: 20px; height: 3px; bottom: -10px;}
	.about-media .img {width: 100%; text-align: center;}
}


/* ---------------------------------------------------
	会社概要
------------------------------------------------------ */
.about-company {margin-bottom: 8rem; background: #FFF; padding-top: 6rem;}
.about-company h2 {font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-size: 3.2rem; font-weight: 600; line-height: 1.3175; letter-spacing: 0.2em; text-align: center; margin-bottom: 4rem;}
.about-company .table-box {width: 100%; margin: 0 auto 2rem;}
.about-company table {width: 100%; max-width: 640px; margin: auto;}
.about-company table th {width: 28.125%; font-size: 1.8rem; font-weight: 500; line-height: 1.8; letter-spacing: 0.05em; text-align: left;}
.about-company table td {width: 71.875%; font-size: 1.8rem; font-weight: 500; line-height: 1.8; letter-spacing: 0.05em;}
.about-company .img {width: 100%; max-width: 640px; margin: 0 auto 2.5rem; text-align: center;}
.about-company h3 {font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-size: 2.6rem; font-weight: 600; line-height: 1.6; letter-spacing: 0.2em; text-align: center; margin-bottom: 2rem;}
.about-company .map {width: 100%;}
.about-company .map iframe {width: 100%;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.about-company {margin-bottom: 40px; padding-top: 35px;}
	.about-company h2 {font-size: 2.1rem; margin-bottom: 40px;}
	.about-company .table-box {width: 100%; max-width: calc(100% - 54px); margin: 0 auto 40px;}
	.about-company table {width: 100%; max-width: 100%; word-break: break-all;}
	.about-company table th {width: 35%; font-size: 1.6rem;}
	.about-company table td {width: 65%; font-size: 1.6rem;}
	.about-company .img {width: 100%; max-width: calc(100% - 50px); margin: 0 auto 15px;}
	.about-company h3 {font-size: 2.1rem; margin-bottom: 20px;}
	.about-company .map {width: 100%;}
	.about-company .map iframe {width: 100%; max-height: 400px;}
}


/* ---------------------------------------------------
	Quality
------------------------------------------------------ */
/* 共通 */

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.free2 .header h1 {display: none;}
	.free2 .container {margin-bottom: 0;}
	.free2 .container aside {display: none;}
	.free2 .container main {width: 100%; max-width: 100%; margin: auto;}
	.free2 .footer-suggest {display: none;}
}

/* ---------------------------------------------------
	ページタイトル
------------------------------------------------------ */
.free2 .pagetit {position: relative; width: 100%; max-width: 1200px; height: 45.8333vw; max-height: 550px; background: url("https://file003.shop-pro.jp/PA01477/006/images/quality/bg-pagetit.jpg") no-repeat top center/cover; margin: 0 auto 8rem;}
.free2 .pagetit h2 {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); padding: 2.5rem 4.5rem; font-size: 3.6rem; font-weight: 700; letter-spacing: 0.26em; display: block; background: rgba(255,255,255,0.85); text-align: center;}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.free2 .pagetit {width: 100%; height: 45.8333vw; margin: 80px auto 40px;}
	.free2 .pagetit h2 {top: -80px; left: 0; transform: translate(0,0); padding: 0; font-size: 23px; letter-spacing: 0.12em; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; background: #FFF; width: 100%; height: 80px; }
}

/* ---------------------------------------------------
	リード
------------------------------------------------------ */
.quality-lead {margin-bottom: 9rem;}
.quality-lead p {font-size: 2.2rem; font-weight: 700; font-feature-settings: "palt"; line-height: 2; letter-spacing: 0.05em;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.quality-lead { max-width: calc(100% - 54px); margin: auto; margin-bottom: 75px;}
	.quality-lead p { font-size: 1.6rem; line-height: 1.875; letter-spacing: 0.05em;}
}


/* ---------------------------------------------------
	01
------------------------------------------------------ */
.quality-01 {margin-bottom: 8rem;}
.quality-01 h2 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; text-align: center; position: relative; margin-bottom: 5rem;}
.quality-01 h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}

.quality-01 > .img {width: 100%; text-align: center; margin-bottom: 3rem;}
.quality-01 > .txt {font-size: 1.8rem; font-weight: 500; line-height: 1.9; letter-spacing: 0.05em; margin-bottom: 9rem;}

.quality-01 > .flexbox {-ms-flex-align: start; align-items: flex-start; margin-bottom: 9rem;}
.quality-01 > .flexbox .img {width: 47.62%; max-width: 400px;}
.quality-01 > .flexbox .txt {width: 47.62%; max-width: 400px;}
.quality-01 > .flexbox .txt h3 {font-size: 3.2rem; font-weight: 600; line-height: 1.625; letter-spacing: 0.12em; margin-bottom: 3.5rem;}
.quality-01 > .flexbox .txt p {font-size: 1.8rem; font-weight: 500; line-height: 1.9; letter-spacing: 0.05em;}

.quality-01 .column {width: 100%; border: 2px dotted #686350; padding: 9rem 10rem;}
.quality-01 .column-item {}
.quality-01 .column-item:first-child {margin-bottom: 9rem;}
.quality-01 .column-item > p {font-size: 2rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.1em; margin-bottom: 1.5rem; text-align: center; text-decoration: underline;}
.quality-01 .column-item > h4 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; margin-bottom: 3rem; text-align: center;}
.quality-01 .column-item .img {width: 300px;}
.quality-01 .column-item .txt {width: 300px; font-size: 1.8rem; font-weight: 500; line-height: 1.9; letter-spacing: 0.05em;}

@media screen and (max-width: 1280px) {
	.quality-01 .column-item .img {width: 30rem;}
	.quality-01 .column-item .txt {width: 30rem;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.quality-01 {margin-bottom: 80px;}
	.quality-01 h2 {font-size: 19px; margin-bottom: 5rem;}
	.quality-01 h2::after {width: 20px; height: 3px; bottom: -10px;}

	.quality-01 > .img {width: 100%; text-align: center; margin-bottom: 35px;}
	.quality-01 > .txt {font-size: 16px; letter-spacing: 0; margin-bottom: 45px; padding: 0 27px;}

	.quality-01 > .flexbox {display: block; margin-bottom: 40px;}
	.quality-01 > .flexbox .img {width: calc(100% - 55px); max-width: 400px; margin: auto;}
	.quality-01 > .flexbox .txt {width: calc(100% - 55px); max-width: 400px; margin: auto;}
	.quality-01 > .flexbox .txt h3 {font-size: 21px; letter-spacing: 0.12em; margin-bottom: 25px; text-align: center;}
	.quality-01 > .flexbox .txt .sp-img {text-align: center; margin-bottom: 20px;}
	.quality-01 > .flexbox .txt p {font-size: 16px; letter-spacing: 0;}

	.quality-01 .column {/*width: calc(100% - 55px);*/ border: 2px dotted #686350; padding: 40px; margin: auto;}
	.quality-01 .column-item {}
	.quality-01 .column-item:first-child {margin-bottom: 45px;}
	.quality-01 .column-item > p {font-size: 16px; margin-bottom: 20px;}
	.quality-01 .column-item > h4 {font-size: 19px; margin-bottom: 17px;}
	.quality-01 .column-item .img {width: 100%; max-width: 240px; margin-bottom: 26px;}
	.quality-01 .column-item .txt {width: 100%; max-width: 240px; font-size: 16px; line-height: 1.9; letter-spacing: 0;}
}


/* ---------------------------------------------------
	02
------------------------------------------------------ */
.quality-02 {margin-bottom: 3rem;}
.quality-02 h2 {font-size: 2.6rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.1em; text-align: center; position: relative; margin-bottom: 6rem;}
.quality-02 h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}
.quality-02 .movie {margin-bottom: 3.5rem;}
.quality-02 .movie iframe {width: 100%; max-width: 100%;}
.quality-02 > .txt {font-size: 1.8rem; font-weight: 500; line-height: 1.9; letter-spacing: 0.05em; margin-bottom: 6rem;}
.quality-02 .flexbox .item {width: 30%; max-width: 250px; margin-bottom: 6rem;}
.quality-02 .flexbox .item .img {margin-bottom: 2.5rem;}
.quality-02 .flexbox .item h3 {margin-bottom: 2rem; font-size: 2rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.05em;}
.quality-02 .flexbox .item p {font-size: 1.8rem; font-weight: 500; line-height: 1.9;}


@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.quality-02 { max-width: calc(100% - 55px); margin: auto; margin-bottom: 80px;}
	.quality-02 h2 {font-size: 19px; margin-bottom: 30px;}
	.quality-02 h2::after {content: ""; display: block; position: absolute; width: 30px; height: 4px; background: #DA473A; bottom: -1rem; left: 50%; transform: translateX(-50%);}
	.quality-02 .movie {margin-bottom: 3.5rem;}
	.quality-02 .movie iframe {width: 100%; height: 56.25vw;}
	.quality-02 > .txt {font-size: 16px; letter-spacing: 0; margin-bottom: 40px;}
	.quality-02 .flexbox .item {width: 100%; max-width: 240px; margin: auto; margin-bottom: 40px;}
	.quality-02 .flexbox .item:last-child {margin-bottom: 0;}
	.quality-02 .flexbox .item .img {margin-bottom: 20px;}
	.quality-02 .flexbox .item h3 {margin-bottom: 15px; font-size: 19px; letter-spacing: 0.1em;}
	.quality-02 .flexbox .item p {font-size: 16px;}
}
@media screen and (max-width: 844px) and (orientation:landscape) {
	.quality-02 .flexbox .item {width: 47%; max-width: 360px; margin: 0; margin-bottom: 40px;}
	.quality-02 .flexbox .item .img img {width: 100%;}
}


/* ---------------------------------------------------
	03
------------------------------------------------------ */
.quality-03 {margin-bottom: 8rem; background: #FFF; padding: 7rem 10rem;}
.quality-03 h2 {font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-size: 3.2rem; font-weight: 600; line-height: 1.3175; letter-spacing: 0.2em; text-align: center; margin-bottom: 4rem;}
.quality-03 > .img {width: 100%; margin-bottom: 3.5rem; text-align: center;}
.quality-03 > .txt {font-size: 1.8rem; font-weight: 500; font-feature-settings: "palt"; line-height: 1.9; letter-spacing: 0.05em; margin-bottom: 6rem;}
.quality-03 .item {margin-bottom: 5rem;}
.quality-03 .item:last-child {margin-bottom: 0;}
.quality-03 .item .img {width: 300px;}
.quality-03 .item .txt {width: 300px;}
.quality-03 .item .txt h3 {font-size: 2.6rem; font-weight: 700; font-feature-settings: "palt"; line-height: 1.45; letter-spacing: 0.1em; margin-bottom: 2rem;}
.quality-03 .item .txt p {font-size: 1.8rem; font-weight: 500; font-feature-settings: "palt"; line-height: 1.9;}

@media screen and (max-width: 1280px) {
	.quality-03 .item .img {width: 30rem;}
	.quality-03 .item .txt {width: 30rem;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.quality-03 {margin-bottom: 40px; padding: 50px 0;}
	.quality-03 h2 {font-size: 21px; margin-bottom: 35px;}
	.quality-03 > .img {width: 100%; margin-bottom: 30px;}
	.quality-03 > .txt {font-size: 16px; letter-spacing: 0; width: calc(100% - 55px); margin: auto; margin-bottom: 60px;}
	.quality-03 .item {margin-bottom: 45px;}
	.quality-03 .item:last-child {margin-bottom: 0;}
	.quality-03 .item .img {width: 100%; max-width: 240px; margin: auto; margin-bottom: 20px;}
	.quality-03 .item .txt {width: 100%; max-width: 240px; margin: auto;}
	.quality-03 .item .txt h3 {font-size: 19px; margin-bottom: 15px; text-align: center; }
	.quality-03 .item .txt p {font-size: 16px;}
}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.quality-03 .item {max-width: calc(100% - 80px); margin: 0 auto 45px;}
	.quality-03 .item .txt h3 {text-align: left;}
}


/* ---------------------------------------------------
	デフォルトテーマ調整
------------------------------------------------------ */
/******************************/
/* Components */
/******************************/
/********** title **********/
.c-ttl-main {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 0;
  margin-bottom: 30px;
  line-height: 1.4;
  font-size: 30px;
  letter-spacing: 0.3em;
  font-feature-settings: "palt" 1;
}
@media screen and (max-width: 767px) {
  .c-ttl-main {
    margin-bottom: 30px;
    font-size: 21px;
  }
}
.c-ttl-main__ja {
  display: inline-block;
  margin-bottom: 5px;
  font-weight: normal;
  font-size: 14px;
  color: #909090;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .c-ttl-main__ja {
    margin-bottom: 2px;
    font-size: 12px;
    white-space: nowrap;
  }
}
.c-ttl-sub {
  margin-top: 0;
  margin-bottom: 45px;
  line-height: 1.4;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.3em;
  text-align: center;
  font-feature-settings: "palt" 1;
}
@media screen and (max-width: 767px) {
  .c-ttl-sub {
    margin-bottom: 30px;
    font-size: 14px;
  }
}
.c-ttl-sub__ja {
  display: block;
  margin-top: 15px;
  font-size: 12px;
  font-weight: normal;
  color: #909090;
  letter-spacing: 0;
}
.c-ttl-second {
  margin-top: 0;
  margin-bottom: 15px;
  line-height: 1.4;
  font-size: 24px;
  letter-spacing: 0.3em;
  font-feature-settings: "palt" 1;
}
@media screen and (max-width: 767px) {
  .c-ttl-second {
    margin-bottom: 15px;
    font-size: 20px;
  letter-spacing: 0.2em;
  }
}
/********** パーツ **********/
.c-item-list { display: flex; flex-wrap: wrap;}
.c-item-list__item {position: relative; box-sizing: border-box; margin-bottom: 60px; width: 31%; max-width: 260px; transition: opacity 0.2s; word-break: break-all; margin-right: 3.5%;}
.c-item-list__item:nth-child(3n) {margin-right: 0;}
.c-item-list__item.is-hidden {display: none;}
.c-item-list__img {position: relative; margin-bottom: 15px; max-height: 180px;}
.c-item-list__img:before {content: "";display: block;padding-top: 100%;}
.c-item-list__img a {display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.c-item-list__img img {display: inline-block;position: absolute;top: 0;right: 0;bottom: 0;left: 0;margin: auto;max-width: 100%;max-height: 100%;width: auto !important;text-align: center;}
.c-item-list__ttl {vertical-align: middle; text-align: center; font-size: 18px; line-height: 1.7; letter-spacing: .05em;}
.c-item-list__ttl img {vertical-align: middle; margin: 0 5px !important;}
.c-item-list__price {color: #909090; font-size: 18px; line-height: 1.7; letter-spacing: .05em; text-align: center;}
.c-item-list__price.is-strikethrough {margin-top: 0;text-decoration: line-through;}
.c-item-list__expl {margin-top: 15px;}

.c-item-list__btn {display: block;position: absolute;right: 30px;bottom: 0;padding: 0;border: 0;background: transparent;color: #d8d8d8;cursor: pointer;text-align: center;transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.c-item-list__btn.is-added {  color: #000000;}
.c-item-list__btn svg {width: 20px; height: 20px; fill: currentColor;}
svg:not(:root) {overflow: hidden;}

@media screen and (max-width: 1030px) {
  .c-item-list__item {margin-bottom: 45px;}
  .c-item-list__btn {right: 20px;}
}

@media screen and (max-width: 767px) {
	.c-item-list__item {width: 48%; max-width: 48%; margin-right: 4%;}
	.c-item-list__item:nth-child(3n) {margin-right: 4%;}
	.c-item-list__item:nth-child(2n) {margin-right: 0;}
	.c-item-list__img {text-align: center;}
	.c-item-list__btn {right: 10px;}
}
/***** FAVORITE *****/
.c-favorite-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -9px;
  margin-right: -9px;
}
@media screen and (max-width: 1030px) {
  .c-favorite-list {
    margin-left: 0;
    margin-right: 0;
    flex-wrap: nowrap;
  }
}
.c-favorite-list__item {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 40px;
  padding-left: 9px;
  padding-right: 9px;
  width: 12.5%;
}
@media screen and (max-width: 1030px) {
  .c-favorite-list__item {
    margin-right: 5px;
    margin-bottom: 0;
    padding-left: 0px;
    padding-right: 0px;
    width: 120px;
  }
}
@media screen and (max-width: 767px) {
  .c-favorite-list__item {
    width: 90px;
  }
}
.c-favorite-list__img {
  position: relative;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 1030px) {
  .c-favorite-list__img {
    margin-bottom: 10px;
    width: 120px;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .c-favorite-list__img {
    width: 90px;
  }
}
.c-favorite-list__img:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.c-favorite-list__img a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-favorite-list__img img {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  width: auto !important;
  text-align: center;
}
.c-favorite-list__price {
  color: #909090;
  margin-top: 15px;
  font-size: 12px;
  white-space: normal;
}
.c-favorite-list__price.is-strikethrough {
  margin-top: 0;
  text-decoration: line-through;
}
.c-favorite-list__btn {
  position: absolute;
  right: 30px;
  bottom: 0;
}
/********** button **********/
.c-btn {
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  padding: 18px 45px 18px 25px;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
  border-left: 0;
  border-right: 0;
  min-width: 150px;
  font-size: 14px;
  font-weight: bold;
  background: transparent;
  color: #000000;
  text-align: left;
  cursor: pointer;
  letter-spacing: 0.3em;
}
.c-btn:before, .c-btn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 9px;
  height: 1px;
  background: #000000;
  transition: all 0.3s ease;
}
.c-btn:after {
  transform: rotate(90deg);
}
.c-btn:hover {
  text-decoration: none;
}
.c-btn:hover:before {
  transform: rotate(90deg);
}
.c-btn:hover:after {
  transform: rotate(180deg);
}
.c-btn-cart {
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  padding: 25px;
  border: none;
  border-radius: 0;
  width: 100%;
  font-size: 14px;
  font-weight: bold;
  background: #DA473A;
  color: #ffffff;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.c-btn-cart:hover {
  background: rgba(218,71,58,0.8);
  color: #ffffff;
  text-decoration: none;
}
.c-btn-cart.is-disabled {
  background: #d8d8d8;
  cursor: default;
}
.c-btn-cart.is-disabled:hover {
  background: rgba(216, 216, 216, 0.8);
}
.c-btn-cart.is-soldout {
  background: #686350;
  cursor: default;
}
.c-btn-cart.is-soldout:hover {
  background: #686350;
}
.c-btn-cart.is-membersonly {
  background: #DA473A;
  cursor: default;
}
.c-btn-cart.is-membersonly:hover {
  background: #DA473A;
}
.c-icon-cart {
  display: inline-block;
  margin-right: 20px;
  width: 19px;
  height: 18px;
  background: url(https://img.shop-pro.jp/tmpl_img/86/icon-template-cart.png) no-repeat;
  background-size: 19px 18px;
  vertical-align: -2px;
}
.c-more {
  text-align: center;
}
.c-not-found {
  margin-top: 60px;
  margin-bottom: 60px;
	text-align: center;
	font-size: 18px;
	font-weight: 600;
}
/********** table **********/
.c-tbl-list {
  border-top: 1px solid #b2b2b2;
	margin-bottom: 60px;
}
.c-tbl-list__tr {
  display: flex;
  padding: 20px 0;
  border-bottom: 1px solid #b2b2b2;
}
@media screen and (max-width: 767px) {
  .c-tbl-list__tr {
    display: block;
  }
}
.c-tbl-list__th {
  margin: 0;
  width: 270px;
  font-size: 16px;
  font-weight: bold;

}
@media screen and (max-width: 767px) {
  .c-tbl-list__th {
    margin-bottom: 10px;
    width: auto;
  }
}
.c-tbl-list__td {
  flex: 1;
  margin: 0 0 0 30px;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .c-tbl-list__td {
    margin-left: 0;
  }
}
/********** breadcrumbs **********/
.c-breadcrumbs + .u-contents {padding-top: 30px;}
.c-breadcrumbs-list {margin-bottom: 3.5rem; font-size: 12px;}
.c-breadcrumbs-list__item {position: relative; display: inline-block; margin-right: 25px;}
.c-breadcrumbs-list__item:before {display: block;content: "";position: absolute;top: 50%;right: -15px;margin-top: -3px;width: 5px;height: 5px;border-right: 1px solid #000000;border-bottom: 1px solid #000000;transform: rotate(-45deg);}
.c-breadcrumbs-list__item:last-child:before {content: none;}
.c-breadcrumbs-list a {color: #000000;}

@media screen and (max-width: 767px) {
	.c-breadcrumbs-list {font-size: 10px; margin-bottom: 30px;}
}

/********** pager **********/
.c-pager {border-bottom: 1px solid #7d7d7d; padding: 25px 0; text-align: center;}
.pager-bottom .c-pager {border-top: 1px solid #7d7d7d; border-bottom: none;}
.c-pager__total {font-size: 14px; text-align: center;}
.c-pager-list {display: flex;flex-wrap: wrap;justify-content: center;margin-bottom: 10px;}
.c-pager-list__item {margin-left: 3px; margin-right: 3px; text-align: center; font-size: 18px; font-weight: 500; letter-spacing: 0.07em;}
.c-pager-list__link {display: block; position: relative; text-decoration: none;}
.c-pager-list__link:hover {color: #DA473A; text-decoration: underline;}
.c-pager-list__link.is-current {color: #DA473A; text-decoration: underline;}
.c-pager-list__link.is-current:hover {}

@media screen and (max-width: 767px) {
  .c-pager-list__item {display: none;}
  .c-pager-list__item.is-visible {display: block; margin-left: 15px; margin-right: 15px; width: auto;}
  .c-pager-list__link {}
}

.c-pager-list__link.is-prev, .c-pager-list__link.is-next {}
.c-pager-list__link.is-prev:before, .c-pager-list__link.is-next:before {}
.c-pager-list__link.is-prev:hover, .c-pager-list__link.is-next:hover {}
.c-pager-list__link.is-prev.is-disabled:hover, .c-pager-list__link.is-next.is-disabled:hover {}
.c-pager-list__link.is-prev:before {}
.c-pager-list__link.is-prev.is-disabled:before {}
.c-pager-list__link.is-next:before {}
.c-pager-list__link.is-next.is-disabled:before {}

.c-pager-list__page {display: none;}
@media screen and (max-width: 767px) {
  .c-pager-list__page {display: inline-block;}
}
