/* --------------- top --------------- */

#wrap.top {
	padding-top: 0;
}

.bg_topmain {
	margin: 0;
	padding: 100px 0 0;
	background-color: #ec7596;
	background-image: url(../img/top/bg_topmain.svg);
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}

.col_topmain {
	width: 96%;
	max-width: 1024px;
	height: 41.66vw;
	max-height: 450px;
	margin: 0 auto;
	padding: 0 0 1%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	z-index: 0;
}

.col_topmain .img_topmain {
	width: 33.83vw;
	max-width: 450px;
	margin: 0;
	padding: 0;
	position: absolute;
	right: 5%;
	bottom: 0%;
}

.col_topmain .cont {
	width: 42.05%;
	margin: 0 0 0 7%;
	padding: 4.5% 0 0;
}

.col_topmain .cont .lead {
	margin: 0.6em 0 0;
	padding: 0;
	color: #fff;
	font-size: min(1.944vw, 21px);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.18em;
}

.col_topmain .btnarea {
	width: 34.8%;
	margin: 0 0 0 9.8%;
	padding: 0;
	display: flex;
	justify-content: space-between;
}

.col_topmain .btnarea a {
	width: calc((100% - 12px)/2);
	margin: 0;
	padding: 0.6em;
	color: #000;
	font-size: min(1.29vw, 14px);
	font-weight: 700;
	text-align: center;
	background-color: #fff;
	border: solid 2px #000;
	border-radius: 3em;
	box-sizing: border-box;
	display: block;
}

.col_topmain .btnarea a.black {
	color: #fff;
	background-color: #000;
}

.col_topmain ul.list_appeal {
	width: 100%;
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: min(2vw, 21px);
	font-weight: 600;
	line-height: 1.4;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}

.col_topmain ul.list_appeal li {
	margin: 0;
	padding: 0 0.5em;
	position: relative;
	z-index: 0;
}

.col_topmain ul.list_appeal li::after {
	content: "";
	width: 1px;
	height: 1.2em;
	margin: 0;
	padding: 0;
	background-color: #fff;
	position: absolute;
	right: 0;
	bottom: 0.05em;
}

.col_topmain ul.list_appeal li:last-child::after {
	content: none;
}

.col_topmain ul.list_appeal li .num {
	font-size: 2.045em;
	line-height: 1;
}

.col_topmain ul.list_appeal li .dot {
	margin: 0 -0.2em;
	padding: 0;
	display: inline-block;
}

@media screen and (max-width: 950px) {
	.bg_topmain {
		padding: 60px 0 0;
	}
}

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

	.bg_topmain {
		background-image: url(../img/top/sp/bg_topmain.svg);
	}

	.col_topmain {
		height: 137.8vw;
		max-height: unset;
		justify-content: flex-start;
	}

	.col_topmain .img_topmain {
		width: 86.45vw;
		max-width: unset;
		z-index: 1;
		right: -17.5%;
		bottom: -5%;
		z-index: -1;
	}

	.col_topmain .cont {
		width: 65.27vw;
		margin: 0 auto 12.2vw;
		padding: 7% 0 0;
	}

	.col_topmain .cont .lead {
		font-size: 3.3vw;
	}

	.col_topmain .btnarea {
		width: 34.64vw;
		margin: 0 0 0 3vw;
		display: block;
		order: 1;
	}

	.col_topmain .btnarea a {
		width: 100%;
		font-size: 3.78vw;
		padding: 0.4em;
	}

	.col_topmain .btnarea a.black {
		margin: 0.5em 0 0;
	}

	.col_topmain ul.list_appeal {
		width: 47vw;
		font-size: 4.02vw;
		padding: 0 0 5vw;
		line-height: 1;
		display: block;
	}

	.col_topmain ul.list_appeal li {
		margin: 0 0 0.4em;
		padding: 0 0.2em 0.15em;
	}

	.col_topmain ul.list_appeal li:nth-child(2),
	.col_topmain ul.list_appeal li:nth-child(3) {
		margin-bottom: 0.6em;
	}

	.col_topmain ul.list_appeal li::after {
		width: 100%;
		height: 1px;
		right: 0;
		bottom: 0;
	}

	.col_topmain ul.list_appeal li:last-child::after {
		content: "";
	}
}

.col_topmain .anchor_scroll {
	margin: 0;
	padding: 0;
	position: absolute;
	left: -2.5%;
	top: calc(100% - 115px);
	z-index: 5;
}

.col_topmain .anchor_scroll a {
	width: 80px;
	height: 1.8em;
	margin: 0;
	padding: 0 0.1em;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	transform-origin: left bottom;
	transform: rotate(90deg);
	display: block;
	position: relative;
	z-index: 0;
}

.col_topmain .anchor_scroll a::before {
	content: "";
	width: 100%;
	height: 8px;
	margin: 0;
	padding: 0;
	border-right: solid 2px #fff;
	border-bottom: solid 1px #fff;
	transform-origin: left bottom;
	transform: skewX(45deg);
	animation: arrow-topmain 2s infinite ease-in-out;
	position: absolute;
	left: 0;
	bottom: 0;
}

@-webkit-keyframes arrow-topmain {
	0% {
		width: 80%;
	}

	80% {
		width: 100%;
	}

	100% {
		width: 100%;
	}
}

@media screen and (max-width: 1100px) {
	.col_topmain .anchor_scroll {
		top: calc(100% - 140px);
		left: -1%;
	}
}

@media screen and (min-width: 701px) {
	.col_topmain .anchor_scroll a {
		transition: filter .4s;
	}

	.col_topmain .anchor_scroll a:hover {
		filter: drop-shadow(0 0 4px rgba(255, 255, 255, 1)) drop-shadow(0 0 2px rgba(255, 255, 255, 0.5));
	}
}

@media screen and (max-width: 700px) {
	.col_topmain .anchor_scroll {
		display: none;
	}
}

@-webkit-keyframes txtanim1 {
	0% {
		opacity: 0;
		transform: translateY(100%);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}


.col_topsupport {
	margin: 0;
	padding: 15px 0;
}

.col_topsupport .cont_logolist {
	width: 100%;
	margin: 0;
	padding: 0;
}

.col_topsupport .cont_logolist .swiper-wrapper {
	transition-timing-function: linear;
}

.col_topsupport .cont_logolist .swiper-slide {
	width: auto;
	height: 40px;
}

.col_topsupport .cont_logolist .swiper-slide img {
	width: auto;
	height: 100%;
}


/* ----- Our Concept ----- */

.bg_topconcept {
	margin: 0;
	padding: 90px 0;
	background: linear-gradient(180deg, #fad8e4, #ffffff);
}

.col_topconcept {
	width: 94%;
	max-width: 1060px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 0;
}

.col_topconcept .cont_txt {
	width: 400px;
	order: 1;
}

.mds_topconcept {
	width: 10em;
	margin: 0 0 0.35em;
	padding: 0;
	color: #fff;
	font-size: 117px;
	font-weight: 600;
	text-align: right;
	line-height: 1;
	transform: translateX(-100%);
	position: relative;
	top: -0.2em;
	left: 100%;
}

.col_topconcept .cont_txt .lead {
	margin: 0 0 1em;
	padding: 0;
	font-size: 27px;
	font-weight: 700;
	transition: all .8s;
	opacity: 0;
	position: relative;
	top: 15px;
}

.col_topconcept .cont_txt .lead.active {
	opacity: 1;
	top: 0;
}

.col_topconcept .cont_txt .txt {
	margin: 0;
	padding: 0;
	line-height: 2.2;
	transition: all .8s;
	opacity: 0;
	position: relative;
	top: 15px;
}

.col_topconcept .cont_txt .txt.active {
	opacity: 1;
	top: 0;
}

.col_topconcept .cont_img {
	width: calc(94% - 400px);
	max-width: 590px;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.col_topconcept .cont_img .img_crop {
	width: 47.8%;
	margin: 0;
	padding: 0;
	border-radius: 30px;
	overflow: hidden;
	transition: all .8s;
	opacity: 0;
	position: relative;
	top: 15px;
}

.col_topconcept .cont_img .img_crop:last-child {
	margin-top: 72px;
	transition-delay: .5s;
}

.col_topconcept .cont_img.active .img_crop {
	opacity: 1;
	top: 0;
}

@media screen and (max-width: 900px) {
	.bg_topconcept {
		padding: 90px 0 20vw;
	}

	.col_topconcept {
		display: block;
	}

	.col_topconcept .cont_txt {
		width: 100%;
		margin: 0 0 40px;
	}

	.mds_topconcept {
		width: 100%;
		margin: 0 0 0.3em;
		font-size: min(16.8vw, 117px);
		text-align: center;
		transform: translateX(0);
		position: static;
	}

	.col_topconcept .cont_txt .lead {
		text-align: center;
	}

	.col_topconcept .cont_txt .txt {
		text-align: center;
	}

	.col_topconcept .cont_img {
		width: 84.6vw;
		margin: 0 auto;
	}
}

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

	.bg_topconcept {
		padding: 12.16vw 0;
	}

	.col_topconcept .cont_txt {
		margin: 0 0 9.7vw;
	}

	.col_topconcept .cont_txt .lead {
		font-size: min(5.135vw, 27px);
	}

	.col_topconcept .cont_img .img_crop {
		border-radius: 4.6vw;
	}

	.col_topconcept .cont_img .img_crop:last-child {
		margin-top: 15.27vw;
	}
}

@media screen and (max-width: 450px) {
	.col_topconcept .cont_txt .txt {
		width: 95.74%;
		margin: 0 auto;
		text-align: left;
		line-height: 1.78;
	}
}

.deco_line_concept {
	width: 70vw;
	max-width: 986px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 320px;
	right: 78%;
}

.deco_line_concept .path_line1 {
	fill: none;
	stroke: #9000AD;
	stroke-width: 20;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.cont_img.active+.deco_line_concept .path_line1 {
	animation: deco-topline1 1s forwards linear;
}

@-webkit-keyframes deco-topline1 {
	0% {
		stroke-dashoffset: 1500;
	}

	100% {
		stroke-dashoffset: 0;
	}
}

@media screen and (max-width: 1024px) {
	.deco_line_concept {
		top: 31vw;
		right: 58%;
	}
}

@media screen and (max-width: 900px) {
	.deco_line_concept {
		width: 136vw;
		top: auto;
		right: 35%;
		bottom: -18.5vw;
	}

	.deco_line_concept .path_line1 {
		stroke-width: 23.8169;
	}
}

.col_topposting {
	width: 92%;
	max-width: 1160px;
	margin: 0 auto;
	padding: 0;
}

.mds_topposting {
	margin: 0 0 66px;
	padding: 0;
	text-align: center;
}

.mds_topposting .mds {
	margin: 0;
	padding: 0;
	font-size: 78px;
	font-weight: 600;
	overflow: hidden;
}

.mds_topposting .mds span {
	margin: 0;
	padding: 0;
	display: inline-block;
	transform: translateY(100%);
}

.mds_topposting .mds span.pink {
	color: #fb005d;
}

.col_topposting.active .mds_topposting .mds span {
	animation: txtanim1 0.4s forwards linear;
}

.col_topposting.active .mds_topposting .mds span:nth-child(2) {
	animation-delay: 0.03s;
}

.col_topposting.active .mds_topposting .mds span:nth-child(3) {
	animation-delay: 0.06s;
}

.col_topposting.active .mds_topposting .mds span:nth-child(4) {
	animation-delay: 0.09s;
}

.col_topposting.active .mds_topposting .mds span:nth-child(5) {
	animation-delay: 0.12s;
}

.col_topposting.active .mds_topposting .mds span:nth-child(6) {
	animation-delay: 0.15s;
}

.col_topposting.active .mds_topposting .mds span:nth-child(7) {
	animation-delay: 0.18s;
}

.mds_topposting .submds {
	margin: 0;
	padding: 0;
	font-size: 18px;
	font-weight: 700;
	transition: all .8s;
	transition-delay: .5s;
	opacity: 0;
	position: relative;
	top: 15px;
}

.col_topposting.active .mds_topposting .submds {
	opacity: 1;
	top: 0;
}

@media screen and (max-width: 900px) {
	.mds_topposting {
		margin: 0 0 40px;
	}
}

@media screen and (max-width: 700px) {
	.col_topposting {
		padding: 9.73vw 0 0;
	}

	.mds_topposting {
		margin: 0 0 5.4vw;
	}

	.mds_topposting .mds {
		font-size: min(10.54vw, 78px);
		line-height: 1.7;
	}

	.mds_topposting .submds {
		font-size: min(4.59vw, 18px);
		line-height: 1.47;
	}
}

.cont_topposting {
	margin: 0;
	padding: 0 5% 60px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.cont_topposting::before {
	content: "";
	width: 100%;
	height: calc(100% - 185px);
	margin: 0;
	padding: 0;
	border-radius: 50px;
	background: linear-gradient(135deg, #ffefff, #fee0fe);
	position: absolute;
	top: 185px;
	left: 0;
	z-index: -1;
}

.cont_topposting .cont {
	width: 47.7%;
	margin: 0 0 50px;
	padding: 0;
	position: relative;
	z-index: 0;
}

.cont_topposting .cont .inner {
	margin: 0;
	padding: 0;
	transition: all .8s;
	opacity: 0;
	position: relative;
	top: 15px;
	z-index: 0;
}

.cont_topposting .cont.active .inner {
	opacity: 1;
	top: 0;
}

@media screen and (min-width: 901px) {
	.cont_topposting .cont:nth-child(even) .inner {
		transition-delay: .3s;
	}
}

.cont_topposting .cont .img {
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 0;
}

.cont_topposting .cont .img .img_crop {
	margin: 0;
	padding: 0;
	border-radius: 30px;
	overflow: hidden;
}

.cont_topposting .cont .img .num {
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: 78px;
	font-weight: 600;
	line-height: 1;
	position: absolute;
	top: calc(100% - 0.6em);
	right: 0.2em;
}

@media screen and (max-width: 900px) {
	.cont_topposting {
		padding: 50px 5% 50px;
		display: block;
	}

	.cont_topposting::before {
		height: 100%;
		top: 0;
	}

	.cont_topposting .cont {
		width: 100%;
		max-width: 600px;
		margin: 0 auto 50px;
	}
}

@media screen and (max-width: 700px) {
	.cont_topposting {
		padding: 5% 5% 8vw;
	}

	.cont_topposting::before {
		border-radius: 6.75vw;
	}

	.cont_topposting .cont .img .img_crop {
		border-radius: 6.35vw;
	}

	.cont_topposting .cont .img .num {
		font-size: min(13.46vw, 78px);
	}
}

.cont_topposting .cont dl {
	width: 100%;
	margin: 0;
	padding: 0;
}

.cont_topposting .cont dl dt {
	margin: 0;
	padding: 0.6em 0 0.4em;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.48;
}

.cont_topposting .cont dl dt .small {
	font-size: 14px;
	font-weight: 400;
	display: inline-block;
}

.cont_topposting .cont dl dd {
	margin: 0;
	padding: 0.6em 0 0;
	border-top: solid 1px #666;
}

@media screen and (max-width: 900px) {
	.cont_topposting .cont dl dt {
		width: fit-content;
		margin: 0 auto;
	}
}

@media screen and (max-width: 700px) {
	.cont_topposting .cont dl dt {
		font-size: min(5vw, 25px);
	}
}

a.btn_topposting {
	width: 62.74%;
	max-width: 224px;
	height: 3.2em;
	margin: 0 auto;
	padding: 0.65em 15px 0 0;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	background-color: #9000ad;
	border: solid 2px rgba(255, 255, 255, 0.5);
	border-radius: 1.6em;
	display: block;
	position: relative;
	z-index: 0;
}

a.btn_topposting::before {
	content: "";
	width: 8px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 4px);
	right: 19px;
}

@media screen and (min-width: 701px) {
	a.btn_topposting {
		transition: all .4s;
	}

	a.btn_topposting:hover {
		color: #9000ad;
		background-color: #fff;
		border-color: #9000ad;
	}

	a.btn_topposting::before {
		transition: all .4s;
	}

	a.btn_topposting:hover::before {
		border-top-color: #9000ad;
		border-right-color: #9000ad;
		right: 15px;
	}
}

@media screen and (max-width: 700px) {
	a.btn_topposting {
		color: #9000ad;
		background-color: #fff;
		border-color: #9000ad;
	}

	a.btn_topposting::before {
		border-top-color: #9000ad;
		border-right-color: #9000ad;
	}
}

@media screen and (max-width: 450px) {
	a.btn_topposting {
		padding: 0.6em 1.2em 0 0;
		font-size: 3.78vw;
	}

	a.btn_topposting::before {
		width: 1.8vw;
		height: 1.8vw;
		top: calc(50% - 0.9vw);
		right: 4vw;
	}
}

.deco_line_posting1 {
	width: 70vw;
	max-width: 895px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -162px;
	left: 54.5%;
	z-index: -1;
}

@media screen and (max-width: 900px) {
	.deco_line_posting1 {
		width: 140vw;
		max-width: 970px;
		top: -10vw;
		left: max(5%, calc(50% - 190px));
	}
}

.deco_line_posting1 .path_line1 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 20;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.col_topposting.active .deco_line_posting1 .path_line1 {
	animation: deco-topline1 .8s forwards ease-out 0.3s;
}

@media screen and (max-width: 900px) {
	.deco_line_posting1 .path_line1 {
		stroke-width: 23.8169;
	}

	.active .deco_line_posting1 .path_line1 {
		animation: deco-topline1 1.5s forwards linear 0.3s;
	}
}

.deco_line_posting2 {
	width: 250px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 558px;
	right: 90%;
}

.deco_line_posting2 svg {
	width: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.deco_line_posting2 svg.down {
	z-index: -2;
}

.deco_line_posting2 svg.up {
	z-index: -1;
}

.deco_line_posting2 .path_line1_1,
.deco_line_posting2 .path_line1_2 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 20;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.deco_line_posting2.active .path_line1_1 {
	animation: deco-topline1 .8s forwards ease-in;
}

.deco_line_posting2.active .path_line1_2 {
	animation: deco-topline1 .8s forwards ease-out 0.3s;
}

@media screen and (max-width: 1080px) {
	.deco_line_posting2 {
		top: 450px;
	}
}

@media screen and (max-width: 900px) {
	.deco_line_posting2 {
		display: none;
	}
}

.deco_line_posting3 {
	width: 925px;
	margin: 0;
	padding: 0;
	position: absolute;
	left: 70%;
	bottom: 445px;
}

.deco_line_posting3 svg {
	width: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.deco_line_posting3 svg.down {
	z-index: -2;
}

.deco_line_posting3 svg.up {
	z-index: -1;
}

.deco_line_posting3 .path_line1_1,
.deco_line_posting3 .path_line1_2 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 20;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.deco_line_posting3.active .path_line1_1 {
	animation: deco-topline1 .9s forwards ease-in;
}

.deco_line_posting3.active .path_line1_2 {
	animation: deco-topline1 .9s forwards ease-out 0.5s;
}

@media screen and (max-width: 1080px) {
	.deco_line_posting3 {
		left: 65%;
		bottom: 470px;
	}
}

@media screen and (max-width: 900px) {
	.deco_line_posting3 {
		display: none;
	}
}

.deco_line_posting_sp1 {
	width: 140vw;
	margin: 0;
	padding: 0;
	transform: translateX(-50%);
	position: absolute;
	top: -25.67vw;
	left: 50%;
	z-index: -1;
}

.deco_line_posting_sp1 .path_line1 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 23.8169;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.cont.active .deco_line_posting_sp1 .path_line1 {
	animation: deco-topline1 .7s forwards ease-in;
}

@media screen and (min-width: 901px) {
	.deco_line_posting_sp1 {
		display: none;
	}
}

.deco_line_posting_sp2 {
	width: 127vw;
	margin: 0;
	padding: 0;
	transform: translateX(-50%);
	position: absolute;
	top: -8vw;
	left: calc(50% + 6vw);
	z-index: -1;
}

.deco_line_posting_sp2 .path_line1 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 23.8169;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.cont.active .deco_line_posting_sp2 .path_line1 {
	animation: deco-topline1 .7s forwards ease-in;
}

@media screen and (max-width: 500px) {
	.deco_line_posting_sp2 {
		top: -11.08vw;
	}
}

@media screen and (min-width: 901px) {
	.deco_line_posting_sp2 {
		display: none;
	}
}

.deco_line_posting_sp3,
.deco_line_posting_sp3_2 {
	width: 125.67vw;
	margin: 0;
	padding: 0;
	transform: translateX(-50%);
	position: absolute;
	top: -12.16vw;
	left: calc(50% + 2vw);
	z-index: -1;
}

.deco_line_posting_sp3_2 {
	z-index: -2;
}

.deco_line_posting_sp3 svg,
.deco_line_posting_sp3_2 svg {
	width: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.deco_line_posting_sp3 svg.up {
	z-index: -1;
}

.deco_line_posting_sp3 .path_line1_1,
.deco_line_posting_sp3_2 .path_line1_2 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 23.8169;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.deco_line_posting_sp3.active .path_line1_1 {
	animation: deco-topline1 .7s forwards ease-in;
}

.deco_line_posting_sp3_2.active .path_line1_2 {
	animation: deco-topline1 .7s forwards ease-in-out .6s;
}

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

	.deco_line_posting_sp3,
	.deco_line_posting_sp3_2 {
		display: none;
	}
}

.deco_line_posting_sp4 {
	width: 62.16vw;
	margin: 0;
	padding: 0;
	position: absolute;
	left: 69%;
	bottom: 43.24vw;
}

.deco_line_posting_sp4 svg {
	width: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.deco_line_posting_sp4 svg.down {
	z-index: -2;
}

.deco_line_posting_sp4 .path_line1_1,
.deco_line_posting_sp4 .path_line1_2 {
	fill: none;
	stroke: #FB005D;
	stroke-width: 23.8169;
	stroke-linecap: round;
	stroke-miterlimit: 10;
	stroke-dasharray: 1500;
	stroke-dashoffset: 1500;
}

.deco_line_posting_sp4.active .path_line1_1 {
	animation: deco-topline1 .7s forwards ease-in;
}

.deco_line_posting_sp4.active .path_line1_2 {
	animation: deco-topline1 1s forwards linear .3s;
}

@media screen and (min-width: 901px) {
	.deco_line_posting_sp4 {
		display: none;
	}
}

.bg_toparea {
	margin: 0 0 70px;
	padding: 0 0 50px;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.bg_toparea::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(251, 247, 235, 1));
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

@media screen and (max-width: 850px) {
	.bg_toparea {
		margin: 0;
	}
}

.col_toparea {
	width: 90%;
	max-width: 1159px;
	margin: 0 auto;
	padding: 0;
}

.col_toparea .lead {
	width: 380px;
	margin: 0 0 0.8em;
	padding: 143px 0 0;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.75;
	transition: all .4s;
	opacity: 0;
	position: relative;
	top: 15px;
	z-index: 1;
	float: left;
}

.col_toparea .lead.active {
	opacity: 1;
	top: 0;
}

.col_toparea .img_map {
	width: calc(100% - 380px);
	height: 525px;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	position: relative;
	z-index: 0;
	float: right;
}

.col_toparea .img_map img.map {
	width: 880px;
	margin: 0;
	padding: 0;
	transform: translateX(-50%);
	position: absolute;
	left: 50%;
	bottom: 25px;
}

.col_toparea .img_map img.map.sp {
	display: none;
}

.col_toparea .img_map dl.txt_area {
	margin: 0;
	padding: 0 8px 4px;
	position: absolute;
}

.col_toparea .img_map dl.txt_area::before {
	content: "";
	width: 1px;
	height: 0;
	margin: 0;
	padding: 0;
	transform-origin: left bottom;
	transform: rotate(45deg);
	transition: height .4s;
	position: absolute;
}

.col_toparea .img_map dl.txt_area::after {
	content: "";
	width: 0;
	height: 1px;
	margin: 0;
	padding: 0;
	transition: width .4s;
	transition-delay: .4s;
	position: absolute;
	top: 100%;
	left: 0;
}

.col_toparea .img_map dl.txt_area.himeji {
	top: 14%;
	left: 47%;
}

.col_toparea .img_map dl.txt_area.himeji::before {
	bottom: -90px;
	left: -90px;
	background-color: #8675ff;
}

.col_toparea .img_map dl.txt_area.active.himeji::before {
	height: calc(90px * sqrt(2));
}

.col_toparea .img_map dl.txt_area.himeji::after {
	background-color: #8675ff;
}

.col_toparea .img_map dl.txt_area.active.himeji::after {
	width: 100%;
}

.col_toparea .img_map dl.txt_area.kakogawa {
	top: 36%;
	left: 57%;
}

.col_toparea .img_map dl.txt_area.kakogawa::before {
	left: -50px;
	bottom: -50px;
	background-color: #66c7fc;
}

.col_toparea .img_map dl.txt_area.active.kakogawa::before {
	height: calc(50px * sqrt(2));
}

.col_toparea .img_map dl.txt_area.kakogawa::after {
	background-color: #66c7fc;
}

.col_toparea .img_map dl.txt_area.active.kakogawa::after {
	width: 100%;
}

.col_toparea .img_map dl.txt_area.akashi {
	top: 61%;
	left: 67%;
}

.col_toparea .img_map dl.txt_area.akashi::before {
	left: -67px;
	bottom: -67px;
	background-color: #7ddc21;
}

.col_toparea .img_map dl.txt_area.active.akashi::before {
	height: calc(67px * sqrt(2));
}

.col_toparea .img_map dl.txt_area.akashi::after {
	background-color: #7ddc21;
}

.col_toparea .img_map dl.txt_area.active.akashi::after {
	width: 100%;
}

.col_toparea .img_map dl.txt_area dt {
	margin: 0;
	padding: 0;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.1;
	transition: all .8s;
	transition-delay: 0.8s;
	opacity: 0;
	position: relative;
	top: 10px;
}

.col_toparea .img_map dl.txt_area.active dt {
	opacity: 1;
	top: 0;
}

.col_toparea .img_map dl.txt_area dd {
	margin: 0;
	padding: 0;
	font-size: min(47px, 3.2vw);
	font-weight: 700;
	line-height: 1;
	overflow: hidden;
}

.col_toparea .img_map dl.txt_area.himeji dd {
	color: #8675ff;
}

.col_toparea .img_map dl.txt_area.kakogawa dd {
	color: #66c7fc;
}

.col_toparea .img_map dl.txt_area.akashi dd {
	color: #7ddc21;
}

.col_toparea .img_map dl.txt_area dd span {
	margin: 0;
	padding: 0;
	display: inline-block;
	transform: translateY(100%);
}

.col_toparea .img_map dl.txt_area.active dd span {
	animation: txtanim1 0.4s forwards linear;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(1) {
	animation-delay: 0.8s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(2) {
	animation-delay: 0.83s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(3) {
	animation-delay: 0.86s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(4) {
	animation-delay: 0.89s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(5) {
	animation-delay: 0.92s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(6) {
	animation-delay: 0.95s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(7) {
	animation-delay: 0.98s;
}

.col_toparea .img_map dl.txt_area.active dd span:nth-child(8) {
	animation-delay: 1.01s;
}

.col_toparea .img_map dl.txt_area dd span.small {
	margin: 0 0 0 0.2em;
	font-size: min(25px, 1.8vw);
}

.col_toparea .img_map dl.txt_area dd span.small:last-of-type {
	margin: 0 0 0 0.1em;
}

.col_toparea .img_map .txt_note {
	margin: 0;
	padding: 0;
	font-size: 12px;
}

.col_toparea p.txt_toparea {
	width: 352px;
	margin: 0;
	padding: 0;
	line-height: 2.1;
	transition: all .4s;
	opacity: 0;
	position: relative;
	top: 15px;
	z-index: 0;
	float: left;
}

.col_toparea p.txt_toparea.active {
	opacity: 1;
	top: 0;
}

@media screen and (max-width: 1080px) {
	.col_toparea .img_map img.map {
		left: 41%;
	}

	.col_toparea .img_map dl.txt_area.himeji {
		left: 37%;
	}

	.col_toparea .img_map dl.txt_area.kakogawa {
		left: 48%;
	}

	.col_toparea .img_map dl.txt_area.akashi {
		left: 62%;
	}

	.col_toparea .img_map dl.txt_area.akashi::before {
		left: -57px;
		bottom: -57px;
	}

	.col_toparea .img_map dl.txt_area.active.akashi::before {
		height: calc(57px * sqrt(2));
	}
}

@media screen and (max-width: 980px) {
	.col_toparea .lead {
		width: 100%;
		margin: 0;
		padding: 80px 0 0;
		float: none;
	}

	.col_toparea .img_map {
		width: 100%;
		height: 450px;
		margin: 0 0 30px;
		justify-content: flex-start;
		float: none;
	}

	.col_toparea .img_map img.map {
		left: 50%;
		bottom: 0;
	}

	.col_toparea .img_map dl.txt_area dd {
		font-size: min(47px, 5.5vw);
	}

	.col_toparea .img_map dl.txt_area dd span.small {
		font-size: min(25px, 3vw);
	}

	.col_toparea .img_map dl.txt_area.himeji {
		top: 0;
		left: 45%;
	}

	.col_toparea .img_map dl.txt_area.kakogawa {
		top: 30%;
		left: 54%;
	}

	.col_toparea .img_map dl.txt_area.akashi {
		top: 58%;
		left: 64%;
	}

	.col_toparea .img_map dl.txt_area.akashi::before {
		left: -6.8vw;
		bottom: -6.8vw;
	}

	.col_toparea .img_map dl.txt_area.active.akashi::before {
		height: calc(6.8vw * sqrt(2));
	}

	.col_toparea p.txt_toparea {
		width: 100%;
		margin: 0 0 1.5em;
		float: none;
	}

	.col_toparea p.txt_toparea .pc {
		display: none;
	}

}

@media screen and (max-width: 850px) {
	.col_toparea .img_map img.map.pc {
		display: none;
	}

	.col_toparea .img_map img.map.sp {
		display: inline-block;
	}
}

@media screen and (min-width: 581px) {
	.col_toparea .lead .sp {
		display: none;
	}
}

@media screen and (max-width: 580px) {
	.col_toparea {
		width: 100%;
	}

	.col_toparea .lead {
		width: 84%;
		margin: 0 auto;
		font-size: 7.83vw;
		line-height: 1.29;
	}

	.col_toparea .img_map {
		height: calc(81vw + 14px);
	}

	.col_toparea .img_map img.map {
		width: 193vw;
		left: 56.4%;
		bottom: 14px;
	}

	.col_toparea .img_map dl.txt_area {
		padding: 0 0.25em 0.1em 0.1em;
	}

	.col_toparea .img_map dl.txt_area.himeji {
		top: 9%;
		left: 52%;
	}

	.col_toparea .img_map dl.txt_area.himeji::before {
		left: -8.58vw;
		bottom: -8.58vw;
	}

	.col_toparea .img_map dl.txt_area.active.himeji::before {
		height: calc(8.58vw * sqrt(2));
	}

	.col_toparea .img_map dl.txt_area.kakogawa {
		top: 31%;
		left: 61%;
	}

	.col_toparea .img_map dl.txt_area.kakogawa::before {
		left: -6.11vw;
		bottom: -6.11vw;
	}

	.col_toparea .img_map dl.txt_area.active.kakogawa::before {
		height: calc(6.11vw * sqrt(2));
	}

	.col_toparea .img_map dl.txt_area.akashi {
		top: 56.5%;
		left: 69.5%;
	}

	.col_toparea .img_map dl.txt_area.akashi::before {
		left: -7.7vw;
		bottom: -7.7vw;
	}

	.col_toparea .img_map dl.txt_area.active.akashi::before {
		height: calc(7.7vw * sqrt(2));
	}

	.col_toparea .img_map dl.txt_area dt {
		font-size: 3.66vw;
	}

	.col_toparea .img_map dl.txt_area dd {
		font-size: 5.98vw;
	}

	.col_toparea .img_map dl.txt_area dd span.small {
		font-size: 2.75vw;
	}

	.col_toparea .img_map .txt_note {
		margin: 0 0 0 5vw;
	}

	.col_toparea p.txt_toparea {
		width: 90%;
		margin: 0 auto 1em;
	}
}

a.btn_toparea {
	width: 52vw;
	max-width: 224px;
	height: 3.2em;
	margin: 0 auto -3.2em;
	padding: 0.65em 15px 0 0;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	background-color: #fb005d;
	border: solid 2px rgba(255, 255, 255, 0.5);
	border-radius: 1.6em;
	clear: both;
	display: block;
	position: relative;
	top: -3.2em;
	z-index: 0;
}

a.btn_toparea::before {
	content: "";
	width: 8px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 4px);
	right: 19px;
}

@media screen and (max-width: 950px) {
	a.btn_toparea {
		margin: 0 auto;
		position: relative;
		top: 0;
	}
}

@media screen and (min-width: 701px) {
	a.btn_toparea {
		transition: all .4s;
	}

	a.btn_toparea:hover {
		color: #fb005d;
		background-color: #fff;
		border-color: #fb005d;
	}

	a.btn_toparea::before {
		transition: all .4s;
	}

	a.btn_toparea:hover::before {
		border-top-color: #fb005d;
		border-right-color: #fb005d;
		right: 15px;
	}
}

@media screen and (max-width: 700px) {
	a.btn_toparea {
		color: #fb005d;
		background-color: #fff;
		border-color: #fb005d;
	}

	a.btn_toparea::before {
		border-top-color: #fb005d;
		border-right-color: #fb005d;
	}
}

@media screen and (max-width: 450px) {
	a.btn_toparea {
		padding: 0.6em 1.2em 0 0;
		font-size: 3.78vw;
	}

	a.btn_toparea::before {
		width: 1.8vw;
		height: 1.8vw;
		top: calc(50% - 0.9vw);
		right: 4vw;
	}
}

.bg_topnews {
	margin: 0;
	padding: 65px 0;
	background-color: #fff2f7;
}

.col_topnews {
	width: 90%;
	max-width: 902px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	align-items: flex-start;
}

.col_topnews .mds {
	width: 18.3%;
	height: 1.1em;
	margin: 0;
	padding: 0;
	font-size: 44px;
	font-weight: 600;
	line-height: 1.1;
	overflow: hidden;
}

.col_topnews .mds span {
	margin: 0;
	padding: 0;
	display: inline-block;
	opacity: 0;
	transform: translateY(100%);
}

.col_topnews .mds span.pink {
	color: #fb005d;
}

.col_topnews .mds.active span {
	animation: txtanim1 0.4s forwards linear;
}

.col_topnews .mds.active span:nth-child(2) {
	animation-delay: 0.03s;
}

.col_topnews .mds.active span:nth-child(3) {
	animation-delay: 0.06s;
}

.col_topnews .mds.active span:nth-child(4) {
	animation-delay: 0.09s;
}

.list_topnews {
	width: 81.7%;
	margin: 0;
	padding: 5px 0;
	border-left: solid 1px #d1d3d4;
	max-height: 150px;
    overflow-y: scroll;
}

.list_topnews dl {
	width: 100%;
	margin: 0;
	padding: 0 0 25px;
	display: flex;
	align-items: flex-start;
	opacity: 0;
	transition: all .4s;
	position: relative;
	top: 15px;
}

.list_topnews.active dl {
	opacity: 1;
	top: 0;
}

.list_topnews dl:nth-child(2) {
	transition-delay: .1s;
}

.list_topnews dl:last-child {
	margin-bottom: 0;
	transition-delay: .2s;
}

.list_topnews dl dt {
	width: 37%;
	margin: 0;
	padding: 0 5% 0 6%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.list_topnews dl dt .label {
	width: 6.4em;
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	background-color: #f49abd;
	border-radius: 4px;
}

.list_topnews dl dd {
	width: 63%;
	margin: 0;
	padding: 0.1em 0 0;
	line-height: 1.4;
}

.list_topnews dl dd .ttl {
	font-weight: bold;
	margin-bottom: 5px;
}

@media screen and (max-width: 1024px) {
	.col_topnews .mds {
		width: 16%;
	}

	.list_topnews {
		width: 84%;
	}

	.list_topnews dl dt {
		width: 33%;
		padding: 0 3% 0 5%;
	}

	.list_topnews dl dd {
		width: 67%;
	}
}

@media screen and (max-width: 850px) {
	.col_topnews {
		display: block;
	}

	.col_topnews .mds {
		width: 100%;
		margin: 0 0 1em;
		text-align: center;
	}

	.list_topnews {
		width: 100%;
		padding: 0;
		border-left: none;
	}

	.list_topnews dl {
		padding: 15px 5px;
		border-bottom: solid 1px #d1d3d4;
	}

	.list_topnews dl dt {
		width: 170px;
		margin: 0 30px 0 0;
		padding: 0;
	}

	.list_topnews dl dd {
		width: calc(100% - 200px);
	}
}

@media screen and (max-width: 700px) {
	.bg_topnews {
		padding: min(60px, 12.8vw) 0;
	}

	.col_topnews .mds {
		margin: 0 0 0.1em;
		font-size: min(44px, 10.5vw);
	}

	.list_topnews dl {
		padding: 18px 5px;
		display: block;
	}

	.list_topnews dl dt {
		margin: 0 0 10px;
	}

	.list_topnews dl dd {
		width: 100%;
	}
}

.bg_toprecruit {
	margin: 0;
	padding: 28px 0;
	background-color: rgba(251, 0, 93, 0.19);
}

.col_toprecruit {
	width: 94%;
	max-width: 1140px;
	margin: 0 auto;
	padding: 46px 0 34px;
	background-color: #fff;
	background-image: url(../img/top/img_toprecruit.jpg);
	background-repeat: no-repeat;
	background-size: auto 104%;
	background-position: right center;
	border: solid 6px #fb005d;
	border-radius: 50px;
	opacity: 0;
	transition: all .4s;
	position: relative;
	top: 15px;
	z-index: 0;
}

.col_toprecruit.active {
	opacity: 1;
	top: 0;
}

.col_toprecruit .mds {
	height: 1.2em;
	margin: 0;
	padding: 0;
	font-size: 34px;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
	overflow: hidden;
}

.col_toprecruit .mds span {
	margin: 0;
	padding: 0;
	display: inline-block;
	opacity: 0;
	transform: translateY(100%);
}

.col_toprecruit .mds span.blank_r {
	margin-right: 0.2em;
}

.col_toprecruit .mds span.pink {
	color: #fb005d;
}

.col_toprecruit.active .mds span {
	animation: txtanim1 0.4s forwards linear;
}

.col_toprecruit.active .mds span:nth-child(1) {
	animation-delay: 0.1s;
}

.col_toprecruit.active .mds span:nth-child(2) {
	animation-delay: 0.13s;
}

.col_toprecruit.active .mds span:nth-child(3) {
	animation-delay: 0.16s;
}

.col_toprecruit.active .mds span:nth-child(4) {
	animation-delay: 0.19s;
}

.col_toprecruit.active .mds span:nth-child(5) {
	animation-delay: 0.22s;
}

.col_toprecruit.active .mds span:nth-child(6) {
	animation-delay: 0.25s;
}

.col_toprecruit.active .mds span:nth-child(7) {
	animation-delay: 0.28s;
}

.col_toprecruit.active .mds span:nth-child(8) {
	animation-delay: 0.31s;
}

.col_toprecruit.active .mds span:nth-child(9) {
	animation-delay: 0.34s;
}

.col_toprecruit.active .mds span:nth-child(10) {
	animation-delay: 0.37s;
}

.col_toprecruit.active .mds span:nth-child(11) {
	animation-delay: 0.40s;
}

.col_toprecruit.active .mds span:nth-child(12) {
	animation-delay: 0.43s;
}

.col_toprecruit.active .mds span:nth-child(13) {
	animation-delay: 0.46s;
}

.col_toprecruit.active .mds span:nth-child(14) {
	animation-delay: 0.49s;
}

.col_toprecruit.active .mds span:nth-child(15) {
	animation-delay: 0.52s;
}

.col_toprecruit.active .mds span:nth-child(16) {
	animation-delay: 0.55s;
}

.col_toprecruit.active .mds span:nth-child(17) {
	animation-delay: 0.58s;
}

.col_toprecruit .lead {
	margin: 0 0 0.5em;
	padding: 0;
	color: #fb005d;
	font-size: 40px;
	font-weight: 700;
	text-align: center;
	line-height: 1.3;
	opacity: 0;
	transition: all .6s;
	transition-delay: .4s;
	position: relative;
	top: 15px;
	z-index: 0;
}

.col_toprecruit.active .lead {
	opacity: 1;
	top: 0;
}

@media screen and (max-width: 850px) {
	.col_toprecruit {
		width: 92%;
		max-width: 600px;
		background-image: none;
	}
}

.col_toprecruit .cont_img {
	width: 28.5%;
	height: 100%;
	margin: 0;
	padding: 3% 0 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: absolute;
	top: 0;
	left: 1%;
}

.col_toprecruit .cont_img .catch {
	width: 88.86%;
	margin: 0 0 0 7%;
	padding: 0;
}

.col_toprecruit .cont_img .img {
	width: 45%;
	max-width: 133px;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: -1;
}

.col_toprecruit .cont_img .img img {
	width: 100%;
	margin: 0;
	padding: 0;
	filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.1)) drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.1));
	transform-origin: left top;
	position: absolute;
}

.col_toprecruit .cont_img .img img.kakogawa {
	transform: rotate(-9.6deg);
	left: 95%;
	bottom: 22px;
}

.col_toprecruit .cont_img .img img.himeji {
	transform: rotate(-20.8deg);
	left: 29%;
	bottom: 5px;
}

@media screen and (max-width: 1120px) {
	.col_toprecruit .cont_img .img img.kakogawa {
		left: 80%;
	}

	.col_toprecruit .cont_img .img img.himeji {
		left: 13%;
	}
}

@media screen and (min-width: 851px) {
	.col_toprecruit .cont_img .img .sp {
		display: none;
	}
}

@media screen and (max-width: 850px) {
	.col_toprecruit .cont_img {
		width: 100%;
		margin: 0 0 max(-30px, -7.6vw);
		padding: 0;
		position: relative;
		top: max(-30px, -7.6vw);
		left: 0;
	}

	.col_toprecruit .cont_img .catch {
		width: 56.76%;
		margin: 0;
		position: absolute;
		top: 40%;
		left: 39%;
	}

	.col_toprecruit .cont_img .img {
		width: 100%;
		max-width: unset;
	}

	.col_toprecruit .cont_img .img img {
		position: static;
		filter: none;
	}

	.col_toprecruit .cont_img .img .pc {
		display: none;
	}
}

@media screen and (max-width: 700px) {
	.bg_toprecruit {
		padding: 4.2vw 0;
		background-color: #fb005d;
	}

	.col_toprecruit {
		padding: 4.2vw 0 8vw;
		border-width: 1.35vw;
		border-radius: 6.89vw;
	}

	.col_toprecruit .mds {
		margin: 0 0 0.2em;
		font-size: 6.11vw;
	}

	.col_toprecruit .lead {
		font-size: 8.05vw;
		margin: 0 0 0.35em;
	}
}

ul.list_toprecruit {
	width: 60%;
	max-width: 422px;
	margin: 0 auto 30px;
	padding: 0;
	display: flex;
	justify-content: space-between;
}

ul.list_toprecruit li {
	width: 30.16%;
	margin: 0;
	padding: 0;
	opacity: 0;
	transition: all .4s;
	position: relative;
	top: 15px;
	z-index: 0;
}

ul.list_toprecruit.active li {
	opacity: 1;
	top: 0;
}

ul.list_toprecruit.active li:nth-child(2) {
	transition-delay: .1s;
}

ul.list_toprecruit.active li:nth-child(3) {
	transition-delay: .2s;
}

ul.list_toprecruit.active li:nth-child(4) {
	transition-delay: .3s;
}

@media screen and (max-width: 850px) {
	ul.list_toprecruit {
		width: 93%;
		margin: 0 auto;
	}

	ul.list_toprecruit li {
		width: 32.4%;
	}
}

a.btn_toprecruit {
	width: 52vw;
	max-width: 270px;
	height: 3.2em;
	margin: 0 auto;
	padding: 0.65em 15px 0 0;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	background-color: #fb005d;
	border: solid 2px rgba(255, 255, 255, 0.5);
	border-radius: 1.6em;
	display: block;
	position: relative;
	z-index: 0;
}

a.btn_toprecruit::before {
	content: "";
	width: 8px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 4px);
	right: 19px;
}

@media screen and (min-width: 701px) {
	a.btn_toprecruit {
		transition: all .4s;
	}

	a.btn_toprecruit:hover {
		color: #fb005d;
		background-color: #fff;
		border-color: #fb005d;
	}

	a.btn_toprecruit::before {
		transition: all .4s;
	}

	a.btn_toprecruit:hover::before {
		border-top-color: #fb005d;
		border-right-color: #fb005d;
		right: 15px;
	}
}

@media screen and (max-width: 700px) {
	a.btn_toprecruit {
		color: #fb005d;
		background-color: #fff;
		border-color: #fb005d;
	}

	a.btn_toprecruit::before {
		border-top-color: #fb005d;
		border-right-color: #fb005d;
	}
}

@media screen and (max-width: 450px) {
	a.btn_toprecruit {
		padding: 0.6em 1.2em 0 0;
		font-size: 3.78vw;
	}

	a.btn_toprecruit::before {
		width: 1.8vw;
		height: 1.8vw;
		top: calc(50% - 0.9vw);
		right: 4vw;
	}
}