@charset "utf-8";

/* category */
#index-category{
	margin: 0;
}

#index-category a {
	text-decoration: none;
	color: inherit;
}
	.brand__links {
		margin-top: 0;
	}
	.inner--m {
		width: 100%;
		margin: 0 auto;
	}

.card-links>ul {
	display: flex;
}

	.card-links>ul {
		flex-direction: column;
	}

.card-links>ul>li {
	width: 85%;
	margin: 0 auto;
}
.card-link {
	display: flex;
	flex-direction: column;
}

	.card-link {
		width: 100%;
		margin: 0 0 10% 0;
	}
.card-link__image {
	position: relative;
	width: 100%;
	overflow: hidden;
	transform: translateZ(0);
}

.card-link__image img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.card-link__texts {
	display: flex;
	flex-direction: column;
}

@media screen and (max-width: 768px) {
	.card-link__texts {
		margin-top: 1.7rem;
	}
}

@media screen and (max-width: 768px) {
	.card-link__texts--brand, .card-link__texts--recruit {
		margin-top: 1.1rem;
	}
}
.card-link__brand {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
	.card-link__brand {
		-moz-column-gap: 1rem;
		column-gap: 1rem;
		margin-bottom: 1.2rem;
	}
}
.card-link__brand__name {
	font-family: Yu Gothic Pr6N B;
	display: block;
	line-height: 1.5;
	letter-spacing: 0;
}

@media screen and (max-width: 768px) {
	.card-link__brand__name {
		font-size: 16px;
		font-weight: bold;
	}
}

.card-link__description p {
	display: block;
	line-height: 2;
	letter-spacing: 0;
}

	.card-link__description p {
		font-size: 12px;
	}


	.card-link__title {
		margin-top: 1.9rem;
	}
@media (hover: hover) and (pointer: fine) {
	a.card-link .card-link__image {
		transition: transform .3s ease-out;
	}
}
@media screen and (hover: hover) and (pointer: fine) and (min-width: 769px) {
	a.card-link:hover .card-link__image {
		transform: scale(.977);
	}
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 768px) {
	a.card-link:hover .card-link__image {
		transform: scale(.98);
	}
}

.circle-arrow-link {
	display: flex;
	align-items: center;
	gap: 1rem;
	width: -moz-fit-content;
	width: fit-content;
}
.circle-arrow-link__text {
	--text-x: 0;
	--text-x-l: .3rem;
	--text-x-s: .2rem;
	position: relative;
	display: flex;
	white-space: nowrap;
	translate: var(--text-x) 0;
}

	.circle-arrow-link__text {
		flex-direction: column;
		font-size: 12px;
	}

@media (hover: hover) and (pointer: fine) {
	.circle-arrow-link__text {
		transition: translate .3s ease-out;
	}
}
.circle-arrow-link__text span {
	font-family: Yu Gothic Pr6N B;
	position: relative;
	display: flex;
	align-items: center;
	width: -moz-fit-content;
	width: fit-content;
	line-height: 1.5;
	letter-spacing: 0;
	text-decoration: underline;
    text-underline-offset: 7px;
}


@media (hover: hover) and (pointer: fine) {
	a:has(.circle-arrow-link):hover .circle-arrow-link__text, a.circle-arrow-link:hover .circle-arrow-link__text {
		--text-x: var(--text-x-l)
	}
	a:has(.circle-arrow-link):hover .circle-arrow, a.circle-arrow-link:hover .circle-arrow {
		--scale: var(--button-hover-scale-l)
	}
	a:has(.circle-arrow-link):hover .circle-arrow__icon, a.circle-arrow-link:hover .circle-arrow__icon {
		animation: arrow-right-50 .5s ease-out forwards
	}
}
a:has(.circle-arrow-link).on, a.circle-arrow-link.on {
	transition: translate .3s ease-out
}
a:has(.circle-arrow-link).on .circle-arrow-link__text, a.circle-arrow-link.on .circle-arrow-link__text {
	--text-x: var(--text-x-l)
}
a:has(.circle-arrow-link).on .circle-arrow, a.circle-arrow-link.on .circle-arrow {
	--scale: var(--button-hover-scale-l)
}
a:has(.circle-arrow-link).on .circle-arrow__icon, a.circle-arrow-link.on .circle-arrow__icon {
	animation: arrow-right-50 .5s ease-out forwards
}


.circle-arrow {
	position: relative;
	width: 3rem;
	height: 3rem;
	background-image: url("https://drexel.jp/upload/ec/pc/img/index/right_arrow-50546cb1.png");
	background-size: contain;
}
.circle-arrow:hover {
  animation: shake 2s linear infinite; /* アニメーションを適用 */
}

@keyframes circle-arrow {
  0% { transform: translateX(0); }
  25% { transform: translateX(5px); }
  50% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
  100% { transform: translateX(0); }
}

