@charset "utf-8";

/* Typo
----------------------------------------------- */
body, div, dt, dd, li, h1, h2, h3, h4, h5, h6, pre, form, 
fieldset, input, textarea, blockquote, th, td {
	margin: 0; 
	padding: 0;
}

body { line-height: 1.5 !important; }

td, p, ul, ol { line-height: 1.5 !important; } 

img { border: 0; vertical-align: top; }

ul, ol { list-style: none; }

p { margin: 1em 0; }

table{
	border-collapse: collapse; 
	border-spacing: 0;
}

a { text-decoration: underline; }

a:hover { text-decoration: none; }

a:hover img {
	filter: alpha(opacity=25);
	-moz-opacity: 0.25;
	opacity: 0.25;
}

@media only screen and (max-width: 1024px) {
	.hover { text-decoration: none; }
	.hover img {
		filter: alpha(opacity=25);
		-moz-opacity: 0.25;
		opacity: 0.25;
	}
}

/*  Layout
----------------------------------------------- */
.sidebar {
	background: rgba(247,248,248,0.9);
	padding: 20px 15px;
}

.inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

#header {
	z-index: 100000;
	position: fixed;
	top: 0;
	width: 100%;
	margin: 0;
	padding: 20px 10px;
	box-sizing: border-box;
	background: rgba(255,255,255,0.8);
}

#navigation {
	z-index: 300000;
	position: fixed;
	top: 10px;
	right: 100px;
	width: 37.5px;
}

@media only screen and (min-width: 600px) {
	#navigation {
		right: 0px;
		width: 50px;
	}
}

@media only screen and (min-width: 768px) {
	.sidebar { padding: 2rem 25px; }
}

#page-3282762125 #navigation {
	display: none !important;
}

#navigation ul.cc-nav-level-0,
#footmenu { display: none; }

#page-3282762125 #footmenu {
	display: none !important;
}

#container {
	margin: 70px 0 0 0;
	background: url(https://u.jimcdn.com/cms/o/sd978a97a716ceaa4/userlayout/img/content-bg.jpg?t=1743639943) repeat-x top;
}

#footer {
	padding: 0 0 20px 0;
}

#footer .gutter {
	margin: 20px 0 0;
	padding: 0 10px;
}

@media only screen and (min-width: 600px) {
	#container { margin: 110px 0 0 0; }
}

@media only screen and (min-width: 768px) {
	#container { margin: 120px 0 0 0; }
}

@media only screen and (min-width: 1024px) {
	#header {
		position: static;
	}
	#navigation {
		position: relative;
		top: 0;
		width: 100%;
		margin: 0;
		background: #a8a9a9;
	}
	ul.mainNav2 {
		margin-top: 0;
	}
	#navigation ul.cc-nav-level-0,
	#footmenu { display: block; }
	#container { margin: 0; }
	#footmenu { background: #a8a9a9; }
	#footer .gutter {
		height: 40px;
		padding: 0;
		background: url(bg-footmenu.png) no-repeat center top;
	}
	#footer .gutter #contentfooter {
		width: 95%;
		max-width: 960px;
		margin: 0 auto;
		line-height: 40px;
	}
}

/*  Header
----------------------------------------------- */

#header img {
	width: 100%;
	height: auto;
}

#header .logo {
	width: 120px;
	margin: 0 0 0 10px;
}

#header .main-logo {
	display: none;
	margin: 0 0 0 30px;
}

@media only screen and (min-width: 425px) {
	#header .logo { width: 200px; }
}

@media only screen and (min-width: 600px) {
	#header .logo {
		width: 155px;
		margin: 0 0 0 30px;
	}
	#header .main-logo {
		display: block;
		width: 250px;
	}
}

@media only screen and (min-width: 768px) {
	#header .logo { width: 200px; }
	#header .main-logo { width: 300px; }
}

@media only screen and (min-width: 1024px) {
	#header img {
		display: block;
		margin: 0 auto;
	}
	#header .logo { width: 19vw; }
	#header .main-logo { width: 38vw; }
}

@media only screen and (min-width: 1024px) {
	#header {
		justify-content: space-around;
	}
}

#header {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

@media only screen and (max-width: 425px) {
	#header {
		justify-content: flex-start;
	}
}

@media only screen and (min-width: 768px) {
	#header {
		justify-content: flex-start;
	}
}

@media only screen and (min-width: 1024px) {
	#header {
		justify-content: center;
	}
}

@media only screen and (min-width: 1440px) {
	#header {
		justify-content: space-evenly;
	}
}

#header .main-logo a:hover {
	opacity: 0.95;
}

/*  Header Navigation
----------------------------------------------- */
#footer .j-cart {
	top: 10px;
	right: 145px;
	height: 30px;
	line-height: normal;
}

#footer .j-cart-icon { padding: 0 5px; }

#navigation .spmenu {
	margin: 0;
	padding: 0;
}

#navigation .spmenu li:nth-child(2n+1) { -ms-grid-column: 1; }

#navigation .spmenu li:nth-child(2n+0) { -ms-grid-column: 3; }

#navigation .spmenu li.toggle {
	cursor: pointer;
	display: block;
}

#navigation .spmenu li img {
	width: 100%;
	height: auto;
}

@media only screen and (min-width: 600px) {
	#footer .j-cart {
		right: 75px;
		height: 40px;
		line-height: inherit;
	}
	#footer .j-cart-icon { padding: 0 10px; }
}

@media only screen and (min-width: 600px) {
	#footer .j-cart { right: 75px; }
}

@media only screen and (min-width: 1024px) {
	#navigation .spmenu { display: none; }
	#footer .j-cart {
		top: 10px;
		right: 50px;
		height: auto;
		line-height: 3em;
	}
}

#navigation ul.cc-nav-level-0 {
	z-index: 200000;
	position: fixed;
	top: 65px;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	overflow: auto;
	width: 100%;
	margin: 0;
	padding: 0;
}

#navigation ul.cc-nav-level-0 li a {
	display: block;
	width: 100%;
	padding: 5px 10px;
	color: #fff;
	text-decoration: none !important;
	box-sizing: border-box;
	background: rgba(109,73,53,0.8);
}

#navigation ul.cc-nav-level-0 li .hover { background: rgba(234,137,84,1); }

#navigation ul.cc-nav-level-0 li+li { border-top: 1px solid #fff; }

#navigation ul.cc-nav-level-0 li ul {
	visibility: visible;
	position: static;
	margin: 0;
	padding: 0;
}

#navigation ul.cc-nav-level-0 li#cc-nav-view-1682622276 ul,
#navigation ul.cc-nav-level-0 li#cc-nav-view-1541002976 ul {
	display: none !important;
}

.spmenu ul.cc-nav-level-0 li ul li a { padding: 5px 10px 5px 30px; }

#navigation ul.cc-nav-level-1 li a::before,
#navigation ul.cc-nav-level-2 li a::before {
	content: "■";
	display: inline-block;
	padding: 0 5px;
}

.j-textWithImage figure { z-index: 0 !important; }

@media only screen and (min-width: 1024px) {
	#navigation ul.cc-nav-level-0 {
		*zoom: 1; /*forIE6,7*/
		position: static;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		-webkit-justify-content: center;
		justify-content: center;
	}
	#navigation ul.cc-nav-level-0 li {
		white-space: nowrap;
		display: inline;
		line-height: 1;
	}
	#navigation ul.cc-nav-level-0 li a {
		display: block;
		padding: 15px;
		color: #ffffff;
		font-size: 16px;
		text-align: center;
		text-decoration: none !important;
		background: none;
	}
	#navigation ul.cc-nav-level-0 #cc-nav-view-1682622276 > ul { visibility: hidden !important; }
	.jqbga-container #navigation ul.cc-nav-level-0 #cc-nav-view-1682622276:hover > ul { visibility: visible !important; }
	#navigation ul.cc-nav-level-0 #cc-nav-view-1541002976 > ul { visibility: hidden !important; }
	.jqbga-container #navigation ul.cc-nav-level-0 #cc-nav-view-1541002976:hover > ul { visibility: visible !important; }
	#navigation ul.cc-nav-level-0 li+li { border-top: none; }
	#navigation ul.cc-nav-level-0 li a:hover { background: rgba(255,255,255,0.3); }
	#navigation ul.cc-nav-level-0 li > ul { display: inline; }
	#navigation ul.cc-nav-level-0 li:hover > ul { visibility: visible; }
	#navigation ul.cc-nav-level-0 li ul {
		visibility: hidden;
		position: absolute;
		z-index: 300000 !important;
		margin: 0;
		padding: 0;
	}
	#navigation ul.cc-nav-level-0 li ul li {
		position: relative;
		clear: left;
		width: auto !important;
		margin: 0;
		padding: 0;
		line-height: normal;
	}
	#navigation ul.cc-nav-level-0 li ul li ul {
		top: 0;
		left: 100%;
	}
	#navigation ul.cc-nav-level-0 li ul li ul.cc-nav-level-2 {
		top: 0px;
		left: 125px;
	}
	#navigation ul.cc-nav-level-1 li,#navigation ul.cc-nav-level-2 li { font-size: 14px !important; }
	#navigation ul.cc-nav-level-1 a,#navigation ul.cc-nav-level-2 a {
		filter: alpha(opacity=9) !important;
		-ms-filter: "alpha(opacity=90)" !important;
		-moz-opacity: 0.9 !important;
		-khtml-opacity: 0.9 !important;
		opacity: 0.9 !important;
		display: block;
		padding: 5px 10px !important;
		color: #fff !important;
		text-align: center;
		text-decoration: none !important;
		background: rgba(48,24,11,0.8) !important;
	}
	#navigation ul.cc-nav-level-1 a:hover,#navigation ul.cc-nav-level-2 a:hover {
		color: #fff !important;
		text-decoration: none !important;
		background: rgba(173,86,39,1) !important;
	}
}

/*  Footer Navigation
----------------------------------------------- */
@media only screen and (min-width: 1024px) {
	#footmenu #mainNav1 {
		*zoom: 1; /*forIE6,7*/
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		-webkit-justify-content: center;
		justify-content: center;
		width: 95%;
		max-width: 960px;
		margin: 0 auto;
	}
	#footmenu #mainNav1 li {
		*zoom: 1; /*forIE6,7*/
		white-space: nowrap;
		display: inline;
		padding: 0 10px;
		line-height: 1;
	}
	#footmenu #mainNav1 li a {
		display: block;
		padding: 15px;
		color: #fff;
		font-size: 14px;
		text-decoration: none !important;
	}
	#footmenu #mainNav1 li a:hover { background: rgba(255,255,255,0.3); }
	#footmenu #mainNav2 { display: none; }
}

/*  Side Navigation
----------------------------------------------- */
#art-spmenu { display: none; }

.menu-btn {
	z-index: 2000001;
	cursor: pointer;
	position: fixed;
	top: 10px;
	right: 0;
	width: 90px;
	height: 30px;
	background: url(https://u.jimcdn.com/cms/o/sd978a97a716ceaa4/userlayout/img/bt-spartclose.jpg?t=1743639926) no-repeat 0 0;
	background-size: 100% 100%;
}

.menu-btn img {
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 1;
}

.open .menu-btn img { display: none; }

@media only screen and (min-width: 600px) {
	.menu-btn {
		top: 60px;
		width: 120px;
		height: 40px;
	}
}

@media only screen and (min-width: 768px) {}

.menu-art {
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	-webkit-transition: all .5s;
	transition: all .5s;
	overflow: auto;
	visibility: hidden;
	opacity: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.8);
}

.menu-art ul {
	/* position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0; */
	overflow: auto;
	/* display: table-cell; */
	display: table;
	vertical-align: middle;
	margin: 1em auto 0;
	padding: 0 10px;
	box-sizing: border-box;
}

.menu-art li {
	width: 300px;
	margin: 0 auto;
	border-top: 1px dotted #fff;
}

.menu-art li:first-child { border-top: none; }

.menu-art li a {
	display: block;
	padding: 5px 0;
	color: #fff;
	font-size: 14px;
	text-decoration: none;
}

.menu-art ul.mainNav2 li a {
	display: none;
}

.menu-art ul.mainNav3 li a {
	display: block;
}

.menu-art ul.mainNav2 #cc-nav-view-2251357991 a,
.menu-art ul.mainNav2 #cc-nav-view-2251357891 a,
.menu-art ul.mainNav2 #cc-nav-view-2251357791 a,
.menu-art ul.mainNav2 #cc-nav-view-2251357691 a,
.menu-art ul.mainNav2 #cc-nav-view-2251357591 a { display: block; }

.menu-art li a:hover { color: #999; }

.open .menu-art {
	z-index: 2000000;
	-webkit-transition: all .5s;
	transition: all .5s;
	visibility: visible;
	opacity: 1;
}

#sidemenu {
	display: none;
	font-size: 14px;
}

#sidemenu ul.mainNav2 {
	padding: 0;
	background: #ebebec;
}

#sidemenu ul.mainNav2 li {
	margin: 0;
	padding: 1em 0 1em 1em;
}

#sidemenu ul.mainNav2 li#cc-nav-view-1541002476,
#sidemenu ul.mainNav2 li#cc-nav-view-1541002876,
#sidemenu ul.mainNav2 li#cc-nav-view-1690662476,
#sidemenu ul.mainNav2 li#cc-nav-view-1683712076,
#sidemenu ul.mainNav2 li#cc-nav-view-1545916476,
#sidemenu ul.mainNav2 li#cc-nav-view-1683417276,
#sidemenu ul.mainNav2 li#cc-nav-view-1683435276,
#sidemenu ul.mainNav2 li#cc-nav-view-1683676876,
#sidemenu ul.mainNav2 li#cc-nav-view-1683785776,
#sidemenu ul.mainNav2 li#cc-nav-view-1683864076,
#sidemenu ul.mainNav2 li#cc-nav-view-1684056376,
#sidemenu ul.mainNav2 li#cc-nav-view-1684565076,
#sidemenu ul.mainNav2 li#cc-nav-view-1684711776,
#sidemenu ul.mainNav2 li#cc-nav-view-1684978576,
#sidemenu ul.mainNav2 li#cc-nav-view-1685956176,
#sidemenu ul.mainNav2 li#cc-nav-view-1694972376,
#sidemenu ul.mainNav2 li#cc-nav-view-1694972276,
#sidemenu ul.mainNav2 li#cc-nav-view-1694972576,
#sidemenu ul.mainNav2 li#cc-nav-view-1694972476,
#sidemenu ul.mainNav2 li#cc-nav-view-1694976576,
#sidemenu ul.mainNav2 li#cc-nav-view-1694998376,
#sidemenu ul.mainNav2 li#cc-nav-view-1694998276,
#sidemenu ul.mainNav2 li#cc-nav-view-1694998476 {
	display: none;
}

#sidemenu ul.mainNav2 li a {
	display: none;
	color: #ffffff;
	text-decoration: none;
}

#sidemenu ul.mainNav3 {
	margin: 0;
	padding: 0;
}

#sidemenu ul.mainNav3 li {
	margin: 0;
	padding: 0.5em 0;
}

#sidemenu ul.mainNav3 li a {
	display: inline-block;
	color: #231815;
}

#sidemenu ul.mainNav2 #cc-nav-view-1682622376,
#sidemenu ul.mainNav2 #cc-nav-view-1682622476,
#sidemenu ul.mainNav2 #cc-nav-view-1682622576,
#sidemenu ul.mainNav2 #cc-nav-view-1694830376 {
	background: #ce8db5;
}

#sidemenu ul.mainNav2 #cc-nav-view-1690662576 { background: #8bc346; }

#sidemenu ul.mainNav2 #cc-nav-view-1682622376 a,
#sidemenu ul.mainNav2 #cc-nav-view-1682622476 a,
#sidemenu ul.mainNav2 #cc-nav-view-1682622576 a,
#sidemenu ul.mainNav2 #cc-nav-view-1694830376 a,
#sidemenu ul.mainNav2 #cc-nav-view-1690662576 a { display: inline-block; }

/*  Page
----------------------------------------------- */
.inner h1,
.inner h2,
.inner h3 {
	width: 100%;
	margin: 0;
	font-weight: 400;
	font-family: "Noto Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
	word-break: keep-all;
	color: #0d557d;
}

.inner h1 {
	font-weight: normal;
	font-style: normal;
	font-size: 2.8rem;
	line-height: 1.05;
}

.inner h2 {
	font-weight: normal;
	font-style: normal;
	font-size: 2.8rem;
	line-height: 1.25;
}

.inner h3 {
	font-weight: normal;
	font-style: normal;
	line-height: 1.25;
}

div.j-text {
	overflow-wrap: break-word;
}

.sidebar { color: #3e474c; }

@media only screen and (max-width: 767px) {
	.inner h1 { font-size: 30px !important; }
	.inner h2 { font-size: 26px !important; }
	.inner h3 { font-size: 22px !important; }
}

@media only screen and (max-width: 479px) {
	#cc-inner .j-calltoaction-wrapper { text-align: center; }
	.j-textWithImage .cc-imagewrapper {
		float: none !important;
		width: 100% !important;
		margin: 0 auto 5px !important;
	}
	#cc-inner .j-textWithImage p { margin: 12px 0 0; }
	.cc-imagewrapper img {
		display: block !important;
		margin: 0 auto !important;
	}
	.cc-m-hgrid-column.last {
		float: none;
		width: 100% !important;
	}
	.cc-m-hgrid-column {
		float: none;
		width: 100% !important;
	}
}

.lead { display: none; }

.cc-page-index .lead {
	display: block;
	padding: 15px 0;
	font-family: "Ryumin Regular KL","typesquare" !important;
	background: url(bg-title.jpg) repeat;
}

.cc-page-index .lead h1 {
	padding: 0 0 5px;
	font-size: 30px;
	font-family: "Futo Go B101","typesquare" !important;
}

.cc-page-index .lead h1 span {
	padding: 0 0 0 5px;
	font-size: 14px;
	font-family: "Ryumin Regular KL","typesquare" !important;
}

/*  Shop
----------------------------------------------- */
div.cc-shop-product-desc { padding-top: 10px !important; }

div.cc-shop-product-desc strong:first-child {
	display: block;
	margin-bottom: 5px;
	padding: 10px;
	font-size: 24px;
	background: #ddd;
}

.hproduct .description { margin: 20px 0; }

@media only screen and (max-width: 640px) {
	.cc-shop-product-size-3 {
		display: flex;
		flex-direction: column;
	}
	div.cc-shop-product-size-3 div.cc-shop-product-img,
	.cc-shop-product-size-3 .cc-shop-product-img-confines { width: 100% !important; }
	div.cc-shop-product-img {
		float: none !important;
		max-width: initial !important;
	}
	div.cc-shop-product-img { margin-right: 0 !important; }
}

.cc-m-form-submit input,
.cc-m-download-link {
	display: block;
	border: 0;
	padding: 0.5em 1em !important;
	width: fit-content;
	text-decoration: none !important;
	color: #ffffff !important;
	background: #7d0d55;
}

/* ページ */