@charset "UTF-8";
*, *:before, *:after {
	margin: 0;
	padding: 0;
	box-sizing: border-box
}
:where([hidden]:not([hidden=until-found])) {
	display: none!important
}
:where(html) {
	-webkit-text-size-adjust: none;
	color-scheme: dark light
}
@supports not (min-block-size: 100dvb) {
	:where(html) {
		block-size: 100%
	}
}
@media (prefers-reduced-motion: no-preference) {
	:where(html: focus-within) {
		scroll-behavior:smooth
	}
}
:where(body) {
	block-size: 100%;
	block-size: 100dvb;
	line-height: 1.5;
	font-family: system-ui, sans-serif;
	-webkit-font-smoothing: antialiased
}
:where(input, button, textarea, select) {
	font: inherit;
	color: inherit
}
:where(textarea) {
	resize: vertical;
	resize: block
}
:where(button, label, select, summary, [role=button], [role=option]) {
	cursor: pointer
}
:where(:disabled) {
	cursor: not-allowed
}
:where(label:has(> input:disabled), label:has(+ input:disabled)) {
	cursor: not-allowed
}
:where(button) {
	border-style: solid
}
:where(a) {
	text-underline-offset: .2ex
}
:where(ul, ol) {
	list-style: none
}
:where(img, svg, video, canvas, audio, iframe, embed, object) {
	display: block
}
:where(img, picture, svg) {
	max-inline-size: 100%;
	block-size: auto
}
:where(p, h1, h2, h3, h4, h5, h6) {
	overflow-wrap: break-word
}
:where(h1, h2, h3) {
	line-height: calc(1em + .5rem)
}
:where(hr) {
	border: none;
	border-block-start: 1px solid;
	color: inherit;
	block-size: 0;
	overflow: visible
}
:where(:focus-visible) {
	outline: 2px solid var(--focus-color, Highlight);
	outline-offset: 2px
}
:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
	clip-path: inset(50%)!important;
	height: 1px!important;
	width: 1px!important;
	overflow: hidden!important;
	position: absolute!important;
	white-space: nowrap!important;
	border: 0!important
}
:root {
	font-size: .78125vw;
	color-scheme: normal;
	--font-color-black: #231815;
	--color-red: #E60012;
	--color-white1: #FFFFFF;
	--color-white2: #F3F3F4;
	--color-gray1: #DEDEDE;
	--color-gray2: #999999;
	--color-gray3: #e8e8e8
}
@media screen and (min-width: 1680px) {
	:root {
		font-size: 13.125px
	}
}
@media screen and (max-width: 767px) {
	:root {
		font-size: 2.6666666667vw
	}
}
body {
	block-size: 100%;
	color: var(--font-color-black);
	font-weight: 400;
	font-family: YakuHanJP_Noto, Noto Sans JP, sans-serif;
	background-image: linear-gradient(0deg, var(--color-white1) 200px, var(--color-white2) 200px);
	letter-spacing: -.02em
}
body._fixed {
	overflow: hidden;
	overscroll-behavior: contain
}
a {
	text-decoration: none;
	color: currentColor
}
@media (prefers-reduced-motion: no-preference) {
	:where(html: focus-within) {
		scroll-behavior:auto
	}
}
@font-face {
	font-family: swiper-icons;
	src: url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA) format("woff");
	font-weight: 400;
	font-style: normal
}
:root {
	--swiper-theme-color: #007aff
}
.swiper {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1
}
.swiper-vertical>.swiper-wrapper {
	flex-direction: column
}
.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: flex;
	transition-property: transform;
	box-sizing: content-box
}
.swiper-android .swiper-slide, .swiper-wrapper {
	transform: translateZ(0)
}
.swiper-pointer-events {
	touch-action: pan-y
}
.swiper-pointer-events.swiper-vertical {
	touch-action: pan-x
}
.swiper-slide {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	transition-property: transform
}
.swiper-slide-invisible-blank {
	visibility: hidden
}
.swiper-autoheight, .swiper-autoheight .swiper-slide {
	height: auto
}
.swiper-autoheight .swiper-wrapper {
	align-items: flex-start;
	transition-property: transform, height
}
.swiper-backface-hidden .swiper-slide {
	transform: translateZ(0);
	backface-visibility: hidden
}
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
	perspective: 1200px
}
.swiper-3d .swiper-wrapper, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-cube-shadow {
	transform-style: preserve-3d
}
.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10
}
.swiper-3d .swiper-slide-shadow {
	background: rgba(0, 0, 0, .15)
}
.swiper-3d .swiper-slide-shadow-left {
	background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-3d .swiper-slide-shadow-right {
	background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-3d .swiper-slide-shadow-top {
	background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-3d .swiper-slide-shadow-bottom {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}
.swiper-css-mode>.swiper-wrapper {
	overflow: auto;
	scrollbar-width: none;
	-ms-overflow-style: none
}
.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
	display: none
}
.swiper-css-mode>.swiper-wrapper>.swiper-slide {
	scroll-snap-align: start start
}
.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
	scroll-snap-type: x mandatory
}
.swiper-vertical.swiper-css-mode>.swiper-wrapper {
	scroll-snap-type: y mandatory
}
.swiper-centered>.swiper-wrapper:before {
	content: "";
	flex-shrink: 0;
	order: 9999
}
.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
	margin-inline-start: var(--swiper-centered-offset-before)
}
.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
	height: 100%;
	width: var(--swiper-centered-offset-after)
}
.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
	margin-block-start: var(--swiper-centered-offset-before)
}
.swiper-centered.swiper-vertical>.swiper-wrapper:before {
	width: 100%;
	height: var(--swiper-centered-offset-after)
}
.swiper-centered>.swiper-wrapper>.swiper-slide {
	scroll-snap-align: center center;
	scroll-snap-stop: always
}
@media screen and (max-width: 767px) {
	.display-pc {
		display: none!important
	}
}
@media screen and (min-width: 768px) {
	.display-sp {
		display: none!important
	}
}
.visually-hidden {
	color: transparent
}
.js-row-animation {
	--animTrDuration: 1.6s;
	opacity: 0
}
.js-row-animation.is-builded {
	opacity: 1
}
.hm-kv .js-row-animation {
	--animTrDuration: 1.4s
}
.js-row-animation ._row {
	display: inline-block;
	clip-path: inset(0 0 -.2em)
}
.js-row-animation ._row ._visible {
	transform: translate(0)
}
.js-row-animation ._text {
	display: inline-block;
	transform: translateY(calc(100% + .2em));
	transition: transform var(--animTrDuration) cubic-bezier(.77, 0, .175, 1)
}
.js-accordion .js-accordion-body {
	overflow: hidden;
	height: 0;
	transition: height .25s ease
}
.l-svg {
	display: none
}
.l-nav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	pointer-events: none
}
.l-contact {
	overflow: hidden
}
.c-nav {
	opacity: 0;
	visibility: hidden;
	width: 100%;
	height: 100vh;
	background-color: var(--color-white2);
	pointer-events: all
}
.c-nav._preparation {
	transition: opacity .5s .5s ease, visibility .5s .5s ease
}
.c-nav.is-visible {
	transition: opacity .25s ease, visibility .25s ease;
	opacity: 1;
	visibility: visible
}
.c-nav:not(.is-visible)._run-anim {
	opacity: 0;
	visibility: hidden
}
.c-nav__inner {
	height: 100dvh
}
@media screen and (min-width: 768px) {
	.c-nav__inner {
		display: flex;
		height: 100%
	}
}
@media screen and (min-width: 768px) {
	.c-nav__visual {
		width: 50%
	}
}
.c-nav__visualInner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%
}
.c-nav__photos {
	width: 34.5rem;
	aspect-ratio: 345/460;
	margin-left: 1rem;
	background-color: var(--color-gray1);
	opacity: 0;
	clip-path: inset(100% 0 0 0)
}
.c-nav:where(.is-visible) .c-nav__photos {
	transition: clip-path .35s ease, opacity .35s ease
}
.c-nav:where(._run-anim) .c-nav__photos {
	clip-path: inset(0);
	opacity: 1
}
.c-nav:not(.is-visible):where(._run-anim) .c-nav__photos {
	transition: clip-path .35s ease, opacity .35s ease;
	clip-path: inset(0 0 100% 0)
}
@media screen and (min-width: 768px) {
	.c-nav__photosContainer {
		translate: 0 1.5rem;
		transition: translate .2s ease
	}
}
.c-nav:where(._run-anim) .c-nav__photosContainer {
	translate: 0
}
.c-nav:not(.is-visible):where(._run-anim) .c-nav__photosContainer {
	translate: 0 -1.5rem
}
@media screen and (min-width: 768px) {
	.c-nav__photosSlide {
		transition-property: transform, opacity
	}
}
.c-nav__photosSlide ._img {
	width: 100%
}
.c-nav__copy {
	position: absolute;
	left: 4rem;
	bottom: 4rem;
	opacity: 0;
	transition: opacity .25s .4s ease
}
.c-nav__copy ._txt {
	font-family: Poppins, sans-serif;
	font-size: 1.3rem;
	letter-spacing: -.01em;
	text-transform: uppercase
}
.c-nav.is-visible:where(._run-anim) .c-nav__copy {
	opacity: 1
}
.c-nav:not(.is-visible):where(._run-anim) .c-nav__copy {
	opacity: 0
}
.c-nav__connect {
	height: 100%
}
@media screen and (min-width: 768px) {
	.c-nav__connect {
		width: 50%;
		padding-left: 13.5rem;
		border-left: 1px solid var(--color-gray1)
	}
}
.c-nav__connectInner {
	display: flex;
	flex-direction: column;
	height: 100%;
	font-family: Poppins, sans-serif;
	letter-spacing: -.01em
}
@media screen and (max-width: 767px) {
	.c-nav__connectInner {
		padding-top: 6.2rem
	}
}
@media screen and (min-width: 768px) {
	.c-nav__connectInner {
		justify-content: center
	}
}
@media screen and (max-width: 767px) {
	.c-nav__menu {
		flex-grow: 1;
		display: flex;
		align-items: center;
		padding-left: 5.6rem
	}
}
.c-nav__pagesItem {
	text-transform: uppercase;
	opacity: 0;
	translate: .5rem 0
}
.c-nav__pagesItem:nth-child(n+2) {
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.c-nav__pagesItem:nth-child(n+2) {
		margin-top: 3rem
	}
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem {
	opacity: 1;
	translate: 0
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(7) {
	transition: color .25s ease, opacity .25s .05s ease, translate .25s .05s ease
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(6) {
	transition: color .25s ease, opacity .25s .1s ease, translate .25s .1s ease
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(5) {
	transition: color .25s ease, opacity .25s .15s ease, translate .25s .15s ease
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(4) {
	transition: color .25s ease, opacity .25s .2s ease, translate .25s .2s ease
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(3) {
	transition: color .25s ease, opacity .25s .25s ease, translate .25s .25s ease
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(2) {
	transition: color .25s ease, opacity .25s .3s ease, translate .25s .3s ease
}
.c-nav.is-visible:where(._run-anim) .c-nav__pagesItem:nth-child(1) {
	transition: color .25s ease, opacity .25s .35s ease, translate .25s .35s ease
}
.c-nav__pagesItem:nth-child(1) {
	transition: color .25s ease, opacity .25s .05s ease, translate .25s .05s ease
}
.c-nav__pagesItem:nth-child(2) {
	transition: color .25s ease, opacity .25s .1s ease, translate .25s .1s ease
}
.c-nav__pagesItem:nth-child(3) {
	transition: color .25s ease, opacity .25s .15s ease, translate .25s .15s ease
}
.c-nav__pagesItem:nth-child(4) {
	transition: color .25s ease, opacity .25s .2s ease, translate .25s .2s ease
}
.c-nav__pagesItem:nth-child(5) {
	transition: color .25s ease, opacity .25s .25s ease, translate .25s .25s ease
}
.c-nav__pagesItem:nth-child(6) {
	transition: color .25s ease, opacity .25s .3s ease, translate .25s .3s ease
}
.c-nav__pagesItem:nth-child(7) {
	transition: color .25s ease, opacity .25s .35s ease, translate .25s .35s ease
}
.c-nav:not(.is-visible):where(._run-anim) .c-nav__pagesItem {
	opacity: 0;
	translate: -.5rem 0
}
.c-nav__page {
	display: inline-block
}
.c-nav__page._current {
	position: relative;
	color: var(--color-red);
	pointer-events: none
}
.c-nav__page._current:before {
	position: absolute;
	top: calc(50% - .5em);
	left: -2.8rem;
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	font-size: .8rem;
	background-color: currentColor;
	border-radius: 50%
}
@media (hover: hover) {
	.c-nav__page {
		transition: color .25s ease
	}
	.c-nav__page:hover {
		color: var(--color-red)
	}
}
.c-nav__page ._txt {
	font-weight: 600;
	font-size: 2.8rem;
	line-height: 1
}
@media screen and (min-width: 768px) {
	.c-nav__page ._txt {
		font-size: 3.8rem
	}
}
.c-nav__social {
	margin-top: auto
}
@media screen and (max-width: 767px) {
	.c-nav__social {
		padding: 0 3.2rem 3.2rem
	}
}
@media screen and (min-width: 768px) {
	.c-nav__social {
		position: absolute;
		right: 4rem;
		bottom: 4rem;
		margin-top: 0;
		opacity: 0;
		transition: opacity .25s .4s ease
	}
}
.c-nav.is-visible:where(._run-anim) .c-nav__social {
	opacity: 1
}
.c-nav:not(.is-visible):where(._run-anim) .c-nav__social {
	opacity: 0
}
.c-nav__sns {
	display: flex;
	gap: 1.5rem 3.9rem
}
@media screen and (max-width: 767px) {
	.c-nav__sns {
		flex-wrap: wrap;
		justify-content: center
	}
}
@media screen and (min-width: 768px) {
	.c-nav__sns {
		gap: 2.4rem
	}
}
.c-nav__snsItem {
	text-transform: uppercase
}
.c-nav__snsItem._l {
	text-transform: lowercase
}
.c-nav__snsItem._c {
	text-transform: capitalize
}
@media (hover: hover) {
	.c-nav__snsLink {
		transition: color .25s ease
	}
	.c-nav__snsLink:hover {
		color: var(--color-red)
	}
}
.c-nav__snsLink ._txt {
	font-size: 1.3rem
}
.c-nav__snsLink ._txt ._upper {
	text-transform: uppercase
}
.c-header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 15;
	width: 100%
}
.home .c-header {
	opacity: 0;
	transition: opacity .25s ease;
	pointer-events: none
}
.home .c-header.is-visible {
	opacity: 1;
	pointer-events: all
}
.c-header__inner {
	position: absolute;
	top: 1rem;
	right: 2rem;
	display: flex;
	overflow: hidden;
	border-radius: .3rem
}
@media screen and (min-width: 768px) {
	.c-header__inner {
		top: 4rem;
		right: 4rem
	}
}
.c-header__convLink {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 15.5rem;
	height: 5.2rem;
	color: var(--color-white1);
	background-color: var(--color-red)
}
@media screen and (min-width: 768px) {
	.c-header__convLink {
		width: 17.2rem;
		height: 5.6rem
	}
}
@media (hover: hover) {
	.c-header__convLink {
		overflow: hidden;
		position: relative
	}
	.c-header__convLink:hover:before {
		transform: translateY(0);
		transition: transform .35s ease;
		animation: none
	}
	.c-header__convLink:hover ._txt {
		transform: translateY(-50%);
		transition: transform .35s ease;
		animation: none
	}
	.c-header__convLink:where(._animate):before {
		animation: slideOutCircle .5s ease
	}
	.c-header__convLink:where(._animate) ._txt {
		animation: bottomUpTextRoll .5s ease
	}
	.c-header__convLink:before {
		position: absolute;
		inset: 50%;
		z-index: 1;
		content: "";
		display: block;
		width: 21.6rem;
		height: 12rem;
		background-color: var(--font-color-black);
		border-radius: 50%;
		translate: -50% -50%;
		transform: translateY(calc(100% + 2.9rem))
	}
}
.c-header__convLink ._mask {
	overflow: hidden;
	position: relative;
	z-index: 2;
	height: 1.95rem
}
@media screen and (min-width: 768px) {
	.c-header__convLink ._mask {
		height: 2.1rem
	}
}
.c-header__convLink ._txt {
	display: flex;
	flex-direction: column;
	font-weight: 700;
	font-size: 1.3rem
}
@media screen and (min-width: 768px) {
	.c-header__convLink ._txt {
		font-size: 1.4rem
	}
	.c-header__convLink ._txt:before {
		content: attr(data-txt)
	}
}
@keyframes slideOutCircle {
	0% {
		transform: translateY(0)
	}
	to {
		transform: translateY(calc((100% + 2.8rem)*-1))
	}
}
@keyframes bottomUpTextRoll {
	0% {
		transform: translateY(0)
	}
	99.9% {
		transform: translateY(-50%)
	}
	to {
		transform: translateY(0)
	}
}
.c-header__menuBtn {
	--close-anim-delay: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	font-size: 5.2rem;
	background-color: var(--color-white1);
	border: 0
}
@media screen and (min-width: 768px) {
	.c-header__menuBtn {
		font-size: 5.6rem
	}
}
@media (hover: hover) {
	.c-header__menuBtn:not(.is-open, : focus):hover ._line:nth-child(1):before {
		translate:0 2px
	}
	.c-header__menuBtn:not(.is-open, :focus):hover ._line:nth-child(2):before {
		opacity: 0
	}
	.c-header__menuBtn:not(.is-open, :focus):hover ._line:nth-child(3):before {
		translate: 0 -2px
	}
	.c-header__menuBtn.is-open:not(._noHover) ._line:before {
		transition: transform .15s linear, translate .15s linear
	}
	.c-header__menuBtn.is-open:not(._noHover):hover ._line:nth-child(1):before {
		transform: rotate(20deg)
	}
	.c-header__menuBtn.is-open:not(._noHover):hover ._line:nth-child(3):before {
		transform: rotate(-20deg)
	}
}
.c-header__menuBtn.is-open ._line {
	overflow: visible;
	background-color: transparent
}
.c-header__menuBtn.is-open ._line:before {
	transition: transform .2s .2s linear, translate .2s linear
}
.c-header__menuBtn.is-open ._line:nth-child(1):before {
	transform: rotate(45deg);
	translate: 0 .5rem
}
.c-header__menuBtn.is-open ._line:nth-child(2):before {
	opacity: 0
}
.c-header__menuBtn.is-open ._line:nth-child(3):before {
	transform: rotate(-45deg);
	translate: 0 -.5rem
}
.c-header__menuBtn ._lines {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 2.2rem;
	height: 1.1rem
}
.c-header__menuBtn ._line {
	display: block;
	width: 100%;
	height: 1px
}
.c-header__menuBtn ._line:before {
	content: "";
	display: block;
	width: inherit;
	height: inherit;
	background-color: currentColor;
	transform-origin: center;
	transition: translate .2s ease-in, opacity .2s ease-in
}
.c-contact {
	position: relative;
	overflow: hidden;
	padding-block: 8.8rem 9.6rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.c-contact {
		padding-block: 12.8rem 13.6rem
	}
}
.c-contact__target {
	position: absolute;
	left: 50%;
	z-index: 2;
	width: 40.7rem;
	transform: translate(-50%);
	overflow: hidden;
	border-radius: 50%;
	cursor: pointer
}
@media screen and (min-width: 768px) {
	.c-contact__target {
		width: 50.4rem;
		margin-inline: auto
	}
}
.c-contact__target:before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 100%
}
@media (hover: hover) {
	.c-contact__target:hover+.c-contact__connect .c-contact__circle+.c-contact__connectBg {
		transform: scale(1.05)
	}
	.c-contact__target:hover~.c-contact__bg .c-contact__bgSlot ._row:nth-child(1) {
		opacity: 0
	}
}
.c-contact__target ._link {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%
}
.c-contact__connect {
	position: relative;
	z-index: 1;
	width: 40.7rem
}
@media screen and (max-width: 767px) {
	.c-contact__connect {
		left: 50%;
		transform: translate(-50%)
	}
}
@media screen and (min-width: 768px) {
	.c-contact__connect {
		width: 50.4rem;
		margin-inline: auto
	}
}
.c-contact__connect:before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 100%
}
.c-contact__circle {
	position: absolute;
	overflow: hidden;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--color-red);
	border-radius: 50%
}
.c-contact__connectBg {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--color-red);
	border-radius: 50%;
	transform: scale(1);
	transition: transform .25s ease
}
.c-contact__bg {
	position: absolute;
	inset: 50% 0 0 0;
	transform: translateY(-21%)
}
@keyframes slideContactBgTextLoop {
	0% {
		transform: translate(0)
	}
	to {
		transform: translate(-50%)
	}
}
@media screen and (min-width: 768px) {
	.c-contact__bgSlot {
		position: relative;
		display: flex;
		flex-direction: column;
		width: max-content;
		color: var(--color-gray1);
		font-family: Poppins, sans-serif;
		font-weight: 500;
		font-size: 16.8rem;
		line-height: .9;
		text-transform: unset;
		white-space: nowrap;
		animation: slideContactBgTextLoop var(--cContactSlide, 50s) linear infinite
	}
	.c-contact__bgSlot ._row {
		position: relative;
		z-index: 2;
		display: inline-block;
		transition: transform .25s ease
	}
}
@media screen and (min-width: 768px) and (hover: hover) {
	.c-contact__bgSlot ._row:first-child {
		transition: opacity .45s cubic-bezier(.26, .06, 0, 1)
	}
}
@media screen and (min-width: 768px) {
	.c-contact__bgSlot ._row:nth-child(2) {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		color: transparent;
		-webkit-text-stroke: 1px var(--color-gray1)
	}
}
.c-contact-circle {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	color: var(--color-white1);
	text-align: center
}
.c-contact-circle__title ._title {
	font-family: Poppins, sans-serif;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1;
	text-transform: unset;
}
.c-contact-circle__title ._separator {
	display: inline-block;
	transform: scaleY(.7);
	margin-inline: .7em;
	vertical-align: 0
}
.c-contact-circle__catch {
	margin-top: 3.9rem
}
@media screen and (min-width: 768px) {
	.c-contact-circle__catch {
		margin-top: 4.7rem
	}
}
.c-contact-circle__catch ._txt {
	font-weight: 700;
	font-size: 3rem;
	line-height: 1.2;
	letter-spacing: 0
}
@media screen and (min-width: 768px) {
	.c-contact-circle__catch ._txt {
		font-size: 4rem
	}
}
.c-contact-circle__desc {
	margin-top: 1.3rem
}
@media screen and (min-width: 768px) {
	.c-contact-circle__desc {
		margin-top: 2rem
	}
}
.c-contact-circle__desc ._txt {
	font-weight: 500;
	font-size: 1.3rem;
	line-height: 1.6;
	letter-spacing: .02em
}
@media screen and (min-width: 768px) {
	.c-contact-circle__desc ._txt {
		font-size: 1.4rem
	}
}
.c-contact-circle__connect {
	width: fit-content;
	margin-top: 3.4rem;
	margin-inline: auto
}
@media screen and (min-width: 768px) {
	.c-contact-circle__connect {
		margin-top: 4.6rem;
		overflow: hidden;
		position: relative
	}
	.c-contact-circle__connect:after {
		position: absolute;
		bottom: 0;
		left: 0;
		content: "";
		display: block;
		width: 100%;
		height: .1rem;
		background-color: var(--color-white1);
		transform-origin: 0 0;
		transform: scaleX(1)
	}
}
@media screen and (min-width: 768px) and (hover: hover) {
	.c-contact__target+.c-contact__connect .c-contact__circle .c-contact-circle__connect:after {
		transition: trnasform .3s cubic-bezier(.13, .78, .38, .98)
	}
	.c-contact__target:hover+.c-contact__connect .c-contact__circle .c-contact-circle__connect:after {
		animation: underline_anim .6s 1;
		animation-fill-mode: forwards
	}
}
.c-contact-circle__connect ._txt {
	display: flex;
	align-items: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: calc(1em + 2rem);
	letter-spacing: -.06em
}
@media screen and (max-width: 767px) {
	.c-contact-circle__connect ._txt {
		border-bottom: .1rem solid currentColor
	}
}
.c-contact-circle__connect ._txt:after {
	content: "";
	display: block;
	width: 1rem;
	height: 1rem;
	margin-top: .3rem;
	margin-left: 1.2rem;
	background-color: var(--color-white1);
	clip-path: polygon(0 0, 100% 50%, 0 100%)
}
.c-footer {
	padding-inline: 2rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.c-footer {
		padding-inline: 0
	}
}
.l-contact+.l-footer .c-footer__inner {
	border-top: 1px solid currentColor
}
.c-footer__inner {
	padding-block: 8.8rem 8rem
}
@media screen and (min-width: 768px) {
	.c-footer__inner {
		display: flex;
		flex-wrap: wrap;
		width: 110rem;
		margin: 0 auto;
		padding-block: 16rem 14rem
	}
}
.c-footer__logo ._link {
	display: block;
	width: 14.8rem;
	height: 6.05rem
}
@media screen and (min-width: 768px) {
	.c-footer__logo ._link {
		width: 22.6rem;
		height: 9.25rem
	}
}
@media (hover: hover) {
	.c-footer__logo ._link {
		transition: opacity .25s ease
	}
	.c-footer__logo ._link:hover {
		opacity: .6
	}
}
.c-footer__logo ._logo {
	width: 100%;
	height: 100%
}
@media screen and (max-width: 767px) {
	.c-footer__nav {
		margin-top: 8.8rem
	}
}
@media screen and (min-width: 768px) {
	.c-footer__nav {
		margin-left: auto
	}
}
.c-footer__info {
	display: flex;
	flex-wrap: wrap;
	margin-top: 8.8rem
}
@media screen and (min-width: 768px) {
	.c-footer__info {
		width: 100%;
		margin-top: 12rem
	}
}
.c-footer__desc {
	width: 100%;
	margin-bottom: 1.8rem;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6
}
@media screen and (max-width: 767px) {
	.c-footer__connect {
		display: contents
	}
}
@media screen and (min-width: 768px) {
	.c-footer__connect {
		flex-grow: 1;
		display: flex;
		justify-content: space-between
	}
}
@media screen and (max-width: 767px) {
	.c-footer__connectItem:first-child {
		width: 100%;
		margin-bottom: 8rem
	}
}
.c-footer__connectItem ._link {
	font-family: Poppins, sans-serif;
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
@media (hover: hover) {
	.c-footer__connectItem ._link:not(._external) {
		transition: color .25s ease
	}
	.c-footer__connectItem ._link:not(._external):hover {
		color: var(--color-red)
	}
}
.c-footer__connectItem ._external {
	letter-spacing: .03em;
	overflow: hidden;
	position: relative
}
.c-footer__connectItem ._external:after {
	position: absolute;
	bottom: -.2rem;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	background-color: var(--color-gray2);
	transform-origin: 0 0;
	transform: scaleX(1)
}
@media (hover: hover) {
	.c-footer__connectItem ._external:after {
		transition: trnasform .3s cubic-bezier(.13, .78, .38, .98)
	}
	.c-footer__connectItem ._external:hover:after {
		animation: underline_anim .6s 1;
		animation-fill-mode: forwards
	}
}
.c-footer__connectItem ._external ._icon {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	margin-left: 1.2rem
}
.c-footer__connectItem ._external ._entity {
	width: 100%;
	height: 100%
}
.c-footer__copy {
	margin-left: auto
}
@media screen and (min-width: 768px) {
	.c-footer__copy {
		flex-shrink: 0;
		margin-left: 5.6rem
	}
}
.c-footer__copy ._txt {
	font-family: Poppins, sans-serif;
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
.c-footer-nav {
	display: flex
}
@media screen and (max-width: 767px) {
	.c-footer-nav {
		padding-inline: 1.2rem
	}
}
@media screen and (min-width: 768px) {
	.c-footer-nav__item {
		width: 20.7rem
	}
}
@media screen and (max-width: 767px) {
	.c-footer-nav__item:nth-child(2) {
		margin-left: 4.8rem
	}
}
.c-footer-nav__title ._txt {
	color: var(--color-gray2);
	font-family: Poppins, sans-serif;
	font-size: 1.2rem;
	letter-spacing: 1;
	text-transform: uppercase
}
.c-footer-nav__list {
	margin-top: 2.8rem
}
.c-footer-nav__listItem {
	text-transform: uppercase
}
.c-footer-nav__listItem._l {
	text-transform: lowercase
}
.c-footer-nav__listItem._c {
	text-transform: capitalize
}
.c-footer-nav__listItem:nth-child(n+2) {
	margin-top: 1.6rem
}
.c-footer-nav__listItem ._link {
	display: flex;
	align-items: center
}
@media (hover: hover) {
	.c-footer-nav__listItem ._link {
		transition: color .25s ease
	}
	.c-footer-nav__listItem ._link:hover {
		color: var(--color-red)
	}
}
.c-footer-nav__listItem ._link:before {
	content: "";
	display: block;
	width: .4rem;
	height: .4rem;
	margin-right: 1.2rem;
	background-color: var(--color-red);
	border-radius: 50%
}
.c-footer-nav__listItem ._txt {
	font-family: Poppins, sans-serif;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1
}
.c-footer-nav__listItem ._txt ._upper {
	text-transform: uppercase
}
.c-sec-header {
	padding-top: 5.6rem;
	border-top: .1rem solid currentColor
}
.c-sec-header__ttl {
	text-transform: uppercase
}
.c-sec-header__ttl._en {
	display: flex;
	align-items: center;
	font-family: Poppins, sans-serif;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: -.01em
}
.c-sec-header__ttl._en:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	margin-right: 2.2rem;
	font-size: .8rem;
	background-color: var(--color-red);
	border-radius: 50%
}
@media screen and (min-width: 768px) {
	.c-sec-header__ttl._en:before {
		font-size: .8rem
	}
}
.c-sec-header__ttl._ja {
	margin-top: 3.2rem;
	font-weight: 700;
	font-size: 3rem;
	line-height: 1.3
}
@media screen and (min-width: 768px) {
	.c-sec-header__ttl._ja {
		margin-top: 4rem;
		font-size: 4rem
	}
}
.c-sec-header__sub {
	margin-top: 1.4rem;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .02em
}
.c-sec-header__desc {
	margin-top: 5.6rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.c-sec-header__note {
	margin-top: .8rem;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.c-sec-header__note {
		margin-top: .8rem;
		font-size: 1.1rem
	}
}
.c-page-connect {
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: stretch;
	width: fit-content;
	min-width: 27.2rem;
	padding-block: 1.1rem;
	border-radius: .3rem
}
@media screen and (min-width: 768px) {
	.c-page-connect {
		min-width: 27.6rem;
		padding-block: 1.4rem
	}
}
.c-page-connect._reverse {
	flex-direction: row-reverse
}
.c-page-connect._reverse ._frame {
	margin-inline: auto 0
}
.c-page-connect._reverse ._deco {
	border-left: 0;
	border-right-width: .1rem;
	border-right-style: solid
}
.c-page-connect._reverse ._deco:before {
	left: 100%
}
.c-page-connect._reverse ._arrow:before {
	rotate: 180deg
}
.c-page-connect._red {
	color: var(--color-white1);
	--connectBg: var(--color-red);
	background-color: var(--font-color-black)
}
.c-page-connect._red ._deco:before {
	background-color: var(--color-white1)
}
.c-page-connect._black {
	color: var(--color-white1);
	--connectBg: var(--font-color-black);
	background-color: var(--color-red)
}
.c-page-connect._black :where(._deco) {
	border-left: 1px solid var(--color-white1)
}
@media (hover: hover) {
	.c-page-connect._black:hover ._deco:before {
		opacity: 0
	}
}
.c-page-connect._white {
	color: var(--font-color-black);
	--connectBg: var(--color-white1);
	background-color: var(--color-white2)
}
@media (hover: hover) {
	.c-page-connect:hover:after {
		opacity: 0
	}
}
.c-page-connect:before {
	position: absolute;
	inset: 0;
	content: "";
	display: block;
	background-color: var(--connectBg)
}
@media (hover: hover) {
	.c-page-connect:before {
		transition: opacity .25s ease
	}
	.c-page-connect:hover:before {
		opacity: 0
	}
	.c-page-connect:hover ._txt {
		transform: translateY(-50%)
	}
	.c-page-connect:hover ._arrow:before {
		animation: slideOutIn .5s ease
	}
}
.c-page-connect ._frame {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	height: 3.2rem;
	margin-right: auto;
	padding-inline: 2.6rem
}
.c-page-connect ._mask {
	overflow: hidden
}
@media screen and (min-width: 768px) {
	.c-page-connect ._mask {
		height: calc(1em + 1rem);
		line-height: calc(1em + 1rem)
	}
}
.c-page-connect ._txt {
	display: flex;
	flex-direction: column;
	font-weight: 700;
	font-size: 1.4rem
}
@media screen and (min-width: 768px) {
	.c-page-connect ._txt:before {
		content: attr(data-txt)
	}
}
@media (hover: hover) {
	.c-page-connect ._txt {
		transition: transform .65s cubic-bezier(.19, 1, .22, 1)
	}
}
.c-page-connect ._deco {
	position: relative;
	z-index: 1;
	display: block;
	width: 5.8rem;
	height: 3.2rem
}
.c-page-connect ._deco:before {
	position: absolute;
	top: 0;
	left: -1px;
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	background-color: var(--color-gray1)
}
.c-page-connect ._arrow {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden
}
.c-page-connect ._arrow:before {
	content: "";
	display: block;
	width: .8rem;
	height: 1rem;
	background-color: var(--color-white1);
	clip-path: polygon(0 0, 100% 50%, 0 100%)
}
@keyframes slideOutIn {
	0% {
		transform: translate(0)
	}
	50% {
		transform: translate(100%)
	}
	51% {
		transform: translate(-100%)
	}
	to {
		transform: translate(0)
	}
}
.c-entry-connect {
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: stretch;
	width: fit-content;
	min-width: 27.2rem;
	padding-block: 1.1rem;
	border-radius: .3rem;
	color: var(--color-white1);
	--connectBg: var(--font-color-black);
	background-color: var(--color-red)
}
@media screen and (min-width: 768px) {
	.c-entry-connect {
		min-width: 27.6rem;
		padding-block: 1.4rem
	}
}
@media (hover: hover) {
	.c-entry-connect:before {
		position: absolute;
		inset: 50%;
		z-index: 1;
		content: "";
		display: block;
		width: 32rem;
		height: 20rem;
		background-color: var(--font-color-black);
		border-radius: 50%;
		translate: -50% -50%;
		transform: translateY(calc(100% + 2.9rem));
		animation: slideOutCircle .5s ease
	}
	.c-entry-connect:hover:before {
		transform: translateY(0);
		transition: transform .35s ease;
		animation: none
	}
	.c-entry-connect:hover ._txt {
		transform: translateY(-50%);
		transition: transform .65s cubic-bezier(.19, 1, .22, 1);
		animation: none
	}
	.c-entry-connect:hover ._arrow {
		transform: translate(0);
		transition: transform .5s ease;
		animation: none
	}
}
.c-entry-connect ._frame {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	height: 3.2rem;
	margin-right: auto;
	padding-inline: 2.6rem
}
.c-entry-connect ._mask {
	overflow: hidden
}
@media screen and (min-width: 768px) {
	.c-entry-connect ._mask {
		height: calc(1em + 1rem);
		line-height: calc(1em + 1rem)
	}
}
.c-entry-connect ._txt {
	display: flex;
	flex-direction: column;
	font-weight: 700;
	font-size: 1.4rem
}
@media screen and (min-width: 768px) {
	.c-entry-connect ._txt:before {
		content: attr(data-txt)
	}
}
@media (hover: hover) {
	.c-entry-connect ._txt {
		animation: bottomUpTextRoll .5s ease
	}
}
.c-entry-connect ._deco {
	position: relative;
	z-index: 2;
	display: block;
	width: 5.8rem;
	height: 3.2rem;
	border-left: 1px solid var(--color-white1)
}
.c-entry-connect ._decoInner {
	position: absolute;
	top: 50%;
	left: 50%;
	width: .8rem;
	height: 1rem;
	transform: translate(-50%, -50%);
	overflow: hidden
}
@media (hover: hover) {
	.c-entry-connect ._arrow {
		position: relative;
		display: flex;
		width: 2.4rem;
		transform: translate(-1.6rem);
		animation: kvArrowSlideOutIn .5s ease
	}
	.c-entry-connect ._arrow:after {
		content: "";
		display: block;
		width: .8rem;
		height: 1rem;
		margin-left: auto;
		background-color: var(--color-white1);
		clip-path: polygon(0 0, 100% 50%, 0 100%)
	}
}
.c-entry-connect ._arrow:before {
	content: "";
	display: block;
	width: .8rem;
	height: 1rem;
	background-color: var(--color-white1);
	clip-path: polygon(0 0, 100% 50%, 0 100%)
}
@keyframes kvArrowSlideOutIn {
	0% {
		transform: translate(-1.6rem)
	}
	99.9% {
		transform: translate(0)
	}
	to {
		transform: translate(-1.6rem)
	}
}
.c-modal {
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100dvh;
	z-index: 20;
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s .5s ease, visibility .25s .5s ease
}
.c-modal._visible {
	transition: opacity .25s ease;
	opacity: 1;
	visibility: visible
}
.c-modal__inner {
	display: contents;
	height: inherit
}
.c-modal__overlay {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	background-color: var(--font-color-black);
	opacity: .25
}
.c-modal__contents {
	position: relative;
	z-index: 1;
	height: inherit;
	pointer-events: none
}
.c-modal__item {
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	inset: 0;
	width: 100%;
	height: inherit;
	transition: opacity .25s .5s ease, visibility .25s .5s ease
}
.c-modal__item._inView {
	transition: visibility 0s ease;
	opacity: 1;
	visibility: visible
}
.c-modal__item>* {
	pointer-events: auto
}
.c-modal-supp {
	height: 100%;
	background-color: var(--color-white1);
	transform: translate(100%);
	transition: transform .5s cubic-bezier(.4, 0, .2, 1)
}
@media screen and (min-width: 768px) {
	.c-modal-supp {
		width: 70.9rem;
		margin-left: auto
	}
}
._inView .c-modal-supp {
	transform: translate(0)
}
.c-modal-supp__inner {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr 6.4rem;
	height: inherit
}
@media screen and (min-width: 768px) {
	.c-modal-supp__inner {
		grid-template-columns: 1fr;
		grid-template-rows: 5.6rem 1fr
	}
}
.c-modal-supp__controller {
	grid-column: 1/2;
	grid-row: 2/3;
	height: 6.4rem;
	background-color: var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.c-modal-supp__controller {
		grid-row: 1/2;
		height: 5.6rem;
		background-color: transparent;
		border-bottom: .1rem solid var(--color-gray1)
	}
}
.c-modal-supp__controller ._btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding-inline: 3.2rem;
	appearance: none;
	background-color: transparent;
	border: 0
}
@media screen and (min-width: 768px) {
	.c-modal-supp__controller ._btn {
		justify-content: flex-start
	}
}
@media (hover: hover) {
	.c-modal-supp__controller ._btn {
		transition: background-color .1s ease
	}
	.c-modal-supp__controller ._btn:hover {
		background-color: var(--color-gray1)
	}
	.c-modal-supp__controller ._btn:hover ._icon {
		opacity: .5
	}
	.c-modal-supp__controller ._btn:hover ._icon:before {
		rotate: 0deg
	}
	.c-modal-supp__controller ._btn:hover ._icon:after {
		rotate: 0deg
	}
	.c-modal-supp__controller ._btn:hover ._txt {
		opacity: .5
	}
}
.c-modal-supp__controller ._btn ._icon {
	position: relative;
	width: 1.2rem;
	height: 1.3rem
}
.c-modal-supp__controller ._btn ._icon:before {
	position: absolute;
	left: 0;
	top: 50%;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: var(--font-color-black);
	rotate: 45deg
}
.c-modal-supp__controller ._btn ._icon:after {
	position: absolute;
	left: 0;
	top: 50%;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: var(--font-color-black);
	rotate: -45deg
}
@media (hover: hover) {
	.c-modal-supp__controller ._btn ._icon {
		transition: opacity .1s ease-in
	}
	.c-modal-supp__controller ._btn ._icon:before, .c-modal-supp__controller ._btn ._icon:after {
		transition: rotate .1s ease-in
	}
}
.c-modal-supp__controller ._btn ._txt {
	margin-left: 1.2rem;
	font-family: Poppins, sans-serif;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
@media (hover: hover) {
	.c-modal-supp__controller ._btn ._txt {
		transition: opacity .1s ease-in
	}
}
.c-modal-supp__contents {
	grid-column: 1/2;
	grid-row: 1/2;
	overflow: auto
}
@media screen and (min-width: 768px) {
	.c-modal-supp__contents {
		grid-row: 2/3;
		display: flex
	}
}
.c-modal-supp__contentsInner {
	display: flex;
	flex-wrap: wrap;
	padding: 3.2rem 3.2rem 4.8rem
}
@media screen and (min-width: 768px) {
	.c-modal-supp__contentsInner {
		margin-block: auto;
		padding: 6.4rem 8rem
	}
}
.c-modal-supp__info {
	order: 2;
	width: 100%;
	margin-top: 2.4rem;
	display: flex;
	flex-direction: column;
	align-items: center
}
@media screen and (min-width: 768px) {
	.c-modal-supp__info {
		flex-grow: 1;
		justify-content: center;
		align-items: flex-start;
		width: calc(100% - 26rem);
		margin-top: 0;
		padding-left: 4rem
	}
}
.c-modal-supp__info ._relative {
	color: var(--color-red);
	font-size: 1.1rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
.c-modal-supp__info ._post {
	margin-top: 1.6rem;
	font-size: 1.1rem;
	line-height: 1.3;
	text-align: center
}
@media screen and (min-width: 768px) {
	.c-modal-supp__info ._post {
		margin-top: 2.4rem;
		font-size: 1.3rem;
		letter-spacing: 0;
		text-align: left
	}
}
.c-modal-supp__info ._name {
	margin-top: 1rem;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1
}
@media screen and (min-width: 768px) {
	.c-modal-supp__info ._name {
		font-size: 2.2rem
	}
}
.c-modal-supp__desc {
	order: 3;
	width: 100%;
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.c-modal-supp__desc {
		margin-top: 4.8rem
	}
}
.c-modal-supp__desc ._txt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em
}
.c-modal-supp__thumb {
	order: 1;
	width: 1em;
	height: 1em;
	margin-inline: auto;
	overflow: hidden;
	border-radius: 50%;
	font-size: 23.3rem
}
@media screen and (min-width: 768px) {
	.c-modal-supp__thumb {
		margin-inline: 0;
		font-size: 26rem
	}
}
.c-modal-supp__thumb ._img {
	width: 100%
}
.c-donate {
	padding-block: 11.2rem 7rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.c-donate {
		padding-block: 16rem 11.4rem
	}
}
.c-donate__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.c-donate__inner {
		padding-inline: 0
	}
}
.c-donate__frame {
	padding: 4rem 3.2rem 4.3rem;
	background-color: var(--color-white2);
	border: .1rem solid currentColor;
	border-radius: .6rem;
	opacity: 0
}
@media screen and (min-width: 768px) {
	.c-donate__frame {
		width: 96.6rem;
		margin-inline: auto;
		padding: 5.6rem 7.6rem 5.6rem 6.9rem
	}
}
.c-donate__frame._visible {
	opacity: 1;
	transition: opacity .75s ease
}
@media screen and (min-width: 768px) {
	.c-donate__frameInner {
		display: flex;
		align-items: center
	}
}
@media screen and (min-width: 768px) {
	.c-donate__text {
		width: 38.9rem;
		margin-right: auto
	}
}
.c-donate__title {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: -.02em;
	font-feature-settings: "palt"
}
@media screen and (min-width: 768px) {
	.c-donate__title {
		font-size: 3.5rem
	}
}
.c-donate__title ._strong {
	color: var(--color-red)
}
.c-donate__desc {
	margin-top: 1.6rem;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.c-donate__desc {
		margin-top: 3.2rem;
		font-size: 1.4rem;
		line-height: 1.8
	}
}
.c-donate__visual {
	margin-top: 3.2rem;
	padding-inline: 3.7rem 2rem
}
@media screen and (min-width: 768px) {
	.c-donate__visual {
		width: 34rem;
		margin-top: 0;
		padding-inline: 0
	}
}
.c-donate__visual ._img {
	width: 100%
}
.c-donate__toContact {
	color: var(--black, #231815);
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em;
	margin-top: 1.2rem;
	display: inline-block
}
@media screen and (min-width: 768px) {
	.c-donate__toContact {
		margin-top: 1.4rem
	}
}
.c-donate__toContact>span {
	display: block;
	padding-bottom: .2rem;
	overflow: hidden;
	position: relative
}
.c-donate__toContact>span:after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	background-color: var(--color-gray2);
	transform-origin: 0 0;
	transform: scaleX(1)
}
@media (hover: hover) {
	.c-donate__toContact>span:after {
		transition: trnasform .3s cubic-bezier(.13, .78, .38, .98)
	}
	.c-donate__toContact>span:hover:after {
		animation: underline_anim .6s 1;
		animation-fill-mode: forwards
	}
}
.c-donate__toContact ._deco {
	display: inline-block;
	margin-left: .65rem;
	vertical-align: .1em
}
.c-donate__toContact ._deco:before {
	content: "";
	display: block;
	width: .8rem;
	height: .8rem;
	background-color: currentColor;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	scale: .9
}
@media screen and (min-width: 768px) {
	.c-job-list {
		display: flex;
		flex-wrap: wrap;
		gap: 9.6rem 4.2rem
	}
}
@media screen and (min-width: 768px) {
	.c-job-list__item {
		width: calc((100% - 8.5rem) / 3)
	}
}
.c-job-list__item._full {
	width: 100%
}
@media screen and (max-width: 767px) {
	.c-job-list__item:nth-child(n+2) {
		margin-top: 5.6rem
	}
}
.c-job-list__result {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 20rem;
	margin-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.c-job-list__result {
		margin-bottom: 14.4rem
	}
}
.c-job-list__result ._txt {
	color: var(--color-gray2);
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em;
	text-align: center
}
.c-job-article {
	height: 100%
}
@media (hover: hover) {
	.c-job-article__link:hover .c-job-article__title ._txt {
		background-position: bottom left;
		background-size: 100% 100%
	}
	.c-job-article__link:hover .c-job-article__thumb {
		clip-path: inset(.5rem round .6rem)
	}
	.c-job-article__link:hover .c-job-article__thumb:before {
		opacity: .5
	}
	.c-job-article__link:hover .c-job-article__thumb ._img {
		transform: scale(1.04)
	}
}
.c-job-article__inner {
	display: flex;
	flex-direction: column;
	height: 100%
}
.c-job-article__title {
	order: 3;
	padding-inline: .8rem;
	margin-top: 1.4rem
}
.c-job-article__title ._txt {
	font-size: 2rem;
	line-height: 1.4
}
@media (hover: hover) {
	.c-job-article__title ._txt {
		display: inline;
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		transition: background-size .25s ease
	}
}
.c-job-article__com {
	order: 4;
	padding-inline: .8rem;
	margin-top: .8rem
}
@media screen and (min-width: 768px) {
	.c-job-article__com {
		margin-bottom: auto
	}
}
.c-job-article__com ._txt {
	font-weight: 300;
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
.c-job-article__info {
	order: 5;
	display: flex;
	margin-top: 3.2rem;
	margin-inline: .8rem;
	padding-bottom: 2.5rem;
	border-bottom: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.c-job-article__info {
		padding-bottom: 2.4rem
	}
}
.c-job-article__pref {
	display: flex;
	align-items: center;
	height: 3rem;
	padding-inline: .8rem 1.2rem;
	background-color: var(--color-gray3);
	border-radius: .3rem
}
.c-job-article__pref ._icon {
	display: block;
	width: 1em;
	height: 1em;
	margin-right: .4rem;
	font-size: 1.6rem
}
.c-job-article__pref ._icon ._entity {
	width: 100%;
	height: 100%
}
.c-job-article__pref ._txt {
	font-weight: 500;
	font-size: 1.2rem
}
.c-job-article__personItems {
	margin-left: auto;
	text-align: right;
	display: flex;
	gap: 1.2rem
}
.c-job-article__post {
	color: var(--color-gray2);
	font-size: 1rem;
	line-height: 1
}
.c-job-article__name {
	font-weight: 500;
	margin-top: .6rem;
	font-size: 1.2rem;
	line-height: 1
}
.c-job-article__industry {
	order: 2;
	z-index: 1;
	display: flex;
	align-items: center;
	width: fit-content;
	height: 3.5rem;
	margin-top: -1.75rem;
	margin-left: .8rem;
	padding-inline: .8rem 1.6rem;
	padding-bottom: .1rem;
	color: var(--color-red);
	border: .1rem solid currentColor;
	border-radius: .3rem;
	background-color: var(--color-white1)
}
.c-job-article__industry ._icon {
	position: relative;
	display: inline-block;
	width: 1em;
	height: 1em;
	font-size: 2.8rem;
	margin-right: .6rem
}
.c-job-article__industry ._icon ._img {
	width: 100%
}
.c-job-article__purpose {
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0
}
.c-job-article__thumb {
	position: relative;
	order: 1;
	aspect-ratio: 4/3;
	clip-path: inset(0 round .6rem)
}
@media (hover: hover) {
	.c-job-article__thumb {
		position: relative;
		transition: clip-path .8s cubic-bezier(.19, 1, .22, 1)
	}
	.c-job-article__thumb:before {
		position: absolute;
		inset: 0;
		z-index: 1;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background-color: var(--font-color-black);
		opacity: 0;
		transition: opacity .55s cubic-bezier(.26, .06, 0, 1)
	}
}
.c-job-article__thumb ._img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}
@media (hover: hover) {
	.c-job-article__thumb ._img {
		transition: transform .8s cubic-bezier(.19, 1, .22, 1)
	}
}
.c-fellow-card {
	position: relative
}
@media screen and (min-width: 768px) {
	body:where(.interview.detail) .c-fellow-card {
		padding-inline: 0
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__link {
		display: block;
		padding-inline: 10.8rem 6rem
	}
}
@media screen and (min-width: 768px) and (hover: hover) {
	body:where(.interview) .c-fellow-card__link:hover .c-fellow-card__desc ._txt {
		background-position: bottom left;
		background-size: 100% 100%
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) ._reverse .c-fellow-card__link {
		padding-inline: 13.1rem 6rem
	}
}
@media (hover: hover) {
	.c-fellow-card__link:hover .c-fellow-card__thumb {
		clip-path: inset(.8rem round 50%)
	}
	.c-fellow-card__link:hover .c-fellow-card__thumb:before {
		opacity: .5
	}
	.c-fellow-card__link:hover .c-fellow-card__thumb ._img {
		transform: scale(1.04)
	}
}
.c-fellow-card__inner {
	display: flex;
	flex-direction: column
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__inner {
		flex-direction: row;
		align-items: flex-start;
		justify-content: space-between;
		width: 100%
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) ._reverse .c-fellow-card__inner {
		flex-direction: row-reverse
	}
}
.c-fellow-card__text {
	order: 2;
	position: relative;
	z-index: 2;
	width: 100%;
	transform: translateZ(0)
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__text {
		position: static;
		width: 51.9rem;
		padding-top: 1.6rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview.detail) .c-fellow-card__text {
		width: 56.5rem;
		padding-top: 2.5rem
	}
}
.c-fellow-card__title {
	position: absolute;
	width: calc(100% + 3rem);
	transform: translateY(calc(-100% + 1.8rem))
}
@media screen and (max-width: 767px) {
	body:where(.interview) .c-fellow-card__title {
		width: 100%;
		margin-inline: 1.2rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__title {
		position: relative;
		transform: none
	}
}
.c-fellow-card__title ._deco {
	position: absolute;
	top: -1.3rem;
	left: -1.8rem;
	display: inline-block;
	width: 1em;
	height: 1em;
	font-size: 2.2rem;
	z-index: 2
}
@media screen and (min-width: 768px) {
	.c-fellow-card__title ._deco {
		left: -2rem;
		font-size: 2.4rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__title ._deco {
		top: -1.6rem;
		left: -2.7rem;
		font-size: 3.2rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview.detail) .c-fellow-card__title ._deco {
		top: -2.3rem;
		left: -3.4rem;
		font-size: 4rem
	}
}
.c-fellow-card__title ._deco ._icon {
	width: 100%;
	height: 100%
}
.c-fellow-card__title ._txt {
	line-height: 1;
	font-weight: 500;
	font-size: 2rem;
	letter-spacing: -.02em;
	font-feature-settings: "palt"
}
@media screen and (min-width: 768px) {
	.c-fellow-card__title ._txt {
		font-size: 2.2rem
	}
}
body:where(.interview) .c-fellow-card__title ._txt {
	font-feature-settings: unset;
	font-size: 2.2rem
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__title ._txt {
		font-size: 4rem
	}
}
.c-fellow-card__title ._txt>._l {
	line-height: 1.5;
	background: #fff;
	border-radius: .3rem;
	padding-right: .3em;
	white-space: nowrap;
	display: inline-block
}
.c-fellow-card__title ._txt>._l:not(:last-child) {
	margin-bottom: .4rem
}
@media screen and (min-width: 768px) {
	.c-fellow-card__title ._txt>._l:not(:last-child) {
		margin-bottom: .6rem
	}
}
.c-fellow-card__info {
	display: flex;
	align-items: center;
	margin-top: 3.4rem
}
@media screen and (max-width: 767px) {
	body:where(.interview) .c-fellow-card__info {
		margin-top: 4.5rem;
		margin-inline: 1.2rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__info {
		margin-top: 3.6rem
	}
}
.c-fellow-card__graduate {
	position: relative;
	margin-right: 1.4rem;
	padding-right: .6rem;
	border-right: .1rem solid currentColor
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__graduate {
		margin-right: 1.6rem;
		padding-right: 1.6rem;
		border-right: 0
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__graduate:after {
		position: absolute;
		top: calc(50% - .6rem);
		right: 0;
		content: "";
		display: block;
		width: 1px;
		height: 1.2rem;
		background-color: currentColor;
		top: calc(50% - .7rem);
		height: 1.5rem
	}
}
.c-fellow-card__graduate ._txt {
	display: flex;
	flex-direction: column;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.1;
	letter-spacing: 0
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__graduate ._txt {
		display: block;
		font-size: 1.5rem
	}
}
.c-fellow-card__graduate ._num {
	font-size: 1.1rem;
	text-combine-upright: all;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__graduate ._num {
		padding-inline: .1rem;
		font-size: 1.6rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__profile {
		display: flex
	}
}
.c-fellow-card__name ._txt {
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1
}
.c-fellow-card__current {
	margin-top: 1rem
}
.c-fellow-card__current ._txt {
	color: var(--color-gray2);
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 0
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__current {
		margin-left: 1.2rem;
		margin-top: 0
	}
	body:where(.interview) .c-fellow-card__current ._txt {
		font-size: 1.5rem
	}
}
.c-fellow-card__desc {
	margin-top: 2.9rem;
	margin-inline: 1.6rem
}
@media screen and (min-width: 768px) {
	.c-fellow-card__desc {
		margin-top: 4.4rem;
		margin-inline: 0
	}
}
.c-fellow-card__desc ._txt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.c-fellow-card__desc ._txt {
		display: inline;
		font-size: 1.6rem
	}
}
@media screen and (min-width: 768px) and (hover: hover) {
	.c-fellow-card__desc ._txt {
		display: inline;
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		transition: background-size .25s ease
	}
}
.c-fellow-card__thumb {
	position: relative;
	z-index: 1;
	order: 1;
	width: 1em;
	height: 1em;
	font-size: 26.6rem;
	clip-path: inset(0 round 50%);
	overflow: hidden;
	border-radius: 50%
}
@media screen and (min-width: 768px) {
	.c-fellow-card__thumb {
		font-size: 28rem
	}
}
body:where(.interview) .c-fellow-card__thumb {
	font-size: 27.3rem
}
@media screen and (max-width: 767px) {
	body:where(.interview) .c-fellow-card__thumb {
		margin-inline: auto
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview) .c-fellow-card__thumb {
		font-size: 34.5rem
	}
}
@media screen and (max-width: 767px) {
	body:where(.interview.detail) .c-fellow-card__thumb {
		font-size: 31.1rem
	}
}
@media screen and (min-width: 768px) {
	body:where(.interview.detail) .c-fellow-card__thumb {
		font-size: 48.3rem
	}
}
@media (hover: hover) {
	.c-fellow-card__thumb {
		position: relative;
		transition: clip-path .8s cubic-bezier(.19, 1, .22, 1)
	}
	.c-fellow-card__thumb:before {
		position: absolute;
		inset: 0;
		z-index: 1;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background-color: var(--font-color-black);
		opacity: 0;
		transition: opacity .55s cubic-bezier(.26, .06, 0, 1)
	}
}
.c-fellow-card__thumb ._img {
	width: 100%;
	height: 100%;
	object-fit: cover
}
@media (hover: hover) {
	.c-fellow-card__thumb ._img {
		transition: transform .8s cubic-bezier(.19, 1, .22, 1)
	}
}
@media screen and (min-width: 768px) {
	.c-supp__stalker {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
		display: none;
		color: var(--color-white1);
		pointer-events: none
	}
	.c-supp__stalker ._icon {
		position: relative;
		font-size: 2.5rem;
		width: 1em
	}
	.c-supp__stalker ._icon:before {
		position: absolute;
		top: 50%;
		left: 0;
		content: "";
		display: block;
		width: 100%;
		height: .15rem;
		background-color: currentColor;
		translate: -50%
	}
	.c-supp__stalker ._icon:after {
		position: absolute;
		top: 50%;
		left: 0;
		content: "";
		display: block;
		width: 100%;
		height: .15rem;
		background-color: currentColor;
		translate: -50%;
		rotate: 90deg
	}
	.c-supp__stalker._visible {
		display: block
	}
}
.c-under-logo {
	position: absolute;
	top: 1.7rem;
	left: 2rem;
	z-index: 2;
	width: 8.8rem;
	height: 3.6rem
}
@media screen and (min-width: 768px) {
	.c-under-logo {
		top: 4rem;
		left: 4rem;
		width: 13rem;
		height: 5.3rem
	}
}
.c-under-logo ._logo {
	width: 100%;
	height: 100%
}
.c-under-kv {
	padding-block: 9.4rem 0
}
@media screen and (min-width: 768px) {
	.c-under-kv {
		padding-block: 16rem 0
	}
}
.c-under-kv__inner {
	display: flex;
	flex-wrap: wrap;
	margin-inline: 2rem;
	padding-bottom: 4rem;
	border-bottom: .1rem solid currentColor
}
@media screen and (min-width: 768px) {
	.c-under-kv__inner {
		width: 110.4rem;
		margin-inline: auto
	}
}
.c-under-kv__title {
	order: 2;
	width: 100%
}
@media screen and (min-width: 768px) {
	.feature .c-under-kv__title {
		width: 58.9rem
	}
}
@media screen and (min-width: 768px) {
	.job .c-under-kv__title {
		width: 44.7rem
	}
}
@media screen and (min-width: 768px) {
	.interview .c-under-kv__title {
		width: 61.4rem
	}
}
@media screen and (min-width: 768px) {
	.c-under-kv__title .topics, .news .c-under-kv__title {
		width: 68.9rem
	}
}
@media screen and (min-width: 768px) {
	.supporters .c-under-kv__title {
		width: 62rem
	}
}
@media screen and (min-width: 768px) {
	.contact .c-under-kv__title {
		width: 62rem
	}
}
.policy .c-under-kv__title {
	width: 100%
}
.c-under-kv__title ._sub {
	display: block;
	color: var(--color-red);
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: 0
}
@media screen and (min-width: 768px) {
	.c-under-kv__title ._sub {
		font-size: 1.3erm
	}
}
.c-under-kv__title ._title {
	display: block;
	margin-top: 2rem;
	font-family: Poppins, sans-serif;
	font-weight: 500;
	font-size: 4.2rem;
	line-height: 1;
	letter-spacing: -.02em;
	text-transform: uppercase
}
@media screen and (min-width: 768px) {
	.c-under-kv__title ._title {
		margin-top: 3rem;
		font-size: 8.4rem
	}
}
.c-under-kv__desc {
	order: 3;
	width: 100%;
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.c-under-kv__desc {
		display: flex;
		align-items: flex-end;
		margin-top: 0;
		padding-top: 4.5rem
	}
}
@media screen and (min-width: 768px) {
	.feature .c-under-kv__desc {
		width: 51.4rem
	}
}
@media screen and (min-width: 768px) {
	.job .c-under-kv__desc {
		width: 65.6rem
	}
}
@media screen and (min-width: 768px) {
	.interview .c-under-kv__desc {
		width: 48.9rem
	}
}
@media screen and (min-width: 768px) {
	.c-under-kv__desc .topics, .news .c-under-kv__desc {
		width: 41.4rem
	}
}
@media screen and (min-width: 768px) {
	.supporters .c-under-kv__desc {
		width: 48.3rem
	}
}
@media screen and (min-width: 768px) {
	.contact .c-under-kv__desc {
		width: 48.3rem
	}
}
.c-under-kv__desc ._txt {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.c-under-kv__desc ._txt {
		font-size: 1.4rem
	}
}
.c-under-kv__breadcramb {
	order: 1;
	display: flex;
	justify-content: flex-end;
	width: 100%;
	margin-bottom: 5.6rem
}
.c-breadcramb {
	order: 1;
	display: flex
}
.c-breadcramb__item {
	display: flex;
	align-items: center;
	color: var(--color-gray2)
}
.c-breadcramb__item:nth-child(n+2):before {
	display: inline-block;
	content: ">";
	margin-inline: .5em;
	transform: scaleY(2) scale(.7) translateY(-.05rem)
}
.c-breadcramb__item:last-child ._txt {
	color: var(--color-red)
}
.c-breadcramb__item ._link, .c-breadcramb__item ._txt {
	overflow: hidden;
	display: inline-block;
	max-width: 18rem;
	font-family: Poppins, sans-serif;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: -.01em;
	text-transform: uppercase;
	text-overflow: ellipsis;
	white-space: nowrap
}
@media screen and (min-width: 768px) {
	.c-breadcramb__item ._link, .c-breadcramb__item ._txt {
		max-width: 46.9rem
	}
}
.c-breadcramb__item ._link:where(._ja), .c-breadcramb__item ._txt:where(._ja) {
	font-weight: 700;
	font-feature-settings: "palt"
}
@media screen and (min-width: 768px) {
	.c-under-sticky__inner {
		display: grid;
		grid-template-rows: 1fr;
		grid-template-columns: 20.7rem 1fr;
		width: 110.4rem;
		margin-inline: auto;
		padding-top: 13.6rem
	}
}
@media screen and (min-width: 768px) {
	.c-under-sticky:where(._topics) .c-under-sticky__inner {
		padding-top: 7.2rem
	}
}
@media screen and (min-width: 768px) {
	.c-under-sticky:where(._interview) .c-under-sticky__inner {
		padding-top: 0
	}
}
@media screen and (min-width: 768px) {
	.c-under-sticky:where(._contact) .c-under-sticky__inner {
		padding-top: 9.6rem
	}
}
@media screen and (min-width: 768px) {
	.c-under-sticky__fix {
		grid-column: 1/2;
		grid-row: 1/2;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		width: 20.7rem;
		z-index: 2
	}
}
@media screen and (max-width: 767px) {
	.c-under-sticky:where(._feature) .c-under-sticky__fix {
		position: fixed;
		right: 0;
		bottom: 1rem;
		z-index: 2;
		padding: 1.8rem 1.8rem 1.8rem 1.6rem;
		background: rgba(255, 255, 255, .9);
		border-radius: .3rem 0 0 .3rem;
		opacity: 1;
		visibility: visible;
		transition: opacity .25s ease, visibility .25s ease
	}
	.c-under-sticky:where(._feature) .c-under-sticky__fix._hidden {
		opacity: 0;
		visibility: hidden
	}
}
@media screen and (max-width: 767px) {
	.c-under-sticky:not(:where(._feature)) .c-under-sticky__fix {
		display: none
	}
}
@media screen and (min-width: 768px) {
	.c-under-sticky__nav {
		position: sticky;
		bottom: 0
	}
}
@media screen and (min-width: 768px) {
	.c-under-sticky__list {
		padding-bottom: 8.8rem
	}
}
.c-under-sticky__listItem:nth-child(n+2) {
	margin-top: 1.8rem
}
@media screen and (min-width: 768px) {
	.c-under-sticky__listItem:nth-child(n+2) {
		margin-top: 1.6rem
	}
}
.c-under-sticky__listItem._hidden {
	display: none
}
.c-under-sticky__listItem._hidden+.c-under-sticky__listItem {
	margin-top: 0
}
@media screen and (max-width: 767px) {
	.c-under-sticky:where(._feature) .c-under-sticky__listItem:nth-child(1) {
		display: none
	}
	.c-under-sticky:where(._feature) .c-under-sticky__listItem:nth-child(2) {
		margin-top: 0
	}
}
.c-under-sticky__listItem ._link {
	display: flex;
	align-items: center;
	font-family: Poppins, sans-serif;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase;
	font-size: 1.2rem
}
.c-under-sticky__listItem ._link:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: currentColor;
	border-radius: 50%;
	font-size: .4rem;
	margin-right: 1.2rem
}
._scroll .c-under-sticky__listItem ._link {
	color: var(--color-gray2)
}
.c-under-sticky__listItem ._link._current {
	color: var(--font-color-black)
}
.c-under-sticky__listItem ._txt {
	display: flex;
	align-items: center;
	font-family: Poppins, YakuHanJP_Noto, Noto Sans JP, sans-serif;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase;
	font-size: 1.2rem
}
._contact .c-under-sticky__listItem ._txt {
	color: var(--color-gray2)
}
.c-under-sticky__listItem ._txt._strong {
	color: var(--color-red)
}
.c-under-sticky__listItem ._txt:not(._noMarker):before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: currentColor;
	border-radius: 50%;
	font-size: .4rem;
	margin-right: 1.2rem
}
@media screen and (min-width: 768px) {
	.c-under-sticky__contents {
		grid-column: 1/3;
		grid-row: 1/2;
		width: 100%;
		z-index: 1
	}
}
@media screen and (min-width: 768px) {
	.c-ui-category {
		display: flex;
		align-items: center
	}
}
@media screen and (min-width: 768px) {
	.c-ui-category__name {
		width: 6.2rem;
		margin-right: 1.6rem
	}
}
.c-ui-category__name ._txt {
	font-weight: 500;
	line-height: 1;
	letter-spacing: -.02em;
	font-size: 1.3rem
}
.c-ui-category__name ._txt:after {
	content: "：";
	display: inline-block;
	width: .8em;
	text-align: center
}
.c-ui-category__value {
	overflow: scroll;
	margin-top: 1.6rem;
	margin-inline: calc(50% - 50vw)
}
@media screen and (min-width: 768px) {
	.c-ui-category__value {
		margin-top: 0;
		margin-inline: 0
	}
}
.c-ui-category__value::-webkit-scrollbar {
	display: none
}
.c-ui-category__valueInner {
	display: flex;
	gap: .6rem;
	padding-left: 2rem
}
@media screen and (min-width: 768px) {
	.c-ui-category__valueInner {
		gap: .8rem;
		padding-left: 0
	}
}
.c-ui-category__valueItem {
	flex-shrink: 0
}
.c-ui-category__valueItem ._btn {
	display: flex;
	align-items: center;
	height: 2.6rem;
	padding-inline: 1.4rem;
	font-size: 1.2rem;
	border-radius: 2rem;
	border: 0;
	background-color: var(--color-white1)
}
@media (hover: hover) {
	.c-ui-category__valueItem ._btn {
		transition: color .25s ease, background-color .25s ease
	}
	.c-ui-category__valueItem ._btn:hover {
		color: var(--color-white1);
		background-color: var(--color-red)
	}
}
.c-ui-category__valueItem ._btn._current {
	color: var(--color-white1);
	background-color: var(--color-red)
}
.c-ui-category__valueItem:last-child {
	padding-right: 2rem
}
.c-list-pager__inner {
	display: flex;
	justify-content: center;
	gap: 1.2rem
}
@media screen and (min-width: 768px) {
	.c-list-pager__inner {
		gap: 1.6rem
	}
}
.c-list-pager__block {
	display: flex;
	align-items: center;
	gap: 1.6rem
}
@media screen and (min-width: 768px) {
	.c-list-pager__block {
		gap: 2rem
	}
}
.c-list-pager__block._prev {
	flex-direction: row-reverse
}
.c-list-pager__link {
	display: contents
}
.c-list-pager__circle {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	border: 0;
	background-color: transparent;
	overflow: hidden;
	appearance: none;
	opacity: .45;
	font-size: 5.4rem
}
@media (hover: hover) {
	.c-list-pager__circle:hover:before {
		transform: scale(.8888888889)
	}
}
:where(.c-list-pager__link) .c-list-pager__circle {
	opacity: 1
}
.c-list-pager__circle:before {
	position: absolute;
	inset: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: .1rem solid var(--color-gray1);
	border-radius: 50%
}
@media (hover: hover) {
	.c-list-pager__circle:before {
		transition: transform .8s cubic-bezier(.19, 1, .22, 1)
	}
}
.c-list-pager__circle ._circle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	stroke: currentColor;
	stroke-width: 1px;
	stroke-dasharray: 200px 200px;
	stroke-dashoffset: 200px;
	fill: none;
	transform: rotate(-90deg);
	overflow: hidden;
	border-radius: 50%
}
.c-list-pager__circle ._icon {
	display: flex;
	align-items: center;
	width: 1em;
	height: 1em;
	font-size: 1.4rem
}
.c-list-pager__circle ._icon:before {
	content: "";
	display: block;
	width: 100%;
	height: .6rem;
	background-color: currentColor;
	clip-path: polygon(0 50%, .6rem 0, .6rem .25rem, 100% .25rem, 100% .35rem, .6rem .35rem, .6rem 100%, 0 50%)
}
._next .c-list-pager__circle ._icon {
	rotate: 180deg
}
.c-list-pager__dir {
	opacity: .45
}
:where(.c-list-pager__link) .c-list-pager__dir {
	opacity: 1
}
.c-list-pager__dir ._txt {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1
}
@media screen and (min-width: 768px) {
	.c-list-pager__dir ._txt {
		font-size: 1.4rem
	}
}
.c-detail-pager {
	padding-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.c-detail-pager {
		padding-bottom: 14.4rem
	}
}
.c-detail-pager__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.c-detail-pager__inner {
		padding-inline: 20.7rem 0
	}
}
.c-detail-pager__connect {
	position: relative;
	display: flex;
	border-top: .1rem solid var(--color-gray1);
	border-bottom: .1rem solid var(--color-gray1)
}
.c-detail-pager__connect:before {
	position: absolute;
	top: 50%;
	left: 50%;
	content: "";
	display: block;
	width: .1rem;
	height: calc(100% - 4.8rem);
	transform: translateY(-50%);
	background-color: var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.c-detail-pager__connect:before {
		height: calc(100% - 8rem)
	}
}
.c-detail-pager__connectItem {
	position: relative;
	width: 50%;
	padding-block: 2.4rem
}
@media screen and (min-width: 768px) {
	.c-detail-pager__connectItem {
		padding-block: 3.6rem
	}
}
@media (hover: hover) {
	.c-detail-pager__block._prev:hover:before {
		translate: -.8rem
	}
	.c-detail-pager__block._next:hover:before {
		translate: .8rem
	}
}
.c-detail-pager__block._prev:before, .c-detail-pager__block._next:before {
	position: absolute;
	top: calc(50% - .5rem);
	content: "";
	display: block;
	width: .8rem;
	height: 1rem;
	background-color: currentColor;
	clip-path: polygon(0 0, 100% 50%, 0 100%)
}
@media (hover: hover) {
	.c-detail-pager__block._prev:before, .c-detail-pager__block._next:before {
		transition: translate .25s ease
	}
}
.c-detail-pager__block._prev {
	margin-right: auto
}
.c-detail-pager__block._prev:before {
	left: .8rem;
	rotate: 180deg
}
@media screen and (min-width: 768px) {
	.c-detail-pager__block._prev:before {
		left: 2.4rem
	}
}
.c-detail-pager__block._next {
	margin-left: auto
}
.c-detail-pager__block._next:before {
	right: .8rem
}
@media screen and (min-width: 768px) {
	.c-detail-pager__block._next:before {
		right: 2.4rem
	}
}
.c-detail-pager__link {
	position: absolute;
	inset: 0
}
@media (hover: hover) {
	.c-detail-pager__link:hover+.c-detail-pager__text .c-detail-pager__title {
		background-position: bottom left;
		background-size: 100% 100%
	}
}
@media screen and (min-width: 768px) {
	.c-detail-pager__text {
		padding-inline: 7.2rem
	}
}
@media screen and (max-width: 767px) {
	._prev .c-detail-pager__text {
		padding-inline: 3.2rem 3.7rem
	}
}
@media screen and (max-width: 767px) {
	._next .c-detail-pager__text {
		padding-inline: 2.5rem 4.4rem
	}
}
.c-detail-pager__dir {
	color: var(--color-gray2);
	font-weight: 300;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 0
}
.c-detail-pager__title {
	overflow: hidden;
	margin-top: 1.6rem;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0;
	font-feature-settings: "palt"
}
@media screen and (max-width: 767px) {
	.c-detail-pager__title {
		display: -webkit-box;
		-webkit-line-clamp: 4;
		-webkit-box-orient: vertical
	}
}
@media screen and (min-width: 768px) {
	.c-detail-pager__title {
		max-width: 30.8rem;
		margin-top: 1.8rem;
		text-overflow: ellipsis;
		white-space: nowrap
	}
}
@media (hover: hover) {
	.c-detail-pager__title {
		display: inline-block;
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		transition: background-size .25s ease
	}
}
.c-detail-pager__title>br {
	display: none
}
.c-detail-pager__name {
	margin-top: .8rem;
	font-size: 1.3rem;
	font-weight: 400;
	line-height: 1
}
.c-detail-pager__back {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.c-detail-pager__back {
		margin-top: 7.2rem
	}
}
.hm-splash {
	position: fixed;
	inset: 0;
	z-index: 5;
	background-color: var(--color-white2);
	transition: opacity .6s ease, visibility .6s ease
}
.hm-splash~:where(section, div):not(.hm-kv) {
	display: none
}
.is-loaded .hm-splash~:where(section, div):not(.hm-kv) {
	display: revert
}
.is-loaded .hm-splash {
	opacity: 0;
	visibility: hidden
}
.hm-splash__logo {
	position: absolute;
	inset: 50%;
	width: 15rem;
	height: 6.22rem;
	transform: translate(-50%, -50%)
}
@media screen and (min-width: 768px) {
	.hm-splash__logo {
		width: 20rem;
		height: 8.3rem
	}
}
.hm-splash__logo ._logo {
	width: 100%;
	height: 100%
}
.hm-kv {
	position: relative
}
@media screen and (min-width: 768px) {
	.hm-kv {
		height: 100vh
	}
}
@media screen and (min-width: 768px) {
	.hm-kv__inner {
		overflow: hidden
	}
}
.hm-kv__bg {
	position: relative;
	z-index: 0;
	--animDuration: .55s;
	--translate: -24%;
	display: flex;
	align-items: flex-end;
	width: 100%;
	height: 87.6rem;
	transform: translate(0, 0, 0)
}
@media screen and (max-width: 767px) {
	.hm-kv__bg {
		opacity: 0
	}
	._visibled .hm-kv__bg {
		opacity: 1
	}
}
@media screen and (min-width: 768px) {
	.hm-kv__bg {
		width: calc(100% - 41.3rem);
		height: 100vh
	}
}
.hm-kv__bg:after {
	position: absolute;
	inset: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-image: radial-gradient(var(--font-color-black) 20%, transparent 30%), radial-gradient(var(--font-color-black) 20%, transparent 30%);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px;
	opacity: var(--opacity, .15)
}
.hm-kv__bgInner {
	width: 100%;
	height: 46.8rem
}
@media screen and (min-width: 768px) {
	.hm-kv__bgInner {
		height: 100%;
		transform: translate(var(--translate, -20%))
	}
	._visibled .hm-kv__bgInner {
		transition: transform var(--animDuration) cubic-bezier(.46, .03, .52, .96);
		transform: translate(0)
	}
}
.hm-kv__bgInner ._video {
	object-fit: cover;
	width: 100%;
	height: 100%
}
.hm-kv__bgInner ._img {
	object-fit: cover;
	width: 100%;
	height: 100%
}
.hm-kv__bgFrameWrapper {
	height: inherit
}
@media screen and (min-width: 768px) {
	.hm-kv__bgFrameWrapper {
		display: flex;
		justify-content: center
	}
}
.hm-kv__bgFrame {
	height: inherit
}
@media screen and (min-width: 768px) {
	.hm-kv__bgFrame {
		position: absolute;
		left: calc(50% - 50vw);
		width: 100vw
	}
}
.hm-kv__logo {
	position: absolute;
	top: 1.7rem;
	/*left: 2rem;*/
	right: 2rem;
	z-index: 2;
	width: 8.8rem;
	height: 3.6rem;
	opacity: 0;
	transition: opacity .25s .2s ease;
	pointer-events: none
}
@media screen and (min-width: 768px) {
	.hm-kv__logo {
		top: 4rem;
		/*left: 4rem;*/
        right: 4rem;
		width: 13rem;
		height: 5.3rem
	}
}
.hm-kv__logo ._logo {
	width: 100%;
	height: 100%
}
._visibled .hm-kv__logo {
	opacity: 1;
	pointer-events: all
}
.hm-kv__menu {
	position: absolute;
	top: 1.4rem;
	right: 1.3rem;
	z-index: 2;
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s .2s ease, visibility .25s .2s ease
}
@media screen and (min-width: 768px) {
	.hm-kv__menu {
		top: 5rem;
		right: 4rem
	}
}
._visibled .hm-kv__menu {
	opacity: 1;
	visibility: visible
}
.hm-kv__menuBtn {
	display: flex;
	align-items: center;
	border: 0;
	background-color: transparent;
	appearance: none
}
@media (hover: hover) {
	.hm-kv__menuBtn:hover ._row {
		transform: translateY(-50%)
	}
	.hm-kv__menuBtn:hover ._line:nth-child(1):before {
		transform: translateY(2px)
	}
	.hm-kv__menuBtn:hover ._line:nth-child(2):before {
		opacity: 0
	}
	.hm-kv__menuBtn:hover ._line:nth-child(3):before {
		transform: translateY(-2px)
	}
}
.hm-kv__menuBtn ._txt {
	overflow: hidden;
	height: 1.2rem;
	font-family: Poppins, sans-serif;
	font-size: 1.2rem;
	line-height: 1.2rem;
	letter-spacing: .03em;
	text-transform: uppercase
}
.hm-kv__menuBtn ._row {
	display: flex;
	flex-direction: column
}
.hm-kv__menuBtn ._row:after {
	content: attr(data-txt)
}
@media (hover: hover) {
	.hm-kv__menuBtn ._row {
		transition: transform .25s ease
	}
}
.hm-kv__menuBtn ._lines {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 4.2rem;
	height: 3.2rem
}
@media screen and (min-width: 768px) {
	.hm-kv__menuBtn ._lines {
		width: 4rem;
		height: 3.4rem;
		margin-left: 1.2rem
	}
}
.hm-kv__menuBtn ._line {
	display: block;
	width: 2.8rem;
	height: 1px
}
@media screen and (min-width: 768px) {
	.hm-kv__menuBtn ._line {
		width: 100%
	}
}
.hm-kv__menuBtn ._line:nth-child(2) {
	margin-block: .4rem
}
.hm-kv__menuBtn ._line:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: currentColor
}
@media (hover: hover) {
	.hm-kv__menuBtn ._line:before {
		transition: transform .15s ease-in, opacity .15s ease-in
	}
}
.hm-kv__text {
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	width: 100%;
	height: 100vh
}
@media screen and (max-width: 767px) {
	.hm-kv__textShutter {
		--animDuration: .25s;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 1;
		width: 200%;
		padding-top: 100vh;
		background-color: var(--color-white2);
		translate: -50% 0
	}
	._visibled .hm-kv__textShutter {
		clip-path: inset(0 round 0 0 50% 50%);
		padding-top: 46rem;
		transition: padding-top var(--animDuration) ease, clip-path var(--animDuration) ease
	}
}
@media screen and (min-width: 768px) {
	.hm-kv__textShutter {
		--animDuration: .5s;
		position: absolute;
		inset: 0;
		z-index: 1;
		display: flex;
		width: 100%;
		height: 100vh
	}
	._visibled .hm-kv__textShutter._fixed {
		transform: translate(calc(100vw - 49.4rem))
	}
	.hm-kv__textShutter ._round {
		overflow: hidden;
		position: relative;
		width: 8.1rem;
		height: 100%
	}
	.hm-kv__textShutter ._round ._inner {
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: var(--sideWidth, 100%);
		height: var(--sideWidth, 100vh);
		background-color: var(--color-white2);
		translate: 0 -50%;
		clip-path: inset(0 round 0%)
	}
	.is-loaded .hm-kv__textShutter ._round ._inner {
		clip-path: inset(0 round 25%)
	}
	._visibled .hm-kv__textShutter ._round ._inner {
		clip-path: inset(0 round 50%);
		transition: clip-path var(--animDuration) cubic-bezier(.4, .25, .3, 1.05)
	}
	.hm-kv__textShutter ._rect {
		width: calc(100% - 8rem);
		height: 100%;
		margin-left: -.1rem;
		background-color: var(--color-white2)
	}
}
.hm-kv__textInner {
	position: relative;
	z-index: 2
}
@media screen and (max-width: 767px) {
	.hm-kv__textInner {
		padding: 13.3rem 3.2rem 0
	}
}
@media screen and (min-width: 768px) {
	.hm-kv__textInner {
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 41.4rem;
		height: 100%;
		margin-left: auto
	}
}
.hm-kv__catch ._txt {
	font-weight: 700;
	font-size: 3.1rem;
	line-height: 1.3;
	letter-spacing: 0
}
@media screen and (min-width: 768px) {
	.hm-kv__catch ._txt {
		font-size: 3.6rem
	}
}
.hm-kv__catch ._strong {
	color: var(--color-red)
}
.hm-kv__anim {
	--animDuration: .45s;
	margin-top: 1.6rem;
	opacity: 0;
	transition: opacity var(--animDuration) ease-in-out;
	pointer-events: none
}
@media screen and (min-width: 768px) {
	.hm-kv__anim {
		margin-top: 2.4rem
	}
}
.hm-kv__anim._visible {
	opacity: 1;
	pointer-events: all
}
.hm-kv__site {
	display: flex;
	align-items: center
}
.hm-kv__site ._txt {
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.3;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.hm-kv__site:before {
		content: "";
		display: block;
		width: 4.4rem;
		height: .1rem;
		margin-right: 1rem;
		background-color: currentColor
	}
}
.hm-kv__connect {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.hm-kv__connect {
		margin-top: 5.6rem
	}
}
@media screen and (min-width: 768px) {
	.hm-kv__connect ._txt {
		font-size: 1.6rem
	}
}
@media (hover: hover) {
	.hm-kv__connect .c-page-connect ._frame, .hm-kv__connect .c-page-connect ._deco {
		position: relative;
		z-index: 2
	}
	.hm-kv__connect .c-page-connect:before {
		content: revert
	}
	.hm-kv__connect .c-page-connect:after {
		position: absolute;
		inset: 50%;
		z-index: 1;
		content: "";
		display: block;
		width: 32rem;
		height: 20rem;
		background-color: var(--font-color-black);
		border-radius: 50%;
		translate: -50% -50%;
		transform: translateY(calc(100% + 2.9rem));
		transition: transform .35s ease;
		animation: slideOutCircle .5s ease
	}
	.hm-kv__connect .c-page-connect:hover {
		background-color: var(--color-red)
	}
	.hm-kv__connect .c-page-connect:hover:after {
		transform: translateY(0);
		animation: none
	}
}
.hm-kv__topics {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	opacity: 0;
	transition: opacity .25s .2s ease;
	pointer-events: none
}
._visibled .hm-kv__topics {
	opacity: 1;
	pointer-events: all
}
.hm-kv__topicsInner {
	display: flex;
	background-color: var(--color-white1);
	border-top: .1rem solid var(--color-gray1);
	border-bottom: .1rem solid var(--color-gray1)
}
.hm-kv__topicsHead {
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 8.2rem;
	height: 5.8rem;
	font-family: Poppins, sans-serif;
	font-weight: 600;
	font-size: 1.3rem;
	line-height: 1.1;
	letter-spacing: -.01em;
	text-transform: uppercase;
	border-right: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.hm-kv__topicsHead {
		width: 13.4rem;
		height: 5rem;
		font-size: 1.2rem;
		letter-spacing: -.01em
	}
}
.hm-kv__topicsHead ._txt {
	display: flex;
	justify-content: center
}
.hm-kv__topicsBody {
	overflow: hidden;
	flex-grow: 1
}
@media (hover: hover) {
	.hm-kv__topicsBody:hover .hm-kv__topicsSlot {
		animation-play-state: paused
	}
}
.hm-kv__topicsSlot {
	display: flex;
	width: fit-content;
	height: 100%;
	animation: slideKvTopics 50s linear infinite
}
@keyframes slideKvTopics {
	0% {
		transform: translate(0)
	}
	to {
		transform: translate(-50%)
	}
}
.hm-kv__topicsItem {
	height: inherit
}
.hm-kv__topicsLink {
	position: relative;
	display: block;
	height: inherit;
	color: var(--font-color-black);
	background-color: transparent
}
.hm-kv__topicsLink:before {
	position: absolute;
	inset: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--font-color-black);
	opacity: 0
}
@media (hover: hover) {
	.hm-kv__topicsLink:before {
		transition: opacity .25s ease
	}
}
@media (hover: hover) {
	.hm-kv__topicsLink {
		transition: color .25s ease
	}
	.hm-kv__topicsLink:hover {
		color: var(--color-white1)
	}
	.hm-kv__topicsLink:hover:before {
		opacity: 1
	}
}
.hm-kv__topicsTxt {
	position: relative;
	z-index: 1;
	display: flex;
	width: max-content;
	padding: 1.9rem 1.8rem 2rem
}
@media screen and (min-width: 768px) {
	.hm-kv__topicsTxt {
		padding: 1.6rem 2rem
	}
}
.hm-kv__topicsTxt ._cat {
	display: flex;
	align-items: center;
	padding-top: .1rem;
	font-family: Poppins, sans-serif;
	font-weight: 300;
	font-size: 1.2rem;
	letter-spacing: -.01em;
	text-transform: uppercase
}
@media screen and (min-width: 768px) {
	.hm-kv__topicsTxt ._cat {
		font-size: 1rem
	}
}
.hm-kv__topicsTxt ._cat:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: #e60012;
	border-radius: 50%;
	font-size: .4rem;
	margin-right: 1rem
}
.hm-kv__topicsTxt ._date {
	margin-left: .7rem;
	padding-top: .1rem;
	font-family: Poppins, sans-serif;
	font-weight: 300;
	font-size: 1.2rem;
	letter-spacing: -.01em
}
@media screen and (min-width: 768px) {
	.hm-kv__topicsTxt ._date {
		font-size: 1.1rem
	}
}
.hm-kv__topicsTxt ._date:before {
	content: "|";
	margin-right: .9rem;
	color: var(--color-gray1)
}
.hm-kv__topicsTxt ._title {
	margin-left: 1rem;
	font-weight: 500;
	font-size: 1.3rem;
	letter-spacing: 0;
	line-height: 1.4;
	max-width: 38em;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap
}
@media screen and (min-width: 768px) {
	.hm-kv__topicsTxt ._title {
		margin-left: .8rem;
		font-size: 1.2rem
	}
}
.hm-commit {
	padding-block: 10.4rem
}
@media screen and (min-width: 768px) {
	.hm-commit {
		padding-block: 23.2rem 26.4rem
	}
}
@media screen and (max-width: 767px) {
	.hm-commit__inner {
		padding-inline: 3.2rem
	}
}
@media screen and (min-width: 768px) {
	.hm-commit__inner {
		width: 96.6rem;
		margin-inline: auto
	}
}
@media screen and (max-width: 767px) {
	.hm-commit__header {
		width: calc(100% + 3rem)
	}
}
.hm-commit__title {
	font-family: Noto Sans JP, sans-serif;
	font-weight: 700;
	font-size: 3.5rem;
	line-height: 1.3;
	font-feature-settings: "palt"
}
@media screen and (min-width: 768px) {
	.hm-commit__title {
		font-size: 7.1rem;
		line-height: 1.1;
		letter-spacing: -.02em
	}
	.hm-commit__title:first-line {
		letter-spacing: -.04em
	}
}
.hm-commit__title ._strong {
	color: var(--color-red);
	font-family: Poppins, YakuHanJP_Noto, Noto Sans JP, sans-serif
}
.hm-commit__title ._num {
	font-weight: 500;
	font-size: 4.3rem;
	line-height: 1;
	vertical-align: -.06em
}
@media screen and (min-width: 768px) {
	.hm-commit__title ._num {
		font-size: 8.6rem
	}
}
.hm-commit__body {
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.hm-commit__body {
		margin-top: 7.2rem
	}
}
@media screen and (min-width: 768px) {
	.hm-commmit__desc {
		padding-left: 13.7rem
	}
}
.hm-commmit__desc ._txt {
	width: calc(100% + .1em);
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4
}
.hm-commmit__desc ._strong {
    color: var(--color-red);
    font-family: Poppins, YakuHanJP_Noto, Noto Sans JP, sans-serif;
}
@media screen and (min-width: 768px) {
	.hm-commmit__desc ._txt {
		font-size: 3.2rem;
		line-height: 1.6
	}
}
.hm-commmit__desc ._row {
	display: inline-block;
	--delay: .35s
}
@media screen and (max-width: 767px) {
	.hm-commmit__desc ._row+._row {
		margin-top: 1.6rem
	}
}
.hm-commmit__desc ._row:nth-child(1) {
	transition: opacity .6s calc(0 * var(--delay)) ease-in-out
}
.hm-commmit__desc ._row:nth-child(2) {
	transition: opacity .6s calc(1 * var(--delay)) ease-in-out
}
.hm-commmit__desc ._row:nth-child(3) {
	transition: opacity .6s calc(2 * var(--delay)) ease-in-out
}
.hm-commmit__desc ._row:nth-child(4) {
	transition: opacity .6s calc(3 * var(--delay)) ease-in-out
}
.hm-commmit__desc ._row:nth-child(5) {
	transition: opacity .6s calc(4 * var(--delay)) ease-in-out
}
.hm-commmit__desc ._palt {
	font-feature-settings: "palt"
}
.hm-fellow {
	overflow: hidden;
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.hm-fellow {
		padding-bottom: 17.1rem
	}
}
.hm-fellow__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.hm-fellow__inner {
		position: relative;
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.hm-fellow__body {
	margin-top: 7.2rem
}
@media screen and (min-width: 768px) {
	.hm-fellow__body {
		margin-top: 11.2rem
	}
}
.hm-fellow__connect {
	display: flex;
	justify-content: center;
	margin-top: 7.2rem
}
@media screen and (min-width: 768px) {
	.hm-fellow__connect {
		position: absolute;
		right: 0;
		z-index: 1;
		display: block;
		margin-top: .3rem;
		transform: translateY(-100%)
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember {
		position: relative
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__swiper {
		position: relative;
		margin-inline: calc(50% - 50vw)
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__swiperBody {
		width: 110.4rem;
		margin-inline: auto
	}
}
.hm-fmember__swiperContainer {
	position: static;
	overflow: visible
}
@media screen and (min-width: 768px) {
	.hm-fmember__swiperContainer {
		margin-left: 0;
		margin-right: 0
	}
}
.hm-fmember__swiperContainer .c-fellow-card__title ._txt>._l:not(:last-child) {
	margin-bottom: .4rem
}
.hm-fmember__swiperWrapper {
	transition-timing-function: cubic-bezier(.2, 1, .3, 1)
}

    .hm-fmember__swiperWrapper {
        overflow-x: scroll;
        overflow-y: hidden;
    }
@media screen and (min-width: 768px) {
	.hm-fmember__swiperWrapper._to-left {
		animation: toLeft .35s forwards
	}
	.hm-fmember__swiperWrapper._to-left._to-left-back {
		animation: toLeftBack .35s
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__swiperWrapper._to-right {
		animation: toRight .35s forwards
	}
	.hm-fmember__swiperWrapper._to-right._to-right-back {
		animation: toRightBack .35s
	}
}
@keyframes toLeft {
	0% {
		translate: 0
	}
	to {
		translate: -4rem
	}
}
@keyframes toLeftBack {
	0% {
		translate: -4rem
	}
	to {
		translate: 0
	}
}
@keyframes toRight {
	0% {
		translate: 0
	}
	to {
		translate: 4rem
	}
}
@keyframes toRightBack {
	0% {
		translate: 4rem
	}
	to {
		translate: 0
	}
}
.hm-fmember__slide {
	width: 30.8rem;
	padding-inline: 1.8rem 2.4rem
}
@media screen and (min-width: 768px) {
	.hm-fmember__slide {
		width: 28rem;
		padding-inline: 5.1rem 1.8rem
	}
}
.hm-fmember__slide:nth-child(even) {
	padding-top: 2rem
}
@media screen and (min-width: 768px) {
	.hm-fmember__slide:nth-child(even) {
		padding-top: 4.3rem
	}
}
.hm-fmember__num {
	position: absolute;
	color: var(--color-red);
	font-family: Poppins, sans-serif;
	font-weight: 500;
	font-style: italic;
	font-size: 1.6rem;
	letter-spacing: -.02em
}
.hm-fmember__targets {
	display: none
}
@media screen and (min-width: 768px) {
	.hm-fmember__targets {
		position: relative;
		display: block;
		margin-inline: calc(50% - 50vw)
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__target {
		position: absolute;
		top: 0;
		z-index: 2;
		height: 39.7rem;
		cursor: pointer;
		transform: translateY(-100%)
	}
	.hm-fmember__target._disabled {
		display: none
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__target._prev {
		left: 0;
		width: calc((100vw - 110.4rem)/2 + 17.45rem)
	}
}
@media (hover: hover) {
	.hm-fmember__target._prev:hover~.hm-fmember__stalker ._circle:after {
		content: "prev"
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__target._next {
		right: 0;
		width: calc((100vw - 110.4rem) / 2 + 17.45rem + 3.9rem)
	}
}
@media (hover: hover) {
	.hm-fmember__target._next:hover~.hm-fmember__stalker ._circle:after {
		content: "next"
	}
}
@media (hover: hover) {
	.hm-fmember__target:not(._disabled):hover~.hm-fmember__stalker ._circle {
		opacity: 1;
		scale: 1.1162790698
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__stalker {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2
	}
}
@media screen and (min-width: 768px) {
	.hm-fmember__stalker ._circle {
		position: absolute;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 1em;
		height: 1em;
		font-size: 8.6rem;
		opacity: 0;
		transform: translate(-50%, -50%);
		transition: opacity .25s ease, scale .25s ease;
		pointer-events: none
	}
	.hm-fmember__stalker ._circle:before {
		position: absolute;
		inset: 0;
		z-index: 0;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background-color: var(--color-red);
		border-radius: 50%;
		opacity: .7
	}
	.hm-fmember__stalker ._circle:after {
		position: relative;
		content: "";
		color: var(--color-white1);
		font-family: Poppins, sans-serif;
		font-weight: 500;
		font-size: 1.2rem;
		letter-spacing: -.01em;
		text-transform: uppercase
	}
}
.hm-fmember__controller {
	display: none
}
@media screen and (min-width: 768px) {
	.hm-fmember__controller {
		display: flex;
		align-items: center;
		margin-top: 6rem
	}
}
.hm-fmember__btns {
	display: flex;
	align-items: center
}
.hm-fmember__btn {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	border: 0;
	background-color: transparent;
	overflow: hidden;
	appearance: none
}
@media screen and (min-width: 768px) {
	.hm-fmember__btn {
		font-size: 5.4rem
	}
}
@media (hover: hover) {
	.hm-fmember__btn:hover:before {
		transform: translate(-50%, -50%) scale(.8888888889)
	}
}
.hm-fmember__btn:disabled {
	opacity: .45;
	pointer-events: none
}
@media screen and (min-width: 768px) {
	.hm-fmember__btn._next {
		margin-left: 1rem
	}
}
.hm-fmember__btn._next ._icon {
	rotate: 180deg
}
.hm-fmember__btn:before {
	position: absolute;
	inset: 50%;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: .1rem solid var(--color-gray1);
	border-radius: 50%;
	transform: translate(-50%, -50%)
}
@media (hover: hover) {
	.hm-fmember__btn:before {
		transition: transform .8s cubic-bezier(.19, 1, .22, 1)
	}
}
.hm-fmember__btn ._icon {
	display: flex;
	align-items: center;
	width: 1em;
	height: 1em;
	font-size: 1.4rem
}
.hm-fmember__btn ._icon:before {
	content: "";
	display: block;
	width: 100%;
	height: .6rem;
	background-color: currentColor;
	clip-path: polygon(0 50%, .6rem 0, .6rem .25rem, 100% .25rem, 100% .35rem, .6rem .35rem, .6rem 100%, 0 50%)
}
@keyframes circle-run-hover-out {
	0% {
		transform: rotate(90deg);
		stroke-dashoffset: 0
	}
	to {
		transform: rotate(270deg);
		stroke-dashoffset: -200px
	}
}
@keyframes circle-run-hover {
	0% {
		transform: rotate(-90deg);
		stroke-dashoffset: 200px
	}
	to {
		transform: rotate(90deg);
		stroke-dashoffset: 0
	}
}
@keyframes swing-arrow {
	0% {
		transform: translate(0);
		opacity: 1
	}
	50% {
		transform: translate(-50%);
		opacity: 0
	}
	50.1% {
		transform: translate(50%);
		opacity: 0
	}
	to {
		transform: translate(0);
		opacity: 1
	}
}
.hm-marge {
	overflow: hidden;
	padding-bottom: 10.7rem
}
@media screen and (min-width: 768px) {
	.hm-marge {
		padding-bottom: 14rem
	}
}
.hm-marge__inner {
	position: relative
}
.hm-marge__top {
	position: relative;
	overflow: hidden;
	height: 2.8rem
}
@media screen and (min-width: 768px) {
	.hm-marge__top {
		height: 8.8rem
	}
}
.hm-marge__top ._inner {
	width: 100%;
	height: 100%;
	transform-origin: center bottom;
	transform: scaleY(var(--scaleY))
}
.hm-marge__top ._inner:before {
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 1;
	content: "";
	display: block;
	width: 220%;
	height: 1740%;
	transform: translate(-50%);
	background-color: var(--color-white1);
	border-radius: 100% 100% 0 0;
	clip-path: polygon(0 0, 100% 0, 100% 50%, 0 50%)
}
@media screen and (min-width: 768px) {
	.hm-marge__top ._inner:before {
		height: 1840%
	}
}
.hm-marge__body {
	position: relative;
	z-index: 2;
	background-color: var(--color-white1)
}
.hm-marge__bottom {
	position: relative;
	overflow: hidden;
	height: 2.8rem
}
@media screen and (min-width: 768px) {
	.hm-marge__bottom {
		height: 8.8rem
	}
}
.hm-marge__bottom ._inner {
	width: 100%;
	height: 100%;
	transform-origin: center top;
	transform: scaleY(var(--scaleY))
}
.hm-marge__bottom ._inner:before {
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	content: "";
	display: block;
	width: 220%;
	height: 1740%;
	transform: translate(-50%);
	background-color: var(--color-white1);
	border-radius: 0 0 100% 100%;
	clip-path: polygon(0 50%, 100% 50%, 100% 100%, 0 100%)
}
@media screen and (min-width: 768px) {
	.hm-marge__bottom ._inner:before {
		height: 1840%
	}
}
.hm-job {
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.hm-job {
		padding-bottom: 16rem
	}
}
.hm-job__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.hm-job__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.hm-job__header .c-sec-header__sub {
	opacity: 0;
	transition: opacity .25s ease
}
.hm-job__header .c-sec-header__sub._visible {
	opacity: 1
}
.hm-job__body {
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.hm-job__body {
		margin-top: 10.4rem
	}
}
.hm-job__connect {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.hm-job__connect {
		margin-top: 8rem;
		justify-content: flex-end
	}
}
.hm-illust {
	padding-top: 10.4rem;
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.hm-illust {
		padding-bottom: 16.8rem
	}
}
.hm-illust__inner {
	display: flex;
	flex-direction: column;
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.hm-illust__inner {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
		width: 96.6rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.hm-illust__wrappwer {
	display: contents
}
@media screen and (min-width: 768px) {
	.hm-illust__wrappwer {
		order: 2;
		display: flex;
		flex-direction: column;
		width: 33.9rem
	}
}
.hm-illust__header {
	order: 1
}
.hm-illust__header .c-sec-header {
	border-top: 0;
	padding-top: 0
}
.hm-illust__header .c-sec-header__sub {
	margin-top: 1.4rem;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.hm-illust__header .c-sec-header__sub {
		width: calc(100% + 1em);
		font-size: 2.4rem
	}
}
.hm-illust__header .c-sec-header__sub ._strong {
	color: var(--color-red)
}
.hm-illust__text {
	order: 3;
	margin-top: 3.8rem
}
@media screen and (min-width: 768px) {
	.hm-illust__text {
		order: 2;
		margin-top: 2.4rem
	}
}
.hm-illust__desc ._txt {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.hm-illust__connect {
	display: flex;
	justify-content: center;
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.hm-illust__connect {
		justify-content: flex-start;
		margin-top: 4rem
	}
}
.hm-illust__visual {
	position: relative;
	order: 2;
	width: calc(100% + 4rem - 2px);
	margin-top: 3.8rem;
	margin-left: -2rem
}
@media screen and (min-width: 768px) {
	.hm-illust__visual {
		order: 1;
		width: 58rem;
		margin-top: 0
	}
}
.hm-illust__visualBg ._img {
	width: 100%
}
.hm-illust__visualAnim {
	position: absolute;
	inset: 0;
	width: 100%;
	opacity: 0
}
.hm-illust__visualAnim._reloaded {
	opacity: 1
}
.hm-illust__visualAnim ._img {
	width: 100%
}
.hm-supporters__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.hm-supporters__inner {
		width: 96.6rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
@media screen and (max-width: 767px) {
	.hm-supporters__inner .c-supporter-card__info {
		margin-top: -5.2rem
	}
}
.hm-supporters__body {
	margin-top: 5rem
}
@media screen and (min-width: 768px) {
	.hm-supporters__body {
		margin-top: 10.4rem
	}
}
.hm-supporters__donate {
	border-bottom: .1rem solid var(--color-gray1);
	padding-bottom: 5rem
}
@media screen and (min-width: 768px) {
	.hm-supporters__donate {
		padding-bottom: 7.2rem
	}
}
.hm-supportera__donateList {
	display: flex;
	flex-wrap: wrap;
	justify-content: center
}
.hm-supportera__donateList ._txt {
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.5;
	transform: translateZ(0)
}
.hm-supportera__picarea {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
    margin-top: 2em;
}
.hm-supportera__picarea h2 {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.4;
	transform: translateZ(0)
}
.hm-supportera__picarea ._txt {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.4;
	transform: translateZ(0)
}
.hm-supportera__picarea ._txt ._strong {
	color: var(--color-red);
}
@media screen and (min-width: 768px) {
	.hm-supportera__picarea h2 {
        font-size: 2.4rem;
    }
	.hm-supportera__picarea ._txt {
        font-size: 2.4rem;
    }
}
@media screen and (min-width: 768px) {
	.hm-supportera__donateList {
		gap: 1.8rem
	}
}
.hm-supportera__donateItem {
	width: 16.3rem
}
@media screen and (min-width: 768px) {
	.hm-supportera__donateItem {
		width: 31rem
	}
}
.hm-supportera__donateItem ._img {
	width: 100%
}
@media screen and (max-width: 767px) {
	.hm-supportera__donateItem:nth-child(1) {
		order: 1;
		scale: 1
	}
    .hm-supportera__donateList ._txt {
        font-weight: 700;
        font-size: 1.3rem;
        line-height: 1.5;
        transform: translateZ(0)
    }
}
@media screen and (max-width: 767px) {
	.hm-supportera__donateItem:nth-child(2) {
		order: 3;
		scale: 1
	}
}
@media screen and (max-width: 767px) {
	.hm-supportera__donateItem:nth-child(3) {
		order: 2;
		scale: 1
	}
}
.hm-supporters__member {
	margin-top: 6.4rem;
	margin-inline: calc(50% - 50vw)
}
@media screen and (min-width: 768px) {
	.hm-supporters__member {
		margin-top: 9.6rem
	}
}
.hm-supporters__partner {
	margin-top: 5.6rem;
	margin-inline: calc(50% - 50vw)
}
@media screen and (min-width: 768px) {
	.hm-supporters__partner {
		margin-top: 7.2rem
	}
}
.hm-supporters__partnerRow {
	height: 6.2rem
}
@media screen and (min-width: 768px) {
	.hm-supporters__partnerRow {
		height: 8.8rem
	}
}
.hm-supporters__partnerRow+.hm-supporters__partnerRow {
	margin-top: .8rem
}
.hm-supporters__partnerSlot {
	display: flex;
	width: max-content;
	height: 100%
}
._setSpStatus .hm-supporters__partnerSlot {
	width: fit-content
}
._setSpStatus ._right .hm-supporters__partnerSlot {
	animation: slidePartnerRightLoop var(--partnerSlide, 36s) linear infinite;
	transform: translate(-50%)
}
@media screen and (min-width: 768px) {
	._setSpStatus ._right .hm-supporters__partnerSlot {
		animation: slidePartnerRightLoop var(--partnerSlide, 57.6s) linear infinite
	}
}
._setSpStatus ._left .hm-supporters__partnerSlot {
	animation: slidePartnerLeftLoop var(--partnerSlide, 25s) linear infinite
}
@media screen and (min-width: 768px) {
	._setSpStatus ._left .hm-supporters__partnerSlot {
		animation: slidePartnerLeftLoop var(--partnerSlide, 40s) linear infinite
	}
}
@keyframes slidePartnerRightLoop {
	0% {
		transform: translate(calc(var(--translate) * -1))
	}
	to {
		transform: translate(0)
	}
}
@keyframes slidePartnerLeftLoop {
	0% {
		transform: translate(0)
	}
	to {
		transform: translate(calc(var(--translate) * -1))
	}
}
.hm-supporters__partnerList {
	display: flex;
	width: max-content
}
._setSpStatus .hm-supporters__partnerList {
	width: fit-content
}
.hm-supporters__partnerItem {
	width: var(--width);
	margin-right: 2.4rem
}
@media screen and (min-width: 768px) {
	.hm-supporters__partnerItem {
		margin-right: 4rem
	}
}
.hm-supporters__partnerItem ._img {
	width: auto;
	height: 100%
}
.hm-supporters__connect {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.hm-supporters__connect {
		justify-content: end;
		margin-top: 8rem
	}
}
@media screen and (min-width: 768px) {
	.hm-smember {
		width: 96.6rem;
		margin-inline: auto
	}
}
.hm-smember__container {
	--width: 22rem;
	overflow: visible;
	position: relative
}
.hm-smember__wrapper {
	position: static
}
.hm-smember__slide {
	padding-inline: 1.6rem;
	backface-visibility: hidden
}
@media screen and (min-width: 768px) {
	.hm-smember__slide {
		padding-inline: 2.9rem 3.5rem
	}
}
.hm-smember__slideInner {
	width: var(--width)
}
@media screen and (min-width: 768px) {
	.hm-smember__slideInner {
		--width: 24rem
	}
}
.hm-smember__controller {
	display: none
}
@media screen and (min-width: 768px) {
	.hm-smember__controller {
		position: absolute;
		top: calc(var(--width) / 2);
		left: -1.6rem;
		z-index: 2;
		display: flex;
		justify-content: space-between;
		width: calc(100% + 3.2rem);
		height: 0
	}
}
.hm-smember__btn {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	border: 0;
	border-radius: 50%;
	transform: translateY(-50%);
	background-color: transparent
}
@media screen and (min-width: 768px) {
	.hm-smember__btn {
		font-size: 7.2rem
	}
}
@media (hover: hover) {
	.hm-smember__btn:hover:before {
		transform: translate(-50%, -50%) scale(.8888888889)
	}
}
.hm-smember__btn._next ._icon {
	rotate: 180deg
}
.hm-smember__btn:before {
	position: absolute;
	inset: 50%;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: .1rem solid var(--color-gray1);
	border-radius: 50%;
	background-color: var(--color-white1);
	transform: translate(-50%, -50%)
}
@media (hover: hover) {
	.hm-smember__btn:before {
		transition: transform .8s cubic-bezier(.19, 1, .22, 1)
	}
}
.hm-smember__btn ._icon {
	display: flex;
	align-items: center;
	width: 1em;
	height: 1em;
	font-size: 1.4rem
}
.hm-smember__btn ._icon:before {
	content: "";
	display: block;
	width: 100%;
	height: .6rem;
	background-color: currentColor;
	clip-path: polygon(0 50%, .6rem 0, .6rem .25rem, 100% .25rem, 100% .35rem, .6rem .35rem, .6rem 100%, 0 50%)
}
.c-suppporter-card {
	width: 100%
}
@media (hover: hover) {
	.c-supporter-card__link {
		cursor: none
	}
	.c-supporter-card__link:hover .c-supporter-card__thumb {
		clip-path: inset(.8rem round 50%)
	}
	.c-supporter-card__link:hover .c-supporter-card__thumb:before {
		opacity: .5
	}
	.c-supporter-card__link:hover .c-supporter-card__thumb ._img {
		transform: scale(1.035)
	}
}
.c-supporter-card__inner {
	position: relative
}
.c-supporter-card__info {
	position: relative;
	margin-top: -4rem
}
@media screen and (min-width: 768px) {
	.c-supporter-card__info {
		margin-top: -5.2rem
	}
}
.c-supporter-card__name {
	order: 2;
	margin-bottom: .5rem;
	transform: translateZ(0)
}
.c-supporter-card__name ._txt {
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.5
}
.c-supporter-card__name ._txt>span {
	background-color: var(--color-white1);
	border-radius: .3rem;
	padding-right: .3em
}
.c-supporter-card__post {
	width: calc(100% + 1em)
}
.c-supporter-card__post ._txt {
	font-weight: 300;
	font-size: 1.3rem;
	line-height: 1;
	transform: translateZ(0)
}
.c-supporter-card__post ._txt ._l {
	background-color: var(--color-white1);
	border-top-right-radius: .3rem;
	border-bottom-right-radius: .3rem;
	padding-right: .3em;
	line-height: 1.3;
	padding-bottom: 1px
}
.c-supporter-card__post ._txt ._l:first-of-type {
	border-top-left-radius: .3rem;
	position: relative
}
.c-supporter-card__post ._txt ._l:last-of-type {
	border-bottom-left-radius: .3rem
}
.c-supporter-card__relative {
	order: 4;
	text-transform: uppercase;
	margin-top: 1.5rem
}
@media screen and (min-width: 768px) {
	.c-supporter-card__relative {
		margin-top: 2rem
	}
}
.c-supporter-card__relative ._txt {
	color: var(--color-gray2);
	font-family: Poppins, sans-serif;
	font-size: 1.1rem
}
.c-supporter-card__thumb {
	position: relative;
	width: 1em;
	height: 1em;
	font-size: var(--width);
	clip-path: inset(0 round 50%)
}
@media (hover: hover) {
	.c-supporter-card__thumb {
		transition: clip-path .8s cubic-bezier(.19, 1, .22, 1)
	}
	.c-supporter-card__thumb:before {
		transition: opacity .55s cubic-bezier(.26, .06, 0, 1)
	}
}
.c-supporter-card__thumb:before {
	position: absolute;
	inset: 0;
	z-index: 2;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	background-color: var(--font-color-black)
}
.c-supporter-card__thumb ._img {
	width: 100%
}
@media (hover: hover) {
	.c-supporter-card__thumb ._img {
		transition: transform .8s cubic-bezier(.19, 1, .22, 1)
	}
}
.c-supporter-card__modal {
	display: none
}
.hm-news {
	padding-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.hm-news {
		padding-bottom: 14.4rem
	}
}
.hm-news__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.hm-news__inner {
		width: 96.6rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.hm-news__body {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.hm-news__body {
		width: 66.6rem;
		margin-top: -4.5rem;
		margin-left: auto
	}
}
.hm-news__list {
	border-top: .1rem solid var(--color-gray1)
}
.hm-news__listItem {
	border-bottom: .1rem solid var(--color-gray1)
}
.hm-news__connect {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.hm-news__connect {
		justify-content: flex-end;
		margin-top: 5.6rem
	}
}
.hm-news-slot {
	overflow: hidden
}
.hm-news-slot__link {
	display: block
}
@media (hover: hover) {
	.hm-news-slot__link {
		transition: transform .3s cubic-bezier(.64, .05, .35, 1)
	}
	.hm-news-slot__link:hover {
		transform: translate(1.6rem)
	}
	.hm-news-slot__link:hover .hm-news-slot__summary ._txt {
		background-position: bottom left;
		background-size: 100% 100%
	}
}
.hm-news-slot__linkInner {
	position: relative;
	display: flex;
	padding-block: 2.4rem;
	gap: 2.4rem
}
@media screen and (min-width: 768px) {
	.hm-news-slot__linkInner {
		gap: 3.2rem
	}
	.hm-news-slot__linkInner:after {
		position: absolute;
		top: 50%;
		right: 2.4rem;
		content: "";
		display: block;
		width: .8rem;
		height: 1rem;
		background-color: var(--font-color-black);
		clip-path: polygon(0 0, 100% 50%, 0 100%);
		transform: translateY(-50%)
	}
}
.hm-news-slot__thumb {
	flex-shrink: 0;
	width: 13.2rem;
	background-color: var(--color-white1);
	clip-path: inset(0 round .3rem);
	position: relative
}
.hm-news-slot__thumb:after {
	content: "";
	display: block;
	padding-top: 66.8604651163%;
	pointer-events: none
}
.hm-news-slot__thumb>._img {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto
}
.hm-news-slot__text {
	display: flex;
	flex-direction: column;
	justify-content: center
}
@media screen and (min-width: 768px) {
	.hm-news-slot__text {
		padding-right: 8.8rem
	}
}
.hm-news-slot__info {
	display: flex;
	align-items: center;
	font-family: Poppins, sans-serif;
	font-weight: 300;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
.hm-news-slot__info:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: #e60012;
	border-radius: 50%;
	font-size: .4rem;
	margin-right: 1rem
}
.hm-news-slot__date {
	display: flex;
	align-items: center
}
.hm-news-slot__date:before {
	content: "";
	display: block;
	width: .1rem;
	height: 1rem;
	background-color: var(--color-gray1);
	margin-inline: .7rem .9rem
}
.hm-news-slot__summary {
	margin-top: 1rem
}
@media screen and (max-width: 767px) {
	.hm-news-slot__summary {
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
		font-feature-settings: "palt"
	}
}
.hm-news-slot__summary ._txt {
	display: inline;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.4
}
@media (hover: hover) {
	.hm-news-slot__summary ._txt {
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		transition: background-size .25s ease
	}
}
.home:not(.is-loaded) .l-contact, .home:not(.is-loaded) .l-footer {
	display: none
}
.home .l-nav, .home .l-contact, .home .l-footer, .home .hm-body {
	content-visibility: hidden
}
.home.is-loaded .l-nav, .home.is-loaded .l-contact, .home.is-loaded .l-footer, .home.is-loaded .hm-body {
	content-visibility: auto;
	visibility: visible
}
@media screen and (max-width: 767px) {
	.fe-visual {
		margin-top: -.5rem;
		padding-top: .5rem;
		background-color: var(--color-white2)
	}
}
.fe-visual__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.fe-visual__inner {
		padding-inline: 20.7rem 0
	}
}
.fe-visual__picture {
	overflow: hidden;
	border-radius: .3rem
}
@media screen and (max-width: 767px) {
	.fe-visual__picture {
		aspect-ratio: 335/251
	}
}
@media screen and (min-width: 768px) {
	.fe-visual__picture {
		margin-right: -8.8rem;
		border-radius: .6rem 0 0 .6rem
	}
}
.fe-visual__picture ._img {
	object-fit: cover;
	width: 100%;
	height: 100%
}
.fe-value {
	margin-top: 10.4rem;
	padding-bottom: 11.2rem
}
@media screen and (min-width: 768px) {
	.fe-value {
		margin-top: 14.4rem;
		padding-bottom: 12rem
	}
}
.fe-value__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.fe-value__inner {
		padding-inline: 20.7rem 0
	}
}
.fe-value__body {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.fe-value__body {
		margin-top: 8rem
	}
}
.fe-value__reasonList {
	counter-reset: count
}
.fe-value__reasonItem {
	position: relative;
	counter-increment: count
}
@media screen and (min-width: 768px) {
	.fe-value__reasonItem {
		padding-left: 13.8rem
	}
}
.fe-value__reasonItem:before {
	color: var(--color-red);
	font-family: Poppins, sans-serif;
	font-style: italic;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1;
	letter-spacing: -.05em;
	content: "#0" counter(count)
}
@media screen and (min-width: 768px) {
	.fe-value__reasonItem:before {
		position: absolute;
		left: 0;
		margin-top: 1rem
	}
}
.fe-value__reasonItem:nth-child(n+2) {
	margin-top: 7.2rem;
	padding-top: 4.8rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.fe-value__reasonItem:nth-child(n+2) {
		margin-top: 9.6rem;
		padding-top: 6.4rem
	}
}
.fe-value-reason {
	margin-top: 3.2rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason {
		margin-top: 0
	}
}
.fe-value-reason__body {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason__body {
		margin-top: 5.6rem
	}
}
.fe-value-reason-header__title {
	color: var(--color-red);
	font-weight: 700;
	font-size: 2.8rem;
	line-height: 1.3;
	letter-spacing: -.02em;
	text-transform: uppercase
}
@media screen and (min-width: 768px) {
	.fe-value-reason-header__title {
		font-size: 3.2rem
	}
}
.fe-value-reason-header__desc {
	margin-top: 1.2rem;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.fe-value-reason-header__desc {
		font-size: 2.4rem
	}
}
@media screen and (min-width: 768px) {
	.fe-value-reason1 {
		margin-top: -.9rem
	}
}
.fe-value-reason1__desc ._txt {
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.fe-value-reason1__desc ._txt {
		font-size: 1.7rem;
		line-height: 2.2
	}
}
.fe-value-reason1__desc ._txt+._txt {
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason1__desc ._txt+._txt {
		margin-top: 3.2rem
	}
}
.fe-value-reason1__step {
	position: relative;
	z-index: 2;
	margin-top: 1.6rem;
	margin-bottom: -5.6rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason1__step {
		width: 110.4rem;
		margin-left: -34.5rem;
		margin-block: -53rem 0;
		translate: 0 18.8rem
	}
}
@media screen and (min-width: 768px) {
	.fe-value-reason1__stepInner {
		overflow: hidden;
		margin-inline: calc(50% - 50vw)
	}
}
@media screen and (min-width: 768px) {
	.fe-value-reason1__stepContainer {
		width: 110.4rem;
		margin-inline: auto
	}
}
@media screen and (min-width: 768px) {
	.fe-value-reason1__stepImage {
		width: 53rem;
		height: 55.3rem;
		margin-left: auto;
		translate: 28.9rem 0
	}
}
.fe-value-reason1__stepImage ._img {
	width: 100%
}
.fe-value-reason2 {
	padding-block: 2.7rem 3.2rem;
	background-color: var(--color-white1);
	border-radius: .6rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason2 {
		padding-block: 4rem 4.8rem
	}
}
.fe-value-reason2__inner {
	padding-inline: 3.1rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason2__inner {
		padding-inline: 5.6rem
	}
}
.fe-value-reason2__listItem:nth-child(n+2) {
	margin-top: 3.2rem;
	padding-top: 2.7rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.fe-value-reason2__listItem:nth-child(n+2) {
		margin-top: 4.8rem;
		padding-top: 4rem
	}
}
.fe-value-reason2__sec {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center
}
@media screen and (min-width: 768px) {
	.fe-value-reason2__sec {
		display: block;
		padding-top: 1.6rem;
		padding-left: 8.2rem
	}
}
.fe-value-reason2__icon {
	display: block;
	width: 1em;
	height: 1em;
	font-size: 5.2rem;
	background-color: var(--color-red);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 2.2rem;
	border-radius: 50%
}
@media screen and (min-width: 768px) {
	.fe-value-reason2__icon {
		position: absolute;
		top: 0;
		left: 0;
		font-size: 5.6rem
	}
}
.fe-value-reason2__icon._agreement {
	background-size: 2.4rem
}
.fe-value-reason2__secTtl {
	margin-left: 1.6rem;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.fe-value-reason2__secTtl {
		margin-left: 0;
		font-size: 2.2rem
	}
}
.fe-value-reason2__desc {
	width: 100%;
	margin-top: 1.4rem;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.fe-value-reason2__desc {
		margin-top: 2rem
	}
}
.fe-value-reason3 {
	margin-top: .8rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason3 {
		margin-top: 0
	}
}
.fe-value-reason3__charm {
	counter-reset: charms
}
@media screen and (min-width: 768px) {
	.fe-value-reason3__charm {
		display: flex;
		justify-content: space-between
	}
}
.fe-value-reason3__charmItem {
	counter-increment: charms
}
@media screen and (min-width: 768px) {
	.fe-value-reason3__charmItem {
		width: calc((100% - 3.9rem)/2)
	}
}
@media screen and (max-width: 767px) {
	.fe-value-reason3__charmItem:nth-child(n+2) {
		margin-top: 4rem
	}
}
.fe-value-reason3__sec {
	padding-inline: 1.2rem
}
@media screen and (min-width: 768px) {
	.fe-value-reason3__sec {
		padding-inline: 0
	}
}
.fe-value-reason3__header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	font-size: 31.1rem;
	background-color: var(--color-white1);
	border-radius: 50%
}
@media screen and (min-width: 768px) {
	.fe-value-reason3__header {
		font-size: 36rem
	}
}
.fe-value-reason3__header:before {
	content: "0" counter(charms);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4rem;
	height: 4rem;
	color: var(--color-white1);
	font-family: Poppins, sans-serif;
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: -.02em;
	background-color: var(--font-color-black);
	border-radius: 50%
}
.fe-value-reason3__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: 2.4rem
}
.fe-value-reason3__title ._ja {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.02em
}
.fe-value-reason3__title ._en {
	margin-top: 1.2rem;
	color: var(--color-gray2);
	font-weight: 400;
	font-family: Poppins, sans-serif;
	font-size: 1.2rem;
	line-height: 1.2;
	letter-spacing: -.01em
}
.fe-value-reason3__desc {
	margin-top: 2rem;
	margin-inline: 1.9rem;
	padding-top: 1.7rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.fe-value-reason3__desc {
		margin-top: 4rem;
		margin-inline: 1.6rem;
		padding-top: 2.4rem
	}
}
.fe-value-reason3__desc ._txt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em
}
.fe-road {
	padding-top: 6.4rem;
	padding-inline: 2rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.fe-road {
		margin-inline: calc(50% - 50vw);
		padding-top: 12.8rem;
		padding-inline: 0
	}
}
@media screen and (min-width: 768px) {
	.fe-road__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-left: 20.7rem
	}
}
.fe-road__header .c-sec-header__sub {
	opacity: 0;
	transition: opacity .25s ease
}
.fe-road__header .c-sec-header__sub._visible {
	opacity: 1
}
@media screen and (min-width: 768px) {
	.fe-road__body {
		display: flex;
		justify-content: space-between;
		margin-top: 6.4rem
	}
}
@media screen and (max-width: 767px) {
	.fe-road__visual {
		width: calc(100% + 4rem);
		margin-left: -2rem
	}
}
@media screen and (min-width: 768px) {
	.fe-road__visual {
		width: 58rem
	}
}
.fe-road__visual ._img {
	width: 100%
}
.fe-road__growth {
	overflow: auto;
	margin-top: 5.7rem;
	width: calc(100% + 4rem);
	margin-left: -2rem
}
@media screen and (min-width: 768px) {
	.fe-road__growth {
		display: flex;
		align-items: flex-end;
		width: 26rem;
		margin-top: 0;
		margin-left: 0;
		padding-bottom: 8rem
	}
}
@media screen and (max-width: 767px) {
	.fe-road__growthInner {
		width: fit-content;
		padding-inline: 2rem
	}
}
.fe-road__growthSteps {
	display: flex
}
@media screen and (min-width: 768px) {
	.fe-road__growthSteps {
		flex-direction: column-reverse
	}
}
.fe-road__growthStep {
	flex-shrink: 0;
	width: 24.4rem;
	padding: 1.6rem 2rem;
	background-color: var(--color-white2)
}
@media screen and (min-width: 768px) {
	.fe-road__growthStep {
		width: 100%;
		padding: 2rem 2.4rem
	}
}
.fe-road__growthStep:nth-child(n+2) {
	position: relative;
	margin-left: 4rem
}
@media screen and (min-width: 768px) {
	.fe-road__growthStep:nth-child(n+2) {
		margin-bottom: 5.6rem;
		margin-left: 0
	}
}
.fe-road__growthStep:nth-child(n+2):before {
	position: absolute;
	content: "";
	top: calc(50% - .5rem);
	left: -2.4rem;
	display: block;
	width: .8rem;
	height: 1rem;
	background-color: var(--font-color-black);
	clip-path: polygon(0 0, 100% 50%, 0 100%)
}
@media screen and (min-width: 768px) {
	.fe-road__growthStep:nth-child(n+2):before {
		top: auto;
		bottom: -3.2rem;
		left: calc(50% - .5rem);
		width: 1rem;
		height: .8rem;
		clip-path: polygon(50% 0, 100% 100%, 0 100%)
	}
}
.fe-road__growthStatus {
	color: var(--color-red);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: -.02em;
	text-transform: uppercase
}
@media screen and (min-width: 768px) {
	.fe-road__growthStatus {
		text-align: center
	}
}
.fe-road__growthDesc {
	margin-top: .6rem;
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -.02em
}
.fe-training {
	padding-top: 10.4rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.fe-training {
		margin-inline: calc(50% - 50vw);
		padding-block: 12.8rem 3.2rem
	}
}
.fe-training__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.fe-training__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 20.7rem 0
	}
}
.fe-training__header .c-sec-header__sub {
	opacity: 0;
	transition: opacity .25s ease
}
.fe-training__header .c-sec-header__sub._visible {
	opacity: 1
}
.fe-training__body {
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.fe-training__body {
		margin-top: 8rem
	}
}
.fe-training__stepItem:not(:last-child) {
	border-bottom: .1rem solid var(--color-gray1)
}
.fe-training__stepItem:nth-child(n+2) {
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.fe-training__stepItem:nth-child(n+2) {
		margin-top: 8rem
	}
}
.fe-training-step__title {
	color: var(--color-red);
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: -.02em
}
.fe-training-step__desc {
	margin-top: 1.4rem;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: -.02em
}
.fe-training-step__body {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.fe-training-step__body {
		margin-top: 3.2rem
	}
}
.fe-training-step__contentsList {
	counter-reset: contents
}
.fe-training-step__contentsItem {
	counter-increment: contents;
	border-top: .1rem solid var(--color-gray1)
}
.fe-training-contents__inner {
	display: flex;
	flex-direction: column;
	padding: 3.2rem 0 3.1rem
}
@media screen and (min-width: 768px) {
	.fe-training-contents__inner {
		display: block;
		padding: 0
	}
}
.fe-training-contents__header {
	display: contents
}
@media screen and (min-width: 768px) {
	.fe-training-contents__header {
		position: relative;
		display: block
	}
}
.fe-training-contents__target {
	display: flex;
	align-items: center;
	width: 100%;
	appearance: none;
	border: 0;
	background-color: transparent
}
@media screen and (min-width: 768px) {
	.fe-training-contents__target {
		height: 14.6rem;
		padding-block: 2.4rem;
		box-sizing: content-box
	}
}
@media (hover: hover) {
	.fe-training-contents__target:hover .fe-training-contents__toggle {
		background-color: var(--font-color-black)
	}
	.fe-training-contents__target:hover .fe-training-contents__toggle ._icon:before, .fe-training-contents__target:hover .fe-training-contents__toggle ._icon:after {
		background-color: var(--color-white1)
	}
}
.fe-training-contents__toggle {
	order: 2;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	margin-left: auto;
	font-size: 4rem;
	border: .1rem solid var(--color-gray2);
	border-radius: 50%;
	transition: background-color .25s ease
}
@media screen and (min-width: 768px) {
	.fe-training-contents__toggle {
		order: 1;
		margin-inline: 0 9.6rem
	}
}
.is-open .fe-training-contents__toggle {
	background-color: var(--font-color-black)
}
.is-open .fe-training-contents__toggle ._icon:after {
	background-color: var(--color-white1);
	transform: rotate(0)
}
.fe-training-contents__toggle ._icon {
	position: relative;
	display: block;
	width: 1em;
	height: 1em;
	font-size: 1.7rem
}
.fe-training-contents__toggle ._icon:before {
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	margin-inline: auto;
	background-color: var(--font-color-black)
}
@media (hover: hover) {
	.fe-training-contents__toggle ._icon:before {
		transition: background-color .25s ease, transform .25s ease
	}
}
.fe-training-contents__toggle ._icon:after {
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	margin-inline: auto;
	background-color: var(--font-color-black);
	transform: rotate(-90deg);
	transform-origin: center;
	transition: background-color .25s ease, transform .25s ease
}
.fe-training-contents__title {
	order: 1;
	position: relative;
	padding-left: 3.5rem;
	text-align: left
}
@media screen and (min-width: 768px) {
	.fe-training-contents__title {
		order: 2;
		padding-left: 3.7rem
	}
}
.fe-training-contents__title:before {
	position: absolute;
	left: 0;
	content: "0" counter(contents) ".";
	font-size: 2em;
	font-family: Poppins, sans-serif;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -.05em
}
.fe-training-contents__title ._ja {
	display: block;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.02em
}
.fe-training-contents__title ._en {
	display: block;
	margin-top: 1.3rem;
	color: var(--color-gray2);
	font-weight: 400;
	font-size: 1.2rem;
	font-family: Poppins, sans-serif;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: capitalize
}
.fe-training-contents__thumb {
	order: 3;
	overflow: hidden;
	width: 100%;
	margin-top: 3.2rem;
	border-radius: .4rem
}
@media screen and (min-width: 768px) {
	.fe-training-contents__thumb {
		position: absolute;
		top: 50%;
		right: 0;
		width: 26rem;
		margin-top: 0;
		border-radius: .3rem;
		transform: translateY(-50%);
		pointer-events: none
	}
}
.fe-training-contents__thumb ._img {
	width: 100%
}
.fe-training-contents__body {
	order: 2
}
.fe-training-contents__container {
	padding-top: 3.2rem;
	padding-left: 3.5rem
}
@media screen and (min-width: 768px) {
	.fe-training-contents__container {
		padding-top: 0;
		padding-left: 17.5rem;
		padding-bottom: 4.7rem
	}
}
.fe-training-contents__desc ._txt {
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: .02em
}
.fe-training-contents__detail {
	border-left: .1rem solid var(--color-gray2);
	margin-top: 2.4rem;
	padding-left: 1.8rem
}
@media screen and (min-width: 768px) {
	.fe-training-contents__detail {
		padding-left: 2.6rem
	}
}
.fe-training-contents__cource ._item {
	position: relative;
	padding-left: calc(1em + .3rem);
	font-size: 1.2rem;
	line-height: 1.3;
	letter-spacing: -.02em
}
.fe-training-contents__cource ._item:before {
	position: absolute;
	left: 0;
	content: "・"
}
.fe-training-contents__cource ._item+._item {
	margin-top: .4rem
}
@media screen and (min-width: 768px) {
	.fe-training-contents__cource ._item+._item {
		margin-top: .2rem
	}
}
.fe-training-contents__achievement ._txt {
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.3;
	letter-spacing: -.02em;
	font-feature-settings: "palt"
}
.fe-training-contents__achievement ._list {
	margin-top: .4rem
}
.fe-training-contents__achievement ._item {
	font-size: 1.2rem;
	line-height: 1.3;
	letter-spacing: -.02em
}
.fe-training-contents__achievement ._item+._item {
	margin-top: .2rem
}
.fe-training-contents__cource+.fe-training-contents__achievement {
	margin-top: 1.6rem
}
.fe-movie {
	padding-block: 8.8rem
}
@media screen and (min-width: 768px) {
	.fe-movie {
		padding-block: 12.8rem
	}
}
.fe-movie .c-sec-header {
	padding-top: 0;
	border: 0
}
.fe-movie__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.fe-movie__inner {
		display: flex;
		padding-inline: 20.7rem 0
	}
}
@media screen and (min-width: 768px) {
	.fe-movie__header {
		display: flex;
		align-items: center
	}
}
.fe-movie__header .c-sec-header__sub {
	opacity: 0;
	transition: opacity .25s ease
}
.fe-movie__header .c-sec-header__sub._visible {
	opacity: 1
}
.fe-movie__body {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.fe-movie__body {
		margin-top: 0;
		margin-left: auto
	}
}
.fe-movie__frame {
	overflow: hidden;
	position: relative;
	aspect-ratio: 560/315;
	border-radius: .6rem
}
@media screen and (min-width: 768px) {
	.fe-movie__frame {
		width: 57.5rem
	}
}
.fe-movie__entity {
	width: 100%;
	height: 100%
}
.jo-search {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.jo-search {
		margin-top: 10.4rem
	}
}
.jo-search__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.jo-search__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.jo-search__uiItem:nth-child(n+2) {
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.jo-search__uiItem:nth-child(n+2) {
		margin-top: 2.4rem
	}
}
.jo-search__result {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.jo-search__result {
		margin-top: 5.6rem
	}
}
.jo-search__pager {
	margin-top: 4rem;
	padding-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.jo-search__pager {
		margin-top: 8.8rem;
		padding-bottom: 14.4rem
	}
}
.jo-search__pager:empty {
	margin-top: 0
}
@media screen and (min-width: 768px) {
	.jo-search-category {
		display: flex;
		align-items: center
	}
}
@media screen and (min-width: 768px) {
	.jo-search-category__name {
		width: 6.7rem;
		margin-right: 1.6rem
	}
}
.jo-search-category__name ._txt {
	font-weight: 500;
	line-height: 1;
	letter-spacing: -.02em;
	font-size: 1.3rem
}
.jo-search-category__name ._txt:after {
	content: "：";
	display: inline-block
}
.jo-search-category__value {
	overflow: scroll;
	margin-top: 1.6rem;
	margin-inline: calc(50% - 50vw)
}
@media screen and (min-width: 768px) {
	.jo-search-category__value {
		margin-top: 0;
		margin-inline: 0
	}
}
.jo-search-category__value::-webkit-scrollbar {
	display: none
}
.jo-search-category__valueInner {
	display: flex;
	gap: .6rem;
	padding-left: 2rem
}
@media screen and (min-width: 768px) {
	.jo-search-category__valueInner {
		gap: .8rem;
		padding-left: 0
	}
}
.jo-search-category__valueItem {
	flex-shrink: 0
}
.jo-search-category__valueItem ._btn {
	display: flex;
	align-items: center;
	height: 2.6rem;
	padding-inline: 1.4rem;
	border-radius: 2rem;
	border: 0;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.jo-search-category__valueItem ._btn {
		font-size: 1.2rem
	}
}
@media (hover: hover) {
	.jo-search-category__valueItem ._btn {
		transition: color .25s ease, background-color .25s ease
	}
	.jo-search-category__valueItem ._btn:hover {
		color: var(--color-white1);
		background-color: var(--color-red)
	}
}
.jo-search-category__valueItem ._btn._current {
	color: var(--color-white1);
	background-color: var(--color-red)
}
.jo-search-category__valueItem:last-child {
	padding-right: 2rem
}
.job.detail .c-sec-header__ttl._ja {
	font-size: 2.8rem
}
@media screen and (min-width: 768px) {
	.job.detail .c-sec-header__ttl._ja {
		font-size: 3.2rem
	}
}
.jd-kv {
	padding-block: 9.4rem 0
}
@media screen and (min-width: 768px) {
	.jd-kv {
		padding-block: 16rem 0
	}
}
.jd-kv__inner {
	display: flex;
	flex-wrap: wrap;
	margin-inline: 2rem;
	padding-bottom: 9.8rem
}
@media screen and (min-width: 768px) {
	.jd-kv__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-bottom: 4rem
	}
}
.jd-kv__contents {
	order: 2;
	width: 100%;
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.jd-kv__contents {
		margin-top: 2.4rem
	}
}
.jd-kv__breadcramb {
	order: 1;
	display: flex;
	justify-content: flex-end;
	width: 100%
}
.jd-kv-job {
	height: 100%
}
.jd-kv-job__inner {
	display: flex
}
@media screen and (max-width: 767px) {
	.jd-kv-job__inner {
		flex-direction: column
	}
}
@media screen and (min-width: 768px) {
	.jd-kv-job__inner {
		justify-content: space-between
	}
}
.jd-kv-job__text {
	display: contents
}
@media screen and (min-width: 768px) {
	.jd-kv-job__text {
		order: 2;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 48.8rem;
		margin-left: auto
	}
}
.jd-kv-job__title {
	order: 3;
	margin-top: 1.6rem
}
@media screen and (min-width: 768px) {
	.jd-kv-job__title {
		margin-top: 4rem
	}
}
.jd-kv-job__title ._txt {
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.5;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.jd-kv-job__title ._txt {
		font-size: 2.8rem
	}
}
.jd-kv-job__com {
	order: 4;
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.jd-kv-job__com {
		margin-top: 3.2rem
	}
}
.jd-kv-job__com ._txt {
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
.jd-kv-job__info {
	order: 5;
	display: flex;
	flex-wrap: wrap;
	margin-top: 1.2rem
}
@media screen and (min-width: 768px) {
	.jd-kv-job__info {
		align-items: center;
		margin-top: 1.3rem
	}
}
.jd-kv-job__pref {
	order: 3;
	display: flex;
	align-items: center;
	height: 3rem;
	margin-left: 1.2rem;
	padding-inline: .8rem 1.2rem;
	background-color: var(--color-gray3);
	border-radius: .3rem
}
.jd-kv-job__pref ._icon {
	display: block;
	width: 1em;
	height: 1em;
	margin-right: .4rem;
	font-size: 1.6rem
}
.jd-kv-job__pref ._icon ._entity {
	width: 100%;
	height: 100%
}
.jd-kv-job__pref ._txt {
	font-weight: 500;
	font-size: 1.2rem
}
.jd-kv-job__personItems {
	order: 1;
	width: 100%;
	margin-bottom: 4rem;
	text-align: right;
	color: var(--color-gray2);
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: -.02em;
	display: flex;
	flex-direction: column;
	gap: .8rem
}
@media screen and (min-width: 768px) {
	.jd-kv-job__personItems {
		padding-bottom: 4rem;
		border-bottom: .1rem solid var(--color-gray1)
	}
}
.jd-kv-job__person {
	display: flex
}
.jd-kv-job__person>dd {
	margin-left: .6rem
}
.jd-kv-job__updated {
	order: 4;
	margin-left: auto
}
@media screen and (max-width: 767px) {
	.jd-kv-job__updated {
		width: 100%;
		margin-top: 2.4rem
	}
}
.jd-kv-job__updated ._txt {
	color: var(--color-gray2);
	font-family: Poppins, sans-serif;
	font-weight: 300;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: -.01em
}
.jd-kv-job__training {
	order: 2;
	--f-color: var(--font-color-black);
	--b-color: transparent
}
.jd-kv-job__training._exist {
	--f-color: var(--color-white1);
	--b-color: var(--font-color-black)
}
.jd-kv-job__training ._txt {
	display: flex;
	align-items: center;
	height: 3rem;
	padding-inline: .8rem;
	color: var(--f-color);
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 0;
	background-color: var(--b-color);
	border-radius: .3rem;
	text-transform: uppercase;
	border: .1rem solid var(--font-color-black)
}
.jd-kv-job__industry {
	order: 2;
	z-index: 1;
	display: flex;
	align-items: center;
	width: fit-content;
	height: 3.5rem;
	margin-top: -1.75rem;
	padding-inline: .8rem 1.6rem;
	color: var(--color-red);
	border: .1rem solid currentColor;
	border-radius: .3rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.jd-kv-job__industry {
		margin-top: 0
	}
}
.jd-kv-job__industry ._icon {
	position: relative;
	display: inline-block;
	width: 1em;
	height: 1em;
	font-size: 2.8rem;
	margin-right: .6rem
}
.jd-kv-job__industry ._icon:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: var(--color-red);
	mix-blend-mode: screen
}
.jd-kv-job__industry ._icon ._img {
	width: 100%
}
.jd-kv-job__purpose {
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0
}
.jd-kv-job__thumb {
	order: 1;
	overflow: hidden;
	aspect-ratio: 335/231;
	border-radius: .6rem
}
@media screen and (min-width: 768px) {
	.jd-kv-job__thumb {
		aspect-ratio: 1/1;
		width: 55.2rem
	}
}
.jd-kv-job__thumb ._img {
	width: 100%;
	height: 100%;
	object-fit: cover
}
.jd-prof {
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.jd-prof {
		padding-bottom: 16rem
	}
}
.jd-prof__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.jd-prof__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 20.7rem 0
	}
}
.jd-prof__body {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.jd-prof__body {
		margin-top: 7.2rem
	}
}
.jd-prof__list {
	border-top: .1rem solid var(--color-gray1)
}
.jd-prof__listItem {
	border-bottom: .1rem solid var(--color-gray1)
}
.jd-prof__slot {
	position: relative;
	display: flex
}
.jd-prof__slot>.js-profileAccordion__trigger {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: pointer
}
@media screen and (min-width: 768px) {
	.jd-prof__slot._immovable {
		padding-left: 13.8rem
	}
}
.jd-prof__slot._immovable .js-profileAccordion__trigger, .jd-prof__slot._immovable .jd-prof__toggle {
	display: none!important
}
@media (hover: hover) {
	.jd-prof__slot:hover .jd-prof__toggle {
		background-color: var(--font-color-black)
	}
	.jd-prof__slot:hover .jd-prof__toggle ._icon:before, .jd-prof__slot:hover .jd-prof__toggle ._icon:after {
		background-color: var(--color-white1)
	}
}
.jd-prof__slotStatus {
	display: none
}
.jd-prof__toggle {
	order: 2;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	width: 1em;
	height: 1em;
	margin-left: auto;
	font-size: 4rem;
	border: .1rem solid var(--color-gray2);
	border-radius: 50%;
	transition: background-color .25s ease
}
@media screen and (max-width: 767px) {
	.jd-prof__toggle {
		position: absolute;
		top: 3.5rem;
		right: 0
	}
}
@media screen and (min-width: 768px) {
	.jd-prof__toggle {
		order: 1;
		margin-top: 8.4rem;
		margin-inline: 0 9.8rem
	}
}
.is-open .jd-prof__toggle {
	background-color: var(--font-color-black)
}
.is-open .jd-prof__toggle ._icon:after {
	background-color: var(--color-white1);
	transform: rotate(0)
}
.jd-prof__toggle ._icon {
	position: relative;
	display: block;
	width: 1em;
	height: 1em;
	font-size: 1.7rem
}
.jd-prof__toggle ._icon:before {
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	margin-inline: auto;
	background-color: var(--font-color-black)
}
@media (hover: hover) {
	.jd-prof__toggle ._icon:before {
		transition: background-color .25s ease
	}
}
.jd-prof__toggle ._icon:after {
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	margin-inline: auto;
	background-color: var(--font-color-black);
	transform: rotate(-90deg);
	transform-origin: center;
	transition: background-color .25s ease, transform .25s ease
}
.jd-prof__slotText {
	order: 2;
	padding-block: 3.2rem;
	position: relative;
	z-index: 2;
	pointer-events: none
}
@media screen and (min-width: 768px) {
	.jd-prof__slotText {
		padding-block: 4.8rem
	}
}
.jd-prof__slotText__g {
	overflow: hidden
}
.jd-prof__slotTitle {
	display: flex;
	align-items: center;
	padding-right: 6.4rem;
	font-weight: 700;
	font-size: 1.8rem;
	letter-spacing: -.02em
}
@media screen and (max-width: 767px) {
	.jd-prof__slotTitle {
		min-height: 4.4rem;
		line-height: 1.2
	}
}
@media screen and (min-width: 768px) {
	.jd-prof__slotTitle {
		line-height: 1.4
	}
}
.jd-prof__slotDesc {
	height: 12.6rem;
	margin-top: 1.2rem;
	font-size: 1.4rem;
	line-height: 1.8;
	font-feature-settings: "palt"
}
@media screen and (min-width: 768px) {
	.jd-prof__slotDesc {
		height: 7.56rem;
		letter-spacing: -.02em
	}
}
.jd-prof__slot:not(.is-open) .jd-prof__slotDesc {
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden
}
@media screen and (min-width: 768px) {
	.jd-prof__slot:not(.is-open) .jd-prof__slotDesc {
		-webkit-line-clamp: 3
	}
}
.jd-prof__slotDesc ._txt {
	word-break: break-all
}
.jd-prof__slotDesc a {
	color: var(--color-red);
	pointer-events: auto
}
@media (hover: hover) {
	.jd-prof__slotDesc a {
		transition: opacity .25s ease
	}
	.jd-prof__slotDesc a:hover {
		opacity: .5
	}
}
.jd-prof__slotDesc ._txt ul {
	list-style-type: none;
	list-style-position: outside;
	padding-left: 2rem
}
.jd-prof__slotDesc ._txt ul>li {
	position: relative
}
.jd-prof__slotDesc ._txt ul>li:before {
	position: absolute;
	top: .9em;
	left: -1.1rem;
	display: block;
	width: .3rem;
	height: .3rem;
	background-color: currentColor;
	border-radius: 50%;
	transform: translateY(-50%);
	content: ""
}
.jd-prof__slotDesc ._txt ol {
	list-style: revert;
	list-style-position: outside;
	padding-left: 2rem
}
.jd-prof__slotDesc ._txt ol>li::marker {
	font-size: 1.4rem
}
.jd-prof__training {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.jd-prof__training {
		margin-top: 5.6rem
	}
}
.jd-prof__trainingDetail {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-block: 3.2rem 4rem;
	background-color: var(--color-gray1);
	border-radius: .3rem;
	--b-color: var(--color-white1);
	--f-color: var(--font-color-black)
}
@media screen and (min-width: 768px) {
	.jd-prof__trainingDetail {
		flex-direction: row;
		padding: 4.1rem 4rem
	}
}
.jd-prof__trainingDetail ._head {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	height: 4rem;
	padding-inline: 1.4rem;
	color: var(--f-color);
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 0;
	background-color: var(--b-color);
	border-radius: .3rem;
	text-transform: uppercase;
	border: 1px solid var(--font-color-black)
}
@media screen and (min-width: 768px) {
	.jd-prof__trainingDetail ._head {
		padding-inline: 1.3rem
	}
}
.jd-prof__trainingDetail ._head._exist {
	--b-color: var(--font-color-black);
	--f-color: var(--color-white1)
}
.jd-prof__trainingDetail ._body {
	margin-top: 2rem;
	font-size: 1.3rem;
	line-height: 1.8;
	letter-spacing: -.02em;
	text-transform: uppercase;
	font-feature-settings: "palt";
	text-align: center
}
@media screen and (min-width: 768px) {
	.jd-prof__trainingDetail ._body {
		margin-top: 0;
		margin-left: 3.2rem;
		line-height: 1.6;
		text-align: left
	}
}
.jd-prof__trainingDetail ._link {
	text-decoration: underline;
	text-underline-offset: .2rem
}
@media (hover: hover) {
	.jd-prof__trainingDetail ._link {
		transition: opacity .25s ease
	}
	.jd-prof__trainingDetail ._link:hover {
		opacity: .5
	}
}
.jd-prof__trainingDetail ._strong {
	color: var(--color-red)
}
.jd-intro {
	padding-bottom: 9.6rem
}
@media screen and (min-width: 768px) {
	.jd-intro {
		padding-bottom: 12.8rem
	}
}
.jd-intro__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.jd-intro__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 20.7rem 0
	}
}
.jd-intro__body {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.jd-intro__body {
		margin-top: 7.2rem
	}
}
.jd-intro__columnItem:nth-child(n+2) {
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.jd-intro__columnItem:nth-child(n+2) {
		margin-top: 8rem
	}
}
.jd-intro__thumb {
	overflow: hidden;
	aspect-ratio: 335/189;
	margin-bottom: 3.2rem;
	border-radius: .3rem
}
@media screen and (min-width: 768px) {
	.jd-intro__thumb {
		aspect-ratio: 897/505;
		margin-bottom: 4.8rem
	}
}
.jd-intro__thumb ._img {
	width: 100%;
	height: 100%;
	object-fit: cover
}
.jd-intro__heading h3 {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.jd-intro__heading h3 {
		font-size: 2.4rem
	}
}
.jd-intro__txt {
	margin-top: 2.4rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.jd-intro__txt p {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.jd-intro__txt p+p {
	margin-top: 2em
}
.jd-intro__txt ul {
	list-style-type: none;
	list-style-position: outside;
	padding-left: 2rem
}
.jd-intro__txt ul>li {
	position: relative
}
.jd-intro__txt ul>li:before {
	position: absolute;
	left: -1.3rem;
	content: "・"
}
.jd-intro__txt ol {
	list-style: revert;
	list-style-position: outside;
	padding-left: 2rem
}
.jd-intro__txt ol>li::marker {
	font-size: 1.4rem
}
.jd-requ {
	padding-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.jd-requ {
		padding-bottom: 12rem
	}
}
.jd-requ__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.jd-requ__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 20.7rem 0
	}
}
.jd-requ__body {
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.jd-requ__body {
		margin-top: 8rem
	}
}
.jd-requ__connect {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.jd-requ__connect {
		margin-top: 7.2rem;
		justify-content: flex-end
	}
}
.jd-requ-detail__name ._txt {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.jd-requ-detail__name ._txt {
		font-size: 2.2rem;
		line-height: 1.4
	}
}
.jd-requ-detail__info {
	margin-top: 3.2rem
}
.jd-requ-detail__infoItem:nth-child(n+2) {
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.jd-requ-detail__infoItem:nth-child(n+2) {
		margin-top: 8rem
	}
}
.jd-requ-detail__infoTitle ._txt {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.02em
}
.jd-requ-detail__infoList {
	margin-top: 2.4rem;
	border-top: .1rem solid var(--color-gray1)
}
.jd-requ-detail__infoRow {
	padding-block: 2.4rem 2.3rem;
	border-bottom: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.jd-requ-detail__infoRow {
		display: flex;
		padding-block: 3.2rem
	}
}
.jd-requ-detail__infoRow ._head {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.jd-requ-detail__infoRow ._head {
		flex-shrink: 0;
		width: 17rem;
		padding-top: .4rem;
		padding-right: 6rem
	}
}
.jd-requ-detail__infoRow ._body {
	margin-top: 1.6rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.jd-requ-detail__infoRow ._body {
		margin-top: 0
	}
}
.jd-requ-detail__infoRow ._body small, .jd-requ-detail__infoRow ._body em {
	display: inline-block;
	font-size: 1.1rem;
	font-style: normal;
	line-height: 1.4;
	letter-spacing: inherit
}
@media screen and (max-width: 767px) {
	.jd-requ-detail__infoRow ._body small, .jd-requ-detail__infoRow ._body em {
		padding-top: .4rem
	}
}
.jd-requ-detail__infoRow ._body p+:where(ol, ul) {
	margin-top: 1rem
}
.jd-requ-detail__infoRow ._body ul {
	list-style-type: none;
	list-style-position: outside;
	padding-left: 2rem
}
.jd-requ-detail__infoRow ._body ul>li {
	position: relative
}
.jd-requ-detail__infoRow ._body ul>li:before {
	position: absolute;
	left: -1.3rem;
	content: "・"
}
.jd-requ-detail__infoRow ._body ol {
	list-style: revert;
	list-style-position: outside;
	padding-left: 2rem
}
.jd-requ-detail__infoRow ._body ol>li::marker {
	font-size: 1.4rem
}
.jd-other {
	padding-top: 6.4rem;
	padding-bottom: 8.8rem;
	background-color: var(--color-white1)
}
@media screen and (min-width: 768px) {
	.jd-other {
		padding-top: 12.8rem;
		padding-bottom: 10.8rem
	}
}
.jd-other__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.jd-other__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.jd-other__body {
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.jd-other__body {
		margin-top: 7.4rem
	}
}
.jd-other__connect {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.jd-other__connect {
		margin-top: 8rem;
		justify-content: flex-end
	}
}
@keyframes underline_anim {
	0% {
		transform-origin: 100% 0;
		transform: scaleX(1)
	}
	50% {
		transform-origin: 100% 0;
		transform: scaleX(0)
	}
	50.1% {
		transform-origin: 0% 0;
		transform: scaleX(0)
	}
	to {
		transform-origin: 0% 0;
		transform: scaleX(1)
	}
}
.in-fellows {
	padding-block: 6.4rem 8.8rem
}
@media screen and (min-width: 768px) {
	.in-fellows {
		padding-block: 9.6rem 13.8rem
	}
}
.in-fellows__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.in-fellows__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.in-fellows__listItem {
	position: relative
}
.in-fellows__listItem:nth-child(n+2) {
	margin-top: 4.8rem;
	padding-top: 4.8rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.in-fellows__listItem:nth-child(n+2) {
		margin-top: 8.2rem;
		padding-top: 8.8rem
	}
}
.in-fellows__num {
	position: absolute;
	left: 1.2rem;
	color: var(--color-red);
	font-family: Poppins, sans-serif;
	font-weight: 500;
	font-style: italic;
	font-size: 1.8rem;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.in-fellows__num {
		left: 0;
		font-size: 1.6rem
	}
}
.ind-kv {
	padding-block: 9.4rem 10.4rem
}
@media screen and (min-width: 768px) {
	.ind-kv {
		padding-block: 16rem 12.8rem
	}
}
.ind-kv__inner {
	display: flex;
	flex-wrap: wrap;
	margin-inline: 2rem
}
@media screen and (min-width: 768px) {
	.ind-kv__inner {
		width: 110.4rem;
		margin-inline: auto
	}
}
.ind-kv__contents {
	order: 2;
	width: 100%;
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.ind-kv__contents {
		margin-top: 4.8rem
	}
}
.ind-kv__breadcramb {
	order: 1;
	display: flex;
	justify-content: flex-end;
	width: 100%
}
.ind-detail {
	margin-bottom: 7.2rem;
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.ind-detail {
		margin-bottom: 10.4rem;
		padding-inline: 20.7rem 0
	}
}
.ind-detail__inner {
	border-top: .1rem solid var(--font-color-black)
}
.ind-chapter {
	padding-top: 4rem
}
@media screen and (min-width: 768px) {
	.ind-chapter {
		padding-top: 4.8rem
	}
}
.ind-chapter+.ind-chapter {
	margin-top: 7.2rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.ind-chapter+.ind-chapter {
		margin-top: 9.6rem
	}
}
.ind-chapter__title {
	margin-bottom: 4.8rem;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.ind-chapter__title {
		margin-bottom: 7.2rem;
		font-size: 3.2rem
	}
}
.ind-chapter__thumb {
	margin-bottom: 4.8rem
}
@media screen and (min-width: 768px) {
	.ind-chapter__thumb {
		margin-bottom: 7.2rem
	}
}
.ind-chapter__thumb>._img {
	width: 100%;
	overflow: hidden;
	border-radius: .3rem
}
.ind-chapter__thumb>._img.-aspectFixed {
	aspect-ratio: 897/505;
	object-fit: cover
}
.ind-chapter__thumb ._caption {
	margin-top: 1.2rem;
	font-size: 1.2rem
}
.ind-chapter__section+.ind-chapter__section {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.ind-chapter__section+.ind-chapter__section {
		margin-top: 6.4rem
	}
}
.ind-chapter__question {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.ind-chapter__question {
		font-size: 2rem
	}
}
.ind-chapter__question:before {
	content: "";
	display: inline-block;
	width: 1.8em;
	height: .1rem;
	margin-right: .5rem;
	background-color: currentColor;
	vertical-align: super
}
.ind-chapter__answer {
	margin-top: 2.4rem;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.ind-chapter__answer {
		font-size: 1.7rem;
		line-height: 2
	}
}
.ind-chapter__answer>p {
	margin-bottom: 1em
}
.ind-chapter__answer>p:last-child {
	margin-bottom: 0
}
.tp-search {
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.tp-search {
		margin-top: 10.4rem
	}
}
.tp-search__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.tp-search__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.tp-list {
	margin-top: 4.8rem;
	margin-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.tp-list {
		margin-top: 5.6rem;
		margin-bottom: 14.4rem
	}
}
.tp-list__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.tp-list__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.tp-list__panel {
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tp-list__panel {
		display: flex;
		flex-wrap: wrap;
		gap: 7.2rem 3.6rem;
		border: 0
	}
}
.tp-list__panelItem {
	border-bottom: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tp-list__panelItem {
		width: calc((100% - 7.2rem) / 3);
		border: 0
	}
}
.tp-list__pager {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.tp-list__pager {
		margin-top: 8.8rem
	}
}
.tp-list__pager:empty {
	margin-top: 0
}
.tp-panel {
	display: flex;
	padding-block: 2.4rem
}
@media screen and (min-width: 768px) {
	.tp-panel {
		flex-direction: column;
		padding-block: 0
	}
}
.tp-panel__link {
	display: flex
}
@media screen and (min-width: 768px) {
	.tp-panel__link {
		flex-direction: column
	}
}
@media (hover: hover) {
	.tp-panel__link:hover .tp-panel__title ._txt {
		background-position: bottom left;
		background-size: 100% 100%
	}
	.tp-panel__link:hover .tp-panel__thumb {
		clip-path: inset(.5rem round .6rem)
	}
	.tp-panel__link:hover .tp-panel__thumb:before {
		opacity: .5
	}
	.tp-panel__link:hover .tp-panel__thumb ._img {
		scale: 1.04
	}
}
.tp-panel__text {
	order: 2;
	display: flex;
	justify-content: center;
	flex-direction: column
}
@media screen and (min-width: 768px) {
	.tp-panel__text {
		margin-top: 3.2rem
	}
}
.tp-panel__title {
	order: 2;
	margin-top: 1rem
}
@media screen and (max-width: 767px) {
	.tp-panel__title {
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
		font-feature-settings: "palt"
	}
}
@media screen and (min-width: 768px) {
	.tp-panel__title {
		margin-top: 1.6rem
	}
}
.tp-panel__title ._txt {
	display: inline;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.4
}
@media screen and (min-width: 768px) {
	.tp-panel__title ._txt {
		font-size: 1.6rem;
		line-height: 1.6
	}
}
@media (hover: hover) {
	.tp-panel__title ._txt {
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		transition: background-size .25s ease
	}
}
.tp-panel__info {
	order: 1;
	display: flex;
	align-items: center
}
.tp-panel__info:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: #e60012;
	border-radius: 50%;
	font-size: .4rem;
	margin-right: 1rem
}
.tp-panel__cat ._txt {
	font-weight: 300;
	font-size: 1.1rem;
	line-height: 1;
	letter-spacing: -.01em;
	padding-bottom: .1rem
}
.tp-panel__date {
	display: flex;
	align-items: center
}
.tp-panel__date:before {
	content: "";
	display: block;
	width: .1rem;
	height: 1rem;
	background-color: var(--color-gray1);
	margin-inline: 1rem 1.2rem
}
.tp-panel__date ._txt {
	font-family: Poppins, sans-serif;
	font-weight: 300;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
.tp-panel__thumb {
	order: 1;
	flex-shrink: 0;
	width: 13.2rem;
	margin-right: 2rem;
	position: relative;
	background-color: var(--color-white1);
	clip-path: inset(0 round .3rem)
}
@media screen and (min-width: 768px) {
	.tp-panel__thumb {
		width: 100%;
		margin-right: 0
	}
}
@media (hover: hover) {
	.tp-panel__thumb {
		transition: clip-path .8s cubic-bezier(.19, 1, .22, 1)
	}
	.tp-panel__thumb ._img {
		transition: scale .8s cubic-bezier(.19, 1, .22, 1)
	}
}
.tp-panel__thumb:after {
	content: "";
	display: block;
	padding-top: 66.8604651163%;
	pointer-events: none
}
@media (hover: hover) {
	.tp-panel__thumb:before {
		position: absolute;
		inset: 0;
		z-index: 1;
		content: "";
		display: block;
		width: 100%;
		height: 100;
		background-color: var(--font-color-black);
		opacity: 0;
		transition: opacity .55s cubic-bezier(.26, .06, 0, 1)
	}
}
.tp-panel__thumb>._img {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto
}
.tpd-kv {
	padding-block: 9.4rem 0
}
@media screen and (min-width: 768px) {
	.tpd-kv {
		padding-block: 16rem 0
	}
}
.tpd-kv__inner {
	display: flex;
	flex-wrap: wrap;
	margin-inline: 2rem;
	padding-bottom: 4.8rem
}
@media screen and (min-width: 768px) {
	.tpd-kv__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-bottom: 5.6rem;
		border-bottom: .1rem solid var(--color-gray1)
	}
}
.tpd-kv__contents {
	order: 2;
	width: 100%;
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.tpd-kv__contents {
		margin-top: 5.6rem
	}
}
.tpd-kv__info {
	display: flex;
	align-items: center;
	font-family: Poppins, sans-serif;
	font-weight: 300;
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: -.01em;
	text-transform: uppercase
}
.tpd-kv__info:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: #e60012;
	border-radius: 50%;
	font-size: .4rem;
	margin-right: 1rem
}
.tpd-kv__date {
	display: flex;
	align-items: center
}
@media screen and (min-width: 768px) {
	.tpd-kv__date {
		font-size: 1.4rem
	}
}
.tpd-kv__date:before {
	content: "";
	display: block;
	width: .1rem;
	height: 1rem;
	background-color: var(--color-gray1);
	margin-inline: 1.2rem 1.4rem
}
.tpd-kv__summary {
	margin-top: 3.2rem
}
@media screen and (min-width: 768px) {
	.tpd-kv__summary {
		margin-top: 4rem
	}
}
.tpd-kv__summary ._txt {
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.5;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.tpd-kv__summary ._txt {
		font-size: 3.2rem;
		line-height: 1.6
	}
}
.tpd-kv__breadcramb {
	order: 1;
	display: flex;
	justify-content: flex-end;
	width: 100%
}
.tpd-contents {
	margin-block: 0 7.3rem
}
@media screen and (min-width: 768px) {
	.tpd-contents {
		margin-block: 0 8rem
	}
}
.tpd-contents__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.tpd-contents__inner {
		padding-inline: 20.7rem 0
	}
}
.tpd-contents__text {
	margin-top: 4.8rem;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.tpd-contents__text {
		margin-top: 8rem;
		font-size: 1.7rem;
		line-height: 2
	}
}
.tpd-contents__text hr {
	margin-top: 8rem;
	margin-bottom: 4.8rem;
	border-top: 1px solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tpd-contents__text hr {
		margin-top: 7.3rem;
		margin-bottom: 4rem
	}
}
.tpd-contents__thumb {
	overflow: hidden;
	border-radius: .6rem;
	margin-bottom: 4.8rem
}
@media screen and (min-width: 768px) {
	.tpd-contents__thumb {
		margin-bottom: 8rem
	}
}
.tpd-contents__thumb ._img {
	width: 100%
}
.tpd-contents__flexible>._hr {
	margin-top: 3.2rem;
	margin-bottom: 4rem;
	border-top: 1px solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tpd-contents__flexible>._hr {
		margin-bottom: 4.8rem
	}
}
.tpd-contentsImg {
	width: 100%;
	margin-bottom: 4rem
}
@media screen and (min-width: 768px) {
	.tpd-contentsImg {
		margin-bottom: 4.8rem
	}
}
.tpd-contentsImg>img {
	overflow: hidden;
	border-radius: .3rem
}
.tpd-contents-primaryHeading {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: -.02em;
	margin-bottom: 4.8rem
}
@media screen and (min-width: 768px) {
	.tpd-contents-primaryHeading {
		font-size: 3.2rem
	}
}
.tpd-contents-subHeading {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	letter-spacing: -.02em;
	margin-bottom: 2.4rem
}
@media screen and (min-width: 768px) {
	.tpd-contents-subHeading {
		font-size: 2rem;
		margin-bottom: 1.6rem
	}
}
.tpd-contents-editor {
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: -.02em;
	margin-bottom: 4rem
}
@media screen and (min-width: 768px) {
	.tpd-contents-editor {
		font-size: 1.7rem;
		line-height: 2;
		margin-bottom: 4.8rem
	}
}
.tpd-contents-editor ul>li {
	position: relative;
	padding-left: 1em
}
.tpd-contents-editor ul>li:before {
	content: "・";
	position: absolute;
	left: 0
}
.tpd-contents-editor ol {
	counter-reset: count 0
}
.tpd-contents-editor ol>li {
	position: relative;
	padding-left: 1.25em;
	text-indent: -1.25em
}
.tpd-contents-editor ol>li:before {
	content: counter(count) ".";
	counter-increment: count 1;
	padding-right: .5em
}
.tpd-contents-editor hr {
	margin-top: 3.2rem;
	margin-bottom: 4rem;
	border-top: 1px solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tpd-contents-editor hr {
		margin-bottom: 4.8rem
	}
}
.tpd-contents-editor a {
	color: var(--color-red);
	text-decoration: underline;
	text-underline-offset: .2rem
}
@media (hover: hover) {
	.tpd-contents-editor a:hover {
		text-decoration: none
	}
}
.tpd-contents-editor+.tpd-intro {
	margin-top: -.8rem
}
@media screen and (min-width: 768px) {
	.tpd-contents-editor+.tpd-intro {
		margin-top: -1.6rem
	}
}
.tpd-contents__intro {
	margin-bottom: 3.2rem
}
.tpd-contents__lineLinkGroup {
	margin-top: 3.2rem;
	padding-top: 4rem;
	border-top: 1px solid var(--color-gray1);
	font-size: 1.7rem;
	line-height: 2
}
@media screen and (min-width: 768px) {
	.tpd-contents__lineLinkGroup {
		padding-top: 4.8rem
	}
}
.tpd-contents__lineLinkGroup>a {
	display: inline-block;
	color: var(--color-red);
	text-decoration: underline;
	text-underline-offset: .2rem
}
@media (hover: hover) {
	.tpd-contents__lineLinkGroup>a:hover {
		text-decoration: none
	}
}
.tpd-overview {
	margin-bottom: 8.8rem;
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.tpd-overview {
		margin-bottom: 8rem;
		padding-inline: 20.7rem 0
	}
}
.tpd-overview__inner {
	padding-top: 4.1rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tpd-overview__inner {
		padding-top: 4.8rem
	}
}
.tpd-overview__title ._txt {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.tpd-overview__title ._txt {
		font-size: 3.2rem
	}
}
.tpd-overview__detail {
	margin-top: 4.8rem
}
.tpd-overview__detailIrem:nth-child(n+2) {
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.tpd-overview__detailIrem:nth-child(n+2) {
		margin-top: 4.8rem
	}
}
.tpd-overview__detailIrem ._head {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.tpd-overview__detailIrem ._head {
		font-size: 2rem
	}
}
.tpd-overview__detailIrem ._body {
	margin-top: 2.4rem;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (max-width: 767px) {
	.tpd-overview__detailIrem ._body {
		word-break: break-all
	}
}
@media screen and (min-width: 768px) {
	.tpd-overview__detailIrem ._body {
		margin-top: 1.6rem;
		font-size: 1.7rem;
		line-height: 2
	}
}
.tpd-overview__detailIrem ._body a {
	color: var(--color-red);
	text-decoration: underline;
	text-underline-offset: .2rem
}
@media (hover: hover) {
	.tpd-overview__detailIrem ._body a {
		transition: opacity .25s ease
	}
	.tpd-overview__detailIrem ._body a:hover {
		opacity: .5
	}
}
.tpd-overview__detailIrem ._body ol {
	list-style: decimal outside;
	padding-left: 1em
}
.tpd-overview__intro {
	margin-top: 3.2rem
}
.tpd-overview__introItem:nth-child(n+2) {
	margin-top: 3.2rem
}
.tpd-overview__connect {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.tpd-overview__connect {
		justify-content: flex-end;
		margin-top: 7.2rem
	}
}
.tpd-intro {
	margin-bottom: 3.2rem;
	padding-block: 3.2rem;
	background-color: var(--color-gray1);
	border-radius: .6rem
}
@media screen and (min-width: 768px) {
	.tpd-intro {
		padding-block: 5.4rem 5.6rem;
		border-radius: .3rem
	}
}
.tpd-intro__inner {
	display: flex;
	flex-wrap: wrap;
	padding-inline: 2.4rem
}
@media screen and (min-width: 768px) {
	.tpd-intro__inner {
		flex-wrap: nowrap;
		padding-inline: 5.4rem
	}
}
.tpd-intro__text {
	display: contents
}
@media screen and (min-width: 768px) {
	.tpd-intro__text {
		order: 2;
		display: block;
		margin-left: 4.7rem
	}
}
.tpd-intro__who {
	order: 2;
	display: flex;
	margin-top: 2.4rem;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.8;
	letter-spacing: -.02em;
	gap: .3rem;
	margin-bottom: .8rem
}
@media screen and (min-width: 768px) {
	.tpd-intro__who {
		order: 1;
		margin-top: 0;
		margin-bottom: 1.6rem;
		font-size: 1.6rem
	}
}
.tpd-intro__desc {
	order: 2;
	width: 100%;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.tpd-intro__desc {
		order: 3
	}
}
.tpd-intro__desc ._txt {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: -.02em
}
.tpd-intro__desc a {
	color: var(--color-red);
	text-decoration: underline;
	text-underline-offset: .2rem
}
@media (hover: hover) {
	.tpd-intro__desc a:hover {
		text-decoration: none
	}
}
.tpd-intro__photo {
	order: 1;
	flex-shrink: 0;
	width: 23.3rem;
	height: 17.5rem;
	margin-inline: auto
}
@media screen and (min-width: 768px) {
	.tpd-intro__photo {
		width: 24.8rem;
		height: 18.6rem;
		margin-inline: 0
	}
}
.tpd-intro__photo ._img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: .3rem
}
.tpd-about {
	margin-bottom: 7.2rem;
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.tpd-about {
		margin-bottom: 10.2rem;
		padding-inline: 20.7rem 0
	}
}
.tpd-about__inner {
	padding-top: 5.6rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.tpd-about__inner {
		padding-top: 7.4rem
	}
}
.tpd-about__frame {
	padding-block: 4rem 4.4rem;
	background-color: var(--color-white1);
	border: .1rem solid currentColor;
	border-radius: .6rem
}
@media screen and (min-width: 768px) {
	.tpd-about__frame {
		padding-block: 6.2rem 6.6rem
	}
}
.tpd-about__frameInner {
	display: flex;
	flex-direction: column;
	align-items: center
}
.tpd-about__title {
	margin-inline: 4.5rem
}
@media screen and (min-width: 768px) {
	.tpd-about__title {
		margin-inline: 0
	}
}
.tpd-about__title ._txt {
	position: relative;
	display: flex;
	align-items: center;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: -.02em;
	text-align: center
}
@media screen and (min-width: 768px) {
	.tpd-about__title ._txt {
		font-size: 3.2rem;
		line-height: 1.4
	}
}
.tpd-about__title ._txt:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-color: #e60012;
	border-radius: 50%;
	font-size: .8rem
}
@media screen and (max-width: 767px) {
	.tpd-about__title ._txt:before {
		position: absolute;
		top: 1.3rem;
		left: -2.4rem
	}
}
@media screen and (min-width: 768px) {
	.tpd-about__title ._txt:before {
		margin-right: 4rem;
		margin-left: -4.8rem
	}
}
.tpd-about__desc {
	margin-top: 2.4rem;
	padding-inline: 2.4rem
}
@media screen and (min-width: 768px) {
	.tpd-about__desc {
		padding-inline: 0
	}
}
.tpd-about__desc ._txt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em;
	text-align: center
}
.tpd-about__connect {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	margin-top: 3.2rem
}
@media screen and (min-width: 768px) {
	.tpd-about__connect {
		flex-direction: row;
		justify-content: center;
		gap: 2rem;
		margin-top: 4rem
	}
}
.tpd-about__link {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 17.8rem;
	height: 5.4rem;
	background-color: var(--font-color-black);
	border-radius: .3rem
}
@media screen and (min-width: 768px) {
	.tpd-about__link {
		height: 6rem
	}
}
@media (hover: hover) {
	.tpd-about__link {
		transition: background-color .25s ease
	}
	.tpd-about__link:hover {
		background-color: var(--color-red)
	}
	.tpd-about__link:hover ._txt {
		transform: translateY(-50%)
	}
}
.tpd-about__link ._mask {
	overflow: hidden;
	display: block;
	height: 2rem
}
.tpd-about__link ._txt {
	color: var(--color-white1);
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase
}
@media (hover: hover) {
	.tpd-about__link ._txt {
		display: flex;
		flex-direction: column;
		transition: transform .25s ease
	}
	.tpd-about__link ._txt:after {
		content: attr(data-txt)
	}
}
@media screen and (max-width: 767px) {
	body:where(.supporters) .c-sec-header__ttl._ja {
		font-size: 3rem
	}
}
@media screen and (min-width: 768px) {
	.su-contents {
		width: 96.6rem;
		margin-inline: auto
	}
}
.su-contents__inner.js-supporterStalkerLimit {
	position: relative
}
.su-logo__list {
	display: flex;
	flex-wrap: wrap;
	gap: 1.4rem
}
.su-logo__listItem {
	width: calc((100% - 1.4rem)/2)
}
@media screen and (min-width: 768px) {
	.su-logo__listItem {
		width: calc((100% - 4.3rem)/4)
	}
}
.su-logo__frame {
	overflow: hidden;
	display: flex;
	justify-content: center;
	background-color: var(--color-white1);
	border-radius: .3rem
}
.su-logo__frame ._img {
	width: auto;
	height: 100%
}
.su-cont {
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.su-cont {
		margin-top: 3.4rem;
		padding-bottom: 13.2rem
	}
}
.su-cont__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.su-cont__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.su-cont__header .c-sec-header {
	border: 0
}
.su-cont__body {
	margin-top: 5rem
}
@media screen and (min-width: 768px) {
	.su-cont__body {
		margin-top: 9.6rem
	}
}
.su-cont__com {
	display: flex;
	flex-wrap: wrap;
	gap: 4rem 1.5rem
}
@media screen and (min-width: 768px) {
	.su-cont__com {
		gap: 1.8rem
	}
}
.su-cont__comItem {
	width: 16rem;
	position: relative
}
@media screen and (min-width: 768px) {
	.su-cont__comItem {
		width: 31rem
	}
}
.su-cont__comItem__spLink {
	position: absolute;
	inset: 0;
	margin: auto;
	z-index: 2
}
@media screen and (min-width: 768px) {
	.su-cont__comItem__spLink {
		display: none!important
	}
}
.su-cont__comLogo {
	overflow: hidden;
	display: flex;
	justify-content: center;
	background-color: var(--color-white1);
	border-radius: .3rem
}
.su-cont__comLogo ._img {
	width: auto;
	height: 100%
}
.su-cont__comCatch {
	margin-top: 1.3rem
}
@media screen and (min-width: 768px) {
	.su-cont__comCatch {
		margin-top: 2rem
	}
}
.su-cont__comCatch ._txt {
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.su-cont__comCatch ._txt {
		font-size: 1.5rem
	}
}
@media (hover: hover) {
	.su-cont__comCatch ._txt {
		display: inline;
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right
	}
}
.su-cont__comName {
	margin-top: 1.2rem;
	display: inline-block
}
@media screen and (min-width: 768px) {
	.su-cont__comName {
		display: inline-flex;
		align-items: center
	}
}
@media (hover: hover) {
	.su-cont__comName:hover ._txt {
		background-position: bottom left;
		background-size: 100% 100%
	}
}
.su-cont__comName ._txt {
	font-size: 1.1rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.su-cont__comName ._txt {
		font-size: 1.2rem
	}
}
@media (hover: hover) {
	.su-cont__comName ._txt {
		display: inline;
		background-image: linear-gradient(0deg, currentColor .1rem, transparent .1rem);
		background-size: 0 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		transition: background-size .25s ease
	}
}
.su-cont__comName ._icon {
	display: inline-block;
	width: 1rem;
	height: .8em;
	margin-left: .4rem;
	vertical-align: .2rem
}
.su-cont__comName ._icon ._entity {
	width: 100%;
	height: 100%
}
.su-cont__comPerson {
	margin-top: .4rem;
	color: var(--color-gray2);
	font-size: 1.1rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.su-cont__comPerson {
		margin-top: .5rem
	}
}
.su-cont__comPerson ._title {
	display: inline
}
.su-cont__comPerson ._name {
	display: inline;
	margin-left: .5em
}
.su-adv {
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.su-adv {
		padding-bottom: 12.8rem
	}
}
.su-adv__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.su-adv__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.su-adv__body {
	margin-top: 5rem
}
@media screen and (min-width: 768px) {
	.su-adv__body {
		margin-top: 10.4rem
	}
}
.su-adv__list {
	display: flex;
	flex-wrap: wrap;
	gap: 2.6rem 1.5rem
}
@media screen and (min-width: 768px) {
	.su-adv__list {
		gap: 5.6rem 2.2rem
	}
}
.su-adv__listItem {
	--width: 16rem;
	width: var(--width)
}
@media screen and (min-width: 768px) {
	.su-adv__listItem {
		--width: 22.4rem
	}
}
@media screen and (max-width: 767px) {
	.su-adv__card .c-supporter-card__post ._txt {
		font-size: 1rem
	}
	.su-adv__card .c-supporter-card__name {
		margin-bottom: .5rem
	}
	.su-adv__card .c-supporter-card__name ._txt {
		font-size: 1.8rem
	}
	.su-adv__card .c-supporter-card__relative {
		margin-top: 1.5rem
	}
	.su-adv__card .c-supporter-card__relative ._txt {
		font-size: 1rem
	}
}
.su-part {
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.su-part {
		padding-bottom: 12.8rem
	}
}
.su-part__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.su-part__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.su-part__body {
	margin-top: 5rem
}
@media screen and (min-width: 768px) {
	.su-part__body {
		margin-top: 10.4rem
	}
}
.su-ship {
	padding-bottom: 10.4rem
}
@media screen and (min-width: 768px) {
	.su-ship {
		padding-bottom: 12.8rem
	}
}
.su-ship__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.su-ship__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.su-ship__body {
	margin-top: 5rem
}
@media screen and (min-width: 768px) {
	.su-ship__body {
		margin-top: 10.4rem
	}
}
.contact._confirm .c-under-sticky__listItem:nth-child(1)>._txt {
	color: var(--color-gray2)
}
.contact._confirm .c-under-sticky__listItem:nth-child(2)>._txt {
	color: var(--color-red)
}
.co-flow {
	margin-top: 5.6rem;
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.co-flow {
		width: 110.4rem;
		margin-top: 9.6rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
.co-flow__inner {
	padding: 5rem 2.4rem 4rem;
	background-color: var(--color-white1);
	border-radius: .6rem
}
@media screen and (min-width: 768px) {
	.co-flow__inner {
		padding: 7.4rem 9rem 6.4rem
	}
}
.co-flow__header .c-sec-header {
	padding-top: 0;
	border-top: 0
}
.co-flow__header .c-sec-header__ttl._ja {
	margin-top: 3.2rem;
	font-size: 2.2rem;
	line-height: 1.4;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.co-flow__header .c-sec-header__ttl._ja {
		font-size: 2.4rem
	}
}
.co-flow__header .c-sec-header__desc {
	margin-top: 2rem
}
@media screen and (min-width: 768px) {
	.co-flow__header .c-sec-header__desc {
		margin-top: 1.6rem
	}
}
.co-flow__body {
	margin-top: 3.2rem
}
@media screen and (min-width: 768px) {
	.co-flow__body {
		margin-top: 4rem
	}
}
@media screen and (max-width: 767px) {
	.co-flow__step {
		padding: 3.2rem 2rem;
		background-color: var(--color-white2);
		border-radius: .6rem
	}
}
@media screen and (min-width: 768px) {
	.co-flow__step {
		padding-inline: 1.5rem
	}
}
.co-flow__stepList {
	counter-reset: step
}
@media screen and (min-width: 768px) {
	.co-flow__stepList {
		display: flex;
		justify-content: space-between
	}
}
.co-flow__stepItem {
	counter-increment: step
}
.co-flow__stepItem:nth-child(n+2) {
	position: relative
}
@media screen and (max-width: 767px) {
	.co-flow__stepItem:nth-child(n+2) {
		margin-top: 4rem
	}
}
.co-flow__stepItem:nth-child(n+2):before {
	position: absolute;
	top: -2.3rem;
	left: calc(50% - .5rem);
	content: "";
	display: block;
	width: 1rem;
	height: .8rem;
	background-color: var(--font-color-black);
	clip-path: polygon(0 0, 100% 0, 50% 100%)
}
@media screen and (min-width: 768px) {
	.co-flow__stepItem:nth-child(n+2):before {
		top: calc(50% - .5rem);
		left: -3.2rem;
		width: .8rem;
		height: 1rem;
		clip-path: polygon(0 0, 100% 50%, 0 100%)
	}
}
.co-flow__stepFrame {
	position: relative;
	display: flex
}
@media screen and (min-width: 768px) {
	.co-flow__stepFrame {
		justify-content: center;
		width: 26rem;
		height: 26rem;
		padding-top: 11.2rem;
		background-color: var(--color-white2);
		border-radius: 50%
	}
}
.co-flow__stepFrame:before {
	content: "0" counter(step);
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4rem;
	height: 4rem;
	color: var(--color-white1);
	font-family: Poppins, sans-serif;
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: -.02em;
	background-color: var(--font-color-black);
	border-radius: 50%
}
@media screen and (min-width: 768px) {
	.co-flow__stepFrame:before {
		position: absolute;
		top: 5.4rem;
		left: calc(50% - 2rem)
	}
}
.co-flow__stepTxt {
	display: flex;
	flex-direction: column;
	margin-left: 1.8rem;
	font-weight: 500
}
@media screen and (min-width: 768px) {
	.co-flow__stepTxt {
		align-items: center;
		margin-left: 0;
		text-align: center
	}
}
.co-flow__stepTxt ._txt {
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.co-flow__stepTxt ._txt {
		width: 19.4rem
	}
}
.co-flow__stepTxt ._note {
	width: 100%;
	margin-top: .4rem;
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.co-flow__stepTxt ._note {
		margin-top: .6rem;
		font-size: 1.1rem
	}
}
.co-column__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.co-column__inner {
		padding-inline: 20.7rem 0
	}
}
.co-inquiry__confirm {
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.co-inquiry__confirm {
		margin-top: -4rem
	}
}
.co-inquiry__confirm ._txt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-inquiry__note {
	margin-top: 6.5rem;
	padding-top: 4.9rem;
	/*border-top: .1rem solid currentColor*/
}
@media screen and (min-width: 768px) {
	.co-inquiry__note {
		margin-top: 0;
		padding-top: 7.3rem
	}
}
.co-inquiry__note ._txt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-inquiry__form {
	position: relative;
	padding-block: 4.8rem 8.8rem;
	border-top: .1rem solid var(--color-gray1)
}
@media screen and (min-width: 768px) {
	.co-inquiry__form {
		padding-block: 7.2rem 14.4rem
	}
}
.co-inquiry__required {
	text-align: right;
	margin-top: 1.2rem;
	margin-bottom: 1.6rem
}
@media screen and (min-width: 768px) {
	.co-inquiry__required {
		margin-top: 4rem;
		margin-bottom: 1.2rem
	}
}
.co-inquiry__required ._txt {
	color: var(--color-red);
	font-size: 1.1rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.co-inquiry__required ._txt {
		padding-bottom: 1.2rem
	}
}
@media screen and (min-width: 768px) {
	.co-inquiry__formRow {
		display: flex
	}
}
.co-inquiry__formRow:nth-child(n+2) {
	margin-top: 2.8rem
}
@media screen and (min-width: 768px) {
	.co-inquiry__formRow:nth-child(n+2) {
		margin-top: 3.4rem
	}
}
.co-inquiry__formRow._empty {
	display: none
}
.co-inquiry__formRow._empty+.co-inquiry__formRow {
	display: none
}
@media screen and (min-width: 768px) {
	._confirm .co-inquiry__formRow._affiliation1, ._confirm .co-inquiry__formRow._affiliation2 {
		align-items: center
	}
}
@media screen and (max-width: 767px) {
	._confirm .co-inquiry__formRow:nth-child(n+2) {
		margin-top: 3.2rem
	}
}
.co-inquiry__formRow._files._hidden {
	display: none!important
}
@media screen and (min-width: 768px) {
	.co-inquiry__formLabel {
		flex-shrink: 0;
		width: 20.7rem;
		padding-top: .7rem
	}
}
.co-inquiry__formLabel ._txt {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.02em
}
.co-inquiry__formLabel ._required {
	margin-left: .2em;
	color: var(--color-red)
}
.co-inquiry__formLabel ._small {
	margin-left: .8rem;
	font-weight: 400;
	font-size: 1.1rem;
	line-height: 1.5;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.co-inquiry__formLabel ._small {
		display: block;
		margin-top: .5rem;
		margin-left: 0
	}
}
.co-inquiry__formContents {
	width: 100%
}
@media screen and (max-width: 767px) {
	.co-inquiry__formContents {
		margin-top: 1.6rem
	}
}
@media screen and (min-width: 768px) {
	.co-inquiry__formContents {
		width: calc(100% - 20.7rem)
	}
}
@media screen and (min-width: 768px) {
	.co-inquiry__formContents._wide {
		width: 100%;
		padding-left: 20.7rem
	}
}
._input .co-inquiry__formElement._select {
	position: relative
}
._input .co-inquiry__formElement._select:after {
	position: absolute;
	top: calc(50% - .4rem);
	right: 2rem;
	content: "";
	display: block;
	width: 1rem;
	height: .8rem;
	background-color: var(--font-color-black);
	clip-path: polygon(0 0, 100% 0, 50% 100%)
}
.co-inquiry__formConfirm ._txt {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-inquiry__formConfirm ._txt+._txt {
	margin-top: .8rem
}
._file .co-inquiry__formConfirm .mw-wp-form_file {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
._file .co-inquiry__formConfirm .mw-wp-form_file+.mw-wp-form_file {
	margin-top: .8rem
}
.co-inquiry__formInvalid {
	padding-top: .6rem
}
.co-inquiry__formInvalid:empty {
	display: none
}
.co-inquiry__formInvalid ._txt {
	color: var(--color-red)
}
@media screen and (min-width: 768px) {
	.co-inquiry__formInvalid ._txt {
		font-size: 1.1rem;
		line-height: 1;
		letter-spacing: -.02em
	}
}
.co-inquiry__formNote {
	margin-top: 1rem
}
.co-inquiry__formNote ._txt {
	font-size: 1.1rem;
	line-height: 1.5;
	letter-spacing: -.02em;
	padding-left: 1em;
	text-indent: -1em
}
.co-inquiry__formNote ._txt:before {
	content: "※"
}
.co-inquiry__formNote ._txt+._txt {
	margin-top: 1rem
}
.co-inquiry__formNote ._list {
	padding-left: .5rem
}
.co-inquiry__formNote ._list li:before {
	content: "・";
	margin-right: .5rem
}
.co-inquiry__formNote ._list+._txt {
	margin-top: 1rem
}
.co-inquiry__formFile:nth-child(n+2) {
	margin-top: 1rem
}
.co-field__formCheck {
	padding-top: 2rem;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.co-field__formCheck {
		padding-top: 1.2rem
	}
}
.co-field__formCheck .mwform-checkbox-field, .co-field__formCheck .co-checkbox-field {
	vertical-align: -.3rem
}
.co-field__formCheck .mwform-checkbox-field-text, .co-field__formCheck .co-checkbox-fieldText {
	display: none
}
.co-field__formCheck ._link {
	margin-left: 1.1rem;
	color: var(--color-red);
	text-decoration: underline;
	text-underline-offset: .2rem
}
.co-inquiry__formControll {
	display: flex;
	flex-direction: column;
	margin-top: 4rem
}
@media screen and (min-width: 768px) {
	.co-inquiry__formControll {
		flex-direction: row
	}
}
._confirm .co-inquiry__formControll {
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	._confirm .co-inquiry__formControll {
		margin-top: 9.6rem
	}
}
.co-field__text {
	display: block;
	width: 100%;
	height: 4.8rem;
	padding: 0 1.6rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em;
	background-color: var(--color-white1);
	border: 0;
	border-radius: .3rem
}
.co-field__text._invalid {
	border: .1rem solid var(--color-red)
}
.co-field__text::placeholder {
	color: #99999980
}
.co-field__select {
	appearance: none;
	display: block;
	width: 100%;
	height: 4.8rem;
	padding: 0 1.6rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em;
	background-color: var(--color-white1);
	border: 0;
	border-radius: .3rem
}
.co-field__select._invalid {
	border: .1rem solid var(--color-red)
}
.co-field__textarea {
	display: block;
	width: 100%;
	height: 17rem;
	padding: 1.7rem 1.6rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em;
	background-color: var(--color-white1);
	border: 0;
	border-radius: .3rem
}
.co-field__textarea._invalid {
	border: .1rem solid var(--color-red)
}
.co-field__textarea::placeholder {
	color: #99999980
}
.co-field__radio {
	display: none
}
.co-field__radio+.mwform-radio-field-text, .co-field__radio+.co-field__radio__fieldText {
	position: relative;
	display: flex;
	align-items: center;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-field__radio+.mwform-radio-field-text:before, .co-field__radio+.co-field__radio__fieldText:before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 1.4rem;
	font-size: 1.8rem;
	background-color: var(--color-white1);
	border: .1rem solid var(--font-color-black);
	border-radius: 50%;
	vertical-align: text-bottom
}
.co-field__radio:checked+.mwform-radio-field-text:after, .co-field__radio:checked+.co-field__radio__fieldText:after {
	position: absolute;
	left: 0;
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	font-size: 1.8rem;
	background-image: radial-gradient(circle at center, var(--color-red) .4rem, transparent .4rem);
	border-radius: 50%
}
.co-field__file {
	display: none!important
}
.co-field__fileContaier {
	display: flex;
	align-items: center
}
.co-field__fileContaier .mw-wp-form_file {
	display: none
}
.co-field__fileBtn {
	appearance: none;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 16.6rem;
	height: 4.8rem;
	background-color: var(--color-white1);
	border: 0;
	border-radius: .3rem
}
.co-field__fileBtn ._icon {
	width: 1.8rem;
	height: 1.8rem
}
.co-field__fileBtn ._icon ._entity {
	width: 100%;
	height: 100%
}
.co-field__fileBtn ._txt {
	margin-left: .8rem;
	font-size: 1.4rem;
	line-height: 1.8rem;
	letter-spacing: -.02em
}
.co-field__fileChose {
	margin-inline: 1.2rem 1rem;
	font-size: 1.2rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-field__deleteFile {
	cursor: pointer;
	visibility: hidden
}
.co-field__check {
	appearance: none;
	width: 1.6rem;
	height: 1.6rem;
	margin: 0;
	background-color: var(--color-white1);
	border: .1rem solid var(--font-color-black);
	border-radius: .3rem;
	cursor: pointer
}
.co-field__check:checked {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAADDSURBVHgB7ZRBCsIwEEV/orhxExRc9whewaP0ZB6lR9AbxIUouLEXMHXGWigjxkUSW2gefFLaNC8TmACZzGS5whQWxsj3GglgWQNdLShSGl3YyeixUJQlBalg2QUrS2ko9xvMFqnIsvHI2kXWFY+/50WojH4+vBex36Qhso8+dHAlDTXl1U9S2u8znjeH221QHxHCmXbMO5eVxjhG5ZPqthK+mk4P6HIGt0dgZcr3UUg74hyjT9o73rR9JqT2L7JMZnCeYq2FrWSP+M8AAAAASUVORK5CYII=);
	background-repeat: no-repeat;
	background-size: 1.4rem 1.4rem;
	background-position: center
}
.co-field__back {
	order: 2;
	appearance: none;
	width: 33.5rem;
	height: 8rem;
	color: var(--font-color-black);
	font-weight: 700;
	font-size: 1.6rem;
	letter-spacing: -.02em;
	background-color: var(--color-white1);
	border: 0;
	border-radius: .3rem;
	cursor: pointer
}
@media screen and (min-width: 768px) {
	.co-field__back {
		order: 1;
		width: 25.6rem;
		height: 8.8rem
	}
}
@media (hover: hover) {
	.co-field__back {
		transition: opacity .25s ease
	}
	.co-field__back:hover {
		opacity: .5
	}
}
.co-field__submit {
	order: 1;
	appearance: none;
	width: 33.5rem;
	height: 8rem;
	margin-bottom: 1.6rem;
	color: var(--color-white1);
	font-weight: 700;
	font-size: 1.6rem;
	letter-spacing: -.02em;
	background-color: var(--font-color-black);
	border: 0;
	border-radius: .3rem;
	cursor: pointer
}
@media screen and (min-width: 768px) {
	.co-field__submit {
		order: 2;
		width: 62.1rem;
		height: 8.8rem;
		margin-left: auto;
		margin-bottom: 0
	}
}
@media (hover: hover) {
	.co-field__submit {
		transition: opacity .25s ease
	}
	.co-field__submit:hover {
		opacity: .5
	}
}
.co-field__confirm {
	appearance: none;
	width: 33.5rem;
	height: 8rem;
	color: var(--color-white1);
	font-weight: 700;
	font-size: 1.6rem;
	letter-spacing: -.02em;
	background-color: var(--font-color-black);
	border: 0;
	border-radius: .3rem;
	cursor: pointer
}
@media screen and (min-width: 768px) {
	.co-field__confirm {
		width: 69rem;
		height: 8.8rem;
		margin-left: auto
	}
}
.co-field__confirm._disabled, .co-field__confirm:disabled {
	background-color: var(--color-gray1);
	cursor: pointer;
	pointer-events: none
}
@media (hover: hover) {
	.co-field__confirm {
		transition: opacity .25s ease
	}
	.co-field__confirm:not(:where(._disabled, :disabled)):hover {
		opacity: .5
	}
}
.co-thanks {
	padding-block: 5.6rem 8.8rem
}
@media screen and (min-width: 768px) {
	.co-thanks {
		padding-block: 0 14.4rem
	}
}
.co-thanks__title ._txt {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-thanks__body {
	margin-top: 3.2rem
}
.co-thanks__desc ._txt {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.co-thanks__connect {
	display: flex;
	justify-content: center;
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.co-thanks__connect {
		justify-content: flex-end;
		margin-top: 4rem
	}
}
.pp-contents {
	margin-top: 5.6rem;
	padding-bottom: 8.8rem
}
@media screen and (min-width: 768px) {
	.pp-contents {
		margin-top: 9.6rem;
		padding-bottom: 14.4rem
	}
}
.pp-contents__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.pp-contents__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 20.7rem 0
	}
}
.pp-contents__declaration ._txt {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: -.02em
}
.pp-contents__detail {
	margin-top: 5.6rem
}
@media screen and (min-width: 768px) {
	.pp-contents__detail {
		margin-top: 9.6rem
	}
}
.pp-contents__treat {
	margin-top: 6.4rem
}
@media screen and (min-width: 768px) {
	.pp-contents__treat {
		margin-top: 8rem
	}
}
.pp-policy__title {
	padding-bottom: 2.4rem;
	border-bottom: .1rem solid var(--color-gray1)
}
.pp-policy__title ._txt {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.02em
}
.pp-policy__detail {
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.pp-policy__detail {
		margin-top: 5.6rem
	}
}
.pp-policy__list {
	counter-reset: policy
}
.pp-policy__listItem {
	counter-increment: policy
}
.pp-policy__listItem:nth-child(n+1) {
	margin-top: 2.3rem
}
@media screen and (min-width: 768px) {
	.pp-policy__listItem:nth-child(n+1) {
		margin-top: 4rem
	}
}
.pp-policy__listItem ._title {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.02em
}
.pp-policy__listItem ._title:before {
	content: counter(policy) ".";
	margin-right: .5rem
}
.pp-policy__listItem ._desc {
	margin-top: 1.6rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
@media screen and (min-width: 768px) {
	.pp-policy__listItem ._desc {
		margin-top: 1.2rem
	}
}
.pp-treat__title {
	padding-bottom: 2.4rem;
	border-bottom: .1rem solid var(--color-gray1)
}
.pp-treat__title ._txt {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.02em
}
.pp-treat__detail {
	margin-top: 2.4rem
}
@media screen and (min-width: 768px) {
	.pp-treat__detail {
		margin-top: 5.6rem
	}
}
.pp-treat__contact ._txt {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.02em
}
.pp-treat__desc {
	margin-top: 1.6rem
}
@media screen and (min-width: 768px) {
	.pp-treat__desc {
		margin-top: 1.2rem
	}
}
.pp-treat__desc ._txt {
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.pp-treat__connect {
	display: flex;
	justify-content: center;
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.pp-treat__connect {
		justify-content: flex-end;
		margin-top: 4rem
	}
}
.er-404 {
	padding-block: 5.6rem 8.8rem
}
@media screen and (min-width: 768px) {
	.er-404 {
		padding-block: 9.6rem 14.4rem
	}
}
.er-404__inner {
	padding-inline: 2rem
}
@media screen and (min-width: 768px) {
	.er-404__inner {
		width: 110.4rem;
		margin-inline: auto;
		padding-inline: 0
	}
}
@media screen and (min-width: 768px) {
	.er-404__text {
		padding-left: 20.7rem
	}
}
.er-404__title {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: -.02em
}
.er-404__title ._txt {
	display: inline-block
}
.er-404__desc {
	margin-top: 3.2rem;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: -.02em
}
.er-404__connect {
	display: flex;
	justify-content: center;
	margin-top: 4.8rem
}
@media screen and (min-width: 768px) {
	.er-404__connect {
		justify-content: flex-end;
		margin-top: 4rem
	}
}


.p-companyInfo {
    width: 100%;
    padding: 0 2rem;
}

.p-companyInfo tbody {
    width: 100%;
    font-size: 1.4rem;
}

.p-companyInfo__listTable {
    display: block
}

.p-companyInfo__listTable tr {
    width: 100%;
    padding: 2rem 0;
    border-bottom: 1px solid #ddd;
    display: block
}

.p-companyInfo__listTable th {
    display: block;
    width: 100%;
    height: auto;
    padding-left: 0;
    border: none;
    text-align: left;
}

.p-companyInfo__listTable td {
    display: block;
    width: 100%;
    height: auto;
    padding-left: 1.5rem;
    border: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.p-companyInfo__note {
    margin-top: 2rem;
    padding: 0 0 2rem;
    border-bottom: 1px solid #ddd
}

@media screen and (min-width: 768px) {
    .p-companyInfo {
        width: 103.4rem;
        margin: 0 auto 6rem;
    }
    
    .p-companyInfo tbody {
        width: 103.4rem;
    }
    
	.p-companyInfo__listTable {
        width: 100%;
        
    }

    .p-companyInfo__listTable tr {
        font-size: 1.4rem;
        letter-spacing: .06em;
        line-height: 1.8;
        text-align: left;
        display: table-row
    }

    .p-companyInfo__listTable th {
        width: 29.98066%;
        height: 9.6rem;
        padding-left: 10.3rem;
        font-weight: 700;
        border-bottom: 1px solid #ddd;
        display: table-cell;
    }

    .p-companyInfo__listTable td {
        width: 69.6325%;
        height: 9.6rem;
        border-bottom: 1px solid #ddd;
        display: table-cell;
        padding: 2em 0;
    }

    .p-companyInfo__listTable td a {
        color: #e60012;
        text-decoration: none
    }

    .p-companyInfo__note {
        margin-top: 3.6rem;
        padding: 0 10.3rem
    }

    .p-companyInfo__noteTxt {
        font-size: 1.4rem;
        line-height: 1.8;
        letter-spacing: .06em
    }
}