/*****************************************
 * 数値から単位を取り除く
 * 参考
 * https://css-tricks.com/snippets/sass/
******************************************/

/*****************************************
 * px→remの計算
 * 参考
 * https://webdou.net/sass-rem/
 * Sassではmath.div関数の使用が推奨のため、スラッシュ(/)演算子から変更
******************************************/

/*****************************************
 * vwの計算
 * 参考
 * https://webdou.net/sass-vw/
 * Sassではmath.div関数の使用が推奨のため、スラッシュ(/)演算子から変更
******************************************/

html {
	font-size: 16px;
	font-size: 16px;
}

body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	color: #000;
}

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

/*
 * 参考
 * https: //github.com/Andy-set-studio/modern-css-reset/blob/master/src/reset.css
*/

/* Box sizing rules */

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

/* remove default margin */

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

/* remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */

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

/* Set core root defaults */

html:focus-within {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5;
}

/* A elements that don't have a class get default styles */

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

/* Make images easier to work with */

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

/* Inherit fonts for inputs and buttons */

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

li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* remove all animations and transitions for people that prefer not to see them */

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.l-business {
	margin-top: 8.75rem;
}

.l-ceo {
	margin-top: 9.375rem;
}

.l-company {
	margin-top: 6.25rem;
}

.l-definition {
	margin-top: 6.25rem;
}

.l-faq {
	margin-top: 5.625rem;
}

.l-form {
	margin-top: 6.25rem;
}

.l-header {
	position: fixed;
	z-index: 900;
	top: 0;
	left: 0;
	right: 0;
}

.l-inner {
	max-width: 1150px;
	margin-inline: auto;
	padding-inline: 25px;
	width: 100%;
}

.l-jobs {
	margin-top: 9.375rem;
}

.l-main {
	position: relative;
	background: url(../images/whole-background.png) no-repeat center center/cover;
	z-index: 1;
}

.l-media {
	margin-top: 6.4375rem;
}

.l-member-page {
	margin-top: 7.5rem;
}

.l-member {
	margin-top: 16.625rem;
}

.l-privacy {
	margin-top: 6.25rem;
}

.l-profile {
	margin-top: 5.625rem;
}

.l-recruit-detail {
	margin-top: 7.1875rem;
}

.l-recruit-message {
	margin-top: 8.125rem;
}

.l-service-outline {
	margin-top: 4.375rem;
}

.l-service {
	margin-top: 7.375rem;
}

.l-strength {
	margin-top: 15rem;
}

.l-wrapper {
	position: relative;
	background: url(../images/whole-background.png) no-repeat center center/cover;
	border-top-left-radius: 14.25rem;
	margin-top: -18.7125748503vw;
}

.c-breadcrumb {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.1em;
	color: #fff;
	margin-top: 2.1875rem;
}

.c-breadcrumb a {
	color: #fff;
	transition: opacity 0.3s;
}

.c-breadcrumb span[property=name] {
	display: inline-block;
	padding: 0;
	margin-top: -0.375rem;
	vertical-align: middle;
	max-width: 18.75rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.c-button a {
	position: relative;
	display: inline-block;
	font-size: 1.0625rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7058823529;
	letter-spacing: 0.1em;
	text-align: center;
	padding-top: 0.625rem;
	padding-bottom: 0.75rem;
	padding-right: 1.0625rem;
	min-width: 18.125rem;
	border-radius: calc(infinity * 1px);
	border: 1px solid #2d2d2d;
	transition: 0.3s;
}

.c-button a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.75rem;
	transform: translateY(-50%);
	background: url("../images/arrow_button.png") no-repeat center center/contain;
	width: 1.375rem;
	aspect-ratio: 22/7;
	transition: 0.3s;
}

.c-button.c-button--reverse a {
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border: none;
	color: #fff;
	background-size: 200% 100%;
	transition: background-position 0.3s ease-out;
}

.c-button.c-button--reverse a::before {
	content: "";
	-webkit-mask-image: url("../images/arrow_button.png");
	mask-image: url("../images/arrow_button.png");
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-size: contain;
	mask-size: contain;
	width: 1.375rem;
	aspect-ratio: 22/7;
	background-color: #fff;
	background-image: none;
}

.c-cat {
	min-width: 100px;
	font-size: 12px;
	background-color: skyblue;
	border: 1px solid skyblue;
	padding: 4px 10px;
	color: #fff;
	text-align: center;
	display: inline-block;
}

.c-cat.is-current {
	color: red;
}

.c-category-list {
	display: flex;
	align-items: center;
	gap: 1.75rem;
	flex-wrap: wrap;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.c-category-list__link {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.1875rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1.7368421053;
	background: transparent;
	padding-inline: 1.625rem;
	min-width: 8.25rem;
	min-height: 2.0625rem;
	border: 1px solid #98959b;
	border-radius: calc(infinity * 1px);
	transition: 0.3s;
}

.c-category-list__link::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: calc(infinity * 1px);
	opacity: 0;
	transition: 0.3s;
}

.c-category-list__link span {
	position: relative;
}

.c-category-list__link.is-active {
	border-color: transparent;
	color: #fff;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
}

.c-column2 {
	display: grid;
	gap: 1.875rem;
	grid-template-columns: repeat(2, 1fr);
}

.c-column2--gap60 {
	gap: 1.875rem;
}

.c-column3 {
	display: grid;
	gap: 1.875rem;
	grid-template-columns: repeat(3, 1fr);
}

.c-column4 {
	display: grid;
	gap: 1.875rem;
	grid-template-columns: repeat(4, 1fr);
}

.c-list {
	display: flex;
}

.c-list + .c-list {
	margin-top: 30px;
}

.c-list__title {
	width: 20%;
}

.c-list__text {
	width: 79.8%;
}

.c-media-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	-moz-column-gap: 2.3125rem;
	column-gap: 2.3125rem;
	row-gap: 3.75rem;
}

.c-media-list__thumbnail iframe {
	aspect-ratio: 340/190;
	object-fit: cover;
	width: 100%;
	height: auto;
	border-radius: 0.8125rem;
	pointer-events: none;
}

.c-media-list__meta {
	display: flex;
	align-items: center;
	gap: 0.625rem 1.6875rem;
	flex-wrap: wrap;
	margin-top: 0.625rem;
}

.c-media-list__date {
	font-size: 1.0625rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1;
	letter-spacing: 0.05em;
}

.c-media-list__category {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	background-color: #4c3066;
	line-height: 1;
	letter-spacing: 0.05em;
	border-radius: calc(infinity * 1px);
	padding-inline: 0.625rem;
	padding-top: 0.0625rem;
	padding-bottom: 0.1875rem;
	min-width: 5.125rem;
	min-height: 1.5rem;
}

.c-media-list__title {
	font-size: 1.125rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.3333333333;
	letter-spacing: 0.1em;
	margin-top: 0.375rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.c-news-list__item {
	border-bottom: 1px solid rgba(152, 149, 155, 0.4);
}

.c-news-list__link {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 2.6875rem;
	padding-block: 2.0625rem 2.25rem;
	padding-inline: 0.625rem;
	transition: 0.2s;
}

.c-news-list__img {
	width: 15.625rem;
	flex-shrink: 0;
}

.c-news-list__img img {
	aspect-ratio: 250/134;
	object-fit: cover;
	width: 100%;
	height: auto;
	border-radius: 1.125rem;
}

.c-news-list__content {
	flex-grow: 1;
}

.c-news-list__meta {
	display: flex;
	align-items: center;
	gap: 1.4375rem;
}

.c-news-list__category {
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	background-color: #4c3066;
	padding-block: 0.375rem 0.4375rem;
	padding-inline: 1.125rem;
	border-radius: calc(infinity * 1px);
}

.c-news-list__date {
	font-size: 1.0625rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1;
	letter-spacing: 0.05em;
}

.c-news-list__item-title {
	position: relative;
	font-size: 1.25rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.75;
	letter-spacing: 0.05em;
	margin-top: 1.5rem;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: clip;
	width: -moz-fit-content;
	width: fit-content;
}

.c-news-list__item-title::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #2d2d2d;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.c-pagination01 a.page-link {
	position: relative;
}

.c-pagination01 a.page-link::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: calc(infinity * 1px);
	opacity: 0;
	transition: 0.3s;
}

.c-pagination01 a.page-link span {
	position: relative;
}

.c-pagination01 nav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.375rem;
}

.c-pagination01 span.page-numbers,
.c-pagination01 a.page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 3rem;
	aspect-ratio: 1;
	border: 1px solid #98959b;
	border-radius: 50%;
	font-size: 0.75rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1.7142857143;
	text-transform: uppercase;
}

.c-pagination01 span.page-numbers.current,
.c-pagination01 a.page-numbers.current {
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	color: #fff;
	border-color: transparent;
}

.c-pagination01 span.page-numbers.prev.page-numbers,
.c-pagination01 span.page-numbers.next.page-numbers,
.c-pagination01 a.page-numbers.prev.page-numbers,
.c-pagination01 a.page-numbers.next.page-numbers {
	position: relative;
	border: none;
	width: -moz-fit-content;
	width: fit-content;
	aspect-ratio: auto;
	transition: 0.3s;
}

.c-pagination01 span.page-numbers.prev.page-numbers::before,
.c-pagination01 span.page-numbers.next.page-numbers::before,
.c-pagination01 a.page-numbers.prev.page-numbers::before,
.c-pagination01 a.page-numbers.next.page-numbers::before {
	content: "";
	position: absolute;
	bottom: 0.375rem;
	background: url(../images/arrow_post-detail.png) no-repeat center center/contain;
	width: 1.1875rem;
	aspect-ratio: 19/6;
}

.c-pagination01 span.page-numbers.prev.page-numbers,
.c-pagination01 a.page-numbers.prev.page-numbers {
	padding-left: 2.125rem;
	margin-right: 1.0625rem;
}

.c-pagination01 span.page-numbers.prev.page-numbers::before,
.c-pagination01 a.page-numbers.prev.page-numbers::before {
	left: 0;
}

.c-pagination01 span.page-numbers.next.page-numbers,
.c-pagination01 a.page-numbers.next.page-numbers {
	padding-right: 2.125rem;
	margin-left: 1.0625rem;
}

.c-pagination01 span.page-numbers.next.page-numbers::before,
.c-pagination01 a.page-numbers.next.page-numbers::before {
	right: 0;
	transform: scale(-1, 1);
}

.c-pagination02 {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 40.625rem;
	margin-inline: auto;
}

.c-pagination02__link a {
	display: inline-block;
	position: relative;
	font-size: 0.875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7142857143;
	text-transform: uppercase;
}

.c-pagination02__link a::before {
	content: "";
	position: absolute;
	bottom: 0.375rem;
	background: url(../images/arrow_post-detail.png) no-repeat center center/contain;
	width: 1.1875rem;
	aspect-ratio: 19/6;
}

.c-pagination02__link:first-child a {
	padding-left: 2.125rem;
}

.c-pagination02__link:first-child a::before {
	left: 0;
}

.c-pagination02__link:nth-child(2) a {
	padding-right: 2.125rem;
}

.c-pagination02__link:nth-child(2) a::before {
	right: 0;
	transform: scale(-1, 1);
}

.c-pagination02__to-archive {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 0.9375rem;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.05em;
}

.c-sub-title {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 500;
	color: #000;
	line-height: 1;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	padding-left: 1.6875rem;
}

.c-sub-title::before {
	content: "";
	position: absolute;
	top: 58%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5625rem;
	aspect-ratio: 9/19;
}

.c-title-group {
	width: -moz-fit-content;
	width: fit-content;
}

.c-title-group.js-fadeIn03 {
	overflow: clip;
}

.c-title-group.js-fadeIn03 span {
	display: inline-block;
}

.c-title-group.c-title-group--center {
	margin-inline: auto;
}

.c-title-group__ja {
	position: relative;
	font-size: 0.9375rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.3;
	letter-spacing: 0.1em;
	padding-left: 1.875rem;
}

.c-title-group__ja::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 1.25rem;
	aspect-ratio: 1;
	background: url(../images/diamond.png) no-repeat center center/contain;
}

.c-title-group__ja.c-title-group__ja--white {
	color: #fff;
}

.c-title-group__en {
	font-size: 6.125rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
}

.c-title-group__en.c-title-group__en--white {
	color: #fff;
}

.c-title-group02 {
	width: -moz-fit-content;
	width: fit-content;
}

.c-title-group02.js-fadeIn03 {
	overflow: clip;
}

.c-title-group02.js-fadeIn03 span {
	display: inline-block;
}

.c-title-group02.c-title-group02--center {
	margin-inline: auto;
}

.c-title-group02__ja {
	position: relative;
	font-size: 0.9375rem;
	font-weight: 500;
	color: #4c3066;
	line-height: 1;
	letter-spacing: 0.1em;
}

.c-title-group02__ja.c-title-group02__ja--white {
	color: #fff;
}

.c-title-group02__en {
	font-size: 3.75rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1;
	letter-spacing: -0.01em;
	text-transform: uppercase;
	margin-top: 0.25rem;
}

.c-title-group02__en.c-title-group02__en--white {
	color: #fff;
}

.c-year {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.c-year a {
	padding: 4px 15px;
	text-align: center;
	display: inline-block;
	min-width: 78px;
	border: 1px solid skyblue;
	font-size: 14px;
	color: #333;
}

.c-year.current-year a[aria-current=page] {
	color: red;
	font-weight: bold;
}

.c-year.current-month a[aria-current=page] {
	color: red;
	font-weight: bold;
}

.p-404 {
	padding-block: 11.25rem;
}

.p-404__inner.l-inner {
	background: url(../images/recruit-background.png) no-repeat center center/contain;
	padding-top: 9.9375rem;
	padding-bottom: 14.125rem;
}

.p-404 .c-title-group__ja {
	font-size: 1rem;
}

.p-404__main-text {
	font-size: 1.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 4.0625rem;
}

.p-404__sub-text {
	font-size: 1rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.5625;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 2.5rem;
}

.p-404__button {
	text-align: center;
	margin-top: 3.25rem;
}

.p-about {
	padding-top: 9.8125rem;
}

.p-about__container {
	display: flex;
	justify-content: center;
	gap: 6.25rem;
}

.p-about__content {
	position: relative;
	width: 43.6363636364%;
	z-index: 1;
}

.p-about__ornament {
	position: absolute;
	top: 30%;
	left: 20%;
	width: 17.625rem;
	z-index: -1;
}

.p-about__ornament img {
	aspect-ratio: 566/423;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-about__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7894736842;
	letter-spacing: 0.05em;
	margin-top: 3.125rem;
}

.p-about__button {
	margin-top: 5.125rem;
}

.p-about__img {
	width: 47.2727272727%;
	margin-top: 2.5rem;
}

.p-about__img img {
	aspect-ratio: 520/356;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.blob {
	transition: transform 2s ease;
}

.p-bottom {
	margin-bottom: 0.375rem;
}

.p-bottom__items {
	display: flex;
	gap: 0.375rem;
}

.p-bottom__item {
	width: 50%;
	overflow: clip;
}

.p-bottom__item:first-child .p-bottom__link {
	pointer-events: none;
}

.p-bottom__link {
	position: relative;
	display: flex;
	aspect-ratio: 680/324;
	height: 100%;
	padding-bottom: 1.25rem;
}

.p-bottom__link img {
	position: absolute;
	inset: 0;
	aspect-ratio: 680/324;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: scale 0.5s;
}

.p-bottom__title-group {
	padding-right: 2.4375rem;
	margin-top: auto;
	margin-left: auto;
	width: -moz-fit-content;
	width: fit-content;
	pointer-events: none;
}

.p-bottom__link-title {
	position: relative;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	padding-left: 1.875rem;
}

.p-bottom__link-title::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 1.25rem;
	aspect-ratio: 1;
	background: url(../images/diamond.png) no-repeat center center/contain;
}

.p-bottom__link-title-en {
	position: relative;
	font-size: clamp(4.375rem, -2.862rem + 10.53vw, 6.125rem);
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
}

.p-business__items {
	margin-top: 5.9375rem;
}

.p-business__item + .p-business__item {
	margin-top: 10rem;
}

.p-business__item-title-group {
	width: -moz-fit-content;
	width: fit-content;
}

.p-business__item-title-group.js-fadeIn03 {
	overflow: clip;
}

.p-business__item-title-group.js-fadeIn03 span {
	display: inline-block;
}

.p-business__item:nth-child(2n) .p-business__item-title-group {
	margin-left: auto;
}

.p-business__item-title {
	font-size: 2.625rem;
	font-weight: 700;
	color: #2d2d2d;
	line-height: 1.0714285714;
	letter-spacing: 0.025em;
	padding-bottom: 0.375rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-business__item-subtitle {
	font-size: 0.875rem;
	font-weight: 500;
	color: #4c3066;
	line-height: 1.2142857143;
	letter-spacing: 0.1em;
	margin-top: 0.1875rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-business__item-container {
	display: flex;
	justify-content: center;
	gap: 7.5rem;
	margin-top: 1.875rem;
}

.p-business__item:nth-child(2n) .p-business__item-container {
	flex-direction: row-reverse;
}

.p-business__item-block {
	width: 23.375rem;
}

.p-business__item-img {
	max-width: 23.375rem;
	max-height: 16.625rem;
	overflow: clip;
}

.p-business__item-img img {
	width: 120%;
	height: 120%;
	object-fit: cover;
	max-width: none;
}

.p-business__button {
	text-align: right;
	margin-top: 1.75rem;
}

.p-business__item:nth-child(2n) .p-business__button {
	text-align: left;
}

.p-business__body {
	flex: 1;
}

.p-business__headline {
	position: relative;
	font-size: 1.5625rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4;
	letter-spacing: 0.01em;
	padding-bottom: 1.5rem;
	margin-bottom: 0.5rem;
}

.p-business__headline::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background-color: #c6c6c6;
}

.p-business__headline::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 9%;
	height: 1px;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
}

.p-business__text {
	margin-top: 1.375rem;
}

.p-business__text,
.p-business__list-item {
	font-size: clamp(1.063rem, 0.48rem + 0.85vw, 1.188rem);
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7368421053;
	letter-spacing: 0.025em;
}

.p-business__list {
	padding-left: 0.6em;
	margin-block: 1.6875rem;
}

.p-business__list-item {
	position: relative;
}

.p-business__list-item::before {
	content: "";
	position: absolute;
	top: 0.8em;
	left: -0.8em;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.3125rem;
	aspect-ratio: 1;
	border-radius: 50%;
}

.p-card {
	position: relative;
}

.p-card--flex {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.p-card__link {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.p-card__cat {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}

.p-card__img {
	overflow: hidden;
	z-index: 1;
	position: relative;
}

.p-card__img img {
	aspect-ratio: 4/3;
	object-fit: cover;
	height: auto;
	width: 100%;
	transition: transform 0.5s;
	backface-visibility: hidden;
}

.p-card__body {
	margin-top: 10px;
}

.p-card__date {
	display: inline-block;
}

.p-card__title {
	font-size: 20px;
	font-weight: 700;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.p-card__text {
	font-size: 16px;
	font-weight: 400;
	margin-top: 10px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.p-card__tag {
	margin-top: auto;
	padding-top: 10px;
}

.p-ceo__container {
	display: flex;
	justify-content: center;
	gap: 5.3125rem;
	margin-top: 5rem;
}

.p-ceo__img {
	width: 36.3636363636%;
	min-width: 25rem;
}

.p-ceo__img img {
	aspect-ratio: 400/460;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-ceo__content {
	flex-grow: 1;
}

.p-ceo__content-text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
}

.p-ceo__content-text + .p-ceo__content-text {
	margin-top: 2.5rem;
}

.p-ceo__name {
	font-size: 1.375rem;
	font-weight: 500;
	color: #000;
	line-height: 1.4090909091;
	letter-spacing: 0.01em;
	text-align: right;
	margin-top: 3.4375rem;
}

.p-company {
	position: relative;
	background: url(../images/whole-background.png) no-repeat center center/cover;
	padding-top: 4.625rem;
	padding-bottom: 7.25rem;
}

.p-company::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: url(../images/company_ornament01.png) no-repeat center center/contain;
	width: 18.125rem;
	aspect-ratio: 290/300;
}

.p-company::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	background: url(../images/company_ornament02.png) no-repeat center center/contain;
	width: 24.5rem;
	aspect-ratio: 392/500;
}

.p-company__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7894736842;
	letter-spacing: 0.05em;
	text-align: center;
	margin-top: 2.25rem;
}

.p-company__button {
	text-align: center;
	margin-top: 4.625rem;
}

.p-contact__head {
	width: 15.625rem;
}

.p-contact__item {
	margin-top: 0.375rem;
}

.p-contact__item-example {
	margin-top: 0.375rem;
	color: gray;
}

.p-contact__required {
	color: red;
	padding-left: 1em;
}

.p-contact__policy,
.p-contact__content,
.p-contact__btn {
	margin: 1.5rem 0;
}

.p-contact__policy-link {
	color: blue;
	transition: all 0.3s;
}

.p-contact__btn-wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

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

.p-contact__item-text,
.p-contact__item-tel,
.p-contact__item-email,
.p-contact__item-textarea,
.p-contact__item-select {
	margin: 0;
	padding: 0.8em;
	border: 1px solid rgba(0, 0, 0, 0.16);
	border-radius: 0;
	outline: none;
	background: none;
	background-color: transparent;
	font-size: 1rem;
	color: inherit;
	font-family: inherit;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
}

.p-contact__item-text:focus,
.p-contact__item-tel:focus,
.p-contact__item-email:focus,
.p-contact__item-textarea:focus,
.p-contact__item-select:focus {
	border: 1px solid rgba(0, 0, 0, 0.7);
	box-shadow: none;
	outline: none;
}

.p-contact__item-textarea {
	height: 200px;
	resize: none;
	overflow: auto;
}

.p-contact__item-message {
	white-space: pre-wrap;
}

.p-contact__item-select {
	padding-right: 3em;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALJJREFUeNrslssNgCAQRCmB0ijBEuyEEijBEijBEizBEnAPy0UBWVj8JDvJJB5w3gsXVUoikXwsBrpAPdRCNcOmxi2P2yZ3cIKGU9dOCY0b590pdXhPHOyRyMEDsi4JhVIlSvBYTRGgSNTAQ+pFyyBRC7e5AdchUQt3d1fYIsEGb5Fgh1MktlFwisQwOIeE4/pGuDfhLRLscIremHiNxHB4SeIxeMyMPxkenyUSyT9zCDAAj5btZ4c3zaUAAAAASUVORK5CYII=");
	background-repeat: no-repeat;
	background-size: 1em;
	background-position: right 0.5em center;
	color: inherit;
}

.p-contact__item-select:invalid {
	color: rgba(0, 0, 0, 0.32);
}

.p-contact__item-select select::-ms-expand {
	display: none;
}

.p-contact__item-radio input[type=radio],
.p-contact__item-checkbox input[type=checkbox] {
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.p-contact__item-radio input[type=radio] + span,
.p-contact__item-checkbox input[type=checkbox] + span {
	display: inline-block;
	cursor: pointer;
	position: relative;
	padding: 0.5em 1em 0.5em 1.5em;
	color: #333;
	font-size: 1rem;
}

.p-contact__item-radio input[type=radio]:focus + span,
.p-contact__item-checkbox input[type=checkbox]:focus + span {
	opacity: 0.7;
}

.p-contact__item-radio input[type=radio] + span::before,
.p-contact__item-checkbox input[type=checkbox] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 1em;
	height: 1em;
	content: "";
	transform: translateY(-50%);
	background: white;
	border: 1px solid black;
}

.p-contact__item-checkbox input[type=checkbox]:checked + span::before {
	background: #333;
}

.p-contact__item-radio input[type=radio]:checked + span::before {
	background: white;
}

.p-contact__item-radio input[type=radio] + span::before {
	border-radius: 50%;
}

.p-contact__item-radio input[type=radio] + span::after {
	position: absolute;
	content: "";
	background: #333;
	border: 1px solid transparent;
	border-radius: 50%;
	height: 0.5em;
	left: 0.25em;
	opacity: 0;
	padding: 0.125em;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.3s ease 0s;
	width: 0.5em;
}

.p-contact__item-checkbox input[type=checkbox] + span::after {
	border-bottom: 2px solid white;
	border-left: 2px solid white;
	content: "";
	display: block;
	height: 0.35em;
	left: 0.15em;
	margin-top: -0.1em;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.3s ease 0s;
	width: 0.8em;
}

.p-contact__item-checkbox input[type=checkbox]:checked + span::after,
.p-contact__item-radio input[type=radio]:checked + span::after {
	opacity: 1;
}

/* button */

.p-contact__btn input[type=submit],
.p-contact__btn input[type=button] {
	display: inline-block;
	margin: 0;
	padding: 0.5em 2em;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	background: rgba(0, 0, 0, 0.32);
	color: #333;
	-moz-appearance: button;
	appearance: button;
	cursor: pointer;
	font-size: 1rem;
	border-radius: 0;
	border: none;
	transition: all 0.3s;
}

.p-contact__btn input[type=submit]:hover,
.p-contact__btn input[type=button]:hover,
.p-contact__btn input[type=submit]:focus,
.p-contact__btn input[type=button]:focus {
	outline: none;
	opacity: 0.7;
}

.p-contact__item,
.p-contact__btn-submit {
	min-width: 9.375rem;
}

.wpcf7-spinner {
	position: absolute;
}

.p-definition__items {
	margin-top: 5.625rem;
}

.p-definition__item {
	display: flex;
	gap: 5.625rem;
}

.p-definition__item + .p-definition__item {
	margin-top: 4.375rem;
}

.p-definition__title-wrap {
	width: 12.7272727273%;
}

.p-definition__item-title {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1;
	text-transform: uppercase;
	padding-left: 1.75rem;
}

.p-definition__item-title::before {
	content: "";
	position: absolute;
	top: 57%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5rem;
	height: 75%;
	aspect-ratio: 8/19;
}

.p-definition__item-block {
	flex-grow: 1;
}

.p-definition__item-highlight {
	font-size: 1.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4090909091;
	letter-spacing: 0.01em;
}

.p-definition__item-text,
.p-definition__list-item {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
}

.p-definition__item-text {
	margin-top: 2.6875rem;
}

.p-definition__item-list {
	padding-left: 1em;
	margin-top: 2.8125rem;
}

.p-definition__list-item {
	position: relative;
}

.p-definition__list-item::before {
	content: "";
	position: absolute;
	top: 0.8em;
	left: -0.7em;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: 50%;
	width: 0.3125rem;
	aspect-ratio: 1;
}

.p-document-download {
	padding-top: 7.8125rem;
}

.p-document-download__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7894736842;
	letter-spacing: 0.05em;
}

.p-document-download__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 6.5rem;
	column-gap: 6.5rem;
	margin-top: 5.625rem;
}

.p-document-download__card {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
}

.p-document-download__card:nth-child(n+3) {
	margin-top: 5rem;
}

.p-document-download__img img {
	aspect-ratio: 491/308;
	object-fit: cover;
	width: 100%;
	height: auto;
	border-radius: 0.625rem;
}

.p-document-download__title {
	position: relative;
	font-size: 1.5625rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4;
	letter-spacing: 0.01em;
	padding-bottom: 0.9375rem;
	margin-top: 2.625rem;
}

.p-document-download__title::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(90deg, #707070 0%, #707070 10%, #c6c6c6 10%, #c6c6c6 100%);
	width: 100%;
	height: 1px;
}

.p-document-download__description {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
	margin-top: 1.4375rem;
}

.p-document-download__button {
	margin-top: 4.3125rem;
}

.p-document-download__link {
	position: relative;
	display: inline-block;
	font-size: 1.0625rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7058823529;
	letter-spacing: 0.1em;
	border-radius: calc(infinity * 1px);
	border: 1px solid #000;
	padding-block: 0.625rem 0.75rem;
	padding-inline: 1.875rem 4.6875rem;
	transition: 0.3s;
}

.p-document-download__link::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.5rem;
	transform: translateY(-50%);
	background: url("../images/arrow_button.png") no-repeat center center/contain;
	width: 1.375rem !important;
	aspect-ratio: 22/7;
}

.p-document {
	padding-top: 7rem;
}

.p-document__wrapper {
	display: flex;
	justify-content: center;
	gap: 7.5rem;
}

.p-document__content {
	width: 45.6363636364%;
}

.p-document__heading {
	font-size: 2.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4473684211;
	letter-spacing: 0.01em;
}

.p-document__img {
	margin-top: 2.875rem;
}

.p-document__img img {
	aspect-ratio: 491/308;
	object-fit: cover;
	width: 100%;
	height: auto;
	border-radius: 0.625rem;
}

.p-document__body {
	margin-top: 3.4375rem;
}

.p-document__label {
	position: relative;
	font-size: 1.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.7272727273;
	padding-left: 1.25rem;
}

.p-document__label::before {
	content: "";
	position: absolute;
	top: 55%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5rem;
	height: 65%;
}

.p-document__lead {
	position: relative;
	font-size: 1.1875rem;
	font-weight: 700;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
	padding-bottom: 1.0625rem;
	margin-top: 2.125rem;
}

.p-document__lead::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(180deg, #707070 0%, #707070 9%, #c6c6c6 9%, #c6c6c6 100%);
	width: 100%;
	height: 1px;
}

.p-document__container {
	margin-top: 2.1875rem;
}

.p-document__description,
.p-document__list,
.p-document__note {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
}

.p-document__list {
	padding-left: 1em;
	margin-top: 1.125rem;
}

.p-document__item {
	position: relative;
}

.p-document__item::before {
	content: "";
	position: absolute;
	top: 0.875rem;
	left: -0.7em;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.3125rem;
	aspect-ratio: 1;
	border-radius: 50%;
}

.p-document__note {
	margin-top: 1.375rem;
}

.p-document__form-area {
	width: 43.2727272727%;
}

.p-document__form .p-form__item {
	flex-direction: column;
	gap: 1.4375rem;
	padding-block: 0.875rem;
}

.p-document__form .p-form__item:first-child {
	padding-top: 0;
}

.p-document__form .p-form__title {
	width: 47.0588235294%;
}

.p-document__form .p-formCheckbox input + span {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
}

.p-document__form .p-form__acceptance {
	text-align: left;
	margin-top: 0.1875rem;
}

.p-document__form .p-form__submit {
	margin-top: 3.5rem;
}

.p-faq {
	padding-bottom: 13.3125rem;
}

.p-faq__title {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1;
	text-transform: uppercase;
	padding-left: 1.75rem;
}

.p-faq__title::before {
	content: "";
	position: absolute;
	top: 55%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5rem;
	height: 80%;
	aspect-ratio: 8/19;
}

.p-faq__items {
	display: flex;
	flex-direction: column;
	row-gap: 1.6875rem;
	margin-top: 3.4375rem;
}

.p-faq__question {
	position: relative;
	display: flex;
	align-items: center;
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem;
	justify-content: space-between;
	background-color: #4c3066;
	padding-block: 1.375rem;
	border-radius: 1rem;
	padding-left: 6.5625rem;
	padding-right: 1.25rem;
	transition: border-radius 0.4s ease;
	cursor: pointer;
}

.p-faq__question::before {
	content: "q";
	position: absolute;
	top: 50%;
	left: 1.875rem;
	transform: translateY(-50%);
	border: 1px solid #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #fff;
	line-height: 1;
	text-transform: uppercase;
	width: 2.8125rem;
	aspect-ratio: 1;
	padding-right: 0.125rem;
	padding-bottom: 0.1875rem;
}

.p-faq__item.is-opened .p-faq__question {
	border-radius: 1rem 1rem 0 0;
}

.p-faq__question-text {
	font-size: 1.25rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.75;
}

.p-faq__question-icon {
	width: 1.5625rem;
	height: 1.5625rem;
}

.p-faq__question-icon line {
	transition: rotate 0.3s ease;
	transform-origin: center;
}

.p-faq__item.is-opened .p-faq__question-icon line:nth-of-type(2) {
	rotate: 90deg;
}

.p-faq__answer {
	display: none;
	position: relative;
	background-color: #F0F4F8;
	border-left: 1px solid #707070;
	border-right: 1px solid #707070;
	border-bottom: 1px solid #707070;
	border-radius: 0 0 1rem 1rem;
}

.p-faq__answer::before {
	content: "a";
	position: absolute;
	top: 0.9375rem;
	left: 1.875rem;
	border: 1px solid #707070;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1;
	text-transform: uppercase;
	width: 2.8125rem;
	aspect-ratio: 1;
	padding-right: 0.125rem;
	padding-bottom: 0.25rem;
}

.p-faq__item:first-child .p-faq__answer {
	display: block;
}

.p-faq__answer__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
	padding-block: 1.375rem 1.5625rem;
	padding-left: 6.5625rem;
	padding-right: 3.75rem;
}

.p-footer {
	background-color: #9494af;
	padding-top: 4.875rem;
	padding-bottom: 3.75rem;
}

.p-footer__logo {
	max-width: 17.6875rem;
	margin-inline: auto;
}

.p-footer__logo img {
	aspect-ratio: 283/35;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-footer__nav {
	margin-top: 1.6875rem;
}

.p-footer__nav-list {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1.25rem;
}

.p-footer__nav-item:nth-child(n+2) {
	position: relative;
}

.p-footer__nav-item:nth-child(n+2)::before {
	content: "";
	position: absolute;
	top: 53%;
	left: -0.75rem;
	transform: translateY(-50%);
	background-color: #fff;
	width: 1px;
	height: 60%;
}

.p-footer__nav-item a {
	font-size: 1.125rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	transition: color 0.3s;
}

.p-footer__privacy {
	text-align: center;
	margin-top: 1.5625rem;
}

.p-footer__privacy a {
	display: inline-block;
	font-size: 0.75rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.75;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #fff;
	transition: 0.3s;
}

.p-footer__info-items {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	margin-top: 2.0625rem;
}

.p-footer__info-item {
	font-size: 0.9375rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.4666666667;
	letter-spacing: 0.1em;
}

.p-footer__sns {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	margin-top: 2.6875rem;
}

.p-footer__sns-item:first-child {
	max-width: 2.5625rem;
}

.p-footer__sns-item:first-child img {
	aspect-ratio: 41/29;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-footer__sns-item:nth-child(2) {
	max-width: 1.75rem;
}

.p-footer__sns-item:nth-child(2) img {
	aspect-ratio: 1;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-footer__copyright {
	display: block;
	font-size: 0.75rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.75;
	letter-spacing: 0.05em;
	text-align: center;
	margin-top: 1rem;
}

.p-form__item {
	display: flex;
	padding: 1.875rem 0;
	gap: 2.1875rem;
}

.p-form__title {
	position: relative;
	display: flex;
	width: 27.7272727273%;
	align-items: center;
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
}

.p-form__title--must::before {
	content: "必須";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0.9375rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.7333333333;
	background-color: #4c3066;
	padding-inline: 0.625rem;
	border-radius: calc(infinity * 1px);
	min-width: 4.0625rem;
	min-height: 1.625rem;
}

.p-form__title--aiStart {
	align-items: flex-start;
}

.p-form__input {
	flex: 1;
}

.p-formInput input::-moz-placeholder,
.p-formTextarea textarea::-moz-placeholder {
	color: #98959b;
	font-size: 1.0625rem;
}

.p-formInput input::placeholder,
.p-formTextarea textarea::placeholder {
	color: #98959b;
	font-size: 1.0625rem;
}

.p-formInput input {
	width: 100%;
	height: 3.75rem;
	padding-left: 1.875rem;
	border: 1px solid transparent;
	border-radius: 0.625rem;
	font-size: 1.0625rem;
	background-color: #dfe6e8;
}

.p-formInput input:focus,
.p-formTextarea textarea:focus {
	outline: 2px solid #b5b5b5;
}

.p-formInput__post {
	display: flex;
	gap: 1.125rem;
	align-items: center;
	font-size: 1.375rem;
	font-weight: 500;
}

.p-formInput__post input {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.p-formInput__address {
	margin-top: 10px;
}

.p-formInput__address input {
	width: 70%;
}

.p-formInput--tel {
	display: flex;
	gap: 5px;
	align-items: center;
}

.p-formInput--tel > * {
	min-width: 0;
}

.p-formInput--tel input {
	width: 150px;
	max-width: 100%;
}

.p-formSelect select {
	width: 100%;
	max-width: 17.5rem;
	height: 3.75rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	border: 1px solid transparent;
	border-radius: 0.625rem;
	font-size: 1.0625rem;
	color: #98959b;
	background-color: #dfe6e8;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.p-formSelect select:focus {
	outline: 2px solid #b5b5b5;
}

.p-formSelect--selected select {
	color: #000;
}

.p-formDate__flex {
	display: flex;
	gap: 35px;
	align-items: center;
}

.p-formDate__flex + .p-formDate__flex {
	margin-top: 20px;
}

.p-formDate__label {
	font-size: 16px;
}

.p-form__dataBlockFlex {
	display: flex;
	align-items: center;
}

.p-form__dataBlockFlex + .p-form__dataBlockFlex {
	margin-top: 20px;
}

.p-form__dataBlockLabel {
	width: 80px;
	font-size: 16px;
}

.p-formCalendar {
	position: relative;
}

.p-formCalendar input {
	width: 17.5rem;
	height: 3.75rem;
	padding-left: 1.875rem;
	border: 1px solid transparent;
	border-radius: 0.625rem;
	font-size: 1.0625rem;
	color: #98959b;
	background-color: #dfe6e8;
}

.p-formCalendar input::-webkit-calendar-picker-indicator {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	color: transparent;
	background: transparent;
	z-index: 1;
}

.p-formCalendar input::-webkit-date-and-time-value {
	text-align: left;
}

.p-formCalendar input:focus {
	outline: 2px solid #b5b5b5;
}

.p-form__dataBlockDate input:not(.p-formDate__default) {
	color: #000;
}

.p-formNumber__txt {
	font-size: 16px;
}

.p-formNumber__flex {
	display: flex;
	margin-top: 20px;
	gap: 30px;
	align-items: center;
}

.p-formNumber__block {
	display: flex;
	align-items: center;
}

.p-formNumber__blockLabel01 {
	margin-right: 30px;
	font-size: 16px;
}

.p-formNumber__blockLabel01 {
	font-size: 16px;
}

.p-formNumber__blockInput {
	width: 150px;
	margin-right: 10px;
}

.p-formCheckbox input {
	display: none;
}

.p-formCheckbox .wpcf7-checkbox {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.p-formCheckbox .wpcf7-list-item {
	margin-left: 0;
}

.p-formCheckbox--vertical .wpcf7-checkbox {
	display: block;
}

.p-formCheckbox--vertical .wpcf7-list-item {
	display: block;
	margin: 0;
}

.p-formCheckbox--vertical .wpcf7-list-item + .wpcf7-list-item {
	margin-top: 20px;
}

.p-formCheckbox input + span {
	position: relative;
	display: inline-block;
	width: auto;
	padding: 0 0 0 2rem;
	font-size: 16px;
	cursor: pointer;
}

.p-formCheckbox input + span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	border: 1px solid #b5b5b5;
	border-radius: 0.3125rem;
	background-color: #fff;
	transform: translateY(-50%);
}

.p-formCheckbox input + span::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 6px;
	display: block;
	width: 8px;
	height: 13px;
	margin-top: -8px;
	border-right: 2px solid #4c3066;
	border-bottom: 2px solid #4c3066;
	opacity: 0;
	transform: rotate(45deg);
}

.p-formCheckbox input:checked + span::after {
	opacity: 1;
}

.p-formRadio .wpcf7-radio {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.875rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-formRadio--vertical .wpcf7-radio {
	display: block;
}

.p-formRadio .wpcf7-list-item {
	margin: 0;
}

.p-formRadio--vertical .wpcf7-list-item {
	display: block;
	margin: 0;
}

.p-formRadio--vertical .wpcf7-list-item + .wpcf7-list-item {
	margin-top: 20px;
}

.p-formRadio input + span {
	display: flex;
	font-size: 0.9375rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7333333333;
	cursor: pointer;
}

.p-formRadio input[type=radio] {
	display: none;
}

.p-formRadio input + span::before {
	content: "";
	width: 0.9375rem;
	height: 0.9375rem;
	margin-top: auto;
	margin-right: 0.5em;
	margin-bottom: auto;
	border: 1px solid #b5b5b5;
	border-radius: 100%;
	background: #fff;
	transition: background-color 0.3s;
}

.p-formRadio input:checked + span::before {
	background-color: #4c3066;
	box-shadow: inset 0 0 0 0.125rem #fff;
}

.p-formFile .wpcf7-form-control-wrap {
	display: block;
}

.p-formFile .wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
	margin-top: 20px;
}

.p-formFile input {
	max-width: 100%;
	font-size: 16px;
	line-height: 1;
}

.p-formTextarea textarea {
	width: 100%;
	min-height: 18.75rem;
	padding-block: 1.625rem;
	padding-inline: 1.875rem;
	border: 1px solid transparent;
	border-radius: 0.625rem;
	font-size: 1.0625rem;
	background-color: #dfe6e8;
	resize: vertical;
}

.p-form__privacy {
	margin-top: 30px;
	text-align: center;
	font-size: 16px;
}

.p-form__privacy a {
	line-height: 1;
	text-decoration: underline;
}

.p-form__acceptance {
	margin-top: 5.625rem;
	text-align: center;
}

.p-form__acceptance input + span {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
}

.p-form__submit {
	position: relative;
	margin-top: 4.375rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.p-form__submit::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.6875rem;
	transform: translateY(-50%);
	width: 1.625rem;
	aspect-ratio: 22/7;
	background-color: #fff;
	-webkit-mask-image: url(../images/arrow_button.png);
	mask-image: url(../images/arrow_button.png);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center center;
	mask-position: center center;
}

.p-formBtn input {
	width: 18.125rem;
	padding-block: 0.9375rem;
	border: none;
	color: #fff;
	font-size: 1.0625rem;
	letter-spacing: 0.1em;
	text-align: center;
	border-radius: calc(infinity * 1px);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	background-size: 200% 100%;
	transition: background-position 0.3s ease-out;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
}

.p-formBtn input:disabled {
	color: #fff;
	background: #eee;
	border-color: #eee;
}

.wpcf7 form.sent .wpcf7-response-output {
	padding: 15px 10px;
	border-color: #2c94de;
	font-size: 24px;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	padding: 15px 10px;
	border-color: red;
	font-size: 24px;
}

.wpcf7-spinner {
	display: none;
}

.wpcf7-not-valid-tip {
	display: block;
	color: red;
	font-size: 16px;
	font-weight: normal;
}

.wpcf7-form.hide_error_message .wpcf7-not-valid-tip {
	display: none;
}

.p-formValidation .wpcf7-not-valid-tip {
	display: none;
}

.p-formValidation__error {
	display: none;
	margin-top: 10px;
	color: red;
	font-size: 16px;
	font-weight: normal;
}

.wpcf7-form:not(.hide_error_message) .p-formValidation:has(.wpcf7-not-valid-tip) .p-formValidation__error {
	display: block;
}

.p-form__privacy-link {
	position: relative;
	display: inline-block;
	color: #4c3066;
}

.p-form__privacy-link::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background-color: #4c3066;
	transition: background-color 0.3s;
}

.p-formFile {
	padding-top: 1.375rem;
}

.p-header {
	padding-top: 2.875rem;
	padding-bottom: 0.3125rem;
	background: transparent;
	transition: 0.3s;
}

.p-header.p-header--lower {
	background: url(../images/header_background.jpg) no-repeat center center/cover;
}

.p-header.p-header--lower .p-header__logo {
	background-color: #4c3066;
}

.p-header.p-header--lower .p-header__nav-item a {
	color: #4c3066;
}

.p-header.p-header--lower .p-header__nav-item:nth-child(n+2)::before {
	background-color: #4c3066;
}

.p-header.p-header--lower .p-header__sns-btn {
	background-color: #4c3066;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition: 0.3s;
}

.p-header.p-header--lower .p-header__sns-btn:first-child {
	-webkit-mask-image: url("../images/youtube.png");
	mask-image: url("../images/youtube.png");
	background-color: #4c3066;
}

.p-header.p-header--lower .p-header__sns-btn:last-child {
	-webkit-mask-image: url("../images/linkedin.png");
	mask-image: url("../images/linkedin.png");
}

.p-header.p-header--lower .p-header__sns-btn img {
	opacity: 0;
}

.p-header.p-header--lower .p-header__button a {
	color: #fff;
	background-color: #4c3066;
}

.p-header.p-header--lower .p-header__hamburger span {
	background-color: #4c3066;
}

.p-header.is-scroll {
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	background: url(../images/header_background.jpg) no-repeat center center/cover;
}

.p-header.is-scroll .p-header__logo {
	background-color: #4c3066;
}

.p-header.is-scroll .p-header__nav-item a {
	color: #4c3066;
}

.p-header.is-scroll .p-header__nav-item:nth-child(n+2)::before {
	background-color: #4c3066;
}

.p-header.is-scroll .p-header__hamburger span {
	background-color: #4c3066;
}

.p-header__inner.l-inner {
	display: flex;
	justify-content: space-between;
	max-width: 100%;
	height: inherit;
}

.p-header__logo {
	max-width: 15.625rem;
	height: -moz-fit-content;
	height: fit-content;
	background-color: #fff;
	-webkit-mask-image: url("../images/logo.svg");
	mask-image: url("../images/logo.svg");
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition: 0.3s;
}

.p-header__logo img {
	aspect-ratio: 502/63;
	object-fit: contain;
	width: 100%;
	height: auto;
	opacity: 0;
}

.p-header__button-container {
	display: flex;
	justify-content: flex-end;
	gap: 1rem;
	margin-bottom: 1.125rem;
}

.p-header__button-wrap {
	display: flex;
	gap: 1.0625rem;
}

.p-header__button a {
	display: inline-block;
	font-size: 1.1875rem;
	font-weight: 400;
	color: #4c3066;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
	background-color: #fff;
	min-width: 10.75rem;
	padding-block: 0.3125rem 0.5rem;
	border-radius: calc(infinity * 1px);
	border: 1px solid transparent;
	transition: 0.3s;
}

.p-header__sns-wrap {
	display: flex;
	align-items: center;
	gap: 0.8125rem;
}

.p-header__sns-btn {
	max-width: 2rem;
}

.p-header__sns-btn:first-child {
	max-width: 2.8125rem;
}

.p-header__sns-btn img {
	aspect-ratio: 1;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-header__sns-btn:first-child img {
	aspect-ratio: 45/32;
}

.p-header__nav-list {
	display: flex;
	align-items: center;
	gap: 1.375rem;
}

.p-header__nav-item:nth-child(n+2) {
	position: relative;
}

.p-header__nav-item:nth-child(n+2)::before {
	content: "";
	position: absolute;
	top: 53%;
	left: -0.875rem;
	transform: translateY(-50%);
	background-color: #fff;
	width: 1px;
	height: 45%;
}

.p-header__nav-item a {
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 400;
	color: #fff;
	line-height: 1.7222222222;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	transition: 0.3s;
	overflow: clip;
}

.p-header__nav-item a .text-wrap {
	position: relative;
	display: flex;
	align-items: center;
}

.p-header__nav-item a .before {
	display: flex;
	align-items: center;
}

.p-header__nav-item a .after {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
}

.p-header__nav-item a .after span {
	transform: translateY(100%);
}

.p-header__hamburger {
	display: none;
}

.p-header__hamburger span {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	display: block;
	width: 1.25rem;
	height: 2px;
	background-color: #fff;
	transition: 0.5s;
}

.p-header__hamburger span:nth-of-type(1) {
	top: -0.375rem;
}

.p-header__hamburger span:nth-of-type(2) {
	top: 0;
}

.p-header__hamburger span:nth-of-type(3) {
	top: 0.375rem;
}

.p-header__hamburger.is-open span:nth-of-type(1) {
	top: 0;
	transform: translateX(-50%) rotate(45deg);
	background-color: #fff;
}

.p-header__hamburger.is-open span:nth-of-type(2) {
	opacity: 0;
}

.p-header__hamburger.is-open span:nth-of-type(3) {
	top: -0.25rem;
	transform: translateX(-50%) rotate(-45deg);
	background-color: #fff;
}

.p-header__drawer {
	display: none;
	padding: 6.25rem 1.25rem;
	position: absolute;
	z-index: 900;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: #4c3066;
	overflow-y: scroll;
	scrollbar-width: none;
}

.p-header__drawer-item a {
	padding: 0.9375rem 0;
	display: block;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
}

.p-header__drawer-button-wrap {
	display: flex;
	justify-content: center;
	gap: 0.625rem;
	margin-top: 2rem;
}

.p-header__drawer-button a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.125rem;
	font-weight: 400;
	color: #4c3066;
	line-height: 1;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	background-color: #fff;
	padding-block: 0.625rem 0.75rem;
	padding-inline: 0.625rem;
	min-width: 8.75rem;
	border-radius: calc(infinity * 1px);
}

.p-header__drawer-sns-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1.25rem;
	margin-top: 2.5rem;
}

.p-header__drawer-sns-btn {
	max-width: 3.125rem;
}

body.is-open {
	overflow: hidden;
}

.p-jobs__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
	margin-top: 2.1875rem;
}

.p-jobs__buttons {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	-moz-column-gap: 0.9375rem;
	column-gap: 0.9375rem;
	margin-top: 5.4375rem;
}

.p-jobs__button a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: clamp(1.063rem, 0.546rem + 0.75vw, 1.188rem);
	font-weight: 500;
	color: #98959b;
	line-height: 1.7368421053;
	letter-spacing: 0.01em;
	border: 1px solid #98959b;
	border-radius: 0.375rem;
	padding-block: 0.125rem 0.1875rem;
	padding-right: 1.125rem;
	transition: 0.3s;
}

.p-jobs__button a::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: 0.375rem;
	opacity: 0;
	transition: 0.3s;
}

.p-jobs__button a span {
	position: relative;
}

.p-jobs__button a span::before {
	content: "";
	position: absolute;
	top: 55%;
	right: -1.25rem;
	transform: translateY(-50%);
	background: url(../images/arrow_down.png) no-repeat center center/contain;
	width: 0.8125rem;
	aspect-ratio: 13/14;
	transition: 0.3s;
}

.p-jobs__content {
	margin-top: 6.875rem;
}

.p-jobs__content + .p-jobs__content {
	margin-top: 5.625rem;
}

.p-jobs__content-title {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1;
	text-transform: uppercase;
	padding-left: 1.75rem;
}

.p-jobs__content-title::before {
	content: "";
	position: absolute;
	top: 55%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5rem;
	height: 80%;
	aspect-ratio: 8/19;
}

.p-jobs__infomation-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 0.9375rem;
	column-gap: 0.9375rem;
	margin-top: 3.5rem;
}

.p-jobs__infomation {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	background-color: #f0f4f8;
	border: 1px solid #707070;
	border-radius: 1.125rem;
	padding-block: 1.875rem 1.5625rem;
	padding-inline: 2.625rem;
	margin-bottom: 1rem;
}

.p-jobs__infomation-title {
	position: relative;
	font-size: 1.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4545454545;
	letter-spacing: 0.01em;
	padding-bottom: 0.3125rem;
}

.p-jobs__infomation-title::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, #707070 0%, #707070 10%, #c6c6c6 10%, #c6c6c6 100%);
}

.p-jobs__infomation-text {
	font-size: 1.0625rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7058823529;
	margin-top: 0.5625rem;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.p-jobs__infomation-button {
	text-align: right;
	margin-top: 2rem;
}

.p-jobs__infomation-button a {
	position: relative;
	display: inline-block;
	font-size: 1rem;
	font-weight: 500;
	color: #000;
	line-height: 1.75;
	letter-spacing: 0.1em;
	text-align: center;
	border: 1px solid #000;
	border-radius: calc(infinity * 1px);
	padding-block: 0.25rem 0.5rem;
	padding-right: 0.625rem;
	width: 14.8125rem;
	transition: 0.3s;
}

.p-jobs__infomation-button a::before {
	content: "";
	position: absolute;
	top: 53%;
	right: 1.5rem;
	transform: translateY(-50%);
	background: url(../images/arrow_button.png) no-repeat center center/contain;
	width: 1.25rem;
	aspect-ratio: 22/7;
	transition: 0.3s;
}

.p-loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: #fff;
	z-index: 1000;
}

.p-loader__logo {
	width: 30vw;
	max-width: 21.875rem;
	min-width: 15.625rem;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1005;
	clip-path: inset(0% 100% 0% 0%);
}

.p-lower-mv {
	padding-top: 10.4375rem;
}

.p-lower-mv__wrap {
	padding-top: 7rem;
	padding-bottom: 1.5rem;
	background: url("../images/lower-fv.jpg") no-repeat center center/cover;
}

.p-lower-mv__title {
	position: relative;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	padding-left: 1.9375rem;
}

.p-lower-mv__title::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: url(../images/diamond.png) no-repeat center center/contain;
	width: 1.25rem;
	aspect-ratio: 1;
}

.p-lower-mv__title-en {
	font-size: 4.375rem;
	font-weight: 500;
	color: #fff;
	line-height: 0.75;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	margin-top: 1.625rem;
}

.p-media-archive__category-list {
	margin-top: 7.8125rem;
}

.p-media-archive__list {
	margin-top: 5.1875rem;
}

.p-media-archive__pagination {
	margin-top: 6.25rem;
}

.p-media__inner.l-inner {
	position: relative;
	z-index: 1;
}

.p-media__ornament {
	position: absolute;
	top: 0;
	left: 70%;
	translate: -50% 0;
	max-width: 11.4375rem;
	z-index: -1;
}

.p-media__ornament img {
	aspect-ratio: 183/135;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-media__wrap {
	display: flex;
	gap: 14.25rem;
}

.p-media__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7894736842;
	letter-spacing: 0.05em;
	padding-top: 2.0625rem;
}

.p-media__list {
	margin-top: 4.375rem;
}

.p-media__button {
	text-align: center;
	margin-top: 4.6875rem;
}

.p-member-page__title {
	font-size: 2.75rem;
	font-weight: 500;
	color: #4c3066;
	line-height: 1;
	letter-spacing: 0.01em;
}

.p-member-page__outline {
	display: flex;
	gap: 7.5rem;
	margin-top: 3.4375rem;
}

.p-member-page__content {
	width: 60%;
	min-width: 41.25rem;
}

.p-member-page__content-text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
	text-align: justify;
	margin-top: 1.5625rem;
	max-width: 38.125rem;
}

.p-member-page__img {
	flex-grow: 1;
	max-width: 16.125rem;
}

.p-member-page__img img {
	aspect-ratio: 258/260;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.p-member-page__introduction {
	margin-top: 4.375rem;
}

.p-member-page__introduction + .p-member-page__introduction {
	margin-top: 8.5rem;
}

.p-member-page__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 7.5rem;
	column-gap: 7.5rem;
	margin-top: 4.6875rem;
}

.p-member-page__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	gap: 1.375rem;
	margin-bottom: 5.375rem;
}

.p-member-page__item-img img {
	aspect-ratio: 489/312;
	object-fit: cover;
	width: 100%;
	height: auto;
	border-radius: 0.9375rem;
}

.p-member-page__position {
	display: block;
	font-size: 1.25rem;
	font-weight: 500;
	color: #4c3066;
	line-height: 1;
	letter-spacing: 0.01em;
	height: -moz-fit-content;
	height: fit-content;
	margin-top: 0.75rem;
}

.p-member-page__name {
	position: relative;
	font-size: 2.375rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1;
	letter-spacing: 0.01em;
	text-transform: capitalize;
	padding-bottom: 0.875rem;
}

.p-member-page__name::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(180deg, #707070 0%, #707070 11%, #C6C6C6 11%, #C6C6C6 100%);
	width: 100%;
	height: 1px;
}

.p-member-page__name span {
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 500;
	color: #000;
	line-height: 1;
	letter-spacing: 0.01em;
	margin-left: 1.375rem;
}

.p-member-page__item-text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.6842105263;
	letter-spacing: 0.01em;
	margin-top: 0.125rem;
}

.p-member-page__item-text span {
	display: inline-block;
	font-size: 1.0625rem;
	text-indent: -1em;
	padding-left: 1em;
}

.p-member {
	overflow-x: clip;
}

.p-member__inner.l-inner {
	position: relative;
	display: flex;
	gap: 7.9375rem;
	z-index: 1;
}

.p-member__ornament01 {
	position: absolute;
	top: 0;
	left: 70%;
	translate: -50% 0;
	max-width: 11.5625rem;
	z-index: -1;
}

.p-member__ornament01 img {
	aspect-ratio: 185/149;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-member__ornament02 {
	position: absolute;
	top: 20.625rem;
	left: -11.6875rem;
	max-width: 18.5rem;
	z-index: -1;
}

.p-member__ornament02 img {
	aspect-ratio: 296/218;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-member__ornament03 {
	position: absolute;
	top: 20rem;
	left: 80%;
	translate: -50% 0;
	max-width: 13.125rem;
	z-index: -1;
}

.p-member__ornament03 img {
	aspect-ratio: 210/189;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-member__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7894736842;
	letter-spacing: 0.05em;
	padding-top: 1.875rem;
}

.p-member__slider {
	position: relative;
	margin-top: 4.6875rem;
	z-index: 1;
}

.p-member__img img {
	aspect-ratio: 308/380;
	object-fit: cover;
	width: 100%;
	height: auto;
	border-radius: 0.9375rem;
}

.p-member__content {
	padding-top: 0.625rem;
}

.p-member__position {
	font-size: 0.9375rem;
	font-weight: 400;
	color: #2b3396;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
}

.p-member__name {
	font-size: 1.3125rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.4761904762;
	letter-spacing: 0.1em;
	text-align: center;
}

.p-member__button {
	text-align: center;
	margin-top: 3.125rem;
}

.p-mv {
	position: relative;
	aspect-ratio: 1366/970;
}

.p-mv .js-fadeIns span {
	display: inline-block;
}

.p-mv__video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: clip;
}

.p-mv__video video {
	aspect-ratio: 1366/920;
	width: 100%;
	height: auto;
	object-fit: cover;
	scale: 1.2;
}

.p-mv__inner.l-inner {
	position: relative;
	height: 100%;
	max-width: 100%;
}

.p-mv__message {
	position: absolute;
	top: 38%;
	left: 3.75rem;
	transform: translateY(-50%);
}

.p-mv__title {
	display: inline-block;
	font-size: clamp(3.438rem, 0.848rem + 3.77vw, 6.875rem);
	font-weight: 500;
	color: #fff;
	line-height: 1.1;
	letter-spacing: 0.1em;
	padding-bottom: 0.625rem;
}

.p-mv__title--2nd {
	margin-top: -0.625rem;
}

.p-mv__title.js-fadeIn01 {
	overflow: clip;
}

.p-mv__title.js-fadeIn01 span {
	display: inline-block;
}

.p-mv__text {
	font-size: clamp(1.125rem, 0.56rem + 0.82vw, 1.875rem);
	font-weight: 400;
	color: #fff;
	line-height: 1.75;
	letter-spacing: 0.05em;
	margin-top: 1.75rem;
}

.p-mv__text.js-fadeIn02 {
	overflow: clip;
}

.p-mv__text.js-fadeIn02 span {
	display: inline-block;
}

.p-mv__slider {
	position: absolute;
	right: 0;
	top: 45vw;
	transform: translateY(-50%);
	background-color: #fff;
	padding-block: 1.125rem;
	padding-left: 1.875rem;
	padding-right: 1.25rem;
	border-top-left-radius: 0.875rem;
	border-bottom-left-radius: 0.875rem;
	z-index: 10;
	width: 43rem;
}

.p-mv__news-item {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.p-mv__news__meta {
	display: contents;
}

.p-mv__news-date {
	font-size: 1.0625rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1;
	letter-spacing: 0.05em;
}

.p-mv__news-category {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.05em;
	text-transform: capitalize;
	background-color: #4c3066;
	border-radius: calc(infinity * 1px);
	padding-bottom: 0.125rem;
	height: 1.5rem;
	min-width: 5.125rem;
	padding-top: 0.125rem;
	padding-inline: 0.625rem;
}

.p-mv__news-title {
	font-size: 1rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1;
	letter-spacing: 0.05em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	flex: 1;
}

.p-mv__news-button {
	margin-left: 0.375rem;
}

.p-mv__news-button p {
	position: relative;
	display: inline-block;
	font-size: 0.9375rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7333333333;
	letter-spacing: 0.1em;
	padding-right: 2.0625rem;
}

.p-mv__news-button p::before {
	content: "";
	position: absolute;
	top: 55%;
	right: 0;
	transform: translateY(-50%);
	background: url(../images/arrow_news.png) no-repeat center center/contain;
	width: 1.5rem;
	aspect-ratio: 1;
}

.p-mv__news-button p::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 75%;
	height: 1px;
	background-color: #000;
	transition: transform 0.3s;
	transform-origin: left;
	transform: scaleX(0);
}

.p-news-archive__list {
	margin-top: 5.625rem;
}

.p-news-archive__category-list {
	margin-top: 7.9375rem;
}

.p-news-archive__pagination {
	margin-top: 6.25rem;
}

.p-news {
	padding-top: 5rem;
}

.p-news__list {
	margin-top: 3.5625rem;
}

.p-news__button {
	text-align: center;
	margin-top: 3rem;
}

.p-noSubMv-breadcrumb.c-breadcrumb {
	padding-top: 12.5rem;
	color: #000;
}

.p-noSubMv-breadcrumb.c-breadcrumb a {
	color: #000;
}

.p-pager-list {
	display: flex;
	justify-content: space-between;
}

.p-pager-list__btn a {
	display: inline-block;
	padding: 10px 20px;
	color: #4c3066;
	border: 1px solid #4c3066;
}

.p-post-article__inner.l-inner {
	margin-top: 2rem;
}

.p-post-article__title {
	font-size: 3rem;
	color: #4c3066;
}

.p-post-article__info {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.p-post-article__category {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.3125rem;
}

.p-post-article__category li {
	padding: 0.3125rem;
	color: #4c3066;
	border: 1px solid #4c3066;
}

.p-post-article__box {
	margin: 6.4rem auto 0;
}

.p-post-article__content {
	padding: 1.25rem 1.4375rem 0;
	background-color: #fff;
	width: 100%;
}

.p-post-article__content-wrap {
	padding-bottom: 1.875rem;
	width: 100%;
	margin: auto;
}

.p-post-article__contents {
	margin-top: 1.875rem;
}

.p-post-article__main-img {
	aspect-ratio: 7/4;
}

.p-post-article__main-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-post-article__category {
	letter-spacing: 0;
}

.p-post-article__data {
	margin-left: auto;
	font-size: 1.3125rem;
	text-align: right;
	letter-spacing: 0.05em;
}

.p-post-article__content h2 {
	margin: 1.875rem 0 0.9375rem;
	padding: 0.3125rem 1.25rem;
	color: #fff;
	background-color: #4c3066;
	font-size: 1.75rem;
}

.p-post-article__contents h3 {
	margin: 1.875rem 0 0.9375rem;
	padding-left: 0.625rem;
	color: #4c3066;
	font-size: 1.75rem;
	border-left: 0.5em solid #4c3066;
}

.p-post-article__contents h4 {
	margin: 0.625rem 0;
	font-size: 1.5rem;
}

.p-post-article__contents h5 {
	margin: 0.625rem 0;
	padding: 0.125rem 0.78125rem;
	display: inline-block;
	color: #4c3066;
	font-size: 1.25rem;
	border-top: 2px solid #4c3066;
	border-bottom: 2px solid #4c3066;
}

.p-post-article__contents p {
	font-size: 1.25rem;
}

.p-post-article__contents a {
	color: #4c3066;
	text-decoration: underline;
}

.p-post-article__contents img {
	margin: 0.625rem 0;
}

.p-post-article__contents figure {
	margin: 0.625rem 0;
}

.p-post-article__contents figcaption {
	margin: 0.625rem 0;
	font-size: 0.75rem;
}

.p-post-card__img {
	width: 100%;
	aspect-ratio: 400/300;
}

.p-post-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-post-card__body {
	position: relative;
}

.p-post-card__info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.5rem 0;
}

.p-post-card__category li {
	padding: 0.3125rem;
	color: #4c3066;
	border: 1px solid #4c3066;
}

.p-post-card__new {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fff;
	color: #4c3066;
	padding: 0.3125rem 0.625rem;
	border: 1px solid #4c3066;
}

.p-post-connect__title {
	font-size: 1.5rem;
	color: #4c3066;
}

.p-post-connect__items {
	display: grid;
	gap: 3.125rem;
	margin-top: 1rem;
}

.p-post-content > * {
	margin-bottom: 1.5em;
}

.p-post-content h1 {
	font-size: 1.875rem;
	font-weight: 500;
	color: #4c3066;
	letter-spacing: 0.01em;
}

.p-post-content img {
	border-radius: 1.875rem;
}

.p-post-content figcaption {
	text-align: center;
}

.p-post-content h2 {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.01em;
	padding-left: 1.25rem;
	margin-top: 2.5em;
}

.p-post-content h2::before {
	content: "";
	position: absolute;
	top: 55%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5625rem;
	height: 80%;
}

.p-post-content h3 {
	font-size: 1.375rem;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.01em;
	text-decoration: underline;
	text-underline-offset: 0.3125rem;
	text-decoration-thickness: 0.125rem;
	text-decoration-color: #c6c6c6;
}

.p-post-content p,
.p-post-content li {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
}

.p-post-content ul {
	padding-left: 1em;
}

.p-post-content li {
	position: relative;
}

.p-post-content li::before {
	content: "";
	position: absolute;
	top: 0.8125rem;
	left: -0.75rem;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.3125rem;
	aspect-ratio: 1;
	border-radius: 50%;
}

.p-post-content a {
	position: relative;
	display: inline-block;
	color: #4c3066;
	border-bottom: 1px solid #4c3066;
	transition: 0.3s;
}

.p-post-content iframe {
	width: 100%;
	height: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
}

.p-post-list {
	position: relative;
}

.p-post-list__wrap {
	margin: 2rem 0;
}

.p-post-list__title {
	font-size: 3rem;
	color: theme;
}

.p-post-list__items {
	display: grid;
	gap: 3.125rem;
	margin-top: 1rem;
}

.p-post-list__cards {
	margin-top: 3rem;
}

.p-post-list__btn {
	margin-top: 1.25rem;
	text-align: center;
}

.p-privacy__text {
	font-size: 1.125rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
}

.p-privacy__definition {
	margin-top: 1.25rem;
}

.p-privacy__definition-text,
.p-privacy__definition-item {
	font-size: 1rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
}

.p-privacy__definition-item {
	text-indent: -1em;
	padding-left: 1em;
}

.p-privacy__definition-item span {
	font-weight: 700;
}

.p-privacy__content {
	padding-bottom: 6.25rem;
	margin-top: 5rem;
}

.p-privacy__content > * {
	margin-bottom: 1.875rem;
}

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

.p-privacy__content h2 {
	font-size: 1.875rem;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.01em;
}

.p-privacy__content h3 {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.01em;
	padding-left: 1.25rem;
	margin-bottom: 1rem;
}

.p-privacy__content h3::before {
	content: "";
	position: absolute;
	top: 53%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.625rem;
	aspect-ratio: 9/19;
}

.p-privacy__content h4 {
	font-size: 1.375rem;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.01em;
}

.p-privacy__content p {
	font-size: 1rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
	margin-bottom: 3.75rem;
}

.p-privacy__content a {
	position: relative;
	display: inline-block;
}

.p-privacy__content a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 0.0625rem;
	background-color: #000;
	transition: 0.3s;
}

.p-privacy__content a:hover::after {
	background-color: transparent;
}

.p-profile__items {
	margin-top: 4.875rem;
}

.p-profile__item {
	position: relative;
	display: flex;
	align-items: center;
	gap: 7.8125rem;
	padding-block: 1.75rem;
}

.p-profile__item::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: #c6c6c6;
}

.p-profile__item::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 6.6%;
	height: 1px;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
}

.p-profile__item:nth-child(3)::after,
.p-profile__item:nth-child(4)::after {
	width: 4.7%;
}

.p-profile__item:nth-child(7)::after {
	width: 8.5%;
}

.p-profile__item:nth-child(8)::after {
	width: 14.5%;
}

.p-profile__item-title,
.p-profile__item-text {
	width: 14.5454545455%;
	min-width: 10rem;
	font-size: 1.375rem;
	font-weight: 500;
	color: #000;
	line-height: 1.1818181818;
}

.p-profile__item-text {
	flex-grow: 1;
	transition: 0.3s;
}

.p-recruit-detail__inner {
	padding-bottom: 13.75rem;
}

.p-recruit-detail__container {
	border: 1px solid #707070;
	border-radius: 1.875rem;
	background-color: #f0f4f8;
	padding-top: 7.25rem;
	padding-bottom: 8.75rem;
	padding-inline: 9.375rem;
	margin-top: 7.1875rem;
}

.p-recruit-detail__title {
	font-size: 1.875rem;
	font-weight: 500;
	color: #4c3066;
	line-height: 1.4473684211;
	letter-spacing: 0.01em;
	margin-bottom: 1.5em;
}

.p-recruit-detail__content > * {
	margin-bottom: 1.5em;
}

.p-recruit-detail__content h2 {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1.625;
	letter-spacing: 0.01em;
	padding-left: 1.25rem;
}

.p-recruit-detail__content h2::before {
	content: "";
	position: absolute;
	top: 53%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5625rem;
	aspect-ratio: 9/19;
}

.p-recruit-detail__content h3 {
	font-size: 1.375rem;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.01em;
	text-decoration: underline;
	text-underline-offset: 0.3125rem;
	text-decoration-thickness: 0.125rem;
	text-decoration-color: #c6c6c6;
}

.p-recruit-detail__content p,
.p-recruit-detail__content li {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
}

.p-recruit-detail__content ul {
	padding-left: 1em;
	margin-bottom: 5.125rem;
}

.p-recruit-detail__content li {
	position: relative;
}

.p-recruit-detail__content li::before {
	content: "";
	position: absolute;
	top: 0.8125rem;
	left: -0.75rem;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.3125rem;
	aspect-ratio: 1;
	border-radius: 50%;
}

.p-recruit-detail__content iframe {
	width: 100%;
	height: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
}

.p-recruit-detail__button {
	text-align: center;
}

.p-recruit-detail__button a {
	position: relative;
	display: inline-block;
	font-size: 1.0625rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.6111111111;
	letter-spacing: 0.1em;
	text-align: center;
	padding-block: 0.75rem;
	padding-right: 1.125rem;
	min-width: 20.4375rem;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: calc(infinity * 1px);
	background-size: 200% 100%;
	transition: background-position 0.3s ease-out;
}

.p-recruit-detail__button a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.6875rem;
	transform: translateY(-50%);
	background: url(../images/arrow_button-white.png) no-repeat center center/contain;
	width: 1.375rem;
	aspect-ratio: 22/7;
}

.p-recruit-entry {
	padding-top: 7.1875rem;
	padding-bottom: 13.5rem;
}

.p-recruit-entry__title {
	font-size: 2.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4473684211;
	letter-spacing: 0.01em;
}

.p-recruit-entry__form {
	margin-top: 2.625rem;
}

.p-recruit-message__container {
	display: flex;
	justify-content: space-between;
	gap: 3.75rem;
	margin-top: 2.8125rem;
}

.p-recruit-message__video {
	max-width: 40.625rem;
}

.p-recruit-message__video video {
	width: 100%;
	height: 100%;
}

.p-recruit-message__headline {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1.7407407407;
	padding-left: 1.75rem;
	margin-top: 2.8125rem;
}

.p-recruit-message__headline::before {
	content: "";
	position: absolute;
	top: 53%;
	left: 0;
	transform: translateY(-50%);
	width: 0.5rem;
	height: 75%;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
}

.p-recruit-message__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7894736842;
	margin-top: 1.6875rem;
}

.p-recruit-message__buttons {
	display: flex;
	gap: 2.0625rem;
	margin-top: 3.125rem;
	max-width: 38.125rem;
	margin-left: auto;
}

.p-recruit-message__button {
	width: 50%;
}

.p-recruit-message__button a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.0625rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7058823529;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	background: transparent;
	border: 1px solid #000;
	border-radius: calc(infinity * 1px);
	padding-block: 0.8125rem 0.875rem;
	padding-right: 1.4375rem;
	transition: 0.3s;
}

.p-recruit-message__button a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.75rem;
	transform: translateY(-50%);
	background: url(../images/arrow_button.png) no-repeat center center/contain;
	width: 1.625rem;
	aspect-ratio: 22/7;
	transition: 0.3s;
}

.p-recruit-message__button a::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: calc(infinity * 1px);
	opacity: 0;
	transition: 0.3s;
}

.p-recruit-message__button a span {
	position: relative;
}

.p-recruit-message__img {
	flex-grow: 1;
	max-width: 25rem;
	margin-top: 0.9375rem;
}

.p-recruit-message__img img {
	aspect-ratio: 619/638;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-recruit {
	padding-block: 11.25rem;
}

.p-recruit__inner.l-inner {
	background: url(../images/recruit-background.png) no-repeat center center/contain;
	padding-top: 9.9375rem;
	padding-bottom: 14.125rem;
}

.p-recruit__main-text {
	font-size: 1.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 4.0625rem;
}

.p-recruit__sub-text {
	font-size: 1rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.5625;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 1.375rem;
}

.p-recruit__button {
	text-align: center;
	margin-top: 3.25rem;
}

.p-service-list__item {
	display: flex;
	gap: 2.8125rem;
}

.p-service-list__item + .p-service-list__item {
	margin-top: 13.5rem;
}

.p-service-list__title {
	font-size: 2.5625rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1;
	letter-spacing: 0.025em;
}

.p-service-list__subtitle {
	font-size: 0.875rem;
	font-weight: 500;
	color: #4c3066;
	line-height: 1.2142857143;
	letter-spacing: 0.1em;
	margin-top: 0.625rem;
}

.p-service-list__description {
	font-size: 1rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.625;
	letter-spacing: 0.05em;
	margin-top: 2.0625rem;
}

.p-service-list__img {
	width: 44.2176870748%;
	min-width: 16.25rem;
	max-height: 16.25rem;
	overflow: clip;
}

.p-service-list__img img {
	width: 120%;
	height: 120%;
	object-fit: cover;
	max-width: none;
}

.p-service-outline__item + .p-service-outline__item {
	margin-top: 3.125rem;
}

.p-service-outline__title {
	position: relative;
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5789473684;
	letter-spacing: 0.05em;
	padding-left: 0.7em;
}

.p-service-outline__title::before {
	content: "";
	position: absolute;
	top: 53%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.3125rem;
	aspect-ratio: 1;
	border-radius: 50%;
}

.p-service-outline__buttons {
	display: flex;
	flex-wrap: wrap;
	-moz-column-gap: 1.5625rem;
	column-gap: 1.5625rem;
	row-gap: 1.25rem;
	margin-top: 1.875rem;
}

.p-service-outline__button a {
	position: relative;
	display: inline-block;
	font-size: 1.1875rem;
	font-weight: 500;
	color: #98959b;
	line-height: 1.7368421053;
	padding-block: 0.125rem 0.1875rem;
	padding-left: 1.375rem;
	padding-right: 3.125rem;
	border-radius: 0.375rem;
	border: 1px solid #98959b;
	transition: 0.3s;
}

.p-service-outline__button a::after {
	content: "";
	position: absolute;
	top: 55%;
	right: 1.25rem;
	transform: translateY(-50%);
	background: url(../images/arrow_down.png) no-repeat center center/contain;
	width: 0.8125rem;
	aspect-ratio: 13/14;
	transition: 0.3s;
}

.p-service-outline__button a::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	border-radius: 0.3125rem;
	opacity: 0;
	transition: 0.3s;
}

.p-service-outline__button a span {
	position: relative;
}

.p-service__container {
	display: flex;
	gap: 7.9375rem;
}

.p-service__wrap {
	width: 35%;
	min-width: 24.0625rem;
}

.p-service__sticky {
	position: sticky;
	top: 15.625rem;
	left: 0;
}

.p-service__button {
	margin-top: 3.125rem;
}

.p-service__content {
	position: relative;
	padding-top: 2.0625rem;
	z-index: 1;
}

.p-service__ornament {
	position: sticky;
	top: 12.5rem;
	margin-top: -9.375rem;
	left: 68%;
	translate: -50% 0;
	max-width: 15.875rem;
	z-index: -1;
}

.p-service__ornament img {
	aspect-ratio: 254/208;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-service__text {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #2d2d2d;
	line-height: 1.7894736842;
	letter-spacing: 0.05em;
	max-width: 35rem;
}

.p-service__list {
	margin-top: 16.125rem;
}

.p-single {
	padding-top: 3.3125rem;
}

.p-single__container {
	background-color: #f0f4f8;
	border-radius: 1.875rem;
	border: 1px solid #707070;
	padding-top: 4.75rem;
	padding-bottom: 4.5625rem;
	padding-inline: 9.375rem;
}

.p-single__meta {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	padding-bottom: 0.875rem;
}

.p-single__meta::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, #707070 0%, #707070 8%, #c6c6c6 8%, #c6c6c6 100%);
}

.p-single__category {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	background-color: #4c3066;
	border-radius: calc(infinity * 1px);
	padding-block: 0.25rem 0.3125rem;
	padding-inline: 0.625rem;
	min-width: 5.125rem;
}

.p-single__date-wrap {
	display: contents;
}

.p-single__modify-date,
.p-single__post-date {
	position: relative;
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 500;
	color: #000;
	line-height: 1;
	letter-spacing: 0.01em;
	padding-top: 0.25rem;
	padding-left: 1.75rem;
}

.p-single__modify-date::before,
.p-single__post-date::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 1.1875rem;
	aspect-ratio: 1;
}

.p-single__modify-date::before {
	background: url(../images/modify_date.png) no-repeat center center/contain;
}

.p-single__post-date::before {
	background: url(../images/post_date.png) no-repeat center center/contain;
}

.p-single__content {
	margin-top: 3.75rem;
}

.p-single__pagination {
	margin-top: 5rem;
}

.p-strength__container {
	margin-top: 5.1875rem;
}

.p-strength__heading {
	position: relative;
	font-size: 1.6875rem;
	font-weight: 700;
	color: #000;
	line-height: 1;
	padding-left: 1.5625rem;
}

.p-strength__heading::before {
	content: "";
	position: absolute;
	top: 57%;
	left: 0;
	transform: translateY(-50%);
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.5rem;
	height: 75%;
	aspect-ratio: 8/19;
}

.p-strength__outline {
	font-size: 1.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4090909091;
	letter-spacing: 0.01em;
	margin-top: 3rem;
}

.p-strength__text {
	font-size: clamp(1.125rem, 0.923rem + 0.29vw, 1.188rem);
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
	margin-top: 1.25rem;
}

.p-strength__img-wrap .scroll-hint-icon {
	top: 50%;
	left: 50%;
	translate: -50% -50%;
}

.p-strength__img img {
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-strength__container:nth-of-type(2) .p-strength__body {
	margin-top: 3.75rem;
}

.p-strength__list-item + .p-strength__list-item {
	margin-top: 6.875rem;
}

.p-strength__list-item-title {
	font-size: 1.375rem;
	font-weight: 700;
	color: #4c3066;
	line-height: 1.4090909091;
	letter-spacing: 0.01em;
}

.p-strength__list-item:nth-child(2) .p-strength__sublist {
	margin-top: 2.5rem;
}

.p-strength__sublist-item + .p-strength__sublist-item {
	margin-top: 1.875rem;
}

.p-strength__sublist-item-title {
	position: relative;
	text-indent: -1em;
	padding-left: 1em;
	margin-left: 0.6em;
}

.p-strength__sublist-item-title::before {
	content: "";
	position: absolute;
	top: 0.8em;
	left: -0.8em;
	background: linear-gradient(90deg, rgb(115, 0, 233) 0%, rgb(148, 39, 243) 40%, rgb(176, 72, 251) 75%, rgb(187, 85, 255) 100%);
	width: 0.3125rem;
	aspect-ratio: 1;
	border-radius: 50%;
}

.p-strength__sublist-item-title,
.p-strength__sublist-text,
.p-strength__description {
	font-size: 1.1875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.7368421053;
}

.p-strength__description + .p-strength__description {
	margin-top: 2.8125rem;
}

.p-thanks {
	padding-block: 11.25rem;
}

.p-thanks__inner.l-inner {
	background: url(../images/recruit-background.png) no-repeat center center/contain;
	padding-top: 9.9375rem;
	padding-bottom: 14.125rem;
}

.p-thanks__main-text {
	font-size: 1.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 4.0625rem;
}

.p-thanks__sub-text {
	font-size: 1rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.5625;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 2.5rem;
}

.p-thanks__button {
	text-align: center;
	margin-top: 3.25rem;
}

.u-flex {
	display: flex;
	gap: 2px;
}

.u-font14 {
	font-size: 0.875rem;
}

.u-font16 {
	font-size: 1rem;
}

.u-font18 {
	font-size: 1.125rem;
}

.u-font20 {
	font-size: 1.25rem;
}

.u-font22 {
	font-size: 1.375rem;
}

.u-font24 {
	font-size: 1.5rem;
}

.u-font28 {
	font-size: 1.75rem;
}

.u-font32 {
	font-size: 2rem;
}

.u-font40 {
	font-size: 2.5rem;
}

.u-hover {
	transition: opacity 0.5s;
}

.u-hover:hover {
	opacity: 0.6;
	transition: opacity 0.5s;
}

.u-lh10 {
	line-height: 1;
}

.u-lh13 {
	line-height: 1.3;
}

.u-lh15 {
	line-height: 1.5;
}

.u-lh16 {
	line-height: 1.6;
}

.u-lh20 {
	line-height: 2;
}

.u-ls05 {
	letter-spacing: 0.05em;
}

.u-ls10 {
	letter-spacing: 0.1em;
}

.u-ls15 {
	letter-spacing: 0.15em;
}

.u-ls20 {
	letter-spacing: 0.2em;
}

.u-mt10 {
	margin-top: 10px !important;
	margin-top: 0.625rem !important;
}

.u-mt20 {
	margin-top: 20px !important;
	margin-top: 1.25rem !important;
}

.u-mt30 {
	margin-top: 30px !important;
	margin-top: 1.875rem !important;
}

.u-mt40 {
	margin-top: 40px !important;
	margin-top: 2.5rem !important;
}

.u-mt50 {
	margin-top: 50px !important;
	margin-top: 3.125rem !important;
}

.u-mt60 {
	margin-top: 60px !important;
	margin-top: 3.75rem !important;
}

.u-mt70 {
	margin-top: 70px !important;
	margin-top: 4.375rem !important;
}

.u-mt80 {
	margin-top: 80px !important;
	margin-top: 5rem !important;
}

.u-mt90 {
	margin-top: 90px !important;
	margin-top: 5.625rem !important;
}

.u-mt100 {
	margin-top: 100px !important;
	margin-top: 6.25rem !important;
}

.u-mt110 {
	margin-top: 110px !important;
	margin-top: 6.875rem !important;
}

.u-mt120 {
	margin-top: 120px !important;
	margin-top: 7.5rem !important;
}

.u-mt130 {
	margin-top: 130px !important;
	margin-top: 8.125rem !important;
}

.u-mt140 {
	margin-top: 140px !important;
	margin-top: 8.75rem !important;
}

.u-mt150 {
	margin-top: 150px !important;
	margin-top: 9.375rem !important;
}

.u-mt160 {
	margin-top: 160px !important;
	margin-top: 10rem !important;
}

.u-mt170 {
	margin-top: 170px !important;
	margin-top: 10.625rem !important;
}

.u-mt180 {
	margin-top: 180px !important;
	margin-top: 11.25rem !important;
}

.u-mt190 {
	margin-top: 190px !important;
	margin-top: 11.875rem !important;
}

.u-mt200 {
	margin-top: 200px !important;
	margin-top: 12.5rem !important;
}

.u-shadow {
	box-shadow: 0 0 13px rgba(255, 0, 0, 0.5);
}

.u-sp {
	display: none;
}

.u-textLeft {
	text-align: Left !important;
}

.u-textCenter {
	text-align: Center !important;
}

.u-textRight {
	text-align: Right !important;
}

.u-textJustify {
	text-align: Justify !important;
}

.u-w300 {
	font-weight: 300;
}

.u-w400 {
	font-weight: 400;
}

.u-w500 {
	font-weight: 500;
}

.u-w600 {
	font-weight: 600;
}

.u-w700 {
	font-weight: 700;
}

.u-w900 {
	font-weight: 900;
}

@media (any-hover: hover) {

.c-breadcrumb a:hover {
	opacity: 0.7;
}

.c-button a:hover {
	background-color: #4c3066;
	color: #fff;
	border-color: #4c3066;
}

.c-button a:hover::before {
	background-image: url("../images/arrow_button-white.png");
}

.c-button.c-button--reverse a:hover {
	background-position: 100% 0;
}

.c-category-list__link:hover {
	color: #fff;
}

.c-category-list__link:hover::before {
	opacity: 1;
}

.c-news-list__link:hover .c-news-list__item-title::before {
	opacity: 1;
}

.c-pagination01 a.page-link:hover {
	color: #fff;
}

.c-pagination01 a.page-link:hover::before {
	opacity: 1;
}

.c-pagination01 span.page-numbers.prev.page-numbers:hover,
.c-pagination01 a.page-numbers.prev.page-numbers:hover {
	opacity: 0.7;
}

.c-pagination01 span.page-numbers.next.page-numbers:hover,
.c-pagination01 a.page-numbers.next.page-numbers:hover {
	opacity: 0.7;
}

.p-bottom__link img:hover {
	scale: 1.1;
}

.p-document-download__link:hover {
	background: #4c3066;
	color: #fff;
	border-color: #4c3066;
}

.p-document-download__link:hover::before {
	background: url("../images/arrow_button-white.png") no-repeat center center/contain;
}

.p-footer__nav-item a:hover {
	color: #4c3066;
}

.p-footer__privacy a:hover {
	border-color: transparent;
}

.p-footer__sns-item a:hover {
	opacity: 0.7;
}

.p-formBtn input:hover {
	background-position: 100% 0;
}

.p-form__privacy-link:hover::before {
	background-color: transparent;
}

.p-header.p-header--lower .p-header__sns-btn:hover {
	opacity: 0.7;
}

.p-header.p-header--lower .p-header__button a:hover {
	background-color: #fff;
	color: #4c3066;
	border: 1px solid #4c3066;
}

.p-header__logo:hover {
	opacity: 0.7;
}

.p-header__button a:hover {
	background-color: #4c3066;
	color: #fff;
	border: 1px solid #fff;
}

.p-header__sns-link:hover {
	opacity: 0.7;
}

.p-jobs__button a:hover {
	color: #fff;
}

.p-jobs__button a:hover::before {
	opacity: 1;
}

.p-jobs__button a:hover::after {
	background: url(../images/arrow_button-white.png) no-repeat center center/contain;
}

.p-jobs__button a:hover span::before {
	background: url(../images/arrow_down-white.png) no-repeat center center/contain;
}

.p-jobs__infomation-button a:hover {
	background-color: #4c3066;
	color: #fff;
	border-color: #4c3066;
}

.p-jobs__infomation-button a:hover::before {
	background: url(../images/arrow_button-white.png) no-repeat center center/contain;
}

.p-mv__news-item:hover .p-mv__news-button p::after {
	transform: scaleX(1);
}

.p-post-content a:hover {
	border-color: transparent;
}

.p-profile__item-text:hover {
	color: #4c3066;
}

.p-recruit-detail__button a:hover {
	background-position: 100% 0;
}

.p-recruit-message__button a:hover {
	color: #fff;
}

.p-recruit-message__button a:hover::before {
	opacity: 1;
}

.p-recruit-message__button a:hover::after {
	background: url(../images/arrow_button-white.png) no-repeat center center/contain;
}

.p-service-outline__button a:hover {
	color: #fff;
}

.p-service-outline__button a:hover::before {
	opacity: 1;
}

.p-service-outline__button a:hover::after {
	background: url(../images/arrow_down-white.png) no-repeat center center/contain;
}

}

@media screen and (min-width: 768px) {

.p-formBtn input:disabled:hover {
	cursor: not-allowed;
}

}

@media screen and (min-width: 1441px) {

.p-mv__message {
	left: 10vw;
}

}

@media screen and (max-width: 1150px) {

.p-document__lead {
	font-size: 1.125rem;
}

.p-document__form .p-formCheckbox input + span {
	font-size: 1.125rem;
}

.p-document__form .p-form__acceptance {
	font-size: 1.125rem;
}

}

@media screen and (max-width: 1120px) {

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

}

@media (max-width: 1100px) {

html {
	font-size: 1.4545454545vw;
}

}

@media screen and (max-width: 1100px) {

.p-member-page__list {
	-moz-column-gap: 3.75rem;
	column-gap: 3.75rem;
}

}

@media screen and (max-width: 1024px) {

.p-document__heading {
	font-size: 2.25rem;
}

}

@media screen and (max-width: 767px) {

html {
	font-size: 16px;
}

.l-business {
	margin-top: 3.75rem;
}

.l-ceo {
	margin-top: 5.625rem;
}

.l-company {
	margin-top: 5rem;
}

.l-definition {
	margin-top: 3.75rem;
}

.l-faq {
	margin-top: 3.75rem;
}

.l-form {
	margin-top: 3.125rem;
}

.l-inner {
	padding-inline: 20px;
}

.l-jobs {
	margin-top: 5.625rem;
}

.l-media {
	margin-top: 5rem;
}

.l-member-page {
	margin-top: 5.625rem;
}

.l-member {
	margin-top: 5rem;
}

.l-privacy {
	margin-top: 3.75rem;
}

.l-recruit-detail {
	margin-top: 3.75rem;
}

.l-recruit-message {
	margin-top: 3.75rem;
}

.l-recruit {
	margin-top: 3.75rem;
	margin-bottom: 0.375rem;
}

.l-recruit.l-recruit--document {
	margin-bottom: 0rem;
}

.l-service-outline {
	margin-top: 3.75rem;
}

.l-service {
	margin-top: 5rem;
}

.l-strength {
	margin-top: 5rem;
}

.l-wrapper {
	border-top-left-radius: 3.75rem;
	margin-top: -13.75rem;
}

.c-breadcrumb {
	margin-top: 1.25rem;
}

.c-breadcrumb span[property=name] {
	max-width: 9.375rem;
}

.c-button a {
	font-size: 0.875rem;
	min-width: 15rem;
}

.c-category-list {
	gap: 0.75rem;
}

.c-category-list__link {
	font-size: 0.875rem;
	line-height: 1.4285714286;
	min-width: 6.25rem;
	min-height: 1.5625rem;
	padding-inline: 0.625rem;
}

.c-column2 {
	grid-template-columns: repeat(1, 1fr);
	gap: 0.625rem;
}

.c-column2--gap60 {
	gap: 0.625rem;
}

.c-column2--gapSp20 {
	gap: 0.625rem;
}

.c-column3 {
	grid-template-columns: repeat(1, 1fr);
}

.c-column4 {
	grid-template-columns: repeat(1, 1fr);
}

.c-column4--sp2 {
	grid-template-columns: repeat(2, 1fr);
}

.c-media-list {
	grid-template-columns: 1fr;
	gap: 3.125rem;
}

.c-media-list__meta {
	gap: 1.25rem;
	margin-top: 0.375rem;
}

.c-media-list__date {
	font-size: 0.875rem;
}

.c-media-list__category {
	font-size: 0.75rem;
	min-width: 3.75rem;
	min-height: 1.125rem;
}

.c-media-list__title {
	font-size: 1rem;
	margin-top: 0.3125rem;
	-webkit-line-clamp: 2;
}

.c-news-list__link {
	flex-direction: column;
	gap: 0.9375rem;
	padding-block: 1.875rem;
}

.c-news-list__img {
	width: 100%;
}

.c-news-list__content {
	width: 100%;
}

.c-news-list__meta {
	gap: 1.125rem;
}

.c-news-list__category {
	padding-block: 0.25rem 0.3125rem;
	padding-inline: 0.75rem;
}

.c-news-list__date {
	font-size: 0.875rem;
}

.c-news-list__item-title {
	font-size: 1rem;
	margin-top: 0.5rem;
}

.c-pagination01 span.page-numbers.prev.page-numbers,
.c-pagination01 a.page-numbers.prev.page-numbers {
	padding-left: 1.375rem;
	margin-right: 0;
}

.c-pagination01 span.page-numbers.next.page-numbers,
.c-pagination01 a.page-numbers.next.page-numbers {
	padding-right: 1.375rem;
	margin-left: 0;
}

.c-sub-title {
	font-size: 1.5rem;
	line-height: 1.2;
}

.c-sub-title::before {
	top: 50%;
	height: 80%;
}

.c-title-group__ja {
	font-size: 0.75rem;
	padding-left: 1.25rem;
}

.c-title-group__ja::before {
	width: 1rem;
}

.c-title-group__en {
	font-size: 2.5rem;
	margin-top: 0.3125rem;
}

.c-title-group02__ja {
	font-size: 0.75rem;
}

.c-title-group02__en {
	font-size: 2.5rem;
	margin-top: 0.3125rem;
}

.p-404 {
	padding-top: 5.625rem;
	padding-bottom: 4.375rem;
	background: url(../images/recruit-background.png) no-repeat center center/contain;
	margin-top: 3.75rem;
}

.p-404__inner.l-inner {
	background: none;
	padding-top: 0;
	padding-bottom: 1.25rem;
	max-width: 37.5rem;
}

.p-404__main-text {
	font-size: 1.25rem;
	line-height: 1.5;
	margin-top: 1.875rem;
}

.p-404__sub-text {
	font-size: 0.875rem;
	margin-top: 1rem;
}

.p-404__button {
	margin-top: 1.875rem;
}

.p-about {
	padding-top: 6.25rem;
}

.p-about__container {
	position: relative;
	flex-direction: column;
	gap: 0rem;
	max-width: 31.25rem;
	margin-inline: auto;
	z-index: 1;
}

.p-about__content {
	display: contents;
	width: 100%;
}

.p-about__ornament {
	top: 12%;
	left: 50%;
	translate: -50% 0;
	width: 11.25rem;
}

.p-about__title-group {
	order: 1;
}

.p-about__text {
	font-size: 0.875rem;
	margin-top: 1.25rem;
	order: 2;
}

.p-about__button {
	text-align: center;
	margin-top: 1.875rem;
}

.p-about__img {
	width: 100%;
	margin-top: 3.75rem;
	order: 3;
}

.p-about__button {
	order: 4;
}

.p-bottom__link {
	padding-top: 6.25rem;
	aspect-ratio: initial;
}

.p-bottom__title-group {
	margin-left: 0.625rem;
	padding-right: 0;
}

.p-bottom__link-title-en {
	font-size: 1.9375rem;
	margin-top: 0.3125rem;
}

.p-business__items {
	margin-top: 3.125rem;
	max-width: 31.25rem;
	margin-inline: auto;
}

.p-business__item + .p-business__item {
	margin-top: 5rem;
}

.p-business__item:nth-child(2n) .p-business__item-title-group {
	margin-left: revert;
}

.p-business__item-title {
	font-size: clamp(1.625rem, 0.875rem + 3.2vw, 1.875rem);
}

.p-business__item-subtitle {
	font-size: 0.75rem;
}

.p-business__item-container {
	display: contents;
	gap: 2.5rem;
	margin-top: 1.25rem;
}

.p-business__item:nth-child(2n) .p-business__item-container {
	flex-direction: column;
}

.p-business__item-block {
	position: relative;
	width: 100%;
}

.p-business__item-img {
	position: absolute;
	top: -4.5rem;
	right: 0;
	width: 5.625rem;
	height: 5.625rem;
	max-width: initial;
	max-height: initial;
}

.p-business__item:nth-child(4) .p-business__item-img {
	top: -3.125rem;
}

.p-business__item:nth-child(2n) .p-business__button {
	text-align: right;
}

.p-business__body {
	margin-top: 1.875rem;
}

.p-business__headline {
	font-size: 1.25rem;
}

.p-business__text,
.p-business__list-item {
	font-size: 1rem;
}

.p-ceo__container {
	flex-direction: column;
	gap: 1.25rem;
	margin-top: 2.5rem;
}

.p-ceo__img {
	width: 100%;
	max-width: 25rem;
	margin-inline: auto;
	min-width: initial;
}

.p-ceo__content {
	width: 100%;
}

.p-ceo__content-text {
	font-size: 0.9375rem;
}

.p-ceo__content-text + .p-ceo__content-text {
	margin-top: 1.25rem;
}

.p-ceo__name {
	font-size: 1.0625rem;
	margin-top: 1.25rem;
}

.p-company {
	padding-top: 1.875rem;
	padding-bottom: 2.5rem;
}

.p-company::before {
	width: 28vw;
	max-width: 9.375rem;
}

.p-company::after {
	width: 38vw;
	max-width: 10.625rem;
}

.p-company__text {
	font-size: 0.875rem;
	line-height: 1.5;
	margin-top: 1.25rem;
}

.p-company__button {
	margin-top: 1.875rem;
}

.p-contact__btn-wrap {
	flex-direction: row;
	gap: 2.5rem;
}

.p-definition__items {
	margin-top: 2.5rem;
}

.p-definition__item {
	flex-direction: column;
	gap: 1.875rem;
}

.p-definition__item-block {
	width: 100%;
}

.p-definition__item-highlight {
	font-size: 1.125rem;
}

.p-definition__item-text,
.p-definition__list-item {
	font-size: 0.9375rem;
}

.p-definition__item-text {
	margin-top: 1.25rem;
}

.p-definition__item-list {
	margin-top: 1.25rem;
}

.p-document-download {
	padding-top: 3.75rem;
}

.p-document-download__inner.l-inner {
	max-width: 31.25rem;
}

.p-document-download__text {
	font-size: 1rem;
	line-height: 1.625;
}

.p-document-download__list {
	grid-template-columns: 1fr;
	margin-top: 2.5rem;
}

.p-document-download__card:nth-child(n+3) {
	margin-top: 0;
}

.p-document-download__card + .p-document-download__card {
	margin-top: 1.875rem;
}

.p-document-download__title {
	font-size: 1.25rem;
	margin-top: 1.25rem;
}

.p-document-download__description {
	font-size: 1rem;
	margin-top: 1rem;
}

.p-document-download__button {
	margin-top: 1.875rem;
}

.p-document-download__link {
	font-size: 0.875rem;
	line-height: 1.7142857143;
	padding-block: 0.5rem 0.625rem;
	padding-inline: 1.25rem 3.125rem;
}

.p-document {
	padding-top: 3.75rem;
}

.p-document__inner.l-inner {
	max-width: 31.25rem;
}

.p-document__wrapper {
	flex-direction: column;
	gap: 3.75rem;
}

.p-document__content {
	width: 100%;
}

.p-document__heading {
	font-size: 1.625rem;
}

.p-document__img {
	margin-top: 1.25rem;
}

.p-document__body {
	margin-top: 1.875rem;
}

.p-document__lead {
	padding-bottom: 0.375rem;
	margin-top: 1.25rem;
}

.p-document__description,
.p-document__list,
.p-document__note {
	font-size: 1rem;
}

.p-document__item::before {
	top: 0.75rem;
}

.p-document__form-area {
	width: 100%;
}

.p-document__form .p-form__title {
	width: 36%;
}

.p-document__form .p-formCheckbox input + span {
	font-size: clamp(0.813rem, -0.594rem + 6vw, 1rem);
}

.p-document__form .p-form__acceptance {
	font-size: clamp(0.813rem, -0.594rem + 6vw, 1rem);
}

.p-faq {
	padding-bottom: 5rem;
}

.p-faq__items {
	margin-top: 1.875rem;
}

.p-faq__question {
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
	padding-left: 3.75rem;
	padding-right: 0.875rem;
}

.p-faq__question::before {
	left: 1rem;
	font-size: 1.375rem;
	width: 2.1875rem;
}

.p-faq__question-text {
	font-size: 1.125rem;
}

.p-faq__question-icon {
	min-width: 1.25rem;
	height: 1.25rem;
}

.p-faq__answer::before {
	top: 1.25rem;
	left: 1rem;
	font-size: 1.375rem;
	width: 2.1875rem;
}

.p-faq__answer__text {
	font-size: 1rem;
	padding-left: 3.75rem;
	padding-right: 0.875rem;
}

.p-footer {
	padding-top: 3.75rem;
	padding-bottom: 1.875rem;
}

.p-footer__logo {
	max-width: 12.5rem;
}

.p-footer__nav-list {
	flex-direction: column;
	gap: 0.9375rem;
}

.p-footer__nav-item:nth-child(n+2)::before {
	content: none;
}

.p-form__item {
	flex-direction: column;
	gap: 1rem;
}

.p-form__title {
	width: -moz-fit-content;
	width: fit-content;
	font-size: 1rem;
}

.p-form__title--must::before {
	right: initial;
	left: calc(100% + 0.75rem);
}

.p-form__input {
	width: 100%;
}

.p-formInput input {
	width: 100%;
	height: 50px;
	margin-left: 0;
	padding-left: 0.9375rem;
}

.p-formInput__address input {
	width: 100%;
}

.p-formSelect select {
	width: 100%;
	height: 50px;
}

.p-formDate__flex {
	gap: 20px;
	align-items: flex-start;
}

.p-form__dataBlock {
	flex: 1;
}

.p-form__dataBlockLabel {
	display: none;
}

.p-form__dataBlockDate {
	width: 100%;
}

.p-formCalendar input {
	width: 100%;
	height: 50px;
	padding-left: 0.9375rem;
}

.Android .p-formCalendar input {
	padding-left: 15px;
}

.p-form__dataBlockSelect {
	width: 100%;
}

.p-formNumber__flex {
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
}

.p-formNumber__blockLabel01 {
	width: 55px;
}

.p-formNumber__blockInput {
	flex: 1;
	margin-right: 20px;
}

.p-formRadio .wpcf7-radio {
	grid-template-columns: 1fr;
}

.p-formTextarea textarea {
	width: 100%;
	margin-left: 0;
	padding-left: 15px;
}

.p-form__privacy {
	text-align: left;
}

.p-form__acceptance {
	margin-top: 1.875rem;
	text-align: left;
}

.p-form__acceptance input + span {
	font-size: 0.875rem;
}

.p-form__submit {
	margin-top: 1.875rem;
}

.wpcf7 form.sent .wpcf7-response-output {
	font-size: 16px;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	font-size: 16px;
}

.p-formFile {
	padding-top: 0;
}

.p-header {
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
}

.p-header__inner.l-inner {
	padding-right: 0rem;
}

.p-header__logo {
	max-width: 11.25rem;
}

.p-header__nav {
	display: none;
}

.p-header__hamburger {
	display: block;
	position: relative;
	z-index: 999;
	width: 2.5rem;
	height: inherit;
	cursor: pointer;
	transition: 0.3s;
}

.p-jobs__text {
	font-size: 1rem;
	margin-top: 1.25rem;
}

.p-jobs__buttons {
	grid-template-columns: 1fr;
	margin-top: 1.875rem;
}

.p-jobs__button + .p-jobs__button {
	margin-top: 1rem;
}

.p-jobs__button a {
	font-size: 1rem;
}

.p-jobs__content + .p-jobs__content {
	margin-top: 3.75rem;
}

.p-jobs__infomation-list {
	grid-template-columns: 1fr;
	margin-top: 1.875rem;
}

.p-jobs__infomation {
	padding-block: 1.25rem;
	padding-inline: 1.25rem;
}

.p-jobs__infomation-title {
	font-size: 1.25rem;
}

.p-jobs__infomation-text {
	font-size: 0.875rem;
}

.p-lower-mv {
	padding-top: 3.75rem;
}

.p-lower-mv__wrap {
	padding-top: 4.0625rem;
}

.p-lower-mv__title-en {
	font-size: 2.5rem;
	margin-top: 0.625rem;
}

.p-media-archive__category-list {
	margin-top: 3.75rem;
}

.p-media-archive__list {
	margin-top: 2.5rem;
	max-width: 31.25rem;
	margin-inline: auto;
}

.p-media-archive__pagination {
	margin-top: 2.5rem;
}

.modaal-video-wrap {
	margin: 0 !important;
}

.p-media__inner.l-inner {
	max-width: 31.25rem;
}

.p-media__wrap {
	flex-direction: column;
	gap: 1.875rem;
}

.p-media__text {
	font-size: 0.875rem;
	padding-top: 0;
}

.p-media__list {
	margin-top: 2.5rem;
}

.p-media__button {
	margin-top: 1.875rem;
}

.p-member-page__inner.l-inner {
	max-width: 31.25rem;
}

.p-member-page__title {
	font-size: 1.875rem;
}

.p-member-page__outline {
	flex-direction: column-reverse;
	gap: 1.25rem;
	margin-top: 1.875rem;
}

.p-member-page__content {
	width: 100%;
	min-width: initial;
}

.p-member-page__content-text {
	font-size: 1rem;
}

.p-member-page__img {
	margin-inline: auto;
}

.p-member-page__introduction + .p-member-page__introduction {
	margin-top: 2.5rem;
}

.p-member-page__list {
	grid-template-columns: 1fr;
	margin-top: 1.875rem;
}

.p-member-page__item {
	gap: 0.625rem;
	min-width: 0;
	margin-bottom: 4.0625rem;
}

.p-member-page__position {
	font-size: 0.8125rem;
}

.p-member-page__name {
	font-size: 1.5625rem;
}

.p-member-page__name span {
	font-size: 1rem;
}

.p-member-page__item-text {
	font-size: 1rem;
}

.p-member-page__item-text span {
	font-size: 0.875rem;
}

.p-member__inner.l-inner {
	flex-direction: column;
	gap: 1.875rem;
}

.p-member__ornament01 {
	top: 5rem;
	left: 50%;
	translate: -50% 0;
	max-width: 6.25rem;
}

.p-member__ornament03 {
	top: 15.625rem;
	left: 50%;
	max-width: 11.25rem;
}

.p-member__text {
	font-size: 0.875rem;
	padding-top: 0;
}

.p-member__slider {
	margin-top: 1.875rem;
}

.p-member__position {
	font-size: 0.75rem;
}

.p-member__name {
	font-size: 1rem;
	line-height: 1.2;
}

.p-member__button {
	margin-top: 1.875rem;
}

.p-mv {
	aspect-ratio: 9/19.5;
}

.p-mv__video video {
	aspect-ratio: 9/19.5;
}

.p-mv__message {
	top: 32%;
	left: 1.25rem;
}

.p-mv__title {
	font-size: 2.8125rem;
	line-height: 1;
}

.p-mv__title--2nd {
	margin-top: 0;
}

.p-mv__text {
	font-size: 1.1875rem;
	line-height: 1.5;
}

.p-mv__slider {
	top: 63%;
	width: 90%;
	padding-block: 0.4375rem 0.3125rem;
}

.p-mv__news-item {
	flex-direction: column;
	align-items: flex-start;
	gap: 0.625rem;
}

.p-mv__news__meta {
	display: flex;
	align-items: center;
	gap: 0.625rem;
}

.p-mv__news-date {
	font-size: 0.9375rem;
}

.p-mv__news-category {
	font-size: 0.75rem;
	min-width: 3.75rem;
}

.p-mv__news-title {
	font-size: 0.875rem;
}

.p-mv__news-button {
	display: none;
}

.p-mv__news-button p {
	font-size: 0.75rem;
}

.p-mv__news-button p::before {
	width: 1rem;
}

.p-news-archive__list {
	margin-top: 2.5rem;
	max-width: 31.25rem;
	margin-inline: auto;
}

.p-news-archive__category-list {
	margin-top: 2.5rem;
}

.p-news-archive__pagination {
	margin-top: 2.5rem;
}

.p-news__inner.l-inner {
	max-width: 31.25rem;
}

.p-news__list {
	margin-top: 1.875rem;
}

.p-noSubMv-breadcrumb.c-breadcrumb {
	padding-top: 6.25rem;
}

.p-post-connect__items {
	row-gap: 2.5rem;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
	grid-template-columns: repeat(4, 1fr);
}

.p-post-content h1 {
	font-size: 1.375rem;
}

.p-post-content img {
	border-radius: 0.9375rem;
}

.p-post-content h2 {
	font-size: 1.25rem;
}

.p-post-content h2::before {
	top: 50%;
	height: 80%;
}

.p-post-content h3 {
	font-size: 1.125rem;
	text-underline-offset: 0.1875rem;
}

.p-post-content p,
.p-post-content li {
	font-size: 1rem;
}

.p-post-list__items {
	row-gap: 2.5rem;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
	grid-template-columns: repeat(4, 1fr);
}

.p-post-list__cards {
	margin-top: 6.25rem;
}

.p-post-list__btn {
	margin: 1.75rem auto 0;
	width: 100%;
	max-width: calc(61.25rem + 50px);
	padding: 0 0.625rem;
}

.p-privacy {
	padding-bottom: 2.5rem;
}

.p-privacy__text {
	font-size: 1rem;
}

.p-privacy__definition-text,
.p-privacy__definition-item {
	font-size: 0.875rem;
}

.p-privacy__content {
	padding-bottom: 2.5rem;
}

.p-privacy__content > * {
	margin-bottom: 1.25rem;
}

.p-privacy__content h2 {
	font-size: 1.5rem;
}

.p-privacy__content h3 {
	font-size: 1.25rem;
}

.p-privacy__content h3::before {
	top: 50%;
	height: 80%;
}

.p-privacy__content h4 {
	font-size: 1.125rem;
}

.p-privacy__content p {
	font-size: 0.875rem;
}

.p-profile__inner.l-inner {
	max-width: 31.25rem;
	padding-inline: 0.9375rem;
}

.p-profile__title-group .c-title-group02__en {
	font-size: 2.375rem;
}

.p-profile__items {
	margin-top: 1.25rem;
}

.p-profile__item {
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
}

.p-profile__item::after {
	width: 6.25rem;
}

.p-profile__item:nth-child(3)::after,
.p-profile__item:nth-child(4)::after {
	width: 6.25rem;
}

.p-profile__item:nth-child(7)::after {
	width: 6.25rem;
}

.p-profile__item:nth-child(8)::after {
	width: 6.25rem;
}

.p-profile__item-title,
.p-profile__item-text {
	font-size: 1rem;
}

.p-profile__item-text {
	width: 100%;
}

.p-recruit-detail__inner {
	padding-bottom: 6.25rem;
}

.p-recruit-detail__container {
	border-radius: 1.25rem;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	padding-inline: 0.9375rem;
	margin-top: 2.5rem;
}

.p-recruit-detail__title {
	font-size: 1.75rem;
}

.p-recruit-detail__content h2 {
	font-size: 1.25rem;
}

.p-recruit-detail__content h2::before {
	top: 50%;
	height: 80%;
}

.p-recruit-detail__content h3 {
	font-size: 1.125rem;
	text-underline-offset: 0.1875rem;
}

.p-recruit-detail__content p,
.p-recruit-detail__content li {
	font-size: 1rem;
}

.p-recruit-detail__button a {
	font-size: 0.9375rem;
	padding-block: 0.75rem 0.75rem;
	min-width: 18.75rem;
}

.p-recruit-detail__button a::before {
	right: 1.25rem;
	width: 1.25rem;
}

.p-recruit-entry {
	padding-top: 3.75rem;
	padding-bottom: 6.25rem;
}

.p-recruit-entry__title {
	font-size: 1.75rem;
	line-height: 1.4285714286;
}

.p-recruit-entry__form {
	margin-top: 1.25rem;
}

.p-recruit-message__container {
	flex-direction: column;
	gap: 1.875rem;
}

.p-recruit-message__video {
	max-width: 100%;
}

.p-recruit-message__img {
	width: 70%;
	max-width: 18.75rem;
}

.p-recruit-message__headline {
	font-size: 1.21875rem;
	padding-left: 0.9375rem;
	margin-top: 1.25rem;
}

.p-recruit-message__headline::before {
	height: 80%;
}

.p-recruit-message__text {
	font-size: 1rem;
	margin-top: 1rem;
}

.p-recruit-message__buttons {
	flex-direction: column;
	gap: 1.25rem;
	max-width: 25rem;
	margin-top: 1.875rem;
	margin-inline: auto;
}

.p-recruit-message__button {
	width: 100%;
}

.p-recruit-message__button a {
	font-size: 1rem;
}

.p-recruit-message__img {
	margin-top: 0;
	margin-inline: auto;
}

.p-recruit {
	padding-top: 3.5rem;
	padding-bottom: 1.875rem;
	background: url(../images/recruit-background.png) no-repeat center center/contain;
	background-size: auto;
}

.p-recruit__inner.l-inner {
	background: none;
	padding-top: 0;
	padding-bottom: 1.25rem;
	max-width: 31.25rem;
}

.p-recruit__main-text {
	font-size: 1.25rem;
	margin-top: 1.875rem;
}

.p-recruit__sub-text {
	font-size: 0.875rem;
	margin-top: 1rem;
}

.p-recruit__button {
	margin-top: 1.875rem;
}

.p-service-list__item {
	position: relative;
	flex-direction: column;
	gap: 0.625rem;
}

.p-service-list__item + .p-service-list__item {
	margin-top: 3.75rem;
}

.p-service-list__title {
	font-size: 1.75rem;
}

.p-service-list__subtitle {
	font-size: 0.75rem;
	margin-top: 0.3125rem;
}

.p-service-list__description {
	font-size: 0.875rem;
	margin-top: 0.875rem;
}

.p-service-list__img {
	position: absolute;
	top: 0;
	left: calc(50% + 7.5rem);
	translate: -50% 0;
	width: 3.75rem;
	height: 3.75rem;
	min-width: initial;
}

.p-service-list__br {
	display: block;
}

.p-service-outline__item + .p-service-outline__item {
	margin-top: 2.5rem;
}

.p-service-outline__title {
	font-size: 1rem;
}

.p-service-outline__buttons {
	-moz-column-gap: 0.625rem;
	column-gap: 0.625rem;
	row-gap: 0.625rem;
	margin-top: 1.25rem;
}

.p-service-outline__button a {
	font-size: 1rem;
	padding-left: 0.75rem;
	padding-right: 1.875rem;
}

.p-service-outline__button a::after {
	top: 50%;
	right: 0.625rem;
}

.p-service__inner.l-inner {
	max-width: 31.25rem;
}

.p-service__container {
	flex-direction: column;
	gap: 1.25rem;
}

.p-service__wrap {
	display: contents;
	width: 100%;
	min-width: initial;
}

.p-service__sticky {
	display: contents;
	position: static;
	top: initial;
	left: initial;
}

.p-service__title-group {
	order: 1;
}

.p-service__button {
	text-align: center;
	margin-top: 1.25rem;
	order: 3;
}

.p-service__content {
	padding-top: 0rem;
	order: 2;
}

.p-service__ornament {
	position: relative;
	top: 3.75rem;
	max-width: 9.375rem;
}

.p-service__text {
	font-size: 0.875rem;
}

.p-service__list {
	margin-top: 7.5rem;
}

.p-single {
	padding-top: 1.875rem;
}

.p-single__container {
	border-radius: 1.25rem;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	padding-inline: 0.9375rem;
}

.p-single__meta {
	flex-direction: column;
	gap: 0.625rem;
}

.p-single__category {
	width: -moz-fit-content;
	width: fit-content;
}

.p-single__date-wrap {
	display: block;
}

.p-single__modify-date,
.p-single__post-date {
	padding-top: 0;
}

.p-single__post-date {
	margin-top: 0.625rem;
	margin-left: 0.625rem;
}

.p-single__content {
	margin-top: 2.5rem;
}

.p-single__pagination {
	margin-top: 2.5rem;
}

.p-strength {
	overflow-x: clip;
}

.p-strength__container {
	margin-top: 2.5rem;
}

.p-strength__outline {
	margin-top: 1.5rem;
}

.p-strength__text {
	font-size: 1rem;
	margin-top: 1.25rem;
}

.p-strength__img-wrap {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow-x: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.p-strength__img-wrap::-webkit-scrollbar {
	display: none;
}

.p-strength__img {
	min-width: 43.75rem;
}

.p-strength__container:first-of-type .p-strength__img {
	min-width: 62.5rem;
	padding-inline: 0.625rem;
}

.p-strength__container:nth-of-type(2) .p-strength__body {
	margin-top: 3.125rem;
}

.p-strength__list-item + .p-strength__list-item {
	margin-top: 5.3125rem;
}

.p-strength__sublist-item + .p-strength__sublist-item {
	margin-top: 1.25rem;
}

.p-strength__sublist-item-title,
.p-strength__sublist-text,
.p-strength__description {
	font-size: 1rem;
}

.p-thanks {
	padding-top: 5rem;
	padding-bottom: 2.5rem;
	background: url(../images/recruit-background.png) no-repeat center center/contain;
	background-size: auto;
	margin-top: 3.75rem;
}

.p-thanks__inner.l-inner {
	background: none;
	padding-top: 0;
	padding-bottom: 1.25rem;
	max-width: 37.5rem;
}

.p-thanks__main-text {
	font-size: 1.25rem;
	line-height: 1.5;
	margin-top: 1.875rem;
}

.p-thanks__sub-text {
	font-size: 0.875rem;
	margin-top: 1rem;
}

.p-thanks__button {
	margin-top: 1.875rem;
}

.u-mtSp10 {
	margin-top: 10px !important;
	margin-top: 0.625rem !important;
}

.u-mtSp20 {
	margin-top: 20px !important;
	margin-top: 1.25rem !important;
}

.u-mtSp30 {
	margin-top: 30px !important;
	margin-top: 1.875rem !important;
}

.u-mtSp40 {
	margin-top: 40px !important;
	margin-top: 2.5rem !important;
}

.u-mtSp50 {
	margin-top: 50px !important;
	margin-top: 3.125rem !important;
}

.u-mtSp60 {
	margin-top: 60px !important;
	margin-top: 3.75rem !important;
}

.u-mtSp70 {
	margin-top: 70px !important;
	margin-top: 4.375rem !important;
}

.u-mtSp80 {
	margin-top: 80px !important;
	margin-top: 5rem !important;
}

.u-mtSp90 {
	margin-top: 90px !important;
	margin-top: 5.625rem !important;
}

.u-mtSp100 {
	margin-top: 100px !important;
	margin-top: 6.25rem !important;
}

.u-mtSp110 {
	margin-top: 110px !important;
	margin-top: 6.875rem !important;
}

.u-mtSp120 {
	margin-top: 120px !important;
	margin-top: 7.5rem !important;
}

.u-mtSp130 {
	margin-top: 130px !important;
	margin-top: 8.125rem !important;
}

.u-mtSp140 {
	margin-top: 140px !important;
	margin-top: 8.75rem !important;
}

.u-mtSp150 {
	margin-top: 150px !important;
	margin-top: 9.375rem !important;
}

.u-mtSp160 {
	margin-top: 160px !important;
	margin-top: 10rem !important;
}

.u-mtSp170 {
	margin-top: 170px !important;
	margin-top: 10.625rem !important;
}

.u-mtSp180 {
	margin-top: 180px !important;
	margin-top: 11.25rem !important;
}

.u-mtSp190 {
	margin-top: 190px !important;
	margin-top: 11.875rem !important;
}

.u-mtSp200 {
	margin-top: 200px !important;
	margin-top: 12.5rem !important;
}

.u-pc {
	display: none;
}

.u-sp {
	display: block;
}

.u-textMdLeft {
	text-align: Left !important;
}

.u-textMdCenter {
	text-align: Center !important;
}

.u-textMdRight {
	text-align: Right !important;
}

.u-textMdJustify {
	text-align: Justify !important;
}

}

@media screen and (max-width: 480px) {

.p-404 {
	background-size: 120%;
}

}

@media screen and (max-width: 400px) {

.p-business__item-img {
	right: -0.625rem;
}

}

@media screen and (max-width: 380px) {

.p-single__post-date {
	margin-left: 0;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

