@charset "utf-8";
#static h1 {
	margin-bottom: 20px;
}
#static .section {
	margin-bottom: 30px;
}
#static .line-none {
	border-top: none;
}
#static img[loading='lazy']:not(.no-loader) {
	display: block;
	background: url(/images/common/loading.gif) no-repeat center center;
	background-size: 25px 25px;
}

/* stylelint-disable */

/* KVカルーセル（共通スタイル上書き） */
#static .jcarousel-indicator > a {
	margin-top: 20px;
	width: 7px;
	height: 7px;
}
#static .keyvisual .jcarousel-control-prev__icon-arrow {
	fill: #ccc;
}

/* 商品カルーセル（共通スタイル上書き） */
#static .row .jcarousel .col.col--4 .product--thumb .inr__wrap-img img {
	width: 200px;
	height: 200px;
	border: none;
}

/* ランキング（共通スタイル上書き） */
#static .product--thumb .product__ranking-num {
	margin-bottom: 16px;
}

/* stylelint-enable */
#static .content-brand-logo {
	text-align: center;
}
#static .content-brand-logo img {
	width: 980px;
	height: 74px;
}

/* ---------------------------
  ナビゲーションバー
------------------------------ */
#static .nav-area {
	position: relative;
	z-index: 2;
	margin-bottom: 22px;
	background-color: #fff;
}
#static .nav-area a {
	text-decoration: none;
}
#static .nav {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	position: relative;
	width: 980px;
	margin: auto;
	box-sizing: border-box;
	font-size: 16px;
}
#static .nav li > a,
#static .nav li > span {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	position: relative;
	width: 100%;
	height: 50px;
	padding: 0 48px 0 25px;
	box-sizing: border-box;
	text-align: center;
	cursor: pointer;
}
#static .nav li > a:hover,
#static .nav li > span:hover {
	background-color: #f2f2f2;
}
#static .nav li:has(> .nav-child-box:hover) {
	background-color: #f2f2f2;
}
#static .nav li:last-of-type > a,
#static .nav li:last-of-type > span {
	padding: 0 39px 0 18px;
}
#static .nav li > a.link-external::after {
	position: absolute;
	right: 20px;
	width: 14px;
	height: 14px;
	background-image: url(/user_data/packages/default/brand/489/images/icon_open_in_new.svg);
	background-size: contain;
	content: '';
}
#static .nav > li:hover .nav-child-box {
	overflow: visible;
	height: auto;
	opacity: 1;
}
#static .nav .icon-arrow-bottom {
	position: absolute;
	right: 25px;
	width: 13px;
	height: 8px;
}
#static .nav .icon-arrow-right {
	position: absolute;
	right: 50px;
	width: 8px;
	height: 13px;
}
#static .nav .nav-child-box ul {
	display: flex;
	flex-wrap: wrap;
	width: 980px;
	margin: 0 auto;
	padding: 10px 25px;
}
#static .nav .nav-child-box ul li {
	height: auto;
}
#static .nav .nav-child-box ul li > a,
#static .nav .nav-child-box ul li > span {
	height: auto;
	padding: 10px 68px 10px 0;
}
#static .nav .nav-child-box {
	overflow: hidden;
	position: absolute;
	left: 0;
	width: 980px;
	height: 0;
	background-color: #f2f2f2;
	transition: opacity 300ms;
	opacity: 0;
	white-space: nowrap;
}
#static .nav .nav-child-box .nav-child li a span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-size: 14px;
	text-align: center;
}

/* ---------------------------
  見出し
------------------------------ */
#static .title-section {
	margin-bottom: 20px;
	font-size: 25px;
	font-weight: normal;
}
#static .title-section-inner {
	margin-left: 15px;
	font-size: 15px;
}
#static .title-section-sub {
	margin-bottom: 20px;
	font-size: 18px;
}

/* ---------------------------
  リンクボタン
------------------------------ */
#static .link-button a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 360px;
	height: 47px;
	margin: 0 auto;
	border: 1px solid #888;
	font-size: 14px;
	text-decoration: none;
	text-align: center;
}

/* -------------------------
  カテゴリーナビ
------------------------------ */
#static .category-nav {
	margin-top: 80px;
}
#static .category-nav * {
	box-sizing: border-box;
}
#static .category-nav a {
	display: flex;
	align-items: center;
	position: relative;
	text-decoration: none;
}
#static .category-nav .icon-arrow-right {
	position: absolute;
	right: 20px;
	width: 8px;
	height: 13px;
}
#static .category-nav .nav-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	width: 980px;
}
#static .category-nav .nav-box a:hover,
#static .category-nav .nav-box span:hover {
	opacity: 0.7;
}
#static .category-nav .nav-box > li {
	width: 230px;
	border-top: 1px solid #d9d9d9;
	border-bottom: 1px solid #d9d9d9;
}
#static .category-nav .nav-box > li > span {
	display: flex;
	align-items: center;
	position: relative;
	padding: 26px 20px;
	font-size: 15px;
	cursor: pointer;
}
#static .category-nav .nav-box > li > span::after {
	position: absolute;
	right: 20px;
	width: 18px;
	height: 18px;
	background-image: url(/user_data/packages/default/brand/489/images/icon_plus.svg);
	background-size: contain;
	content: '';
}
#static .category-nav .nav-box > li > span.is-open::after {
	height: 1px;
	background-image: url(/user_data/packages/default/brand/489/images/icon_minus.svg);
}
#static .category-nav .nav-box .nav-child {
	display: flex;
	flex-direction: column;
	position: relative;
	padding-bottom: 15px;
}
#static .category-nav .nav-box .nav-child > li span {
	display: flex;
	align-items: center;
	padding: 10px 20px;
}

/* ---------------------------
  マストアイテム
------------------------------ */
#static .must-buy-list {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
#static .must-buy-list li {
	width: calc(100% / 5);
	text-align: center;
}
#static .must-buy-list li a {
	display: block;
	text-decoration: none;
}
#static .must-buy-list li img {
	width: 172px;
	height: 172px;
	margin-bottom: 20px;
}

/* ---------------------------
  シリーズから選ぶ
------------------------------ */
#static .series {
	margin-bottom: 80px;
}
#static .series-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px 30px;
}
#static .series-list li a img {
	width: 100%;
	aspect-ratio: 260 / 100;
	border: 1px solid #d9d9d9;
	box-sizing: border-box;
}

/* ---------------------------
  カウンセリング予約バナー
------------------------------ */
#static .banner-counseling a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 980px;
	height: 139px;
	border: 1px solid #888;
	text-decoration: none;
	text-align: center;
}
#static .banner-counseling img {
	width: 360px;
	height: 26px;
	margin-bottom: 13px;
}
#static .banner-counseling-text {
	font-size: 16px;
}
