/***********************
	全体
	********************/

.bl{
	background-color: rgba(50, 153, 255, 0.1);
}

.wht{
	background-color: #fff;
}

.hover{
	transition: opacity .2s;
}

.hover:hover{
	opacity: .8;
}



.justify{
	display: flex;
	justify-content: space-between;
}

/***********************
	pc
	********************/
@media screen and (min-width: 769px) {
	
	
	/***********
		common
		*********/
			
	.hover_line{
		position: relative;
	}
	
	.hover_line:hover::after{
		content:"";
		width: 100%;
		height: 1px;
		position: absolute;
		bottom:-3px;
		left:0;
		background: #000;
	}
	
	/***********
		header
		*********/
	header{
		
	}
	
	.sp_navArea{
		display: none;
	}
	
	.pc_navArea{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		height: 100px;
		position: fixed;
		top: 0;
		z-index: 1000;
		background-color: #fff;
	}
	
	.fixed{
		
	}
	
	.pc_navArea .hd_logo{
		max-width: 388px;
		width: 35%;
		margin-left: 2%;
	}
	
	.pc_navArea .gNav{
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 10px;
	}
	
	.pc_navArea .gNav ul{
		margin-right: 15px;
		display: flex;
	}
	
	.pc_navArea .gNav ul li{
		display: inline-block;
		min-width: 70px;
		margin-left: 0px;
		padding: 0px 0;
		margin-right: 10px;
		font-size: 0.85em;
		font-weight: bold;
		letter-spacing: 0em;
	}
	
	.pc_navArea .gNav ul li a{
		position: relative;
		text-align: center;
		position:relative;
	}
	
	.pc_navArea .gNav ul li a:hover::after,
	.pc_navArea .gNav ul li.current a::after{
		content:"";
		position: absolute;
		bottom:-5px;
		width: 100%;
		height: 1px;
		background: #000;
		display: block;
	}
	
	.pc_navArea .gNav .contact_nav{
		max-width: 196px;
		margin: 0px auto;
		margin-right: 2%;
	}
	
	.pc_navArea .gNav .contact_nav a{
		display: block;
		width: 100%;
	}
	
	/***********
		topArea
		*********/
	.topArea{
		position: relative;
		width: 100%;
		height: 710px;
		top: 100px;
	}
	
	.topArea .top_slide{
		width: 100%;
		height: 710px;
		position: relative;
	}
	
	.topArea .top_slide .slider{
		width: 100%;
		height: 710px;
	}
	
	.topArea .top_slide .slide1{
		width: 100%;
		height: 710px;
		background: url(../img/slide01.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.topArea .top_slide .slide2{
		width: 100%;
		height: 710px;
		background: url(../img/slide02.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.topArea .top_slide .slide3{
		width: 100%;
		height: 710px;
		background: url(../img/slide03.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.topArea .txt_slider .top_copy .sp{
		display: none
	}
	
	.topArea .txt_slider{
		max-width: 404px;
		height: auto;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		right: 0;
		margin: auto;
	}
	
	.topArea .top_btm{
		width: 100%;
		position: absolute;
		bottom: -2px;
		left: 0;
		z-index: 10;
	}
	
	
	
	.topnews{
		position: relative;
		max-width: 960px;
		width: 85%;
		box-sizing: border-box;
		padding: 150px 0 50px;
		margin: 0 auto;
		
	}
	
	.topnews .newsArea{
		background: #4D4D4D;
		color: #fff;
		border-radius: 15px;
		padding: 20px 40px;
		display: flex;
		align-items: center;
	}
	
	.topnews .newsArea dt{
		padding: 5px 0;
		margin-right: 25px;
		padding-right: 25px;
		border-right: solid 1px #fff;
		font-size: 1.5em;
		letter-spacing: 0.1em;
		
	}
	
	.topnews .newsArea dd{
		font-size: 0.85em;
	}
	
	.topnews .newsArea dd span{
		display: inline-block;
		margin-right: 15px;
	}
	
	.topArea .topnews .newsArea dd a{
		text-decoration: underline;
	}
	
		
	
	.inner{
		max-width: 1082px;
		width: 90%;
		margin: 0 auto;
	}
	
	/***********
		moreBtn
		*********/
	.moreBtn{
		max-width: 180px;
		margin-top: 20px;
	}
	
	.moreBtn a{
		display: block;
	}
	
	.moreBtn p{
		
		
	}
	
	
	
	
	
	/***********
		sec_ttl
		*********/
		
	.ttlArea{
		margin-bottom: 30px;
		position: relative;
		z-index: 10;
	}
	
	.ttlArea .sec_ttl {
    font-size: 3em;
    font-weight: 900;
    color: #181FC5;
    margin-bottom: 10px;
    letter-spacing: -0.5px;
}
	
	.ttlArea span{
		font-size: 1.4em;
		font-weight: bold;
		color: #181FC5;
		display: block;
		letter-spacing: 2px;
	}
	
	.ttlArea span::before{
		content: "";
		display: inline-block;
		width: 40px;
		height: 2px;
		margin-right: 18px;
		background-color: #181FC5;
		vertical-align: middle;
	}
	
	
	
	/***********
		about
		*********/
	.about_sec{
		padding: 80px 0;
		background: linear-gradient(to right, #ebf5ff 0%, #ebf5ff calc(50% + 300px), #ffffff calc(50% + 300px), #ffffff 100%);
		
	}
	
	.about_sec .inner{
		position: relative;
		display: flex;
	}
	
	.about_sec .aboutArea{
		width: 50%;
		position: relative;
		z-index: 10;
	}
	
	.about_sec .aboutArea h3{
		font-size: 1.2em;
		line-height: 1.75;
		margin-bottom: 15px;
		font-weight: bold;
	}
	
	.about_sec .aboutArea p{
		line-height: 1.75;
		font-size: 0.9em;
	}
	
	
	.about_sec .imgArea{
		position: absolute;
		right: -8%;
		width: 80%;
	}


	
	/***********
		service_sec
		*********/
	
	.service_sec{
		width: 100%;
		padding: 80px 0 0;
		background-color: #fff;
		position: relative;
	}
	
	.service_sec .imgArea{
		width: 60%;
		margin: 0 auto 20px;
		position: relative;
		top: -80px;
	}	
	

	
	.service_sec .service_list{
		margin-bottom: 80px;
		position: relative;
		top: -70px;
	}
	
	.service_sec .service_list ul{
		display: flex;
		justify-content: space-between;
	}
	
	.service_sec .service_list ul li{
		width: 28%;
	}
	
	.service_sec .service_list ul li h4{
		font-size: 1.2em;
		font-weight: 700;
		margin-bottom: 15px;
		text-align: center;
		color: #181FC5;
		letter-spacing: 1px;
	}
	
	.service_sec .service_list ul li p{
		line-height: 1.75;
		font-size: 0.9em;
	}	
	
	
	/***********
		recruit_sec
		*********/
	.recruit_sec{
		width: 100%;
		padding: 50px 0;
		background: url(../img/top_recruit_img.png) no-repeat center top;
		background-size: cover;
		position: relative;
	}
	
	.recruit_sec .txt{
		line-height: 1.75;
		font-weight: 600;
	}

	
	/***********
		footer
		*********/
	
	footer{
		width: 100%;
		padding: 100px 0 80px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+1,84c3ff+100 */
background: #ffffff; /* Old browsers */
background: -moz-linear-gradient(top,  #ffffff 1%, #84c3ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #ffffff 1%,#84c3ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #ffffff 1%,#84c3ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#84c3ff',GradientType=0 ); /* IE6-9 */



	}
	
	footer .inner{
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}
	
	footer .ft_l{
		width: 40%;
		margin-right: 10%;
	}
	
	footer .ft_l .logoArea{
		max-width: 350px;
		margin-bottom: 25px;
	}
	
	footer .ft_l .address{
		line-height: 1.5;
	}
	
	footer .ft_c{
		width: 20%;
	}
	
	footer .ft_c .sitemap{
		margin-top: 60px;
	}
	
	footer .ft_c ul{
		
	}
	
	footer .ft_c ul li{
		margin-bottom: 25px;
		letter-spacing: 0.2em;
		font-weight: 600;
	}
	
	footer .ft_r{
		width: 35%;
	}
	
	footer .ft_r .tel{
		margin-bottom: 15px;
	}
	
	footer .ft_r .ft_contact_nav{
		margin-bottom: 20px;
	}
	
	footer .ft_r .privacy{
		text-align: right;
		/*margin-bottom: 15px;*/
	}
	
	footer .ft_r .privacy li{
		font-weight: 400;
		display: inline-block;
		letter-spacing: 0.1em;
	}
	
	footer .ft_r .copyright{
		font-size: 0.85em;
		text-align: right;
		display: block;
	}
	
	footer .ft_btm{
		display: flex;
		justify-content: space-between;
		margin-top: 20px;
	}
	
	.pageTop{
		display: none !important;
	}

	
	/***********
		下層ttl
		*********/
	
	.lower_top{
		position: relative;
	}
	
	.lower_top .lower_ttl{
		max-width: 530px;
		height: auto;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.lower_top span{
		color: #1d67ab;
	}
	
	.lower_sec_ttl{
		font-size: 2em;
		color: #1d67ab;
		font-weight: 600;
		margin-top: 15px;
		letter-spacing: 0.1em;
	}
	
	.page_nav{
		position: relative;
		z-index: 20;
		color: #333333;
		font-size: 0.9em;
		font-weight: bold;
		padding: 80px 0 50px;
	}
	
	.page_nav ul{
		display: flex;
	}
	
	.page_nav ul li{
		padding: 5px 0;
		padding-right: 10px;
		margin-right: 10px;
		border-right: solid 1px #333;
	}
	
	.page_nav ul li:last-child{
		border-right: none;
	}
	
	.nav_fixed{
		position: fixed;
		top: 80px;
		z-index: 1000;
	}
	
	.lower_topArea{
		width: 100%;
		height: 610px;
		position: relative;
	}
	
	/***********
		company
		*********/
	
	
	.about_topArea{
		width: 100%;
		height: 610px;
		background: url(../img/company_mv.jpg) no-repeat center bottom;
		background-size: cover;
	}
	
	.greetArea{
		display: flex;
		justify-content: space-between;
		margin-bottom: 90px;
	}
	
	
	
	.greetArea h3{
		font-size: 1.6em;
    font-weight: bold;
    color: #181FC5;
    letter-spacing: 2px;
    line-height: 1.35;
    margin-bottom: 15px;
	}
	
	.greetArea .txtArea{
		width: 65%;
		
	}
	
	.greetArea .txtArea p{
		line-height: 1.75;
		margin-bottom: 10px;
		text-align: justify;
	}
	
	.greetArea .txtArea .name{
		font-weight: bold;
		text-align: right;
		max-width: 220px;
		margin-right: 0;
		margin-left: auto;
	}
	
	.greetArea .txtArea .name span{
		display: inline-block;
		font-size: 0.9em;
		margin-right: 15px;
		vertical-align: middle;
	}
	
	.greetArea .txtArea .name p{
		display: inline-block;
		font-size: 1.3em;
		vertical-align: middle;
	}
	
	.greetArea .imgArea{
		width: 30%;
		min-width: 245px;
		
	}
	
	.greet_btm{
		flex-direction: row-reverse;
	}
	
	.philo_sec{
		padding: 60px 0;
	}
	
	.philo_sec .txtArea{
		max-width: 550px;
		margin: 0 auto;
	}
	
	.philo_sec .philo_img{
		margin: 40px auto 30px;
		max-width: 500px;
	}
	
	.philo_sec .txtArea p{
		font-weight: bold;
		font-size: 1em;
		line-height: 1.75;
	}
	
	
	.info_sec{
		padding: 80px 0;
	}
	
	.info_sec .company_infoArea{
		display: flex;
		
	}
	
	
	.info_sec .company_infoArea .ttlArea{
		width: 30%
	}
	
	
	.infobox{
		width: 60%;
	}
	
	.infobox dl{
		margin: 0px auto;
	}
	
	.infobox dl .row{
		border-bottom: solid 1px #333333;
		padding: 0px 0 15px;
		margin-bottom: 15px;
		display: flex;
		box-sizing: border-box;
	}
	
	.infobox dl .row:last-child{
		border-bottom: none;
	}
	
	.infobox dl dt{
		padding-left: 35px;
		margin-right: 35px;
		font-weight: bold;
		line-height: 1.5em;
		width: 20%;
	}
	
	.infobox dl dd{
		width: 80%;
		line-height: 1.5em;
	}
	
	.infobox dl dd ul{
		
	}
	
	.infobox dl dd ul li{
		display: flex;
		margin-bottom: 25px;
	}
	
	.infobox dl dd ul li .img{
		width: 140px;
		margin-right: 35px;
	}
	
	.infobox dl dd ul li .txt{
		
	}
	
	.access_cntArea{
		display: flex;
		justify-content: space-between;
		margin-bottom: 60px;
	}
	
	.access_box{
		width: 47%;
	}
	
	.access_box .access_top{
		
	}
	
	.access_box .access_top h4{
		font-style: italic;
		font-weight: bold;
		margin-bottom: 10px;
	}
	
	.access_box .address{
		padding-left: 15px;
		padding: 5px 0;
		border-left: solid 1px #333333;
		margin-bottom: 10px;
	}
	
	.access_box .address p{
		font-size: 0.9em;
		margin-left: 10px;
		line-height: 1.75;
	}
	
	.access_box .address .num{
		display: flex;
	}
	.access_box .address .num span{
		display: inline-block;
	}
	.access_box .address .num span:first-child{
		margin-right: 20px;
	}
	
	/***********
		contact
		*********/
	
	
	
	.contact_topArea{
		width: 100%;
		height: 610px;
		background: url(../img/contact_mv.jpg) no-repeat center bottom;
		background-size: cover;
	}
	
	.form_sec{
		padding-top: 120px;
		padding-bottom: 60px;
		
	}
	
	
	.form_sec .txtArea{
		font-size: 0.85em;
		line-height: 1.75;
		text-align: center;
		padding-bottom: 30px;
		margin-bottom: 60px;
		border-bottom: solid 1px #181FC5;
	}
	
	.contact_form{
		max-width: 960px;
		width: 100%;
		margin: 0 auto;
		box-sizing: border-box;
	}
	
	.contact_form dl .row{
		display: flex;
		padding: 40px 30px;
		
	}
	
	.contact_form .mw_wp_form_confirm dl .row{
		align-items: baseline;
	}
	
	.contact_form dl .selectArea{
		padding-top: 60px;
	}
	
	.contact_form dl .selectArea ul li{
		display: inline-block;
		margin-right: 15px;
		margin-bottom: 20px;
		font-size: 1.1em;
	}
	
	.contact_form dl .selectArea span{
		display: inline-block;
		margin-right: 15px;
		margin-left: 10px;
		margin-bottom: 20px;
		font-size: 1.1em;
	}
	
	.contact_form dl dt{
		width: 30%;
		min-width: 270px;
		font-size: 1.2em;
		font-weight: bold;
		letter-spacing: 1px;
		display: flex;
		justify-content: space-between;
		align-items: baseline;
		margin-right: 5%;
		line-height: 1.5;
	}
	
	.contact_form dl dt span{
		font-size: 0.8em;
		color: #fff;
		background-color: #666666;
		border-radius: 10px;
		padding: 10px 10px;
		margin-left: 15px;
	}
	
	.contact_form dl dt .must{
		background-color: #181FC5;
	}
	
	.contact_form dl dd{
		width: 60%;
		line-height: 1.5;
	}
	
	
	
	.formArea select{
	font-size: 100%;
	box-sizing: border-box;
    padding: 10px;
     width: 100%;
}

	


.formArea input[type=date]{
	font-size: 100%;
	box-sizing: border-box;
    padding: 10px;
}

.formArea input[type=text], 
.formArea input[type=tel], 
.formArea input[type=email] {
	box-sizing: border-box;
    padding: 10px;
    font-size: 100%;
    width: 100%;
}

.formArea textarea {
   box-sizing: border-box;
    padding: 10px;
    font-size: 100%;
    width: 100%;
}
	
	
	.contact_form .mfp_buttons{
		border-top: solid 1px #181FC5;
	}
	
	.contact_form .mfp_buttons p{
		font-size: 1.2em;
		font-weight: bold;
		text-align: center;
		margin: 40px auto;
		letter-spacing: 0.1em;
	}
	
	.contact_form .mfp_buttons a{
		text-decoration: underline;
	}
	
	.contact_form .mfp_buttons a:hover{
		text-decoration: none;
	}
	
	.submitBtn{
		color: #fff;
		padding: 15px 60px;
		width: 100%;
		display: block;
		box-sizing: border-box;
		position: relative;
		background-color: #AA0036;
		border: none;
		box-shadow: none;
		font-size: 1em;
		text-align: left;
		font-size: 1.2em;
		font-weight: bold;
		letter-spacing: 1.5em;
		cursor: pointer;
		
	}

.btnArea{
	width: 260px;
	margin: 30px auto;
	position: relative;
}


.btnArea::after{
	content: "";
	display: block;
		width: 15px;
		height: 25px;
		background: url(../img/arrow_wht.svg) no-repeat;
		background-size: 100%;
		position: absolute;
		right: 60px;
		top: 50%;
		transform: translateY(-50%);
}

.btn_back{
	color: #fff;
		padding: 15px 30px;
		width: 260px;
		display: block;
		box-sizing: border-box;
		position: relative;
		background-color: #555;
		border: none;
		box-shadow: none;
		font-size: 1em;
		text-align: right;
		font-size: 1.2em;
		font-weight: bold;
		letter-spacing: 1.5em;
		cursor: pointer;
		
}

.back_btnArea{
	width: 260px;
	margin: 4px auto;
	position: relative;
}


.back_btnArea::before{
	content: "";
	display: block;
		width: 15px;
		height: 25px;
		background: url(../img/arrow_wht.svg) no-repeat;
		background-size: 100%;
		position: absolute;
		left: 60px;
		top: 50%;
		transform: translateY(-50%) rotate(180deg);
		z-index: 20;
}

.mfp_buttons button{
	position: relative;
}

.entry_box h3{
	text-align: center;
    font-size: 1.3em;
    font-weight: bold;
    margin: 0 auto 50px;
}

.contact_form .end_txt{
	text-align: center;
	line-height: 2;
	font-size: 1.3em;
	margin: 100px auto;
}


/***********
		recruit
		*********/
	
	
	
	.recruit_topArea{
		width: 100%;
		height: 610px;
		background: url(../img/recruit_mv.jpg) no-repeat center bottom;
		background-size: cover;
	}
	
	.charm_ttl{
		max-width: 610px;
		margin: 0 auto;
		line-height: 1.75;
		font-weight: bold;
		font-size: 2em;
		color: #181FC5;
		letter-spacing: 0.1em;
		position: relative;
		top: -80px;
	}
	
	.sec_charm{
		margin: 80px auto;
		padding: 0px 0 60px;
		background: linear-gradient(to right, #ebf5ff 0%, #ebf5ff calc(50% + 300px), #ffffff calc(50% + 300px), #ffffff 100%);
	}
	
	.charm_top{
		display: flex;
		justify-content: space-between;
	}
	
	.charm_top .txtArea{
		width: 50%;
	}
	
	.charm_top .txtArea p{
		line-height: 1.75;
		font-size: 1em;
	}
	
	.charm_top .imgArea{
		width: 49%;
	}
	
	.interview_sec{
		padding-bottom: 70px;
	}
	
	.interview_box {
		position: relative;
		margin-bottom: 60px;
		
	}
	
	.interview_box .interview_img{
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		
	}
	
	.interview_top .interview_img{
		width: 100%;
		height: 600px;
		background: url(../img/recruit_img02.jpg) no-repeat center center;
		background-size: cover;
	}
	
	.interview_top .interview_img::before{
		content: "";
		display: block;
		width: 100%;
		padding-bottom: 9%;
		background: url(../img/skew_top.svg) no-repeat right top;
		background-size: cover;
		position: absolute;
		top: 0px;
		left: 0;
	}
	
	.interview_top .interview_img::after{
		content: "";
		display: block;
		width: 100%;
		padding-bottom: 9%;
		background: url(../img/skew_btm.svg) no-repeat right bottom;
		background-size: cover;
		position: absolute;
		bottom: -2px;
		left: 0;
	}
	
	
	.interview_btm .interview_img{
		width: 100%;
		height: 600px;
		background: url(../img/recruit_img03.jpg) no-repeat top 20% center;;
		background-size: cover;
	}
	
	.interview_btm .interview_img::before{
		content: "";
		display: block;
		width: 100%;
		padding-bottom: 9%;
		background: url(../img/skew_top.svg) no-repeat right top;
		background-size: cover;
		transform: rotateY(180deg);
		position: absolute;
		top: 0px;
		left: 0;
	}
	
	.interview_btm .interview_img::after{
		content: "";
		display: block;
		width: 100%;
		padding-bottom: 9%;
		background: url(../img/skew_btm.svg) no-repeat left bottom;
		background-size: cover;
		transform: rotateY(180deg);
		position: absolute;
		bottom: -2px;
		right: 0;
	}
	
	.interview_box .inner{
		position: relative;
	}
	
	.interview_txt{
		min-width: 350px;
		width: 35%;
		background-color: #181FC5;
		color: #fff;
		box-sizing: border-box;
		padding: 40px;
	}
	
	.interview_txt .txt{
		
	}
	
	.interview_txt .txt .name{
		font-size: 1.3em;
		font-weight: bold;
		margin-bottom: 10px;
	}
	
	.interview_txt .txt .remarks{
		display: block;
		font-size: 0.9em;
		margin-bottom: 20px;
	}
	
	.interview_txt .txt h3{
		font-weight: bold;
		line-height: 1.35;
		font-size: 1.4em;
		letter-spacing: 0.1em;
		margin-bottom: 20px;
	}
	
	.interview_txt .txt p{
		line-height: 2;
		text-align: justify;
		font-size: 0.8em;
	}
	
	.interview_top .interview_txt{
		margin-right: 8%;
		margin-left: auto;
	}
	
	.infobox .infobox_list{
		margin-bottom: 50px;
	}
	
	.infobox .infobox_list h4{
		font-weight: bold;
		margin-bottom: 15px;
		padding-bottom: 15px;
		padding-left: 35px;
		border-bottom: solid 1px #333;
		letter-spacing: 1px;
		font-size: 1.2em;
		display: block;
	}
	
	.infobox .infobox_list h4 span:first-child{
		margin-right: 20px;
	}
	
	.infobox .infobox_list dt{
		width: 100px;
	}
	
	.infobox .infobox_list dd{
		width: calc(100% - 135px);
	}
	
	.infobox .infobox_list dd .notice{
		display: block;
		text-indent: -1em;
		margin-left: 1em;
	}
	
	.d_bl{
		background-color: #181FC5;
		color: #fff;
	}
	
	.d_bl .company_infoArea .ttlArea span{
		color: #fff;
	}
	
	.d_bl .company_infoArea .ttlArea span::before{
		background-color: #fff;
	}
	
	.d_bl .infobox dl .row{
		border-bottom: solid 1px #fff;
	}
	
	.entry_sec{
		margin: 80px auto;
	}
	
	.entry_sec .entry_txt{
		font-weight: bold;
		font-size: 1.2em;
		line-height: 1.75;
		text-align: center;
	}
	
	.entry_sec .entry_btn{
		max-width: 200px;
		margin: 50px auto;
	}
	
	/***********
		contact
		*********/
	
	
	
	.news_topArea{
		width: 100%;
		height: 610px;
		background: url(../img/news_mv.jpg) no-repeat center center;
		background-size: cover;
	}
	
	.news_intro{
		padding: 80px 0 50px;
		position: relative;
		z-index: 10;
	}
	
	.news_sec{
		
	}
	
	.news_sec .news_list{
		width: 100%;
	}
	
	.news_sec .news_list .li{
		padding: 70px 0;
	}
	
	.news_sec .news_list .li:nth-last-child(even){
		background-color: rgba(50, 153, 255, 0.1);
	}
	
	.news_sec .news_list .li:nth-last-child(odd){
		background-color: #fff;
	}
	
	.news_sec .news_list .date{
		color: #181FC5;
		font-size: 0.8em;
		display: block;
		margin-bottom: 50px;
		font-weight: bold;
	}
	
	.news_sec .news_list .news_ttl{
		font-size: 1.4em;
		line-height: 1.25;
		font-weight: bold;
		margin-bottom: 50px;
	}
	
	.news_sec .news_list .news_article{
		margin-bottom: 30px;
	}
	
	.news_sec .news_list .news_article p{
		line-height: 1.75em;
	}
	
	
	.news_sec .news_list .moreBtn{
		margin-right: 0;
		margin-left: auto;
	}
	
	.pnavi{
		margin: 40px auto;
		text-align: center;
	}

	.pnavi .page-numbers{
		display:inline-block;
		margin-right:10px;
		padding:	10px 15px;
		color:#333;
		border-radius:3px;
		box-shadow:0 3px 3px #ccc;
		background:#fff;
	}
	
	.pnavi .current{
	   padding:10px 15px;
	   background:#69a4db;
	   color:#fff;
	}

	.pnavi .prev,
	.pnavi .next{
	   background:transparent;
	   box-shadow:none;
	   color:#69a4db;
	}
	.pnavi .dots{
	   background:transparent;
	   box-shadow:none;
	}
	
	/*記事 スタイル*/
	.news_article h1{
		font-size: 2em;
		line-height: 1.75em;
	}
	.news_article h2{
		font-size: 1.8em;
		line-height: 1.75em;
	}
	.news_article h3{
		font-size: 1.6em;
		line-height: 1.75em;
	}
	.news_article h4{
		font-size: 1.4em;
		line-height: 1.75em;
	}
	.news_article h5{
		font-size: 1.2em;
		line-height: 1.75em;
	}
	.news_article {
		font-size: 1em;
		line-height: 1.75em;
	}
	
	.news_article figure img{
		width: inherit;
		max-width: 100%;
		margin: 10px 0;
	}


/***********
		privacy
		*********/
	
	.privacy_intro{
		padding: 120px 0 40px;
	}	
	
	.privacy_ttl{
		font-size: 2.4em;
		color: #181FC5;
		text-align: center;
		margin-bottom: 10px;
	}
	
	.privacy_top_txt{
		font-size: 1.1em;
		letter-spacing: 2px;
		text-align: center;
		color: #808080;
		
	}
	
	.privacy_sec{
		margin: 50px auto;
	}
	
	.privacy_sec h3{
		font-size: 1.4em;
		letter-spacing: 2px;
		margin-bottom: 30px;
	}
	
	.privacy_sec .privacy_lead{
		margin-bottom: 50px;
		line-height: 1.75;
	}
	
	.privacy_sec .privacy_btm{
		line-height: 1.75;
	}
	
	.privacy_sec .privacy_btm .privacy_content{
		text-indent: -2em;
		margin-left: 2em;
	}
		
	.privacy_sec .privacy_contact{
		text-align: right;
		margin-top: 60px;
	}
	
	.privacy_sec .privacy_contact span{
		display: inline-block;
		margin-right: 30px;
	}
	
}



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

	.pc_navArea{
		display: none;
	}
	
		/***********
		header
		*********/
	header{
		
	}
	
	.sp_navArea{
		display:block;
		background-color: #fff;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1000;
		width: 100%;
	}
	
	.sp_navArea .hd_top{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		height: 70px;
		position: relative;
		z-index: 1000;
	}
	
	
	
	/*メニュー開閉ボタン*/
.tglBtn{
		display: block;
		width: 15%;
		
	}
	
.tglBtn p{
	position: relative;
	width: 33px;
	height: 20px;
	margin: 0 auto;
	cursor: pointer;
	top: 0px;
}

.tglBtn span{
		display: block;
		height: 2px;
		background: #009FDF;
		position:absolute;
		width: 100%;
		right: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;	
	}
.tglBtn span:nth-child(1){
		top:0px;
	}
.tglBtn span:nth-child(2){
		top: 9px;
	}
	
.tglBtn span:nth-child(3){
		top: 18px;
}

.tglBtn .tgl_name{
	font-size: 0.75em;
	color: #009FDF;
	margin-top: 5px;
	height: auto;
}
	
/*開閉ボタンopen時*/
.open{
}

.open span{
}


.open span:nth-child(1) {
			top: 7px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
		}
.open span:nth-child(2){
	display: none;
}

.open span:nth-child(3) {
			top: 7px;
			width: 100%;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
}
	
	
	.sp_navArea .hd_logo{
		max-width: 55%;
		margin-left: 5%;
	}
	
	.sp_navArea .gNav{
		width: 100%;
		height: 100vh;
		background-color: #0097FF;
		color: #fff;
		display: none;
	}
	
	.sp_navArea .gNav ul{
		width: 90%;
		margin: 0 auto;
		padding: 100px 0;
		text-align: center;
	}
	
	.sp_navArea .gNav ul li{
		font-size: 5vw;
		margin-bottom: 30px;
		letter-spacing: 0.1em;
		
		
	}
	

	
	.back_fixed{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: -100;
	opacity: 0;
}

	.contents{
		position: relative;
		top: 70px;
	}
	
	
		/***********
		topArea
		*********/
	.topArea{
		position: relative;
		width: 100%;
		height: 500px;
	}
	
	.topArea .top_slide{
		
	}
	
	.topArea .top_slide .slider{
		width: 100%;
		height: 500px;
		position: relative;
	}
	
	.topArea .top_slide .slide1{
		width: 100%;
		height: 500px;
		background: url(../img/slide01.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.topArea .top_slide .slide2{
		width: 100%;
		height: 500px;
		background: url(../img/slide02.jpg) no-repeat right top;
		background-size: cover;
	}
	
	.topArea .top_slide .slide3{
		width: 100%;
		height: 500px;
		background: url(../img/slide03.jpg) no-repeat right top;
		background-size: cover;
	}
	
	.topArea .txt_slider{
		width: 35%;
		height: auto;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		right: 0;
		margin: auto;
	}
	
	.topArea .txt_slider  .top_copy .pc{
		display: none
	}
	
	.topArea .top_btm{
		width: 100%;
		position: absolute;
		bottom: -3px;
		left: 0;
	}
	
	
	
	.topnews{
		position: relative;
		width: 90%;
		box-sizing: border-box;
		padding: 70px 0 50px;
		margin: 0 auto;
		
	}
	
	.topnews .newsArea{
		background: #4D4D4D;
		color: #fff;
		border-radius: 15px;
		padding: 20px 0px;
		
		
	}
	
	.topnews .newsArea dt{
		padding: 15px 0;
		font-size: 1.5em;
		letter-spacing: 0.1em;
		text-align: center;
		border-bottom: solid 1px #fff;
		width: 90%;
		margin: 0 auto 10px;
	}
	
	.topnews .newsArea dd{
		font-size: 0.85em;
		text-align: center;
		padding: 10px 0 10px;
	}
	
	.topnews .newsArea dd span{
		display: inline-block;
		margin-right: 15px;
	}
	
	.topArea .topnews .newsArea dd a{
		text-decoration: underline;
	}
	
		
	
	.inner{
		width: 90%;
		margin: 0 auto;
	}
	
	/***********
		moreBtn
		*********/
	.moreBtn{
		max-width: 146px;
		margin-top: 20px;
	}
	
	.moreBtn a{
		display: block;
	}
	
	.moreBtn p{
		
		
	}
	
	
	
	
	
	/***********
		sec_ttl
		*********/
		
	.ttlArea{
		margin-bottom: 20px;
	}
	
	.ttlArea .sec_ttl {
    font-size: 8vw;
    font-weight: 900;
    color: #181FC5;
    margin-bottom: 10px;
    letter-spacing: 0.5px;
}
	
	.ttlArea span{
		font-size: 3.5vw;
		font-weight: bold;
		color: #181FC5;
		display: block;
		letter-spacing: 2px;
	}
	
	.ttlArea span::before{
		content: "";
		display: inline-block;
		width: 33px;
		height: 1px;
		margin-right: 10px;
		background-color: #181FC5;
		vertical-align: middle;
	}
	
	
	
	/***********
		about
		*********/
	.about_sec{
		padding: 50px 0;
		background: linear-gradient(to right, #ebf5ff 0%, #ebf5ff 75%, #ffffff 75%, #ffffff 100%);
		
	}
	
	.about_sec .inner{
		position: relative;
		display: flex;
	}
	
	.about_sec .aboutArea{
		width: 55%;
	}
	
	.about_sec .aboutArea h3{
		font-size: 1.2em;
		line-height: 1.75;
		margin-bottom: 15px;
		font-weight: bold;
		position: relative;
		z-index: 10;
	}
	
	.about_sec .aboutArea p{
		line-height: 1.75;
		font-size: 0.9em;
		margin-bottom: 25px;
		position: relative;
		z-index: 10;
	}
	
	
	.about_sec .imgArea{
		position: absolute;
		right: 0;
		width: 50%;
	}


	
	/***********
		service_sec
		*********/
	
	.service_sec{
		width: 100%;
		padding: 50px 0;
		background-color: #fff;
		position: relative;
	}
	
	.service_sec .imgArea{
		width: 80%;
		margin: 0 auto 20px;
		position: relative;
	}	
	

	
	.service_sec .service_list{
		position: relative;
	}
	
	.service_sec .service_list ul{
		
	}
	
	.service_sec .service_list ul li{
		width: 100%;
		margin: 20px auto;
		padding-bottom: 20px;
		border-bottom: solid 1px #181FC5;
	}
	
	.service_sec .service_list ul li:last-child{
		border-bottom: none;
	}
	
	.service_sec .service_list ul li h4{
		font-size: 4.5vw;
		font-weight: 700;
		margin-bottom: 15px;
		text-align: center;
		color: #181FC5;
		letter-spacing: 2px;
	}
	
	.service_sec .service_list ul li p{
		line-height: 1.75;
		font-size: 0.9em;
		max-width: 480px;
		width: 90%;
		margin: 0 auto;
	}	
	
	
	/***********
		recruit_sec
		*********/
	.recruit_sec{
		width: 100%;
		padding: 30px 0;
		background: url(../img/top_recruit_img_sp.png) no-repeat center top;
		background-size: cover;
		position: relative;
	}
	
	.recruit_sec .txt{
		line-height: 1.75;
	}

	
	/***********
		footer
		*********/
	
	footer{
		width: 100%;
		padding: 60px 0 10px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+1,84c3ff+100 */
background: #ffffff; /* Old browsers */
background: -moz-linear-gradient(top,  #ffffff 1%, #84c3ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #ffffff 1%,#84c3ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #ffffff 1%,#84c3ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#84c3ff',GradientType=0 ); /* IE6-9 */



	}
	
	footer .inner{
		display: block;
	}
	
	footer .ft_l{
		width: 90%;
		margin: 0 auto 20px;
	}
	
	footer .ft_l .logoArea{
		max-width: 350px;
		margin-bottom: 10px;
	}
	
	footer .ft_l .address{
		line-height: 1.5;
		font-size: 3vw;
	}
	
	footer .ft_c{
		display: none;
	}
	
	footer .ft_c ul{
		
	}
	
	footer .ft_c ul li{
		
	}
	
	footer .ft_r{
		width: 90%;
		margin: 15px auto;
	}
	
	footer .ft_r .ft_contact{
		display: flex;
		align-items: center;
		margin-bottom: 25px;
		
	}
	
	footer .ft_r .tel{
		width: 55%;
		margin-right: 5%;
		
	}
	
	footer .ft_r .ft_contact_nav{
		width: 35%;
	}
	
	footer .ft_r .privacy{
		text-align: center;
		margin-bottom: 20px;
	}
	
	footer .ft_r .privacy li{
		font-weight: 400;
		display: inline-block;
		font-size: 3vw;
	}
	
	footer .ft_r .copyright{
		font-size: 3vw;
		text-align: center;
		display: block;
	}
	
	footer .pageTop{
		position: fixed;
		max-width: 10px;
		right: 2%;
		bottom: 20px;
	}




	
	/***********
		下層ttl
		*********/
	
	.lower_top{
		padding: 50px 0 30px;
		border-bottom: solid 1px #dddddd;
	}
	
	.lower_top .lower_ttl{
		color: #1d67ab;
		font-size: 7vw;
		letter-spacing: 0.1em;
		margin-bottom: 15px;
	}
	
	.lower_top span{
		color: #1d67ab;
	}
	
	.lower_sec_ttl{
		font-size: 7vw;
		color: #1d67ab;
		font-weight: 600;
		margin-top: 15px;
		letter-spacing: 0.1em;
	}
	
		/***********
		下層ttl
		*********/
	
	.lower_top{
		position: relative;
	}
	
	.lower_top .lower_ttl{
		width: 50%;
		height: auto;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.lower_top span{
		color: #1d67ab;
	}
	
	.lower_sec_ttl{
		font-size: 2em;
		color: #1d67ab;
		font-weight: 600;
		margin-top: 15px;
		letter-spacing: 0.1em;
	}
	
	.page_nav{
		position: relative;
		z-index: 20;
		color: #333333;
		font-size: 3vw;
		font-weight: bold;
		padding: 40px 0 40px;
	}
	
	.page_nav ul{
		display: flex;
		justify-content: center;
	}
	
	.page_nav ul li{
		padding: 5px 10px;
		
		border-right: solid 1px #333;
	}
	
	.page_nav ul li:last-child{
		border-right: none;
	}
	
	.nav_fixed{
		position: fixed;
		top: 80px;
		z-index: 1000;
	}
	
	.lower_topArea{
		width: 100%;
		height: 500px;
		position: relative;
	}
	
	.lower_cnt .ttlArea{
		text-align: center;
		margin-bottom: 30px;
	}
	
	.lower_cnt .ttlArea span::before{
		display: none;
	}
	
	/***********
		company
		*********/
	
	
	.about_topArea{
		width: 100%;
		height: 500px;
		background: url(../img/company_mv.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.greetArea{
		margin-bottom: 50px;
	}
	
	
	
	.greetArea h3{
		font-size: 5vw;
    font-weight: bold;
    color: #181FC5;
    letter-spacing: 2px;
    line-height: 1.5;
    margin-bottom: 15px;
	}
	
	.greetArea .txtArea{
		width: 100%;
		margin-bottom: 30px;
	}
	
	.greetArea .txtArea p{
		line-height: 1.75;
		text-align: justify;
	}
	
	.greetArea .txtArea .name{
		font-weight: bold;
		text-align: right;
		margin-top: 30px;
		max-width: 180px;
		margin-right: 0;
		margin-left: auto;
	}
	
	.greetArea .txtArea .name span{
		display: inline-block;
		font-size: 0.9em;
		margin-right: 15px;
		vertical-align: middle;
	}
	
	.greetArea .txtArea .name p{
		display: inline-block;
		font-size: 1.3em;
		vertical-align: middle;
	}
	
	.greetArea .imgArea{
		width: 30%;
		min-width: 245px;
		margin: 0 auto;
		
	}
	
	.greet_btm{
		flex-direction: row-reverse;
	}
	
	.philo_sec{
		padding: 40px 0;
	}
	
	.philo_sec .txtArea{
		max-width: 550px;
		margin: 0 auto;
	}
	
	.philo_sec .philo_img{
		margin: 30px auto 30px;
		width: 90%;
	}
	
	.philo_sec .txtArea p{
		font-weight: bold;
		font-size: 3.2vw;
		line-height: 1.75;
		text-align: center;
	}
	
	
	.info_sec{
		padding: 50px 0;
	}
	
	.info_sec .company_infoArea{
		
	}
	
	
	.info_sec .company_infoArea .ttlArea{
		width: 100%;
		text-align: center;
	}
	
	
	.infobox{
		width: 100%;
	}
	
	.infobox dl{
		margin: 0px auto;
	}
	
	.infobox dl .row{
		border-bottom: solid 1px #333333;
		padding: 0px 0 15px;
		margin-bottom: 15px;
		display: flex;
		box-sizing: border-box;
		font-size: 3vw;
	}
	
	.infobox dl .row:last-child{
		border-bottom: none;
	}
	
	.infobox dl dt{
		padding-left: 15px;
		margin-right: 15px;
		font-weight: bold;
		line-height: 1.5em;
		width: 25%;
	}
	
	.infobox dl dd{
		line-height: 1.5em;
		width: 70%
	}
	
	.infobox dl dd ul{
		
	}
	
	.infobox dl dd ul li{
		display: flex;
		margin-bottom: 25px;
	}
	
	.infobox dl dd ul li .img{
		width: 140px;
		margin-right: 35px;
	}
	
	.infobox dl dd ul li .txt{
		
	}
	
	.access_cntArea{
		margin-bottom: 60px;
	}
	
	.access_box{
		width: 100%;
		margin-bottom: 50px;
	}
	
	.access_box .access_top{
		
	}
	
	.access_box .access_top h4{
		font-style: italic;
		font-weight: bold;
		margin-bottom: 10px;
	}
	
	.access_box .address{
		padding-left: 15px;
		padding: 5px 0;
		border-left: solid 1px #333333;
		margin-bottom: 10px;
	}
	
	.access_box .address p{
		font-size: 0.9em;
		margin-left: 10px;
		line-height: 1.75;
	}
	
	.access_box .address .num span{
		display: block;
	}

	
	/***********
		contact
		*********/
	
	
	
	.contact_topArea{
		width: 100%;
		height: 500px;
		background: url(../img/contact_mv.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.form_sec{
		padding-top: 40px;
		padding-bottom: 40px;
		
	}
	
	
	.form_sec .txtArea{
		font-size: 3.6vw;
		line-height: 1.6;
		padding-bottom: 30px;
		margin-bottom: 60px;
		border-bottom: solid 1px #181FC5;
	}
	
	.contact_form{
		width: 100%;
		margin: 0 auto;
		box-sizing: border-box;
	}
	
	.contact_form dl .row{
		padding: 30px 10px;
		
	}
	
	.contact_form dl .selectArea{
		padding-top: 20px;
	}
	
	.contact_form dl .selectArea ul{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	
	.contact_form dl .selectArea ul li{
		display: inline-block;
		margin-right: 10px;
		margin-bottom: 15px;
		font-size: 3vw;
	}
	
	.contact_form dl dt{
		width: 100%;
		text-align: center;
		font-size: 3.8vw;
		font-weight: bold;
		letter-spacing: 0.1em;
		display: flex;
		justify-content: center;
		align-items: baseline;
		margin-bottom: 20px;
	}
	
	.contact_form dl dt span{
		font-size: 3.5vw;
		color: #fff;
		background-color: #666666;
		border-radius: 10px;
		padding: 10px 10px;
		margin-left: 15px;
	}
	
	.contact_form dl dt .must{
		background-color: #181FC5;
	}
	
	.contact_form dl dd{
		width: 100%;
	}
	
	.contact_form dl dd .mwform-radio-field{
		display: block;
		margin-left: 0 !important;
		margin-bottom: 10px;
		line-height: 1.6;
		margin-bottom: 5px;
	}
	
	.contact_form .mw_wp_form_confirm dl dd{
		text-align: center;
		line-height: 1.5;
	}
	
	.contact_form .mw_wp_form_confirm .mfp_phase dd{
		text-align: left;
	}
	
	
	
	.formArea select{
	font-size: 100%;
	box-sizing: border-box;
    padding: 10px;
     width: 100%;
}

	
.formArea input[type="submit"] {
	appearance: none;
	-webkit-appearance: none;
	border-radius: 0;
}

.formArea input[type=date]{
	font-size: 100%;
	box-sizing: border-box;
    padding: 10px;
}

.formArea input[type=text], 
.formArea input[type=tel], 
.formArea input[type=email] {
	box-sizing: border-box;
    padding: 10px;
    font-size: 100%;
    width: 100%;
}

.formArea textarea {
   box-sizing: border-box;
    padding: 10px;
    font-size: 100%;
    width: 100%;
}
	
	
	.contact_form .mfp_buttons{
		border-top: solid 1px #181FC5;
	}
	
	.contact_form .mfp_buttons p {
    font-size: 1em;
    font-weight: bold;
    text-align: center;
    margin: 40px auto;
    letter-spacing: 0em;
}
	
	.contact_form .mfp_buttons a{
		text-decoration: underline;
	}
	
		.submitBtn{
		color: #fff;
		padding: 15px 40px;
		width: 210px;
		display: block;
		box-sizing: border-box;
		position: relative;
		background-color: #AA0036;
		margin: 30px auto;
		border: none;
		box-shadow: none;
		font-size: 1em;
		text-align: left;
		font-size: 1.2em;
		font-weight: bold;
		letter-spacing: 1.5em;
	}


	.submitBtn .arrow_r{
		display: block;
		width: 15px;
		position: absolute;
		right: 40px;
		top: 50%;
		transform: translateY(-50%);
	}

	.mfp_buttons button{
		position: relative;
	}
	
	.btnArea{
		width: 210px;
		margin: 30px auto;
		position: relative;
	}
	
	
	.btnArea::after{
		content: "";
		display: block;
			width: 15px;
			height: 25px;
			background: url(../img/arrow_wht.svg) no-repeat;
			background-size: 100%;
			position: absolute;
			right: 40px;
			top: 50%;
			transform: translateY(-50%);
	}
	
	.btn_back{
		color: #fff;
			padding: 15px 10px;
			width: 210px;
			display: block;
			box-sizing: border-box;
			position: relative;
			background-color: #555;
			border: none;
			box-shadow: none;
			font-size: 1em;
			text-align: right;
		
			font-size: 1.2em;
			font-weight: bold;
			letter-spacing: 1.5em;
			cursor: pointer;
			border-radius: 10px;
	}
	
	.back_btnArea{
		width: 210px;
		margin: 30px auto;
		position: relative;
	}
	
	
	.back_btnArea::before{
		content: "";
		display: block;
			width: 15px;
			height: 25px;
			background: url(../img/arrow_wht.svg) no-repeat;
			background-size: 100%;
			position: absolute;
			left: 40px;
			top: 50%;
			transform: translateY(-50%) rotate(180deg);
			z-index: 20;
	}
	
	.mfp_buttons button{
		position: relative;
	}
	
	.entry_box h3{
		text-align: center;
	    font-size: 1.3em;
	    font-weight: bold;
	    margin: 0 auto 50px;
	}
	
	.contact_form .end_txt{
		text-align: center;
		line-height: 2;
		font-size: 1.3em;
		margin: 100px auto;
	}

/***********
		recruit
		*********/
	
	
	
	.recruit_topArea{
		width: 100%;
		height: 500px;
		background: url(../img/recruit_mv.jpg) no-repeat left top;
		background-size: cover;
	}
	
	.charm_ttl{
		width: 90%;
		margin: 0 auto;
		line-height: 1.75;
		font-weight: bold;
		font-size: 4.6vw;
		color: #181FC5;
		letter-spacing: 0.1em;
		position: relative;
		top: -8vw;
	}
	
	.sec_charm{
		margin: 50px auto;
		padding: 0px 0 0px;
		background:#ebf5ff;
		/*background: linear-gradient(to right, #ebf5ff 0%, #ebf5ff calc(50% + 300px), #ffffff calc(50% + 300px), #ffffff 100%);*/
		margin-bottom: 120px;
	}
	
	.charm_top{
		
	}
	
	.charm_top .txtArea{
		width: 100%;
	}
	
	.charm_top .txtArea p{
		line-height: 1.75;
		font-size: 1em;
	}
	
	.charm_top .imgArea{
		width: 100%;
		position: relative;
		bottom: -60px;
	}
	
	.interview_sec{
		padding-bottom: 0px;
	}
	
	.interview_box {
		position: relative;
		margin-bottom: 60px;
		
	}
	
	.interview_box .interview_img{
		position: relative;
		left: 0;
		top: 0;
		width: 100%;
		
	}
	
	.interview_top .interview_img{
		width: 95%;
		height: 0;
		padding-bottom: 70%;
		background: url(../img/recruit_img02_sp.png) no-repeat center center;
		background-size: cover;
	}
	
	
	
	.interview_btm .interview_img{
		width: 95%;
		height: 0;
		padding-bottom: 70%;
		background: url(../img/recruit_img03_sp.png) no-repeat center center;
		background-size: cover;
		margin-right: 0;
		margin-left: auto;
	}
	
	
	.interview_box .inner{
		position: relative;
	}
	
	.interview_txt{
		width: 75%;
		background-color: #181FC5;
		color: #fff;
		box-sizing: border-box;
		padding: 30px;
		margin: 0 auto;
		position: relative;
		top: -40px;
	}
	
	.interview_txt .txt{
		
	}
	
	.interview_txt .txt .name{
		font-size: 4.3vw;
		font-weight: bold;
		margin-bottom: 10px;
	}
	
	.interview_txt .txt .remarks{
		display: block;
		font-size: 0.9em;
		margin-bottom: 20px;
	}
	
	.interview_txt .txt h3{
		font-weight: bold;
		line-height: 1.35;
		font-size: 4.3vw;
		letter-spacing: 2px;
		margin-bottom: 20px;
	}
	
	.interview_txt .txt p{
		line-height: 2;
		font-size: 0.8em;
		text-align: justify;
	}
	
	.interview_top .interview_txt{
		
	}
	
	.infobox .infobox_list{
		margin-bottom: 50px;
	}
	
	.infobox .infobox_list h4{
		font-weight: bold;
		margin-bottom: 15px;
		padding-bottom: 15px;
		padding-left: 15px;
		border-bottom: solid 1px #333;
		line-height: 1.4;
		display: flex;
	}
	
	.infobox .infobox_list h4 span:first-child{
		margin-right: 10px;
		display: inline-block;
	}
	
	.infobox .infobox_list dt{
		width: 65px;
		margin-right: 30px;
	}
	
	.infobox .infobox_list dd{
		width: calc(100% - 95px);
	}
	
	.infobox .infobox_list dd .notice{
		display: block;
		text-indent: -1em;
		margin-left: 1em;
	}
	
	.d_bl{
		background-color: #181FC5;
		color: #fff;
	}
	
	.d_bl .company_infoArea .ttlArea span{
		color: #fff;
	}
	
	.d_bl .company_infoArea .ttlArea span::before{
		background-color: #fff;
	}
	
	.d_bl .infobox dl .row{
		border-bottom: solid 1px #fff;
	}
	
	.entry_sec{
		margin: 40px auto 80px;
	}
	
	.entry_sec .entry_txt{
		font-weight: bold;
		font-size: 3.8vw;
		line-height: 1.75;
		text-align: center;
	}
	
	.entry_sec .entry_btn{
		max-width: 200px;
		margin: 30px auto;
	}
	
	/***********
		contact
		*********/
	
	
	
	.news_topArea{
		width: 100%;
		height: 500px;
		background: url(../img/news_mv.jpg) no-repeat center top;
		background-size: cover;
	}
	
	.news_intro{
		padding: 40px 0 40px;
		position: relative;
		z-index: 10;
		font-size: 3.6vw;
		line-height: 1.6;
		text-align: center;
	}
	
	.news_sec{
		
	}
	
	.news_sec .news_list{
		width: 100%;
	}
	
	.news_sec .news_list .li{
		padding: 70px 0;
	}
	
		.news_sec .news_list .li:nth-last-child(odd){
		background-color: rgba(50, 153, 255, 0.1);
	}
	
	.news_sec .news_list .li:nth-last-child(even){
		background-color: #fff;
	}
	
	
	.news_sec .news_list .date{
		color: #181FC5;
		font-size: 0.8em;
		display: block;
		margin-bottom: 30px;
		font-weight: bold;
	}
	
	.news_sec .news_list .news_ttl{
		font-size: 4.2vw;
		line-height: 1.5;
		font-weight: bold;
		margin-bottom: 30px;
	}
	
	.news_sec .news_list .news_article{
		margin-bottom: 30px;
	}
	
	.news_sec .news_list .news_article p{
		line-height: 1.75em;
	}
	
	
	.news_sec .news_list .moreBtn{
		margin-right: 0;
		margin-left: auto;
	}
	
	.pnavi{
		margin: 40px auto;
		text-align: center;
	}

	.pnavi .page-numbers{
		display:inline-block;
		margin-right:5px;
		padding:	7px 10px;
		color:#333;
		border-radius:3px;
		box-shadow:0 3px 3px #ccc;
		background:#fff;
	}
	
	.pnavi .current{
	   padding:7px 10px;
	   background:#69a4db;
	   color:#fff;
	}

	.pnavi .prev,
	.pnavi .next{
	   background:transparent;
	   box-shadow:none;
	   color:#69a4db;
	}
	.pnavi .dots{
	   background:transparent;
	   box-shadow:none;
	}
	
	/*記事 スタイル*/
	.news_article h1{
		font-size: 2em;
		line-height: 1.75em;
	}
	.news_article h2{
		font-size: 1.8em;
		line-height: 1.75em;
	}
	.news_article h3{
		font-size: 1.6em;
		line-height: 1.75em;
	}
	.news_article h4{
		font-size: 1.4em;
		line-height: 1.75em;
	}
	.news_article h5{
		font-size: 1.2em;
		line-height: 1.75em;
	}
	.news_article h6{
		font-size: 1em;
		line-height: 1.75em;
	}
	
	.news_article .wp-block-image:before,.news_article .wp-block-image:after{
		content:"";display:table;
	}
	.news_article .wp-block-image:after{clear:both;}
	.news_article .wp-block-image{zoom:1;}
	
	.news_article figure.alignleft{
		margin-left: 0 !important;
		margin-right:0 !important;
		width: 100%;
	}
	.news_article figure.alignright{
		margin-left: 0 !important;
		margin-right:0 !important;
		width: 100%;
	}
	.news_article figure img{
		width: 100%;
		max-width: 100%;
		
	}
	
	/***********
		privacy
		*********/
	
	.privacy_intro{
		padding: 30px 0 20px;
	}	
	
	.privacy_ttl{
		font-size: 6vw;
		color: #181FC5;
		text-align: center;
		margin-bottom: 10px;
	}
	
	.privacy_top_txt{
		font-size: 3.5vw;
		letter-spacing: 2px;
		text-align: center;
		color: #808080;
		
	}
	
	.privacy_sec{
		margin: 50px auto;
	}
	
	.privacy_sec h3{
		font-size: 4vw;
		letter-spacing: 2px;
		margin-bottom: 30px;
	}
	
	.privacy_sec .privacy_lead{
		margin-bottom: 30px;
		line-height: 1.75;
	}
	
	.privacy_sec .privacy_btm{
		line-height: 1.75;
	}
	
	.privacy_sec .privacy_btm .privacy_content{
		text-indent: -2em;
		margin-left: 2em;
	}
	
	.privacy_sec .privacy_contact{
		margin-top: 30px;
		text-align: right;
	}

	　
	
}


@media screen and (max-width: 600px) {
	
	.about_sec .inner{
		display: block;
	}
	
	.about_sec .aboutArea{
		width: 100%;
	}
	
	.about_sec .aboutArea h3{
		font-size: 3.5vw;
		line-height: 1.75;
		margin-bottom: 15px;
		font-weight: bold;
	}
	
	.about_sec .aboutArea p{
		line-height: 1.75;
		font-size: 3vw;
		margin-bottom: 15px;
	}
	
	
	.about_sec .imgArea{
		width: 100%;
		margin-bottom: 20px;
		position: relative;
	}
}