/* CSS Document */
.top{
	position: relative;
	z-index: 2;
	height: var(--windowfixdheight);
}
.top .t_text{
	height: var(--windowfixdheight);
	position: absolute;
	inset:0;
	z-index: 3;
	background-color: rgba(0,0,0,0.15);
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
}
body[wc-view-code="sp"] .top .t_text{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .top .t_text{
	padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .top .t_text{
	padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.top .t_text > .t_in_text h2{
	color: #fff;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.35em;
}
body[wc-view-code="tb"] .top .t_text > .t_in_text h2{
	font-size: 2.8rem;
}
body[wc-view-code="pc"] .top .t_text > .t_in_text h2{
	font-size: 3.2rem;
}
.top .t_text > .t_in_text p{
	font-family: "Oswald";
	font-weight: 700;
	letter-spacing: 1px;
	color: #fff;
}
body[wc-view-code="tb"] .top .t_text > .t_in_text p{
	font-size: 1.25rem;
	margin-top: 0.35rem;
}
body[wc-view-code="pc"] .top .t_text > .t_in_text p{
	font-size: 1.45rem;
	margin-top: 0.45rem;
}
.top .t_slider{
	height: var(--windowfixdheight);
}
.top .t_slider img{
	width: 100vw;
	height: var(--windowfixdheight) !important;
}
.top .t_slider .cs_wrap[class*="fade"]{
	width: 100vw !important;
	height: var(--windowfixdheight) !important;
}
.top .t_slider .cs_inner{
	width: 100vw !important;
	height: var(--windowfixdheight) !important;
}
.top .t_slider .cs_wrap[class*="fade"] .cs_inner{
	margin: 0;
}
.top .t_slider .cs_wrap[class*="fade"] .comboslider{
	width: 100vw !important;
	height: var(--windowfixdheight) !important;
}
.t_s_box{
	width: 100vw !important;
	height: var(--windowfixdheight) !important;
}
.t_s_box img{
	width: 100vw !important;
	height: var(--windowfixdheight) !important;
}
/*○○について*/
.about{
	box-sizing: border-box;
	display: flex;
}
body[wc-view-code="sp"] .about{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .about{
	padding: var(--headerHeight) 5vw;
}
body[wc-view-code="sp"] .about,
body[wc-view-type="tb"] .about{
	flex-direction: column;
}
body[wc-view-code="pc"] .about{
	padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.about .contents_title{
}
body[wc-view-type="tb-l"] .about .contents_title{
	width: 350px;
}
body[wc-view-code="pc"] .about .contents_title{
	width: 400px;
}
.about .a_text{
}
body[wc-view-type="tb-l"] .about .a_text{
	width: calc(100% - 400px);
}
body[wc-view-code="pc"] .about .a_text{
	width: calc(100% - 400px);
}
.about .a_text > p{
	line-height: 1.8rem;
	transition: opacity 600ms cubic-bezier(0.25, 1, 0.5, 1),transform 600ms cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0;
	transform: translateY(1.5rem);
}
.about .a_text > p.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
.about .a_text > p:not(:first-of-type){
	margin-top: 0.5rem;
}
.about .a_text > .btn{
	margin: 1rem 0 0 auto;
}
body[wc-view-code="sp"] .about .a_text > .btn{
	margin: 1rem auto 0;
}
/*背景のみ*/
.back_img{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
body[wc-view-code="sp"] .back_img{
	aspect-ratio:16/9;
}
body:not([wc-view-code="sp"]) .back_img{
	height: 250px;
}
.back_img figure{
	position: absolute;
	inset:0;
}
body[wc-view-code="sp"] .back_img figure img{
	aspect-ratio:2/1;
}
body:not([wc-view-code="sp"]) .back_img figure img{
	height: 250px;
}
/*サービス*/
.service{
	box-sizing: border-box;
}
body[wc-view-code="sp"] .service{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .service{
	padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .service{
	padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.service .contents_title::before{
	content: "Service";
}
.service .s_flex{
	display: flex;
	gap:1px;
}
body[wc-view-code="sp"] .service .s_flex{
	flex-direction: column;
	margin-top: 1.5rem;
}
body[wc-view-code="tb"] .service .s_flex{
	flex-wrap:wrap;
	margin-top: 1.5rem;
}
body[wc-view-code="pc"] .service .s_flex{
	margin-top: 1.5rem;
}
.service .s_flex a{
	text-decoration: none;
	display: block;
	transition: opacity 600ms cubic-bezier(0.25, 1, 0.5, 1),transform 600ms cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0;
	transform: translateY(1.5rem);
}
.service .s_flex a.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
body[wc-view-code="tb"] .service .s_flex a{
	width: calc(50% - 0.5px);
}
body[wc-view-code="pc"] .service .s_flex a{
	width: calc((100% / 4) - 0.75px);
}
.service .s_flex a article{
	position: relative;
	z-index: 3;
	aspect-ratio:2/1;
}
body[wc-view-code="pc"] .service .s_flex a article{
	aspect-ratio:1/1;
}
.service .s_flex a article .s_text{
	position: absolute;
	top: 50%;
	left: 1.5rem;
	transform: translateY(-50%);
	z-index: 4;
}
.service .s_flex a article .s_text > h2{
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	display: flex;
	align-items: center;
}
.service .s_flex a article .s_text > h2 .arrow{
	width: 1.5rem;
	height: 1.5rem;
	display: table;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-top: 0.25rem;
  margin-left: 0.5rem;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
.service .s_flex a article .s_text > h2 .arrow::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 2.25rem;
	height: 2.25rem;
	background-color: #fff;
	-webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.service .s_flex a article .s_text > .s_num{
	font-family: "Oswald";
	font-size: 1rem;
	letter-spacing: 1px;
	color: #fff;
	font-weight: 700;
}
.service .s_flex a article figure{
	position: absolute;
	inset:0;
	z-index: 1;
}
.service .s_flex a article figure::before{
	content: "";
	position: absolute;
	inset:0;
	z-index: 2;
	background-color: rgba(0,0,0,0.25);
}
.service .s_flex a article figure img{
	aspect-ratio:2/1;
}
body[wc-view-code="pc"] .service .s_flex a article figure img{
	aspect-ratio:1/1;
}
/*採用情報*/
.recruit{
	box-sizing: border-box;
	position: relative;
	z-index: 3;
	overflow: hidden;
	display: flex;
}
body[wc-view-code="sp"] .recruit{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-code="sp"] .recruit,
body[wc-view-type="tb"] .recruit{
	flex-direction: column;
}
body[wc-view-code="tb"] .recruit{
	padding: var(--headerHeight) 5vw;
}
body[wc-view-code="pc"] .recruit{
	padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.recruit .contents_title{
	color: #fff;
	position: relative;
	z-index: 4;
}
body[wc-view-code="pc"] .recruit .contents_title{
	width: 450px;
}
.recruit .contents_title::before{
	content: "Recruit";
	color: #fff;
}
.recruit .recruit_text{
	position: relative;
	z-index: 4;
}
body[wc-view-code="pc"] .recruit .recruit_text{
	width: calc(100% - 450px);
	margin-top: 3.5rem;
}
.recruit .recruit_text > p{
	line-height: 1.8rem;
	color: #fff;
	transition: opacity 600ms cubic-bezier(0.25, 1, 0.5, 1),transform 600ms cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0;
	transform: translateY(1.5rem);
}
.recruit .recruit_text > p.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
.recruit .recruit_text > p:not(:first-of-type){
	margin-top: 0.25rem;
}
.recruit figure{
	position: absolute;
	z-index: 1;
	inset:0;
}
.recruit figure::before{
	content: "";
	position: absolute;
	inset:0;
	background-color: rgba(0,0,0,0.3);
}
.recruit figure img{
	height: 100%;
}
.recruit .btn{
	position: relative;
	z-index: 4;
	margin: 1.25rem 0 0 auto;
	transition: opacity 600ms cubic-bezier(0.25, 1, 0.5, 1),transform 600ms cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0;
	transform: translateY(1.5rem);
}
.recruit .btn.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
/*お知らせ*/
.news{
	box-sizing: border-box;
	display: flex;
}
body[wc-view-code="sp"] .news{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .news{
	padding: var(--headerHeight) 5vw;
}
body[wc-view-type="tb"] .news,
body[wc-view-code="sp"] .news{
	flex-direction: column;
}
body[wc-view-code="pc"] .news{
	padding: var(--headerHeight) calc((100vw - 1100px) / 2);
}
.news .contents_title{
}
body[wc-view-type="tb-l"] .news .contents_title,
body[wc-view-code="pc"] .news .contents_title{
	width: 300px;
}
.news .contents_title::before{
	content: "News";
}
.news .n_block{
}
body[wc-view-type="tb-l"] .news .n_block,
body[wc-view-code="pc"] .news .n_block{
	width: calc(100% - 300px);
	margin-top: 3.5rem;
}
.news .n_block > a{
	text-decoration: none;
	border-bottom: 1px solid #bbb;
	box-sizing: border-box;
	padding: 0.75rem;
	display: block;
	transition: opacity 600ms cubic-bezier(0.25, 1, 0.5, 1),transform 600ms cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0;
	transform: translateY(1.5rem);
}
.news .n_block > a.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
body[wc-view-code="pc"] .news .n_block > a{
	padding: 0.75rem;
}
.news .n_block > a:first-of-type{
	border-top: 1px solid #bbb;
}
.news .n_block > a article{
	display: flex;
	flex-direction: column-reverse;
}
.news .n_block > a article > .n_info{
	display: flex;
	padding-bottom: 0.25rem;
	align-items: center;
}
.news .n_block > a article > .n_info ul{
	list-style: none;
	list-style-position: outside;
	overflow: hidden;
	gap:0.25rem;
	padding-left: 0.5rem;
	box-sizing: border-box;
	display: flex;
	width: calc(100% - 4.7rem);
}
.news .n_block > a article > .n_info ul li{
	border: solid 1px #bbb;
  color: #bbb;
  font-size: 0.85rem;
  flex: none;
  line-height: calc(0.85rem +(1em - 1lh) / 2);
  height: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding-bottom: 0.1rem;
}
.news .n_block > a article > .n_info time{
	font-family: "Oswald";
	font-weight: 700;
	color: #333;
	font-size: 0.97rem;
	width:4.7rem;
}
.news .n_block > a article > h2{
	font-weight: 700;
	padding-right: 1.5rem;
	position: relative;
	z-index: 1;
	color: #333;
	overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
	font-size: 1.1rem;
}
.news .n_block > a article > h2 .arrow{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1.4rem;
  height: 1.4rem;
  z-index: 2;
  border-radius: 50%;
  border: solid 1px #333;
  box-sizing: border-box;
}
.news .n_block > a article > h2 .arrow::after{
	content: "";
  width: 2rem;
  height: 2rem;
  background-color: #333;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.news .n_block .btn{
	margin: 1rem auto 0 auto;
	transition: opacity 600ms cubic-bezier(0.25, 1, 0.5, 1),transform 600ms cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0;
	transform: translateY(1.5rem);
}
.news .n_block .btn.wcvisible{
	opacity: 1;
	transform: translateY(0);
}
body[wc-view-code="pc"] .news .n_block .btn{
	margin: 1.75rem 0 0 auto;
}
