html {
	font-size: 10px;
}

body {
	color: #111111;
	font-family: "Noto Sans JP", serif;
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.5;
	position: relative;
	-moz-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

.sp-none {
	display: block !important;
}

.pc-none {
	display: none !important;
}

.l-header {
	height: 8.8rem;
	position: sticky;
}

.l-header__inner {
	height: 100%;
	padding-inline: 2rem;
}

.l-header__container {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: space-between;
}

.l-header__logo-nav {
	align-items: center;
	display: flex;
	gap: 4.8rem;
}

.l-header__nav {
	align-items: center;
	display: flex;
	gap: 3.2rem;
	height: 100%;
	justify-content: flex-end;
}

.l-header__nav-list {
	align-items: center;
	display: flex;
	gap: 3.2rem;
	height: 100%;
	justify-content: center;
}

.l-header__nav-item {
	height: 100%;
}

.l-header__nav-link {
	align-items: center;
	display: flex;
	font-size: 1.5rem;
	font-weight: 500;
	height: 100%;
	transition: all 0.3s ease;
}

.l-header__nav-link:hover {
	color: #2563EB;
}

.l-header__info {
	align-items: center;
	display: flex;
	gap: 2.4rem;
}

.l-header__info-badge {
	align-items: center;
	display: flex;
	gap: 0.8rem;
}

.l-header__info-badge .circle {
	align-items: center;
	background-color: #2563EB;
	border-radius: 50%;
	color: #ffffff;
	display: flex;
	font-size: 1.5rem;
	font-weight: 700;
	height: 6.4rem;
	justify-content: center;
	width: 6.4rem;
}

.l-header__info-tel-number {
	align-items: center;
	display: flex;
	gap: 0.8rem;
}

.l-header__info-tel-number span {
	font-family: "Roboto", serif;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.25;
}

.l-header__info-tel-time {
	font-weight: 500;
}

.l-header__drawer-button {
	display: none;
}

.l-header__drawer-icon {
	background-color: #2563EB;
	border-radius: 9999px;
	height: 0.2rem;
	position: relative;
	transition: all 0.3s ease;
	width: 100%;
}

.l-main {
	overflow-x: hidden;
}

.l-footer {
	background-color: #111827;
	color: #ffffff;
}

.l-footer__inner {
	display: grid;
	gap: 4rem;
	grid-template-columns: 3fr 1fr;
	padding: 3.2rem 4rem 6.4rem;
}

.l-footer__content {
	display: flex;
	flex-wrap: wrap;
	-moz-column-gap: 4rem;
	column-gap: 4rem;
}

.l-footer__logo img {
	max-width: 28rem;
}

.l-footer__info {
	margin-top: 1.6rem;
}

.l-footer__info p {
	font-size: 1.5rem;
}

.l-footer__info p + p {
	margin-top: 0.2rem;
}

.l-footer__nav-item + .l-footer__nav-item {
	margin-top: 0.8rem;
}

.l-footer__nav-item a {
	position: relative;
	transition: all 0.3s ease;
}

.l-footer__nav-item a::before {
	background-color: #ffffff;
	content: "";
	height: 0.15rem;
	left: -2rem;
	position: absolute;
	top: 1.2rem;
	width: 1rem;
}

.l-footer__nav-item a:hover {
	opacity: 0.7;
}

.l-footer__nav-button {
	margin-top: 2.4rem;
}

.l-footer__copy {
	border-top: 0.5px solid #E5E7EB;
	padding-block: 1.2rem 2rem;
	text-align: center;
}

.l-footer__copy small {
	font-size: 1.2rem;
}

.c-button {
	align-items: center;
	background-color: #2563EB;
	border: 2px solid #2563EB;
	border-radius: 99rem;
	display: flex;
	gap: 0.8rem;
	justify-content: center;
	padding: 0.8rem 2rem 1rem 2rem;
	transition: all 0.3s ease;
	width: -moz-fit-content;
	width: fit-content;
}

.c-button:hover {
	background-color: #ffffff;
}

.c-button:hover .text {
	color: #2563EB;
}

.c-button:hover .icon path {
	fill: #2563EB;
}

.c-button .text {
	color: #ffffff;
	font-size: 1.5rem;
	font-weight: 500;
}

.c-button .icon {
	height: 2rem;
	width: 2rem;
	-o-object-fit: contain;
	object-fit: contain;
}

.c-button .icon path {
	fill: #ffffff;
}

.c-button.-green {
	background-color: #ffffff;
	border: 2px solid #10B981;
}

.c-button.-green .text {
	color: #10B981;
}

.c-button.-green .icon path {
	fill: #10B981;
}

.c-button.-green:hover {
	background-color: #10B981;
}

.c-button.-green:hover .text {
	color: #ffffff;
}

.c-button.-green:hover .icon path {
	fill: #ffffff;
}

.c-button.-newsletter {
	background-color: #ff8c42;
	border: 2px solid #ff8c42;
}

.c-button.-newsletter .text {
	color: #ffffff;
}

.c-button.-newsletter .icon {
	height: 2rem;
	width: 2rem;
}

.c-button.-newsletter .icon svg {
	height: 100%;
	width: 100%;
}

.c-button.-newsletter .icon path,
.c-button.-newsletter .icon line,
.c-button.-newsletter .icon rect {
	stroke: #ffffff;
}

.c-button.-newsletter:hover {
	background-color: #ffffff;
}

.c-button.-newsletter:hover .text {
	color: #ff8c42;
}

.c-button.-newsletter:hover .icon path,
.c-button.-newsletter:hover .icon line,
.c-button.-newsletter:hover .icon rect {
	stroke: #ff8c42;
}

.c-button.-square {
	border-radius: 0.6rem;
	padding: 1.4rem 2.4rem 1.6rem 2.4rem;
}

.c-button.-square .text {
	font-size: 1.8rem;
}

.c-button.-square .icon {
	height: 2.4rem;
	width: 2.4rem;
}

.c-button.-category {
	background-color: #ffffff;
	border: 1px solid #4a4a4a;
}

.c-button.-category.-active {
	background-color: #F0F6FC;
	border: 1.5px solid #2563EB;
}

.c-button.-category.-active .text {
	color: #2563EB;
}

.c-button.-category:not(.-active):hover {
	background-color: #F0F6FC;
}

.c-button.-category .text {
	color: #4a4a4a;
	font-size: 1.5rem;
}

.c-container {
	height: 100%;
	margin-inline: auto;
	max-width: 128rem;
	padding-inline: 4rem;
}

.c-container.-narrow {
	max-width: 98rem;
}

.c-link {
	align-items: center;
	display: flex;
	gap: 0.6rem;
	justify-content: center;
	transition: all 0.3s ease;
	width: -moz-fit-content;
	width: fit-content;
}

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

.c-link:hover .icon {
	transform: translateX(0.4rem);
}

.c-link .text {
	font-size: 1.5rem;
	font-weight: 500;
}

.c-link .icon {
	height: 2rem;
	transition: all 0.3s ease;
	width: 2rem;
	-o-object-fit: contain;
	object-fit: contain;
}

.c-link .icon path {
	fill: #111111;
}

.c-section {
	padding-bottom: 10rem;
	padding-top: 8rem;
}

.c-section-title {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.c-section-title.-left {
	align-items: flex-start;
}

.c-section-title__main {
	color: #2563EB;
	font-size: 3.2rem;
	font-weight: 700;
}

.c-section-title__sub {
	font-size: 1.6rem;
	font-weight: 500;
}

.p-article {
	margin-bottom: 10rem;
	margin-top: 6.4rem;
	min-height: calc(100vh - 50rem);
}

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

.p-article__head-category {
	width: -moz-fit-content;
	width: fit-content;
}

.p-article__head-category span {
	background-color: #2563EB;
	border-radius: 99rem;
	color: #ffffff;
	display: block;
	font-size: 1.5rem;
	font-weight: 500;
	padding: 0.4rem 1.6rem 0.6rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-article__head-category span.-orange {
	background-color: #F97316;
}

.p-article__head-category span.-purple {
	background-color: #8B5CF6;
}

.p-article__head-category span.-green {
	background-color: #10B981;
}

.p-article__head-category span.-gray {
	background-color: #4a4a4a;
}

.p-article__head-date {
	font-size: 1.5rem;
}

.p-article__head-title {
	border-bottom: 1px solid #E5E7EB;
	font-size: 3.2rem;
	font-weight: 700;
	margin-top: 2.4rem;
	padding-bottom: 1.2rem;
}

.p-article__head-thumbnail {
	margin-top: 3.2rem;
}

.p-article__head-thumbnail img {
	aspect-ratio: 16/9;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-article__body {
	margin-top: 4.8rem;
}

.p-article__body.-editor h2 {
	background-color: #2563EB;
	border-radius: 1.6rem;
	color: #ffffff;
	font-size: 2.2rem;
	font-weight: 700;
	padding: 1.2rem 2rem 1.4rem 2rem;
}

.p-article__body.-editor h2:not(:first-child) {
	margin-top: 5.6rem;
}

.p-article__body.-editor h3 {
	font-size: 2rem;
	font-weight: 500;
	padding-bottom: 1.2rem;
	position: relative;
}

.p-article__body.-editor h3::before {
	background-color: #2563EB;
	bottom: 0;
	content: "";
	height: 0.2rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.p-article__body.-editor h3:not(:first-child) {
	margin-top: 4.8rem;
}

.p-article__body.-editor h4 {
	font-size: 1.7rem;
}

.p-article__body.-editor p {
	font-size: 1.6rem;
	margin-top: 2.8rem;
}

.p-article__body.-editor p + p {
	margin-top: 1.2rem;
}

.p-article__body.-editor table tr td {
	border-bottom: 1px solid #E5E7EB;
	border-inline: none;
	border-top: none;
	padding: 2.8rem 2rem 2.8rem 2.4rem;
}

.p-article__body.-editor table tr td:first-child {
	border-bottom: 1px solid #183C9C;
	font-weight: 700;
	padding: 2.8rem 1rem 2.8rem 1.2rem;
	width: 25%;
}

.p-article__body.-editor .wp-block-file a {
	color: #1E4FCC;
	font-size: 1.6rem;
	text-decoration: underline;
}

.p-article__body.-editor .wp-block-image {
	margin-top: 3.2rem;
}

.p-article__body-button {
	display: flex;
	justify-content: center;
	margin-top: 8rem;
}

.p-bread-crumb {
	margin-top: 1rem;
	padding-left: 2.4rem;
}

.p-bread-crumb__list {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	-moz-column-gap: 0.8rem;
	column-gap: 0.8rem;
}

.p-bread-crumb__item {
	font-size: 1.5rem;
}

.p-bread-crumb__item:last-child {
	color: #4a4a4a;
}

.p-contact__inner {
	background-color: #F0F6FC;
	border-radius: 2rem;
	margin-inline: auto;
	max-width: 90rem;
	padding: 4.8rem 6rem 6.8rem;
	width: 100%;
}

.p-contact__field {
	display: grid;
	grid-template-columns: 1fr 2.5fr;
	-moz-column-gap: 4rem;
	column-gap: 4rem;
}

.p-contact__field.-textarea {
	align-items: start;
}

.p-contact__field + .p-contact__field {
	margin-top: 3.6rem;
}

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

.p-contact__field-label {
	font-size: 1.6rem;
	font-weight: 700;
}

.p-contact__field-tag {
	background-color: #ff7f7f;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 500;
	padding: 0.2rem 0.6rem;
}

.p-contact__field-tag.-type2 {
	background-color: #111827;
}

.p-contact__field-item .wpcf7-form-control-wrap {
	display: block;
	height: 100%;
	position: relative;
	width: 100%;
}

.p-contact__field-item .wpcf7-not-valid-tip {
	bottom: 0;
	font-size: 1.4rem;
	left: 0;
	line-height: 1;
	position: absolute;
	transform: translateY(calc(100% + 0.4rem));
}

.p-contact__text {
	border: none;
	font-size: 1.5rem;
	padding: 1rem 1rem 1rem 1.6rem;
	width: 100%;
}

.p-contact__textarea {
	border: none;
	font-size: 1.5rem;
	padding: 1rem 1rem 1rem 1.6rem;
	width: 100%;
}

.p-contact__agree {
	margin-top: 6rem;
	text-align: center;
}

.p-contact__agree label {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 1rem;
	justify-content: center;
}

.p-contact__agree label .p-contact__checkbox {
	cursor: pointer;
	height: 2.4rem;
	margin: 0;
	width: 2.4rem;
}

.p-contact__agree label .wpcf7-list-item-label {
	font-size: 1.7rem;
}

.p-contact__agree label .wpcf7-list-item-label a {
	padding-right: 0.6rem;
	text-decoration: underline;
}

.p-contact__submit {
	display: flex;
	justify-content: center;
	margin-top: 2rem;
}

.p-contact__submit .wpcf7-spinner {
	display: none;
}

.p-contact__button {
	background-color: #fff;
	border: 1px solid currentColor;
	border-radius: 1rem;
	cursor: pointer;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	max-width: 28rem;
	padding: 1.2rem 1.6rem;
	transition: all 0.3s ease;
	width: 100%;
}

.p-contact__button:hover:not(:disabled) {
	opacity: 0.7;
}

.p-contact__button:disabled {
	background-color: #ccc;
	cursor: not-allowed;
}

.wpcf7-response-output {
	border: none !important;
	color: #F97316;
	font-size: 1.8rem;
	margin: 2.4rem 2rem 1rem !important;
	padding: 0 !important;
	text-align: center;
}

.p-drawer-content {
	display: none;
}

.p-drawer-content.is-open {
	overflow-y: auto;
	transform: translateX(0%);
}

.p-drawer-content__inner {
	margin: 0 auto;
	padding: 4rem 2rem;
	position: relative;
}

.p-drawer-content__nav {
	margin-inline: auto;
	max-width: 56rem;
}

.p-drawer-content__nav-list {
	display: flex;
	flex-direction: column;
}

.p-drawer-content__nav-item {
	border-bottom: 1px solid #E5E7EB;
}

.p-drawer-content__nav-link {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 1rem 0.4rem 1.2rem 0;
}

.p-drawer-content__nav-link .text {
	color: #111111;
	font-size: 1.5rem;
}

.p-drawer-content__nav-link .icon {
	height: 2rem;
	transition: all 0.3s ease;
	width: 2rem;
	-o-object-fit: contain;
	object-fit: contain;
}

.p-drawer-content__nav-link .icon path {
	fill: #111111;
}

.p-drawer-content__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
	justify-content: center;
	margin-top: 2.4rem;
}

.p-page-head {
	height: 32rem;
	position: relative;
}

.p-page-head__bg {
	height: 100%;
	position: absolute;
	width: 100%;
	z-index: -1;
}

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

.p-page-head__title {
	align-items: center;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	text-align: center;
}

.p-page-head__title-ja {
	font-size: 4rem;
	font-weight: 700;
}

.p-page-head__title-en {
	color: #2563EB;
	font-size: 2.4rem;
	font-weight: 700;
}

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

.p-pagination .page-numbers {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid #4a4a4a;
	border-radius: 50%;
	color: #4a4a4a;
	display: flex;
	font-size: 1.6rem;
	font-weight: 700;
	height: 5rem;
	justify-content: center;
	margin-right: 1.2rem;
	transition: all 0.3s ease;
	width: 5rem;
}

.p-pagination .page-numbers:hover {
	background-color: #2563EB;
	color: #fff;
}

.p-pagination .page-numbers.current {
	background-color: #2563EB;
	color: #fff;
}

.p-pagination .page-numbers.next {
	border-radius: 4rem;
	margin-left: 3rem;
	margin-right: 0;
	width: 6rem;
}

.p-pagination .page-numbers.prev {
	border-radius: 4rem;
	margin-right: 4.2rem;
	width: 6rem;
}

.p-pagination .page-numbers.dots {
	border: none;
}

.p-service-intro {
	padding-bottom: 0;
	padding-top: 4.8rem;
}

.p-service-intro__text {
	font-size: 1.7rem;
	line-height: 2;
}

.p-service-archive__item {
	align-items: start;
	display: flex;
	gap: 4.8rem;
	padding: 4.8rem 0 6.4rem;
}

.p-service-archive__item:first-child {
	padding-top: 0;
}

.p-service-archive__item:nth-child(even) {
	flex-direction: row-reverse;
}

.p-service-archive__item-image {
	border-radius: 0.8rem;
	overflow: hidden;
	width: 45%;
}

.p-service-archive__item-image img {
	aspect-ratio: 4/3;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-service-archive__item-content {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	width: 55%;
}

.p-service-archive__item-title {
	align-items: center;
	border-bottom: 2px solid #2563EB;
	display: flex;
	font-size: 2.8rem;
	font-weight: 700;
	gap: 1.2rem;
	line-height: 1.5;
	padding-bottom: 1.2rem;
	position: relative;
}

.p-service-archive__item-title-icon {
	animation: float 3s ease-in-out infinite;
	color: #2563EB;
	flex-shrink: 0;
	height: 3.2rem;
	width: 3.2rem;
}

.p-service-archive__item-description {
	font-size: 1.6rem;
	line-height: 1.8;
}

.p-service-archive__item-description p {
	margin-bottom: 1.6rem;
}

.p-service-archive__item-description p:last-child {
	margin-bottom: 0;
}

.p-service-archive__empty {
	color: #4a4a4a;
	font-size: 1.6rem;
	padding: 8rem 0;
	text-align: center;
}

.p-service-cta__inner {
	background: linear-gradient(135deg, #f0f6fc 0%, #e3f0ff 100%);
	border-radius: 2.4rem;
	box-shadow: 0 8px 32px rgba(0, 94, 184, 0.08);
	overflow: hidden;
	padding: 6.4rem 8rem;
	position: relative;
	text-align: center;
}

.p-service-cta__inner::before {
	background: radial-gradient(circle, rgba(0, 94, 184, 0.06) 0%, transparent 70%);
	border-radius: 50%;
	content: "";
	height: 40rem;
	position: absolute;
	right: -10%;
	top: -50%;
	width: 40rem;
}

.p-service-cta__inner::after {
	background: radial-gradient(circle, rgba(0, 94, 184, 0.04) 0%, transparent 70%);
	border-radius: 50%;
	bottom: -30%;
	content: "";
	height: 30rem;
	left: -5%;
	position: absolute;
	width: 30rem;
}

.p-service-cta__content {
	position: relative;
	z-index: 1;
}

.p-service-cta__title {
	color: #2563EB;
	font-size: 3.6rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.4;
	margin-bottom: 1.6rem;
}

.p-service-cta__text {
	color: #333;
	font-size: 1.7rem;
	line-height: 1.9;
	margin-bottom: 4.8rem;
}

.p-service-cta__actions {
	display: grid;
	gap: 3.2rem;
	grid-template-columns: 1fr 1fr;
	margin: 0 auto;
	max-width: 90rem;
}

.p-service-cta__tel {
	background: white;
	border-radius: 1.6rem;
	box-shadow: 0 4px 16px rgba(0, 94, 184, 0.08);
	display: flex;
	gap: 2.4rem;
	overflow: hidden;
	padding: 3.2rem 2.4rem;
	position: relative;
	text-align: left;
	transition: all 0.3s ease;
}

.p-service-cta__tel::before {
	background: #2563EB;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transform: scaleY(0);
	transform-origin: bottom;
	transition: transform 0.3s ease;
	width: 4px;
}

.p-service-cta__tel:hover {
	box-shadow: 0 8px 24px rgba(0, 94, 184, 0.12);
	transform: translateY(-4px);
}

.p-service-cta__tel:hover::before {
	transform: scaleY(1);
	transform-origin: top;
}

.p-service-cta__tel:hover .p-service-cta__tel-icon {
	transform: scale(1.1);
}

.p-service-cta__tel-icon {
	align-items: center;
	background: linear-gradient(135deg, #e3f0ff 0%, #f0f6fc 100%);
	border-radius: 1.2rem;
	display: flex;
	flex-shrink: 0;
	height: 5.6rem;
	justify-content: center;
	transition: transform 0.3s ease;
	width: 5.6rem;
}

.p-service-cta__tel-icon img {
	height: 60%;
	width: 60%;
}

.p-service-cta__tel-content {
	flex: 1;
}

.p-service-cta__tel-label {
	color: #4a4a4a;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin-bottom: 0.6rem;
}

.p-service-cta__tel-number {
	color: #2563EB;
	display: block;
	font-size: 3.2rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	margin-bottom: 0.6rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.p-service-cta__tel-number:hover {
	color: rgb(0, 120.0543478261, 235);
}

.p-service-cta__tel-hours {
	color: #4a4a4a;
	font-size: 1.4rem;
	font-weight: 500;
}

.p-service-cta__mail {
	align-items: center;
	display: flex;
	justify-content: center;
}

.p-service-cta__mail .c-button {
	align-items: center;
	border-radius: 1.6rem;
	box-shadow: 0 4px 16px rgba(0, 94, 184, 0.16);
	color: white;
	display: inline-flex;
	font-size: 1.8rem;
	font-weight: 700;
	gap: 1.2rem;
	justify-content: center;
	overflow: hidden;
	padding: 2.4rem 2.8rem;
	position: relative;
	transition: all 0.3s ease;
	width: -moz-fit-content;
	width: fit-content;
}

.p-service-cta__mail .c-button::before {
	background: rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: width 0.6s, height 0.6s;
	width: 0;
}

.p-service-cta__mail .c-button:hover {
	box-shadow: 0 8px 24px rgba(0, 94, 184, 0.24);
	transform: translateY(-4px);
}

.p-service-cta__mail .c-button:hover::before {
	height: 30rem;
	width: 30rem;
}

.p-service-cta__mail .c-button:hover img {
	animation: bounce 0.6s ease;
}

.p-service-cta__mail .c-button img {
	filter: brightness(0) invert(1);
	height: 2.4rem;
	position: relative;
	width: 2.4rem;
	z-index: 1;
}

.p-service-cta__mail .c-button span {
	color: white;
	position: relative;
	z-index: 1;
}

.p-top-buttons {
	background: linear-gradient(180deg, #F0F6FC 0%, #fff 100%);
	padding-block: 4.8rem;
}

.p-top-buttons__group {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 2.4rem;
	justify-content: center;
}

.p-top-buttons__group .c-button {
	flex: 0 1 auto;
	min-width: 24rem;
}

.p-top-concept {
	position: relative;
}

.p-top-concept__bg-wrapper {
	clip-path: inset(0 0 0 0);
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.p-top-concept__bg {
	height: 100vh;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
}

.p-top-concept__bg picture {
	display: block;
	height: 100%;
	width: 100%;
}

.p-top-concept__bg picture img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-top-concept__bg::before {
	background: linear-gradient(to right, rgba(255, 255, 255, 0.9) 40%, rgba(255, 255, 255, 0) 100%);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.p-top-concept__inner {
	position: relative;
	z-index: 1;
}

.p-top-concept__media {
	display: grid;
	grid-template-columns: 1fr 1fr;
	-moz-column-gap: 6.4rem;
	column-gap: 6.4rem;
}

.p-top-concept__text-title {
	font-size: 3.2rem;
	font-weight: 700;
}

.p-top-concept__text-description {
	margin-top: 2.4rem;
}

.p-top-concept__text-description p {
	font-size: 1.8rem;
	font-weight: 500;
}

.p-top-concept__text-description p + p {
	margin-top: 1.6rem;
}

.p-top-concept__text-company {
	font-size: 1.8rem;
	font-weight: 500;
	margin-top: 3.2rem;
	text-align: right;
}

.p-top-concept__text-name {
	font-size: 2.4rem;
	font-weight: 500;
	margin-top: 0.4rem;
	text-align: right;
}

.p-top-concept__image img {
	box-shadow: 3px 3px 7px 0 rgba(0, 0, 0, 0.3);
	width: 100%;
}

.p-top-access {
	background-color: #F0F6FC;
}

.p-top-access__maps {
	margin-top: 4.8rem;
}

.p-top-service {
	background-color: #F0F6FC;
}

.p-top-service__list {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	margin-top: 6.4rem;
	-moz-column-gap: 3.2rem;
	column-gap: 3.2rem;
	row-gap: 5.6rem;
}

.p-top-service__item {
	background-color: #ffffff;
	border: 1px solid #E5E7EB;
	border-radius: 1.2rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	display: flex;
	flex-direction: column;
	grid-column: span 4;
	justify-content: space-between;
	overflow: hidden;
}

.p-top-service__item:nth-child(1) {
	grid-column: 3/7;
}

.p-top-service__item:nth-child(2) {
	grid-column: 7/11;
}

.p-top-service__item:nth-child(n+3) {
	grid-column: span 4;
}

.p-top-service__item-image {
	aspect-ratio: 4/3;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-top-service__item-title {
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 1.8rem;
	margin-top: 1.6rem;
	text-align: center;
}

.p-top-service__item-description {
	font-size: 1.5rem;
	margin-top: 1rem;
}

.p-top-service__more {
	display: flex;
	justify-content: flex-end;
	margin-top: 2.4rem;
	padding-right: 1rem;
}

.p-top-service__more {
	display: flex;
	justify-content: center;
	margin-top: 6.4rem;
}

.p-top-works {
	overflow: hidden;
}

.p-top-works__slider {
	margin-top: 6.4rem;
}

.p-top-works__slider .swiper {
	overflow: hidden;
	padding-bottom: 3.2rem;
	padding-top: 0.8rem;
}

.p-top-works__slider .swiper-wrapper {
	align-items: stretch;
	transition-timing-function: linear;
}

.p-top-works__slider .swiper-slide {
	height: auto;
}

.p-top-works__card {
	height: 100%;
	width: 380px;
}

.p-top-works__card-link {
	background: #fff;
	border-radius: 0.8rem;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 360px;
	overflow: hidden;
	transition: all 0.3s ease;
}

.p-top-works__card-link:hover {
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
	transform: translateY(-4px);
}

.p-top-works__card-image {
	border-radius: 0.8rem 0.8rem 0 0;
	flex-shrink: 0;
	overflow: hidden;
	padding-top: 56.25%;
	position: relative;
	width: 100%;
}

.p-top-works__card-image img {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.p-top-works__card-link:hover .p-top-works__card-image img {
	transform: scale(1.05);
}

.p-top-works__card-category {
	background-color: #2563EB;
	border-radius: 0.4rem;
	color: #fff;
	font-size: 1.3rem;
	font-weight: 500;
	left: 1.2rem;
	padding: 0.4rem 1.2rem 0.5rem;
	position: absolute;
	top: 1.2rem;
	z-index: 1;
}

.p-top-works__card-category.-orange {
	background-color: #F97316;
}

.p-top-works__card-category.-purple {
	background-color: #8B5CF6;
}

.p-top-works__card-category.-green {
	background-color: #10B981;
}

.p-top-works__card-category.-gray {
	background-color: #4a4a4a;
}

.p-top-works__card-text {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: 2rem 1.6rem 1.6rem;
}

.p-top-works__card-date {
	color: #4a4a4a;
	display: block;
	font-size: 1.3rem;
	margin-bottom: 0.8rem;
}

.p-top-works__card-title {
	display: -webkit-box;
	flex-grow: 1;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 0;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

.p-top-works__card-more {
	margin-top: 3.2rem;
	padding: 0 1.6rem 2rem;
	text-align: right;
}

.p-top-works__card-more .c-link {
	align-items: center;
	color: #111111;
	display: inline-flex;
	font-size: 1.4rem;
	font-weight: 500;
	gap: 0.4rem;
	transition: all 0.3s ease;
}

.p-top-works__card-more .c-link .icon {
	align-items: center;
	display: flex;
	height: 1.6rem;
	justify-content: center;
	transition: transform 0.3s ease;
	width: 1.6rem;
}

.p-top-works__card-more .c-link .icon svg {
	height: 100%;
	width: 100%;
}

.p-top-works__card-more .c-link .icon svg path {
	fill: #111111;
}

.p-top-works__card-link:hover .p-top-works__card-more .c-link .icon {
	transform: translateX(4px);
}

.p-top-works__more {
	display: flex;
	justify-content: center;
	margin-top: 4.8rem !important;
}

.p-top-staff {
	position: relative;
}

.p-top-staff__bg {
	height: 100%;
	left: 0;
	pointer-events: none;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.p-top-staff__bg > svg {
	height: auto;
	opacity: 0.2;
	position: absolute;
	transform-origin: center center;
	width: 50%;
}

.p-top-staff__bg > :nth-child(1) {
	animation: rotateScale 70s linear infinite;
	left: -10%;
	top: -10%;
}

.p-top-staff__bg > :nth-child(2) {
	animation: rotateScaleReverse 90s linear infinite;
	left: -20%;
	top: 0;
}

.p-top-staff__bg > :nth-child(3) {
	animation: rotateScaleReverse 80s linear infinite;
	bottom: -30%;
	right: -20%;
}

.p-top-staff__bg > :nth-child(4) {
	animation: rotateScale 100s linear infinite;
	bottom: -20%;
	right: -20%;
}

.p-top-staff__slider {
	margin-right: calc(-50vw + 50%);
	margin-top: 6.4rem;
	padding-bottom: 12rem;
	position: relative;
}

.p-top-staff__slider .swiper {
	padding-right: 10rem !important;
}

.p-top-staff__card {
	max-width: 32rem;
}

.p-top-staff__card:nth-of-type(even) {
	margin-top: 5.6rem;
}

.p-top-staff__profile {
	position: relative;
}

.p-top-staff__profile img {
	aspect-ratio: 3/4;
	width: 100%;
	-o-object-fit: cover;
	border-radius: 2rem;
	object-fit: cover;
}

.p-top-staff__info {
	background-color: rgba(255, 255, 255, 0.9);
	border-radius: 2.4rem 0 0 0;
	bottom: 0;
	padding: 2.4rem 0.8rem 0 2.4rem;
	position: absolute;
	right: 0;
	width: 70%;
}

.p-top-staff__info-name {
	font-size: 2rem;
	font-weight: 700;
}

.p-top-staff__info-position,
.p-top-staff__info-birth {
	color: #4a4a4a;
	font-size: 1.5rem;
}

.p-top-staff__info-position {
	margin-top: 1rem;
}

.p-top-staff__comment {
	margin-top: 1.6rem;
}

.p-top-staff__comment p {
	font-size: 1.7rem;
	font-weight: 700;
	letter-spacing: 0.15em;
}

.p-top-staff__nav {
	align-items: center;
	bottom: 0;
	display: flex;
	gap: 2.4rem;
	left: 0;
	position: absolute;
}

.p-top-staff__nav .swiper-button-prev,
.p-top-staff__nav .swiper-button-next {
	align-items: center;
	background-color: #fff;
	border: 2px solid #111111;
	border-radius: 50%;
	display: flex;
	height: 6.4rem;
	justify-content: center;
	position: static;
	width: 6.4rem;
}

.p-top-staff__nav .swiper-button-prev::after,
.p-top-staff__nav .swiper-button-next::after {
	color: #111111;
	font-size: 2rem;
	left: 50%;
	top: 50%;
	transform: translateY(-50% -50%);
	transition: all 0.3s ease;
}

.p-top-staff__nav .swiper-button-prev:hover::after {
	transform: translateX(-0.6rem);
}

.p-top-staff__nav .swiper-button-next:hover::after {
	transform: translateX(0.6rem);
}

.p-main-visual {
	overflow: hidden;
	position: relative;
}

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

.p-main-visual__bg img {
	display: block;
	width: 100%;
}

.p-main-visual__inner {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}

.p-main-visual__container {
	align-items: center;
	display: flex;
	height: 100%;
	margin-inline: auto;
	max-width: 140rem;
	padding-block: 5.6rem;
}

.p-main-visual__content {
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.p-main-visual__content-main {
	color: #ffffff;
	font-size: 5.6rem;
	font-weight: 700;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5), 0 4px 16px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.2);
}

.p-main-visual__content-sub {
	color: #ffffff;
	font-size: 2.8rem;
	font-weight: 500;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5), 0 4px 16px rgba(0, 0, 0, 0.3), 0 0 30px rgba(0, 0, 0, 0.2);
}

.p-main-visual__content-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 2.4rem;
}

.p-main-visual__content-buttons.-letter {
	margin-top: -1.4rem;
}

.p-main-visual__gallery {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	overflow-x: hidden;
	padding: 0 1rem 1rem 0;
	position: relative;
	z-index: 2;
}

.p-main-visual__gallery img {
	box-shadow: 3px 3px 7px 0 rgba(0, 0, 0, 0.3);
}

.p-main-visual__gallery img:nth-of-type(1) {
	align-self: flex-start;
	aspect-ratio: 4/3;
	width: 80%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-main-visual__gallery img:nth-of-type(2) {
	align-self: flex-end;
	aspect-ratio: 4/3;
	margin-top: 3.2rem;
	width: 40%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-main-visual__gallery img:nth-of-type(3) {
	align-self: flex-end;
	aspect-ratio: 4/3;
	margin-right: 30%;
	margin-top: -4rem;
	width: 40%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-map-card {
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	justify-content: space-between;
}

.p-map-card__text p {
	line-height: 1.8;
}

.p-map-card__title {
	font-size: 2.2rem;
	font-weight: 500;
	position: relative;
}

.p-map-card__address {
	margin-top: 1.6rem;
}

.p-map-card__map {
	border-radius: 2.4rem;
	overflow: hidden;
}

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

.p-news__categories {
	display: flex;
	flex-wrap: wrap;
	margin-inline: auto;
	max-width: 88rem;
	-moz-column-gap: 2.4rem;
	column-gap: 2.4rem;
	row-gap: 1.2rem;
}

.p-news__list {
	display: flex;
	flex-direction: column;
	margin-inline: auto;
	margin-top: 4rem;
	max-width: 88rem;
}

.p-news__list-item {
	border-bottom: 1px solid #E5E7EB;
	position: relative;
	transition: all 0.3s ease;
}

.p-news__list-item::before {
	background: #111827;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	transition: all 0.3s ease;
	width: 0%;
	z-index: 0;
}

.p-news__list-item:hover {
	opacity: 0.7;
}

.p-news__list-item:hover::before {
	width: 100%;
}

.p-news__list-link {
	align-items: center;
	display: flex;
	padding: 2.4rem 1.2rem 2.4rem 0;
}

.p-news__date {
	flex-shrink: 0;
	font-size: 1.6rem;
	width: 14rem;
}

.p-news__category {
	flex-shrink: 0;
	width: 16rem;
}

.p-news__category span {
	background-color: #2563EB;
	border-radius: 99rem;
	color: #ffffff;
	display: block;
	font-size: 1.3rem;
	font-weight: 500;
	padding: 0.4rem 1.6rem 0.6rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-news__category span.-orange {
	background-color: #F97316;
}

.p-news__category span.-purple {
	background-color: #8B5CF6;
}

.p-news__category span.-green {
	background-color: #10B981;
}

.p-news__category span.-gray {
	background-color: #4a4a4a;
}

.p-news__more {
	display: flex;
	justify-content: flex-end;
	margin-inline: auto;
	margin-top: 2.4rem;
	max-width: 88rem;
}

.p-fixed-news {
	backdrop-filter: blur(10px);
	background: rgba(255, 255, 255, 0.6);
	border: 1px solid #E5E7EB;
	bottom: 2rem;
	left: 2rem;
	padding: 0rem 2.8rem 2rem;
	position: fixed;
	z-index: 10;
	-webkit-backdrop-filter: blur(10px);
	border-radius: 0.8rem;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
	transition: 0.25s ease;
	will-change: opacity, transform;
	z-index: 10;
}

.p-fixed-news.is-hidden {
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px);
}

.p-fixed-news .p-news__date {
	font-size: 1.5rem;
}

.p-fixed-news .p-news__title {
	font-weight: 500;
}

.p-fixed-news .p-news__link-icon {
	align-items: center;
	display: inline-flex;
	margin-left: auto;
	padding-left: 2.4rem;
}

.p-fixed-news .p-news__link-icon svg {
	height: 20px;
	opacity: 0.85;
	transition: opacity 0.2s ease;
	width: 20px;
}

.p-fixed-news .p-news__link-icon svg path,
.p-fixed-news .p-news__link-icon svg polygon,
.p-fixed-news .p-news__link-icon svg circle,
.p-fixed-news .p-news__link-icon svg rect {
	fill: #4a4a4a !important;
	stroke: none !important;
}

.p-fixed-news .p-news__list-item:hover .p-news__link-icon svg {
	opacity: 1;
}

.p-fixed-news .p-fixed-news__head {
	align-items: center;
	display: flex;
	justify-content: flex-start;
	padding-top: 2rem;
}

.p-fixed-news .p-fixed-news__badge {
	align-items: center;
	background: linear-gradient(90deg, #F97316, #8B5CF6);
	border-radius: 999rem;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
	color: #fff;
	display: inline-flex;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	padding: 1rem 2.8rem 1.2rem;
}

.u-flex-center {
	display: flex;
	justify-content: center;
}

.u-m0 {
	margin: 0px !important;
}

.u-mt0 {
	margin-top: 0px !important;
}

.u-mr0 {
	margin-right: 0px !important;
}

.u-mb0 {
	margin-bottom: 0px !important;
}

.u-ml0 {
	margin-left: 0px !important;
}

.u-mx0 {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.u-my0 {
	margin-bottom: 0px !important;
	margin-top: 0px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m4 {
	margin: 4px !important;
}

.u-mt4 {
	margin-top: 4px !important;
}

.u-mr4 {
	margin-right: 4px !important;
}

.u-mb4 {
	margin-bottom: 4px !important;
}

.u-ml4 {
	margin-left: 4px !important;
}

.u-mx4 {
	margin-left: 4px !important;
	margin-right: 4px !important;
}

.u-my4 {
	margin-bottom: 4px !important;
	margin-top: 4px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m8 {
	margin: 8px !important;
}

.u-mt8 {
	margin-top: 8px !important;
}

.u-mr8 {
	margin-right: 8px !important;
}

.u-mb8 {
	margin-bottom: 8px !important;
}

.u-ml8 {
	margin-left: 8px !important;
}

.u-mx8 {
	margin-left: 8px !important;
	margin-right: 8px !important;
}

.u-my8 {
	margin-bottom: 8px !important;
	margin-top: 8px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m12 {
	margin: 12px !important;
}

.u-mt12 {
	margin-top: 12px !important;
}

.u-mr12 {
	margin-right: 12px !important;
}

.u-mb12 {
	margin-bottom: 12px !important;
}

.u-ml12 {
	margin-left: 12px !important;
}

.u-mx12 {
	margin-left: 12px !important;
	margin-right: 12px !important;
}

.u-my12 {
	margin-bottom: 12px !important;
	margin-top: 12px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m16 {
	margin: 16px !important;
}

.u-mt16 {
	margin-top: 16px !important;
}

.u-mr16 {
	margin-right: 16px !important;
}

.u-mb16 {
	margin-bottom: 16px !important;
}

.u-ml16 {
	margin-left: 16px !important;
}

.u-mx16 {
	margin-left: 16px !important;
	margin-right: 16px !important;
}

.u-my16 {
	margin-bottom: 16px !important;
	margin-top: 16px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m20 {
	margin: 20px !important;
}

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

.u-mr20 {
	margin-right: 20px !important;
}

.u-mb20 {
	margin-bottom: 20px !important;
}

.u-ml20 {
	margin-left: 20px !important;
}

.u-mx20 {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.u-my20 {
	margin-bottom: 20px !important;
	margin-top: 20px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m24 {
	margin: 24px !important;
}

.u-mt24 {
	margin-top: 24px !important;
}

.u-mr24 {
	margin-right: 24px !important;
}

.u-mb24 {
	margin-bottom: 24px !important;
}

.u-ml24 {
	margin-left: 24px !important;
}

.u-mx24 {
	margin-left: 24px !important;
	margin-right: 24px !important;
}

.u-my24 {
	margin-bottom: 24px !important;
	margin-top: 24px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m32 {
	margin: 32px !important;
}

.u-mt32 {
	margin-top: 32px !important;
}

.u-mr32 {
	margin-right: 32px !important;
}

.u-mb32 {
	margin-bottom: 32px !important;
}

.u-ml32 {
	margin-left: 32px !important;
}

.u-mx32 {
	margin-left: 32px !important;
	margin-right: 32px !important;
}

.u-my32 {
	margin-bottom: 32px !important;
	margin-top: 32px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m40 {
	margin: 40px !important;
}

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

.u-mr40 {
	margin-right: 40px !important;
}

.u-mb40 {
	margin-bottom: 40px !important;
}

.u-ml40 {
	margin-left: 40px !important;
}

.u-mx40 {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.u-my40 {
	margin-bottom: 40px !important;
	margin-top: 40px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m48 {
	margin: 48px !important;
}

.u-mt48 {
	margin-top: 48px !important;
}

.u-mr48 {
	margin-right: 48px !important;
}

.u-mb48 {
	margin-bottom: 48px !important;
}

.u-ml48 {
	margin-left: 48px !important;
}

.u-mx48 {
	margin-left: 48px !important;
	margin-right: 48px !important;
}

.u-my48 {
	margin-bottom: 48px !important;
	margin-top: 48px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m56 {
	margin: 56px !important;
}

.u-mt56 {
	margin-top: 56px !important;
}

.u-mr56 {
	margin-right: 56px !important;
}

.u-mb56 {
	margin-bottom: 56px !important;
}

.u-ml56 {
	margin-left: 56px !important;
}

.u-mx56 {
	margin-left: 56px !important;
	margin-right: 56px !important;
}

.u-my56 {
	margin-bottom: 56px !important;
	margin-top: 56px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m64 {
	margin: 64px !important;
}

.u-mt64 {
	margin-top: 64px !important;
}

.u-mr64 {
	margin-right: 64px !important;
}

.u-mb64 {
	margin-bottom: 64px !important;
}

.u-ml64 {
	margin-left: 64px !important;
}

.u-mx64 {
	margin-left: 64px !important;
	margin-right: 64px !important;
}

.u-my64 {
	margin-bottom: 64px !important;
	margin-top: 64px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m72 {
	margin: 72px !important;
}

.u-mt72 {
	margin-top: 72px !important;
}

.u-mr72 {
	margin-right: 72px !important;
}

.u-mb72 {
	margin-bottom: 72px !important;
}

.u-ml72 {
	margin-left: 72px !important;
}

.u-mx72 {
	margin-left: 72px !important;
	margin-right: 72px !important;
}

.u-my72 {
	margin-bottom: 72px !important;
	margin-top: 72px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m80 {
	margin: 80px !important;
}

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

.u-mr80 {
	margin-right: 80px !important;
}

.u-mb80 {
	margin-bottom: 80px !important;
}

.u-ml80 {
	margin-left: 80px !important;
}

.u-mx80 {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.u-my80 {
	margin-bottom: 80px !important;
	margin-top: 80px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m100 {
	margin: 100px !important;
}

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

.u-mr100 {
	margin-right: 100px !important;
}

.u-mb100 {
	margin-bottom: 100px !important;
}

.u-ml100 {
	margin-left: 100px !important;
}

.u-mx100 {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.u-my100 {
	margin-bottom: 100px !important;
	margin-top: 100px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-m140 {
	margin: 140px !important;
}

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

.u-mr140 {
	margin-right: 140px !important;
}

.u-mb140 {
	margin-bottom: 140px !important;
}

.u-ml140 {
	margin-left: 140px !important;
}

.u-mx140 {
	margin-left: 140px !important;
	margin-right: 140px !important;
}

.u-my140 {
	margin-bottom: 140px !important;
	margin-top: 140px !important;
}

.u-mx-auto {
	margin-inline: auto;
}

.u-p0 {
	padding: 0px !important;
}

.u-pt0 {
	padding-top: 0px !important;
}

.u-pr0 {
	padding-right: 0px !important;
}

.u-pb0 {
	padding-bottom: 0px !important;
}

.u-pl0 {
	padding-left: 0px !important;
}

.u-px0 {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.u-py0 {
	padding-bottom: 0px !important;
	padding-top: 0px !important;
}

.u-p4 {
	padding: 4px !important;
}

.u-pt4 {
	padding-top: 4px !important;
}

.u-pr4 {
	padding-right: 4px !important;
}

.u-pb4 {
	padding-bottom: 4px !important;
}

.u-pl4 {
	padding-left: 4px !important;
}

.u-px4 {
	padding-left: 4px !important;
	padding-right: 4px !important;
}

.u-py4 {
	padding-bottom: 4px !important;
	padding-top: 4px !important;
}

.u-p8 {
	padding: 8px !important;
}

.u-pt8 {
	padding-top: 8px !important;
}

.u-pr8 {
	padding-right: 8px !important;
}

.u-pb8 {
	padding-bottom: 8px !important;
}

.u-pl8 {
	padding-left: 8px !important;
}

.u-px8 {
	padding-left: 8px !important;
	padding-right: 8px !important;
}

.u-py8 {
	padding-bottom: 8px !important;
	padding-top: 8px !important;
}

.u-p12 {
	padding: 12px !important;
}

.u-pt12 {
	padding-top: 12px !important;
}

.u-pr12 {
	padding-right: 12px !important;
}

.u-pb12 {
	padding-bottom: 12px !important;
}

.u-pl12 {
	padding-left: 12px !important;
}

.u-px12 {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

.u-py12 {
	padding-bottom: 12px !important;
	padding-top: 12px !important;
}

.u-p16 {
	padding: 16px !important;
}

.u-pt16 {
	padding-top: 16px !important;
}

.u-pr16 {
	padding-right: 16px !important;
}

.u-pb16 {
	padding-bottom: 16px !important;
}

.u-pl16 {
	padding-left: 16px !important;
}

.u-px16 {
	padding-left: 16px !important;
	padding-right: 16px !important;
}

.u-py16 {
	padding-bottom: 16px !important;
	padding-top: 16px !important;
}

.u-p20 {
	padding: 20px !important;
}

.u-pt20 {
	padding-top: 20px !important;
}

.u-pr20 {
	padding-right: 20px !important;
}

.u-pb20 {
	padding-bottom: 20px !important;
}

.u-pl20 {
	padding-left: 20px !important;
}

.u-px20 {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.u-py20 {
	padding-bottom: 20px !important;
	padding-top: 20px !important;
}

.u-p24 {
	padding: 24px !important;
}

.u-pt24 {
	padding-top: 24px !important;
}

.u-pr24 {
	padding-right: 24px !important;
}

.u-pb24 {
	padding-bottom: 24px !important;
}

.u-pl24 {
	padding-left: 24px !important;
}

.u-px24 {
	padding-left: 24px !important;
	padding-right: 24px !important;
}

.u-py24 {
	padding-bottom: 24px !important;
	padding-top: 24px !important;
}

.u-p32 {
	padding: 32px !important;
}

.u-pt32 {
	padding-top: 32px !important;
}

.u-pr32 {
	padding-right: 32px !important;
}

.u-pb32 {
	padding-bottom: 32px !important;
}

.u-pl32 {
	padding-left: 32px !important;
}

.u-px32 {
	padding-left: 32px !important;
	padding-right: 32px !important;
}

.u-py32 {
	padding-bottom: 32px !important;
	padding-top: 32px !important;
}

.u-p40 {
	padding: 40px !important;
}

.u-pt40 {
	padding-top: 40px !important;
}

.u-pr40 {
	padding-right: 40px !important;
}

.u-pb40 {
	padding-bottom: 40px !important;
}

.u-pl40 {
	padding-left: 40px !important;
}

.u-px40 {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.u-py40 {
	padding-bottom: 40px !important;
	padding-top: 40px !important;
}

.u-p48 {
	padding: 48px !important;
}

.u-pt48 {
	padding-top: 48px !important;
}

.u-pr48 {
	padding-right: 48px !important;
}

.u-pb48 {
	padding-bottom: 48px !important;
}

.u-pl48 {
	padding-left: 48px !important;
}

.u-px48 {
	padding-left: 48px !important;
	padding-right: 48px !important;
}

.u-py48 {
	padding-bottom: 48px !important;
	padding-top: 48px !important;
}

.u-p56 {
	padding: 56px !important;
}

.u-pt56 {
	padding-top: 56px !important;
}

.u-pr56 {
	padding-right: 56px !important;
}

.u-pb56 {
	padding-bottom: 56px !important;
}

.u-pl56 {
	padding-left: 56px !important;
}

.u-px56 {
	padding-left: 56px !important;
	padding-right: 56px !important;
}

.u-py56 {
	padding-bottom: 56px !important;
	padding-top: 56px !important;
}

.u-p64 {
	padding: 64px !important;
}

.u-pt64 {
	padding-top: 64px !important;
}

.u-pr64 {
	padding-right: 64px !important;
}

.u-pb64 {
	padding-bottom: 64px !important;
}

.u-pl64 {
	padding-left: 64px !important;
}

.u-px64 {
	padding-left: 64px !important;
	padding-right: 64px !important;
}

.u-py64 {
	padding-bottom: 64px !important;
	padding-top: 64px !important;
}

.u-p72 {
	padding: 72px !important;
}

.u-pt72 {
	padding-top: 72px !important;
}

.u-pr72 {
	padding-right: 72px !important;
}

.u-pb72 {
	padding-bottom: 72px !important;
}

.u-pl72 {
	padding-left: 72px !important;
}

.u-px72 {
	padding-left: 72px !important;
	padding-right: 72px !important;
}

.u-py72 {
	padding-bottom: 72px !important;
	padding-top: 72px !important;
}

.u-p80 {
	padding: 80px !important;
}

.u-pt80 {
	padding-top: 80px !important;
}

.u-pr80 {
	padding-right: 80px !important;
}

.u-pb80 {
	padding-bottom: 80px !important;
}

.u-pl80 {
	padding-left: 80px !important;
}

.u-px80 {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.u-py80 {
	padding-bottom: 80px !important;
	padding-top: 80px !important;
}

.u-p88 {
	padding: 88px !important;
}

.u-pt88 {
	padding-top: 88px !important;
}

.u-pr88 {
	padding-right: 88px !important;
}

.u-pb88 {
	padding-bottom: 88px !important;
}

.u-pl88 {
	padding-left: 88px !important;
}

.u-px88 {
	padding-left: 88px !important;
	padding-right: 88px !important;
}

.u-py88 {
	padding-bottom: 88px !important;
	padding-top: 88px !important;
}

.u-p96 {
	padding: 96px !important;
}

.u-pt96 {
	padding-top: 96px !important;
}

.u-pr96 {
	padding-right: 96px !important;
}

.u-pb96 {
	padding-bottom: 96px !important;
}

.u-pl96 {
	padding-left: 96px !important;
}

.u-px96 {
	padding-left: 96px !important;
	padding-right: 96px !important;
}

.u-py96 {
	padding-bottom: 96px !important;
	padding-top: 96px !important;
}

.u-p100 {
	padding: 100px !important;
}

.u-pt100 {
	padding-top: 100px !important;
}

.u-pr100 {
	padding-right: 100px !important;
}

.u-pb100 {
	padding-bottom: 100px !important;
}

.u-pl100 {
	padding-left: 100px !important;
}

.u-px100 {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.u-py100 {
	padding-bottom: 100px !important;
	padding-top: 100px !important;
}

.u-text-left {
	text-align: left !important;
}

.u-text-center {
	text-align: center !important;
}

.u-text-right {
	text-align: right !important;
}

.u-text-justify {
	text-align: justify !important;
}

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

.u-p0-sp {
	padding: 0px !important;
}

.u-pt0-sp {
	padding-top: 0px !important;
}

.u-pr0-sp {
	padding-right: 0px !important;
}

.u-pb0-sp {
	padding-bottom: 0px !important;
}

.u-pl0-sp {
	padding-left: 0px !important;
}

.u-px0-sp {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.u-py0-sp {
	padding-bottom: 0px !important;
	padding-top: 0px !important;
}

.u-p4-sp {
	padding: 4px !important;
}

.u-pt4-sp {
	padding-top: 4px !important;
}

.u-pr4-sp {
	padding-right: 4px !important;
}

.u-pb4-sp {
	padding-bottom: 4px !important;
}

.u-pl4-sp {
	padding-left: 4px !important;
}

.u-px4-sp {
	padding-left: 4px !important;
	padding-right: 4px !important;
}

.u-py4-sp {
	padding-bottom: 4px !important;
	padding-top: 4px !important;
}

.u-p8-sp {
	padding: 8px !important;
}

.u-pt8-sp {
	padding-top: 8px !important;
}

.u-pr8-sp {
	padding-right: 8px !important;
}

.u-pb8-sp {
	padding-bottom: 8px !important;
}

.u-pl8-sp {
	padding-left: 8px !important;
}

.u-px8-sp {
	padding-left: 8px !important;
	padding-right: 8px !important;
}

.u-py8-sp {
	padding-bottom: 8px !important;
	padding-top: 8px !important;
}

.u-p12-sp {
	padding: 12px !important;
}

.u-pt12-sp {
	padding-top: 12px !important;
}

.u-pr12-sp {
	padding-right: 12px !important;
}

.u-pb12-sp {
	padding-bottom: 12px !important;
}

.u-pl12-sp {
	padding-left: 12px !important;
}

.u-px12-sp {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

.u-py12-sp {
	padding-bottom: 12px !important;
	padding-top: 12px !important;
}

.u-p16-sp {
	padding: 16px !important;
}

.u-pt16-sp {
	padding-top: 16px !important;
}

.u-pr16-sp {
	padding-right: 16px !important;
}

.u-pb16-sp {
	padding-bottom: 16px !important;
}

.u-pl16-sp {
	padding-left: 16px !important;
}

.u-px16-sp {
	padding-left: 16px !important;
	padding-right: 16px !important;
}

.u-py16-sp {
	padding-bottom: 16px !important;
	padding-top: 16px !important;
}

.u-p20-sp {
	padding: 20px !important;
}

.u-pt20-sp {
	padding-top: 20px !important;
}

.u-pr20-sp {
	padding-right: 20px !important;
}

.u-pb20-sp {
	padding-bottom: 20px !important;
}

.u-pl20-sp {
	padding-left: 20px !important;
}

.u-px20-sp {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.u-py20-sp {
	padding-bottom: 20px !important;
	padding-top: 20px !important;
}

.u-p24-sp {
	padding: 24px !important;
}

.u-pt24-sp {
	padding-top: 24px !important;
}

.u-pr24-sp {
	padding-right: 24px !important;
}

.u-pb24-sp {
	padding-bottom: 24px !important;
}

.u-pl24-sp {
	padding-left: 24px !important;
}

.u-px24-sp {
	padding-left: 24px !important;
	padding-right: 24px !important;
}

.u-py24-sp {
	padding-bottom: 24px !important;
	padding-top: 24px !important;
}

.u-p32-sp {
	padding: 32px !important;
}

.u-pt32-sp {
	padding-top: 32px !important;
}

.u-pr32-sp {
	padding-right: 32px !important;
}

.u-pb32-sp {
	padding-bottom: 32px !important;
}

.u-pl32-sp {
	padding-left: 32px !important;
}

.u-px32-sp {
	padding-left: 32px !important;
	padding-right: 32px !important;
}

.u-py32-sp {
	padding-bottom: 32px !important;
	padding-top: 32px !important;
}

.u-p40-sp {
	padding: 40px !important;
}

.u-pt40-sp {
	padding-top: 40px !important;
}

.u-pr40-sp {
	padding-right: 40px !important;
}

.u-pb40-sp {
	padding-bottom: 40px !important;
}

.u-pl40-sp {
	padding-left: 40px !important;
}

.u-px40-sp {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.u-py40-sp {
	padding-bottom: 40px !important;
	padding-top: 40px !important;
}

.u-p48-sp {
	padding: 48px !important;
}

.u-pt48-sp {
	padding-top: 48px !important;
}

.u-pr48-sp {
	padding-right: 48px !important;
}

.u-pb48-sp {
	padding-bottom: 48px !important;
}

.u-pl48-sp {
	padding-left: 48px !important;
}

.u-px48-sp {
	padding-left: 48px !important;
	padding-right: 48px !important;
}

.u-py48-sp {
	padding-bottom: 48px !important;
	padding-top: 48px !important;
}

.u-p56-sp {
	padding: 56px !important;
}

.u-pt56-sp {
	padding-top: 56px !important;
}

.u-pr56-sp {
	padding-right: 56px !important;
}

.u-pb56-sp {
	padding-bottom: 56px !important;
}

.u-pl56-sp {
	padding-left: 56px !important;
}

.u-px56-sp {
	padding-left: 56px !important;
	padding-right: 56px !important;
}

.u-py56-sp {
	padding-bottom: 56px !important;
	padding-top: 56px !important;
}

.u-p64-sp {
	padding: 64px !important;
}

.u-pt64-sp {
	padding-top: 64px !important;
}

.u-pr64-sp {
	padding-right: 64px !important;
}

.u-pb64-sp {
	padding-bottom: 64px !important;
}

.u-pl64-sp {
	padding-left: 64px !important;
}

.u-px64-sp {
	padding-left: 64px !important;
	padding-right: 64px !important;
}

.u-py64-sp {
	padding-bottom: 64px !important;
	padding-top: 64px !important;
}

.u-p72-sp {
	padding: 72px !important;
}

.u-pt72-sp {
	padding-top: 72px !important;
}

.u-pr72-sp {
	padding-right: 72px !important;
}

.u-pb72-sp {
	padding-bottom: 72px !important;
}

.u-pl72-sp {
	padding-left: 72px !important;
}

.u-px72-sp {
	padding-left: 72px !important;
	padding-right: 72px !important;
}

.u-py72-sp {
	padding-bottom: 72px !important;
	padding-top: 72px !important;
}

.u-p80-sp {
	padding: 80px !important;
}

.u-pt80-sp {
	padding-top: 80px !important;
}

.u-pr80-sp {
	padding-right: 80px !important;
}

.u-pb80-sp {
	padding-bottom: 80px !important;
}

.u-pl80-sp {
	padding-left: 80px !important;
}

.u-px80-sp {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.u-py80-sp {
	padding-bottom: 80px !important;
	padding-top: 80px !important;
}

.u-p88-sp {
	padding: 88px !important;
}

.u-pt88-sp {
	padding-top: 88px !important;
}

.u-pr88-sp {
	padding-right: 88px !important;
}

.u-pb88-sp {
	padding-bottom: 88px !important;
}

.u-pl88-sp {
	padding-left: 88px !important;
}

.u-px88-sp {
	padding-left: 88px !important;
	padding-right: 88px !important;
}

.u-py88-sp {
	padding-bottom: 88px !important;
	padding-top: 88px !important;
}

.u-p96-sp {
	padding: 96px !important;
}

.u-pt96-sp {
	padding-top: 96px !important;
}

.u-pr96-sp {
	padding-right: 96px !important;
}

.u-pb96-sp {
	padding-bottom: 96px !important;
}

.u-pl96-sp {
	padding-left: 96px !important;
}

.u-px96-sp {
	padding-left: 96px !important;
	padding-right: 96px !important;
}

.u-py96-sp {
	padding-bottom: 96px !important;
	padding-top: 96px !important;
}

.u-p100-sp {
	padding: 100px !important;
}

.u-pt100-sp {
	padding-top: 100px !important;
}

.u-pr100-sp {
	padding-right: 100px !important;
}

.u-pb100-sp {
	padding-bottom: 100px !important;
}

.u-pl100-sp {
	padding-left: 100px !important;
}

.u-px100-sp {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.u-py100-sp {
	padding-bottom: 100px !important;
	padding-top: 100px !important;
}

}

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

.p-main-visual {
	height: calc(100vh - 8.8rem);
}

.p-main-visual__bg {
	height: 100%;
}

.p-main-visual__bg img {
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.u-m0-md {
	margin: 0px !important;
}

.u-mt0-md {
	margin-top: 0px !important;
}

.u-mr0-md {
	margin-right: 0px !important;
}

.u-mb0-md {
	margin-bottom: 0px !important;
}

.u-ml0-md {
	margin-left: 0px !important;
}

.u-mx0-md {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.u-my0-md {
	margin-bottom: 0px !important;
	margin-top: 0px !important;
}

.u-m4-md {
	margin: 4px !important;
}

.u-mt4-md {
	margin-top: 4px !important;
}

.u-mr4-md {
	margin-right: 4px !important;
}

.u-mb4-md {
	margin-bottom: 4px !important;
}

.u-ml4-md {
	margin-left: 4px !important;
}

.u-mx4-md {
	margin-left: 4px !important;
	margin-right: 4px !important;
}

.u-my4-md {
	margin-bottom: 4px !important;
	margin-top: 4px !important;
}

.u-m8-md {
	margin: 8px !important;
}

.u-mt8-md {
	margin-top: 8px !important;
}

.u-mr8-md {
	margin-right: 8px !important;
}

.u-mb8-md {
	margin-bottom: 8px !important;
}

.u-ml8-md {
	margin-left: 8px !important;
}

.u-mx8-md {
	margin-left: 8px !important;
	margin-right: 8px !important;
}

.u-my8-md {
	margin-bottom: 8px !important;
	margin-top: 8px !important;
}

.u-m12-md {
	margin: 12px !important;
}

.u-mt12-md {
	margin-top: 12px !important;
}

.u-mr12-md {
	margin-right: 12px !important;
}

.u-mb12-md {
	margin-bottom: 12px !important;
}

.u-ml12-md {
	margin-left: 12px !important;
}

.u-mx12-md {
	margin-left: 12px !important;
	margin-right: 12px !important;
}

.u-my12-md {
	margin-bottom: 12px !important;
	margin-top: 12px !important;
}

.u-m16-md {
	margin: 16px !important;
}

.u-mt16-md {
	margin-top: 16px !important;
}

.u-mr16-md {
	margin-right: 16px !important;
}

.u-mb16-md {
	margin-bottom: 16px !important;
}

.u-ml16-md {
	margin-left: 16px !important;
}

.u-mx16-md {
	margin-left: 16px !important;
	margin-right: 16px !important;
}

.u-my16-md {
	margin-bottom: 16px !important;
	margin-top: 16px !important;
}

.u-m20-md {
	margin: 20px !important;
}

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

.u-mr20-md {
	margin-right: 20px !important;
}

.u-mb20-md {
	margin-bottom: 20px !important;
}

.u-ml20-md {
	margin-left: 20px !important;
}

.u-mx20-md {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.u-my20-md {
	margin-bottom: 20px !important;
	margin-top: 20px !important;
}

.u-m24-md {
	margin: 24px !important;
}

.u-mt24-md {
	margin-top: 24px !important;
}

.u-mr24-md {
	margin-right: 24px !important;
}

.u-mb24-md {
	margin-bottom: 24px !important;
}

.u-ml24-md {
	margin-left: 24px !important;
}

.u-mx24-md {
	margin-left: 24px !important;
	margin-right: 24px !important;
}

.u-my24-md {
	margin-bottom: 24px !important;
	margin-top: 24px !important;
}

.u-m32-md {
	margin: 32px !important;
}

.u-mt32-md {
	margin-top: 32px !important;
}

.u-mr32-md {
	margin-right: 32px !important;
}

.u-mb32-md {
	margin-bottom: 32px !important;
}

.u-ml32-md {
	margin-left: 32px !important;
}

.u-mx32-md {
	margin-left: 32px !important;
	margin-right: 32px !important;
}

.u-my32-md {
	margin-bottom: 32px !important;
	margin-top: 32px !important;
}

.u-m40-md {
	margin: 40px !important;
}

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

.u-mr40-md {
	margin-right: 40px !important;
}

.u-mb40-md {
	margin-bottom: 40px !important;
}

.u-ml40-md {
	margin-left: 40px !important;
}

.u-mx40-md {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.u-my40-md {
	margin-bottom: 40px !important;
	margin-top: 40px !important;
}

.u-m48-md {
	margin: 48px !important;
}

.u-mt48-md {
	margin-top: 48px !important;
}

.u-mr48-md {
	margin-right: 48px !important;
}

.u-mb48-md {
	margin-bottom: 48px !important;
}

.u-ml48-md {
	margin-left: 48px !important;
}

.u-mx48-md {
	margin-left: 48px !important;
	margin-right: 48px !important;
}

.u-my48-md {
	margin-bottom: 48px !important;
	margin-top: 48px !important;
}

.u-m56-md {
	margin: 56px !important;
}

.u-mt56-md {
	margin-top: 56px !important;
}

.u-mr56-md {
	margin-right: 56px !important;
}

.u-mb56-md {
	margin-bottom: 56px !important;
}

.u-ml56-md {
	margin-left: 56px !important;
}

.u-mx56-md {
	margin-left: 56px !important;
	margin-right: 56px !important;
}

.u-my56-md {
	margin-bottom: 56px !important;
	margin-top: 56px !important;
}

.u-m64-md {
	margin: 64px !important;
}

.u-mt64-md {
	margin-top: 64px !important;
}

.u-mr64-md {
	margin-right: 64px !important;
}

.u-mb64-md {
	margin-bottom: 64px !important;
}

.u-ml64-md {
	margin-left: 64px !important;
}

.u-mx64-md {
	margin-left: 64px !important;
	margin-right: 64px !important;
}

.u-my64-md {
	margin-bottom: 64px !important;
	margin-top: 64px !important;
}

.u-m72-md {
	margin: 72px !important;
}

.u-mt72-md {
	margin-top: 72px !important;
}

.u-mr72-md {
	margin-right: 72px !important;
}

.u-mb72-md {
	margin-bottom: 72px !important;
}

.u-ml72-md {
	margin-left: 72px !important;
}

.u-mx72-md {
	margin-left: 72px !important;
	margin-right: 72px !important;
}

.u-my72-md {
	margin-bottom: 72px !important;
	margin-top: 72px !important;
}

.u-m80-md {
	margin: 80px !important;
}

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

.u-mr80-md {
	margin-right: 80px !important;
}

.u-mb80-md {
	margin-bottom: 80px !important;
}

.u-ml80-md {
	margin-left: 80px !important;
}

.u-mx80-md {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.u-my80-md {
	margin-bottom: 80px !important;
	margin-top: 80px !important;
}

.u-m100-md {
	margin: 100px !important;
}

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

.u-mr100-md {
	margin-right: 100px !important;
}

.u-mb100-md {
	margin-bottom: 100px !important;
}

.u-ml100-md {
	margin-left: 100px !important;
}

.u-mx100-md {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.u-my100-md {
	margin-bottom: 100px !important;
	margin-top: 100px !important;
}

.u-m140-md {
	margin: 140px !important;
}

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

.u-mr140-md {
	margin-right: 140px !important;
}

.u-mb140-md {
	margin-bottom: 140px !important;
}

.u-ml140-md {
	margin-left: 140px !important;
}

.u-mx140-md {
	margin-left: 140px !important;
	margin-right: 140px !important;
}

.u-my140-md {
	margin-bottom: 140px !important;
	margin-top: 140px !important;
}

.u-p0-md {
	padding: 0px !important;
}

.u-pt0-md {
	padding-top: 0px !important;
}

.u-pr0-md {
	padding-right: 0px !important;
}

.u-pb0-md {
	padding-bottom: 0px !important;
}

.u-pl0-md {
	padding-left: 0px !important;
}

.u-px0-md {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.u-py0-md {
	padding-bottom: 0px !important;
	padding-top: 0px !important;
}

.u-p4-md {
	padding: 4px !important;
}

.u-pt4-md {
	padding-top: 4px !important;
}

.u-pr4-md {
	padding-right: 4px !important;
}

.u-pb4-md {
	padding-bottom: 4px !important;
}

.u-pl4-md {
	padding-left: 4px !important;
}

.u-px4-md {
	padding-left: 4px !important;
	padding-right: 4px !important;
}

.u-py4-md {
	padding-bottom: 4px !important;
	padding-top: 4px !important;
}

.u-p8-md {
	padding: 8px !important;
}

.u-pt8-md {
	padding-top: 8px !important;
}

.u-pr8-md {
	padding-right: 8px !important;
}

.u-pb8-md {
	padding-bottom: 8px !important;
}

.u-pl8-md {
	padding-left: 8px !important;
}

.u-px8-md {
	padding-left: 8px !important;
	padding-right: 8px !important;
}

.u-py8-md {
	padding-bottom: 8px !important;
	padding-top: 8px !important;
}

.u-p12-md {
	padding: 12px !important;
}

.u-pt12-md {
	padding-top: 12px !important;
}

.u-pr12-md {
	padding-right: 12px !important;
}

.u-pb12-md {
	padding-bottom: 12px !important;
}

.u-pl12-md {
	padding-left: 12px !important;
}

.u-px12-md {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

.u-py12-md {
	padding-bottom: 12px !important;
	padding-top: 12px !important;
}

.u-p16-md {
	padding: 16px !important;
}

.u-pt16-md {
	padding-top: 16px !important;
}

.u-pr16-md {
	padding-right: 16px !important;
}

.u-pb16-md {
	padding-bottom: 16px !important;
}

.u-pl16-md {
	padding-left: 16px !important;
}

.u-px16-md {
	padding-left: 16px !important;
	padding-right: 16px !important;
}

.u-py16-md {
	padding-bottom: 16px !important;
	padding-top: 16px !important;
}

.u-p20-md {
	padding: 20px !important;
}

.u-pt20-md {
	padding-top: 20px !important;
}

.u-pr20-md {
	padding-right: 20px !important;
}

.u-pb20-md {
	padding-bottom: 20px !important;
}

.u-pl20-md {
	padding-left: 20px !important;
}

.u-px20-md {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.u-py20-md {
	padding-bottom: 20px !important;
	padding-top: 20px !important;
}

.u-p24-md {
	padding: 24px !important;
}

.u-pt24-md {
	padding-top: 24px !important;
}

.u-pr24-md {
	padding-right: 24px !important;
}

.u-pb24-md {
	padding-bottom: 24px !important;
}

.u-pl24-md {
	padding-left: 24px !important;
}

.u-px24-md {
	padding-left: 24px !important;
	padding-right: 24px !important;
}

.u-py24-md {
	padding-bottom: 24px !important;
	padding-top: 24px !important;
}

.u-p32-md {
	padding: 32px !important;
}

.u-pt32-md {
	padding-top: 32px !important;
}

.u-pr32-md {
	padding-right: 32px !important;
}

.u-pb32-md {
	padding-bottom: 32px !important;
}

.u-pl32-md {
	padding-left: 32px !important;
}

.u-px32-md {
	padding-left: 32px !important;
	padding-right: 32px !important;
}

.u-py32-md {
	padding-bottom: 32px !important;
	padding-top: 32px !important;
}

.u-p40-md {
	padding: 40px !important;
}

.u-pt40-md {
	padding-top: 40px !important;
}

.u-pr40-md {
	padding-right: 40px !important;
}

.u-pb40-md {
	padding-bottom: 40px !important;
}

.u-pl40-md {
	padding-left: 40px !important;
}

.u-px40-md {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.u-py40-md {
	padding-bottom: 40px !important;
	padding-top: 40px !important;
}

.u-p48-md {
	padding: 48px !important;
}

.u-pt48-md {
	padding-top: 48px !important;
}

.u-pr48-md {
	padding-right: 48px !important;
}

.u-pb48-md {
	padding-bottom: 48px !important;
}

.u-pl48-md {
	padding-left: 48px !important;
}

.u-px48-md {
	padding-left: 48px !important;
	padding-right: 48px !important;
}

.u-py48-md {
	padding-bottom: 48px !important;
	padding-top: 48px !important;
}

.u-p56-md {
	padding: 56px !important;
}

.u-pt56-md {
	padding-top: 56px !important;
}

.u-pr56-md {
	padding-right: 56px !important;
}

.u-pb56-md {
	padding-bottom: 56px !important;
}

.u-pl56-md {
	padding-left: 56px !important;
}

.u-px56-md {
	padding-left: 56px !important;
	padding-right: 56px !important;
}

.u-py56-md {
	padding-bottom: 56px !important;
	padding-top: 56px !important;
}

.u-p64-md {
	padding: 64px !important;
}

.u-pt64-md {
	padding-top: 64px !important;
}

.u-pr64-md {
	padding-right: 64px !important;
}

.u-pb64-md {
	padding-bottom: 64px !important;
}

.u-pl64-md {
	padding-left: 64px !important;
}

.u-px64-md {
	padding-left: 64px !important;
	padding-right: 64px !important;
}

.u-py64-md {
	padding-bottom: 64px !important;
	padding-top: 64px !important;
}

.u-p72-md {
	padding: 72px !important;
}

.u-pt72-md {
	padding-top: 72px !important;
}

.u-pr72-md {
	padding-right: 72px !important;
}

.u-pb72-md {
	padding-bottom: 72px !important;
}

.u-pl72-md {
	padding-left: 72px !important;
}

.u-px72-md {
	padding-left: 72px !important;
	padding-right: 72px !important;
}

.u-py72-md {
	padding-bottom: 72px !important;
	padding-top: 72px !important;
}

.u-p80-md {
	padding: 80px !important;
}

.u-pt80-md {
	padding-top: 80px !important;
}

.u-pr80-md {
	padding-right: 80px !important;
}

.u-pb80-md {
	padding-bottom: 80px !important;
}

.u-pl80-md {
	padding-left: 80px !important;
}

.u-px80-md {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.u-py80-md {
	padding-bottom: 80px !important;
	padding-top: 80px !important;
}

.u-p88-md {
	padding: 88px !important;
}

.u-pt88-md {
	padding-top: 88px !important;
}

.u-pr88-md {
	padding-right: 88px !important;
}

.u-pb88-md {
	padding-bottom: 88px !important;
}

.u-pl88-md {
	padding-left: 88px !important;
}

.u-px88-md {
	padding-left: 88px !important;
	padding-right: 88px !important;
}

.u-py88-md {
	padding-bottom: 88px !important;
	padding-top: 88px !important;
}

.u-p96-md {
	padding: 96px !important;
}

.u-pt96-md {
	padding-top: 96px !important;
}

.u-pr96-md {
	padding-right: 96px !important;
}

.u-pb96-md {
	padding-bottom: 96px !important;
}

.u-pl96-md {
	padding-left: 96px !important;
}

.u-px96-md {
	padding-left: 96px !important;
	padding-right: 96px !important;
}

.u-py96-md {
	padding-bottom: 96px !important;
	padding-top: 96px !important;
}

.u-p100-md {
	padding: 100px !important;
}

.u-pt100-md {
	padding-top: 100px !important;
}

.u-pr100-md {
	padding-right: 100px !important;
}

.u-pb100-md {
	padding-bottom: 100px !important;
}

.u-pl100-md {
	padding-left: 100px !important;
}

.u-px100-md {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.u-py100-md {
	padding-bottom: 100px !important;
	padding-top: 100px !important;
}

}

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

.u-m0-lg {
	margin: 0px !important;
}

.u-mt0-lg {
	margin-top: 0px !important;
}

.u-mr0-lg {
	margin-right: 0px !important;
}

.u-mb0-lg {
	margin-bottom: 0px !important;
}

.u-ml0-lg {
	margin-left: 0px !important;
}

.u-mx0-lg {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.u-my0-lg {
	margin-bottom: 0px !important;
	margin-top: 0px !important;
}

.u-m4-lg {
	margin: 4px !important;
}

.u-mt4-lg {
	margin-top: 4px !important;
}

.u-mr4-lg {
	margin-right: 4px !important;
}

.u-mb4-lg {
	margin-bottom: 4px !important;
}

.u-ml4-lg {
	margin-left: 4px !important;
}

.u-mx4-lg {
	margin-left: 4px !important;
	margin-right: 4px !important;
}

.u-my4-lg {
	margin-bottom: 4px !important;
	margin-top: 4px !important;
}

.u-m8-lg {
	margin: 8px !important;
}

.u-mt8-lg {
	margin-top: 8px !important;
}

.u-mr8-lg {
	margin-right: 8px !important;
}

.u-mb8-lg {
	margin-bottom: 8px !important;
}

.u-ml8-lg {
	margin-left: 8px !important;
}

.u-mx8-lg {
	margin-left: 8px !important;
	margin-right: 8px !important;
}

.u-my8-lg {
	margin-bottom: 8px !important;
	margin-top: 8px !important;
}

.u-m12-lg {
	margin: 12px !important;
}

.u-mt12-lg {
	margin-top: 12px !important;
}

.u-mr12-lg {
	margin-right: 12px !important;
}

.u-mb12-lg {
	margin-bottom: 12px !important;
}

.u-ml12-lg {
	margin-left: 12px !important;
}

.u-mx12-lg {
	margin-left: 12px !important;
	margin-right: 12px !important;
}

.u-my12-lg {
	margin-bottom: 12px !important;
	margin-top: 12px !important;
}

.u-m16-lg {
	margin: 16px !important;
}

.u-mt16-lg {
	margin-top: 16px !important;
}

.u-mr16-lg {
	margin-right: 16px !important;
}

.u-mb16-lg {
	margin-bottom: 16px !important;
}

.u-ml16-lg {
	margin-left: 16px !important;
}

.u-mx16-lg {
	margin-left: 16px !important;
	margin-right: 16px !important;
}

.u-my16-lg {
	margin-bottom: 16px !important;
	margin-top: 16px !important;
}

.u-m20-lg {
	margin: 20px !important;
}

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

.u-mr20-lg {
	margin-right: 20px !important;
}

.u-mb20-lg {
	margin-bottom: 20px !important;
}

.u-ml20-lg {
	margin-left: 20px !important;
}

.u-mx20-lg {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.u-my20-lg {
	margin-bottom: 20px !important;
	margin-top: 20px !important;
}

.u-m24-lg {
	margin: 24px !important;
}

.u-mt24-lg {
	margin-top: 24px !important;
}

.u-mr24-lg {
	margin-right: 24px !important;
}

.u-mb24-lg {
	margin-bottom: 24px !important;
}

.u-ml24-lg {
	margin-left: 24px !important;
}

.u-mx24-lg {
	margin-left: 24px !important;
	margin-right: 24px !important;
}

.u-my24-lg {
	margin-bottom: 24px !important;
	margin-top: 24px !important;
}

.u-m32-lg {
	margin: 32px !important;
}

.u-mt32-lg {
	margin-top: 32px !important;
}

.u-mr32-lg {
	margin-right: 32px !important;
}

.u-mb32-lg {
	margin-bottom: 32px !important;
}

.u-ml32-lg {
	margin-left: 32px !important;
}

.u-mx32-lg {
	margin-left: 32px !important;
	margin-right: 32px !important;
}

.u-my32-lg {
	margin-bottom: 32px !important;
	margin-top: 32px !important;
}

.u-m40-lg {
	margin: 40px !important;
}

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

.u-mr40-lg {
	margin-right: 40px !important;
}

.u-mb40-lg {
	margin-bottom: 40px !important;
}

.u-ml40-lg {
	margin-left: 40px !important;
}

.u-mx40-lg {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.u-my40-lg {
	margin-bottom: 40px !important;
	margin-top: 40px !important;
}

.u-m48-lg {
	margin: 48px !important;
}

.u-mt48-lg {
	margin-top: 48px !important;
}

.u-mr48-lg {
	margin-right: 48px !important;
}

.u-mb48-lg {
	margin-bottom: 48px !important;
}

.u-ml48-lg {
	margin-left: 48px !important;
}

.u-mx48-lg {
	margin-left: 48px !important;
	margin-right: 48px !important;
}

.u-my48-lg {
	margin-bottom: 48px !important;
	margin-top: 48px !important;
}

.u-m56-lg {
	margin: 56px !important;
}

.u-mt56-lg {
	margin-top: 56px !important;
}

.u-mr56-lg {
	margin-right: 56px !important;
}

.u-mb56-lg {
	margin-bottom: 56px !important;
}

.u-ml56-lg {
	margin-left: 56px !important;
}

.u-mx56-lg {
	margin-left: 56px !important;
	margin-right: 56px !important;
}

.u-my56-lg {
	margin-bottom: 56px !important;
	margin-top: 56px !important;
}

.u-m64-lg {
	margin: 64px !important;
}

.u-mt64-lg {
	margin-top: 64px !important;
}

.u-mr64-lg {
	margin-right: 64px !important;
}

.u-mb64-lg {
	margin-bottom: 64px !important;
}

.u-ml64-lg {
	margin-left: 64px !important;
}

.u-mx64-lg {
	margin-left: 64px !important;
	margin-right: 64px !important;
}

.u-my64-lg {
	margin-bottom: 64px !important;
	margin-top: 64px !important;
}

.u-m72-lg {
	margin: 72px !important;
}

.u-mt72-lg {
	margin-top: 72px !important;
}

.u-mr72-lg {
	margin-right: 72px !important;
}

.u-mb72-lg {
	margin-bottom: 72px !important;
}

.u-ml72-lg {
	margin-left: 72px !important;
}

.u-mx72-lg {
	margin-left: 72px !important;
	margin-right: 72px !important;
}

.u-my72-lg {
	margin-bottom: 72px !important;
	margin-top: 72px !important;
}

.u-m80-lg {
	margin: 80px !important;
}

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

.u-mr80-lg {
	margin-right: 80px !important;
}

.u-mb80-lg {
	margin-bottom: 80px !important;
}

.u-ml80-lg {
	margin-left: 80px !important;
}

.u-mx80-lg {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.u-my80-lg {
	margin-bottom: 80px !important;
	margin-top: 80px !important;
}

.u-m100-lg {
	margin: 100px !important;
}

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

.u-mr100-lg {
	margin-right: 100px !important;
}

.u-mb100-lg {
	margin-bottom: 100px !important;
}

.u-ml100-lg {
	margin-left: 100px !important;
}

.u-mx100-lg {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.u-my100-lg {
	margin-bottom: 100px !important;
	margin-top: 100px !important;
}

.u-m140-lg {
	margin: 140px !important;
}

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

.u-mr140-lg {
	margin-right: 140px !important;
}

.u-mb140-lg {
	margin-bottom: 140px !important;
}

.u-ml140-lg {
	margin-left: 140px !important;
}

.u-mx140-lg {
	margin-left: 140px !important;
	margin-right: 140px !important;
}

.u-my140-lg {
	margin-bottom: 140px !important;
	margin-top: 140px !important;
}

.u-p0-lg {
	padding: 0px !important;
}

.u-pt0-lg {
	padding-top: 0px !important;
}

.u-pr0-lg {
	padding-right: 0px !important;
}

.u-pb0-lg {
	padding-bottom: 0px !important;
}

.u-pl0-lg {
	padding-left: 0px !important;
}

.u-px0-lg {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.u-py0-lg {
	padding-bottom: 0px !important;
	padding-top: 0px !important;
}

.u-p4-lg {
	padding: 4px !important;
}

.u-pt4-lg {
	padding-top: 4px !important;
}

.u-pr4-lg {
	padding-right: 4px !important;
}

.u-pb4-lg {
	padding-bottom: 4px !important;
}

.u-pl4-lg {
	padding-left: 4px !important;
}

.u-px4-lg {
	padding-left: 4px !important;
	padding-right: 4px !important;
}

.u-py4-lg {
	padding-bottom: 4px !important;
	padding-top: 4px !important;
}

.u-p8-lg {
	padding: 8px !important;
}

.u-pt8-lg {
	padding-top: 8px !important;
}

.u-pr8-lg {
	padding-right: 8px !important;
}

.u-pb8-lg {
	padding-bottom: 8px !important;
}

.u-pl8-lg {
	padding-left: 8px !important;
}

.u-px8-lg {
	padding-left: 8px !important;
	padding-right: 8px !important;
}

.u-py8-lg {
	padding-bottom: 8px !important;
	padding-top: 8px !important;
}

.u-p12-lg {
	padding: 12px !important;
}

.u-pt12-lg {
	padding-top: 12px !important;
}

.u-pr12-lg {
	padding-right: 12px !important;
}

.u-pb12-lg {
	padding-bottom: 12px !important;
}

.u-pl12-lg {
	padding-left: 12px !important;
}

.u-px12-lg {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

.u-py12-lg {
	padding-bottom: 12px !important;
	padding-top: 12px !important;
}

.u-p16-lg {
	padding: 16px !important;
}

.u-pt16-lg {
	padding-top: 16px !important;
}

.u-pr16-lg {
	padding-right: 16px !important;
}

.u-pb16-lg {
	padding-bottom: 16px !important;
}

.u-pl16-lg {
	padding-left: 16px !important;
}

.u-px16-lg {
	padding-left: 16px !important;
	padding-right: 16px !important;
}

.u-py16-lg {
	padding-bottom: 16px !important;
	padding-top: 16px !important;
}

.u-p20-lg {
	padding: 20px !important;
}

.u-pt20-lg {
	padding-top: 20px !important;
}

.u-pr20-lg {
	padding-right: 20px !important;
}

.u-pb20-lg {
	padding-bottom: 20px !important;
}

.u-pl20-lg {
	padding-left: 20px !important;
}

.u-px20-lg {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.u-py20-lg {
	padding-bottom: 20px !important;
	padding-top: 20px !important;
}

.u-p24-lg {
	padding: 24px !important;
}

.u-pt24-lg {
	padding-top: 24px !important;
}

.u-pr24-lg {
	padding-right: 24px !important;
}

.u-pb24-lg {
	padding-bottom: 24px !important;
}

.u-pl24-lg {
	padding-left: 24px !important;
}

.u-px24-lg {
	padding-left: 24px !important;
	padding-right: 24px !important;
}

.u-py24-lg {
	padding-bottom: 24px !important;
	padding-top: 24px !important;
}

.u-p32-lg {
	padding: 32px !important;
}

.u-pt32-lg {
	padding-top: 32px !important;
}

.u-pr32-lg {
	padding-right: 32px !important;
}

.u-pb32-lg {
	padding-bottom: 32px !important;
}

.u-pl32-lg {
	padding-left: 32px !important;
}

.u-px32-lg {
	padding-left: 32px !important;
	padding-right: 32px !important;
}

.u-py32-lg {
	padding-bottom: 32px !important;
	padding-top: 32px !important;
}

.u-p40-lg {
	padding: 40px !important;
}

.u-pt40-lg {
	padding-top: 40px !important;
}

.u-pr40-lg {
	padding-right: 40px !important;
}

.u-pb40-lg {
	padding-bottom: 40px !important;
}

.u-pl40-lg {
	padding-left: 40px !important;
}

.u-px40-lg {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.u-py40-lg {
	padding-bottom: 40px !important;
	padding-top: 40px !important;
}

.u-p48-lg {
	padding: 48px !important;
}

.u-pt48-lg {
	padding-top: 48px !important;
}

.u-pr48-lg {
	padding-right: 48px !important;
}

.u-pb48-lg {
	padding-bottom: 48px !important;
}

.u-pl48-lg {
	padding-left: 48px !important;
}

.u-px48-lg {
	padding-left: 48px !important;
	padding-right: 48px !important;
}

.u-py48-lg {
	padding-bottom: 48px !important;
	padding-top: 48px !important;
}

.u-p56-lg {
	padding: 56px !important;
}

.u-pt56-lg {
	padding-top: 56px !important;
}

.u-pr56-lg {
	padding-right: 56px !important;
}

.u-pb56-lg {
	padding-bottom: 56px !important;
}

.u-pl56-lg {
	padding-left: 56px !important;
}

.u-px56-lg {
	padding-left: 56px !important;
	padding-right: 56px !important;
}

.u-py56-lg {
	padding-bottom: 56px !important;
	padding-top: 56px !important;
}

.u-p64-lg {
	padding: 64px !important;
}

.u-pt64-lg {
	padding-top: 64px !important;
}

.u-pr64-lg {
	padding-right: 64px !important;
}

.u-pb64-lg {
	padding-bottom: 64px !important;
}

.u-pl64-lg {
	padding-left: 64px !important;
}

.u-px64-lg {
	padding-left: 64px !important;
	padding-right: 64px !important;
}

.u-py64-lg {
	padding-bottom: 64px !important;
	padding-top: 64px !important;
}

.u-p72-lg {
	padding: 72px !important;
}

.u-pt72-lg {
	padding-top: 72px !important;
}

.u-pr72-lg {
	padding-right: 72px !important;
}

.u-pb72-lg {
	padding-bottom: 72px !important;
}

.u-pl72-lg {
	padding-left: 72px !important;
}

.u-px72-lg {
	padding-left: 72px !important;
	padding-right: 72px !important;
}

.u-py72-lg {
	padding-bottom: 72px !important;
	padding-top: 72px !important;
}

.u-p80-lg {
	padding: 80px !important;
}

.u-pt80-lg {
	padding-top: 80px !important;
}

.u-pr80-lg {
	padding-right: 80px !important;
}

.u-pb80-lg {
	padding-bottom: 80px !important;
}

.u-pl80-lg {
	padding-left: 80px !important;
}

.u-px80-lg {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.u-py80-lg {
	padding-bottom: 80px !important;
	padding-top: 80px !important;
}

.u-p88-lg {
	padding: 88px !important;
}

.u-pt88-lg {
	padding-top: 88px !important;
}

.u-pr88-lg {
	padding-right: 88px !important;
}

.u-pb88-lg {
	padding-bottom: 88px !important;
}

.u-pl88-lg {
	padding-left: 88px !important;
}

.u-px88-lg {
	padding-left: 88px !important;
	padding-right: 88px !important;
}

.u-py88-lg {
	padding-bottom: 88px !important;
	padding-top: 88px !important;
}

.u-p96-lg {
	padding: 96px !important;
}

.u-pt96-lg {
	padding-top: 96px !important;
}

.u-pr96-lg {
	padding-right: 96px !important;
}

.u-pb96-lg {
	padding-bottom: 96px !important;
}

.u-pl96-lg {
	padding-left: 96px !important;
}

.u-px96-lg {
	padding-left: 96px !important;
	padding-right: 96px !important;
}

.u-py96-lg {
	padding-bottom: 96px !important;
	padding-top: 96px !important;
}

.u-p100-lg {
	padding: 100px !important;
}

.u-pt100-lg {
	padding-top: 100px !important;
}

.u-pr100-lg {
	padding-right: 100px !important;
}

.u-pb100-lg {
	padding-bottom: 100px !important;
}

.u-pl100-lg {
	padding-left: 100px !important;
}

.u-px100-lg {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.u-py100-lg {
	padding-bottom: 100px !important;
	padding-top: 100px !important;
}

}

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

.l-header__nav {
	gap: 2.4rem;
}

.l-header__nav-list {
	gap: 2.4rem;
}

.l-header__info {
	gap: 2rem;
}

.l-header__info-badge .circle {
	font-size: 1.4rem;
	height: 5.6rem;
	width: 5.6rem;
}

.l-header__info-tel-number span {
	font-size: 2.4rem;
}

.l-header__info-tel-time {
	font-size: 1.4rem;
}

.p-top-concept__media {
	-moz-column-gap: 5.6rem;
	column-gap: 5.6rem;
}

.p-top-concept__text-title {
	font-size: 2.8rem;
}

.p-main-visual__container {
	padding-left: 5.6rem;
	padding-right: 2rem;
}

.p-main-visual__content-main {
	font-size: 4.2rem;
}

}

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

.l-header__info-badge {
	display: none;
}

.l-header__info-tel {
	display: none;
}

.p-top-concept__media {
	-moz-column-gap: 4.8rem;
	column-gap: 4.8rem;
}

.p-top-concept__text-description p {
	font-size: 1.7rem;
}

.p-top-concept__text-company {
	font-size: 1.7rem;
}

.p-top-concept__text-name {
	font-size: 2.2rem;
}

.p-main-visual__container {
	padding-left: 4rem;
	padding-right: 2rem;
}

}

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

.l-header {
	background-color: #ffffff;
	top: 0;
	z-index: 100;
}

.l-header__nav {
	display: none;
}

.l-header__info {
	display: none;
}

.l-header__drawer-button {
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
	height: 2.4rem;
	position: relative;
	width: 3.6rem;
}

.l-header__drawer-button.is-checked .l-header__drawer-icon:nth-child(1) {
	top: 1.1rem;
	transform: rotate(35deg);
}

.l-header__drawer-button.is-checked .l-header__drawer-icon:nth-child(2) {
	width: 0;
}

.l-header__drawer-button.is-checked .l-header__drawer-icon:nth-child(3) {
	top: -1.1rem;
	transform: rotate(-35deg);
}

.l-footer__inner {
	grid-template-columns: 2fr 1fr;
}

.c-button.-square .text {
	font-size: 1.6rem;
}

.c-button.-square .icon {
	height: 2rem;
	width: 2rem;
}

.p-contact__inner {
	padding: 4rem 4rem;
}

.p-contact__field {
	-moz-column-gap: 3.2rem;
	column-gap: 3.2rem;
	grid-template-columns: 1fr 2.3fr;
}

.p-contact__field-label {
	font-size: 1.5rem;
}

.p-contact__field-tag {
	font-size: 1.3rem;
}

.p-drawer-content {
	background: #F0F6FC;
	display: block;
	height: 100vh;
	overflow-y: auto;
	position: fixed;
	right: 0;
	top: 8.8rem;
	transform: translateX(100%);
	transition: all ease 0.5s;
	width: 100%;
	z-index: 100;
}

.p-service-archive__item {
	gap: 3.2rem;
}

.p-service-cta__inner {
	padding: 4.8rem 4rem;
}

.p-top-buttons__group {
	gap: 1.6rem;
}

.p-top-concept__media {
	-moz-column-gap: 4rem;
	column-gap: 4rem;
}

.p-top-concept__text-description p {
	font-size: 1.6rem;
}

.p-top-concept__text-company {
	font-size: 1.6rem;
}

.p-top-concept__text-name {
	font-size: 2rem;
}

.p-top-service__list {
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 2.4rem;
	column-gap: 2.4rem;
	row-gap: 4rem;
}

.p-top-service__item {
	grid-column: span 1 !important;
}

.p-top-service__item-title {
	font-size: 1.5rem;
}

.p-main-visual__container {
	padding-left: 4rem;
	padding-right: 2rem;
}

.p-main-visual__content-main {
	font-size: 3.6rem;
}

.p-main-visual__content-sub {
	font-size: 2.4rem;
}

.p-main-visual__content-buttons {
	gap: 1.3rem;
}

}

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

.sp-none {
	display: none !important;
}

.pc-none {
	display: block !important;
}

.l-header {
	height: 6.5rem;
}

.l-header__title img {
	max-width: 16rem;
}

.l-footer__inner {
	grid-template-columns: 1fr;
	padding: 2.8rem 2.4rem 4.8rem;
}

.l-footer__content {
	justify-content: center;
}

.l-footer__logo img {
	max-width: 24rem;
}

.l-footer__info p {
	font-size: 1.4rem;
	text-align: center;
}

.l-footer__nav {
	display: none;
}

.l-footer__copy small {
	font-size: 1rem;
}

.c-button {
	gap: 0.6rem;
}

.c-button.-square {
	padding: 1rem 1.2rem 1.2rem 1.2rem;
}

.c-button.-square .text {
	font-size: 1.5rem;
}

.c-button.-square .icon {
	height: 1.8rem;
	width: 1.8rem;
}

.c-button.-category {
	padding: 0.6rem 1.4rem 0.7rem;
}

.c-button.-category .text {
	font-size: 1.4rem;
}

.c-container {
	padding-inline: 2.4rem;
}

.c-section {
	padding-bottom: 8rem;
	padding-top: 6.4rem;
}

.c-section-title__main {
	font-size: 2.5rem;
}

.c-section-title__sub {
	font-size: 1.5rem;
}

.p-article {
	margin-bottom: 6.4rem;
	margin-top: 4rem;
}

.p-article__head-category span {
	font-size: 1.4rem;
	padding: 0.2rem 1.4rem 0.3rem;
}

.p-article__head-title {
	font-size: 2.4rem;
	margin-top: 1.6rem;
}

.p-article__head-thumbnail {
	margin-top: 2.4rem;
}

.p-article__head-thumbnail img {
	aspect-ratio: 4/3;
}

.p-article__body.-editor h2:not(:first-child) {
	margin-top: 4.8rem;
}

.p-article__body.-editor h2 {
	border-radius: 1rem;
	font-size: 1.8rem;
	padding: 1rem 1.6rem 1.2rem 1.6rem;
}

.p-article__body.-editor h3:not(:first-child) {
	margin-top: 4rem;
}

.p-article__body.-editor h3 {
	font-size: 1.7rem;
}

.p-article__body.-editor h4 {
	font-size: 1.6rem;
}

.p-article__body.-editor p {
	font-size: 1.5rem;
}

.p-article__body.-editor table tr td {
	display: block;
	font-size: 1.5rem;
	padding: 1rem 1.6rem 1.4rem 0;
	width: 100%;
}

.p-article__body.-editor table tr td:first-child {
	border-bottom: none;
	color: #183C9C;
	padding: 2.8rem 1.6rem 0 0;
	width: 100%;
}

.p-article__body.-editor .wp-block-file a {
	font-size: 1.5rem;
}

.p-article__body.-editor .wp-block-image {
	margin-top: 2.4rem;
}

.p-bread-crumb {
	padding-left: 2rem;
}

.p-bread-crumb__list {
	-moz-column-gap: 0.6rem;
	column-gap: 0.6rem;
}

.p-bread-crumb__item {
	font-size: 1.2rem;
}

.p-contact__inner {
	padding: 3.2rem 1.6rem;
}

.p-contact__field {
	-moz-column-gap: 0;
	column-gap: 0;
	grid-template-columns: 1fr;
	row-gap: 1rem;
}

.p-contact__field-head {
	gap: 1.6rem;
	justify-content: flex-start;
}

.p-contact__text {
	font-size: 1.6rem;
}

.p-contact__textarea {
	font-size: 1.6rem;
}

.p-contact__agree label .p-contact__checkbox {
	height: 2rem;
	width: 2rem;
}

.p-contact__agree label .wpcf7-list-item-label {
	font-size: 1.4rem;
}

.wpcf7-response-output {
	font-size: 1.5rem;
	margin: 2rem 0rem 1rem !important;
}

.p-drawer-content {
	top: 6.5rem;
	width: 100%;
}

.p-page-head {
	height: 20rem;
}

.p-page-head__title-ja {
	font-size: 2.6rem;
	padding-inline: 1.2rem;
}

.p-page-head__title-en {
	font-size: 1.8rem;
}

.p-pagination .page-numbers {
	font-size: 1.5rem;
	height: 4rem;
	margin-right: 1rem;
	width: 4rem;
}

.p-pagination .page-numbers.next {
	display: none;
	margin-left: 1.4rem;
	margin-right: 0;
}

.p-pagination .page-numbers.prev {
	display: none;
	margin-right: 2.4rem;
}

.p-pagination .page-numbers.dots {
	width: 3.2rem;
}

.p-service-intro {
	padding-bottom: 0;
	padding-top: 3.2rem;
}

.p-service-intro__text {
	font-size: 1.5rem;
	line-height: 1.9;
}

.p-service-archive__item {
	flex-direction: column-reverse;
	gap: 2rem;
	padding: 3.2rem 0 4.8rem;
}

.p-service-archive__item:nth-child(even) {
	flex-direction: column-reverse;
}

.p-service-archive__item-image {
	flex: none;
	width: 100%;
}

.p-service-archive__item-content {
	flex: none;
	gap: 1.2rem;
	width: 100%;
}

.p-service-archive__item-title {
	border-bottom-width: 2px;
	font-size: 2.2rem;
	gap: 0.8rem;
	padding-bottom: 0.8rem;
}

.p-service-archive__item-title-icon {
	height: 2.6rem;
	width: 2.6rem;
}

.p-service-archive__item-description {
	font-size: 1.5rem;
}

.p-service-archive__empty {
	font-size: 1.5rem;
	padding: 4.8rem 0;
}

.p-service-cta__inner {
	border-radius: 1.6rem;
	padding: 3.2rem 2rem;
}

.p-service-cta__inner::before,
.p-service-cta__inner::after {
	display: none;
}

.p-service-cta__title {
	font-size: 2.6rem;
	margin-bottom: 1.2rem;
}

.p-service-cta__text {
	font-size: 1.5rem;
	margin-bottom: 3.2rem;
}

.p-service-cta__actions {
	gap: 2.4rem;
	grid-template-columns: 1fr;
}

.p-service-cta__tel {
	gap: 1.6rem;
	padding: 2.8rem 2rem;
}

.p-service-cta__tel-icon {
	height: 4.8rem;
	width: 4.8rem;
}

.p-service-cta__tel-label {
	font-size: 1.8rem;
	margin-bottom: 0.4rem;
}

.p-service-cta__tel-number {
	font-size: 2.6rem;
}

.p-service-cta__tel-hours {
	font-size: 1.3rem;
}

.p-service-cta__mail .c-button {
	font-size: 1.6rem;
	gap: 1rem;
	padding: 2.4rem 3.2rem;
}

.p-service-cta__mail .c-button img {
	height: 2rem;
	width: 2rem;
}

.p-top-buttons {
	padding-block: 3.2rem;
}

.p-top-buttons__group {
	flex-direction: column;
	gap: 1.6rem;
	margin-inline: auto;
	max-width: 40rem;
}

.p-top-buttons__group .c-button {
	min-width: 100%;
	width: 100%;
}

.p-top-concept__bg::before {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 60%, rgba(255, 255, 255, 0.1) 100%);
}

.p-top-concept__media {
	grid-template-columns: 1fr;
	-moz-column-gap: 0;
	column-gap: 0;
	row-gap: 3.2rem;
}

.p-top-concept__text-title {
	font-size: 2.4rem;
}

.p-top-concept__text-description p {
	font-size: 1.5rem;
}

.p-top-access__maps {
	margin-top: 3.2rem;
}

.p-top-service__list {
	-moz-column-gap: 1.6rem;
	column-gap: 1.6rem;
	row-gap: 2.4rem;
}

.p-top-service__item {
	grid-column: span 1 !important;
}

.p-top-service__item-title {
	font-size: 1.3rem;
	margin-bottom: 1.4rem;
	margin-top: 1.2rem;
}

.p-top-service__more {
	margin-top: 1.8rem;
}

.p-top-service__more {
	margin-top: 4.8rem;
}

.p-top-works__slider {
	margin-top: 3.2rem;
}

.p-top-works__card {
	width: 300px;
}

.p-top-works__card-link {
	min-height: 320px;
}

.p-top-works__card-category {
	font-size: 1.2rem;
	padding: 0.3rem 1rem 0.4rem;
}

.p-top-works__card-text {
	padding: 1.6rem 1.2rem 1.2rem;
}

.p-top-works__card-date {
	font-size: 1.2rem;
	margin-bottom: 0.6rem;
}

.p-top-works__card-title {
	font-size: 1.5rem;
}

.p-top-works__card-more {
	margin-top: 2.4rem;
	padding: 0 1.2rem 1.6rem;
}

.p-top-works__card-more .c-link {
	font-size: 1.3rem;
}

.p-top-works__more {
	margin-top: 3.2rem !important;
}

.p-top-staff__bg > svg {
	width: 90%;
}

.p-top-staff__bg > :nth-child(3) {
	bottom: 0;
}

.p-top-staff__bg > :nth-child(4) {
	bottom: -10%;
}

.p-top-staff__slider {
	margin-top: 4.8rem;
	padding-bottom: 8rem;
}

.p-top-staff__slider .swiper {
	padding-right: 8rem !important;
}

.p-top-staff__card:nth-of-type(even) {
	margin-top: 4rem;
}

.p-top-staff__card {
	max-width: 25rem;
}

.p-top-staff__info-name {
	font-size: 1.8rem;
}

.p-top-staff__comment p {
	font-size: 1.6rem;
}

.p-top-staff__nav {
	gap: 2rem;
}

.p-top-staff__nav .swiper-button-prev,
.p-top-staff__nav .swiper-button-next {
	height: 5.6rem;
	width: 5.6rem;
}

.p-main-visual__bg img {
	height: auto;
}

.p-main-visual__container {
	padding: 4rem 2rem 4.8rem;
}

.p-main-visual__content {
	gap: 2rem;
}

.p-main-visual__content-main {
	font-size: 2.4rem;
}

.p-main-visual__content-sub {
	font-size: 1.6rem;
}

.p-main-visual__content-buttons.-letter {
	margin-top: -1rem;
}

.p-main-visual__content-buttons {
	flex-wrap: nowrap;
	gap: 1.2rem;
	justify-content: center;
}

.p-main-visual__gallery img:nth-of-type(1) {
	width: 100%;
}

.p-main-visual__gallery img:nth-of-type(2) {
	margin-top: 1.6rem;
	width: 50%;
}

.p-main-visual__gallery img:nth-of-type(3) {
	margin-top: -2rem;
	width: 45%;
}

.p-map-card {
	gap: 1.6rem;
}

.p-map-card__text {
	font-size: 1.5rem;
}

.p-map-card__title {
	font-size: 1.8rem;
}

.p-map-card__address {
	margin-top: 1.2rem;
}

.p-map-card__map iframe {
	height: 32rem;
}

.p-news__categories {
	-moz-column-gap: 1.6rem;
	column-gap: 1.6rem;
	row-gap: 1rem;
}

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

.p-news__list-link {
	flex-wrap: wrap;
	padding: 2rem 1rem 2rem 0;
	row-gap: 1rem;
}

.p-news__date {
	font-size: 1.5rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-news__category {
	padding-left: 1.2rem;
	width: -moz-fit-content;
	width: fit-content;
}

.p-news__category span {
	font-size: 1.2rem;
	padding: 0.2rem 1.4rem 0.3rem;
}

.p-news__title {
	font-size: 1.5rem;
	width: 100%;
}

.p-fixed-news .p-news__list-item:nth-child(n+2) {
	display: none;
}

.p-fixed-news .p-fixed-news__badge {
	font-size: 1.1rem;
}

.u-m0-sp {
	margin: 0px !important;
}

.u-mt0-sp {
	margin-top: 0px !important;
}

.u-mr0-sp {
	margin-right: 0px !important;
}

.u-mb0-sp {
	margin-bottom: 0px !important;
}

.u-ml0-sp {
	margin-left: 0px !important;
}

.u-mx0-sp {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.u-my0-sp {
	margin-bottom: 0px !important;
	margin-top: 0px !important;
}

.u-m4-sp {
	margin: 4px !important;
}

.u-mt4-sp {
	margin-top: 4px !important;
}

.u-mr4-sp {
	margin-right: 4px !important;
}

.u-mb4-sp {
	margin-bottom: 4px !important;
}

.u-ml4-sp {
	margin-left: 4px !important;
}

.u-mx4-sp {
	margin-left: 4px !important;
	margin-right: 4px !important;
}

.u-my4-sp {
	margin-bottom: 4px !important;
	margin-top: 4px !important;
}

.u-m8-sp {
	margin: 8px !important;
}

.u-mt8-sp {
	margin-top: 8px !important;
}

.u-mr8-sp {
	margin-right: 8px !important;
}

.u-mb8-sp {
	margin-bottom: 8px !important;
}

.u-ml8-sp {
	margin-left: 8px !important;
}

.u-mx8-sp {
	margin-left: 8px !important;
	margin-right: 8px !important;
}

.u-my8-sp {
	margin-bottom: 8px !important;
	margin-top: 8px !important;
}

.u-m12-sp {
	margin: 12px !important;
}

.u-mt12-sp {
	margin-top: 12px !important;
}

.u-mr12-sp {
	margin-right: 12px !important;
}

.u-mb12-sp {
	margin-bottom: 12px !important;
}

.u-ml12-sp {
	margin-left: 12px !important;
}

.u-mx12-sp {
	margin-left: 12px !important;
	margin-right: 12px !important;
}

.u-my12-sp {
	margin-bottom: 12px !important;
	margin-top: 12px !important;
}

.u-m16-sp {
	margin: 16px !important;
}

.u-mt16-sp {
	margin-top: 16px !important;
}

.u-mr16-sp {
	margin-right: 16px !important;
}

.u-mb16-sp {
	margin-bottom: 16px !important;
}

.u-ml16-sp {
	margin-left: 16px !important;
}

.u-mx16-sp {
	margin-left: 16px !important;
	margin-right: 16px !important;
}

.u-my16-sp {
	margin-bottom: 16px !important;
	margin-top: 16px !important;
}

.u-m20-sp {
	margin: 20px !important;
}

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

.u-mr20-sp {
	margin-right: 20px !important;
}

.u-mb20-sp {
	margin-bottom: 20px !important;
}

.u-ml20-sp {
	margin-left: 20px !important;
}

.u-mx20-sp {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.u-my20-sp {
	margin-bottom: 20px !important;
	margin-top: 20px !important;
}

.u-m24-sp {
	margin: 24px !important;
}

.u-mt24-sp {
	margin-top: 24px !important;
}

.u-mr24-sp {
	margin-right: 24px !important;
}

.u-mb24-sp {
	margin-bottom: 24px !important;
}

.u-ml24-sp {
	margin-left: 24px !important;
}

.u-mx24-sp {
	margin-left: 24px !important;
	margin-right: 24px !important;
}

.u-my24-sp {
	margin-bottom: 24px !important;
	margin-top: 24px !important;
}

.u-m32-sp {
	margin: 32px !important;
}

.u-mt32-sp {
	margin-top: 32px !important;
}

.u-mr32-sp {
	margin-right: 32px !important;
}

.u-mb32-sp {
	margin-bottom: 32px !important;
}

.u-ml32-sp {
	margin-left: 32px !important;
}

.u-mx32-sp {
	margin-left: 32px !important;
	margin-right: 32px !important;
}

.u-my32-sp {
	margin-bottom: 32px !important;
	margin-top: 32px !important;
}

.u-m40-sp {
	margin: 40px !important;
}

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

.u-mr40-sp {
	margin-right: 40px !important;
}

.u-mb40-sp {
	margin-bottom: 40px !important;
}

.u-ml40-sp {
	margin-left: 40px !important;
}

.u-mx40-sp {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.u-my40-sp {
	margin-bottom: 40px !important;
	margin-top: 40px !important;
}

.u-m48-sp {
	margin: 48px !important;
}

.u-mt48-sp {
	margin-top: 48px !important;
}

.u-mr48-sp {
	margin-right: 48px !important;
}

.u-mb48-sp {
	margin-bottom: 48px !important;
}

.u-ml48-sp {
	margin-left: 48px !important;
}

.u-mx48-sp {
	margin-left: 48px !important;
	margin-right: 48px !important;
}

.u-my48-sp {
	margin-bottom: 48px !important;
	margin-top: 48px !important;
}

.u-m56-sp {
	margin: 56px !important;
}

.u-mt56-sp {
	margin-top: 56px !important;
}

.u-mr56-sp {
	margin-right: 56px !important;
}

.u-mb56-sp {
	margin-bottom: 56px !important;
}

.u-ml56-sp {
	margin-left: 56px !important;
}

.u-mx56-sp {
	margin-left: 56px !important;
	margin-right: 56px !important;
}

.u-my56-sp {
	margin-bottom: 56px !important;
	margin-top: 56px !important;
}

.u-m64-sp {
	margin: 64px !important;
}

.u-mt64-sp {
	margin-top: 64px !important;
}

.u-mr64-sp {
	margin-right: 64px !important;
}

.u-mb64-sp {
	margin-bottom: 64px !important;
}

.u-ml64-sp {
	margin-left: 64px !important;
}

.u-mx64-sp {
	margin-left: 64px !important;
	margin-right: 64px !important;
}

.u-my64-sp {
	margin-bottom: 64px !important;
	margin-top: 64px !important;
}

.u-m72-sp {
	margin: 72px !important;
}

.u-mt72-sp {
	margin-top: 72px !important;
}

.u-mr72-sp {
	margin-right: 72px !important;
}

.u-mb72-sp {
	margin-bottom: 72px !important;
}

.u-ml72-sp {
	margin-left: 72px !important;
}

.u-mx72-sp {
	margin-left: 72px !important;
	margin-right: 72px !important;
}

.u-my72-sp {
	margin-bottom: 72px !important;
	margin-top: 72px !important;
}

.u-m80-sp {
	margin: 80px !important;
}

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

.u-mr80-sp {
	margin-right: 80px !important;
}

.u-mb80-sp {
	margin-bottom: 80px !important;
}

.u-ml80-sp {
	margin-left: 80px !important;
}

.u-mx80-sp {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.u-my80-sp {
	margin-bottom: 80px !important;
	margin-top: 80px !important;
}

.u-m100-sp {
	margin: 100px !important;
}

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

.u-mr100-sp {
	margin-right: 100px !important;
}

.u-mb100-sp {
	margin-bottom: 100px !important;
}

.u-ml100-sp {
	margin-left: 100px !important;
}

.u-mx100-sp {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.u-my100-sp {
	margin-bottom: 100px !important;
	margin-top: 100px !important;
}

.u-m140-sp {
	margin: 140px !important;
}

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

.u-mr140-sp {
	margin-right: 140px !important;
}

.u-mb140-sp {
	margin-bottom: 140px !important;
}

.u-ml140-sp {
	margin-left: 140px !important;
}

.u-mx140-sp {
	margin-left: 140px !important;
	margin-right: 140px !important;
}

.u-my140-sp {
	margin-bottom: 140px !important;
	margin-top: 140px !important;
}

}

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

.p-contact__agree label .wpcf7-list-item-label {
	font-size: 1.3rem;
}

}

@keyframes float {

0%,100% {
	transform: translateY(0);
}

50% {
	transform: translateY(-4px);
}

}

@keyframes bounce {

0%,100% {
	transform: translateY(0);
}

25% {
	transform: translateY(-8px);
}

50% {
	transform: translateY(0);
}

75% {
	transform: translateY(-4px);
}

}

@keyframes rotateScale {

0% {
	transform: rotate(0deg) scale(1);
}

50% {
	transform: rotate(180deg) scale(1.05);
}

100% {
	transform: rotate(360deg) scale(1);
}

}

@keyframes rotateScaleReverse {

0% {
	transform: rotate(360deg) scale(1);
}

50% {
	transform: rotate(180deg) scale(0.95);
}

100% {
	transform: rotate(0deg) scale(1);
}

}

