body {
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
	font-family: "Noto Sans JP";
}
	
	/*固定ヘッダー全体*/
	.hed_all{
		width: 100%;
		margin:0px 0px 0px 0px;
		padding:0px 0px 0px 0px;
		display:flex;
		background-color: #fff;
		border-top: #308FED 5px solid;
	}

	/*ロゴ*/
	.hed_logo{
		margin:0px 0px 0px 10px;
		padding:10px 0px 10px 0px;
		width: 200px;
		height: 64px;
	}

	
	
	/*メニュー*/
	.hed_menu{
		margin:30px 100px 0px auto;
		padding:0px 0px 0px 0px;
		font-size:16px; font-weight: 700;
	}
	
		.hed_menu ul {
			display:flex;
			margin:0px 0px 0px 0px;
			padding:0px 0px 0px 0px;
			list-style:none;
		}
		
		.hed_menu li {
			margin:0px 20px 0px 10px;
			position: relative;
		}
		.hed_menu li a{
			color:#266BC8;
			text-decoration:none;
		}


			/*左から右に線が伸びる（下部）*/
			
			.hed_menu li.current a,
			.hed_menu li a:hover{
			  color:#222;
			  text-decoration:none;
			}
			
			.hed_menu li a::after {
				content: '';
				/*絶対配置で線の位置を決める*/
				position: absolute;
				bottom: -50%;
				left: 0%;
				/*線の形状*/
				width: 100%;
				height: 3px;
				background:#555;
				/*アニメーションの指定*/
				transition: all .3s;
				transform: scale(0, 1);/*X方向0、Y方向1*/
				transform-origin: left top;/*左上基点*/
			}
			
			/*現在地とhoverの設定*/
			.hed_menu li.current a::after,
			.hed_menu li a:hover::after {
				transform: scale(1, 1);/*X方向にスケール拡大*/
			
			}

	@media screen and (min-width: 768px) {
	
		/*　ハンバーガーボタン　*/
		.hamburger {
		  display : none;
		}
		nav.globalMenuSp {
		  display : none;
		}
	
	}

.myHero{
    width: 100%;
	position:relative;
}

h1.com1{
    color: #fff;
    font-size: 18px; color: #339A2C;
    letter-spacing: 4px;
	margin:auto;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}


h1.com2{
    color: #fff;
    font-size: 18px;
    letter-spacing: 4px;
	margin:auto;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}


h1.com3{
    color: #fff;
    font-size: 18px;
    letter-spacing: 4px;
	margin:auto;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}


.slide{
    height: calc(100vh - 84px);
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    /*clip-path: polygon(0 0, 100% 0, 100% 95%, 0% 70%);*/
}
.one{
    background-image: url(../img/tp1.jpg);
}
.two{
    background-image: url(../img/tp2.jpg);
}
.three{
    background-image: url(../img/tp3.jpg);
}


/*各ページヘッダー*/
.kaku-page-title {
	width: 100%;
	margin:0px 0px 0px 0px;
	padding:60px 0px 30px 0px;
	border-top: #ccc solid 1px;
	border-bottom: #ccc solid 1px;
	background-color: #f5f5f5;
	text-align: center;
	color: #12325C; font-weight: 800; font-size: 36px; line-height: 1.5em;
}

.abc123 {
	width: 100%;
	margin:0px auto 0px auto;
	padding:0px 0px 0px 0px;
	text-align: center;
	color: #555; font-weight: 800; font-size: 20px;
}

/*コンテンツ左右*/
.column-wrapper {
	width: 100%;
	max-width: 1100px;
	margin:0px auto 30px auto;
	display: flex;
	margin-bottom:30px;
  }
  :nth-of-type(even) {
  flex-direction: row-reverse;
  }
  
  .column1 {
	width: 70%;
	display: flex;
	align-items: center;
  }
  
  .column2 {
	width: 30%;
	display: flex;
	align-items: center;
  }
  .column1 {
  
	padding: 60px;
	box-sizing: border-box;
  }
  .column-wrapper:nth-of-type(2n) .column1:nth-of-type(1){
  
  }
  .column1title {
	font-size: 25px;
	font-weight: 800;
  }
  .column1txt {
	font-size: 15px;
	padding: 15px 0px 0px 0px;
  }
  .column2 img {
	height: 100%;
	width: 100%;
	object-fit: cover;
  }
  @media screen and ( max-width:767px )
  {
	.column-wrapper {
	  flex-direction: column-reverse;
	}
	.column1, .column2 {
	width: 100%;
  }
	.column1 {
	padding: 25px;
  } 
  }


/*コンテンツ枠*/

section.fis{
	width:100%;
	margin:50px auto 0px auto;
	padding:0px 5% 0px 5%;
	box-sizing: border-box;
}

section.sec{
	width:100%;
	margin:0px auto 0px auto;
	padding:50px 0% 50px 0%;
	box-sizing: border-box;
	background-color:#efefef;
}



h2.title{
	width:100%;
	max-width: 1100px;
	margin:0px auto 30px auto;
	font-family: 'Old Standard TT', serif;
	font-size:30px;
	text-align:center;
	padding-top:0px;
	color:#333;
	border-bottom: 1px #ccc solid;
	
}

/*事業内容*/
.con_list_all{
	width:100%;
	max-width: 1100px;
	display: grid;
	gap: 50px;
	grid-template-columns: 1fr 1fr 1fr;
	margin-left:auto;
	margin-right:auto;
  }
  
	  .con_item {
		  text-align:center;
		  width:100%;
		  margin:0px auto 50px auto;
		  padding:0px 0px 0px 0px;
	  }
	  
	  .con_item_img {
		  margin:0px 0px 0px 0px;
		  padding:5px 5px 5px 5px;
		  background-color:#FFFFFF;
	  }
	  .con_item_come1 {
		  margin:10px 0px 0px 0px;
		  padding:0px 0px 5px 0px;
		  font-size:15px;
		  color:#333; background-color:#FFFFFF; line-height: 1.8em;
	  }













/*事業内容*/
.con_list_all1{
  display: grid;
  gap: 0px;
  grid-template-columns: 1fr 1fr;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
  margin-top:80px; margin-bottom:80px;
}
.con_list_all2{
display: grid;
grid-gap: 0px;
grid-template-columns: 1fr;
/*grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));*/
width:90%;
max-width:1220px;
grid-auto-rows:auto;
margin:50px auto 50px auto;
}








/*お客様の声*/
.con_list_all4{
  display: grid;
  gap: 0px;
  grid-template-columns: 1fr ;
  margin-left:auto;
  margin-right:auto;
  text-align:left;
  margin-top:50px; margin-bottom:80px; background-color:#efefef;
  padding:15px;
  border-radius:10px;
  box-sizing: border-box;
}
.koe {
	width:100%;
	height:auto;
	margin:0px auto 0px auto;
	padding:0px 15px 15px 15px;
	background-color:#fff;
	border-radius:10px;
	box-sizing: border-box;
}

.p_name {
	color:#000000;
	font-weight:bold;
	font-size:25px;
	margin:20px 0px 10px 0px;
}

		.p_name_color {
			color:#555;
			 margin-right:10px;
		}


.p_item {
	color:#fff;
	font-weight:bold;
	font-size:15px;
	display: inline-block;
	border-radius:10px;
	background-color:#FF8000;
	margin:0px 10px 5px 0px;
	padding:5px 10px 5px 10px;
}

.p_item_title {
	color:#000000;
	font-weight:bold;
	font-size:18px;
	margin:30px 0px 0px 0px;
}

.p_text {
	/*padding-right: 1.5em;
	padding-left: 1.5em;*/
	line-height: 3em;
	background-image: linear-gradient(transparent 0, transparent 97%, #ddd 100%);
	background-size: 100% 3em;
	margin:0px 0px 0px 0px;
}









.con_item2 {
	width:100%;
	max-width:1220px;
	height:auto;
	margin:0px auto 0px auto;
	padding:0px 0px 0px 0px;
}

	.big_img2 {
		grid-row-end: span 2;
	}

	.big_img3 {
		grid-row-end: span 3;
	}

h3.item_title{
	width:90%;
	font-size:30px;
	margin:0px auto 0px auto;
	padding:0px 0px 0px 0px;
	letter-spacing:0.5em;
	position:relative;
	text-align:center;
}



		h3.item_title:before {
		  content: '';
		  position: absolute;
		  left: 50%;
		  bottom: -10px;/*線の上下位置*/
		  display: inline-block;
		  width: 100px;/*線の長さ*/
		  height: 1px;/*線の太さ*/
		  -webkit-transform: translateX(-50%);
		  transform: translateX(-50%);/*位置調整*/
		  background-color: black;/*線の色*/
		  border-radius: 0px;/*線の丸み*/
		}






h2.item_title{
	width:90%;
	font-size:30px;
	margin:0px auto 0px auto;
	padding:0px 0px 0px 0px;
	letter-spacing:0.5em;
	position:relative;
	text-align:center;
}



		h2.item_title:before {
		  content: '';
		  position: absolute;
		  left: 50%;
		  bottom: -10px;/*線の上下位置*/
		  display: inline-block;
		  width: 100px;/*線の長さ*/
		  height: 1px;/*線の太さ*/
		  -webkit-transform: translateX(-50%);
		  transform: translateX(-50%);/*位置調整*/
		  background-color: black;/*線の色*/
		  border-radius: 0px;/*線の丸み*/
		}




	.con_item_come3 {
		width:80%;
		margin:80px auto 0px auto;
		padding:0px 0px 0px 0px;
		font-size:14px;
		font-weight: normal;
		font-family: 'Old Standard TT', serif;
		color:#000;
		/*text-indent:1em;*/
		line-height:3.0em;
		text-align:center;
	}
	.con_item_come4 {
		width:100%;
		margin:0px auto 0px auto;
		padding:0px 0px 0px 0px;
		font-size:14px;
		font-weight: normal;
		font-family: 'Old Standard TT', serif;
		color:#000;
		/*text-indent:1em;*/
		line-height:2.0em;
	}
	.con_item_img2 {
		margin:0px auto 0px auto;
		padding:0px 0px 0px 0px;
		background:url("../img/test.jpg") top / cover;
		height:400px;
		max-width:400px;
	}
	.con_item_img4 {
		margin:0px auto 0px auto;
		padding:0px 0px 0px 0px;
		text-align:center;
		display:inline-block;
		/*background:url("../img/d.jpg") top / cover;*/
		height: auto;
		max-width:100%;
	}


.setumei{
	width:100%;
	max-width: 1000px;
	font-size:14px;
	margin:30px auto 0px auto;
	padding:30px 50px 30px 50px;
	background-color: #f5f5f5;
	border-radius:10px;
	box-sizing: border-box;
}



#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 14px;
	line-height: 1;
	z-index: 99;
  }
  #page-top a {
	background: #72C7CA;
	text-decoration: none;
	color: #fff;
	width: 60px;
	padding: 28px 5px;
	text-align: center;
	display: block;
	border-radius: 90px;
	opacity: 0.9;
	transition: all .3s ease;
  }
  #page-top a:hover {
	text-decoration: none;
	opacity: .5;
  }













/*ボタン*/
.more_box {
	width: 100%;
	max-width: 1100px;
	margin: 0px auto;
	padding: 15px 0px 15px 0px;
	color:#8EC323;
	text-align:center;
	font-size: 36px;
	font-weight: 700;
}

.more_text {
	width: 100%;
	max-width: 1100px;
	margin: 0px auto;
	padding: 15px 0px 0px 0px;
	color:#339A2C;
	text-align:center;
	font-size: 24px;
	font-weight: 600;
	border-top: #ccc 1px solid;
}

.tel_icon{ color:#8EC323; font-size:50px; margin-right:10px;}

.more_text2 {
	width: 100%;
	max-width: 1100px;
	margin: 0px auto;
	padding: 0px 0px 30px 0px;
	color:#333;
	text-align:center;
	font-size: 16px;
}

/*表示するテキストが切り替わる*/
.btntextchange{
    /*テキストの基点とするためrelativeを指定*/
  position: relative;
    /*ボタンの形状*/
  /*border: 1px solid #fff;*/
  border-radius:50px;
    min-width:210px;
  padding: 30px;
    text-align: center;
  display: inline-block;
    text-decoration: none;
    color: #000;
    outline: none;
	background-color:#fff;
	opacity: 0.9;
	font-weight:bold;
    /*アニメーションの指定*/
    transition: all .2s;
}

/*hoverした際の変化*/
.btntextchange:hover{
  background: #333;
  color:#fff;
}

.btntextchange span{
    /*絶対配置でテキストの位置を決める*/
  position: absolute;
  left: 50%;
  top:50%;
    transform:translate(-50%,-50%);
    /*アニメーションの指定*/
    transition: all .5s;
  /*ブロック要素にしてテキスト折り返しなし*/  
  display: block;
  white-space: nowrap;
}

/*差し替わるテキストの設定*/
.btntextchange span:nth-child(2){
  opacity:0;/*透過0に*/
}

/*hoverするとテキストが入れ替わる設定*/
.btntextchange:hover span:nth-child(1){
  opacity:0;/*透過0に*/
}

.btntextchange:hover span:nth-child(2){
  opacity:1;/*不透明に*/
}








/*表示するテキストが切り替わる*/
.btntextchange2{
    /*テキストの基点とするためrelativeを指定*/
  position: relative;
    /*ボタンの形状*/
  /*border: 1px solid #fff;*/
  border-radius:50px;
    min-width:500px;
  padding: 30px;
    text-align: center;
  display: inline-block;
    text-decoration: none;
    color: #fff;
    outline: none;
	background-color: #D96C00;
	opacity: 0.9;
	font-weight:bold;
    /*アニメーションの指定*/
    transition: all .2s;
}

/*hoverした際の変化*/
.btntextchange2:hover{
  background: #934900;
  color:#fff;
}

.btntextchange2 span{
    /*絶対配置でテキストの位置を決める*/
  position: absolute;
  left: 50%;
  top:50%;
    transform:translate(-50%,-50%);
    /*アニメーションの指定*/
    transition: all .5s;
  /*ブロック要素にしてテキスト折り返しなし*/  
  display: block;
  white-space: nowrap;
}

/*差し替わるテキストの設定*/
.btntextchange2 span:nth-child(2){
  opacity:0;/*透過0に*/
}

/*hoverするとテキストが入れ替わる設定*/
.btntextchange2:hover span:nth-child(1){
  opacity:0;/*透過0に*/
}

.btntextchange2:hover span:nth-child(2){
  opacity:1;/*不透明に*/
}











/*リクルート*/
.rec_list_all{
  display: table;
  border-collapse: collapse;
  width:100%;
  margin:0px auto 0px auto;
  padding:0px 0px 0px 0px;
}


	.row {
		display:table-row;
		margin:0px 0px 0px 0px;
		padding:0px 0px 0px 0px;
	}
	.col {
		display:table-cell;
		margin:0px 0px 0px 0px;
		padding:10px 10px 10px 10px;
		border:#CCCCCC 1px solid;
		border-collapse: collapse;
		font-size:13px;
	}
	
	.col:nth-child(1) {
		background-color:#f7f7f7;
		width:200px;
	}








 img{
    width:auto;
    height: auto;
    max-width:100%;
    max-height:100%;
	display: block;
 }




footer {
width:100%;
margin:50px 0px 0px 0px;
padding:0px 50px 0px 50px;
background-color:#333333;
color:#fff;
box-sizing: border-box;
}



.foot_list_all{
  display: grid;
  width:100%;
  max-width: 1100px;
  gap: 50px;
  grid-template-columns: 1fr 1fr;
  margin:20px auto 0px auto;
}




.foot_title{
	width:100%;
	font-size:30px;
	text-align:center;
	margin:0px 0px 0px 0px;
	padding:0px 0px 20px 0px;
	border-bottom:#ccc solid 1px;
}




	.company_data {
	width:100%;
	clear:both;
	margin:0px auto 0px auto;
	padding:30px 0px 30px 0px;
	box-sizing: border-box;
	/*border:#FFFFFF solid 1px;
	background-color:#99763C;*/
	border-radius:10px;
	}

		.company_item {
		width:100%;
		margin:0px 0px 0px 0px;
		padding:10px 0px 10px 0px;
		font-size:13px;
		border-bottom:#ccc dotted 1px;
		}

		.company_text {
		width:100%;
		margin:0px 0px 20px 0px;
		padding:10px 0px 0px 0px;
		font-size:13px;
		text-align:center;
		}

			.icons{ color:#fff; font-size:4em;}
			.li_icon{ color:#8EC323; font-size:2em; margin-right:10px;}

	
	.company_map {
	width:100%;
	margin:0px auto 0px auto;
	padding:0px 0px 0px 0px;
	box-sizing: border-box;
	}





	.media_box {
	width:100%;
	margin:0px auto 0px auto;
	padding:30px 0px 30px 0px;
	box-sizing: border-box;
	text-align:center;
	/*border-radius:10px;
	background:rgba(225,225,225,0.2);*/
	}


	.cpr_box {
	width:100%;
	margin:50px auto 0px auto;
	padding:15px 0px 15px 0px;
	box-sizing: border-box;
	font-size:12px; color:#fff; text-align:center
	}






/* ヘッダー画像フワッと */
.fadeIn{
animation-name:fadeInAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity:0;
width:100%;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}





/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}

/*----------------------------
scroll_left ｜左から出現
----------------------------*/
.scroll_left {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(-30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_left.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}

/*----------------------------
scroll_right ｜右から出現
----------------------------*/
.scroll_right {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(20px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_right.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}
/*------------------------*/




















