@charset "UTF-8";


/* reset ---------------------------------------*/

div,dl,dt,dd,ul,ol,
li,h1,h2,h3,h4,h5,
h6,pre,code,form,fieldset,legend,
input,textarea,p,blockquote,
th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;word-break: break-all;font-size:inherit;width:100%;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q::before,q::after{content:'';}
abbr{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{font-size:100%;}
legend{color:#000;}
select,input,button,textarea{font-size:inherit;font-family:inherit;box-sizing: border-box;}
pre,code,kbd,samp{font-family:monospace;font-size:108%;line-height:100%;}
figure{padding:0;margin:0;}
input[type="submit"],
input[type="button"],
button {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration,
button::-webkit-search-decoration {display: none;}
input[type="submit"]::focus,
input[type="button"]::focus,
button::focus {outline-offset: -2px;}


/* base ---------------------------------------*/

*{box-sizing:border-box;}

html,body{height:100%;}

body{
	-webkit-text-size-adjust: 100%;
	padding:0;
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-feature-settings: "palt" 1;
	-webkit-font-feature-settings: "palt" 1;
	color: #000;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

a{
	text-decoration: none;
	color:inherit;
	transition: all .3s ease;
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}

a:hover{opacity: 0.5;}

img{
	vertical-align: top;
	line-height: 1;
	max-width:100%;
	height:auto;
}


/* common item ---------------------------------------*/

.clearfix::after,
.inner::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.ov-h{overflow: hidden;}
.font-montserrat {font-family: "Montserrat", sans-serif;}
.fc-blue {color: #036eb7;}


/* layout ---------------------------------------*/
.inner{
	max-width:1214px;
	margin:0 auto;
}

.overlay{display: none;}
.d-none {display: none;}


/* header ---------------------------------------*/
header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 102;
	width: 100%;
	background: rgba(255, 255, 255, 0.8);
}

.header-inner {
	position: relative;
	height: 116px;
	margin: 0 auto;
	width: 100%;
	min-width: 1214px;
	transition: transform 0.05s ease-out;
}

.header-logo {
	position: absolute;
	top: 50%;
	left: 25px;
	transform: translateY(-50%);
	max-width: 337px;
	width: 100%;
	transition: all .25s ease;
}

.header-logo img {
	width: 100%;
}


/* gnav ---------------------------------------*/
.gnav {
	position:absolute;
	top: 50%;
	right: 182px;
	transform: translateY(-50%);
}

.gnav-list {
	display: flex;
	position: relative;
}

.gnav-list::before {
	position: absolute;
	top: 60%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	width: 2px;
	height: 23px;
	background: #999;
	content: '';
}

.gnav-list > li {
	position: relative;
	padding: 0 19px;
}

.gnav-list > li::after {
	position: absolute;
	top: 60%;
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
	width: 2px;
	height: 23px;
	background: #999;
	content: '';
}

.gnav-list > li a {
	display: inline-block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.1em;
}

.header-entry {
	position: absolute;
	top: 50%;
	right: 26px;
	transform: translateY(-50%);
	width: 134px;
}

.header-entry img {
	width: 100%;
}


/* icon ---------------------------------------*/
.icon-ac {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	background: #fff;
	border-radius: 50%;
}

.icon-ac::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 22px;
	height: 22px;
	background: url('../img/icon_plus.svg') no-repeat center center / contain;
	content: '';
	transition: all .25s ease;
}

.open .icon-ac::after {
	background: url('../img/icon_minus.svg') no-repeat center center / contain;
}

.icon-window {
	display: inline-block;
	width: 18px;
	height: 18px;
	background: url('../img/icon_arrow_window.svg') no-repeat center center / contain;
	transition: all .25s ease;
}


/* recruitwrapper ---------------------------------------*/
.recruitwrapper {
	min-width: 1214px;
}


/* recruitkv ---------------------------------------*/
.recruitkv {
	position: relative;
	margin-top: 120px;
	width: 100%;
	aspect-ratio: 1920 / 938;
	margin-bottom: 100px;
	min-width: 1214px;
}

.recruitkv-image {
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: #fff;
}

.recruitkv-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.recruitkv-image .swiper-slide {
	background: #fff;
}

.recruitkv-title {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	width: 100%;
}

.recruitkv-title img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/* recruitchance ---------------------------------------*/
.recruitchance {
	margin-bottom: 200px;
}

.recruitchance-wrapper {
	background: #036eb7;
	padding: 84px 96px 100px;
	border-radius: 100px;
}

.recruitchance-head {
	margin-bottom: 74px;
}

.recruitchance-head-block {
	display: flex;
	align-items: center;
	gap: 68px;
	margin-bottom: 48px;
}

.recruitchance-head-title {
	font-size: 42px;
	font-weight: 900;
	line-height: 1.259;
	color: #fff;
	margin-top: 10px;
}

.recruitchance-head-title span {
	font-size: 54px;
	font-weight: 900;
}

.recruitchance-head-text {
	font-size: 24px;
	font-weight: 900;
	line-height: 1.5;
	color: #fff;
}

.recruitchance-head-image {
	max-width: 987px;
	width: 100%;
	margin: 0 auto 10px;
}

.recruitchance-head-image img {
	width: 100%;
}

.recruitchance-head-link {
	text-align: right;
}

.recruitchance-head-link a {
	position: relative;
	padding: 0 26px 9px 0;
	margin-right: 34px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.1;
	color: #fff;
	border-bottom: 6px dotted #fff;
}

.recruitchance-head-link a::after {
	position: absolute;
	top: 9px;
	right: 0;
	z-index: 1;
	width: 21px;
	height: 19px;
	background: url('../img/icon_arrow_link.svg') no-repeat center center;
	background-size: contain;
	content: '';
}

.recruitchance-list {
	
}

.recruitchance-list > li {
	position: relative;
}

.recruitchance-list > li + li {
	margin-top: 66px;
}

.recruitchance-list-num {
	width: 430px;
	font-size: 38px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	color: #fff;
}

.recruitchance-list-num span {
	font-size: 54px;
}

.recruitchance-list > li:nth-of-type(odd) .recruitchance-list-num {margin: 0 90px 14px auto;}
.recruitchance-list > li:nth-of-type(even) .recruitchance-list-num {margin: 0 auto 10px 94px;}


.recruitchance-list-image {
	position: absolute;
	top: -26px;
	z-index: -1;
	width: 648px;
}

.recruitchance-list > li:nth-of-type(odd) .recruitchance-list-image {left: -96px;}
.recruitchance-list > li:nth-of-type(even) .recruitchance-list-image {right: -96px;}

.recruitchance-list-image img {
	width: 100%;
}

.recruitchance-list-block {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 430px;
	height: 358px;
	background: #fff;
	border-radius: 40px;
	padding: 0 24px;
}

.recruitchance-list > li:nth-of-type(odd) .recruitchance-list-block {margin: 0 96px 0 auto;}
.recruitchance-list > li:nth-of-type(even) .recruitchance-list-block {margin: 0 auto 0 96px;}

.recruitchance-list-title {
	position: relative;
	width: 100%;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.555;
	text-align: center;
	padding-bottom: 22px;
	margin-bottom: 20px;
}

.recruitchance-list-title::after {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 4px;
	border-radius: 4px;
	background: #036eb7;
	content: '';
}

.recruitchance-list-text {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.555;
	text-align: center;
}

.recruitchance-list-text b {
	font-size: 42px;
	font-weight: 900;
	line-height: 1.2;
}


/* recruitinterview ---------------------------------------*/
.recruitinterview {
	margin-bottom: 200px;
}

.recruitinterview-head {
	position: relative;
	max-width: 1022px;
	margin: 0 auto;
	padding: 134px 0 0;
	margin: 0 auto 290px;
}

.recruitinterview-head-title {
	font-size: 54px;
	font-weight: 900;
	line-height: 1.5;
	letter-spacing: 0.1em;
	margin-bottom: 18px;
}

.recruitinterview-head-text {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
}

.recruitinterview-head-image {
	position: absolute;
	top: 0;
	left: 298px;
	z-index: -1;
	width: 1023px;
	border-radius: 100px;
	overflow: hidden;
}

.recruitinterview-head-image img {
	width: 100%;
}

.recruitinterview-list {
}

.recruitinterview-list > li {
}

.recruitinterview-list-wrapper {
	position: relative;
	z-index: 2;
	max-width: 1022px;
	margin: 0 auto 100px;
}

.recruitinterview-list-image {
	position: relative;
	z-index: 2;
	width: 532px;
}

.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-image {margin-right: auto;}
.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-image {margin-left: auto;}

.recruitinterview-list-image img {
	width: 100%;
}

.recruitinterview-list-summary {
	position: absolute;
	bottom: 24px;
	z-index: 3;
}

.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-summary {left:492px;}
.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-summary {
	right: 492px;
	text-align: right;
}

.recruitinterview-list-num {
	font-size: 38px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 6px;
}

.recruitinterview-list-num span {
	font-size: 54px;
}

.recruitinterview-list-cat {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.333;
	margin-bottom: 14px;
}

.recruitinterview-list-title {
	font-size: 36px;
	font-weight: 700;
	line-height: 1.333;
	letter-spacing: 0.06em;
	margin-bottom: 26px;
}

.recruitinterview-list-btn {
	display: inline-block;
	position: relative;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0.07em;
	color: #fff;
	padding: 10px 68px 10px 22px;
	background: #000;
	border-radius: 100px;
	transition: all .25s ease;
	cursor: pointer;
}

.recruitinterview-list-btn:hover {opacity: 0.5;}

.recruitinterview-list-detail {
	position: relative;
	z-index: 1;
	top: -148px;
	left: 0;
	margin-bottom: -56px;
}

.recruitinterview-list-detail-block {
	background: #eee;
	padding: 118px 96px 74px;
	border-radius: 100px;
}

.recruitinterview-list-detail-list {

}

.recruitinterview-list-detail-list > li {
	display: flex;
	gap: 68px;
}

.recruitinterview-list-detail-list > li + li {
	margin-top: 56px;
}

.recruitinterview-list-detail-list-summary {
	width: 508px;
}

.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-detail-list > li:nth-of-type(odd) .recruitinterview-list-detail-list-summary,
.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-detail-list > li:nth-of-type(even) .recruitinterview-list-detail-list-summary {order: 1;}
.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-detail-list > li:nth-of-type(even) .recruitinterview-list-detail-list-summary,
.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-detail-list > li:nth-of-type(odd) .recruitinterview-list-detail-list-summary {order: 2;}


.recruitinterview-list-detail-list-title {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 12px;
}

.recruitinterview-list-detail-list-text {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.667;
	text-align: justify;
}

.recruitinterview-list-detail-list-image {
	width: 446px;
}

.recruitinterview-list-detail-list-image img {
	width: 100%;
}

.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-detail-list > li:nth-of-type(odd) .recruitinterview-list-detail-list-image,
.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-detail-list > li:nth-of-type(even) .recruitinterview-list-detail-list-image {order: 2;}
.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-detail-list > li:nth-of-type(even) .recruitinterview-list-detail-list-image,
.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-detail-list > li:nth-of-type(odd) .recruitinterview-list-detail-list-image {order: 1;}

.recruitinterview-list-detail-btn {
	margin: 70px auto 0;
	width: fit-content;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	color: #fff;
	padding: 10px 74px;
	background: #000;
	border-radius: 100px;
	cursor: pointer;
	transition: all .25s ease;
}

.recruitinterview-list-detail-btn:hover {opacity: 0.5;}


/* recruitcareer ---------------------------------------*/
.recruitcareer {
	margin-bottom: 200px;
}

.recruitcareer-wrapper {
	background: #eee;
	padding: 80px 90px;
	border-radius: 100px;
}

.recruitcareer-head {
	position: relative;
	padding-left: 200px;
	margin-bottom: 18px;
}

.recruitcareer-head-block {

}

.recruitcareer-head-image {
	position: absolute;
	top: 14px;
	left: 6px;
	width: 165px;
}

.recruitcareer-head-image img {
	width: 100%;
}

.recruitcareer-head-title {
	font-size: 54px;
	font-weight: 900;
	letter-spacing: 0.1em;
	margin-bottom: 16px;
}

.recruitcareer-head-text {
	font-size: 24px;
	font-weight: 700;
}

.recruitcareer-body + .recruitcareer-body {
	margin-top: 50px;
}

.recruitcareer-body-title {
	font-size: 24px;
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0.1em;
}

.recruitcareer-body-text {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.667;
}

.recruitcareer-body-image-wrapper {
	width:100%;
	background: #fff;
	border-radius: 33px;
	padding: 48px 50px;
	margin-top: 26px;
}

.recruitcareer-body-image {
	width: 646px;
	margin: 0 auto;
}

.recruitcareer-body-image img {
	width: 100%;
}

.recruitcareer-body-subtitle {
	font-size: 20px;
	font-weight: 700;
}

.recruitcareer-body-text + .recruitcareer-body-subtitle {
	margin-top: 16px;
}


/* recruitinformation ---------------------------------------*/
.recruitinformation {
	margin-bottom: 62px;
}

.recruitinformation-wrapper {
	background: #eee;
	padding: 90px 90px;
	border-radius: 100px;
}

.recruitinformation-head {
	position: relative;
	padding-left: 200px;
	margin-bottom: 60px;
}

.recruitinformation-head-block {

}

.recruitinformation-head-image {
	position: absolute;
	top: -12px;
	left: 20px;
	width: 148px;
}

.recruitinformation-head-image img {
	width: 100%;
}

.recruitinformation-head-title {
	font-size: 54px;
	font-weight: 900;
	margin-bottom: 16px;
}

.recruitinformation-head-text {
	font-size: 24px;
	font-weight: 700;
}

.recruitinformation-body {
	display: flex;
	gap: 42px;
	background: #fff;
	padding: 42px 50px;
	border-radius: 33px;
	margin-bottom: 80px;
}

.recruitinformation-body-summary {
	width: 572px;
}

.recruitinformation-body-title {
	font-size: 36px;
	font-weight: 700;
	line-height: 1.333;
	letter-spacing: 0.1em;
	margin-bottom: 18px;
}

.recruitinformation-body-text {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.667;
}

.recruitinformation-body-text + .recruitinformation-body-text {
	margin-top: 18px;
}

.recruitinformation-body-image-wrapper {
	width: 320px;
	margin-top: 72px;
}

.recruitinformation-body-image {
	width: 100%;
	border-radius: 20px;
	overflow: hidden;
	margin-bottom: 18px;
}

.recruitinformation-body-image img {
	width: 100%;
}

.recruitinformation-body-image-wrapper b {
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.333;
	text-align: right;
	margin-bottom: -2px;
}

.recruitinformation-body-image-wrapper strong {
	display: block;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.333;
	text-align: right;
}

.recruitinformation-banner {
	display: block;
	width: 100%;
}

.recruitinformation-banner img {
	width: 100%;
}

/* recruitpagetop ---------------------------------------*/
.recruitpagetop {
	margin-bottom: 26px;
	text-align: center;
}

.recruitpagetop > a {
	display: inline-block;
	width: 80px;
}

.recruitpagetop > a > img {
	width: 100%;
}

.recruitpagetop > a > p {
	margin-top: 4px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	letter-spacing: 0;
	color: #036eb7;
}


/* footer ---------------------------------------*/
.footer {
	padding: 60px 20px 80px;
	border-top: 4px solid #036eb7;
	background: #eee;
	min-width: 1214px;
}

.footer-inner {
	display: flex;
	gap: 160px;
	max-width: 1022px;
	width: 100%;
	margin: 0 auto;
}

.footer-info {
	flex-shrink: 0;
	width: 269px;
}

.footer-logo {
	display: block;
	width: 100%;
	margin-bottom: 32px;
}

.footer-logo img {
	width: 100%;
}

.footer-info-address {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.75;
	margin-bottom: 4px;
}

.footer-info-map {
	display: inline-block;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.02em;
	margin-bottom: 16px;
}

.footer-info-map .icon-window {
	margin: 0 0 -4px 12px;
}

.footer-info-tel {
	font-size: 18px;
	font-weight: 400;
}

.footer-nav {
	flex: 1;
	position: relative;
}

.footer-nav-list {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 20px;
	padding-right: 168px;
	margin-bottom: 44px;
}

.footer-nav-list > li {
	width: 202px;
}

.footer-nav-list > li > a {
	display: inline-block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0.1em;
}

.footer-nav-entry {
	display: block;
	position: absolute;
	top: 0;
	right: 38px;
	width: 182px;
}

.footer-nav-entry img {
	width: 100%;
}

.footer-nav-menulist {
	display: flex;
	flex-wrap: wrap;
	gap: 22px 36px;
	margin-bottom: 30px;
	margin-left: 8px;
}

.footer-nav-menulist > li {

}

.footer-nav-menulist > li > a {
	display: block;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0.1em;
}

.copyright {
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	margin-left: 8px;
}


/* animation ---------------------------------------*/

.animation {
	transition: all 1.2s ease;
	transform:translate(0, 20px);
	opacity:0;
}

.animation.on {
	transform:translate(0, 0);
	opacity:1;
}


/* pc only */
@media screen and (min-width: 768px){
	.sp{display: none !important;}
	.spbr{display: none;}
}


/* small pc */
@media screen and (min-width: 768px) and (max-width: 1622px){
	.recruitinterview-head-image {
		width: calc(724px + 50vw - 50%);
	}
}

@media screen and (min-width: 768px) and (max-width: 1214px){
	.recruitinterview-head-image {
		width: 820px;
	}
}


/* sp only */
@media screen and (max-width: 767px){

	/* common item ---------------------------------------*/

	.pc{display: none !important;}
	.pcbr{display: none;}

	a:hover{opacity: 1;}

	/* layout ---------------------------------------*/

	.header-inner,
	.footer-inner,
	.inner,
	.wrapper{
		min-width: 0;
		width: 100%;
	}

	/* layout ---------------------------------------*/
	.inner{
		max-width:unset;
	}

	/* header ---------------------------------------*/
	.header-inner {
		height: calc(179 / 767 * 100vw);
	}

	.header-logo {
		top: 33.5%;
		left: 2.5%;
		max-width: unset;
		width: calc(344 / 767 * 100vw);
	}


	/* gnav ---------------------------------------*/
	.gnav {
		top: 68.5%;
		right: unset;
		left: 50%;
		transform: translateX(-50%);
	}

	.gnav-list {
		justify-content: center;
	}

	.gnav-list::before {
		top: 50%;
		width: calc(2.37 / 767 * 100vw);
		height: calc(42.5 / 767 * 100vw);
	}

	.gnav-list > li {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 calc(17 / 767 * 100vw);
	}

	.gnav-list > li::after {
		top: 50%;
		width: calc(2.37 / 767 * 100vw);
		height: calc(42.5 / 767 * 100vw);
	}

	.gnav-list > li a {
		font-size: calc(22 / 767 * 100vw);
		white-space: nowrap;
	}

	.header-entry {
		top: 32%;
		right: calc(20 / 767 * 100vw);
		width: calc(196 / 767 * 100vw);
	}


	/* icon ---------------------------------------*/
	.icon-ac {
		right: calc(12 / 767 * 100vw);
		width: calc(44.25 / 767 * 100vw);
		height: calc(44.25 / 767 * 100vw);
	}

	.icon-ac::after {
		width: calc(28.42 / 767 * 100vw);
		height: calc(28.4 / 767 * 100vw);
	}

	.icon-window {
		width: calc(27 / 767 * 100vw);
		height: calc(27 / 767 * 100vw);
	}


	/* recruitwrapper ---------------------------------------*/
	.recruitwrapper {
		min-width: unset;
	}


	/* recruitkv ---------------------------------------*/
	.recruitkv {
		position: relative;
		margin-top: calc(206 / 767 * 100vw);
		aspect-ratio: 767 / 762;
		margin-bottom: calc(80 / 767 * 100vw);
		min-width: unset;
	}


	/* recruitchance ---------------------------------------*/
	.recruitchance {
		margin-bottom: calc(180 / 767 * 100vw);
	}

	.recruitchance-wrapper {
		padding: calc(60 / 767 * 100vw) calc(60 / 767 * 100vw) calc(80 / 767 * 100vw);
		border-radius: calc(60 / 767 * 100vw);
	}

	.recruitchance-head {
		margin-bottom: calc(94 / 767 * 100vw);
	}

	.recruitchance-head-block {
		display: block;
		margin-bottom: calc(50 / 767 * 100vw);
	}

	.recruitchance-head-title {
		font-size: calc(46 / 767 * 100vw);
		margin-top: unset;
		margin-bottom: calc(18 / 767 * 100vw);
	}

	.recruitchance-head-title span {
		font-size: calc(60 / 767 * 100vw);
	}

	.recruitchance-head-text {
		font-size: calc(36 / 767 * 100vw);
	}

	.recruitchance-head-image {
		max-width: unset;
		margin: 0 auto calc(40 / 767 * 100vw);
	}

	.recruitchance-head-link {
		text-align: center;
	}

	.recruitchance-head-link a {
		padding: 0 calc(52 / 767 * 100vw) calc(16 / 767 * 100vw) 0;
		margin-right: 0;
		font-size: calc(36 / 767 * 100vw);
		border-bottom: calc(6 / 767 * 100vw) dotted #fff;
	}

	.recruitchance-head-link a::after {
		top: calc(9 / 767 * 100vw);
		width: calc(37 / 767 * 100vw);
		height: calc(34 / 767 * 100vw);
	}

	.recruitchance-list > li + li {
		margin-top: calc(66 / 767 * 100vw);
	}

	.recruitchance-list-num {
		width: unset;
		font-size: calc(57 / 767 * 100vw);
	}

	.recruitchance-list-num span {
		font-size: calc(86 / 767 * 100vw);
	}

	.recruitchance-list > li:nth-of-type(odd) .recruitchance-list-num {
		margin: 0 0 calc(8 / 767 * 100vw);
		text-align: left;
	}
	.recruitchance-list > li:nth-of-type(even) .recruitchance-list-num {
		margin: 0 0 calc(8 / 767 * 100vw) auto;
		text-align: right;
	}

	.recruitchance-list-image {
		position: unset;
		width: calc(642 / 767 * 100vw);
	}

	.recruitchance-list > li:nth-of-type(odd) .recruitchance-list-image {margin-left: calc(-60 / 767 * 100vw);}
	.recruitchance-list > li:nth-of-type(even) .recruitchance-list-image {margin: 0 calc(-60 / 767 * 100vw) 0 auto;}

	.recruitchance-list-block {
		position: relative;
		z-index: 1;
		width: calc(473 / 767 * 100vw);
		height: calc(395 / 767 * 100vw);
		border-radius: calc(36 / 767 * 100vw);
		padding: 0 calc(27 / 767 * 100vw);
	}

	.recruitchance-list > li:nth-of-type(odd) .recruitchance-list-block {margin: calc(-112 / 767 * 100vw) 0 0 auto;}
	.recruitchance-list > li:nth-of-type(even) .recruitchance-list-block {margin: calc(-112 / 767 * 100vw) auto 0 0;}

	.recruitchance-list-title {
		font-size: calc(29.7 / 767 * 100vw);
		padding-bottom: calc(22 / 767 * 100vw);
		margin-bottom: calc(20 / 767 * 100vw);
	}

	.recruitchance-list-title::after {
		height: calc(4 / 767 * 100vw);
		border-radius: calc(4 / 767 * 100vw);
	}

	.recruitchance-list-text {
		font-size: calc(24.2 / 767 * 100vw);
	}

	.recruitchance-list-text b {
		font-size: calc(50 / 767 * 100vw);
	}


	/* recruitinterview ---------------------------------------*/
	.recruitinterview {
		margin-bottom: calc(200 / 767 * 100vw);
	}

	.recruitinterview-head {
		max-width: unset;
		padding: 0;
		margin: 0 auto calc(100 / 767 * 100vw);
	}

	.recruitinterview-head-title {
		font-size: calc(60 / 767 * 100vw);
		margin-bottom: calc(2 / 767 * 100vw);
		padding: 0 calc(60 / 767 * 100vw);
	}

	.recruitinterview-head-text {
		font-size: calc(36 / 767 * 100vw);
		padding: 0 calc(60 / 767 * 100vw);
		margin-bottom: calc(22 / 767 * 100vw);
	}

	.recruitinterview-head-image {
		position: unset;
		width: 100%;
		border-radius: unset;
	}

	.recruitinterview-list-wrapper {
		max-width: unset;
		margin: 0 auto calc(100 / 767 * 100vw);
	}

	.recruitinterview-list-image {
		width: calc(532 / 767 * 100vw);
		margin: 0 auto calc(18 / 767 * 100vw);
	}

	.recruitinterview-list-summary {
		position: unset;
	}

	.recruitinterview-list > li:nth-of-type(odd) .recruitinterview-list-summary,
	.recruitinterview-list > li:nth-of-type(even) .recruitinterview-list-summary {text-align: center;}

	.recruitinterview-list-num {
		font-size: calc(58 / 767 * 100vw);
		margin-bottom: calc(2 / 767 * 100vw);
	}

	.recruitinterview-list-num span {
		font-size: calc(86 / 767 * 100vw);
	}

	.recruitinterview-list-cat {
		font-size: calc(27 / 767 * 100vw);
		margin-bottom: calc(24 / 767 * 100vw);
	}

	.recruitinterview-list-title {
		font-size: calc(46.8 / 767 * 100vw);
		margin-bottom: calc(34 / 767 * 100vw);
	}

	.recruitinterview-list-btn {
		font-size: calc(31.2 / 767 * 100vw);
		padding: calc(12 / 767 * 100vw) calc(90 / 767 * 100vw) calc(16 / 767 * 100vw) calc(28 / 767 * 100vw);
		border-radius: calc(100 / 767 * 100vw);
		width: fit-content;
		margin: 0 auto;
	}

	.recruitinterview-list-btn:hover {opacity: 1;}

	.recruitinterview-list-detail {
		top: calc(-132 / 767 * 100vw);
		margin-bottom: calc(-32 / 767 * 100vw);
	}

	.recruitinterview-list-detail-block {
		padding: calc(72 / 767 * 100vw) calc(60 / 767 * 100vw) calc(60 / 767 * 100vw);
		border-radius: calc(60 / 767 * 100vw);
	}

	.recruitinterview-list-detail-list {

	}

	.recruitinterview-list-detail-list > li {
		display: block;
	}

	.recruitinterview-list-detail-list > li + li {
		margin-top: calc(76 / 767 * 100vw);
	}

	.recruitinterview-list-detail-list-summary {
		width: 100%;
		margin: 0 auto calc(40 / 767 * 100vw);
	}

	.recruitinterview-list-detail-list-title {
		font-size: calc(36 / 767 * 100vw);
		margin-bottom: calc(14 / 767 * 100vw);
	}

	.recruitinterview-list-detail-list-text {
		font-size: calc(27 / 767 * 100vw);
	}
	
	.recruitinterview-list-detail-list-image {
		width: calc(535 / 767 * 100vw);
		margin: 0 auto;
	}

	.recruitinterview-list-detail-btn {
		margin: calc(82 / 767 * 100vw) auto 0;
		font-size: calc(31.2 / 767 * 100vw);
		padding: calc(12 / 767 * 100vw) calc(94 / 767 * 100vw) calc(16 / 767 * 100vw);
		border-radius: calc(100 / 767 * 100vw);
	}


	/* recruitcareer ---------------------------------------*/
	.recruitcareer {
		margin-bottom: calc(200 / 767 * 100vw);
	}

	.recruitcareer-wrapper {
		padding: calc(50 / 767 * 100vw) calc(60 / 767 * 100vw) calc(70 / 767 * 100vw);
		border-radius: calc(60 / 767 * 100vw);
	}

	.recruitcareer-head {
		padding-left: unset;
		margin-bottom: calc(30 / 767 * 100vw);
	}

	.recruitcareer-head-block {
		display: flex;
		align-items: center;
		gap: calc(26 / 767 * 100vw);
		margin-bottom: calc(18 / 767 * 100vw);
	}

	.recruitcareer-head-image {
		position: unset;
		width: calc(118 / 767 * 100vw);
	}

	.recruitcareer-head-title {
		font-size: calc(60 / 767 * 100vw);
		margin-bottom: unset;
	}

	.recruitcareer-head-text {
		font-size: calc(36 / 767 * 100vw);
	}

	.recruitcareer-body + .recruitcareer-body {
		margin-top: calc(40 / 767 * 100vw);
	}

	.recruitcareer-body-title {
		font-size: calc(36 / 767 * 100vw);
	}

	.recruitcareer-body-text {
		font-size: calc(27 / 767 * 100vw);
	}

	.recruitcareer-body-image-wrapper {
		border-radius: calc(20 / 767 * 100vw);
		padding: calc(50 / 767 * 100vw) calc(10 / 767 * 100vw) calc(54 / 767 * 100vw);
		margin-top: calc(32 / 767 * 100vw);
	}

	.recruitcareer-body-image {
		width: calc(609 / 767 * 100vw);
		margin: 0 auto 0 0;
	}

	.recruitcareer-body-subtitle {
		font-size: calc(30 / 767 * 100vw);
	}

	.recruitcareer-body-text + .recruitcareer-body-subtitle {
		margin-top: calc(20 / 767 * 100vw);
	}


	/* recruitinformation ---------------------------------------*/
	.recruitinformation {
		margin-bottom: calc(100 / 767 * 100vw);
	}

	.recruitinformation-wrapper {
		padding: calc(56 / 767 * 100vw) calc(60 / 767 * 100vw) calc(66 / 767 * 100vw);
		border-radius: calc(60 / 767 * 100vw);
	}

	.recruitinformation-head {
		padding-left: unset;
		margin-bottom: calc(52 / 767 * 100vw);
	}

	.recruitinformation-head-block {
		display: flex;
		align-items: center;
		gap: calc(30 / 767 * 100vw);
		margin-bottom: calc(20 / 767 * 100vw);
	}

	.recruitinformation-head-image {
		position: unset;
		width: calc(106 / 767 * 100vw);
		margin-left: calc(8 / 767 * 100vw);
	}

	.recruitinformation-head-title {
		font-size: calc(60 / 767 * 100vw);
		margin-bottom: unset;
	}

	.recruitinformation-head-text {
		font-size: calc(36 / 767 * 100vw);
	}

	.recruitinformation-body {
		display: block;
		padding: calc(48 / 767 * 100vw) calc(54 / 767 * 100vw) calc(34 / 767 * 100vw);
		border-radius: calc(20 / 767 * 100vw);
		margin-bottom: calc(104 / 767 * 100vw);
	}

	.recruitinformation-body-summary {
		width: 100%;
	}

	.recruitinformation-body-title {
		font-size: calc(46 / 767 * 100vw);
		margin-bottom: calc(30 / 767 * 100vw);
	}

	.recruitinformation-body-text {
		font-size: calc(27 / 767 * 100vw);
	}

	.recruitinformation-body-text + .recruitinformation-body-text {
		margin-top: calc(24 / 767 * 100vw);
	}

	.recruitinformation-body-image-wrapper {
		width: calc(480 / 767 * 100vw);
		margin: calc(28 / 767 * 100vw) auto calc(18 / 767 * 100vw);
	}

	.recruitinformation-body-image {
		border-radius: calc(20 / 767 * 100vw);
		margin-bottom: calc(20 / 767 * 100vw);
	}

	.recruitinformation-body-image-wrapper b {
		font-size: calc(27 / 767 * 100vw);
		margin-bottom: calc(-4 / 767 * 100vw);
	}

	.recruitinformation-body-image-wrapper strong {
		font-size: calc(45 / 767 * 100vw);
	}


	/* recruitpagetop ---------------------------------------*/
	.recruitpagetop {
		margin-bottom: calc(24 / 767 * 100vw);
	}

	.recruitpagetop > a {
		width: calc(82 / 767 * 100vw);
	}

	.recruitpagetop > a > p {
		margin-top: calc(2 / 767 * 100vw);
		font-size: calc(15 / 767 * 100vw);
	}


	/* footer ---------------------------------------*/
	.footer {
		padding: calc(60 / 767 * 100vw) calc(60 / 767 * 100vw) calc(80 / 767 * 100vw);
		border-top: calc(4 / 767 * 100vw) solid #036eb7;
		min-width: unset;
	}

	.footer-inner {
		display: block;
		max-width: unset;
	}

	.footer-info {
		width: 100%;
		margin-bottom: calc(46 / 767 * 100vw);
	}

	.footer-logo {
		width: calc(398 / 767 * 100vw);
		margin-bottom: calc(24 / 767 * 100vw);
	}

	.footer-info-address {
		font-size: calc(28 / 767 * 100vw);
		line-height: 1.426;
		margin-bottom: calc(4 / 767 * 100vw);
	}

	.footer-info-map {
		font-size: calc(28 / 767 * 100vw);
		margin-bottom: calc(8 / 767 * 100vw);
	}

	.footer-info-map .icon-window {
		margin: 0 0 calc(-4 / 767 * 100vw) calc(12 / 767 * 100vw);
	}

	.footer-info-tel {
		font-size: calc(28 / 767 * 100vw);
	}

	.footer-nav {
		width: 100%;
	}

	.footer-nav-list {
		gap: calc(20 / 767 * 100vw) calc(36 / 767 * 100vw);
		padding-right: unset;
		margin-bottom: calc(30 / 767 * 100vw);
	}

	.footer-nav-list > li {
		width: unset;
	}

	.footer-nav-list > li > a {
		font-size: calc(28 / 767 * 100vw);
	}

	.footer-nav-entry {
		position: unset;
		width: calc(232 / 767 * 100vw);
		margin-bottom: calc(54 / 767 * 100vw);
	}

	.footer-nav-menulist {
		gap: calc(28 / 767 * 100vw) calc(34 / 767 * 100vw);
		margin-bottom: calc(56 / 767 * 100vw);
		margin-left: unset;
	}

	.footer-nav-menulist > li > a {
		font-size: calc(24 / 767 * 100vw);
	}

	.copyright {
		font-size: calc(24 / 767 * 100vw);
		margin-left: unset;
	}


}




/* iphone5 iphoneSE用 */
@media screen and (max-width: 370px){

}