@charset "utf-8";



*{
font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, sans-serif;
line-height: 1.7em;
letter-spacing: 0.05em;
}




#wrapper{
	width: 100%;
position: relative;
    overflow: hidden;
}


#page-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    font-size: 10px;
}

#page-top a {
	text-decoration: none;
	width: 90px;
	text-align: center;
	display: block;
	color: #fff;
	background-color: #333;
	padding-top: 15px;
	padding-right: 0;
	padding-bottom: 15px;
	padding-left: 0;
	border:  1px #fff solid;
}

#page-top a:hover{
    text-decoration: none;
    width: 90px;
    text-align: center;
    display: block;
    color: #FFFFFF;
    background-color: #262626;
    padding-top: 15px;
    padding-right: 0;
    padding-bottom: 15px;
    padding-left: 0;
}

#page-top a i{
    font-size: 16px;
}


/*　　　　　　　　　　　　--ヘッダー--　　　　　　　　　　　　　　　*/
header{
	width: 100%;
	background: rgba(0, 0, 0, 0.5);
	background-size: cover;
	background-position: 100% 60%;
	position: fixed;
		position: absolute;
    z-index: 1;
}


#head_inner{
    width: 100%;
	    margin: 0px auto 0px;
	    position: relative;
	    padding: 25px 25px;
	    display: flex;
	    align-items: center;
}



#header_logo{
	margin: 0px 20px 0 0;
	    width: 420px;
}

#header_logo a{
	/*transition: 0.5s ease-in-out;*/
	display:  block;
	line-height: 0;
}
#header_logo a:hover{
opacity: 0.5;
/*transition: 0.5s ease-in-out;*/
}


#header_logo a img{
    width: 100%;
}



h1{
	font-size: 10px;
	margin: 0px 20px 0 0!important;
	font-weight: normal;
	color: #222;
	width: 170px;
}




#head_inner > .right{
	margin: 0px 0 0 auto;
	display: flex;
	align-items: center;
	width: 734px;
}





nav#main_nav01{
margin: 0px 0 0 auto;
}

nav#main_nav01 ul{
    display: flex;
}

nav#main_nav01 ul li{
    margin: 0 20px 0 0px;
}

nav#main_nav01 ul li a{
	font-size: 12px;
	color: #fff;
	padding: 10px;
	font-weight: bold;
	transition: 0.2s ease-in-out;
}

nav#main_nav01 ul li a:hover{
	background: #fff;
	color: #333;
		transition: 0.2s ease-in-out;
}

nav#main_nav01 ul li a i{
			color: #fff;
			transition: 0.2s ease-in-out;
}

nav#main_nav01 ul li a:hover i{
	color: #333;
		transition: 0.2s ease-in-out;
}





nav#main_nav02{
	margin: 0 0px 0 auto;
	/* position:  absolute; */
}

nav#main_nav02 ul{
    display: flex;
}


nav#main_nav02 ul li{
	background: #333;
	    /*transition: 0.5s ease-in-out;*/
	    position: relative;
	    padding: 10px 0 10px 0px;
	    width: 145px;
	    box-shadow: 0px 0px 2px #eee;
}

nav#main_nav02 ul li a{
	display: block;
	color: #fff;
	text-align: center;
	font-size: 14px;
	transition: 0.2s ease-in-out;
}

nav#main_nav02 ul li:hover{
	/*transition: 0.5s ease-in-out;*/
	background: #fff;
}

nav#main_nav02 ul li:hover a{
	/*transition: 0.5s ease-in-out;*/
	color: #333;
}

nav#main_nav02 ul li:hover a i{
	color: #333;
	/*transition: 0.2s ease-in-out;*/
}









/*ドロワーメニュー*/

#modal{
	display: none;
}



/*ドロワーメニュー*/










/*　　　　　　　　　　　　--ヘッダーここまで　--　　　　　　　　　　　　　　　*/







/*グローバルナビ*/

#globalNavi{
	background: #f5f5f5;
	/* box-shadow: 0px 1px 1px #a29b8c; */
	border-bottom: 1px #e2e2e2 solid;
		border-top: 1px #e2e2e2 solid;
}

#globalNavi ul{
	width: 1024px;
	    margin: 0 auto;
	    padding: 0;
			display: flex;
}

#globalNavi ul li:first-child{
	border-left: 1px #e2e2e2 solid;
}

#globalNavi ul li{
	flex: 1 1 auto;
	border-right: 1px #e2e2e2 solid;
	box-sizing: border-box;
}
#globalNavi ul li:last-child{

}

#globalNavi ul li a{
color: #333;
font-weight: bold;
    font-size: 16px;
text-align: center;
		display: block;
		padding: 12px 0;
		    transition: 0.5s ease-in-out;
}


#globalNavi ul li a:hover{
background: #bfbfbf;
color: #333;
    transition: 0.5s ease-in-out;
}


/*グローバルナビ*/

















main.top{

}








/*　　　　　　　　　　　　--トップ--　　　　　　　　　　　　　　　*/




/*メイン画像　基本スライダー　背景ベース*/


.mainImage_area01{
position: relative;
}

.mainImage_area01 > .inner{
	position: absolute;
	top: 45%;
	right: 0;
	left: 0;
	width: 1024px;
	margin: 0 auto;
	z-index: 10;
}

.mainImage_area01 > .inner > span.catch01{
	color: #fff;
	font-size: 48px;
	line-height: 1.5em;
	display: block;
	margin: 0 0 10px 0px;
	text-shadow: 0px -1px 10px #000000, -1px 1px 10px #020202, 1px 3px 10px #000000, 1px 2px 10px #10182d;
	/* background: rgba(3, 7, 26, 0.95); */
	background-blend-mode: multiply;
	position: relative;
	width: 970px;
	padding: 0px 0 0px 0px;
}

.mainImage_area01 > .inner > .bt01{
margin: 0 0 0 0px;
}








/*共通ボタン 基本ステータス*/






.bt01{
	display: block;
	width: 230px;
	margin: 0;
	/* transform: skewX(-35deg); */
	background: #333;
	box-shadow: 0px 1px 5px #4a4a4a;
	transition: 0.5s ease-in-out;
}

.bt01 a{
	color: #ffffff;
	display: block;
	padding: 8px 16px;
	text-align: center;
	/* border: 1px #fff solid; */
	transition: 0.5s ease-in-out;
	/* transform: skewX(35deg); */
	    font-size: 18px;
}

.bt01:hover{
background: #2dbbc4;
	color: #fff;
	    transition: 0.5s ease-in-out;
	}
	.bt01:hover a{
		color: #fff;
		    transition: 0.5s ease-in-out;
		}

.bt01 a i{

}




/*共通ボタン 基本ステータスここまで*/






/*トップ事業3カラム*/





main.top > .top_business {
	display: flex;
justify-content: center;
width: 100%;
    height: 300px;
}




main.top > .top_business figure{
	position: relative;
	overflow: hidden;
	    flex: 1 1 auto;
}

main.top > .top_business figure img{
	display: block;
	width: 100%;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;
	/* border: 1px #1d60c7 solid; */
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

main.top > .top_business figure:hover img{
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}


main.top > .top_business figure:nth-child(1){
		background: #dc8a20;
}
main.top > .top_business figure:nth-child(1) img{
	opacity: 0.7;
	    width: 100%;
}

main.top > .top_business figure:nth-child(2){
	background: #1cb90e;
}
main.top > .top_business figure:nth-child(2) img{
	opacity: 0.7;
	    width: 100%;
}


main.top > .top_business figure:nth-child(3){
	background: #0e76b9;
}
main.top > .top_business figure:nth-child(3) img{
	opacity: 0.7;
		    width: 100%;
}







/*
グリッド

main.top > .top_business {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: 300px;
	-ms-grid-rows: 300px 300px;
	grid-auto-rows: 300px;
	-ms-grid-auto-rows: 300px 300px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}




main.top > .top_business figure{
	position: relative;
	overflow: hidden;
}

main.top > .top_business figure img{
	display: block;
	width: 100%;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;

	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

main.top > .top_business figure:hover img{
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}


main.top > .top_business figure:nth-child(1){
	display: ms-grid;
	-ms-grid-column: 1;
	-ms-grid-row: 1;
		background: #dc8a20;
}
main.top > .top_business figure:nth-child(1) img{
	opacity: 0.7;
	    width: 100%;
}

main.top > .top_business figure:nth-child(2){
	display: grid;
	grid-column: span 1;
	grid-row: span 1;
	display: ms-grid;
	-ms-grid-column-span: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 2;
	-ms-grid-row: 1;
	background: #1cb90e;
}
main.top > .top_business figure:nth-child(2) img{
	opacity: 0.7;
	    width: 100%;
}


main.top > .top_business figure:nth-child(3){
	display: ms-grid;
	-ms-grid-column: 4;
	-ms-grid-row: 1;
	background: #0e76b9;
}
main.top > .top_business figure:nth-child(3) img{
	opacity: 0.7;
		    width: 100%;
}





main.top > .top_business figure:nth-child(4){
	display: grid;
	grid-column: span 2;
	grid-row: span 1;
	display: ms-grid;
	-ms-grid-column-span: 2;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-row: 2;
	background: #b9370e;
}
main.top > .top_business figure:nth-child(4) img{
	opacity: 0.7;
			    width: 955px;
}


main.top > .top_business figure:nth-child(5){
	-ms-grid-column: 3;
	-ms-grid-row: 2;
	background: #ff0074;
}
main.top > .top_business figure:nth-child(5) img{
	opacity: 0.7;
			    width: 500px;
}


main.top > .top_business figure:nth-child(6){
	-ms-grid-column: 4;
	-ms-grid-row: 2;
	background: #2b0eb9;
}
main.top > .top_business figure:nth-child(6) img{
	opacity: 0.7;
			    width: 500px;
}*/





main.top > .top_business figure a{

}

main.top > .top_business figure a ul{
	position: absolute;
	top: auto;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: 40%;
	z-index: 100;
	display: block;
	width: 85%;
}

main.top > .top_business figure a ul li:nth-child(1){text-align: center;font-weight: bold;border-bottom: 1px #fff solid;font-size: 24px;color: #fff;text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);}
main.top > .top_business figure a ul li:nth-child(2){text-align: center;color: #fff;text-shadow:  0px 0px 10px rgba(0, 0, 0, 0.7);}

/*トップ事業3カラムここまで*/








/*news & topics*/



/*新着情報*/

.top_news_topics{
	background: #fff;
	    margin: 0px auto;
	    padding: 48px;
	    /* border-top: 16px #333 solid; */
	    /* border-bottom: 16px #333 solid; */
}




.top_news_topics > .inner{
	width: 1024px;
	margin: 0px auto;
}






.top_news_topics > .inner > h2{
    text-align: center;
		position: relative;
}

.top_news_topics > .inner > h2 > div{
	text-align: center;
	position: relative;
	border-bottom: 2px #333 solid;
	margin: 0 auto;
	letter-spacing: 0.3em;
	font-size: 32px;
}

.top_news_topics > .inner > h2 > div span{
	letter-spacing: 0.3em;
	font-size: 48px;
}

.top_news_topics > .inner > h2 > span.bt{
display: block;
		position: absolute;
		top: 0;
		left: auto;
		right: 0;
}
.top_news_topics > .inner > h2 > span.bt > a{
	border-radius: 50px;
	display: block;
	border: 1px #333 solid;
	font-size: 14px;
	padding: 2px 40px;
	background: rgb(255, 255, 255);
}
.top_news_topics > .inner > h2 > span.bt > a:hover{
	color: #fff;
	border: 1px #333 solid;
	background: #6b6b6b;
}




.top_news_topics > .inner > .inner{
	/* display: flex; */
	margin: 40px auto 0 auto;
	/* width: 960px; */
}

.top_news_topics > .inner > .inner > article{
	margin: 0 0 8px 0;
	width: 100%;
	/* text-align: center; */
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	border-bottom: 1px #333 dashed;
	padding: 16px 0;
}
.top_news_topics > .inner > .inner > article:last-child{
margin-right: 0;
}

.top_news_topics > .inner > .inner > article > figure{width: 21%;
    margin: 0 2% 0 0;}
.top_news_topics > .inner > .inner > article > figure img{
	width: 100%;
}


.top_news_topics > .inner > .inner > article >ul{width: 77%;display: flex;}

.top_news_topics > .inner > .inner > article >ul > li{
	width: 70%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.top_news_topics > .inner > .inner > article >ul > li > a{
display: block;
overflow: hidden;
text-overflow: ellipsis;
	font-size: 16px;
	    text-decoration: underline;
}
.top_news_topics > .inner > .inner > article >ul > li > a.title{
display: block;
overflow: hidden;
text-overflow: ellipsis;
	font-size: 16px;
	font-weight: bold;
	    text-decoration: none;
}

.top_news_topics > .inner > .inner > article >ul > li > a:hover{background: #c7c7c7;}



.top_news_topics > .inner > .inner > article > ul > .icon_box{
	display: flex;
	align-items: center;
	margin: 0 0 0px 0;
	/* justify-content: center; */
	width: 30%;
}



.top_news_topics > .inner > .inner > article > ul > .icon_box > .icon01{
	font-size: 12px;
	background: #09a1ab;
	color: #fff;
	border-radius: 2px;
	text-align: center;
	padding: 0px 15px 0px 15px;
	display: block;
	margin: 0 20px 0 0;
}
.top_news_topics > .inner > .inner > article > ul > .icon_box > .date{
	display: block;
	color: #222;
	    margin: 0 10px 0 0;
}


.top_news_topics > .inner > .inner > article > ul > .icon_box > .icon02{
	font-size: 12px;
	background: #aa7131;
	color: #fff;
	border-radius: 2px;
	text-align: center;
	padding: 0px 15px 0px 15px;
	display: block;
	margin: 0 20px 0 0;
}

.top_news_topics > .inner > .inner > article > ul > .icon_box > .icon03{
	font-size: 12px;
	background: #09659c;
	color: #fff;
	border-radius: 2px;
	text-align: center;
	padding: 0px 15px 0px 15px;
	display: block;
	margin: 0 20px 0 0;
}


.top_news_topics > .inner > .inner > article > ul > .icon_box > .icon04{
	font-size: 12px;
	background: #ce2323;
	color: #fff;
	border-radius: 2px;
	text-align: center;
	padding: 0px 15px 0px 15px;
	display: block;
	margin: 0 20px 0 0;
}



/*新着情報*/



/*news & topics*/































/*トップinfo*/
.top_info{
	/* background: linear-gradient(180deg,#ec4343,#f9a8a8,#ffc5c5); */
	background: #333;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 100%;
	border-top: 1px #fff solid;
}


.top_info > .inner{
	width: 1024px;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
}

.top_info > .inner > figure{
	width: 1024px;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
}

.top_info > .inner > .inner{

}

.top_info > .inner > .inner > h3{
color: #333;
font-size: 28px;
text-align: center;
}



.top_info > .inner > figure span{
	position: absolute;
	font-size: 28px;
	text-align: center;
	display: block;
	width: 100%;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	top: 20%;
	color: #333;
	font-weight: bold;
}

.top_info > .inner > figure img{
/*box-shadow: 0px -4px 25px #256e73;*/
}



.top_info > .inner > h2{
	color: #e43a3a;
	margin: 0 0 40px 0;
	    border-bottom: 1px #333 solid;

}

.top_info > .inner > .inner > ul{
	margin: 20px 0 20px 0px;
		    display: flex;
}

.top_info > .inner > .inner > ul li{
	display: flex;
	font-weight: bold;
	margin: 10px 30px 20px 0;
	border: 1px #507476 solid;
	padding: 40px 80px;
	transition: 0.2s ease-in-out;
}

.top_info > .inner > .inner > ul li:hover{
background: #629b9e;
	transition: 0.2s ease-in-out;
}

.top_info > .inner > .inner > ul li:last-child{
margin-right: 0;
}

.top_info > .inner > .inner > ul li a{
display: block;
}

.top_info > .inner > .inner > ul li figure{

}

.top_info > .inner > .inner > ul li figure img{
width: 100%;
}


.top_info > .inner > .inner > ul li span{
	color: #333;
display: block;
text-align: center;

}






























/*トップinfo*/
.top_info02{
	/* background: linear-gradient(180deg,#ec4343,#f9a8a8,#ffc5c5); */
	background: #f1f1f1;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 100%;
	border-top: 1px #fff solid;
}


.top_info02 > .inner{
	width: 1024px;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
}

.top_info02 > .inner > figure{
	width: 1024px;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
}

.top_info02 > .inner > .inner{

}

.top_info02 > .inner > .inner > h2{
	text-align: center;
	position: relative;
}

.top_info02 > .inner > .inner > h2 > div {
	text-align: center;
	position: relative;
	border-bottom: 2px #333 solid;
	margin: 0 auto;
	letter-spacing: 0.1em;
	font-size: 32px;
}
.top_info02 > .inner > .inner > h2 > div span {
    letter-spacing: 0.1em;
    font-size: 48px;
}


.top_info02 > .inner > figure span{
		position: absolute;
	font-size: 28px;
	text-align: center;
	display: block;
	width: 100%;
	    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
			top: 20%;
}

.top_info02 > .inner > figure img{

}



.top_info02 > .inner > h2{
	color: #e43a3a;
	margin: 0 0 40px 0;
	    border-bottom: 1px #333 solid;

}

.top_info02 > .inner > .inner > ul{
	margin: 20px 0 20px 0px;
	display: flex;
	justify-content: center;
}

.top_info02 > .inner > .inner > ul li{
	width: 33%;
	/* display: flex; */
	font-weight: bold;
	margin: 10px 30px 20px 0;
	border: 1px #333 solid;
	padding: 40px 0px;
	transition: 0.2s ease-in-out;
}

.top_info02 > .inner > .inner > ul li:hover{
background: #333;
	transition: 0.2s ease-in-out;
}

.top_info02 > .inner > .inner > ul li:last-child{
margin-right: 0;
}

.top_info02 > .inner > .inner > ul li a{display: block;width: 200px;margin: 0 auto;}

.top_info02 > .inner > .inner > ul li figure{

}

.top_info02 > .inner > .inner > ul li figure img{
 width: auto;
margin: 0 auto;
display: block;
}


.top_info02 > .inner > .inner > ul li span{
	color: #333;
	    display: block;
	    text-align: center;
	    transition: 0.2s ease-in-out;
	    margin: 20px 0 0;
	    font-size: 20px;
}
.top_info02 > .inner > .inner > ul li:hover span{
	color: #fff;
	transition: 0.2s ease-in-out;
}


/*トップinfoここまで*/

















/*トップ2カラム*/





main.top > .top_two_col {
	display: flex;
justify-content: center;
/*width: 100%;*/
    width: 1024px;
    height: 300px;
		margin: 0 auto;
}




main.top > .top_two_col figure{
	position: relative;
	overflow: hidden;
	    flex: 1 1 auto;
}

main.top > .top_two_col figure a{

}

main.top > .top_two_col figure a ul{
	position: absolute;
	top: auto;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: 40%;
	z-index: 100;
	display: block;
	width: 85%;
}

main.top > .top_two_col figure a ul li:nth-child(1){
	text-align: center;
	    font-weight: bold;
	    border-bottom: 1px #fff solid;
	    font-size: 24px;
	    color: #fff;
	    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
}

main.top > .top_two_col figure a ul li:nth-child(2){
	text-align: center;
	color: #fff;
	text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
}



main.top > .top_two_col figure img{
	display: block;
	width: 100%;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;
	/* border: 1px #1d60c7 solid; */
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

main.top > .top_two_col figure:hover img{
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}


main.top > .top_two_col figure:nth-child(1){
		background: #dc8a20;
}
main.top > .top_two_col figure:nth-child(1) img{
	opacity: 0.7;
	    width: 100%;
}

main.top > .top_two_col figure:nth-child(2){
					background: #1cb90e;
}
main.top > .top_two_col figure:nth-child(2) img{
	opacity: 0.7;
	    width: 100%;
}


main.top > .top_two_col figure:nth-child(3){
	background: #0e76b9;
}
main.top > .top_two_col figure:nth-child(3) img{
	opacity: 0.7;
		    width: 100%;
}







/*
グリッド

main.top > .top_two_col {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: 300px;
	-ms-grid-rows: 300px 300px;
	grid-auto-rows: 300px;
	-ms-grid-auto-rows: 300px 300px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}




main.top > .top_two_col figure{
	position: relative;
	overflow: hidden;
}

main.top > .top_two_col figure img{
	display: block;
	width: 100%;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;

	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

main.top > .top_two_col figure:hover img{
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}


main.top > .top_two_col figure:nth-child(1){
	display: ms-grid;
	-ms-grid-column: 1;
	-ms-grid-row: 1;
		background: #dc8a20;
}
main.top > .top_two_col figure:nth-child(1) img{
	opacity: 0.7;
	    width: 100%;
}

main.top > .top_two_col figure:nth-child(2){
	display: grid;
	grid-column: span 1;
	grid-row: span 1;
	display: ms-grid;
	-ms-grid-column-span: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 2;
	-ms-grid-row: 1;
	background: #1cb90e;
}
main.top > .top_two_col figure:nth-child(2) img{
	opacity: 0.7;
	    width: 100%;
}


main.top > .top_two_col figure:nth-child(3){
	display: ms-grid;
	-ms-grid-column: 4;
	-ms-grid-row: 1;
	background: #0e76b9;
}
main.top > .top_two_col figure:nth-child(3) img{
	opacity: 0.7;
		    width: 100%;
}





main.top > .top_two_col figure:nth-child(4){
	display: grid;
	grid-column: span 2;
	grid-row: span 1;
	display: ms-grid;
	-ms-grid-column-span: 2;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-row: 2;
	background: #b9370e;
}
main.top > .top_two_col figure:nth-child(4) img{
	opacity: 0.7;
			    width: 955px;
}


main.top > .top_two_col figure:nth-child(5){
	-ms-grid-column: 3;
	-ms-grid-row: 2;
	background: #ff0074;
}
main.top > .top_two_col figure:nth-child(5) img{
	opacity: 0.7;
			    width: 500px;
}


main.top > .top_two_col figure:nth-child(6){
	-ms-grid-column: 4;
	-ms-grid-row: 2;
	background: #2b0eb9;
}
main.top > .top_two_col figure:nth-child(6) img{
	opacity: 0.7;
			    width: 500px;
}*/















/*トップグーグルマップ*/

.top_google_map {
	width: 100%;
	height: 300px;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	background: #353535;
}


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

.top_google_map iframe{
	position: relative;
	top: 0;
	left: 0;
	width: 1024px;
	height: 100%;
	margin: 0 auto;
	display: block;
	padding: 30px 0;
}


/*トップグーグルマップここまで*/






/*自動スライダー*/



/*自動スライダーここまで*/





/*　　　　　　　　　　　　--トップここまで--　　　　　　　　　　　　　　　*/




/*　　　　　　　　　　　　--下層共通--　　　　　　　　　　　　　　　*/












/*下層メイン画像*/
 #mainImage02{
width: 100%;
background: url(../img/bg_slider.jpg);
box-shadow: 4px 2px 3px rgba(0,0,0,0.4);
 }
 #mainImage02 > .inner{
	 width: 100%;
	     margin: 0 auto;
	     position: relative;
	     line-height: 0;
 }
 #mainImage02 > .inner > h2{
	 font-size: 32px;
	     position: absolute;
	     top: 60%;
	     left: 0;
	     color: #fff;
	     font-weight: normal;
	     width: 1024px;
	     margin: 0 auto;
	     right: 0;
	     text-shadow: 1px 2px 10px #353535;
	     font-weight: bold;
	}



 #mainImage02 > .inner > img{
	 width: 100%;
 }





 #mainImage03{
	 width: 100%;
	 background: url(../img/bg_slider.jpg);
	 box-shadow: 4px 2px 3px rgba(0,0,0,0.4);
	 margin: 100px 0 0 0;
	 padding: 8px 0;
	}
 #mainImage03 > .inner{
	 width: 95%;
	 margin: 0 auto;
	 position: relative;
	 line-height: 0;
	}

 #mainImage03 > .inner > h2{
	 font-size: 32px;
	 /* position: absolute; */
	 top: 60%;
	 left: 0;
	 color: #333;
	 font-weight: normal;
	 width: 1024px;
	 margin: 0 auto;
	 right: 0;
	 text-shadow: 0px -1px 12px #ffffff, 1px 2px 12px #ffffff;
	 font-weight: bold;
}


 #mainImage03 > .inner > img{
	 width: 100%;
 }




/*下層メイン画像　ここまで*/




/*タイトル装飾*/
h2.title01{
	width: 1024px;
	margin: 0 auto;
	position: relative;
}

h2.title01 .block01{
	position: absolute;
	    top: 35%;
	    left: 0;
	    right: 0;
	    bottom: 0;
	    z-index: 10;
	    color: #fff;
	    width: 530px;
	    text-align: center;
}


h2.title01 img{
	width: 2000px;
	    margin: 0 0 0 -33.5%;
	    display: block;
				z-index: 0;
}





h3.title01{
	font-size: 24px;
	border-bottom: 4px #0a2527 solid;
	padding: 0px 0 0px 45px;
	margin: 0px auto 10px;
	/* text-shadow: 1px 2px 2px rgba(0,0,0,0.4); */
	letter-spacing: 0.8pt;
	font-weight: normal;
	color: #333;
	position: relative;
}

h3.title01::before {
	content: "";
	background: #62b4b9;
	width: 20px;
	height: 20px;
	margin: 0px 15px 0 0;
	box-shadow: 1px 2px 2px rgba(0,0,0,0.4);
	padding: 0px 0 0px 0;
	position: absolute;
	top: 0;
	left: 0;
}

h3.title01::after {
	content: "";
	background: #333;
	width: 15px;
	height: 15px;
	margin: 0px 15px 0 0;
	box-shadow: 1px 2px 2px rgba(0,0,0,0.4);
	padding: 0px 0 0px 0;
	position: absolute;
	top: 10px;
	left: 10px;
}







h3.title02{
	font-size: 16px;
	border-bottom: 4px #0a2527 solid;
	padding: 4px 0 0px 0px;
	margin: 0px auto 20px;
	/* text-shadow: 1px 2px 2px rgba(0,0,0,0.4); */
	letter-spacing: 0.8pt;
	font-weight: bold;
	color: #333;
}


h3.title03{
	font-size: 20px;
	border-bottom: 4px #0a2527 solid;
	padding: 10px 0 10px 20px;
	margin: 0px auto 10px;
	/* text-shadow: 1px 2px 2px rgba(0,0,0,0.4); */
	letter-spacing: 0.8pt;
	font-weight: bold;
	color: #ffffff;
	background: #333;
}



h3.title04{
	font-size: 20px;
	border-bottom: 4px #333 solid;
	padding: 10px 0 10px 20px;
	margin: 0px auto 10px;
	/* text-shadow: 1px 2px 2px rgba(0,0,0,0.4); */
	letter-spacing: 0.8pt;
	font-weight: bold;
	color: #ffffff;
	background: #0a2527;
}









h4.title01{
	font-size: 16px;
	border-bottom: 1px #333 solid;
	padding: 10px 0 10px 25px;
	margin: 0px auto 10px;
	/* text-shadow: 1px 2px 2px rgba(0,0,0,0.4); */
	letter-spacing: 0.8pt;
	font-weight: bold;
	color: #333;
	/* background: #0a2527; */
}








/*タイトル装飾ここまで*/






/*パンくず*/
ul.breadcrums{max-width: 1024px;width: 95%;margin: 10px auto 10px;display: flex;}

ul.breadcrums li{font-size: 12px;margin: 0 12px 0 0;}

ul.breadcrums li a{font-size: 12px;}
ul.breadcrums li a:hover{
border-bottom:1px #333 solid;
}


/*パンくずここまで*/









nav.side_navi01{
	margin: 0px 30px 0px 0;
}


nav.side_navi01 > ul{
	padding: 5px 0 5px 0;
	margin: 0px auto;
	width: 280px;
	display: flex;
	flex-wrap: wrap;
}

nav.side_navi01 > ul > li{
	list-style-type: none;
	background: #eee;
	width: 100%;
	border: 1px #333 solid;
	margin: 0 0px 0 0;
	font-size: 1em;
	font-weight: bold;
	display: block;
	text-align: center;
	cursor: pointer;
}


nav.side_navi01 > ul > li:hover{
	background: #333;
}

nav.side_navi01 > ul > li:last-child{
	margin-right: 0;

}

nav.side_navi01 > ul > li > a{
	display: block;
	color: #333;
	position: relative;
	padding: 8px;
	font-size: 14px;
}
nav.side_navi01 > ul > li > a > i{
	display: inline-block;
	position: absolute;
	top: 15px;
	left: 15px;
	font-size: 8px;
}

nav.side_navi01 > ul > li:hover > a{
    display: block;
			color: #fff;
}

nav.side_navi01 > ul > li.on{
	background: #333;

}
nav.side_navi01 > ul > li.on > a{
	color: #fff;
}


/*　　　　　　　　　　　　--下層共通ここまで--　　　　　　　　　　　　　　　*/

















/*会社案内*/


main.company{
	width: 100%;
    margin: 80px 0 120px 0;
}


main.company .content01{
	width: 100%;
	margin: 0px 0 0 0;
}

main.company .content01 > .inner{
	max-width: 1024px;
	margin: 40px auto;
	width: 95%;
}



main.company .content01 > .inner > .inner{
	margin: 30px auto 0 auto;
	display: flex;
	width: 96%;
}

main.company .content01 > .inner > .inner > .sentence{width: 690px;}
main.company .content01 > .inner > .inner > .sentence > p{
    margin: 0px 0px 20px 0;
}
main.company .content01 > .inner > .inner > .photo{
	width: 480px;
	margin: 0 0 0 30px;
}
main.company .content01 > .inner > .inner > .photo img{
width: 100%;
}


main.company .content02{
	width: 100%;
    margin: 40px 0 40px 0;
}

main.company .content02 > .inner{
	width: 1024px;
	    margin: 0 auto;
			position: relative;
}

main.company .content02 > .inner > .inner{
    margin: 30px 0 0px 0;
					position: relative;
}

main.company .content02 > .inner > .inner > dl{
	display: flex;
	/* border: 1px #333 solid; */
	border-top: none;
	position: relative;
	width: 840px;
	margin: 0 auto;
}

main.company .content02 > .inner > .inner > dl:nth-child(1){
    border-top: 1px #9c9c9c solid;
}


main.company .content02 > .inner > .inner > dl.type01 > dt{
	color: #333;
	background: #eee;
	width: 170px;
	padding: 15px 0 0 25px;
	/* padding: 15px 0 0 0px; */
	border-bottom: 1px #9c9c9c solid;
	border-left: 1px #9c9c9c solid;
	/* text-align: center; */
}

main.company .content02 > .inner > .inner > dl.type02 > dt{
	color: #333;
	background: #eee;
	width: 270px;
	padding: 15px 0 0 25px;
	/* padding: 15px 0 0 0px; */
	border-bottom: 1px #9c9c9c solid;
	border-left: 1px #9c9c9c solid;
	/* text-align: center; */
}

main.company .content02 > .inner > .inner > dl > dd{
	width: 670px;
	    padding: 15px 15px 15px 90px;
	    border-right: 1px #9c9c9c solid;
			    border-bottom: 1px #9c9c9c solid;
}

main.company .content02 > .inner > .inner > dl.type02 > dd {
    width: 670px;
    padding: 15px 15px 15px 30px;
    border-right: 1px #9c9c9c solid;
		 border-bottom: 1px #9c9c9c solid;
}

main.company .content02 > .inner > .inner > dl:last-child > dd{
	    border-bottom: 1px #9c9c9c solid;
}


main.company .content02 > .inner > .inner > dl:nth-child(even) > dd{
    background: linear-gradient(15deg, #ffffff, #e4f0f1)
}

main.company .content02 > .inner > .inner > dl > dd > dl{
	display: flex;
	border-bottom: 1px #e3e6ef solid;
}

main.company .content02 > .inner > .inner > dl > dd > dl > dt{
	color: #333;
	/*font-weight: bold;*/
	width: 125px;
}

/*main.company .content02 > .inner > .inner > dl > dd > dl > dt:first-of-type{

}*/

main.company .content02 > .inner > .inner > dl > dd > dl > dd{
	    padding: 0 0 0 85px;
}










main.company .content02 > .inner > #map_area{
	margin: 40px 0 0 0;
}

main.company .content02 > .inner > #map_area > .inner{
	padding: 0 0 20px 0;
	border-bottom: 1px #444 dashed;
    margin: 0px auto 40px auto;
	/*display: flex;*/
	flex-direction: column;
	width: 96%;
}


main.company .content02 > .inner > #map_area > .inner > .address_area{
    display: flex;
    justify-content:  center;
    margin: 30px auto;
}

main.company .content02 > .inner > #map_area > .inner > .address_area > div{
    margin: 0 0 0px 0;
}

main.company .content02 > .inner > #map_area > .inner > .address_area > dl{
	display: flex;
	/* justify-content: center; */
	width: 100%;
	margin: 0 0% 0 0%;
}
main.company .content02 > .inner > #map_area > .inner > .address_area > dl dt{
	color: #333;
	margin: 0 30px 0 0px;
	font-weight: bold;
	text-align-last: justify;
	width: 340px;
	font-size: 20px;
}
main.company .content02 > .inner > #map_area > .inner > .address_area > dl dd{

}



main.company .content02 > .inner > #map_area > .inner > .address_area > figure.photo{
    line-height: 0;
    width: 28%;
}

main.company .content02 > .inner > #map_area > .inner > .address_area > figure.photo > img{
width: 100%;
}



main.company .content02 > .inner > #map_area > .inner > #map01{
	width: 100%;
	height: 250px;
	margin: 0px auto 0 auto;
	display: block;
	position: relative;
	overflow: hidden;
	border: 1px #c2c2c2 solid;
}

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


main.company .content02 > .inner > #map_area ul.note01{
	margin: 40px auto 0 auto;
	width: 740px;
}

main.company .content02 > .inner > #map_area ul.note01 li{
	margin: 40px 0 0 0;
}







figure.img_company01{
	width: 480px;
	position: absolute;
	top: 84px;
	left: auto;
	right: 0;
}
figure.img_company01 img{
width: 100%;
}








main.company .content01 > .inner > .inner > .sentence > dl.president_name {
    text-align: right;
}

main.company .content01 > .inner > .inner > .sentence > dl.president_name dt {
    font-size: 18px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

main.company .content01 > .inner > .inner > .sentence > dl.president_name dd {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 24px;
}






main.company .content01 > .inner > .inner > .photo > dl.president_name {
    text-align: right;
}

main.company .content01 > .inner > .inner > .photo > dl.president_name dt {
    font-size: 18px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

main.company .content01 > .inner > .inner > .photo > dl.president_name dd {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 24px;
}







/*会社案内ここまで*/










/*事業紹介*/


main.business{
	width: 100%;
    margin: 80px 0 120px 0;
}

main.business > .sentence{
	width: 1024px;
	margin: 80px auto;
}



main.business .content01{
	width: 100%;
	margin: 0px 0 0 0;
}

main.business .content01 > .inner{
	width: 1024px;
	margin: 80px auto;
}



main.business .content01 > .inner > .inner{
	margin: 30px auto 0 auto;
	display: flex;
	width: 96%;
}

main.business .content01:nth-child(2n) > .inner > .inner {
flex-direction: row-reverse;
}

main.business .content01 > .inner > .inner > .sentence{width: 690px;}
main.business .content01 > .inner > .inner > .sentence > p{
    margin: 0px 0px 20px 0;
}
main.business .content01 > .inner > .inner > .photo{
	width: 480px;
	margin: 0 0 0 30px;
}
main.business .content01:nth-child(2n) > .inner > .inner > .photo {
    width: 480px;
    margin: 0 30px 0 0px;
}



main.business .content01 > .inner > .inner > .photo img{
width: 100%;
}


/*事業紹介　ここまで*/















/*実績紹介 一覧*/

main.works_list{

}


/*タブエリア*/
main.works_list > .tab_area {
	justify-content: center;
	/*display: flex;*/
	flex-wrap: wrap;
	margin: 20px 0;
}

main.works_list > .tab_area h3{
	border-bottom: none;
	    width: 265px;
	    margin: 0 auto 8px;
}

main.works_list > .tab_area .inner{
	display: flex;
	/* justify-content: center; */
	width: 100%;
	/* height: 340px; */
	flex-wrap: wrap;
	border-top: 4px #333 solid;
	/* border-bottom: 4px #333 solid; */
}


main.works_list > .tab_area figure{
	position: relative;
	overflow: hidden;
	/* flex: 1 1 25%; */
	width: 25%;
	border-bottom: 4px #333 solid;
		border-right: 1px #333 solid;
}

main.works_list > .tab_area figure:last-child{

}



main.works_list > .tab_area figure img{
	display: block;
	width: 50%;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;
	/* border: 1px #1d60c7 solid; */
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	opacity: 0.4;
}

main.works_list > .tab_area figure:hover img{
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
	opacity: 1;
}
main.works_list > .tab_area figure img.lighton{
	opacity: 1;
}




main.works_list > .tab_area figure a{

}

main.works_list > .tab_area figure a ul{
	position: absolute;
	top: auto;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: 40%;
	z-index: 100;
	display: block;
	width: 85%;
}
 
main.works_list > .tab_area figure a ul li:nth-child(1){
	text-align: center;
	font-weight: bold;
	border-bottom: 1px #333 solid;
	font-size: 1.2vw;
	color: #333;
	text-shadow: 0px 0px 4px rgb(255, 255, 255), 0px 0px 4px rgb(255, 255, 255), 0px 0px 4px rgb(255, 255, 255), 0px 0px 4px rgb(255, 255, 255),0px 0px 4px rgb(255, 255, 255),0px 0px 4px rgb(255, 255, 255);
}
main.works_list > .tab_area figure a ul li:nth-child(2){
	text-align: center;
	color: #fff;
	text-shadow:  0px 0px 10px rgba(0, 0, 0, 0.7);
}

/*タブエリアここまで*/





main.works_list .content01{
	width: 100%;
    margin: 80px auto 80px;
}

main.works_list .content01 h4{
font-size: 28px;
text-align: center;
color: #333;
}


main.works_list .content01 > .inner{
width: 1024px;
margin: 0 auto;
}

main.works_list .content01 > .inner > ul.inner{
	margin: 40px 0 80px 0;
	display: flex;
	flex-wrap: wrap;
	/* justify-content: space-between; */
}

main.works_list .content01 > .inner > ul.inner > li{
	display: flex;
	margin: 0px 1.2% 40px 0;
	width: calc(95% / 4);
	justify-content: space-between;
}
main.works_list .content01 > .inner > ul.inner > li:nth-child(4){

	margin-right: 0px!important;

}


main.works_list .content01 > .inner > ul.inner > li > a{
display: block;
}

main.works_list .content01 > .inner > ul.inner > li > a span.date{
	display: block;
    border-bottom: 1px #333 solid;
    margin: 0 0 8px 0;
    font-size: 14px;
    font-weight: bold;

	}


	
	
	main.works_list .content01 > .inner > ul.inner > li > a figure{
		display: block;
		overflow: hidden;
		height: 150px;
	}
	
	main.works_list .content01 > .inner > ul.inner > li > a figure img{
		display: block;
		width: 100%;
		height: 100%;
		transition: 0.3s ease-in-out;
		object-fit: cover;
	}
	
	main.works_list .content01 > .inner > ul.inner > li > a:hover figure img{
		-webkit-transition: 0.3s ease-in-out;
		-o-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
		-webkit-transform: scale(1.2);
		-ms-transform: scale(1.2);
		transform: scale(1.2);
		opacity: 1;
		}

		main.works_list .content01 > .inner > ul.inner > li > a div.title{
			display: block;
			font-size: 12px;
			margin: 8px 0 0 0;
		}


/*実績紹介一覧 ここまで*/



/*実績詳細*/

main.works_detail{

}


main.works_detail .content01{
	width: 100%;
    margin: 80px auto 80px;
}


main.works_detail .content01 > .inner{
width: 1024px;
margin: 0 auto;
}


main.works_detail .content01 > .inner > .inner{
	display: flex;
	margin: 30px auto 0;
	flex-wrap: wrap;
	width: 96%;
}

main.works_detail .content01 > .inner > .inner > .left{
	margin: 0 4% 0 0;
	width: 63%;
}

main.works_detail .content01 > .inner > .icon_box{
	display: flex;
	align-items:
	center;
	margin: 0 0 20px 0;
}

/*
main.works_detail .content01 > .inner > .icon_box .icon01{
			font-size: 14px;
    background: #09a1ab;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}

main.works_detail .content01 > .inner > .icon_box .icon02{
			font-size: 14px;
    background: #ce2323;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}


main.works_detail .content01 > .inner > .icon_box .icon03{
			font-size: 14px;
    background: #09659c;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}


main.works_detail .content01 > .inner > .icon_box .icon04{
			font-size: 14px;
    background: #aa7131;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}
*/


main.works_detail .content01 > .inner > .icon_box > .date{
    display: block;
    color: #222;
    border-bottom: 1px #333 solid;
}







main.works_detail .content01 > .inner > .inner > .left > .photo{
	/*display: flex;*/
	margin: 0px 0 0 0;
}

main.works_detail .content01 > .inner > .inner > .left > .photo > figure{
	display: block;
	color: #222;
	width: 100%;
	line-height: 0;
	margin: 0px 0 36px 0;
	}

main.works_detail .content01 > .inner > .inner > .left > .photo > figure > a{
	overflow: hidden;
	display: block;
	line-height: 0;
}

main.works_detail .content01 > .inner > .inner > .left > .photo > figure > a > img{
	transition: 0.5s ease-in-out;
	width: 100%;
	border: 1px rgba(98,180,185,0.5) solid;
}







main.works_detail .content01 > .inner > .inner > .right{width: 33%;}

main.works_detail .content01 > .inner > .inner > .right > .sentence{display: block;color: #222;margin: 0 0px 0 0;font-size: 14px;}


main.works_detail .content01 > .inner > .inner > .right > .sentence dl{
	margin: 0px 0px 0px 0;
	padding: 0 0 0px 0;
	/* border-bottom: 1px #26863b solid; */
	text-align: justify;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  }
  main.works_detail .content01 > .inner > .inner > .right > .sentence dl:last-child dt{
	border-bottom: none;
  }
  main.works_detail .content01 > .inner > .inner > .right > .sentence dl:last-child dd{
	border-bottom: none;
  }
  
  
  main.works_detail .content01 > .inner > .inner > .right > .sentence dl dt{
    margin: 0px 0px 0px 0;
    padding: 16px 16px 16px 16px;
    width: 20%;
    min-width: 120px;
    background: #62b4b9;
    color: #fff;
    border-bottom: 1px #f1f1f1 solid;
  }
  
  main.works_detail .content01 > .inner > .inner > .right > .sentence dl dd{
    margin: 0px 0px 0px 0;
    padding: 16px 16px 16px 16px;
    width: 80%;
    background: #f1f1f1;
    border-bottom: 1px #0a2527 solid;
    word-break: break-all;
  }
  
  



main.works_detail .content01 > .inner > .inner > .right > .bt_area{
	display: flex;
	/* width: 340px; */
	margin: 20px 0 0 auto;
	justify-content: flex-end;
}



main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link{
	width: auto;
	    margin: 0 0 0 0px;
	    text-align: center;
}
main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 10px 5px 10px;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
	font-size: 14px;
}
main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link > a:hover{
	color: #fff;
	background: #333;
}

main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link > a > i{

}





main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf{
	width: auto;
	    margin: 0 0 0 20px;
	    text-align: center;
}
main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a{
	color: #333;
	display: block;
	background: #ffffff;
	padding: 5px 10px 5px 10px;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
	font-size: 14px;
	border: 1px #333 solid;
}
main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a:hover{
	color: #fff;
	background: #333;
}

main.works_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a > i{

}









main.works_detail .content01 > .inner > .inner > .bt_area02{
	display: flex;
	width: 700px;
	margin: 0 auto;
	justify-content: center;
}





main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_back{
	width: 130px;
	margin: 30px;
	text-align: center;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 0 5px 0;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
		border: 2px #333 solid;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a:hover{
	color: #333;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #333 solid;
	box-sizing:border-box;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a > i{
margin: 0 10px 0 0;
}















main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous{
	width: 200px;
	margin: 30px;
	text-align: center;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 0 5px 0;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
		border: 2px #333 solid;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a:hover{
	color: #333;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #333 solid;
	box-sizing:border-box;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a > i{
margin: 0 10px 0 0;
}









main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_next{
	width: 200px;
	margin: 30px;
	text-align: center;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_next > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 0 5px 0;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
		border: 2px #333 solid;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_next > a:hover{
	color: #333;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #333 solid;
	box-sizing:border-box;
}

main.works_detail .content01 > .inner > .inner > .bt_area02 > .bt_next > a > i{
margin: 0 10px 0 0;
}



main.works_detail .content01 > .inner > .inner > .photo_block{
display: flex;
/* justify-content: space-between; */

}

main.works_detail .content01 > .inner > .inner > .photo_block figure{
	width: calc(98% / 5);
    margin: 0 8px 0 0;

}

	main.works_detail .content01 > .inner > .inner > .photo_block figure a{
		width: 100%;
			display: block;
			}
		
			main.works_detail .content01 > .inner > .inner > .photo_block figure a img{
				width: 100%;
					display: block;
					}




/*実績詳細　ここまで*/



















/*リクルート*/

main.recruit{
    margin: 80px 0 120px 0;
}

main.recruit .content01{
	width: 100%;
    margin: 40px 0 40px 0;
}

main.recruit .content01 > .inner{
	width: 1024px;
	    margin: 0 auto;
			position: relative;
}


main.recruit .content01 > .inner > .sentence{
	margin: 0 0 40px 0;
	    font-size: 16px;
	    margin: 30px auto 30px auto;
	    width: 96%;
}
main.recruit .content01 > .inner > .sentence > p{
    margin: 0px 0px 20px 0;
}

main.recruit .content01 > .inner > .message{
	margin: 0 0 40px 0;
	    font-size: 24px;
	    margin: 30px auto 30px auto;
	    width: 96%;
			    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}






main.recruit .content01 > .inner > .inner{
margin: 20px auto 40px;
	width: 96%;
}

main.recruit .content01 > .inner > .inner > dl{
	display: flex;
	/*border: 1px #333 solid;*/
	border-top: none;
	position: relative;
}


main.recruit .content01 > .inner > .inner > dl > dt{
	color: #333;
	background: #eee;
	width: 240px;
	padding: 16px 32px;
	border-left: 1px #9c9c9c solid;
	border-bottom: 1px #9c9c9c solid;
}

main.recruit .content01 > .inner > .inner > dl:first-child > dt{
	border-top: 1px #9c9c9c solid;
}

main.recruit .content01 > .inner > .inner > dl > dd{
	width: 960px;
	padding: 16px 16px 16px 30px;
	border-right: 1px #9c9c9c solid;
	border-bottom: 1px #9c9c9c solid;
}
main.recruit .content01 > .inner > .inner > dl:first-child > dd{
    border-top: 1px #9c9c9c solid;
}
main.recruit .content01 > .inner > .inner > dl:nth-child(even) > dd{
        background: linear-gradient(15deg, #ffffff, #e8fdff);
}

main.recruit .content01 > .inner > .inner > dl > dd > dl{
	display: flex;
	    border-bottom: 1px #2ea4ad dashed;
	    padding: 0px 0 16px;
	    margin: 0 0 16px;
}

main.recruit .content01 > .inner > .inner > dl > dd > dl > dt{
	color: #333;
	font-weight: bold;
	width: 125px;
}

/*main.recruit .content01 > .inner > .inner > dl > dd > dl > dt:first-of-type{

}*/

main.recruit .content01 > .inner > .inner > dl > dd > dl > dd{
	    padding: 0 0 0 85px;
}













main.recruit .content02{
	width: 100%;
    margin: 40px 0 40px 0;
}

main.recruit .content02 > .inner{
	width: 1024px;
	    margin: 0 auto;
			position: relative;
}


main.recruit .content02 > .inner > .inner{
	display: flex;
	position: relative;
	/*margin: 20px 0 0 0;*/
	margin: 20px auto 40px;
    font-size: 16px;
    width: 96%;
}




main.recruit .content02 > .inner > .inner > dl{
	margin: 0 2% 0px 0;
	font-size: 16px;
	width: 58%;
}
main.recruit .content02 > .inner > .inner > dl > dt{
	margin: 0px 0px 20px 0;
	font-size: 20px;
	font-weight: bold;
	color: #333;
	background: #eaf8f9;
	padding: 10px;
}
main.recruit .content02 > .inner > .inner > dl > dd{

}


main.recruit .content02 > .inner > .inner > figure{
width: 40%;

}
main.recruit .content02 > .inner > .inner > figure img{
width: 100%;
}




.bt_recrui_contact {
    background: #333;
    transition: 0.5s ease-in-out;
    position: relative;
    padding: 10px 0 10px 0px;
    width: 300px;
    margin: 0 auto;
}

.bt_recrui_contact:hover {
    transition: 0.5s ease-in-out;
    background: #2dbbc4;
}


.bt_recrui_contact a {
    display: block;
    color: #fff;
    text-align: center;
    font-size: 16px;
}



/*リクルート*/



































/*新着情報*/

main.news_list{
	width: 100%;
}


main.news_list .content01{
	width: 100%;
    margin: 80px auto 80px;
}

main.news_list .content01 > .inner{
width: 1024px;
margin: 0 auto;
}

main.news_list .content01 > .inner > ul.inner{
    margin: 40px 0 80px 0;
}

main.news_list .content01 > .inner > ul.inner > li{
	display: flex;
  margin: 40px 0 40px 0;
}

main.news_list .content01 > .inner > ul.inner > li .left{
	margin: 0 40px 0 0;
	width: 245px;
}

main.news_list .content01 > .inner > ul.inner .icon_box{
	display: flex;
	align-items:center;
	margin: 0 0 20px 0;
}

main.news_list .content01 > .inner > ul.inner .icon_box > .icon01{
    font-size: 14px;
    background: #09a1ab;
    color: #fff;
    border-radius: 2px;
    text-align: center;
    padding: 0px 15px 0px 15px;
    display: block;
    margin: 0 20px 0 0;
}
main.news_list .content01 > .inner > ul.inner .icon_box > .icon02{
    font-size: 14px;
    background: #aa7131;
    color: #fff;
    border-radius: 2px;
    text-align: center;
    padding: 0px 15px 0px 15px;
    display: block;
    margin: 0 20px 0 0;
}

main.news_list .content01 > .inner > ul.inner .icon_box > .icon03{
    font-size: 14px;
    background: #09659c;
    color: #fff;
    border-radius: 2px;
    text-align: center;
    padding: 0px 15px 0px 15px;
    display: block;
    margin: 0 20px 0 0;
}

main.news_list .content01 > .inner > ul.inner .icon_box > .icon04{
    font-size: 14px;
    background: #ce2323;
    color: #fff;
    border-radius: 2px;
    text-align: center;
    padding: 0px 15px 0px 15px;
    display: block;
    margin: 0 20px 0 0;
}


main.news_list .content01 > .inner > ul.inner .icon_box > .date{display: block;color: #222;}



main.news_list .content01 > .inner > ul.inner > li figure{
	display: block;color: #222;width: 245px;
line-height: 0;}

main.news_list .content01 > .inner > ul.inner > li figure img{width: 100%;}


main.news_list .content01 > .inner > ul.inner > li .right{
width: 739px;
}
main.news_list .content01 > .inner > ul.inner > li .right > .sentence{
	font-size: 14px;
	    width: 96%;
	    margin: 0 auto 20px;
}
main.news_list .content01 > .inner > ul.inner > li .right > .bt{margin: 20px 0 0 0;}

main.news_list .content01 > .inner > ul.inner > li .right > .bt a{
	background: #ffffff;
	    border: 2px #333 solid;
	    color: #333;
	    padding: 5px 0 5px 0px;
	    font-size: 14px;
	    text-align: center;
	    display: block;
	    position: relative;
	    width: 200px;
	    font-weight: bold;
	    transition: 0.5s ease-in-out;
}
main.news_list .content01 > .inner > ul.inner > li .right > .bt a:hover{
background: #333;
border: 2px #333 solid;
color: #fff;
transition: 0.5s ease-in-out;
}

main.news_list .content01 > .inner > ul.inner > li .right > .bt > a > i{
	color: #333;
	font-size: 18px;position: absolute;top: 8px;left: 10px;transition: 0.5s ease-in-out;
}


main.news_list .content01 > .inner > ul.inner > li .right > .bt > a:hover > i{
	color: #fff;
	}



/*新着情報ここまで*/




























/*新着情報詳細*/


main.news_detail{

}


main.news_detail .content01{
	width: 100%;
    margin: 80px auto 80px;
}


main.news_detail .content01 > .inner{
width: 1024px;
margin: 0 auto;
}


main.news_detail .content01 > .inner > .inner{
	display: flex;
	margin: 30px auto 0;
	flex-wrap: wrap;
	width: 96%;
}

main.news_detail .content01 > .inner > .inner > .left{
	margin: 0 2% 0 0;
	    width: 43%;
}

main.news_detail .content01 > .inner > .icon_box{
	display: flex;
	align-items:
	center;
	margin: 0 0 20px 0;
}


main.news_detail .content01 > .inner > .icon_box .icon01{
			font-size: 14px;
    background: #09a1ab;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}

main.news_detail .content01 > .inner > .icon_box .icon02{
			font-size: 14px;
    background: #ce2323;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}


main.news_detail .content01 > .inner > .icon_box .icon03{
			font-size: 14px;
    background: #09659c;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}


main.news_detail .content01 > .inner > .icon_box .icon04{
			font-size: 14px;
    background: #aa7131;
			color: #fff;
			border-radius: 2px;
			text-align: center;
			padding: 0px 15px 0px 15px;
			display: block;
			margin: 0 20px 0 0;
}



main.news_detail .content01 > .inner > .icon_box > .date{
	display: block;
	color: #222;
}







main.news_detail .content01 > .inner > .inner > .left > .photo{
	display: flex;
	margin: 0px 0 0 0;
}

main.news_detail .content01 > .inner > .inner > .left > .photo > figure{
	display: block;
	    color: #222;
	    width: 100%;
	    line-height: 0;
		}

main.news_detail .content01 > .inner > .inner > .left > .photo > figure > a{
	overflow: hidden;
	display: block;
	line-height: 0;
}

main.news_detail .content01 > .inner > .inner > .left > .photo > figure > a > img{
	transition: 0.5s ease-in-out;
	width: 100%;
}







main.news_detail .content01 > .inner > .inner > .right{
width: 55%;
}

main.news_detail .content01 > .inner > .inner > .right > .sentence{display: block;color: #222;margin: 0 0px 0 0;font-size: 14px;}


main.news_detail .content01 > .inner > .inner > .right > .bt_area{
	display: flex;
	/* width: 340px; */
	margin: 20px 0 0 auto;
	justify-content: flex-end;
}



main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link{
	width: auto;
	    margin: 0 0 0 0px;
	    text-align: center;
}
main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 10px 5px 10px;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
	font-size: 14px;
}
main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link > a:hover{
	color: #fff;
	background: #333;
}

main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_link > a > i{

}





main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf{
	width: auto;
	    margin: 0 0 0 20px;
	    text-align: center;
}
main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a{
	color: #333;
	display: block;
	background: #ffffff;
	padding: 5px 10px 5px 10px;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
	font-size: 14px;
	border: 1px #333 solid;
}
main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a:hover{
	color: #fff;
	background: #333;
}

main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a > i{

}










main.news_detail .content01 > .inner > .inner > .bt_area02{
	display: flex;
	width: 700px;
	margin: 0 auto;
	justify-content: center;
}





main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_back{
	width: 130px;
	margin: 30px;
	text-align: center;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 0 5px 0;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
		border: 2px #333 solid;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a:hover{
	color: #333;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #333 solid;
	box-sizing:border-box;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a > i{
margin: 0 10px 0 0;
}















main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous{
	width: 200px;
	margin: 30px;
	text-align: center;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 0 5px 0;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
		border: 2px #333 solid;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a:hover{
	color: #333;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #333 solid;
	box-sizing:border-box;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a > i{
margin: 0 10px 0 0;
}









main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_next{
	width: 200px;
	margin: 30px;
	text-align: center;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_next > a{
	color: #fff;
	display: block;
	background: #333;
	padding: 5px 0 5px 0;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
		border: 2px #333 solid;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_next > a:hover{
	color: #333;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #333 solid;
	box-sizing:border-box;
}

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_next > a > i{
margin: 0 10px 0 0;
}








/*新着情報詳細*/






























/*製品紹介*/


main.product{
	width: 1024px;
	display: flex;
	margin: 40px auto 0;
}


main.product > .right{
	width: 890px;
	    display: flex;
	    flex-wrap: wrap;
}


main.product .content01{
	margin: 0px 30px 60px 0;
	    width: 430px;
}

main.product .content01:nth-child(2n){
	margin-right: 0;
}

main.product .content01{
	margin: 0px 30px 60px 0;
	    width: 430px;
}

main.product .content01 > .inner{
	margin: 0px auto;
	display: flex;
}


main.product .content01 > .inner > figure{
    width: 500px;
}

main.product .content01 > .inner > figure img{
	width: 100%;
}


main.product .content01 > .inner > figure > figcaption:nth-of-type(1){
margin: 10px 0 10px 0;
}






/*製品紹介*/















/*製品一覧*/


main.product_list{
	width: 1024px;
	display: flex;
	margin: 60px auto 0;
}


main.product_list > .right{
	width: 890px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}


main.product_list .content01{
	margin: 0px 30px 60px 0;
	width: 100%;
	background: linear-gradient(#FFF, #e3e3e3);
	padding: 20px;
	border: 1px #e3e3e3 solid;
}


main.product_list .content01 > .inner{
	margin: 0px auto;
	display: flex;
}



main.product_list .content01 > .inner > figure{
	width: 250px;
	    margin: 0 20px 0 0;
}

main.product_list .content01 > .inner > .sentence{
	font-size: 16px;
	width: 620px;
}

main.product_list .content01 > .inner > figure img{
	width: 100%;
	padding: 5px;
	box-shadow: 1px 1px 1px #2222;
	border: 1px solid #CCC;
}

/*製品一覧*/














/*製品詳細*/

main.product_detail{
	width: 1024px;
	display: flex;
	margin: 60px auto 0;
}


main.product_detail > .right{
	width: 890px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}


main.product_detail .content01{
	margin: 0px 30px 60px 0;
	width: 100%;
	background: linear-gradient(#FFF, #e3e3e3,#fff);
	padding: 20px;
	border: 1px #e3e3e3 solid;
}


main.product_detail .content01 > .inner{
	margin: 0px auto;
	display: flex;
	flex-wrap: wrap;
}


main.product_detail .content01 > .inner > .photo{
	margin: 0px auto;
	    display: flex;
	    flex-wrap: wrap;
}


main.product_detail .content01 > .inner > .photo > figure{
	width: 49.5%;
	margin: 0 1% 0 0;
}

main.product_detail .content01 > .inner > .photo > figure:nth-child(2n){
margin-right: 0;
}


main.product_detail .content01 > .inner > .photo > figure > img{
	width: 100%;
    box-shadow: 0px 1px 6px #919cb7;
}


main.product_detail .content01 > .inner > .sentence{
	font-size: 16px;
	width: 95%;
	margin: 20px auto 0;
	line-height: 1.6em;
	letter-spacing: 0.05em;
}

main.product_detail .content01 > .inner > figure img{
	width: 100%;
	padding: 5px;
	box-shadow: 1px 1px 1px #2222;
	border: 1px solid #CCC;
}






/*製品詳細ここまで*/





















/*お問い合わせ*/


main.contact{
    margin: 80px 0 120px 0;
}

main.contact > .content01{
	display: flex;
	width: 1024px;
	margin: 0 auto;
	flex-wrap: wrap;
}



main.contact > .content01 .privacy_box{
	border: 1px #d2d2d2 solid;
	margin: 20px 0 0 0;
	padding: 20px;
	width: 100%;
}

main.contact > .content01 .privacy_box .sentence{

}

main.contact > .content01 .privacy_box .sentence p{
    font-size: 16px;
}

main.contact > .content01 .privacy_box .sentence p a{
	color: #333;
	font-weight: bold;
	transition: 0.5s ease-in-out;
}
main.contact > .content01 .privacy_box .sentence p a:hover{
	color: #28c2f2;
	font-weight: bold;
	transition: 0.5s ease-in-out;
}

main.contact > .content01 .privacy_box .sentence #check_area{

}

main.contact > .content01 .privacy_box .sentence #check_area #check{

}

main.contact > .content01 .privacy_box .sentence #check_area label{

}







main.contact > .content01 form.inner{
	margin: 20px auto 0;
	    width: 70%;
}

main.contact > .content01 form.inner dl{
	display: flex;
	    border-top: 1px #d2d2d2 dashed;
	    align-items: center;
	    padding: 20px 0 20px;
}




main.contact > .content01 form.inner dl:nth-child(even){
    background: linear-gradient(15deg, #ffffff, #e8fdff);
}




main.contact > .content01 form.inner dl:last-of-type{
border-bottom: 1px #d2d2d2 dashed;
}



main.contact > .content01 form.inner dl dt{
	width: 220px;
	padding: 0px 0 0px 0;
	margin: 0 0 0 auto;
}




/*main.contact > .content01 form.inner dl dt::before{
    content: "任意";
    padding: 2px;
    color: #D01C01;
    font-size: 12px;
    border-radius: 5px;
    vertical-align: middle;
    margin: 0px 0 0px 0;
    border: 1px #D01C01 solid;
    box-sizing: border-box;
    font-weight: bold;
		background: #fff;
}*/


main.contact > .content01 form.inner dl dt.required::before{
	content: "必須"!important;
	color: #fff!important;
	background: #333!important;
	padding: 2px;
	font-size: 12px;
	border-radius: 5px;
	vertical-align: middle;
	margin: 0px 0 0px 0;
	border: 1px #333 solid;
	box-sizing: border-box;
	font-weight: bold;
	}








main.contact > .content01 form.inner dl dd{
	margin: 0 auto 0 0;
	width: 460px;
	padding: 0;
}

main.contact > .content01 form.inner dl > dd > input[type="text"]{
	width: 100%;
	padding: 0 0 0 10px;
	font-size: 16px;
}

main.contact > .content01 form.inner dl:nth-child(5) > dd > input[type="text"]{width: 50%;}




main.contact > .content01 form.inner dl > dd > textarea{
		width: 100%;
		padding: 10px;
		font-size: 16px;
}



main.contact > .content01 form.inner dl:nth-child(1) dd{
display: flex;
}

main.contact > .content01 form.inner dl dd > div{

}
main.contact > .content01 form.inner dl dd > div:nth-child(1){
margin: 0 40px 0 0;
}

main.contact > .content01 form.inner dl dd > div:nth-child(2){

}

main.contact > .content01 form.inner dl dd > div > input{

}
main.contact > .content01 form.inner dl dd > div > label{

}







#check_area{
    margin: 20px 0 0 40px;
}
#check_area #check{
    margin: 0 20px 0 0;
		    vertical-align: middle;
}

#check_area label{
    font-size: 16px;
		    vertical-align: middle;
				cursor: pointer;
		   transition: 0.5s ease-in-out;
}
#check_area label:hover{
	opacity: 0.5;
	    transition: 0.5s ease-in-out;
}

#check_send[disabled] {
opacity: 0.3!important;
pointer-events : none;
position: relative;
}




























/*入力内容確認*/

main.contact > .content02 {
    width: 1024px;
    margin: 0 auto;
    flex-wrap: wrap;
}


main.contact > .content02 form.inner{
	margin: 20px auto 0;
	width: 60%;
}

main.contact > .content02 form.inner dl{
	display: flex;
	    border-top: 1px #d2d2d2 dashed;
	    align-items: center;
	    padding: 20px 0 20px;
}

main.contact > .content02 form.inner dl:last-of-type{
border-bottom: 1px #d2d2d2 dashed;
}



main.contact > .content02 form.inner dl dt{
	width: 350px;
	padding: 0px 0 0px 0;
	margin: 0 0 0 20px;
}

/*main.contact > .content02 form.inner dl dt::before{
    content: "任意";
    padding: 2px;
    color: #D01C01;
    font-size: 12px;
    border-radius: 5px;
    vertical-align: middle;
    margin: 0px 0 0px 0;
    border: 1px #D01C01 solid;
    box-sizing: border-box;
    font-weight: bold;
		background: #fff;
}

main.contact > .content02 form.inner dl dt.required::before{
    content: "必須"!important;
  	color: #fff!important;
		background: #D01C01!important;
	}*/







main.contact > .content02 form.inner dl dd{
	margin: 0 auto 0 0;
	width: 800px;
	padding: 0;
}

main.contact > .content02 form.inner dl > dd > input[type="text"]{
	width: 100%;
	padding: 5px;
	font-size: 16px;
}

main.contact > .content02 form.inner dl:nth-child(6) > dd > input[type="text"]{
width: 15%;
}




main.contact > .content02 form.inner dl > dd > textarea{
		width: 100%;
		padding: 10px;
		font-size: 16px;
}



main.contact > .content02 form.inner dl:nth-child(1) dd{
display: flex;
}

main.contact > .content02 form.inner dl dd > div{

}
main.contact > .content02 form.inner dl dd > div:nth-child(1){
margin: 0 40px 0 0;
}

main.contact > .content02 form.inner dl dd > div:nth-child(2){

}

main.contact > .content02 form.inner dl dd > div > input{

}
main.contact > .content02 form.inner dl dd > div > label{

}




/*入力内容確認ここまで*/


















/*ボタンエリア*/
main.contact > .content01 form.inner .bt_area{
	width: 500px;
	    margin: 40px auto 80px;
	    display: flex;
}

main.contact > .content01 form.inner .bt_area input{
	width: 500px;
	    margin: 40px auto 80px;
	    display: flex;
}


main.contact > .content01 form.inner .bt_area input#reset{
	width: 240px;
			margin: 0px 20px 0 0px;
			cursor: pointer;
			padding: 10px 20px;
		border: 1px #333 solid;
		border-radius: 5px;
		box-shadow: 1px 1px 2px #333;
		color: #333;
		font-weight: bold;
		font-size: 16px;
		display: block;
		text-align: center;
		transition: 0.5s ease-in-out;
		background: #fff;
}
main.contact > .content01 form.inner .bt_area input#reset:hover{
	color: #fff;
	background: #333;
	    transition: 0.5s ease-in-out;
}





main.contact > .content01 form.inner .bt_area input#check_send{
	width: 240px;
			margin: 0px 20px 0 0px;
			cursor: pointer;
			padding: 10px 20px;
		border: 1px #333 solid;
		border-radius: 5px;
		box-shadow: 1px 1px 2px #333;
		color: #333;
		font-weight: bold;
		font-size: 16px;
		display: block;
		text-align: center;
		transition: 0.5s ease-in-out;
		background: #fff;
}
main.contact > .content01 form.inner .bt_area input#check_send:hover{
	color: #fff;
	background: #333;
	    transition: 0.5s ease-in-out;
}









/*入力内容確認ボタン*/

main.contact > .content02 form.inner .bt_area{
	width: 500px;
	    margin: 40px auto 80px;
	    display: flex;
}

main.contact > .content02 form.inner .bt_area input{
	width: 500px;
	    margin: 40px auto 80px;
	    display: flex;
}


main.contact > .content02 form.inner .bt_area input#back{
	width: 240px;
			margin: 0px 20px 0 0px;
			cursor: pointer;
			padding: 10px 20px;
		border: 1px #333 solid;
		border-radius: 5px;
		box-shadow: 1px 1px 2px #333;
		color: #333;
		font-weight: bold;
		font-size: 16px;
		display: block;
		text-align: center;
		transition: 0.5s ease-in-out;
		background: #fff;
}
main.contact > .content02 form.inner .bt_area input#back:hover{
	color: #fff;
	background: #333;
	    transition: 0.5s ease-in-out;
}




main.contact > .content02 form.inner .bt_area input#send{
	width: 240px;
			margin: 0px 20px 0 0px;
			cursor: pointer;
			padding: 10px 20px;
		border: 1px #333 solid;
		border-radius: 5px;
		box-shadow: 1px 1px 2px #333;
		color: #333;
		font-weight: bold;
		font-size: 16px;
		display: block;
		text-align: center;
		transition: 0.5s ease-in-out;
		background: #fff;
}
main.contact > .content02 form.inner .bt_area input#send:hover{
	color: #fff;
	background: #333;
	    transition: 0.5s ease-in-out;
}

/*入力内容確認ボタンここまで*/



/*ボタンエリアここまで*/







/*送信完了*/


main.contact > .content03 {
    width: 1024px;
    margin: 0 auto;
    flex-wrap: wrap;
}


main.contact > .content03 > .inner{
	margin: 40px auto 40px;
	    width: 800px;
}

main.contact > .content03 > .inner figure{
	margin: 20px auto;
	width: 130px;
}
main.contact > .content03 > .inner figure img{
margin: 0 auto;
width: 100%;
}

main.contact > .content03 > .inner figcaption{
	text-align: center;
	color: #333;
}

main.contact > .content03 > .inner .sentence{
	margin: 0 auto;
	    width: 57%;
		}


main.contact > .content03 > .inner .bt_pagetop{

		}

		main.contact > .content03 > .inner .bt_pagetop a{
			width: 240px;
			    margin: 20px auto 0px;
			    cursor: pointer;
			    padding: 10px 20px;
			    border: 1px #333 solid;
			    border-radius: 5px;
			    box-shadow: 1px 1px 2px #333;
			    color: #333;
			    font-weight: bold;
			    font-size: 16px;
			    display: block;
			    text-align: center;
			    transition: 0.5s ease-in-out;
			    background: #fff;
				}

				main.contact > .content03 > .inner .bt_pagetop a:hover{
					color: #fff;
					    background: #333;
					    transition: 0.5s ease-in-out;
						}








/*送信完了ここまで*/



/*お問い合せここまで*/




























/*個人情報保護方針*/


main.sitemap{
    margin: 80px 0 120px 0;
}



main.sitemap > .content01 > ul{
	width: 1024px;
	margin: 40px auto 40px;
	display: flex;
	flex-wrap: wrap;
	background: #efefef;
	padding: 24px;
}


main.sitemap > .content01 > ul > li{
	border-bottom: 2px #333 solid;
	position: relative;
	width: 33%;
	}

main.sitemap > .content01 > ul > li > a{
    color: #333;
    font-size: 14px;
    /* font-weight: bold; */
    display: block;
    padding: 16px 0 16px 50px;
    transition: 1s ease-in-out;
}

main.sitemap > .content01 > ul > li > a:hover{
    display: block;
    padding: 16px 0 16px 75px;
		transition: 0.3s ease-in-out;
}



main.sitemap > .content01 > ul > li:hover > a::before {
	content: "";
	background: #2eafb8;
	width: 15px;
	height: 15px;
	display: inline-block;
	margin: 0 15px 0 15px;
	position: absolute;
	top: 20px;
	left: 0;
}

main.sitemap > .content01 > ul > li > a::before {
	content: "";
	background: #333;
	width: 15px;
	height: 15px;
	display: inline-block;
	margin: 0 15px 0 15px;
	position: absolute;
	top: 20px;
	left: 0;
}


main.sitemap > .content01 > ul > li > ul{
	padding: 0px 0 40px 50px;
	border-top: 2px #333 solid;
}


main.sitemap > .content01 > ul > li > ul > li{
	border-bottom: 2px #333 solid;
	position: relative;
}



main.sitemap > .content01 > ul > li > ul > li > a{
    color: #333;
    font-size: 14px;
    /* font-weight: bold; */
    padding: 15px 0 15px 50px;
    display: block;
    transition: 1s ease-in-out;
}
main.sitemap > .content01 > ul > li > ul > li > a::before{
	content: "";
	background: #333;
	width: 10px;
	height: 10px;
	display: inline-block;
	margin: 0 15px 0 15px;
	position: absolute;
	top: 20px;
	left: 0;
}


main.sitemap > .content01 > ul > li > ul > li:hover > a{
    font-size: 14px;
    /*font-weight: bold;*/
		padding: 15px 0 15px 75px;
transition: 0.3s ease-in-out;
}

main.sitemap > .content01 > ul > li > ul > li:hover > a::before{
	content: "";
	background: #2eafb8;
	width: 10px;
	height: 10px;
	display: inline-block;
	margin: 0 15px 0 15px;
	position: absolute;
	top: 20px;
	left: 0;
}



/*個人情報保護方針 upto*/














/*プライバシーポリシー*/

.privacy{
	    margin: 80px 0 120px 0;
}

.privacy > .content01{

}

.privacy > .content01 > .inner{
	margin: 40px auto;
	position: relative;
	    width: 1024px;
}

.privacy > .content01 > .inner > .inner{
	width: 96%;
	margin: 0 auto;
}


.privacy > .content01 > .inner > .inner article{
	margin: 40px auto;
	position: relative;
	    width: 1024px;
}


.privacy > .content01 > .inner > .inner dl{

}

.privacy > .content01 > .inner > .inner dl dt{
font-weight: bold;
}

.privacy > .content01 > .inner > .inner dl dd{

}





/*プライバシーポリシーここまで*/





















/*フッター*/
footer{
	width: 100%;
	margin: 40px 0 40px 0;
	position: relative;
}






#footer_top{
	width: 100%;
	margin: 0px 0 0px 0;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 0px 0 0px 0;
	position: relative;
	background: #333;
}


#footer_top > .photo_area{
	display: flex;
	width: 100%;
	margin: 0 auto;
	justify-content: center;
	align-items: center;
}
#footer_top > .photo_area figure{
    width: 15%;
}
#footer_top > .photo_area figure img{
    width: 100%;
}


#footer_top > .inner{
	display: flex;
	border-top: none;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	width: 730px;
	margin: 0px auto;
}



#footer_top > .inner > figure{
	width: 45%;
	    line-height: 0;
	    margin: 20px auto;
}
#footer_top > .inner > figure img:nth-child(1){
width: 100%;
	display: block;
}



#footer_top > .inner > ul{
	margin: 0 auto;
	padding: 30px 0 30px 0;
	position: relative;
	width: 55%;
	/*display: flex;*/
	flex-wrap:  wrap;
}


#footer_top > .inner > ul li{

}



#footer_top > .inner > ul li:nth-child(1){
	font-size: 21px;
	font-weight: bold;
	color: #fff;
	/*width: 200px;*/
}

#footer_top > .inner > ul li:nth-child(2){
	font-size: 14px;
	font-weight: bold;
	color: #fff;
		/*width: 570px;*/
	margin: 0 0 20px 0;
}

#footer_top > .inner > ul li:nth-child(3){
	font-size: 21px;
	font-weight: bold;
	color: #fff;
		/*width: 200px;*/
}

#footer_top > .inner > ul li:nth-child(4){
	font-size: 14px;
	font-weight: bold;
	color: #fff;
		/*width: 570px;*/
		margin: 0 0 20px 0;
}

#footer_top > .inner > ul li:nth-child(5){
	font-size: 21px;
	font-weight: bold;
	color: #fff;
		/*width: 570px;*/
}

#footer_top > .inner > ul li:nth-child(6){
	font-size: 14px;
	font-weight: bold;
	color: #fff;
		/*width: 570px;*/
}








#footer_middle{
	background: #f1f1f1;
	display: flex;
	align-items: center;
	justify-content: center;
	    border-top: 6px #333 solid;
}


nav#footer_nav{
	display: flex;
	padding: 20px 0 20px 0;
	/* width: 78%; */
	margin: 0 2% 0 0;
	/*flex-wrap:  wrap;*/
}
nav#footer_nav > section{
	width: 14%;
	    /*border-right: 1px #333 solid;*/
	    box-sizing: border-box;
}
nav#footer_nav > section:nth-child(1) {
    /*border-left: 1px #333 solid;*/
	width: 65px;
}
nav#footer_nav > section:nth-child(2) {
	width: 75px;
}
nav#footer_nav > section:nth-child(3) {
	width: 75px;
}
nav#footer_nav > section:nth-child(4) {
	width: 75px;
}
nav#footer_nav > section:nth-child(5) {
	width: 75px;
}
nav#footer_nav > section:nth-child(6) {
	width: 75px;
	  /*border-left: 1px #333 solid;*/
}
nav#footer_nav > section:nth-child(7) {
width: 100px;
}
nav#footer_nav > section:nth-child(8) {
width: 125px;
}
nav#footer_nav > section:nth-child(9) {
width: 100px;
}




/*大メニュー*/
nav#footer_nav > section > h2{
	padding: 0px 0 0px 0px;
	border-bottom: 1px #333 dashed;
	width: 85%;
	margin: 0 auto;
}
nav#footer_nav > section > h2 > a{
	font-size: 10px;
	font-weight: normal;
	color: #333;
}

nav#footer_nav > section > h2 > a:hover{
border-bottom: 2px #333 solid;
box-sizing: border-box;
}



/*小メニュー*/
nav#footer_nav > section > ul{
    margin: 20px 0 0 20px;
}

nav#footer_nav > section > ul > li{

}

nav#footer_nav > section > ul > li > a{
	font-size: 12px;
	color: #fff;
}

nav#footer_nav > section > ul > li > a:hover{
	border-bottom: 1px #333 solid;
	box-sizing: border-box;
}

#footer_middle > .footer_logo_area{width: 20%;}
#footer_middle > .footer_logo_area img{
width: 100%;
}






#footer_bottom{
	     background: #333;
}

#footer_bottom_inner{
	display: flex;
	    width: 1024px;
	    margin: 0 auto;
	    padding: 20px 0 20px 0;
			    align-items: center;
}




#footer_bottom_inner .footer_logo{
margin: 0 20px 0 0;
width: 391px;
}

#footer_bottom_inner .footer_logo a{

}

#footer_bottom_inner .footer_logo a:hover{
opacity: 0.5;
transition: 0.5s ease-in-out;
}


#footer_bottom_inner .footer_logo a img{

}

#footer_bottom_inner .footer_address{
    font-size: 14px;
		margin: 0 40px 0 0;
		width: 390px;
}

#footer_bottom_inner .footer_address br{
display: none;
}


#footer_bottom_inner p#copyright{
    font-size: 10px;
    text-align: center;
    width: 100%;
    /* background: #111; */
    color: #fff;
}



/*フッターここまで*/





















		/*ページネイション*/
		.pagination {
			margin: 0px auto 0px;
			/*width: 1024px;*/
			width: 100%;
			padding: 15px 0;
		}
		.pagination_inner {
		    display: flex;
						justify-content: center;
		}
		.pagination_inner li {
		    margin: 0 8px 0 0;
		}
		.pagination_inner li:last-child{
				margin-right: 0;
		}

		.pagination_inner li a {
		    color: #fff;
		    background: #bbbbbb;
		    display: block;
		    padding: 5px 15px 5px 15px;
		    font-size: 16px;
		    transition: 0.3s ease-in-out;
		}

		.pagination_inner li:hover a{
		    background: #333;
				transition: 0.3s ease-in-out;
		}


		.pagination_inner li a.pagination_on{
		    background: #333;
		}


		/*ページネイション*/





/* オブジェクトフィット */
.ofi_cv{
	object-fit: cover;
font-family: 'object-fit: cover;';
height: 100%;
	}
/* オブジェクトフィット ここまで*/







		/*----------------フロートクリア-------------------*/


		.clearfix:after{
		content: "";
		    clear: both!important;
		    display: block;
			}

		/*----------------フロートクリア-------------------*/





