@charset "UTF-8";


/***************************************************

	共通コンテンツ部

***************************************************/

@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700;800;900&family=Noto+Sans+JP:wght@100..900&family=Prompt:wght@400;500;600;700&display=swap');

:root {
	--text: #000;
	--text2: #29b8e3;
	--color1: #000;
	--color2: #29b8e3;
}

html, body{margin:0; padding:0}

body{
	position: relative;
	font-size: 16px;
	font-weight: 400;
	color: var(--text);
	line-height: 1.8;
	letter-spacing: 0.04em;
	font-family: "Noto Sans JP", sans-serif;

	word-wrap: break-word;
	word-break: break-all;

}

.en{
	font-family: "Prompt", sans-serif;
}

.num{
    font-family: "Barlow", sans-serif;
}

a{
	text-decoration: none;
	transition: all 0.2s linear;
}

a:hover{
	opacity: 0.8;
}

img{
	max-width: 100%;
	height: auto;
}

.pc-on{display: block;}
.sp-on{display: none;}

.grecaptcha-badge{ visibility: hidden; }

.wrapper{
	width: 960px;
	margin: 0 auto;
	position: relative;
}

/* --------- ヘッダー ---------- */

header{
	width: 100%;
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    z-index: 99;
}

header .logo_box{
	width: 310px;
	height: 90px;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}

header .logo_box .logo_wrapp{
	width: 244px;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

header .header_menu{
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
}

header .header_menu .menu_wrapp{
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;
    line-height: 1;
	padding: 36px 0 36px 36px;
	position: relative;
	z-index: 2;
}

header.scroll .header_menu .menu_wrapp{
	background: rgba(0, 0, 0, 0.3);
}

header .header_menu .menu_wrapp .area_block{


}

header .header_menu .menu_wrapp .area_block.block02{
    width: 350px;
	padding-right: 54px;
    box-sizing: border-box;
}

header .header_menu .menu_wrapp .area_block.block02::after{

}


header .header_menu .menu_wrapp .area_block ul{
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;
}

header .header_menu .menu_wrapp .area_block.block02 ul{
	border-left: 1px solid var(--text2);
}

header .header_menu .menu_wrapp .area_block ul li{
	margin-right: 33px;
}

header .header_menu .menu_wrapp .area_block.block01 ul li:last-child{
	margin-right: 40px;
}

header .header_menu .menu_wrapp .area_block ul li a{
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.04em;
}

header .header_menu .menu_wrapp .area_block.block02 ul li a{
	color: var(--text2);
	padding-right: 21px;
	position: relative;
}

header .header_menu .menu_wrapp .area_block.block02 ul li a::after{
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_menu_arrow.png');
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}




/*------- フッター -------*/

footer{
    background: rgba(0, 0, 0, 0.7);
    margin-top: 160px;
    position: relative;
}

footer::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    background-image: url('../images/common/footer_bg.webp');
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

footer .footer_wrapp{
	width: 960px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    line-height: 1;
}

footer .footer_wrapp .link_area{
	width: 520px;
	background: #fff;
	padding: 48px 0px 65px 64px;
	box-sizing: border-box;
}

footer .footer_wrapp .link_area .logo{
	width: 240px;
	margin-bottom: 40px;
}

footer .footer_wrapp .link_area > ul{
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}

footer .footer_wrapp .link_area > ul > li{
	margin: 0 85px 35px 0;
}

footer .footer_wrapp .link_area > ul > li:nth-child(4),
footer .footer_wrapp .link_area > ul > li:nth-child(2){
	margin-right: 0;
}

footer .footer_wrapp .link_area > ul > li:nth-child(4),
footer .footer_wrapp .link_area > ul > li:nth-child(3){
	margin-bottom: 0;
}

footer .footer_wrapp .link_area > ul > li a{
	color: var(--text);
}

footer .footer_wrapp .link_area > ul > li > a{
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
}

footer .footer_wrapp .link_area > ul > li > ul{
	margin-top: 8px;
}

footer .footer_wrapp .link_area > ul > li > ul li{

}

footer .footer_wrapp .link_area > ul > li > ul li a{
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.04em;
}

footer .footer_wrapp .other_area{
	width: calc(100% - 520px);
	padding: 40px 0 0 40px;
	position: relative;
	box-sizing: border-box;
}

footer .footer_wrapp .other_area .contact_area{

}

footer .footer_wrapp .other_area .contact_area ul{
	width: 400px;
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    border: 1px solid #fff;
}

footer .footer_wrapp .other_area .contact_area ul li{
	width: 50%;
	box-sizing: border-box;
}

footer .footer_wrapp .other_area .contact_area ul li:first-child{
    border-right: 1px solid #fff;
}

footer .footer_wrapp .other_area .contact_area ul li a{
	display: block;
	height: 120px;
	position: relative;
	color: #fff;
}

footer .footer_wrapp .other_area .contact_area ul li a:hover{
	background: #fff;
	color: var(--text);
	opacity: 1;
}

footer .footer_wrapp .other_area .contact_area ul li a strong{
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	padding-right: 46px;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}

footer .footer_wrapp .other_area .contact_area ul li a strong::after{
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    background-image: url(../images/common/icon_menu_arrow.png);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transition: all 0.2s linear;
}

footer .footer_wrapp .other_area .contact_area ul li a:hover strong::after{
    background-image: url(../images/common/icon_link_arrow.png);
}

footer .footer_wrapp .other_area .privacy_area{
    position: absolute;
    bottom: 40px;
    left: 40px;
}

footer .footer_wrapp .other_area .privacy_area ul{
	display: flex;
	margin-bottom: 18px;
}

footer .footer_wrapp .other_area .privacy_area ul li:first-child{
	padding-right: 20px;
	border-right: 1px solid #fff;
}

footer .footer_wrapp .other_area .privacy_area ul li:last-child{
	padding-left: 20px;
}

footer .footer_wrapp .other_area .privacy_area ul li a{
	font-size: 12px;
	line-height: 1.8;
	color: #fff;
	letter-spacing: 0.04em;
}

footer .footer_wrapp .other_area .copyright{
	font-size: 12px;
	letter-spacing: 0.04em;
	color: #fff;
}




/*------- コンテンツ -------*/

main{
    position: relative;
}

.fade01{
	transition: all 0.6s linear;
	opacity: 0;
	filter: blur(30px);
}

.active .fade01{
	opacity: 1;
	filter: blur(0);
}


#page_head{
	width: 100%;
	height: 500px;
	margin-bottom: 160px;
	background: rgba(0,0,0,.6);
	position: relative;
}

#page_head::before{
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	background-image: url('../images/common/page_header_bg.webp');
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

#page_head::after{
	content: '';
	display: block;
	width: 1050px;
	height: 120px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
	background-image: url('../images/common/page_header_bottom.png');
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}

#page_head .head_text{
	width: 960px;
	margin: auto;
	position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translate(0, -50%);
    white-space: nowrap;
    color: #fff;
}

#page_head .head_text h1{
	line-height: 1;
}

#page_head .head_text h1 strong{
	display: block;
	font-size: 60px;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-bottom: 22px;
}

#page_head .head_text h1 small{
	display: block;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.04em;
}

#breadcrumbs{
	width: 960px;
	margin: auto;
	position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    white-space: nowrap;
    text-align: right;
    z-index: 5;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;
}

#breadcrumbs a,
#breadcrumbs span{
	display: inline-block;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.04em;
	color: var(--text);
	text-decoration: none;
}

#breadcrumbs a:hover{
	text-decoration: underline;
}

#breadcrumbs span.arrow{
	width: 12px;
	height: 12px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_breadcrumbs.png');
	position: relative;
}

.content_wrapp{
	width: 960px;
	margin: 0 auto;
	box-sizing: border-box;
}


.rec_link{
	padding: 80px 0;
	background: #f2f2f2;
}

.rec_link .link_wrapp{
	width: 960px;
	margin: 0 auto;
}

.rec_link .link_wrapp .catch{
	font-size: 22px;
	font-weight:700;
	line-height: 1.8;
	letter-spacing: 0.04em;
	margin-bottom: 40px;
}

.rec_link a{
	display: block;
	width: 100%;
	height: 200px;
	color: #fff;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
	background-image: url('../images/top/recruit_link_bg.png');
	position: relative;
}

.webp .rec_link a{
	background-image: url('../images/top/recruit_link_bg.webp');
}

.rec_link a::after{
	content: '';
	display: inline-block;
	width: 66px;
	height: 66px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
	background-image: url('../images/top/top_recruit_btn.png');
	position: absolute;
    bottom: 0;
    right: 0;
}

.rec_link strong{
	font-size: 44px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.1em;
	position: absolute;
    top: 50%;
    left: 84px;
	transform: translate(0, -50%);
}



/*------- 404 -------*/

.error404 #page_head::before {
    background-image: url('../images/common/n404_page_header_bg.webp');
}

#page_head .head_text h1 strong.n404{
    font-size: 180px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.06em;
}

#page_head .head_text h1 small.n404{
    font-size: 40px;
    letter-spacing: 0.1em;
    line-height: 1;
}

.n404_wrapp{
	width: 960px;
	margin: 0 auto;
}

.n404_wrapp .caption{
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.04em;
	margin-bottom: 64px;
}

.n404_wrapp .toback{

}

.n404_wrapp .toback a{
	display: inline-block;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	color: var(--text);
	letter-spacing: 0.04em;
	padding-left: 32px;
	position: relative;
}

.n404_wrapp .toback a::before{
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    background-image: url(../images/common/icon_link.png);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: scale(-1, 1);
}




/********************************************************************************
	リッキド用 CSS
********************************************************************************/

@media(max-width:1440px){


body{
	font-size: 1.111111vw;
}

.wrapper{
	width: 66.666667vw;
}

/* --------- ヘッダー ---------- */

header{

}

header .logo_box{
	width: 21.527778vw;
	height: 6.25vw;
}

header .logo_box .logo_wrapp{
	width: 16.944444vw;
}

header .header_menu .menu_wrapp{
    padding: 2.5vw 0 2.5vw 2.5vw;
}

header .header_menu .menu_wrapp .area_block.block02{
    width: 24.305556vw;
	padding-right: 3.75vw;
}

header .header_menu .menu_wrapp .area_block ul li{
	margin-right: 2.291667vw;
}

header .header_menu .menu_wrapp .area_block.block01 ul li:last-child{
	margin-right: 2.777778vw;
}

header .header_menu .menu_wrapp .area_block ul li a{
	font-size: 1.25vw;
}

header .header_menu .menu_wrapp .area_block.block02 ul li a{
	padding-right: 1.458333vw;
}

header .header_menu .menu_wrapp .area_block.block02 ul li a::after{
	width: 1.666667vw;
	height: 1.666667vw;
}




/*------- フッター -------*/

footer{
    margin-top: 11.111111vw;
}

footer .footer_wrapp{
	width: 66.666667vw;
}

footer .footer_wrapp .link_area{
	width: 36.111111vw;
	padding: 3.333333vw 0px 4.513889vw 4.444444vw;
}

footer .footer_wrapp .link_area .logo{
	width: 16.666667vw;
	margin-bottom: 2.777778vw;
}

footer .footer_wrapp .link_area > ul > li{
	margin: 0 5.902778vw 2.430556vw 0;
}

footer .footer_wrapp .link_area > ul > li > a{
	font-size: 1.388889vw;
}

footer .footer_wrapp .link_area > ul > li > ul{
	margin-top: 0.555556vw;
}

footer .footer_wrapp .link_area > ul > li > ul li a{
	font-size: 0.972222vw;
}

footer .footer_wrapp .other_area{
	width: calc(100% - 36.111111vw);
	padding: 2.777778vw 0 0 2.777778vw;
}

footer .footer_wrapp .other_area .contact_area ul{
	width: 27.777778vw;
}

footer .footer_wrapp .other_area .contact_area ul li a{
	height: 8.333333vw;
}

footer .footer_wrapp .other_area .contact_area ul li a strong{
	font-size: 1.388889vw;
	padding-right: 3.194444vw;
}

footer .footer_wrapp .other_area .contact_area ul li a strong::after{
    width: 1.666667vw;
    height: 1.666667vw;
}

footer .footer_wrapp .other_area .privacy_area{
    bottom: 2.777778vw;
    left: 2.777778vw;
}

footer .footer_wrapp .other_area .privacy_area ul{
	margin-bottom: 1.25vw;
}

footer .footer_wrapp .other_area .privacy_area ul li:first-child{
	padding-right: 1.388889vw;
}

footer .footer_wrapp .other_area .privacy_area ul li:last-child{
	padding-left: 1.388889vw;
}

footer .footer_wrapp .other_area .privacy_area ul li a{
	font-size: 0.833333vw;
}

footer .footer_wrapp .other_area .copyright{
	font-size: 0.833333vw;
}



/*------- コンテンツ -------*/

#page_head{
	height: 34.722222vw;
	margin-bottom: 11.111111vw;
}

#page_head::after{
	width: 72.916667vw;
	height: 8.333333vw;
}

#page_head .head_text{
	width: 66.666667vw;
}

#page_head .head_text h1 strong{
	font-size: 4.166667vw;
	margin-bottom: 1.527778vw;
}

#page_head .head_text h1 small{
	font-size: 1.527778vw;
}

#breadcrumbs{
	width: 66.666667vw;
}

#breadcrumbs a,
#breadcrumbs span{
	font-size: 0.833333vw;
}

#breadcrumbs span.arrow{
	width: 0.833333vw;
	height: 0.833333vw;
}

.content_wrapp{
	width: 66.666667vw;
}


.rec_link{
	padding: 5.555556vw 0;
}

.rec_link .link_wrapp{
	width: 66.666667vw;
}

.rec_link .link_wrapp .catch{
	font-size: 1.527778vw;
	margin-bottom: 2.777778vw;
}

.rec_link a{
	height: 13.888889vw;
}

.rec_link a::after{
	width: 4.583333vw;
	height: 4.583333vw;
}

.rec_link strong{
	font-size: 3.055556vw;
    left: 5.833333vw;
}




/*------- 404 -------*/

#page_head .head_text h1 strong.n404{
    font-size: 12.5vw;
}

#page_head .head_text h1 small.n404{
    font-size: 2.777778vw;
}

.n404_wrapp{
	width: 66.666667vw;
}

.n404_wrapp .caption{
	font-size: 1.111111vw;
	margin-bottom: 4.444444vw;
}

.n404_wrapp .toback a{
	font-size: 0.972222vw;
	padding-left: 2.222222vw;
}

.n404_wrapp .toback a::before{
    width: 1.666667vw;
    height: 1.666667vw;
}


}


/********************************************************************************
	スマートフォン用 CSS
********************************************************************************/

@media(max-width:750px){

body{
	font-size: 3.733333vw;
}

.pc-on{display: none;}
.sp-on{display: block;}


.wrapper{
	width: auto;
}

/* --------- ヘッダー ---------- */

header{
	display: block;
	height: 16vw;
	background: #fff;
	position: fixed;
	border-bottom: 1px solid #ddd;
}

header .logo_box{
	width: auto;
	height: 16vw;
}

header .logo_box .logo_wrapp{
	width: 40.533333vw;
    left: 4.266667vw;
    transform: translate(0, -50%);
}

header .header_menu {
    position: static;
}

header .header_menu .menu_btn{
	width: 16vw;
	height: 16vw;
	border-left: 1px solid #ddd;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 50;
	background: #fff;
	transition: all 0.2s linear;
}

header .header_menu .menu_btn.active{
	background: #000;
}

header .header_menu .menu_btn::after{
	content: '';
	display: inline-block;
	width: 8.533333vw;
	height: 8.533333vw;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/sp_menu_btn.png');
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.2s linear;
}

header .header_menu .menu_btn.active::after{
	background-image: url('../images/common/sp_menu_btn_active.png');
}

header .header_menu .menu_wrapp{
	display: block;
	width: 78.666667vw;
	height: 100dvh;
	background: rgba(0,0,0,0.8);
    padding: 10.666667vw 0 0;
    box-sizing: border-box;
	position: fixed;
	top: 16vw;
	right: -78.666667vw;
	z-index: 99;
	transition: all 0.2s linear;
}

header.scroll .header_menu .menu_wrapp {
    background: rgba(0, 0, 0, 0.8);
}

header .header_menu .menu_wrapp.open{
	right: 0;
}

header .header_menu .menu_wrapp .area_block{


}

header .header_menu .menu_wrapp .area_block.block02{
    width: auto;
	padding: 11.733333vw 0 0;
	border-top: 1px solid rgba(255,255,255,0.4);
}

header .header_menu .menu_wrapp .area_block.block02::after{

}


header .header_menu .menu_wrapp .area_block ul{
	display: block;
	margin-left: 8.533333vw;
}

header .header_menu .menu_wrapp .area_block.block02 ul{
	border-left: none;
}

header .header_menu .menu_wrapp .area_block ul li{
	margin: 0 0 11.2vw;
}

header .header_menu .menu_wrapp .area_block.block01 ul li:last-child{
	margin-right: 0;
}

header .header_menu .menu_wrapp .area_block ul li a{
	font-size: 5.333333vw;
	letter-spacing: 0.1em;
}

header .header_menu .menu_wrapp .area_block.block02 ul li a{
	padding-right: 5.333333vw;
}

header .header_menu .menu_wrapp .area_block.block02 ul li a::after{
	width: 6.4vw;
	height: 6.4vw;
}




/*------- フッター -------*/

footer{
    margin-top: 0;
	border-top: 1px solid #ddd;
	background: transparent;
}

footer::before {
    background-image: url('../images/common/footer_bg_sp.webp');
}

footer .footer_wrapp{
	width: auto;
	display: block;
}

footer .footer_wrapp .link_area{
	width: auto;
	padding: 17.066667vw 5.333333vw 17.333333vw;
}

footer .footer_wrapp .link_area .logo{
	width: 42.666667vw;
	margin-bottom: 10.666667vw;
}

footer .footer_wrapp .link_area > ul > li{
	width: 50%;
	margin: 0 0 6.666667vw;
}

footer .footer_wrapp .link_area > ul > li > a{
	font-size: 4.266667vw;
}

footer .footer_wrapp .link_area > ul > li > ul{
	display: none;
}


footer .footer_wrapp .other_area{
	width: auto;
	padding: 10.666667vw 5.333333vw 9.6vw;
}

footer .footer_wrapp .other_area .contact_area ul{
	width: 100%;
}

footer .footer_wrapp .other_area .contact_area ul li a{
	height: 26.666667vw;
}

footer .footer_wrapp .other_area .contact_area ul li a:hover{
	background: transparent;
	color: #fff;
	opacity: 1;
}

footer .footer_wrapp .other_area .contact_area ul li a strong{
	font-size: 5.333333vw;
	padding: 0 0 10.133333vw;
}

footer .footer_wrapp .other_area .contact_area ul li a strong::after{
    width: 24px;
    height: 24px;
    top: unset;
    bottom: 0;
    left: 0;
    right: 0;
}

footer .footer_wrapp .other_area .contact_area ul li a:hover strong::after{
    background-image: url(../images/common/icon_menu_arrow.png);
}

footer .footer_wrapp .other_area .privacy_area{
    position: static;
    margin-top: 8vw;
}

footer .footer_wrapp .other_area .privacy_area ul{
	margin-bottom: 4.8vw;
}

footer .footer_wrapp .other_area .privacy_area ul li:first-child{
	padding-right: 5.333333vw;
}

footer .footer_wrapp .other_area .privacy_area ul li:last-child{
	padding-left: 5.333333vw;
}

footer .footer_wrapp .other_area .privacy_area ul li a{
	font-size: 3.2vw;
}

footer .footer_wrapp .other_area .copyright{
	font-size: 3.2vw;
}








/*------- コンテンツ -------*/

main{
    padding-top: 16vw;
}


#page_head{
	height: 67.2vw;
	margin-bottom: 20vw;
}

#page_head::before{
	background-image: url('../images/common/page_header_bg_sp.webp');
}

#page_head::after{
	width: 49.866667vw;
	height: 10.666667vw;
	background-image: url('../images/common/page_header_bottom_sp.png');
	bottom: -1px
}

#page_head .head_text{
	width: auto;
    left: 10.666667vw;
}

#page_head .head_text h1 strong{
	font-size: 12.8vw;
	margin-bottom: 4.8vw;
}

#page_head .head_text h1 small{
	font-size: 4.8vw;
}

#breadcrumbs{
	display: block;
	width: auto;
	bottom: unset;
	top: 69.333333vw;
    right: 5.333333vw;
    left: 5.333333vw;
    white-space: unset;
}

#breadcrumbs a,
#breadcrumbs span{
	font-size: 2.666667vw;
	line-height: 1.4;
}

#breadcrumbs span.arrow{
	width: 3.2vw;
	height: 3.2vw;
}

.content_wrapp{
	width: auto;
	margin: 0 5.333333vw;
}


.rec_link{
	padding: 10.666667vw 5.333333vw;
}

.rec_link .link_wrapp{
	width: auto;
}

.rec_link .link_wrapp .catch{
	font-size: 4.8vw;
	margin-bottom: 6.666667vw;
}

.rec_link a{
	height: 32vw;
	background-image: url('../images/top/recruit_link_bg_sp.png');
}

.webp .rec_link a{
	background-image: url('../images/top/recruit_link_bg_sp.webp');
}

.rec_link a::after{
	width: 8vw;
	height: 8vw;
}

.rec_link strong{
	font-size: 10.666667vw;
    left: 6.933333vw;
}






/*------- 404 -------*/

.error404 #page_head::before {
    background-image: url('../images/common/n404_page_header_bg_sp.webp');
}

#page_head .head_text h1 strong.n404{
    font-size: 21.333333vw;
}

#page_head .head_text h1 small.n404{
    font-size: 5.333333vw;
}

.n404_wrapp{
	width: auto;
	margin: 0 5.333333vw;
	padding-bottom: 21.333333vw;
}

.n404_wrapp .caption{
	font-size: 3.733333vw;
	margin-bottom: 10.666667vw;
}

.n404_wrapp .toback a{
	font-size: 3.2vw;
	padding-left: 6.4vw;
}

.n404_wrapp .toback a::before{
    width: 4.266667vw;
    height: 4.266667vw;
}


}

