@charset "utf-8";
/*
 product.css
*/
/* -----------------------------------------------
= product
----------------------------------------------- */
.product > ul > li + li {
	margin-top:  4rem;
}
.product li dl {
	line-height: 1.3;
	letter-spacing: .04em;
}
.product li dt {
	position: relative;
	padding: 2rem 0 2rem 5rem;
	color: #13195d;
	font-size: 3.2rem;
	font-weight: 700;
}
.product li dt::before {
	content: '';
	position: absolute;
	top: 3rem;
	left: 1rem;
	width: 2.2rem;
	height: 1.6rem;
	background: url(../img/shared/icon_arrow.svg) no-repeat 50% / cover;
	filter: invert(11%) sepia(52%) saturate(5032%) hue-rotate(234deg) brightness(91%) contrast(94%);
}
.product li dd {
	border-top: 1px dotted #ccc;
	padding: 2rem 1rem 0;
}
.product li dd ul li {
	display: inline-block;
	margin-bottom: 1rem;
	margin-left: 1em;
	text-indent: -1em;
	font-size: 2.6rem;
}
.product li dd ul li::after {
	content: '/';
	color: #ccc;
	margin: 0 .4rem 0 1rem;
}
.product li dd ul li:last-child::after {
	content: '';
}
@media print, screen and (min-width: 768px) {/* PC */
.product > ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -2rem;
}
.product > ul > li {
	width: calc(1 / 3 * 100% - 4rem);
	margin: 0 2rem 4rem;
}
.product > ul > li + li {
	margin-top:  0;
}
.product li .img {
	overflow: hidden;
}
.product li a .img img {
	transition: transform .3s;
}
.product li a:hover .img img {
	transform: scale(1.1);
}
.product li dt {
	padding-left: 3.8rem;
	font-size: 2rem;
}
.product li a dt {
	transition: color .3s;
}
.product li a:hover dt {
	color: #434cab;
}
.product li a:hover dt::before {
	filter: invert(24%) sepia(71%) saturate(1615%) hue-rotate(218deg) brightness(91%) contrast(85%);
}
.product li dt::before {
	top: 2.5rem;
	width: 1.7rem;
	height: 1.3rem;
}
.product li dd {
	padding: 1.5rem 1rem 0;
}
.product li dd ul li {
	margin-bottom: 0;
	font-size: 1.5rem;
	line-height: 2.6rem;
}
}/* @media */
/* -----------------------------------------------
= productページ追加（Kato）
----------------------------------------------- */
/* アンカーリンク対応: h2がヘッダーに隠れないように */
h2[id]::before {
    content: "";
    display: block;
    height: 12rem;       /* ヘッダーの高さ（スマホ時） */
    margin-top: -12rem;  /* 同じ値で上にずらす */
    visibility: hidden;
}

/* PC用メディアクエリで調整 */
@media screen and (min-width: 768px) {
    h2[id]::before {
        height: 8rem;       /* ヘッダーの高さ（PC時） */
        margin-top: -8rem;  /* 同じ値で上にずらす */
    }
}
