/*
Theme Name:EPIRUS
Theme URI:
Version:1.0.0
Description:EPIRUS
Author:ARCKLY
Author URI: http://arckly.com/
*/

@charset "UTF-8";
/* CSS Document */


/* Reset
------------------------------------------------------------*/
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;
	border:0;
	outline:0;
	vertical-align:baseline;
}
address,th {
font-style: normal;
font-weight:normal;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
th {
text-align: left;
}
hr,legend {
display: none;
}
h1,h2,h3,h4,h5,h6 {
font-size: 100%;
}
img,fieldset {
border: 0;
}
li {
list-style-type: none;
}
a:hover.link img{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	display: inline-block;
	transition:all 0.5s;
}

img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	vertical-align:middle;
	image-rendering: -webkit-optimize-contrast;
}



/* Fonts フロートなど共通CSS
------------------------------------------------------------*/
body{
	font-family: 'Noto Sans JP','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Osaka,'ＭＳ Ｐゴシック',sans-serif;
	color:#000;
	font-weight: 400;
	font-size: 16px;
	background-color:#fff;
}

body a{
	color:#000;
	text-decoration:none;
}

body a:hover{
	opacity: 0.7;
	text-decoration:none;
	transition:all 0.5s;
	color: #000;
}


.float_l{
	float:left;
}

.float_r{
	float:right;
}

.clear{
	clear:both;
}

.red{
	color:#F00;
}

.blue{
	color:#00F;
}

.bold{
	font-weight:bold;
}


.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap:10px;
}
.pagination span, .pagination a {
	display:block;
	background-color: #DDDDDD;
	color: #FFF;
	font-size: 18px;
	font-weight: bold;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	text-align: center;
	line-height: 40px;
}
 
.pagination a:hover{
color:#fff;
	background-color: #183974;
	opacity: 1;
}
 
.pagination .current{
	background-color:#183974;
	color:#FFF;
}
.pagination span.pagination_pages{
	display: none;
}

/*===============================================
●iOS submitリセット
===============================================*/

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


/*フォーム系*/
.contact_btn{
	text-align:center;
}

.contact_btn input{
	background-color:#193974;
	border:none;
	color:#FFF;
	text-align:center;
	box-sizing: border-box;
	height: 68px;
	width: 260px;
	line-height: 68px;
	font-size: 22px;
	border-radius: 34px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.contact_btn input:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
	.contact_d2 input{
		border: none;
		font-size: 18px;
		border-radius: 10px;
		width: 100%;
		box-shadow: 2px 2px 4px #ccc;
		box-sizing: border-box;
		padding: 20px;
	}
	.contact_d3 span.wpcf7-list-item{
		display: block;
		margin-left: -0.2em;
	}
	.contact_dl textarea{
		border: none;
		font-size: 18px;
		border-radius: 10px;
		width: 100%;
		box-shadow: 2px 2px 4px #ccc;
		box-sizing: border-box;
		padding: 20px;
		min-height: 130px;
	}
	::placeholder{
		color: #9A9A9A;
	}

/*===============================================
●マージンボトム設定
===============================================*/

.mb0{
	margin-bottom:0px!important;
}
.mb5{
	margin-bottom:5px!important;
}
.mb10{
	margin-bottom:10px!important;
}
.mb15{
	margin-bottom:15px!important;
}
.mb20{
	margin-bottom:20px!important;
}
.mb25{
	margin-bottom:25px!important;
}
.mb30{
	margin-bottom:30px!important;
}
.mb35{
	margin-bottom:35px!important;
}
.mb40{
	margin-bottom:40px!important;
}
.mb45{
	margin-bottom:45px!important;
}
.mb50{
	margin-bottom:50px!important;
}
.mb55{
	margin-bottom:55px!important;
}
.mb60{
	margin-bottom:60px!important;
}
.mb65{
	margin-bottom:65px!important;
}
.mb70{
	margin-bottom:70px!important;
}
.mb75{
	margin-bottom:75px!important;
}
.mb80{
	margin-bottom:80px!important;
}
.mb85{
	margin-bottom:85px!important;
}
.mb90{
	margin-bottom:90px!important;
}
.mb95{
	margin-bottom:95px!important;
}
.mb100{
	margin-bottom:100px!important;
}
.mb200{
	margin-bottom:200px!important;
}


/*===============================================
●フォントサイズ・カラー設定
===============================================*/
.font_sp{
	font-family: 'Sulphur Point', sans-serif;
}
.font_sg{
	font-family: 'Sawarabi Gothic', sans-serif;
}
.font_lato{
	font-family: 'Lato', sans-serif;
}

.font_13px{
	font-size: 13px;
	line-height: 1.4em;
}
.font_14px{
	font-size: 14px;
	line-height: 1.4em;
}
.font_15px{
	font-size: 15px;
	line-height: 1.4em;
}
.font_17px{
	font-size: 17px;
	line-height: 1.4em;
}
.font_18px{
	font-size: 18px;
	line-height: 1.4em;
}
.font_20px{
	font-size: 20px;
	line-height: 1.4em;
}
.font_22px{
	font-size: 22px;
	line-height: 1.4em;
}
.font_24px{
	font-size: 24px;
	line-height: 1.4em;
}
.font_26px{
	font-size: 26px;
	line-height: 1.4em;
}
.font_27px{
	font-size: 27px;
	line-height: 1.4em;
}
.font_34px{
	font-size: 34px;
	line-height: 1.4em;
}
.font_30px{
	font-size: 30px;
	line-height: 1.4em;
}
.font_36px{
	font-size: 36px;
	line-height: 1.4em;
}
.font_38px{
	font-size: 38px;
	line-height: 1.4em;
}
.font_40px{
	font-size: 40px;
	line-height: 1.4em;
}
.font_42px{
	font-size: 42px;
	line-height: 1.4em;
}
.font_50px{
	font-size: 50px;
	line-height: 1.4em;
}
.color_white{
	color: #fff;
}
.color_black{
	color: #000;
}
.color_orange{
	color: #FFB200;
}
.color_red{
	color: #F8121A;
}
.color_orange2{
	color: #D59F0C;
}
.color_blue{
	color: #6B80A5;
}
.color_orange3{
	color: #F2B40B;
}

/*===============================================
●Googleマップ
===============================================*/

.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*===============================================
●画面の横幅が768px以上
===============================================*/
@media screen and (min-width: 768px){

body{
	line-height:1.7em;
}
.body_fixed{
  position: fixed;
  width:100%;
}

.pc_none{
	display:none;
}

.pc_float_l{
	float:left;
}

.pc_float_r{
	float:right;
}

.pc_center{
	text-align:center;
}

.pc_right{
	text-align:right;
}

	.d_flex_pc{
		display: flex;
	}
	.flex_wrap_pc{
		flex-wrap: wrap;
	}
	.j_content_c_pc{
		justify-content: center;
	}
	.j_content_en_pc{
		justify-content: flex-end;
	}
	.j_content_sb_pc{
		justify-content: space-between;
	}
	.a_items_c_pc{
		align-items: center;
	}
	.a_items_en_pc{
		align-items: flex-end;
	}
	.f-direction_re_pc{
		flex-direction: row-reverse;
	}

a.link_disabled_pc{
	pointer-events: none;
}



/*ヘッダー設定
------------------------------------------------------------*/
	
/*wrap設定
------------------------------------------------------------*/

.wrap{
	max-width:1020px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 3%;
	padding-right: 3%;
}
	.next_mv{
		width: auto;
		height:78px;
		position: absolute;
		top:35%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.path{
		text-align:right;
		margin-top:-50px;
		z-index:5;
		position:relative;
	}
	.next_h1{
		background-image: url("images/title_bg2.png");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
		font-weight: bold;
	}
	.next_main{
		background-image: url("images/top/top_img1.png");
		background-repeat: no-repeat;
		background-size: 1120px auto;
		background-position: center top 130px;
	}


	/*フッター設定
------------------------------------------------------------*/
	.footer_top{
		background-image: url("images/footer_bg.jpg");
		background-size: cover;
		background-position: center center;
		padding: 80px 0;
	}
	.footer_h2{
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.footer_top_contact{
		gap:0 40px;
	}
	.footer_top_contact_tel{
		font-size: 48px;
		font-weight: bold;
	}
	.footer_top_contact_tel img{
		width: 40px;
	}
	a.footer_top_contact_mail{
		font-size: 18px;
		font-weight: bold;
		display: block;
		background-color: #183974;
		text-align: center;
		width: 300px;
		box-sizing: border-box;
		height: 60px;
		line-height: 60px;
		border-radius: 10px;
		position: relative;
	}
	a:hover.footer_top_contact_mail{
		background-color: #183974;
		color: #FFF;
	}
	a.footer_top_contact_mail::after{
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 10px;
		height: 10px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.main_footer{
		background-image: url("images/footer_bg2.svg");
		background-repeat: repeat-x;
		background-position: center bottom -150px;
		padding: 80px ;
	}
	.footer_logo{
		width: 190px;
		margin-left: auto;
		margin-right: auto;
	}
	.main_footer nav a:hover{
		text-decoration: underline;
	}
	.copyright{
		background-color: #183974;
		padding: 5px 0;
		color: #fff;
	}
	.footer_link ul li{
		margin: 0 1%;
		font-size: 14px;
		line-height: 1em;
	}
	#PageTopBtn{
		position: fixed;
		bottom: 40px;
		z-index: 10;
		width: 60px;
	}
	.fixed_bt1{
		position: fixed;
		bottom: 120px;
		right: 0;
		width: 60px;
	}
	
	/* ホーム設定
------------------------------------------------------------*/
	.top_mv{
		position: relative;
	}
	.top_mv_img img{
		width: 100%;
		height: auto;
	}
	.top_mv_logo{
		width: 380px;
		position: absolute;
		top:50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.top_area1{
		background-image: url("images/top/top_img1.png");
		background-repeat: no-repeat;
		background-size: 1120px auto;
		background-position: center bottom;
		padding-bottom: 80px;
	}
	.top_h2_1{
		position: relative;
		padding: 20px 0 60px;
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
	}
	.top_h2_1::after{
		content: "Concept";
		color: #5DCBE6;
		font-size: 143px;
		font-family: 'Lato', sans-serif;
		font-style: italic;
		opacity: 0.3;
		letter-spacing: -0.05em;
		position: absolute;
		top:0;
		left: 50%;
		transform: translate(-50%, 0);
		z-index: -1;
	}
	.top_area2_over{
		margin: 0 3%;
	}
	.top_area2{
		max-width: 1120px;
		margin: 0 auto 100px;
		box-sizing: border-box;
		padding: 40px 0;
		box-shadow: 2px 2px 4px #ccc;
		border-radius: 20px;
		background-color:#fff;
	}
	.top_title_area1{
		background-image: url("images/top/top_img2.png");
		background-size: 648px auto;
		background-repeat: no-repeat;
		background-position: center top;
		min-height: 180px;
		box-sizing: border-box;
		padding-top: 60px;
	}
	.top_h2_2{
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
	}
	.top_area2_box1{
		gap:10px;
	}
	.top_area2_box1 li{
		width: 190px;
		height: 190px;
		background-color: #F2B40B;
		border-radius: 50%;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
		background-image: url("images/top/top_01.svg");
		background-repeat: no-repeat;
		background-position: center center;
	}
	.top_area2_box1 li:nth-child(2){
		background-image: url("images/top/top_02.svg");
	}
	.top_area2_box1 li:nth-child(3){
		background-image: url("images/top/top_03.svg");
	}
	.top_area2_box1 li:nth-child(4){
		background-image: url("images/top/top_04.svg");
	}
	.top_area2_box1 li:nth-child(5){
		background-image: url("images/top/top_05.svg");
	}
	a.bt1{
		font-size: 18px;
		font-weight: bold;
		display: block;
		background-color: #183974;
		text-align: center;
		width: 300px;
		box-sizing: border-box;
		height: 60px;
		line-height: 60px;
		border-radius: 10px;
		position: relative;
	}
	a:hover.bt1{
		background-color: #183974;
		color: #FFF;
	}
	a.bt1::after{
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 10px;
		height: 10px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	a.bt_center{
		margin-left: auto;
		margin-right: auto;
	}
	a.bt_right{
		margin-left: auto;
	}
	.top_area3{
		background-image: url("images/top/top_img4.jpg");
		background-size: cover;
		background-position: center bottom;
		padding: 80px 0;
	}
	.top_area3_innner{
		background-image: url("images/top/top_img3.png");
		background-repeat: no-repeat;
		background-position: left 300px center;
		background-size: auto 534px;
		min-height: 534px;
		padding: 40px 0;
		box-sizing: border-box;
	}
	.top_area3_box1{
		background-color: rgba(255,253,253,0.84);
		padding: 70px 50px;
		width: 70%;
		box-sizing: border-box;
		border-radius: 20px;
	}
	.top_h3_1{
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: left bottom;
		padding-bottom: 10px;
	}
	.top_area4{
		padding: 100px 0 200px;
		background-image: url("images/top/top_img7.svg");
		background-size: 85% auto;
		background-position: left bottom;
		background-repeat: no-repeat;
	}
	.top_area4_box1{
		padding: 0 1%;
	}
	.top_area4_box1_list{
		gap:0 1%;
	}
	.top_area4_box1_list li{
		display: block;
		width: 24%;
	}
	.top_area4_box1_list li a{
		display: block;
	}
	.top_area4_box1_list li a span{
		display: block;
	}
	.top_area4_box1_list_img img{
		width: 100%;
		height: 15vw;
		object-fit: cover;
		border-radius: 10px;
	}
	.top_area4_box1_list_img{
		margin-bottom: 10px;
	}
	.top_area4_box1_list li a span.top_area4_box1_list_title{
		display: flex;
		align-items: center;
		gap:0 10px;
		font-size: 1.5vw;
		line-height: 1em;
	}
	.top_area4_box1_list li a span.top_area4_box1_list_title span:nth-child(1){
		max-width: calc(100% - 72px)
	}
	.top_area4_box1_list li a span.top_area4_box1_list_title span:nth-child(2){
		width: 72px;
	}
	.top_faq_list{
		margin-bottom: 40px;
	}
	.top_faq_list dt{
		color: #FFF;
		background-color: #183974;
		padding: 15px 10px 15px 70px;
		position: relative;
		font-size: 24px;
	}
	.top_faq_list dt::before{
		display: block;
		content: "Q .";
		color: #FFF;
		font-size: 24px;
		font-weight: bold;
		position: absolute;
		top:13px;
		left: 20px;
	}
	.top_faq_list dd{
		background-color: #E0F5FA;
		padding: 15px 10px 15px 70px;
		position: relative;
		min-height: 30px;
	}
	.top_faq_list dd::before{
		display: block;
		content: "A .";
		font-size: 24px;
		position: absolute;
		top:18px;
		left: 20px;
		color: #183974;
	}
	
	/* 選ばれる理由 設定
------------------------------------------------------------*/
	.reason_over{
		margin: 0 3%;
	}
	.reason_area1{
		max-width: 1020px;
		margin: 0 auto 80px;
		box-sizing: border-box;
		padding: 40px 0;
		box-shadow: 2px 2px 4px #ccc;
		border-radius: 20px;
		background-color:#fff;
	}
	.reason_area1_l{
		width:61.4%;
	}
	.reason_area1_r{
		width:34%;
	}
	.reason_h2_1{
		background-image:url(images/title_bg3.png);
		background-repeat:repeat-x;
		background-position:left bottom;
		padding-bottom:20px;
	}
	
	.reason_area2 .reason_over:nth-child(2n) .reason_area1 .wrap{
		flex-direction: row-reverse;
	}
	
	/* 対応業務 設定
------------------------------------------------------------*/
.service_h2_1{
	background-image:url(images/title_bg3.png);
	background-repeat:no-repeat;
	background-position:center bottom;
	padding-bottom:20px;
}
.service_box1{
	width:23.5%;
}
.service_box1_img img{
	width:100%;
}
.service_box1_h3{
	text-align:center;
	background-color:#193974;
	padding:5px 0;
	color:#fff;
	margin-bottom:10px;
}
.service_box1_list li{
	background-image:url(images/ico_circle_b.png);
	background-repeat:no-repeat;
	background-position:left top 10px;
	padding-left:1em;
}
.service_box2{
	background-color:#F9F8F0;
	padding:40px;
}
.service_box2_h3{
	background-image:url(images/title_bg4.png);
	background-repeat:repeat-x;
	background-position:left bottom;
	padding-bottom:20px;
}
	
	/* よくある質問 設定
------------------------------------------------------------*/
.faq_dl{
	border:10px solid #CDF6FF;
	margin-bottom:50px;
}
.faq_dl dt{
	position:relative;
	background-color:#193974;
	color:#fff;
	font-size:22px;
	font-weight:bold;
	padding:15px 15px 15px 50px;
	cursor:pointer;
}
.faq_dl dt::before{
	content:"Q.";
	display:block;
	position:absolute;
	top:12px;
	left:15px;
}
.faq_dl dd{
	position:relative;
	background-color:#fff;
	padding:15px 50px;
	display:none;
	cursor:pointer;
}
.faq_dl dd::before{
	content:"A.";
	display:block;
	position:absolute;
	top:12px;
	left:15px;
	font-size:22px;
	font-weight:bold;
	color:#193974;
}
.humberger2{
	width:20px;
	position:absolute;
	right:15px;
	top:18px;
	z-index:1000;
}
.iconBar2{
	height: 3px;
	background: #FFF;
	display: block;
	margin-bottom: 6px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
}
.iconBar2:nth-child(1){
	transform:translate(0,8px) rotate(90deg);
	-webkit-transform:translate(0,8px) rotate(90deg);
}
.faq_dl dt.open5 span.iconBar2:nth-child(1){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}
	
	/* 会社概要 設定
------------------------------------------------------------*/

.company_list li{
	display:flex;
	justify-content: space-between;
}
.company_list_l{
	width:29%;
	color:#193974;
	border-bottom:4px solid #193974;
	font-weight:bold;
	padding:10px 15px;
	box-sizing:border-box;
}
.company_list_r{
	width:70%;
	border-bottom:4px solid #EEEEEE;
	padding:10px 15px;
	box-sizing:border-box;
}
	/* お問い合わせ 設定
------------------------------------------------------------*/
.contact_dl{
	border:10px solid #CDF6FF;
	margin-bottom:50px;
}
.contact_dl dt{
	background-color:#193974;
	color:#fff;
	font-size:22px;
	font-weight:bold;
	padding:15px 15px;
}
.contact_dl dd{
	background-color:#fff;
	padding:15px;
}
.hissu{
	background-color:#FF0000;
	color:#fff;
	font-size:16px;
	font-weight:normal;
	display:inline-block;
	margin-left:20px;
	padding:10px 20px;
	line-height:1em;
}
	/* 個人情報について 設定
------------------------------------------------------------*/
.poricy_box{
	letter-spacing:-0.05em;
}


}

/*===============================================
●画面の横幅が1001px以上
===============================================*/
@media screen and (min-width:1001px){

	.pc_none2{
		display: none;
	}
	
	.main_header{
		height: 80px;
	}
	.logo_main{
		max-width: 450px;
		width: 18%;
	}
	a.header_contact{
		max-width: 450px;
		width: 20%;
		background-color: #183974;
		color: #FFF;
		text-align: center;
		height: 80px;
		font-size: 0.8vw;
		font-weight: bold;
		line-height: 1.8em;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-left: 2%;
	}
	a:hover.header_contact{
		color: #FFF;
	}
	a.header_contact span{
		display: block;
	}
	a.header_contact span.header_contact_bottom{
		display: flex;
		justify-content: center;
		align-content: center;
		font-size: 1.8vw;
	}
	a.header_contact span.header_contact_bottom span:nth-child(1) img{
		width: 1.5vw;
	}
	.main_header_r{
		width: 76%;
	}
	.main_nav{
		width:69%;
	}
	.main_nav ul{
		width:100%;
	}
	.main_nav ul li{
		margin: 0 1%;
		position: relative;
	}
	.main_nav ul li a{
		display: block;
		font-size: 14px;
		text-align: center;
		line-height: 1.4em;
		min-width: 100px;
	}
	.main_nav ul li a span{
		display: block;
		font-size: 12px;
		font-family: 'Lato', sans-serif;
		color: #5DCBE6;
	}
	.main_nav ul li a:after{
		 position: absolute;
		 bottom: -2px;
		 left: 0;
		 content: '';
		 width: 100%;
		 height: 2px;
		 background: #5DCBE6;
		 transform: scale(0, 1);
		 transform-origin: center top;
		 transition: transform .3s;
	}

	.main_nav ul li a:hover::after
	{
	 transform: scale(1, 1);
	}
	
	.top_area3_innner{
		background-image: url("images/top/top_img3.png");
		background-repeat: no-repeat;
		background-position: left 100% center;
		background-size: auto 634px;
		min-height: 534px;
		padding: 40px 0;
		box-sizing: border-box;
	}
	
}

/*===============================================
●画面の横幅が1920px以上
===============================================*/
@media screen and (min-width:1920px){
	.main_header{
		height: 130px;
	}
	 a.header_contact{
		width: 450px;
		height: 130px;
		font-size: 24px;
		line-height: 1.8em;
	}
	a.header_contact span.header_contact_bottom{
		font-size: 48px;
	}
	a.header_contact span.header_contact_bottom span:nth-child(1) img{
		width: 35px;
	}
}

/*===============================================
●画面の横幅が1000pxまで
===============================================*/
@media screen and (max-width:1000px){

	.tab_none{
		display: none;
	}
	
	.main_header{
		padding: 20px 3%;
	}
	.logo_main{
		width: 180px;
	}

#humberger{
	position: fixed;
	top:12px;
	right:3%;
	z-index: 1000;
	width:50px;
	height:50px;
	box-sizing:border-box;
	padding:17px 15px 0px;
	cursor:pointer;
	background-color:#5DCBE6;
	border-radius: 50%;
}
.iconBar{
	height: 2px;
	background: #fff;
	display: block;
	margin-bottom: 5px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
	z-index:1000;
}
	dl.accordion_spnav dt.open3 #humberger{
		background-color: #5DCBE6;
	}
dl.accordion_spnav dt.open3 #humberger .iconBar{
	background: #FFF;
	box-shadow:none;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(1){
	transform:translate(0,8px) rotate(45deg);
	-webkit-transform:translate(0,8px) rotate(45deg);
	margin-bottom:8px;
	margin-top:-2px;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(2){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(3){
	transform:translate(0,-8px) rotate(-45deg);
	-webkit-transform:translate(0,-8px) rotate(-45deg);
}

.accordion_spnav dd{
	display:none;
	color:#FFF;
	position:fixed;
	top:0px;
	right:0;
	background-color:#183974;
	width:100%;
	opacity:1;
	z-index:999;
	padding-top:70px;
	height:100%;
	-webkit-overflow-scrolling: touch;
	overflow-y: auto;
	box-sizing:border-box;
	padding-bottom: 30px;
}
	.sp_nav_list{
		padding: 40px 3% 40px;
	}
	.sp_nav_list li{
		display: block;
		border-bottom: 1px solid #fff;
		text-align: center;
	}
	.sp_nav_list li:first-child{
		border-top: 1px solid #fff;
	}
	.sp_nav_list li a{
		display: block;
		color: #fff;
		font-weight: bold;
		padding: 15px 0;
	}
	.sp_nav_list li a span{
		display: block;
		font-size: 12px;
		font-family: 'Lato', sans-serif;
		color: #5DCBE6;
	}
	a.header_contact_sp{
		font-size: 16px;
		text-align: center;
		font-weight: bold;
		line-height: 1.4em;
		display: block;
		color: #fff;
	}
	a:hover.header_contact_sp{
		color: #fff;
	}
	a.header_contact_sp span{
		display: block;
	}
	a span.header_contact_bottom{
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 35px;
	}
	.header_tel_sp{
		display: flex;
		justify-content: center;
		align-content: center;
		background-color: #183974;
		position: fixed;
		top:12px;
		right:calc(60px + 3%);
		z-index: 900;
		width:50px;
		height:50px;
		box-sizing:border-box;
		padding:0px 0px;
		cursor:pointer;
		border-radius: 50%;
	}
	.header_tel_sp img{
		width: 25px;
	}
	.header_tel_sp2{
		display: flex;
		justify-content: center;
		align-content: center;
		background-color: #183974;
		position: fixed;
		top:12px;
		right:calc(120px + 3%);
		z-index: 900;
		width:50px;
		height:50px;
		box-sizing:border-box;
		padding:0px 0px;
		cursor:pointer;
		border-radius: 50%;
	}
	.header_tel_sp2 img{
		width: 25px;
	}
	a.sp_nav_mail{
		display: flex;
		justify-content: center;
		align-items: center;
		color: #FFF;
		font-weight: bold;
		gap:0 10px;
		font-size: 20px;
		border: 1px solid #FFF;
		padding: 20px;
		width: 300px;
		margin: 0 auto;
		box-sizing: border-box;
	}
	a:hover.sp_nav_mail{
		color: #FFF;
	}
	a.sp_nav_mail img{
		width: 40px;
	}

}
/*===============================================
●画面の横幅が767pxまで
===============================================*/
@media screen and (max-width:767px){

body{
	font-size:16px;
}
.body_fixed{
	position: fixed;
	width:100%;
}

.sp_none{
	display:none;
}

.sp_center{
	text-align:center;
}

.sp_left{
	text-align:left;
}

.sp_right{
	text-align:right;
}

.sp_float_l{
	float:left;
}

.sp_float_r{
	float:right;
}


	.d_flex_sp{
		display: flex;
	}
	.flex_wrap_sp{
		flex-wrap: wrap;
	}
	.j_content_c_sp{
		justify-content: center;
	}
	.j_content_en_sp{
		justify-content: flex-end;
	}
	.j_content_sb_sp{
		justify-content: space-between;
	}
	.a_items_c_sp{
		align-items: center;
	}
	.a_items_en_sp{
		align-items: flex-end;
	}
	.f-direction_re_sp{
		flex-direction: row-reverse;
	}

a.link_disabled_sp{
	pointer-events: none;
}


/*===============================================
●マージンボトム設定
===============================================*/

.mb0_sp{
	margin-bottom:0px!important;
}
.mb5_sp{
	margin-bottom:5px!important;
}
.mb10_sp{
	margin-bottom:10px!important;
}
.mb15_sp{
	margin-bottom:15px!important;
}
.mb20_sp{
	margin-bottom:20px!important;
}
.mb25_sp{
	margin-bottom:25px!important;
}
.mb30_sp{
	margin-bottom:30px!important;
}
.mb35_sp{
	margin-bottom:35px!important;
}
.mb40_sp{
	margin-bottom:40px!important;
}
.mb45_sp{
	margin-bottom:45px!important;
}
.mb50_sp{
	margin-bottom:50px!important;
}
.mb55_sp{
	margin-bottom:55px!important;
}
.mb60_sp{
	margin-bottom:60px!important;
}
.mb65_sp{
	margin-bottom:65px!important;
}
.mb70_sp{
	margin-bottom:70px!important;
}
.mb75_sp{
	margin-bottom:75px!important;
}
.mb80_sp{
	margin-bottom:80px!important;
}
.mb85_sp{
	margin-bottom:85px!important;
}
.mb90_sp{
	margin-bottom:90px!important;
}
.mb95_sp{
	margin-bottom:95px!important;
}
.mb100_sp{
	margin-bottom:100px!important;
}
	
	

/*===============================================
●フォントサイズ・カラー設定
===============================================*/


	
/*ヘッダー設定
------------------------------------------------------------*/

/*wrap設定
------------------------------------------------------------*/

.wrap{
	margin-left: auto;
	margin-right: auto;
	padding-left: 3%;
	padding-right: 3%;
	box-sizing:border-box;
}
	.next_mv{
		width: auto;
		height:10vw;
		position: absolute;
		top:32%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.path{
		text-align:right;
		margin-top:-10px;
		z-index:5;
		position:relative;
	}
	.next_h1{
		background-image: url("images/title_bg2.png");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
		font-weight: bold;
	}
	.next_main .top_title_area1{
		min-height: 30vw;
	}


/*フッター設定
------------------------------------------------------------*/
	.footer_top{
		background-image: url("images/footer_bg.jpg");
		background-size: cover;
		background-position: center center;
		padding: 80px 0;
	}
	.footer_h2{
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.footer_top_contact_tel{
		font-size: 40px;
		font-weight: bold;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 20px;
	}
	.footer_top_contact_tel img{
		width: 35px;
	}
	a.footer_top_contact_mail{
		font-size: 18px;
		font-weight: bold;
		display: block;
		background-color: #183974;
		text-align: center;
		width: 300px;
		box-sizing: border-box;
		height: 60px;
		line-height: 60px;
		border-radius: 10px;
		position: relative;
		margin-left: auto;
		margin-right: auto;
	}
	a:hover.footer_top_contact_mail{
		background-color: #183974;
		color: #FFF;
	}
	a.footer_top_contact_mail::after{
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 10px;
		height: 10px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.main_footer{
		background-image: url("images/footer_bg2.svg");
		background-repeat: repeat-x;
		background-position: center bottom -150px;
		padding: 80px ;
	}
	.footer_logo{
		width: 190px;
		margin-left: auto;
		margin-right: auto;
	}
	.main_footer nav a:hover{
		text-decoration: underline;
	}
	.copyright{
		background-color: #183974;
		padding: 5px 0;
		color: #fff;
	}
	.footer_link ul li{
		margin: 0 1%;
		font-size: 14px;
		line-height: 1em;
	}	#PageTopBtn{
		position: fixed;
		bottom: 20px;
		width: 60px;
	}

/* ホーム設定
------------------------------------------------------------*/
	.top_mv{
		position: relative;
	}
	.top_mv_img img{
		width: 100%;
		height: auto;
	}
	.top_mv_img2 img{
		width: 100%;
		height: 100vw;
		object-fit: cover;
	}
	.top_mv_logo{
		width: 50%;
		position: absolute;
		top:50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.top_area1{
		background-image: url("images/top/top_img1.png");
		background-repeat: no-repeat;
		background-size: 110% auto;
		background-position: center bottom 80px;
		padding-bottom: 40px;
		width: 100%;
		overflow: hidden;
	}
	.top_h2_1{
		position: relative;
		padding: 20px 0 30px;
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
		font-size: 30px;
	}
	.top_h2_1::after{
		content: "Concept";
		color: #5DCBE6;
		font-size: 143px;
		font-family: 'Lato', sans-serif;
		font-style: italic;
		opacity: 0.3;
		letter-spacing: -0.05em;
		position: absolute;
		top:30px;
		left: 50%;
		transform: translate(-50%, 0);
		z-index: -1;
	}
	.top_area2_over{
		margin: 0 3%;
	}
	.top_area2{
		max-width: 1120px;
		margin: 0 auto 100px;
		box-sizing: border-box;
		padding: 40px 0;
		box-shadow: 2px 2px 4px #ccc;
		border-radius: 20px;
		background-color:#fff;
	}
	.top_title_area1{
		background-image: url("images/top/top_img2.png");
		background-size: 110% auto;
		background-repeat: no-repeat;
		background-position: center top;
		min-height: 180px;
		box-sizing: border-box;
		padding: 5vw 25% 0;
	}
	.top_h2_2{
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 20px;
	}
	.top_area2_box1{
		gap:10px;
	}
	.top_area2_box1 li{
		width: 150px;
		height: 150px;
		background-color: #F2B40B;
		border-radius: 50%;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
		background-image: url("images/top/top_01.svg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100px auto;
		font-size: 14px;
		line-height: 1.4em;
	}
	.top_area2_box1 li:nth-child(2){
		background-image: url("images/top/top_02.svg");
	}
	.top_area2_box1 li:nth-child(3){
		background-image: url("images/top/top_03.svg");
	}
	.top_area2_box1 li:nth-child(4){
		background-image: url("images/top/top_04.svg");
	}
	.top_area2_box1 li:nth-child(5){
		background-image: url("images/top/top_05.svg");
	}
	a.bt1{
		font-size: 18px;
		font-weight: bold;
		display: block;
		background-color: #183974;
		text-align: center;
		max-width: 300px;
		min-width: 250px;
		box-sizing: border-box;
		height: 60px;
		line-height: 60px;
		border-radius: 10px;
		position: relative;
	}
	a:hover.bt1{
		background-color: #183974;
		color: #FFF;
	}
	a.bt1::after{
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 10px;
		height: 10px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	a.bt_center{
		margin-left: auto;
		margin-right: auto;
	}
	a.bt_right{
		margin-left: auto;
	}
	.top_area3{
		background-image: url("images/top/top_img4.jpg");
		background-size: cover;
		background-position: center bottom;
		padding: 80px 0;
	}
	.top_area3_box1{
		background-color: rgba(255,253,253,0.84);
		padding: 50px 50px;
		width: 100%;
		box-sizing: border-box;
		border-radius: 20px;
	}
	.top_h3_1{
		background-image: url("images/title_bg.svg");
		background-repeat: no-repeat;
		background-position: center bottom;
		padding-bottom: 10px;
		text-align: center;
	}
	.top_area4{
		padding: 100px 0 100px;
		background-image: url("images/top/top_img7.svg");
		background-size: cover;
		background-position: left bottom;
		background-repeat: no-repeat;
	}
	.top_area4_box1{
		padding: 0 3%;
	}
	.top_area4_box1_list{
		gap:20px 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.top_area4_box1_list li{
		display: block;
		width: 48%;
	}
	.top_area4_box1_list li a{
		display: block;
	}
	.top_area4_box1_list li a span{
		display: block;
	}
	.top_area4_box1_list_img img{
		width: 100%;
		height: 30vw;
		object-fit: cover;
		border-radius: 10px;
	}
	.top_area4_box1_list_img{
		margin-bottom: 10px;
	}
	.top_area4_box1_list li a span.top_area4_box1_list_title{
		display: flex;
		align-items: center;
		gap:0 10px;
		font-size: 14px;
		line-height: 1em;
	}
	.top_area4_box1_list li a span.top_area4_box1_list_title span:nth-child(1){
		display: block;
		width: 90%;
	}
	.top_area4_box1_list li a span.top_area4_box1_list_title span:nth-child(2){
		width: 10%;
		display: block;
	}
	.top_faq_list{
		margin-bottom: 40px;
	}
	.top_faq_list dt{
		color: #FFF;
		background-color: #183974;
		padding: 15px 10px 15px 70px;
		position: relative;
		font-size: 24px;
	}
	.top_faq_list dt::before{
		display: block;
		content: "Q .";
		color: #FFF;
		font-size: 24px;
		font-weight: bold;
		position: absolute;
		top:13px;
		left: 20px;
	}
	.top_faq_list dd{
		background-color: #E0F5FA;
		padding: 15px 10px 15px 70px;
		position: relative;
		min-height: 30px;
	}
	.top_faq_list dd::before{
		display: block;
		content: "A .";
		font-size: 24px;
		position: absolute;
		top:18px;
		left: 20px;
		color: #183974;
	}
	
	/* 選ばれる理由 設定
------------------------------------------------------------*/
	.reason_over{
		margin: 0 3%;
	}
	.reason_area1{
		margin: 0 auto 40px;
		box-sizing: border-box;
		padding: 20px 0;
		box-shadow: 2px 2px 4px #ccc;
		border-radius: 20px;
		background-color:#fff;
	}
	.reason_h2_1{
		background-image:url(images/title_bg3.png);
		background-repeat:repeat-x;
		background-position:left bottom;
		padding-bottom:20px;
	}
	
	/* 対応業務 設定
------------------------------------------------------------*/
.service_h2_1{
	background-image:url(images/title_bg3.png);
	background-repeat:no-repeat;
	background-position:center bottom;
	padding-bottom:20px;
}
.service_box1{
	width:100%;
	margin-bottom:30px;
}
.service_box1_img img{
	width:100%;
}
.service_box1_h3{
	text-align:center;
	background-color:#193974;
	padding:5px 0;
	color:#fff;
	margin-bottom:10px;
}
.service_box1_list li{
	background-image:url(images/ico_circle_b.png);
	background-repeat:no-repeat;
	background-position:left top 10px;
	padding-left:1em;
}
.service_box2{
	background-color:#F9F8F0;
	padding:20px;
}
.service_box2_h3{
	background-image:url(images/title_bg4.png);
	background-repeat:repeat-x;
	background-position:left bottom;
	padding-bottom:20px;
}
	
	/* よくある質問 設定
------------------------------------------------------------*/
.faq_dl{
	border:10px solid #CDF6FF;
	margin-bottom:50px;
}
.faq_dl dt{
	position:relative;
	background-color:#193974;
	color:#fff;
	font-size:22px;
	font-weight:bold;
	padding:15px 50px;
	cursor:pointer;
}
.faq_dl dt::before{
	content:"Q.";
	display:block;
	position:absolute;
	top:12px;
	left:15px;
}
.faq_dl dd{
	position:relative;
	background-color:#fff;
	padding:15px 15px 15px 50px;
	display:none;
	cursor:pointer;
}
.faq_dl dd::before{
	content:"A.";
	display:block;
	position:absolute;
	top:12px;
	left:15px;
	font-size:22px;
	font-weight:bold;
	color:#193974;
}
.humberger2{
	width:20px;
	position:absolute;
	right:15px;
	top:18px;
	z-index:100;
}
.iconBar2{
	height: 3px;
	background: #FFF;
	display: block;
	margin-bottom: 6px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
}
.iconBar2:nth-child(1){
	transform:translate(0,8px) rotate(90deg);
	-webkit-transform:translate(0,8px) rotate(90deg);
}
.faq_dl dt.open5 span.iconBar2:nth-child(1){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}	
	/* 会社概要 設定
------------------------------------------------------------*/

.company_list li{
	display:flex;
	justify-content: space-between;
}
.company_list_l{
	width:33%;
	color:#193974;
	border-bottom:4px solid #193974;
	font-weight:bold;
	padding:10px 0px;
	box-sizing:border-box;
}
.company_list_r{
	width:66%;
	border-bottom:4px solid #EEEEEE;
	padding:10px 0px;
	box-sizing:border-box;
}
	/* お問い合わせ 設定
------------------------------------------------------------*/
.contact_dl{
	border:10px solid #CDF6FF;
	margin-bottom:30px;
}
.contact_dl dt{
	background-color:#193974;
	color:#fff;
	font-size:22px;
	font-weight:bold;
	padding:15px 15px;
}
.contact_dl dd{
	background-color:#fff;
	padding:15px;
}
.hissu{
	background-color:#FF0000;
	color:#fff;
	font-size:16px;
	font-weight:normal;
	display:inline-block;
	margin-left:20px;
	padding:10px 20px;
	line-height:1em;
}

}