@charset "utf-8";


*, *::before, *::after {
  box-sizing: border-box;
}

/*cssのリセット*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,
blockquote,pre,abbr,address,cite,code,del,dfn,em,img,
ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,
ol,ul,li,fieldset,form,label,legend,table,caption,
tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,
figcaption,figure,footer,header,hgroup,menu,nav,section,
summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    border: 0;
    outline: 0;
    background: transparent;
}
html{
	margin-top: 0!important;
}
 
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
     display: block;
}
 
ul,ol {
    list-style: none;
}
 
blockquote,
q {
    quotes: none;
}
 
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}
 
a{
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
    transition: all .5s;
}
a:hover{
	opacity: .8;
}
ins {
    text-decoration: none;
    color: #000;
    background-color: #ff9;
}
 
mark {
    font-weight: bold;
    font-style: italic;
    color: #000;
    background-color: #ff9;
}
 

abbr[title],
dfn[title] {
    cursor: help;
    border-bottom: 1px dotted;
}
 
table {
    border-spacing: 0;
    border-collapse: collapse;
}
 
hr {
    display: block;
    height: 1px;
    margin: 1em 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #ccc;
}
input[type="submit"],input[type="text"],input[type="email"],input[type="tel"],input[type="button"], input[type="reset"] {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
  }
   button{
    outline: none;
    padding: 0;
    appearance: none;
    background-color: transparent;
    border: none;
transition: all .5s;
  }
button:hover{
	opacity: .8;
}
html {
    font-size: 62.5%;
}
 
body {
    font-family: "Noto Sans JP", sans-serif;
    margin: 0;
    padding: 0;
    font-size:1.6rem;/* 16px*/
    color: #3C4253;
    line-height: 1.5;
}

img{
    width: 100%;
    image-rendering: -webkit-optimize-contrast;
    vertical-align: bottom;
}


article{
    overflow: hidden;
}
.inner{
	width: 95%;
	max-width: 1168px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {

	
}

/*-----------------------
         header
-------------------------*/
header {
    width: 100%;
    height: 72px;
    position: fixed;
    top: 0;
    z-index: 999999;
    background-color: rgba(247, 247, 247,.7);
}
.sub_header{
	background-color: #fff;
}
header.change-color {
    /* background-color: #fff; */
    /* transition: all .3s; */
}

.header_inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 95%;
	max-width: 1198px;
	margin: 0 auto;
	height: 100%;
	column-gap: 25px;
}
@media screen and (min-width: 1500px) {
	
	.header_inner{
		margin: 0 auto;
	}
}
.header_logo{
	width: 31%;
	max-width: 240px;
}
.header_logo a{
	display: block;
}

.header_nav {
    width: 90%;
    max-width: 702px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 15px;
}
.header_link{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	column-gap: 24px;
	
}

.header_nav > ul{
	display: flex;
	justify-content: space-between;
	width: 75%;
	max-width: 410px;
	column-gap: 10px;
	align-items: center;
	text-align: center;
}
.header_nav ul > li a{
    display: block;
    font-size: 14px;
    color: #363B49;
    font-weight: 500;
    text-align: center;
}

.header_nav > ul li{
    font-size: clamp(14px, 1.41vw, 16px);
    color: #fff;
    font-weight: 500;
    text-align: center;
	cursor: pointer;
	position: relative;
}
.drop-menu:hover .drop-menu-list {
  opacity: 1; /* 不透明度を最大に */
  transition: opacity .3s, visibility .3s; /* アニメーション設定 */
  visibility: visible; /* 下層メニューを表示 */
}


.sp_menu{
	display: none;
}
@media screen and (max-width: 1050px) {
    
	
	.header_logo {
	    width: 41%;
	    max-width: 200px;
	    min-width: 165px;
	    z-index: 999;
	}
	
    header{
		height: 64px;
		padding-top: 0;
	}
	header.active{
		transition: .3s;
		background-color: transparent;
	}
	header.active .header_logo{
		display: none;
	}
    .header_inner{
		align-items: center;
		margin: 0 auto;
	}
    .header_nav,.header_logo .pc_img{
    	display: none !important;
    }
    
    .sp_menu,.header_logo .sp_img{
        display: block;
    }
 
    .nav-menu {
        position: fixed;
        overflow-y: scroll;
        z-index: 99;
        width: 100%;
        top: 0;
        height: 100vh;
        display: none;
        background: rgba(20, 38, 83, .6);
    }
	.nav-menu img{
		width: 65%;
		max-width: 200px;
		max-width: 168px;
		margin: 20px 0  0 16px;
	}
	.g-menu{
		width: 90%;
		margin: 0 auto;
		margin-top: 125px;
	}
	 .nav-menu .header_link{
		 width: 95%;
		 margin: 0 auto;
		 justify-content: center;
		 margin-top: 80px;
		 column-gap: 15px;
		}
	.g-menu ul li {
		margin-top: 30px;
	}
	.g-menu ul li:first-child {
		margin-top: 32px;
	}
    .g-menu ul li a{
		display: block;
		font-size: 20px;
		font-weight: bold;
		color: #fff!important;
		position: relative;
		padding-bottom: 30px;
		letter-spacing: .04em;
		border-bottom: 1px solid #fff;
	}
	.g-menu ul li:last-child a{
		border-bottom: none;
		padding-bottom: 0;
	}
	.g-menu ul li .sub_en{
		    font-family: "Noto Sans JP", sans-serif;
		display: block;
		font-size: 12px;
		font-weight: 300;
	}
	.g-menu ul li.sp-submenu > span{
		font-family: 'Noto Serif JP', serif;
		text-align: center;
		display: block;
		font-size: 20px;
		font-weight: 500;
		color: #333333 !important;
		position: relative;
		padding: 0 20px;
		padding-bottom: 22px;
		letter-spacing: .12em;
		width: fit-content;
		margin: 0 auto;
	} 
	.sp-menu-list{
		display: none;
	}
	.sp-menu-list a{
		display: block;
		color: #333333;
		padding-bottom: 15px;
	}
	.js-menu-list .js-menu-title::after {
	  content: '';
	  width: 10px;
	  height: 10px;
	  border-top: solid 2px #333333;
	  border-right: solid 2px #333333;
	  position: absolute;
	  right: 0;
	  top: 15%;
	  transform: rotate(135deg) translateX(-50%);
	}

}



@media screen and (max-width: 1050px) {
/* hamburger */
    .toggle {
        position: fixed;
        right: 5px;
        top: 19px;
        width: 52px;
        height: 52px;
        cursor: pointer;
        z-index: 999;
        display: block;
    }

   
        
    .toggle span {
        display: block;
        position: absolute;
        width: 30px;
        height: 1.5px; /* borderの代わりにheightを使用 */
        background: #0C419A;
        transition: .35s ease-in-out;
        left: 50%;
        transform: translateX(-50%);
        border: none; /* borderを削除 */
    }

    .toggle span:nth-child(1) {
        top: 4.3px;
    }
    .toggle span:nth-child(2) {
        top: 13px;
        background: #0C419A;
    }
    .toggle span:nth-child(3) {
        top: 22px;
        background: #0C419A;
    }
    .toggle.active{
		border-radius: 100%;
		width: 52px;
		height: 52px;
	}
    .toggle.active span:nth-child(1) {
        top: 8%;
        left: 45%;
        width: 30px;
        -webkit-transform: rotate(-45deg) translate(-50%,-50%);
        -ms-transform: rotate(-45deg) translate(-50%,-50%);
        transform: rotate(-45deg) translate(-50%,-50%);
        background: #fff;
    }
    .toggle.active span:nth-child(2),
    .toggle.active span:nth-child(3) {
        top: 49%;
        left: 43%;
        width: 30px;
        -webkit-transform: rotate(45deg) translate(-50%,-50%);
        -ms-transform: rotate(45deg) translate(-50%,-50%);
        transform: rotate(45deg) translate(-50%,-50%);
        background: #fff;
    }
}

.sec_ttl .en_ttl{
	display: inline-block;
	 background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
}
.sec_ttl .en_ttl02{
	 background: #fff;
}
 .sec_ttl .en_ttl span{
	 font-weight: bold;
	 font-size: clamp(12px, 1.39vw, 20px);
	 padding: 0 16px;
	 line-height: 1.2;
	 color: #fff;
	 letter-spacing: .04em;
}
 .sec_ttl .en_ttl02 span {
        background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
 .sec_ttl h2 {
	font-size: clamp(20px, 2.78vw, 40px);
	font-weight: 600;
	margin-top: 30px;
	letter-spacing: .04em;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	line-height: 1;
}
.sec_ttl img {
    max-width: 127px;
    vertical-align: middle;
}


.sp_br,.sp_img{
    display: none;
}

@media screen and (max-width: 768px) {

    .sp_br,.sp_img{
        display: block;
    }
    .pc_br,.pc_img{
        display: none;
    }

	 .sec_ttl .en_ttl span{
		 padding: 0 6px;
		 line-height: 1.5;
		 display: block;
		 vertical-align: middle;
	}
	.sec_ttl h2{
		margin-top: 16px;
	}
}

.en_btn{
	display: flex;
	justify-content: space-between;
	column-gap: 10px;
	width: 67%;
	max-width: 280px;
}

.en_cta{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 48%;
	max-width: 136px;
	height: 56px;
	text-align: center;
	background: linear-gradient(242deg,rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	font-size: clamp(14px, 1.41vw, 16px);
	color: #fff;
	font-weight: 500;
	border-radius: 100vw;
	letter-spacing: .04em;
	position: relative;
}
.en_cta02{
	background: #07C4D9;
}

@media screen and (max-width: 1050px) {
	
	.en_cta {
	    width: 100%;
	    margin: 0 auto;
	    max-width: 310px;
	    height: 56px;
	    font-size: 16px;
	}

	.nav-menu .en_btn{
		margin: 0 auto;
		max-width: none;
		row-gap: 16px;
		width: 100%;
		margin-top: 70px;
		margin-bottom: 93px;
		flex-direction: column;
	}
	.nav-menu .en_cta:first-child{
		background: #fff;
	}
	.nav-menu .en_cta:first-child span{
			    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	    -webkit-background-clip: text;
	    -webkit-text-fill-color: transparent;
	
	}

}
/*-----------------------
         top
-------------------------*/
.mv{
	position: relative;
	padding-top: 53%;
}
.fv_movie{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	    height: 100%;
}
.fv_movie .movie_main{
	width: 100%;
	height: 100%;
	object-fit: cover;
	background-position: center center;
}
.mv_slider {
  height: 53vw;
  margin-inline: auto;
  overflow: hidden; 
}

.mv_slider .slick-img img {
  height: 100%;
  margin: auto;
  max-height: 100%;
  max-width: 100%;
  object-fit: cover;
  width: 100%;
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15); /* 拡大率 */
  }
}
.add-animation {
  animation: zoomUp 10s linear 0s normal both;
}
.in-mv{
	color: #fff;
	max-width: 1440px;
	position: absolute;
	top: 70%;
	left: 26%;
	width: 36.6%;
	transform: translate(-50%,-50%);
}

.in-mv .smalltxt{
	letter-spacing: .2em;
	font-weight: bold;
	font-size: clamp(12px, 1.41vw, 16px);
}
.in-mv h2{
	color: #fff;
	font-weight: 600;
	font-size: clamp(40px, 4.31vw, 62px);
	margin-top: 15px;
	letter-spacing: .04em;
	line-height: 1.3;
}
.in-mv .smalltxt02{
	letter-spacing: .04em;
	margin-top: 45px;
	font-weight: 400;
	font-size:clamp(14px, 1.41vw, 16px);
}
@media screen and (max-width: 930px) {

	.in-mv {
		top: 63%;
		left: 39%;
		width: 60%;
	}
}
@media screen and (max-width: 768px) {
	.mv {
	    position: relative;
	    padding-top: 180%;
	}
	.fv_movie .movie_main {
	    width: auto;
	}
	.mv_slider {
	  height: 150vw;
	}
	.mv_slider .slick-img img {
	  height: 100vh;
	}
	.in-mv {
	    max-width: 1440px;
	    position: absolute;
	    top: 78%;
	    left: 53%;
	    width: 90%;
	    transform: translate(-50%, -50%);
	}
	.in-mv p{
		font-size: clamp(22px, 3.66vw, 28px);
	}
	.in-mv .smalltxt02{
		margin-top: 32px;
	}

}

@media screen and (max-width: 479px) {
		.mv_slider {
		  height: 190vw;
		}
		.mv_slider .slick-img img {
		  height: 110vh;
		}
	.in-mv {
	    max-width: 1440px;
	    position: absolute;
	    top: 70%;
	    left: 50%;
	    width: 90%;
	    transform: translate(-50%, -50%);
	}
	
}


/*-----------------------
         message
-------------------------*/
#message{
	background-color: #F6F7F8;
	padding-top: 14px;
	padding-bottom: 120px;
}
#message .inner{
	max-width: 990px;
}
.messe_col{
	margin-top: 50px; 
	width: 95%;
	max-width: 875px;
}
.messe_img{
	display: block;
	width: 95%;
	max-width: 1344px;
	margin: 100px auto 0;
}
.messe_col p{
    margin-top: 35px;
    line-height: 1.8;
    letter-spacing: .04em;
    font-weight: 500;
    font-size: clamp(14px, 1.25vw, 18px);
}
@media screen and (max-width: 768px) {

	#message{
		padding-bottom: 60px;
		overflow: hidden;
	}
	.txt_pic{
		width: 901px;
	}
	.messe_col{
		margin-top: 24px;
	}
	.messe_col p.last{
		margin-top: 24px;
	}
	.messe_img{
		margin-top: 40px;
	}
}

/*-----------------------
         movie
-------------------------*/
#movie{
	background-image: url(../img/top_img02.jpg);
	background-size: cover;
	padding: 120px 0 88px;
	color: #fff;
}
#movie .sec_ttl h2{
	background: transparent;
	-webkit-text-fill-color: white;
}
.movie_fx{
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
}
.movie_txt{
	width: 42%;
	max-width: 486px;
}
.movie_txt p{
	font-size: clamp(14px, 1.41vw, 16px);
    font-weight: 500;
    letter-spacing: .04em;
	line-height: 1.8;
	margin-top: 48px;
}
.video-wrap {
  padding-top: 34.25%;
  position: relative;
  width: 47%;
  max-width: 546px;
}
.video-wrap iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.video-wrap p{
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: clamp(20px, 2.78vw, 40px);
	font-weight: 600;
	letter-spacing: .06em;
}
@media screen and (max-width: 768px) {

	#movie{
		padding: 50px 0;
	}
	.movie_fx {
	    flex-direction: column;
		align-items: center;
	    row-gap: 20px;
	}
	.movie_txt {
	    width: 90%;
	    max-width: 486px;
	}
	.video-wrap {
	    padding-top: 54.25%;
	    position: relative;
	    width: 100%;
	    max-width: 546px;
	}
}
/*-----------------------
         business
-------------------------*/
#business{
	background-color: #F6F7F8;
	padding: 120px 0 88px;
}


.business_fx{
	width: 90%;
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
	max-width: 1312px;
	margin: 0 auto;
	margin-top: 80px;
}
.business_fx:nth-child(even){
	margin-top: 64px;
}
.business_fx:nth-child(odd){
	flex-direction: row-reverse;
}


.business_txt{
	width: 44%;
	max-width: 544px;
	margin-top: 24px;
}
.business_img{
	width: 52%;
	max-width: 668px;
}

.business_txt span{
	    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	letter-spacing: .04em;
    font-weight: 500;
   font-size: clamp(14px, 1.41vw, 18px);
}

.business_txt h3{
	    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	font-weight: 600;
	font-size: clamp(18px, 2.499999vw, 32px);
	border-bottom: 1px solid rgba(0,0,0,.2);
	padding-top:32px; 
	padding-bottom: 32px;
}
.business_txt p{
	line-height: 1.8;
	letter-spacing: .04em;
    font-weight: 500;
	margin-top: 40px;
    font-size: clamp(13px, 1.41vw, 16px);
}
@media screen and (max-width: 768px) {

	#business {
	    padding: 50px 0 ;
	}
	.business_fx{
		display: flex;
		flex-direction: column-reverse;
		row-gap: 20px;
		max-width: 550px;
		margin: 0 auto;
		margin-top: 50px;
	}
	.business_fx:nth-child(odd) {
	    flex-direction: column-reverse;
	}
	.business_fx:nth-child(even) {
	    margin-top: 45px;
	}
	.business_txt h3 {
	   border-bottom: 1px solid rgba(0, 0, 0, .2);
	    padding-top: 15px;
	    padding-bottom: 15px;
	}
	.business_txt{
		width: 100%;
		max-width: 480px;
		margin-top: 0;
	}
	.business_txt p {
	    margin-top: 20px;
	}
	.business_img{
		width: 100%;
	}
}


/*-----------------------
        case
-------------------------*/


#case {
 background: linear-gradient(218deg,rgba(9, 48, 114, 1) 8%, rgba(10, 19, 41, 1) 100%);
   padding: 120px 0 95px;
}
#case .sec_ttl h2 {
    background: transparent;
    -webkit-text-fill-color: white;
}
#case .inner {
    width: 95%;
    max-width: 1184px;
    margin: 0 auto;
}
.case_list{
	max-width: 1184px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 13px;
	row-gap: 13px;
	margin-top: 48px;
	margin-bottom: 96px;
}
.case02{
	padding:80px 0 !important;
}
.case02 .case_list{
	margin-top: 40px;
	margin-bottom: 0;
}
.case_list li{
	width: 32.3%;
	max-width: 386px;
	padding: 24px 18px;
	/* height: 284px; */
	position: relative;
	background-color: #F6F7F8;
}
.case_list li span {
	color: #fff;
	font-weight: bold;
    font-size: 14px;
    padding: 0 8px;
    line-height: 1.2;
    letter-spacing: .04em;
    display: inline-block;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
}
.case_list li h3{
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: 600;
	line-height: 1.3;
	margin-top: 30px;
	letter-spacing: .04em;
	font-size: clamp(18px, 2.499999vw, 25px);
}

.case_txt{
	height: 290px;
	margin-top: 35px;
	padding: 24px 32px 24px 17px;
	background-color: #fff;
	border: 1px solid rgba(0,0,0,.2);
}

.case_txt dl dt{
	color: #0C419A;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: .04em;
	line-height: 1.2;
}
.case_txt dl dd{
	color: #333333;
	line-height: 1.3;
	letter-spacing: .04em;
	font-size: 14px;
	font-weight: 500;
	margin-top: 6px;
	margin-bottom: 20px;
}
.case_txt dl dd:last-child{
	margin-bottom: 0;
}

.case_img01{
	margin-bottom: 16px;
}
.case_ntxt{
	line-height: 1.8;
	letter-spacing: .04em;
	font-size: 16px;
	font-weight: 500;
	margin-top: 30px;
	color: #fff;
}
@media screen and (max-width: 950px) {
	
	.case_list li{
		width: 49%;
	}
}
@media screen and (max-width: 768px) {

	#case {
		padding: 50px 0 50px;
		overflow: hidden;
	}
	
	.case_img {
	    min-width: 600px;
	}

	.case_list{
		justify-content: center;
		margin-bottom: 60px;
	}
	.case02 .case_list {
		margin-top: 40px;
	}
	.case_list li{
		width: 95%;
	}
	.case_list li h3{
		margin-top: 20px;
	}
	
	.case_txt{
		height: auto;
		margin-top: 20px;
	}
	
}
/*-----------------------
         work
-------------------------*/

#work{
	background-color: #F6F7F8;
	background-image: url(../img/top_bg.jpg);
	background-size: cover;
	padding: 124px 0 120px;
}
.work_col01{
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
	max-width: 1184px;
	margin: 0 auto;
}
.work_col01_txt{
	width: 34%;
	max-width: 385px;
}
.work_col01_txt p {
	line-height: 1.8;
	letter-spacing: .04em;
	font-weight: 500;
	margin-top: 40px;
	font-size: clamp(14px, 1.41vw, 16px);
}
.work_col01_img{
	width: 54%;
	max-width: 612px;
	margin-top: 20px;
}
.more_btn{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 227px;
	padding-right: 23px;
	height: 48px;
	text-align: center;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	font-size: 16px;
	color: #fff;
	font-weight: 500;
	border-radius: 100vw;
	letter-spacing: .04em;
	position: relative;
}
.more_btn:before {
	content: '';
	width: 36px;
	height: 36px;
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 6px;
	bottom: 0;
	margin: auto;
}
.more_btn:after {
	content: '';
	width: 10px;
	height: 10px;
	border: 0;
	border-top: 2px solid;
	border-right: 2px solid;
	border-image: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	border-image-slice: 1;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	margin: auto;
}
.work_col01 .more_btn{
	margin-top: 50px;
}
.work_area {
	width: min(83%, 1312px);
	margin: 144px auto 0;
	position: relative;
}
.work_inner {
	width: calc(100% + (100vw - 100%) / 2);
	overflow: hidden;
}
.work_col02{
	position: absolute;
	left: 69%;
	transform: translateX(-50%);
	top: 0;
	width: 52%;
	max-width: 612px;
	margin-left: auto;
	z-index: 1;
}
.work_col02_txt{
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
	align-items: flex-end;
}
.work_col02 p {
	line-height: 1.8;
	letter-spacing: .04em;
	font-weight: 500;
	margin-top: 48px;
	font-size: clamp(14px, 1.41vw, 16px);
}
.work_col02 .more_btn_sp{
	display: none;
}
@media screen and (max-width: 1280px) {
	.work_col02{
		left: 75%;
		width: 48%;
		max-width: 612px;
	}
}
@media screen and (max-width: 1080px) {
	.work_col02_txt{
		flex-direction: column;
		align-items: center;
	}
	.work_col02_txt .sec_ttl{
		width: 100%;
	}
	.work_col02_txt .more_btn_pc{
		display: none;
	}
	.work_col02 .more_btn_sp{
		display: flex;
		margin: 0 auto;
		margin-top: 50px;
	}
	.work_col02{
		position: static;
		transform: none;
		width: 100%;
		max-width: 612px;
		margin: 0 auto 30px;
	}
}
@media screen and (max-width: 768px) {
	.work_area{
		margin-top: 90px;
		width: min(90%, 1312px);
	}
}

/*------------ スライダー  ----------- */

.work_slider_wrap {
	display: flex;
	align-items: flex-end;
	position: relative;
}

.work_main_frame {
	width: 450px;
	height: 630px;
	flex-shrink: 0;
	margin-right: 72px;
	position: relative;
	overflow: hidden;
}

.work_main_frame a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	position: relative;
}

.work_main_frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@keyframes mainFadeOut {
	0%   { opacity: 1; }
	100% { opacity: 0; }
}

@keyframes mainFadeIn {
	0%   { opacity: 0; }
	100% { opacity: 1; }
}

.work_main_frame.is-leave {
	animation: mainFadeOut 0.4s ease forwards;
}
.work_main_frame.is-enter {
	animation: mainFadeIn 0.5s ease forwards;
}

.work_next_btn {
	position: absolute;
	bottom: 148px;
	left: calc(450px + 100px + 256px);
	transform: translateX(-50%);
	z-index: 99;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	box-shadow: 0 4px 4px rgba(0,0,0,.25);
	background-image: url(../img/next.png);
	background-size: cover;
	background-repeat: no-repeat;
	border: none;
}

.work_thumb_outer {
	overflow: hidden;
	flex: 1;
	align-self: flex-end;
}

.work_thumb_track {
	display: flex;
	align-items: flex-end;
	transition: transform 0.5s ease;
	will-change: transform;
}

.work_thumb_item {
	width: 256px;
	height: 334px;
	flex-shrink: 0;
	position: relative;
	overflow: hidden;
	margin-right: 11px;
	transition: margin-right 0.5s ease;
}

.work_thumb_item.is-first {
	margin-right: 50px;
}

.work_thumb_item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.work_thumb_item a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	position: relative;
}

.staff_main_txt {
	position: absolute;
	width: 100%;
	z-index: 1;
	left: 0;
	bottom: 0;
	background-color: rgba(10, 19, 41, .7);
	padding: 16px 24px;
}
.staff_main_txt p {
	letter-spacing: .04em;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.6;
	color: #fff;
}
.staff_main_txt h3 {
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(14px, 1.41vw, 16px);
	line-height: 1.6;
	margin-top: 12px;
	color: #fff;
}
.staff_main_txt h3 span {
	letter-spacing: .04em;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.6;
	padding-left: 14px;
	color: #fff;
}
.staff_main_ttl {
	position: absolute;
	top: -29px;
	left: 0;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	height: 30px;
	text-align: center;
	padding: 0 7px;
	display: flex;
	align-items: center;
}
.staff_main_ttl02 {
	top: auto !important;
	bottom: 0 !important;
}
.staff_main_ttl span {
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(14px, 1.41vw, 16px);
	line-height: 1;
	color: #fff;
}

@media screen and (max-width: 768px) {
	#work{
		background-color: #F6F7F8;
		padding: 50px 0 50px;
	}
	.work_col01 {
		flex-direction: column;
		align-items: center;
		row-gap: 20px;
		margin: 0 auto;
	}
	.work_col01_txt {
		width: 100%;
		max-width: 612px;
	}
	.more_btn{
		max-width: 200px;
		height: 40px;
		font-size: 14px;
	}
	.more_btn:before {
		content: '';
		width: 30px;
		height: 30px;
	}
	.more_btn:after {
		width: 9px;
		height: 9px;
		right: 18px;
	}
	.work_col01 .more_btn {
		margin: 0 auto;
		margin-top: 50px;
		padding-right: 15px;
	}
	.work_col01_img {
		width: 90%;
		max-width: 612px;
		margin-top: 20px;
	}
	.work_slider_wrap {
        flex-direction: column;
		align-items: flex-start;
	}
	.work_main_frame {
		width: 90vw;
		height: 450px;
		margin-right: 0;
        margin-left: 0;
		margin-bottom: 20px;
	}
	.work_thumb_outer {
		display: none;
	}
	.work_next_btn {
		bottom: auto;
		top: calc(430px - 35px);
		left: 90%;
		transform: translateX(-50%);
		width: 60px;
		height: 60px;
	}
}
/*-----------------------
         basic
-------------------------*/

.basic_contents{
	padding: 95px 0 113px;
}
.basic_mv{
    height: 456px;
    position: relative;
}


.basic_mv img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (min-width: 1500px) {

	.basic_mv{
	    height: 550px;
	    position: relative;
	}
/* 	.basic_mv img{
		object-position: bottom;
	} */
}
.basic_ttl {
	position: absolute;
	top: 69%;
	left: 50%;
	width: 80%;
	transform:translate(-50%,-50%);
}
.basic_ttl h1{
	color: #fff;
	font-size: clamp(30px, 3.75vw, 56px);
	font-weight: 600;
	letter-spacing: .04em;
	line-height: 1.2;
	margin-top: 22px;
}

.basic_ttl p{
	width: fit-content;
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1;
	font-size: clamp(14px, 1.41vw, 16px);
	position: relative;
	color: #fff;
}


@media screen and (max-width: 768px) {
	.basic_mv{
	    height: 350px;
	    position: relative;
	}
	.guideline_mv{
	    height: 250px;
	    position: relative;
	}
	.guideline_mv img{
		object-position: 57%;
	}
	.basic_ttl {
		top:50%;
		left: 50%;
		width: 90%;
	}
	.basic_ttl p:after{
		width: 140px;
		height:1px;
	}
}



/*-----------------------
         会社を知る
-------------------------*/
.company_contents {
	background-color: #F6F7F8;
	padding: 120px 0 132px;
}

.ceo_messe{
	display: flex;
	width: 100%;
	max-width: 1317px;
	margin: 0 0 0 auto;
}
.ceo_messe_ttl{
	width: 95%;
	max-width: 552px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.ceo_messe_ttl img{
	margin-top: 38.95%;
}
.ceo_messe_txt{
	width: 95%;
	max-width: 800px;
	margin-left: -2.5%;
	height: fit-content;
	padding: 53px 53px 60px;
	background-color: rgba(246, 247, 248, .8);
}
.ceo_messe_inner{
	max-width: 620px;
}
.ceo_messe_txt h3:first-child{
	font-size: clamp(16px, 1.88vw, 24px);
	line-height: 1.8;
	letter-spacing: .04em;
	margin-bottom: 24px;
	font-weight:600;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.ceo_messe_txt p{
    font-size: clamp(14px, 1.41vw, 16px);
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 1.8;
}
.ceo_messe_inner p{
	margin-top: 32px;
}
.ceo_name{
	margin-top: 32px;
}
.ceo_name img{
	max-width: 132px;
	margin-top: 15px;
}
.ceo_messe_txt .sec_ttl{
	display: none;
}

.com_img02{
	margin-top: -5%;
}
@media screen and (min-width: 1780px) {
	.ceo_messe{
		margin: 0 auto;
	}
}
@media screen and (max-width: 1330px) {
	.ceo_messe{
		width: 95%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px) {

	.company_contents {
	    overflow:hidden; 
	    padding: 56px 0 50px;
	}
	.com_img02 {
	    margin-top: 27px;
		width: 950px;
	}
	.ceo_messe {
		align-items: center;
	    flex-direction: column-reverse;
	    width: 100%;
	    max-width: 1317px;
	    margin: 0 auto;
	}
	.ceo_messe_txt h3:first-child{
		margin-bottom: 16px;
	}
	.ceo_messe_txt {
	    width: 95%;
	    max-width: 800px;
	    margin: 0 auto;
	    height: fit-content;
	    padding: 24px 16px 37px;
	}
	.ceo_messe_inner p:nth-of-type(2) {
	    margin-top: 24px;
	}
	.ceo_name {
	    margin-top: 16px;
	}
	
	.ceo_name img {
	    max-width: 108px;
	}
	.ceo_messe_ttl .sec_ttl{
		display: none;
	}
	.ceo_messe_txt .sec_ttl{
		display: block;
		margin-bottom: 26px;
	}
	.ceo_messe_ttl img {
	    margin-top: 0;
	}
}


.philosophy{
	padding-top: 132px;
	width: 95%;
	max-width: 1184px;
	margin: 0 auto;
}
.philosophy dl{
	display: flex;
	padding-bottom: 64px;
	margin-top: 64px;
	border-bottom: 1px solid rgba(0,0,0,.15);
}
.philosophy dl:first-child{
	margin-top: 0;
}
.philosophy dt{
	width: 40%;
}
.philosophy dt .en_ttl{
	display: inline-block;
	 background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
}

.philosophy dt .en_ttl span{
	 font-weight: bold;
	 font-size: clamp(14px, 1.39vw, 20px);
	 padding: 0 16px;
	 line-height: 1.2;
	 color: #fff;
	 letter-spacing: .04em;
}
.philosophy dt h3 {
	font-size: clamp(20px, 3.48vw, 50px);
	font-weight: 600;
	margin-top: 30px;
	letter-spacing: .04em;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	line-height: 1;
}
.philosophy dd{
	width: 60%;
	font-size: clamp(16px, 2.09vw, 30px);
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 1.8;
}
@media screen and (max-width: 768px) {
	.philosophy {
	    padding-top: 80px;
	}
	.philosophy dl {
	    flex-direction: column;
	    row-gap: 20px;
	    align-items: center;
	    padding-bottom: 30px;
	    margin-top: 30px;
	}
	.philosophy dt{
		width: 95%;
	}
	.philosophy dd{
		width: 95%;
	}
	.philosophy dt .en_ttl span{
		display: block;
		padding: 1px 10px;
	}
	.philosophy dt h3{
		margin-top: 16px;
	}
}
.history{
	padding: 172px 0 144px;
	background: #0B3E93;
	position: relative;
	background: linear-gradient(129deg, rgba(11, 62, 147, 1) 12%, rgba(19, 37, 82, 1) 90%);
}
.history .sec_ttl{
	position: absolute;
	top: 144px;
}
.history .sec_ttl h2 {
    background: transparent;
    -webkit-text-fill-color: white;
}
.history_col{
	background-color: #fff;
}
.history_area{
	width: min(90%, 1195px);
  margin: 0 auto 0;
}
.history_inner{
	position: relative;
  width: calc(100% + (100vw - 100%) / 2);
	    overflow: hidden;
}
.history_slider {
    margin-top: 140px;
    margin-bottom: 55px;
}
.history_col {
	display: block;
	max-width: 252px;
	height: 306px;
	margin: 0 auto;
	color: #000000;
	padding: 45px 20px 45px 20px;
	box-shadow: 5px 10px 4px rgba(0,0,0,.25);
}
.history_slider .slick-slide{
	margin: 0 3px !important;
}
.history_slider .slick-list{
  overflow: visible !important;
}
/* 矢印 */
.history_slider .slick__prev,
.history_slider .slick__next {
  position: absolute;
  top: -115px;
  z-index: 1;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  /* background: #fff; */
  border: 1px solid #fff;
  cursor: pointer;
}

.history_slider .slick__prev {
  right: calc((100vw - 100%) + (30px + 50px + 15px));
}

.history_slider .slick__next {
  right: calc((100vw - 102%) + (30px));
}

.history_col h3{
   font-weight: 600;
   letter-spacing: .04em;
   font-size: clamp(20px, 2.499999vw, 32px);
   background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
}
.history_col h3 span{
	letter-spacing: .04em;
	font-size: clamp(16px, 1.41vw, 18px);
}
.history_col .month{
	margin-top: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	font-size: clamp(16px, 1.41vw, 18px);
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.history_col p{
	font-size: 14px;
	line-height: 1.8;
	margin-top: 40px;
	letter-spacing: .04em;
	color: #3C4253;
	font-weight: 500;
}
.history_slider .slick__prev:after {
  content: '';
  width: 20px;
  height: 20px;
  border: 0;
  border-top: 3px solid #fff;
  border-left: 3px solid #fff;
  border-image-slice: 1;
  position: absolute;
  top: 35%;
  left: 60%;
  transform: rotate(-45deg) translate(-50%,-50%);
}
.history_slider .slick__next:after {
  content: '';
  width: 20px;
  height: 20px;
  border: 0;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  border-image-slice: 1;
  position: absolute;
  top: 55%;
  left: 29%;
  transform: rotate(45deg) translate(-50%,-50%);
}
@media screen and (max-width: 768px) {

	.history {
	    padding: 70px 0 40px;
	    background: #0B3E93;
	}
	.history .sec_ttl {
	    position: static;
	}
	.history_slider .slick__prev, .history_slider .slick__next {
	    top: -80px;
	    width: 50px;
	    height: 50px;
	}
	.history_slider .slick__prev:after {
	    width: 15px;
	    height: 15px;
	    top: 35%;
	    left: 60%;
	}
	.history_slider .slick__next:after {
	    width: 15px;
	    height: 15px;
	    top: 55%;
	    left: 29%;
	    transform: rotate(45deg) translate(-50%, -50%);
	}
	.history_slider .slick__prev {
	  right: calc((100vw - 105%) + (30px + 50px + 15px));
	}
	
	.history_slider .slick__next {
	  right: calc((100vw - 105%) + (30px));
	}

}


.company_data{
	background-color: #F6F7F8;
	padding: 96px 0 120px;
}
.company_data_area{
	width: 95%;
	max-width: 1186px;
	margin: 0 auto;
}

.company_data_box{
	width: 78%;
	max-width: 923px;
	margin: 0 auto;
	margin-top:140px;
}
.company_data_box table{
	width: 100%;
}
.company_data_box table{
	width: 100%;
	  border-collapse: collapse;
}
.company_data_box table, .company_data_box td,
.company_data_box th {
	border: 1px solid #fff;
}
.company_data_box td, 
.company_data_box th {
	padding: 3px;
	width: 30px;
	height: 25px;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: .04em;
}
.company_data_box th {
	background: #142653;
	color: #fff;
	text-align: left;
	padding: 20px 16px;
	vertical-align: middle;
	font-weight: 500;
}
.company_data_box td{
	padding: 20px 32px;
	border: 1px solid #F6F7F8;
	background: #fff;
}
.company_data_box td .txtbig{
	font-size: 16px;
}
.company_data_box td ,
.company_data_box td p,
.company_data_box td li{
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: .04em;
	font-weight: 400;
}
.company_data_box td .mgb{
	margin-bottom: 16px;
}
.company_data_box td .font_w{
	font-weight: 600;
}
.company_data_box td .mgt{
	margin-top: 10px;
}
@media screen and (max-width: 768px) {

	.company_data {
	    padding: 80px 0 80px;
	}
	.company_data_area {
	    width: 95%;
	    max-width: 800px;
	}
	.company_data_box {
	    width: 95%;
		margin: 0 auto;
	    max-width: 923px;
	    margin-top: 70px;
	}
	.company_data_box th, 
	.company_data_box td {
	    display: inline-block;
	    width: 100%;
	    float: left;
	  }
	.company_data_box th {
	    color: #fff;
	    display: flex;
	    align-items: center;
	    padding: 22px 15px;
	}
	.company_data_box td {
		height: auto;
	    padding: 20px 16px 30px ;
	}
}
	/*-----------------------
        仕事を知る
-------------------------*/
.work_mv {
    height: auto;
    position: relative;
}
.work_mv .basic_ttl {
    position: absolute;
    top: 79%;
    left: 50%;
    width: 80%;
    transform: translate(-50%, -50%);
}
.work_contents {
    background-color: #F6F7F8;
    padding-top: 96px !important;
    padding-bottom: 64px !important;
}
.work_messe_col{
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
	width: 95%;
	max-width: 1182px;
	margin: 0 auto 0;
}
.work_messe_col .sec_ttl{
	width: 47%;
	max-width: 420px;
}
.work_messe_col .last{
	width: 60%;
	max-width: 656px;
}
.workmesse_img {
    display: block;
    width: 95%;
    max-width: 1344px;
    margin: 80px auto 0;
}
@media screen and (max-width: 768px) {

	.work_mv {
	    height: auto;
	    position: relative;
	}
	.work_mv img{
		object-position: 70%;
	}
	.work_contents {
	    padding-top: 70px !important;
	    padding-bottom: 60px !important;
	}
	.work_messe_col {
	    flex-direction: column;
	}
	.work_messe_col .sec_ttl{
		width: 100%;
		max-width: 420px;
	}
	.work_messe_col .last{
		width: 100%;
		max-width: 656px;
	}
	.workmesse_img {
	    display: block;
	    width: 95%;
	    max-width: 1344px;
	    margin: 40px auto 0;
	}
}
.work_business{
	padding: 80px 0;
	background-color: #F6F7F8; 
}

.work_business_fx{
	max-width: 1424px;
	margin: 56px auto 0;
}
.work_business_fx ul{
	display: flex;
	justify-content: center;
	column-gap: 8px;
}
.work_business_fx ul li{
	position: relative;
}
.work_business_txt{
	position: absolute;
	bottom: 11px;
	right: 9px;
	padding: 20px 27px;
	background-color: rgba(6, 11, 25, .75);
	color: #fff;
	max-width: 543px;
}

.work_business_txt span{
	font-size: 16px;
	letter-spacing:.04em;
	font-weight: bold;
	line-height: 1;
}
.work_business_txt h3{
	font-size: clamp(17px, 2.499999vw, 24px);
	letter-spacing:.04em;
	font-weight: 600;
	margin-top: 16px;
	line-height: 1;
}
.work_business_txt p{
	font-size: 14px;
	letter-spacing:.04em;
	font-weight: 500;
	margin-top: 24px;
	line-height: 1.8;
}

@media screen and (max-width: 768px) {
	
	.work_business {
	    padding: 80px 0 200px;
	}
	
	.work_business_fx ul{
		row-gap: 240px;
		flex-direction:column;
		column-gap: 8px;
	}
	.work_business_fx ul li{
		position: relative;
	}
	.work_business_txt{
		width: 90%;
		position: absolute;
		bottom: -19%;
		right: 0;
		padding: 20px 27px;
		background-color: rgba(6, 11, 25, .75);
		color: #fff;
		max-width: 543px;
	}
	.work_business_fx ul li:last-child .work_business_txt{
		right: auto;
		left: 0;
	}

}

@media screen and (max-width: 450px) {

	.work_business_fx ul{
		row-gap: 180px;
		flex-direction:column;
		column-gap: 8px;
	}
	.work_business_txt{
		bottom: -40%;
	}

}
.project{
	padding: 100px 0 80px ;
	background-color: #F6F7F8; 
}
.project .inner{
	max-width: 1184px;
}
.project__txt{
	display: flex;
	justify-content: space-between;
	column-gap: 50px;
	align-items: flex-end;
	margin-top: 13px;
}
.project__txt p{
	font-size: 16px;
	letter-spacing:.04em;
	font-weight: 500;
	line-height: 1.8;
}
.project_fx ul{
	display: flex;
	justify-content: center;
	column-gap: 24px;
	margin-top: 64px;
}
.project_fx ul li{
	width: 49%;
	max-width: 580px;
}
.project_fx_img{
	height: 406px;
}
.project_fx_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.project_fx ul h3{
	margin-top: 32px;
	color: #363B49;
	letter-spacing: .04em;
    font-weight: 500;
    font-size: clamp(16px, 1.41vw, 18px);
	line-height: 1.2;
}
.project_fx ul p{
	margin-top: 16px;
	letter-spacing: .04em;
    font-weight: 500;
    font-size: 14px;
	color: #363B49;
}
@media screen and (max-width: 1000px) {

	.project_fx_img{
		height: 280px;
	}
}

@media screen and (max-width: 768px) {

	.project{
		padding: 80px 0 50px ;
	}
	.project .inner{
		max-width: 1184px;
	}
	.project__txt{
		flex-direction:column;
		row-gap: 50px;
		align-items: flex-end;
	}
	.project__txt p{
		font-size: 16px;
		letter-spacing:.04em;
		font-weight: 500;
		line-height: 1.8;
	}
	.project_fx ul{
		flex-direction:column;
		align-items: center;
		row-gap: 70px;
		margin-top: 74px;
	}

	.project_fx ul li{
		width: 100%;
	}
	.project_fx_img{
		height: 210px;
	}
	.project_fx ul h3{
		margin-top: 20px;
	}
}


.jobrule{
	padding: 80px 0 80px ;
	background: linear-gradient(225deg, rgba(7, 40, 95, 1) 30%, rgba(11, 21, 46, 1) 100%);
}
.jobrule .sec_ttl h2 {
    background: transparent;
    -webkit-text-fill-color: white;
}
.jobrule .inner{
	max-width: 1184px;
}
.jobrule_list{
	max-width: 1313px;
	margin-left: auto;
	margin-top: 64px;
	display: flex;
	flex-wrap: wrap;
	column-gap:3px;
	row-gap: 6px;
}
.jobrule_list li{
	width: 49.7%;
	max-width: 655px;
	position: relative;
}
.jobrule_list li .jobrule_list_txt{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 32px 24px 30px 24px;
	background-color: rgba(4, 4, 4, .4);
}
.jobrule_list li a{
	color: #fff;
}
.jobrule_list li .jobrule_list_txt span{
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 1;
}
.jobrule_list li .jobrule_list_txt h3{
	font-size: clamp(16px, 2.499999vw, 24px);
	font-weight: 600;
	letter-spacing: .04em;
	margin-top: 16px;
	line-height: 1;
}
@media screen and (min-width: 1550px) {

	.jobrule_list{
		max-width: 1313px;
		margin: 0 auto;
		margin-top: 64px;
	}
	
}
@media screen and (max-width: 768px) {

	.jobrule{
		padding: 100px 0;
	}
	
	.jobrule_list{
		width: 95%;
		margin: 0 auto;
		max-width: 700px;
		margin-top: 64px;
	}
	.jobrule_list li{
		width: 100%;
		max-width: 655px;
		        margin: 0 auto;
		position: relative;
	}
	.jobrule_list li .jobrule_list_txt{
		padding: 20px 20px 20px 20px;
	}
	.jobrule_list li .jobrule_list_txt span{
		font-size: 12px;
	}
}


.joinus{
	padding: 80px 0;
	background-color: #F6F7F8;
}
.joinus .inner{
	max-width: 1250px;
}

.joinus_fx li{
	display: flex;
	justify-content: center;
	margin-top: 80px;
	position: relative;
}
.joinus_fx li:first-child{
	margin-top: 68px;
}
.joinus_fx li:nth-child(odd){
	flex-direction: row-reverse;
}
.joinus_fx_img{
	width: 70%;
	max-width: 863px;
	z-index: 0;
	position: relative;
} 
.joinus_fx_box{
	width: 57%;
	max-width: 704px;
	height: 316px;
	background-color: #F6F7F8;
	margin-left: -26%;
	margin-bottom: 16px;
	z-index: 1;
	padding: 32px 32px;
	position: relative;
	margin-top: -5px;
}
.overlay{
	  position: absolute;
	  top: 0;
	  left: -16px;
	  width: 65%;
	  max-width: 760px;
	  height: 351px;
	  background: linear-gradient(
    251.68deg,
    #082E6D 41.4%,
    #132552 90.37%
  );
	  mix-blend-mode: overlay;
	  z-index: 0;
}
.joinus_fx li:nth-child(even) .overlay{
	left: auto;
	right: -16px;
}
.txt_img{
	position: absolute;
	top: 319px;
	left: -50px;
	width: auto;
	height: 68px;
	z-index: 0;
}
.txt_img2,.txt_img4{
	left: auto;
	right: -50px;
	top: 319px;
}
.joinus_fx li:nth-child(odd) .joinus_fx_box{
	margin-left: 0;
	margin-right: -26%;
}
.joinus_fx_ttl{
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(0,0,0,.2);
}
.square{
	background: linear-gradient(240deg,rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	color: #fff;
	padding: 3px 15px       5px 15px;
	text-align: center;
	display: flex;
	align-items: flex-end;
	width: fit-content;
	margin-bottom: 24px;
}
.square span{
	font-size: clamp(12px, 1.41vw, 16px);
	letter-spacing: .04em;
	line-height: 1;
}

.square p{
	font-weight: bold;
	line-height: 1;
	font-size: clamp(22px, 2.23vw, 32px);
	letter-spacing: .04em;
	margin-left: 6px;
}
.joinus_fx_ttl h3{
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .04em;
	font-size: clamp(16px, 2.499999vw, 28px);
}
.joinus_fx_txt{
	margin: 20px 0 0 0;
}
.joinus_fx_txt p{
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 2;
	color: #363B49;
	font-size: clamp(14px, 1.41vw, 16px);
}

@media screen and (max-width: 768px) {

	.joinus{
		padding: 50px 0 150px;
	}
	.joinus_fx_img {
	    width: 100%;
	    max-width: 595px;
	    z-index: 0;
	    position: relative;
	}
	.joinus_fx_box {
	    width: 95%;
	    max-width: 580px;
	    height: 250px;
	    margin-bottom: 0;
	    padding: 20px 15px 10px 15px;
	    position: absolute;
	    top: 241px;
	    right: 0;
	}
	.joinus_fx li:nth-child(odd) .joinus_fx_box {
	    margin-left: 0;
	    margin-right: 0;
		right: auto;
		left: 0;
	}
	.square {
	    padding: 3px 15px 5px 15px;
	    text-align: center;
	    margin-bottom: 15px;
	}
	.joinus_fx_ttl {
	    column-gap: 10px;
	    padding-bottom: 15px;
	}
	.joinus_fx_txt {
	    margin: 10px 0 0 0;
	}
	.joinus_fx li{
		margin-top: 280px;
		flex-direction: column;
	}
	.joinus_fx li:nth-child(odd){
		flex-direction: column;
		align-items: center;
	}
	.txt_img {
	    position: absolute;
	    top: 495px;
	    left: 20px;
	    width: auto;
	    height: 35px;
	    z-index: 0;
	}
	.txt_img2,.txt_img4{
		left: auto;
		right: 20px;
		top: 495px;
	}
	.overlay{
		  top: 77%;
		  left: 0;
		  width: 94%;
		  max-width: 760px;
		  height: 255px;
	}
	.joinus_fx li:nth-child(even) .overlay{
		left: auto;
		right: 0;
	}
}

@media screen and (max-width: 560px) {

	.joinus_fx_box {
	    top: 70%;
	}
	.txt_img {
	    position: absolute;
	    top: 437px;
	    left: 20px;
	    width: auto;
	    height: 35px;
	    z-index: 0;
	}
	.txt_img2,.txt_img4{
		left: auto;
		right: 20px;
		top: 437px;
	}
	
}
@media screen and (max-width: 430px) {

	
	.txt_img {
	    position: absolute;
	    top: 400px;
	    left: 20px;
	    width: auto;
	    height: 35px;
	    z-index: 0;
	}
	.txt_img2,.txt_img4{
		left: auto;
		right: 20px;
		top: 400px;
	}
	
}
.job_number{
	padding: 80px 0 80px;
	    background: #E9EDF1;
}
.job_number .inner{
	max-width: 1185px;
}

.job_number_fx{
	position: relative;
	display: flex;
	justify-content: space-between;
	column-gap: 15px;
}
p.now {
    position: absolute;
    bottom: -35px;
    right: 0;
    color: #3C4253;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .04em;
}
.job_number_list{
	width: 62%;
	max-width: 698px;
}
.job_number_list02{
	width: 40%;
	max-width: 466px;
}
.job_number_list{
	margin-top: 50px;
}
.job_number_list .sp_list{
	display: none;
}
.job_number_list01{
	display: flex;
	flex-wrap: wrap;
	column-gap: 10px;
	row-gap: 10px;
}
.job_number_list > li{
	width: 49%;
	max-width: 338px;
	background-color: #fff;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
.job_number_list01 li{
	padding: 25px 4% 24px 5%;
}
.job_number_list02 > li{
	width: 100%;
	max-width: none;
	padding: 44px 5px 27px 5px;
}
.job_number_list li .num{
	position: absolute;
	color: rgba(228, 234, 244, .5);
	top: -15px;
	left: -5px;
	font-size: clamp(80px, 6.12vw, 88px);
	line-height: 1;
	letter-spacing: .04em;
	font-weight: bold;
	z-index: 1;
}
.job_number_top{
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 10px;
}
.job_number_list02 .job_number_top{
	width: 87%;
	max-width: 395px;
	margin: 0 auto;
	justify-content: space-between;
	column-gap: 10px;
}
.job_number_ttl span{
	line-height: 1;
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(16px, 1.41vw, 18px);
	color: #3C4253;
	position: relative;
	z-index: 2;
}
.job_number_list02 .job_number_ttl span{
line-height: 1.7;	
}
.job_number_ttl h3{
	margin-top: 4px;
	line-height: 1;
	letter-spacing: -.03em;
	font-weight: bold;
	font-size: clamp(24px, 3.888888vw, 56px);
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.job_number_list02 .job_number_ttl h3{
	font-size: clamp(24px, 6.12vw, 88px);
}
.job_number_list01 li.number01 p{
	font-size: 14px;
	color: #363B49;
	line-height: 2;
	letter-spacing: .04em;
	margin-left: -5%;
	font-weight: 500;
}
.job_number_list01 li .txt02{
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(16px, 1.41vw, 20px);
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: block;
	margin: 11px 0 0 24px;
}
.job_number_list01 li:nth-of-type(2) .txt02{
	   font-size: clamp(15px, 1.41vw, 16px);
    margin: 10px 0 0 0;
    word-break: keep-all;
}
.job_number_list01 li .txt03{
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(14px, 1.41vw, 16px);
	color: #363B49;
	display: inline-block;
	margin: 0 0 0 -13%;
	line-height: 2;
}
.job_number_list01 li .txt04{
	font-size: clamp(16px, 1.41vw, 20px);
	/* display: inline-block; */
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.job_number_list01 li .txt05{
	    font-weight: 200;
	    font-size: clamp(24px, 3.888888vw, 40px);
	    margin-left: -7%;
	    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	    -webkit-background-clip: text;
	    -webkit-text-fill-color: transparent;
}
.job_number_ttl h3 span{
	    letter-spacing: .04em;
	    font-weight: 600;
	    font-size: clamp(16px, 1.41vw, 20px);
	    padding-left: 6px;
	    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	    -webkit-background-clip: text;
	    -webkit-text-fill-color: transparent;
}
.job_number_ttl h3 .txt06{
	padding: 0;
}
.job_number_list02 .job_number_ttl h3 span {
    letter-spacing: .04em;
    font-weight: 600;
    font-size: clamp(24px, 3.888888vw, 40px);
    padding-left: 6px;
}
.job_number_img{
	max-width: 134px;
}
.job_number_list02 .job_number_img {
    max-width: 188px;
}
.job_number_list02 li .txt02{
	display: block;
	font-size: clamp(16px, 1.41vw, 20px);
	text-align: right;
	line-height: 1;
}
.job_number_txt p{
	margin-top: 16px;
	font-size: 14px;
	line-height: 2;
	letter-spacing: .04em;
	color: #363B49;
	font-weight:; 500
}
.job_number_txt_list{
	display: flex;
	margin-top: 45px;
	justify-content: center;
}
.job_number_txt_list li {
	text-align:center;
	width: 32%;
	position: relative;
	z-index: 0;
	padding: 0;
}
.job_number_txt_list li:nth-of-type(2):after,
.job_number_txt_list li:nth-of-type(2):before{
	content: "";
	display: inline-block;
	height: 105px;
	width: 1px;
	background-color: rgba(0,0,0,.24);
	position: absolute;
	right: 2%;
	top: 0;
	z-index: 1;
}
.job_number_txt_list li:nth-of-type(2):before{
	right: auto;
	left: -2%;
}
.job_number_txt_list li p{
	line-height: 1;
	letter-spacing: -.03em;
	font-weight: bold;
	font-size: clamp(24px, 3.888888vw, 56px);
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-top: 0;
}
.job_number_txt_list li p .nin{
	font-size: clamp(16px, 1.67vw, 24px);
}
.job_number_txt_list li .nendai{
	opacity: .6;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: block;
	text-align: left;
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(16px, 1.41vw, 20px);
	margin-left: 17%;
}
@media screen and (max-width: 1160px) {

	.job_number_img{
		max-width: 100px;
	}
	.job_number_list02 .job_number_img {
	    max-width: 150px;
	}
	.job_number_fx{
		    width: fit-content;
   	 margin: 0 auto;
	}
}
@media screen and (max-width: 1000px) {

	.job_number_list .sp_list{
		display: block;
		width: 100%;
		max-width: 450px;
	}
	.job_number_list02{
		display: none;
	}
	.job_number_list01{
		justify-content: center;
	}
	.job_number_list {
	    width: 100%;
	    max-width: 698px;
		margin: 0 auto;
		margin-top: 50px;
	}

	.job_number_txt_list li:nth-of-type(2):after,
	.job_number_txt_list li:nth-of-type(2):before{
		height: 70px;
	}
	.job_number_txt_list {
	    margin-top: 25px;
	}
}

@media screen and (max-width: 768px) {

	
	.job_number_list {
	    flex-direction: column;
		align-items: center;
	    row-gap: 10px;
	    margin-top: 50px;
	}
	.job_number_list li{
		width: 100%;
		max-width: 325px;
	}
	.job_number_list .sp_list {
        max-width: 325px;
    }
	.job_number_ttl span{
		font-size: 18px;
	}
	.job_number_ttl h3{
		font-size: 50px;
	}
	.job_number_ttl h3 span{
	    font-size: 20px;
		
	}
	.job_number_ttl{
		width: 51%;
	}

}

/* -----------------------
         resource 
---------------------------*/
.resource {
    padding: 80px 0 370px;
    background-color: #E9EDF1;
}
.resource .inner{
	max-width: 1210px;
}
.resource_midashi{
	max-width: 1184px;
	height: 166px;
	background-color: rgba(255,255,255,.5);
	border: 1px solid rgba(0,0,0,.2);
	border-radius: 8px;
	margin-top: 56px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 20px;
	margin-bottom: 110px;
	padding-left: 5.8%;
	position: relative;
	overflow: hidden;
}
.resource_midashi:before{
	content: "";
	display: inline-block;
	position: absolute;
	left: -20px;
	bottom: 11px;
	width: 172px;
	height: 1px;
	background-color: rgba(12, 89, 154, .3);
	transform: rotate(15deg);
}

.resource_midashi_txt{
	margin: 15px 0;
	position: relative;
}
.resource_midashi_txt h3{
	color: #0C419A;
	letter-spacing: .04em;
	line-height: 1.9;
	font-weight: 500;
	font-size: clamp(16px, 1.41vw, 18px);
	position: relative;
	/* text-indent: -1em; */
	/* padding-left: 1em; */
}
/* .resource_midashi_txt h3:before{
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: #0C419A;
	border-radius: 100%;
	margin-right: 27px;
} */
.resource_midashi_txt p{
	/* margin-left: 36px; */
	color: #3C4253;
	letter-spacing: .04em;
	line-height: 1.9;
	font-weight: 500;
	font-size: clamp(16px, 1.41vw, 18px);
}
.resource_midashi_img{
	width: 40%;
	max-width: 403px;
	height: 100%;
	background-image: url(../img/resource_midashi_img.png);
	background-size: cover;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 18% 100%);
	border-radius: 8px 0 8px 0;
}
.resource_midashi_txt:after{
	content: "";
	display: inline-block;
	position: absolute;
	right: -260px;
	top: 58px;
	width: 260px;
	height: 1px;
	background-color: rgba(12, 89, 154, .3);
	transform: rotate(57deg);
	z-index: 1;
}
.resource_midashi_img img{
	border-radius: 8px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1150px) {
	
	.resource_midashi_txt:after{
		right: -200px;
		top: 58px;
		width: 260px;
	}
}

@media screen and (max-width: 768px) {

	.resource_midashi{
		max-width: 450px;
		margin: 0 auto;
		height: auto;
		margin-top: 56px;
		flex-direction: column;
		row-gap: 10px;
		margin-bottom: 110px;
		padding-left: 0;
		overflow: hidden;
	}
	.resource_midashi_txt:after{
		right: -189px;
		top: 39px;
		width: 260px;
		height: 1px;
		transform: rotate(30deg);
	}
	.resource_midashi_txt {
	    margin: 25px 20px 15px;
	}
	.resource_midashi_txt h3:before {
		width: 8px;
		height: 8px;
		margin-right: 10px;
	}
	/* .resource_midashi_txt p {
	    margin-left: 15px;
	} */
	.resource_midashi_img{
		width: 100%;
		max-width: none;
		height: 175px;
		border-radius: 0px;
		clip-path: unset;
	}
}
.resource_list_img img{
	margin-top: 95px;	
}
.resource_list{
	/* margin-left: 6%; */
	max-width: 1196px;
}
.resource_list ul{
	position: relative;
	display: flex;
	justify-content: center;
	gap: 38px;
	max-width: 785px;
	margin: 67px auto 0;
}

.resource_list ul li{
	width: 48%;
	max-width: 375px;
}
.resource_list ul li:nth-of-type(1),
.resource_list ul li:nth-of-type(3),
.resource_list ul li:nth-of-type(5){
	position: absolute;
	top: 202px;
}
.resource_list ul li:nth-of-type(1){
	left: -26%;
} 
.resource_list ul li:nth-of-type(5){
	right: -26%;
} 
.resource_col{
	width: 100%;
	background: linear-gradient(216deg,rgba(12, 65, 154, 1) 40%, rgba(19, 37, 82, 1) 100%);
	max-width: 264px;
	transform: rotate(45deg);
	margin: 0 auto;
}
.resource_box{
	 width: 100%;
  padding-top: 100%;
	position: relative;
}
.resource_inner{
	width: 100%;
	max-width: 226px;
	position: absolute;
	top: 15%;
	left: 54%;
	transform: rotate(-45deg) translate(-50%,-50%);
	z-index: 1;
	color: #fff;
}
.resource_list span{
	font-size: clamp(16px, 1.41vw, 18px);
    font-weight: bold;
    letter-spacing: .04em;
    line-height: 1;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.resource_list h3{
	text-align: center;
	font-size: clamp(17px, 2.499999vw, 24px);
	font-weight: 600;
	letter-spacing: .04em;
	line-height: 1;
}
.resource_list p{
	font-weight: 500;
	text-align: center;
	letter-spacing: .04em;
	line-height: 1.8;
	padding-top: 30px;
	font-size: clamp(12px, 1.41vw, 14px);
}
.triangle{
	position:absolute;
	top: -1px;
	left: 32px;
	transform: translateX(-50%) rotate(-45deg);
	width:0;
	height:0;
	border-left: 65px solid transparent;
	border-right: 65px solid transparent;
	border-bottom: 66px solid #fff;
}

.triangle span{
	position:absolute;
	top: 16px;
	left: -26px;
	font-size: clamp(20px, 3.48vw, 45px);
	font-weight: 500;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	line-height: 1;
}

@media screen and (max-width: 1120px) {
		.resource {
	    padding: 80px 0 170px;
	}

	.resource_list ul {
	    flex-wrap: wrap;
	    gap: 38px;
	    row-gap: 132px;
	    max-width: 785px;
	    margin: 100px auto 0;
	    align-items: center;
	}
	.resource_list ul li{
		position: static !important;
		width: 47%;
	}
	.resource_list ul li:nth-of-type(5){
		margin-top: -12%;
	}
	
	.triangle span{
		top: 18px;
		left: -24px;
		font-size: clamp(40px, 3.48vw, 45px);
	}
	
}
@media screen and (max-width: 768px) {



	.resource_list ul {
	    flex-wrap: wrap;
	    gap: 38px;
	    row-gap: 141px;
	    max-width: 785px;
	    margin: 100px auto 0;
	    align-items: center;
	}
	.resource_list ul li{
		position: static !important;
		width: 65%;
		max-width: 339px;
	}
	.resource_list ul li:nth-of-type(5) {
        margin-top: 0;
    }
	
}
@media screen and (max-width: 500px) {

	.resource_list ul {
	    row-gap: 111px;
	}
}


.faq{
	padding-top: 105px;
}
.faq .sec_ttl p{
	color: #29AD09;
	letter-spacing: .12em;
	font-weight: bold;
	font-family: "Noto Sans JP", sans-serif;
	font-size: clamp(30px, 3.34vw, 40px);
	margin-bottom: 9px;
}
.faq .sec_ttl h2{
	font-size: 16px;
	color: #333333;
	letter-spacing: .12em;
}
.accordion{
	width: 90%;
	max-width: 920px;
	margin: 56px auto 140px;
}
.accordion-item{
	padding: 0 24px;
	border-top: 1px solid #A3A3A3;
}
.accordion-item:last-child{
	border-bottom: 1px solid #A3A3A3;
}
.accordion-title {
	color: #333333;
	font-size: 16px;
	letter-spacing:.06em;
	line-height: 1.875;
	font-weight: 500;
	cursor: pointer;
	padding: 24px 8% 32px 0;
	display: flex;
	align-items: baseline;
	column-gap: 26px;
}
.accordion-title span,
.accordion-content span{
	color: #fff;
	font-size: clamp(18px, 1.88vw, 24px);
	font-weight: 500;
	width: 48px;
	height: 48px;
	border-radius: 100%;
	background-color: #29AD09;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 5px;
	flex-shrink: 0;
}
.accordion-content span{
	padding-bottom: 2px;
	background-color: #1D7906;
}
.accordion-content .fx{
	display: flex;
	align-items: baseline;
	column-gap: 26px;
	padding-right: 8%;
}
.accordion-content {
  display: none;
  padding-bottom: 24px;
  margin-left: 40px;
}
.accordion-content p {
  color: #1D7906;
  font-size: 16px;
	letter-spacing:.06em;
	line-height: 1.875;
  font-weight: 500;
}
@media screen and (max-width: 768px) {

	.accordion-item{
		padding: 0;
	}
	.accordion-content {
	    margin-left: 15px;
	}
	.accordion-content p {
	  font-size: 14px;
	}
	.accordion-content .fx{
	  column-gap: 15px;
	}
	.accordion-title span,
	.accordion-content span{
		font-size: 15px;
		width: 35px;
		height: 35px;
	}
	.accordion-title {
	  font-size: 15px;
	  padding: 25px 8% 25px 0;
	  column-gap: 10px;
	}
	.fx_block .accordion-item:last-child{
		margin-bottom: 0;
	}

}
/* 矢印 */
.accordion-title {
  position: relative;
}
/* 縦線 */
.accordion-title::before {
  background: #29AD09; /* 線の色 */
  content: "";
  height: 4px; /* 線の太さ */
  position: absolute;
  right: 0;
  top: 50%; /* 線の位置を縦中央に */
  transform: rotate(90deg); /* 線を縦に */
  transition: transform .3s ease-in-out;
  width: 30px; /* 線の幅 */
}
/* 横線 */
.accordion-title::after {
  background: #29AD09; /* 線の色 */
  content: "";
  height: 4px; /* 線の太さ */
  position: absolute;
  right: 0;
  top: 50%; /* 線の位置を縦中央に */
  transition: opacity .3s ease-in-out;
  width: 30px; /* 線の幅 */
}
/* 縦線(クリック後) */
.accordion-title.open::before {
  transform: rotate(180deg);
}
/* 横線(クリック後) */
.accordion-title.open::after {
  opacity: 0;
}
@media screen and (max-width: 768px) {

	/* 縦線 */
	.accordion-title::before {
	  right:0;
	  height: 2px;
	  width: 22px;
	}
	/* 横線 */
	.accordion-title::after {
	  right: 0;
	  height: 2px;
	  width: 22px;
	}

}
/*-----------------------
     エントリーフォーム
-------------------------*/
.enrtyform_contents {
	padding: 104px 0 108px;
	background-color: #F6F7F8;
}
.entry_area{
	width: 95%;
	margin: 0 auto;
	max-width: 912px;
}


.required,.any{
	display: inline-block;
	line-height: 1;
	font-size: 12px;
	letter-spacing: .04em;
	font-weight: 600;
	padding: 4px 8px;
	border-radius: 2px;
	margin-left: 18px;
}
.any{
	background-color: #ABABAB;
	color: #fff;
}
.required{
	background-color: #B72D25;
	color: #fff;
}

.flee-form dt{
	display: flex;
	align-items: center;
	font-weight: 600;
	font-size: 18px;
	letter-spacing: .04em;
	margin-bottom: 24px;
	color: #3C4253; 
}

.flee-form dd{
	margin-bottom: 36px;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: .04em;
}
.flee-form dt.last,
.flee-form dd:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
}



input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,select,
.wpcf7-date{
	font-size: 16px;
	font-weight: 500;
	padding: 10px 15px 10px 25px;
	width: 100%;
	height: 56px;
	border: none;
	background-color: #FCFCFC;
	line-height: 1.3;
	border-radius: 4px;
	border: 1px solid rgba(0,0,0,.2);
}
textarea{
	height: 190px;
}
select{
	max-width: 286px;
	font-size: 18px;
	color: rgba(0,0,0,.9); 
}
.selectbox{
	width: 100%;
	max-width: 286px;
	position:relative;
}
.selectbox::after{
		position: absolute;
	  content:'▼';
		top: 28%;
		right: 4%;
		color: #676767;
    pointer-events: none;
	}
.wpcf7-select{
	box-sizing:border-box;
	-webkit-appearance: none;
  -moz-appearance: none;
   appearance: none;
	border:1px solid #c0c0c0;
	background-color:#fff!important;
}
.wpcf7-list-item{
	margin-left:0 !important; 
}
.radio_btn{
		display: flex;
		flex-wrap: wrap;
		column-gap: 32px;
}
.wpcf7-list-item.first{
	margin: 0 !important;
}
.wpcf7-submit {
	border: none;
	font-size: clamp(14px, 1.41vw, 16px);
	display: block;
	width: 100%;
	height: 100%;
	font-weight: 600;
	letter-spacing: .04em;
	cursor: pointer;
	color: #fff;
	background-color: #07C4D9;
	border-radius: 48px !important;
}
.entry_submit{
    position: relative;
    width: 90%;
    background-color: #07C4D9;
    max-width: 272px;
    height: 56px;
    border-radius: 48px;
    margin: 0 auto;
    margin-top: 52px;
    padding-right: 20px;
    box-shadow: 0 4px 4px rgba(0,0,0,.25);
}

.entry_submit:before {
  content: '';
  width: 36px;
  height: 36px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 6px;
  bottom: 0;
  margin: auto;
}
.entry_submit:after {
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-top: 2px solid #07C4D9;
  border-right: 2px solid #07C4D9;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}
.wpcf7-spinner{
	display: none !important;
}
.policy_area{
	overflow: scroll;
	height: 275px;
	padding: 40px 40px 0 40px;
	border-radius: 4px;
	background-color: rgba(255,255,255,.4);
	border: 1px solid rgba(0,0,0,.2);
}
.policy_area span{
	color: #4A4A4A;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: .04em;
}
.wpcf7-acceptance{
	display: block;
	margin-top: 48px;
	text-align: center;
	color: #404040;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: .04em;
}
input[type="checkbox"]{
	width: 24px;
	height: 24px;
	vertical-align: middle;
	margin-top: -5px;
	border: rgba(0,0,0,.3);
}
@media screen and (max-width: 768px) {
	
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	textarea,select{
		font-size: 14px;
		padding: 10px 16px;
		max-width: none;
		height: 40px;
	}
	textarea{
		height: 150px;
		margin-top: 20px;
	}
	.selectbox::after {
		position: absolute;
		content: '▼';
    	top: 17%;
	}
	.radio_btn{
		display: flex;
		flex-wrap: wrap;
		column-gap: 15px;
	}
	.policy_area {
	    overflow: scroll;
	    height: 275px;
	    padding: 40px 15px 0 15px;
	}
	
}


/* Microsoft Edge */
input::-ms-input-placeholder  {
	color: rgba(0,0,0,.4); 
	 font-size: 18px;
	font-weight: 400;
	 letter-spacing: .04em;
}


/* Internet Explorer */
input:-ms-input-placeholder {
	color: rgba(0,0,0,.4); 
	 font-size: 18px;
	font-weight: 400;
	 letter-spacing: .04em;
}
 input::placeholder { 
	 color: rgba(0,0,0,.4); 
	 font-size: 18px;
	font-weight: 400;
	 letter-spacing: .04em;
 }

/*-----------------------
	 サンクスページ
-------------------------*/

.thanks_mv{
	height: 348px;
	background: linear-gradient(270deg,rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
}
.thanks_mv .basic_ttl {
    position: absolute;
    top: 60%;
    left: 50%;
    width: 80%;
    transform: translate(-50%, -50%);
}
.thanks_mv .basic_ttl p {
    font-size: clamp(16px, 2.499999vw, 24px);
}
.thanks_contents p:nth-of-type(1){
	margin-bottom: 35px;
}
.thanks_contents{
	padding: 100px 0 143px;
	text-align: center;
	background-image: url(../img/thanks_bg.png);
	background-size: cover;
	background-position: center;
}
.thanks_contents .more_btn{
	margin: 120px auto 0;
}
.thanks_contents h3 {
    font-size: clamp(20px, 2.78vw, 40px);
    font-weight: 600;
    margin-bottom: 56px;
    letter-spacing: .04em;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.8;
}
.thanks_contents p{
    line-height: 1.8;
    letter-spacing: .04em;
    font-weight: 500;
    font-size: clamp(14px, 1.41vw, 16px);
}
@media screen and (max-width: 768px) {

	.thanks_mv{
		height: 248px;
		background: linear-gradient(270deg,rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	}
	.thanks_contents h3{
		margin-bottom: 30px;
	}
	.thanks_contents .more_btn{
		margin-top: 60px;
	}
}
/*-----------------------
         footer
-------------------------*/
.common_area{
	background-image: url(../img/f_bg.jpg);
	background-size: cover;
	padding: 40px 0 72px;
}
.common_txt{
	color: #fff;
}
.common_txt > h2{
	line-height: 1.2;
	font-size: clamp(44px, 6.95vw, 100px);
	letter-spacing: .04em;
	font-weight: bold;
	margin-bottom: 80px;
}
.common_area .sec_ttl h2 {
    background: transparent;
    -webkit-text-fill-color: white;
}
.common_txt p{
	max-width: 525px;
	line-height: 1.8;
    letter-spacing: .04em;
    font-weight: 500;
    margin-top: 27px;
    font-size: clamp(14px, 1.41vw, 16px);
}
.more_btn02{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 227px;
	padding-right: 23px;
	height: 48px;
	text-align: center;
	font-size: clamp(14px, 1.41vw, 16px);
	background-color: #fff;
	font-weight: 500;
	border-radius: 100vw;
	letter-spacing: .04em;
	position: relative;
}
.more_btn02 span{
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.more_btn02:before {
  content: '';
  width: 36px;
  height: 36px;
  background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 6px;
  bottom: 0;
  margin: auto;
}
.more_btn02:after {
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}
.common_txt .more_btn02{
	margin-top: 45px;
}
@media screen and (max-width: 768px) {
	.common_area {
	    background-image: url(../img/f_bg_sp.jpg);
	    background-size: cover;
	    background-position: right;
	    padding: 30px 0 80px;
	}
	.common_txt > h2{
		line-height: 1.5;
		margin-bottom: 90px;
	}
	.more_btn02{
		max-width: 200px;
		height: 40px;
	}
	.more_btn02:before {
	    content: '';
	    width: 30px;
	    height: 30px;
	}
	.more_btn02:after {
	    width: 9px;
	    height: 9px;
	    right: 18px;
	}
}

footer{
	background-color: #0C1631;
	padding: 64px 0 12px;
}
.footer_fx{
	width: 95%;
	max-width: 1184px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	padding-bottom: 40px;
}

.footer_L{
	width: 35%;
	max-width: 357px;
}
.footer_L p{
    font-weight: 500;
    color: #fff;
    font-size: 16px;
    line-height: 1.68;
}
.footer_L .f_logo{
	display: block;
	margin-bottom: 45px;
}
.footer_L .site{
	display: block;
	max-width: 350px;
}

.footer_R{
	width: 65%;
	max-width: 388px;
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
}
.footer_R ul{
	width: 100%;
	display: flex;
	flex-direction: column;
	row-gap: 25px;
}

.footer_R ul li a{
    display: block;
    color: #fff;
    font-weight: 500;
    font-size: 16px;
	letter-spacing: .04em;
}

.footer_R .en_btn {
    display: block;
    width: 75%;
    max-width: 184px;
}
.footer_R .en_cta{
	width: 100%;
	max-width: 184px;
}
.footer_R .en_cta02{
	margin-top: 24px;
}
small{
	display: block;
	font-size: 12px;
	color: #fff;
	font-weight: 200;
	letter-spacing: .04em;
	margin-top: 20px;
}
.sp_cop{
	display: none;
}

@media screen and (max-width: 768px) {

	.sp_cop{
		display: block;
		text-align: center;
		margin-top: 80px;
	}
	.pc_cop{
		display: none;
	}
	footer {
	    padding: 50px 0 50px;
	}
	
	.footer_fx{
		flex-direction: column;
		align-items: center;
		width: 90%;
	}
	.footer_L .f_logo {
	    max-width: 300px;
	    margin: 0 auto;
	    margin-bottom: 45px;
	}
	.footer_L{
		width: 100%;
		max-width: none;
	}
	.footer_L .site {
	   margin: 0 auto;
	}
	.footer_L dl{
		column-gap: 7px;
		max-width: 400px;
	}
	.footer_L dt{
		width: 24%;
		max-width: 77px;
		font-size: 14px;
	}
	.footer_L dd{
		width: 75%;
		margin-bottom: 25px;
		font-size: 14px;
	}
	.footer_R {
	    width: 100%;
	    max-width: none;
	    margin-top: 35px;
	    flex-direction: column;
	}
	.footer_R ul {
	    width: 100%;
	    max-width: 300px;
	    margin: 0 auto;
	    column-gap: 15px;
	    flex-wrap: wrap;
		justify-content: center;
	    row-gap: 20px;
	}
	.footer_R .drop-menu-list{
		width: 130px;
		left: auto;
		right: -66px;
	}
	.footer_R .drop-menu-item {
	    padding: 8px 10px 10px 10px;
	}
	.footer_R ul li a ,
	.footer_R .drop-menu {
	    font-size: 14px;
	}
	.footer_R .en_btn {
		margin: 0 auto;
	    margin-top: 14px;
	}
	.footer_R .en_cta{
		margin-top: 30px;
		font-size: 16px;
		height: 45px;
	}
	
}





/*-----------------------
        募集要項
-------------------------*/
.job_page{
	background-color: #F6F7F8;
	padding: 80px 0 127px;
}
.job_page_box_col{
	width: 95%;
	max-width: 1080px;
	margin: 0 auto;
	padding-bottom: 56px;
	background-color: #fff;
	border-radius: 4px;
	border: 1px solid rgba(0,0,0,.2);
}
.job_page_box_col dl{
	width: 95%;
	max-width: 936px;
	margin: 0 auto;
	padding: 56px 0;
	display: flex;
	flex-wrap: wrap;
}
.job_page_box_col dl dt{
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	letter-spacing: .04em;
	font-size: 18px;
	font-weight: 600;
	width: 20%;
	max-width: 147px;
	padding-top:  48px;
	padding-right: 10px;
	padding-bottom: 23px;
	border-bottom: 2px solid #0C419A;
}
.job_page_box_col dl dd{
	width: 79%;
	max-width: 786px;
	padding-top:  48px;
	padding-left: 10px;
	font-weight: 500;
	padding-bottom: 23px;
	border-bottom: 1px solid rgba(0,0,0,.2);
}
.job_page_box_col dl dt:first-child,
.job_page_box_col dl dd:nth-of-type(1){
	padding-top: 0;
}
.entry_btn {
    background: #07C4D9;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 272px;
	padding-right: 23px;
	height: 56px;
	margin: 0 auto;
	text-align: center;
	font-size: clamp(14px, 1.41vw, 16px);
	color: #fff;
	font-weight: 500;
	border-radius: 100vw;
	letter-spacing: .04em;
	position: relative;
	box-shadow: 0 4px 4px rgba(0,0,0,.2);
}
.entry_btn:before {
  content: '';
  width: 36px;
  height: 36px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 6px;
  bottom: 0;
  margin: auto;
}
.entry_btn:after {
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-top: 2px solid #07C4D9;
  border-right: 2px solid #07C4D9;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}

@media screen and (max-width: 768px) {
	.job_page_box_col dl dt{
		width: 100%;
		max-width: fit-content;
		padding-right: 30px;
		margin-bottom: 20px;
		padding-right: 0;
		padding-bottom:10px;
		font-size: 16px;
	}
	.job_page_box_col dl dd{
		width: 100%;
		padding-top: 5px;
		padding-bottom:15px;
		font-size: 14px;
		padding-left: 0;
	}
}
/*-----------------------
	    インタビュー
-------------------------*/
.interview_pagearea{
	padding: 104px 0;
	background-color: #F6F7F8;
}
.interview_listbox ul{
	width: 95%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 1184px;
	margin: 0 auto;
	column-gap: 10px;
	row-gap: 30px;
	position: relative;
}
.interview_listbox ul::after{
  content:"";
  display: block;
  width:30%;
  max-width: 374px;
}
.interview_listbox ul li{
	width: 32%;
	max-width: 374px;
	height: 500px;
	position: relative;
}
.interview_listbox ul li a{
	display: block;
	height: 100%;
	color: #fff;
}
.interview_listbox ul li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 1000px) {

	.interview_listbox ul li{
		width: 32%;
		max-width: 374px;
		height: 350px;
		position: relative;
	}
}

@media screen and (max-width: 768px) {

	.interview_listbox ul{
		row-gap:20px;
	}
	.interview_listbox ul li{
		width: 48%;
		height: 250px;
	}
	.interview_listbox .staff_main_txt {
		padding: 8px 8px;
	}
	.interview_listbox .staff_main_txt p {
	    font-size: 10px;
	    line-height: 1.3;
	}
	.interview_listbox .staff_main_txt h3{
		    font-size: 12px;
		    margin-top: 5px;
	}
	.interview_listbox .staff_main_txt h3 span{
		font-size: 12px;
	}
	
	.interview_listbox .staff_main_ttl {
	   top: -19px;
	   width: 80px;
	   height: 20px;
	   display: flex;
	   flex-direction: column;
	   justify-content: center;
	}
	.interview_listbox .staff_main_ttl span {
	    font-size: 12px;
	}
}

/*-----------------------
	 インタビュー詳細
-------------------------*/
.interview_page{
	position: relative;
	height: 600px;
	position: relative;
}

.interview_page .basic_ttl span{
	color: #fff;
    font-weight: bold;
    letter-spacing: .2em;
    line-height: 1;
    font-size: clamp(14px, 1.41vw, 20px);
}
.interview_page_contents{
	background-color: #F6F7F8;
	padding: 142px 0 82px;
	position: relative;
	z-index: 1;
}
.interview_page_box ul{
	width: 95%;
	max-width: 1184px;
	margin: 0 auto;
	margin-bottom: 158px;
}
.interview_page_box ul li{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 20px;
	margin-top: 164px;
}
.interview_page_box ul li:first-child{
	margin-top: 0;
}
.interview_page_box ul li:nth-child(even){
	flex-direction: row-reverse;
}
.interview_page_txt{
	max-width: 546px;
}
.interview_page_img{
	max-width: 512px;
	position: relative;
}
.interview_page_img:before{
	content: "";
	display: inline-block;
	width: 65%;
	max-width: 302px;
	padding-top: 44%;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	position: absolute;
	right: -22px;
	bottom: -22px;
	z-index: -1;
}
.interview_page_box ul li:nth-child(even) .interview_page_img:before{
	left: -22px;
	right: auto;
}
.q_txt{
	display: inline-block;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	margin-bottom: 70px;
}
 .q_txt span.moji{
	 font-weight: 600;
	 font-size: clamp(14px, 1.39vw, 18px);
	 padding: 5px 8px;
	 line-height: 1.3;
	 color: #fff;
	 letter-spacing: .04em;
	 display: flex;
	 align-items: center;
}
.q_txt span.moji02{
	 font-weight: bold;
	 font-size: clamp(18px, 2.499999vw, 28px);
	 padding-right: 12px;
	 line-height: 1;
	 color: #fff;
	 letter-spacing: .04em;
}
@media screen and (max-width: 970px)  {

	.interview_page_img:before{
		bottom: 5%;
	}
}
@media screen and (max-width: 890px)  {

	.interview_page_img:before{
		bottom: 22%;
	}
}
@media screen and (max-width: 840px)  {

	.interview_page {
	    position: relative;
	    height: 350px;
	    position: relative;
	}
	.interview_page .basic_ttl {
        top: 78%;
        left: 50%;
        width: 90%;
    }
	.interview_page_contents {
	    background-color: #F6F7F8;
	    padding: 80px 0 82px;
	}
	.interview_page_box ul{
		width: 90%;
	}
	.interview_page_box ul li {
	    flex-direction: column;
	    row-gap: 40px;
		align-items: center;
	    margin-top: 100px;
	}
	.interview_page_box ul li:nth-child(even) {
	    flex-direction: column;
	    margin-top: 100px;
	}
	
	.q_txt {
		margin-bottom: 30px;
	}
	.interview_page_img:before{
		bottom: -22px;
	}
}




.future_messe{
	background-image: url(../img/messe_bg.jpg);
	background-size: cover;
	padding: 68px 0 76px;
}
.future_messe_box{
	display: flex;
	width: 95%;
	max-width: 1184px;
	margin: 0 auto;
	background-color: #FAFAFA;
	padding: 56px 56px;
}


.future_messe_txtinner h3{
	font-size: clamp(18px, 2.499999vw, 28px);
	    font-weight: 600;
	margin-bottom: 35px;
	line-height: 1;
    letter-spacing: .04em;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.future_messe_txtinner p{
	font-size: clamp(14px, 1.41vw, 16px);
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 1.8;
}
.future_messe_img{
	width: 30%;
	max-width: 335px;
}
.future_messe_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 768px)  {

	.future_messe_box {
		flex-direction: column-reverse;
		padding: 40px 25px;
	}

	
	
}

.interview_sub{
	padding: 95px 0 80px;
	background-image: url(../img/interview_bg.jpg);
	background-size: cover;
}

.interview_subslider {
    margin-top: 70px;
    margin-bottom: 0;
}

.interview_subslider li{
	max-width: 375px;
	height: 500px;
	margin: 0 auto;
	color: #000000;
	position: relative;
}
.interview_subslider li a{
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
}
.interview_subslider li img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.interview_subslider .slick-slide{
	margin: 0 15px !important;
}
.interview_subslider .slick-list{
  overflow: visible !important;
}
.interview_subslider .slick__next {
    position: absolute;
    top: 40%;
	right: calc((100vw - 104.5%) + (30px));
    z-index: 99;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
    background-image: url(../img/next.png);
    background-size: cover;
    background-repeat: no-repeat;
}
.interview_subslider .slick__next:after,
.interview_subslider .slick__prev{
	display: none !important;
}


@media screen and (max-width: 768px)  {

	.interview_subslider li {
	    max-width: 252px;
	    height: 306px;
	}
	.interview_subslider .slick-slide{
		margin: 0 5px !important;
	}
	.interview_subslider .slick__next {
	    position: absolute;
	    top: 40%;
	    right: calc((100vw - 87.5%) + (30px));
	    z-index: 99;
	    width: 50px;
	    height: 50px;
	}
	.interview_subslider .staff_main_txt {
		padding: 8px 8px;
	}
	.interview_subslider .staff_main_txt p {
	    font-size: 10px;
	    line-height: 1.3;
	}
	.interview_subslider .staff_main_txt h3{
		    font-size: 12px;
		    margin-top: 5px;
	}
	.interview_subslider .staff_main_txt h3 span{
		font-size: 12px;
	}
	
	.interview_subslider .staff_main_ttl {
	   top: -19px;
	   /* width: 80px; */
	   height: 20px;
	   display: flex;
	   flex-direction: column;
	   justify-content: center;
	}
	.interview_subslider .staff_main_ttl span {
	    font-size: 12px;
	}
}



.jobtype_contents{
	padding-top: 120px;
	background-color: #F6F7F8;
}
.jobtype_contents .inner{
	max-width: 1198px;
}
.jobtype_tabarea {
    display: none;
}
.jobtype_tabarea.show {
    display: block;
}
.page_link{
	width: 95%;
	margin: 56px auto 0;
	max-width:1198px;
	
}
.page_link ul{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 17px;
	row-gap: 14px;
}
.page_link ul li{
	width:31.8%;
	max-width: 388px;
	position: relative;
	transition: all .5s;
	cursor: pointer;
}

.page_link ul li::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(-229deg,rgba(19, 37, 82, .8) 26%, rgba(19, 37, 82, 0) 87%);
}
.page_link ul li:hover{
	opacity: .8;
}
.page_link ul li h3{
	position: absolute;
	top: 50%;
	left: 34px;
	width: 100%;
	transform: translateY(-50%);
	font-weight: 600;
	font-size: clamp(12px, 1.39vw, 20px);
	color: #fff;
	letter-spacing: .04em;
}

.jobtype_area{
	padding-top: 150px;
	padding-bottom: 72px;
	background-color: #F6F7F8;
}
.img_01{
	position: relative;
}
.img_01::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(-229deg,rgba(0,0,0, .7) 26%, rgba(19, 37, 82, .1) 87%);
}
.midashi_area{
	position: absolute;
	width: 100%;
	top: 46%;
	left: 59%;
	transform: translate(-50%,-50%);
	color: #fff;
}
.midashi_area h3{
	font-size: clamp(20px, 3.48vw, 48px);
    font-weight: 600;
    letter-spacing: .04em;
	margin-bottom: 64px;
	display: flex;
	align-items: center;
}
.midashi_area h3 span{
	font-size: clamp(10px, 1.39vw, 20px);
	padding-left: 20px;
}
.midashi_area p{
	font-size: clamp(12px, 1.41vw, 16px);
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 1.8;
	max-width: 480px;
}

@media screen and (max-width: 768px)  {

	.jobtype_contents {
	    padding-top: 80px;
	}
	.page_link ul li {
	    width: 47.6%;
	    max-width: 388px;
	}
	.page_link ul li h3 {
	    left: 10px;
	}
	.jobtype_area {
	    padding-top: 80px;
	}
	.img_01 {
	    height: 250px;
	}
	.img_01 img{
		height: 100%;
		object-fit: cover;
	}
	.midashi_area {
	    position: absolute;
	    width: 85%;
	    top: 50%;
	    left: 50%;
	}
	.midashi_area h3 {
	    margin-bottom: 30px;
	}
	.midashi_area h3 span{
	   padding-left: 10px;
	}
}
.jobtype_col_fx{
	width: 95%;
	max-width: 1184px;
	margin: 104px auto 0;
	display: flex;
	justify-content: space-between;
	column-gap: 20px;
}
.jobtype_col_img{
	width: 42%;
	max-width: 492px;
}
.jobtype_col_txt{
	width: 50%;
	max-width: 585px;
}
.jobtype_col_txt h3{
	    font-size: clamp(18px, 1.99vw, 28px);
	    line-height: 1.8;
	    letter-spacing: .04em;
	    padding-bottom: 20px;
	    margin-bottom: 20px;
	    border-bottom: 1px solid rgba(0,0,0,.2);
	    font-weight: 600;
	    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	    -webkit-background-clip: text;
	    -webkit-text-fill-color: transparent;
}
.jobtype_col_txt ul{
	margin-bottom: 78px;
}
.jobtype_col_txt ul li{
	font-size: 14px;
	line-height: 1.8;
	    letter-spacing: .04em;
	margin-bottom: 12px;
	position: relative;
	font-weight: 500;
}
.jobtype_col_txt ul li:before{
	content: "";
	display: inline-block;
	border-radius: 50%;
	margin-right: 11px;
	vertical-align: middle;
	width: 9px;
	height: 9px;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%
41%, rgba(19, 37, 82, 1) 100%);
}
.jobtype_col_txt p{
	font-size: clamp(14px, 1.41vw, 16px);
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 1.8;
}

@media screen and (max-width: 768px)  {

	.jobtype_col_fx {
	    width: 95%;
	    max-width: 1184px;
	    margin: 80px auto 0;
	    flex-direction: column;
		align-items: center;
	    row-gap: 40px;
	}
	.jobtype_col_img{
		width: 100%;
		max-width: 492px;
	}
	.jobtype_col_txt{
		width: 100%;
		max-width: 585px;
	}

}


.work_flow{
	width: 95%;
	margin: 0 auto;
	max-width: 1200px;
	padding-top: 144px;
	
}
.work_flow_fx{
	margin-top: 66px;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 15px;
}
.flow_area{
	width: 45%;
	max-width: 536px;
}
.flow_area02{
	width: 50%;
	max-width: 618px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.schedule_img{
	margin-top: 80px;
	display: flex;
	column-gap: 8px;
}
.schedule_img img{
	width: 49%;
}
.flow_area dl{
	position: relative;
	display: flex;
	align-items: flex-start;
	margin-bottom: 25px;
}
.flow_area dl.last{
	margin-bottom: 0;
}
.flow_area dl::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
	vertical-align: middle;
    width: 16px;
    height: 16px;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41% 41%, rgba(19, 37, 82, 1) 100%);
    border-radius: 50%;
    z-index: 1;
}
.flow_area dl::after {
    content: "";
    position: absolute;
    left: 6.5px;
    top: 15px;
    bottom: -44px;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41% 41%, rgba(19, 37, 82, 1) 100%);
    width: 3px;
    z-index: 0;
}
.flow_area dl.last::after{
	content: none;
}
.flow_area dl.last02::after {
    left: 6.5px;
    top: -5px;
    bottom: 55px;
}
.flow_area dl.last03::after {
    top: 15px;
    bottom: -10px;
}
.flow_area dl dt {
	display: flex;
	align-items: center;
	letter-spacing: .04em;
	padding-left: 55px;
	font-size: clamp(18px, 1.99vw, 28px);
	font-weight: bold;
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.flow_area dl dd {
	letter-spacing: .04em;
    font-size: clamp(14px, 1.113vw, 16px);
}
.flow_area dl dd {
	padding-left: 40px;
	letter-spacing: .04em;
	color: #3C4253;
	line-height: 1.8;
    font-size: clamp(14px, 1.41vw, 18px);
	position: relative;
	z-index: 0;
}
.flow_area dl dd h3{
	font-size: clamp(16px, 1.666666vw, 24px);
	color: #3C4253;
}
.flow_area dl dd .sub_txtari{
	position: relative;
}
.flow_area dl dd .sub_txt{
	position: absolute;
	width: 100%;
	max-width: 150px;
	background-color: #E5F0FB;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
	padding: 8px;
	margin-left: 20px;
}
.flow_area dl dd .sub_txt p{
	font-size: 14px;
	letter-spacing: .04em;
	line-height: 1.5;
	font-weight: 500;
	color: #5B5B5B;
}
@media screen and (max-width: 940px)  {

	.flow_area dl dd .sub_txt{
		position: static;
		transform: none;
		margin:10px 0 0 0;
	}
}

@media screen and (max-width: 768px)  {

	.jobtype_col_txt ul {
	    margin-bottom: 50px;
	}
	.work_flow{
		padding-top: 70px;
	}
	.flow_area{
		margin-top: 0;
		width: 100%;
		max-width: 536px;
	}
	.work_flow_fx{
		margin-top: 66px;
		flex-direction: column;
		align-items: center;
		column-gap: 15px;
	}
	
	.flow_area dl.last03::after {
	    top: 15px;
	    bottom: -44px;
	}
	.flow_area dl dt {
	    padding-left: 35px;
	}
	.flow_area dl dd {
	    padding-left: 30px;
	}
	
	
}

/*-----------------------
       コラムページ
-------------------------*/
.column_page {
	background-color: #F6F7F8;
	padding: 106px 0;
}
.column_page_inner{
	width: 95%;
	max-width: 1185px;
	margin: 0 auto;
}
.column_list{
	display: flex;
	flex-wrap: wrap;
	column-gap: 10px;
	row-gap: 56px;
	justify-content: space-between;
	position: relative;
}
.column_list::after {
    content: "";
    display: block;
    width: 32.5%;
	max-width: 380px;
}
.column_list li{
	width: 32.5%;
	max-width: 380px;
}
.column_list li a{
	display: block;
	color: #363B49;
}
.column_list_img{
	height: 266px;
}
.column_list_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.column_data{
	margin-top: 32px;
}
.column_thumbnail{
	height: 580px;
	margin-bottom: 40px;
}
.column_thumbnail img{
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 860px)  {
	.column_thumbnail{
		height: 350px;
	}
}
@media screen and (max-width: 768px)  {
	.column_thumbnail{
		height: 220px;
	}
}
.column_data h3{
	margin-bottom: 15px;
	letter-spacing: .04em;
    font-weight: 500;
	line-height: 1.3;
    font-size: clamp(14px, 1.41vw, 18px);
}
.column_data p{
	margin-bottom: 15px;
	letter-spacing: .04em;
    font-weight: 500;
	line-height: 1.3;
    font-size: 14px;
}
.column_data span{
	background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	color: #fff;
	letter-spacing: .04em;
	font-weight: 500;
	line-height: 1;
	font-size: 14px;
	padding: 4px;
}

.page_num{
	margin-top: 95px;
	display: flex;
	justify-content:center;
	column-gap: 10px;
}

.page-numbers{
	display: flex;
	align-items: center;
	justify-content:center;
	width: 40px;
	height: 40px;
	font-size:clamp(12px, 1.39vw, 20px);
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 1;
	color: #142653;
}
.page-numbers.next,
.page-numbers.prev{
	color: #000000;
}
.page-numbers.current{
	background-color: #fff;
	border: 1px solid #142653;
}
@media screen and (max-width: 860px)  {

	.column_list li{
		width: 31%;
		max-width: 380px;
	}
	.column_list li a{
		display: block;
		color: #363B49;
	}
	.column_list_img{
		height: 180px;
	}
}
@media screen and (max-width: 768px)  {
	.column_list{
		row-gap: 60px;
	}
	.column_list li{
		width: 49%;
		max-width: 380px;
	}
	.column_list li a{
		display: block;
		color: #363B49;
	}
	.column_list_img{
		height: 180px;
	}
	.column_data{
		margin-top: 20px;
	}
	.column_data h3{
		margin-bottom: 10px;
		font-size: clamp(14px, 1.41vw, 18px);
	}
	.column_data p{
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 470px)  {

	.column_list li{
		width: 90%;
		margin: 0 auto;
		max-width: 380px;
	}
	.column_list li a{
		display: block;
		color: #363B49;
	}
	.column_list_img{
		height: 180px;
	}
}
/*-----------------------
       パンくずリスト
-------------------------*/
.breadcrumbs{
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .04em;
}
.breadcrumbs li{
	display: inline-block;
	margin: 0 14px;
	position: relative;
}
.breadcrumbs li.current-item span{
	color: #0C419A;
}
.breadcrumbs li:after{
	content: '/';
	color: #2B2B2B;
	font-weight: 500;
	display: inline-block;
	position: absolute;
	right: -20px;
}
.breadcrumbs li.home:after{
	right: -7px;
}
.breadcrumbs li:last-child:after{
	content: none;
}
.breadcrumbs li.home{
	display: inline-block;
	margin: 0;
}
.breadcrumbs a{
	color: #7A7A7A;
	font-size: 12px;
	font-weight: 500;
}
.breadcrumb_list{
	margin-right: 9px;
}
@media screen and (max-width: 768px) {
	
	.breadcrumbs span[property="name"] {
	    display: inline-block;
	    padding: 0;
	    margin-top: -3px;
	    vertical-align: middle;
	    max-width: 150px;
	    white-space: nowrap;
	    overflow: hidden;
	    text-overflow: ellipsis;
	}
	.breadcrumbs span[property="name"]:hover {
	    max-width: none;
	}
}

/*-----------------------
       コラム詳細
-------------------------*/
.edit_contents {
	padding: 28px 0 110px;
	background-color: #F9FAFA;
}
.edit_contents .inner{
	width: 80%;
	max-width: 1000px;
}
.column_area{
	padding-top: 92px;
}

.column_area p{
	    font-size: clamp(14px, 1.41vw, 16px);
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 1.8;
	margin-bottom: 40px; 
}
.column_area h1{
	color: #363B49;
	font-weight: 600;
    line-height: 1.4;
    letter-spacing: .04em;
	margin-bottom: 32px;
    font-size: clamp(18px, 2.499999vw, 28px);
}
.column_data_cat{
	margin-bottom: 47px;
}
.column_area .column_data_cat span{
	color: #0C419A;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .04em;
	background: transparent;
	padding: 0;
}
.column_data_cat span.column_cat{
	display: inline-block;
	padding: 4px 8px;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
	color: #fff;
	margin-left: 40px;
}
.column_area h2{
	position: relative;
	font-size: clamp(17px, 2.499999vw, 24px);
	letter-spacing: .04em;
	font-weight: 600;
	line-height: 1.3;
	height: 56px;
	color: #363B49;
	padding: 0 16px 0 40px;
	margin-bottom: 23px;
	background-color: #F1F6FE;
	display: flex;
	align-items: center;
}
.column_area h2:before{
	content:"";
	display: inline-block;
	width: 5px;
	height: 40px;
	background-color: #0C419A;
	vertical-align: middle;
	margin-right: 24px;
	position: absolute;
	left: 20px;
}
.column_area h3{
	position: relative;
	    font-size: clamp(16px, 1.39vw, 20px);
    letter-spacing: .04em;
    font-weight: 600;
    line-height: 1.3;
	color: #132552;
	padding: 12px 16px;
	margin-bottom: 30px;
	background-color: #F0F0F0;
}
.column_area ul{
	margin: 30px 0 30px 30px;
	list-style: disc;
}
.column_area ol{
	background-color: #F1F6FE;
	padding: 33px 35px 33px 65px;
	margin-bottom: 30px;
	list-style: decimal-leading-zero;
}
.column_area ol li::marker {
  color: #0C419A;
}
.column_area ul li{
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(15px, 1.41vw, 18px);
	line-height: 1.8;
	color: #0C419A;
	margin-bottom:18px;
}
.column_area ol li{
	letter-spacing: .04em;
	font-weight: 600;
	font-size: clamp(15px, 1.41vw, 18px);
	line-height: 1.8;
	color: #363B49;
	margin-bottom:24px;
}
.column_area ol li:last-child{
	margin-bottom: 0;
}
.column_area table {
	margin: 30px 0;
	border-spacing: 2px;
	border-collapse:separate !important;
}
.column_area table th{
	border: none;
	color: #fff;
	font-size: clamp(14px, 1.41vw, 16px);
    letter-spacing: .04em;
    font-weight: 600;
    line-height: 1.8;
	background-color: #132552;
}
.column_area table td{
	color: #363B49;
	font-size: clamp(13px, 1.41vw, 16px);
	letter-spacing: .04em;
	font-weight: 500;
	line-height: 1.4;
	padding: 16px 19px;
	border: 1px solid rgba(0,0,0,.14);
	background-color: #fff;
}
.column_ft{
	display: flex;
	justify-content: space-between;
	align-items:center;
}
.column_center .more_btn {
    width: 100%;
    max-width: 272px;
    padding-right: 23px;
    height: 56px;
	padding: 0 0 0 32px;
	justify-content: flex-start;
    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
    font-size: 16px;
	box-shadow: 0 4px 4px rgba(0,0,0,.25);
}
.column_area .more_btn:before,
.column_area .more_btn:after{
	content: none;
}
.column_ft{
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
	margin-top: 90px;
}
.column_ft .column_center,
.column_ft .column_prev,
.column_ft .column_next{
	width: 33%;
}
.column_ft .column_next{
	text-align: right;
}
.column_ft .column_prev a,
.column_ft .column_next a{
	color: #0C419A;
	font-size: clamp(13px, 1.41vw, 16px);
	letter-spacing: .04em;
	font-weight: 600;
	border-bottom: 1px solid #0C419A;
	padding-bottom: 10px;
}
.column_ft .column_prev span{
	margin-right: 25px;
}
.column_ft .column_next span{
	margin-left: 25px;
}
.column_center{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {

	.edit_contents .inner {
	    width:90%;
	}
	.column_area h2 {
	    padding: 10px 10px 10px 30px;
	    margin-bottom: 23px;
	}
	.column_area h2:before{
		left: 15px;
		height: 45px;
	}
	.column_area table{
		table-layout: fixed !important;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}
	.column_area table th{
			line-height: 1.4;
			width: auto;
	}

	.column_area table td{
		padding: 10px 10px;
	}
	.column_area ol {
	    background-color: #F1F6FE;
	    padding: 20px 15px 20px 45px;
	}
	.column_center .more_btn {
			width: 90%;
		margin: 0 auto;
	    padding-right: 23px;
	    height: 30px;
	    padding: 0;
	    justify-content: center;
	    font-size: 12px;
	}
}
@media screen and (max-width: 500px) {
	.column_area table{
		width: 500px !important;
}

}
/*-----------------------
       募集要項
-------------------------*/
.jobs_contents{
	background-color: #F6F7F8;
	padding: 118px 0 118px;
}
.jobarea{
	width: 95%;
	max-width: 1088px;
	margin: 0 auto; 
	display: flex;
	align-items: center;
	column-gap: 30px;
}
.jobarea > h3{
	color:#363B49;
	font-size: clamp(18px, 2.4vw, 28px);
    line-height: 1;
	font-weight: 600;
    letter-spacing: .04em;
}
.jobarea ul{
	display: flex;
	align-items: center;
	column-gap: 20px;
}

.jobarea li{
	font-size: clamp(12px, 1.39vw, 20px);
    padding: 8px 16px;
    line-height: 1;
	font-weight: 600;
    color: #fff;
    letter-spacing: .04em;
	background-color: #B0B0B0;
	border-radius: 32px;
}
.jobarea li.active{
	    background: linear-gradient(242deg, rgba(12, 65, 154, 1) 41%, rgba(19, 37, 82, 1) 100%);
}
.recruit-container{
	width: 95%;
	max-width: 1088px;
	margin: 70px auto 0;
}
.recruit_list ul{
	display: flex;
	flex-wrap: wrap;
	column-gap: 16px;
	row-gap: 16px;
	position: relative;
}
.recruit_list ul:after{
	content: "";
	width: 32%;
	max-width: 352px;
}
.recruit_list ul li{
	width: 32%;
	max-width: 352px;
	height: 312px;
	position: relative;
	z-index: 0;	
	transition: all .5s;
	cursor: pointer;
}
.recruit_list ul li:hover{
	opacity: .8; 
}
.recruit_list ul li a:hover{
	opacity: 1;
}
.recruit_list ul li::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,.6);
    z-index: 2;
}
.recruit_list ul li a{
	display: block;
	height: 100%;
	width: 100%;
	color: #fff;
}
.jobsrecruit_txt{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	text-align: center;
	transform: translate(-50%,-50%);
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.jobsrecruit_txt h3{
	    font-size: clamp(18px, 2.499999vw, 28px);
	    color: #fff;
	    font-weight: 600;
	    border-radius: 100vw;
	    letter-spacing: .04em;
	    margin-bottom: 50px;
	    position: relative;
}
.jobsrecruit_txt span{
	font-size: clamp(14px, 1.41vw, 16px);
    color: #fff;
    font-weight: 500;
    border-radius: 100vw;
    letter-spacing: .04em;
	margin-bottom: 32px;
}
.jobsrecruit_txt h3:before {
  content: '';
  width: 44px;
  height: 44px;
  border: 1px solid #fff;
  border-radius: 50%;
  position: absolute;
  bottom: -80px;
  left: 50%;
  transform: translateX(-50%);
}
.jobsrecruit_txt h3:after {
  content: '';
  width: 13px;
  height: 13px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  bottom: -69px;
  left: 48.5%;
  transform: rotate(45deg) translateX(-50%);
}
.recruit_list ul li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 880px) {

	.recruit_list ul{
		justify-content: center;
	}
	.recruit_list ul li {
	    width: 49%;
	    z-index: 0;
	}
	.recruit_list ul:after{
		content: "";
		width: 49%;
		max-width: 352px;
	}
	
}
@media screen and (max-width: 768px) {

	.jobarea{
		width: fit-content;
		flex-direction: column;
		align-items: flex-start;
		row-gap: 20px;
	}

	.jobarea ul{
		justify-content: center;
		width: 100%;
	}
	.recruit_list ul li {
	    width: 95%;
		margin: 0 auto;
	    height: 300px;
	    position: relative;
	    z-index: 0;
	}
	

}