*, *::before, *::after {
	box-sizing: border-box
}
body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd {
	margin: 0
}
ul[role="list"], ol[role="list"] {
	list-style: none
}
html:focus-within {
	scroll-behavior: smooth
}
body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5
}
a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto
}
img, picture {
	width: 100%;
	height: auto;
	max-width: 100%;
	display: block
}
input, button, textarea, select {
	font: inherit
}
@media (prefers-reduced-motion:reduce) {
	html:focus-within {
		scroll-behavior: auto
	}
}
ol, ul {
	margin: 0;
	padding: 0;
	list-style: none
}
a {
	text-decoration: none
}
input[type='text'], input[type='email'] {
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	background: none
}
input[type='submit'] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
	background: transparent
}
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	resize: none;
	padding: 0;
	border: 0;
	outline: none;
	background: transparent
}
html {
	font-size: calc(10 / 1280 * 100 * 1vw);
	scroll-padding-top: header;
	scroll-behavior: smooth
}
@media screen and (max-width:767px) {
	html {
		font-size: calc(10 / 360 * 100 * 1vw);
		scroll-padding-top: header-sp
	}
}
body {
	overflow-x: hidden;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-size: 1.6rem;
	font-weight: 700;
	background-color: #fffcf3
}
body.fixed {
	overflow: hidden
}
main {
	z-index: 0;
	position: relative
}
main.is-front {
	padding-top: 0
}
section {
	position: relative;
	padding: 8rem 0
}
a {
	color: #1c1c1c
}
.sp_only-ib {
	display: none
}
@media screen and (max-width:767px) {
	.sp_only-ib {
		display: inline-block
	}
}
.is-fade {
	transform: translateY(2rem) translateZ(0);
	opacity: 0;
	transition: all .4s
}
.is-fade.is-active {
	transform: translateY(0) translateZ(0);
	opacity: 1
}
.is-big {
	transform: scale(0);
	opacity: 0;
	transition: all .4s
}
.is-big.is-active {
	animation: animBig .4s ease-out forwards
}
.is-scale {
	transform: scale(0);
	opacity: 0;
	transition: all .4s
}
.is-scale.is-active {
	animation: animScale .4s ease-out forwards
}
.is-split.is-anim {
	overflow: hidden;
	opacity: 0
}
.is-split.is-anim span {
	display: inline-block;
	transform: translateY(200%)
}
.is-split.is-anim span:nth-child(1) {
	animation-delay: 40ms
}
.is-split.is-anim span:nth-child(2) {
	animation-delay: 80ms
}
.is-split.is-anim span:nth-child(3) {
	animation-delay: 120ms
}
.is-split.is-anim span:nth-child(4) {
	animation-delay: 160ms
}
.is-split.is-anim span:nth-child(5) {
	animation-delay: 200ms
}
.is-split.is-anim span:nth-child(6) {
	animation-delay: 240ms
}
.is-split.is-anim span:nth-child(7) {
	animation-delay: 280ms
}
.is-split.is-anim span:nth-child(8) {
	animation-delay: 320ms
}
.is-split.is-anim span:nth-child(9) {
	animation-delay: 360ms
}
.is-split.is-anim span:nth-child(10) {
	animation-delay: 400ms
}
.is-split.is-anim span:nth-child(11) {
	animation-delay: 440ms
}
.is-split.is-anim span:nth-child(12) {
	animation-delay: 480ms
}
.is-split.is-anim span:nth-child(13) {
	animation-delay: 520ms
}
.is-split.is-anim span:nth-child(14) {
	animation-delay: 560ms
}
.is-split.is-anim span:nth-child(15) {
	animation-delay: 600ms
}
.is-split.is-anim span:nth-child(16) {
	animation-delay: 640ms
}
.is-split.is-anim span:nth-child(17) {
	animation-delay: 680ms
}
.is-split.is-anim span:nth-child(18) {
	animation-delay: 720ms
}
.is-split.is-anim span:nth-child(19) {
	animation-delay: 760ms
}
.is-split.is-anim span:nth-child(20) {
	animation-delay: 800ms
}
.is-split.is-anim span:nth-child(21) {
	animation-delay: 840ms
}
.is-split.is-anim span:nth-child(22) {
	animation-delay: 880ms
}
.is-split.is-anim span:nth-child(23) {
	animation-delay: 920ms
}
.is-split.is-anim span:nth-child(24) {
	animation-delay: 960ms
}
.is-split.is-anim span:nth-child(25) {
	animation-delay: 1000ms
}
.is-split.is-anim span:nth-child(26) {
	animation-delay: 1040ms
}
.is-split.is-anim span:nth-child(27) {
	animation-delay: 1080ms
}
.is-split.is-anim span:nth-child(28) {
	animation-delay: 1120ms
}
.is-split.is-anim span:nth-child(29) {
	animation-delay: 1160ms
}
.is-split.is-anim span:nth-child(30) {
	animation-delay: 1200ms
}
.is-split.is-anim.is-active {
	opacity: 1
}
.is-split.is-anim.is-active span {
	animation-name: animTxt;
	animation-duration: .4s;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out
}
.is-sway-left {
	animation: sway-left 2s linear infinite
}
.is-sway-right {
	animation: sway-right 2s linear infinite
}
@keyframes fadeUp {
	0% {
		transform: translateY(2rem) translateZ(0);
		opacity: 0
	}
	100% {
		transform: translateY(0) translateZ(0);
		opacity: 1
	}
}
@keyframes animBig {
	0% {
		opacity: 0;
		transform: scale(0)
	}
	50% {
		opacity: 1;
		transform: scale(1.2)
	}
	100% {
		opacity: 1;
		transform: scale(1)
	}
}
@keyframes animScale {
	0% {
		opacity: 0;
		transform: scale(0)
	}
	100% {
		opacity: 1;
		transform: scale(1)
	}
}
@keyframes animTxt {
	0% {
		transform: translateY(100%)
	}
	100% {
		transform: translateY(0)
	}
}
@keyframes sway-left {
	0%, 100% {
		transform: rotate(5deg)
	}
	50% {
		transform: rotate(-5deg)
	}
}
@keyframes sway-right {
	0%, 100% {
		transform: rotate(-5deg)
	}
	50% {
		transform: rotate(5deg)
	}
}
@keyframes up-down-1 {
	0%, 60%, 100% {
		transform: translateY(0)
	}
	30% {
		transform: translateY(-1rem)
	}
}
.c-btn {
	margin: 2.4rem auto 0;
	padding: 2rem 6.4rem;
	font-size: 4rem;
	border: .2rem solid #1c1c1c;
	border-radius: 8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.6rem;
	width: -moz-fit-content;
	width: fit-content;
	background-color: #fff54d;
	transition: all .4s
}
@media screen and (max-width:767px) {
	.c-btn {
		padding: .8rem 0;
		width: 100%;
		gap: .8rem;
		font-size: 2.4rem
	}
}
.c-btn span {
	text-shadow: #1c1c1c .2rem 0 0, #1c1c1c .17rem .09rem 0, #1c1c1c .1rem .16rem 0, #1c1c1c .01rem .19rem 0, #1c1c1c -.08rem .18rem 0, #1c1c1c -.16rem .11rem 0, #1c1c1c -.19rem .02rem 0, #1c1c1c -.18rem -.07rem 0, #1c1c1c -.13rem -.15rem 0, #1c1c1c -.04rem -.19rem 0, #1c1c1c .05rem -.19rem 0, #1c1c1c .14rem -.14rem 0, #1c1c1c .19rem -.05rem 0;
	color: #fff
}
.c-btn:after {
	width: 4.8rem;
	height: 4.8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	content: '\f061';
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 3.2rem;
	background-color: #1c1c1c;
	color: #f5f5f5;
	border-radius: 50%;
	transition: all .4s
}
@media screen and (max-width:767px) {
	.c-btn:after {
		width: 3.2rem;
		height: 3.2rem;
		font-size: 2rem
	}
}
.c-btn:hover {
	transform: translate(.5rem, .5rem);
	filter: drop-shadow(0 0 0 #1c1c1c)
}
.c-btn:hover:after {
	translate: .4rem 0
}
.c-bubble {
	position: relative
}
.c-bubble-inner {
	background-color: #fff;
	border: .2rem solid #1c1c1c;
	border-radius: 8rem
}
.c-bubble-inner:before, .c-bubble-inner:after {
	content: '';
	position: absolute;
	left: 20%;
	-webkit-clip-path: polygon(15% 0, 100% 0, 0 100%);
	clip-path: polygon(15% 0, 100% 0, 0 100%)
}
.c-bubble-inner:before {
	width: calc(3.2rem + 0.4rem);
	height: calc(2.4rem + 0.4rem);
	background-color: #1c1c1c;
	bottom: 0;
	translate: 0 100%
}
@media screen and (max-width:767px) {
	.c-bubble-inner:before {
		width: calc(1.6rem + 0.4rem);
		height: calc(1.2rem + 0.4rem)
	}
}
.c-bubble-inner:after {
	width: 3.2rem;
	height: 2.4rem;
	background-color: #fff;
	bottom: .2rem;
	translate: .3rem 100%
}
@media screen and (max-width:767px) {
	.c-bubble-inner:after {
		width: 1.6rem;
		height: 1.2rem
	}
}
.c-comic {
	position: relative
}
.c-comic .inner {
	position: relative;
	z-index: 3
}
.c-comic:before {
	width: calc(100% - 0.4rem);
	height: calc(100% - 0.4rem);
	background-color: #fff;
	top: .2rem;
	left: .2rem;
	z-index: 2
}
.c-comic:after {
	width: 100%;
	height: 100%;
	background-color: #1c1c1c;
	z-index: 1;
	top: 0;
	left: 0
}
.c-comic:before, .c-comic:after {
	content: '';
	display: block;
	position: absolute
}
.c-copy {
	font-size: 1.2rem;
	color: #f5f5f5;
	text-align: center
}
.c-drop, .c-heading-main .en, .p-top-apply .inner .btn-wrap .next, .p-top-apply .inner .btn-wrap .prev, .p-top-assessment-property ol li:before {
	filter: drop-shadow(.5rem .5rem 0 #1c1c1c)
}
.p-rop-apply__form input[type='text'], .p-rop-apply__form input[type='email'], .p-rop-apply__form textarea, .p-rop-apply__form select {
	width: 100%;
	padding: .8rem 1.6rem;
	border: .2rem solid #1c1c1c;
	transition: all .4s
}
.p-rop-apply__form input[type='text']:focus, .p-rop-apply__form input[type='email']:focus, .p-rop-apply__form textarea:focus, .p-rop-apply__form select:focus {
	border: .2rem solid #8fa1ff
}
.p-rop-apply__form .policy {
	padding: 1.6rem;
	border: .2rem solid #1c1c1c;
	overflow-y: scroll;
	height: 12rem;
	font-weight: 400
}
.p-rop-apply__form input[type='checkbox'] {
	display: none
}
.p-rop-apply__form input[type='checkbox']+.mwform-checkbox-field-text {
	display: grid;
	grid-template-columns: 2.4rem 1fr;
	align-items: center;
	gap: .8rem;
	font-weight: 700;
	cursor: pointer
}
.p-rop-apply__form input[type='checkbox']+.mwform-checkbox-field-text:before {
	display: inline-block;
	content: '';
	width: 2.4rem;
	height: 2.4rem;
	border: .2rem solid #1c1c1c
}
.p-rop-apply__form input[type='checkbox']:checked+.mwform-checkbox-field-text:before {
	background-color: #1c1c1c
}
.p-rop-apply__form input[type='radio'] {
	display: none
}
.p-rop-apply__form input[type='radio']+.mwform-radio-field-text {
	font-weight: 700;
	display: grid;
	grid-template-columns: 2.4rem 1fr;
	align-items: center;
	gap: .8rem;
	cursor: pointer
}
.p-rop-apply__form input[type='radio']+.mwform-radio-field-text:before {
	display: inline-block;
	content: '';
	width: 2.4rem;
	height: 2.4rem;
	border: .2rem solid #1c1c1c;
	border-radius: 50%
}
.p-rop-apply__form input[type='radio']:checked+.mwform-radio-field-text:before {
	background-color: #1c1c1c
}
.p-rop-apply__form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer
}
.p-rop-apply__form .radio {
	display: flex;
	gap: 2.4rem
}
.c-heading-main {
	margin-bottom: 4rem;
	text-align: center;
	position: relative
}
.c-heading-main:before {
	content: '';
	background-image: url("../img/common/tit.svg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	width: 9.6rem;
	height: 4.4rem;
	display: inline-block
}
@media screen and (max-width:767px) {
	.c-heading-main:before {
		width: 6rem;
		height: 2.7rem
	}
}
.c-heading-main .en {
	font-size: 6.4rem;
	text-shadow: #1c1c1c .2rem 0 0, #1c1c1c .17rem .09rem 0, #1c1c1c .1rem .16rem 0, #1c1c1c .01rem .19rem 0, #1c1c1c -.08rem .18rem 0, #1c1c1c -.16rem .11rem 0, #1c1c1c -.19rem .02rem 0, #1c1c1c -.18rem -.07rem 0, #1c1c1c -.13rem -.15rem 0, #1c1c1c -.04rem -.19rem 0, #1c1c1c .05rem -.19rem 0, #1c1c1c .14rem -.14rem 0, #1c1c1c .19rem -.05rem 0;
	color: #fff;
	font-weight: 900
}
@media screen and (max-width:767px) {
	.c-heading-main .en {
		font-size: 4rem
	}
}
.c-heading-main .jp {
	margin-right: .8rem;
	font-size: 2.4rem
}
@media screen and (max-width:767px) {
	.c-heading-main .jp {
		font-size: 2rem
	}
}
.c-heading-sub {
	font-size: 4rem
}
@media screen and (max-width:767px) {
	.c-heading-sub {
		font-size: 2.4rem
	}
}
.c-heading-sub .big {
	font-size: 5.6rem
}
@media screen and (max-width:767px) {
	.c-heading-sub .big {
		font-size: 3.2rem
	}
}
.c-heading-sub .c-bubble {
	margin: 0 0 2.4rem auto;
	width: 36rem;
	text-align: center;
	text-shadow: #1c1c1c .1rem 0 0, #1c1c1c .05rem .08rem 0, #1c1c1c -.04rem .09rem 0, #1c1c1c -.09rem .01rem 0, #1c1c1c -.06rem -.07rem 0, #1c1c1c .02rem -.09rem 0, #1c1c1c .09rem -.02rem 0;
	color: #fff54d;
	font-size: 3.2rem
}
@media screen and (max-width:767px) {
	.c-heading-sub .c-bubble {
		margin: 0 0 1.6rem;
		font-size: 2rem
	}
}
.c-heading-sub .c-bubble span {
	font-size: 4rem
}
@media screen and (max-width:767px) {
	.c-heading-sub .c-bubble span {
		font-size: 2.4rem
	}
}
.c-heading-sub .line {
	background: radial-gradient(circle farthest-side, #e83820, #e83820 50%, transparent 50%, transparent);
	background-size: 1rem .4rem;
	background-repeat: repeat-x;
	background-position: bottom left
}
.c-hover {
	transition: all .4s;
	cursor: pointer
}
.c-hover:hover {
	opacity: .5
}
.c-list-img li {
	position: relative;
	width: 22rem
}
.c-list-img li:last-child {
	margin-top: -13.8rem;
	margin-left: auto;
	z-index: 2
}
.c-list-img li:last-child img {
	transition-delay: .2s
}
.c-marker {
	background: linear-gradient(transparent 60%, #fff54d 60%)
}
.c-txt {
	margin-top: 4rem
}
.l-footer {
	padding: 4rem 0 1.6rem;
	background-color: #4d4d4d;
	color: #fff
}
.l-footer .inner {
	display: flex;
	justify-content: space-between
}
@media screen and (max-width:767px) {
	.l-footer .inner {
		flex-direction: column;
		gap: 5.6rem
	}
}
.l-footer .inner .info {
	display: grid;
	align-items: center;
	grid-template-columns: 10.4rem 1fr;
	gap: 3.2rem
}
@media screen and (max-width:767px) {
	.l-footer .inner .info {
		grid-template-columns: 1fr;
		gap: 2.4rem
	}
}
.l-footer .inner .info .logo {
	width: 10.4rem
}
@media screen and (max-width:767px) {
	.l-footer .inner .info .logo {
		width: 7.2rem
	}
}
.l-footer .inner ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-size: 1.4rem
}
@media screen and (max-width:767px) {
	.l-footer .inner ul {
		justify-content: center
	}
}
.l-footer .inner ul li:before {
	content: '|'
}
.l-footer .inner ul li:last-child:after {
	content: '|'
}
.l-footer .inner ul li a {
	padding: 0 .8rem;
	color: #fff
}
.l-footer .inner dl {
	margin-top: .8rem
}
.l-footer .inner dl dd {
	margin-top: .8rem;
	line-height: 2
}
.l-footer .copy {
	margin-top: 1rem;
	font-size: 1.4rem;
	text-align: center
}
@media screen and (max-width:767px) {
	.l-footer .copy {
		margin-top: 4rem
	}
}
.l-footer .pagetop {
	position: absolute;
	width: 5.4rem;
	height: 5.4rem;
	border: .2rem solid #e83820;
	top: 0;
	right: -1.6rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	font-size: 2.4rem;
	color: #e83820;
	filter: drop-shadow(.3rem .3rem 0 #1c1c1c);
	translate: 100% 0
}
@media screen and (max-width:767px) {
	.l-footer .pagetop {
		right: 0;
		translate: 0 -120%
	}
}
.l-header {
	padding: 2.4rem 9rem;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 20
}
@media screen and (max-width:767px) {
	.l-header {
		padding: .8rem 1.6rem
	}
}
.l-header .logo {
	width: 20rem
}
@media screen and (max-width:767px) {
	.l-header .logo {
		width: 12rem
	}
}
.l-header ul {
	position: fixed;
	top: 4rem;
	right: -.4rem;
	display: flex;
	flex-direction: column;
	gap: 2.4rem
}
@media screen and (max-width:767px) {
	.l-header ul {
		flex-direction: row;
		gap: .8rem;
		top: auto;
		bottom: -.4rem;
		right: 50%;
		translate: 50% 0
	}
}
.l-header ul li a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .8rem;
	padding: 1.6rem;
	font-size: 2rem;
	border: .2rem solid #1c1c1c;
	border-radius: 2rem 0 0 2rem;
	background-color: #fff;
	transition: all .4s
}
@media screen and (max-width:767px) {
	.l-header ul li a {
		padding: 1rem 0 1rem 1.6rem;
		width: 14.4rem;
		flex-direction: row;
		border-radius: 1rem 1rem 0 0;
		font-size: 1.2rem
	}
}
.l-header ul li a:hover {
	translate: -.2rem 0
}
@media screen and (max-width:767px) {
	.l-header ul li a:hover {
		translate: 0 -.2rem
	}
}
.l-header ul li a .txt {
	writing-mode: vertical-rl;
	letter-spacing: .12em
}
@media screen and (max-width:767px) {
	.l-header ul li a .txt {
		writing-mode: unset;
		letter-spacing: 0;
		line-height: 1.2
	}
}
.l-header ul li a .icon {
	background-color: #fff54d;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	width: 3.2rem;
	height: 3.2rem;
	border: .2rem solid #1c1c1c
}
@media screen and (max-width:767px) {
	.l-header ul li a .icon {
		width: 2.2rem;
		height: 2.2rem
	}
}
.l-header ul li a .icon i {
	font-size: 2rem
}
@media screen and (max-width:767px) {
	.l-header ul li a .icon i {
		font-size: 1.2rem
	}
}
.l-wrap {
	position: relative;
	width: 96%;
	max-width: 96rem;
	margin: 0 auto
}
@media screen and (max-width:767px) {
	.l-wrap {
		width: 100%;
		max-width: 29.6rem
	}
}
.l-wrap-heading {
	position: relative;
	width: 100%;
	max-width: 99.2rem;
	margin: 0 auto
}
.p-top-about {
	padding-bottom: 12rem
}
@media screen and (max-width:767px) {
	.p-top-about {
		padding-top: 12rem
	}
}
.p-top-about h2 {
	text-align: center;
	font-family: "M PLUS 1", sans-serif;
	font-size: 5.6rem
}
@media screen and (max-width:767px) {
	.p-top-about h2 {
		font-size: 2rem
	}
}
.p-top-about h2 span {
	font-size: 6rem
}
@media screen and (max-width:767px) {
	.p-top-about h2 span {
		font-size: 2.4rem
	}
}
.p-top-about .inner {
	margin-top: 2.4rem;
	display: grid;
	grid-template-columns: 39.2rem 48rem;
	align-items: center;
	justify-content: space-between
}
@media screen and (max-width:767px) {
	.p-top-about .inner {
		grid-template-columns: 1fr;
		gap: 4rem
	}
}
.p-top-about .inner .txt h3 .c-bubble {
	width: 36rem
}
@media screen and (max-width:767px) {
	.p-top-about .inner .txt h3 .c-bubble {
		width: 21.6rem
	}
}
.p-top-about .inner .txt p {
	margin-top: 2.4rem;
	line-height: 2
}
@media screen and (max-width:767px) {
	.p-top-about .inner .img {
		order: 2
	}
}
.p-top-apply {
	padding-top: 12rem;
	background-color: #8fa1ff
}
@media screen and (max-width:767px) {
	.p-top-apply .l-wrap {
		max-width: 31.2rem
	}
}
.p-top-apply .inner {
	padding: 8rem;
	background-color: #fff;
	border-radius: 2.4rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner {
		padding: 8rem 1.6rem
	}
}
.p-top-apply .inner dl {
	margin: 3.2rem auto 0;
	max-width: 68.8rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner dl {
		max-width: 100%
	}
}
.p-top-apply .inner dl dt {
	font-size: 1.8rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner dl dt {
		font-size: 1.6rem
	}
}
.p-top-apply .inner dl dt.required {
	display: flex;
	align-items: center;
	gap: 1rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner dl dt.required {
		flex-wrap: wrap
	}
}
.p-top-apply .inner dl dt.required:after {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	height: 2.4rem;
	content: '必須';
	background-color: #f4785e;
	color: #fff;
	font-size: 1.4rem;
	border-radius: 1rem;
	flex-shrink: 0
}
.p-top-apply .inner dl dd {
	margin-top: .8rem
}
.p-top-apply .inner .property {
	margin-top: 8rem
}
.p-top-apply .inner .btn-wrap {
	margin-top: 8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap {
		flex-direction: column;
		gap: 2.4rem
	}
}
.p-top-apply .inner .btn-wrap .next, .p-top-apply .inner .btn-wrap .prev {
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
	transition: all .4s
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .next, .p-top-apply .inner .btn-wrap .prev {
		width: 100%
	}
}
.p-top-apply .inner .btn-wrap .next:after, .p-top-apply .inner .btn-wrap .prev:after {
	width: 4.8rem;
	height: 4.8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 3.2rem;
	background-color: #1c1c1c;
	color: #f5f5f5;
	border-radius: 50%;
	transition: all .4s;
	position: absolute;
	top: 50%;
	translate: 0 -50%
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .next:after, .p-top-apply .inner .btn-wrap .prev:after {
		width: 3.2rem;
		height: 3.2rem;
		font-size: 2rem
	}
}
.p-top-apply .inner .btn-wrap .next:hover, .p-top-apply .inner .btn-wrap .prev:hover {
	transform: translate(.5rem, .5rem);
	filter: drop-shadow(0 0 0 #1c1c1c)
}
.p-top-apply .inner .btn-wrap .next input, .p-top-apply .inner .btn-wrap .prev input {
	font-size: 4rem;
	border: .2rem solid #1c1c1c;
	border-radius: 8rem;
	width: -moz-fit-content;
	width: fit-content;
	height: 100%;
	color: #fff;
	text-shadow: #1c1c1c .2rem 0 0, #1c1c1c .17rem .09rem 0, #1c1c1c .1rem .16rem 0, #1c1c1c .01rem .19rem 0, #1c1c1c -.08rem .18rem 0, #1c1c1c -.16rem .11rem 0, #1c1c1c -.19rem .02rem 0, #1c1c1c -.18rem -.07rem 0, #1c1c1c -.13rem -.15rem 0, #1c1c1c -.04rem -.19rem 0, #1c1c1c .05rem -.19rem 0, #1c1c1c .14rem -.14rem 0, #1c1c1c .19rem -.05rem 0;
	cursor: pointer
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .next input, .p-top-apply .inner .btn-wrap .prev input {
		font-size: 2.4rem
	}
}
.p-top-apply .inner .btn-wrap .next:after {
	content: '\f061';
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	right: 4rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .next:after {
		right: 3.2rem
	}
}
.p-top-apply .inner .btn-wrap .next input {
	padding: 1.6rem 10.4rem 1.6rem 6.4rem;
	background-color: #fff54d
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .next input {
		padding: 1rem 0 1rem 3.2rem;
		width: 100%;
		text-align: left
	}
}
.p-top-apply .inner .btn-wrap .next:hover:after {
	translate: .4rem -50%
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .prev {
		text-align: center
	}
}
.p-top-apply .inner .btn-wrap .prev:after {
	content: '\f060';
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	left: 4rem
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .prev:after {
		left: 7.2rem
	}
}
.p-top-apply .inner .btn-wrap .prev input {
	padding: 1.6rem 6.4rem 1.6rem 10.4rem;
	background-color: #8fa1ff
}
@media screen and (max-width:767px) {
	.p-top-apply .inner .btn-wrap .prev input {
		margin: 0 auto;
		padding: 1rem 2.8rem 1rem 0;
		width: 19rem;
		text-align: right
	}
}
.p-top-apply .inner .btn-wrap .prev:hover:after {
	translate: -.4rem -50%
}
.p-top-apply .inner h3 {
	padding: 1.6rem 4rem;
	background-color: #4d4d4d;
	color: #fff;
	font-size: 2.4rem;
	border: .2rem solid #1c1c1c
}
@media screen and (max-width:767px) {
	.p-top-apply .inner h3 {
		padding: .8rem 1.6rem;
		font-size: 2rem
	}
}
.p-top-apply.send .select {
	position: relative
}
.p-top-apply.send .select:after {
	content: '▼';
	position: absolute;
	top: .8rem;
	right: 1.6rem;
	font-size: 1.8rem
}
.p-top-apply.send .prev {
	display: none
}
.p-top-apply.confirm .consent {
	display: none
}
.p-top-apply.confirm dd {
	padding: 0 1.6rem;
	font-weight: 400
}
.p-top-apply.complete p {
	margin-top: 3.2rem
}
.p-top-apply.complete .c-btn {
	margin-top: 8rem
}
.p-top-achievement {
	padding-top: 8rem
}
@media screen and (max-width:767px) {
	.p-top-achievement {
		padding-top: 12rem
	}
}
.p-top-achievement .table-wrap {
	margin-top: 2.4rem;
	padding: 0 4rem
}
@media screen and (max-width:767px) {
	.p-top-achievement .table-wrap {
		padding: 0 0 2.4rem 0;
		overflow-x: scroll
	}
	.p-top-achievement .table-wrap::-webkit-scrollbar {
		width: 1.6rem;
		background: #d2d7d9;
		border-radius: 2rem
	}
	.p-top-achievement .table-wrap::-webkit-scrollbar:horizontal {
		height: 1.6rem;
		background: #d2d7d9;
		border-radius: 2rem
	}
	.p-top-achievement .table-wrap::-webkit-scrollbar-thumb {
		background: #a5abb0;
		border-radius: 2rem
	}
	.p-top-achievement .table-wrap::-webkit-scrollbar-thumb:horizontal {
		background: #a5abb0;
		border-radius: 2rem
	}
}
.p-top-achievement .table-wrap table {
	width: 100%;
	background-color: #fff;
	text-align: center;
	border: .2rem solid #1c1c1c;
	border-collapse: collapse;
	table-layout: fixed
}
@media screen and (max-width:767px) {
	.p-top-achievement .table-wrap table {
		margin: 0 1.6rem;
		table-layout: auto
	}
}
.p-top-achievement .table-wrap table th, .p-top-achievement .table-wrap table td {
	border: .2rem solid #1c1c1c
}
@media screen and (max-width:767px) {
	.p-top-achievement .table-wrap table th, .p-top-achievement .table-wrap table td {
		min-width: 19rem
	}
}
.p-top-achievement .table-wrap table thead {
	background-color: #4d4d4d;
	color: #fff
}
.p-top-achievement .table-wrap table thead th {
	padding: 2.4rem
}
.p-top-achievement .table-wrap table thead th:first-child {
	width: 30.4rem
}
@media screen and (max-width:767px) {
	.p-top-achievement .table-wrap table thead th:first-child {
		min-width: 30.4rem
	}
}
.p-top-achievement .table-wrap table tbody th {
	background-color: rgba(143, 161, 255, 0.2)
}
.p-top-achievement .table-wrap table tbody td {
	padding: 2.4rem .8rem;
	background-color: rgba(255, 245, 77, 0.2)
}
.p-top-achievement .c-btn {
	margin-top: 5.6rem
}
.p-top-assessment {
	padding-bottom: 8rem;
	background: repeating-linear-gradient(135deg, #8fa1ff33, #8fa1ff33 20px, #fffcf3 20px, #fffcf3 40px);
	position: relative
}
@media screen and (max-width:767px) {
	.p-top-assessment {
		padding-bottom: 12rem;
		background: repeating-linear-gradient(135deg, #8fa1ff33, #8fa1ff33 20px, #fffcf3 20px, #fffcf3 40px);
	}
}
.p-top-assessment:before {
	content: '';
	width: 100%;
	height: 16.2rem;
	background-color: #8fa1ff;
	position: absolute;
	top: -1px;
	left: 0;
	-webkit-clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
	clip-path: polygon(100% 0%, 50% 100%, 0% 0%)
}
@media screen and (max-width:767px) {
	.p-top-assessment:before {
		height: 6.4rem
	}
}
@media screen and (max-width:767px) {
	.p-top-assessment .l-wrap {
		max-width: 31.2rem
	}
}
.p-top-assessment h2 {
	padding-bottom: 2.4rem;
	font-family: "M PLUS 1", sans-serif;
	font-size: 4rem;
	text-align: center;
	position: relative;
	margin-top: 14rem;
}
@media screen and (max-width:767px) {
	.p-top-assessment h2 {
		padding-bottom: 3.2rem;
		font-size: 2rem
	}
}
.p-top-assessment h2 .big {
	font-size: 4.4rem
}
@media screen and (max-width:767px) {
	.p-top-assessment h2 .big {
		font-size: 2.4rem
	}
}
.p-top-assessment h2:after {
	content: '';
	width: 10.4rem;
	height: .4rem;
	background-color: #000000;
	display: inline-block;
	position: absolute;
	left: 50%;
	bottom: 0;
	translate: -50% 0
}
.p-top-assessment h2 p {
	text-shadow: #1c1c1c .1rem 0 0, #1c1c1c .05rem .08rem 0, #1c1c1c -.04rem .09rem 0, #1c1c1c -.09rem .01rem 0, #1c1c1c -.06rem -.07rem 0, #1c1c1c .02rem -.09rem 0, #1c1c1c .09rem -.02rem 0;
	color: #fff54d;
	font-size: 5.6rem
}
@media screen and (max-width:767px) {
	.p-top-assessment h2 p {
		font-size: 2.8rem
	}
}
.p-top-assessment .inner {
	margin-top: 4rem;
	padding: 8rem 3.2rem;
	background: #fff;
	border-radius: 2.4rem;
	position: relative
}
@media screen and (max-width:767px) {
	.p-top-assessment .inner {
		padding: 4rem 1.6rem 5.6rem
	}
}
.p-top-assessment .inner h3 {
	padding: .8rem 0;
	text-align: center;
	font-size: 3.5rem;
}
.p-top-assessment .inner .horse {
	width: 20.3rem;
	position: absolute;
	top: 0;
	left: 0;
	translate: -3.1rem calc(-100% - 1.3rem)
}
@media screen and (max-width:767px) {
	.p-top-assessment .inner .horse {
		width: 16rem;
		translate: -4.4rem calc(-100% - 16.9rem)
	}
}
.p-top-assessment-property ol {
	margin-top: 6.4rem;
	padding: 0 4rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 6.4rem 4.8rem;
	counter-reset: item
}
@media screen and (max-width:767px) {
	.p-top-assessment-property ol {
		margin-top: 4rem;
		padding: 0 1.6rem;
		grid-template-columns: 1fr
	}
}
.p-top-assessment-property ol li {
	counter-increment: item;
	position: relative
}
.p-top-assessment-property ol li:before {
	content: '0' counter(item);
	position: absolute;
	text-shadow: #1c1c1c .2rem 0 0, #1c1c1c .17rem .09rem 0, #1c1c1c .1rem .16rem 0, #1c1c1c .01rem .19rem 0, #1c1c1c -.08rem .18rem 0, #1c1c1c -.16rem .11rem 0, #1c1c1c -.19rem .02rem 0, #1c1c1c -.18rem -.07rem 0, #1c1c1c -.13rem -.15rem 0, #1c1c1c -.04rem -.19rem 0, #1c1c1c .05rem -.19rem 0, #1c1c1c .14rem -.14rem 0, #1c1c1c .19rem -.05rem 0;
	font-size: 7.2rem;
	color: #fff;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -70%;
	z-index: 2
}
@media screen and (max-width:767px) {
	.p-top-assessment-property ol li:before {
		left: 0;
		font-size: 5.6rem;
		translate: 0 -60%
	}
}
.p-top-assessment-property ol li .list-inner {
	overflow: hidden;
	border: .2rem solid #1c1c1c;
	background-color: #fff;
	border-radius: 2.4rem
}
.p-top-assessment-property ol li .list-inner .img {
	height: 18rem;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center
}
@media screen and (max-width:767px) {
	.p-top-assessment-property ol li .list-inner .img {
		height: 20rem
	}
}
.p-top-assessment-property ol li .list-inner .txt {
	padding: 2.4rem 2rem 3.2rem
}
@media screen and (max-width:767px) {
	.p-top-assessment-property ol li .list-inner .txt {
		padding: 2.4rem 1.6rem 3.2rem
	}
}
.p-top-assessment-property ol li .list-inner .txt h4 {
	text-align: center;
	font-size: 2.4rem
}
.p-top-assessment-property ol li .list-inner .txt p {
	margin-top: 1.6rem
}
@media screen and (max-width:767px) {
	.p-top-assessment-property ol li .list-inner .txt p {
		margin-top: .8rem;
		font-size: 1.4rem
	}
}
.p-top-company {
	background-color: #8fa1ff
}
@media screen and (max-width:767px) {
	.p-top-company .l-wrap {
		max-width: 31.2rem
	}
}
.p-top-company .inner {
	padding: 8rem 4rem;
	background-color: #fff;
	border-radius: 2.4rem;
	display: grid;
	align-items: center;
	grid-template-columns: 40rem 1fr;
	gap: 4rem
}
@media screen and (max-width:767px) {
	.p-top-company .inner {
		padding: 4rem 2.4rem;
		grid-template-columns: 1fr;
		gap: 3.2rem
	}
}
.p-top-company .inner .img {
	background-image: url("../img/top/company/main.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	height: 40rem;
	border-radius: 50%;
	border: .2rem solid #1c1c1c
}
@media screen and (max-width:767px) {
	.p-top-company .inner .img {
		height: 24rem
	}
}
.p-top-company .inner .txt h3 {
	position: relative;
	line-height: 2
}
.p-top-company .inner .txt h3 .c-bubble {
	width: 28rem;
	position: absolute;
	top: 0;
	right: 0;
	translate: 0 -50%
}
@media screen and (max-width:767px) {
	.p-top-company .inner .txt h3 .c-bubble {
		width: 17.6rem;
		translate: 0 -2.19rem
	}
}
.p-top-company .inner .txt p {
	margin-top: 3.2rem;
	line-height: 2
}

.company_table {
	margin: 2rem 0;
}
.company_table td{
	border-bottom: dotted 4px #e1e1e1;
    padding: 0 0 0 10px;
}
.company_table th{
	padding: 8px 0;
    border-bottom: dotted 4px #8fa1ff;
    width: 110px;
}
@media screen and (max-width:767px) {
	.company_table td{
		border-bottom: none;
        padding: 8px 10px 15px 8px;
        display: block;
        text-align: center;
	}
	.company_table th{
		padding: 8px 0;
        width: 100%;
        display: block;
	}
}

.p-top-cta {
	padding: 0;
	position: fixed;
	top: 4rem;
	right: -.4rem
}
@media screen and (max-width:767px) {
	.p-top-cta {
		display: none
	}
}
.p-top-cta ul li a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .8rem;
	padding: 1.6rem;
	font-size: 2rem;
	border: .2rem solid #1c1c1c;
	border-radius: 2rem 0 0 2rem;
	background-color: #fff;
	transition: all .4s
}
.p-top-cta ul li a:hover {
	transform: translateX(-.2rem)
}
.p-top-cta ul li a .txt {
	writing-mode: vertical-rl;
	letter-spacing: .12em
}
.p-top-cta ul li a .icon {
	background-color: #fff54d;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	width: 3.2rem;
	height: 3.2rem;
	border: .2rem solid #1c1c1c
}
.p-top-cta ul li+li {
	margin-top: 2.4rem
}
@media screen and (max-width:767px) {
	.p-top-faq {
		padding-bottom: 12rem
	}
}
.p-top-faq:after {
	content: '';
	width: 64rem;
	height: 8rem;
	background-color: #fffcf3;
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 100%;
	-webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	z-index: 2
}
@media screen and (max-width:767px) {
	.p-top-faq:after {
		width: 18rem;
		height: 4rem
	}
}
@media screen and (max-width:767px) {
	.p-top-faq .l-wrap {
		max-width: 31.2rem
	}
}
.p-top-faq .inner {
	padding: 6.4rem 7.2rem;
	border: .2rem solid #8fa1ff;
	background-color: #fff;
	border-radius: 2.4rem;
	position: relative
}
@media screen and (max-width:767px) {
	.p-top-faq .inner {
		padding: 6.4rem 1.6rem
	}
}
.p-top-faq .inner .horse {
	width: 31.3rem;
	position: absolute;
	top: 0;
	right: 0;
	translate: -3.2rem calc(-100% - 0.2rem)
}
@media screen and (max-width:767px) {
	.p-top-faq .inner .horse {
		width: 15.2rem;
		translate: 1.6rem calc(-100% - 0.2rem)
	}
}
.p-top-faq ul li:last-child dl {
	border-bottom: .2rem solid #ccc
}
.p-top-faq ul li dl {
	line-height: 2
}
.p-top-faq ul li dl dt {
	padding: 2.4rem 6rem 2.4rem 1.6rem;
	border-top: .2rem solid #ccc;
	display: grid;
	grid-template-columns: 3.2rem 1fr;
	gap: 1.6rem;
	position: relative;
	cursor: pointer
}
@media screen and (max-width:767px) {
	.p-top-faq ul li dl dt {
		padding: 3.2rem 4.4rem 3.2rem 1.6rem;
		gap: .8rem
	}
}
.p-top-faq ul li dl dt:before {
	padding-bottom: .4rem;
	content: 'Q';
	width: 3.2rem;
	height: 3.2rem;
	background-color: #8fa1ff;
	color: #fff;
	font-weight: 700;
	font-size: 2.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	line-height: 1
}
.p-top-faq ul li dl dt:after {
	content: '＋';
	font-size: 2.4rem;
	font-weight: 900;
	color: #e83820;
	position: absolute;
	top: 1.6rem;
	right: 1.6rem;
	transition: all .4s
}
@media screen and (max-width:767px) {
	.p-top-faq ul li dl dt:after {
		right: .8rem;
		top: 50%;
		translate: 0 -50%
	}
}
.p-top-faq ul li dl dt.is-open:after {
	content: '−';
	rotate: -180deg
}
.p-top-faq ul li dl dd {
	display: none;
	border-top: .2rem solid #ccc
}
.p-top-faq ul li dl dd p {
	padding: 2.4rem 1.6rem;
	background-color: #f4f4f4;
	display: grid;
	grid-template-columns: 3.2rem 1fr;
	gap: 1.6rem;
	position: relative
}
@media screen and (max-width:767px) {
	.p-top-faq ul li dl dd p {
		gap: .8rem
	}
}
.p-top-faq ul li dl dd p:before {
	content: 'A';
	padding-bottom: .4rem;
	width: 3.2rem;
	height: 3.2rem;
	background-color: #e83820;
	color: #fff;
	font-weight: 700;
	font-size: 2.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	line-height: 1
}
.p-top-flow ol {
	counter-reset: item
}
.p-top-flow ol li {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 42rem;
	counter-increment: item;
	position: relative
}
@media screen and (max-width:767px) {
	.p-top-flow ol li {
		grid-template-columns: 1fr;
		gap: 3.2rem
	}
}
.p-top-flow ol li:after {
	content: 'CHECK';
	position: absolute;
	top: 50%;
	right: 0;
	font-size: 17.6rem;
	color: rgba(143, 161, 255, 0.2);
	line-height: 1;
	translate: 0 -50%;
	font-weight: 900
}
@media screen and (max-width:767px) {
	.p-top-flow ol li:after {
		font-size: 12rem;
		top: auto;
		right: auto;
		bottom: 16rem;
		left: 0;
		translate: -4.6rem 0
	}
}
.p-top-flow ol li+li {
	margin-top: 6.4rem
}
@media screen and (max-width:767px) {
	.p-top-flow ol li+li {
		margin-top: 8rem
	}
}
.p-top-flow ol li .txt {
	position: relative;
	z-index: 2
}
.p-top-flow ol li .txt h3 {
	display: grid;
	align-items: center;
	grid-template-columns: 6.2rem 1fr;
	gap: .8rem;
	font-size: 3.2rem
}
@media screen and (max-width:767px) {
	.p-top-flow ol li .txt h3 {
		grid-template-columns: 4rem 1fr;
		font-size: 2.4rem
	}
}
.p-top-flow ol li .txt h3:before {
	width: 6.2rem;
	height: 6.2rem;
	content: counter(item);
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #8fa1ff;
	border-radius: 50%;
	font-size: 4rem;
	color: #fff
}
@media screen and (max-width:767px) {
	.p-top-flow ol li .txt h3:before {
		width: 4rem;
		height: 4rem;
		font-size: 2.4rem
	}
}
.p-top-flow ol li .txt p {
	margin-top: 1.6rem;
	padding-left: 7rem;
	line-height: 2
}
@media screen and (max-width:767px) {
	.p-top-flow ol li .txt p {
		padding-left: 0
	}
}
.p-top-flow ol li .img {
	position: relative;
	z-index: 2
}
@media screen and (max-width:767px) {
	.p-top-flow ol li .img {
		width: 100%
	}
}
.p-top-flow .c-btn {
	margin-top: 8rem
}
.p-top-merit {
	padding: 16rem 0 2rem;
	background-color: #8fa1ff
}
@media screen and (max-width:767px) {
	.p-top-merit {
		padding: 12rem 0 5rem;
	}
}
.p-top-merit .c-bubble {
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%
}
.p-top-merit .c-bubble-inner {
	padding: 1.6rem 0;
	width: 60rem;
	text-align: center;
	font-family: "M PLUS 1", sans-serif;
	font-size: 4rem
}
@media screen and (max-width:767px) {
	.p-top-merit .c-bubble-inner {
		padding: .8rem;
		width: 29.6rem;
		font-size: 2rem
	}
}
.p-top-merit .c-bubble-inner:before, .p-top-merit .c-bubble-inner:after {
	left: 80%
}
.p-top-merit .c-bubble-inner .big {
	font-size: 4.4rem
}
@media screen and (max-width:767px) {
	.p-top-merit .c-bubble-inner .big {
		font-size: 2.4rem
	}
}
.p-top-merit ol {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.6rem;
	counter-reset: item
}
@media screen and (max-width:767px) {
	.p-top-merit ol {
		grid-template-columns: 1fr;
		gap: 5.6rem
	}
}
.p-top-merit ol li {
	padding: 5.6rem 1.6rem 3.2rem;
	counter-increment: item;
	background-color: #fff;
	border-radius: 2rem;
	border: .2rem solid #1c1c1c;
	position: relative
}
@media screen and (max-width:767px) {
	.p-top-merit ol li {
		border-radius: 1rem
	}
}
.p-top-merit ol li span {
	width: 8rem;
	height: 8rem;
	border-radius: 50%;
	background-color: #fff54d;
	border: .2rem solid #1c1c1c;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%;
	line-height: 1
}
.p-top-merit ol li span:after {
	content: '0' counter(item);
	font-size: 4rem
}
.p-top-merit ol li h3 {
	text-align: center;
	font-size: 3.2rem
}
@media screen and (max-width:767px) {
	.p-top-merit ol li h3 {
		font-size: 2.4rem
	}
}
.p-top-merit ol li p {
	margin-top: 1.6rem;
	line-height: 2
}
.p-top-merit .c-btn {
	background-color: #fff54d
}
@media screen and (max-width:767px) {
	.p-top-merit .c-btn {
		margin-top: 5.6rem
	}
}
.p-top-mv {
	padding: 11rem 0;
	background-color: #8fa1ff
}
@media screen and (max-width:767px) {
	.p-top-mv {
		padding: 11.2rem 0 29.3rem
	}
}
.p-top-mv .l-wrap {
	max-width: 110rem
}
@media screen and (max-width:767px) {
	.p-top-mv .l-wrap {
		max-width: 29.6rem
	}
}
.p-top-mv .inner {
	margin-left: auto;
	width: 67.9rem
}
@media screen and (max-width:767px) {
	.p-top-mv .inner {
		width: 100%
	}
}
.p-top-mv .inner p {
	text-align: center;
	font-size: 4rem
}
@media screen and (max-width:767px) {
	.p-top-mv .inner p {
		font-size: 1.8rem
	}
}
.p-top-mv .inner .tit {
	margin: 4rem 0 0 auto;
	width: -moz-fit-content;
	width: fit-content
}
@media screen and (max-width:767px) {
	.p-top-mv .inner .tit {
		margin-top: .8rem;
		width: 100%
	}
}
.p-top-mv .inner .tit h1 {
	text-align: center;
	font-size: 11rem;
	font-weight: 900;
	line-height: 1.3;
	filter: drop-shadow(1rem 1rem 0 #1c1c1c);
	text-shadow: #1c1c1c .2rem 0 0, #1c1c1c .17rem .09rem 0, #1c1c1c .1rem .16rem 0, #1c1c1c .01rem .19rem 0, #1c1c1c -.08rem .18rem 0, #1c1c1c -.16rem .11rem 0, #1c1c1c -.19rem .02rem 0, #1c1c1c -.18rem -.07rem 0, #1c1c1c -.13rem -.15rem 0, #1c1c1c -.04rem -.19rem 0, #1c1c1c .05rem -.19rem 0, #1c1c1c .14rem -.14rem 0, #1c1c1c .19rem -.05rem 0;
	color: #fff
}
@media screen and (max-width:767px) {
	.p-top-mv .inner .tit h1 {
		font-size: 4.8rem
	}
}
.p-top-mv .inner .tit .c-btn {
	margin-top: 2.4rem;
	background-color: #fff54d
}
.p-top-mv .horse {
	width: 81.5rem;
	position: absolute;
	top: 1.3rem;
	left: -22rem
}
@media screen and (max-width:767px) {
	.p-top-mv .horse {
		width: 33.4rem;
		top: auto;
		left: -3.4rem;
		bottom: -7rem
	}
}
.p-top-mv .scroll {
	text-align: center;
	position: absolute;
	left: 50%;
	bottom: 1.6rem;
	line-height: 1.2;
	font-size: 1.4rem;
	translate: -50% 0
}
.p-top-solution {
	padding-bottom: 8rem;
	background: #e9eaf5;
}
@media screen and (max-width:767px) {
	.p-top-solution {
		padding-bottom: 1.6rem
	}
}
.p-top-solution h2 {
	text-align: center;
	font-size: 4rem
}
@media screen and (max-width:767px) {
	.p-top-solution h2 {
		font-size: 2.4rem
	}
}
.p-top-solution h2:before {
	margin: 0 auto 1.6rem;
	content: '\f0eb';
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font: var(--fa-font-regular);
	width: 6.4rem;
	height: 6.4rem;
	border-radius: 50%;
	background: #8fa1ff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 3.2rem
}
.p-top-solution ol {
	margin: 4rem auto 0;
	width: 89.6rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3.2rem 4.8rem
}
@media screen and (max-width:767px) {
	.p-top-solution ol {
		width: 100%;
		grid-template-columns: 1fr;
		gap: 5.6rem
	}
}
.p-top-solution ol li {
	display: flex;
	flex-direction: column;
	justify-content: space-between
}
.p-top-solution ol .txt .c-bubble-inner {
	padding: 3.2rem 1.6rem;
	border-radius: 2.4rem
}
@media screen and (max-width:767px) {
	.p-top-solution ol .txt .c-bubble-inner {
		padding: 1.6rem
	}
}
.p-top-solution ol img {
	margin: 4rem auto 0;
	width: 21.6rem
}
@media screen and (max-width:767px) {
	.p-top-solution ol img {
		width: 20.6rem
	}
}
.p-top-solution .arrow {
	margin: 1.6rem auto 0;
	width: 4rem
}
@media screen and (max-width:767px) {
	.p-top-solution .arrow {
		margin: 14.6rem auto 0
	}
}


/*------プライバシーポリシー-----*/

.privacy_wrap {
	width:80%;
    margin: 7rem auto;
}

.privacy_wrap h1{
	margin-bottom: 30px;
}
.privacy_wrap h3{
	margin-bottom: 20px;
}
.privacy_wrap p{
	margin-bottom: 40px;
	font-weight: 400;
}