@charset "UTF-8";

/* ========================================
  @media screen and (min-width: 768px), print
======================================== */
@media screen and (min-width: 768px),print {
.p-mv {
	margin-block: 40px -306px;
	position: relative;
}

.p-mv .p-mv__con {
	background: url(../images/recruitinfo/mv_bg.png) no-repeat top center/cover;
	margin-bottom: 74px;
	margin-inline: auto;
	padding-block: 150px 154px;
	text-align: center;
	width: min(95%, 1745px);
	border-radius: 170px;
}

.p-mv .p-mv__con .company {
	margin-bottom: 54px;
}

.p-mv .p-mv__con .en {
	margin-bottom: 75px;
}

.p-mv .p-mv__con h2 {
	background: #1D01FE;
	color: #ffffff;
	font-size: 48px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.2;
	margin-inline: auto;
	padding-inline: 28px 28px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-mv .p-mv__items {
	display: grid;
	gap: 0 28px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 106px;
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-mv .p-mv__item {
	border: 1px solid #1D01FE;
	border-radius: 50%;
	padding-block: 63px;
	text-align: center;
}

.p-mv .p-mv__item h3 {
	color: #1D01FE;
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.3125;
	margin-bottom: 14px;
	text-align: center;
}

.p-mv .p-mv__con02 {
	align-items: center;
	display: grid;
	gap: 0 9.5%;
	grid-template-columns: 49.5% 40.9%;
	margin-inline: auto;
	width: min(95%, 1050px);
}

.p-mv .p-mv__con02-left h3 {
	color: #1D01FE;
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.1785714286;
	margin-bottom: 46px;
}

.p-mv .p-mv__con02-left .txt p {
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-mv .p-mv__con02-left .txt p:not(:last-child) {
	margin-bottom: 24px;
}

.p-mv .p-mv__con02-right img {
	height: auto;
	width: 100%;
}

.p-bg {
	margin-bottom: -698px;
	text-align: center;
}

.p-bg img {

}

.c-point__en {
	margin-bottom: 36px;
}

.c-point__ttl {
	font-size: 50px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 0.82;
	margin-bottom: 56px;
}

.p-point__img {
	margin-bottom: -111px;
	position: relative;
	text-align: center;
}

.p-point01 {
	margin-bottom: 108px;
}

.l-inner.l-point {
	width: 100%;
}

.p-point__ttl-wrap {
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-point__bg {
	background: #fff;
	height: 150px;
	margin-bottom: -90px;
	position: relative;
	width: min(95%, 1280px);
}

.p-point__subtxt {
	margin-bottom: 89px;
	margin-inline: auto;
	position: relative;
	width: min(95%, 1100px);
	z-index: 1;
}

.p-point__subtxt p {
	color: #1D01FE;
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.4642857143;
}

.p-point__con {
	display: grid;
	gap: 0 6.2%;
	grid-template-columns: 37.3% 56.3%;
	margin-bottom: 120px;
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-point__con-left {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-point__con-right p {
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-point__con-right p:not(:last-child) {
	margin-bottom: 24px;
}

.p-point__line {
	background: #D1D1D1;
	height: 1px;
	margin-inline: auto;
	width: min(95%, 1280px);
}

.p-point02 {
	margin-bottom: 115px;
}

.p-work .l-inner.l-work {
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-work .c-work__en {
	margin-bottom: 10px;
	text-align: center;
}

.p-work .c-work__ttl {
	font-size: 50px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin-bottom: 13px;
	text-align: center;
}

.p-work .c-work__subttl {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.6;
	margin-bottom: 59px;
	text-align: center;
}

.p-work .p-work__items {
	display: grid;
	gap: 30px 33px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 140px;
	margin-inline: auto;
	width: min(100%, 1100px);
}

.p-work .p-work__item {
	background: #F2F2F2;
	color: #1D01FE;
	display: grid;
	padding-block: 58px 30px;
	place-items: center;
	position: relative;
	text-align: center;
}

.p-work .p-work__item:nth-child(1) p {
	font-size: 36px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4444444444;
}

.p-work .p-work__item:nth-child(1) p span {
	position: relative;
	top: 4px;
	left: 8px;
}

.p-work .p-work__item:nth-child(2) p {
	font-size: 42px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4523809524;
}

.p-work .p-work__item:nth-child(2) p strong {
	font-size: 66px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4545454545;
}

.p-work .p-work__item:nth-child(3) p {
	font-size: 38px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4473684211;
}

.p-work .p-work__item:nth-child(3) p strong {
	font-size: 71px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4366197183;
}

.p-work .p-work__item:nth-child(4) p {
	font-size: 42px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4523809524;
}

.p-work .p-work__item:nth-child(4) p span {
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4375;
	position: relative;
	top: 9px;
	left: 4px;
}

.p-work .p-work__item:nth-child(4) p span.year {
	font-size: 38px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4473684211;
	position: relative;
	top: 11px;
	left: -2px;
}

.p-work .p-work__item:nth-child(4) p img {
	margin-inline: 8px;
}

.p-work .p-work__item:nth-child(5) p {
	font-size: 42px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4523809524;
}

.p-work .p-work__item:nth-child(5) p span {
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4375;
	position: relative;
	top: 9px;
	left: 5px;
}

.p-work .p-work__item:nth-child(5) p span.year {
	font-size: 38px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4473684211;
	position: relative;
	left: -4px;
}

.p-work .p-work__item:nth-child(5) p img {
	margin-inline: 8px;
}

.p-work .p-work__item:nth-child(6) p {
	font-size: 29px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4482758621;
}

.p-work .p-work__item:nth-child(6) p small {
	display: block;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.45;
}

.p-work .p-work__item:nth-child(6) p strong {
	font-size: 46px;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4347826087;
}

.p-work .p-work__item span.top {
	background: #1D01FE;
	color: #ffffff;
	font-size: 24px;
	font-weight: 700;
	left: 0;
	letter-spacing: 0em;
	line-height: 1.4;
	padding-block: 0px;
	padding-inline: 25px;
	position: absolute;
	top: 0;
}

.p-link {
	margin-bottom: 132px;
}

.p-link .l-inner.l-link {
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-link .p-link__items {
	display: grid;
	gap: 40px 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link .p-link__item a {
	display: block;
}

/* domain
-------------------------------------*/
.p-domain .l-domain__inner {
    width: min(95%, 1100px);
    margin-inline: auto;
    padding-block: 44px 140px;
}

.p-domain .p-domain__enttl {
    padding-left: 6px;
    margin-bottom: 22px;
}

.p-domain .p-domain__ttl {
    font-weight: 400;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: 0;
    margin-bottom: 38px;
    position: relative;
    padding-left: 26px;
}

.p-domain .p-domain__ttl::before {
    background: #2ca6e0;
    content: "";
    height: 10px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
}

.p-domain .p-domain__items {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 60px 10px;
}

.p-domain .p-domain__item {
    position: relative;
}

.p-domain .p-domain__item .img {
    position: relative;
}

.p-domain .p-domain__item .wrap {
    align-items: center;
    bottom: 23px;
    display: flex;
    gap: 0 12px;
    position: absolute;
    right: 29px;
}

.p-domain .p-domain__item .wrap img {
    vertical-align: middle;
}

.p-domain .p-domain__item .arrow {
    background: #ffffff;
    border-radius: 10px;
    display: grid;
    width: 60px;
    height: 25px;
    place-content: center;
    transition: all 0.3s ease-in-out;
}

@media (any-hover: hover) {
.p-domain .p-domain__item:hover .arrow {
    background: #2ca6e0;
}

.p-domain .p-domain__item:hover .arrow svg path {
    fill: #ffffff;
}

.p-domain .p-domain__item:hover img {
    opacity: 1;
}
}


}


/* ========================================
  @media screen and (min-width:768px) and (max-width:1200px)
======================================== */
@media screen and (min-width:768px) and (max-width:1200px) {
.p-mv .p-mv__ttl {
    font-size: clamp(1.5rem, 0.833rem + 1.39vw, 1.875rem);
}
.p-mv .p-mv__photo img {
    width: 100%;
    height: auto;
}
.p-about .p-about__ttl {
    font-size: clamp(1.5rem, 1.278rem + 0.46vw, 1.625rem);
}
.p-other .p-other__item .img img {
    width: 100%;
    height: auto;
}
.p-domain .p-domain__item .img img {
    width: 100%;
    height: auto;
}
}

/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
.p-main__ttl .en.recruit img {
    width: 39.1vw;
}

.p-mv {
	margin-block: 7.246vw -114vw;
	position: relative;
}

.p-mv .p-mv__con {
	background: url(../images/recruitinfo/mv_bg_sp.png) no-repeat top center/cover;
	margin-bottom: 9.662vw;
	margin-inline: auto;
	padding-block: 4.971vw 7.246vw;
	text-align: center;
	width: min(95%, 91.7vw);
}

.p-mv .p-mv__con .company {
	margin-bottom: 6.314vw;
}

.p-mv .p-mv__con .company img {
	height: auto;
	width: 26.502vw;
}

.p-mv .p-mv__con .en {
	margin-bottom: 10.729vw;
}

.p-mv .p-mv__con .en img {
	height: auto;
	width: 52.657vw;
}

.p-mv .p-mv__con h2 {
	background: #1D01FE;
	box-decoration-break: clone;
	color: #ffffff;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 2;
	margin-inline: auto;
	padding-block: 0.2vw;
	padding-inline: 2vw 2vw;
	width: -moz-fit-content;
	width: fit-content;
	-webkit-box-decoration-break: clone;
	display: inline;
}

.p-mv .p-mv__items {
	display: flex;
	flex-wrap: wrap-reverse;
	justify-content: center;
	margin-inline: auto;
	width: min(95%, 84.333333vw);
	gap: 0 2vw;
	margin-bottom: 16vw;
}

.p-mv .p-mv__item {
	border: 1px solid #1D01FE;
	border-radius: 50%;
	padding-block: 7vw;
	text-align: center;
	width: 40.681vw;
}

.p-mv .p-mv__item.--item01 {
	order: 3;
}

.p-mv .p-mv__item.--item02 {
	order: 1;
}

.p-mv .p-mv__item.--item03 {
	order: 2;
}

.p-mv .p-mv__item h3 {
	color: #1D01FE;
	font-size: 3.14vw;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.3846153846;
	margin-bottom: 2.899vw;
	text-align: center;
}

.p-mv .p-mv__item img {
	height: auto;
	width: 21.014vw;
}

.p-mv .p-mv__con02 {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 83.5748792271vw);
}

.p-mv .p-mv__con02-left {
	display: contents;
}

.p-mv .p-mv__con02-left h3 {
	color: #1D01FE;
	font-size: 5.314vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.6363636364;
	margin-bottom: 3.797vw;
	order: 1;
}

.p-mv .p-mv__con02-left .txt {
	order: 3;
}

.p-mv .p-mv__con02-left .txt p {
	font-size: 3.623vw;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-mv .p-mv__con02-left .txt p:not(:last-child) {
	margin-bottom: 5.899vw;
}

.p-mv .p-mv__con02-right {
	margin-bottom: 4.831vw;
	order: 2;
}

.p-bg {
	margin-bottom: 43vw;
	text-align: center;
}

.p-bg img {
	height: auto;
	width: 100%;
}

.c-point__en {
	margin-bottom: 4.072vw;
}

.c-point__ttl {
	font-size: 5.314vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin-bottom: 6.246vw;
}

.p-point__img {
	margin-bottom: -25.459vw;
	position: relative;
	text-align: center;
}

.p-point01 {
	margin-bottom: 12.986vw;
}

.l-inner.l-point {
	width: 100%;
}

.p-point__ttl-wrap {
	margin-inline: auto;
	width: min(95%, 83.5vw);
}

.p-point__bg {
	background: #fff;
	height: 25.604vw;
	margin-bottom: -19.116vw;
	position: relative;
	width: min(95%, 84.54vw);
}

.p-point__subtxt {
	margin-bottom: 10.324vw;
	margin-inline: auto;
	position: relative;
	width: min(95%, 83.5vw);
	z-index: 1;
}

.p-point__subtxt p {
	color: #1D01FE;
	font-size: 4.348vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.6;
}

.p-point__con {
	display: grid;
    grid-template-columns: repeat(1,minmax(0, 1fr));
    gap: 7.246vw 0;
	margin-bottom: 14.493vw;
	margin-inline: auto;
	width: min(95%, 83.57vw);
}

.p-point__con-left {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-point__con-right p {
	font-size: 3.623vw;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-point__con-right p:not(:last-child) {
	margin-bottom: 4.831vw;
}

.p-point__line {
	background: #D1D1D1;
	height: 0.242vw;
	margin-inline: auto;
	width: min(95%, 83.57vw);
}

.p-point02 {
	margin-bottom: 12.227vw;
}

.p-work .l-inner.l-work {
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-work .c-work__en {
	margin-bottom: 4.072vw;
	text-align: center;
}

.p-work .c-work__en img {
	height: auto;
	width: 26.435vw;
}

.p-work .c-work__ttl {
	font-size: 5.314vw;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin-bottom: 3.348vw;
	text-align: center;
}

.p-work .c-work__subttl {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.6;
	margin-bottom: 8.662vw;
	text-align: center;
}

.p-work .p-work__items {
	display: grid;
	gap: 3.14vw 0px;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 19.324vw;
	margin-inline: auto;
	width: min(95%, 72.4vw);
}

.p-work .p-work__item {
	background: #F2F2F2;
	color: #1D01FE;
	display: grid;
	padding-block: 16.01vw 10.454vw;
	place-items: center;
	position: relative;
	text-align: center;
}

.p-work .p-work__item:nth-child(1) p {
	font-size: 7.488vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4444444444;
}

.p-work .p-work__item:nth-child(1) p img {
    width: 27vw;
    margin-inline: 0 4vw;
}

.p-work .p-work__item:nth-child(1) p span {
    position: relative;
    top: 1.5vw;
}


.p-work .p-work__item:nth-child(2) p {
	font-size: 8.696vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4523809524;
}

.p-work .p-work__item:nth-child(2) p strong {
	font-size: 13.768vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4545454545;
}

.p-work .p-work__item:nth-child(3) p {
	font-size: 7.729vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4473684211;
}

.p-work .p-work__item:nth-child(3) p strong {
	font-size: 14.493vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4366197183;
}

.p-work .p-work__item:nth-child(4) p {
	font-size: 10.145vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4523809524;
}

.p-work .p-work__item:nth-child(4) p span {
	font-size: 6.763vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4375;
}

.p-work .p-work__item:nth-child(4) p span.year {
	font-size: 7.971vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4473684211;
}

.p-work .p-work__item:nth-child(4) p img {
	margin-inline: 1.932vw;
	position: relative;
	top: -2vw;
	width: 10vw;
}

.p-work .p-work__item:nth-child(5) p {
	font-size: 10.145vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4523809524;
}

.p-work .p-work__item:nth-child(5) p span {
	font-size: 6.763vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4375;
}

.p-work .p-work__item:nth-child(5) p span.year {
	font-size: 7.971vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4473684211;
}

.p-work .p-work__item:nth-child(5) p img {
	margin-inline: 2.932vw;
	position: relative;
	top: -2vw;
}

.p-work .p-work__item:nth-child(6) p {
	font-size: 6.039vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4482758621;
}

.p-work .p-work__item:nth-child(6) p small {
	display: block;
	font-size: 4.106vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.45;
}

.p-work .p-work__item:nth-child(6) p strong {
	font-size: 9.42vw;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.4347826087;
}

.p-work .p-work__item span.top {
	background: #1D01FE;
	color: #ffffff;
	font-size: 4.589vw;
	font-weight: 700;
	left: 0;
	letter-spacing: 0em;
	line-height: 1.4;
	padding-block: 0vw;
	padding-inline: 5.5vw;
	position: absolute;
	top: 0;
}

.p-link {
	margin-bottom: 22.787vw;
}

.p-link .l-inner.l-link {
	margin-inline: auto;
	width: min(95%, 346px);
}

.p-link .p-link__items {
	display: grid;
	gap: 10.87vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link .p-link__item a {
	display: block;
}

.p-link .p-link__item:nth-child(1) a img {
	height: auto;
	max-width: 86.957vw;
}

/* domain
-------------------------------------*/
.p-domain .l-domain__inner {
    width: min(95%, 83.57vw);
    margin-inline: auto;
    padding-block: 3.6vw 23.91vw;
}

.p-domain .p-domain__enttl {
    padding-left: 1vw;
    margin-bottom: 2.5vw;
}

.p-domain .p-domain__enttl img {
    width: 39.2vw;
}

.p-domain .p-domain__ttl {
    font-weight: 400;
    font-size:3.623vw;
    line-height: 1.6;
    letter-spacing: 0;
    margin-bottom: 9.66vw;
    position: relative;
    padding-left: 6.5vw;
}

.p-domain .p-domain__ttl::before {
    background: #2ca6e0;
    content: "";
    height: 2.42vw;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.42vw;
}

.p-domain .p-domain__items {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 2.42vw 0;
}

.p-domain .p-domain__item {
    position: relative;
}

.p-domain .p-domain__item .img {
    position: relative;
}

.p-domain .p-domain__item .wrap {
    align-items: center;
    bottom: 3.86vw;
    display: flex;
    gap: 0 2.90vw;
    position: absolute;
    right: 3.86vw;
}

.p-domain .p-domain__item .wrap img {
    vertical-align: middle;
}

.p-domain .p-domain__item .arrow {
    background: #ffffff;
    border-radius: 2.42vw;
    display: grid;
    width: 12.80vw;
    height: 5.07vw;
    place-content: center;
    transition: all 0.3s ease-in-out;
}


}