@charset "UTF-8";


.portfolio-figure {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.portfolio-figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
	transition: var(--hover_anime);
}

.portfolio-list li.portfolio a {
	display: block;
}

.creator_meta {
	list-style: none;
	padding: 0;
}

li.creator_meta-initial {
	display: flex;
	align-items: center;
}

li.creator_meta-initial svg {
	width: 1.125em;
	margin-right: 6px;
}

.creator_meta-major {
	margin-left: 1.25em;
}

@media (min-width: 1024px) {

}

@media (min-width: 769px) and (max-width: 1023px){

}

@media ( min-width: 769px ) {

	.l-contents__container:has(.portfolio_header-nonsp ) {
		position: relative;
	}

	.portfolio_header-nonsp {
		position: absolute;
		z-index: 2;
	}

	.single .l-contents__inner {
		margin-top: calc(calc(1.8 / 3 * 3) * 1rem)
	}


	.single .c-entry h1.c-entry__title  {
		font-size: 2rem;
	}

	.entry-subtitle h2 {
		font-size: 1.25rem;
	}

	.entry-subtitle_sec {
		font-size: 1.25rem;
		margin-top: .25em;
	}

	.c-page-header[data-has-image=true] {
		height: 640px;
	}

	.portfolio_header-logo {
		width: 120px;
		z-index: 1;
		position: absolute;
		bottom: calc( var(--_container-margin) * .5 );
		left: var(--_container-margin-left);
	}

	.creator_meta {
		margin: 1.5em 0 0;
	}

	.previous_button-nonsp {
		display: flex;
		align-items: center;
		gap: 6px;
		width: auto;
		height: 40px;
		border: none;
		background-color: #000000;
		border-radius: 100px;
		color: #fff;
		font-weight: 400;
		padding: 0 1.25em 0 .875em;
		line-height: 1;
	}

	.previous_button-nonsp::before {
		content: "";
		width: 12px;
		height: 12px;
		border-bottom: 2px solid #fff;
		border-left: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		margin: 4px 0 6px 7px;
	}

}


@media ( max-width: 768px ) {

	.portfolio_header-nonsp {
		display: none;
	}

	.single .l-contents__inner:first-child {
		padding-top: calc( var(--_padding2) * .5 );
	}
	.c-page-header[data-has-image=true] {
		height: 70lvh;
	}

	.single .c-entry h1.c-entry__title  {
		font-size: 1.75rem;
		line-height: 1.3;
	}

	.entry-subtitle h2 {
		font-size: 1.125rem;
		margin-top: 1em;
		margin-bottom: .25em;
	}

	.entry-subtitle_sec {
		margin-top: 1em;
	}

	.entry-subtitle_sec-title {
		font-size: 1.125rem;
	}

	.creator_meta {
		margin: 1em 0 0;
	}

}


@media (any-hover: hover) {
	.portfolio-list li.portfolio a:hover img {
		filter: brightness(80%);
	}
}


.portfolio-details {
}

h4.portfolio-detail__title {
	margin-bottom: .5em !important;
}

.portfolio-details__table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #ddd;
}

.portfolio-details__th,
.portfolio-details__td {
	padding: 12px 0;
	border-bottom: 1px solid #ddd;
}

.portfolio-details__th {
	width: 12em;
	text-align: left;
	font-weight: 600;
	vertical-align: top;
}

.portfolio-details__td {
	line-height: 1.7;
}

.portfolio-details {
	margin-top: 6rem;
}

/* .portfolio-details__table tr:last-child th,
.portfolio-details__table tr:last-child td {
	border-bottom: none;
} */


@media (max-width: 768px) {

	.portfolio-details__th {
		width: 11em;
	}

	.portfolio_header-logo {
		width: 120px;
	}


	.portfolio_header {
		position: absolute;
		z-index: 1;
	}

	.portfolio_header-logo {
		width: 25%;
		z-index: 1;
		position: absolute;
		bottom: calc( var(--_container-margin) * .5 );
		left: var(--_container-margin-left);
	}


	.previous_button {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 48px;
		height: 48px;
		border: none;
		background-color: #000000;
		color: #fff;
		font-weight: 400;
		font-size: 10px;

		line-height: 1;
	}

	.previous_button::before {
		content: "";
		width: 16px;
		height: 16px;
		border-bottom: 2px solid #fff;
		border-left: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		margin: 4px 0 6px 7px;
	}
}

.entry-subtitle {
	margin-top: 1em;
}


@media (any-hover: hover) {
	.previous_button-nonsp:hover {
		background-color: #000000;
		cursor: pointer;
	}

}