@charset 'UTF-8';
/* =====================================================
* Base
* ================================================== */

/*! normalize.css v3.0.0 | MIT License | git.io/normalize */

html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: sans-serif;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	color: inherit;
	font: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
	cursor: pointer;
	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

input {
	line-height: normal;
}

input[type=checkbox],
input[type=radio] {
	box-sizing: border-box;
	padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	height: auto;
}

input[type=search] {
	-webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
	border: 1px solid #c0c0c0;
}

legend {
	padding: 0;
	border: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/* -----------------------------------------------------
 * font
 * -------------------------------------------------- */

/* -----------------------------------------------------
 * Init
 * -------------------------------------------------- */

*,
*:before,
*:after {
	box-sizing: border-box;
}

/* normalize overwrite */

html {
	position: relative;
	min-height: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 62.5%;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	background: #fff;
	color: #242424;
	font-size: 1.6rem;
	line-height: 1.5;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
}

ul,
ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

figure {
	margin: 0;
}

h1 img,
figure img,
picture img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

a {
	color: #242424;
	text-decoration: none;
}

input,
select,
textarea,
button {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none transparent;
	background-clip: padding-box;
	color: inherit;
	font-size: inherit;
	vertical-align: middle;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

input::-ms-clear,
select::-ms-clear,
textarea::-ms-clear,
button::-ms-clear {
	display: none;
}

input::-ms-reveal,
select::-ms-reveal,
textarea::-ms-reveal,
button::-ms-reveal {
	display: none;
}

input::-ms-expand,
select::-ms-expand,
textarea::-ms-expand,
button::-ms-expand {
	display: none;
}

em {
	font-weight: 700;
	font-style: normal;
}

.skip-link {
	position: absolute;
	z-index: 100;
	top: -40px;
	left: 0;
	padding: 8px;
	background: #000;
	color: #fff;
	text-decoration: none;
}

.skip-link:focus {
	top: 0;
}

.sr-only {
	position: absolute;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	white-space: nowrap;
}

/* =====================================================
* State
* ================================================== */

/* =====================================================
 * Module
 * ================================================== */

/* -----------------------------------------------------
 * component: button
 * -------------------------------------------------- */

.c-btn {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 295px;
	min-height: 52px;
	padding: 5px 24px;
	border-radius: 8px;
	background-color: #444;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.4285714286;
	transition: opacity 0.2s ease;
}

.c-btn::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 16px;
	width: 6px;
	height: 10px;
	margin: -5px 0 0;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 8.253 13.756\'%3E%3Cpath id=\'パス_333\' fill=\'%23242424\' d=\'M10.6-7.279a1.377 1.377 0 0 0 0-1.946l-5.5-5.5a1.369 1.369 0 0 0-1.5-.3 1.376 1.376 0 0 0-.851 1.272v11A1.38 1.38 0 0 0 3.6-1.478a1.377 1.377 0 0 0 1.5-.3l5.5-5.5Z\' data-name=\'パス 333\' transform=\'translate(-2.746 15.128)\'/%3E%3C/svg%3E');
	-webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
}

.c-btn.fill {
	width: 100%;
	max-width: none;
}

.c-btn.download::after {
	width: 12px;
	height: 20px;
	margin: -10px 0 0;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 12 12\'%3E%3Cpath id=\'パス_353\' fill=\'%23242424\' d=\'m166-791-3.75-3.75 1.05-1.087 1.95 1.95V-800h1.5v6.113l1.95-1.95 1.05 1.087Zm-4.5 3a1.444 1.444 0 0 1-1.059-.441A1.444 1.444 0 0 1 160-789.5v-2.25h1.5v2.25h9v-2.25h1.5v2.25a1.445 1.445 0 0 1-.441 1.059 1.444 1.444 0 0 1-1.059.441Z\' data-name=\'パス 353\' transform=\'translate(-160 800)\'/%3E%3C/svg%3E');
}

.c-btn.innerlink::after {
	right: auto;
	left: 16px;
	width: 9px;
	height: 10px;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 9.004 9.751\'%3E%3Cpath id=\'パス_347\' fill=\'%23242424\' d=\'M5.78.53a.751.751 0 0 1-1.062 0L.968-3.22a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.22 3.22L8.47-4.28a.751.751 0 0 1 1.062 0 .751.751 0 0 1 0 1.062L5.782.532Zm3.75-8.25L5.78-3.97a.751.751 0 0 1-1.062 0L.968-7.72a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.22 3.22L8.47-8.78a.751.751 0 0 1 1.062 0 .751.751 0 0 1 0 1.062Z\' data-name=\'パス 347\' transform=\'translate(-.748 9.002)\'/%3E%3C/svg%3E');
}

.c-btn.cl-white {
	border: 1px solid #242424;
	background-color: #fff;
	color: #242424;
}

.c-btn.cl-white::after {
	-webkit-filter: none;
	filter: none;
}

.c-btn.icon-none::after {
	display: none;
}

.c-btn.reverse::after {
	right: auto;
	left: 16px;
	-webkit-transform: rotateZ(180deg);
	transform: rotateZ(180deg);
}

.c-btn.is-disabled {
	background-color: #acacac;
	pointer-events: none;
}

/* -----------------------------------------------------
 * component: checkbox
 * -------------------------------------------------- */

.c-checkbox-wrap {
	position: relative;
}

.c-checkbox-wrap::before,
.c-checkbox-wrap::after {
	content: '';
	width: 24px;
	height: 24px;
}

.c-checkbox-wrap::before {
	display: inline-block;
	border: 1px solid #dedede;
	border-radius: 4px;
	background-color: #fff;
}

.c-checkbox-wrap::after {
	display: block;
	position: absolute;
	top: -5px;
	left: 0;
	background: no-repeat 50% 50%/16px 12px;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 15.752 11.252\'%3E%3Cpath id=\'パス_323\' fill=\'%23242424\' d=\'M15.42-12.045a1.127 1.127 0 0 1 0 1.593l-9 9a1.127 1.127 0 0 1-1.593 0l-4.5-4.5a1.127 1.127 0 0 1 0-1.593 1.127 1.127 0 0 1 1.593 0l3.705 3.7 8.205-8.2a1.127 1.127 0 0 1 1.593 0Z\' data-name=\'パス 323\' transform=\'translate(.003 12.374)\'/%3E%3C/svg%3E');
	opacity: 0;
}

.c-checkbox-wrap:has(.c-checkbox:checked)::after {
	opacity: 1;
}

/* -----------------------------------------------------
 * component: figure
 * -------------------------------------------------- */

.c-figure {
	display: block;
	overflow: hidden;
}

.c-figure img {
	display: block;
	width: 100%;
	height: 100%;
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
	-o-object-fit: cover;
	object-fit: cover;
	will-change: transform;
}

/* -----------------------------------------------------
 * component: heading
 * -------------------------------------------------- */

.c-heading {
	position: relative;
	margin: 64px 0 0;
	padding: 0 0 20px;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

.c-heading::before {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 48px;
	height: 4px;
	margin: 0 0 0 -24px;
	background-color: #fdd000;
}

.c-heading.u-al-left::before {
	left: 0;
	margin: 0;
}

.c-heading-2 {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

.c-heading-border {
	margin: 32px 0 0;
	padding-bottom: 16px;
	border-bottom: 1px solid #dedede;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.3333333333;
}

.c-heading-border-l {
	margin: 40px 0 0;
	padding: 0 0 12px;
	border-bottom: 2px solid #242424;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.8333333333;
}

.c-heading-circle {
	position: relative;
	padding: 0 0 0 24px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4444444444;
}

.c-heading-circle::before {
	content: '';
	display: block;
	position: absolute;
	top: 0.3em;
	left: 0;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background-color: #fdd000;
}

/* -----------------------------------------------------
 * component: icon
 * -------------------------------------------------- */

.c-icon {
	display: inline-block;
	background: no-repeat 50% 50%/contain;
}

.c-icon.arrow {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 5.252 8.754\'%3E%3Cpath id=\'パス_322\' fill=\'%23242424\' d=\'M6.743-4.632a.876.876 0 0 0 0-1.239l-3.5-3.5a.871.871 0 0 0-.954-.189.875.875 0 0 0-.541.809v7a.878.878 0 0 0 .541.809.876.876 0 0 0 .954-.189l3.5-3.5Z\' data-name=\'パス 322\' transform=\'translate(-1.747 9.627)\'/%3E%3C/svg%3E');
}

.c-icon.arrow-w-bottom {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 9.004 9.751\'%3E%3Cpath id=\'パス_347\' fill=\'%23242424\' d=\'M5.78.53a.751.751 0 0 1-1.062 0L.968-3.22a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.22 3.22L8.47-4.28a.751.751 0 0 1 1.062 0 .751.751 0 0 1 0 1.062L5.782.532Zm3.75-8.25L5.78-3.97a.751.751 0 0 1-1.062 0L.968-7.72a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.22 3.22L8.47-8.78a.751.751 0 0 1 1.062 0 .751.751 0 0 1 0 1.062Z\' data-name=\'パス 347\' transform=\'translate(-.748 9.002)\'/%3E%3C/svg%3E');
}

.c-icon.building {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 25.5 34\'%3E%3Cpath id=\'パス_344\' fill=\'%23242424\' d=\'M-9.562-29.75a3.188 3.188 0 0 0-3.187 3.188V1.063A3.188 3.188 0 0 0-9.562 4.25h6.375v-5.312A3.188 3.188 0 0 1 0-4.25a3.188 3.188 0 0 1 3.188 3.188V4.25h6.375a3.188 3.188 0 0 0 3.187-3.187v-27.625a3.188 3.188 0 0 0-3.187-3.188ZM-8.5-13.812a1.066 1.066 0 0 1 1.063-1.062h2.125a1.066 1.066 0 0 1 1.062 1.062v2.125a1.066 1.066 0 0 1-1.062 1.063h-2.125A1.066 1.066 0 0 1-8.5-11.687Zm7.438-1.062h2.125a1.066 1.066 0 0 1 1.063 1.063v2.125a1.066 1.066 0 0 1-1.062 1.063h-2.126a1.066 1.066 0 0 1-1.062-1.062v-2.125a1.066 1.066 0 0 1 1.062-1.065Zm5.312 1.062a1.066 1.066 0 0 1 1.063-1.062h2.125A1.066 1.066 0 0 1 8.5-13.812v2.125a1.066 1.066 0 0 1-1.062 1.063H5.313a1.066 1.066 0 0 1-1.063-1.063Zm-11.687-9.563h2.125a1.066 1.066 0 0 1 1.062 1.063v2.125a1.066 1.066 0 0 1-1.062 1.063h-2.125A1.066 1.066 0 0 1-8.5-20.187v-2.125a1.066 1.066 0 0 1 1.063-1.063Zm5.313 1.063a1.066 1.066 0 0 1 1.063-1.062h2.124a1.066 1.066 0 0 1 1.063 1.063v2.125a1.066 1.066 0 0 1-1.062 1.063h-2.126a1.066 1.066 0 0 1-1.062-1.062Zm7.438-1.062h2.124A1.066 1.066 0 0 1 8.5-22.312v2.125a1.066 1.066 0 0 1-1.062 1.063H5.313a1.066 1.066 0 0 1-1.063-1.063v-2.125a1.066 1.066 0 0 1 1.063-1.063Z\' data-name=\'パス 344\' transform=\'translate(12.75 29.75)\'/%3E%3C/svg%3E');
}

.c-icon.pen {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 36.116 34.002\'%3E%3Cpath id=\'パス_343\' fill=\'%23242424\' d=\'M3.407-5.372a6.409 6.409 0 0 0 4.462-2.849l10.738-16.608a3.2 3.2 0 0 0-.5-4.064 3.177 3.177 0 0 0-4.084-.219L-1.7-17.319a6.366 6.366 0 0 0-2.55 5.054Zm-1.3 1.687-7.7-6.933a7.438 7.438 0 0 0-7.157 7.431 7.385 7.385 0 0 0 .04.77A2.106 2.106 0 0 1-14.556 0h-.319A2.123 2.123 0 0 0-17 2.125a2.123 2.123 0 0 0 2.125 2.125h9.563a7.434 7.434 0 0 0 7.437-7.437c0-.166-.007-.332-.013-.5Z\' data-name=\'パス 343\' transform=\'translate(17 29.752)\'/%3E%3C/svg%3E');
}

.c-icon.pickup {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 26 26.003\'%3E%3Cpath id=\'パス_335\' fill=\'%23242424\' d=\'M11.375-21.125a1.631 1.631 0 0 0-1.005-1.5 1.627 1.627 0 0 0-1.772.35l-2.215 2.216a13 13 0 0 1-9.191 3.809H-9.75A3.253 3.253 0 0 0-13-13v4.875a3.253 3.253 0 0 0 3.25 3.25v6.5A1.623 1.623 0 0 0-8.125 3.25h3.25A1.623 1.623 0 0 0-3.25 1.625v-6.5h.442a13 13 0 0 1 9.191 3.809L8.6 1.148a1.618 1.618 0 0 0 1.772.35 1.626 1.626 0 0 0 1.005-1.5V-7.5A3.337 3.337 0 0 0 13-10.562a3.337 3.337 0 0 0-1.625-3.067Zm-3.25 3.895v13.335a16.243 16.243 0 0 0-10.933-4.23h-.442V-13h.442a16.243 16.243 0 0 0 10.933-4.23Z\' data-name=\'パス 335\' transform=\'translate(13 22.753)\'/%3E%3C/svg%3E');
}

.c-icon.return {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 12.25 14.007\'%3E%3Cpath id=\'パス_349\' fill=\'%23242424\' d=\'M11.993-8.132a.876.876 0 0 0 0-1.239L9.368-12a.876.876 0 0 0-1.239 0 .876.876 0 0 0 0 1.239l1.132 1.136H.875a.874.874 0 0 0-.619.256A.874.874 0 0 0 0-8.75a.874.874 0 0 0 .256.619.874.874 0 0 0 .619.256h8.386L8.129-6.743a.876.876 0 0 0 0 1.239.876.876 0 0 0 1.239 0l2.625-2.625ZM2.879 1.493A.876.876 0 0 0 4.118.254L2.989-.875h8.386a.874.874 0 0 0 .619-.256.874.874 0 0 0 .256-.619.874.874 0 0 0-.256-.619.874.874 0 0 0-.619-.256H2.989l1.132-1.132a.876.876 0 0 0 .259-.622A.876.876 0 0 0 4.121-5a.876.876 0 0 0-1.239 0L.257-2.371a.876.876 0 0 0 0 1.239l2.625 2.625Z\' data-name=\'パス 349\' transform=\'translate(0 12.257)\'/%3E%3C/svg%3E');
}

.c-icon.search {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 17.999 18.003\'%3E%3Cpath id=\'パス_325\' fill=\'%23242424\' d=\'M14.625-8.437a7.3 7.3 0 0 1-1.406 4.314L17.67.33a1.126 1.126 0 0 1-1.593 1.593l-4.451-4.454a7.271 7.271 0 0 1-4.313 1.406A7.311 7.311 0 0 1 0-8.437a7.311 7.311 0 0 1 7.313-7.313 7.311 7.311 0 0 1 7.312 7.313ZM7.313-3.375A5.063 5.063 0 0 0 11.7-5.906a5.063 5.063 0 0 0 0-5.062A5.063 5.063 0 0 0 7.313-13.5a5.062 5.062 0 0 0-4.384 2.531 5.062 5.062 0 0 0 0 5.063 5.063 5.063 0 0 0 4.384 2.531Z\' data-name=\'パス 325\' transform=\'translate(0 15.75)\'/%3E%3C/svg%3E');
}

/* -----------------------------------------------------
 * component: input
 * -------------------------------------------------- */

.c-input {
	width: 100%;
	height: 40px;
	padding: 0 16px;
	border: 1px solid #dedede;
	border-radius: 4px;
	background-color: #fff;
	font-size: 1.6rem;
	font-weight: 400;
}

.c-input:-ms-input-placeholder {
	color: #6e6e6e;
}

.c-input:placeholder-shown {
	color: #6e6e6e;
}

.c-input::-webkit-input-placeholder {
	color: #6e6e6e;
}

.c-input:-moz-placeholder {
	opacity: 1;
	color: #6e6e6e;
}

.c-input::-moz-placeholder {
	opacity: 1;
	color: #6e6e6e;
}

.c-input:-ms-input-placeholder {
	color: #6e6e6e;
}

/* -----------------------------------------------------
 * component: label
 * -------------------------------------------------- */

.c-label {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-height: 32px;
	padding: 4px 24px;
	border-radius: 16px;
	background-color: #f1f1f1;
	font-size: 1.1rem;
	font-weight: 700;
}

.c-label.cl-white {
	border: 1px solid #242424;
	background-color: #fff;
}

.c-label.cl-dark {
	background-color: #6e6e6e;
	color: #fff;
}

.c-label.cl-yellow {
	background-color: #fdd000;
}

.c-label.year {
	background-color: #fff;
}

.c-label.entry {
	width: 160px;
}

.c-label.entry.soon {
	background-color: #fdd000;
}

.c-label.entry.accepted {
	background-color: #d50e35;
	color: #fff;
}

.c-label.entry.end {
	background-color: #6e6e6e;
	color: #fff;
}

.c-label.entry.end-active {
	background-color: #005bac;
	color: #fff;
}

.c-label.project {
	background-color: #fdd000;
}

a.c-label {
	transition: opacity 0.2s ease;
}

/* -----------------------------------------------------
 * component: lead
 * -------------------------------------------------- */

.c-lead {
	margin: 32px 0 0;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.625;
}

.c-lead a {
	text-decoration: underline;
}

/* -----------------------------------------------------
 * component: link
 * -------------------------------------------------- */

.c-link {
	position: relative;
	padding-bottom: 0.3rem;
	padding-left: 0.8em;
	background: no-repeat 0 47.5%/auto 0.65em;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 5.252 8.754\'%3E%3Cpath id=\'パス_350\' fill=\'%23242424\' d=\'M6.743-4.632a.876.876 0 0 0 0-1.239l-3.5-3.5a.871.871 0 0 0-.954-.189.875.875 0 0 0-.541.809v7a.878.878 0 0 0 .541.809.876.876 0 0 0 .954-.189l3.5-3.5Z\' data-name=\'パス 350\' transform=\'translate(-1.747 9.627)\'/%3E%3C/svg%3E');
	font-weight: 400;
}

.c-link::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.c-link[target=_blank]::after {
	content: '';
	display: inline-block;
	position: relative;
	top: 0.1em;
	width: 0.9em;
	height: 0.9em;
	margin-left: 8px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 14 14\'%3E%3Cpath id=\'パス_351\' fill=\'%23242424\' d=\'M8.75-12.25a.874.874 0 0 0-.875.875.874.874 0 0 0 .875.875h2.261l-5.5 5.507a.876.876 0 0 0 0 1.239.876.876 0 0 0 1.239 0l5.5-5.507V-7a.874.874 0 0 0 .875.875A.874.874 0 0 0 14-7v-4.375a.874.874 0 0 0-.875-.875Zm-6.562.875A2.187 2.187 0 0 0 0-9.187v8.75A2.187 2.187 0 0 0 2.188 1.75h8.75a2.187 2.187 0 0 0 2.187-2.187V-3.5a.874.874 0 0 0-.875-.875.874.874 0 0 0-.875.875v3.063a.439.439 0 0 1-.437.437h-8.75a.439.439 0 0 1-.438-.437v-8.75a.439.439 0 0 1 .438-.437H5.25a.874.874 0 0 0 .875-.875.874.874 0 0 0-.875-.875Z\' data-name=\'パス 351\' transform=\'translate(0 12.25)\'/%3E%3C/svg%3E');
	-webkit-filter: invert(80%) sepia(5%) saturate(0%) hue-rotate(231deg) brightness(85%) contrast(92%);
	filter: invert(80%) sepia(5%) saturate(0%) hue-rotate(231deg) brightness(85%) contrast(92%);
}

/* -----------------------------------------------------
 * component: note
 * -------------------------------------------------- */

.p-wysiwyg .c-note,
.c-note {
	margin: 12px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.p-wysiwyg .c-note a,
.c-note a {
	text-decoration: underline;
}

.p-wysiwyg .c-note.m-narrow,
.c-note.m-narrow {
	margin: 0.75em 0 0;
}

/* -----------------------------------------------------
 * component: paragraph
 * -------------------------------------------------- */

.c-paragraph {
	margin: 1em 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.c-paragraph.u-font-en {
	font-size: 1.4rem;
}

.c-paragraph.m-narrow {
	margin: 0.5em 0 0;
}

/* -----------------------------------------------------
 * component: select
 * -------------------------------------------------- */

.c-select {
	cursor: pointer;
	width: 100%;
	height: 40px;
	padding: 0 40px 0 16px;
	border: 1px solid #dedede;
	border-radius: 4px;
	font-size: 1.6rem;
	font-weight: 400;
}

.c-select-wrap {
	position: relative;
}

.c-select-wrap::after {
	content: '';
	display: block;
	position: absolute;
	top: 21px;
	right: 16px;
	width: 10px;
	height: 6px;
	margin-top: -3px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 10.004 6.002\'%3E%3Cpath id=\'パス_354\' fill=\'%23242424\' d=\'M7.706-5.294a1 1 0 0 0 0-1.416l-4-4a1 1 0 0 0-1.091-.216A1 1 0 0 0 2-10v8a1 1 0 0 0 .619.925 1 1 0 0 0 1.091-.216l4-4Z\' data-name=\'パス 354\' transform=\'rotate(90 .5 -1.498)\'/%3E%3C/svg%3E');
	pointer-events: none;
}

/* -----------------------------------------------------
 * component: step
 * -------------------------------------------------- */

.c-step {
	display: inline-flex;
	font-family: 'Poppins', sans-serif;
	gap: 6px;
}

.c-step::before {
	content: 'STEP';
	position: relative;
	top: 6px;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.3571428571;
}

.c-step .num,
.c-step::after {
	font-size: 2.8rem;
	font-weight: 400;
	line-height: 1.2;
}

.c-step:has(.num)::after {
	display: none;
}

/* -----------------------------------------------------
 * component: sup
 * -------------------------------------------------- */

.c-sup {
	display: flex;
	position: relative;
	justify-content: flex-start;
	align-items: center;
	font-size: 1.6rem;
	font-weight: 700;
	gap: 12px;
}

.c-sup::before {
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #fdd000;
}

/* -----------------------------------------------------
 * component: tag
 * -------------------------------------------------- */

.c-tag {
	color: #6e6e6e;
	font-size: 1.4rem;
	font-weight: 400;
}

/* -----------------------------------------------------
 * component: textarea
 * -------------------------------------------------- */

.c-textarea {
	width: 100%;
	min-height: 208px;
	padding: 8px 16px;
	border: 1px solid #dedede;
	border-radius: 4px;
	background-color: #fff;
	font-size: 1.6rem;
	font-weight: 400;
}

.c-textarea:-ms-input-placeholder {
	color: #6e6e6e;
}

.c-textarea:placeholder-shown {
	color: #6e6e6e;
}

.c-textarea::-webkit-input-placeholder {
	color: #6e6e6e;
}

.c-textarea:-moz-placeholder {
	opacity: 1;
	color: #6e6e6e;
}

.c-textarea::-moz-placeholder {
	opacity: 1;
	color: #6e6e6e;
}

.c-textarea:-ms-input-placeholder {
	color: #6e6e6e;
}

/* -----------------------------------------------------
 * component: totop
 * -------------------------------------------------- */

.c-totop {
	display: block;
}

/* -----------------------------------------------------
 * parts: accordion box
 * -------------------------------------------------- */

.p-ac-box {
	margin: 20px 0 0;
	border: 1px solid #242424;
	border-radius: 4px;
	background-color: #fff;
}

.p-ac-box-trigger {
	display: flex;
	overflow: hidden;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 52px;
	font-size: 1.4rem;
	font-weight: bold;
	transition: background-color 0.2s ease;
}

.p-ac-box-trigger .close {
	display: none;
}

.p-ac-box-trigger .icon {
	display: block;
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 0 0 8px;
}

.p-ac-box-trigger .icon::before,
.p-ac-box-trigger .icon::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	background-color: #242424;
}

.p-ac-box-trigger .icon::before {
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}

.p-ac-box-trigger .icon::after {
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
	-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(90deg);
	transform: translate3d(-50%, -50%, 0) rotateZ(90deg);
}

.p-ac-box-target {
	display: grid;
	transition: all 0.2s ease;
	grid-template-rows: 0fr;
}

.p-ac-box-target > div {
	overflow: hidden;
}

.p-ac-box-target > div > *:first-child {
	margin-top: 0;
}

.p-ac-box.is-active .p-ac-box-trigger {
	background-color: #dedede;
}

.p-ac-box.is-active .p-ac-box-trigger .open {
	display: none;
}

.p-ac-box.is-active .p-ac-box-trigger .close {
	display: inline-block;
}

.p-ac-box.is-active .p-ac-box-trigger .icon::after {
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}

.p-ac-box.is-active .p-ac-box-target {
	grid-template-rows: 1fr;
}

/* -----------------------------------------------------
 * parts: access
 * -------------------------------------------------- */

.p-access-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.p-access-title .title {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.4166666667;
}

.p-access-title .sup {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2.125;
}

.p-access-title .sup-en {
	font-family: 'Poppins', sans-serif;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.375;
}

.p-access-info {
	margin: 32px 0 0;
}

/* -----------------------------------------------------
 * parts: banner
 * -------------------------------------------------- */

.p-banner {
	display: flex;
	flex-direction: column;
	margin: 24px 0 0;
	gap: 16px;
}

.p-banner .c-figure {
	width: 247px;
	height: 86px;
	margin: 0 auto;
	padding: 4px 20px;
	border: 1px solid #dedede;
	border-radius: 8px;
	background-color: #fff;
}

.p-banner .c-figure img {
	-o-object-fit: contain;
	object-fit: contain;
}

.p-banner .text {
	font-size: 1.4rem;
	font-weight: 400;
}

/* -----------------------------------------------------
 * parts: box link
 * -------------------------------------------------- */

.p-box-link {
	padding: 20px 24px;
	border-radius: 8px;
	background-color: #f1f1f1;
}

.p-box-link .heading {
	display: flex;
	justify-content: flex-start;
}

.p-box-link .heading a {
	display: grid;
	position: relative;
	padding-bottom: 0.3rem;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	grid-template-columns: auto 1fr;
	gap: 0 8px;
}

.p-box-link .heading a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.p-box-link .heading a::before {
	content: '';
	display: block;
	position: relative;
	top: 0.45em;
	width: 9px;
	height: 14px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 8.253 13.756\'%3E%3Cpath id=\'パス_333\' fill=\'%23242424\' d=\'M10.6-7.279a1.377 1.377 0 0 0 0-1.946l-5.5-5.5a1.369 1.369 0 0 0-1.5-.3 1.376 1.376 0 0 0-.851 1.272v11A1.38 1.38 0 0 0 3.6-1.478a1.377 1.377 0 0 0 1.5-.3l5.5-5.5Z\' data-name=\'パス 333\' transform=\'translate(-2.746 15.128)\'/%3E%3C/svg%3E');
}

.p-box-link .c-paragraph {
	margin: 12px 0 0;
}

/* -----------------------------------------------------
 * parts: box
 * -------------------------------------------------- */

.p-box {
	padding: 32px 24px;
	border-radius: 8px;
	background-color: #f1f1f1;
}

.p-box.bg-white {
	background-color: #fff;
}

.p-box.pad-middle {
	padding: 24px;
}

.p-box.flex {
	display: flex;
	flex-direction: column;
}

.p-box.flex .heading {
	font-size: 2.4rem !important;
}

.p-box > *:first-child {
	margin-top: 0 !important;
}

.p-box .heading {
	padding: 0 !important;
	font-size: 2rem !important;
	font-weight: 700;
}

.p-box .heading::before {
	display: none !important;
}

.p-box .heading .sup {
	font-size: 1.4rem;
}

.p-box .heading-2 {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 2rem;
	font-weight: 700;
	gap: 10px 0;
}

.p-box .heading-2 .c-icon {
	width: auto;
	height: 34px;
	aspect-ratio: 38/34;
}

.p-box .heading-border {
	padding-bottom: 10px;
	border-bottom: 1px solid #dedede;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-box .kv {
	overflow: hidden;
	width: 100%;
	border-radius: 8px;
	aspect-ratio: 295/170;
}

.p-box .contents {
	margin: 32px 0 0;
}

.p-box .contents > *:first-child {
	margin-top: 0;
}

.p-box .contents.m-narrow {
	margin: 24px 0 0;
}

.p-box .contents.bg-white {
	padding: 16px;
	border-radius: 8px;
	background-color: #fff;
}

.p-box .contents .heading {
	font-size: 1.8rem !important;
}

.p-box .contents .c-paragraph.p-col {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.p-box .contents .c-paragraph.p-col.m-narrow {
	margin: 8px 0 0;
}

.p-box .link {
	margin: 24px 0 0;
}

.p-box .link.al-center {
	display: flex;
	justify-content: center;
}

.p-box .link.al-right {
	display: flex;
	justify-content: flex-end;
}

.p-box.arrow-down {
	position: relative;
}

.p-box.arrow-down::after {
	content: '';
	display: block;
	position: absolute;
	top: calc(100% - 1px);
	left: 50%;
	width: 32px;
	height: 16px;
	background-color: #f1f1f1;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

/* -----------------------------------------------------
 * parts: breadcrumbs
 * -------------------------------------------------- */

.p-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	padding: 6px 16px;
	gap: 0 8px;
}

.p-breadcrumbs ol li {
	position: relative;
	overflow: hidden;
	padding-right: 13px;
	line-height: 1.2;
	white-space: nowrap !important;
	text-overflow: ellipsis !important;
}

.p-breadcrumbs ol li::after {
	content: '';
	display: block;
	position: absolute;
	top: 9px;
	right: 0;
	width: 5px;
	height: 8px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 4.376 7.503\'%3E%3Cpath id=\'パス_346\' fill=\'%236e6e6e\' d=\'M5.441-4.191a.626.626 0 0 1 0 .885L2.316-.182a.626.626 0 0 1-.885 0 .626.626 0 0 1 0-.885L4.115-3.75 1.434-6.434a.626.626 0 0 1 0-.885.626.626 0 0 1 .885 0l3.124 3.126Z\' data-name=\'パス 346\' transform=\'translate(-1.249 7.501)\'/%3E%3C/svg%3E');
}

.p-breadcrumbs ol li:last-child::after {
	display: none;
}

.p-breadcrumbs ol li a,
.p-breadcrumbs ol li span {
	color: #6e6e6e;
	font-size: 1rem;
	font-weight: 400;
}

.p-breadcrumbs ol li a {
	text-decoration: underline;
}

/* -----------------------------------------------------
 * component: card artist
 * -------------------------------------------------- */

.p-card-artist {
	padding: 24px;
	border-radius: 8px;
	background-color: #fff;
}

.p-card-artist img {
	max-width: 100%;
}

.p-card-artist .c-figure {
	border-radius: 8px;
	aspect-ratio: 295/221;
}

.p-card-artist .name {
	margin: 16px 0 0;
	padding-bottom: 14px;
	border-bottom: 1px solid #acacac;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4545454545;
}

.p-card-artist .p-dl {
	margin: 16px 0 0;
}

.p-card-artist .p-labels {
	margin: 16px 0 0;
}

.p-card-artist .p-labels a.c-label {
	transition: opacity 0.2s ease;
}

.p-card-artist .c-paragraph {
	margin: 24px 0 0;
}

.p-card-artist .link {
	margin: 24px 0 0;
}

.p-card-artist.pad-none {
	padding: 0;
}

.p-card-artist.header .related .p-list-sns,
.p-card-artist.header .related .wp_social_bookmarking_light {
	margin: 16px 0 0;
}

.p-card-artist.header .name {
	font-size: 2.4rem;
}

.p-card-artist-simple .c-figure {
	width: 100%;
	border-radius: 8px;
	aspect-ratio: 1/1;
}

.p-card-artist-simple .name {
	margin: 12px 0 0;
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.025em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}

.p-card-artist-simple .year {
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
}

/* -----------------------------------------------------
 * parts: card business
 * -------------------------------------------------- */

.p-card-business figure {
	width: 100%;
	height: auto;
	border: 1px solid #acacac;
	border-radius: 8px;
	aspect-ratio: 343/257;
}

.p-card-business .title {
	margin: 16px 0 0;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-card-business .c-paragraph {
	margin: 8px 0 0;
}

.p-card-business:hover figure img {
	-webkit-transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
	transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
}

.p-card-business:hover .title {
	text-decoration: underline;
}

/* -----------------------------------------------------
 * parts: card grants
 * -------------------------------------------------- */

.p-card-grants {
	padding: 24px;
	border-radius: 8px;
	background-color: #f1f1f1;
}

.p-card-grants .p-labels {
	gap: 10px;
}

.p-card-grants .p-labels .c-label {
	height: 36px;
	border-radius: 18px;
}

.p-card-grants .title {
	margin: 16px 0 0;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-card-grants .c-paragraph {
	margin: 24px 0 0;
}

.p-list-box .p-card-grants .p-labels .c-label {
	height: 32px;
	font-size: 1.1rem;
}

.p-list-box .p-card-grants .p-labels .c-label.entry {
	width: auto;
}

.p-list-box .p-card-grants .title {
	display: -webkit-box;
	overflow: hidden;
	margin: 8px 0 0;
	font-size: 1.8rem;
	line-height: 1.5555555556;
	word-wrap: break-word;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow-wrap: break-word;
}

.p-list-box .p-card-grants .c-paragraph {
	display: -webkit-box;
	overflow: hidden;
	margin: 16px 0 0;
	word-wrap: break-word;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow-wrap: break-word;
}

.p-list-box .p-card-grants .l-links {
	margin: 16px 0 0;
}

.p-list-box .p-card-grants .l-links .c-btn {
	width: 247px;
	height: 48px;
}

/* -----------------------------------------------------
 * parts: card info
 * -------------------------------------------------- */

.p-card-info {
	display: flex;
	flex-direction: column;
}

.p-card-info .c-figure {
	width: 100%;
	border-radius: 8px;
	aspect-ratio: 164/123;
}

.p-card-info .c-figure a {
	display: block;
	width: 100%;
	height: 100%;
}

.p-card-info-sup {
	display: flex;
	justify-content: space-between;
	margin: 16px 0 0;
	gap: 0 8px;
}

.p-card-info-sup time {
	position: relative;
	top: 2px;
	color: #6e6e6e;
	font-family: 'Poppins', sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
	white-space: nowrap;
}

.p-card-info-contents {
	margin: 8px 0 auto;
}

.p-card-info-contents .title {
	display: -webkit-box;
	overflow: hidden;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5714285714;
	word-wrap: break-word;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow-wrap: break-word;
}

.p-card-info-contents .c-paragraph {
	display: -webkit-box;
	overflow: hidden;
	margin: 8px 0 0;
	word-wrap: break-word;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow-wrap: break-word;
}

.p-card-info-contents .p-tags,
.p-card-info-contents .tags {
	display: flex;
	flex-wrap: wrap;
	margin: 16px 0 0;
	gap: 8px 16px;
}

.p-card-info-contents .p-tags li,
.p-card-info-contents .tags li {
	color: #6e6e6e;
	font-size: 1.3rem;
	font-weight: 400;
}

.p-card-info-link {
	margin: 16px auto 0;
}

.p-card-info-link .c-btn {
	width: 247px;
	height: 48px;
	margin: 0 auto;
}

/* -----------------------------------------------------
 * parts: list intro
 * -------------------------------------------------- */

.p-card-intro {
	display: flex;
	flex-direction: column;
	padding: 0 24px;
}

.p-card-intro figure {
	margin: 0 -24px;
	aspect-ratio: 400/225;
}

.p-card-intro figure img {
	-o-object-fit: cover;
	object-fit: cover;
}

.p-card-intro .p-box {
	position: relative;
	z-index: 1;
	height: 100%;
	margin: -24px 0 0;
	padding: 32px 24px 24px;
}

/* -----------------------------------------------------
 * parts: card office
 * -------------------------------------------------- */

.p-card-office .c-figure {
	overflow: hidden;
	border-radius: 8px;
}

.p-card-office .title {
	margin: 16px 0 0;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-card-office .addr {
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
}

.p-card-office .photographer {
	margin: 8px 0 0;
	font-size: 1.2rem;
	font-weight: 400;
	text-align: right;
}

.p-card-office p {
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
}

/* -----------------------------------------------------
 * parts: card program
 * -------------------------------------------------- */

.p-card-program {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: 'image title' 'image text' 'link link';
	gap: 0 16px;
}

.p-card-program figure {
	overflow: hidden;
	width: 100%;
	border-radius: 8px;
	grid-area: image;
	aspect-ratio: 164/123;
}

.p-card-program figure img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-card-program .title {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.6111111111;
	grid-area: title;
}

.p-card-program .c-paragraph {
	margin: 8px 0 0;
	color: #6e6e6e;
	grid-area: text;
}

.p-card-program .link {
	display: flex;
	justify-content: center;
	margin: 16px 0 0;
	grid-area: link;
}

.p-card-program .link .c-btn {
	width: 247px;
	height: 48px;
}

/* -----------------------------------------------------
 * component: card slide artist
 * -------------------------------------------------- */

.p-card-slide-artist {
	width: 295px;
}

.p-card-slide-artist .c-figure {
	width: 100%;
	border-radius: 8px;
	aspect-ratio: 295/221;
}

.p-card-slide-artist .p-labels {
	margin: 16px 0 0;
}

.p-card-slide-artist .name {
	margin: 8px 0 0;
	font-size: 1.8rem;
	font-weight: 700;
}

.p-card-slide-artist .c-paragraph {
	display: -webkit-box;
	overflow: hidden;
	margin: 8px 0 0;
	word-wrap: break-word;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow-wrap: break-word;
}

.p-card-slide-artist .link {
	margin: 16px 0 0;
}

.p-card-slide-artist .link .c-btn {
	width: 247px;
	height: 48px;
	margin: 0 auto;
}

/* -----------------------------------------------------
 * component: card slide info
 * -------------------------------------------------- */

.p-card-slide-info {
	display: flex;
	flex-direction: column;
	width: 295px;
}

.p-card-slide-info .c-figure {
	width: 100%;
	border-radius: 8px;
	aspect-ratio: 295/221;
}

.p-card-slide-info .c-figure a {
	display: block;
	width: 100%;
	height: 100%;
}

.p-card-slide-info .text {
	margin: 16px 0 auto;
}

.p-card-slide-info .p-labels {
	margin: 16px 0 0;
}

.p-card-slide-info .name {
	margin: 8px 0 0;
	font-size: 1.8rem;
	font-weight: 700;
}

.p-card-slide-info .c-paragraph {
	display: -webkit-box;
	overflow: hidden;
	margin: 8px 0 0;
	word-wrap: break-word;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow-wrap: break-word;
}

.p-card-slide-info .p-tags {
	margin: 8px 0 0;
}

.p-card-slide-info .link {
	margin: 16px 0 0;
}

.p-card-slide-info .link .c-btn {
	width: 247px;
	height: 48px;
	margin: 0 auto;
}

/* -----------------------------------------------------
 * parts: check labels
 * -------------------------------------------------- */

.p-check-labels {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.p-check-labels .c-label {
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.p-check-labels .c-label:has(input[type=checkbox]:checked) {
	background-color: #242424;
	color: #fff;
}

.p-check-labels .c-label input {
	width: 0;
	height: 0;
}

/* -----------------------------------------------------
 * parts: check tags
 * -------------------------------------------------- */

.p-check-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
}

.p-check-tags .c-tag {
	cursor: pointer;
	position: relative;
	padding-bottom: 0.3rem;
	transition: color 0.2s ease;
}

.p-check-tags .c-tag::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.p-check-tags .c-tag:has(input[type=checkbox]:checked) {
	color: #d50e35;
}

/* -----------------------------------------------------
 * parts: column
 * -------------------------------------------------- */

.p-col {
	display: grid;
	gap: 16px;
}

.p-col.gap-wide {
	gap: 24px;
}

.p-col.col-4 {
	gap: 32px;
}

.p-col.col-5 {
	gap: 32px;
}

/* -----------------------------------------------------
 * parts: content
 * -------------------------------------------------- */

/* -----------------------------------------------------
 * parts: data picker
 * -------------------------------------------------- */

.p-date-picker {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.p-date-picker-heading label {
	position: relative;
	top: 0.4em;
	font-size: 1.6rem;
	font-weight: 600;
	white-space: nowrap;
}

.p-date-picker-form {
	width: 100%;
}

.p-date-picker-form p {
	margin: 4px 0 0;
	color: #6e6e6e;
	font-size: 1.2rem;
	line-height: 1.5;
}

/* -----------------------------------------------------
 * parts: data list
 * -------------------------------------------------- */

.p-dl {
	display: grid;
	align-items: center;
	justify-items: start;
}

.p-dl dt {
	display: flex;
	justify-content: space-between;
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.5714285714;
}

.p-dl dt:first-child {
	margin: 0;
}

.p-dl dt::after {
	content: '：';
	display: inline-block;
}

.p-dl dd {
	margin: 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-dl dd.u-font-en {
	letter-spacing: 0.05em;
}

.p-dl dd a {
	position: relative;
	padding-bottom: 0.3rem;
}

.p-dl dd a::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.p-wysiwyg .p-dl dd a::before {
	display: none;
}

.p-dl dd a[target=_blank]::after {
	content: '';
	display: inline-block;
	position: relative;
	top: 0.1em;
	width: 0.9em;
	height: 0.9em;
	margin-left: 8px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 14 14\'%3E%3Cpath id=\'パス_351\' fill=\'%23242424\' d=\'M8.75-12.25a.874.874 0 0 0-.875.875.874.874 0 0 0 .875.875h2.261l-5.5 5.507a.876.876 0 0 0 0 1.239.876.876 0 0 0 1.239 0l5.5-5.507V-7a.874.874 0 0 0 .875.875A.874.874 0 0 0 14-7v-4.375a.874.874 0 0 0-.875-.875Zm-6.562.875A2.187 2.187 0 0 0 0-9.187v8.75A2.187 2.187 0 0 0 2.188 1.75h8.75a2.187 2.187 0 0 0 2.187-2.187V-3.5a.874.874 0 0 0-.875-.875.874.874 0 0 0-.875.875v3.063a.439.439 0 0 1-.437.437h-8.75a.439.439 0 0 1-.438-.437v-8.75a.439.439 0 0 1 .438-.437H5.25a.874.874 0 0 0 .875-.875.874.874 0 0 0-.875-.875Z\' data-name=\'パス 351\' transform=\'translate(0 12.25)\'/%3E%3C/svg%3E');
	-webkit-filter: invert(80%) sepia(5%) saturate(0%) hue-rotate(231deg) brightness(85%) contrast(92%);
	filter: invert(80%) sepia(5%) saturate(0%) hue-rotate(231deg) brightness(85%) contrast(92%);
}

/* -----------------------------------------------------
 * parts: fixed table
 * -------------------------------------------------- */

.p-fixed-table {
	margin: 32px 0 0;
}

.p-fixed-table-scroll::-webkit-scrollbar {
	height: 2px;
}

.p-fixed-table-scroll::-webkit-scrollbar-track {
	border-radius: 1px;
	background: #f1f1f1;
}

.p-fixed-table-scroll::-webkit-scrollbar-thumb {
	border-radius: 2px;
	background: #6e6e6e;
}

.p-fixed-table table {
	border-collapse: collapse;
	width: 100%;
}

.p-fixed-table-note {
	margin: 0 0 24px;
	color: #d50e35;
	text-align: center;
}

.p-fixed-table-note .c-icon {
	display: inline-block;
	position: relative;
	top: 0.1em;
	width: 13px;
	height: 15px;
	margin-right: 0.5em;
	-webkit-filter: invert(16%) sepia(85%) saturate(5412%) hue-rotate(342deg) brightness(84%) contrast(98%);
	filter: invert(16%) sepia(85%) saturate(5412%) hue-rotate(342deg) brightness(84%) contrast(98%);
}

/* -----------------------------------------------------
 * parts: form
 * -------------------------------------------------- */

.p-form-caution {
	margin: 24px 0 0;
	padding: 16px;
	border-radius: 8px;
	background-color: #ffedf1;
	color: #d50e35;
	font-size: 1.4rem;
	line-height: 1.5714285714;
}

.p-form-inner {
	margin: 24px 0 0;
	padding: 40px 16px;
	border-radius: 8px;
	background-color: #f1f1f1;
}

.p-form-body {
	width: 100%;
}

.p-form-body-inner {
	padding: 24px 0;
	border-bottom: 1px solid #dedede;
}

.p-form-body-inner:first-child {
	padding-top: 0;
}

.p-form-body-inner.required label::after {
	content: '必須';
	display: inline-flex;
	position: relative;
	top: -0.1em;
	align-items: center;
	height: 21px;
	margin-left: 8px;
	padding: 0 8px 1px;
	border-radius: 4px;
	background-color: #d50e35;
	color: #fff;
	font-size: 1.2rem;
}

.p-form-body .heading label,
.p-form-body .heading .label {
	font-size: 1.6;
	font-weight: 600;
}

.p-form-body .heading p {
	color: #6e6e6e;
	font-size: 1.2rem;
	line-height: 1.5;
}

.p-form-body .form {
	margin: 8px 0 0;
}

.p-form-body .form *:first-child {
	margin-top: 0 !important;
}

.p-form-body .form .title {
	margin: 8px 0 0;
	font-size: 1.6rem;
	font-weight: 600;
}

.p-form-body .form .c-select {
	background-color: #fff;
}

.p-form-body .form textarea {
	resize: vertical;
}

.p-form-body .form .p-date-picker {
	margin: 8px 0 0;
	padding: 0 0 0 16px;
}

.p-form-body .form .p-date-picker-inner {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.p-form-body .form .error {
	margin: 4px 0 0;
	color: #d50e35;
	font-size: 1.4rem;
	line-height: 1.8571428571;
}

.p-form-note {
	margin: 24px 0 0;
	padding: 16px;
	border-radius: 8px;
	background-color: #dedede;
}

.p-form-agree {
	margin: 24px 0 0;
}

.p-form-agree p {
	margin: 0;
	padding-left: 32px;
	font-size: 1.6rem;
	text-indent: -32px;
}

.p-form-agree .c-checkbox-wrap {
	position: relative;
	top: 0.4em;
	margin-right: 8px;
}

.p-form-agree a {
	text-decoration: underline;
}

.p-form-submit {
	display: flex;
	justify-content: center;
	margin: 24px 0 0;
}

.p-form-submit .c-btn {
	min-width: 320px;
}

/* -----------------------------------------------------
 * parts: full image
 * -------------------------------------------------- */

.p-full-image {
	position: relative;
	width: 100%;
	height: 220px;
	margin: 64px 0 0;
}

.l-section-inner .p-full-image {
	width: auto;
	margin: 32px -16px 0;
}

.p-full-image img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-full-image figcaption {
	display: block;
	position: absolute;
	right: 16px;
	bottom: 24px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 400;
}

/* -----------------------------------------------------
 * parts: header
 * -------------------------------------------------- */

.p-header {
	padding: 12px 16px 40px;
	border-bottom: 1px solid #dedede;
}

.p-header.border-none {
	border: none;
}

.p-header h1 {
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

/* -----------------------------------------------------
 * parts: header article
 * -------------------------------------------------- */

.p-header-article {
	padding: 18px 16px 40px;
}

.p-header-article-sup {
	display: flex;
	justify-content: space-between;
}

.p-header-article-sup .p-labels .c-label.entry {
	width: auto;
}

.p-header-article-sup .p-list-sns,
.p-header-article-sup .wp_social_bookmarking_light {
	margin: 0 0 0 auto;
}

.p-header-article .title {
	margin: 16px 0 0;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5833333333;
}

.p-header-article .category {
	color: #666;
	font-size: 1.2rem;
	font-weight: 400;
}

.p-header-article .category a {
	text-decoration: underline;
}

.p-header-article .lead {
	margin: 18px 0 0;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.625;
}

/* -----------------------------------------------------
 * parts: html
 * -------------------------------------------------- */

.p-html *:first-child {
	margin-top: 0;
}

.p-html p {
	margin: 1em 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.p-html ul {
	margin: 1em 0 0;
}

.p-html ul ul {
	margin-top: 4px;
}

.p-html ul li {
	position: relative;
	padding-left: 1em;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.p-html ul li::before {
	content: '';
	display: block;
	position: absolute;
	top: 0.6em;
	left: 0;
	overflow: hidden;
	width: 6px;
	height: 6px;
	border: 0;
	border-radius: 50%;
	background: transparent no-repeat 50% 50%/6px;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 6 6\'%3E%3Cpath id=\'パス_357\' fill=\'%23242424\' d=\'M3 0a3 3 0 1 1-3 3 3 3 0 0 1 3-3Z\' data-name=\'パス 357\'/%3E%3C/svg%3E');
	aspect-ratio: 1/1;
}

.p-html ul li a {
	position: relative;
	padding-bottom: 0.3rem;
}

.p-html ul li a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

/* -----------------------------------------------------
 * parts: innerlinks
 * -------------------------------------------------- */

.p-innerlinks {
	clear: both;
	margin: 48px 0 0;
	padding: 0 16px;
}

.l-section .p-innerlinks,
.l-article .p-innerlinks {
	padding: 0;
}

.p-innerlinks ul {
	display: flex;
	flex-direction: column;
	padding: 8px 16px !important;
	border-radius: 8px;
	background-color: #f1f1f1;
}

.p-innerlinks ul li {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid #acacac;
}

.p-innerlinks ul li:last-child {
	border: none;
}

.p-innerlinks ul li a {
	display: flex;
	position: relative;
	align-items: center;
	padding: 8px 0 !important;
	padding-bottom: 0.3rem;
	font-size: 1.4rem;
	font-weight: 700;
	gap: 0 8px;
}

.p-innerlinks ul li a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.p-innerlinks ul li a::before {
	content: '';
	display: block;
	width: 9px;
	height: 10px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 9.004 9.751\'%3E%3Cpath id=\'パス_347\' fill=\'%23242424\' d=\'M5.78.53a.751.751 0 0 1-1.062 0L.968-3.22a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.22 3.22L8.47-4.28a.751.751 0 0 1 1.062 0 .751.751 0 0 1 0 1.062L5.782.532Zm3.75-8.25L5.78-3.97a.751.751 0 0 1-1.062 0L.968-7.72a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.22 3.22L8.47-8.78a.751.751 0 0 1 1.062 0 .751.751 0 0 1 0 1.062Z\' data-name=\'パス 347\' transform=\'translate(-.748 9.002)\'/%3E%3C/svg%3E');
}

/* -----------------------------------------------------
 * parts: labels
 * -------------------------------------------------- */

.p-labels {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 4px;
}

/* -----------------------------------------------------
 * parts: links documents
 * -------------------------------------------------- */

.p-links-documents.p-col.col-4 {
	justify-items: center;
	gap: 16px;
}

.p-links-documents-inner {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.p-links-documents-inner .c-btn {
	align-self: center;
}

/* -----------------------------------------------------
 * parts: list banner
 * -------------------------------------------------- */

.p-list-banner {
	display: flex;
	flex-direction: column;
	gap: 40px 20px;
}

.p-list-banner.section li {
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}

.p-list-banner.section li .title2 {
	text-align: center;
}

.p-list-banner li {
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.p-list-banner li a {
	display: block;
	width: 100%;
}

.p-list-banner li .title,
.p-list-banner li .title2 {
	margin-bottom: 16px;
}

.p-list-banner li .c-figure {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 89px;
	border: 1px solid #dedede;
	border-radius: 8px;
	background-color: #fff;
}

.p-list-banner li .c-figure img {
	-o-object-fit: contain;
	object-fit: contain;
}

.p-list-banner li .caption {
	display: block;
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 600;
	text-align: center;
}

.p-list-banner li .c-note {
	margin-top: 8px;
}

/* -----------------------------------------------------
 * parts: list box
 * -------------------------------------------------- */

.p-list-box {
	display: flex;
	flex-direction: column;
	margin: 32px 0 0;
	gap: 32px;
}

.p-refine + .p-list-box {
	margin: 24px 0 0;
}

/* -----------------------------------------------------
 * parts: list business
 * -------------------------------------------------- */

.p-list-business {
	margin: 24px 0 0;
}

/* -----------------------------------------------------
 * parts: list program
 * -------------------------------------------------- */

.p-list-flow {
	counter-reset: flowctr;
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.p-list-flow li {
	counter-increment: flowctr;
}

.p-list-flow li .heading {
	display: flex;
	flex-direction: column;
	font-size: 2.4rem !important;
	font-weight: 700;
	gap: 16px;
}

.p-list-flow li .c-step::before {
	border-bottom: 1px solid #acacac;
}

.p-list-flow li .c-step::after {
	content: counter(flowctr, decimal-leading-zero);
}

.p-list-flow li .c-paragraph {
	margin: 24px 0 0;
}

.p-list-flow li .c-paragraph a {
	text-decoration: underline;
}

.p-list-flow li .c-figure {
	width: 100%;
	height: 170px;
	margin: 24px 0 0;
	border-radius: 8px;
	background-color: #fff;
}

.p-list-flow li .c-figure img {
	-o-object-fit: contain;
	object-fit: contain;
}

.p-list-flow li.link {
	padding: 0 24px;
}

/* -----------------------------------------------------
 * parts: list info
 * -------------------------------------------------- */

.p-list-info .p-card-info {
	display: grid;
	grid-template-rows: subgrid;
	gap: 0;
}

.p-list-info.homeinfo .p-card-info {
	grid-row: span 4;
}

.p-list-info.homeinfo .p-card-info-link {
	width: 100%;
}

/* -----------------------------------------------------
 * parts: list intro
 * -------------------------------------------------- */

.p-list-intro {
	display: flex;
	flex-direction: column;
	gap: 32px 0;
}

/* -----------------------------------------------------
 * parts: list links
 * -------------------------------------------------- */

.p-list-links {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.p-list-links li {
	font-size: 1.4rem;
	line-height: 1.5714285714;
}

/* -----------------------------------------------------
 * parts: list news
 * -------------------------------------------------- */

.p-list-news {
	border-top: 2px solid #242424;
	border-bottom: 2px solid #242424;
}

.p-list-news li {
	display: grid;
	align-items: center;
	padding: 16px 0;
	border-bottom: 1px solid #dedede;
	grid-template-columns: 92px 1fr;
	justify-items: start;
	gap: 8px 10px;
}

.p-list-news li:last-child {
	border: none;
}

.p-list-news li time {
	display: block;
	font-family: 'Poppins', sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
}

.p-list-news li .title {
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
	letter-spacing: 0.025em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}

.p-list-news li .title a {
	display: inline-block;
	position: relative;
	padding-bottom: 0.3rem;
}

.p-list-news li .title a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

/* -----------------------------------------------------
 * parts: list other
 * -------------------------------------------------- */

.p-list-other .facilities {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
}

.p-list-other .facilities a {
	display: flex;
	position: relative;
	align-items: center;
	padding-bottom: 0.3rem;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.4285714286;
	gap: 0 8px;
}

.p-list-other .facilities a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.p-list-other .facilities a::before {
	content: '';
	display: block;
	position: relative;
	top: -2px;
	width: 6px;
	height: 9px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 5.252 8.754\'%3E%3Cpath id=\'パス_322\' fill=\'%23242424\' d=\'M6.743-4.632a.876.876 0 0 0 0-1.239l-3.5-3.5a.871.871 0 0 0-.954-.189.875.875 0 0 0-.541.809v7a.878.878 0 0 0 .541.809.876.876 0 0 0 .954-.189l3.5-3.5Z\' data-name=\'パス 322\' transform=\'translate(-1.747 9.627)\'/%3E%3C/svg%3E');
}

.p-list-other .sns {
	display: flex;
	justify-content: center;
	margin: 32px 0 0;
	gap: 0 8px;
}

.p-list-other .sns a {
	display: block;
	overflow: hidden;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #242424 no-repeat 50% 50%;
	white-space: nowrap;
	text-indent: 200%;
	transition: opacity 0.2s ease;
}

.p-list-other .sns a.x {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 16.179 14.625\'%3E%3Cpath id=\'パス_323\' fill=\'%23fff\' d=\'M13.683-14.062h2.482l-5.421 6.194L17.121.563h-4.992L8.216-4.549 3.744.563H1.259l5.8-6.627-6.114-8h5.116L9.594-9.39ZM12.811-.921h1.375L5.312-12.656H3.836Z\' data-name=\'パス 323\' transform=\'translate(-.942 14.063)\'/%3E%3C/svg%3E');
	background-size: auto 15px;
}

.p-list-other .sns a.fb {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 9.641 18\'%3E%3Cpath id=\'パス_324\' fill=\'%23fff\' d=\'m9.814-5.625.5-3.258H7.188V-11a1.629 1.629 0 0 1 1.837-1.76h1.421v-2.77a17.329 17.329 0 0 0-2.522-.22c-2.574 0-4.257 1.56-4.257 4.385v2.483H.8v3.258h2.866V2.25h3.522v-7.875Z\' data-name=\'パス 324\' transform=\'translate(-.805 15.75)\'/%3E%3C/svg%3E');
	background-size: auto 18px;
}

.p-list-other .sns a.line {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 22.363 21.356\'%3E%3Cpath id=\'パス_355\' fill=\'%23fff\' stroke=\'rgba(0,0,0,0)\' stroke-width=\'1\' d=\'M7625.785-462.045a.355.355 0 0 1-.287-.111.78.78 0 0 1-.055-.592v-.024c.021-.119.1-.57.132-.787l.021-.127a2.078 2.078 0 0 0-.034-.966c-.12-.295-.578-.449-.941-.527-5.177-.684-8.934-4.281-8.934-8.552 0-4.78 4.792-8.669 10.682-8.669s10.682 3.889 10.682 8.669a7.76 7.76 0 0 1-2.289 5.334 34.208 34.208 0 0 1-8.393 6.2 1.608 1.608 0 0 1-.584.152Zm4.714-14a.2.2 0 0 0-.2.2v4.657a.206.206 0 0 0 .2.209h3a.205.205 0 0 0 .205-.205v-.755a.205.205 0 0 0-.205-.205h-2.039v-.788h2.039a.2.2 0 0 0 .205-.2v-.757a.2.2 0 0 0-.205-.2h-2.039v-.788h2.039a.205.205 0 0 0 .205-.205v-.757a.2.2 0 0 0-.205-.2h-3Zm-4.2 2.1 2.135 2.88a.191.191 0 0 0 .052.052h.005a.031.031 0 0 1 .01.006h.006l.009.006H7628.546a.26.26 0 0 0 .052.007h.753a.2.2 0 0 0 .2-.205v-4.661a.2.2 0 0 0-.2-.2h-.759a.2.2 0 0 0-.2.2v2.77l-2.133-2.881a.069.069 0 0 0-.017-.021v-.006l-.01-.009-.008-.006a.027.027 0 0 1-.009-.01.029.029 0 0 1-.014-.007h-.005a.027.027 0 0 0-.012-.008h-.008l-.009-.006h-.008a.031.031 0 0 0-.013 0 .034.034 0 0 0-.012 0h-.797a.2.2 0 0 0-.2.2v4.661a.2.2 0 0 0 .2.205h.757a.2.2 0 0 0 .2-.205v-2.766Zm-2.477-2.1a.582.582 0 0 0-.581.583v3.9a.583.583 0 0 0 .581.585.585.585 0 0 0 .583-.585v-3.9a.584.584 0 0 0-.577-.58Zm-4.427 0a.2.2 0 0 0-.2.2v4.657a.206.206 0 0 0 .2.209h3a.205.205 0 0 0 .205-.205v-.755a.205.205 0 0 0-.205-.205h-2.04v-3.7a.2.2 0 0 0-.2-.2Z\' data-name=\'パス 355\' transform=\'translate(-7615.191 482.901)\'/%3E%3C/svg%3E');
	background-size: auto 21px;
}

/* -----------------------------------------------------
 * parts: list program
 * -------------------------------------------------- */

.p-list-program {
	margin: 24px 0 0;
}

/* -----------------------------------------------------
 * parts: list project
 * -------------------------------------------------- */

.p-list-project {
	counter-reset: projectctr;
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.p-list-project li {
	counter-increment: projectctr;
	display: grid;
}

.p-list-project li .title {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.p-list-project li .title .sup {
	display: flex;
	position: relative;
	align-items: center;
	padding-bottom: 12px;
	font-size: 2rem;
	font-weight: 700;
	gap: 0 8px;
}

.p-list-project li .title .sup::before {
	content: counter(projectctr, decimal-leading-zero) '.';
	font-family: 'Poppins', sans-serif;
	font-size: 2.4rem;
	font-weight: 400;
}

.p-list-project li .title .sup::after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 48px;
	height: 4px;
	background-color: #fdd000;
}

.p-list-project li .title .sup .num {
	font-family: 'Poppins', sans-serif;
	font-size: 2.4rem;
}

.p-list-project li .title .sup:has(.num)::before {
	display: none;
}

.p-list-project li .title .main {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-list-project li .c-figure {
	margin: 24px 0 0;
	border: 1px solid #acacac;
	border-radius: 8px;
}

.p-list-project li .c-paragraph {
	margin: 24px 0 0;
}

.p-list-project li .p-table {
	margin: 24px 0 0;
}

/* -----------------------------------------------------
 * parts: list report
 * -------------------------------------------------- */

.p-list-report {
	border-top: 2px solid #242424;
	border-bottom: 2px solid #242424;
}

.p-list-report li {
	display: flex;
	flex-direction: column;
	padding: 16px 0;
	border-bottom: 1px solid #dedede;
}

.p-list-report li:last-child {
	border: none;
}

.p-list-report li time {
	font-family: 'Poppins', sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
}

.p-list-report li .title {
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
	letter-spacing: 0.025em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}

.p-list-report li .c-btn {
	align-self: center;
	max-width: 240px;
	height: 45px;
	margin: 16px 0 0;
}

/* -----------------------------------------------------
 * parts: list sns
 * -------------------------------------------------- */

.p-list-sns {
	display: flex;
	justify-content: center;
	margin: 32px 0 0;
	gap: 0 8px;
}

.p-list-sns a {
	display: block;
	overflow: hidden;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #242424 no-repeat 50% 50%;
	white-space: nowrap;
	text-indent: 200%;
	transition: opacity 0.2s ease;
}

.p-list-sns a.x {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 16.179 14.625\'%3E%3Cpath id=\'パス_323\' fill=\'%23fff\' d=\'M13.683-14.062h2.482l-5.421 6.194L17.121.563h-4.992L8.216-4.549 3.744.563H1.259l5.8-6.627-6.114-8h5.116L9.594-9.39ZM12.811-.921h1.375L5.312-12.656H3.836Z\' data-name=\'パス 323\' transform=\'translate(-.942 14.063)\'/%3E%3C/svg%3E');
	background-size: auto 15px;
}

.p-list-sns a.fb {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 9.641 18\'%3E%3Cpath id=\'パス_324\' fill=\'%23fff\' d=\'m9.814-5.625.5-3.258H7.188V-11a1.629 1.629 0 0 1 1.837-1.76h1.421v-2.77a17.329 17.329 0 0 0-2.522-.22c-2.574 0-4.257 1.56-4.257 4.385v2.483H.8v3.258h2.866V2.25h3.522v-7.875Z\' data-name=\'パス 324\' transform=\'translate(-.805 15.75)\'/%3E%3C/svg%3E');
	background-size: auto 18px;
}

.p-list-sns a.line {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 22.363 21.356\'%3E%3Cpath id=\'パス_355\' fill=\'%23fff\' stroke=\'rgba(0,0,0,0)\' stroke-width=\'1\' d=\'M7625.785-462.045a.355.355 0 0 1-.287-.111.78.78 0 0 1-.055-.592v-.024c.021-.119.1-.57.132-.787l.021-.127a2.078 2.078 0 0 0-.034-.966c-.12-.295-.578-.449-.941-.527-5.177-.684-8.934-4.281-8.934-8.552 0-4.78 4.792-8.669 10.682-8.669s10.682 3.889 10.682 8.669a7.76 7.76 0 0 1-2.289 5.334 34.208 34.208 0 0 1-8.393 6.2 1.608 1.608 0 0 1-.584.152Zm4.714-14a.2.2 0 0 0-.2.2v4.657a.206.206 0 0 0 .2.209h3a.205.205 0 0 0 .205-.205v-.755a.205.205 0 0 0-.205-.205h-2.039v-.788h2.039a.2.2 0 0 0 .205-.2v-.757a.2.2 0 0 0-.205-.2h-2.039v-.788h2.039a.205.205 0 0 0 .205-.205v-.757a.2.2 0 0 0-.205-.2h-3Zm-4.2 2.1 2.135 2.88a.191.191 0 0 0 .052.052h.005a.031.031 0 0 1 .01.006h.006l.009.006H7628.546a.26.26 0 0 0 .052.007h.753a.2.2 0 0 0 .2-.205v-4.661a.2.2 0 0 0-.2-.2h-.759a.2.2 0 0 0-.2.2v2.77l-2.133-2.881a.069.069 0 0 0-.017-.021v-.006l-.01-.009-.008-.006a.027.027 0 0 1-.009-.01.029.029 0 0 1-.014-.007h-.005a.027.027 0 0 0-.012-.008h-.008l-.009-.006h-.008a.031.031 0 0 0-.013 0 .034.034 0 0 0-.012 0h-.797a.2.2 0 0 0-.2.2v4.661a.2.2 0 0 0 .2.205h.757a.2.2 0 0 0 .2-.205v-2.766Zm-2.477-2.1a.582.582 0 0 0-.581.583v3.9a.583.583 0 0 0 .581.585.585.585 0 0 0 .583-.585v-3.9a.584.584 0 0 0-.577-.58Zm-4.427 0a.2.2 0 0 0-.2.2v4.657a.206.206 0 0 0 .2.209h3a.205.205 0 0 0 .205-.205v-.755a.205.205 0 0 0-.205-.205h-2.04v-3.7a.2.2 0 0 0-.2-.2Z\' data-name=\'パス 355\' transform=\'translate(-7615.191 482.901)\'/%3E%3C/svg%3E');
	background-size: auto 21px;
}

/* -----------------------------------------------------
 * parts: list
 * -------------------------------------------------- */

.p-list {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

/* -----------------------------------------------------
 * parts: map
 * -------------------------------------------------- */

.p-map {
	width: auto;
	margin: 0 -16px;
}

.p-map iframe {
	display: block;
	width: 100%;
}

/* -----------------------------------------------------
 * parts: person
 * -------------------------------------------------- */

.p-person {
	margin: 24px 0 0;
}

.p-person figure figcaption {
	margin: 8px 0 0;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: right;
}

.p-person .contents {
	margin: 24px 0 0;
}

.p-person .heading {
	display: flex;
	flex-direction: column;
	padding: 0 0 24px;
	border-bottom: 1px solid #acacac;
	font-size: 2.4rem;
	font-weight: 700;
	gap: 8px;
}

.p-person .heading .sup {
	font-size: 1.4rem;
}

/* -----------------------------------------------------
 * parts: profile
 * -------------------------------------------------- */

.p-profile {
	display: flex;
	flex-direction: column;
	margin: 24px 0 0;
	gap: 32px 0;
}

.p-profile-place .contents > *:first-child {
	margin-top: 0;
}

.p-profile-place .contents > *:last-child {
	margin-bottom: 0;
}

.p-profile-place .heading {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-profile-person {
	display: grid;
	grid-template-columns: 130px 1fr;
	grid-template-rows: auto 1fr;
	grid-template-areas: 'image heading' 'contents contents';
	gap: 0 15px;
}

.p-profile-person figure {
	grid-area: image;
}

.p-profile-person .heading {
	display: flex;
	flex-direction: column;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.45;
	grid-area: heading;
	gap: 8px;
}

.p-profile-person .contents {
	margin: 24px 0 0;
	grid-area: contents;
}

.p-profile-person .contents > *:first-child {
	margin-top: 0;
}

.p-profile-person .contents > *:last-child {
	margin-bottom: 0;
}

/* -----------------------------------------------------
 * parts: refine
 * -------------------------------------------------- */

.p-refine {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 12px;
}

.p-refine-target {
	margin: 24px 0 0;
}

/* -----------------------------------------------------
 * component: slide artist
 * -------------------------------------------------- */

.p-slide-artist {
	margin: 32px -16px 0;
}

.p-slide-artist .splide__arrows {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 32px 0 0;
}

/* -----------------------------------------------------
 * component: slide controls
 * -------------------------------------------------- */

.p-slide-controls {
	display: flex;
	align-items: center;
	gap: 0 8px;
}

.p-slide-controls .prev,
.p-slide-controls .next,
.p-slide-controls .autoplay {
	cursor: pointer;
	display: block;
	overflow: hidden;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #242424 no-repeat 50% 50%;
	white-space: nowrap;
	text-indent: 200%;
	transition: opacity 0.2s ease;
}

.p-slide-controls .prev::after,
.p-slide-controls .next::after,
.p-slide-controls .autoplay::after {
	display: none;
}

.p-slide-controls .prev,
.p-slide-controls .next {
	position: static;
	margin: 0;
	background-size: auto 9px;
}

.p-slide-controls .prev {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 5.251 9.004\'%3E%3Cpath id=\'パス_327\' fill=\'%23fff\' d=\'M.97-5.03a.751.751 0 0 0 0 1.062l3.75 3.75a.751.751 0 0 0 1.062 0 .751.751 0 0 0 0-1.062L2.562-4.5 5.78-7.72a.751.751 0 0 0 0-1.062.751.751 0 0 0-1.062 0l-3.75 3.75Z\' data-name=\'パス 327\' transform=\'translate(-.751 9.002)\'/%3E%3C/svg%3E');
}

.p-slide-controls .next {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 5.251 9.004\'%3E%3Cpath id=\'パス_328\' fill=\'%23fff\' d=\'M6.53-5.03a.751.751 0 0 1 0 1.062L2.78-.218a.751.751 0 0 1-1.062 0 .751.751 0 0 1 0-1.062l3.22-3.22L1.72-7.72a.751.751 0 0 1 0-1.062.751.751 0 0 1 1.062 0l3.75 3.75Z\' data-name=\'パス 328\' transform=\'translate(-1.498 9.002)\'/%3E%3C/svg%3E');
}

.p-slide-controls .autoplay.is-playing {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 6.875 8.25\'%3E%3Cpath id=\'パス_329\' fill=\'%23fff\' d=\'M1.031-8.25A1.032 1.032 0 0 0 0-7.219v6.188A1.032 1.032 0 0 0 1.031 0h.688A1.032 1.032 0 0 0 2.75-1.031v-6.188A1.032 1.032 0 0 0 1.719-8.25Zm4.125 0a1.032 1.032 0 0 0-1.031 1.031v6.188A1.032 1.032 0 0 0 5.156 0h.688a1.032 1.032 0 0 0 1.031-1.031v-6.188A1.032 1.032 0 0 0 5.844-8.25Z\' data-name=\'パス 329\' transform=\'translate(0 8.25)\'/%3E%3C/svg%3E');
	background-size: 7px 9px;
}

.p-slide-controls .autoplay.is-paused {
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 6.753 11.255\'%3E%3Cpath id=\'パス_326\' fill=\'%23fff\' d=\'M8.67-5.955a1.127 1.127 0 0 0 0-1.593l-4.5-4.5a1.12 1.12 0 0 0-1.227-.243 1.126 1.126 0 0 0-.7 1.041v9a1.129 1.129 0 0 0 .7 1.041 1.126 1.126 0 0 0 1.227-.243l4.5-4.5Z\' data-name=\'パス 326\' transform=\'translate(-2.246 12.378)\'/%3E%3C/svg%3E');
	background-size: auto 9px;
}

.p-slide-controls .pagination {
	display: flex !important;
	position: static;
	width: auto;
	gap: 8px;
}

.p-slide-controls .pagination .bullet {
	cursor: pointer;
	display: block;
	width: 24px;
	height: 4px;
	margin: 0;
	border: 1px solid #242424;
	border-radius: 0;
	background-color: #242424;
	opacity: 1;
	transition: background-color 0.2s ease;
}

.p-slide-controls .pagination .bullet.is-active {
	background-color: #fdd000;
}

/* -----------------------------------------------------
 * component: slide info
 * -------------------------------------------------- */

.p-slide-info {
	margin: 32px -16px 0;
}

.p-slide-info .splide__arrows {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 32px 0 0;
}

/* -----------------------------------------------------
 * parts: switcher head
 * -------------------------------------------------- */

.p-switcher-head {
	border-bottom: 2px solid #242424;
}

.p-switcher-head-trigger {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2px;
}

.p-switcher-head-trigger li {
	width: 100%;
}

.p-switcher-head-trigger li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 73px;
	padding: 0 4px;
	border-radius: 8px 8px 0 0;
	background-color: #f1f1f1;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2857142857;
	text-align: center;
	transition: color 0.2s ease, background-color 0.2s ease;
	gap: 0 10px;
}

.p-switcher-head-trigger li a.u-font-en {
	font-size: 1.8rem;
}

.p-switcher-head-trigger li a .c-icon {
	width: 22px;
	height: 22px;
	transition: -webkit-filter 0.2s ease;
	transition: filter 0.2s ease;
	transition: filter 0.2s ease, -webkit-filter 0.2s ease;
}

.p-switcher-head-trigger li a:hover {
	background-color: #444;
	color: #fff;
}

.p-switcher-head-trigger li a:hover .c-icon {
	-webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
}

.p-switcher-head-trigger li.is-active a {
	background-color: #444;
	color: #fff;
}

.p-switcher-head-trigger li.is-active a .c-icon {
	-webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
}

/* -----------------------------------------------------
 * parts: switcher
 * -------------------------------------------------- */

.p-switcher-trigger {
	display: grid;
	margin: 0 -16px;
	border-bottom: 2px solid #242424;
	grid-template-columns: repeat(2, 1fr);
	gap: 2px;
}

.p-switcher-trigger li {
	width: 100%;
}

.p-switcher-trigger li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 73px;
	padding: 0 4px;
	border-radius: 8px 8px 0 0;
	background-color: #f1f1f1;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2857142857;
	transition: color 0.2s ease, background-color 0.2s ease;
	gap: 0 10px;
}

.p-switcher-trigger li a.u-font-en {
	font-size: 1.8rem;
}

.p-switcher-trigger li a .c-icon {
	position: relative;
	width: 22px;
	height: 22px;
	transition: -webkit-filter 0.2s ease;
	transition: filter 0.2s ease;
	transition: filter 0.2s ease, -webkit-filter 0.2s ease;
}

.p-switcher-trigger li a:hover {
	background-color: #444;
	color: #fff;
}

.p-switcher-trigger li a:hover .c-icon {
	-webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
}

.p-switcher-trigger li.is-active a {
	background-color: #444;
	color: #fff;
}

.p-switcher-trigger li.is-active a .c-icon {
	-webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
}

.p-switcher-contents {
	margin: 32px 0 0;
}

/* -----------------------------------------------------
 * parts: table history
 * -------------------------------------------------- */

.p-table-history thead th {
	padding: 0 10px 10px;
	font-size: 1.4rem;
	font-weight: 700;
}

.p-table-history tbody {
	border-top: 1px solid #242424;
	border-bottom: 1px solid #242424;
}

.p-table-history tbody th,
.p-table-history tbody td {
	padding: 16px;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
}

.p-table-history tbody th {
	font-family: 'Poppins', sans-serif;
	font-size: 2.4rem;
	font-weight: 500;
}

.p-table-history tbody td {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
	vertical-align: top;
}

.p-table-history tbody td span {
	display: inline-block;
}

.p-table-history tbody tr:last-child th {
	border-bottom: 0;
}

.p-table-history tbody tr *:last-child {
	border-right: none;
}

/* -----------------------------------------------------
 * parts: table
 * -------------------------------------------------- */

.p-table {
	border-top: 1px solid #acacac;
	border-bottom: 1px solid #acacac;
}

.p-table tr th,
.p-table tr td {
	padding: 16px;
	border-bottom: 1px solid #acacac;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
	vertical-align: top;
}

.p-table tr th:first-child,
.p-table tr td:first-child {
	padding-left: 0;
}

.p-table tr th:last-child,
.p-table tr td:last-child {
	padding-right: 0;
}

.p-table tr th.u-font-en,
.p-table tr td.u-font-en {
	font-size: 1.6rem;
}

.p-table tr:last-child th,
.p-table tr:last-child td {
	border: none;
}

/* -----------------------------------------------------
 * parts: tags
 * -------------------------------------------------- */

.p-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 4px 8px;
}

/* -----------------------------------------------------
 * parts: template
 * -------------------------------------------------- */

.p-template {
	clear: both;
}

.p-template::before {
	content: '';
	display: table;
	clear: both;
}

/* -----------------------------------------------------
 * parts: wysiwyg
 * -------------------------------------------------- */

.wp-block-post-content img,
.p-wysiwyg img {
	border-radius: 8px;
}

.wp-block-post-content img.alignleft,
.p-wysiwyg img.alignleft {
	float: left;
	margin: 0 20px 20px 0;
}

.wp-block-post-content img.alignright,
.p-wysiwyg img.alignright {
	float: right;
	margin: 0 0 20px 20px;
}

.wp-block-post-content img.aligncenter,
.p-wysiwyg img.aligncenter {
	display: block;
	margin: 20px auto;
}

.wp-block-post-content .wp-caption,
.p-wysiwyg .wp-caption {
	max-width: 100%;
	margin: 20px auto;
}

.wp-block-post-content .wp-caption img,
.p-wysiwyg .wp-caption img {
	width: 100%;
	margin: 0;
}

.wp-block-post-content .wp-caption .wp-caption-text,
.p-wysiwyg .wp-caption .wp-caption-text {
	margin: 0;
	padding: 10px;
	color: #666;
	font-size: 12px;
}

.wp-block-post-content .alignfull,
.p-wysiwyg .alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
}

.wp-block-post-content .alignwide,
.p-wysiwyg .alignwide {
	width: calc(100% + 100px);
	max-width: calc(100% + 100px);
	margin-left: -50px;
}

.wp-block-post-content .has-text-align-center,
.p-wysiwyg .has-text-align-center {
	text-align: center;
}

.wp-block-post-content .has-text-align-left,
.p-wysiwyg .has-text-align-left {
	text-align: left;
}

.wp-block-post-content .has-text-align-right,
.p-wysiwyg .has-text-align-right {
	text-align: right;
}

.wp-block-post-content .gallery,
.p-wysiwyg .gallery {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0;
	gap: 10px;
}

.wp-block-post-content .gallery .gallery-item,
.p-wysiwyg .gallery .gallery-item {
	flex: 1 1 calc(33.333% - 10px);
}

.wp-block-post-content .gallery .gallery-item img,
.p-wysiwyg .gallery .gallery-item img {
	width: 100%;
	height: auto;
	margin: 0;
}

.wp-block-post-content .gallery.gallery-columns-2 .gallery-item,
.p-wysiwyg .gallery.gallery-columns-2 .gallery-item {
	flex: 1 1 calc(50% - 10px);
}

.wp-block-post-content .gallery.gallery-columns-4 .gallery-item,
.p-wysiwyg .gallery.gallery-columns-4 .gallery-item {
	flex: 1 1 calc(25% - 10px);
}

.wp-block-post-content .size-thumbnail,
.wp-block-post-content .size-medium,
.wp-block-post-content .size-large,
.wp-block-post-content .size-full,
.p-wysiwyg .size-thumbnail,
.p-wysiwyg .size-medium,
.p-wysiwyg .size-large,
.p-wysiwyg .size-full {
	max-width: 100%;
	height: auto;
}

.wp-block-post-content .wp-more-tag,
.p-wysiwyg .wp-more-tag {
	display: inline-block;
	margin: 20px 0;
	padding: 8px 16px;
	border: 1px solid #ddd;
	border-radius: 4px;
	background-color: #f5f5f5;
	text-decoration: none;
}

.wp-block-post-content .entry-content img,
.p-wysiwyg .entry-content img {
	max-width: 100%;
	height: auto;
}

.wp-block-post-content .wp-block-image,
.p-wysiwyg .wp-block-image {
	margin: 20px 0;
}

.wp-block-post-content .wp-block-image.alignleft,
.p-wysiwyg .wp-block-image.alignleft {
	float: left;
	margin: 0 20px 20px 0;
}

.wp-block-post-content .wp-block-image.alignright,
.p-wysiwyg .wp-block-image.alignright {
	float: right;
	margin: 0 0 20px 20px;
}

.wp-block-post-content .wp-block-image.aligncenter,
.p-wysiwyg .wp-block-image.aligncenter {
	margin: 20px auto;
	text-align: center;
}

.wp-block-post-content .wp-block-quote,
.p-wysiwyg .wp-block-quote {
	margin: 20px 0;
	padding-left: 20px;
	border-left: 4px solid #ddd;
	font-style: italic;
}

.wp-block-post-content .wp-block-quote cite,
.p-wysiwyg .wp-block-quote cite {
	display: block;
	margin-top: 10px;
	color: #666;
	font-size: 0.875rem;
}

.wp-block-post-content .wp-block-table,
.p-wysiwyg .wp-block-table {
	margin: 20px 0;
}

.wp-block-post-content .wp-block-table table,
.p-wysiwyg .wp-block-table table {
	border-collapse: collapse;
	width: 100%;
}

.wp-block-post-content .wp-block-table table th,
.wp-block-post-content .wp-block-table table td,
.p-wysiwyg .wp-block-table table th,
.p-wysiwyg .wp-block-table table td {
	padding: 8px 12px;
	border: 1px solid #ddd;
	text-align: left;
}

.wp-block-post-content .wp-block-table table th,
.p-wysiwyg .wp-block-table table th {
	background-color: #f5f5f5;
	font-weight: bold;
}

.wp-block-post-content .has-small-font-size,
.p-wysiwyg .has-small-font-size {
	font-size: 0.875rem;
}

.wp-block-post-content .has-medium-font-size,
.p-wysiwyg .has-medium-font-size {
	font-size: 1.125rem;
}

.wp-block-post-content .has-large-font-size,
.p-wysiwyg .has-large-font-size {
	font-size: 1.5rem;
}

.wp-block-post-content .has-x-large-font-size,
.p-wysiwyg .has-x-large-font-size {
	font-size: 2rem;
}

.wp-block-post-content .has-text-color,
.p-wysiwyg .has-text-color {
	color: inherit;
}

.wp-block-post-content .has-background,
.p-wysiwyg .has-background {
	padding: 20px;
}

.wp-block-post-content > *:first-child,
.p-wysiwyg > *:first-child {
	margin-top: 0;
}

.wp-block-post-content p:empty,
.p-wysiwyg p:empty {
	display: none;
}

.wp-block-post-content h2:not(:first-child),
.wp-block-post-content h3:not(:first-child),
.wp-block-post-content h4:not(:first-child),
.wp-block-post-content h5:not(:first-child),
.p-wysiwyg h2:not(:first-child),
.p-wysiwyg h3:not(:first-child),
.p-wysiwyg h4:not(:first-child),
.p-wysiwyg h5:not(:first-child) {
	clear: both;
}

.wp-block-post-content h2:not([class]),
.wp-block-post-content h2[class^=u-],
.wp-block-post-content h2.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
.p-wysiwyg h2:not([class]),
.p-wysiwyg h2[class^=u-],
.p-wysiwyg h2.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
	margin: 40px 0 0;
	padding: 0 0 12px;
	border-bottom: 2px solid #242424;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.8333333333;
}

.wp-block-post-content h2:not([class]) + h4,
.wp-block-post-content h2[class^=u-] + h4,
.wp-block-post-content h2.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) + h4,
.p-wysiwyg h2:not([class]) + h4,
.p-wysiwyg h2[class^=u-] + h4,
.p-wysiwyg h2.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) + h4 {
	margin-top: 24px;
}

.wp-block-post-content h3:not([class]),
.wp-block-post-content h3.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
.p-wysiwyg h3:not([class]),
.p-wysiwyg h3.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
	margin: 40px 0 0;
	padding: 0 0 12px;
	border-bottom: 2px solid #242424;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.8333333333;
}

.wp-block-post-content h3:not([class]) + h4,
.wp-block-post-content h3.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) + h4,
.p-wysiwyg h3:not([class]) + h4,
.p-wysiwyg h3.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) + h4 {
	margin-top: 24px;
}

.wp-block-post-content h4:not([class]),
.wp-block-post-content h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
.p-wysiwyg h4:not([class]),
.p-wysiwyg h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
	position: relative;
	margin: 32px 0 0;
	padding: 0 0 0 24px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4444444444;
}

.wp-block-post-content h4:not([class])::before,
.wp-block-post-content h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-'])::before,
.p-wysiwyg h4:not([class])::before,
.p-wysiwyg h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-'])::before {
	content: '';
	display: block;
	position: absolute;
	top: 0.3em;
	left: 0;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background-color: #fdd000;
}

.wp-block-post-content h5:not([class]),
.wp-block-post-content h5.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
.p-wysiwyg h5:not([class]),
.p-wysiwyg h5.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
	margin: 16px 0 0;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.625;
}

.wp-block-post-content .c-heading,
.p-wysiwyg .c-heading {
	padding-bottom: 12px;
	font-size: 2.2rem;
}

.wp-block-post-content p,
.p-wysiwyg p {
	margin: 1em 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.wp-block-post-content p strong,
.p-wysiwyg p strong {
	font-size: 1.6rem;
}

.wp-block-post-content a:not([class])[target=_blank]::after,
.wp-block-post-content a[class^=u-][target=_blank]::after,
.wp-block-post-content a[class*=' u-'][target=_blank]::after,
.p-wysiwyg a:not([class])[target=_blank]::after,
.p-wysiwyg a[class^=u-][target=_blank]::after,
.p-wysiwyg a[class*=' u-'][target=_blank]::after {
	content: '';
	display: inline-block;
	position: relative;
	top: 0.1em;
	width: 0.9em;
	height: 0.9em;
	margin-left: 8px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 14 14\'%3E%3Cpath id=\'パス_351\' fill=\'%23242424\' d=\'M8.75-12.25a.874.874 0 0 0-.875.875.874.874 0 0 0 .875.875h2.261l-5.5 5.507a.876.876 0 0 0 0 1.239.876.876 0 0 0 1.239 0l5.5-5.507V-7a.874.874 0 0 0 .875.875A.874.874 0 0 0 14-7v-4.375a.874.874 0 0 0-.875-.875Zm-6.562.875A2.187 2.187 0 0 0 0-9.187v8.75A2.187 2.187 0 0 0 2.188 1.75h8.75a2.187 2.187 0 0 0 2.187-2.187V-3.5a.874.874 0 0 0-.875-.875.874.874 0 0 0-.875.875v3.063a.439.439 0 0 1-.437.437h-8.75a.439.439 0 0 1-.438-.437v-8.75a.439.439 0 0 1 .438-.437H5.25a.874.874 0 0 0 .875-.875.874.874 0 0 0-.875-.875Z\' data-name=\'パス 351\' transform=\'translate(0 12.25)\'/%3E%3C/svg%3E');
	-webkit-filter: invert(80%) sepia(5%) saturate(0%) hue-rotate(231deg) brightness(85%) contrast(92%);
	filter: invert(80%) sepia(5%) saturate(0%) hue-rotate(231deg) brightness(85%) contrast(92%);
}

.wp-block-post-content ul:not([class]),
.wp-block-post-content ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
.p-wysiwyg ul:not([class]),
.p-wysiwyg ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
	list-style-type: none;
	margin: 1em 0;
}

.wp-block-post-content ul:not([class]) li,
.wp-block-post-content ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li,
.p-wysiwyg ul:not([class]) li,
.p-wysiwyg ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li {
	position: relative;
	margin: 8px 0 0;
	padding-left: 1em;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.wp-block-post-content ul:not([class]) li::before,
.wp-block-post-content ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li::before,
.p-wysiwyg ul:not([class]) li::before,
.p-wysiwyg ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li::before {
	content: '';
	display: block;
	position: absolute;
	top: 0.6em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: transparent no-repeat 50% 50%/6px;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 6 6\'%3E%3Cpath id=\'パス_357\' fill=\'%23242424\' d=\'M3 0a3 3 0 1 1-3 3 3 3 0 0 1 3-3Z\' data-name=\'パス 357\'/%3E%3C/svg%3E');
}

.wp-block-post-content ol:not([class]),
.wp-block-post-content ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
.p-wysiwyg ol:not([class]),
.p-wysiwyg ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
	counter-reset: ctr;
	margin: 1em 0;
}

.wp-block-post-content ol:not([class]) li,
.wp-block-post-content ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li,
.p-wysiwyg ol:not([class]) li,
.p-wysiwyg ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li {
	counter-increment: ctr;
	position: relative;
	margin: 8px 0 0;
	padding-left: 22px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.wp-block-post-content ol:not([class]) li::before,
.wp-block-post-content ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li::before,
.p-wysiwyg ol:not([class]) li::before,
.p-wysiwyg ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li::before {
	content: counter(ctr);
	display: flex;
	position: absolute;
	top: 3px;
	left: 0;
	justify-content: center;
	align-items: center;
	width: 18px;
	height: 18px;
	border: 1px solid #242424;
	border-radius: 50%;
	font-size: 1.1rem;
	font-weight: 900;
	white-space: nowrap;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}

.wp-block-post-content a:not([class]),
.p-wysiwyg a:not([class]) {
	text-decoration: underline;
}

.wp-block-post-content a:not([class]):hover,
.p-wysiwyg a:not([class]):hover {
	text-decoration: none;
}

.wp-block-post-content .p-box,
.p-wysiwyg .p-box {
	margin: 16px 0 0;
}

.wp-block-post-content > .p-col,
.p-wysiwyg > .p-col {
	margin: 24px 0;
}

.wp-block-post-content blockquote,
.p-wysiwyg blockquote {
	margin: 30px 0;
	padding: 20px 30px;
	border-left: 4px solid #ddd;
	background: #f9f9f9;
	font-style: italic;
}

.wp-block-post-content blockquote p,
.p-wysiwyg blockquote p {
	margin: 0;
}

.wp-block-post-content blockquote cite,
.p-wysiwyg blockquote cite {
	display: block;
	margin-top: 10px;
	color: #666;
	font-size: 0.875rem;
	font-style: normal;
	text-align: right;
}

.wp-block-post-content blockquote cite:before,
.p-wysiwyg blockquote cite:before {
	content: '— ';
}

.wp-block-post-content address,
.p-wysiwyg address {
	margin: 1em 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5714285714;
}

.wp-block-post-content::after,
.p-wysiwyg::after {
	content: '';
	display: table;
	clear: both;
}

/* -----------------------------------------------------
 * js: 絞り込み機能
 * -------------------------------------------------- */

.js-refine.is-no-results::after {
	content: '該当する結果がありません';
	display: block;
	padding: 40px 20px;
	font-size: 1.6rem;
	font-weight: 400;
	text-align: center;
}

.js-refine-target > .is-hidden {
	display: none !important;
}

/* -----------------------------------------------------
 * js: スクロール登場アニメーション
 * -------------------------------------------------- */

.js-scroll-anim[data-anim=fade],
.js-scroll-anim-target[data-anim=fade] {
	opacity: 0;
	transition: opacity 1s ease-out;
}

.js-scroll-anim[data-anim=fade-up],
.js-scroll-anim-target[data-anim=fade-up] {
	opacity: 0;
	transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
	transition: opacity 1s ease-out, transform 1s ease-out;
	transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
	-webkit-transform: translateY(5rem);
	transform: translateY(5rem);
}

.js-scroll-anim[data-anim=fade-down],
.js-scroll-anim-target[data-anim=fade-down] {
	opacity: 0;
	transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
	transition: opacity 1s ease-out, transform 1s ease-out;
	transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
	-webkit-transform: translateY(-5rem);
	transform: translateY(-5rem);
}

.js-scroll-anim[data-anim=fade-right],
.js-scroll-anim > .js-scroll-anim-target[data-anim=fade-right] {
	opacity: 0;
	transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
	transition: opacity 1s ease-out, transform 1s ease-out;
	transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
	-webkit-transform: translateX(-5rem);
	transform: translateX(-5rem);
}

.js-scroll-anim[data-anim=clip-left],
.js-scroll-anim-target[data-anim=clip-left] {
	transition: -webkit-clip-path 1s ease;
	transition: clip-path 1s ease;
	transition: clip-path 1s ease, -webkit-clip-path 1s ease;
	-webkit-clip-path: inset(0 0 0 100%);
	clip-path: inset(0 0 0 100%);
}

.js-scroll-anim[data-anim=clip-right],
.js-scroll-anim-target[data-anim=clip-right] {
	transition: -webkit-clip-path 1s ease;
	transition: clip-path 1s ease;
	transition: clip-path 1s ease, -webkit-clip-path 1s ease;
	-webkit-clip-path: inset(0 100% 0 0);
	clip-path: inset(0 100% 0 0);
}

.js-scroll-anim[data-anim=clip-top],
.js-scroll-anim-target[data-anim=clip-top] {
	transition: -webkit-clip-path 1s ease;
	transition: clip-path 1s ease;
	transition: clip-path 1s ease, -webkit-clip-path 1s ease;
	-webkit-clip-path: inset(100% 0 0 0);
	clip-path: inset(100% 0 0 0);
}

.js-scroll-anim[data-anim=clip-bottom],
.js-scroll-anim-target[data-anim=clip-bottom] {
	transition: -webkit-clip-path 1s ease;
	transition: clip-path 1s ease;
	transition: clip-path 1s ease, -webkit-clip-path 1s ease;
	-webkit-clip-path: inset(0 0 100% 0);
	clip-path: inset(0 0 100% 0);
}

.js-scroll-anim[data-anim=blur],
.js-scroll-anim-target[data-anim=blur] {
	opacity: 0;
	transition: opacity 1s ease-out, -webkit-filter 1s ease-out;
	transition: opacity 1s ease-out, filter 1s ease-out;
	transition: opacity 1s ease-out, filter 1s ease-out, -webkit-filter 1s ease-out;
	-webkit-filter: blur(1rem);
	filter: blur(1rem);
}

.js-scroll-anim[data-anim=blur-down],
.js-scroll-anim-target[data-anim=blur-down] {
	opacity: 0;
	transition: opacity 1s ease-out, -webkit-filter 2s ease-out, -webkit-transform 1s ease;
	transition: opacity 1s ease-out, filter 2s ease-out, transform 1s ease;
	transition: opacity 1s ease-out, filter 2s ease-out, transform 1s ease, -webkit-filter 2s ease-out, -webkit-transform 1s ease;
	-webkit-transform: translateY(-7.5rem);
	transform: translateY(-7.5rem);
	-webkit-filter: blur(1rem);
	filter: blur(1rem);
}

.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=fade],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=fade] {
	opacity: 1;
}

.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=fade-up],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=fade-up],
.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=fade-down],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=fade-down] {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=fade-right],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=fade-right] {
	opacity: 1;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=blur],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=blur] {
	opacity: 1;
	-webkit-filter: blur(0);
	filter: blur(0);
}

.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=blur-down],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=blur-down] {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
	-webkit-filter: blur(0);
	filter: blur(0);
}

.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=clip-left],
.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=clip-right],
.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=clip-top],
.js-scroll-anim:is(.is-loaded *).is-anim-start[data-anim=clip-bottom],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=clip-left],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=clip-right],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=clip-top],
.js-scroll-anim:is(.is-loaded *).is-anim-start > .js-scroll-anim-target[data-anim=clip-bottom] {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

/* -----------------------------------------------------
 * js: タブ切り替えコンテンツ
 * -------------------------------------------------- */

/* -----------------------------------------------------
 * js: syntax-highlight (Prism.js)
 * -------------------------------------------------- */

.js-highlight:not(.syntax-highlight) {
	display: none;
}

.js-highlight.syntax-highlight {
	position: relative;
	overflow: hidden;
	margin: 20px 0;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.js-highlight.syntax-highlight pre[class*=language-] {
	margin: 0;
	padding: 16px;
	font-size: 1.4rem;
	line-height: 1.6;
}

.js-highlight.syntax-highlight pre[class*=language-] code[class*=language-] {
	font-size: inherit;
	line-height: inherit;
}

.js-highlight.syntax-highlight.line-numbers pre[class*=language-] {
	padding-left: 3.8em;
}

.js-highlight.syntax-highlight .code-toolbar {
	position: relative;
}

.js-highlight.syntax-highlight .code-toolbar .toolbar {
	position: absolute;
	top: 8px;
	right: 8px;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.js-highlight.syntax-highlight .code-toolbar .toolbar .toolbar-item button {
	cursor: pointer;
	padding: 4px 8px;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.9);
	color: #333;
	font-size: 1.2rem;
	transition: all 0.2s ease;
}

.js-highlight.syntax-highlight .code-toolbar .toolbar .toolbar-item button:hover {
	border-color: #007acc;
	background: #fff;
	color: #007acc;
}

.js-highlight.syntax-highlight .code-toolbar .toolbar .toolbar-item button:active {
	-webkit-transform: scale(0.95);
	transform: scale(0.95);
}

.js-highlight.syntax-highlight .code-toolbar:hover .toolbar {
	opacity: 1;
}

.p-wysiwyg .js-highlight.syntax-highlight {
	margin: 24px 0;
}

/* =====================================================
* Layout
* ================================================== */

/* -----------------------------------------------------
 * layout: article
 * -------------------------------------------------- */

.l-article {
	margin: 16px 0 0;
}

.l-article img {
	max-width: 100%;
}

.l-article-header,
.l-article-inner {
	padding: 0 16px;
}

.l-article-header {
	gap: 0 16px;
}

.l-article-header-sup {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
}

.l-article-header .time {
	font-family: 'Poppins', sans-serif;
	font-size: 1.8rem;
	font-weight: 400;
}

.l-article-header .p-list-sns,
.l-article-header .wp_social_bookmarking_light {
	margin: 8px 0 0;
	padding: 0;
}

.l-article-header .title {
	margin: 16px 0 0;
	font-size: 2.4rem;
	line-height: 1.5833333333;
}

.l-article-header .p-tags {
	margin-top: 16px;
}

.l-article-inner {
	margin-top: 24px;
}

.l-article-kv {
	margin: 0;
	border-radius: 8px;
}

.l-article-contents {
	position: relative;
	margin: 32px 0 0;
}

.l-article-contents .m-narrow {
	margin: 16px 0 0;
}

.l-article-contents-inner {
	position: relative;
	margin: 24px 0 0;
}

.l-article-contents-inner .p-box .heading {
	font-size: 2.4rem !important;
}

/* -----------------------------------------------------
 * layout: contents
 * -------------------------------------------------- */

.l-contents {
	padding: 0 0 64px;
}

/* -----------------------------------------------------
 * layout: fill
 * -------------------------------------------------- */

.l-fill {
	margin: 32px -16px 0;
	padding: 32px 16px;
	background-color: #f1f1f1;
}

.l-fill.p-narrow .l-fill-inner .title {
	font-size: 2rem;
}

.l-fill.p-wide {
	padding-top: 48px;
	padding-bottom: 48px;
}

.l-fill.p-wide hr {
	margin-top: 48px;
	margin-bottom: 48px;
}

.l-fill-inner .title {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	gap: 8px;
}

.l-fill-inner .title .c-icon {
	width: 28px;
	height: 28px;
}

.l-fill-inner .title2 {
	display: flex;
	justify-content: center;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

.l-fill-inner .l-section.m-middle {
	margin-top: 48px;
}

.l-fill hr {
	margin: 24px -16px;
	border: 0;
	border-bottom: 1px solid #acacac;
}

.l-fill-contents {
	margin: 24px 0 0;
}

.l-fill-contents .c-note {
	font-size: 1.2rem;
}

/* -----------------------------------------------------
 * layout: footcontents
 * -------------------------------------------------- */

.l-footcontens {
	margin-top: 64px;
	margin-bottom: -64px;
}

/* -----------------------------------------------------
 * layout: footer
 * -------------------------------------------------- */

.l-footer {
	padding: 64px 32px;
	background-color: #242424;
}

.l-footer-other {
	margin: 40px 0 0;
}

.l-footer-other .facilities li a {
	position: relative;
	padding-bottom: 0.3rem;
	color: #fff;
}

.l-footer-other .facilities li a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #fff;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.l-footer-other .facilities li a::before {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 5.252 8.754\'%3E%3Cpath id=\'パス_322\' fill=\'%23ffffff\' d=\'M6.743-4.632a.876.876 0 0 0 0-1.239l-3.5-3.5a.871.871 0 0 0-.954-.189.875.875 0 0 0-.541.809v7a.878.878 0 0 0 .541.809.876.876 0 0 0 .954-.189l3.5-3.5Z\' data-name=\'パス 322\' transform=\'translate(-1.747 9.627)\'/%3E%3C/svg%3E');
}

.l-footer-other .sns li a {
	background-color: #fff;
}

.l-footer-other .sns li a.x {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 16.179 14.625\'%3E%3Cpath id=\'パス_323\' fill=\'%23242424\' d=\'M13.683-14.062h2.482l-5.421 6.194L17.121.563h-4.992L8.216-4.549 3.744.563H1.259l5.8-6.627-6.114-8h5.116L9.594-9.39ZM12.811-.921h1.375L5.312-12.656H3.836Z\' data-name=\'パス 323\' transform=\'translate(-.942 14.063)\'/%3E%3C/svg%3E');
}

.l-footer-other .sns li a.fb {
	background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 9.641 18\'%3E%3Cpath id=\'パス_324\' fill=\'%23242424\' d=\'m9.814-5.625.5-3.258H7.188V-11a1.629 1.629 0 0 1 1.837-1.76h1.421v-2.77a17.329 17.329 0 0 0-2.522-.22c-2.574 0-4.257 1.56-4.257 4.385v2.483H.8v3.258h2.866V2.25h3.522v-7.875Z\' data-name=\'パス 324\' transform=\'translate(-.805 15.75)\'/%3E%3C/svg%3E');
}

.l-footer-links {
	margin: 40px 0 0;
}

.l-footer-links ul {
	display: flex;
	flex-direction: column;
	gap: 16px 0;
}

.l-footer-links ul li {
	text-align: center;
}

.l-footer-links ul li a {
	position: relative;
	padding-bottom: 0.3rem;
	color: #fff;
	font-size: 1.2rem;
	line-height: 2;
}

.l-footer-links ul li a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #fff;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.l-footer-info {
	display: flex;
	flex-direction: column;
	margin: 40px 0 0;
	gap: 16px 0;
}

.l-footer-info p {
	margin: 0;
}

.l-footer-info .copyright {
	color: #fff;
	font-family: 'Poppins', sans-serif;
	font-size: 1rem;
	font-weight: 400;
	text-align: center;
	white-space: wrap;
}

.l-footer-info .sup {
	color: #fff;
	font-size: 1.1rem;
	line-height: 1.6363636364;
	text-align: center;
}

.l-footer-info .sup a {
	color: #fff;
	text-decoration: underline;
}

/* -----------------------------------------------------
 * layout: header
 * -------------------------------------------------- */

.l-header {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 64px;
}

.l-header::before {
	content: '';
	display: block;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 64px;
	background-color: #fff;
}

.l-header-inner {
	display: grid;
	grid-template-rows: auto 1fr;
}

.l-header-logo {
	position: absolute;
	z-index: 2;
	top: 16px;
	left: 16px;
	width: 98px;
	height: 32px;
}

.l-header-logo a {
	display: block;
	width: 100%;
	height: 100%;
	transition: opacity 0.2s ease;
}

.l-header-logo a img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.l-header-controls {
	display: flex;
	position: absolute;
	z-index: 2;
	top: 8px;
	right: 16px;
	align-items: center;
	gap: 0 8px;
}

.l-header-controls .control-search {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	transition: background-color 0.2s ease;
}

.l-header-controls .control-search::before,
.l-header-controls .control-search::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 32px;
	height: 3px;
	background-color: #242424;
	opacity: 0;
	transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
	transition: transform 0.2s ease, opacity 0.2s ease;
	transition: transform 0.2s ease, opacity 0.2s ease, -webkit-transform 0.2s ease;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}

.l-header-controls .control-search .c-icon {
	display: block;
	width: 22px;
	height: 22px;
	transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
	transition: transform 0.2s ease, opacity 0.2s ease;
	transition: transform 0.2s ease, opacity 0.2s ease, -webkit-transform 0.2s ease;
}

.is-searchform-open .l-header-controls .control-search {
	background-color: #f1f1f1;
}

.is-searchform-open .l-header-controls .control-search .c-icon {
	opacity: 0;
	-webkit-transform: scale3d(1, 0, 0);
	transform: scale3d(1, 0, 0);
}

.is-searchform-open .l-header-controls .control-search::before {
	opacity: 1;
	-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(45deg);
	transform: translate3d(-50%, -50%, 0) rotateZ(45deg);
}

.is-searchform-open .l-header-controls .control-search::after {
	opacity: 1;
	-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(-45deg);
	transform: translate3d(-50%, -50%, 0) rotateZ(-45deg);
}

.l-header-controls .p-searchform {
	width: 220px;
	height: 32px;
}

.l-header-controls .p-searchform input {
	height: 32px;
}

.l-header-controls .control-hamburger {
	display: block;
	position: relative;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	transition: background-color 0.2s ease;
}

.l-header-controls .control-hamburger span,
.l-header-controls .control-hamburger::before,
.l-header-controls .control-hamburger::after {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 32px;
	height: 3px;
	background-color: #242424;
}

.l-header-controls .control-hamburger::before,
.l-header-controls .control-hamburger::after {
	content: '';
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}

.l-header-controls .control-hamburger::before {
	-webkit-transform: translate3d(-50%, calc(-8px - 50%), 0);
	transform: translate3d(-50%, calc(-8px - 50%), 0);
}

.l-header-controls .control-hamburger::after {
	-webkit-transform: translate3d(-50%, calc(8px - 50%), 0);
	transform: translate3d(-50%, calc(8px - 50%), 0);
}

.l-header-controls .control-hamburger span {
	transition: 0.7 0.2s ease;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}

.is-menu-open .l-header-controls .control-hamburger {
	background-color: #f1f1f1;
}

.is-menu-open .l-header-controls .control-hamburger::before {
	-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(-45deg);
	transform: translate3d(-50%, -50%, 0) rotateZ(-45deg);
}

.is-menu-open .l-header-controls .control-hamburger::after {
	-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(45deg);
	transform: translate3d(-50%, -50%, 0) rotateZ(45deg);
}

.is-menu-open .l-header-controls .control-hamburger span {
	opacity: 0;
}

.l-header-searchform,
.l-header .p-searchform {
	display: grid;
	align-items: center;
	background-color: #fff;
	grid-template-columns: auto 1fr;
	grid-template-areas: 'btn input';
}

.l-header-searchform .form-group:nth-child(1),
.l-header .p-searchform .form-group:nth-child(1) {
	grid-area: input;
}

.l-header-searchform .form-group:nth-child(2),
.l-header .p-searchform .form-group:nth-child(2) {
	grid-area: btn;
}

.l-header-searchform input,
.l-header .p-searchform input {
	width: 100%;
	font-size: 1.6rem;
}

.l-header-searchform input:-ms-input-placeholder,
.l-header .p-searchform input:-ms-input-placeholder {
	color: #6e6e6e;
}

.l-header-searchform input:placeholder-shown,
.l-header .p-searchform input:placeholder-shown {
	color: #6e6e6e;
}

.l-header-searchform input::-webkit-input-placeholder,
.l-header .p-searchform input::-webkit-input-placeholder {
	color: #6e6e6e;
}

.l-header-searchform input:-moz-placeholder,
.l-header .p-searchform input:-moz-placeholder {
	opacity: 1;
	color: #6e6e6e;
}

.l-header-searchform input::-moz-placeholder,
.l-header .p-searchform input::-moz-placeholder {
	opacity: 1;
	color: #6e6e6e;
}

.l-header-searchform input:-ms-input-placeholder,
.l-header .p-searchform input:-ms-input-placeholder {
	color: #6e6e6e;
}

.l-header-searchform .btn,
.l-header .p-searchform .btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 34px;
	height: 34px;
}

.l-header-searchform .btn .c-icon,
.l-header .p-searchform .btn .c-icon {
	width: 18px;
	height: 18px;
}

.l-header-searchform {
	width: 100%;
	height: 40px;
}

.l-header-searchform input {
	height: 40px;
}

.l-header-upper {
	margin: 32px 0 0;
	grid-area: other;
}

.l-header-upper .p-searchform {
	display: none;
}

.l-header-nav {
	grid-area: nav;
}

/* -----------------------------------------------------
 * layout: links
 * -------------------------------------------------- */

.l-links {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 32px 0 0;
	gap: 8px;
}

.l-links.m-narrow {
	margin: 24px 0 0;
}

/* -----------------------------------------------------
 * layout: main
 * -------------------------------------------------- */

.l-main {
	flex-grow: 1;
	min-width: 320px;
	background-color: #fff;
}

.l-main::after {
	content: '';
	display: block;
	position: fixed;
	z-index: 5;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0);
	transition: background-color 0.3s ease;
	pointer-events: none;
}

.is-menu-open .l-main::after,
.is-searchform-open .l-main::after {
	background-color: rgba(0, 0, 0, 0.1);
	pointer-events: visible;
}

/* -----------------------------------------------------
 * layout: morelink
 * -------------------------------------------------- */

.l-morelink {
	display: flex;
	justify-content: flex-end;
	pointer-events: none;
}

.l-morelink .c-link {
	position: relative;
	top: -1rem;
	font-weight: 700;
	pointer-events: visible;
}

/* -----------------------------------------------------
 * layout: section
 * - 入れ子の場合は.l-section-innerは不要
 * -------------------------------------------------- */

.l-section {
	margin: 64px 0 0;
}

.l-section.m-narrow {
	margin: 32px 0 0;
}

.l-section.m-middle {
	margin: 48px 0 0;
}

.l-section-inner {
	padding: 0 16px;
}

.l-section-contents {
	position: relative;
	margin: 32px 0 0;
}

.l-section-contents .m-narrow {
	margin: 16px 0 0;
}

.l-section-contents-inner {
	position: relative;
	margin: 24px 0 0;
}

.l-section-contents-inner.m-wide {
	margin: 48px 0 0;
}

/* -----------------------------------------------------
 * layout: wrapper
 * -------------------------------------------------- */

.l-wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	padding-top: var(--header-height);
}

/* =====================================================
 * Page
 * ================================================== */

/* -----------------------------------------------------
 * home
 * -------------------------------------------------- */

.p-home-kv-wrapper {
	position: relative;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide {
	display: flex;
	flex-direction: column;
	transition: opacity 1s ease;
	pointer-events: none;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide figure {
	position: relative;
	z-index: 0;
	width: 100%;
	opacity: 0;
	transition: opacity 0.75s ease;
	aspect-ratio: 375/188;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide figure img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide figure .sup {
	position: absolute;
	right: 16px;
	bottom: 24px;
	opacity: 0;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 400;
	transition: opacity 0.5s ease;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide figure .sup.is-start-anim {
	opacity: 1;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide figure.is-start-anim {
	opacity: 1;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide .link {
	display: flex;
	position: relative;
	z-index: 5;
	justify-content: flex-start;
	align-self: self-start;
	width: calc(100% - 16px);
	margin-top: -16px;
	padding: 16px;
	border-radius: 0 8px 8px 0;
	background-color: #fdd000;
	transition: -webkit-clip-path 0.3s ease;
	transition: clip-path 0.3s ease;
	transition: clip-path 0.3s ease, -webkit-clip-path 0.3s ease;
	-webkit-clip-path: inset(0 100% 0 0);
	clip-path: inset(0 100% 0 0);
}

.p-home-kv-slide .swiper-wrapper .swiper-slide .link a {
	display: grid;
	position: relative;
	padding-bottom: 0.3rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4444444444;
	pointer-events: visible;
	grid-template-columns: 7px 1fr;
	gap: 0 8px;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide .link a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #242424;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.p-home-kv-slide .swiper-wrapper .swiper-slide .link a::before {
	content: '';
	display: block;
	position: relative;
	top: 0.45em;
	width: 7px;
	height: 12px;
	background: no-repeat 50% 50%/contain;
	background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 6.753 11.255\'%3E%3Cpath id=\'パス_326\' fill=\'%23242424\' d=\'M8.67-5.955a1.127 1.127 0 0 0 0-1.593l-4.5-4.5a1.12 1.12 0 0 0-1.227-.243 1.126 1.126 0 0 0-.7 1.041v9a1.129 1.129 0 0 0 .7 1.041 1.126 1.126 0 0 0 1.227-.243l4.5-4.5Z\' data-name=\'パス 326\' transform=\'translate(-2.246 12.378)\'/%3E%3C/svg%3E');
}

.p-home-kv-slide .swiper-wrapper .swiper-slide .link.is-start-anim {
	transition: -webkit-clip-path 1s ease;
	transition: clip-path 1s ease;
	transition: clip-path 1s ease, -webkit-clip-path 1s ease;
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

.p-home-kv-slide .swiper-wrapper .swiper-slide.is-fadeout {
	opacity: 0;
}

.p-home-kv .p-slide-controls {
	justify-content: flex-end;
	padding: 16px 16px 0 0;
}

.p-home-about .l-section-inner {
	display: grid;
	gap: 64px 0;
}

.p-home-about-contents *:first-child {
	margin-top: 0;
}

.p-home-about-contents p {
	margin: 1.5em 0 0;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2;
}

.p-home-about-image {
	margin: 0 -16px 0 0;
}

.p-home-business-consult .contents .p-col {
	gap: 48px 0;
}

.p-home-business-consult .contents .p-col > * {
	position: relative;
}

.p-home-business-consult .contents .p-col > *:nth-child(1)::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -24px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #dedede;
}

.p-home-business-consult .contents .p-html ul li {
	padding-left: 1.25em;
}

.p-home-business-consult .contents .p-html ul li::before {
	top: 0.4em;
	width: 14px;
	height: 14px;
}

/* =====================================================
 * utilities
 * ================================================== */

/* -----------------------------------------------------
 * Display
 * -------------------------------------------------- */

.u-visually-hidden {
	position: absolute !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	border: 0 !important;
	white-space: nowrap !important;
}

.u-jc-start {
	justify-content: flex-start !important;
}

.u-jc-center {
	justify-content: center !important;
}

.u-jc-end {
	justify-content: flex-end !important;
}

.u-ai-start {
	justify-content: flex-start !important;
}

.u-ai-center {
	justify-content: center !important;
}

.u-ai-end {
	justify-content: flex-end !important;
}

/* -----------------------------------------------------
 * Filter
 * -------------------------------------------------- */

.u-fl-white {
	-webkit-filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(73deg) brightness(150%) contrast(100%);
}

.u-fl-yellow {
	-webkit-filter: invert(78%) sepia(91%) saturate(3504%) hue-rotate(354deg) brightness(95%) contrast(109%);
	filter: invert(78%) sepia(91%) saturate(3504%) hue-rotate(354deg) brightness(95%) contrast(109%);
}

.u-fl-red {
	-webkit-filter: invert(16%) sepia(85%) saturate(5412%) hue-rotate(342deg) brightness(84%) contrast(98%);
	filter: invert(16%) sepia(85%) saturate(5412%) hue-rotate(342deg) brightness(84%) contrast(98%);
}

.u-fl-blue {
	-webkit-filter: invert(21%) sepia(97%) saturate(2280%) hue-rotate(193deg) brightness(88%) contrast(107%);
	filter: invert(21%) sepia(97%) saturate(2280%) hue-rotate(193deg) brightness(88%) contrast(107%);
}

/* -----------------------------------------------------
 * Margin
 * -------------------------------------------------- */

.u-mt-0 {
	margin-top: 0 !important;
}

.u-mt-4 {
	margin-top: 4px !important;
}

.u-mt-8 {
	margin-top: 8px !important;
}

/* -----------------------------------------------------
 * Text
 * -------------------------------------------------- */

/* font-family
---------------------------------------- */

.u-font-en {
	font-family: 'Poppins', sans-serif !important;
}

.u-font-ja {
	font-family: 'Noto Sans JP', sans-serif !important;
}

/* font-weight
---------------------------------------- */

.u-weight-bold {
	font-weight: bold !important;
}

/* text-align
---------------------------------------- */

.u-al-left {
	text-align: left !important;
}

.u-al-center {
	text-align: center !important;
}

.u-al-right {
	text-align: right !important;
}

.u-al-justify {
	text-align: justify !important;
}

/* writing-mode
---------------------------------------- */

.u-wm-rl {
	-ms-writing-mode: tb-rl !important;
	-webkit-writing-mode: vertical-rl !important;
	writing-mode: vertical-rl !important;
}

@media screen and (min-width: 768px) {
	.c-btn {
		max-width: 320px;
		min-height: 64px;
		padding: 5px 32px 5px 24px;
		font-size: 1.6rem;
		line-height: 1.375;
	}

	.c-btn::after {
		width: 7px;
		height: 12px;
		margin: -6px 0 0;
	}

	.c-btn.fill {
		height: 80px;
		font-size: 2.2rem;
	}

	.c-btn.fill::after {
		width: 11px;
		height: 18px;
		margin: -9px 0 0;
	}

	.c-btn.innerlink {
		padding: 0 24px 0 28px;
	}

	.c-btn.innerlink::after {
		width: 11px;
		height: 12px;
	}

	.c-btn.reverse {
		padding: 0 24px 0 28px;
	}

	.c-btn.middle {
		min-height: 52px;
	}

	.c-heading {
		margin: 80px 0 0;
		font-size: 2.8rem;
	}

	.c-heading-border {
		margin: 40px 0 0;
	}

	.c-heading-border-l {
		margin: 48px 0 0;
		font-size: 2.8rem;
	}

	.c-heading-circle {
		padding: 0 0 0 28px;
		font-size: 2rem;
	}

	.c-heading-circle::before {
		width: 16px;
		height: 16px;
	}

	.c-label {
		min-height: 36px;
		border-radius: 18px;
		font-size: 1.4rem;
	}

	.c-label.entry {
		width: 176px;
	}

	.c-lead {
		margin: 48px 0 0;
		font-size: 1.8rem;
		line-height: 1.6111111111;
	}

	.p-wysiwyg .c-note,
  .c-note {
		margin: 24px 0 0;
	}

	.c-step .num,
  .c-step::after {
		font-size: 3.2rem;
	}

	.p-ac-box {
		margin: 32px 0 0;
	}

	.p-ac-box-trigger {
		font-size: 1.6rem;
	}

	.p-access-info {
		margin: 48px 0 0;
	}

	.p-banner {
		flex-direction: row;
		justify-content: center;
		align-items: center;
		margin: 36px 0 0;
		gap: 24px;
	}

	.p-banner .c-figure {
		width: auto;
		margin: 0;
	}

	.p-box-link {
		padding: 34px 40px 40px;
	}

	.p-box-link .heading a {
		font-size: 2.4rem;
		gap: 0 16px;
	}

	.p-box-link .heading a::before {
		width: 11px;
		height: 18px;
	}

	.p-box-link .c-paragraph {
		margin: 20px 0 0;
	}

	.p-box {
		padding: 40px;
	}

	.p-box .heading-2 {
		flex-direction: row;
		justify-content: center;
		align-items: center;
		gap: 0 16px;
	}

	.p-box .heading-2 .c-icon {
		height: 28px;
	}

	.p-box .heading-border {
		padding-bottom: 12px;
		font-size: 2rem;
	}

	.p-box .contents {
		margin: 40px 0 auto;
	}

	.p-box .contents.bg-white {
		padding: 32px;
	}

	.p-box .contents .heading {
		font-size: 2rem !important;
	}

	.p-box .contents .c-paragraph.p-col {
		flex-direction: row;
		justify-content: center;
		gap: 48px;
	}

	.p-box .contents .c-paragraph.p-col.m-narrow {
		margin: 16px 0 0;
	}

	.p-box .link {
		margin: 32px 0 0;
	}

	.p-box.arrow-down::after {
		width: 40px;
		height: 20px;
	}

	.p-breadcrumbs ol {
		padding: 8px 40px;
	}

	.p-card-artist {
		display: grid;
		padding: 40px;
		grid-template-columns: 368px 1fr;
		grid-template-areas: 'image name' 'image dl' 'image label' 'image link' 'text text';
		gap: 0 48px;
	}

	.p-card-artist .c-figure {
		grid-area: image;
		aspect-ratio: 368/276;
	}

	.p-card-artist .name {
		margin: 0;
		padding-bottom: 16px;
		font-size: 2.4rem;
		line-height: 1.25;
		grid-area: name;
	}

	.p-card-artist .p-dl {
		margin: 24px 0 0;
		grid-area: dl;
	}

	.p-card-artist .p-labels {
		margin: 24px 0 0;
		grid-area: label;
	}

	.p-card-artist .c-paragraph {
		margin: 32px 0 0;
		grid-area: text;
	}

	.p-card-artist .link {
		display: flex;
		justify-content: flex-end;
		margin: 14px 0 0;
		grid-area: link;
	}

	.p-card-artist.header {
		grid-template-columns: 600px 1fr;
		grid-template-areas: 'image related' 'image name' 'image dl' 'image label' 'image text';
	}

	.p-card-artist.header .related {
		display: grid;
		grid-area: related;
	}

	.p-card-artist.header .related .p-list-sns,
  .p-card-artist.header .related .wp_social_bookmarking_light {
		margin: 24px 0 0;
	}

	.p-card-artist.header .name {
		margin: 32px 0 0;
		font-size: 3.2rem;
	}

	.p-card-artist-simple .name {
		margin: 18px 0 0;
		font-size: 2.2rem;
	}

	.p-card-artist-simple .year {
		font-size: 1.6rem;
	}

	.p-card-business figure {
		aspect-ratio: 368/276;
	}

	.p-card-business .title {
		font-size: 2.2rem;
		line-height: 1.4583333333;
	}

	.p-card-grants {
		padding: 40px 40px 32px;
	}

	.p-card-grants.wide {
		display: grid;
		align-items: center;
		grid-template-columns: auto 1fr;
		grid-template-areas: 'labels title' 'text text' 'link link';
		gap: 0 24px;
	}

	.p-card-grants.wide .p-labels {
		grid-area: labels;
	}

	.p-card-grants.wide .title {
		grid-area: title;
	}

	.p-card-grants.wide .c-paragraph {
		grid-area: text;
	}

	.p-card-grants.wide .l-links {
		grid-area: link;
	}

	.p-card-grants .p-labels .c-label {
		height: 39px;
		border-radius: 20px;
	}

	.p-card-grants .title {
		margin: 0;
	}

	.p-card-grants .c-paragraph {
		margin: 32px 0 0;
	}

	.p-list-box .p-card-grants {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 4;
		gap: 0;
	}

	.p-list-box .p-card-grants .p-labels .c-label {
		height: 36px;
		font-size: 1.4rem;
	}

	.p-list-box .p-card-grants .title {
		font-size: 2rem;
		line-height: 1.5;
	}

	.p-list-box .p-card-grants .l-links {
		margin: 24px 0 0;
	}

	.p-list-box .p-card-grants .l-links .c-btn {
		width: 240px;
		height: 56px;
	}

	.p-card-info .c-figure {
		aspect-ratio: 368/276;
	}

	.p-card-info-sup time {
		font-size: 1.6rem;
	}

	.p-card-info-contents .title {
		display: -webkit-box;
		overflow: hidden;
		font-size: 2rem;
		line-height: 1.4583333333;
		word-wrap: break-word;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow-wrap: break-word;
	}

	.p-card-info-link {
		margin: 24px auto 0;
	}

	.p-card-info-link .c-btn {
		width: 240px;
		height: 56px;
	}

	.p-card-intro .p-box {
		padding: 40px 24px 24px;
	}

	.p-card-office .title {
		font-size: 2rem;
	}

	.p-card-office .addr {
		font-size: 1.6rem;
	}

	.p-card-office .photographer {
		font-size: 1.4rem;
	}

	.p-card-office p {
		font-size: 1.6rem;
	}

	.p-card-program {
		grid-template-columns: auto;
		grid-template-areas: 'image' 'title' 'text' 'link';
	}

	.p-card-program .title {
		margin: 16px 0 0;
		font-size: 2.2rem;
		line-height: 1.4583333333;
	}

	.p-card-program .link {
		margin: 24px 0 0;
	}

	.p-card-program .link .c-btn {
		width: 240px;
		height: 56px;
	}

	.p-card-slide-artist {
		width: 368px;
	}

	.p-card-slide-artist .c-figure {
		aspect-ratio: 368/276;
	}

	.p-card-slide-artist .name {
		font-size: 2.2rem;
	}

	.p-card-slide-artist .link .c-btn {
		width: 240px;
		height: 56px;
	}

	.p-card-slide-info {
		width: 368px;
	}

	.p-card-slide-info .c-figure {
		aspect-ratio: 368/276;
	}

	.p-card-slide-info .name {
		font-size: 2.2rem;
	}

	.p-card-slide-info .link .c-btn {
		width: 240px;
		height: 56px;
	}

	.p-check-tags-trigger {
		display: none;
	}

	.p-col {
		grid-template-columns: repeat(2, 1fr);
		gap: 48px 40px;
	}

	.p-col.gap-wide {
		gap: 48px 80px;
	}

	.p-col.col-3 {
		grid-template-columns: repeat(3, 1fr);
		gap: 48px;
	}

	.p-col.col-4 {
		grid-template-columns: repeat(4, 1fr);
		gap: 40px 32px;
	}

	.p-col.col-5 {
		grid-template-columns: repeat(5, 1fr);
		gap: 40px 32px;
	}

	.p-date-picker {
		flex-direction: row;
		width: 100%;
		gap: 24px;
	}

	.p-date-picker-inner {
		width: 100%;
	}

	.p-dl {
		align-items: start;
		grid-template-columns: auto 1fr;
		justify-items: normal;
	}

	.p-dl dt {
		margin: 0;
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.p-dl dd {
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.p-fixed-table {
		margin: 64px 0 0;
	}

	.p-fixed-table-note {
		display: none;
	}

	.p-form-inner {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 40px 80px;
	}

	.p-form-body-inner {
		display: grid;
		align-items: start;
		grid-template-columns: 240px 1fr;
		gap: 0 64px;
	}

	.p-form-body .form {
		margin: 0;
	}

	.p-form-body .form .title {
		margin: 16px 0 0;
	}

	.p-form-note {
		padding: 40px;
	}

	.p-full-image {
		height: 440px;
		margin: 120px 0 0;
	}

	.l-section-inner .p-full-image {
		margin: 48px -40px 0;
	}

	.p-full-image figcaption {
		right: 80px;
	}

	.p-header {
		padding: 16px 40px 48px;
	}

	.p-header-article {
		padding: 24px 0 48px;
	}

	.p-header-article-inner {
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 40px;
	}

	.p-header-article-sup .p-labels .c-label.entry {
		min-width: 176px;
	}

	.p-header-article .title {
		margin: 24px 0 0;
		font-size: 2.8rem;
	}

	.p-header-article .category {
		font-size: 1.4rem;
	}

	.p-header-article .lead {
		margin: 24px 0 0;
	}

	.p-html p {
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.p-html ul li {
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.p-innerlinks {
		margin: 64px 0 0;
		padding: 0 40px;
	}

	.p-innerlinks ul {
		flex-direction: row;
		flex-wrap: wrap;
		max-width: 1200px;
		margin: 0 auto;
		padding: 16px 16px 13px !important;
		gap: 8px 49px;
	}

	.p-innerlinks ul li {
		border: 0;
	}

	.p-innerlinks ul li::before {
		display: none !important;
	}

	.p-innerlinks ul li::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		right: -24px;
		width: 1px;
		height: calc(100% - 3px);
		background-color: #acacac;
	}

	.p-innerlinks ul li:last-child::after {
		display: none;
	}

	.p-innerlinks ul li a {
		padding: 0 0 3px !important;
		font-size: 1.6rem;
	}

	.p-innerlinks ul li a::before {
		width: 11px;
		height: 12px;
	}

	.p-labels {
		gap: 6px 8px;
	}

	.p-links-documents.p-col.col-4 {
		gap: 24px 32px;
	}

	.p-list-banner {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}

	.p-list-banner.section li .title2 {
		align-items: center;
	}

	.p-list-banner li {
		max-width: 285px;
	}

	.p-list-banner li .title,
  .p-list-banner li .title2 {
		margin-bottom: 24px;
	}

	.p-list-banner li .c-figure {
		width: 285px;
		height: auto;
		aspect-ratio: 325/100;
	}

	.p-list-box {
		display: grid;
		margin: 48px 0 0;
		grid-template-columns: repeat(3, 1fr);
		gap: 48px;
	}

	.p-list-business .p-card-business {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 3;
		gap: 0;
	}

	.p-list-flow {
		gap: 32px;
	}

	.p-list-flow li.col {
		display: grid;
		grid-template-columns: 1fr 368px;
		gap: 0 48px;
	}

	.p-list-flow li .heading {
		flex-direction: row;
		gap: 24px;
	}

	.p-list-flow li .c-step {
		padding-right: 24px;
		border-right: 1px solid #acacac;
	}

	.p-list-flow li .c-step::before {
		border: none;
	}

	.p-list-flow li .c-figure {
		margin: 0;
	}

	.p-list-flow li.link {
		padding: 0;
	}

	.p-list-intro {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 48px 1px;
	}

	.p-list-news li {
		padding: 24px 40px;
		grid-template-columns: auto 144px 1fr;
		gap: 0 32px;
	}

	.p-list-news li time {
		width: 92px;
		font-size: 1.6rem;
	}

	.p-list-news li .title {
		margin: 0;
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.p-list-other {
		display: flex;
		gap: 0 24px;
	}

	.p-list-other .facilities {
		flex-direction: row;
		align-items: center;
		gap: 0 24px;
	}

	.p-list-other .facilities a::before {
		top: 0;
	}

	.p-list-other .sns {
		margin: 0;
	}

	.p-list-program li {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 4;
		gap: 0;
	}

	.p-list-project {
		gap: 56px;
	}

	.p-list-project li {
		align-items: start;
		grid-template-columns: 1fr 600px;
		grid-template-rows: auto auto 1fr;
		grid-template-areas: 'title title' 'text image' 'table image';
		gap: 0 64px;
	}

	.p-list-project li:nth-child(2n) {
		grid-template-columns: 600px 1fr;
		grid-template-areas: 'title title' 'image text' 'image table';
	}

	.p-list-project li .title {
		grid-area: title;
		gap: 16px;
	}

	.p-list-project li .title .sup {
		padding-bottom: 14px;
	}

	.p-list-project li .title .sup::before {
		font-size: 2.6rem;
	}

	.p-list-project li .c-figure {
		margin: 32px 0 0;
		grid-area: image;
	}

	.p-list-project li .c-paragraph {
		margin: 32px 0 0;
		grid-area: text;
	}

	.p-list-project li .p-table {
		margin: 48px 0 0;
		grid-area: table;
	}

	.p-list-report {
		display: grid;
		grid-template-columns: auto 1fr 240px;
	}

	.p-list-report li {
		display: grid;
		align-items: center;
		padding: 24px 40px;
		grid-template-columns: subgrid;
		grid-column: span 3;
		gap: 0 32px;
	}

	.p-list-report li time {
		font-size: 1.6rem;
	}

	.p-list-report li .title {
		margin: 0;
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.p-list-report li .c-btn {
		margin: 0;
	}

	.p-list-sns {
		margin: 0;
	}

	.p-list.gap-wide-pc {
		gap: 40px;
	}

	.p-map {
		margin: 0 -40px;
	}

	.p-person {
		display: grid;
		margin: 40px 0 0;
		grid-template-columns: 600px 1fr;
		grid-template-areas: 'image contents';
		gap: 0 48px;
	}

	.p-person figure {
		grid-area: image;
	}

	.p-person figure figcaption {
		font-size: 1.4rem;
		text-align: left;
	}

	.p-person .contents {
		margin: 0;
		grid-area: contents;
	}

	.p-profile {
		margin: 40px 0 0;
		gap: 0;
	}

	.p-profile-place {
		display: grid;
		align-items: center;
		grid-template-columns: 1fr 680px;
		grid-template-areas: 'contents image';
		gap: 0 56px;
	}

	.p-profile-place figure {
		grid-area: image;
	}

	.p-profile-place .contents {
		grid-area: contents;
	}

	.p-profile-person {
		align-items: start;
		grid-template-columns: 276px 1fr;
		grid-template-areas: 'image heading' 'image contents';
		gap: 0 56px;
	}

	.p-profile-person .heading {
		margin: 32px 0 0;
	}

	.p-profile-person .contents {
		margin: 32px 0 0;
	}

	.p-refine {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 16px;
	}

	.p-refine .p-check-labels {
		margin-right: auto;
	}

	.p-refine-target {
		margin: 40px 0 0;
	}

	.p-slide-artist {
		margin: 48px calc((100vw - 100% - var(--scrollbar-width)) / 2 * -1) 0;
	}

	.p-slide-artist .splide__arrows {
		margin: 48px 0 0;
	}

	.p-slide-controls {
		gap: 0 16px;
	}

	.p-slide-controls .prev,
  .p-slide-controls .next,
  .p-slide-controls .autoplay {
		width: 32px;
		height: 32px;
	}

	.p-slide-controls .prev,
  .p-slide-controls .next {
		background-size: auto 12px;
	}

	.p-slide-controls .autoplay {
		margin-left: -8px;
	}

	.p-slide-controls .autoplay.is-playing {
		background-size: 9px 10px;
	}

	.p-slide-controls .autoplay.is-paused {
		background-size: auto 10px;
	}

	.p-slide-controls .pagination .bullet {
		width: 40px;
	}

	.p-slide-info {
		margin: 48px calc((100vw - 100% - var(--scrollbar-width)) / 2 * -1) 0;
	}

	.p-slide-info .splide__arrows {
		margin: 48px 0 0;
	}

	.p-switcher-head-trigger {
		display: flex;
		justify-content: space-between;
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 40px;
		gap: 4px;
	}

	.p-switcher-head-trigger li a {
		font-size: 1.8rem;
	}

	.p-switcher-trigger {
		display: flex;
		justify-content: space-between;
		margin: 0;
		padding: 0 40px;
		gap: 4px;
	}

	.p-switcher-trigger li a {
		font-size: 1.8rem;
	}

	.p-switcher-trigger li a.u-font-en {
		font-size: 1.8rem;
	}

	.p-switcher-trigger li a .c-icon {
		top: -1px;
		width: 26px;
		height: 26px;
	}

	.p-switcher-contents {
		margin: 48px 0 0;
	}

	.p-table-history thead th {
		padding: 0 24px 16px;
		font-size: 1.6rem;
	}

	.p-table-history tbody th,
  .p-table-history tbody td {
		padding: 24px;
	}

	.p-table-history tbody th {
		font-size: 2.8rem;
	}

	.p-table tr th,
  .p-table tr td {
		padding: 16px 24px;
		font-size: 1.6rem;
		line-height: 1.8571428571;
	}

	.p-table tr th.u-font-en,
  .p-table tr td.u-font-en {
		font-size: 1.8rem;
	}

	.p-tags {
		gap: 6px 16px;
	}

	.wp-block-post-content .wp-caption .wp-caption-text,
  .p-wysiwyg .wp-caption .wp-caption-text {
		text-align: center;
	}

	.wp-block-post-content h2:not([class]),
  .wp-block-post-content h2[class^=u-],
  .wp-block-post-content h2.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
  .p-wysiwyg h2:not([class]),
  .p-wysiwyg h2[class^=u-],
  .p-wysiwyg h2.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
		margin: 48px 0 0;
		font-size: 2.8rem;
	}

	.wp-block-post-content h3:not([class]),
  .wp-block-post-content h3.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
  .p-wysiwyg h3:not([class]),
  .p-wysiwyg h3.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
		margin: 48px 0 0;
		font-size: 2.4rem;
	}

	.wp-block-post-content h4:not([class]),
  .wp-block-post-content h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
  .p-wysiwyg h4:not([class]),
  .p-wysiwyg h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
		margin: 40px 0 0;
		padding: 0 0 0 28px;
		font-size: 2rem;
	}

	.wp-block-post-content h4:not([class])::before,
  .wp-block-post-content h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-'])::before,
  .p-wysiwyg h4:not([class])::before,
  .p-wysiwyg h4.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-'])::before {
		width: 16px;
		height: 16px;
	}

	.wp-block-post-content h5:not([class]),
  .wp-block-post-content h5.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']),
  .p-wysiwyg h5:not([class]),
  .p-wysiwyg h5.wp-block-heading:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) {
		font-size: 1.8rem;
		line-height: 1.5555555556;
	}

	.wp-block-post-content .c-heading,
  .p-wysiwyg .c-heading {
		font-size: 2.8rem;
	}

	.wp-block-post-content p,
  .p-wysiwyg p {
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.wp-block-post-content p strong,
  .p-wysiwyg p strong {
		font-size: 1.8rem;
	}

	.wp-block-post-content ul:not([class]) li,
  .wp-block-post-content ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li,
  .p-wysiwyg ul:not([class]) li,
  .p-wysiwyg ul.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li {
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.wp-block-post-content ol:not([class]) li,
  .wp-block-post-content ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li,
  .p-wysiwyg ol:not([class]) li,
  .p-wysiwyg ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li {
		padding-left: 24px;
		font-size: 1.6rem;
		line-height: 1.625;
	}

	.wp-block-post-content ol:not([class]) li::before,
  .wp-block-post-content ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li::before,
  .p-wysiwyg ol:not([class]) li::before,
  .p-wysiwyg ol.wp-block-list:not([class^=u-]):not([class*=' u-']):not([class^=c-]):not([class*=' c-']) li::before {
		top: 4px;
		width: 20px;
		height: 20px;
		font-size: 1.2rem;
	}

	.wp-block-post-content .p-box,
  .p-wysiwyg .p-box {
		margin: 24px 0 0;
	}

	.wp-block-post-content address,
  .p-wysiwyg address {
		font-size: 1.6rem;
		font-style: normal;
		line-height: 1.625;
	}

	.js-refine.is-no-results::after {
		font-size: 1.8rem;
	}

	.p-wysiwyg .js-highlight.syntax-highlight {
		margin: 32px 0;
	}

	.l-article {
		margin: 24px 0 0;
	}

	.l-article-header,
  .l-article-inner {
		max-width: 1280px;
		margin-right: auto;
		margin-left: auto;
		padding: 0 40px;
	}

	.l-article-header {
		display: grid;
		align-items: center;
		grid-template-columns: auto 1fr;
		gap: 0 24px;
	}

	.l-article-header .p-list-sns,
  .l-article-header .wp_social_bookmarking_light {
		justify-self: self-end;
		grid-area: 1/3/1/4;
	}

	.l-article-header .title {
		margin: 24px 0 0;
		font-size: 2.8rem;
		grid-area: 2/1/2/4;
	}

	.l-article-inner {
		margin-top: 24px;
	}

	.l-article-kv {
		float: right;
		max-width: 680px;
		margin: 0 0 40px 56px;
	}

	.l-article-kv img {
		max-width: 500px;
	}

	.l-article-contents {
		margin: 48px 0 0;
	}

	.l-article-contents .m-narrow {
		margin: 24px 0 0;
	}

	.l-article-contents-inner {
		margin: 40px 0 0;
	}

	.l-contents {
		padding: 0 0 120px;
	}

	.l-fill {
		margin: 48px -40px 0;
		padding: 40px 0;
	}

	.l-fill.p-narrow {
		padding-top: 24px;
		padding-bottom: 24px;
	}

	.l-fill.p-wide {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.l-fill.p-wide hr {
		margin-top: 64px;
		margin-bottom: 64px;
	}

	.l-fill-inner {
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 40px;
	}

	.l-fill-inner .title {
		flex-direction: row;
		justify-content: center;
		gap: 16px;
	}

	.l-fill-inner .title .c-icon {
		width: 32px;
		height: 32px;
	}

	.l-fill hr {
		margin: 24px 0;
	}

	.l-fill-contents .c-note {
		margin: 12px 0 0;
		font-size: 1.4rem;
	}

	.l-footcontens {
		margin-top: 120px;
		margin-bottom: -120px;
	}

	.l-footer-other {
		justify-content: center;
		margin: 64px 0 0;
	}

	.l-footer-links ul {
		flex-direction: row;
		justify-content: center;
		gap: 0 46px;
	}

	.l-footer-info {
		gap: 8px 0;
	}

	.l-footer-info .copyright {
		font-size: 1.2rem;
	}

	.l-footer-info .sup {
		font-size: 1.2rem;
	}

	.l-footer-info .sup br {
		display: none;
	}

	.l-header {
		height: 120px;
	}

	.l-header::before {
		height: 120px;
	}

	.l-header-logo {
		top: 30px;
		left: 40px;
		width: 184px;
		height: 60px;
	}

	.l-header-controls .control-search {
		display: none;
	}

	.l-header-search-drawer {
		display: none;
	}

	.l-header-searchform,
  .l-header .p-searchform {
		border-radius: 4px;
		background-color: #f1f1f1;
	}

	.l-header-searchform .btn,
  .l-header .p-searchform .btn {
		width: 32px;
		height: 32px;
	}

	.l-header-searchform .btn .c-icon,
  .l-header .p-searchform .btn .c-icon {
		position: relative;
		top: 1px;
		width: 16px;
		height: 16px;
	}

	.l-header-upper {
		margin: 0;
	}

	.l-header-nav ul {
		display: flex;
		flex-wrap: wrap;
		gap: 8px 32px;
	}

	.l-header-nav ul li a {
		position: relative;
		padding-bottom: 0.3rem;
		font-size: 1.6rem;
		font-weight: 700;
	}

	.l-header-nav ul li a::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: #242424;
		transition: -webkit-transform 0.3s;
		transition: transform 0.3s;
		transition: transform 0.3s, -webkit-transform 0.3s;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
		-webkit-transform-origin: right top;
		transform-origin: right top;
	}

	.l-links {
		margin: 48px 0 0;
	}

	.l-links.al-left {
		align-items: flex-start;
	}

	.l-section-contents > .l-morelink:first-child {
		margin-top: -1em;
	}

	.l-section {
		margin: 80px 0 0;
	}

	.l-section.m-narrow {
		margin: 40px 0 0;
	}

	.l-section.m-middle {
		margin: 64px 0 0;
	}

	.l-section-inner {
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 40px;
	}

	.l-section-contents {
		margin: 48px 0 0;
	}

	.l-section-contents .m-narrow {
		margin: 24px 0 0;
	}

	.l-section-contents-inner {
		margin: 40px 0 0;
	}

	.l-section-contents-inner.m-wide {
		margin: 64px 0 0;
	}

	.p-home-kv-slide .swiper-wrapper .swiper-slide figure {
		min-width: 620px;
		height: 580px;
		aspect-ratio: unset;
	}

	.p-home-kv-slide .swiper-wrapper .swiper-slide figure .sup {
		right: 80px;
	}

	.p-home-kv-slide .swiper-wrapper .swiper-slide .link {
		width: auto;
		min-width: 620px;
		margin-top: -50px;
		padding: 32px 32px 32px 40px;
	}

	.p-home-kv-slide .swiper-wrapper .swiper-slide .link a {
		font-size: 2.4rem;
	}

	.p-home-kv-slide .swiper-wrapper .swiper-slide .link a::before {
		width: 8px;
		height: 13px;
	}

	.p-home-about {
		margin: 210px 0 0;
	}

	.p-home-about .l-section-inner {
		grid-template-columns: 440px 1fr;
		gap: 0 130px;
	}

	.p-home-about-contents p {
		margin: 2em 0 0;
		font-size: 1.6rem;
		font-weight: 400;
		line-height: 2.6111111111;
	}

	.p-home-about-image {
		margin: -50px -40px 0 0;
	}

	.p-home-business-consult .contents .p-col {
		gap: 0 80px;
	}

	.p-home-business-consult .contents .p-col > *:nth-child(1)::after {
		top: 0;
		right: -40px;
		bottom: auto;
		left: auto;
		width: 1px;
		height: 100%;
	}

	.p-home-business-consult .contents .p-html {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.p-home-business-consult .contents .p-html ul li::before {
		top: 0.375em;
		width: 16px;
		height: 16px;
	}

	.p-home-business-consult .p-box .heading {
		font-size: 2.4rem !important;
	}

	.u-hide-pc {
		display: none !important;
	}

	.u-jc-start-pc {
		justify-content: flex-start !important;
	}

	.u-jc-center-pc {
		justify-content: center !important;
	}

	.u-jc-end-pc {
		justify-content: flex-end !important;
	}

	.u-ai-start-pc {
		justify-content: flex-start !important;
	}

	.u-ai-center-pc {
		justify-content: center !important;
	}

	.u-ai-end-pc {
		justify-content: flex-end !important;
	}

	.u-mt-0-pc {
		margin-top: 0 !important;
	}

	.u-mt-4-pc {
		margin-top: 4px !important;
	}

	.u-mt-8-pc {
		margin-top: 8px !important;
	}

	.u-al-center-pc {
		text-align: center !important;
	}

	.u-al-right-pc {
		text-align: right !important;
	}

	.u-al-justify-pc {
		text-align: justify !important;
	}
}

@media screen and (min-width: 768px) and (hover: hover) {
	.l-header-nav ul li a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}
}

@media screen and (min-width: 1280px) {
	.l-section-inner .p-full-image {
		margin: 48px calc((100vw - 100% - var(--scrollbar-width)) / 2 * -1) 0;
	}

	.p-map {
		margin: 0 calc((100vw - 100% - var(--scrollbar-width)) / 2 * -1);
	}

	.l-fill {
		margin: 48px calc((100vw - 100% - var(--scrollbar-width)) / 2 * -1) 0;
	}

	.l-footer-inner {
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 40px;
	}

	.l-footer-nav > ul {
		display: flex;
		justify-content: space-between;
	}

	.l-footer-nav > ul > li > a {
		position: relative;
		padding-bottom: 0.3rem;
		color: #fff;
		font-size: 1.4rem;
		font-weight: 700;
	}

	.l-footer-nav > ul > li > a::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: #fff;
		transition: -webkit-transform 0.3s;
		transition: transform 0.3s;
		transition: transform 0.3s, -webkit-transform 0.3s;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
		-webkit-transform-origin: right top;
		transform-origin: right top;
	}

	.l-footer-nav > ul > li > button {
		display: none;
	}

	.l-footer-nav-child {
		margin: 8px 0 0;
	}

	.l-footer-nav-child ul {
		display: flex;
		flex-direction: column;
		gap: 4px 0;
	}

	.l-footer-nav-child ul li a {
		position: relative;
		padding-bottom: 0.3rem;
		color: #acacac;
		font-size: 1.4rem;
		font-weight: 400;
	}

	.l-footer-nav-child ul li a::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: #acacac;
		transition: -webkit-transform 0.3s;
		transition: transform 0.3s;
		transition: transform 0.3s, -webkit-transform 0.3s;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
		-webkit-transform-origin: right top;
		transform-origin: right top;
	}

	.l-header::before {
		z-index: -1;
	}

	.l-header-inner {
		padding: 24px 40px 24px 0;
		grid-template-areas: 'other' 'nav';
		justify-items: end;
		gap: 16px;
	}

	.l-header-controls {
		display: none;
	}

	.l-header-upper .p-searchform {
		display: grid;
	}

	.p-home-kv .p-slide-controls {
		position: absolute;
		z-index: 5;
		right: 40px;
		bottom: 0;
		padding: 0;
	}
}

@media screen and (min-width: 1280px) and (hover: hover) {
	.l-footer-nav > ul > li > a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.l-footer-nav-child ul li a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}
}

@media screen and (max-width: 1279px) {
	.l-footer-nav > ul {
		border-top: 1px solid #6e6e6e;
	}

	.l-footer-nav > ul > li {
		position: relative;
		border-bottom: 1px solid #6e6e6e;
	}

	.l-footer-nav > ul > li a {
		font-size: 1.4rem;
	}

	.l-footer-nav > ul > li > a {
		display: block;
		padding: 16px 32px 16px 16px;
		color: #fff;
		font-size: 1.4rem;
		font-weight: 700;
		transition: opacity 0.2s ease;
	}

	.l-footer-nav > ul > li > button {
		display: block;
		position: absolute;
		top: 10px;
		right: 0;
		width: 32px;
		height: 32px;
	}

	.l-footer-nav > ul > li > button::before,
  .l-footer-nav > ul > li > button::after {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 12px;
		height: 3px;
		border-radius: 2px;
		background-color: #fff;
		transition: -webkit-transform 0.2s ease;
		transition: transform 0.2s ease;
		transition: transform 0.2s ease, -webkit-transform 0.2s ease;
	}

	.l-footer-nav > ul > li > button::before {
		-webkit-transform: translate3d(-50%, -50%, 0);
		transform: translate3d(-50%, -50%, 0);
	}

	.l-footer-nav > ul > li > button::after {
		-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(90deg);
		transform: translate3d(-50%, -50%, 0) rotateZ(90deg);
	}

	.l-footer-nav > ul > li.is-active > button::after {
		-webkit-transform: translate3d(-50%, -50%, 0) rotateZ(0deg);
		transform: translate3d(-50%, -50%, 0) rotateZ(0deg);
	}

	.l-footer-nav-child {
		display: grid;
		transition: grid-template-rows 0.2s ease;
		transition: grid-template-rows 0.2s ease, -ms-grid-rows 0.2s ease;
		grid-template-rows: 0fr;
	}

	.l-footer-nav-child > div {
		overflow: hidden;
	}

	.l-footer-nav-child > div > ul {
		padding: 0 0 8px;
	}

	.l-footer-nav-child > div > ul > li a {
		display: block;
		padding: 8px 16px;
		color: #acacac;
		font-weight: 400;
		transition: opacity 0.2s ease;
	}

	.is-active .l-footer-nav-child {
		grid-template-rows: 1fr;
	}
}

@media screen and (max-width: 1279px) and (hover: hover) {
	.l-footer-nav > ul > li > a:hover {
		opacity: 0.7;
	}

	.l-footer-nav-child > div > ul > li a:hover {
		opacity: 0.7;
	}
}

@media screen and (max-width: 767px) {
	.p-col.sp-col-2 .c-label {
		min-height: 24px;
		padding: 0 14px;
	}

	.p-card-artist.header .related .p-list-links a {
		font-size: 1.3rem;
	}

	.p-card-artist.header .c-figure {
		margin: 32px 0 0;
	}

	.p-col.sp-col-2 .p-card-info .p-card-info-sup {
		margin: 12px 0 0;
	}

	.p-col.sp-col-2 .p-card-info .p-card-info-sup time {
		font-size: 1.1rem;
	}

	.p-col.sp-col-2 .p-card-info .p-card-info-contents {
		margin: 6px 0 0;
	}

	.p-col.sp-col-2 .p-card-info .p-card-info-contents .title {
		font-size: 1.4rem;
	}

	.p-check-tags {
		overflow: hidden;
		padding-bottom: 24px;
	}

	.p-check-tags-wrap {
		position: relative;
		overflow: hidden;
		height: 97px;
		transition: height 0.2s ease;
	}

	.p-check-tags-wrap::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
		transition: opacity 0.2s ease;
	}

	.is-active .p-check-tags-wrap {
		height: var(--ac-height-tags);
	}

	.is-active .p-check-tags-wrap::after {
		opacity: 0;
		pointer-events: none;
	}

	.p-check-tags-trigger {
		display: flex;
		position: relative;
		justify-content: center;
		align-items: center;
		width: 100%;
		margin-bottom: 12px;
		gap: 8px;
	}

	.p-check-tags-trigger::after {
		content: '';
		display: block;
		position: relative;
		top: 2px;
		width: 10px;
		height: 6px;
		background: no-repeat 50% 50%/contain;
		background-image: url('data:image/svg+xml,%0A%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 10.004 6.002\'%3E%3Cpath id=\'パス_354\' fill=\'%23242424\' d=\'M7.706-5.294a1 1 0 0 0 0-1.416l-4-4a1 1 0 0 0-1.091-.216A1 1 0 0 0 2-10v8a1 1 0 0 0 .619.925 1 1 0 0 0 1.091-.216l4-4Z\' data-name=\'パス 354\' transform=\'rotate(90 .5 -1.498)\'/%3E%3C/svg%3E');
		transition: -webkit-transform 0.2s ease;
		transition: transform 0.2s ease;
		transition: transform 0.2s ease, -webkit-transform 0.2s ease;
		pointer-events: none;
	}

	.is-active .p-check-tags-trigger::after {
		-webkit-transform: rotateZ(180deg);
		transform: rotateZ(180deg);
	}

	.p-col.sp-col-2 {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px 16px;
	}

	.p-dl.sp-row {
		align-items: start;
		grid-template-columns: auto 1fr;
		justify-items: normal;
	}

	.p-dl.sp-row dt {
		margin: 0;
	}

	.p-fixed-table-scroll {
		overflow-x: auto;
		margin: 0 -16px;
		padding: 0 16px;
		-webkit-overflow-scrolling: touch;
	}

	.p-fixed-table table {
		min-width: 700px;
	}

	.p-fixed-table table th {
		width: auto;
		white-space: nowrap;
	}

	.p-header-article-sup {
		flex-direction: column;
		gap: 8px;
	}

	.p-list-business {
		gap: 32px;
	}

	.p-list-info.homeinfo .p-card-info-contents p,
  .p-list-info.homeinfo .p-card-info-contents .tags {
		display: none;
	}

	.p-list-info.homeinfo .p-card-info-link .c-btn {
		width: 100%;
		max-width: 247px;
		padding: 0;
	}

	.p-list-news li .title {
		grid-area: 2/1/3/3;
	}

	.p-person figure {
		margin: 0 0 24px;
	}

	.p-person figure:has(figcaption) {
		margin: 0;
	}

	.p-profile-person .heading {
		align-self: center;
	}

	.p-switcher-head-trigger.sp-col-3 {
		grid-template-columns: repeat(6, 1fr);
	}

	.p-switcher-head-trigger.sp-col-3 li {
		grid-column: span 2;
	}

	.p-switcher-head-trigger.sp-col-3 li:nth-last-child(2):nth-child(4),
  .p-switcher-head-trigger.sp-col-3 li:nth-last-child(1):nth-child(5) {
		grid-column: span 3;
	}

	.p-switcher-trigger.sp-col-3 {
		grid-template-columns: repeat(3, 1fr);
	}

	.wp-block-post-content .alignwide,
  .p-wysiwyg .alignwide {
		width: 100%;
		margin-left: 0;
	}

	.wp-block-post-content .gallery .gallery-item,
  .p-wysiwyg .gallery .gallery-item {
		flex: 1 1 calc(50% - 10px);
	}

	.wp-block-post-content .gallery.gallery-columns-4 .gallery-item,
  .p-wysiwyg .gallery.gallery-columns-4 .gallery-item {
		flex: 1 1 calc(50% - 10px);
	}

	.js-highlight.syntax-highlight pre[class*=language-] {
		padding: 12px;
		font-size: 1.2rem;
	}

	.js-highlight.syntax-highlight .code-toolbar .toolbar {
		top: 4px;
		right: 4px;
		opacity: 1;
	}

	.js-highlight.syntax-highlight .code-toolbar .toolbar .toolbar-item button {
		padding: 3px 6px;
		font-size: 1.1rem;
	}

	.l-header-inner {
		position: fixed;
		top: var(--header-height);
		left: 0;
		width: 100%;
		height: calc(100vh - var(--header-height));
		padding: 32px 32px 48px;
		background-color: #fff;
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
		-webkit-transform: translate3d(-110vw, 0, 0);
		transform: translate3d(-110vw, 0, 0);
		grid-template-areas: 'nav' 'other';
	}

	.is-menu-open .l-header-inner {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}

	.l-header-controls .p-searchform {
		display: none;
	}

	.l-header-search-drawer {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 72px;
		padding: 16px;
		background-color: #f1f1f1;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
		-webkit-transform: translate3d(0, -50vh, 0);
		transform: translate3d(0, -50vh, 0);
	}

	.is-searchform-open .l-header-search-drawer {
		-webkit-transform: translate3d(0, var(--header-height), 0);
		transform: translate3d(0, var(--header-height), 0);
	}

	.l-header-nav ul {
		border-top: 1px solid #acacac;
	}

	.l-header-nav ul li {
		border-bottom: 1px solid #acacac;
	}

	.l-header-nav ul li a {
		display: block;
		padding: 16px;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.7142857143;
	}

	.u-hide-sp {
		display: none !important;
	}

	.u-jc-start-sp {
		justify-content: flex-start !important;
	}

	.u-jc-center-sp {
		justify-content: center !important;
	}

	.u-jc-end-sp {
		justify-content: flex-end !important;
	}

	.u-ai-start-sp {
		justify-content: flex-start !important;
	}

	.u-ai-center-sp {
		justify-content: center !important;
	}

	.u-ai-end-sp {
		justify-content: flex-end !important;
	}

	.u-mt-0-sp {
		margin-top: 0 !important;
	}

	.u-mt-4-sp {
		margin-top: 4px !important;
	}

	.u-mt-8-sp {
		margin-top: 8px !important;
	}

	.u-al-center-sp {
		text-align: center !important;
	}

	.u-al-right-sp {
		text-align: right !important;
	}

	.u-al-justify-sp {
		text-align: justify !important;
	}
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
	.p-card-artist {
		padding: 32px;
		grid-template-columns: 250px 1fr;
		gap: 0 32px;
	}

	.p-card-artist .link {
		justify-content: flex-start;
	}

	.p-card-artist.header {
		grid-template-columns: 46.2962962963vw 1fr;
		grid-template-areas: 'image related' 'image name' 'image dl' 'image label' 'text text';
	}

	.p-col.smd-col-2 {
		grid-template-columns: repeat(2, 1fr);
	}

	.p-fixed-table table th {
		width: 130px;
	}

	.p-links-documents.p-col.col-4 {
		grid-template-columns: repeat(3, 1fr);
		gap: 24px 32px;
	}

	.p-list-box {
		grid-template-columns: repeat(2, 1fr);
	}

	.p-list-business.p-col.col-3 {
		grid-template-columns: repeat(2, 1fr);
	}

	.p-list-flow li.col {
		grid-template-columns: 1fr 34.0740740741vw;
		gap: 0 4.4444444444vw;
	}

	.p-list-intro {
		grid-template-columns: repeat(2, 1fr);
	}

	.p-list-program.p-col.col-4 {
		grid-template-columns: repeat(3, 1fr);
	}

	.p-list-project li {
		grid-template-columns: 1fr 350px;
		gap: 0 32px;
	}

	.p-list-project li:nth-child(2n) {
		grid-template-columns: 350px 1fr;
	}

	.l-article-kv {
		float: none;
		max-width: 100% !important;
		margin: 0 0 40px;
	}

	.p-home-about .l-section-inner {
		grid-template-columns: 420px 1fr;
		gap: 0 32px;
	}

	.u-hide-smd {
		display: none !important;
	}
}

@media screen and (min-width: 768px) and (max-width: 1279px) {
	.p-col {
		gap: 3.75vw 3.125vw;
	}

	.p-col.col-3 {
		gap: 3.75vw 3.75vw;
	}

	.p-col.col-4 {
		gap: 3.125vw 2.5vw;
	}

	.p-col.col-5 {
		gap: 3.125vw 2.5vw;
	}

	.p-list-box {
		gap: 2.5vw;
	}

	.p-person {
		grid-template-columns: 46.875vw 1fr;
	}

	.p-profile-place {
		grid-template-columns: 1fr 53.125vw;
	}

	.p-slide-artist {
		margin: 48px -40px 0;
	}

	.p-slide-info {
		margin: 48px -40px 0;
	}

	.p-switcher-head-trigger li a {
		font-size: clamp(1.4rem, 1.40625vw, 1.8rem);
	}

	.l-article-kv {
		max-width: 53.125vw;
	}

	.l-header-inner {
		position: fixed;
		top: var(--header-height);
		left: 0;
		width: 100%;
		padding: 0 32px 48px;
		background-color: #fff;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
		-webkit-transform: translate3d(0, -50vh, 0);
		transform: translate3d(0, -50vh, 0);
		grid-template-areas: 'other' 'nav';
		justify-items: end;
		gap: 16px;
	}

	.is-menu-open .l-header-inner {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}

	.l-header-controls {
		top: 36px;
		gap: 0 16px;
	}

	.l-header-nav ul {
		justify-content: flex-end;
	}

	.p-home-about .l-section-inner {
		gap: 0 64px;
	}

	.p-home-about-image {
		display: flex;
		align-items: center;
	}
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}

@media (hover: hover) {
	.c-btn:hover {
		opacity: 0.7;
	}

	a.c-label:hover {
		opacity: 0.7;
	}

	.c-lead a:hover {
		text-decoration: none;
	}

	.c-link:hover::before {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-wysiwyg .c-note a:hover,
  .c-note a:hover {
		text-decoration: none;
	}

	.p-box-link .heading a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-breadcrumbs ol li a:hover {
		text-decoration: none;
	}

	.p-card-artist .p-labels a.c-label:hover {
		opacity: 0.7;
	}

	.p-card-artist-simple:hover .c-figure img {
		-webkit-transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
		transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
	}

	.p-card-artist-simple:hover .name {
		text-decoration: underline;
	}

	.p-card-info .c-figure a:hover img {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotateZ(0.000001deg);
		transform: scale3d(1.1, 1.1, 1.1) rotateZ(0.000001deg);
	}

	.p-card-office:hover .c-figure img {
		-webkit-transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
		transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
	}

	.p-card-slide-info .c-figure a:hover img {
		-webkit-transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
		transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
	}

	.p-check-tags .c-tag:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-dl dd a:hover::before {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-form-agree a:hover {
		text-decoration: none;
	}

	.p-header-article .category a:hover {
		text-decoration: none;
	}

	.p-html ul li a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-innerlinks ul li a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-list-banner li:hover .c-figure img {
		-webkit-transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
		transform: scale3d(1.1, 1.1, 1) rotateZ(0.000001deg);
	}

	.p-list-banner li:hover .caption {
		text-decoration: underline;
	}

	.p-list-flow li .c-paragraph a:hover {
		text-decoration: none;
	}

	.p-list-news li .title a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-list-other .facilities a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.p-list-other .sns a:hover {
		opacity: 0.7;
	}

	.p-list-sns a:hover {
		opacity: 0.7;
	}

	.p-slide-controls .prev:hover,
  .p-slide-controls .next:hover,
  .p-slide-controls .autoplay:hover {
		opacity: 0.7;
	}

	.l-footer-other .facilities li a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.l-footer-links ul li a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}

	.l-footer-info .sup a:hover {
		text-decoration: none;
	}

	.l-header-logo a:hover {
		opacity: 0.7;
	}

	.p-home-kv-slide .swiper-wrapper .swiper-slide .link a:hover::after {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: left top;
		transform-origin: left top;
	}
}

@media print {
	.l-footer {
		display: none !important;
	}

	.l-header-inner {
		display: none !important;
	}

	.l-header-controls {
		display: none !important;
	}
}