@charset "UTF-8";

/*========================================================================

  base

========================================================================*/

body.open {
	overflow: hidden;
}
@media print, screen and (min-width: 768px) {
	body.open {
		margin-right: 17px;
	}
}
::-webkit-full-page-media, :future, :root body.open {
    margin-right: 0;
}
.pbPage {
	padding-top: 0;
}

/*========================================================================

  header

========================================================================*/

.recruit-header {
	position: absolute;
	width: 100%;
	padding: 20px;
	z-index: 10000;
}
.recruit-header .inner {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
.recruit-header .nav {
	position: fixed;
	top: 0;
	right: 0;
	display: flex;
	z-index: 3;
}
body.open .recruit-header .nav-entry {
	display: none;
}
.recruit-header .nav-entry .title {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 1;
	width: 180px;
	height: 100%;
	background: linear-gradient(to bottom, #FFCC98,#FC3D3D);
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	border-radius: 0 0 0 10px;
	cursor: pointer;
}
.recruit-header .nav-entry .title:after {
	content: '';
	display: inline-block;
	margin-left: 10px;
	border-style: solid;
	border-width: 11px 8px 0;
	border-color: #fff transparent transparent;
	transition: all .3s;
}
.recruit-header .nav-entry .menu {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 95px 25px 20px 20px;
	background: #fff;
	color: #02007C;
	transition: all .5s;
	transform: rotateX(90deg);
	border-radius: 0 0 0 10px;
	transform-origin: left top;
}
@media (min-width: 768px) {
	.recruit-header .nav-entry:hover .title:after {
		transform:rotateX(180deg);
	}
	.recruit-header .nav-entry:hover .menu {
		visibility: visible;
		opacity: 1;
		transform: rotateX(0deg);
	}
}
.recruit-header .nav-entry .menu ul:not(:first-child) {
	position: relative;
	margin-top: 15px;
	padding-top: 15px;
}
.recruit-header .nav-entry .menu ul:not(:first-child):before {
	content: '';
	position: absolute;
	top: 0;
	left: -20px;
	width: calc(100% + 45px);
	height: 1px;
	background: rgba(2,0,124,.3);
}
.recruit-header .nav-entry .menu li:not(:first-child) {
	margin-top: 7px;
}
.recruit-header .nav-entry .menu a {
	position: relative;
	display: block;
	padding-right: 15px;
	text-decoration: none;
	font-weight: 500;
}
.recruit-header .nav-entry .menu a:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 0;
	height: 1px;
	background: #02007C;
	transition: .3s all;
}
@media (min-width: 768px) {
	.recruit-header .nav-entry .menu a:hover:before {
		width: 100%;
	}
}
.recruit-header .nav-entry .menu a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #02007C;
	border-right: 2px solid #02007C;
	transform: rotate(-45deg);
	transition: all .3s;
}
.recruit-header .nav-burger {
	position: relative;
	width: 76px;
	height: 76px;
	background: #02007C;
}
.recruit-header .nav-burger span {
	position: absolute;
	right: 26px;
	width: 24px;
	height: 2px;
	background: #fff;
}
.recruit-header .nav-burger span:nth-of-type(1) {
	top: 27px;
}
.recruit-header .nav-burger span:nth-of-type(2) {
	top: 37px;
}
.recruit-header .nav-burger span:nth-of-type(3) {
	bottom: 27px;
	width: 16px;
}
body.open .recruit-header .nav-burger span:nth-of-type(1) {
	right: 21px;
	width: 33px;
	transform: translateY(10px) rotate(40deg);
}
body.open .recruit-header .nav-burger span:nth-of-type(2) {
	opacity: 0;
}
body.open .recruit-header .nav-burger span:nth-of-type(3) {
	right: 21px;
	width: 33px;
	transform: translateY(-10px) rotate(-40deg);
}
.recruit-header .megamenu {
	opacity: 0;
	visibility: hidden;
	overflow-y: scroll;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: flex;
	width: 100vw;
	height: 100vh;
	padding: 50px 30px;
	background: #fff;
}
body.open .recruit-header .megamenu {
	opacity: 1;
	visibility: visible;
	transition: opacity .5s;
}
.recruit-header .megamenu a {
	text-decoration: none;
}
.recruit-header .megamenu-inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 1000px;
	margin: auto;
}
.recruit-header .megamenu .menu {
	display: flex;
	gap: 40px 112px;
}
.recruit-header .megamenu .menu .list01 {
	font-weight: 500;
}
.recruit-header .megamenu .menu .list01 li:not(:first-child) {
	margin-top: 30px;
}
.recruit-header .megamenu .menu .list01 li {
	font-size: 20px;
}
.recruit-header .megamenu .menu .list01 a {
	position: relative;
	display: block;
}
.recruit-header .megamenu .menu .list01 a:after {
	content: '';
	position: absolute;
	bottom: -15px;
	width: 0;
	height: 2px;
	background: #02007C;
	transition: all .3s;
}
@media (min-width: 768px) {
	.recruit-header .megamenu .menu .list01 a:hover:after {
		width: 100%;
	}
}
.recruit-header .megamenu .menu .list01 span {
	display: block;
	color: #02007C;
	font-size: 11px;
	line-height: 1.1;
}
.recruit-header .megamenu .menu .list02 {
	font-size: 14px;
}
.recruit-header .megamenu .menu .list02 li:not(:first-child) {
	margin-top: 25px;
}
.recruit-header .megamenu .menu .list02 a {
	position: relative;
}
.recruit-header .megamenu .menu .list02 a:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 0;
	height: 1px;
	background: #02007C;
	transition: .3s all;
}
@media (min-width: 768px) {
	.recruit-header .megamenu .menu .list02 a:hover:before {
		width: 100%;
	}
}
.recruit-header .megamenu .entry {
	width: 100%;
	margin-top: 65px;
}
.recruit-header .megamenu .entry .title {
	position: relative;
}
.recruit-header .megamenu .entry .title:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 100%;
	height: 1px;
	background: #CCCCCC;
}
.recruit-header .megamenu .entry .title p {
	position: relative;
	display: inline-block;
	padding-right: 20px;
	background: #fff;
	color: #02007C;
	font-size: 34px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-weight: 600;
}
.recruit-header .megamenu .entry .title span {
	margin-left: 15px;
	color: #000;
	font-size: 14px;
	font-weight: 500;
	vertical-align: baseline;
}
.recruit-header .megamenu .entry .list {
	margin-top: 10px;
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
}
.recruit-header .megamenu .entry .list ul {
	display: flex;
	gap: 20px;
}
.recruit-header .megamenu .entry .list li {
	position: relative;
	width: calc(25% - 20px + (20px / 4));
}
.recruit-header .megamenu .entry .list li:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 9px;
	height: 9px;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(-45deg);
	transition: all .3s;
}
.recruit-header .megamenu .entry .list li a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	min-height: 74px;
	padding: 16px 20px;
}
.recruit-header .megamenu .entry .list li a:before,
.recruit-header .megamenu .entry .list li a:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all .3s;
}
.recruit-header .megamenu .entry .list a:before {
	background: linear-gradient(to bottom, #FFCC98,#FC3D3D);
	z-index: -1;
}
.recruit-header .megamenu .entry .list a:after {
	background: #FC3D3D;
	z-index: -2;
}
.recruit-header .megamenu .entry .list li.blue a:before {
	background: #02007C;
}
.recruit-header .megamenu .entry .list li.blue a:after {
	background: linear-gradient(to bottom, #1C84BE,#02007C);
}
@media (min-width: 768px) {
	.recruit-header .megamenu .entry .list a:hover:before {
		opacity: 0;
	}
}
.h_navigation.recruit {
	position: absolute;
	top: 95px;
	width: 100%;
	padding: 0 30px;
	z-index: 4;
	color: #fff;
}
.h_navigation.recruit a:after {
	border-color: #fff;
}

@media screen and (max-width: 767px) {
	.recruit-header {
		padding: 20px 10px;
	}
	.recruit-header .logo {
		width: 154px;
	}
	.recruit-header .nav-entry .title {
		width: 120px;
		font-size: 14px;
		border-radius: 0 0 0 5px;
	}
	.recruit-header .nav-entry .title:after {
		margin-left: 5px;
		border-width: 9px 6px 0;
	}
	.recruit-header .nav-entry .menu {
		padding: 76px 15px 20px 15px;
		font-size: 16px;
		line-height: 1.4;
	}
	.recruit-header .nav-entry .title.active + .menu {
		visibility: visible;
		opacity: 1;
		transform: rotateX(0deg);
	}
	.recruit-header .nav-entry .menu ul:not(:first-child) {
		position: relative;
		margin-top: 15px;
		padding-top: 15px;
	}
	.recruit-header .nav-entry .menu ul:not(:first-child):before {
		width: calc(100% + 30px);
		left: -15px;
	}
	.recruit-header .nav-entry .menu li:not(:first-child) {
		margin-top: 10px;
	}
	.recruit-header .nav-entry .menu a {
		padding-right: 10px;
	}
	.recruit-header .nav-entry .menu a:after {
		width: 8px;
		height: 8px;
	}
	.recruit-header .nav-burger {
		width: 56px;
		height: 56px;
	}
	.recruit-header .nav-burger span {
		right: 16px;
	}
	.recruit-header .nav-burger span:nth-of-type(1) {
		top: 18px;
	}
	.recruit-header .nav-burger span:nth-of-type(2) {
		top: 27px;
	}
	.recruit-header .nav-burger span:nth-of-type(3) {
		bottom: 18px;
	}
	body.open .recruit-header .nav-burger span:nth-of-type(1) {
		right: 13px;
		width: 30px;
		transform: translateY(9px) rotate(40deg);
	}
	body.open .recruit-header .nav-burger span:nth-of-type(3) {
		right: 13px;
		width: 30px;
		transform: translateY(-9px) rotate(-40deg);
	}
	.recruit-header .megamenu {
		padding: 40px 20px 100px;
	}
	.recruit-header .megamenu-inner {
		flex-flow: column;
	}
	.recruit-header .megamenu .menu {
		margin-top: 30px;
		flex-flow: column;
	}
	.recruit-header .megamenu .menu .list01 li:not(:first-child) {
		margin-top: 20px;
	}
	.recruit-header .megamenu .menu .list01 li {
		font-size: 18px;
	}
	.recruit-header .megamenu .menu .list01 span {
		font-size: 10px;
	}
	.recruit-header .megamenu .menu .list02 {
		font-size: 14px;
	}
	.recruit-header .megamenu .menu .list02 ul {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 30px;
	}
	.recruit-header .megamenu .menu .list02 li:not(:first-child) {
		margin-top: 0;
	}
	.recruit-header .megamenu .entry {
		margin-top: 25px;
	}
	.recruit-header .megamenu .entry .title p {
		padding-right: 10px;
	}
	.recruit-header .megamenu .entry .title span {
		margin-left: 10px;
	}
	.recruit-header .megamenu .entry .list {
		margin-top: 5px;
		color: #fff;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.4;
	}
	.recruit-header .megamenu .entry .list ul {
		flex-wrap: wrap;
		gap: 10px;
	}
	.recruit-header .megamenu .entry .list li {
		width: calc(50% - 10px + (10px / 2));
	}
	.recruit-header .megamenu .entry .list li:after {
		border-width: 2px;
	}
	.h_navigation.recruit {
		top: 78px;
		padding: 0 20px;
	}
}

/*========================================================================

  footer

========================================================================*/

[class^="p_recruit-"] {
	position: relative;
}
[class^="p_recruit-"] .inner {
	position: relative;
	max-width: 1000px;
	margin: auto;
}
.pbPage:not(.edit) [class^="p_recruit-"].u_animation .inner {
	opacity: 0;
}
.pbPage:not(.edit) [class^="p_recruit-"].u_animation.animation .inner {
	animation: fade-in .8s ease-in-out 0s forwards;
}

/*  技能系
========================================================================*/

/* スマホ用のスタイル */
.ginoukei-sp-only {
	display: none; /* デフォルトでは非表示 */
}

/* PC表示用のスタイル */
.ginoukei-pc-only {
	display: block; /* デフォルトでは表示 */
}

/* スクリーン幅が767px以下の場合のスタイル（スマホ表示用） */
@media screen and (max-width: 767px) {
	.ginoukei-sp-only {
		display: block; /* スマホ表示ではこの要素を表示 */
	}
	.ginoukei-pc-only {
		display: none; /* スマホ表示ではPC版を非表示 */
	}
}


/*  recruit-entry
========================================================================*/

.p_recruit-entry {
	background: linear-gradient(to bottom, #FFCC98,#FC3D3D);
	color: #fff;
}
.p_recruit-entry .inner {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 79px 0;
}
.p_recruit-entry .title {
	font-size: 72px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-weight: 600;
	line-height: 1.1;
}
.p_recruit-entry .text {
	margin-left: 30px;
	font-size: 20px;
}
.p_recruit-entry .list {
	margin-left: auto;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.4;
}
.p_recruit-entry .list ul {
	display: flex;
	gap: 15px 12px;
}
.p_recruit-entry .list a {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: flex;
	align-items: center;
	width: 273px;
	height: 100%;
	min-height: 75px;
	padding: 16px 35px;
	background: #fff;
	color: #02007C;
	text-decoration: none;
}
.p_recruit-entry .list a:before {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: 50%;
	z-index: -1;
	width: 120%;
	padding-top: 120%;
	background: #02007C;
	border-radius: 100%;
	transform-origin: top left;
	transform: scale(0) translate(-50%,-50%);
	transition: inherit;
}
.p_recruit-entry .list a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #02007C;
	border-right: 2px solid #02007C;
	transform: rotate(-45deg);
	transition: all .3s;
}
@media (min-width: 768px) {
	.p_recruit-entry .list a:hover {
		color: #fff;
	}
	.p_recruit-entry .list a:hover:before {
		opacity: 1;
		transform: scale(1) translate(-50%,-50%);
	}
	.p_recruit-entry .list a:hover:after {
		border-color: #fff;
	}
}

@media screen and (max-width: 767px) {
	.p_recruit-entry .inner {
		flex-flow: column;
		padding: 60px 20px;
	}
	.p_recruit-entry .title {
		font-size: 54px;
	}
	.p_recruit-entry .text {
		margin-left: 0;
		font-size: 18px;
	}
	.p_recruit-entry .list {
		width: 100%;
		max-width: 290px;
		margin: 35px auto 0;
	}
	.p_recruit-entry .list ul {
		flex-flow: column;
	}
	.p_recruit-entry .list a {
		width: 100%;
		padding: 16px 60px 16px 30px;
	}
	.p_recruit-entry .list a:after {
		right: 32px;
		width: 11px;
		height: 11px;
	}
}

/*  recruit-career
========================================================================*/

.p_recruit-career {
    background: #F4F6FA;
}
.p_recruit-career .inner {
	padding: 125px 0;
}
.p_recruit-career .list {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.4;
}
.p_recruit-career .list ul {
	display: flex;
	gap: 15px 20px;
   	justify-content: center;
}
.p_recruit-career .list li {
	width: 50%;
}
.p_recruit-career .list a {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	min-height: 120px;
	padding: 16px 20px;
	color: #fff;
	text-decoration: none;
}
.p_recruit-career .list a:before,
.p_recruit-career .list a:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all .3s;
}
.p_recruit-career .list a:before {
	background: linear-gradient(to bottom, #FFCC98,#FC3D3D);
	z-index: -1;
}
.p_recruit-career .list a:after {
	background: #FC3D3D;
	z-index: -2;
}
.p_recruit-career .list a:before {
	background: #02007C;
}
.p_recruit-career .list a:after {
	background: linear-gradient(to bottom, #1C84BE,#02007C);
}
@media (min-width: 768px) {
	.p_recruit-career .list a:hover:before {
		opacity: 0;
	}
}

@media screen and (max-width: 767px) {
	.p_recruit-career .inner {
		padding: 45px 20px 90px;
	}
	.p_recruit-career .list {
		width: 100%;
		max-width: 335px;
		margin: auto;
		font-size: 19px;
	}
	.p_recruit-career .list ul {
		flex-flow: column;
	}
	.p_recruit-career .list li {
		width: 100%;
	}
	.p_recruit-career .list a {
		min-height: 95px;
	}
}

/*  footer
========================================================================*/

.footer.recruit {
	background: #fff;
	color: #000;
}
.footer.recruit .inner {
	padding: 60px 0;
	max-width: 1000px;
}
.footer.recruit .f_menu .com {
	width: 224px;
}
.footer.recruit .f_menu nav {
	width: 668px;
}
.footer.recruit .f_menu .box {
	width: 100%;
}
.footer.recruit .f_menu .title {
	font-size: 20px;
}
.footer.recruit .f_menu .title ul {
	display: flex;
	flex-wrap: wrap;
	max-width: none;
	gap: 10px 45px;
}
.footer.recruit .f_menu .title li:not(:first-child) {
	margin: 0;
}
.footer.recruit .f_menu .list:not(:first-child) {
	margin-top: 25px;
}
.footer.recruit .f_menu .list ul {
	display: flex;
	flex-wrap: wrap;
	max-width: none;
	gap: 10px 30px;
	font-weight: 500;
}
.footer.recruit .f_menu .list li:not(:first-child) {
	margin: 0;
}
.footer.recruit .f_menu .list a {
	padding-right: 0;
}
.footer.recruit a:before,
.footer.recruit .f_menu .list a:before {
	background: #000;
}
.footer.recruit .f_menu .list a:after {
	display: none;
}
.footer.recruit .f_copy {
	border-color: #C7C7C7;
	justify-content: flex-end;
}

@media screen and (max-width: 767px) {
	.footer.recruit .inner {
		padding: 50px 0 20px;
	}
	.footer.recruit .f_menu .com {
		width: 100%;
	}
	.footer.recruit .f_menu nav {
		width: 100%;
		margin-top: 30px;
	}
	.footer.recruit .f_menu .title {
		font-size: 18px;
	}
	.footer.recruit .f_menu .list:not(:first-child) {
		margin-top: 30px;
	}
	.footer.group .f_menu .box:first-child {
		width: 100%;
	}
	.footer.group .f_menu .box:last-child {
		width: 100%;
	}
	.footer.group .f_menu .title ul {
		flex-wrap: wrap;
		gap: 15px 25px;
	}
	.footer.recruit .f_copy {
		padding-top: 20px;
	}
	.footer.recruit .f_copy .copy {
		margin-top: 0;
		font-size: 11px;
	}
}

/*========================================================================

  general

========================================================================*/

.p_recruit-general {
	display: flex;
	width: 100%;
	height: 100vh;
	background: url(../img/bg.jpg) center / cover;
	text-align: center;
}
.p_recruit-general .inner {
	width: 100%;
}
.p_recruit-general h1 {
	font-family: 'Overpass', sans-serif;
	font-size: 43px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 5px;
}
.p_recruit-general .list {
	margin-top: 25px;
}
.p_recruit-general .list ul {
	display: flex;
	gap: 20px 30px;
}
.p_recruit-general .list li {
	width: 460px;
}
.p_recruit-general .list a {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	padding: 35px 50px;
	background: #fff;
	color: #02007C;
	text-decoration: none;
	font-size: 36px;
	line-height: 1.4;
	font-weight: 500;
}
.p_recruit-general .list span {
	font-family: 'Overpass', sans-serif;
	font-size: 14px;
	letter-spacing: 0.12em;
	display: block;
	font-weight: bold;
}
.p_recruit-general .list a:before {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: 50%;
	z-index: -1;
	width: 120%;
	padding-top: 120%;
	background: #02007C;
	border-radius: 100%;
	transform-origin: top left;
	transform: scale(0) translate(-50%,-50%);
	transition: inherit;
}
.p_recruit-general .list a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 27px;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #02007C;
	border-right: 2px solid #02007C;
	transform: rotate(-45deg);
	transition: all .3s;
}
@media (min-width: 768px) {
	.p_recruit-general .list a:hover {
		color: #fff;
	}
	.p_recruit-general .list a:hover:before {
		opacity: 1;
		transform: scale(1) translate(-50%,-50%);
	}
	.p_recruit-general .list a:hover:after {
		border-color: #fff;
	}
}

@media screen and (max-width: 767px) {
	.p_recruit-general {
		background-image: url(../img/bg-sp.jpg);
	}
	.p_recruit-general h1 {
		font-size: 24px;
		letter-spacing: 3px;
		line-height: 1.3;
	}
	.p_recruit-general .list {
		margin-top: 25px;
	}
	.p_recruit-general .list ul {
		flex-flow: column;
		max-width: 300px;
		margin: auto;
	}
	.p_recruit-general .list li {
		width: 100%;
	}
	.p_recruit-general .list a {
		padding: 27px 40px;
		font-size: 30px;
	}
	.p_recruit-general .list span {
		font-size: 12px;
	}
}

/*========================================================================

  recruit

========================================================================*/

[class^="p_recruit-"] .textbox .title {
    font-size: 72px;
    font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
    font-weight: 600;
    color: #02007C;
    line-height: 1.1;
}
[class^="p_recruit-"] .textbox .subtitle {
    margin-top: 5px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.1;
}
[class^="p_recruit-"] .textbox .text {
    margin-top: 35px;
    font-size: 16px;
}
.p_recruit-button:not(:first-child) {
	margin-top: 40px;
}
.p_recruit-button {
	text-align: center;
}
.p_recruit-button a {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: inline-block;
	padding: 15px 55px 15px 35px;
	color: #02007C;
	font-size: 14px;
	font-weight: 500;
	border: 1px solid #02007C;
	text-decoration: none;
}
.p_recruit-button a:before {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: 50%;
	z-index: -1;
	width: 120%;
	padding-top: 120%;
	background: #02007C;
	border-radius: 100%;
	transform-origin: top left;
	transform: scale(0) translate(-50%,-50%);
	transition: inherit;
}
.p_recruit-button a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 37px;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #02007C;
	border-right: 1px solid #02007C;
	transform: rotate(-45deg);
	transition: all .3s;
}
@media (min-width: 768px) {
	.p_recruit-button a:hover {
		color: #fff;
	}
	.p_recruit-button a:hover:before {
		opacity: 1;
		transform: scale(1) translate(-50%,-50%);
	}
	.p_recruit-button a:hover:after {
		border-color: #fff;
	}
}

@media screen and (max-width: 767px) {
	[class^="p_recruit-"] .textbox .title {
		font-size: 52px;
	}
	[class^="p_recruit-"] .textbox .subtitle {
	    font-size: 18px;
	}
	.p_recruit-button a {
		padding: 10px 40px 10px 30px;
	}
	.p_recruit-button a:after {
		right: 25px;
	}
}

/*  top-slider
========================================================================*/

.p_top-slider.recruit li img {
	object-fit: cover;
	height: 100vh;
}
.p_top-slider.recruit .textarea {
	top: 50%;
	width: calc(100% - 40px);
	max-width: 1000px;
	color: #fff;
}
.p_top-slider.recruit .title {
	font-size: 80px;
	font-weight: 500;
	line-height: 1.5;
}
.p_top-slider.recruit .text {
	margin-top: 25px;
	font-size: 20px;
	font-family: 'Overpass', sans-serif;
	line-height: 1.2;
	font-weight: bold;
	letter-spacing: 2.5px;
}
.p_top-slider.recruit .slick-dots {
	display: none!important;
}
.p_top-slider.recruit .scroll {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%,0);
}
.p_top-slider.recruit .scroll span {
	position: absolute;
	top: calc(100% - 110px);
	left: -11px;
	font-size: 12px;
	font-family: 'Overpass', sans-serif;
	font-weight: bold;
	color: #fff;
	writing-mode: vertical-lr;
}
.p_top-slider.recruit .line {
	overflow: hidden;
	position: absolute;
	top: -60px;
	width: 1px;
	height: 60px;
}
.p_top-slider.recruit .line:after {
	content: '';
	position: absolute;
	top: -60px;
	width: 1px;
	height: 60px;
	background: #fff;
	animation: pathmove 2s ease-out infinite;
}
@keyframes pathmove{
	0% { top: -60px;}
	100% { top: 60px;}
}

@media screen and (max-width: 767px) {	
	.p_top-slider.recruit .title {
		font-size: 50px;
	}
	.p_top-slider.recruit .text {
		margin-top: 20px;
		font-size: 14px;
	}
}

/*  recruit-message
========================================================================*/

.p_recruit-message {
	background: #F4F6FA;
}
.p_recruit-message .inner {
	width: calc(100% - 40px);
	padding: 170px 0 230px;
}
.p_recruit-message .inner:before {
	content: 'Message';
	position: absolute;
	bottom: 120px;
	left: -220px;
	color: #fff;
	font-size: 200px;
	font-family: 'Overpass', sans-serif;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -7px;
}
.p_recruit-message .textbox {
    position: relative;
    display: flex;
}
.p_recruit-message .textbox .title {
	flex: 1;
	font-size: 54px;
	line-height: 1.6;
}
.p_recruit-message .textbox .text {
	width: 535px;
	margin-top: 60px;
	line-height: 2.6;
}

@media screen and (max-width: 767px) {
	.p_recruit-message .inner {
		padding: 80px 0 90px;
	}
	.p_recruit-message .inner:before {
		bottom: auto;
		left: auto;
		top: 125px;
		right: -15px;
		font-size: 75px;
		letter-spacing: -1px;
	}
	.p_recruit-message .textbox {
	    flex-flow: column;
	}
	.p_recruit-message .textbox .title {
		font-size: 30px;
	}
	.p_recruit-message .textbox .text {
		width: 100%;
		margin-top: 30px;
		line-height: 2;
		font-size: 16px;
	}
}

/*  recruit-job
========================================================================*/

.p_recruit-job .inner {
	margin: 160px auto;
	background: #F4F6FA;
}
.p_recruit-job .image-l {
	position: absolute;
	top: -50px;
	left: -200px;
}
.p_recruit-job .image-r {
	position: absolute;
	top: 50px;
	right: -200px;
}
.p_recruit-job .textbox {
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	width: 292px;
	height: 720px;
	margin: auto;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.p_recruit-job .inner {
		margin: 50px auto;
	}
	.p_recruit-job .image-l,
	.p_recruit-job .image-r {
		position: static;
		width: 100%;
	}
	.p_recruit-job .image-l img,
	.p_recruit-job .image-r img {
		width: 100%;
	}
	.p_recruit-job .textbox {
		width: 100%;
		max-width: 330px;
		height: auto;
		padding: 50px 20px 50px;
	}
}

/*  recruit-numbers
========================================================================*/

.p_recruit-numbers .inner {
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - 40px);
	min-height: 480px;
	margin: 160px auto;
}
.p_recruit-numbers .imagebox {
	position: absolute;
	width: 100%;
	height: 100%;
}
.p_recruit-numbers .imagebox img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.p_recruit-numbers .textbox {
	position: relative;
	padding: 10px;
	color: #fff;
	text-align: center;
}
.p_recruit-numbers .textbox .title {
	color: #fff;
}
.p_recruit-numbers .textbox .text {
	max-width: 292px;
	margin: 30px auto 0;
}
.p_recruit-numbers .p_recruit-button a {
	color: #fff;
	border-color: #fff;
}
.p_recruit-numbers .p_recruit-button a:before {
	background: #fff;
}
.p_recruit-numbers .p_recruit-button a:after {
	border-color: #fff;
}
@media (min-width: 768px) {
	.p_recruit-numbers .p_recruit-button a:hover {
		color: #02007C;
	}
	.p_recruit-numbers .p_recruit-button a:hover:after {
		border-color: #02007C;
	}
}

@media screen and (max-width: 767px) {
	.p_recruit-numbers .inner {
		min-height: 403px;
		margin: 70px auto;
	}
}

/*  recruit-interview
========================================================================*/

.p_recruit-interview {
	position: relative;
}
.p_recruit-interview:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 600px;
	background: #F4F6FA;
}
.p_recruit-interview > div {
	position: relative;
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: auto;
	padding: 110px 0 150px;
}
.pbPage:not(.edit) .p_recruit-interview.u_animation > div {
	opacity: 0;
}
.pbPage:not(.edit) .p_recruit-interview.u_animation.animation > div {
	animation: fade-in .8s ease-in-out 0s forwards;
}
.p_recruit-interview .textbox.pbNested {
	text-align: center;
}
.p_recruit-interview .textbox.pbNested + div {
	margin-top: 50px;
}

@media screen and (max-width: 767px) {
	.p_recruit-interview:before {
		height: 360px;
	}
	.p_recruit-interview > div {
		padding: 50px 0 90px;
	}
}

/*  recruit-life
========================================================================*/

.p_recruit-life {
	background: linear-gradient(to bottom, #005180,#02007C);
	color: #fff;
}
.p_recruit-life .inner {
	padding: 30px 0 120px;
}
.p_recruit-life .imagebox {
	margin: 0 -170px;
}
.p_recruit-life .textbox {
	margin: -40px -100px 0;
}
.p_recruit-life .textbox .title {
	color: #fff;
}
.p_recruit-life .menu {
	margin-top: 60px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-weight: 500;
}
.p_recruit-life .menu ul {
	border-top: 1px solid #fff;
}
.p_recruit-life .menu li {
	border-bottom: 1px solid #fff;
}
.p_recruit-life .menu a {
	position: relative;
	display: flex;
	align-items: center;
	height: 120px;
	padding: 18px 60px 18px 20px;
	font-size: 46px;
	text-decoration: none;
}
.p_recruit-life .menu a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 25px;
	width: 20px;
	height: 20px;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(-45deg);
	transition: all .3s;
}
.p_recruit-life .menu span {
	margin: 0 45px 0 25px;
	font-size: 14px;
}
.p_recruit-life .menu .image {
	position: relative;
	z-index: 1;
	order: 1;
	transform: scale(0);
	transition: all .3s;
}
@media (min-width: 768px) {
	.p_recruit-life .menu a:hover {
		background: #fff;
		color: #02007C;
	}
	.p_recruit-life .menu a:hover .image {
		opacity: 1;
		transform: scale(1);
	}
	.p_recruit-life .menu a:hover:after {
		border-color: #02007C;
	}
}
.p_recruit-life .list {
	margin-top: 60px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-weight: 500;
}
.p_recruit-life .list ul {
	display: flex;
	gap: 30px;
}
.p_recruit-life .list li {
	width: 33%;
}
.p_recruit-life .list a {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: flex;
	align-items: center;
	padding: 20px 50px 20px 25px;
	font-size: 32px;
	border: 1px solid #fff;
	text-decoration: none;
}
.p_recruit-life .list a:before {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: 50%;
	z-index: -1;
	width: 120%;
	padding-top: 120%;
	background: #fff;
	border-radius: 100%;
	transform-origin: top left;
	transform: scale(0) translate(-50%,-50%);
	transition: inherit;
}
.p_recruit-life .list a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(-45deg);
	transition: all .3s;
}
.p_recruit-life .list span {
	margin-left: 20px;
	font-size: 14px;
}
@media (min-width: 768px) {
	.p_recruit-life .list a:hover {
		color: #02007C;
	}
	.p_recruit-life .list a:hover:before {
		opacity: 1;
		transform: scale(1) translate(-50%,-50%);
	}
	.p_recruit-life .list a:hover:after {
		border-color: #02007C;
	}
}

@media screen and (max-width: 767px) {
	.p_recruit-life .inner {
		padding: 80px 20px 60px;
	}
	.p_recruit-life .imagebox {
		display: none;
	}
	.p_recruit-life .textbox {
		margin: 0;
	}
	.p_recruit-life .menu {
		margin-top: 70px;
	}
	.p_recruit-life .menu a {
		flex-flow: column;
		align-items: normal;
		height: auto;
		padding: 35px 30px 35px 140px;
		font-size: 36px;
		line-height: 1.2;
	}
	.p_recruit-life .menu a:after {
		right: 15px;
		width: 15px;
		height: 15px;
	}
	.p_recruit-life .menu span {
		margin: 0;
	}
	.p_recruit-life .menu .image {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		left: 15px;
		display: flex;
		align-items: center;
		width: 105px;
		transform: scale(1);
	}
	.p_recruit-life .list {
		margin-top: 50px;
	}
	.p_recruit-life .list ul {
		flex-wrap: wrap;
		gap: 15px;
	}
	.p_recruit-life .list li {
		width: calc(50% - 15px + (15px / 2));
	}
	.p_recruit-life .list a {
		align-items: normal;
		flex-flow: column;
		padding: 12px 25px 12px 15px;
		font-size: 24px;
		line-height: 1.2;
	}
	.p_recruit-life .list a:after {
		right: 15px;
		border-width: 1px;
	}
	.p_recruit-life .list span {
		margin-left: 0;
		font-size: 11px;
	}
}

/*  recruit-about
========================================================================*/

.p_recruit-about > div {
	width: calc(100% - 40px);
	padding: 160px 0 160px;
}
.p_recruit-about .textbox {
	text-align: center;
}
.p_recruit-about .column {
	margin-top: 30px;
	font-weight: 500;
	font-size: 20px;
}
.p_recruit-about .column ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
    justify-content: center;	
}
.p_recruit-about .column li {
	width: 320px;
}
.p_recruit-about .column a {
	display: block;
	text-decoration: none;
}
.p_recruit-about .column .image {
	overflow: hidden;
}
.p_recruit-about .column .image img {
	width: 100%;
}
@media (min-width: 768px) {
	.p_recruit-about .column a:hover .image img {
		transform: scale(1.1);
	}
}
.p_recruit-about .column .title {
	margin-top: 10px;
}
.p_recruit-about .list {
	margin-top: 80px;
	font-weight: 500;
	font-size: 20px;
}
.p_recruit-about .list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.p_recruit-about .list li {
	width: 320px;
}
.p_recruit-about .list a {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: flex;
	align-items: center;
	padding: 31px 40px 31px 25px;
	color: #02007C;
	border: 1px solid #02007C;
	text-decoration: none;
}
.p_recruit-about .list a:before {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: 50%;
	z-index: -1;
	width: 120%;
	padding-top: 120%;
	background: #02007C;
	border-radius: 100%;
	transform-origin: top left;
	transform: scale(0) translate(-50%,-50%);
	transition: inherit;
}
.p_recruit-about .list a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #02007C;
	border-right: 2px solid #02007C;
	transform: rotate(-45deg);
	transition: all .3s;
}
@media (min-width: 768px) {
	.p_recruit-about .list a:hover {
		color: #fff;
	}
	.p_recruit-about .list a:hover:before {
		opacity: 1;
		transform: scale(1) translate(-50%,-50%);
	}
	.p_recruit-about .list a:hover:after {
		border-color: #fff;
	}
}

@media screen and (max-width: 767px) {
	.p_recruit-about > div {
		padding: 80px 0;
	}
	.p_recruit-about .textbox {
		text-align: center;
	}
	.p_recruit-about .column {
		font-size: 18px;
	}
	.p_recruit-about .column ul {
		flex-flow: column;
	}
	.p_recruit-about .column li {
		width: 100%;
	}
	.p_recruit-about .column .title {
		margin-top: 5px;
	}
	.p_recruit-about .list {
		margin-top: 40px;
		font-size: 16px;
	}
	.p_recruit-about .list ul {
		gap: 15px;
	}
	.p_recruit-about .list li {
		width: calc(50% - 15px + (15px / 2));
	}
	.p_recruit-about .list a {
		min-height: calc(2em * 1.2 + 50px);
		padding: 12px 25px 12px 15px;
		line-height: 1.4;
	}
	.p_recruit-about .list a:after {
		right: 15px;
		border-width: 1px;
	}
}

/*========================================================================

  interview

========================================================================*/

[class^="p_interview-"] {
	position: relative;
}
[class^="p_interview-"] .inner {
	position: relative;
	max-width: 1000px;
	margin: auto;
}
.pbPage:not(.edit) [class^="p_interview-"].u_animation .inner {
	opacity: 0;
}
.pbPage:not(.edit) [class^="p_interview-"].u_animation.animation .inner {
	animation: fade-in .8s ease-in-out 0s forwards;
}

/*  interview-title
========================================================================*/

.p_interview-title {
	padding: 145px 20px 55px;
	background: linear-gradient(to left, #1C84BE,#02007C);
	color: #fff;
	text-align: center;
}
.p_interview-title h1 {
	font-size: 60px;
	font-family: 'Overpass', sans-serif;
	line-height: 1.2;
	font-weight: bold;
}
.p_interview-title .subtitle {
	font-size: 20px;
}

@media screen and (max-width: 767px) {
	.p_interview-title {
		padding: 130px 20px 40px;
	}
	.p_interview-title h1 {
		font-size: 56px;
	}
	.p_interview-title .subtitle {
		font-size: 18px;
	}
}

/*  section
========================================================================*/

.c_section.interview > div {
	padding: 80px 0 125px;
}

@media screen and (max-width: 767px) {
	.c_section.interview > div {
		padding: 40px 0 60px;
	}
}

/*  interview-column
========================================================================*/

.p_interview-column a {
	text-decoration: none;
}
.p_interview-column .textbox {
	position: relative;
	padding-top: 25px;
	line-height: 1.4;
}
.p_interview-column .image {
	overflow: hidden;
}
.p_interview-column .image img {
	width: 100%;
}
@media (min-width: 768px) {
	.p_interview-column a:hover .image img {
		transform: scale(1.1);
	}
}
.p_interview-column .label {
	position: absolute;
	top: -22px;
	left: -10px;
	display: flex;
	justify-content: center;
	width: 82px;
	padding: 0 20px;
	line-height: 32px;
	background: #02007C;
	color: #fff;
	font-size: 14px;
}
.p_interview-column .join {
	font-size: 14px;
}
.p_interview-column .name01 {
	margin-top: 5px;
	font-size: 24px;
	font-weight: 500;
}
.p_interview-column .name02 {
	margin-top: 10px;
	color: #02007C;
	font-size: 11px;
	font-weight: 500;
}

/*  col-3
------------------------------------------------*/

.p_interview-column.col-3 ul {
	display: flex;
	flex-wrap: wrap;
	gap: 75px 20px;
}
.p_interview-column.col-3 li {
	width: 320px;
}

@media screen and (max-width: 767px) {
	.p_interview-column.col-3 ul {
		gap: 40px 20px;
	}
	.p_interview-column.col-3 li {
		width: calc(50% - 20px + (20px / 2));
	}
	.p_interview-column .textbox {
		padding-top: 18px;
	}
	.p_interview-column.col-3 .label {
		top: -15px;
		left: 0;
		width: auto;
		padding: 0 8px;
		line-height: 25px;
		font-size: 12px;
	}
	.p_interview-column.col-3 .join {
		font-size: 12px;
	}
	.p_interview-column.col-3 .name01 {
		margin-top: 5px;
		font-size: 18px;
	}
	.p_interview-column.col-3 .name02 {
		margin-top: 5px;
		font-size: 10px;
	}
}

/*  slider
------------------------------------------------*/

.p_interview-column.slider > ul {
	margin: 0 -10px;
}
.p_interview-column.slider .slick-arrow {
	left: -70px;
	z-index: 1;
	width: 50px;
	height: 50px;
	margin-top: -50px;
	background: #fff;
	border: 1px solid #02007C;
	border-radius: 50%;
	transition: all .3s;
}
.p_interview-column.slider .slick-disabled {
	opacity: .5;
	pointer-events: none;
}
.p_interview-column.slider .slick-next {
	left: auto;
	right: -70px;
}
.p_interview-column.slider .slick-arrow:focus {
	background: #fff;
}
.p_interview-column.slider .slick-arrow:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 21px;
	width: 9px;
	height: 9px;
	border-left: 1px solid #02007C;
	border-bottom: 1px solid #02007C;
	opacity: 1;
	transform: rotate(45deg);
	transition: all .3s;
}
.p_interview-column.slider .slick-next:before {
	left: auto;
	right: 21px;
	transform: rotate(-135deg);
}
@media (min-width: 768px) {
	.p_interview-column.slider .slick-arrow:hover {
		background: #02007C;
	}
	.p_interview-column.slider .slick-arrow:hover:before {
		border-color: #fff;
	}
}
.p_interview-column.slider .slick-slide {
	margin: 0 10px;
}

@media screen and (max-width: 767px) {
	.p_interview-column.slider {
		width: calc(100% - 35px);
		margin: auto;
	}
	.p_interview-column.slider > ul {
		margin: 0;
		padding-bottom: 80px;
	}
	.p_interview-column.slider .slick-list {
		overflow: visible;
	}
	.p_interview-column.slider .slick-slide {
		margin: 0;
		padding: 0 15px;
	}
	.p_interview-column.slider .slick-arrow {
		top: auto;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		margin-left: -35px;
	}
	.p_interview-column.slider .slick-next {
		margin-left: 35px;
	}
}

/*========================================================================

  interview-detail

========================================================================*/

.pbMainArea.interview-detail {
	background: #F4F6FA;
}

/*  interview-profile
========================================================================*/

.p_interview-profile {
	overflow: hidden;
}
.p_interview-profile:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to left, #1C84BE,#02007C);
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 200px), 0 100%);
}
.p_interview-profile .inner {
	padding: 145px 0 45px;
}
.p_interview-profile .column {
	display: flex;
	align-items: center;
}
.p_interview-profile .textbox {
	flex: 1;
	margin-right: 100px;
	color: #fff;
}
.p_interview-profile .imagebox {
    width: 420px;
}
.p_interview-profile .message {
	font-size: 32px;
	font-weight: 500;
}
.p_interview-profile .name {
	margin: 50px 0 12px;
	padding-bottom: 9px;
	font-size: 18px;
	border-bottom: 1px solid;
}
.p_interview-profile .career {
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.p_interview-profile:before {
		display: none;
	}
	.p_interview-profile .inner {
		padding: 0;
	}
	.p_interview-profile .column {
		display: flex;
		align-items: center;
	}
	.p_interview-profile .textbox {
		margin-right: 0;
	}
	.p_interview-profile .back {
		position: relative;
		padding: 120px 20px 0;
	}
	.p_interview-profile .back:before {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background: linear-gradient(to left, #1C84BE,#02007C);
		clip-path: polygon(0 0, 100% 0, 100% calc(100% - 90px), 0 calc(100% - 35px));
	}
	.p_interview-profile .imagebox {
	    width: 420px;
	}
	.p_interview-profile .message {
		position: relative;
		font-size: 26px;
	}
	.p_interview-profile .image {
		position: relative;
		width: 280px;
		max-width: calc(100% - 40px);
		margin: 30px 0 0 auto;
	}
	.p_interview-profile .name {
		max-width: calc(100% - 40px);
		margin: 30px auto 12px;
		color: #02007C;
		font-weight: 500;
	}
	.p_interview-profile .career {
		max-width: calc(100% - 40px);
		margin: auto;
		color: #02007C;
	}
}

/*  interview-work
========================================================================*/

.p_interview-work > div {
	display: flex;
	flex-wrap: wrap;
	gap: 35px 32px;
}
.p_interview-work > div:after {
	display: none;
}
.p_interview-work .box {
	width: 312px;
}
.p_interview-work .image img {
	width: 100%;
}
.p_interview-work .title {
	margin-top: 7px;
	color: #02007C;
	font-size: 18px;
	font-weight: 500;
}
.p_interview-work .text {
	margin-top: 5px;
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.p_interview-work > div {
		flex-flow: column;
		width: calc(100% - 40px);
		margin: auto;
	}
	.p_interview-work .box {
		width: 100%;
	}
}

/*  title
========================================================================*/

.c_h2.interview:not(:first-child) {
	margin-top: 110px;
}
.c_h2.interview {
	font-size: 32px;
	font-weight: bold;
	color: #02007C;
}
.c_h2.interview-small:not(:first-child) {
	margin-top: 7px;
}
.c_h2.interview-small + div {
	margin-top: 38px;
}
.c_h2.interview-small > div:not(.pb-handle) {
	opacity: .4;
	color: #02007C;
	font-size: 14px;
	font-family: 'Overpass', sans-serif;
}

@media screen and (max-width: 767px) {
	.c_h2.interview:not(:first-child) {
		margin-top: 80px;
	}
	.c_h2.interview {
		font-size: 26px;
	}
	.c_h2.interview-small:not(:first-child) {
		margin-top: 5px;
	}
}

/*  interview-schedule
========================================================================*/

.p_interview-schedule > div {
	width: calc(100% - 40px);
	max-width: 880px;
	margin: auto;
}
.p_interview-schedule .box > div {
	display: flex;
}
.p_interview-schedule .box:not(:last-child) > div {
	position: relative;
	padding-bottom: 45px;
}
.p_interview-schedule .box:not(:last-child) > div:after {
	position: absolute;
	left: 44px;
	width: 1px;
	height: 100%;
	border-left: 1px dashed #707070;
}
.p_interview-schedule .time > div {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	width: 88px;
	height: 88px;
	background: #fff;
	color: #02007C;
	font-size: 20px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	border-radius: 50%;
	text-align: center;
}
.p_interview-schedule .time > div > div {
	width: 100%;
}
.p_interview-schedule .textbox {
	flex: 1;
	margin: 25px 0 0 20px;
}
.p_interview-schedule .title {
	font-size: 22px;
	font-weight: 500;
}
.p_interview-schedule .text {
	margin-top: 10px;
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.p_interview-schedule > div {
		width: 100%;
	}
	.p_interview-schedule .box:not(:last-child) > div {
		padding-bottom: 20px;
	}
	.p_interview-schedule .textbox {
		margin: 30px 0 0 20px;
	}
	.p_interview-schedule .title {
		font-size: 20px;
		line-height: 1.4;
	}
}

/*  interview-interview
========================================================================*/

.p_interview-interview:not(:first-child) {
	margin-top: 100px;
}
@media (min-width: 768px) {
	.p_interview-interview.u_mt40 {
		margin-top: 60px!important;
	}
}
.p_interview-interview > div {
	position: relative;
	padding: 60px;
	background: #fff;
}
.p_interview-interview .imagebox {
	position: absolute;
	top: -40px;
	left: -105px;
	width: 450px;
}
.p_interview-interview .textbox:not(:first-child) {
	width: 535px;
	margin-left: auto;
}
.p_interview-interview .textbox:not(:first-child) > div {
	min-height: 330px;
}
.p_interview-interview .title + div {
	margin-top: 35px;
}
.p_interview-interview .title > div {
	position: relative;
	padding-left: 60px;
	color: #02007C;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.4;
}
.p_interview-interview .title > div:before {
	content: '';
	position: absolute;
	top: .7em;
	left: 0;
	width: 40px;
	height: 2px;
	background: #02007C;
}
.p_interview-interview .text {
	line-height: 2;
}

@media screen and (max-width: 767px) {
	.p_interview-interview:not(:first-child) {
		margin-top: 210px;
	}
	.p_interview-interview > div {
		padding: 30px 25px;
	}
	.p_interview-interview .imagebox {
		top: -160px;
		left: -20px;
		width: 320px;
	}
	.p_interview-interview .textbox:not(:first-child) {
		width: auto;
		margin-top: 160px;
	}
	.p_interview-interview .textbox:not(:first-child) > div {
		min-height: auto;
	}
	.p_interview-interview .title + div {
		margin-top: 20px;
	}
	.p_interview-interview .title > div {
		font-size: 22px;
		padding-left: 55px;
	}
}

/*  pc-reverse
------------------------------------------------*/

.p_interview-interview.pc-reverse .imagebox {
	left: auto;
	right: -105px;
}
.p_interview-interview.pc-reverse .textbox:not(:first-child) {
	margin-left: 0;
}

@media screen and (max-width: 767px) {
	.p_interview-interview.pc-reverse .imagebox {
		right: -20px;
	}
}

/*  title
------------------------------------------------*/

.p_interview-interview.title:not(:first-child) {
	margin-top: 190px;
}
.p_interview-interview.title > div:before {
	opacity: .5;
	content: 'Interview';
	position: absolute;
	top: -140px;
	left: -260px;
	color: #fff;
	font-size: 200px;
	font-family: 'Overpass', sans-serif;
	font-weight: 600;
	line-height: 1;
}

@media screen and (max-width: 767px) {
	.p_interview-interview.title:not(:first-child) {
		margin-top: 240px;
	}
	.p_interview-interview.title > div:before {
		opacity: 1;
		top: -210px;
		left: -25px;
		font-size: 70px;
	}
}

/*  interview-voice
========================================================================*/

.p_interview-voice:not(:first-child) {
	margin-top: 120px;
}
.p_interview-voice > div {
	display: flex;
}
.p_interview-voice .titlebox {
	flex: 1;
}
.p_interview-voice .textbox {
	width: 680px;
	margin-left: 30px;
}
.p_interview-voice .title:not(:first-child) {
	margin-top: 30px;
}
.p_interview-voice .title + div {
	margin-top: 10px;
}
.p_interview-voice .title {
	font-size: 22px;
	font-weight: 500;
}
.p_interview-voice .text {
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.p_interview-voice:not(:first-child) {
		margin-top: 90px;
	}
	.p_interview-voice > div {
		flex-flow: column;
	}
	.p_interview-voice .textbox {
		width: auto;
		margin: 40px 0 0;
	}
	.p_interview-voice .title {
		font-size: 20px;
	}
}

/*  section
========================================================================*/

.pbMainArea.interview-detail .c_section.white {
	background: #fff;
}
.c_section.interview-another > div {
	padding: 50px 0 70px;
}

@media screen and (max-width: 767px) {
	.c_section.interview-detail > div {
		padding: 75px 0 85px;
	}
	.c_section.interview-another > div {
		padding: 85px 0 90px;
	}
}


/*  popup
========================================================================*/

#group-link-popup {
  max-width: 480px;
  margin: 0 auto;
  display: block;
    font-family: 'Noto Sans JP','Noto Sans SC', sans-serif;
    word-break: break-word;
}
#group-link-popup .group-link-inner {
  color: #000;
  background-color: #fff;
  display: block;
  height: auto;
  padding: 20px;
}
#group-link-popup .group-link-inner p.group-link-msg {
  display: block;
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 20px;
}
#group-link-popup .group-link-inner .group-link-btn {
  display: flex;
  margin: 0 auto;
  width: 209px;
}
#group-link-popup .group-link-inner .group-link-btn a {
  border: 1px solid #ddd;
  text-decoration: none;
  width: 48%;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 15px;
}
#group-link-popup .group-link-inner .group-link-btn a:nth-child(even) {
  margin-left: 4%;
}
.mfp-bg,
.mfp-wrap {
	z-index: 10001!important;
}

/*========================================================================

  living

========================================================================*/

[class^="p_living-"] .inner {
	position: relative;
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: auto;
}
.pbPage:not(.edit) [class^="p_living-"].u_animation .inner {
	opacity: 0;
}
.pbPage:not(.edit) [class^="p_living-"].u_animation.animation .inner {
	animation: fade-in .8s ease-in-out 0s forwards;
}

/*  living-map
========================================================================*/

.p_living-map {
	background: linear-gradient(to bottom left, #1D86BF,#02007C);
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
}
.p_living-map .back {
	position: absolute;
	width: 1588px;
	top: -145px;
	left: calc(50% + 156px);
	transform: translate(-50%,0);
}
.p_living-map .inner {
	height: 1437px;
	padding-top: 200px;
}
.p_living-map .textbox {
	color: #fff;
}
.p_living-map .textbox h1 {
	font-size: 60px;
	font-weight: 600;
	line-height: 1.1;
}
.p_living-map .textbox .subtitle {
	margin-top: 5px;
	font-size: 20px;
}
.p_living-map .textbox .text {
	max-width: 460px;
	margin-top: 50px;
	font-size: 14px;
	letter-spacing: 1px;
}
.p_living-map .map {
	position: absolute;
	width: 1000px;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
}
.p_living-map .map li {
	position: absolute;
	width: 123px;
	height: 123px;
}
.p_living-map .map li.osaka {
	top: 1162px;
	left: 306px;
}
.p_living-map .map li.moriyama {
	top: 619px;
	left: 413px;
}
.p_living-map .map li.nagoya {
	top: 1102px;
	left: 607px;
}
.p_living-map .map li.sendai {
	top: 449px;
	left: 643px;
}
.p_living-map .map li.tokyo {
	top: 1056px;
	left: 825px;
}
.p_living-map .map li.himeji {
	top: 768px;
	left: 297px;
}
.p_living-map .map li.imabari {
	top: 1179px;
	left: 89px;
}
.p_living-map .map li.fukuyama {
	top: 706px;
	left: 141px;
}
.p_living-map .map li.fukuoka {
	top: 796px;
}
.p_living-map .map li a {
	opacity: 0;
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) scale(0);
	transition: all .3s;
	overflow: hidden;
	width: 400px;
	height: 400px;
	background: #fff;
	color: #02007C;
	border-radius: 50%;
	text-decoration: none;
	font-weight: 500;
	text-align: center;
	line-height: 1.6;
}
@media (min-width: 768px) {
	.p_living-map .map li:hover a {
		opacity: 1;
		transform: translate(-50%,-50%) scale(1);
	}
}
.p_living-map .map .title {
	margin-top: 20px;
	font-size: 35px;
}
.p_living-map .map li a[target=_blank] .title:after {
	content: '';
	position: relative;
	top: -3px;
	display: inline-block;
	width: 18px;
	height: 14px;
	margin-left: 10px;
	background: url(../img/blank.png) no-repeat;
}
.p_living-map .map .text {
	font-size: 14px;
	font-weight: 500;
}

@media screen and (max-width: 767px) {
	.p_living-map {
		background: linear-gradient(to bottom, #1D86BF,#02007C);
	}
	.p_living-map .back {
		top: 123px;
		left: 0;
		width: 100%;
		transform: none;
	}
	.p_living-map .back img {
		width: 100%;
	}
	.p_living-map .inner {
		height: auto;
		padding: 150px 0 80px;
	}
	.p_living-map .textbox h1 {
		font-size: 56px;
	}
	.p_living-map .textbox .subtitle {
		font-size: 18px;
	}
	.p_living-map .textbox .text {
		max-width: none;
		margin-top: 30px;
		letter-spacing: normal;
	}
	.p_living-map .column {
		margin-top: 45px;
		color: #fff;
	}
	.p_living-map .column ul {
		display: flex;
		flex-wrap: wrap;
		gap: 40px 15px;
	}
	.p_living-map .column li {
		width: calc(50% - 15px + (15px / 2));
	}
	.p_living-map .column .image img {
		width: 100%;
	}
	.p_living-map .column .title {
		margin-top: 15px;
		font-size: 32px;
		font-weight: 600;
		line-height: 1.3;
	}
	.p_living-map .column .title span {
		display: block;
		font-size: 14px;
		font-weight: normal;
	}
	.p_living-map .column .text {
		margin-top: 10px;
	}
	.p_living-map .p_recruit-button {
		margin-top: 25px;
		text-align: left;
	}
	.p_living-map .p_recruit-button a {
		color: #fff;
		border-color: #fff;
	}
	.p_living-map .p_recruit-button a:after {
		border-color: #fff;
	}
	.p_living-map .list {
		margin-top: 55px;
		color: #fff;
	}
	.p_living-map .list ul {
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
	}
	.p_living-map .list li {
		width: calc(50% - 15px + (15px / 2));
	}
	.p_living-map .list li a {
		position: relative;
		display: flex;
		flex-flow: column;
		justify-content: center;
		height: 100%;
		padding: 12px 25px 12px 15px;
		border: 1px solid #fff;
		font-size: 22px;
		text-decoration: none;
		line-height: 1.4;
	}
	.p_living-map .list li a:after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		right: 15px;
		width: 9px;
		height: 9px;
		border-bottom: 1px solid #fff;
		border-right: 1px solid #fff;
		transform: rotate(-45deg);
	}
	.p_living-map .list li a[target=_blank]:after {
		width: 15px;
		height: 11px;
		background: url(../img/blank-sp.png) no-repeat;
		border: none;
		transform: none;
	}
	.p_living-map .list li span {
		font-size: 12px;
		font-weight: normal;
	}
}

/*========================================================================

  graduate

========================================================================*/

.p_graduate {
	background: linear-gradient(to bottom, #1C82BD,#02007C);
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
}
.p_graduate .inner {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: auto;
	padding: 145px 0 120px;
}
.pbPage:not(.edit) .p_graduate .u_animation > * {
	opacity: 0;
}
.pbPage:not(.edit) .p_graduate .u_animation.animation > * {
	animation: fade-in .8s ease-in-out 0s forwards;
}

@media screen and (max-width: 767px) {
	.p_graduate .inner {
		padding: 130px 0 40px;
	}
}

/*  textbox
========================================================================*/

.p_graduate .textbox {
	color: #fff;
	text-align: center;
}
.p_graduate .textbox h1 {
	font-size: 60px;
	line-height: 1.2;
	font-weight: bold;
}
.p_graduate .textbox .subtitle {
	font-size: 20px;
}

@media screen and (max-width: 767px) {
	.p_graduate .textbox h1 {
		font-size: 56px;
	}
	.p_graduate .textbox .subtitle {
		font-size: 18px;
	}
}

/*  column
========================================================================*/

.p_graduate .column {
	margin-top: 60px;
	text-align: center;
}
.p_graduate .column ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.p_graduate .column li {
	width: calc((100% / 3) - 20px + (20px / 3));
	padding: 43px 10px 35px;
	background: #fff;
	color: #02007C;
	font-weight: 700;
}
.p_graduate .column li:not(.col-2) {
	display: flex;
	flex-flow: column;
}
.p_graduate .column li.col-2 {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
	width: 660px;
}
.p_graduate .column span {
	vertical-align: baseline;
}
.p_graduate .column .title {
	width: 100%;
	margin-bottom: 20px;
	font-size: 32px;
	line-height: 1.5;
}
.p_graduate .column .title span {
	font-size: 24px;
}
.p_graduate .column .icon {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 120px;
}
.p_graduate .column li.col-2 .icon {
	margin: 17px 20px 0 0;
	min-height: 170px;
}
.p_graduate .column .num {
	margin-top: 15px;
	font-size: 90px;
	line-height: 1.1;
}
.p_graduate .column .num span:not(:first-child) {
	margin-left: 2px;
}
.p_graduate .column .cont {
	letter-spacing: -.04em;
	padding-right: .04em;
}
.p_graduate .column li.col-2 .cont {
	font-size: 180px;
}
.p_graduate .column .unit {
	font-size: 40px;
}
.p_graduate .column li.col-2 .unit {
	font-size: 80px;
}
.p_graduate .column .num .colon:not(:first-child) {
	margin-left: 13px;
}
.p_graduate .column .num .colon + .cont {
	margin-left: 13px;
}
.p_graduate .column li.home {
    display: block;
}
.p_graduate .column .map {
	position: relative;
	margin-top: 25px;
}
.p_graduate .column .map-item {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	display: flex;
	flex-flow: column;
	justify-content: center;
	width: 128px;
	height: 128px;
	background: linear-gradient(to bottom, #1D86BF,#02007C);
	color: #fff;
	border-radius: 50%;
	line-height: 1.3;
}
.p_graduate .column .circle01 {
	margin: 55px 0 0 -173px;
}
.p_graduate .column .circle02 {
	margin: -54px 0 0 -52px;
}
.p_graduate .column .circle03 {
	margin: 68px 0 0 100px;
}
.p_graduate .column .circle04 {
	margin: -48px 0 0 182px;
}
.p_graduate .column .map-title {
	font-size: 19px;
	margin-top: 21px;
	line-height: 19px;
}
.p_graduate .column .map .map-num .cont {
	font-size: 40px;
}
.p_graduate .column .map .map-num .unit {
	font-size: 30px;
}
.p_graduate .column .f70 {
	font-size: 70px;
}
.p_graduate .column .f60 {
	font-size: 60px;
}
.p_graduate .column .f50 {
	font-size: 50px;
}
.p_graduate .column .f30 {
	font-size: 30px;
}
.p_graduate .column .f20 {
	font-size: 20px;
}

@media print, screen and (min-width: 768px) {
	.p_graduate .column .pc-mt0 {
		margin-top: 0;
	}
	.p_graduate .column .pc-mb0 {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 767px) {
	.p_graduate .column {
		margin-top: 55px;
	}
	.p_graduate .column ul {
		flex-flow: column;
	}
	.p_graduate .column li {
		width: 100%;
		padding: 43px 10px 20px;
	}
	.p_graduate .column li.col-2 {
		width: 100%;
		flex-flow: column;
		align-items: center;
	}
	.p_graduate .column .title {
		margin-bottom: 25px;
		font-size: 28px;
	}
	.p_graduate .column .title span {
		font-size: 22px;
	}
	.p_graduate .column .icon {
		min-height: auto;
	}
	.p_graduate .column .icon img {
		max-height: 108px;
	}
	.p_graduate .column li.col-2 .icon {
		margin: 0;
		min-height: auto;
	}
	.p_graduate .column .num {
		margin-top: 30px;
	}
	.p_graduate .column li.col-2 .cont {
		font-size: 90px;
	}
	.p_graduate .column li.col-2 .unit {
		font-size: 40px;
	}
	.p_graduate .column .map-img img {
		width: 180px;
	}
	.p_graduate .column .map-item {
		width: 75px;
		height: 75px;
	}
	.p_graduate .column .circle01 {
		margin: 15px 0 0 -119px;
	}
	.p_graduate .column .circle02 {
		margin: -33px 0 0 -23px;
	}
	.p_graduate .column .circle03 {
		margin: 54px 0 0 58px;
	}
	.p_graduate .column .circle04 {
		margin: -17px 0 0 119px;
	}
	.p_graduate .column .map-title {
		font-size: 12px;
		margin-top: 0px;
    line-height: 12px;
	}
	.p_graduate .column .map .map-num .cont {
		font-size: 24px;
	}
	.p_graduate .column .map .map-num .unit {
		font-size: 16px;
	}
}

/*========================================================================

  living-detail

========================================================================*/

/*  living-title
========================================================================*/

.p_living-title {
	position: relative;
	color: #fff;
}
.p_living-title:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 140px);
	background: linear-gradient(to left, #1C84BE,#02007C);
}
.p_living-title .inner {
	position: relative;
	padding-top: 156px;
}
.p_living-title .column {
	display: flex;
	justify-content: space-between;
}
.p_living-title .imagebox {
	margin-right: -200px;
}
.p_living-title .textbox {
	margin-top: 139px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	line-height: 1.1;
}
.p_living-title .subtitle {
	font-size: 30px;
	font-weight: 600;
}
.p_living-title .title {
	margin-top: 5px;
	font-size: 72px;
	font-weight: 600;
}
.p_living-title .text {
	margin-top: 6px;
	font-size: 20px;
}

@media screen and (max-width: 767px) {
	.p_living-title:before {
		height: calc(100% - 123px);
	}
	.p_living-title .inner {
		padding-top: 160px;
	}
	.p_living-title .column {
		flex-flow: column;
	}
	.p_living-title .imagebox {
		margin: 40px -20px 0 0;
	}
	.p_living-title .textbox {
		margin-top: 0;
	}
	.p_living-title .subtitle {
		font-size: 20px;
	}
	.p_living-title .title {
		font-size: 50px;
	}
	.p_living-title .text {
		font-size: 14px;
	}
}

/*  living-introduction
========================================================================*/

.p_living-introduction {
	overflow: hidden;
	position: relative;
	margin-top: 100px;
}
.p_living-introduction:before {
	content: '';
	position: absolute;
	top: 60px;
	left: 0;
	width: calc(50vw + 380px);
	height: calc(100% - 60px);
	background: #F4F6FA;
}
.p_living-introduction .inner {
	position: relative;
	padding-bottom: 100px;
}
.p_living-introduction .introduction-title {
	opacity: .5;
	position: absolute;
	bottom: -60px;
	left: -220px;
	color: #fff;
	font-size: 200px;
	font-family: 'Overpass', sans-serif;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -7px;
	white-space: nowrap;
}
.p_living-introduction .column {
	display: flex;
	justify-content: space-between;
	margin-right: 60px;
	gap: 25px 40px;
}
.p_living-introduction .imagebox {
	flex: 1;
}
.p_living-introduction .imagebox .image {
	text-align: center;
}
.p_living-introduction .textbox {
	width: 504px;
	margin-top: 139px;
}
.p_living-introduction .title {
	color: #02007C;
	font-size: 40px;
	font-weight: 700;
}
.p_living-introduction .text {
	margin-top: 5px;
	font-size: 14px;
}
.p_living-introduction .list {
	margin-top: 40px;
	font-weight: 600;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	line-height: 1.1;
}
.p_living-introduction .list ul {
	display: flex;
	gap: 0 50px;
}
.p_living-introduction .list span {
	vertical-align: baseline;
}
.p_living-introduction .list .line {
	position: relative;
	padding-right: 37px;
	font-size: 22px;
}
.p_living-introduction .list .line:before {
	content: '';
	position: absolute;
	top: 9px;
	right: 8px;
	width: 22px;
	height: 1px;
	background: #707070;
}
.p_living-introduction .list .num {
	font-size: 40px;
}
.p_living-introduction .list .unit {
	font-size: 24px;
}
.p_living-introduction .scroll {
	overflow: hidden;
	margin: 80px calc(50% - 50vw) 0 0;
	width: calc(50vw + 500px);
}
.p_living-introduction .scroll ul {
	display: flex;
	animation: loopToLeft infinite linear 30s both;
}
@keyframes loopToLeft {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-1420px);
	}
}
@keyframes loopToLeftSp {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-721px);
	}
}
.p_living-introduction .scroll img {
	max-width: none;
}

@media screen and (max-width: 767px) {
	.p_living-introduction {
		margin-top: 30px;
	}
	.p_living-introduction:before {
		top: 40px;
		width: calc(100vw - 70px);
		height: calc(100% - 40px);
	}
	.p_living-introduction .inner {
		padding-bottom: 50px;
	}
	.p_living-introduction .introduction-title {
		bottom: -20px;
		left: -27px;
		font-size: 80px;
		letter-spacing: -4px;
	}
	.p_living-introduction .column {
		flex-flow: column;
		margin-right: 0;
	}
	.p_living-introduction .imagebox .image img {
		max-height: 320px;
	}
	.p_living-introduction .textbox {
		width: calc(100% - 40px);
		margin: 0 auto;
	}
	.p_living-introduction .title {
		font-size: 28px;
	}
	.p_living-introduction .text {
		margin-top: 10px;
	}
	.p_living-introduction .list {
		margin-top: 30px;
	}
	.p_living-introduction .list ul {
		gap: 0 20px;
	}
	.p_living-introduction .list .line {
		display: table;
		padding-right: 24px;
		font-size: 17px;
	}
	.p_living-introduction .list .line:before {
		top: 5px;
		right: 0;
		width: 17px;
	}
	.p_living-introduction .list .num {
		font-size: 32px;
	}
	.p_living-introduction .list .unit {
		font-size: 20px;
	}
	.p_living-introduction .scroll {
		overflow: hidden;
		margin: 50px -20px 0 0;
		width: calc(100vw - 20px);
	}
	.p_living-introduction .scroll ul {
		animation: loopToLeftSp infinite linear 30s both;
	}
	.p_living-introduction .scroll img {
		max-width: none;
		width: 721px;
	}
}

/*  living-staff
========================================================================*/

.p_living-staff {
	overflow: hidden;
	position: relative;
}
.p_living-staff:before,
.p_living-staff:after,
.p_living-staff .inner:before {
	content: '';
	position: absolute;
	z-index: 1;
	left: 50%;
	transform: translate(-50%,0);
}
.p_living-staff:before {
	width: 268px;
	height: 54px;
	top: 115px;
	margin-left: 634px;
	background-image: url(/recruit/graduate/living/assets/img/bg-staff01.png);
}
.p_living-staff:after {
	width: 484px;
	height: 68px;
	bottom: 220px;
	margin-left: -630px;
	background-image: url(/recruit/graduate/living/assets/img/bg-staff02.png);
}
.p_living-staff .inner:before {
	width: 80px;
	height: 186px;
	bottom: 280px;
	margin-left: 570px;
	background-image: url(/recruit/graduate/living/assets/img/bg-staff03.png);
}
.p_living-staff .inner {
	padding: 155px 0 140px;
}
.p_living-staff .h2-title {
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	color: #02007C;
	font-size: 72px;
	font-weight: 600;
	text-align: center;
	line-height: 1.1;
}
.p_living-staff .h2-title span {
	display: block;
	margin-top: 5px;
	color: #000;
	font-size: 20px;
}
.p_living-staff .column {
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
	margin: 30px 0 0 60px;
	gap: 28px 40px;
}
.p_living-staff .column .imagebox {
	flex: 1;
}
.p_living-staff .column .textbox {
	width: 440px;
}
.p_living-staff .column .label {
	display: inline-block;
	padding: 3px 14px;
	background: #02007C;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
}
.p_living-staff .column .name {
	margin-top: 4px;
	padding-bottom: 7px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-size: 34px;
	font-weight: 500;
	border-bottom: 1px solid rgba(0,0,0,.4);
}
.p_living-staff .column .name span {
	margin-left: 20px;
	color: #02007C;
	font-size: 16px;
	font-weight: 600;
	vertical-align: baseline;
}
.p_living-staff .column .career {
	margin: 11px 0 58px;
	font-size: 14px;
}
.p_living-staff .column .title {
	position: relative;
	margin-top: 40px;
	padding-left: 15px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-weight: 600;
	font-size: 18px;
}
.p_living-staff .column .title:before {
	content: '';
	position: absolute;
	top: 11px;
	left: 0;
	width: 6px;
	height: 6px;
	background: #02007C;
	border-radius: 50%;
}
.p_living-staff .column .text {
	margin-top: 5px;
	font-size: 14px;
}
.p_living-staff .anchor {
	margin-top: 140px;
	font-weight: 500;
}
.p_living-staff .anchor ul {
	display: flex;
	justify-content: center;
	gap: 0 60px;
}
.p_living-staff .anchor li {
	width: 220px;
}
.p_living-staff .anchor a {
	position: relative;
	display: block;
	padding-bottom: 17px;
	color: #02007C;
	font-size: 18px;
	text-decoration: none;
	border-bottom: 1px solid #02007C;
	line-height: 1.6;
}
.p_living-staff .anchor a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 20px;
	margin: auto;
	right: 0;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #02007C;
	border-right: 1px solid #02007C;
	transform: rotate(45deg);
}
.p_living-staff .anchor span {
	display: block;
	opacity: .4;
	font-size: 12px;
}

@media screen and (max-width: 767px) {
	.p_living-staff:before {
		width: 182px;
		height: 37px;
		top: 215px;
		left: -83px;
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-staff01-sp.png);
		transform: none;
	}
	.p_living-staff:after {
		display: none;
	}
	.p_living-staff .inner:before {
		width: 58px;
		height: 135px;
		bottom: auto;
		top: 660px;
		left: auto;
		right: -30px;
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-staff03-sp.png);
		transform: none;
	}
	.p_living-staff .inner {
		padding: 75px 0 24px;
	}
	.p_living-staff .h2-title {
		font-size: 56px;
	}
	.p_living-staff .h2-title span {
		margin-top: 10px;
		font-size: 18px;
	}
	.p_living-staff .column {
		flex-flow: column;
		margin: 50px 0 0 0;
	}
	.p_living-staff .column .imagebox {
		flex: 1;
		width: calc(100% - 40px);
		text-align: center;
	}
	.p_living-staff .column .image img {
		width: 100%;
		max-width: 295px;
	}
	.p_living-staff .column .textbox {
		width: 100%;
	}
	.p_living-staff .column .name {
		margin-top: 8px;
		padding-bottom: 4px;
		font-size: 26px;
	}
	.p_living-staff .column .name span {
		margin-left: 15px;
		font-size: 14px;
	}
	.p_living-staff .column .career {
		margin: 11px 0 40px;
	}
	.p_living-staff .column .title {
		margin-top: 30px;
	}
	.p_living-staff .anchor {
		margin-top: 80px;
	}
	.p_living-staff .anchor ul {
		gap: 0 15px
	}
	.p_living-staff .anchor a {
		display: flex;
		align-items: center;
		min-height: calc(2em * 1.2 + 10px);
		padding: 0 15px 10px 0;
		font-size: 16px;
		line-height: 1.2;
	}
	.p_living-staff .anchor span {
		display: none;
	}
}

/*  living-life
========================================================================*/

.p_living-life {
	position: relative;
}
.pbPage.edit .p_living-life {
	overflow: hidden;
}
.p_living-life:before,
.p_living-life:after,
.p_living-life .inner:before {
	content: '';
	position: absolute;
	z-index: 1;
	left: 50%;
	transform: translate(-50%,0);
}
.p_living-life .inner {
	padding: 100px 0 180px;
}
.p_living-life .h2-title {
	position: absolute;
	z-index: 1;
	top: 100px;
	left: calc(50% + 500px);
	color: #fff;
	font-size: 46px;
	font-weight: 600;
	line-height: 1.1;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-shadow: 0 0 12px rgba(13,56,152,.4);
}
.p_living-life .h2-title span {
	display: block;
	margin-left: 15px;
	font-size: 14px;
}
.p_living-life .top {
	width: 940px;
}
.p_living-life .top:before {
	content: '';
	position: absolute;
	top: 0;
	left: calc(50% + 100px);
	width: 600px;
	height: 600px;
	background: linear-gradient(to left bottom, #1D86BF,#02007C);
}
.p_living-life .top picture {
	position: relative;
}
.p_living-life .column {
	display: flex;
	width: 940px;
	margin-top: 20px;
	gap: 0 50px;
}
.p_living-life .column .imagebox {
	width: 430px;
}
.p_living-life .column .textbox {
	flex: 1;
	margin-top: 50px;
	padding-left: 37px;
}
.p_living-life .column .q,
.p_living-life .column .a {
	position: relative;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.6;
}
.p_living-life .column .a {
	margin-top: 45px;
}
.p_living-life .column .q:before,
.p_living-life .column .a:before {
	position: absolute;
	left: -37px;
	font-size: 28px;
	font-family: 'Overpass', sans-serif;
	font-weight: 600;
}
.p_living-life .column .q:before {
	content: 'Q.';
	color: #A5A5A5;
}
.p_living-life .column .a:before {
	content: 'A.';
	color: #27A9E3;
}
.p_living-life .column .text {
	margin-top: 20px;
}
.p_living-life .recommend {
	position: relative;
	display: flex;
	width: 940px;
	margin-top: 70px;
	padding: 60px;
	background: #F4FBFF;
	gap: 30px 40px;
}
.p_living-life .recommend .label {
	position: absolute;
	top: 0;
	left: 12px;
	padding: 2px 20px;
	background: #27A9E3;
	color: #fff;
	font-size: 14px;
	font-family: 'Overpass', sans-serif;
	font-weight: 600;
	transform: translate(0,-50%);
}
.p_living-life .recommend .imagebox {
	width: 310px;
}
.p_living-life .recommend .textbox {
	flex: 1;
}
.p_living-life .recommend .title {
	color: #27A9E3;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.6;
}
.p_living-life .recommend .text {
	margin-top: 15px;
}
.p_living-life .message {
	position: relative;
	display: flex;
	margin-top: 120px;
	padding: 60px;
	gap: 30px 55px;
	border: 1px solid #02007C;
	color: #02007C;
}
.p_living-life .message .imagebox {
	width: 340px;
}
.p_living-life .message .textbox {
	flex: 1;
}

@media screen and (max-width: 767px) {
	.p_living-life:before,
	.p_living-life:after,
	.p_living-life .inner:before {
		transform: none;
	}
	.p_living-life {
		padding-top: 56px;
	}
	.p_living-life .inner {
		padding: 80px 0 24px;
	}
	.p_living-life .h2-title {
		top: 42px;
		left: auto;
		right: 10px;
		font-size: 34px;
	}
	.p_living-life .h2-title span {
		margin-left: 10px;
		font-size: 12px;
	}
	.p_living-life .top {
		width: calc(100% + 20px);
		margin-left: -20px;
	}
	.p_living-life .top:before {
		left: 70px;
		width: calc(100% - 50px);
		height: 300px;
	}
	.p_living-life .top img {
		width: 100%;
	}
	.p_living-life .column {
		flex-flow: column;
		width: 100%;
		margin-top: 45px;
	}
	.p_living-life .column .imagebox {
		display: none;
	}
	.p_living-life .column .textbox {
		margin-top: 0;
	}
	.p_living-life .column .q,
	.p_living-life .column .a {
		font-size: 20px;
	}
	.p_living-life .column .a {
		margin-top: 25px;
	}
	.p_living-life .column .q:before,
	.p_living-life .column .a:before {
		top: -3px;
	}
	.p_living-life .column .text {
		font-size: 16px;
	}
	.p_living-life .recommend {
		flex-flow: column;
		width: 100%;
		margin-top: 50px;
		padding: 30px 25px 35px;
	}
	.p_living-life .recommend .label {
		left: 10px;
	}
	.p_living-life .recommend .imagebox,
	.p_living-life .recommend .image img {
		width: 100%;
	}
	.p_living-life .recommend .text {
		margin-top: 10px;
		font-size: 16px;
	}
	.p_living-life .message {
		flex-flow: column;
		margin-top: 50px;
		padding: 30px 25px;
	}
	.p_living-life .message .imagebox,
	.p_living-life .message .image img{
		width: 100%;
	}
	.p_living-life .message .text {
		font-size: 16px;
	}
}

/*  living
------------------------------------------------*/

.p_living-life#living .column {
	position: relative;
}
.p_living-life#living .column:after {
	content: '';
	position: absolute;
	width: 160px;
	height: 57px;
	top: 150px;
	right: -270px;
	background-image: url(/recruit/graduate/living/assets/img/bg-living01.png);
}
.p_living-life#living:before {
	width: 484px;
	height: 68px;
	top: 1199px;
	margin-left: 620px;
	background-image: url(/recruit/graduate/living/assets/img/bg-living02.png);
}
.p_living-life#living:after {
	width: 84px;
	height: 91px;
	bottom: 145px;
	margin-left: -507px;
	background-image: url(/recruit/graduate/living/assets/img/bg-living03.png);
}

@media screen and (max-width: 767px) {
	.p_living-life#living .column:after {
		width: 96px;
		height: 35px;
		top: 100%;
		right: -32px;
		background-image: url(/recruit/graduate/living/assets/img/bg-living01-sp.png);
	}
	.p_living-life#living:before {
		width: 205px;
		height: 28px;
		top: calc(100% - 10px);
		left: calc(100% - 146px);
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-living02-sp.png);
	}
	.p_living-life#living:after {
		width: 41px;
		height: 45px;
		bottom: -10px;
		left: 65px;
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-living03-sp.png);
	}
}

/*  holiday
------------------------------------------------*/

.p_living-life#holiday:before {
	width: 54px;
	height: 268px;
	top: -88px;
	margin-left: 634px;
	background-image: url(/recruit/graduate/living/assets/img/bg-holiday01.png);
}
.p_living-life#holiday:after {
	width: 196px;
	height: 113px;
	top: 1071px;
	margin-left: -615px;
	background-image: url(/recruit/graduate/living/assets/img/bg-holiday02.png);
}

@media print, screen and (min-width: 768px) {
	.p_living-life#holiday .h2-title {
		left: -80px;
	}
	.p_living-life#holiday .h2-title span {
		display: block;
		margin-left: 15px;
		font-size: 14px;
	}
	.p_living-life#holiday .top {
		margin-left: auto;
	}
	.p_living-life#holiday .top:before {
		left: -200px;
	}
	.p_living-life#holiday .column {
		margin-left: auto;
		flex-direction: row-reverse;
	}
	.p_living-life#holiday .recommend {
		margin-left: auto;
		flex-direction: row-reverse;
	}
}

@media screen and (max-width: 767px) {
	.p_living-life#holiday .h2-title {
		left: 15px;
		right: auto;
	}
	.p_living-life#holiday .top {
		margin-left: 0;
	}
	.p_living-life#holiday .top:before {
		left: -20px;
	}
	.p_living-life#holiday:before {
		display: none;
	}
	.p_living-life#holiday:after {
		width: 121px;
		height: 71px;
		top: calc(100% - 63px);
		left: 0;
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-holiday02-sp.png);
	}
}

/*  work
------------------------------------------------*/

.p_living-life#work:before {
	width: 514px;
	height: 86px;
	top: 150px;
	margin-left: -590px;
	background-image: url(/recruit/graduate/living/assets/img/bg-work01.png);
}
.p_living-life#work:after {
	width: 94px;
	height: 129px;
	top: 1155px;
	margin-left: 548px;
	background-image: url(/recruit/graduate/living/assets/img/bg-work02.png);
}

@media screen and (max-width: 767px) {
	.p_living-life#work {
		padding-bottom: 56px;
	}
	.p_living-life#work:before {
		display: none;
	}
	.p_living-life#work:after {
		width: 49px;
		height: 66px;
		top: calc(100% - 50px);
		left: calc(100% - 100px);
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-work02-sp.png);
	}
}
/*  work_shikoku
------------------------------------------------*/

.p_living-life#work_shikoku:before {
	width: 514px;
	height: 86px;
	top: 150px;
	margin-left: -590px;
}
.p_living-life#work_shikoku:after {
	width: 94px;
	height: 129px;
	top: 1155px;
	margin-left: 548px;
	background-image: url(/recruit/graduate/living/assets/img/bg-work02.png);
}

@media screen and (max-width: 767px) {
	.p_living-life#work_shikoku {
		padding-bottom: 56px;
	}
	.p_living-life#work_shikoku:before {
		display: none;
	}
	.p_living-life#work_shikoku:after {
		width: 49px;
		height: 66px;
		top: calc(100% - 50px);
		left: calc(100% - 100px);
		margin-left: 0;
		background-image: url(/recruit/graduate/living/assets/img/bg-work02-sp.png);
	}
}

/*  living-another
========================================================================*/

.c_section.living-another {
	background: #F4FBFF;
}
.p_living-another .column ul {
	display: flex;
	gap: 30px 20px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
	font-weight: 500;
}
.p_living-another .column li {
	width: 480px;
}
.p_living-another .column a {
	position: relative;
	display: block;
	padding-bottom: 55px;
	color: #02007C;
	text-decoration: none;
}
.p_living-another .column .image {
	overflow: hidden;
}
.p_living-another .column .image img {
	width: 100%;
}
@media (min-width: 768px) {
	.p_living-another .column a:hover .image img {
		transform: scale(1.1);
	}
}

.p_living-another .column .title {
	position: absolute;
	/* top: -55px; */
	width: calc(100% - 80px);
	padding: 25px;
	background: #fff;
	font-size: 34px;
	line-height: 1.2;
	transform: translate(-10px,-50%);
}

.p_living-another .column .title:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #02007C;
	border-right: 2px solid #02007C;
	transform: rotate(-45deg);
}
.p_living-another .column .title span {
	display: block;
	font-size: 14px;
}
.p_living-another .list {
	margin-top: 50px;
	font-weight: 500;
	font-size: 28px;
}
.p_living-another .list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	font-family: 'Overpass','Noto Sans JP','Noto Sans SC', sans-serif;
}
.p_living-another .list li {
	width: 480px;
}
.p_living-another .list a {
	position: relative;
	z-index: 1;
	overflow: hidden;
	display: flex;
	align-items: center;
	padding: 24px 40px 24px 25px;
	color: #02007C;
	border: 1px solid #02007C;
	text-decoration: none;
}
.p_living-another .list a:before {
	opacity: 0;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: 50%;
	z-index: -1;
	width: 120%;
	padding-top: 120%;
	background: #02007C;
	border-radius: 100%;
	transform-origin: top left;
	transform: scale(0) translate(-50%,-50%);
	transition: inherit;
}
.p_living-another .list a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 9px;
	height: 9px;
	border-bottom: 2px solid #02007C;
	border-right: 2px solid #02007C;
	transform: rotate(-45deg);
	transition: all .3s;
}
@media (min-width: 768px) {
	.p_living-another .list a:hover {
		color: #fff;
	}
	.p_living-another .list a:hover:before {
		opacity: 1;
		transform: scale(1) translate(-50%,-50%);
	}
	.p_living-another .list a:hover:after {
		border-color: #fff;
	}
}
.p_living-another .list span {
	margin-left: 15px;
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.c_section.living-another > div {
		padding: 90px 0 60px;
	}
	.p_living-another .column {
		padding: 0 20px;
	}
	.p_living-another .column ul {
		flex-flow: column;
	}
	.p_living-another .column li {
		width: 100%;
	}
	.p_living-another .column .title {
		width: calc(100% - 70px);
	}
	.p_living-another .list {
		margin-top: 40px;
		font-size: 22px;
	}
	.p_living-another .list ul {
		gap: 15px;
	}
	.p_living-another .list li {
		width: calc(50% - 15px + (15px / 2));
	}
	.p_living-another .list a {
		align-items: flex-start;
		flex-flow: column;
		padding: 12px 25px 12px 15px;
		line-height: 1.4;
	}
	.p_living-another .list a:after {
		right: 15px;
		border-width: 1px;
	}
	.p_living-another .list span {
		display: block;
		margin-left: 0;
		font-size: 12px;
	}
}

br.is-sp {
 display: none;
}
@media screen and (max-width: 767px) {
  
  br.is-sp {
   display: block;
  }
  
}

