/* pg-sitemap.css
/* （サイトマップ）
====================================== */
/* body */
body {
	background: var(--bgc-magique_bg);
}

/* 文字設定（p） */
p {
	display: block;
	max-width: 100%;
	line-height: 1.84;
	font-size: clamp(15px, calc(15px + ((1vw - 3.6px) * 0.1563)), 16px);
	min-height: 0vw;
}

/* 注釈・小字（small） */
small {
	display: block;
	max-width: 100%;
	line-height: 1.5;
	font-size: 12px;
	font-size: clamp(11px, calc(11px + ((1vw - 3.6px) * 0.1563)), 12px);
	min-height: 0vw;
	font-weight: 300;
}

/* 強調・中字（em） */
em {
	display: block;
	max-width: 100%;
	line-height: 1.84;
	font-size: 18px;
	font-size: clamp(15.8px, calc(15.8px + ((1vw - 3.6px) * 0.34375)), 18px);
	min-height: 0vw;
	font-weight: 500;
}

/* 強調・大字（strong） */
strong {
	display: block;
	max-width: 100%;
	line-height: 1.5;
	font-size: 27px;
	font-size: clamp(20.4px, calc(20.4px + ((1vw - 3.6px) * 1.03125)), 27px);
	min-height: 0vw;
	font-weight: 600;
}

/* 太字（b.bold） */
b.bold {
	line-height: 1;
	font-weight: 700;
}

/* 特大字（b.big） */
b.big {
	line-height: 1;
	font-size: 36px;
	font-size: clamp(24px, calc(24px + ((1vw - 3.6px) * 1.875)), 36px);
	min-height: 0vw;
	font-weight: 600;
}

/* 識別子（mi） */
mi {
	line-height: 1;
	letter-spacing: -0.02em;
	font-family: 'Source Sans Pro', sans-serif;
	white-space: nowrap;
}

/* 英数字（.number） */
mn {
	line-height: 1;
	letter-spacing: -0.02em;
	font-family: 'Roboto', 'Source Sans Pro', sans-serif;
	white-space: nowrap;
}

/* display: none（スマホ） */
@media screen and (max-width: 743.9px) {
	.d-none_sp {
		display: none;
	}
}

/* display: none（PC） */
@media print,
screen and (min-width: 744px) {
	.d-none_pc {
		display: none;
	}
}

/* 改行（PC） */
@media print,
screen and (min-width: 744px) {

	strong span,
	em span,
	small span,
	p span {
		display: block;
	}
}

/* text-align（スマホ） */
@media screen and (max-width: 743.9px) {
	.ta-left_sp {
		text-align: left;
	}

	.ta-right_sp {
		text-align: right;
	}

	.ta-center_sp {
		text-align: center;
	}
}

/* text-align（PC） */
@media print,
screen and (min-width: 744px) {
	.ta-left_pc {
		text-align: left;
	}

	.ta-right_pc {
		text-align: right;
	}

	.ta-center_pc {
		text-align: center;
	}
}

/* 見出し（.titolo） */
.titolo {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 100%;
}

.titolo img {
	display: inline-block;
	width: auto;
	max-width: 100%;
}

h1 {
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0.14em;
	font-size: 27px;
	font-size: clamp(20.4px, calc(20.4px + ((1vw - 3.6px) * 1.03125)), 27px);
	min-height: 0vw;
	font-weight: 500;
}

h2 {
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0.12em;
	font-size: 24px;
	font-size: clamp(18.8px, calc(18.8px + ((1vw - 3.6px) * 8.125)), 24px);
	min-height: 0vw;
	font-weight: 500;
}

h3 {
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0.10em;
	font-size: 21px;
	font-size: clamp(17.2px, calc(17.2px + ((1vw - 3.6px) * 0.59375)), 21px);
	min-height: 0vw;
	font-weight: 500;
}

h4 {
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0.08em;
	font-size: 19px;
	font-size: clamp(16px, calc(16px + ((1vw - 3.6px) * 0.4688)), 19px);
	min-height: 0vw;
	font-weight: 500;
}

h5 {
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0.06em;
	font-size: 18px;
	font-size: clamp(15.8px, calc(15.8px + ((1vw - 3.6px) * 0.34375)), 18px);
	min-height: 0vw;
	font-weight: 500;
}

h6 {
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0.04em;
	font-size: 17px;
	font-size: clamp(15.4px, calc(15.4px + ((1vw - 3.6px) * 0.25)), 17px);
	min-height: 0vw;
	font-weight: 500;
}

/* 見出し：画像（.individ） */
.individ {
	display: inline-block;
	width: auto;
	max-width: 100%;
}

.individ img {
	display: inline-block;
	width: auto;
	max-width: 100%;
	vertical-align: middle;
}

/* ルビ（ruby） */
ruby.rubypos-left {
	width: 100%;
	display: inline-flex;
	flex-direction: row-reverse;
	justify-content: flex-start;
	align-items: center;
	line-height: 1.5;
}

ruby.rubypos-left rb {
	max-width: 100%;
	text-align: left;
}

ruby.rubypos-left rt {
	width: auto;
	max-width: 100%;
	font-size: var(--fz-magique_sm);
	min-height: 0vw;
	font-weight: 400;
	text-align: left;
	margin-right: 1em;
}

ruby.rubypos-right {
	width: 100%;
	display: inline-flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	line-height: 1.5;
}

ruby.rubypos-right rb {
	max-width: 100%;
	font-weight: 500;
}

ruby.rubypos-right rt {
	width: auto;
	max-width: 100%;
	font-size: var(--fz-magique_sm);
	min-height: 0vw;
	font-weight: 400;
	text-align: left;
	margin-left: 1em;
}

ruby.rubypos-over {
	width: 100%;
	display: inline-flex;
	flex-direction: column-reverse;
	line-height: 1.5;
}

ruby.rubypos-over rb {
	max-width: 100%;
	text-align: center;
}

ruby.rubypos-over rt {
	width: auto;
	max-width: 100%;
	font-size: var(--fz-magique_sm);
	min-height: 0vw;
	font-weight: 400;
	text-align: center;
	margin-bottom: 0.5em;
}

ruby.rubypos-under {
	width: 100%;
	display: inline-flex;
	flex-direction: column;
	line-height: 1.5;
}

ruby.rubypos-under rb {
	max-width: 100%;
	text-align: center;
}

ruby.rubypos-under rt {
	margin-top: 0.5em;
	width: auto;
	max-width: 100%;
	font-size: var(--fz-magique_sm);
	min-height: 0vw;
	font-weight: 400;
	text-align: center;
}




/* レイアウト
-------------------------------------- */
/* mezzala（余白調整：上） */
.adj-smapNgnA-mezzalaA {
	display: block;
	width: 100%;
	height: 0rem;
}

/* mediano（余白調整：下） */
.adj-smapNgnA-medianoA {
	display: block;
	width: 100%;
	height: 3rem;
}

/* .section
-------------------------------------- */
[class^="sect-smapNgnA"] {
	display: block;
	width: 100%;
	max-width: 100vw;
	height: auto;
}

.section__inner {
	width: 1000px;
	max-width: 90vw;
	height: auto;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1rem;
}

/* .division
-------------------------------------- */
[class^="dept-smapNgnA"] {
	display: block;
	width: 100%;
	max-width: 100vw;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

/* （BOX） */
[class^="wrp-hding"],
[class^="wrp-fting"],
[class^="wrp-chest"],
[class^="wrp-shelf"],
[class^="wrp-rack"] {
	width: 100%;
	max-width: 90vw;
	height: auto;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1rem;
}

[class^="wrp-hding"].mb-3r {
	margin-bottom: 3rem;
}




/* サイトマップツリー
-------------------------------------- */
.tree-container {
	margin-top: 1rem;
	width: 100%;
	max-width: 90vw;
	height: auto;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1rem;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container {
		width: 800px;
		max-width: 90vw;
		height: auto;
		padding-left: 4rem;
	}
}

.tree-container .tree-wrapper {
	position: relative;
	/* padding: 上  横  下 */
	padding: 2rem 0px 2rem;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		/* padding: 上  右  下  左 */
		padding: 2rem 2rem 2rem 2rem;
	}
}

.tree-container .tree-wrapper,
.tree-container .tree-wrapper i {
	line-height: 1.5;
	font-size: min(max(16px, calc(16px + ((1vw - 3.6px) * 0.4688))), 19px);
	font-weight: 400;
}

.tree-container .tree-wrapper i {
	display: inline-block;
	margin-right: 0.2em;
}

.tree-container .tree-wrapper span {
	font-size: 13px;
	color: hsla(0, 0%, 66%, 1);
	/* padding: 上  横  下 */
	padding: 5px 0px 0px;
	margin-left: 0.5em;
}

.tree-container .tree-wrapper ul {
	list-style: none;
	padding-left: 0.5em;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper ul {
		padding-left: 3.3em;
	}
}

.tree-container .tree-wrapper>ul {
	width: auto;
	padding-left: 0em;
}

.tree-container .tree-wrapper ul li {
	position: relative;
	box-sizing: border-box;
	padding-left: 1.65em;
}

.tree-container .tree-wrapper ul li:last-child {
	padding-bottom: 0.65em;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper ul li {
		/* d:flex */
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		padding-left: 3.3em;
		padding-bottom: 1em;
	}

	.tree-container .tree-wrapper ul li:last-child {
		padding-bottom: 1em;
	}
}

.tree-container .tree-wrapper ul li::before {
	position: absolute;
	top: 1.15em;
	left: 0em;
	width: 1em;
	height: 1px;
	margin: auto;
	content: "";
	background-color: #666;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper ul li::before {
		position: absolute;
		top: 1.15em;
		left: 0em;
		width: 2.75em;
	}
}

.tree-container .tree-wrapper ul:first-child li:first-child::before {
	left: 0em;
	width: 1em;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper ul:first-child li:first-child::before {
		left: -2.75em;
		width: 5.5em;
	}
}

.tree-container .tree-wrapper>ul>li:first-child::before {
	width: 0px;
}

.tree-container .tree-wrapper ul li::after {
	position: absolute;
	top: 0em;
	bottom: 0;
	left: 0;
	width: 1px;
	height: 100%;
	content: "";
	background-color: #666;
}

.tree-container .tree-wrapper ul li:last-child::after {
	height: 1.15em;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper ul li::after {
		position: absolute;
		top: 1.15em;
		bottom: 0;
		left: 0;
	}

	.tree-container .tree-wrapper ul li:last-child::after {
		height: 0em;
	}
}

.tree-container .tree-wrapper ul.tree-branch2>li:last-child::after {
	height: 100%;
}

.tree-container .tree-wrapper>ul>li::after {
	width: 0px;
	height: 0%;
}

.tree-container .tree-wrapper a {
	position: relative;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
	text-align: left;
	white-space: nowrap;
	height: 2.4em;
	padding: 0.4em 0.8em 0.4em 0.4em;
	background: hsla(0, 0%, 100%, 1);
	color: hsla(210, 11%, 15%, 1);
	border-top: 1px solid hsla(0, 0%, 74%, 1);
	border-bottom: 1px solid hsla(0, 0%, 74%, 1);
	border-right: 1px solid hsla(0, 0%, 74%, 1);
	border-left: 4px solid hsla(201, 63%, 39%, 1);
	margin-bottom: 0.5em;
}

/* （PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper a {
		height: 48px;
	}
}

.tree-container .tree-wrapper a:hover {
	opacity: 0.7;
}

.tree-container .tree-wrapper .tree-branch1>a {
	line-height: 1.5;
	font-size: min(max(16px, calc(16px + ((1vw - 3.6px) * 0.4688))), 19px);
	font-weight: 400;
}

/* .tree-branch1（スマホ） */
@media screen and (max-width: 767px) {
	.tree-container .tree-wrapper .tree-branch1 {
		position: relative;
		left: -0.3em;
	}

	.tree-container .tree-wrapper .tree-branch1>a {
		width: auto;
		padding: 0.15em 0em 0em 0em;
		border: none;
		margin-bottom: 0.2em;
	}
}

/* .tree-branch（スマホ） */
@media screen and (max-width: 767px) {
	.tree-container .tree-wrapper [class^="tree-branch"] a {
		width: 69vw;
		max-width: 100%;
	}

	.tree-container .tree-wrapper .tree-branch1>a>i::before {
		content: "";
		display: inline-block;
		vertical-align: -5px;
		line-height: 1;
		width: 24px;
		height: 24px;
		background: url("https://icongr.am/material/chevron-right-box.svg?color=2576A2&size=24") no-repeat;
		background-size: contain;
		margin-right: 0.2em;
	}
}

/* .tree-branch1（PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper .tree-branch1>a {
		width: auto;
	}
}

/* .tree-branch2,3,4 */
.tree-container .tree-wrapper .tree-branch2 a>button,
.tree-container .tree-wrapper .tree-branch3 a>button,
.tree-container .tree-wrapper .tree-branch4 a>button {
	position: absolute;
	top: 0px;
	right: 0.5em;
	bottom: 0px;
	margin: auto;
}

.tree-container .tree-wrapper .tree-branch2 a>button::after,
.tree-container .tree-wrapper .tree-branch3 a>button::after,
.tree-container .tree-wrapper .tree-branch4 a>button::after {
	content: "";
	display: inline-block;
	vertical-align: -5px;
	line-height: 1;
	width: 24px;
	height: 24px;
	background: url("https://icongr.am/material/chevron-right-circle.svg?color=636363&size=24") no-repeat;
	background-size: contain;
	margin-left: 0.2em;
}

/* .tree-branch2（PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper .tree-branch2>li>a {
		width: 9.7em;
	}

	.tree-container .tree-wrapper .tree-branch2>li>ul>li>a {
		width: 13em;
	}
}

/* .tree-branch3（PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper .tree-branch3>li>a {
		width: 13em;
	}
}

/* .tree-branch4（PC） */
@media print,
screen and (min-width: 744px) {
	.tree-container .tree-wrapper .tree-branch4>li>a {
		width: 13em;
	}
}
