/*****************************************
 * 数値から単位を取り除く
 * 参考
 * 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 Maru Gothic", serif;
	font-weight: 400;
	color: #000000;
}

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

a:hover {
	opacity: 0.7;
}

/*
 * 参考
 * 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 */

/* 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-inner {
	max-width: 1550px;
	margin-inline: auto;
	padding-inline: 25px;
	width: 100%;
}

.c-breadcrumb {
	padding: 1rem 0;
}

.c-breadcrumb a {
	color: #04AFCC;
}

.c-btn {
	text-align: center;
}

.c-btn a {
	display: inline-block;
	background-color: #FFFFFF;
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.875rem;
	font-weight: 700;
	color: #04AFCC;
	line-height: 1.2;
	border: 1px solid #04AFCC;
	padding-block: 1.5rem 1.4375rem;
	padding-inline: 1.25rem;
	min-width: 20.25rem;
	transition: 0.3s;
}

.c-btn.c-btn--yellow a {
	background-color: #FDE122;
	color: #000000;
	border-color: #FDE122;
}

.c-btn.c-btn--black a {
	background-color: #000000;
	color: #FDE122;
	border-color: #FDE122;
}

.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-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-pagination01 {
	border-top: 1px solid #E6E7DE;
	padding-top: 60px;
	position: relative;
}

.c-pagination01 .screen-reader-text {
	display: none;
}

.c-pagination01 .nav-links {
	display: flex;
	justify-content: space-between;
}

.c-pagination01 .nav-links a::after {
	display: none;
}

.c-pagination01 .nav-next a,
.c-pagination01 .nav-previous a {
	transition: 0.5s opacity;
	position: relative;
	display: block;
}

.c-pagination01 .nav-previous a img:nth-of-type(2) {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: 0.5s opacity;
}

.c-pagination01 .nav-next,
.c-pagination01 .nav-previous {
	width: 120px;
}

.c-pagination01 .nav-next {
	margin-left: auto;
}

.c-pagination01 .nav-next a img:nth-of-type(2) {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: 0.3s;
}

.c-pagination02 .screen-reader-text {
	display: none;
}

.c-pagination02 .nav-links {
	display: flex;
	justify-content: space-between;
}

.c-pagination02 .nav-next,
.c-pagination02 .nav-previous {
	font-size: 16px;
	font-weight: 300;
}

.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: 5rem;
	background-color: #04AFCC;
}

.p-404__img {
	position: relative;
	max-width: 50rem;
	margin-inline: auto;
}

.p-404__img02 {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 21.875rem;
}

.p-404__title {
	font-size: 2rem;
	color: #FFFFFF;
	text-align: center;
	margin-top: 3.75rem;
}

.p-404__btn {
	text-align: center;
	margin-top: 2.5rem;
}

.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-company {
	position: relative;
	padding-top: 5.625rem;
	padding-bottom: 27.75rem;
	background: linear-gradient(180deg, #000000 0%, #000000 91.2%, white 91.2%, white 100%);
	--slideCompanyImg: 0;
	--customOpacity04: 0;
	overflow-x: clip;
}

.p-company::before {
	content: "";
	position: absolute;
	right: var(--slideCompanyImg, 0rem);
	bottom: 0;
	background: url(../images/hello-horse.png) no-repeat center center/contain;
	width: 63.3333333333vw;
	max-width: 81.25rem;
	aspect-ratio: 1216/608;
	opacity: var(--customOpacity04, 0);
}

.p-company__info {
	margin-top: 6.125rem;
	max-width: 69.8125rem;
	margin-inline: auto;
}

.p-company__info-item {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1.6875rem;
}

.p-company__info-item + .p-company__info-item {
	margin-top: 3rem;
}

.p-company__info-label,
.p-company__info-value {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.875rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
}

.p-company__info-label {
	width: 19.6956132498%;
}

.p-company__info-value {
	width: 86.8397493286%;
}

.p-contact-banner__link {
	position: relative;
	display: inline-block;
	background-color: #04AFCC;
	border-radius: 15px;
	padding-top: 2.5rem;
	padding-bottom: 1.875rem;
	padding-left: 1.75rem;
	padding-right: 11.5625rem;
}

.p-contact-banner__container {
	text-align: center;
}

.p-contact-banner__title-en {
	font-family: "Poppins", sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	text-transform: uppercase;
}

.p-contact-banner__title-ja {
	font-family: "Zen Maru Gothic", serif;
	font-size: 0.8125rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	letter-spacing: 0.3em;
	margin-top: 0.75rem;
}

.p-contact-banner__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	letter-spacing: 0.08em;
}

.p-contact-banner__text:nth-child(3) {
	margin-top: 1rem;
}

.p-contact-banner__text:last-child {
	margin-top: 0.75rem;
}

.p-contact-banner__img {
	position: absolute;
	right: -1.25rem;
	bottom: 0;
	width: 14.75rem;
	clip-path: inset(0 1.25rem 0 0);
}

.p-contact__inner.l-inner {
	max-width: 75rem;
}

.p-form {
	padding-block: 5rem;
}

.p-form__item {
	display: flex;
	align-items: center;
	padding-block: 2.5rem;
}

.p-form__title {
	display: flex;
	width: 30%;
	padding: 0 1.875rem;
	gap: 0.625rem;
	align-items: center;
	font-size: 1.5rem;
	font-weight: 700;
}

.p-form__title span {
	display: inline-block;
	padding: 0.3125rem 0.625rem;
	color: #fff;
	font-size: 1.375rem;
	background-color: #04AFCC;
	border-radius: 5px;
}

.p-form__input {
	flex: 1;
}

.p-formInput input::-moz-placeholder,
.p-formTextarea textarea::-moz-placeholder {
	color: lightgray;
	font-size: 1.5rem;
}

.p-formInput input::placeholder,
.p-formTextarea textarea::placeholder {
	color: lightgray;
	font-size: 1.5rem;
}

.p-formInput input {
	width: 100%;
	height: 5rem;
	padding-inline: 1.25rem;
	border: 1px solid #b5b5b5;
	border-radius: 15px;
	font-size: 1.5rem;
}

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

.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: 250px;
	max-width: 100%;
	height: 60px;
	padding-left: 20px;
	border: 1px solid #b5b5b5;
	border-radius: 0;
	color: lightgray;
	font-size: 16px;
	background: url(../images/common/pulldown.svg) right 10px center/10px no-repeat;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

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

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

.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 35px;
	font-size: 1.25rem;
	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: 5px;
	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: 3px solid #04AFCC;
	border-bottom: 3px solid #04AFCC;
	opacity: 0;
	transform: rotate(45deg);
}

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

.p-formRadio .wpcf7-radio {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.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: 16px;
	cursor: pointer;
}

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

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

.p-formRadio input:checked + span::before {
	background-color: blue;
	box-shadow: inset 0 0 0 3px #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% !important;
	min-height: 350px;
	padding-block: 1.25rem;
	padding-inline: 1.25rem;
	border: 1px solid #b5b5b5;
	border-radius: 15px;
	font-size: 1.5rem;
	resize: vertical;
}

.p-form__privacy {
	margin-top: 1.875rem;
	text-align: center;
	font-size: 1.25rem;
}

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

.p-form__acceptance {
	margin-top: 30px;
	text-align: center;
}

.p-form__submit {
	margin-top: 50px;
	text-align: center;
}

.p-formBtn input {
	width: 300px;
	padding: 20px 0;
	color: #fff;
	font-size: 1.875rem;
	text-align: center;
	border-radius: 15px;
	background-color: #04AFCC;
	border: 1px solid #04AFCC;
	cursor: pointer;
	transition: 0.5s;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

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

.wpcf7 form.sent .wpcf7-response-output {
	padding: 15px 10px;
	border-color: #04AFCC;
	font-size: 24px;
	text-align: center;
}

.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: 1.5rem;
	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: 1.5rem;
	font-weight: normal;
}

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

.p-footer__container {
	position: relative;
	background-color: #000000;
	padding-block: 2.625rem;
}

.p-footer__container::before {
	content: "";
	position: absolute;
	top: -9.5625rem;
	left: 0;
	background: url(../images/footer_animal.png) no-repeat center center/contain;
	width: 34.1875rem;
	aspect-ratio: 547/297;
}

.p-footer__inner.l-inner {
	display: flex;
	justify-content: center;
	align-items: center;
	-moz-column-gap: 2.5rem;
	column-gap: 2.5rem;
}

.p-footer__logo {
	max-width: 24.5rem;
}

.p-footer__nav-list {
	display: flex;
	align-items: center;
	-moz-column-gap: 1.625rem;
	column-gap: 1.625rem;
}

.p-footer__nav-link {
	font-family: "Zen Maru Gothic", serif;
	font-size: 0.875rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	text-transform: uppercase;
}

.p-footer__copyright-wrap {
	padding-block: 1.5625rem 1.875rem;
}

.p-footer__copyright {
	display: block;
	font-family: "Zen Maru Gothic", serif;
	font-size: 0.75rem;
	font-weight: 700;
	color: #000000;
	line-height: 1;
	text-align: center;
}

.p-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 6.25rem;
	background-color: #04AFCC;
	z-index: 999;
	transform: translateY(-100px);
	transition: transform 0.5s;
}

.p-header__inner.l-inner {
	height: inherit;
}

.p-header__logo {
	display: none;
}

.p-header__logo a {
	display: inline-block;
	height: inherit;
	max-width: 3.75rem;
	padding-top: 0.4375rem;
	padding-inline: 0.625rem;
}

.p-header__logo img {
	height: inherit;
	aspect-ratio: 165/187;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-header__nav {
	height: inherit;
}

.p-header__nav-list {
	height: inherit;
	display: flex;
	justify-content: center;
	gap: 0.625rem;
}

.p-header__nav-item {
	height: inherit;
	display: flex;
	align-items: center;
}

.p-header__nav-item a {
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-size: 1.125rem;
	font-weight: 600;
	color: #FFFFFF;
	line-height: 1;
	text-transform: uppercase;
	transition: 0.3s;
	padding: 0.3125rem 0.625rem;
	border-bottom: 0.0625rem solid transparent;
}

.p-header__nav-item--contact a {
	background-color: #FFFFFF;
	color: #04AFCC;
	border-radius: 0.3125rem;
	border: 0.0625rem solid transparent;
}

.p-header__hamburger {
	display: none;
}

.p-header__hamburger.is-open {
	background-color: transparent;
}

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

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

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

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

.p-header__hamburger.is-open span:nth-of-type(1) {
	top: 0.125rem;
	transform: translateX(-50%) rotate(45deg);
}

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

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

body.is-open {
	overflow: hidden;
}

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

.p-header__drawer::-webkit-scrollbar {
	display: none;
}

.p-header__drawer-item a {
	padding: 0.625rem 0;
	display: block;
	font-family: "Poppins", sans-serif;
	font-size: 1.75rem;
	font-weight: 600;
	line-height: 1;
	color: #FFFFFF;
	text-align: center;
	text-transform: uppercase;
}

.js-header.Hide {
	transform: translateY(-100px);
	transition: transform 0.5s;
}

.js-header.UpMove,
.js-header.DownMove {
	transform: translateY(0);
	transition: transform 0.5s;
}

.p-lower-top {
	position: relative;
	width: 100%;
	aspect-ratio: 16/4;
	background: url(../images/contact-top.jpg) no-repeat center center/cover;
}

.p-lower-top::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
}

.p-lower-top__hgroup {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	width: 100%;
}

.p-lower-top__title-en {
	font-family: "Poppins", sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: #FDE122;
	line-height: 1.25;
	text-transform: uppercase;
}

.p-lower-top__title-ja {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.2;
	text-transform: uppercase;
	margin-top: 0.625rem;
}

.p-map {
	width: 100%;
}

.p-map iframe {
	aspect-ratio: 1920/600;
	object-fit: cover;
	width: 100%;
	height: auto;
}

.p-mission {
	position: relative;
	background: linear-gradient(180deg, #FDE122 0%, #FDE122 94.7%, #FFFFFF 94.7%, #FFFFFF 100%);
	padding-top: 5rem;
	padding-bottom: 28.6458333333vw;
}

.p-mission__img {
	position: absolute;
	right: 0;
	bottom: -1.4375rem;
	width: 87.0833333333vw;
	transform-origin: right bottom;
}

.p-mission__img img {
	aspect-ratio: 1672/497;
	object-fit: contain;
	width: 100%;
	height: auto;
}

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

.p-mission__icon {
	width: 15.2517985612%;
}

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

.p-mission__message {
	width: 83.0935251799%;
	display: flex;
	align-items: center;
}

.p-mission__message-heading {
	font-family: "Poppins", sans-serif;
	font-size: 5.625rem;
	font-weight: 700;
	color: #010101;
	line-height: 1;
	letter-spacing: 0.1em;
}

.p-mission__message-text {
	font-family: "Zen Maru Gothic", serif;
	font-size: clamp(3.5rem, 3.034rem + 0.6vw, 3.75rem);
	font-weight: 700;
	color: #010101;
	line-height: 1;
	letter-spacing: 0.1em;
}

.p-mission__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: clamp(2.313rem, -5.723rem + 8.57vw, 2.5rem);
	font-weight: 400;
	color: #010101;
	line-height: 1.5;
	text-align: center;
	margin-top: 3.625rem;
}

.p-mv {
	position: relative;
}

.p-mv::before {
	content: "";
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	bottom: 5rem;
	width: 6.25rem;
	aspect-ratio: 100/24;
	background: url(../images/scroll.png) no-repeat center center/contain;
	animation: scroll 1s linear infinite alternate;
}

.p-mv__video video {
	aspect-ratio: 1920/980;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: bottom;
	vertical-align: bottom;
}

.p-mv__banner {
	position: absolute;
	right: 3.4375rem;
	bottom: 3.4375rem;
}

.p-mv__scroll {
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	bottom: 8.4375rem;
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.875rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	text-transform: capitalize;
}

.p-optimum {
	position: relative;
	padding-top: 5.625rem;
	padding-bottom: 10.3125rem;
	background: linear-gradient(180deg, #04AFCC 0%, #04AFCC 95.7%, white 95.7%, white 100%);
	margin-top: -1px;
	--customScale: 0;
}

.p-optimum::before {
	content: "";
	position: absolute;
	left: 3.875rem;
	bottom: -0.125rem;
	background: url(../images/nice-cat.png) no-repeat center center/contain;
	width: 32.8645833333vw;
	aspect-ratio: 631/577;
	transform: scale(var(--customScale));
	transform-origin: left bottom;
}

.p-optimum__list {
	margin-top: 4.5625rem;
}

.p-optimum__list-item {
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.p-optimum__list-item::before {
	content: "▶";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
}

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

.p-optimum__list-text {
	display: inline-block;
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	padding-left: 1.2em;
}

.p-optimum__button {
	margin-top: 5.3125rem;
}

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

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

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

.p-post-article__title {
	font-size: 3rem;
	color: #04AFCC;
}

.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: #04AFCC;
	border: 1px solid #04AFCC;
}

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

.p-post-article__content {
	padding: 1.25rem 1.4375rem 0;
	background-color: #FFFFFF;
	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: #FFFFFF;
	background-color: #04AFCC;
	font-size: 1.75rem;
}

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

.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: #04AFCC;
	font-size: 1.25rem;
	border-top: 2px solid #04AFCC;
	border-bottom: 2px solid #04AFCC;
}

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

.p-post-article__contents a {
	color: #04AFCC;
	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: #04AFCC;
	border: 1px solid #04AFCC;
}

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

.p-post-connect__title {
	font-size: 1.5rem;
	color: #04AFCC;
}

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

.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__content {
	margin-block: 6.25rem;
}

.p-privacy__content h3 {
	font-size: 2.25rem;
	margin-top: 1.875rem;
}

.p-privacy__content p {
	font-size: 1.625rem;
	margin-top: 0.625rem;
}

.p-privacy__content ul {
	margin-top: 1rem;
}

.p-privacy__content li {
	position: relative;
	font-size: 1.625rem;
	padding-left: 1em;
}

.p-privacy__content li::before {
	content: "・";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	color: #000000;
}

.p-reason {
	position: relative;
	padding-top: 5rem;
	padding-bottom: 32.7083333333vw;
	background: linear-gradient(180deg, #010101 0%, #010101 91.8%, #FFFFFF 91.8%, #FFFFFF 100%);
	--slideReasonImg: 0;
	--slideReasonImg02: 0;
	--customOpacity03: 0;
}

.p-reason::before {
	content: "";
	position: absolute;
	right: 0;
	right: var(--slideReasonImg, 0rem);
	bottom: 0;
	background: url(../images/reason-birds.png) no-repeat center center/contain;
	width: 33.8541666667vw;
	aspect-ratio: 650/672;
	opacity: var(--customOpacity03, 0);
}

.p-reason::after {
	content: "";
	position: absolute;
	left: var(--slideReasonImg02, 0rem);
	bottom: 0;
	background: url(../images/reason-why.png) no-repeat center center/contain;
	width: 53.6458333333vw;
	aspect-ratio: 1030/532;
	opacity: var(--customOpacity03, 0);
}

.p-reason__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 6.875rem;
	column-gap: 6.875rem;
	row-gap: 3.125rem;
	margin-top: 4.25rem;
	max-width: 71.25rem;
	margin-inline: auto;
}

.p-reason__list-item {
	display: flex;
	align-items: center;
	gap: 1.4375rem;
}

.p-reason__number-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 3.8125rem;
	aspect-ratio: 61/55;
	background: url(../images/list-bubble.png) no-repeat center center/contain;
}

.p-reason__list-number {
	display: inline-block;
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.1875rem;
	font-weight: 700;
	color: #000000;
	line-height: 1;
	text-align: center;
	transform: translate(-0.1875rem, -0.1875rem);
}

.p-reason__list-text {
	display: inline-block;
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	padding-bottom: 0.3125rem;
	border-bottom: 0.1875rem solid #fff500;
}

.p-recruit-form {
	background-color: #04AFCC;
	padding-block: 5rem;
	margin-top: 5rem;
}

.p-recruit-form__title {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.375rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.4375;
	text-align: center;
}

.p-recruit-form__message {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2rem;
	font-weight: 400;
	color: #FFFFFF;
	line-height: 1.4375;
	text-align: center;
	margin-top: 1.25rem;
}

.p-recruit-form__form-title {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.375rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.4736842105;
	text-align: center;
	margin-top: 3.75rem;
}

.p-recruit-form .p-form {
	padding-block: 0;
}

.p-recruit-form__form-body {
	background-color: #FFFFFF;
	border-radius: 20px;
	padding: 2.5rem;
	max-width: 75rem;
	margin-inline: auto;
	margin-top: 1.875rem;
}

.p-recruit-form__button {
	margin-top: 3.75rem;
}

.p-recruit-page {
	background-color: #FDE122;
	padding-block: 5rem;
	margin-top: 5rem;
}

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

.p-recruit-page__title-jp {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.75rem;
	font-weight: 700;
	color: #000000;
	line-height: 1.3636363636;
}

.p-recruit-page__title-en {
	position: relative;
	font-family: "Poppins", sans-serif;
	font-size: 2.25rem;
	font-weight: 400;
	color: #000000;
	line-height: 1.4444444444;
	text-transform: uppercase;
	margin-top: 0.75rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	padding-inline: 1.5em;
}

.p-recruit-page__title-en::before,
.p-recruit-page__title-en::after {
	content: "ー";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1em;
	height: 100%;
	font-family: "Poppins", sans-serif;
	font-size: 2.25rem;
	font-weight: 400;
	color: #000000;
	line-height: 1.4444444444;
}

.p-recruit-page__title-en::before {
	left: 0;
}

.p-recruit-page__title-en::after {
	right: 0;
}

.p-recruit-page__body {
	margin-top: 3.125rem;
}

.p-recruit-page__text-item {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2rem;
	font-weight: 400;
	color: #000000;
	line-height: 1.4375;
	margin-top: 1.25rem;
	text-align: center;
}

.p-recruit-page__item-check {
	display: inline-block;
	color: #04AFCC;
	margin-right: 0.625rem;
}

.p-recruit-page__text-item + .p-recruit-page__text-item {
	margin-top: 3.125rem;
}

.p-recruit-page__content {
	margin-top: 5rem;
}

.p-recruit-page__content-title {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.375rem;
	font-weight: 700;
	color: #000000;
	line-height: 1.4736842105;
	text-align: center;
}

.p-recruit-page__table {
	border-radius: 20px;
	border-spacing: 0;
	border-left: 2px solid #595959;
	border-top: 2px solid #595959;
	margin-top: 1.25rem;
	margin-inline: auto;
	width: 100%;
	max-width: 75rem;
}

.p-recruit-page__table-item th {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.625rem;
	font-weight: 700;
	color: #000000;
	line-height: 1.5;
	text-align: center;
	width: 25%;
}

.p-recruit-page__table-item td {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.625rem;
	font-weight: 400;
	color: #000000;
	line-height: 1.5;
	width: 75%;
	background-color: #FFFFFF;
}

td,
th {
	padding: 0.625rem;
	border-right: 2px solid #595959;
	border-bottom: 2px solid #595959;
}

th {
	background: #fff462;
}

.p-recruit-page__table-item:first-child > *:first-child {
	border-radius: 20px 0 0 0;
}

.p-recruit-page__table-item:first-child > *:last-child {
	border-radius: 0 20px 0 0;
}

.p-recruit-page__table-item:last-child > *:first-child {
	border-radius: 0 0 0 20px;
}

.p-recruit-page__table-item:last-child > *:last-child {
	border-radius: 0 0 20px 0;
}

.p-recruit-top {
	position: relative;
	background-color: #FDE122;
	padding-top: 2.375rem;
	padding-bottom: 30.2083333333vw;
}

.p-recruit-top__img {
	position: relative;
}

.p-recruit-top__img img {
	aspect-ratio: 1920/1080;
	object-fit: cover;
	width: 100%;
	height: auto;
}

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

.p-recruit-top__text-main {
	font-family: "Zen Maru Gothic", serif;
	font-size: 3.125vw;
	font-weight: 700;
	color: #04AFCC;
	line-height: 1.2;
}

.p-recruit-top__text-sub {
	position: relative;
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.4583333333vw;
	font-weight: 700;
	color: #000000;
	line-height: 1.2142857143;
	letter-spacing: 0.2em;
	margin-top: 0.75rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	padding-left: 3.125rem;
	padding-right: 2.5rem;
}

.p-recruit-top__text-sub::before,
.p-recruit-top__text-sub::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1.5625rem;
	height: 2px;
	background-color: #000000;
}

.p-recruit-top__text-sub::before {
	left: 0;
}

.p-recruit-top__text-sub::after {
	right: 0;
}

.p-recruit {
	position: relative;
	padding-top: 5.625rem;
	padding-bottom: 29.375vw;
	background: linear-gradient(180deg, #FDE122 0%, #FDE122 87%, white 87%, white 100%);
}

.p-recruit__job {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #000000;
	line-height: 1.2;
	text-align: center;
	margin-top: 5rem;
}

.p-recruit__button {
	margin-top: 9.375rem;
}

.p-recruit__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 3.75rem;
	font-weight: 700;
	color: #04AFCC;
	line-height: 1.2;
	text-align: center;
	margin-top: 3.125rem;
}

.p-recruit__animal {
	position: absolute;
	bottom: 0;
}

.p-recruit__animal--01 {
	left: 5rem;
	width: 31.71875vw;
	z-index: 1;
}

.p-recruit__animal--02 {
	left: 47%;
	transform: translateX(-50%);
	width: 36.8229166667vw;
}

.p-recruit__animal--03 {
	right: 4.375rem;
	width: 31.9270833333vw;
}

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

.p-section-title {
	text-align: center;
}

.p-section-title__en {
	font-family: "Poppins", sans-serif;
	font-size: 4.375rem;
	font-weight: 600;
	color: #000000;
	line-height: 1.5142857143;
	text-transform: uppercase;
}

.p-section-title__en.p-section-title__en--white {
	color: #FFFFFF;
}

.p-section-title__ja {
	position: relative;
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.75rem;
	font-weight: 700;
	color: #000000;
	line-height: 1.2142857143;
	letter-spacing: 0.3em;
	margin-top: 0.5625rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	padding-left: 3.125rem;
	padding-right: 2.5rem;
}

.p-section-title__ja::before,
.p-section-title__ja::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1.5625rem;
	height: 2px;
	background-color: #000000;
}

.p-section-title__ja::before {
	left: 0;
}

.p-section-title__ja::after {
	right: 0;
}

.p-section-title__ja.p-section-title__ja--white {
	color: #FFFFFF;
}

.p-section-title__ja.p-section-title__ja--white::before,
.p-section-title__ja.p-section-title__ja--white::after {
	background-color: #FFFFFF;
}

.p-service {
	position: relative;
	padding-top: 5rem;
	padding-bottom: 24.4791666667vw;
	background: linear-gradient(180deg, #04AFCC 0%, #04AFCC 89.2%, #FFFFFF 89.2%, #FFFFFF 100%);
	--slideServiceImg: 0;
	--customOpacity02: 0;
}

.p-service::before {
	content: "";
	position: absolute;
	right: var(--slideServiceImg, 0rem);
	bottom: -0.625rem;
	background: url(../images/solutions.png) no-repeat center center/contain;
	width: 79.6875vw;
	aspect-ratio: 1530/478;
	opacity: var(--customOpacity02, 0);
}

.p-service__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.2;
	text-align: center;
	margin-top: 4.375rem;
}

.p-service__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	-moz-column-gap: 1.625rem;
	column-gap: 1.625rem;
	margin-top: 2.625rem;
	max-width: 74.5rem;
	margin-inline: auto;
}

.p-service__list-item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	gap: 1.75rem;
	background-color: #FFFFFF;
	border: 0.125rem solid #04AFCC;
	padding-top: 3.125rem;
	padding-bottom: 1.25rem;
}

.p-service__list-title {
	position: relative;
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.875rem;
	font-weight: 700;
	color: #04AFCC;
	line-height: 1.2;
	text-align: center;
	padding-bottom: 1.75rem;
}

.p-service__list-title::before {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	background-color: #04AFCC;
	width: 68.4210526316%;
	height: 0.125rem;
}

.p-service__list-text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.25rem;
	font-weight: 700;
	color: #04AFCC;
	line-height: 1.9;
	padding-inline: 2.875rem;
}

.p-sns {
	padding-block: 1.9375rem 4rem;
}

.p-sns__title {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.25rem;
	font-weight: 700;
	color: #000000;
	line-height: 1;
	text-align: center;
}

.p-sns__list {
	display: flex;
	justify-content: center;
	gap: 1.75rem;
	margin-top: 1.25rem;
}

.p-sns__item {
	max-width: 2.1875rem;
}

.p-sns__icon {
	aspect-ratio: 35/36;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-spacer {
	width: 100%;
}

.p-spacer img {
	aspect-ratio: 1920/323;
	object-fit: cover;
	width: 100%;
	height: auto;
}

.p-top-contact {
	position: relative;
	padding-top: 2.1875rem;
	padding-bottom: 5.3125rem;
	background: linear-gradient(180deg, #04AFCC 0%, #04AFCC 90.1%, white 90.1%, white 100%);
	--slideContactImg: 0;
	--customOpacity05: 0;
}

.p-top-contact::before {
	content: "";
	position: absolute;
	right: var(--slideContactImg, 0rem);
	bottom: 0;
	background: url(../images/contact_animal.png) no-repeat center center/contain;
	width: 28.75vw;
	aspect-ratio: 552/510;
	opacity: var(--customOpacity05, 0);
}

.p-top-contact__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.1875rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	text-align: center;
	margin-top: 1.625rem;
}

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

.p-vision {
	position: relative;
	background: linear-gradient(180deg, #04AFCC 0%, #04AFCC 94.46%, #FFFFFF 94.46%, #FFFFFF 100%);
	padding-top: 5.3125rem;
	padding-bottom: 26.5625vw;
	--slideVisionImg01: 0;
	--customOpacity: 0;
	--slideVisionImg02: 0;
	overflow-x: clip;
}

.p-vision::before {
	content: "";
	position: absolute;
	left: var(--slideVisionImg01, 0rem);
	bottom: 0;
	background: url(../images/innovation.png) no-repeat center center/contain;
	width: 84.7395833333vw;
	aspect-ratio: 1627/568;
	opacity: var(--customOpacity, 0);
}

.p-vision::after {
	content: "";
	position: absolute;
	right: var(--slideVisionImg02, 0rem);
	bottom: 0;
	background: url(../images/sheep.png) no-repeat center center/contain;
	width: 23.6979166667vw;
	aspect-ratio: 455/400;
}

.p-vision__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.2;
	text-align: center;
	margin-top: 4.1875rem;
}

.p-vision__container {
	display: flex;
	justify-content: space-between;
	margin-top: 5rem;
}

.p-vision__item {
	max-width: 27.25rem;
}

.p-vision__img {
	position: relative;
	max-width: 13.9375rem;
	margin-inline: auto;
}

.p-vision__img::before {
	content: "";
	position: absolute;
	bottom: -5.5rem;
	width: 12.5rem;
	aspect-ratio: 200/140;
}

.p-vision__item:first-child .p-vision__img::before {
	right: -13.75rem;
	background: url(../images/arrow01.png) no-repeat center center/contain;
}

.p-vision__item:last-child .p-vision__img::before {
	left: -13.75rem;
	background: url(../images/arrow02.png) no-repeat center center/contain;
}

.p-vision__img img {
	aspect-ratio: 285/335;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-vision__img-text {
	position: absolute;
	top: 57%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.25rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1;
	text-align: center;
	width: 100%;
}

.p-vision__img-text.p-vision__img-text--center {
	font-size: 2.8125rem;
}

.p-vision__item-text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 2.25rem;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 1.3888888889;
	text-align: center;
	margin-top: 2.5rem;
}

.p-vision__item-center {
	max-width: 28.375rem;
	margin-inline: auto;
	margin-top: -19.0625rem;
}

.p-vision__img.p-vision__img--center {
	max-width: 17.8125rem;
}

.p-works {
	padding-block: 5rem 11.875rem;
	background: url(../images/works-background.jpg) no-repeat center center/cover;
}

.p-works__slick {
	pointer-events: none;
	margin-top: 6.875rem;
}

.p-works__img {
	margin-left: -1.875rem;
}

.p-works__img img {
	aspect-ratio: 470/660;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.p-works__text {
	font-family: "Zen Maru Gothic", serif;
	font-size: 1.875rem;
	font-weight: 700;
	color: #000000;
	line-height: 2;
	letter-spacing: 0.05em;
	text-align: center;
	margin-top: 8.375rem;
}

.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-btn a:hover {
	background-color: #04AFCC;
	color: #FFFFFF;
	border-color: #FFFFFF;
	opacity: 1;
}

.c-btn.c-btn--yellow a:hover {
	background-color: #000000;
	color: #FDE122;
	border-color: #FDE122;
}

.c-btn.c-btn--black a:hover {
	background-color: #FDE122;
	color: #000000;
	border-color: #000000;
}

.p-header__nav-item a:hover {
	border-bottom: 0.0625rem solid #FFFFFF;
	opacity: 1;
}

.p-header__nav-item--contact a:hover {
	background-color: #04AFCC;
	color: #FFFFFF;
	border: 0.0625rem solid #FFFFFF;
}

}

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

.c-pagination01 .nav-previous a:hover img:nth-of-type(1) {
	opacity: 0;
	transition: 0.5s opacity;
}

.c-pagination01 .nav-previous a:hover img:nth-of-type(2) {
	opacity: 1;
	transition: 0.5s opacity;
}

.c-pagination01 .nav-next a:hover img:nth-of-type(1) {
	opacity: 0;
	transition: 0.5s opacity;
}

.c-pagination01 .nav-next a:hover img:nth-of-type(2) {
	opacity: 1;
	transition: 0.5s opacity;
}

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

.p-formBtn input:hover {
	background-color: #FFFFFF;
	color: #04AFCC;
	border: 1px solid #04AFCC;
	transition: 0.3s;
}

}

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

.p-optimum::before {
	left: 0;
}

}

@media (max-width: 1500px) {

html {
	font-size: 1.0666666667vw;
}

}

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

html {
	font-size: 16px;
}

a:hover {
	opacity: 1;
}

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

.c-btn a {
	font-size: 1.125rem;
	padding-block: 1rem;
	padding-inline: 0.625rem;
	min-width: 11.5625rem;
}

.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);
}

.p-404__img {
	max-width: 31.25rem;
}

.p-404__img02 {
	width: 48%;
}

.p-404__title {
	font-size: 1.5rem;
	margin-top: 1.875rem;
}

.p-404__btn {
	margin-top: 1.25rem;
}

.p-company {
	padding-top: 2.8125rem;
	padding-bottom: 51.2820512821vw;
	background: #000000;
}

.p-company::before {
	left: 52%;
	transform: translateX(-50%);
	right: initial;
	background: url(../images/hello-horse_sp.png) no-repeat center center/contain;
	width: 73.8461538462vw;
	aspect-ratio: 862/554;
	opacity: 1;
}

.p-company__info {
	margin-top: 1.875rem;
}

.p-company__info-item {
	flex-direction: column;
	gap: 0.625rem;
}

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

.p-company__info-label,
.p-company__info-value {
	font-size: 1.125rem;
	line-height: 1.619047619;
	text-align: center;
}

.p-company__info-label {
	width: 100%;
}

.p-company__info-value {
	width: 100%;
}

.p-company__info-value span {
	display: none;
}

.p-contact-banner {
	display: none;
}

.p-contact__inner.l-inner {
	max-width: 550px;
	padding-left: 15px;
	padding-right: 15px;
}

.p-form {
	padding-block: 2.5rem;
}

.p-form__item {
	flex-direction: column;
	margin-right: auto;
	margin-left: auto;
	align-items: flex-start;
	padding-block: 1.25rem;
}

.p-form__title {
	width: 100%;
	padding-inline: 0.625rem;
	font-size: 1.125rem;
}

.p-form__title span {
	font-size: 1rem;
	padding-block: 0.1875rem;
}

.p-form__input {
	width: 100%;
	margin-top: 10px;
	padding: 0 10px;
}

.p-formInput input::-moz-placeholder,
.p-formTextarea textarea::-moz-placeholder {
	font-size: 1.125rem;
}

.p-formInput input::placeholder,
.p-formTextarea textarea::placeholder {
	font-size: 1.125rem;
}

.p-formInput input {
	width: 100%;
	height: 50px;
	margin-left: 0;
	padding-inline: 0.9375rem;
	border-radius: 10px;
	font-size: 1.125rem;
}

.p-formSelect select {
	width: 100%;
	height: 50px;
}

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

.p-formTextarea textarea {
	width: 100%;
	min-height: 200px;
	margin-left: 0;
	padding-left: 15px;
	font-size: 1.125rem;
}

.p-form__privacy {
	text-align: left;
	font-size: 1rem;
	margin-top: 0.625rem;
}

.p-form__acceptance {
	text-align: left;
}

.p-form__submit {
	margin-top: 30px;
}

.p-formBtn input {
	font-size: 1.5rem;
	width: 15.625rem;
}

.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;
}

.wpcf7-not-valid-tip {
	font-size: 1rem;
}

.p-formValidation__error {
	font-size: 1rem;
}

.p-footer__container {
	padding-block: 3.125rem 2rem;
}

.p-footer__container::before {
	top: -5.75rem;
	width: 20.4375rem;
}

.p-footer__inner.l-inner {
	flex-direction: column;
	gap: 1.625rem;
}

.p-footer__logo {
	max-width: 18.3125rem;
}

.p-footer__nav {
	width: 100%;
}

.p-footer__nav-list {
	flex-direction: column;
	gap: 0;
}

.p-footer__nav-item {
	width: 100%;
}

.p-footer__nav-link {
	display: block;
	font-size: 1rem;
	text-align: center;
	padding-block: 0.625rem;
}

.p-footer__copyright-wrap {
	padding-block: 1.75rem 2rem;
}

.p-header {
	height: 3.75rem;
}

.p-header__inner.l-inner {
	display: flex;
	justify-content: space-between;
	padding: 0;
}

.p-header__logo {
	display: inline-block;
	height: inherit;
}

.p-header__nav {
	display: none;
}

.p-header__hamburger {
	display: block;
	margin: 0;
	padding: 0;
	outline: none;
	border: none;
	position: relative;
	z-index: 999;
	width: 3.125rem;
	height: inherit;
	cursor: pointer;
	transition: 0.3s;
}

.p-lower-top {
	aspect-ratio: 16/10;
}

.p-lower-top__title-en {
	font-size: 1.25rem;
}

.p-lower-top__title-ja {
	font-size: 1.875rem;
}

.p-map iframe {
	aspect-ratio: 1170/660;
}

.p-mission {
	padding-top: 3.125rem;
	padding-bottom: 30.7692307692vw;
	background: #FDE122;
}

.p-mission__inner.l-inner {
	max-width: 31.25rem;
}

.p-mission__container {
	flex-direction: column;
	margin-top: 4.375rem;
}

.p-mission__icon {
	width: 7.75rem;
	margin-inline: auto;
}

.p-mission__message {
	flex-direction: column;
}

.p-mission__message-heading {
	font-size: 2.0625rem;
	margin-top: 3.625rem;
}

.p-mission__message-text {
	font-size: 1.25rem;
	margin-top: 2.0625rem;
}

.p-mission__text {
	font-size: 1.0625rem;
	margin-top: 2.5rem;
}

.p-mv {
	height: 100vh;
	height: 100svh;
}

.p-mv::before {
	bottom: 4.25rem;
	width: 3.4375rem;
}

.p-mv__video {
	height: inherit;
}

.p-mv__video video {
	aspect-ratio: 1170/2534;
	object-position: center;
}

.p-mv__scroll {
	font-size: 1.25rem;
	bottom: 6.125rem;
}

.p-optimum {
	padding-top: 3.75rem;
	padding-bottom: 62.5641025641vw;
	background: #04AFCC;
}

.p-optimum::before {
	left: 50%;
	transform: translateX(-50%);
	background: url(../images/nice-cat_sp.png) no-repeat center center/contain;
	width: 48.7179487179vw;
	aspect-ratio: 570/664;
}

.p-optimum__list {
	margin-top: 2.0625rem;
}

.p-optimum__list-item {
	width: 100%;
	max-width: 16.25rem;
}

.p-optimum__list-item::before {
	top: 0;
	transform: initial;
	font-size: 1.25rem;
	line-height: 1.5;
}

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

.p-optimum__list-text {
	font-size: 1.25rem;
	line-height: 1.5;
}

.p-optimum__button {
	margin-top: 3.625rem;
}

.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-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__content {
	margin-block: 2.5rem;
}

.p-privacy__content h3 {
	font-size: 1.375rem;
}

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

.p-privacy__content ul {
	margin-top: 0.625rem;
}

.p-privacy__content li {
	font-size: 1.125rem;
}

.p-reason {
	padding-top: 3.125rem;
	padding-bottom: 54.8717948718%;
	background: #010101;
}

.p-reason::before {
	width: 47.4358974359vw;
	z-index: 1;
	opacity: 1;
}

.p-reason::after {
	left: 0.625rem;
	background: url(../images/reason-why_sp.png) no-repeat center center/contain;
	width: 58.2051282051vw;
	aspect-ratio: 680/475;
	opacity: 1;
}

.p-reason__title .p-section-title__ja {
	line-height: 1.4285714286;
}

.p-reason__title .p-section-title__ja::before,
.p-reason__title .p-section-title__ja::after {
	content: none;
}

.p-reason__list {
	grid-template-columns: 1fr;
	max-width: 17.5rem;
	margin-top: 2.1875rem;
}

.p-reason__list-item {
	gap: 1.125rem;
}

.p-reason__number-wrap {
	width: 2.0625rem;
	margin-top: -0.75rem;
}

.p-reason__list-number {
	font-size: 1.125rem;
	transform: translate(-0.125rem, -0.125rem);
}

.p-reason__list-text {
	font-size: 1.25rem;
}

.p-recruit-form {
	padding-block: 2.5rem;
	margin-top: 2.5rem;
}

.p-recruit-form__title {
	font-size: 1.875rem;
}

.p-recruit-form__message {
	font-size: 4.2666666667vw;
}

.p-recruit-form__form-body {
	padding-inline: 0.9375rem;
}

.p-recruit-form__button {
	margin-top: 1.875rem;
}

.p-recruit-page {
	padding-block: 2.5rem;
	margin-top: 2.5rem;
}

.p-recruit-page__title-jp {
	font-size: 1.875rem;
}

.p-recruit-page__title-en {
	font-size: 1.5rem;
}

.p-recruit-page__title-en::before,
.p-recruit-page__title-en::after {
	top: 43%;
	font-size: 1.875rem;
}

.p-recruit-page__body {
	margin-top: 1.875rem;
}

.p-recruit-page__text-item {
	font-size: 3.7333333333vw;
}

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

.p-recruit-page__content {
	margin-top: 2.5rem;
}

.p-recruit-page__content-title {
	font-size: 1.75rem;
}

.p-recruit-page__table {
	border-radius: 10px;
}

.p-recruit-page__table-item th {
	font-size: 3.7333333333vw;
}

.p-recruit-page__table-item td {
	font-size: 3.7333333333vw;
}

td,
th {
	padding: 0.3125rem;
}

.p-recruit-page__table-item:first-child > *:first-child {
	border-radius: 10px 0 0 0;
}

.p-recruit-page__table-item:first-child > *:last-child {
	border-radius: 0 10px 0 0;
}

.p-recruit-page__table-item:last-child > *:first-child {
	border-radius: 0 0 0 10px;
}

.p-recruit-page__table-item:last-child > *:last-child {
	border-radius: 0 0 10px 0;
}

.p-recruit-top {
	padding-top: 0.8125rem;
	padding-bottom: 0;
}

.p-recruit-top__img img {
	aspect-ratio: 1170/2174;
}

.p-recruit-top__text-main {
	font-size: 6.1538461538vw;
	line-height: 1.4285714286;
}

.p-recruit-top__text-sub {
	font-size: 3.3333333333vw;
	letter-spacing: normal;
	line-height: 0.7692307692;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
}

.p-recruit-top__text-sub::before,
.p-recruit-top__text-sub::after {
	width: 1.125rem;
}

.p-recruit {
	padding-top: 2.625rem;
	padding-bottom: 0;
	background: #FDE122;
}

.p-recruit__title .p-section-title__ja {
	line-height: 1.4285714286;
}

.p-recruit__title .p-section-title__ja::before,
.p-recruit__title .p-section-title__ja::after {
	content: none;
}

.p-recruit__job {
	font-size: 1.125rem;
	margin-top: 2.5rem;
}

.p-recruit__button {
	margin-top: 4.8125rem;
}

.p-recruit__text {
	font-size: 1.5rem;
	line-height: 1.4285714286;
	margin-top: 2.75rem;
}

.p-recruit__animal {
	position: relative;
	width: 100%;
}

.p-recruit__animal--01 {
	left: initial;
	margin-top: 1.625rem;
	z-index: 2;
}

.p-recruit__animal--02 {
	left: initial;
	transform: initial;
	margin-top: -6rem;
	z-index: 1;
}

.p-recruit__animal--03 {
	right: initial;
	margin-top: -4.1875rem;
}

.p-section-title__en {
	font-size: 2.0625rem;
	line-height: 1;
}

.p-section-title__ja {
	font-size: 1.125rem;
	line-height: 1;
	padding-left: 1.625rem;
	padding-right: 1.625rem;
	letter-spacing: normal;
}

.p-section-title__ja::before,
.p-section-title__ja::after {
	width: 1.125rem;
}

.p-service {
	background: #04AFCC;
	padding-top: 3.125rem;
	padding-bottom: 40.7692307692vw;
}

.p-service::before {
	bottom: 0;
	background: url(../images/solutions-sp.png) no-repeat center center/contain;
	width: 88.9743589744vw;
	aspect-ratio: 1040/435;
	opacity: 1;
}

.p-service__text {
	font-size: 1.0625rem;
	line-height: 1.6;
	margin-top: 1.625rem;
}

.p-service__list {
	grid-template-columns: 1fr;
	row-gap: 1.25rem;
	margin-top: 2.1875rem;
	max-width: 25rem;
	margin-inline: auto;
}

.p-service__list-item {
	gap: 0.625rem;
	padding-top: 1.25rem;
}

.p-service__list-title {
	font-size: 1.4375rem;
	padding-bottom: 0.9375rem;
}

.p-service__list-title::before {
	width: 90%;
}

.p-service__list-text {
	font-size: 1rem;
	line-height: 1.4473684211;
	padding-inline: 1.25rem;
}

.p-sns {
	padding-block: 2.375rem 5.125rem;
}

.p-sns__list {
	gap: 1.5625rem;
}

.p-spacer img {
	aspect-ratio: 1170/360;
}

.p-top-contact {
	padding-top: 1.875rem;
	padding-bottom: 55.641025641vw;
	background: #04AFCC;
}

.p-top-contact::before {
	right: initial;
	left: 50%;
	transform: translateX(-50%);
	width: 54.358974359vw;
	opacity: 1;
}

.p-top-contact__text {
	font-size: 1.125rem;
	margin-top: 0.9375rem;
}

.p-top-contact__button {
	margin-top: 1.3125rem;
}

.p-vision {
	background: #04AFCC;
	padding-top: 2.25rem;
	padding-bottom: 43.5897435897vw;
}

.p-vision::before {
	left: 50%;
	transform: translateX(-50%);
	width: 90.5128205128vw;
	opacity: 1;
}

.p-vision::after {
	right: initial;
	left: calc(50% + 30.7692307692vw);
	transform: translateX(-50%);
	width: 26.9230769231vw;
}

.p-vision__text {
	font-size: 1.125rem;
	margin-top: 1.5rem;
}

.p-vision__container {
	flex-direction: column;
	margin-top: 2.5rem;
	max-width: 18.75rem;
	margin-inline: auto;
}

.p-vision__item {
	max-width: 12.5rem;
}

.p-vision__item:last-child {
	margin-top: -1.125rem;
	margin-left: auto;
}

.p-vision__img {
	max-width: 6.875rem;
}

.p-vision__item:first-child .p-vision__img::before {
	background: url(../images/arrow01_sp.png) no-repeat center center/contain;
	width: 3.75rem;
	aspect-ratio: 173/234;
	right: 2.5rem;
	bottom: -10.625rem;
}

.p-vision__item:last-child .p-vision__img::before {
	background: url(../images/arrow02_sp.png) no-repeat center center/contain;
	width: 4.375rem;
	aspect-ratio: 210/236;
	left: 2.5rem;
	bottom: -9.375rem;
}

.p-vision__img-text {
	font-size: 1.0625rem;
}

.p-vision__img-text.p-vision__img-text--center {
	font-size: 1.375rem;
}

.p-vision__item-text {
	font-size: 1.0625rem;
	margin-top: 0.875rem;
}

.p-vision__item-center {
	margin-top: 4.375rem;
	max-width: 14.375rem;
}

.p-vision__img.p-vision__img--center {
	max-width: 8.75rem;
}

.p-vision__item-text.p-vision__item-text--bottom {
	font-size: 1.1875rem;
}

.p-works {
	padding-block: 3.75rem 3.25rem;
}

.p-works__slick {
	margin-top: 3rem;
}

.p-works__text {
	font-size: 0.875rem;
	line-height: 1.7142857143;
	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 (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

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

.p-recruit-page__title-en::before,
.p-recruit-page__title-en::after {
	content: none;
}

}

@keyframes scroll {

0% {
	transform: translate(-50%, 0);
}

100% {
	transform: translate(-50%, 100%);
}

}

