@charset "utf-8";
/**
/* 共通 CSS
----------------------------------------------- */
/*　　見出し　　*/
.guide-ttl{
	position: relative;
	margin-bottom: 5rem;
}
.guide-ttl .roma{
	font-family: "Big Shoulders Stencil Text", serif;
	color: rgba(213, 212, 212, 0);
	font-size: 4rem;
	font-weight: 800;
	line-height: 1;
	-webkit-text-stroke: 1px #212121;
	text-stroke: 1px #212121;
}
.guide-ttl h2{
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.3;
	margin-top: 1.5625rem;
}
@media only screen and (max-width: 767px) {
	.guide-ttl{
		margin-bottom: 2.5rem;
	}
	.guide-ttl .roma{
		font-size: 3rem;
	}
	.guide-ttl h2{
		font-size: 1.125rem;
		margin-top: 0.75rem;
	}
}
/**
/* トップページ CSS
----------------------------------------------- */
/*　　MV　　*/
.mv-view{
	position: relative;
}
.mv-view-bgImg{
	position: relative;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	max-height: 100vh;
	height: 62.5rem;
}
.mv-view-bgImg >img {
	visibility: hidden;
	width: 100%;
}
.mv-view .view-ttl{
	position: absolute;
	top: 35%;
	left: 10%;
}
.mv-view .view-ttl h2 > .small{
	font-size: 0.9em;
}
.mv-view .view-ttl h2{
	color: #ffffff;
	font-size: 4.375rem;
	font-weight: 900;
	line-height: 1.45;
	letter-spacing: 0.1em;
	text-shadow: 5px 10px 10px rgba(38, 38, 38, .5);
}
.mv-view .view-news{
	background: #FFFFFF;
	position: absolute;
	bottom: 10%;
	left: 5%;
	right: 5%;
	align-items: center;
	column-gap: 1.5em;
	border-radius: 6.25rem;
	padding: 1.625rem 3.75rem;
}
.mv-view .view-news > div.flex_wrap {
	flex-grow: 1;
	column-gap: 1em;
	width: calc(100% - 4em - 2em);
	align-items: center;
}
.mv-view .view-news h2{
	width: 4em;
	color: #333333;
	font-size: 1.125rem;
	font-weight: 900;
	line-height: 1.35;
}
.mv-view .view-news .view-news-items {
	flex-grow: 1;
	width: calc(100% - 8em);
	height: 1.7em;
	overflow: hidden;
}
.mv-view .view-news .view-news-items a{
	display: flex;
}
.mv-view .view-news .view-news-items a .date{
	width: 6.5rem;
	margin-top: 0.15em;
	font-family: "Big Shoulders Stencil Text", serif;
	color: #a2a2a2;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.5;
}
.mv-view .view-news .view-news-items a h3{
	width: calc(100% - 6.5rem);
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
}
@media only screen and (max-width: 1200px) {
	.mv-view .view-news{
		padding: 1.625rem 2.75rem;
	}
	.mv-view .view-news .view-news-items a .date{
		width: 6rem;
	}
	.mv-view .view-news .view-news-items a h3{
		width: calc(100% - 6rem);
	}
}
@media only screen and (max-width: 1080px) {
	.mv-view .view-news .more_btn{
		/* width: 100%; */
		text-align: right;
	}
}
@media only screen and (max-width: 767px) {
	.mv-view-bgImg{
		height: 40.5rem;
	}
	.mv-view .view-ttl{
		top: 25%;
	}
	.mv-view .view-ttl h2{
		font-size: 2rem;
	}
	.mv-view .view-news{
		flex-direction: column;
		align-items: flex-start;
		bottom: 5%;
		left: 5%;
		right: 5%;
		border-radius: 1.125rem;
		padding: 1.125rem;
	}
	.mv-view .view-news h2{
		font-size: 1rem;
		margin-bottom: 0.375rem;
	}
	.mv-view .view-news > div.flex_wrap {
		width: 100%;
	}
	.mv-view .view-news .view-news-items {
		width: 100%;
		height: auto;
		max-height: 4.5em;
	}
	.mv-view .view-news .view-news-items a{
		display: block;
	}
	.mv-view .view-news .view-news-items a .date{
		width: 100%;
		font-size: 0.9375rem;
	}
	.mv-view .view-news .view-news-items a h3{
		width: 100%;
		font-size: 0.9375rem;
	}
	.mv-view .view-news .more_btn li{
		width: 4.5rem;
	}
	.mv-view .view-news .more_btn{
		width: 100%;
	}
}
/*　　長谷部機工って？　　*/
.front-about{
	padding: 7.375rem 0 13.125rem 0;
}
.front-about .about-grid{
	-webkit-justify-content: center;
	justify-content: flex-end;
	align-items: center;
}
.front-about .contentArea{
	width: 45%;
	max-width: 760px;
	padding-right: 3.5rem;
}
.front-about .contentArea h3{
	color: #214084;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.54;
	margin-bottom: 1.4em;
}
.front-about .imageArea{
	position: relative;
	width: 50%;
	max-width: 800px;
}
.front-about .imageArea .swiper-grid{
	overflow: hidden;
}
.front-about .swiper-pagination-bullets.swiper-pagination-horizontal{
	top: auto;
	left: 2.5rem;
	bottom: -5.125rem;
    text-align: left;
}
.front-about .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
	position: relative;
	background: transparent;
	width: 6.25rem;
	height: 2.1875rem;
	font-family: "Big Shoulders Stencil Text", serif;
	color: rgba(213, 212, 212, 0);
	font-size: 1.375rem;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	-webkit-text-stroke: 1px #212121;
	text-stroke: 1px #212121;
	opacity: 1;
}
.front-about .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active{
	color: #212121;
}
.front-about .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:after{
	content: '';
	position: absolute;
	background: transparent;
	border: 1px solid #212121;
	width: 6.25rem;
	height: 0.625rem;
	left: 0;
	bottom: 0;
}
.front-about .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:after{
	background: #212121;
}
@media only screen and (min-width: 1600px) {
	.front-about .about-grid{
		justify-content: center;
	}
}
@media only screen and (max-width: 767px) {
	.front-about{
		padding: 5rem 0 5rem 0;
	}
	.front-about .contentArea{
		width: 100%;
		max-width: 100%;
		padding: 0 5% 2rem 5%;
	}
	.front-about .contentArea h3{
		font-size: 1.125rem;
		margin-bottom: 1.5rem;
	}
	.front-about .imageArea{
		width: 100%;
		max-width: 100%;
	}
	.front-about .swiper-pagination-bullets.swiper-pagination-horizontal{
	    bottom: -2.8125rem;
	}
	.front-about .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
		width: 2.25rem;
		height: 1.5rem;
		font-size: 1.125rem;
	}
	.front-about .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:after{
		width: 2.25rem;
		height: 0.325rem;
	}
}
/*　　長谷部機工の強み　　*/
.front-strength{
	background: url(../images/top/strength_bg.png) no-repeat center;
	background-size: cover;
	padding: 8.5rem 0 6.5625rem 0;
}
.front-strength .about-grid.inner{
	max-width: 1200px;
}
.front-strength .guide-ttl .roma{
	-webkit-text-stroke: 1px #ffffff;
	text-stroke: 1px #ffffff;
}
.front-strength .guide-ttl h2{
	color: #ffffff;
}
.front-strength .strength-list{
	column-gap: 60px;
}
.strength-list .strength-items{
	width: calc(33.3333% - 40px);
}
.strength-list .strength-items:nth-child(1),
.strength-list .strength-items:nth-child(3){
	margin-top: -7rem;
}
.strength-list .strength-items .no{
	font-family: "Big Shoulders Stencil Text", serif;
	color: #a2a2a2;
	font-size: 3.75rem;
	font-weight: 800;
	line-height: 1;
	margin-bottom: 0.625rem;
}
.strength-list .strength-items h3{
	color: #ffffff;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 2.2;
	text-align: center;
	margin-bottom: 1.4em;
}
.strength-list .strength-items h3 span{
	display: inline-block;
	background: #ffffff;
	color: #214084;
	line-height: 1.5;
	padding: 0.25rem 0.5rem;
	margin: 0 0.35rem 0.35rem 0.35rem;
}
.strength-list .strength-items .imageArea{
	margin-bottom: 1.5rem;
}
.strength-list .strength-items .p-text{
	color: #ffffff;
	line-height: 1.8;
}
@media only screen and (max-width: 767px) {
	.front-strength{
		padding: 5rem 0 4rem 0;
	}
	.front-strength .strength-list{
		column-gap: 0;
		row-gap: 2rem;
	}
	.strength-list .strength-items{
		width: 100%;
	}
	.strength-list .strength-items:nth-child(1),
	.strength-list .strength-items:nth-child(3){
		margin-top: 0;
	}
	.strength-list .strength-items .no{
		font-size: 3rem;
	}
	.strength-list .strength-items h3{
		font-size: 1.125rem;
	}
	.strength-list .strength-items .imageArea{
		margin-bottom: 1.25rem;
	}
}
/*　　事業内容　　*/
.front-business{
	padding: 9.5625rem 0 13.75rem 0;
}
.front-business::before{
	content: '';
	position: absolute;
	background: url(../images/top/bg_line.png) center center no-repeat;
	background-size: cover;
	width: 100%;
	height: 100%;
	right: 0;
	left: 0;
	top: 0;
	z-index: -1;
}
.front-business .guide-ttl .roma{
	-webkit-text-stroke: 1px #ffffff;
	text-stroke: 1px #ffffff;
}
.front-business .guide-ttl h2{
	color: #ffffff;
}
.front-business .business-list .business-items{
	background: rgba(255, 255, 255, 0.9);
	-webkit-justify-content: center;
	justify-content: flex-end;
	align-items: center;
	padding: 4.375rem 0 8.4375rem 0;
	margin-bottom: 4.375rem;
}
.front-business .business-list .business-items:nth-child(2){
	margin-bottom: 4.375rem;
}
.front-business .business-list .business-items:last-child{
	margin-bottom: 0;
}
.front-business .business-list .business-items .contentArea{
	width: 50%;
	max-width: 820px;
}
.front-business .business-list .business-items:nth-child(odd) .contentArea{
	padding-right: 9.375rem;
}
.front-business .business-list .business-items:nth-child(even) .contentArea{
	padding-left: 9.375rem;
}
.front-business .business-list .business-items .contentArea h3{
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.3;
	margin-bottom: 1.4em;
	padding: 0.3em 0.8em;
	background-color: #333;
	border-radius: 3px;
}
.front-business .business-list .business-items .more_btn{
	text-align: right;
	margin-top: 1.2em;
}
.front-business .business-list .business-items .imageArea{
	position: relative;
	width: 45%;
	max-width: 730px;
}
.front-business .business-list .business-items .swiper-grid{
	overflow: hidden;
}
.front-business .business-nav{
	margin-top: 1.75rem;
}
.front-business .business-nav li{
	margin-bottom: 1.4em;
}
.front-business .business-list .business-items:nth-child(3) .business-nav li{
	display: inline-block;
	margin-right: 3.125rem;
}
.front-business .business-nav li a{
	position: relative;
	color: #222222;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.45;
	border-bottom: 2px solid #214084;
	padding-bottom: 0.3rem;
	padding-left: 0.4em;
	padding-right: 2rem;
}
.front-business .business-nav li a:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	color: #222222;
	font-size: 1.125rem;
	font-weight: 900;
	position: absolute;
	top: 0.25rem;
	right: 0;
}
.front-business .swiper-pagination-bullets.swiper-pagination-horizontal{
	top: auto;
	left: 2.5rem;
    bottom: -4.375rem;
    text-align: left;
}
.front-business .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
	position: relative;
	background: transparent;
	width: 6.25rem;
	height: 2.1875rem;
	font-family: "Big Shoulders Stencil Text", serif;
	color: rgba(213, 212, 212, 0);
	font-size: 1.375rem;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	-webkit-text-stroke: 1px #212121;
	text-stroke: 1px #212121;
	opacity: 1;
}
.front-business .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active{
	color: #212121;
}
.front-business .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:after{
	content: '';
	position: absolute;
	background: transparent;
	border: 1px solid #212121;
	width: 6.25rem;
	height: 0.625rem;
	left: 0;
	bottom: -0.3125rem;
}
.front-business .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:after{
	background: #212121;
}
@media only screen and (min-width: 1600px) {
	.front-business .business-list .business-items{
		justify-content: center;
	}
}
@media only screen and (max-width: 767px) {
	.front-business{
		padding: 5.5625rem 0 5.75rem 0;
	}
	.front-business::before{
		background: url(../images/top/bg_line.png) left 45% center no-repeat;
		background-size: cover;
	}
	.front-business .business-list .business-items{
		padding: 2.5rem 0 4.5rem 0;
		margin-bottom: 2rem;
	}
	.front-business .business-list .business-items:nth-child(2){
		margin-bottom: 2rem;
	}
	.front-business .business-list .business-items .contentArea{
		width: 100%;
		max-width: 100%;
	}
	.front-business .business-list .business-items:nth-child(odd) .contentArea{
		padding: 0 5% 2rem 5%;
	}
	.front-business .business-list .business-items:nth-child(even) .contentArea{
		padding: 0 5% 2rem 5%;
	}
	.front-business .business-list .business-items .contentArea h3{
		font-size: 1.25rem;
		margin-bottom: 1.25rem;
	}
	.front-business .business-list .business-items .more_btn{
		margin-top: 1.1875rem;
	}
	.front-business .business-list .business-items .imageArea{
		width: 100%;
		max-width: 100%;
	}
	.front-business .business-nav{
		margin-top: 1.25rem;
	}
	.front-business .business-nav li{
		margin-bottom: 1.25rem;
	}
	.front-business .business-list .business-items:nth-child(3) .business-nav li{
		display: inline-block;
		margin-right: 2.125rem;
	}
	.front-business .business-nav li a{
		font-size: 1rem;
		padding-bottom: 0.35rem;
		padding-right: 1.5rem;
	}
	.front-business .business-nav li a:after{
		font-size: 1rem;
		top: 0;
	}
	.front-business .swiper-pagination-bullets.swiper-pagination-horizontal{
	    bottom: -2.8125rem;
	}
	.front-business .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
		width: 2.25rem;
		height: 1.5rem;
		font-size: 1.125rem;
	}
	.front-business .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:after{
		width: 2.25rem;
		height: 0.325rem;
	}
}
/*　　施工事例　　*/
.front-example{
	background: url(../images/top/example_bg.png) no-repeat center;
	background-size: cover;
	padding: 9.25rem 0 4.375rem 0;
}
.front-example::before{
	content: '';
	position: absolute;
	background: url(../images/top/example_img.png) center center no-repeat;
	background-size: contain;
	width: 35.3125rem;
	height: 39.3125rem;
	left: 0;
	top: -10.75rem;
}
.front-example .button-wrap{
	position: relative;
	background: #333333;
	height: 1.65rem;
	margin-top: 6.25rem;
}
.front-example .case-swiper .swiper-wrapper.center {
	justify-content: center;
}
.front-example .case-swiper .swiper-wrapper.center > .case-items {
	margin-right: 0!important;
}
.front-example .swiper-pagination-bullets.swiper-pagination-horizontal{
	bottom: 0;
	top: 0;
}
.front-example .case-swiper-pagination .swiper-pagination-bullet {
	width: 6.25rem;
	height: 0.625rem;
	display: inline-block;
	border-radius: 0px;
	background: #ffffff;
}
.front-example .case-swiper-pagination .swiper-pagination-bullet-active{
	opacity: 1;
}
.front-example .more_btn{
	margin-top: 4.375rem;
}
@media only screen and (max-width: 1420px) {
	.front-example::before{
		width: 30.3125rem;
		height: 34.3125rem;
		left: 0;
		top: -21.75rem;
	}
}
@media only screen and (max-width: 1024px) {
	.front-example::before{
		width: 23.3125rem;
		height: 26.3125rem;
		left: 0;
		top: -13.75rem;
	}
}
@media only screen and (max-width: 767px) {
	.front-example{
		padding: 5rem 0 3.375rem 0;
	}
	.front-example::before{
		width: 11.3125rem;
		height: 13.3125rem;
		left: 0;
		top: -7.75rem;
	}
	.front-example .button-wrap{
		height: 1.25rem;
		margin-top: 2.25rem;
	}
	.front-example .swiper-pagination-bullets.swiper-pagination-horizontal{
		top: -0.35rem;
	}
	.front-example .case-swiper-pagination .swiper-pagination-bullet {
		width: 2.25rem;
		height: 0.325rem;
	}
	.front-example .more_btn{
		margin-top: 2.375rem;
	}
}
.front-example .button-wrap.count-2 .case-swiper-pagination .swiper-pagination-bullet:nth-last-of-type(-n+4) {
	display: none;
}
.front-example .button-wrap.count-3 .case-swiper-pagination .swiper-pagination-bullet:nth-last-of-type(-n+3) {
	display: none;
}
.front-example .button-wrap.count-4 .case-swiper-pagination .swiper-pagination-bullet:nth-last-of-type(-n+4) {
	display: none;
}

/*　　会社概要　　*/
.front-company{
	padding: 11.125rem 0 8.75rem 0;
}
.front-company::before{
	content: '';
	position: absolute;
	background: url(../images/top/company_pic02.png) center center no-repeat;
	background-size: contain;
	width: 33.125rem;
	height: 37.5rem;
	right: 0;
	top: 0;
}
.front-company .company-grid{
	position: relative;
}
.front-company .company-grid .contentArea{
	max-width: 320px;
	margin: 0 auto;
}
.front-company .company-grid .guide-ttl{
	margin-bottom: 2.6875rem;
}
.front-company .company-grid .guide-ttl h2{
	margin-top: 1rem;
}
.front-company .company-grid .imageArea{
	position: absolute;
	bottom: -8.75rem;
	right: calc(65% + 90px)
}
.front-company .company-grid .imageArea img{
	max-width: none;
}
.front-company .company-grid .imageArea{
	position: absolute;
	bottom: -8.75rem;
	right: calc(65% + 90px)
}
.front-company .company-grid .more_btn{
	margin-top: 3.75rem;
}
@media only screen and (max-width: 767px) {
	.front-company{
		padding: 5.125rem 0 4rem 0;
	}
	.front-company::before{
		width: 14.125rem;
		height: 16rem;
	}
	.front-company .company-grid .contentArea{
		max-width: inherit;
	}
	.front-company .company-grid .guide-ttl{
		margin-bottom: 1.6875rem;
	}
	.front-company .company-grid .guide-ttl h2{
		margin-top: 0.75rem;
	}
	.front-company .company-grid .imageArea{
		display: none;
	}
	.front-company .company-grid .more_btn{
		margin-top: 2.5rem;
	}
}
/*　　採用情報　　*/
.front-recruit{
	background: url(../images/top/recruitment_bg.png) no-repeat center;
	background-size: cover;
	padding: 12.5rem 0;
}
.front-recruit .recruit-grid .contentArea{
	background: #FFFFFF;
	width: 62%;
	padding: 8.4375rem 4.5rem 5.625rem 4.5rem;
}
.front-recruit .recruit-grid .guide-ttl{
	margin-bottom: 4.375rem;
}
.front-recruit .recruit-grid h3{
	color: #214084;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.63;
	margin-bottom: 3.125rem;
}
.front-recruit .recruit-grid .p-text{
	font-weight: 500;
}
.front-recruit .recruit-grid .img-l,
.front-recruit .recruit-grid .img-r{
	position: relative;
	width: 19%;
	top: -7.1875rem;
}
.front-recruit .recruit-grid .img-l{
	text-align: right;
}
.front-recruit .recruit-grid .img-r{
	text-align: left;
}
.front-recruit .recruit-grid .img-l img,
.front-recruit .recruit-grid .img-r img{
	width: 100%;
	max-width: 300px;
	height: calc(100% + 12.5rem);
	max-height: 900px;
	object-fit: cover;
}
.front-recruit .recruit-grid .more_btn{
	margin-top: 3.75rem;
}
.front-recruit .recruit-grid .more_btn li{
	position: relative;
}
.front-recruit .recruit-grid .more_btn li::after{
	content: '';
	position: absolute;
	background: url(../images/top/Join-our-team.png) center center no-repeat;
	background-size: contain;
	width: 10.4375rem;
	height: 6rem;
	right: -13rem;
	bottom: -3rem;
}
@media only screen and (max-width: 767px) {
	.front-recruit{
		padding: 2rem 5%;
	}
	.front-recruit .recruit-grid .contentArea{
		width: 100%;
		padding: 3.4375rem 1.5rem 3.625rem 1.5rem;
	}
	.front-recruit .recruit-grid .guide-ttl{
		margin-bottom: 2.375rem;
	}
	.front-recruit .recruit-grid h3{
		font-size: 1.125rem;
		margin-bottom: 2.125rem;
	}
	.front-recruit .recruit-grid .img-l,
	.front-recruit .recruit-grid .img-r{
		display: none;
	}
	.front-recruit .recruit-grid .more_btn{
		margin-top: 2rem;
	}
	.front-recruit .recruit-grid .more_btn li::after{
		width: 6.4375rem;
		height: 4rem;
		right: -8rem;
		bottom: -2rem;
	}
}
/*　　新着情報　　*/
.front-news{
	padding: 9.625rem 0 4.375rem 0;
}
.front-news .news-grid{
	-webkit-justify-content: center;
	justify-content: flex-end;
}
.front-news .news-grid .ttlArea{
	width: 25%;
	max-width: 300px;
}
.front-news .news-grid .guide-ttl{
	display: inline-block;
	margin-bottom: 0;
}
.front-news .news-grid .contentArea{
	width: 70%;
}
.front-news .more_btn{
	text-align: right;
	margin-top: 3.75rem;
}
@media only screen and (max-width: 767px) {
	.front-news{
		padding: 5rem 0 3.375rem 0;
	}
	.front-news .news-grid .ttlArea{
		width: 100%;
		max-width: 100%;
	}
	.front-news .news-grid .guide-ttl{
		display: block;
		margin-bottom: 1.75rem;
	}
	.front-news .news-grid .contentArea{
		width: 100%;
	}
	.front-news .more_btn{
		margin-top: 1.75rem;
	}
}
/**
/* 下層ページ共通 CSS
----------------------------------------------- */
/*　　ページヘッダー　　*/
.page-view .view-ttl{
	max-width: 1200px;
	padding: 8.75rem 0 3.375rem 0;
}
.page-view .view-ttl .ttl{
	display: inline-block;
}
.page-view .view-ttl .roma{
	font-family: "Big Shoulders Stencil Text", serif;
	color: rgba(213, 212, 212, 0);
	font-size: 5.5rem;
	font-weight: 800;
	line-height: 1;
	-webkit-text-stroke: 1px #212121;
	text-stroke: 1px #212121;
	text-transform: capitalize;
}
.page-view .view-ttl h2{
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.3;
	text-align: right;
	margin-top: 1rem;
	padding-right: 0.5em;
}
.page-view .page-view-img{
	background: #333333;
}
.page-view .page-view-img .view-img{
	max-width: 1200px;
	height: 16.25rem;
}
.page-view .page-view-img .view-img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media only screen and (max-width: 767px) {
	.page-view .view-ttl{
		padding: 6.5rem 0 2.5rem 0;
	}
	.page-view .view-ttl .roma{
		font-size: 3rem;
	}
	.page-view .view-ttl h2{
		font-size: 1rem;
		margin-top: 0.5rem;
	}
	.page-view .page-view-img .view-img{
		height: 12rem;
	}
}
/*　　table　　*/
.tbl_bg{
	width: 100%;
	border-collapse: separate;
	border-spacing: 0.625rem 0.3125rem;
	margin: 0 -0.625rem;
}
.tbl_bg caption{
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.45;
	border-left: 0.5rem solid #333333;
	padding-left: 1rem;
	margin: 0 0.625rem;
	margin-bottom: 1.125rem;
}
.tbl_bg th{
	background: #333333;
	color: #ffffff;
}
.tbl_bg td{
	background: #eeeeee;
}
.p-text{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.9;
}
@media only screen and (max-width: 767px) {
	.tbl_bg{
		width: calc(100% + 1.25rem);
		border-spacing: 0.625rem 0.3125rem;
		margin: 0 -0.625rem;
	}
	.tbl_bg caption{
		font-size: 1rem;
		border-left: 0.35rem solid #333333;
		padding-left: 0.65rem;
		margin: 0 0.625rem;
		margin-bottom: 0.65rem;
	}
	.p-text{
		font-size: 0.9375rem;
	}
}
/**
/* 事業内容 CSS
----------------------------------------------- */
.business-guide .business-head{
	justify-content: center;
	align-items: center;
	max-width: 1180px;
	margin: 0 auto;
}
.business-guide .business-head .contentArea{
	width: 50%;
	max-width: 820px;
}
#business01 .business-head .contentArea,
#business03 .business-head .contentArea{
	padding-right: 5rem;
}
#business02 .business-head .contentArea{
	padding-left: 5rem;
}
.business-guide .business-head .contentArea h3{
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 3.125rem;
	padding-top: 0.2em;
	padding-left: 0.7em;
	padding-bottom: 0.2em;
	border-left: 0.5em solid #333333;
}
.business-guide .business-head .imageArea{
	width: 45%;
	max-width: 730px;
}
.business-guide .business-body{
	margin-top: 4.5rem;
}
.business-guide .business-body .business-items{
	margin-bottom: 3.5rem;
}
.business-guide .business-body .business-items.inner{
	max-width: 940px;
}
.business-guide .business-body .business-items:last-child{
	margin-bottom: 0;
}
.business-body .business-items h3{
	background: #333333;
	color: #ffffff;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.25;
	padding: 0.9375rem 1.25rem;
	margin-bottom: 2.5rem;
	border-radius: 3px;
}
.business-body .business-items dl + dl{
	margin-top: 2.2rem;
}
.business-body .business-items h4,
.business-body .business-items dl dt{
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.25;
	border-bottom: 2px dotted #333333;
	padding-bottom: 0.5rem;
	padding-left: 0.4em;
	padding-right: 0.4em;
	margin-bottom: 0.8rem;
}
.business-body .business-items dl dd{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.8;
}
.business-body .business-items .tbl_bg{
	margin-top: 1.5rem;
}
.business-body .business-items .tbl_bg thead th{
	width: 8rem;
}
.business-body .business-items .tbl_bg thead th:first-child{
	width: 8rem;
}
.business-body .business-items .flex_wrap .contentArea{
	width: 50%;
}
.business-body .business-items .flex_wrap .imageArea{
	width: 45%;
}
@media only screen and (max-width: 767px) {
	.business-guide .business-head .contentArea{
		width: 100%;
		max-width: 100%;
	}
	#business01 .business-head .contentArea,
	#business03 .business-head .contentArea{
		padding: 0 5% 2rem 5%;
	}
	#business02 .business-head .contentArea{
		padding: 0 5% 2rem 5%;
	}
	.business-guide .business-head .contentArea h3{
		font-size: 1.25rem;
		margin-bottom: 1.25rem;
	}
	.business-guide .business-head .imageArea{
		width: 100%;
		max-width: 100%;
	}
	.business-guide .business-body{
		margin-top: 2rem;
	}
	.business-guide .business-body .business-items{
		margin-bottom: 2rem;
	}
	.business-body .business-items h3{
		font-size: 1.125rem;
		padding: 0.75rem 1rem;
		margin-bottom: 1.5rem;
	}
	.business-body .business-items dl + dl{
		margin-top: 1.25rem;
	}
	.business-body .business-items h4,
	.business-body .business-items dl dt{
		font-size: 1rem;
		padding-bottom: 0.65rem;
		margin-bottom: 1rem;
	}
	.business-body .business-items dl dd{
		font-size: 0.9375rem;
	}
	.business-body .business-items .tbl_bg{
		width: calc(800px + 1.25rem);
		margin-top: 1.5rem;
	}
	.business-body .business-items .tbl_bg thead th{
		width: 5rem;
	}
	.business-body .business-items .tbl_bg thead th:first-child{
		width: 5rem;
	}
	.business-body .business-items .flex_wrap .contentArea{
		width: 100%;
		margin-bottom: 1.5rem;
	}
	.business-body .business-items .flex_wrap .imageArea{
		width: 100%;
	}
}
/**
/* 会社概要 CSS
----------------------------------------------- */
/*　　会社概要　　*/
.company-wrap .inner {
	max-width: 940px;
	margin: 0 auto;
}
.company-guide .tbl_bg th{
	width: 18.75rem;
}
@media only screen and (max-width: 767px) {
	.company-guide .tbl_bg th{
		width: 8rem;
	}
}
/*　　沿革　　*/
.history-guide .history-tbl{
	margin-top: 5rem;
}
.history-guide .history-tbl th,
.history-guide .history-tbl td{
	vertical-align: middle;
}
.history-guide .history-tbl tr:nth-child(odd) th,
.history-guide .history-tbl tr:nth-child(odd) td{
	background: #eeeeee;
}
.history-guide .history-tbl th{
	width: 18.75rem;
}
@media only screen and (max-width: 767px) {
	.history-guide .p-text{
		text-align: left;
	}
	.history-guide .history-tbl{
		margin-top: 3rem;
	}
	.history-guide .history-tbl th,
	.history-guide .history-tbl td{
		display: block;
	}
	.history-guide .history-tbl th{
		width: 100%;
		padding: 1rem 1rem 0 1rem;
	}
	.history-guide .history-tbl td{
		padding: 0.65rem 1rem 1rem 1rem;
	}
}
/*　　アクセス　　*/
.access-guide .map{
	width: 60%;
}
.access-guide .access{
	width: 35%;
}
.access-guide .map iframe{
	height: 21.125rem;
}
.access-guide .access dl{
	margin-top: 1.5rem;
}
.access-guide .access dl dt{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	margin-bottom: 0.3125rem;
}
.access-guide .access dl dd{
	font-size: 1rem;
	line-height: 1.5;
}
@media only screen and (max-width: 767px) {
	.access-guide .map,
	.access-guide .access{
		width: 100%;
	}
	.access-guide .map iframe{
		height: 15rem;
	}
	.access-guide .access dl{
		margin-top: 1rem;
	}
	.access-guide .access dl dt{
		font-size: 0.9375rem;
	}
	.access-guide .access dl dd{
		font-size: 0.9375rem;
	}
}
/**
/* 採⽤情報 CSS
----------------------------------------------- */
.recruit-view{
	margin-top: 6.875rem;
}
.recruit-view .inner-wrap{
	position: relative;
}
.recruit-view .recruit-view-text{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	padding: 7.5rem 3.75rem 3.75rem 3.75rem;
}
.recruit-view h2{
	font-size: 2.5rem;
	font-weight: 900;
	line-height: 1.75;
	text-align: center;
}
.recruit-wrap{
	padding: 6rem 0 4.0625rem 0;
}
@media only screen and (max-width: 1024px) {
	.recruit-view{
		margin-top: 4.375rem;
	}
}
@media only screen and (max-width: 767px) {
	.recruit-view .recruit-view-text{
		padding: 1.5rem 1rem 1.125rem 1rem;
	}
	.recruit-view h2{
		font-size: 1.25rem;
	}
	.recruit-wrap{
		padding: 2rem 0 0 0;
	}
}
/*　　メッセージ　　*/
.job-message-guide{
	padding: 4.5625rem 0 5.625rem 0;
}
.job-message-guide .job-message-grid{
	-webkit-justify-content: center;
	justify-content: flex-end;
	align-items: self-start;
}
.job-message-guide .guide-ttl{
	margin-bottom: 4rem;
}
.job-message-grid .contentArea{
	width: 45%;
	max-width: 600px;
	padding-left: 9.375rem;
}
.job-message-grid .contentArea h3{
	font-size: 1.375rem;
	font-weight: 900;
	line-height: 1.54;
	margin-bottom: 2.1875rem;
}
.job-message-grid .company-nav{
	margin-top: 3.75rem;
}
.job-message-grid .imageArea{
	position: relative;
	width: 50%;
	max-width: 800px;
}
.job-message-grid .imageArea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media only screen and (max-width: 1340px) {
	.job-message-grid .contentArea{
		padding-left: 3.375rem;
	}
}
@media only screen and (max-width: 767px) {
	.job-message-guide{
		padding: 2.5rem 0 0 0;
	}
	.job-message-guide .guide-ttl{
		margin-bottom: 2.5rem;
	}
	.job-message-grid .contentArea{
		width: 100%;
		max-width: 100%;
		padding: 0 5% 2rem 5%;
	}
	.job-message-grid .contentArea h3{
		font-size: 1.125rem;
		margin-bottom: 1.5rem;
	}
	.job-message-grid .company-nav{
		margin-top: 3.75rem;
	}
	.job-message-grid .imageArea{
		width: 100%;
		max-width: 100%;
	}
}
/*　　募集要項　　*/
.job-interview-guide{
	/* background: url(../images/recruit/people_bg.jpg) top left no-repeat;
	background-size: cover; */
	background: #eff7fa;
	padding: 7.75rem 0 4.5rem 0;
}
.job-interview-guide .job-interview-list{
	column-gap: 2.8125rem;
	row-gap: 3.8rem;
}
.job-interview-list .job-interview-items{
	width: calc(33.3333% - 1.875rem);
}
.job-interview-list .job-interview-items a {
	transition: all 0.2s;
}
.job-interview-list .job-interview-items .imageArea{
	display: block;
	margin-bottom: 1.4rem;
	transition: all 0.2s;
}
.job-interview-list .job-interview-items .imageArea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 3px;
}
.job-interview-list .job-interview-items .department{
	display: block;
	color: #444;
	font-size: 1.125rem;
	font-weight: 900;
	line-height: 1.35;
	margin-bottom: 0.65rem;
	transition: all 0.2s;
}
.job-interview-list .job-interview-items .data {
	display: block;
	background: #444;
	color: #ffffff;
	font-size: 1.25rem;
	font-weight: 900;
	line-height: 1.25;
	padding: 0.5rem 1.25rem;
	border-radius: 3px;
	transition: all 0.2s;
}
.job-interview-list .job-interview-items a:hover {
	text-decoration: none;
}
.job-interview-list .job-interview-items a:hover .imageArea,
.job-interview-list .job-interview-items a:hover .department,
.job-interview-list .job-interview-items a:hover .data {
	opacity: 0.8;
}
.job-interview-guide .more_btn{
	margin-top: 4.6875rem;
}
@media only screen and (max-width: 767px) {
	.job-interview-guide{
		padding: 4.75rem 0 2.5rem 0;
	}
	.job-interview-guide .job-interview-list{
		column-gap: 0;
		row-gap: 3.75rem;
	}
	.job-interview-list .job-interview-items{
		width: 100%;
	}
	.job-interview-list .job-interview-items .imageArea{
		margin-bottom: 1.25rem;
	}
	.job-interview-list .job-interview-items .department{
		font-size: 1.125rem;
		margin-bottom: 0.65rem;
	}
	.job-interview-list .job-interview-items .data{
		font-size: 1.125rem;
	}
	.job-interview-guide .more_btn{
		margin-top: 2.5rem;
	}
}
/*　　仕事について　　*/
.job-work-guide{
	padding: 7.875rem 0 6.375rem 0;
}
.job-work-guide .guide-ttl{
	margin-bottom: 4.5625rem;
}
.job-work-guide h3{
	position: relative;
	color: #333333;
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.15;
	text-align: center;
}
.job-work-guide h3::after{
	position: absolute;
	background: #333333;
	content: '';
	width: 8.75rem;
	height: 0.4375rem;
	bottom: -1.125rem;
	right: 50%;
	transform: translateX(50%);
}
@media only screen and (max-width: 767px) {
	.job-work-guide{
		padding: 4.875rem 0 3.375rem 0;
	}
	.job-work-guide .guide-ttl{
		margin-bottom: 3rem;
	}
	.job-work-guide h3{
		font-size: 1.125rem;
	}
	.job-work-guide h3::after{
		width: 6.5rem;
		height: 0.25rem;
		bottom: -0.875rem;
	}
}
/*　　業務内容　　*/
.job-work-guide .job-business-grid{
	margin-bottom: 6.875rem;
}
.job-business-grid h3{
	margin-bottom: 4.625rem;
}
.job-business-wrap .jstabs{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 0.65rem;
}
.job-business-wrap .jstabs .js-tab-btn{
	background: #ffffff;
	width: 17.5rem;
	color: #333333;
	font-size: 1.125rem;
	font-weight: 900;
	line-height: 1.8;
	padding: 0.6875rem;
	cursor: pointer;
	text-align: center;
	border: 2px solid #333333;
	border-radius: 5px 5px 0 0;
}
.job-business-wrap .jstabs .js-tab-btn.current{
	background: #333333;
	color: #ffffff;
}
.job-business-wrap .js-tab-contents{
	display: none;
	background: #ffffff;
	border: 2px solid #333333;
	margin-top: -2px;
	padding: 3.75rem 2.5rem;
}
.job-business-wrap .js-tab-contents.current{
	display: block;
}
.job-business-wrap .business-items{
	max-width: 1080px;
	margin: 0 auto;
}
.job-business-wrap .business-items .contentArea{
	width: 50%;
}
.job-business-wrap .business-items h4{
	color: #333333;
	font-size: 1.625rem;
	font-weight: 900;
	line-height: 1.15;
	margin-bottom: 2.8125rem;
}
.job-business-wrap .business-items .more_btn{
	text-align: right;
	margin-top: 2.375rem;
}
.job-business-wrap .business-items .imageArea{
	width: 45%;
}
@media only screen and (max-width: 767px) {
	.job-work-guide .job-business-grid{
		margin-bottom: 4.5rem;
	}
	.job-business-grid h3{
		margin-bottom: 2.625rem;
	}
	.job-business-wrap .jstabs{
		column-gap: 0.3125rem;
	}
	.job-business-wrap .jstabs .js-tab-btn{
		width: calc(33.3333% - 0.1875rem);
		font-size: 0.9375rem;
		padding: 0.675rem 0.3125rem;
	}
	.job-business-wrap .js-tab-contents{
		padding: 2.5rem 1.125rem 1.125rem 1.125rem;
	}
	.job-business-wrap .business-items .contentArea{
		width: 100%;
		margin-bottom: 1.125rem;
	}
	.job-business-wrap .business-items h4{
		font-size: 1.125rem;
		margin-bottom: 0.9375rem;
	}
	.job-business-wrap .business-items .more_btn{
		margin-top: 1.25rem;
	}
	.job-business-wrap .business-items .imageArea{
		width: 100%;
	}
}
/*　　募集要項　　*/
.job-description-grid h3{
	margin-bottom: 2.875rem;
}
.job-description-grid .description-items .description-ttl{
	position: relative;
	align-items: center;
	border-bottom: 2px solid #333333;
	padding: 0.9375rem 1.25rem;
	cursor: pointer;
}
.job-description-grid .description-items .description-ttl:after{
	background: url(../images/recruit/icn_arrow.png) center no-repeat;
	background-size: cover;
	content: '';
	width: 2.125rem;
	height: 1.3125rem;
	position: absolute;
	top: 2.5rem;
	right: 1.25rem;
	transform: rotate(180deg);
}
.job-description-grid .description-items .description-ttl.open:after{
	transform: rotate(0deg);
}
.job-description-grid .description-items:not(:first-child) .description-ttl:after{
	transform: rotate(0deg);
}
.job-description-grid .description-items:not(:first-child) .description-ttl.open:after{
	transform: rotate(180deg);
}
.job-description-grid .description-items .description-ttl .icon{
	width: 4.5rem;
	text-align: right;
}
.job-description-grid .description-items .description-ttl .icon img{
	width: auto;
	height: 4.4375rem;
}
.job-description-grid .description-items .description-ttl h4{
	width: calc(100% - 4.5rem);
	font-size: 1.375rem;
	font-weight: 900;
	line-height: 1.45;
	padding-left: 2.5rem;
}
.job-description-grid .description-box{
	max-width: 1080px;
	margin: 0 auto;
	padding: 3.125rem 0;
}
.job-description-grid .description-items:not(:first-child) .description-box{
	display: none;
}
.job-description-grid .description-box .p-text{
	margin-bottom: 3.125rem;
}
.job-description-grid .description-box .box{
	border: 2px solid #333333;
}
.job-description-grid .description-box .box + .box{
	margin-top: 50px;
}
.job-description-grid .job-tbl{
	width: 100%;
	border-collapse: separate;
	border-spacing: 0.625rem 0.3125rem;
}
.job-description-grid .job-tbl th,
.job-description-grid .job-tbl td{
	color: #333333;
	font-size: 1rem;
	line-height: 1.8;
	padding: 1.25rem 1.25rem 1.25rem 2.125rem;
}
.job-description-grid .job-tbl tr:nth-child(odd) th,
.job-description-grid .job-tbl tr:nth-child(odd) td{
	background: #eeeeee;
}
.job-description-grid .job-tbl th{
	width: 12.5rem;
	font-weight: 500;
}
.job-description-grid .job-tbl td{
	line-height: 1.8;
}
.job-work-guide .entry-btn{
	margin-top: 5.625rem;
}
.entry-btn{
	text-align: center;
}
.entry-btn li{
	display: inline-block;
	background: #ffffff;
	width: 90%;
	max-width: 32.5rem;
	border: 2px solid #333333;
	border-left: 0.625rem solid #333333;
}
.entry-btn li a{
	display: block;
	color: #333333;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	padding: 1.75rem 0.65rem;
}
@media only screen and (max-width: 767px) {
	.job-description-grid h3{
		margin-bottom: 2.875rem;
	}
	.job-description-grid .description-items .description-ttl{
		padding: 0.65rem;
	}
	.job-description-grid .description-items .description-ttl:after{
		width: 1.125rem;
		height: 0.65rem;
		top: 1.5rem;
		right: 0.65rem;
	}
	.job-description-grid .description-items .description-ttl .icon{
		width: 2rem;
	}
	.job-description-grid .description-items .description-ttl .icon img{
		height: auto;
	}
	.job-description-grid .description-items .description-ttl h4{
		width: calc(100% - 2rem);
		font-size: 1.125rem;
		padding-left: 0.875rem;
	}
	.job-description-grid .description-box{
		padding: 1.125rem 0;
	}
	.job-description-grid .description-box .p-text{
		margin-bottom: 1.125rem;
	}
	.job-description-grid .job-tbl{
		border-spacing: 0.3125rem;
	}
	.job-description-grid .job-tbl th,
	.job-description-grid .job-tbl td{
		font-size: 0.9375rem;
		padding: 0.75rem 0.9375rem;
	}
	.job-description-grid .job-tbl th{
		width: 6.5rem;
	}
	/* .job-description-grid .job-tbl th{
		width: 12.5rem;
	} */
	.job-work-guide .entry-btn{
		margin-top: 3.625rem;
	}
	.entry-btn li{
		border-left: 0.625rem solid #333333;
	}
	.entry-btn li a{
		font-size: 1rem;
		padding: 1rem 0.65rem;
	}
}
/*　　福利厚生　　*/
.job-welfare-guide{
	background: url(../images/recruit/welfare_bg.png) top left no-repeat;
	background-size: cover;
	padding: 4.0625rem 0 7.8125rem 0;
}
.job-welfare-guide .guide-ttl{
	margin-bottom: 4.5625rem;
}
.job-welfare-guide .job-welfare-list{
	column-gap: 5.625rem;
	row-gap: 4.375rem;
	max-width: 800px;
	margin: 0 auto;
}
.job-welfare-list .job-welfare-items{
	position: relative;
	width: calc((100% - 5.625rem) / 2);
	background: #FFFFFF;
	border: 2px solid #333333;
}
.job-welfare-list .job-welfare-items .no{
	position: absolute;
	top: -2.75rem;
	left: 0.8125rem;
	font-family: "Big Shoulders Stencil Text", serif;
	color: #222222;
	font-size: 3.125rem;
	font-weight: 800;
	line-height: 1;
}
.job-welfare-list .job-welfare-items h3{
	background: #333333;
	color: #ffffff;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
	padding: 0.71875rem;
}
.job-welfare-list .job-welfare-items .box{
	padding: 2.5rem 1.5625rem 2.1875rem 1.5625rem;
}
.job-welfare-list .job-welfare-items .icon{
	text-align: center;
	margin-bottom: 2rem;
}
.job-welfare-list .job-welfare-items .p-text{
	line-height: 1.5;
}
@media only screen and (max-width: 1200px) {
	.job-welfare-guide .job-welfare-list{
		column-gap: 2.5rem;
	}
	.job-welfare-list .job-welfare-items{
		width: calc((100% - 2.5rem) / 2);
	}
}
@media only screen and (max-width: 767px) {
	.job-welfare-guide{
		padding: 2.0625rem 0 3rem 0;
	}
	.job-welfare-guide .guide-ttl{
		margin-bottom: 3.5625rem;
	}
	.job-welfare-guide .job-welfare-list{
		column-gap: 0;
		row-gap: 3.375rem;
	}
	.job-welfare-list .job-welfare-items{
		width: 100%;
		border: 2px solid #333333;
	}
	.job-welfare-list .job-welfare-items .no{
		top: -2.3rem;
		left: 0.375rem;
		font-size: 2.5rem;
	}
	.job-welfare-list .job-welfare-items h3{
		font-size: 1.125rem;
		padding: 0.65rem;
	}
	.job-welfare-list .job-welfare-items .box{
		padding: 1.5rem 1.125rem 1.1875rem 1.125rem;
	}
	.job-welfare-list .job-welfare-items .icon{
		margin-bottom: 1.125rem;
	}
	.job-welfare-list .job-welfare-items .icon img{
		width: 5rem;
	}
}
/*　　会社紹介　　*/
.job-company-guide{
	padding: 7.375rem 0 4.0625rem 0;
}
.job-company-guide .job-company-grid{
	-webkit-justify-content: center;
	justify-content: flex-end;
	align-items: center;
}
.job-company-guide .guide-ttl{
	margin-bottom: 4rem;
}
.job-company-grid .contentArea{
	width: 45%;
	max-width: 650px;
	padding-left: 8.75rem;
}
.job-company-grid .contentArea h3{
	font-size: 1.375rem;
	font-weight: 900;
	line-height: 1.54;
	margin-bottom: 2.1875rem;
}
.job-company-grid .company-nav{
	margin-top: 3.75rem;
}
.job-company-grid .company-nav li{
	display: inline-block;
}
.job-company-grid .company-nav li + li{
	margin-left: 3.125rem;
}
.job-company-grid .company-nav li a{
	position: relative;
	color: #222222;
	font-size: 1.375rem;
	font-weight: 900;
	line-height: 1.45;
	border-bottom: 2px solid #212121;
	padding: 0 2rem 0.5rem 1.5625rem;
}
.job-company-grid .company-nav li a:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	color: #222222;
	font-size: 1.125rem;
	font-weight: 900;
	position: absolute;
	top: 0.25rem;
	right: 0;
}
.job-company-grid .imageArea{
	position: relative;
	width: 50%;
	max-width: 800px;
	height: 43.75rem;
}
.job-company-grid .imageArea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media only screen and (max-width: 1340px) {
	.job-company-grid .contentArea{
		padding-left: 4.375rem;
	}
}
@media only screen and (max-width: 767px) {
	.job-company-guide{
		padding: 4.5rem 0 0 0;
	}
	.job-company-guide .guide-ttl{
		margin-bottom: 3rem;
	}
	.job-company-grid .contentArea{
		width: 100%;
		max-width: 100%;
		padding: 0 5% 2.5rem 5%;
	}
	.job-company-grid .contentArea h3{
		font-size: 1.125rem;
		margin-bottom: 1.5rem;
	}
	.job-company-grid .company-nav{
		margin-top: 1.875rem;
	}
	.job-company-grid .company-nav li{
		display: inline-block;
	}
	.job-company-grid .company-nav li + li{
		margin-left: 1.5rem;
	}
	.job-company-grid .company-nav li a{
		font-size: 1rem;
		padding: 0 1.5rem 0.35rem 1rem;
	}
	.job-company-grid .company-nav li a:after{
		font-size: 1rem;
		top: 0;
	}
	.job-company-grid .imageArea{
		width: 100%;
		max-width: 100%;
		height: auto;
	}
}
/**
/* 施工事例 CSS
----------------------------------------------- */
/*　　一覧　　*/
.case-wrap{
	padding: 6.25rem 0 8.5rem 0;
}
.case-guide .case-list{
	column-gap: 2.8125rem;
	row-gap: 4.25rem;
}
.case-list .case-items{
	width: calc(33.3333% - 1.875rem);
}
.front-example .case-swiper .swiper-wrapper.center > .case-items{
	width: 60%;
}
.front-example .case-list .case-items .imageArea{
	display: block;
	height: 32vw;
	max-height: 380px;
}
@media only screen and (max-width: 1024px) {
	.front-example .case-list .case-items .imageArea{
		height: 38vw;
		max-height: 380px;
	}
}
@media only screen and (max-width: 767px) {
	.front-example .case-list .case-items .imageArea{
		height: 66vw;
		max-height: 380px;
	}
}

.case-list .case-items .more_btn li a{
	font-size: 1.375rem;
}
.case-list .case-items .imageArea{
	margin-bottom: 2.8125rem;
}
.mainArea > .case-list .case-items .imageArea{
	height: 14vw;
	max-height: 140px;
}
.case-list .case-items .imageArea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.case-list .case-items .data{
	align-items: flex-start;
	flex-wrap: wrap;
	column-gap: 1.25rem;
	margin-bottom: 0.625rem;
}
.case-list .case-items .date{
	font-family: "Big Shoulders Stencil Text", serif;
	color: #a2a2a2;
	font-size: 1.125rem;
	font-weight: 800;
	line-height: 1.5;
}
.case-list .case-items .category{
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	/* margin-left: 1.25rem; */
}
.case-list .case-items .category a{
	color: #214084;
}
.case-list .case-items .category span{
	display: inline-block;
}
.case-list .case-items .category span + span{
	margin-left: 0.625rem;
}
.case-list .case-items .ttl{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	text-align: left;
}
.case-list .case-items .more_btn{
	text-align: right;
	margin-top: 1.25rem;
}
@media only screen and (max-width: 767px) {
	.case-wrap{
		padding: 4.25rem 0 5.5rem 0;
	}
	.case-guide .case-list{
		column-gap: 0;
		row-gap: 2.25rem;
	}
	.case-list .case-items{
		width: 100%;
	}
	.front-example .case-swiper .swiper-wrapper.center > .case-items{
		width: 100%;
	}
	.case-list .case-items .imageArea{
		margin-bottom: 1.25rem;
	}
	.mainArea > .case-list .case-items .imageArea{
		height: 65vw;
		max-height: none;
	}
	.case-list .case-items .data{
		margin-bottom: 0.325rem;
	}
	.case-list .case-items .date{
		font-size: 1rem;
	}
	.case-list .case-items .category{
		font-size: 0.9375rem;
		margin-left: 1rem;
	}
	.case-list .case-items .category span + span{
		margin-left: 0.325rem;
	}
	.case-list .case-items .ttl{
		font-size: 1.125rem;
		/* font-size: 0.9375rem; */
	}
	.case-list .case-items .more_btn{
		margin-top: 1rem;
	}
}
/**
/* 新着情報 CSS
----------------------------------------------- */
/*　　一覧　　*/
.news-wrap{
	padding: 6.25rem 0 8.5rem 0;
}
.news-list .news-items a{
	display: flex;
	border-bottom: 1px solid #333333;
	padding: 1.625rem 1.875rem 1.525rem 3.125rem;
}
.news-list .news-items:first-child a{
	padding: 0 1.875rem 1.525rem 3.125rem;
}
.news-list .news-items a .date{
	width: 7.5rem;
	font-family: "Big Shoulders Stencil Text", serif;
	color: #a2a2a2;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.8;
}
.news-list .news-items a h3{
	width: calc(100% - 7.5rem);
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
}
@media only screen and (max-width: 767px) {
	.news-wrap{
		padding: 2.25rem 0 5.5rem 0;
	}
	.news-list .news-items a{
		display: block;
		padding: 1rem 1rem 1rem 1rem;
	}
	.news-list .news-items:first-child a{
		padding: 1rem 1rem 1rem 1rem;
	}
	.news-list .news-items a .date{
		width: 100%;
		font-size: 0.9375rem;
	}
	.news-list .news-items a h3{
		width: 100%;
		font-size: 0.9375rem;
	}
}
/**
/* 投稿詳細 CSS
----------------------------------------------- */
.single-guide .entry-header{
	border-bottom: 1px solid #333333;
	padding-bottom: 1rem;
	margin-bottom: 2.5rem;
}
.single-guide .entry-header h2{
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5;
}
.single-guide .entry-header .data{
	align-items: flex-start;
	margin-top: 0.65rem;
}
.single-guide .entry-header .date{
	margin-bottom: 0.3em;
	font-family: "Big Shoulders Stencil Text", serif;
	color: #a2a2a2;
	font-size: 1.125rem;
	font-weight: 800;
	line-height: 1.5;
}
.single-guide .entry-header .category{
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	margin-left: 1.25rem;
}
.single-guide .entry-header .category a{
	color: #214084;
}
.single-guide .entry-header .category span{
	display: inline-block;
}
.single-guide .entry-header .category span + span{
	margin-left: 0.625rem;
}
.single-guide .entry-body h2{
	background: #333333;
	color: #ffffff;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.5;
	border-radius: 3px;
	padding: 0.9375rem 1.25rem;
	margin-bottom: 1.25rem;
}
.single-guide .entry-body h3{
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.45;
	border-left: 0.5rem solid #333333;
	padding-left: 1rem;
	margin-bottom: 1.125rem;
	margin-top: 1.25rem;
}
.single-guide .entry-body h4{
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.45;
	border-bottom: 1px solid #333333;
	padding-bottom: 0.35rem;
	margin-bottom: 1.125rem;
	margin-top: 1.25rem;
}
.single-guide .entry-body p{
	font-size: 1rem;
	font-weight: 400;
	line-height: 2;
	margin-bottom: 2.5rem;
}
.single-guide .entry-body p:last-child{
	margin-bottom: 0;
}
.single-guide .entry-body ol{
	list-style: decimal;
	margin: 2.5rem 0 2.5rem 1.5rem;
}
.single-guide .entry-body > ul{
	list-style: disc;
	margin: 2.5rem 0 2.5rem 1.5rem;
}
.single-guide .entry-body ol li,
.single-guide .entry-body ul li{
	font-size: 1rem;
	font-weight: 400;
	line-height: 2;
}
.single-guide .entry-body figcaption {
	font-size: 90%;
}
.alignleft {
	display: inline;
	float: left;
}
.alignright {
	display: inline;
	float: right;
}
.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}
blockquote.alignleft,
.wp-caption.alignleft,
img.alignleft {
	margin: 0 5rem 3.75rem 0;
}
blockquote.alignright,
.wp-caption.alignright,
img.alignright {
	margin: 0 0 3.75rem 5rem;
}
blockquote.aligncenter,
.wp-caption.aligncenter,
img.aligncenter {
	clear: both;
}
.single-guide .entry-author{
	background: #eeeeee;
	padding: 1rem 1.5rem;
	margin-top: 2.5rem;
}
.single-guide .entry-author p{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.8;
}
.single-guide .entry-author .name{
	margin-bottom: 0.5em;
	font-size: 1.1em;
	font-weight: 600;
	line-height: 1.5;
}
.single-guide .entry-author .tel{
	display: inline-block;
	margin-right: 1.2em;
	font-size: 1.2em;
	font-weight: 500;
}
.single-guide .entry-author .time{
	display: inline-block;
}
.single-guide .page-nav{
	width: 100%;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
	column-gap: 0.5em;
	margin-top: 6.25rem;
}
.single-guide .page-nav .nav__item{
	position: relative;
}
.single-guide .page-nav .nav__item a{
	position: relative;
	display: block;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
}
.single-guide .page-nav .nav__item--prev a{
	padding-left: 1.5625rem;
}
.single-guide .page-nav .nav__item--next a{
	padding-right: 1.5625rem;
}
.single-guide .page-nav .nav__item a:before{
	font-family: "Font Awesome 5 Free";
	color: #333333;
	font-size: 1.125rem;
	font-weight: 900;
	position: absolute;
	top: 0;
}
.single-guide .page-nav .nav__item--prev a:before{
	content: "\f060";
	left: 0;
}
.single-guide .page-nav .nav__item--next a:before{
	content: "\f061";
	right: 0;
}
.single-guide .page-nav .return_btn{
	width: 14.3125rem;
}
.single-guide .page-nav .return_btn .btn{
	background: #333333;
	display: block;
	color: #ffffff;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 3;
	text-align: center;
	text-decoration: none;
	border-radius: 3px;
}
@media only screen and (max-width: 767px) {
	.single-guide .entry-header{
		margin-bottom: 1.5rem;
	}
	.single-guide .entry-header h2{
		font-size: 1.125rem;
	}
	.single-guide .entry-header .date{
		font-size: 1rem;
	}
	.single-guide .entry-header .category{
		font-size: 0.9375rem;
		margin-left: 1rem;
	}
	.single-guide .entry-header .category span + span{
		margin-left: 0.625rem;
	}
	.single-guide .entry-body h2{
		font-size: 1rem;
		padding: 0.75rem 1rem;
		margin-bottom: 1rem;
	}
	.single-guide .entry-body h3{
		font-size: 1rem;
		border-left: 0.35rem solid #333333;
		padding-left: 0.65rem;
		margin-bottom: 0.65rem;
		margin-top: 1.25rem;
	}
	.single-guide .entry-body h4{
		font-size: 1rem;
		padding-bottom: 0.35rem;
		margin-bottom: 1rem;
		margin-top: 1.25rem;
	}
	.single-guide .entry-body p{
		font-size: 0.9375rem;
		margin-bottom: 1.5rem;
	}
	.single-guide .entry-body p:last-child{
		margin-bottom: 0;
	}
	.single-guide .entry-body ol{
		margin: 1.5rem 0 1.5rem 1.25rem;
	}
	.single-guide .entry-body ul{
		margin: 1.5rem 0 1.5rem 1.25rem;
	}
	.single-guide .entry-body ol li,
	.single-guide .entry-body ul li{
		font-size: 0.9375rem;
	}
	.single-guide .entry-body figcaption {
		font-size: 90%;
	}
	.alignleft {
		display: block;
		float: none;
	}
	.alignright {
		display: block;
		float: none;
	}
	.aligncenter {
		display: block;
		margin-right: auto;
		margin-left: auto;
	}
	blockquote.alignleft,
	.wp-caption.alignleft,
	img.alignleft {
		margin: 0 auto 1.5rem auto;
	}
	blockquote.alignright,
	.wp-caption.alignright,
	img.alignright {
		margin: 0 auto 1.5rem auto;
	}
	.single-guide .entry-author{
		padding: 1rem;
		margin-top: 1.5rem;
	}
	.single-guide .entry-author p{
		font-size: 0.9375rem;
	}
	.single-guide .page-nav{
		margin-top: 4.25rem;
	}
	.single-guide .page-nav .nav__item a{
		font-size: 0.9375rem;
	}
	.single-guide .page-nav .prev-link:after{
		content: attr(data-prev);
		text-align: center;
	}
	.single-guide .page-nav .next-link:after{
		content: attr(data-next);
		text-align: center;
	}
	.single-guide .page-nav .nav__item-img,
	.single-guide .page-nav .nav__item-ttl{
		display: none;
	}
	.single-guide .page-nav .nav__item--prev a{
		padding-left: 1.5625rem;
	}
	.single-guide .page-nav .nav__item--next a{
		padding-right: 1.5625rem;
	}
	.single-guide .page-nav .nav__item a:before{
		font-size: 1rem;
	}
	.single-guide .block_btn{
		width: 100%;
		text-align: center;
		margin-top: 2.5rem;
	}
	.single-guide .block_btn .btn{
		background: #333333;
		display: block;
		color: #ffffff;
		font-size: 1rem;
		font-weight: 900;
		line-height: 3.4;
		text-align: center;
		text-decoration: none;
	}
}

/* 投稿追加
========================================== */
.postBox .postPic{
	margin-bottom:30px;
	text-align:center;}

.postBox .postPic img{
	max-width:600px;
	height:auto;}

.postBox .postLead{
	margin-bottom:50px;
	padding:20px;
	border-top: 1px solid var(--main-color);
	border-bottom: 1px solid var(--main-color);}

.postBox .postMokuji{
	margin-bottom:50px;
	padding: 1em 1.5em;
	background-color:var(--c-grey);}

.postBox .postMokuji h3{
	margin-bottom:15px;
	font-size: 100%;
	font-weight:normal;}

.postBox .postMokuji ul{
	margin-left: 1em;
	list-style-type: none;}

.postBox .postMokuji li{
	position: relative;
	padding-left: 20px;}

.postBox .postMokuji li+li{margin-top: 0.5em;}
.postBox .postMokuji li::after{
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -4px;
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px var(--main-color);
	border-right: solid 1px var(--main-color);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.postBox .postMokuji li a{color: var(--txt-color);}

.postBox .postSubbox{margin-bottom: 60px;}
.postBox .postSubbox .subTitle{
	position: relative;
	line-height:1.2;
	margin-bottom:20px;
	padding:5px 10px 10px 20px;
	border-bottom: 1px solid #ddd;
	font-weight: 600;
}
.postBox .postSubbox .subTitle::before {
	position: absolute;
	content: "";
	z-index: 3;
	left:0;
	top:0;
	width:6px;
	height: 100%;
	background-color: var(--main-color);
}

.postBox .postSubbox .subText{margin-bottom: 2em;}
@media screen and (max-width:840px){
	.postBox .postPic img{
		max-width:100%;
		height:auto;}
}
@media screen and (max-width:599px){
	.postBox .postLead{
		padding:20px 10px;}

	.postBox .postMokuji  ul{margin-left:0;}
	.postBox .postSubbox{
		margin-bottom: 30px;
	}
}

.postSlider{margin-bottom: 60px;}
.postSlider .mainImage{
	border-bottom: 1px solid #ddd;
	box-sizing: border-box;
	margin-bottom: 20px;
}
.postSlider .mainImage ul li{
	padding: 10px;
	height: 400px;
	list-style-type: none;
}
.postSlider .mainImage ul li .img img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	/* position: absolute;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-moz-transform: translate(-50%, 0);
	transform: translate(-50%, 0); */
}
.postSlider .mainImage ul li .img {
	position:relative;
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	max-width: 350px;
	transition-property: transform;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	background: #fff;
}
.postSlider .mainImage ul li .img:after{
	display: block;
	padding-top: 75%;
	content: '';
}
.postSlider .thumbImage{
	margin: 0 auto;
}
.postSlider .thumbImage ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	list-style-type: none;}

.postSlider .thumbImage ul li{
	position: relative;
	margin: 0 4px 10px 0;
	width: 100px;
}

.postSlider .thumbImage ul li:before{
	display: block;
	padding-top: 100%;
	content: '';
}
.postSlider .thumbImage ul li img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
	border: 1px solid #ccc;
	box-sizing: border-box;
	cursor: pointer;
}
.postSlider .thumbImage ul li.swiper-slide{
	opacity: 0.6;
	transform: scale(1);
}
.postSlider .thumbImage ul li.swiper-slide-thumb-active{
	opacity: 1;
}
.postSlider .thumbImage ul li.swiper-slide-thumb-active img{
	border: 2px solid var(--main-color);
}
.postSlider ul{margin-left: 0!important;}

@media screen and (max-width:840px){
	.postSlider .mainImage ul li{
		padding: 10px;
		height: auto;
		aspect-ratio: 4/3;
	}
}
@media screen and (max-width:599px){
	.postSlider .thumbImage ul li{
		position: relative;
		margin: 0 2% 10px 0;
		width:calc((100% - 8%)/5);
	}
	.postSlider .thumbImage ul li:nth-child(5n){margin-right: 0;}
}

/* Table
========================================== */
.tableType01{
	width:100%;
	margin-bottom:10px;
	border-collapse: separate;
	border-spacing: 6px;
}

.tableType01 th,
.tableType01 td{
	text-align:left;
	vertical-align:middle;
	padding:1em 1em;
}

.tableType01 th{
	width: 9em;
	background-color: #eeeeee;
	border-radius: 3px;
}
.tableType01.nowrap th{white-space:nowrap;}

.tableType01 td{
	position: relative;
	background-color: #fff;
	border-bottom: 1px solid #333333;
}

@media screen and (max-width: 599px) {
	.tableType01,
	.tableType01 tbody,
	.tableType01 tr,
	.tableType01 th,
	.tableType01 td{
		display:block;
		width:100%;
	}
	.tableType01 th,
	.tableType01 td{border-bottom:none;}
	.tableType01 th{padding:0.5em 1em;}
	.tableType01 tr:not(:last-child) td::after{display: none;}
}
.baPhoto{
	display: flex;
	justify-content: center;
}

.baPhoto .before{
	position: relative;
	margin-right: 70px;
}

.baPhoto .before,
.baPhoto .after{
	width: calc((100% - 70px) / 2);
}

.baPhoto .before .img,
.baPhoto .after .img{
	width: 100%;
	height: 27vw;
	max-height: 220px;
}

.baPhoto .before::after{
	content: "";
	position: absolute;
	top: calc(50% - 1em);
	right: -40px;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	border-top: 3px solid #333333;
	border-right: 3px solid #333333;
	transform: translateY(-50%) rotate(45deg);
}
.baPhoto .before img,
.baPhoto .after img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.baPhoto .before p,
.baPhoto .after p{
	padding:5px 10px;
	background-color: #eeeeee;
	text-align: center;
	border-radius: 0 0 3px 3px;
}
.baPhoto .after p{
	background-color: #333;
	font-weight: 500;
	color: #fff;
}

@media screen and (max-width:599px){
	.baPhoto{
		display: block;}
	.baPhoto .before,
	.baPhoto .after{
		width: 100%;
	}
	.baPhoto .before{
		margin-bottom: 60px;
	}
	.baPhoto .before::after{
		top: auto;
		right: auto;
		bottom: -40px;
		left: 50%;
		transform: translateX(-50%) rotate(135deg);
		background-size: contain;
		width: 20px;
		height: 20px;
	}
	.baPhoto .before .img,
	.baPhoto .after .img{
		width: 100%;
		height: 61vw;
		max-height: none;
	}
}

/**
/* お問い合わせ CSS
----------------------------------------------- */
.contact-wrap{
	padding: 6.25rem 0 0 0;
}
.contact-guide .tel-box{
	margin-top: 5rem;
}
.contact-guide .tel-box .box{
	display: inline-block;
	background: #FFFFFF;
	border: 2px solid #333333;
	padding: 0 1.875rem 0.9375rem 1.875rem;
}
.contact-guide .tel-box h3{
	display: inline-block;
	background: #333333;
	color: #ffffff;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.25;
	padding: 0.9375rem 1.25rem;
	margin-bottom: 1.25rem;
}
.contact-guide .tel-box .tel a{
	font-family: "Big Shoulders Stencil Text", serif;
	color: #333333;
	font-size: 3rem;
	font-weight: 800;
	line-height: 1.5;
}
.contact-guide .tel-box .hours{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.45;
}
.form-box{
	margin-top: 5rem;
	padding: 5rem 0 8.5rem 0;
}
.form-box .p-required{
	position: relative;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.45;
	margin-bottom: 2.5rem;
	padding-left: 3rem;
}
.form-box .p-required::before{
	content: "";
	display: block;
	position: absolute;
	background: url(../images/icn_required.png) no-repeat center;
	background-size: cover;
	width: 1.9375rem;
	height: 2rem;
	left: 0;
	top: calc(50% - 1rem);
}
.form-box .form-tbl{
	display: flex;
	margin-bottom: 1.25rem;
}
.form-box .form-tbl dt{
	position: relative;
	width: 21.25rem;
	background: #333333;
	color: #ffffff;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.25;
	padding: 1.5rem 1.25rem 1.5rem 2.1875rem;
	border-radius: 5px;
}
.form-box .form-tbl dt.required::before{
	content: "";
	display: block;
	position: absolute;
	background: url(../images/icn_required.png) no-repeat center;
	background-size: cover;
	width: 1.9375rem;
	height: 2rem;
	right: 1.75rem;
	top: 0.875rem;
}
.form-box .form-tbl dd{
	width: calc(100% - 21.25rem);
	font-size: 1rem;
	line-height: 1.5;
	font-weight: 400;
	padding-left: 1.25rem;
}
input[type="date"],
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
textarea,
select{
	width: 100%;
	height: 100%;
	background: #FFFFFF;
	border: 2px solid #333333;
	font-family: "Zen Kaku Gothic New", serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.25;
	padding: 1.125rem 1.25rem 1.125rem 2.1875rem;
	border-radius: 5px;
}
input[type="date"]::placeholder,
input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
textarea::placeholder{
	color: #a2a2a2;
}
input[type="date"]:-ms-input-placeholder,
input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="url"]:-ms-input-placeholder,
textarea:-ms-input-placeholder{
	color: #a2a2a2;
}
input[type="date"]::-ms-input-placeholder,
input[type="text"]::-ms-input-placeholder,
input[type="tel"]::-ms-input-placeholder,
input[type="email"]::-ms-input-placeholder,
input[type="url"]::-ms-input-placeholder,
textarea::-ms-input-placeholder{
	color: #a2a2a2;
}
textarea{
	height: 100%;
}
.submit_btn{
	text-align: center;
	margin-top: 5rem;
}
.submit_btn li{
	display: inline-block;
	width: 100%;
	max-width: 18.75rem;
}
input[type="submit"],
input[type="button"] {
	position: relative;
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	background: #333333;
	border: none;
	border-radius: 5px;
	font-family: "Zen Kaku Gothic New", serif;
	color: #FFFFFF;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 3.8;
	letter-spacing: 0.1em;
	text-align: center;
	cursor: pointer;
	transition: all 0.2s;
}
input[type="submit"]:hover,
input[type="button"]:hover {
	background-color: #214084;
	opacity: 0.8;
}
.form-box .p-note{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.25;
}
@media only screen and (max-width: 767px) {
	.contact-wrap{
		padding: 3.5rem 0 0 0;
	}
	.contact-guide .tel-box{
		margin-top: 3rem;
	}
	.contact-guide .tel-box .box{
		display: block;
		padding: 0 0.9375rem 0.9375rem 0.9375rem;
	}
	.contact-guide .tel-box h3{
		font-size: 1rem;
		padding: 0.75rem 1rem;
		margin-bottom: 1rem;
	}
	.contact-guide .tel-box .tel a{
		font-size: 2.5rem;
	}
	.contact-guide .tel-box .hours{
		font-size: 0.9375rem;
	}
	.form-box{
		margin-top: 3rem;
		padding: 3rem 0 5.5rem 0;
	}
	.form-box .p-required{
		font-size: 0.9375rem;
		margin-bottom: 1.5rem;
		padding-left: 2.5rem;
	}
	.form-box .form-tbl{
		display: block;
	}
	.form-box .form-tbl dt{
		width: 100%;
		font-size: 1rem;
		padding: 1rem;
		margin-bottom: 0.35rem;
	}
	.form-box .form-tbl dt.required::before{
		right: 0.65rem;
		top: 0.65rem;
	}
	.form-box .form-tbl dd{
		width: 100%;
		font-size: 0.9375rem;
		padding-left: 0;
	}
	input[type="date"],
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="url"],
	textarea,
	select{
		font-size: 0.9375rem;
		padding: 1rem;
	}
	.submit_btn{
		margin-top: 3rem;
	}
	input[type="submit"] {
		font-size: 1rem;
	}
	.form-box .p-note{
		font-size: 0.9375rem;
	}
}
.form-box .form-tbl .wpcf7-not-valid-tip {
	display: none!important;
}
.form-box .form-tbl .alert,
.form-box .submit_btn .alert {
	color: #dc3232;
}
.confirmArea .form-tbl {
	align-items: center;
}
.contactBtnList .btn_back.submit_btn {
	margin-top: 0.5rem;
}
.contactBtnList .btn_back.submit_btn input[type="button"] {
	max-width: 220px;
	background-color: #fff;
	color: #333;
	font-size: 1rem;
	line-height: 3.4;
	border: 1px solid #ddd;
}
/*　　プライバシーポリシー　　*/
.privacy-box{
	max-width: 880px;
	position: relative;
	margin-top: 5rem;
	margin-left: auto;
	margin-right: auto;
}
.privacy-box .box{
	background: #FFFFFF;
	border: 2px solid #333333;
	height: 13.75rem;
	padding: 2.5rem 2.5rem 1.5rem 2.5rem;
	overflow-y: scroll;
}
.privacy-box h3{
	position: absolute;
	background: #333333;
	color: #ffffff;
	font-size: 1.125rem;
	font-weight: 900;
	line-height: 1.25;
	padding: 0.9375rem 1.25rem;
	top: -1.5625rem;
	left: 2.5rem;
}
.privacy-box dl{
	margin-top: 1.4em;
}
.privacy-box p{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.85;
}
.privacy-box dl dt{
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.25;
	margin-bottom: 0.3125rem;
}
.privacy-box dl dd{
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.85;
}
@media only screen and (max-width: 767px) {
	.privacy-box{
		margin-top: 4rem;
	}
	.privacy-box .box{
		height: 12rem;
		padding: 2rem 1rem 1rem 1rem;
	}
	.privacy-box h3{
		font-size: 1rem;
		padding: 0.65rem 1.25rem;
		top: -18px;
		left: 2.5rem;
	}
	.privacy-box p{
		font-size: 0.9375rem;
	}
	.privacy-box dl dt{
		font-size: 0.9375rem;
	}
	.privacy-box dl dd{
		font-size: 0.9375rem;
	}
}

.form-box.thanks,
.form-box.page_404 {
	margin-top: 0;
	text-align: center;
}
.form-box.thanks .ttl,
.form-box.page_404 .ttl {
	color: #214084;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.54;
  margin-bottom: 1.8em;
}
.form-box.thanks .txt,
.form-box.page_404 .txt {
	line-height: 1.9;
}
.form-box.thanks .txt + .txt,
.form-box.page_404 .txt+ .txt {
	margin-top: 1.9em;
}
.form-box.thanks .txt > a,
.form-box.page_404 .txt > a {
	text-decoration: underline;
	transition: all 0.2s;
}
.form-box.thanks .txt > a:hover,
.form-box.page_404 .txt > a:hover {
	text-decoration: none;
}
.form-box.thanks .returnBtn a,
.form-box.page_404 .returnBtn a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	margin-top: 3em;
	padding: 1.2em 0;
	background-color: #333333;
	font-weight: bold;
	color: #fff;
	border-radius: 3px;

}

/**
/* サイトマップ CSS
----------------------------------------------- */
.site-map-wrap{
	padding: 6.25rem 0 8.5rem 0;
}
.site-map-guide .site-map-list{
	-webkit-justify-content: center;
	justify-content: center;
}
.site-map-guide .site-map-items + .site-map-items{
	margin-left: 12.5rem;
}
.site-map-guide .site-map-items li{
	margin-bottom: 1.5rem;
}
.site-map-guide .site-map-items li a{
	color: #333333;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.5;
}
.site-map-guide .site-map-items li ul{
	margin-left: 1rem;
	margin-top: 1.5rem;
}
@media only screen and (max-width: 767px) {
	.site-map-wrap{
		padding: 3rem 0 5.5rem 0;
	}
	.site-map-guide .site-map-items{
		width: 100%;
	}
	.site-map-guide .site-map-items + .site-map-items{
		margin-left: 0;
	}
	.site-map-guide .site-map-items li{
		margin-bottom: 0.9375rem;
	}
	.site-map-guide .site-map-items li a{
		font-size: 0.9375rem;
	}
	.site-map-guide .site-map-items li ul{
		margin-left: 0.9375rem;
		margin-top: 0.9375rem;
	}
}

/**
/* インタビュー CSS
----------------------------------------------- */

.modal {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
	overflow: auto;
	visibility: hidden;
	opacity: 0;
	z-index: -10001;
	transition: all 0.15s;
}
.modal.isOpen {
	visibility: visible;
	opacity: 1;
	z-index: 10001;
}
.modal .modal-bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10010;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
}
.modal .modal-box {
	position: relative;
	z-index: 10050;
	background-color: #fff;
	margin: 10% auto;
	padding: 45px;
	max-width: 1100px;
	width: 90%;
	border-radius: 30px;
	color: #222;
}
.modalClose{
	position: absolute;
	top: 30px;
	right:30px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	width: 2rem;
	height: .2rem;
	background: currentColor;
	border-radius: 0.1rem;
	transform: rotate(45deg);
	background-color: #333;
	cursor: pointer;
}
.modalClose::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #333;
	border-radius: inherit;
	transform: rotate(90deg);
}
@media screen and (max-width:840px){
	.modal .modal-box {
		padding:60px 30px 30px;
		border-radius: 20px;
	}
}
.interview_cont-inner .modal-box .title{
	line-height: 1.4;
	margin-bottom: 1rem;
	padding-bottom: 0.5em;
	border-bottom: 4px solid #eff7fa;
	font-size: 1.125rem;
	font-weight: 600;
	color: #444;
}
.interview_cont-inner .modal-box * + .title{margin-top: 2.2em;}
.interview_cont-inner .modal-box .profileWrap{display: flex;}
.interview_cont-inner .modal-box .profileWrap .box{width: 50%;}
.interview_cont-inner .modal-box .profileWrap dl{
	display: flex;
	margin-bottom: 3px;
	width: 100%;
}
.interview_cont-inner .modal-box .profileWrap dl dt,
.interview_cont-inner .modal-box .profileWrap dl dd{padding: .35em 1em;}
.interview_cont-inner .modal-box .profileWrap dl dt{
	background-color: #333;
	width: 7em;
	color: #fff;
	text-align: center;
}
.interview_cont-inner .modal-box .profileWrap dl dd{
	border-bottom: 1px solid #c3c3c3;
	width: calc(100% - 7em);
}
@media screen and (max-width:840px){
	.interview_cont-inner li{width: calc((100% - 4%)/2);}
	.interview_cont-inner li:nth-child(3n){margin-right: 4%;}
	.interview_cont-inner li:nth-child(even){margin-right: 0;}

	.interview_cont-inner li .name{display: block;}
	.interview_cont-inner li .name span{display: block;text-align: center;}
	.interview_cont-inner .modal-box .title{font-size: 1.125rem;}
}
@media screen and (max-width:768px){
	.interview_cont-inner .modal-box .profileWrap{display: block;}
	.interview_cont-inner .modal-box .profileWrap .box{width: 100%;}
}
