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

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

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

img {
	display: block;
	max-width: 100%;
	width: 100%;
}

input,
button,
textarea,
select {
	font: inherit;
}

img:not([alt]) {
	filter: blur(10px);
}

input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

input[type=checkbox],
input[type=radio] {
	display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

select::-ms-expand {
	display: none;
}

.u-desktop {
	display: none;
}

html {
	font-size: 16px;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 5rem;
}

body {
	background-color: #ffffff;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.8;
	min-height: 100vh;
}

main {
	flex: 1;
}

a {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

a[href^="tel:"] {
	pointer-events: initial;
}

.js-fade-in {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}

.js-fade-in.is-inview {
	opacity: 1;
	transform: translateY(0);
}

.p-404 {
	background-color: #ffffff;
}

.p-404__main {
	background-color: #ffffff;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 144px;
	padding-top: 9rem;
	text-align: center;
}

.p-404__content {
	margin-left: auto;
	margin-right: auto;
}

.p-404__main > .l-inner {
	padding-left: 26px;
	padding-left: 1.625rem;
	padding-right: 26px;
	padding-right: 1.625rem;
}

.p-404__title {
	align-items: center;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	flex-direction: column;
}

.p-404__num {
	color: #1a2229;
	font-family: "Inter", sans-serif;
	font-size: 56px;
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1;
}

.p-404__sub {
	color: #1a2229;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1;
}

.p-404__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-404__btn-wrap {
	margin-top: 32px;
	margin-top: 2rem;
}

.p-404__btn {
	min-width: 168px;
	min-width: 10.5rem;
}

.p-company-kv {
	background-color: #ffffff;
	padding-bottom: 0;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-company-kv__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
	margin-bottom: 80px;
	margin-bottom: 5rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-company-kv__title-head {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-company-kv__title-head .c-section-title__en--gradient-animated {
	display: inline-block;
}

.p-company-kv__ja {
	color: #abb7c1;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-company-kv__detail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.p-company-kv__catch {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-company-kv__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-company-kv__comma {
	display: none;
}

.p-company-vision {
	background-color: #1a2229;
	overflow: hidden;
	position: relative;
}

.p-company-vision__video {
	-o-object-fit: cover;
	-o-object-position: 71% center;
	bottom: 0;
	display: block;
	height: 100%;
	left: 0;
	object-fit: cover;
	object-position: 71% center;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.p-company-vision__overlay {
	background-color: rgba(26, 34, 41, 0.8);
	bottom: 0;
	display: block;
	left: 0;
	mix-blend-mode: multiply;
	position: absolute;
	right: 0;
	top: 0;
}

.p-company-vision__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 740px;
	max-width: 46.25rem;
	padding: 80px 24px;
	padding: 5rem 1.5rem;
	position: relative;
	z-index: 1;
}

.p-company-vision__body {
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-company-vision__statement {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-company-vision__statement-sm {
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-company-vision__statement-lg {
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-company-vision__image {
	display: none;
}

.p-company-info {
	padding-bottom: 0;
	padding-top: 0;
}

.p-company-info__layout {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-company-info__contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-company-info__head .c-section-title__en {
	font-size: 32px;
	font-size: 2rem;
	padding-bottom: 0;
}

.p-company-info__head .c-section-title__en--gradient-animated {
	display: inline-block;
}

.p-company-info__title-ja {
	color: #abb7c1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-company-info__table {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
}

.p-company-info__row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
	padding: 0;
}

.p-company-info__label {
	color: #1a2229;
	flex-shrink: 0;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
}

.p-company-info__value {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-company-info__image img,
.p-company-info__image .deck-embed {
	display: block;
	height: auto;
	width: 100%;
}

.p-company-info__image iframe {
	border-radius: 0 !important;
	box-shadow: none !important;
}

.p-company-members {
	padding-bottom: 0;
	padding-top: 0;
}

.p-company-members__head {
	margin-bottom: 32px;
	margin-bottom: 2rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-company-members__head .c-section-title__en {
	font-size: 32px;
	font-size: 2rem;
	padding-bottom: 0;
}

.p-company-members__head .c-section-title__en--gradient-animated {
	display: inline-block;
}

.p-company-members__title-ja {
	color: #abb7c1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-company-members__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
}

.p-company-members__card {
	align-items: flex-start;
	background: transparent;
	border: none;
	border-bottom: 1px solid #dee1e3;
	border-radius: 0;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	padding: 0;
	padding-bottom: 24px;
	padding-bottom: 1.5rem;
}

.p-company-members__card:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.p-company-members__header {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	gap: 24px;
	gap: 1.5rem;
}

.p-company-members__photo {
	background-color: #f3f4f5;
	border-radius: 50%;
	flex-shrink: 0;
	height: 104px;
	height: 6.5rem;
	overflow: hidden;
	width: 104px;
	width: 6.5rem;
}

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

.p-company-members__text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.p-company-members__role {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-company-members__name {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-company-members__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	width: 100%;
}

.p-company-investors {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 0;
}

.p-company-investors__head {
	margin-bottom: 32px;
	margin-bottom: 2rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-company-investors__head .c-section-title__en {
	font-size: 32px;
	font-size: 2rem;
	padding-bottom: 0;
}

.p-company-investors__head .c-section-title__en--gradient-animated {
	display: inline-block;
}

.p-company-investors__title-ja {
	color: #abb7c1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-company-investors__groups {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-company-investors__group {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
}

.p-company-investors__category {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
}

.p-company-investors__category-name {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	white-space: nowrap;
}

.p-company-investors__category-line {
	border-top: 1px solid #dee1e3;
	display: block;
	flex: 1;
	height: 0;
}

.p-company-investors__logos-sp {
	display: block;
	width: 100%;
}

.p-company-investors__logos {
	grid-column-gap: 0.5rem;
	-moz-column-gap: 0.5rem;
	grid-row-gap: 8px;
	column-gap: 0.5rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: 8px;
	row-gap: 0.5rem;
}

.p-company-investors__logo:last-child:nth-child(odd) {
	grid-column: 1/-1;
	justify-self: center;
	width: calc((100% - 0.5rem) / 2);
}

.p-company-investors__logo {
	align-items: center;
	background-color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 46px;
	height: 2.875rem;
	justify-content: center;
}

.p-company-investors__logo img {
	display: block;
	height: auto;
	margin: 0 auto;
	max-height: 44px;
	max-height: 2.75rem;
	max-width: 100%;
	width: auto;
}

.p-company-recruit {
	background-color: #1a2229;
	background-image: url("../images/company/recruit-bg-sp.webp");
	background-position: 38% 34%;
	background-repeat: no-repeat;
	background-size: 164% auto;
	overflow: hidden;
	position: relative;
}

.p-company-recruit__overlay {
	background-color: rgba(26, 34, 41, 0.8);
	bottom: 0;
	left: 0;
	mix-blend-mode: multiply;
	position: absolute;
	right: 0;
	top: 0;
}

.p-company-recruit__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
	height: 272px;
	height: 17rem;
	justify-content: center;
	padding: 0 24px;
	padding: 0 1.5rem;
	position: relative;
	z-index: 1;
}

.p-company-recruit__text {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	text-align: center;
}

.p-company-recruit__text-sm {
	color: #ffffff;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-company-recruit__text-lg {
	color: #ffffff;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
}

.p-company-recruit__btn.c-btn--outline-white-pill {
	flex-shrink: 0;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	width: 169px;
	width: 10.5625rem;
}

.p-company-access {
	overflow: hidden;
	padding-bottom: 68px;
	padding-bottom: 4.25rem;
	padding-top: 0;
}

.p-company-access__head {
	margin-bottom: 32px;
	margin-bottom: 2rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-company-access__head .c-section-title__en {
	font-size: 32px;
	font-size: 2rem;
	padding-bottom: 0;
}

.p-company-access__head .c-section-title__en--gradient-animated {
	display: inline-block;
}

.p-company-access__title-ja {
	color: #abb7c1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-company-access__cols {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
}

.p-company-access__col {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
}

.p-company-access__divider {
	border-top: 1px solid #dee1e3;
	display: block;
	width: 100%;
}

.p-company-access__col-title {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 4px;
	gap: 0.25rem;
	width: 72px;
	width: 4.5rem;
}

.p-company-access__icon {
	display: block;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	width: auto;
}

.p-company-access__col-name {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.p-company-access__col-body {
	color: #606e79;
	flex: 1;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-company-access__email {
	color: #2863c5;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	text-decoration: none;
}

.p-company-access__map {
	margin-left: -8px;
	margin-left: -0.5rem;
	margin-right: -8px;
	margin-right: -0.5rem;
	margin-top: 32px;
	margin-top: 2rem;
	position: relative;
}

.p-company-access__map iframe {
	display: block;
	filter: grayscale(1);
	height: 400px;
	height: 25rem;
	width: 100%;
}

.l-footer {
	background-color: #1a2229;
	color: #ffffff;
	padding: 80px 24px 64px;
	padding: 5rem 1.5rem 4rem;
}

.l-footer__inner {
	margin: 0 auto;
	max-width: 1280px;
	max-width: 80rem;
}

.l-footer__logo {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 16px;
	gap: 1rem;
	justify-content: center;
	margin: 0 auto 56px;
	margin: 0 auto 3.5rem;
	width: auto;
}

.l-footer__logo-icon {
	display: block;
	flex-shrink: 0;
	width: 34px;
	width: 2.125rem;
}

.l-footer__logo-icon svg {
	display: block;
	height: auto;
	width: 100%;
}

.l-footer__logo-text {
	color: #ffffff;
	font-family: "Inter", sans-serif;
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 900;
	letter-spacing: 0.43em;
	white-space: nowrap;
}

.l-footer__body {
	grid-gap: 24px;
	display: grid;
	gap: 24px;
	gap: 1.5rem;
	grid-template-columns: 1fr;
	margin-bottom: 48px;
	margin-bottom: 3rem;
}

.l-footer__col {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
}

.l-footer__col--right {
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 56px;
	gap: 3.5rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.l-footer__nav-section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	margin-bottom: 0;
}

.l-footer__nav-heading {
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	padding: 0 8px;
	padding: 0 0.5rem;
	padding-bottom: 16px;
	padding-bottom: 1rem;
}

.l-footer__nav-sublist {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	list-style: none;
}

.l-footer__nav-sublink {
	align-items: center;
	color: rgba(255, 255, 255, 0.6);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	justify-content: space-between;
	line-height: 1.5;
	padding: 0 8px;
	padding: 0 0.5rem;
	text-decoration: none;
	transition: opacity 0.3s;
}

.l-footer__nav-sublink svg {
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	opacity: 0.4;
	transition: transform 0.25s ease;
	width: 24px;
	width: 1.5rem;
}

.l-footer__nav-sublink:hover {
	opacity: 0.8;
}

.l-footer__nav-sublink:hover svg {
	transform: translateX(4px);
}

.l-footer__nav-link {
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	justify-content: space-between;
	line-height: 1.5;
	padding: 0 8px 16px;
	padding: 0 0.5rem 1rem;
	text-decoration: none;
	transition: opacity 0.3s;
}

.l-footer__nav-link svg {
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	opacity: 0.4;
	transition: transform 0.25s ease;
	width: 24px;
	width: 1.5rem;
}

.l-footer__nav-link:hover {
	opacity: 0.7;
}

.l-footer__nav-link:hover svg {
	transform: translateX(4px);
}

.l-footer__cta {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	gap: 8px;
	gap: 0.5rem;
	width: 100%;
}

.l-footer__cta .c-btn {
	flex: 1;
	text-align: center;
}

.l-footer__company {
	text-align: left;
	width: 100%;
}

.l-footer__company-name {
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.l-footer__company-address {
	color: rgba(255, 255, 255, 0.6);
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
}

.l-footer__company-link {
	-webkit-text-decoration-skip-ink: none;
	color: #ffffff;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
	text-align: center;
	text-decoration: underline;
	text-decoration-skip-ink: none;
}

.l-footer__copyright {
	color: rgba(255, 255, 255, 0.4);
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	padding-top: 0;
	text-align: center;
}

.l-header {
	background-color: rgba(255, 255, 255, 0.96);
	height: 96px;
	height: 6rem;
	left: 0;
	position: fixed;
	top: 0;
	transition: height 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
	width: 100%;
	z-index: 100;
}

.l-header__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	margin: 0 auto;
	max-width: 1440px;
	max-width: 90rem;
	padding: 29px 24px;
	padding: 1.8125rem 1.5rem;
	position: relative;
	transition: padding 0.3s ease;
}

.l-header__logo {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	gap: 19px;
	gap: 1.1875rem;
	text-decoration: none;
}

.l-header__logo:hover {
	opacity: 1;
}

.l-header__logo-icon {
	display: block;
	flex-shrink: 0;
	width: 32.659px;
	width: 2.04125rem;
}

.l-header__logo-icon svg {
	display: block;
	height: auto;
	width: 100%;
}

.l-header__logo-text {
	color: #1a2229;
	font-family: "Inter", sans-serif;
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 900;
	letter-spacing: 0.43em;
	line-height: 1.5;
	white-space: nowrap;
}

.l-header__nav {
	display: none;
}

.l-header__nav-list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: clamp(24px, 5.714px + 2.380952381vw, 40px);
	gap: clamp(1.5rem, 0.3571428571rem + 2.380952381vw, 2.5rem);
	list-style: none;
}

.l-header__nav-item--coming .l-header__nav-link {
	cursor: default;
}

.l-header__nav-item--coming .l-header__nav-link:hover {
	color: #1a2229;
	opacity: 1;
}

.l-header__nav-item.is-current > .l-header__nav-link {
	color: #abb7c1;
}

.l-header__nav-item.is-current > .l-header__nav-link:hover {
	color: #abb7c1;
	opacity: 1;
}

.l-header__nav-link {
	align-items: center;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: clamp(16px, 13.714px + 0.2976190476vw, 18px);
	font-size: clamp(1rem, 0.8571428571rem + 0.2976190476vw, 1.125rem);
	font-weight: 500;
	gap: 4px;
	gap: 0.25rem;
	line-height: 1;
	padding: 10px 8px;
	padding: 0.625rem 0.5rem;
	transition: opacity 0.3s, color 0.3s;
	white-space: nowrap;
}

.l-header__nav-link:hover {
	color: #4fbbef;
	opacity: 1;
}

.l-header__nav-chevron {
	flex-shrink: 0;
	height: 12px;
	height: 0.75rem;
	left: 50%;
	margin-top: -8px;
	margin-top: -0.5rem;
	position: absolute;
	top: 100%;
	transform: translateX(-50%);
	transition: transform 0.3s ease;
	width: 12px;
	width: 0.75rem;
}

.l-header__nav-item--dropdown {
	position: relative;
}

.l-header__nav-item--dropdown > .l-header__nav-link {
	position: relative;
}

.l-header__nav-item--dropdown:hover > .l-header__nav-link,
.l-header__nav-item--dropdown:focus-within > .l-header__nav-link {
	color: #4fbbef;
	opacity: 1;
}

.l-header__nav-item--dropdown:hover .l-header__nav-chevron,
.l-header__nav-item--dropdown:focus-within .l-header__nav-chevron {
	transform: translateX(-50%) translateY(4px);
}

.l-header__nav-item--dropdown:hover .l-header__dropdown,
.l-header__nav-item--dropdown:focus-within .l-header__dropdown {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
	visibility: visible;
}

.l-header__dropdown {
	background-color: #1a2229;
	border-radius: 1rem;
	left: 50%;
	min-width: 248px;
	min-width: 15.5rem;
	opacity: 0;
	padding: 32px;
	padding: 2rem;
	position: absolute;
	top: calc(100% + 0.875rem);
	transform: translateX(-50%) translateY(-8px);
	transition: opacity 0.25s ease, visibility 0.25s, transform 0.25s ease;
	visibility: hidden;
	white-space: nowrap;
	z-index: 200;
}

.l-header__dropdown::before {
	content: "";
	height: 14px;
	height: 0.875rem;
	left: -30px;
	position: absolute;
	right: -30px;
	top: -14px;
	top: -0.875rem;
}

.l-header__dropdown-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
	list-style: none;
}

.l-header__dropdown-link {
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	gap: 32px;
	gap: 2rem;
	justify-content: space-between;
	padding-bottom: 12px;
	padding-bottom: 0.75rem;
	text-decoration: none;
	transition: opacity 0.25s;
}

.l-header__dropdown-link svg {
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	opacity: 0.4;
	transition: transform 0.25s ease;
	width: 24px;
	width: 1.5rem;
}

.l-header__dropdown-link:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.l-header__dropdown-link:hover {
	opacity: 0.7;
}

.l-header__dropdown-link:hover svg {
	transform: translateX(4px);
}

.l-header__actions {
	display: none;
}

.l-header__lang {
	display: none;
}

.l-header__lang-item {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
	transition: color 0.3s;
}

.l-header__lang-item.is-active {
	color: #1a2229;
}

.l-header__lang-item:hover {
	opacity: 0.7;
}

.l-header__lang-divider {
	background-color: #dee1e3;
	display: block;
	height: 14px;
	height: 0.875rem;
	width: 1px;
}

.js-hamburger {
	margin-left: auto;
}

body.is-drawer-open .l-header {
	box-shadow: none;
}

.l-inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1360px;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-news-kv {
	background-color: #ffffff;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-news-kv__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
	max-width: 90rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-news-kv__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-news-kv__title .c-section-title__en {
	padding-bottom: 0;
}

.p-news-kv__title .c-section-title__en--gradient-animated {
	display: inline-block;
}

.p-news-kv__ja {
	color: #abb7c1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-news-kv__lead {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-news-content {
	padding-bottom: 68px;
	padding-bottom: 4.25rem;
	padding-top: 48px;
	padding-top: 3rem;
}

.p-news-content__empty {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-news-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
}

.p-news-list__item {
	border-bottom: 1px solid #eceeef;
	padding-bottom: 24px;
	padding-bottom: 1.5rem;
	transition: border-color 0.3s ease;
}

.p-news-list__item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.p-news-list__link {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
}

.p-news-list__detail {
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	min-width: 0;
}

.p-news-list__date {
	color: #abb7c1;
	flex-shrink: 0;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
}

.p-news-list__text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.p-news-list__category {
	color: #abb7c1;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.p-news-list__title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.p-news-list__arrow {
	color: #2863c5;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	transition: color 0.3s ease, transform 0.3s ease;
	width: 24px;
	width: 1.5rem;
}

.p-news-pagination {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 20px;
	gap: 1.25rem;
	justify-content: center;
	margin-top: 48px;
	margin-top: 3rem;
}

.p-news-pagination__list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
}

.p-news-pagination__list .page-numbers {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 50%;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	text-decoration: none;
	transition: border-color 0.3s ease, color 0.3s ease;
	width: 40px;
	width: 2.5rem;
}

.p-news-pagination__list .page-numbers.current {
	background-color: #abb7c1;
	border: none;
	color: rgba(255, 255, 255, 0.6);
}

.p-news-pagination__list .page-numbers.dots {
	background-color: transparent;
	border: none;
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif, "Hiragino Kaku Gothic Pro", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	height: auto;
	width: auto;
}

.p-news-pagination__arrow {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 50%;
	color: #abb7c1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	transition: border-color 0.3s ease, color 0.3s ease;
	width: 40px;
	width: 2.5rem;
}

.p-news-pagination__arrow svg {
	height: 24px;
	height: 1.5rem;
	width: 24px;
	width: 1.5rem;
}

.p-news-pagination__arrow.is-disabled {
	opacity: 0.4;
	pointer-events: none;
}

.p-news-single-kv {
	background-color: #ffffff;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-news-single-kv__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	margin-left: auto;
	margin-right: auto;
	margin-top: 48px;
	margin-top: 3rem;
	max-width: 1440px;
	max-width: 90rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-news-single-kv__date {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
}

.p-news-single-kv__title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-news-single-kv__category {
	color: #abb7c1;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-news-single-content {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 32px;
	padding-top: 2rem;
}

.p-news-single-content > .l-inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-news-single-content__body {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	width: 100%;
	word-break: break-word;
}

.p-news-single-content__body p {
	margin: 0 0 21px;
	margin: 0 0 1.3125rem;
}

.p-news-single-content__body p:last-child {
	margin-bottom: 0;
}

.p-news-single-content__body ul,
.p-news-single-content__body ol {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	padding-left: 24px;
	padding-left: 1.5rem;
}

.p-news-single-content__body ul li,
.p-news-single-content__body ol li {
	line-height: 1.8;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-news-single-content__body ul li {
	list-style: disc;
}

.p-news-single-content__body ol li {
	list-style: decimal;
}

.p-news-single-content__body img,
.p-news-single-content__body figure img,
.p-news-single-content__body .wp-block-image img {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-news-single-content__body a {
	color: #2863c5;
	text-decoration: underline;
	text-underline-offset: 3px;
	text-underline-offset: 0.1875rem;
}

.p-news-single-content__back {
	flex-shrink: 0;
	width: 168px;
	width: 10.5rem;
}

.p-privacy-kv {
	background-color: #ffffff;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-privacy-kv__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
	max-width: 90rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-privacy-kv__title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 48px;
	margin-top: 3rem;
}

.p-privacy-content {
	padding-bottom: 68px;
	padding-bottom: 4.25rem;
	padding-top: 48px;
	padding-top: 3rem;
}

.p-privacy-content__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
}

.p-privacy-content__lead {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	word-break: break-word;
}

.p-privacy-content__section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.p-privacy-content__section-title {
	align-items: flex-start;
	color: #606e79;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	gap: 4px;
	gap: 0.25rem;
	line-height: 1.5;
}

.p-privacy-content__section-num {
	flex-shrink: 0;
	width: 28px;
	width: 1.75rem;
}

.p-privacy-content__section-body {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	word-break: break-word;
}

.p-privacy-content__section-body p {
	margin: 0;
}

.p-privacy-content__section-body ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-privacy-content__date {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	word-break: break-word;
}

.p-service-hero {
	background-color: #ffffff;
	padding-bottom: 0;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-service-hero__title .c-section-title__en {
	font-size: 40px;
	font-size: 2.5rem;
	margin-top: 56px;
	margin-top: 3.5rem;
	padding-bottom: 0;
}

.p-service-hero__title .c-section-title__en--gradient-animated {
	display: block;
}

.p-service .c-section-title__ja {
	line-height: 1;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-service-process__heading .c-section-title__en,
.p-service-faq__heading .c-section-title__en {
	font-size: 32px;
	font-size: 2rem;
}

.p-service-process__heading .c-section-title__en--gradient-animated,
.p-service-faq__heading .c-section-title__en--gradient-animated {
	display: block;
}

.p-service-process__heading .c-section-title__en,
.p-service-faq__heading .c-section-title__en {
	padding-bottom: 0;
}

.p-service-intro {
	background-color: #ffffff;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 24px;
	padding-top: 1.5rem;
}

.p-service-intro__lead {
	margin-bottom: 56px;
	margin-bottom: 3.5rem;
}

.p-service-intro__heading {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-service-intro__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-service-intro__features {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-service-intro__feature {
	grid-column-gap: 1rem;
	-moz-column-gap: 1rem;
	align-items: start;
	border-top: 1px solid #dee1e3;
	column-gap: 1rem;
	display: grid;
	flex: 1;
	grid-template-columns: 2.5rem 1fr;
	padding: 24px 0;
	padding: 1.5rem 0;
}

.p-service-intro__feature:first-child {
	border-top: none;
}

.p-service-intro__feature:last-child {
	padding-bottom: 0;
}

.p-service-intro__feature-icon {
	align-items: center;
	align-self: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	grid-row: 1/3;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	width: 40px;
	width: 2.5rem;
}

.p-service-intro__feature-title {
	align-self: start;
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-service-intro__feature-desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	grid-column: 2;
	line-height: 1.5;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-service-cards {
	background-color: #f3f4f5;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-service-cards__grid {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: 1fr;
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-service-cards__card {
	background-color: #ffffff;
	border-radius: 1rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.08);
	padding: 32px 24px;
	padding: 2rem 1.5rem;
}

.p-service-cards__card-title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-service-cards__card-desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-service-cards__card-tags {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-service-cards__card-tag {
	background-color: #f3f4f5;
	border-radius: 0.75rem;
	color: #606e79;
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 700;
	line-height: 1.5;
	padding: 8px 12px;
	padding: 0.5rem 0.75rem;
	white-space: nowrap;
}

.p-service-process {
	background-color: #ffffff;
	padding-bottom: 0;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-service-process__heading {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-service-process__steps {
	grid-gap: 24px 8px;
	display: grid;
	gap: 24px 8px;
	gap: 1.5rem 0.5rem;
	grid-template-columns: repeat(6, 1fr);
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-service-process__step {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	list-style: none;
	text-align: center;
	width: 100%;
}

.p-service-process__step:nth-child(1),
.p-service-process__step:nth-child(3) {
	grid-column: span 3;
}

.p-service-process__step:nth-child(5),
.p-service-process__step:nth-child(7),
.p-service-process__step:nth-child(9) {
	grid-column: span 2;
}

.p-service-process__step-number {
	align-items: center;
	background: #ea62f0;
	border-radius: 50%;
	color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	height: 24px;
	height: 1.5rem;
	justify-content: center;
	width: 24px;
	width: 1.5rem;
}

.p-service-process__step:nth-child(3) .p-service-process__step-number {
	background: rgb(193.25, 95.25, 236.25);
}

.p-service-process__step:nth-child(5) .p-service-process__step-number {
	background: rgb(152.5, 92.5, 232.5);
}

.p-service-process__step:nth-child(7) .p-service-process__step-number {
	background: rgb(111.75, 89.75, 228.75);
}

.p-service-process__step:nth-child(9) .p-service-process__step-number {
	background: #4757e1;
}

.p-service-process__step-icon {
	display: block;
	height: 72px;
	height: 4.5rem;
	width: 72px;
	width: 4.5rem;
}

.p-service-process__step-text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
	width: 100%;
}

.p-service-process__step-title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.p-service-process__step-desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
}

.p-service-process__note {
	align-items: center;
	color: #606e79;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	gap: 16px;
	gap: 1rem;
	line-height: 1.5;
	margin-top: 32px;
	margin-top: 2rem;
	white-space: nowrap;
}

.p-service-process__note::before,
.p-service-process__note::after {
	background: #dee1e3;
	content: "";
	flex: 1 1 0;
	height: 1px;
	min-width: 0;
}

.p-service-process__arrow {
	display: none;
}

.p-service-process__step-desc .br-pc {
	display: none;
}

.p-service-faq {
	background-color: #ffffff;
	padding-bottom: 68px;
	padding-bottom: 4.25rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-service-faq__heading {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-service-faq__list {
	margin-left: auto;
	margin-right: auto;
	max-width: 1064px;
	max-width: 66.5rem;
}

.p-service-faq__item {
	border-top: 1px solid #eceeef;
}

.p-service-faq__item:last-child {
	border-bottom: 1px solid #eceeef;
}

.p-service-faq__q {
	align-items: center;
	background: none;
	border: none;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 16px;
	gap: 1rem;
	justify-content: space-between;
	min-height: 72px;
	min-height: 4.5rem;
	padding: 24px 12px 24px 0;
	padding: 1.5rem 0.75rem 1.5rem 0;
	text-align: left;
	width: 100%;
}

.p-service-faq__q-text {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-left: 12px;
	margin-left: 0.75rem;
	transition: color 0.2s ease;
}

.p-service-faq__icon {
	background-color: #f3f4f5;
	border-radius: 50%;
	flex-shrink: 0;
	height: 32px;
	height: 2rem;
	position: relative;
	width: 32px;
	width: 2rem;
}

.p-service-faq__icon::before,
.p-service-faq__icon::after {
	background-color: #abb7c1;
	content: "";
	left: 50%;
	position: absolute;
	top: 50%;
	transition: transform 0.3s ease;
}

.p-service-faq__icon::before {
	height: 2px;
	height: 0.125rem;
	transform: translate(-50%, -50%);
	width: 14px;
	width: 0.875rem;
}

.p-service-faq__icon::after {
	height: 14px;
	height: 0.875rem;
	transform: translate(-50%, -50%);
	width: 2px;
	width: 0.125rem;
}

.p-service-faq__item.is-open .p-service-faq__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.p-service-faq__a {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.35s ease;
}

.p-service-faq__item.is-open .p-service-faq__a {
	grid-template-rows: 1fr;
}

.p-service-faq__a-inner {
	min-height: 0;
	overflow: hidden;
}

.p-service-faq__a-body {
	background-color: #f3f4f5;
	padding: 16px;
	padding: 1rem;
}

.p-service-faq__a-body p {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-thanks {
	background-color: #ffffff;
}

.p-thanks__main {
	background-color: #ffffff;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 144px;
	padding-top: 9rem;
	text-align: center;
}

.p-thanks__content {
	margin-left: auto;
	margin-right: auto;
	max-width: 520px;
	max-width: 32.5rem;
}

.p-thanks__title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-thanks__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-thanks__btn-wrap {
	margin-top: 32px;
	margin-top: 2rem;
}

.p-thanks__desc-br--sp {
	display: inline;
}

.p-thanks__btn {
	min-width: 168px;
	min-width: 10.5rem;
}

.page-template-page-thanks .c-cta-contact {
	display: none;
}

.c-breadcrumb {
	background-color: #ffffff;
	margin-bottom: 20px;
	margin-bottom: 1.25rem;
}

.c-breadcrumb__inner {
	overflow-x: auto;
	padding-bottom: 12px;
	padding-top: 12px;
	scrollbar-width: none;
}

.c-breadcrumb__inner::-webkit-scrollbar {
	display: none;
}

.c-breadcrumb__list {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

.c-breadcrumb__item {
	align-items: center;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	white-space: nowrap;
}

.c-breadcrumb__item--current {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}

.c-breadcrumb__link {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	transition: opacity 0.2s;
}

.c-breadcrumb__link:hover {
	opacity: 0.7;
}

.c-breadcrumb__link--cat {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}

.c-breadcrumb__sep {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 4px;
}

.c-breadcrumb__sep svg {
	display: block;
	flex-shrink: 0;
}

.c-btn {
	align-items: center;
	border-radius: 0.25rem;
	cursor: pointer;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 700;
	justify-content: center;
	padding: 14px 32px;
	padding: 0.875rem 2rem;
	text-decoration: none;
	transition: opacity 0.3s;
	white-space: nowrap;
}

.c-btn:hover {
	opacity: 0.8;
}

.c-btn--primary {
	background-color: #2863c5;
	border: none;
	color: #ffffff;
}

.c-btn--secondary {
	background-color: transparent;
	border: 1px solid #2863c5;
	color: #2863c5;
}

.c-btn__icon {
	margin-left: 8px;
	margin-left: 0.5rem;
}

.c-btn--outline-pill {
	background-color: transparent;
	border: 1px solid #2863c5;
	border-radius: 1.5rem;
	color: #2863c5;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 700;
	height: 48px;
	height: 3rem;
	padding: 0 28px;
	padding: 0 1.75rem;
	transition: transform 0.3s ease, color 0.3s ease, border-color 0.3s ease;
	width: 168px;
	width: 10.5rem;
}

.c-btn--gradient-pill {
	animation: c-btn-gradient-flow 6s linear infinite;
	background: -webkit-gradient(linear, left top, right top, from(#ea62f0), color-stop(#4757e1), to(#ea62f0));
	background: linear-gradient(to right, #ea62f0, #4757e1, #ea62f0);
	background-size: 200% auto;
	border: none;
	border-radius: 1.5rem;
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 700;
	height: 48px;
	height: 3rem;
	padding: 0 28px;
	padding: 0 1.75rem;
	transition: transform 0.3s ease;
	width: 168px;
	width: 10.5rem;
}

.c-btn--outline-white-pill {
	background-color: transparent;
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-radius: 1.5rem;
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	height: 48px;
	height: 3rem;
	padding: 0 28px;
	padding: 0 1.75rem;
	transition: transform 0.3s ease;
	width: 168px;
	width: 10.5rem;
}

.c-btn--white-pill {
	background-color: #ffffff;
	border: none;
	border-radius: 1.5rem;
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	height: 48px;
	height: 3rem;
	padding: 0 28px;
	padding: 0 1.75rem;
	width: 168px;
	width: 10.5rem;
}

.c-card-blog {
	color: inherit;
	display: block;
	text-decoration: none;
	transition: transform 0.3s ease;
}

.p-top-blog__inner.l-inner {
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.c-card-blog__image {
	aspect-ratio: 16/9;
	background-color: #abb7c1;
	border-radius: 0.5rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
	overflow: hidden;
}

.c-card-blog__image img {
	-o-object-fit: cover;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.c-card-blog__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
	padding-left: 4px;
	padding-left: 0.25rem;
	padding-right: 4px;
	padding-right: 0.25rem;
}

.c-card-blog__date {
	color: #abb7c1;
	display: block;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
}

.c-card-blog__title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #1a2229;
	display: -webkit-box;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	overflow: hidden;
	transition: color 0.3s ease;
}

.c-card-blog__link {
	align-self: flex-end;
	font-weight: 700;
	gap: 4px;
	gap: 0.25rem;
	pointer-events: none;
}

.c-card-blog__link.c-text-link {
	font-size: 14px;
	font-size: 0.875rem;
}

.c-card-blog__link .c-text-link__icon {
	height: 16px;
	height: 1rem;
	width: 16px;
	width: 1rem;
}

.c-card-blog__cats {
	display: none;
}

.c-card-blog__cat {
	color: #abb7c1;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
}

.c-card-blog__cat::before {
	color: #4fbbef;
	content: "#";
	margin-right: 4px;
	margin-right: 0.25rem;
}

.c-card {
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 0.5rem;
	overflow: hidden;
	transition: opacity 0.3s;
}

.c-card:hover {
	opacity: 0.8;
}

.c-card__image {
	aspect-ratio: 16/9;
	overflow: hidden;
}

.c-card__image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.c-card__body {
	padding: 20px;
	padding: 1.25rem;
}

.c-card__meta {
	align-items: center;
	color: #abb7c1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 12px;
	font-size: 0.75rem;
	gap: 12px;
	gap: 0.75rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

.c-card__title {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.6;
}

.c-card__excerpt {
	color: #abb7c1;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.6;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.c-cta-contact {
	background-color: #f3f4f5;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 80px;
	padding-top: 5rem;
	text-align: center;
}

.c-cta-contact--top {
	padding-bottom: 64px;
	padding-bottom: 4rem;
	padding-top: 64px;
	padding-top: 4rem;
}

.c-cta-contact--narrow-top {
	padding-top: 40px;
	padding-top: 2.5rem;
}

.c-cta-contact__body {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.c-cta-contact__kv {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.c-cta-contact__title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.c-cta-contact__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.c-cta-contact__btns {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	justify-content: center;
	margin-top: 32px;
	margin-top: 2rem;
}

.c-cta-contact__btns .c-cta-contact__btn {
	border-radius: 1.5rem;
	font-size: 15px;
	font-size: 0.9375rem;
	height: 48px;
	height: 3rem;
	width: 168px;
	width: 10.5rem;
}

.c-cta-contact__btns .c-cta-contact__btn + .c-cta-contact__btn {
	margin-left: 8px;
	margin-left: 0.5rem;
}

.c-hamburger {
	align-items: center;
	background: none;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 6px;
	gap: 0.375rem;
	height: 48px;
	height: 3rem;
	justify-content: center;
	padding: 12px;
	padding: 0.75rem;
	transition: background-color 0.25s ease;
	width: 48px;
	width: 3rem;
	z-index: 300;
}

.c-hamburger__line {
	background-color: #1a2229;
	border-radius: 2px;
	display: block;
	height: 2px;
	transition: transform 0.3s ease, opacity 0.3s ease;
	width: 24px;
	width: 1.5rem;
}

body.is-drawer-open .c-hamburger {
	background-color: #F3F4F5;
}

body.is-drawer-open .c-hamburger__line:nth-child(1) {
	transform: translateY(0.5rem) rotate(45deg);
}

body.is-drawer-open .c-hamburger__line:nth-child(2) {
	opacity: 0;
}

body.is-drawer-open .c-hamburger__line:nth-child(3) {
	transform: translateY(-0.5rem) rotate(-45deg);
}

.c-drawer {
	background-color: #ffffff;
	height: calc(100dvh - 6rem);
	left: 0;
	opacity: 0;
	overflow-y: auto;
	position: fixed;
	top: 96px;
	top: 6rem;
	transform: translateY(-8px);
	transition: opacity 0.25s ease-in-out, visibility 0.25s, transform 0.25s ease-in-out;
	visibility: hidden;
	width: 100%;
	z-index: 99;
}

.c-drawer.is-open {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.c-drawer__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 14px 24px 40px;
	padding: 0.875rem 1.5rem 2.5rem;
}

.c-drawer__nav-list {
	list-style: none;
}

.c-drawer__nav-item {
	border-bottom: 1px solid #dee1e3;
}

.c-drawer__nav-item--has-sub {
	border-bottom: none;
}

.c-drawer__nav-item--has-sub > .c-drawer__nav-link {
	padding-bottom: 16px;
	padding-bottom: 1rem;
	padding-top: 16px;
	padding-top: 1rem;
}

.c-drawer__nav-item--coming .c-drawer__nav-link {
	color: #abb7c1;
	cursor: default;
}

.c-drawer__nav-link {
	align-items: center;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 500;
	justify-content: space-between;
	padding: 18px 16px;
	padding: 1.125rem 1rem;
	text-decoration: none;
	transition: opacity 0.3s;
}

.c-drawer__nav-link:hover {
	opacity: 0.7;
}

.c-drawer__nav-arrow {
	color: #2863c5;
	flex-shrink: 0;
	height: 18px;
	height: 1.125rem;
	width: 18px;
	width: 1.125rem;
}

.c-drawer__nav-sublist {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	list-style: none;
	padding-bottom: 8px;
	padding-bottom: 0.5rem;
}

.c-drawer__nav-sublink {
	align-items: center;
	color: #606E79;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	justify-content: space-between;
	padding: 0 16px;
	padding: 0 1rem;
	text-decoration: none;
	transition: opacity 0.3s;
}

.c-drawer__nav-sublink svg {
	color: #2863c5;
	flex-shrink: 0;
	height: 18px;
	height: 1.125rem;
	width: 18px;
	width: 1.125rem;
}

.c-drawer__nav-sublink:hover {
	opacity: 0.7;
}

.c-drawer__actions {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 8px;
	gap: 0.5rem;
	padding-top: 48px;
	padding-top: 3rem;
}

.c-drawer__actions .c-btn {
	flex: 1;
	min-width: 140px;
	min-width: 8.75rem;
	text-align: center;
}

.c-drawer__bottom-link {
	padding-top: 40px;
	padding-top: 2.5rem;
}

.c-drawer__bottom-link-text {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	text-decoration: underline;
}

body.is-drawer-open {
	overflow: hidden;
}

.p-company-members__desc {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	display: -webkit-box;
	overflow: hidden;
}

.p-company-members__more {
	align-items: center;
	align-self: flex-end;
	background: none;
	border: none;
	color: #606e79;
	cursor: pointer;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	flex-direction: row;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 8px;
	gap: 0.5rem;
	margin-top: -8px;
	margin-top: -0.5rem;
	padding: 0;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.p-company-members__more img {
	filter: brightness(0) saturate(100%) invert(43%) sepia(11%) saturate(480%) hue-rotate(166deg) brightness(92%);
}

.p-company-members__more-text {
	transition: transform 0.2s ease;
}

.c-member-modal {
	display: none;
}

.c-member-modal.is-open {
	align-items: flex-start;
	background-color: rgba(26, 34, 41, 0.8);
	bottom: 0;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	left: 0;
	opacity: 0;
	overflow-y: auto;
	padding: 24px;
	padding: 1.5rem;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity 0.3s ease;
	z-index: 9000;
}

.c-member-modal.is-visible {
	opacity: 1;
}

.c-member-modal__wrap {
	margin-bottom: auto;
	margin-top: auto;
	max-width: 848px;
	max-width: 53rem;
	padding-top: 56px;
	padding-top: 3.5rem;
	position: relative;
	width: 100%;
}

.c-member-modal__close {
	align-items: center;
	background: none;
	border: none;
	color: #ffffff;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	padding: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.2s;
	width: 40px;
	width: 2.5rem;
}

.c-member-modal__close svg,
.c-member-modal__close img {
	filter: brightness(0) invert(1);
	flex-shrink: 0;
	height: 40px;
	height: 2.5rem;
	width: 40px;
	width: 2.5rem;
}

.c-member-modal__box {
	background-color: #ffffff;
	border-radius: 1rem;
	cursor: default;
	padding: 48px 24px;
	padding: 3rem 1.5rem;
	width: 100%;
}

.c-member-modal__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
}

.c-member-modal__left {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	flex-shrink: 0;
	gap: 24px;
	gap: 1.5rem;
}

.c-member-modal__info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.c-member-modal__photo {
	background-color: #f3f4f5;
	border-radius: 50%;
	flex-shrink: 0;
	height: 144px;
	height: 9rem;
	overflow: hidden;
	width: 144px;
	width: 9rem;
}

.c-member-modal__photo img {
	-o-object-fit: cover;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.c-member-modal__role {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
}

.c-member-modal__name {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
}

.c-member-modal__right {
	flex: 1;
}

.c-member-modal__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	white-space: pre-wrap;
}

.c-pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-top: 32px;
	margin-top: 2rem;
}

.c-pagination ul.page-numbers {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.c-pagination li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
}

.c-pagination a.page-numbers,
.c-pagination span.page-numbers {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1.25rem;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	text-decoration: none;
	transition: border-color 0.3s ease-out, color 0.3s ease-out;
	width: 40px;
	width: 2.5rem;
}

.c-pagination span.current {
	background-color: #abb7c1;
	border-color: #abb7c1;
	color: rgba(255, 255, 255, 0.6);
}

.c-pagination span.dots {
	background: none;
	border: none;
	color: #606e79;
	transform: translateY(-0.3em);
	width: 16px;
	width: 1rem;
}

.c-pagination a.prev.page-numbers {
	color: #2863c5;
	margin-right: 8px;
	margin-right: 0.5rem;
}

.c-pagination a.next.page-numbers {
	color: #2863c5;
	margin-left: 8px;
	margin-left: 0.5rem;
}

.c-post-body {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.c-post-body h1 {
	color: #2863c5;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.c-post-body h1 strong {
	color: inherit;
}

.c-post-body h2 {
	color: #1a2229;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
	scroll-margin-top: 7rem;
}

.c-post-body h3 {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
	scroll-margin-top: 7rem;
}

.c-post-body h4 {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.c-post-body h5 {
	color: #1a2229;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.c-product-nav {
	background-color: #f3f4f5;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.c-product-nav__inner {
	margin: 0 auto;
	max-width: 1440px;
	max-width: 90rem;
	padding: 0 24px;
	padding: 0 1.5rem;
}

.c-product-nav__cards {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
}

.c-product-nav__card {
	background-color: #ffffff;
	border-radius: 0.75rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.08);
	color: inherit;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	padding-top: 0;
	text-decoration: none;
	transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.c-product-nav__card--current {
	box-shadow: none;
}

.c-product-nav__card--current .c-product-nav__image {
	opacity: 0.2;
}

.c-product-nav__card--current .c-product-nav__title {
	color: #dee1e3;
}

.c-product-nav__card--current .c-product-nav__desc {
	color: #dee1e3;
}

.c-product-nav__card--current .c-product-nav__link {
	color: #dee1e3;
	pointer-events: none;
}

.c-product-nav__image {
	display: none;
}

.c-product-nav__body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0;
	padding: 32px 24px;
	padding: 2rem 1.5rem;
}

.c-product-nav__title {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.4;
	transition: color 0.3s ease-out;
}

.c-product-nav__desc {
	color: #606e79;
	flex: 1;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	margin-top: 4px;
	margin-top: 0.25rem;
}

.c-product-nav__link {
	align-items: center;
	align-self: flex-end;
	color: #2863c5;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 4px;
	gap: 0.25rem;
	text-decoration: none;
	transition: color 0.3s ease-out;
}

.c-product-nav__link-icon {
	flex-shrink: 0;
	height: 20px;
	height: 1.25rem;
	width: 20px;
	width: 1.25rem;
}

.c-section-title__en {
	color: #1a2229;
	display: block;
	font-family: "Inter", sans-serif;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1;
	padding-bottom: 0.12em;
}

.c-section-title__en--gradient-animated {
	-webkit-background-clip: text;
	animation: c-section-title-gradient-flow 6s linear infinite;
	background: linear-gradient(135deg, #ea62f0, #4757e1, #ea62f0);
	background-clip: text;
	background-size: 200% auto;
	color: transparent;
}

.c-section-title__ja {
	color: #abb7c1;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.c-text-link {
	align-items: center;
	color: #2863c5;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	gap: 8px;
	gap: 0.5rem;
	line-height: 1.5;
	text-decoration: none;
	transition: color 0.3s ease;
	white-space: nowrap;
}

.c-text-link__icon {
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	transition: transform 0.3s ease;
	width: 24px;
	width: 1.5rem;
}

.c-toc {
	background-color: #f3f4f5;
	border-radius: 0.5rem;
	font-family: "Noto Sans JP", sans-serif;
	margin-top: 32px;
	margin-top: 2rem;
	padding: 24px;
	padding: 1.5rem;
}

.c-toc .c-toc__title {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.c-toc .c-toc__list {
	counter-reset: toc;
	list-style: none;
	margin-bottom: 0;
	padding-left: 0;
}

.c-toc .c-toc__list .c-toc__item + .c-toc__item {
	margin-top: 12px;
	margin-top: 0.75rem;
}

.c-toc .c-toc__item {
	align-items: baseline;
	counter-increment: toc;
	counter-reset: toc-sub;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
	line-height: 1.6;
	list-style: none;
	margin-bottom: 0;
}

.c-toc .c-toc__item::before {
	color: #2863c5;
	content: counter(toc, decimal-leading-zero) ".";
	flex-shrink: 0;
	font-weight: 700;
}

.c-toc .c-toc__item.c-toc__item--sub {
	counter-increment: toc-sub;
	counter-reset: none;
	padding-left: 24px;
	padding-left: 1.5rem;
}

.c-toc .c-toc__item.c-toc__item--sub::before {
	content: counter(toc, decimal-leading-zero) "-" counter(toc-sub) ".";
}

.c-toc .c-toc__link {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.6;
	text-decoration: none;
	transition: color 0.2s;
}

.p-activities-kv {
	background-color: #ffffff;
	padding-bottom: 48px;
	padding-bottom: 3rem;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-activities-kv__en {
	margin-top: 80px;
	margin-top: 5rem;
	padding-bottom: 0;
}

.p-activities-kv__lead {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-activities-list {
	padding-bottom: 68px;
	padding-bottom: 4.25rem;
}

.p-activities-list__cards {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: 1fr;
}

.p-activities-list__card {
	background-color: #ffffff;
	border-radius: 1rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.08);
	color: inherit;
	display: block;
	min-width: 0;
	overflow: hidden;
	text-decoration: none;
	transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
	width: 100%;
}

.p-activities-list__card-image {
	background-color: #f3f4f5;
	border-radius: 1rem 1rem 0 0;
	height: 180px;
	height: 11.25rem;
	overflow: hidden;
}

.p-activities-list__card-image img {
	-o-object-fit: cover;
	-o-object-position: center top;
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}

.p-activities-list__card-body {
	word-wrap: break-word;
	padding: 16px 16px 24px;
	padding: 1rem 1rem 1.5rem;
}

.p-activities-list__card-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #1a2229;
	display: -webkit-box;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
	margin-top: 4px;
	margin-top: 0.25rem;
	overflow: hidden;
	transition: color 0.3s ease-out;
}

.p-activities-list__card-excerpt {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #606e79;
	display: -webkit-box;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	overflow: hidden;
}

.p-activities-list__pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-activities-list__pagination .navigation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.p-activities-list__pagination .nav-links {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
}

.p-activities-list__pagination .page-numbers {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1.25rem;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	text-decoration: none;
	transition: border-color 0.3s ease-out, color 0.3s ease-out;
	width: 40px;
	width: 2.5rem;
}

.p-activities-list__pagination .page-numbers.current {
	background-color: #abb7c1;
	border-color: #abb7c1;
	color: rgba(255, 255, 255, 0.6);
}

.p-activities-list__pagination .page-numbers.dots {
	background: none;
	border: none;
	color: #606e79;
	transform: translateY(-0.3em);
	width: 16px;
	width: 1rem;
}

.p-activities-list__pagination .page-numbers.prev {
	color: #2863c5;
	margin-right: 8px;
	margin-right: 0.5rem;
}

.p-activities-list__pagination .page-numbers.next {
	color: #2863c5;
	margin-left: 8px;
	margin-left: 0.5rem;
}

.p-activities-list__pagination .page-numbers.disabled {
	color: #abb7c1;
	cursor: default;
	pointer-events: none;
}

.p-activities-list__pagination .page-numbers svg {
	display: block;
}

.p-activities-list__empty {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	padding: 80px 0;
	padding: 5rem 0;
	text-align: center;
}

.p-activities-single-kv {
	background-color: #ffffff;
	padding-bottom: 32px;
	padding-bottom: 2rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-activities-single-kv__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.p-activities-single-kv__heading {
	color: #1a2229;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-activities-single-contents {
	background-color: #ffffff;
	padding-bottom: 0;
}

.p-activities-single-contents__inner {
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-activities-single-contents__image img {
	border-radius: 0.5rem;
	display: block;
	height: auto;
	width: 100%;
}

.p-activities-single-contents__caption {
	color: #606e79;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-activities-single-contents__body {
	margin-top: 32px;
	margin-top: 2rem;
}

.p-activities-single-contents__body p {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-activities-single-contents__body p + p {
	margin-top: 20px;
	margin-top: 1.25rem;
}

.p-activities-single-contents__body h2 {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-activities-single-contents__body img {
	border-radius: 0.5rem;
	display: block;
	height: auto;
	width: 100%;
}

.p-activities-single-nav {
	background-color: #ffffff;
	padding-bottom: 32px;
	padding-bottom: 2rem;
	padding-top: 32px;
	padding-top: 2rem;
}

.p-activities-single-nav__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 24px;
	gap: 1.5rem;
	justify-content: center;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-activities-single-nav__link {
	align-items: center;
	color: #2863c5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 8px;
	gap: 0.5rem;
	text-decoration: none;
	transition: color 0.3s ease-out;
	white-space: nowrap;
}

.p-activities-single-nav__link svg {
	display: block;
	flex-shrink: 0;
	transition: transform 0.3s ease-out;
}

.p-activities-single-nav__divider {
	border-left: 1px solid #dee1e3;
	display: block;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	width: 0;
}

.p-activities-single-related {
	background-color: #ffffff;
	padding-bottom: 28px;
	padding-bottom: 1.75rem;
	padding-top: 48px;
	padding-top: 3rem;
}

.p-activities-single-related__label {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 0;
}

.p-activities-single-related__cards {
	-webkit-overflow-scrolling: touch;
	background-color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	margin-left: -24px;
	margin-left: -1.5rem;
	margin-right: -24px;
	margin-right: -1.5rem;
	overflow-x: auto;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-top: 24px;
	padding-top: 1.5rem;
	scrollbar-width: none;
}

.p-activities-single-related__cards::-webkit-scrollbar {
	display: none;
}

.p-activities-single-related__cards::after {
	content: "";
	display: block;
	flex-shrink: 0;
	min-width: 24px;
	min-width: 1.5rem;
}

.p-activities-single-related__cards .p-activities-list__card {
	background-color: #ffffff;
	flex-shrink: 0;
	min-height: 276px;
	min-height: 17.25rem;
	width: 227px;
	width: 14.1875rem;
}

.p-activities-single-related__cards .p-activities-list__card-image {
	height: 120px;
	height: 7.5rem;
}

.p-activities-single-related__cards .p-activities-list__card-body {
	padding-bottom: 16px;
	padding-bottom: 1rem;
}

.p-activities-single-related__cards .p-activities-list__card-excerpt { /* autoprefixer: ignore next */
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	overflow: hidden;
}

.p-single {
	margin-bottom: 80px;
	margin-bottom: 5rem;
	margin-top: 120px;
	margin-top: 7.5rem;
}

.p-single__meta {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	gap: 0.75rem 1rem;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-single__date {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
}

.p-single__author {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
}

.p-single__author-avatar {
	height: 32px !important;
	height: 2rem !important;
	width: 32px !important;
	width: 2rem !important;
}

.p-single__author-avatar {
	-o-object-fit: cover;
	border-radius: 50%;
	object-fit: cover;
}

.p-single__author-name {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
}

.p-single__title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-single__tags {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	gap: 0.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-single__tag {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1.5rem;
	color: #606e79;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 400;
	gap: 4px;
	gap: 0.25rem;
	line-height: 1.5;
	padding: 4px 12px;
	padding: 0.25rem 0.75rem;
}

.p-single__tag {
	text-decoration: none;
	transition: transform 0.2s, color 0.2s;
}

.p-single__tag-icon {
	color: #4fbbef;
	flex-shrink: 0;
	height: 10.67px;
	height: 0.666875rem;
	width: 12px;
	width: 0.75rem;
}

.p-single__thumbnail {
	border-radius: 1rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
	overflow: hidden;
}

.p-single__thumbnail img {
	display: block;
	height: auto;
	width: 100%;
}

.p-single__content {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
}

.p-single__content p {
	margin-bottom: 21px;
	margin-bottom: 1.3125rem;
}

.p-single__content h1 {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-single__content h2 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-single__content h3 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-single__content h4 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-single__content > *:last-child {
	margin-bottom: 0;
}

.p-single__content ul,
.p-single__content ol {
	margin-bottom: 36px;
	margin-bottom: 2.25rem;
	padding-left: 24px;
	padding-left: 1.5rem;
}

.p-single__content ul li,
.p-single__content ol li {
	line-height: 1.8;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-single__content ul li {
	list-style: disc;
}

.p-single__content ol li {
	list-style: decimal;
}

.p-single__content blockquote {
	border-left: 4px solid #dee1e3;
	color: #606e79;
	margin: 24px 0;
	margin: 1.5rem 0;
	padding: 16px 24px;
	padding: 1rem 1.5rem;
}

.p-single__content a {
	color: #2863c5;
	text-decoration: underline;
}

.p-single__content figure {
	margin-bottom: 0;
}

.p-single__content figcaption {
	color: #1a2229;
	font-size: 14px;
	font-size: 0.875rem;
	margin-bottom: 0;
	margin-top: 16px;
	margin-top: 1rem;
	text-align: center;
}

.p-single__content img,
.p-single__content figure img,
.p-single__content .wp-block-image img {
	display: block;
	height: auto;
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	margin-top: 40px;
	margin-top: 2.5rem;
	max-width: 100%;
}

.p-single__content strong {
	color: #1a2229;
	font-weight: 700;
}

.p-single__content em {
	font-style: italic;
}

.p-single__content table {
	border-collapse: collapse;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	width: 100%;
}

.p-single__content table th,
.p-single__content table td {
	border: 1px solid #dee1e3;
	font-size: 14px;
	font-size: 0.875rem;
	padding: 8px 12px;
	padding: 0.5rem 0.75rem;
}

.p-single__content table th {
	background-color: #f3f4f5;
	font-weight: 700;
}

.p-single-aside__block {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-single-aside__block:last-child {
	margin-bottom: 0;
}

.p-single-aside__title {
	color: #606e79;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-single-aside__block:has(.p-single-popular) .p-single-aside__title {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-single-popular {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-single-popular__item {
	list-style: none;
}

.p-single-popular__link {
	align-items: stretch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	text-decoration: none;
}

.p-single-popular__image {
	background-color: #f3f4f5;
	border-radius: 0.5rem;
	flex-shrink: 0;
	height: 80px;
	height: 5rem;
	overflow: hidden;
	width: 120px;
	width: 7.5rem;
}

.p-single-popular__image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.p-single-popular__image-placeholder {
	background-color: #f3f4f5;
	height: 100%;
	width: 100%;
}

.p-single-popular__body {
	flex: 1;
	min-width: 0;
	padding: 11px 0;
	padding: 0.6875rem 0;
}

.p-single-popular__date {
	color: #abb7c1;
	display: block;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 4px;
	margin-bottom: 0.25rem;
}

.p-single-popular__title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #1a2229;
	display: -webkit-box;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	overflow: hidden;
	transition: color 0.2s;
}

.p-single-cats {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-single-cats__item {
	border-bottom: 1px solid #dee1e3;
	list-style: none;
}

.p-single-cats__link {
	align-items: center;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	justify-content: space-between;
	padding: 16px 0;
	padding: 1rem 0;
	text-decoration: none;
	transition: color 0.2s;
}

.p-single-cats__icon {
	color: #2863c5;
	flex-shrink: 0;
}

.p-single-nav {
	margin-bottom: 56px;
	margin-bottom: 3.5rem;
	padding: 32px 0 24px;
	padding: 2rem 0 1.5rem;
}

.p-single-nav__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 24px;
	gap: 1.5rem;
	justify-content: center;
}

.p-single-nav__link {
	align-items: center;
	color: #2863c5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
	text-decoration: none;
	white-space: nowrap;
}

.p-single-nav__link {
	transition: color 0.2s;
}

.p-single-nav__info {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
}

.p-single-nav__avatar {
	height: 40px !important;
	height: 2.5rem !important;
	width: 40px !important;
	width: 2.5rem !important;
}

.p-single-nav__avatar {
	-o-object-fit: cover;
	border-radius: 50%;
	object-fit: cover;
}

.p-single-nav__label {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-single-nav__divider {
	background-color: #dee1e3;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	width: 1px;
}

.p-single-nav__arrow {
	flex-shrink: 0;
	transition: transform 0.2s;
}

.p-single-mailmag {
	background-color: #f3f4f5;
	margin-bottom: 48px;
	margin-bottom: 3rem;
	padding: 80px 0;
	padding: 5rem 0;
}

.p-single-mailmag__left {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	text-align: center;
}

.p-single-mailmag__checkbox-label.u-desktop {
	display: none;
}

.p-single-mailmag__title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-single-mailmag__desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-single-mailmag__form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	text-align: left;
	width: 100%;
}

.p-single-mailmag__inputs {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
	width: 100%;
}

.p-single-mailmag__input {
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 0.5rem;
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	height: 45px;
	height: 2.8125rem;
	padding: 12px 16px;
	padding: 0.75rem 1rem;
	width: 100%;
}

.p-single-mailmag__input::-moz-placeholder {
	color: #abb7c1;
}

.p-single-mailmag__input::placeholder {
	color: #abb7c1;
}

.p-single-mailmag__input:focus {
	border-color: #2863c5;
	outline: none;
}

.p-single-mailmag__checkbox-label {
	align-items: center;
	color: #606e79;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 14px;
	font-size: 0.875rem;
	gap: 8px;
	gap: 0.5rem;
}

input[type=checkbox].p-single-mailmag__checkbox {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 0.25rem;
	cursor: pointer;
	display: block;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	margin: 0;
	position: relative;
	transition: border-color 0.2s, background-color 0.2s;
	width: 24px;
	width: 1.5rem;
}

input[type=checkbox].p-single-mailmag__checkbox:checked {
	background-color: #2863c5;
	border-color: #2863c5;
}

input[type=checkbox].p-single-mailmag__checkbox:checked::after {
	border-bottom: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	content: "";
	height: 10px;
	height: 0.625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -62%) rotate(45deg);
	width: 6px;
	width: 0.375rem;
}

.p-single-mailmag__privacy-link {
	color: #2863c5;
	text-decoration: underline;
}

.p-single-mailmag__submit {
	align-self: center;
	height: 48px;
	height: 3rem;
	width: 168px;
	width: 10.5rem;
}

.p-single-mailmag__submit-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-single-related .p-blog-section__cards {
	-webkit-overflow-scrolling: touch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	overflow-x: auto;
	scrollbar-width: none;
}

.p-single-related .p-blog-section__cards::-webkit-scrollbar {
	display: none;
}

.p-single-related .p-blog-section__cards > * {
	flex: 0 0 165px;
	flex: 0 0 10.3125rem;
}

.p-single-related {
	margin-bottom: 68px;
	margin-bottom: 4.25rem;
}

.p-single-related__title {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-blog-kv {
	margin-bottom: 48px;
	margin-bottom: 3rem;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-blog-kv__left {
	flex: 1;
}

.p-blog-kv__left .c-section-title__en {
	margin-top: 80px;
	margin-top: 5rem;
}

.p-blog-kv__desc {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.75;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-blog-kv__right {
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-blog-kv__search-form {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 48px;
	height: 3rem;
	overflow: hidden;
}

.p-blog-kv__search-input {
	background: transparent;
	border: none;
	color: #1a2229;
	flex: 1;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	min-width: 0;
	outline: none;
	padding: 12px 24px;
	padding: 0.75rem 1.5rem;
}

.p-blog-kv__search-input::-moz-placeholder {
	color: #abb7c1;
}

.p-blog-kv__search-input::placeholder {
	color: #abb7c1;
}

.p-blog-kv__search-btn {
	align-items: center;
	background: none;
	border: none;
	color: #abb7c1;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	justify-content: center;
	padding: 12px 14px;
	padding: 0.75rem 0.875rem;
	transition: color 0.2s;
}

.p-blog-keywords {
	padding-bottom: 110px;
	padding-bottom: 6.875rem;
	padding-top: 0;
}

.p-blog-keywords__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
}

.p-blog-keywords__label {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	white-space: nowrap;
}

.p-blog-keywords__tags {
	-webkit-overflow-scrolling: touch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	overflow-x: auto;
	padding: 0;
	scrollbar-width: none;
}

.p-blog-keywords__tags::-webkit-scrollbar {
	display: none;
}

.p-blog-keywords__tags li {
	flex-shrink: 0;
	list-style: none;
}

.p-blog-keywords__tags li a {
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1.5rem;
	color: #606e79;
	display: inline-block;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	padding: 4px 16px;
	padding: 0.25rem 1rem;
	text-decoration: none;
	transition: transform 0.2s;
}

.p-blog-keywords__tags li a::before {
	color: #4fbbef;
	content: "#";
	margin-right: 6px;
	margin-right: 0.375rem;
}

.p-blog-section {
	margin-bottom: 48px;
	margin-bottom: 3rem;
	padding-bottom: 0;
}

.p-blog-section:has(+ .c-breadcrumb) {
	margin-bottom: 68px;
	margin-bottom: 4.25rem;
}

.p-blog-section__header {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-blog-section__title {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-blog-section__more {
	font-size: 16px;
	font-size: 1rem;
}

.p-blog-section__cards {
	grid-row-gap: 24px;
	grid-column-gap: 0.9375rem;
	-moz-column-gap: 0.9375rem;
	column-gap: 0.9375rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: 24px;
	row-gap: 1.5rem;
}

.p-blog-footer {
	background-color: #f3f4f5;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-blog-footer__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-blog-footer__item {
	align-items: center;
	border-bottom: 1px solid #dee1e3;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding-bottom: 32px;
	padding-bottom: 2rem;
	text-align: center;
}

.p-blog-footer__item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.p-blog-footer__item-title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-blog-footer__item-btn {
	height: 48px;
	height: 3rem;
	width: 168px;
	width: 10.5rem;
}

.p-blog-footer__item-desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.75;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-blog-footer__form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	text-align: left;
	width: 100%;
}

.p-blog-footer__inputs {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
	width: 100%;
}

.p-blog-footer__input {
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 0.5rem;
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	height: 45px;
	height: 2.8125rem;
	padding: 12px 16px;
	padding: 0.75rem 1rem;
	width: 100%;
}

.p-blog-footer__input::-moz-placeholder {
	color: #abb7c1;
}

.p-blog-footer__input::placeholder {
	color: #abb7c1;
}

.p-blog-footer__input:focus {
	border-color: #2863c5;
	outline: none;
}

.p-blog-footer__checkbox-label {
	align-items: center;
	color: #606e79;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 14px;
	font-size: 0.875rem;
	gap: 8px;
	gap: 0.5rem;
}

input[type=checkbox].p-blog-footer__checkbox {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 0.25rem;
	cursor: pointer;
	display: block;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	margin: 0;
	position: relative;
	transition: border-color 0.2s, background-color 0.2s;
	width: 24px;
	width: 1.5rem;
}

input[type=checkbox].p-blog-footer__checkbox:checked {
	background-color: #2863c5;
	border-color: #2863c5;
}

input[type=checkbox].p-blog-footer__checkbox:checked::after {
	border-bottom: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	content: "";
	height: 10px;
	height: 0.625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -62%) rotate(45deg);
	width: 6px;
	width: 0.375rem;
}

.p-blog-footer__privacy-link {
	color: #2863c5;
	text-decoration: underline;
}

.p-blog-footer__submit {
	align-self: center;
	height: 48px;
	height: 3rem;
	margin-top: 8px;
	margin-top: 0.5rem;
	width: 168px;
	width: 10.5rem;
}

.p-keyword-kv__title {
	align-items: center;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	gap: 8px;
	gap: 0.5rem;
	line-height: 1.5;
	margin-bottom: 48px;
	margin-bottom: 3rem;
	margin-top: 48px;
	margin-top: 3rem;
}

.p-keyword-kv__icon {
	color: #4fbbef;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	width: 24px;
	width: 1.5rem;
}

.p-category-kv__title {
	color: #1a2229;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 48px;
	margin-bottom: 3rem;
	margin-top: 48px;
	margin-top: 3rem;
}

.p-drawing .p-plm-hero > .l-inner {
	padding-left: 32px;
	padding-left: 2rem;
	padding-right: 32px;
	padding-right: 2rem;
}

.p-drawing .p-plm-hero__badge {
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

.p-drawing .p-plm-hero__subtitle {
	font-size: 21px;
	font-size: 1.3125rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

.p-drawing .p-plm-hero__title {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-drawing .p-plm-hero__content {
	width: 329px;
	width: 20.5625rem;
}

.p-plm-features__image--drawing-03 img {
	-o-object-position: right center;
	object-position: right center;
}

.p-plm-hero__visual-img--drawing {
	height: 100%;
	left: 0;
	opacity: 0;
	top: 0;
	transition: opacity 1s ease;
	width: 100%;
}

.p-plm-hero__visual-img--drawing.is-active {
	opacity: 1;
}

.p-plm-hero__visual-img--drawing[data-kv-state="02"] picture {
	height: 309px;
	height: 19.3125rem;
	left: -61px;
	left: -3.8125rem;
	position: absolute;
	top: -19px;
	top: -1.1875rem;
	width: 390px;
	width: 24.375rem;
}

.p-drawing .p-top-voices {
	padding-bottom: 80px;
	padding-bottom: 5rem;
}

.p-drawing .p-top-voices .c-section-title__en {
	padding-bottom: 0;
}

.p-drbfm-about {
	background-color: #f3f4f5;
	padding-bottom: 64px;
	padding-bottom: 4rem;
	padding-top: 64px;
	padding-top: 4rem;
}

.p-drbfm-about__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
	text-align: center;
}

.p-drbfm-about__lead {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-drbfm-about__heading {
	color: #1a2229;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-drbfm-about__contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-drbfm-about__text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
}

.p-drbfm-about__text-title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-drbfm-about__text-desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
}

.p-drbfm-about__image {
	order: -1;
}

.p-drbfm-about__image img {
	display: block;
	height: auto;
	width: 100%;
}

.p-drbfm-activities {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-drbfm-activities__header {
	grid-column-gap: 1rem;
	-moz-column-gap: 1rem;
	column-gap: 1rem;
	display: grid;
	grid-template-areas: "title more" "lead  lead";
	grid-template-columns: 1fr auto;
	margin-bottom: 22px;
	margin-bottom: 1.375rem;
}

.p-drbfm-activities__header .c-section-title {
	grid-area: title;
}

.p-drbfm-activities__header .c-section-title__en {
	padding-bottom: 0;
}

.p-drbfm-activities__more {
	align-self: start;
	grid-area: more;
	padding-top: 8px;
	padding-top: 0.5rem;
}

.p-drbfm-activities__lead {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	grid-area: lead;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-drbfm-activities__cards {
	-webkit-overflow-scrolling: touch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	margin-right: -24px;
	margin-right: -1.5rem;
	overflow-x: auto;
	padding-right: 24px;
	padding-right: 1.5rem;
	scrollbar-width: none;
}

.p-drbfm-activities__cards::-webkit-scrollbar {
	display: none;
}

.p-drbfm-activities__card {
	color: inherit;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 16px;
	gap: 1rem;
	text-decoration: none;
	transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
	width: 227px;
	width: 14.1875rem;
}

.p-drbfm-activities__card-image {
	background-color: #abb7c1;
	height: 135px;
	height: 8.4375rem;
	overflow: hidden;
	width: 100%;
}

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

.p-drbfm-activities__card-body {
	padding: 0 8px;
	padding: 0 0.5rem;
}

.p-drbfm-activities__card-title {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-drbfm-activities__card-desc {
	color: #606e79;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
}

.p-plm-problem__heading-block {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
}

.p-plm-problem__lead {
	color: #ffffff;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.p-drbfm-diagram {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-drbfm-diagram__title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 4px;
	margin-bottom: 0.25rem;
}

.p-drbfm-diagram__subtitle {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-drbfm-diagram__scroll {
	-webkit-overflow-scrolling: touch;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-right: -24px;
	margin-right: -1.5rem;
	overflow-x: auto;
	padding-right: 24px;
	padding-right: 1.5rem;
	scrollbar-width: none;
}

.p-drbfm-diagram__scroll::-webkit-scrollbar {
	display: none;
}

.p-drbfm-diagram__image {
	width: 680px;
	width: 42.5rem;
}

.p-drbfm-diagram__image img {
	display: block;
	height: auto;
	width: 100%;
}

.p-drbfm-diagram__bar {
	background-color: #dee1e3;
	border-radius: 62.4375rem;
	height: 2px;
	height: 0.125rem;
	overflow: hidden;
	position: relative;
}

.p-drbfm-diagram__bar-thumb {
	background-color: #abb7c1;
	border-radius: 62.4375rem;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 50%;
}

.p-drbfm .p-plm-hero > .l-inner {
	padding-left: 32px;
	padding-left: 2rem;
	padding-right: 32px;
	padding-right: 2rem;
}

.p-drbfm .p-plm-hero__visual {
	height: 245px;
	height: 15.3125rem;
	width: 327px;
	width: 20.4375rem;
}

.p-drbfm .p-plm-hero__content {
	width: 329px;
	width: 20.5625rem;
}

.p-plm-hero__visual-img--drbfm {
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
}

.p-drbfm .p-plm-hero__visual-img--drbfm picture {
	height: 246px;
	height: 15.375rem;
	left: -16px;
	left: -1rem;
	position: absolute;
	top: 0;
	width: 346px;
	width: 21.625rem;
}

.p-drbfm .p-plm-hero__visual-img--drbfm img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-features {
	padding-bottom: 0;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-plm-features__header {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-plm-features .c-section-title__en {
	padding-bottom: 0;
}

.p-plm-features__desc {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-plm-features__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-plm-features__item {
	border-bottom: 1px solid #eceeef;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
	padding-bottom: 32px;
	padding-bottom: 2rem;
}

.p-plm-features__item:first-child {
	margin-top: 0;
}

.p-plm-features__item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.p-plm-features__image {
	background-color: #dee1e3;
	flex-shrink: 0;
	height: 210px;
	height: 13.125rem;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.p-plm-features__image picture {
	display: block;
	height: 100%;
	width: 100%;
}

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

.p-plm-features__image--item03 img {
	-o-object-position: right center;
	object-position: right center;
}

.p-plm-features__item-title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

.p-plm-features__item-desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
}

.p-plm-functions {
	background: #ffffff;
	padding-bottom: 0;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-plm-functions__header {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-plm-functions .c-section-title__en {
	padding-bottom: 0;
}

.p-plm-functions__desc {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-plm-functions__cards {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-plm-functions__card {
	background: #ffffff;
	border-radius: 0.5rem;
	box-shadow: inset 0 0 0 1px #dee1e3;
	padding: 16px 24px;
	padding: 1rem 1.5rem;
}

.p-plm-functions__card-inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 24px;
	gap: 1.5rem;
}

.p-plm-functions__card-icon {
	flex-shrink: 0;
	height: 32px;
	height: 2rem;
	width: 32px;
	width: 2rem;
}

.p-plm-functions__icon-mask {
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	background: -webkit-gradient(linear, left top, right top, color-stop(2.5%, #ea62f0), color-stop(77.75%, #4757e1));
	background: linear-gradient(90deg, #ea62f0 2.5%, #4757e1 77.75%);
	display: block;
	height: 100%;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	width: 100%;
}

.p-plm-functions__icon-mask--bom {
	-webkit-mask-image: url("../images/plm/icons/icon-bom.svg");
	mask-image: url("../images/plm/icons/icon-bom.svg");
}

.p-plm-functions__icon-mask--file {
	-webkit-mask-image: url("../images/plm/icons/icon-file.svg");
	mask-image: url("../images/plm/icons/icon-file.svg");
}

.p-plm-functions__icon-mask--history {
	-webkit-mask-image: url("../images/plm/icons/icon-history.svg");
	mask-image: url("../images/plm/icons/icon-history.svg");
}

.p-plm-functions__icon-mask--analysis {
	-webkit-mask-image: url("../images/plm/icons/icon-analysis.svg");
	mask-image: url("../images/plm/icons/icon-analysis.svg");
}

.p-plm-functions__icon-mask--compare {
	-webkit-mask-image: url("../images/plm/icons/icon-compare.svg");
	mask-image: url("../images/plm/icons/icon-compare.svg");
}

.p-plm-functions__icon-mask--document {
	-webkit-mask-image: url("../images/plm/icons/icon-document.svg");
	mask-image: url("../images/plm/icons/icon-document.svg");
}

.p-plm-functions__icon-mask--flow {
	-webkit-mask-image: url("../images/plm/icons/icon-flow.svg");
	mask-image: url("../images/plm/icons/icon-flow.svg");
}

.p-plm-functions__icon-mask--all {
	-webkit-mask-image: url("../images/plm/icons/icon-all.svg");
	mask-image: url("../images/plm/icons/icon-all.svg");
}

.p-plm-functions__icon-mask--agent {
	-webkit-mask-image: url("../images/plm/icons/icon-agent.svg");
	mask-image: url("../images/plm/icons/icon-agent.svg");
}

.p-plm-functions__icon-mask--3d {
	-webkit-mask-image: url("../images/plm/icons/icon-3d.svg");
	mask-image: url("../images/plm/icons/icon-3d.svg");
}

.p-plm-functions__icon-mask--text {
	-webkit-mask-image: url("../images/plm/icons/icon-text.svg");
	mask-image: url("../images/plm/icons/icon-text.svg");
}

.p-plm-functions__icon-mask--document-search {
	-webkit-mask-image: url("../images/plm/icons/icon-document-search.svg");
	mask-image: url("../images/plm/icons/icon-document-search.svg");
}

.p-plm-functions__card-text {
	flex: 1;
	min-width: 0;
}

.p-plm-functions__card-title {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 4px;
	margin-bottom: 0.25rem;
}

.p-plm-functions__card-desc {
	color: #606e79;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-plm-functions__tags {
	-moz-column-gap: 0.25rem;
	column-gap: 0.25rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	row-gap: 4px;
	row-gap: 0.25rem;
}

.p-plm-functions__tag {
	align-items: center;
	background: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 0.75rem;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 4px;
	gap: 0.25rem;
	padding: 8px 14px;
	padding: 0.5rem 0.875rem;
}

.p-plm-functions__tag-icon {
	flex-shrink: 0;
	height: 14px;
	height: 0.875rem;
	width: 14px;
	width: 0.875rem;
}

.p-plm-functions__tag-icon-mask {
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	background: -webkit-gradient(linear, left top, right top, color-stop(2.5%, #ea62f0), color-stop(77.75%, #4757e1));
	background: linear-gradient(90deg, #ea62f0 2.5%, #4757e1 77.75%);
	display: block;
	height: 100%;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	width: 100%;
}

.p-plm-functions__tag-icon-mask--space {
	-webkit-mask-image: url("../images/plm/icons/icon-space.svg");
	mask-image: url("../images/plm/icons/icon-space.svg");
}

.p-plm-functions__tag-icon-mask--ticket {
	-webkit-mask-image: url("../images/plm/icons/icon-ticket.svg");
	mask-image: url("../images/plm/icons/icon-ticket.svg");
}

.p-plm-functions__tag-icon-mask--api {
	-webkit-mask-image: url("../images/plm/icons/icon-api.svg");
	mask-image: url("../images/plm/icons/icon-api.svg");
}

.p-plm-functions__tag-icon-mask--limit {
	-webkit-mask-image: url("../images/plm/icons/icon-limit.svg");
	mask-image: url("../images/plm/icons/icon-limit.svg");
}

.p-plm-functions__tag-icon-mask--sso {
	-webkit-mask-image: url("../images/plm/icons/icon-sso.svg");
	mask-image: url("../images/plm/icons/icon-sso.svg");
}

.p-plm-functions__tag-label {
	color: #1a2229;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
}

.p-plm-hero {
	background-color: #f3f4f5;
	padding-bottom: 32px;
	padding-bottom: 2rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-plm-hero__mv {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-plm-hero__content {
	width: 333px;
	width: 20.8125rem;
}

.p-plm-hero__badge {
	align-items: center;
	background-color: #abb7c1;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	height: 29px;
	height: 1.8125rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	mix-blend-mode: multiply;
	padding: 0 12px;
	padding: 0 0.75rem;
	width: 246px;
	width: 15.375rem;
}

.p-plm-hero__badge-text {
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
}

.p-plm-hero__subtitle {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: 500;
	line-height: 1.25;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-plm-hero__title {
	display: block;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-plm-hero__title-line {
	color: #1a2229;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 36px;
	font-size: 2.25rem;
	font-weight: 900;
	line-height: 1.25;
}

.p-plm-hero__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-plm-hero__btns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
	justify-content: center;
}

.p-plm-hero__btn {
	justify-content: center;
	width: 160px;
	width: 10rem;
}

.p-plm-hero__links {
	display: none;
}

.p-plm-hero__visual {
	height: 271px;
	height: 16.9375rem;
	margin-left: auto;
	margin-right: auto;
	order: -1;
	overflow: hidden;
	position: relative;
	width: 329px;
	width: 20.5625rem;
}

.p-plm-hero__visual-img {
	border-radius: 0.5rem;
	box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.16), 0 0.0625rem 0.375rem rgba(0, 0, 0, 0.04);
	overflow: hidden;
	position: absolute;
}

.p-plm-hero__visual-img picture {
	display: block;
	height: 100%;
	width: 100%;
}

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

.p-plm-hero__visual-img--01 {
	height: 174px;
	height: 10.875rem;
	left: 0;
	top: 0;
	width: 232px;
	width: 14.5rem;
}

.p-plm-hero__visual-img--02 {
	display: none;
}

.p-plm-hero__visual-img--03 {
	height: 174px;
	height: 10.875rem;
	left: 97px;
	left: 6.0625rem;
	top: 97px;
	top: 6.0625rem;
	width: 232px;
	width: 14.5rem;
}

.p-plm-problem {
	background: -webkit-gradient(linear, left top, left bottom, from(#606e79), to(#1a2229));
	background: linear-gradient(to bottom, #606e79, #1a2229);
	margin-top: 48px;
	margin-top: 3rem;
	padding: 80px 24px;
	padding: 5rem 1.5rem;
}

.p-plm-problem__contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
	margin: 0 auto;
	max-width: 1280px;
	max-width: 80rem;
}

.p-plm-problem__title {
	color: #ffffff;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.p-plm-problem__cards {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
}

.p-plm-problem__card {
	background-color: #ffffff;
	border-radius: 0.5rem;
	padding: 32px 24px;
	padding: 2rem 1.5rem;
}

.p-plm-problem__card-title {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
	text-align: center;
}

.p-plm-problem__card-desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-plm-security {
	background: #1a2229;
	overflow: hidden;
	padding: 80px 0;
	padding: 5rem 0;
	position: relative;
}

.p-plm-security::before {
	background: url("../images/plm/security_background.jpg") no-repeat;
	background-position: 90% 28%;
	background-size: cover;
	bottom: -20px;
	bottom: -1.25rem;
	content: "";
	filter: blur(16px);
	filter: blur(1rem);
	left: -20px;
	left: -1.25rem;
	pointer-events: none;
	position: absolute;
	right: -20px;
	right: -1.25rem;
	top: -20px;
	top: -1.25rem;
}

.p-plm-security::after {
	background-color: #1a2229;
	bottom: 0;
	content: "";
	left: 0;
	opacity: 0.6;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
}

.p-plm-security > .l-inner {
	position: relative;
	z-index: 1;
}

.p-plm-security__header {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-plm-security .c-section-title__en {
	color: #ffffff;
	padding-bottom: 0;
}

.p-plm-security .c-section-title__ja {
	color: rgba(255, 255, 255, 0.6);
}

.p-plm-security__desc {
	color: #ffffff;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-plm-security__cards {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
}

.p-plm-security__card {
	background: #ffffff;
	border-radius: 0.5rem;
	box-shadow: 0 0.5rem 1rem rgba(26, 34, 41, 0.08);
	padding: 24px;
	padding: 1.5rem;
}

.p-plm-security__card-inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 24px;
	gap: 1.5rem;
}

.p-plm-security__card-icon {
	flex-shrink: 0;
	height: 32px;
	height: 2rem;
	width: 32px;
	width: 2rem;
}

.p-plm-security__icon-mask {
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	background: -webkit-gradient(linear, left top, right top, color-stop(2.5%, #ea62f0), color-stop(77.75%, #4757e1));
	background: linear-gradient(90deg, #ea62f0 2.5%, #4757e1 77.75%);
	display: block;
	height: 100%;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	width: 100%;
}

.p-plm-security__icon-mask--admin {
	-webkit-mask-image: url("../images/plm/icons/icon-admin.svg");
	mask-image: url("../images/plm/icons/icon-admin.svg");
}

.p-plm-security__icon-mask--key-vertical {
	-webkit-mask-image: url("../images/plm/icons/icon-key-vertical.svg");
	mask-image: url("../images/plm/icons/icon-key-vertical.svg");
}

.p-plm-security__icon-mask--save {
	-webkit-mask-image: url("../images/plm/icons/icon-save.svg");
	mask-image: url("../images/plm/icons/icon-save.svg");
}

.p-plm-security__icon-mask--group {
	-webkit-mask-image: url("../images/plm/icons/icon-group.svg");
	mask-image: url("../images/plm/icons/icon-group.svg");
}

.p-plm-security__icon-mask--vpn-lock {
	-webkit-mask-image: url("../images/plm/icons/icon-vpn-lock.svg");
	mask-image: url("../images/plm/icons/icon-vpn-lock.svg");
}

.p-plm-security__icon-mask--lock {
	-webkit-mask-image: url("../images/plm/icons/icon-lock.svg");
	mask-image: url("../images/plm/icons/icon-lock.svg");
}

.p-plm-security__card-text {
	flex: 1;
	min-width: 0;
}

.p-plm-security__card-title {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 4px;
	margin-bottom: 0.25rem;
}

.p-plm-security__card-desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-plm .p-plm-hero > .l-inner {
	padding-left: 32px;
	padding-left: 2rem;
	padding-right: 32px;
	padding-right: 2rem;
}

.p-plm .p-top-voices .c-section-title__en {
	padding-bottom: 0;
}

.p-product-process {
	background-color: #ffffff;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-product-process__heading {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-product-process__heading .c-section-title__en {
	padding-bottom: 0;
}

.p-product-process__steps {
	grid-gap: 32px 8px;
	display: grid;
	gap: 32px 8px;
	gap: 2rem 0.5rem;
	grid-template-columns: repeat(6, 1fr);
	list-style: none;
	margin: 0;
	padding: 0;
}

.p-product-process__step {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	list-style: none;
	text-align: center;
	width: 100%;
}

.p-product-process__step:nth-child(1),
.p-product-process__step:nth-child(3),
.p-product-process__step:nth-child(5) {
	grid-column: span 2;
}

.p-product-process__step:nth-child(7),
.p-product-process__step:nth-child(9) {
	grid-column: span 3;
}

.p-product-process__arrow {
	display: none;
}

.p-product-process__step-number {
	align-items: center;
	background: #ea62f0;
	border-radius: 50%;
	color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	height: 24px;
	height: 1.5rem;
	justify-content: center;
	width: 24px;
	width: 1.5rem;
}

.p-product-process__step:nth-child(3) .p-product-process__step-number {
	background: rgb(193.25, 95.25, 236.25);
}

.p-product-process__step:nth-child(5) .p-product-process__step-number {
	background: rgb(152.5, 92.5, 232.5);
}

.p-product-process__step:nth-child(7) .p-product-process__step-number {
	background: rgb(111.75, 89.75, 228.75);
}

.p-product-process__step:nth-child(9) .p-product-process__step-number {
	background: #4757e1;
}

.p-product-process__step-text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
	width: 100%;
}

.p-product-process__step-title {
	color: #1a2229;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-product-process__step-desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-product-process__note {
	align-items: center;
	color: #606e79;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	gap: 16px;
	gap: 1rem;
	line-height: 1.5;
	margin-top: 32px;
	margin-top: 2rem;
	white-space: normal;
}

.p-product-process__note::before,
.p-product-process__note::after {
	background: #dee1e3;
	content: "";
	flex: 1 1 0;
	height: 1px;
	min-width: 0;
}

.p-product-process__note-text {
	display: inline-block;
	text-align: center;
}

.p-top-about {
	padding: 64px 0 80px;
	padding: 4rem 0 5rem;
}

.p-top-about__header {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	text-align: left;
}

.p-top-about__lead {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-top-about__illust-caption {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 28px;
	margin-bottom: 1.75rem;
	max-width: 249px;
	max-width: 15.5625rem;
	padding-left: 0;
	padding-right: 0;
	text-align: center;
}

.p-top-about__illust-caption strong {
	color: #1a2229;
	display: block;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 6px;
	margin-top: 0.375rem;
}

.p-top-about__caption-ai {
	font-family: "Inter", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
}

.p-top-about__diagram img {
	display: block;
	height: auto;
	width: 100%;
}

.p-top-about__diagram-inner {
	position: relative;
}

.p-top-about__diagram-base {
	-webkit-mask-image: url("../images/about/illustration-sp-hide-frame02.svg");
	-webkit-mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	-webkit-transform: translateZ(0);
	mask-image: url("../images/about/illustration-sp-hide-frame02.svg");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	transform: translateZ(0);
}

.p-top-about__diagram-base img {
	-webkit-mask-image: url("../images/about/illustration-sp-hide-mask0.svg");
	-webkit-mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	-webkit-transform: translateZ(0);
	mask-image: url("../images/about/illustration-sp-hide-mask0.svg");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	transform: translateZ(0);
}

.p-top-about__diagram-glow {
	-webkit-mask-image: url("../images/about/illustration-video-mask-sp.svg");
	-webkit-mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	bottom: 0;
	display: block;
	left: 0;
	mask-image: url("../images/about/illustration-video-mask-sp.svg");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
}

.p-top-about__diagram-glow-video {
	-o-object-fit: contain;
	display: block;
	filter: blur(16px);
	object-fit: contain;
	transform: scale(2);
	width: 100%;
}

.p-top-about__diagram-glow-video--top {
	height: 24.3242%;
}

.p-top-about__diagram-glow-video--middle {
	height: 49.0754%;
}

.p-top-about__diagram-glow-video--bottom {
	height: 26.6004%;
}

.p-top-about__diagram-glow-overlay {
	background-color: rgba(0, 37, 139, 0.24);
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.p-top-about__diagram-glow-bom {
	-webkit-mask-image: url("../images/about/illustration-bom-glow-mask-sp.svg");
	-webkit-mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	animation: p-top-about__diagram-glow-bom 8s ease-in-out infinite;
	background: -webkit-gradient(linear, left top, right top, from(white), color-stop(rgb(224.476635514, 227.1308411215, 250.023364486)), to(white));
	background: linear-gradient(90deg, white, rgb(224.476635514, 227.1308411215, 250.023364486), white);
	background-size: 200% 200%;
	bottom: 0;
	display: block;
	left: 0;
	mask-image: url("../images/about/illustration-bom-glow-mask-sp.svg");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
}

.p-top-about__diagram-inner .p-top-about__diagram-front {
	display: block;
	height: 49.0754%;
	left: 0%;
	position: absolute;
	top: 24.3242%;
	width: 100%;
}

.p-top-about__diagram-inner .p-top-about__diagram-bom-nodes {
	display: block;
	height: 11.9488%;
	left: 27.8261%;
	position: absolute;
	top: 45.2347%;
	width: 46.3768%;
}

.p-top-about__diagram-inner .p-top-about__diagram-labels {
	bottom: 0;
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.p-top-about__feature:not(:first-child) {
	padding-top: 32px;
	padding-top: 2rem;
}

.p-top-about__feature:not(:last-child) {
	padding-bottom: 32px;
	padding-bottom: 2rem;
	position: relative;
}

.p-top-about__feature:not(:last-child)::after {
	background-color: #dee1e3;
	bottom: 0;
	content: "";
	display: block;
	height: 1px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 345px;
	width: 21.5625rem;
}

.p-top-about__feature-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-top-about__feature-image {
	width: 100%;
}

.p-top-about__feature-image img {
	display: block;
	height: auto;
	width: 100%;
}

.p-top-about__feature-title {
	color: #1a2229;
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 20px;
	margin-bottom: 1.25rem;
}

.p-top-about__feature-desc {
	color: #1a2229;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.85;
}

.p-top-blog {
	padding-top: 64px;
	padding-top: 4rem;
}

.p-top-blog__header {
	grid-column-gap: 1rem;
	-moz-column-gap: 1rem;
	grid-row-gap: 24px;
	column-gap: 1rem;
	display: grid;
	grid-template-areas: "title more" "lead  lead";
	grid-template-columns: 1fr auto;
	margin-bottom: 32px;
	margin-bottom: 2rem;
	row-gap: 24px;
	row-gap: 1.5rem;
}

.p-top-blog__more {
	align-self: start;
	grid-area: more;
	padding-top: 8px;
	padding-top: 0.5rem;
}

.p-top-blog__lead {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	grid-area: lead;
	line-height: 1.5;
}

.p-top-blog__cards {
	-webkit-overflow-scrolling: touch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	margin-bottom: -8px;
	margin-bottom: -0.5rem;
	margin-left: -24px;
	margin-left: -1.5rem;
	margin-right: -24px;
	margin-right: -1.5rem;
	margin-top: -8px;
	margin-top: -0.5rem;
	overflow-x: auto;
	padding-bottom: 8px;
	padding-bottom: 0.5rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
	padding-top: 8px;
	padding-top: 0.5rem;
}

.p-top-blog__cards::-webkit-scrollbar {
	display: none;
}

.p-top-blog__cards {
	scrollbar-width: none;
}

.p-top-blog__cards .c-card-blog {
	flex-shrink: 0;
	width: 165px;
	width: 10.3125rem;
}

.p-top-blog__cards .c-card-blog__image {
	height: 108px;
	height: 6.75rem;
	width: 165px;
	width: 10.3125rem;
}

.p-top-environment {
	background-color: #ffffff;
	padding-top: 40px;
	padding-top: 2.5rem;
}

.p-top-environment__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 40px;
	gap: 2.5rem;
}

.p-top-environment__heading {
	color: #1a2229;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.p-top-environment__cards {
	grid-gap: 12px;
	display: grid;
	gap: 12px;
	gap: 0.75rem;
	grid-template-columns: 1fr;
	width: 100%;
}

.p-top-environment__card {
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	padding: 32px 24px 32px;
	padding: 2rem 1.5rem 2rem;
}

.p-top-environment__card-label {
	color: #abb7c1;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-top-environment__card-detail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 16px;
	gap: 1rem;
}

.p-top-environment__card-title {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-top-environment__card-desc {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 2;
}

.p-top-environment__footer {
	text-align: center;
}

.p-top-environment__footer-sub {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-top-environment__footer-main {
	color: #1a2229;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.5;
	margin-top: 4px;
	margin-top: 0.25rem;
}

.p-top-hero {
	background-color: #f3f4f5;
	overflow: hidden;
	position: relative;
}

.p-top-hero__inner {
	padding-bottom: 48px;
	padding-bottom: 3rem;
	position: relative;
	z-index: 1;
}

.p-top-hero > .l-inner {
	padding-left: 28px;
	padding-left: 1.75rem;
	padding-right: 28px;
	padding-right: 1.75rem;
}

.p-top-hero__badge {
	align-items: center;
	background-color: #abb7c1;
	border-radius: 0;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 6px;
	gap: 0.375rem;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
	padding: 8px 12px;
	padding: 0.5rem 0.75rem;
}

.p-top-hero__badge-en {
	color: #ffffff;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.p-top-hero__badge-ja {
	color: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.p-top-hero__title {
	display: block;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-top-hero__title-line1 {
	color: #1a2229;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 34px;
	font-size: 2.125rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	line-height: 1.2;
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

.p-top-hero__title-line2 {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: p-hero-title-gradient-flow 6s linear infinite reverse;
	background: -webkit-gradient(linear, left top, right top, from(#4fbbef), color-stop(#2f5cb2), to(#4fbbef));
	background: linear-gradient(90deg, #4fbbef, #2f5cb2, #4fbbef);
	background-clip: text;
	background-size: 200% auto;
	color: transparent;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 48px;
	font-size: 3rem;
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 1.1;
}

.p-top-hero__desc {
	color: #606e79;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-top-hero__links {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
	justify-content: center;
}

.p-top-hero__links .c-text-link {
	display: none;
}

.p-top-hero__links .c-btn {
	width: 160px;
	width: 10rem;
}

.p-top-hero__visual {
	margin-bottom: 32px;
	margin-bottom: 2rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
	padding-top: 128px;
	padding-top: 8rem;
	width: 100%;
}

.p-top-hero__device {
	height: 100%;
	width: 100%;
}

.p-top-hero__device-canvas {
	height: 819px;
	height: 51.1875rem;
	position: relative;
	width: 1348px;
	width: 84.25rem;
}

.p-top-hero__device-frame {
	bottom: 0;
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.p-top-hero__device-bar {
	height: 2.8083%;
	left: 15.5786%;
	position: absolute;
	top: 5.3724%;
	width: 57.7151%;
}

.p-top-hero__device-screen {
	background-color: #ffffff;
	height: 56.5324%;
	left: 15.5786%;
	overflow: hidden;
	position: absolute;
	top: 8.1807%;
	width: 57.7151%;
}

.p-top-hero__device-shot {
	display: block;
	height: auto;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	transition: opacity 1s ease;
	width: 100%;
}

.p-top-hero__device-shot.is-active {
	opacity: 1;
}

.p-top-hero__card {
	aspect-ratio: 680/484;
	box-shadow: 0 0.5rem 1.5rem rgba(26, 34, 41, 0.08);
	overflow: hidden;
	position: relative;
	width: 100%;
}

.p-top-hero__card-shot {
	-o-object-fit: cover;
	-o-object-position: top;
	bottom: 0;
	display: block;
	height: 100%;
	left: 0;
	object-fit: cover;
	object-position: top;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 1s ease;
	width: 100%;
}

.p-top-hero__card-shot.is-active {
	opacity: 1;
}

.p-top-hero__scroll {
	display: none;
}

.p-top-hero__scroll-text {
	align-items: center;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 700;
	height: 10px;
	height: 0.625rem;
	justify-content: center;
	letter-spacing: 0;
	line-height: 1;
	position: absolute;
	right: 0;
	top: 28px;
	top: 1.75rem;
	transform: rotate(90deg);
	transform-origin: right top;
	white-space: nowrap;
	width: 28px;
	width: 1.75rem;
}

.p-top-hero__scroll-line {
	animation: p-hero-scroll-line 1.5s cubic-bezier(1, 0, 0, 1) infinite;
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 1px;
	width: 0.0625rem;
}

.p-top-logo {
	background-color: #ffffff;
	overflow: hidden;
	padding: 24px 0;
	padding: 1.5rem 0;
}

.p-top-logo__track {
	align-items: center;
	animation: logo-marquee 25s linear infinite;
	animation-play-state: paused;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: -moz-max-content;
	width: -webkit-max-content;
	width: max-content;
	will-change: transform;
}

.p-top-logo__item {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-top-logo__item img {
	display: block;
	max-height: 16px;
	max-height: 1rem;
	width: auto;
}

.p-top-news {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-top-news__inner.l-inner {
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-top-news__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 32px;
	gap: 2rem;
}

.p-top-news__header {
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
}

.p-top-news__more {
	flex-shrink: 0;
}

.p-top-news__more--header {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	padding-top: 8px;
	padding-top: 0.5rem;
}

.p-top-news__more--bottom {
	display: none;
}

.p-top-news__list-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.p-top-news__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-top-news__link {
	align-items: center;
	border-bottom: 1px solid #eceeef;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	padding-bottom: 24px;
	padding-bottom: 1.5rem;
	padding-top: 24px;
	padding-top: 1.5rem;
	text-decoration: none;
	transition: border-color 0.3s ease;
}

.p-top-news__item:first-child .p-top-news__link {
	padding-top: 0;
}

.p-top-news__detail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	min-width: 0;
}

.p-top-news__date {
	color: #abb7c1;
	flex-shrink: 0;
	font-family: "Inter", sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1;
}

.p-top-news__text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
	min-width: 0;
}

.p-top-news__category {
	color: #abb7c1;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.p-top-news__title {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.p-top-news__icon {
	color: #2863c5;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	transition: color 0.3s ease, transform 0.3s ease;
	width: 24px;
	width: 1.5rem;
}

.p-top-product {
	background-color: #f3f4f5;
	border-radius: 2.5rem 2.5rem 0 0;
	overflow: hidden;
	padding-bottom: 64px;
	padding-bottom: 4rem;
	position: relative;
}

.p-top-product__inner.l-inner {
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-top-product__movie {
	height: 381px;
	height: 23.8125rem;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
}

.p-top-product__video {
	-o-object-fit: cover;
	-o-object-position: 60% 40%;
	border-radius: 2.5rem 2.5rem 0 0;
	height: 100%;
	left: 50%;
	object-fit: cover;
	object-position: 60% 40%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) scale(1);
	width: 100%;
}

.p-top-product__overlay {
	backdrop-filter: blur(32px);
	background-color: rgba(26, 34, 41, 0.24);
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.p-top-product__inner {
	padding-top: 80px;
	padding-top: 5rem;
	position: relative;
	z-index: 1;
}

.p-top-product__header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-top-product__title-block {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.p-top-product__en {
	color: #ffffff;
	font-family: "Inter", sans-serif;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1;
}

.p-top-product__ja {
	color: rgba(255, 255, 255, 0.6);
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-top-product__desc {
	color: #ffffff;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-top-product__cards {
	grid-gap: 12px;
	display: grid;
	gap: 12px;
	gap: 0.75rem;
	grid-template-columns: 1fr;
}

.p-top-product__card {
	background-color: #ffffff;
	border-radius: 1rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.08);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.p-top-product__card-image {
	aspect-ratio: 336/200;
	background-color: #f3f4f5;
	border-radius: 0.75rem;
	margin: 24px 24px 0;
	margin: 1.5rem 1.5rem 0;
	overflow: hidden;
}

.p-top-product__card-image img {
	-o-object-fit: cover;
	border-radius: 0.75rem;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.p-top-product__card-body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 12px;
	gap: 0.75rem;
	padding: 16px 24px 24px;
	padding: 1rem 1.5rem 1.5rem;
}

.p-top-product__card-title {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.p-top-product__card-desc {
	color: #606e79;
	flex: 1;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-top-product__card-link {
	align-items: center;
	align-self: flex-end;
	color: #2863c5;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 8px;
	gap: 0.5rem;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.p-top-product__card-link svg {
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	transition: transform 0.3s ease;
	width: 24px;
	width: 1.5rem;
}

.p-top-service {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-top-service {
	background-color: #1a2229;
}

.p-top-service .c-section-title__ja {
	color: #abb7c1;
}

.p-top-service .c-btn--primary {
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-top-service__content {
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-top-voices {
	overflow: hidden;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
	padding-top: 64px;
	padding-top: 4rem;
}

.p-top-voices--product {
	padding-top: 80px;
	padding-top: 5rem;
}

.p-top-voices__inner.l-inner {
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-top-voices__header {
	grid-column-gap: 1rem;
	-moz-column-gap: 1rem;
	grid-row-gap: 24px;
	column-gap: 1rem;
	display: grid;
	grid-template-areas: "title more" "lead  lead";
	grid-template-columns: 1fr auto;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	row-gap: 24px;
	row-gap: 1.5rem;
}

.p-top-voices__more {
	align-self: start;
	grid-area: more;
	padding-top: 8px;
	padding-top: 0.5rem;
}

.p-top-voices__lead {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	grid-area: lead;
	line-height: 1.5;
}

.p-top-voices__cards {
	-webkit-overflow-scrolling: touch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	margin-bottom: -40px;
	margin-bottom: -2.5rem;
	margin-left: -24px;
	margin-left: -1.5rem;
	margin-right: -24px;
	margin-right: -1.5rem;
	margin-top: -16px;
	margin-top: -1rem;
	overflow-x: auto;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
	padding-top: 16px;
	padding-top: 1rem;
}

.p-top-voices__cards::-webkit-scrollbar {
	display: none;
}

.p-top-voices__cards {
	scrollbar-width: none;
}

.p-top-voices__card {
	background: #ffffff;
	border-radius: 1rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.08);
	color: inherit;
	display: block;
	flex-shrink: 0;
	overflow: hidden;
	text-decoration: none;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	width: 227px;
	width: 14.1875rem;
}

.p-top-voices__card-image {
	height: 118px;
	height: 7.375rem;
	overflow: hidden;
}

.p-top-voices__card-img {
	-o-object-fit: cover;
	-o-object-position: center top;
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}

.p-top-voices__card-body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 4px;
	gap: 0.25rem;
	padding: 16px;
	padding: 1rem;
}

.p-top-voices__card-name {
	color: #abb7c1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	font-weight: 700;
	line-height: 1.5;
}

.p-top-voices__card-industry {
	font-size: 12px;
	font-size: 0.75rem;
}

.p-top-voices__card-company {
	font-size: 12px;
	font-size: 0.75rem;
}

.p-top-voices__card-text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.p-top-voices__card-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #1a2229;
	display: -webkit-box;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	overflow: hidden;
	transition: color 0.3s ease;
}

.p-top-voices__card-excerpt {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #606e79;
	display: -webkit-box;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	overflow: hidden;
}

.p-voices-kv {
	background-color: #ffffff;
	padding-bottom: 48px;
	padding-bottom: 3rem;
	padding-top: 96px;
	padding-top: 6rem;
}

.p-voices-kv__en {
	margin-top: 80px;
	margin-top: 5rem;
	padding-bottom: 0;
}

.p-voices-kv__lead {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.p-voices-list {
	padding-bottom: 68px;
	padding-bottom: 4.25rem;
}

.p-voices-list__cards {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: 1fr;
}

.p-voices-list__card {
	background-color: #ffffff;
	border-radius: 1rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.08);
	color: inherit;
	display: block;
	min-width: 0;
	overflow: hidden;
	text-decoration: none;
	transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
	width: 100%;
}

.p-voices-list__card-image {
	background-color: #f3f4f5;
	border-radius: 1rem 1rem 0 0;
	height: 180px;
	height: 11.25rem;
	overflow: hidden;
}

.p-voices-list__card-image img {
	-o-object-fit: cover;
	-o-object-position: center top;
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}

.p-voices-list__card-body {
	word-wrap: break-word;
	padding: 16px 16px 24px;
	padding: 1rem 1rem 1.5rem;
}

.p-voices-list__card-meta {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 2px;
	gap: 0.125rem;
}

.p-voices-list__card-industry {
	color: #abb7c1;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-voices-list__card-company {
	color: #abb7c1;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-voices-list__card-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #1a2229;
	display: -webkit-box;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
	margin-top: 4px;
	margin-top: 0.25rem;
	overflow: hidden;
	transition: color 0.3s ease-out;
}

.p-voices-list__card-excerpt {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #606e79;
	display: -webkit-box;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	overflow: hidden;
}

.p-voices-list__pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-list__pagination .navigation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.p-voices-list__pagination .nav-links {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
}

.p-voices-list__pagination .page-numbers {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1.25rem;
	color: #1a2229;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	height: 40px;
	height: 2.5rem;
	justify-content: center;
	text-decoration: none;
	transition: border-color 0.3s ease-out, color 0.3s ease-out;
	width: 40px;
	width: 2.5rem;
}

.p-voices-list__pagination .page-numbers.current {
	background-color: #abb7c1;
	border-color: #abb7c1;
	color: rgba(255, 255, 255, 0.6);
}

.p-voices-list__pagination .page-numbers.dots {
	background: none;
	border: none;
	color: #606e79;
	transform: translateY(-0.3em);
	width: 16px;
	width: 1rem;
}

.p-voices-list__pagination .page-numbers.prev {
	color: #2863c5;
	margin-right: 8px;
	margin-right: 0.5rem;
}

.p-voices-list__pagination .page-numbers.next {
	color: #2863c5;
	margin-left: 8px;
	margin-left: 0.5rem;
}

.p-voices-list__pagination .page-numbers.disabled {
	color: #abb7c1;
	cursor: default;
	pointer-events: none;
}

.p-voices-list__pagination .page-numbers svg {
	display: block;
}

.p-voices-list__empty {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	padding: 80px 0;
	padding: 5rem 0;
	text-align: center;
}

.p-voices-single-kv {
	background-color: #ffffff;
	padding-bottom: 32px;
	padding-bottom: 2rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-voices-single-kv__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
}

.p-voices-single-kv__meta {
	color: #abb7c1;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-voices-single-kv__heading {
	color: #1a2229;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-voices-single-contents {
	background-color: #ffffff;
	padding-bottom: 0;
}

.p-voices-single-contents__inner {
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-voices-single-contents__image img {
	border-radius: 1rem;
	display: block;
	height: auto;
	width: 100%;
}

.p-voices-single-contents__caption {
	color: #606e79;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-voices-single-contents__body {
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-single-contents__body h1 {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-single-contents__body h2 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-single-contents__body h2::after {
	background: -webkit-gradient(linear, left top, right top, color-stop(40%, #1a2229), color-stop(40%, #dee1e3));
	background: linear-gradient(to right, #1a2229 40%, #dee1e3 40%);
	background: linear-gradient(to right, #1a2229 var(--h1-text-width, 40%), #dee1e3 var(--h1-text-width, 40%));
	content: "";
	display: block;
	height: 1px;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-voices-single-contents__body.c-post-body h2 {
	color: #2863c5;
}

.p-voices-single-contents__body.c-post-body h2 strong {
	color: inherit;
}

.p-voices-single-contents__body h3 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-single-contents__body h4 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-single-contents__body strong {
	color: #1a2229;
}

.p-voices-single-contents__body img,
.p-voices-single-contents__body figure img,
.p-voices-single-contents__body .wp-block-image img {
	border-radius: 0 !important;
}

.p-voices-single-contents__body img,
.p-voices-single-contents__body figure img,
.p-voices-single-contents__body .wp-block-image img {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-voices-single-contents__body p:empty {
	height: 16px;
	height: 1rem;
	margin: 0;
}

.p-voices-single-contents__body p:empty + p {
	margin-top: 0;
}

.p-voices-single-contents__body p {
	color: #606e79;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

.p-voices-single-contents__body p + p {
	margin-top: 21px;
	margin-top: 1.3125rem;
}

.p-voices-single-contents__body img {
	border-radius: 0.5rem;
	display: block;
	height: auto;
	width: 100%;
}

.p-voices-single-nav {
	background-color: #ffffff;
	padding-bottom: 32px;
	padding-bottom: 2rem;
	padding-top: 32px;
	padding-top: 2rem;
}

.p-voices-single-nav__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 24px;
	gap: 1.5rem;
	justify-content: center;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-right: 24px;
	padding-right: 1.5rem;
}

.p-voices-single-nav__link {
	align-items: center;
	color: #2863c5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 8px;
	gap: 0.5rem;
	text-decoration: none;
	transition: color 0.3s ease-out;
	white-space: nowrap;
}

.p-voices-single-nav__link svg {
	display: block;
	flex-shrink: 0;
	transition: transform 0.3s ease-out;
}

.p-voices-single-nav__divider {
	border-left: 1px solid #dee1e3;
	display: block;
	flex-shrink: 0;
	height: 24px;
	height: 1.5rem;
	width: 0;
}

.p-voices-single-related {
	background-color: #ffffff;
	padding-bottom: 28px;
	padding-bottom: 1.75rem;
	padding-top: 48px;
	padding-top: 3rem;
}

.p-voices-single-related__label {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 0;
}

.p-voices-single-related__cards {
	-webkit-overflow-scrolling: touch;
	background-color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 12px;
	gap: 0.75rem;
	margin-left: -24px;
	margin-left: -1.5rem;
	margin-right: -24px;
	margin-right: -1.5rem;
	overflow-x: auto;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
	padding-left: 24px;
	padding-left: 1.5rem;
	padding-top: 24px;
	padding-top: 1.5rem;
	scrollbar-width: none;
}

.p-voices-single-related__cards::-webkit-scrollbar {
	display: none;
}

.p-voices-single-related__cards::after {
	content: "";
	display: block;
	flex-shrink: 0;
	min-width: 24px;
	min-width: 1.5rem;
}

.p-voices-single-related__cards .p-voices-list__card {
	background-color: #ffffff;
	flex-shrink: 0;
	min-height: 276px;
	min-height: 17.25rem;
	width: 227px;
	width: 14.1875rem;
}

.p-voices-single-related__cards .p-voices-list__card-image {
	height: 120px;
	height: 7.5rem;
}

.p-voices-single-related__cards .p-voices-list__card-body {
	padding-bottom: 16px;
	padding-bottom: 1rem;
}

.p-voices-single-related__cards .p-voices-list__card-excerpt { /* autoprefixer: ignore next */
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	overflow: hidden;
}

@media (hover: hover) {

a:hover {
	opacity: 0.8;
}

.p-404__btn:hover {
	border-color: #2863c5;
	color: #2863c5;
}

.p-company-access__email:hover {
	text-decoration: underline;
}

.p-news-list__item:hover {
	border-bottom-color: #4fbbef;
}

.p-news-list__item:hover .p-news-list__link {
	opacity: 1;
}

.p-news-list__item:hover .p-news-list__category,
.p-news-list__item:hover .p-news-list__title,
.p-news-list__item:hover .p-news-list__arrow {
	color: #4fbbef;
}

.p-news-list__item:hover .p-news-list__arrow {
	transform: translateX(0.5rem);
}

.p-news-pagination__list a.page-numbers:hover {
	border-color: #4fbbef;
	color: #4fbbef;
	opacity: 1;
}

.p-news-pagination__arrow:not(.is-disabled):hover {
	border-color: #4fbbef;
	color: #4fbbef;
	opacity: 1;
}

.p-service-faq__q:hover .p-service-faq__q-text {
	color: #4fbbef;
}

.p-thanks__btn:hover {
	border-color: #2863c5;
	color: #2863c5;
}

.c-btn--outline-pill:hover,
.c-btn--gradient-pill:hover,
.c-btn--outline-white-pill:hover {
	opacity: 1;
	transform: translateY(-0.25rem);
}

.c-btn--outline-pill:hover {
	border-color: #4fbbef;
	color: #4fbbef;
}

.c-card-blog:hover {
	opacity: 1;
	transform: translateY(-0.5rem);
}

.c-card-blog:hover .c-card-blog__title {
	color: #4fbbef;
}

.c-card-blog:hover .c-text-link {
	color: #4fbbef;
}

.c-card-blog:hover .c-text-link__icon {
	transform: translateX(0.25rem);
}

.c-card-blog__cat:hover {
	color: #4fbbef;
}

.c-card-blog__cat:hover::before {
	color: #4fbbef;
}

.c-member-modal__close:hover {
	opacity: 0.7;
}

.c-pagination a.page-numbers:not(.dots):hover {
	border-color: #4fbbef;
	color: #4fbbef;
}

.c-product-nav__card:not(.c-product-nav__card--current):hover {
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.24);
	transform: translateY(-0.5rem);
}

.c-product-nav__card:not(.c-product-nav__card--current):hover .c-product-nav__title {
	color: #4fbbef;
}

.c-product-nav__card:not(.c-product-nav__card--current):hover .c-product-nav__link {
	color: #4fbbef;
	opacity: 1;
}

.c-text-link:hover {
	color: #4fbbef;
	opacity: 1;
}

.c-text-link:hover .c-text-link__icon {
	transform: translateX(0.25rem);
}

.c-toc .c-toc__link:hover {
	color: #2863c5;
}

.p-activities-list__card:hover {
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.24);
	opacity: 1;
	transform: translateY(-0.5rem);
}

.p-activities-list__card:hover .p-activities-list__card-title {
	color: #4fbbef;
}

.p-activities-list__pagination .page-numbers:not(.current):not(.dots):not(.disabled):hover {
	border-color: #4fbbef;
	color: #4fbbef;
}

.p-activities-single-nav__link:hover {
	color: #4fbbef;
}

.p-activities-single-nav__link--prev:hover svg {
	transform: translateX(-0.25rem);
}

.p-activities-single-nav__link--next:hover svg {
	transform: translateX(0.25rem);
}

.p-single__tag:hover {
	color: #4fbbef;
	transform: translateY(-0.1875rem);
}

.p-single-popular__link:hover .p-single-popular__title {
	color: #2863c5;
}

.p-single-cats__link:hover {
	color: #2863c5;
}

.p-single-nav__link:hover {
	color: #4fbbef;
}

.p-single-nav__link.p-single-nav__link--prev:hover .p-single-nav__arrow {
	transform: translateX(-0.25rem);
}

.p-single-nav__link.p-single-nav__link--next:hover .p-single-nav__arrow {
	transform: translateX(0.25rem);
}

.p-blog-kv__search-btn:hover {
	color: #2863c5;
}

.p-blog-keywords__tags li a:hover {
	color: #4fbbef;
	opacity: 1;
	transform: translateY(-0.1875rem);
}

.p-drbfm-activities__card:hover {
	transform: translateY(-0.5rem);
}

.p-drbfm-activities__card:hover .p-drbfm-activities__card-title {
	color: #4fbbef;
}

.p-top-news__link:hover {
	border-bottom-color: #4fbbef;
	opacity: 1;
}

.p-top-news__link:hover .p-top-news__category,
.p-top-news__link:hover .p-top-news__title,
.p-top-news__link:hover .p-top-news__icon {
	color: #4fbbef;
}

.p-top-news__link:hover .p-top-news__icon {
	transform: translateX(0.5rem);
}

.p-top-product__card:hover {
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.24);
	opacity: 1;
	transform: translateY(-0.5rem);
}

.p-top-product__card:hover .p-top-product__card-title {
	color: #4fbbef;
}

.p-top-product__card:hover .p-top-product__card-link {
	color: #4fbbef;
}

.p-top-product__card:hover .p-top-product__card-link svg {
	transform: translateX(0.25rem);
}

.p-top-voices__card:hover {
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.24);
	opacity: 1;
	transform: translateY(-0.5rem);
}

.p-top-voices__card:hover .p-top-voices__card-title {
	color: #4fbbef;
}

.p-voices-list__card:hover {
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.24);
	opacity: 1;
	transform: translateY(-0.5rem);
}

.p-voices-list__card:hover .p-voices-list__card-title {
	color: #4fbbef;
}

.p-voices-list__pagination .page-numbers:not(.current):not(.dots):not(.disabled):hover {
	border-color: #4fbbef;
	color: #4fbbef;
}

.p-voices-single-nav__link:hover {
	color: #4fbbef;
}

.p-voices-single-nav__link--prev:hover svg {
	transform: translateX(-0.25rem);
}

.p-voices-single-nav__link--next:hover svg {
	transform: translateX(0.25rem);
}

}

@media (hover: none) {

a:active {
	opacity: 0.8;
}

}

@media (prefers-reduced-motion: reduce) {

.p-top-logo__track {
	animation: none;
}

}

@media screen and (min-width: 768px) {

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

a[href^="tel:"] {
	pointer-events: none;
}

.p-404__main {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 248px;
	padding-top: 15.5rem;
}

.p-404__main > .l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-404__num {
	font-size: 80px;
	font-size: 5rem;
}

.p-404__sub {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.5;
}

.p-404__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.p-404__btn-wrap {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-company-kv {
	padding-bottom: 0;
	padding-top: 0;
}

.p-company-kv__title {
	flex-direction: column;
	gap: 40px;
	gap: 2.5rem;
	margin-bottom: 120px;
	margin-bottom: 7.5rem;
	margin-top: 106px;
	margin-top: 6.625rem;
}

.p-company-kv__title-head .c-section-title__en {
	font-size: 104px;
	font-size: 6.5rem;
}

.p-company-kv__ja {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-company-kv__detail {
	gap: 16px;
	gap: 1rem;
}

.p-company-kv__catch {
	font-size: 32px;
	font-size: 2rem;
}

.p-company-kv__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.p-company-kv__comma {
	display: inline;
}

.p-company-vision__inner {
	max-width: 1360px;
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-company-vision__body {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.p-company-vision__statement {
	margin-top: 48px;
	margin-top: 3rem;
}

.p-company-vision__statement-sm {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-company-vision__statement-lg {
	font-size: 32px;
	font-size: 2rem;
}

.p-company-info {
	padding-bottom: 0;
	padding-top: 0;
}

.p-company-info__layout {
	align-items: flex-start;
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
	margin-top: 140px;
	margin-top: 8.75rem;
}

.p-company-info__contents {
	flex: 1;
	gap: 64px;
	gap: 4rem;
}

.p-company-info__head .c-section-title__en {
	font-size: 56px;
	font-size: 3.5rem;
}

.p-company-info__title-ja {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-company-info__table {
	gap: 24px;
	gap: 1.5rem;
}

.p-company-info__row {
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
	padding: 0;
}

.p-company-info__label {
	color: #1a2229;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	min-width: 96px;
	min-width: 6rem;
}

.p-company-info__value {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

.p-company-info__image {
	flex: 1;
}

.p-company-members {
	background-color: #ffffff;
	padding-bottom: 0px;
	padding-bottom: 0rem;
	padding-top: 0;
}

.p-company-members__head {
	margin-bottom: 64px;
	margin-bottom: 4rem;
	margin-top: 120px;
	margin-top: 7.5rem;
}

.p-company-members__head .c-section-title__en {
	font-size: 56px;
	font-size: 3.5rem;
}

.p-company-members__title-ja {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-company-members__list {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
}

.p-company-members__card {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #dee1e3;
	border-radius: 1rem;
	gap: 16px;
	gap: 1rem;
	padding: 56px 40px 40px;
	padding: 3.5rem 2.5rem 2.5rem;
}

.p-company-members__card:last-child {
	border: 1px solid #dee1e3;
	border-radius: 1rem;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
}

.p-company-members__header {
	align-items: center;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
	width: 100%;
}

.p-company-members__photo {
	height: 200px;
	height: 12.5rem;
	width: 200px;
	width: 12.5rem;
}

.p-company-members__text {
	gap: 8px;
	gap: 0.5rem;
	width: 336px;
	width: 21rem;
}

.p-company-members__role {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-company-members__name {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-company-members__desc {
	color: #606e79;
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-company-investors {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 0;
}

.p-company-investors__head {
	margin-bottom: 64px;
	margin-bottom: 4rem;
	margin-top: 120px;
	margin-top: 7.5rem;
}

.p-company-investors__head .c-section-title__en {
	font-size: 56px;
	font-size: 3.5rem;
}

.p-company-investors__title-ja {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-company-investors__groups {
	align-items: flex-start;
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
}

.p-company-investors__group {
	flex: 1;
	gap: 40px;
	gap: 2.5rem;
}

.p-company-investors__category {
	gap: 16px;
	gap: 1rem;
	padding-left: 16px;
	padding-left: 1rem;
	padding-right: 16px;
	padding-right: 1rem;
}

.p-company-investors__category-name {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-company-investors__logos-sp {
	display: none;
}

.p-company-investors__logos {
	-moz-column-gap: 1rem;
	column-gap: 1rem;
	grid-template-columns: repeat(2, 12.5rem);
	row-gap: 24px;
	row-gap: 1.5rem;
}

.p-company-investors__logo:last-child:nth-child(odd) {
	width: 200px;
	width: 12.5rem;
}

.p-company-investors__logo {
	height: 48px;
	height: 3rem;
	width: 200px;
	width: 12.5rem;
}

.p-company-recruit {
	background-image: url("../images/company/recruit-bg.webp");
	background-position: center;
	background-size: auto 100%;
}

.p-company-recruit__inner {
	gap: 40px;
	gap: 2.5rem;
	height: 391px;
	height: 24.4375rem;
	padding: 0;
}

.p-company-recruit__text {
	max-width: 544px;
	max-width: 34rem;
}

.p-company-recruit__text-sm {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-company-recruit__text-lg {
	font-size: 32px;
	font-size: 2rem;
	white-space: normal;
}

.p-company-recruit__btn.c-btn--outline-white-pill {
	border-radius: 2.5rem;
	font-size: 18px;
	font-size: 1.125rem;
	height: 64px;
	height: 4rem;
	width: 240px;
	width: 15rem;
}

.p-company-access {
	padding-bottom: 16px;
	padding-bottom: 1rem;
	padding-top: 0;
}

.p-company-access__head {
	margin-bottom: 64px;
	margin-bottom: 4rem;
	margin-top: 120px;
	margin-top: 7.5rem;
}

.p-company-access__head .c-section-title__en {
	font-size: 56px;
	font-size: 3.5rem;
}

.p-company-access__title-ja {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-company-access__cols {
	align-items: stretch;
	flex-direction: row;
	gap: 8px;
	gap: 0.5rem;
}

.p-company-access__col {
	align-items: center;
	flex: 1;
	flex-direction: column;
	gap: 24px;
	gap: 1.5rem;
	padding-left: 48px;
	padding-left: 3rem;
	padding-right: 48px;
	padding-right: 3rem;
	padding-top: 0;
}

.p-company-access__divider {
	align-self: center;
	border-left: 1px solid #dee1e3;
	border-top: none;
	flex-shrink: 0;
	height: 148px;
	height: 9.25rem;
	width: 0;
}

.p-company-access__col-title {
	flex-shrink: 1;
	gap: 8px;
	gap: 0.5rem;
	width: auto;
}

.p-company-access__icon {
	height: 32px;
	height: 2rem;
}

.p-company-access__col-name {
	font-size: 20px;
	font-size: 1.25rem;
}

.p-company-access__col-body {
	flex: none;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	text-align: center;
}

.p-company-access__col:first-child .p-company-access__col-body {
	text-align: left;
	white-space: nowrap;
	width: 100%;
}

.p-company-access__email {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-company-access__map {
	margin-left: calc(50% - 50vw + 16px);
	margin-right: calc(50% - 50vw + 16px);
	margin-top: 64px;
	margin-top: 4rem;
}

.p-company-access__map iframe {
	height: 400px;
	height: 25rem;
}

.l-footer {
	padding: 96px 80px 96px;
	padding: 6rem 5rem 6rem;
}

.l-footer__logo {
	gap: 24px;
	gap: 1.5rem;
	justify-content: flex-start;
	margin: 0 0 64px 16px;
	margin: 0 0 4rem 1rem;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.l-footer__logo-icon {
	width: 54px;
	width: 3.375rem;
}

.l-footer__logo-text {
	font-size: 36px;
	font-size: 2.25rem;
}

.l-footer__body {
	-moz-column-gap: 2.5rem;
	column-gap: 2.5rem;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 48px;
	margin-bottom: 3rem;
	row-gap: 48px;
	row-gap: 3rem;
}

.l-footer__col {
	gap: 31px;
	gap: 1.9375rem;
}

.l-footer__col--right {
	align-items: flex-start;
	flex-direction: row;
	grid-column: 1/-1;
	justify-content: space-between;
	margin-top: 0;
}

.l-footer__nav-section {
	margin-bottom: 46px;
	margin-bottom: 2.875rem;
}

.l-footer__nav-heading {
	font-size: 18px;
	font-size: 1.125rem;
	padding: 0 16px;
	padding: 0 1rem;
	padding-bottom: 16px;
	padding-bottom: 1rem;
}

.l-footer__nav-sublink {
	font-size: 16px;
	font-size: 1rem;
	padding: 0 16px;
	padding: 0 1rem;
}

.l-footer__col:first-child > .l-footer__nav-link {
	margin-top: auto;
}

.l-footer__nav-link {
	font-size: 18px;
	font-size: 1.125rem;
	padding: 0 16px 16px;
	padding: 0 1rem 1rem;
}

.l-footer__cta {
	gap: 16px;
	gap: 1rem;
	width: auto;
}

.l-footer__cta .c-btn {
	flex: none;
	text-align: left;
	text-align: initial;
}

.l-footer__company {
	width: auto;
}

.l-footer__company-address {
	font-size: 14px;
	font-size: 0.875rem;
}

.l-footer__copyright {
	font-size: 14px;
	font-size: 0.875rem;
	padding-top: 32px;
	padding-top: 2rem;
}

.l-header {
	background-color: transparent;
	height: clamp(88px, 42.285px + 5.9523809524vw, 128px);
	height: clamp(5.5rem, 2.6428571429rem + 5.9523809524vw, 8rem);
	position: absolute;
}

.l-header.is-scrolled {
	animation: l-header-slide-in 0.35s ease-out both;
	background-color: rgba(255, 255, 255, 0.96);
	box-shadow: 0 0.125rem 1rem rgba(26, 34, 41, 0.08);
	height: 88px;
	height: 5.5rem;
	position: fixed;
}

.l-header.is-scrolled .l-header__lang {
	opacity: 0;
	pointer-events: none;
}

.l-header.is-scrolled .l-header__inner {
	padding: 0 24px 0 40px;
	padding: 0 1.5rem 0 2.5rem;
}

.l-header.is-scrolled .l-header__logo {
	gap: 19px;
	gap: 1.1875rem;
}

.l-header.is-scrolled .l-header__logo-icon {
	width: 32.659px;
	width: 2.04125rem;
}

.l-header.is-scrolled .l-header__logo-text {
	font-size: 22px;
	font-size: 1.375rem;
}

.l-header.is-scrolled .l-header__nav {
	margin-right: 32px;
	margin-right: 2rem;
}

.l-header.is-scrolled .l-header__nav-list {
	gap: 24px;
	gap: 1.5rem;
}

.l-header.is-scrolled .l-header__nav-link {
	font-size: 16px;
	font-size: 1rem;
}

.l-header.is-scrolled .l-header__actions {
	gap: 8px;
	gap: 0.5rem;
}

.l-header.is-scrolled .c-btn--outline-pill,
.l-header.is-scrolled .c-btn--gradient-pill {
	font-size: 14px;
	font-size: 0.875rem;
	height: 40px;
	height: 2.5rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	width: 152px;
	width: 9.5rem;
}

.l-header__inner {
	padding: clamp(0px, -84.571px + 11.0119047619vw, 74px) clamp(24px, 5.714px + 2.380952381vw, 40px) 0 clamp(40px, 12.571px + 3.5714285714vw, 64px);
	padding: clamp(0rem, -5.2857142857rem + 11.0119047619vw, 4.625rem) clamp(1.5rem, 0.3571428571rem + 2.380952381vw, 2.5rem) 0 clamp(2.5rem, 0.7857142857rem + 3.5714285714vw, 4rem);
}

.l-header__logo {
	gap: clamp(19px, 4.142px + 1.9345238095vw, 32px);
	gap: clamp(1.1875rem, 0.2589285714rem + 1.9345238095vw, 2rem);
}

.l-header__logo-icon {
	width: clamp(32.659px, 7.128px + 3.3244047619vw, 55px);
	width: clamp(2.04125rem, 0.4455357143rem + 3.3244047619vw, 3.4375rem);
}

.l-header__logo-text {
	font-size: clamp(22px, 4.857px + 2.2321428571vw, 37px);
	font-size: clamp(1.375rem, 0.3035714286rem + 2.2321428571vw, 2.3125rem);
}

.l-header__nav {
	display: block;
	margin-left: auto;
	margin-right: clamp(32px, 22.857px + 1.1904761905vw, 40px);
	margin-right: clamp(2rem, 1.4285714286rem + 1.1904761905vw, 2.5rem);
}

.l-header__actions {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	gap: clamp(8px, -1.142px + 1.1904761905vw, 16px);
	gap: clamp(0.5rem, -0.0714285714rem + 1.1904761905vw, 1rem);
}

.l-header__actions .c-btn--outline-pill,
.l-header__actions .c-btn--gradient-pill {
	font-size: clamp(14px, 12.857px + 0.1488095238vw, 15px);
	font-size: clamp(0.875rem, 0.8035714286rem + 0.1488095238vw, 0.9375rem);
	height: clamp(40px, 30.857px + 1.1904761905vw, 48px);
	height: clamp(2.5rem, 1.9285714286rem + 1.1904761905vw, 3rem);
	padding: 0 clamp(20px, 10.857px + 1.1904761905vw, 28px);
	padding: 0 clamp(1.25rem, 0.6785714286rem + 1.1904761905vw, 1.75rem);
	width: clamp(152px, 133.714px + 2.380952381vw, 168px);
	width: clamp(9.5rem, 8.3571428571rem + 2.380952381vw, 10.5rem);
}

.l-header__lang {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 8px;
	gap: 0.5rem;
	position: absolute;
	right: 48px;
	right: 3rem;
	top: 40px;
	top: 2.5rem;
	transition: opacity 0.3s;
}

.js-hamburger {
	display: none;
}

.l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-news-kv {
	padding-top: 0;
}

.p-news-kv__inner {
	padding-left: 80px;
	padding-left: 5rem;
	padding-right: 80px;
	padding-right: 5rem;
}

.p-news-kv__title {
	margin-top: 106px;
	margin-top: 6.625rem;
}

.p-news-kv__title .c-section-title__en {
	font-size: 104px;
	font-size: 6.5rem;
}

.p-news-kv__ja {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-news-kv__lead {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-news-content {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-news-content > .l-inner {
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

.p-news-content__empty {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-news-list {
	gap: 32px;
	gap: 2rem;
}

.p-news-list__item {
	padding-bottom: 32px;
	padding-bottom: 2rem;
}

.p-news-list__link {
	padding-left: 32px;
	padding-left: 2rem;
	padding-right: 32px;
	padding-right: 2rem;
}

.p-news-list__detail {
	align-items: center;
	flex-direction: row;
	gap: 32px;
	gap: 2rem;
}

.p-news-list__date {
	font-size: 14px;
	font-size: 0.875rem;
	width: 80px;
	width: 5rem;
}

.p-news-list__text {
	gap: 8px;
	gap: 0.5rem;
}

.p-news-list__category {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-news-list__title {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-news-pagination {
	gap: 40px;
	gap: 2.5rem;
	margin-top: 64px;
	margin-top: 4rem;
}

.p-news-pagination__list {
	gap: 16px;
	gap: 1rem;
}

.p-news-pagination__list .page-numbers {
	font-size: 20px;
	font-size: 1.25rem;
	height: 56px;
	height: 3.5rem;
	width: 56px;
	width: 3.5rem;
}

.p-news-pagination__arrow {
	height: 56px;
	height: 3.5rem;
	width: 56px;
	width: 3.5rem;
}

.p-news-single-kv {
	padding-top: 0;
}

.p-news-single-kv__inner {
	margin-top: 66px;
	margin-top: 4.125rem;
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

.p-news-single-kv__date {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-news-single-kv__title {
	font-size: 32px;
	font-size: 2rem;
}

.p-news-single-kv__category {
	font-size: 16px;
	font-size: 1rem;
}

.p-news-single-content {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 64px;
	padding-top: 4rem;
}

.p-news-single-content > .l-inner {
	gap: 64px;
	gap: 4rem;
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

.p-news-single-content__body p {
	margin: 0 0 32px;
	margin: 0 0 2rem;
}

.p-news-single-content__body p:last-child {
	margin-bottom: 0;
}

.p-news-single-content__body {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-privacy-kv {
	padding-top: 0;
}

.p-privacy-kv__inner {
	padding-left: 80px;
	padding-left: 5rem;
	padding-right: 80px;
	padding-right: 5rem;
}

.p-privacy-kv__title {
	font-size: 40px;
	font-size: 2.5rem;
	margin-top: 80px;
	margin-top: 5rem;
}

.p-privacy-content {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-privacy-content__inner {
	gap: 40px;
	gap: 2.5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 1064px;
	max-width: 66.5rem;
}

.p-privacy-content__lead {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-privacy-content__section-title {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-privacy-content__section-body {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
	padding-left: 32px;
	padding-left: 2rem;
	padding-right: 32px;
	padding-right: 2rem;
}

.p-privacy-content__date {
	font-size: 16px;
	font-size: 1rem;
}

.p-service-hero {
	padding-bottom: 0;
	padding-top: 0;
}

.p-service-hero__title .c-section-title__en {
	font-size: 104px;
	font-size: 6.5rem;
	margin-top: 106px;
	margin-top: 6.625rem;
}

.p-service-process__heading .c-section-title__en,
.p-service-faq__heading .c-section-title__en {
	font-size: 56px;
	font-size: 3.5rem;
}

.p-service-intro {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 40px;
	padding-top: 2.5rem;
}

.p-service-intro__lead {
	margin-bottom: 120px;
	margin-bottom: 7.5rem;
}

.p-service-intro__heading {
	font-size: 32px;
	font-size: 2rem;
}

.p-service-intro__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 16px;
	margin-top: 1rem;
}

.p-service-intro__features {
	flex-direction: row;
	gap: 8px;
	gap: 0.5rem;
}

.p-service-intro__feature {
	align-items: center;
	border-right: 1px solid #dee1e3;
	border-top: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	padding: 0 32px;
	padding: 0 2rem;
	text-align: center;
}

.p-service-intro__feature:last-child {
	border-right: none;
}

.p-service-intro__feature-icon {
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-service-intro__feature-title {
	align-self: auto;
	font-size: 20px;
	font-size: 1.25rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-service-intro__feature-desc {
	font-size: 16px;
	font-size: 1rem;
	grid-column: auto;
	line-height: 1.5;
	margin-top: 0;
}

.p-service-cards {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-service-cards__grid {
	gap: 16px;
	gap: 1rem;
	grid-template-columns: 1fr 1fr;
}

.p-service-cards__card {
	padding: 56px 48px;
	padding: 3.5rem 3rem;
}

.p-service-cards__card-title {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-service-cards__card-desc {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-service-cards__card-tag {
	font-size: 14px;
	font-size: 0.875rem;
	padding: 12px 24px;
	padding: 0.75rem 1.5rem;
}

.p-service-process {
	padding-bottom: 0;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-service-process__heading {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-service-process__heading .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-service-process__steps {
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	gap: 0;
}

.p-service-process__step {
	flex: 1;
	gap: 16px;
	gap: 1rem;
	max-width: none;
	min-width: 0;
	padding: 0 24px;
	padding: 0 1.5rem;
}

.p-service-process__step:nth-child(9) {
	flex: none;
	padding: 0 9.5px;
	padding: 0 0.59375rem;
	width: 243px;
	width: 15.1875rem;
}

.p-service-process__step-number {
	font-size: 16px;
	font-size: 1rem;
	height: 40px;
	height: 2.5rem;
	width: 40px;
	width: 2.5rem;
}

.p-service-process__step-icon {
	height: 96px;
	height: 6rem;
	width: 96px;
	width: 6rem;
}

.p-service-process__step-title {
	font-size: 24px;
	font-size: 1.5rem;
	white-space: nowrap;
}

.p-service-process__step-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-service-process__note {
	font-size: 20px;
	font-size: 1.25rem;
	gap: 32px;
	gap: 2rem;
	margin-top: 48px;
	margin-top: 3rem;
}

.p-service-process__arrow {
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	justify-content: center;
	padding-top: 98.5px;
	padding-top: 6.15625rem;
}

.p-service-process__arrow::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='11' viewBox='0 0 16 11' fill='none'%3E%3Cpath d='M0 5.5H12M9 1L15 5.5L9 10' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #abb7c1;
	content: "";
	display: block;
	height: 11px;
	height: 0.6875rem;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='11' viewBox='0 0 16 11' fill='none'%3E%3Cpath d='M0 5.5H12M9 1L15 5.5L9 10' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-size: contain;
	width: 16px;
	width: 1rem;
}

.p-service-process__step-desc .br-pc {
	display: inline;
}

.p-service-faq {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-service-faq__heading {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-service-faq__heading .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-service-faq__q {
	min-height: 96px;
	min-height: 6rem;
	padding: 24px 32px 24px 0;
	padding: 1.5rem 2rem 1.5rem 0;
}

.p-service-faq__q-text {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.5;
	margin-left: 32px;
	margin-left: 2rem;
}

.p-service-faq__a-body {
	padding: 40px;
	padding: 2.5rem;
}

.p-service-faq__a-body p {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

.p-thanks__main {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 248px;
	padding-top: 15.5rem;
}

.p-thanks__title {
	font-size: 32px;
	font-size: 2rem;
}

.p-thanks__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.p-thanks__btn-wrap {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-thanks__desc-br--sp {
	display: none;
}

.c-breadcrumb {
	margin-bottom: 0;
	margin-top: 162px;
	margin-top: 10.125rem;
}

.c-breadcrumb__inner {
	max-width: 1440px;
	max-width: 90rem;
	overflow-x: visible;
	overflow-x: visible;
	padding-bottom: 14px;
	padding-left: 64px;
	padding-left: 4rem;
	padding-right: 64px;
	padding-right: 4rem;
	padding-top: 14px;
	scrollbar-width: auto;
}

.c-btn--outline-white-pill {
	font-size: 15px;
	font-size: 0.9375rem;
	width: 176px;
	width: 11rem;
}

.c-btn--white-pill {
	font-size: 15px;
	font-size: 0.9375rem;
	width: 176px;
	width: 11rem;
}

.p-top-blog__inner.l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.c-card-blog__image {
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.c-card-blog__body {
	gap: 8px;
	gap: 0.5rem;
	padding-left: 16px;
	padding-left: 1rem;
	padding-right: 16px;
	padding-right: 1rem;
}

.c-card-blog__date {
	font-size: 14px;
	font-size: 0.875rem;
	margin-bottom: -4px;
	margin-bottom: -0.25rem;
}

.c-card-blog__title {
	font-size: 18px;
	font-size: 1.125rem;
}

.c-card-blog__link {
	gap: 6px;
	gap: 0.375rem;
}

.c-card-blog__link.c-text-link {
	font-size: 16px;
	font-size: 1rem;
}

.c-card-blog__link .c-text-link__icon {
	height: 20px;
	height: 1.25rem;
	width: 20px;
	width: 1.25rem;
}

.c-card-blog__cats {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	gap: 0.5rem;
}

.c-cta-contact {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.c-cta-contact--narrow-top {
	padding-top: 80px;
	padding-top: 5rem;
}

.c-cta-contact__title {
	font-size: 32px;
	font-size: 2rem;
}

.c-cta-contact__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.c-cta-contact__btns {
	margin-top: 48px;
	margin-top: 3rem;
}

.c-cta-contact__btns .c-cta-contact__btn {
	border-radius: 2.5rem;
	font-size: 20px;
	font-size: 1.25rem;
	height: 72px;
	height: 4.5rem;
	width: 240px;
	width: 15rem;
}

.c-cta-contact--top .c-cta-contact__btns .c-cta-contact__btn {
	border-radius: 2.25rem;
}

.c-cta-contact__btns .c-cta-contact__btn + .c-cta-contact__btn {
	margin-left: 24px;
	margin-left: 1.5rem;
}

.c-hamburger {
	display: none;
}

.p-company-members__desc {
	-webkit-line-clamp: 4;
}

.c-member-modal.is-open {
	align-items: center;
}

.c-member-modal__wrap {
	margin-bottom: 0;
	margin-top: 0;
	padding-top: 64px;
	padding-top: 4rem;
}

.c-member-modal__close {
	height: 48px;
	height: 3rem;
	left: 824px;
	left: 51.5rem;
	right: auto;
	width: 48px;
	width: 3rem;
}

.c-member-modal__close svg,
.c-member-modal__close img {
	height: 48px;
	height: 3rem;
	width: 48px;
	width: 3rem;
}

.c-member-modal__box {
	min-height: 480px;
	min-height: 30rem;
	padding: 80px;
	padding: 5rem;
}

.c-member-modal__inner {
	align-items: flex-start;
	flex-direction: row;
	gap: 48px;
	gap: 3rem;
}

.c-member-modal__left {
	align-items: center;
	flex-direction: column;
	gap: 0;
	text-align: center;
	width: 200px;
	width: 12.5rem;
}

.c-member-modal__info {
	align-items: center;
	gap: 0;
}

.c-member-modal__photo {
	height: 200px;
	height: 12.5rem;
	margin-top: 14px;
	margin-top: 0.875rem;
	width: 200px;
	width: 12.5rem;
}

.c-member-modal__role {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.c-member-modal__name {
	font-size: 24px;
	font-size: 1.5rem;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.c-member-modal__desc {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.c-pagination {
	margin-top: 64px;
	margin-top: 4rem;
}

.c-pagination ul.page-numbers {
	gap: 16px;
	gap: 1rem;
}

.c-pagination a.page-numbers,
.c-pagination span.page-numbers {
	border-radius: 2rem;
	font-size: 20px;
	font-size: 1.25rem;
	height: 56px;
	height: 3.5rem;
	width: 56px;
	width: 3.5rem;
}

.c-pagination a.prev.page-numbers {
	margin-right: 24px;
	margin-right: 1.5rem;
}

.c-pagination a.next.page-numbers {
	margin-left: 24px;
	margin-left: 1.5rem;
}

.c-post-body {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.c-post-body h1 {
	font-size: 40px;
	font-size: 2.5rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.c-post-body h2 {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
	scroll-margin-top: 6.5rem;
}

.c-post-body h3 {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
	scroll-margin-top: 6.5rem;
}

.c-post-body h4 {
	font-size: 20px;
	font-size: 1.25rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.c-post-body h5 {
	font-size: 16px;
	font-size: 1rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.c-product-nav {
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.c-product-nav__inner {
	padding: 0 80px;
	padding: 0 5rem;
}

.c-product-nav__cards {
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
}

.c-product-nav__card {
	border-radius: 1rem;
	flex: 1;
	padding-top: 48px;
	padding-top: 3rem;
}

.c-product-nav__image {
	background-color: #eceeef;
	border-radius: 0.75rem;
	display: block;
	height: 200px;
	height: 12.5rem;
	margin: 0 40px;
	margin: 0 2.5rem;
	overflow: hidden;
}

.c-product-nav__image img {
	-o-object-fit: cover;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.c-product-nav__body {
	gap: 16px;
	gap: 1rem;
	padding: 24px 40px 40px;
	padding: 1.5rem 2.5rem 2.5rem;
}

.c-product-nav__title {
	font-size: 24px;
	font-size: 1.5rem;
}

.c-product-nav__desc {
	font-size: 16px;
	font-size: 1rem;
	margin-top: 0;
}

.c-product-nav__link {
	font-size: 16px;
	font-size: 1rem;
	margin-top: -8px;
	margin-top: -0.5rem;
}

.c-section-title__en {
	font-size: 80px;
	font-size: 5rem;
}

.c-section-title__ja {
	font-size: 18px;
	font-size: 1.125rem;
}

.c-toc {
	margin-top: 40px;
	margin-top: 2.5rem;
	padding: 32px;
	padding: 2rem;
}

.c-toc .c-toc__title {
	font-size: 18px;
	font-size: 1.125rem;
}

.c-toc .c-toc__link {
	font-size: 15px;
	font-size: 0.9375rem;
}

.p-activities-kv {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 106px;
	padding-top: 6.625rem;
}

.p-activities-kv__en {
	font-size: 104px;
	font-size: 6.5rem;
	margin-top: 0;
}

.p-activities-kv__lead {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-activities-list {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
}

.p-activities-list__cards {
	grid-template-columns: repeat(auto-fill, minmax(16.25rem, 1fr));
	row-gap: 64px;
	row-gap: 4rem;
}

.p-activities-list__card-body {
	padding: 24px;
	padding: 1.5rem;
}

.p-activities-list__card-title {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-activities-list__card-excerpt {
	font-size: 16px;
	font-size: 1rem;
}

.p-activities-list__pagination {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-activities-list__pagination .nav-links {
	gap: 16px;
	gap: 1rem;
}

.p-activities-list__pagination .page-numbers {
	border-radius: 2rem;
	font-size: 20px;
	font-size: 1.25rem;
	height: 56px;
	height: 3.5rem;
	width: 56px;
	width: 3.5rem;
}

.p-activities-list__pagination .page-numbers.prev {
	margin-right: 24px;
	margin-right: 1.5rem;
}

.p-activities-list__pagination .page-numbers.next {
	margin-left: 24px;
	margin-left: 1.5rem;
}

.p-activities-single-kv {
	padding-bottom: 64px;
	padding-bottom: 4rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-activities-single-kv__title {
	margin-left: auto;
	margin-right: auto;
	max-width: 1064px;
	max-width: 66.5rem;
}

.p-activities-single-kv__heading {
	font-size: 40px;
	font-size: 2.5rem;
}

.p-activities-single-contents {
	padding-bottom: 64px;
	padding-bottom: 4rem;
}

.p-activities-single-contents__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1144px;
	max-width: 71.5rem;
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-activities-single-contents__image {
	margin-left: auto;
	margin-right: auto;
	width: 740px;
	width: 46.25rem;
}

.p-activities-single-contents__image img {
	-o-object-fit: cover;
	-o-object-position: center top;
	height: 384px;
	height: 24rem;
	object-fit: cover;
	object-position: center top;
}

.p-activities-single-contents__caption {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-activities-single-contents__body {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-activities-single-contents__body p {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-activities-single-contents__body h2 {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 64px;
	margin-top: 4rem;
}

.p-activities-single-nav {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 0;
}

.p-activities-single-nav__inner {
	gap: 80px;
	gap: 5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 1144px;
	max-width: 71.5rem;
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-activities-single-nav__link {
	font-size: 16px;
	font-size: 1rem;
}

.p-activities-single-related {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 0;
}

.p-activities-single-related__label {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-activities-single-related__cards {
	grid-gap: 16px;
	background-color: transparent;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
	margin-left: 0;
	margin-right: 0;
	overflow-x: visible;
	padding-bottom: 0;
	padding-left: 0;
	padding-top: 0;
	scrollbar-width: auto;
}

.p-activities-single-related__cards::after {
	display: none;
}

.p-activities-single-related__cards .p-activities-list__card {
	height: auto;
	width: auto;
}

.p-activities-single-related__cards .p-activities-list__card-image {
	height: 160px;
	height: 10rem;
}

.p-single {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	margin-top: 66px;
	margin-top: 4.125rem;
}

.p-single__date {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-single__title {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-single__tags {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-single__tag {
	font-size: 14px;
	font-size: 0.875rem;
	padding: 4px 16px;
	padding: 0.25rem 1rem;
}

.p-single__thumbnail {
	margin-bottom: 64px;
	margin-bottom: 4rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 740px;
	max-width: 46.25rem;
}

.p-single__content {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-single__content p {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-single__content h1 {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-single__content h2 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-single__content h3 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-single__content h4 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-single-nav {
	margin-bottom: 48px;
	margin-bottom: 3rem;
	padding: 32px 0;
	padding: 2rem 0;
}

.p-single-nav__inner {
	gap: 40px;
	gap: 2.5rem;
}

.p-single-nav__link {
	gap: 8px;
	gap: 0.5rem;
}

.p-single-nav__label {
	font-size: 16px;
	font-size: 1rem;
}

.p-single-mailmag {
	margin-bottom: 120px;
	margin-bottom: 7.5rem;
	padding: 120px 0;
	padding: 7.5rem 0;
}

.p-single-mailmag__inner {
	-moz-column-gap: 1rem;
	align-items: flex-start;
	column-gap: 1rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	padding-left: 148px;
	padding-left: 9.25rem;
	padding-right: 148px;
	padding-right: 9.25rem;
	row-gap: 48px;
	row-gap: 3rem;
}

.p-single-mailmag__left {
	flex: 1 1 0;
	margin-bottom: 0;
	min-width: 0;
	text-align: left;
}

.p-single-mailmag__checkbox-label.u-desktop {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.p-single-mailmag__title {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-single-mailmag__desc {
	font-size: 16px;
	font-size: 1rem;
	margin-bottom: 48px;
	margin-bottom: 3rem;
}

.p-single-mailmag__form {
	margin-left: 0;
	margin-right: 0;
	max-width: 100%;
	width: 524px;
	width: 32.75rem;
}

.p-single-mailmag__inputs {
	gap: 16px;
	gap: 1rem;
}

.p-single-mailmag__input {
	font-size: 16px;
	font-size: 1rem;
	height: 48px;
	height: 3rem;
	padding: 12px 24px;
	padding: 0.75rem 1.5rem;
}

.p-single-mailmag__submit {
	border-radius: 2.5rem;
	font-size: 20px;
	font-size: 1.25rem;
	height: 72px;
	height: 4.5rem;
	margin-top: 0;
	width: 240px;
	width: 15rem;
}

.p-single-mailmag__right {
	flex: 1 1 0;
	min-width: 0;
}

.p-single-mailmag__submit-row {
	flex: 0 0 100%;
	margin-top: 0;
}

.p-single-related .p-blog-section__cards {
	grid-row-gap: 64px;
	grid-column-gap: 1rem;
	-moz-column-gap: 1rem;
	column-gap: 1rem;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	overflow-x: visible;
	row-gap: 64px;
	row-gap: 4rem;
}

.p-single-related .p-blog-section__cards > * {
	flex: none;
}

.p-single-related {
	margin-bottom: 120px;
	margin-bottom: 7.5rem;
}

.p-single-related__title {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-blog-kv {
	margin-bottom: 80px;
	margin-bottom: 5rem;
	margin-top: 106px;
	margin-top: 6.625rem;
	padding-top: 0;
}

.p-blog-kv__inner {
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 48px;
	gap: 3rem;
}

.p-blog-kv__left .c-section-title__en {
	font-size: 104px;
	font-size: 6.5rem;
	margin-top: 0;
}

.p-blog-kv__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-blog-kv__right {
	flex-shrink: 0;
	margin-top: 0;
	width: 416px;
	width: 26rem;
}

.p-blog-kv__search-input {
	font-size: 16px;
	font-size: 1rem;
}

.p-blog-keywords {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 0;
}

.p-blog-keywords__inner {
	gap: 24px;
	gap: 1.5rem;
}

.p-blog-keywords__label {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-blog-keywords__tags {
	flex-wrap: wrap;
	overflow-x: visible;
}

.p-blog-keywords__tags li a {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-blog-section {
	margin-bottom: 80px;
	margin-bottom: 5rem;
}

.p-blog-section:has(+ .c-breadcrumb) {
	margin-bottom: 120px;
	margin-bottom: 7.5rem;
}

.p-blog-section__header {
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-blog-section__title {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-blog-section__cards {
	-moz-column-gap: 1rem;
	column-gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
	row-gap: 64px;
	row-gap: 4rem;
}

.p-blog-footer {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-blog-footer__inner {
	align-items: flex-start;
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
}

.p-blog-footer__item {
	border-bottom: none;
	flex: 0 0 416px;
	flex: 0 0 26rem;
	padding-bottom: 0;
}

.p-blog-footer__item--mail {
	padding-left: 32px;
	padding-left: 2rem;
	padding-right: 32px;
	padding-right: 2rem;
}

.p-blog-footer__item-title {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-blog-footer__item-btn {
	border-radius: 2.5rem;
	font-size: 16px;
	font-size: 1rem;
	height: 72px;
	height: 4.5rem;
	width: 240px;
	width: 15rem;
}

.p-blog-footer__item-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-blog-footer__form {
	margin-left: auto;
	margin-right: auto;
	max-width: 352px;
	max-width: 22rem;
}

.p-blog-footer__inputs {
	gap: 8px;
	gap: 0.5rem;
}

.p-blog-footer__input {
	font-size: 16px;
	font-size: 1rem;
	height: 48px;
	height: 3rem;
	padding: 12px 24px;
	padding: 0.75rem 1.5rem;
}

.p-blog-footer__submit {
	margin-top: 8px;
	margin-top: 0.5rem;
}

.p-category-kv {
	margin-bottom: 80px;
	margin-bottom: 5rem;
	margin-top: 66px;
	margin-top: 4.125rem;
}

.p-keyword-kv__title {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 0;
	margin-top: 0;
}

.p-keyword-kv__icon {
	height: 40px;
	height: 2.5rem;
	width: 40px;
	width: 2.5rem;
}

.p-category-kv__title {
	font-size: 40px;
	font-size: 2.5rem;
	margin-bottom: 0;
	margin-top: 0;
}

.p-drawing .p-plm-hero__visual {
	flex: 0 0 600px;
	flex: 0 0 37.5rem;
	height: 450px;
	height: 28.125rem;
}

.p-drawing .p-plm-hero > .l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-drawing .p-plm-hero__badge {
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-drawing .p-plm-hero__subtitle {
	font-size: 40px;
	font-size: 2.5rem;
	margin-bottom: 0;
}

.p-drawing .p-plm-hero__title-line {
	font-size: 54px;
	font-size: 3.375rem;
}

.p-drawing .p-plm-hero__content {
	flex: 0 0 600px;
	flex: 0 0 37.5rem;
	min-height: 441px;
	min-height: 27.5625rem;
	width: 600px;
	width: 37.5rem;
}

.p-drawing .p-plm-hero__mv {
	gap: 80px;
	gap: 5rem;
}

.p-drawing .p-plm-hero__main {
	width: 616px;
	width: 38.5rem;
}

.p-plm-features__image--drawing-05 picture {
	height: 361px;
	height: 22.5625rem;
	left: 0;
	position: absolute;
	top: 0;
	width: 524px;
	width: 32.75rem;
}

.p-plm-features__image--drawing-05 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-features__image--drawing-04 picture {
	height: 366px;
	height: 22.875rem;
	left: 0;
	position: absolute;
	top: 0;
	width: 524px;
	width: 32.75rem;
}

.p-plm-features__image--drawing-04 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-features__image--drawing-03 picture {
	height: 100%;
	left: -50px;
	left: -3.125rem;
	position: absolute;
	top: 0;
	width: calc(100% + 3.125rem);
}

.p-plm-features__image--drawing-03 img {
	-o-object-fit: cover;
	object-fit: cover;
}

.p-plm-features__image--drawing-02 picture {
	height: 494px;
	height: 30.875rem;
	left: -100px;
	left: -6.25rem;
	position: absolute;
	top: -21px;
	top: -1.3125rem;
	width: 624px;
	width: 39rem;
}

.p-plm-features__image--drawing-02 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-hero__visual-img--drawing {
	height: 450px;
	height: 28.125rem;
	width: 600px;
	width: 37.5rem;
}

.p-plm-hero__visual-img--drawing picture {
	height: 553px;
	height: 34.5625rem;
	left: -36px;
	left: -2.25rem;
	position: absolute;
	top: 0;
	width: 778px;
	width: 48.625rem;
}

.p-plm-hero__visual-img--drawing img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-hero__visual-img--drawing[data-kv-state="02"] picture {
	height: 553px;
	height: 34.5625rem;
	left: -128px;
	left: -8rem;
	top: 0;
	width: 778px;
	width: 48.625rem;
}

.p-drawing .p-top-voices {
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
}

.p-drbfm-about {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-drbfm-about__title {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-drbfm-about__lead {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-drbfm-about__heading {
	font-size: 40px;
	font-size: 2.5rem;
}

.p-drbfm-about__contents {
	align-items: center;
	flex-direction: row;
	gap: 56px;
	gap: 3.5rem;
}

.p-drbfm-about__text {
	flex: 1;
	gap: 16px;
	gap: 1rem;
	min-width: 0;
}

.p-drbfm-about__text-title {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-drbfm-about__text-desc {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-drbfm-about__image {
	order: 0;
}

.p-drbfm-about__image {
	flex: 0 0 524px;
	flex: 0 0 32.75rem;
}

.p-drbfm-activities {
	margin-bottom: 120px;
	margin-bottom: 7.5rem;
}

.p-drbfm-activities__header {
	grid-template-areas: "title more" "lead  more";
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-drbfm-activities__header .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-drbfm-activities__more {
	align-self: end;
	padding-top: 0;
}

.p-drbfm-activities__lead {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-drbfm-activities__cards {
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
	margin-right: 0;
	overflow-x: visible;
	padding-right: 0;
}

.p-drbfm-activities__card {
	flex: 0 0 416px;
	flex: 0 0 26rem;
	gap: 24px;
	gap: 1.5rem;
	width: 416px;
	width: 26rem;
}

.p-drbfm-activities__card-image {
	height: 248px;
	height: 15.5rem;
}

.p-drbfm-activities__card-body {
	padding: 0 24px;
	padding: 0 1.5rem;
}

.p-drbfm-activities__card-title {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-drbfm-activities__card-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-plm-problem__heading-block {
	gap: 8px;
	gap: 0.5rem;
}

.p-plm-problem__lead {
	color: #ffffff;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
}

.p-drbfm-diagram {
	margin-top: 120px;
	margin-top: 7.5rem;
}

.p-drbfm-diagram__title {
	font-size: 40px;
	font-size: 2.5rem;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
	text-align: center;
}

.p-drbfm-diagram__subtitle {
	font-size: 16px;
	font-size: 1rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	text-align: center;
}

.p-drbfm-diagram__scroll {
	margin-bottom: 0;
	margin-right: 0;
	overflow-x: visible;
	padding-right: 0;
}

.p-drbfm-diagram__image {
	width: 100%;
}

.p-drbfm-diagram__bar {
	display: none;
}

.p-drbfm .p-plm-hero > .l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-drbfm .p-plm-hero__visual {
	flex: 0 0 600px;
	flex: 0 0 37.5rem;
	height: 450px;
	height: 28.125rem;
	width: auto;
}

.p-drbfm .p-plm-hero__content {
	flex: 0 0 616px;
	flex: 0 0 38.5rem;
	width: 616px;
	width: 38.5rem;
}

.p-drbfm .p-plm-hero__mv {
	gap: 64px;
	gap: 4rem;
}

.p-drbfm .p-plm-hero__badge {
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-drbfm .p-plm-hero__subtitle {
	margin-bottom: 0;
}

.p-drbfm .p-plm-hero__title-line {
	font-size: 54px;
	font-size: 3.375rem;
}

.p-plm-features__image--drbfm-01 picture {
	height: 853px;
	height: 53.3125rem;
	left: -173px;
	left: -10.8125rem;
	position: absolute;
	top: -27px;
	top: -1.6875rem;
	width: 1199px;
	width: 74.9375rem;
}

.p-plm-features__image--drbfm-01 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-features__image--drbfm-03 picture {
	height: 349px;
	height: 21.8125rem;
	left: -394px;
	left: -24.625rem;
	position: absolute;
	top: -21px;
	top: -1.3125rem;
	width: 918px;
	width: 57.375rem;
}

.p-plm-features__image--drbfm-03 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-drbfm .p-plm-hero__visual-img--drbfm {
	height: 450px;
	height: 28.125rem;
	width: 600px;
	width: 37.5rem;
}

.p-drbfm .p-plm-hero__visual-img--drbfm picture {
	height: 451px;
	height: 28.1875rem;
	left: -28px;
	left: -1.75rem;
	position: absolute;
	top: -1px;
	top: -0.0625rem;
	width: 631px;
	width: 39.4375rem;
}

.p-drbfm .p-plm-hero__visual-img--drbfm img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-features {
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-plm-features__header {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-plm-features .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-plm-features__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-plm-features__item {
	align-items: center;
	flex-direction: row;
	gap: 56px;
	gap: 3.5rem;
	margin-top: 48px;
	margin-top: 3rem;
	padding-bottom: 48px;
	padding-bottom: 3rem;
}

.p-plm-features__item--reverse {
	flex-direction: row-reverse;
}

.p-plm-features__image {
	flex: 0 0 524px;
	flex: 0 0 32.75rem;
	height: 318px;
	height: 19.875rem;
	width: 524px;
	width: 32.75rem;
}

.p-plm .p-plm-features__item--reverse .p-plm-features__image picture {
	height: 396px;
	height: 24.75rem;
	left: -116px;
	left: -7.25rem;
	position: absolute;
	top: -20px;
	top: -1.25rem;
	width: 678px;
	width: 42.375rem;
}

.p-plm .p-plm-features__item--reverse .p-plm-features__image img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm .p-plm-features__item--reverse .p-plm-features__image--item03 picture {
	height: 318px;
	height: 19.875rem;
	left: -57px;
	left: -3.5625rem;
	position: absolute;
	top: 0;
	width: 588px;
	width: 36.75rem;
}

.p-plm .p-plm-features__item--reverse .p-plm-features__image--item03 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-features__text {
	flex: 1;
	min-width: 0;
}

.p-plm-features__item-title {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-plm-features__item-desc {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-plm-functions {
	padding-bottom: 0;
	padding-top: 60px;
	padding-top: 3.75rem;
}

.p-plm-functions__header {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-plm-functions .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-plm-functions__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-plm-functions__cards {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 48px;
	margin-bottom: 3rem;
}

.p-plm-functions__card {
	border-radius: 1rem;
	padding: 32px 40px;
	padding: 2rem 2.5rem;
}

.p-plm-functions__card-inner {
	gap: 32px;
	gap: 2rem;
}

.p-plm-functions__card-icon {
	height: 40px;
	height: 2.5rem;
	width: 40px;
	width: 2.5rem;
}

.p-plm-functions__card-title {
	font-size: 20px;
	font-size: 1.25rem;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-plm-functions__card-desc {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-plm-functions__tags {
	-moz-column-gap: 0.5rem;
	column-gap: 0.5rem;
	justify-content: center;
	row-gap: 8px;
	row-gap: 0.5rem;
}

.p-plm-functions__tag {
	border-radius: 0.75rem;
	gap: 12px;
	gap: 0.75rem;
	padding: 12px 24px;
	padding: 0.75rem 1.5rem;
}

.p-plm-functions__tag-icon {
	height: 24px;
	height: 1.5rem;
	width: 24px;
	width: 1.5rem;
}

.p-plm-functions__tag-label {
	font-size: 16px;
	font-size: 1rem;
}

.p-plm-hero {
	padding-bottom: 88px;
	padding-bottom: 5.5rem;
	padding-top: 71px;
	padding-top: 4.4375rem;
}

.p-plm-hero__mv {
	align-items: center;
	flex-direction: row;
	gap: 40px;
	gap: 2.5rem;
}

.p-plm-hero__content {
	flex: 1;
	min-width: 0;
	width: auto;
}

.p-plm-hero__badge {
	height: 40px;
	height: 2.5rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	padding: 0 16px;
	padding: 0 1rem;
	width: 328px;
	width: 20.5rem;
}

.p-plm-hero__badge-text {
	font-size: 16px;
	font-size: 1rem;
}

.p-plm-hero__subtitle {
	font-size: 40px;
	font-size: 2.5rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-plm-hero__title {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-plm-hero__title-line {
	font-size: 52px;
	font-size: 3.25rem;
}

.p-plm-hero__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
}

.p-plm-hero__btns {
	display: none;
}

.p-plm-hero__links {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	gap: 1.5rem;
}

.p-plm-hero__visual {
	flex: 0 0 592px;
	flex: 0 0 37rem;
	height: 536px;
	height: 33.5rem;
	margin-left: 0;
	margin-right: 0;
	order: 1;
	overflow: visible;
	width: auto;
}

.p-plm-hero__visual-img {
	border-radius: 0.5rem;
	box-shadow: 0 0.5rem 2rem rgba(26, 34, 41, 0.16);
}

.p-plm-hero__visual-img--01 {
	height: 402px;
	height: 25.125rem;
	left: 8px;
	left: 0.5rem;
	top: 0;
	width: 536px;
	width: 33.5rem;
}

.p-plm-hero__visual-img--01 picture {
	height: 445px;
	height: 27.8125rem;
	margin-left: -90px;
	margin-left: -5.625rem;
	width: 626px;
	width: 39.125rem;
}

.p-plm-hero__visual-img--01 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.p-plm-hero__visual-img--02 {
	border-radius: 0.25rem;
	display: block;
	height: 224px;
	height: 14rem;
	left: -40px;
	left: -2.5rem;
	top: 336px;
	top: 21rem;
	width: 226px;
	width: 14.125rem;
}

.p-plm-hero__visual-img--02 picture {
	height: 100%;
	width: 100%;
}

.p-plm-hero__visual-img--03 {
	height: 253px;
	height: 15.8125rem;
	left: 216px;
	left: 13.5rem;
	top: 307px;
	top: 19.1875rem;
	width: 376px;
	width: 23.5rem;
}

.p-plm-hero__visual-img--03 picture {
	height: 276px;
	height: 17.25rem;
	width: 400px;
	width: 25rem;
}

.p-plm-hero__visual-img--03 img {
	-o-object-fit: fill;
	object-fit: fill;
}

.c-breadcrumb--grey-bg {
	background-color: #f3f4f5;
	margin-top: 0;
	padding-top: 162px;
	padding-top: 10.125rem;
}

.p-plm-problem {
	margin-top: 80px;
	margin-top: 5rem;
	padding: 120px 80px;
	padding: 7.5rem 5rem;
}

.p-plm-problem__contents {
	gap: 64px;
	gap: 4rem;
}

.p-plm-problem__title {
	font-size: 40px;
	font-size: 2.5rem;
}

.p-plm-problem__cards {
	flex-direction: row;
}

.p-plm-problem__card {
	flex: 1;
	padding: 48px 32px;
	padding: 3rem 2rem;
}

.p-plm-problem__card-title {
	font-size: 20px;
	font-size: 1.25rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.p-plm-problem__card-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-plm-security::before {
	background-position: 56% 40%;
}

.p-plm-security {
	padding: 120px 0;
	padding: 7.5rem 0;
}

.p-plm-security__header {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-plm-security .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-plm-security__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-plm-security__cards {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
}

.p-plm-security__card {
	align-items: center;
	border-radius: 1rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	padding: 40px 40px 48px;
	padding: 2.5rem 2.5rem 3rem;
	text-align: center;
}

.p-plm-security__card-inner {
	align-items: center;
	flex-direction: column;
	gap: 8px;
	gap: 0.5rem;
	width: 100%;
}

.p-plm-security__card-icon {
	height: 40px;
	height: 2.5rem;
	width: 40px;
	width: 2.5rem;
}

.p-plm-security__card-text {
	flex: initial;
	width: 100%;
}

.p-plm-security__card-title {
	font-size: 20px;
	font-size: 1.25rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	text-align: center;
}

.p-plm-security__card-desc {
	font-size: 16px;
	font-size: 1rem;
	text-align: center;
}

.p-plm .p-plm-hero > .l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-plm .p-top-voices {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
}

.p-product-process {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-product-process__heading {
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-product-process__heading .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-product-process__steps {
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	gap: 64px;
	gap: 4rem;
}

.p-product-process__step {
	flex: 1;
	gap: 16px;
	gap: 1rem;
	min-width: 0;
	position: relative;
}

.p-product-process__step:not(:last-child)::after {
	color: #abb7c1;
	content: "→";
	font-size: 16px;
	font-size: 1rem;
	left: 100%;
	line-height: 1;
	pointer-events: none;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 64px;
	width: 4rem;
}

.p-product-process__step-number {
	font-size: 16px;
	font-size: 1rem;
	height: 40px;
	height: 2.5rem;
	width: 40px;
	width: 2.5rem;
}

.p-product-process__step-text {
	gap: 8px;
	gap: 0.5rem;
}

.p-product-process__step-title {
	font-size: 24px;
	font-size: 1.5rem;
	white-space: nowrap;
}

.p-product-process__step-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-product-process__note {
	font-size: 20px;
	font-size: 1.25rem;
	gap: 32px;
	gap: 2rem;
	margin-top: 48px;
	margin-top: 3rem;
	white-space: nowrap;
}

.p-product-process__note-text {
	display: inline;
}

.p-top-about {
	padding: 120px 0 69px;
	padding: 7.5rem 0 4.3125rem;
}

.p-top-about__header {
	margin-bottom: 56px;
	margin-bottom: 3.5rem;
}

.p-top-about__lead {
	color: #1a2229;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.8;
	text-align: left;
}

.p-top-about__illust-caption {
	font-size: 28px;
	font-size: 1.75rem;
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
	max-width: none;
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-top-about__illust-caption strong {
	font-size: 40px;
	font-size: 2.5rem;
}

.p-top-about__caption-ai {
	font-size: 32px;
	font-size: 2rem;
}

.p-top-about__diagram-base {
	-webkit-mask-image: url("../images/about/illustration-pc-hide-frame02.svg");
	mask-image: url("../images/about/illustration-pc-hide-frame02.svg");
}

.p-top-about__diagram-base img {
	-webkit-mask-image: url("../images/about/illustration-pc-hide-mask0.svg");
	mask-image: url("../images/about/illustration-pc-hide-mask0.svg");
}

.p-top-about__diagram-glow {
	-webkit-mask-image: url("../images/about/illustration-video-mask.svg");
	mask-image: url("../images/about/illustration-video-mask.svg");
}

.p-top-about__diagram-glow-video--top,
.p-top-about__diagram-glow-video--bottom {
	display: none;
}

.p-top-about__diagram-glow-video--middle {
	height: 100%;
}

.p-top-about__diagram-glow-bom {
	-webkit-mask-image: url("../images/about/illustration-bom-glow-mask.svg");
	mask-image: url("../images/about/illustration-bom-glow-mask.svg");
}

.p-top-about__diagram-inner .p-top-about__diagram-front {
	height: 99.03%;
	left: 23.67%;
	top: 0.39%;
	width: 52.67%;
}

.p-top-about__diagram-inner .p-top-about__diagram-bom-nodes {
	height: 23.21%;
	left: 40.67%;
	top: 44.1%;
	width: 19.25%;
}

.p-top-about__feature:not(:first-child) {
	padding-top: 48px;
	padding-top: 3rem;
}

.p-top-about__feature:not(:last-child) {
	padding-bottom: 48px;
	padding-bottom: 3rem;
}

.p-top-about__feature:not(:last-child)::after {
	width: 1200px;
	width: 75rem;
}

.p-top-about__feature {
	padding: 64px 0;
	padding: 4rem 0;
}

.p-top-about__feature-inner {
	align-items: center;
	flex-direction: row;
	gap: 80px;
	gap: 5rem;
}

.p-top-about__feature-image {
	flex-shrink: 0;
	width: 524px;
	width: 32.75rem;
}

.p-top-about__feature-text {
	flex: 1;
	min-width: 0;
}

.p-top-about__feature-title {
	font-size: 28px;
	font-size: 1.75rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}

.p-top-about__feature-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-top-about__feature--reverse .p-top-about__feature-inner {
	flex-direction: row-reverse;
}

.p-top-blog {
	padding-bottom: 0;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-top-blog__header {
	grid-template-areas: "title more" "lead  more";
	margin-bottom: 64px;
	margin-bottom: 4rem;
	row-gap: 40px;
	row-gap: 2.5rem;
}

.p-top-blog__more {
	align-self: end;
	padding-top: 0;
}

.p-top-blog__lead {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.p-top-blog__cards {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(5, 1fr);
	margin-left: 0;
	margin-right: 0;
	overflow: visible;
	padding-left: 0;
	padding-right: 0;
}

.p-top-blog__cards .c-card-blog {
	width: auto;
}

.p-top-blog__cards .c-card-blog__image {
	height: auto;
	width: auto;
}

.p-top-hero__inner {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	min-height: 824px;
	min-height: 51.5rem;
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 224px;
	padding-top: 14rem;
}

.p-top-hero__content {
	flex-shrink: 0;
	width: 563px;
	width: 35.1875rem;
}

.p-top-hero__badge {
	gap: 8px;
	gap: 0.5rem;
	height: 40px;
	height: 2.5rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	padding: 0 16px;
	padding: 0 1rem;
}

.p-top-hero__badge-en {
	font-size: 16px;
	font-size: 1rem;
}

.p-top-hero__badge-ja {
	font-size: 16px;
	font-size: 1rem;
}

.p-top-hero__title {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
}

.p-top-hero__title-line1 {
	font-size: 45px;
	font-size: 2.8125rem;
	letter-spacing: 0.04em;
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}

.p-top-hero__title-line2 {
	font-size: clamp(43.73px, -0.007px + 5.6949404762vw, 82px);
	font-size: clamp(2.733125rem, -0.0004464286rem + 5.6949404762vw, 5.125rem);
	letter-spacing: -0.02em;
}

.p-top-hero__desc {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
}

.p-top-hero__links {
	gap: 24px;
	gap: 1.5rem;
	justify-content: flex-start;
}

.p-top-hero__links .c-text-link {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
}

.p-top-hero__links .c-btn {
	display: none;
}

.p-top-hero__visual {
	height: 819px;
	height: 51.1875rem;
	height: clamp(436.8px, 0px + 56.875vw, 819px);
	height: clamp(27.3rem, 0rem + 56.875vw, 51.1875rem);
	margin-bottom: 0;
	overflow: hidden;
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
	position: absolute;
	right: 0;
	top: 175px;
	top: 10.9375rem;
	width: 900px;
	width: 56.25rem;
	width: clamp(480px, 0px + 62.5vw, 900px);
	width: clamp(30rem, 0rem + 62.5vw, 56.25rem);
	z-index: 0;
}

.p-top-hero__scroll {
	bottom: 0;
	display: block;
	height: 80px;
	height: 5rem;
	left: 40px;
	left: 2.5rem;
	position: absolute;
	width: 18px;
	width: 1.125rem;
}

.p-top-news {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-top-news__inner.l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-top-news__inner {
	align-items: flex-start;
	flex-direction: row;
	gap: 16px;
	gap: 1rem;
}

.p-top-news__header {
	flex-shrink: 0;
	width: 200px;
	width: 12.5rem;
}

.p-top-news__header .c-section-title__en {
	font-size: 56px;
	font-size: 3.5rem;
	padding-bottom: 0;
}

.p-top-news__header .c-section-title__ja {
	margin-top: 16px;
	margin-top: 1rem;
}

.p-top-news__more--header {
	display: none;
}

.p-top-news__more--bottom {
	align-self: flex-end;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	margin-top: 32px;
	margin-top: 2rem;
}

.p-top-news__list-wrap {
	margin-top: 32px;
	margin-top: 2rem;
}

.p-top-news__link {
	padding: 32px;
	padding: 2rem;
}

.p-top-news__detail {
	align-items: center;
	flex-direction: row;
	gap: 32px;
	gap: 2rem;
}

.p-top-news__date {
	font-size: 14px;
	font-size: 0.875rem;
	width: 80px;
	width: 5rem;
}

.p-top-news__text {
	gap: 8px;
	gap: 0.5rem;
}

.p-top-news__category {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-top-news__title {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-top-product__inner.l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-top-service {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-top-voices {
	overflow: visible;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-top-voices__inner.l-inner {
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-top-voices__header {
	grid-template-areas: "title more" "lead  more";
	margin-bottom: 64px;
	margin-bottom: 4rem;
	row-gap: 40px;
	row-gap: 2.5rem;
}

.p-top-voices__more {
	align-self: end;
	padding-top: 0;
}

.p-top-voices__lead {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
}

.p-top-voices__cards {
	grid-gap: 16px;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
	margin-bottom: -16px;
	margin-bottom: -1rem;
	margin-left: 0;
	margin-right: 0;
	margin-top: -16px;
	margin-top: -1rem;
	overflow: visible;
	padding-bottom: 16px;
	padding-bottom: 1rem;
	padding-left: 0;
	padding-right: 0;
	padding-top: 16px;
	padding-top: 1rem;
}

.p-top-voices__card {
	width: auto;
}

.p-top-voices__card-image {
	height: 160px;
	height: 10rem;
}

.p-top-voices__card-body {
	gap: 12px;
	gap: 0.75rem;
	padding: 24px;
	padding: 1.5rem;
}

.p-top-voices__card-company {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-top-voices__card-title {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-top-voices__card-excerpt {
	font-size: 16px;
	font-size: 1rem;
}

.p-voices-kv {
	padding-bottom: 80px;
	padding-bottom: 5rem;
	padding-top: 106px;
	padding-top: 6.625rem;
}

.p-voices-kv__en {
	font-size: 104px;
	font-size: 6.5rem;
	margin-top: 0;
}

.p-voices-kv__lead {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 2;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-voices-list {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
}

.p-voices-list__cards {
	grid-template-columns: repeat(auto-fill, minmax(16.25rem, 1fr));
	row-gap: 64px;
	row-gap: 4rem;
}

.p-voices-list__card-body {
	padding: 24px;
	padding: 1.5rem;
}

.p-voices-list__card-company {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-voices-list__card-title {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-voices-list__card-excerpt {
	font-size: 16px;
	font-size: 1rem;
}

.p-voices-list__pagination {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-voices-list__pagination .nav-links {
	gap: 16px;
	gap: 1rem;
}

.p-voices-list__pagination .page-numbers {
	border-radius: 2rem;
	font-size: 20px;
	font-size: 1.25rem;
	height: 56px;
	height: 3.5rem;
	width: 56px;
	width: 3.5rem;
}

.p-voices-list__pagination .page-numbers.prev {
	margin-right: 24px;
	margin-right: 1.5rem;
}

.p-voices-list__pagination .page-numbers.next {
	margin-left: 24px;
	margin-left: 1.5rem;
}

.p-voices-single-kv {
	padding-bottom: 64px;
	padding-bottom: 4rem;
	padding-top: 80px;
	padding-top: 5rem;
}

.p-voices-single-kv__title {
	margin-left: auto;
	margin-right: auto;
	max-width: 1064px;
	max-width: 66.5rem;
}

.p-voices-single-kv__meta {
	font-size: 20px;
	font-size: 1.25rem;
}

.p-voices-single-kv__heading {
	font-size: 40px;
	font-size: 2.5rem;
}

.p-voices-single-contents {
	padding-bottom: 64px;
	padding-bottom: 4rem;
}

.p-voices-single-contents__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 1144px;
	max-width: 71.5rem;
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-voices-single-contents__image {
	margin-left: auto;
	margin-right: auto;
	width: 740px;
	width: 46.25rem;
}

.p-voices-single-contents__image img {
	-o-object-fit: cover;
	-o-object-position: center top;
	height: 384px;
	height: 24rem;
	object-fit: cover;
	object-position: center top;
}

.p-voices-single-contents__caption {
	font-size: 14px;
	font-size: 0.875rem;
}

.p-voices-single-contents__body {
	margin-top: 64px;
	margin-top: 4rem;
}

.p-voices-single-contents__body h1 {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-voices-single-contents__body h2 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-voices-single-contents__body h3 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-voices-single-contents__body h4 {
	margin-bottom: 16px;
	margin-bottom: 1rem;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.p-voices-single-contents__body p + p {
	margin-top: 32px;
	margin-top: 2rem;
}

.p-voices-single-contents__body p {
	font-size: 16px;
	font-size: 1rem;
	line-height: 2;
}

.p-voices-single-nav {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 0;
}

.p-voices-single-nav__inner {
	gap: 80px;
	gap: 5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 1144px;
	max-width: 71.5rem;
	padding-left: 40px;
	padding-left: 2.5rem;
	padding-right: 40px;
	padding-right: 2.5rem;
}

.p-voices-single-nav__link {
	font-size: 16px;
	font-size: 1rem;
}

.p-voices-single-related {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	padding-top: 0;
}

.p-voices-single-related__label {
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: 32px;
	margin-bottom: 2rem;
}

.p-voices-single-related__cards {
	grid-gap: 16px;
	background-color: transparent;
	display: grid;
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
	margin-left: 0;
	margin-right: 0;
	overflow-x: visible;
	padding-bottom: 0;
	padding-left: 0;
	padding-top: 0;
	scrollbar-width: auto;
}

.p-voices-single-related__cards::after {
	display: none;
}

.p-voices-single-related__cards .p-voices-list__card {
	height: auto;
	width: auto;
}

.p-voices-single-related__cards .p-voices-list__card-image {
	height: 160px;
	height: 10rem;
}

}

@media screen and (min-width: 768px) and (hover: hover) {

.p-company-members__card:hover .p-company-members__more {
	color: #4fbbef;
}

.p-company-members__card:hover .p-company-members__more-text {
	transform: translateX(-4px);
}

}

@media screen and (min-width: 1024px) {

.l-footer__body {
	-moz-column-gap: 4rem;
	column-gap: 4rem;
	grid-template-columns: minmax(0, 384fr) minmax(0, 384fr) minmax(0, 368fr);
	row-gap: 0;
}

.l-footer__col--right {
	align-items: flex-end;
	flex-direction: column;
	grid-column: auto;
	justify-content: space-between;
}

.l-footer__company {
	text-align: right;
}

.l-footer__company-name {
	font-size: 18px;
	font-size: 1.125rem;
	margin-bottom: 16px;
	margin-bottom: 1rem;
}

.l-footer__company-link {
	margin-top: 16px;
	margin-top: 1rem;
	text-align: right;
}

.p-activities-list__card-image {
	height: 160px;
	height: 10rem;
}

.p-single__body {
	grid-column-gap: 3rem;
	-moz-column-gap: 3rem;
	align-items: start;
	column-gap: 3rem;
	display: grid;
	grid-template-columns: 1fr 18.5rem;
}

.p-single__aside {
	grid-column: 2;
	grid-row: 1/3;
	position: sticky;
	top: 100px;
	top: 6.25rem;
}

.p-single-nav {
	grid-column: 1;
	grid-row: 2;
}

.p-top-environment {
	padding-bottom: 0;
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-top-environment__inner {
	gap: 64px;
	gap: 4rem;
}

.p-top-environment__heading {
	font-size: 40px;
	font-size: 2.5rem;
}

.p-top-environment__cards {
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
}

.p-top-environment__card {
	padding: 56px 40px 40px;
	padding: 3.5rem 2.5rem 2.5rem;
}

.p-top-environment__card-label {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-top-environment__card-title {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-top-environment__card-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-top-environment__footer-sub {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-top-environment__footer-main {
	font-size: 32px;
	font-size: 2rem;
}

.p-top-logo {
	padding: 40px 0;
	padding: 2.5rem 0;
}

.p-top-logo__track {
	animation-duration: 35s;
}

.p-top-logo__item {
	padding-right: 48px;
	padding-right: 3rem;
}

.p-top-logo__item img {
	max-height: 25.6px;
	max-height: 1.6rem;
}

.p-top-product {
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
}

.p-top-product__movie {
	height: 571px;
	height: 35.6875rem;
}

.p-top-product__inner {
	padding-top: 120px;
	padding-top: 7.5rem;
}

.p-top-product__header {
	gap: 40px;
	gap: 2.5rem;
	margin-bottom: 64px;
	margin-bottom: 4rem;
}

.p-top-product__title-block {
	gap: 16px;
	gap: 1rem;
}

.p-top-product__en {
	font-size: 80px;
	font-size: 5rem;
}

.p-top-product__ja {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-top-product__desc {
	font-size: 18px;
	font-size: 1.125rem;
}

.p-top-product__cards {
	gap: 16px;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
}

.p-top-product__card-image {
	margin: 48px 40px 0;
	margin: 3rem 2.5rem 0;
}

.p-top-product__card-body {
	gap: 16px;
	gap: 1rem;
	padding: 24px 40px 40px;
	padding: 1.5rem 2.5rem 2.5rem;
}

.p-top-product__card-title {
	font-size: 24px;
	font-size: 1.5rem;
}

.p-top-product__card-desc {
	font-size: 16px;
	font-size: 1rem;
}

.p-top-product__card-link {
	font-size: 16px;
	font-size: 1rem;
}

.p-voices-list__card-image {
	height: 160px;
	height: 10rem;
}

}

@media (min-width: 1440px) {

.p-activities-single-contents__inner {
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

.p-activities-single-nav__inner {
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

.p-voices-single-contents__inner {
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

.p-voices-single-nav__inner {
	max-width: 1064px;
	max-width: 66.5rem;
	padding-left: 0;
	padding-right: 0;
}

}

@media (max-width: 1360px) {

html {
	font-size: 1.1764705882vw;
}

}

@media (max-width: 767px) {

html {
	font-size: 16px;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

@keyframes l-header-slide-in {

from {
	transform: translateY(-100%);
}

to {
	transform: translateY(0);
}

}

@keyframes c-btn-gradient-flow {

0% {
	background-position: 0% 50%;
}

100% {
	background-position: 200% 50%;
}

}

@keyframes c-section-title-gradient-flow {

0% {
	background-position: 0% 50%;
}

100% {
	background-position: 200% 50%;
}

}

@keyframes p-top-about__diagram-glow-bom {

0% {
	background-position: 0% 50%;
}

50% {
	background-position: 100% 30%;
}

100% {
	background-position: 0% 50%;
}

}

@keyframes p-hero-title-gradient-flow {

0% {
	background-position: 0% 50%;
}

100% {
	background-position: 200% 50%;
}

}

@keyframes p-hero-scroll-line {

0% {
	transform: scaleY(0);
	transform-origin: center top;
}

50% {
	transform: scaleY(1);
	transform-origin: center top;
}

50.1% {
	transform: scaleY(1);
	transform-origin: center bottom;
}

100% {
	transform: scaleY(0);
	transform-origin: center bottom;
}

}

@keyframes logo-marquee {

from {
	transform: translateX(0);
}

to {
	transform: translateX(-50%);
}

}


/*# sourceMappingURL=style.css.map */
