@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;
	border: 1px #ffffff solid;
	font-size: 10px;
	    z-index: 100;
}

#page-top a {
    text-decoration: none;
    width: 90px;
    text-align: center;
    display: block;
    color: #FFFFFF;
    background-color: #1b2952;
    padding-top: 15px;
    padding-right: 0;
    padding-bottom: 15px;
    padding-left: 0;
}
#page-top a i{
    font-size: 16px;
}


/*　　　　　　　　　　　　--ヘッダー--　　　　　　　　　　　　　　　*/
header{
	width: 100%;
	background-size: cover;
	background-position: 100% 60%;
	background: #273d76;
}


#head_inner{
	width: 95%;
	margin: 0px auto 0px;
	position: relative;
	padding: 20px 0px;
	display: flex;
	/* align-items: center; */
	flex-direction: column;
}



#header_logo{
	margin: 0px auto 0 0;
	width: 80%;
}

#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: 0.6em;
	margin: 15px 0px 15px 0!important;
	font-weight: normal;
	color: #fff;
}




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





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

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: #333;
	font-weight: bold;
}

nav#main_nav01 ul li a:hover{
		color: #159ff7;
	border-bottom: 2px #159ff7 solid;
}



nav#main_nav01 ul li a i{
		color: #3857ac;
}



nav#main_nav02{
	margin: 0 0 0 0;
	width: 100%;
}

nav#main_nav02 ul{
    display: flex;
}

nav#main_nav02 ul li{
	transform: skewX(-35deg);
	background: #3753a4;
	transition: 0.5s ease-in-out;
	position: relative;
	padding: 0;
	width: 85%;
	padding: 10px 0 10px 90px;
	margin: 0 auto;
}

nav#main_nav02 ul li i {
    font-size: 35px;
    color: #fff;
    position: absolute;
    transform: skewX(35deg);
    top: 15px;
    left: 30px;
}


nav#main_nav02 ul li span {
    font-weight: bold;
    display: block;
    transform: skewX(35deg);
    transition: 0.5s ease-in-out;
    color: #fff;
}


nav#main_nav02 ul li span:nth-of-type(1) {
    display: block;
    transition: 0.5s ease-in-out;
    font-weight: bold;
    font-size: 0.8em;
    margin: 0 0 0 -15px;
    padding: 0 0 0 0px;
    /* position: absolute; */
    /* top: 0; */
    /* left: 0; */
}

nav#main_nav02 ul li span:nth-of-type(2) {
    display: block;
    transition: 0.5s ease-in-out;
    font-weight: bold;
    font-size: 1.5em;
    line-height: 1em;
    /* position: absolute; */
    /* top: 0; */
    /* left: 0; */
}




nav#main_nav02 ul li a{
    font-size: 14px;
				color: #fff;
}



nav#main_nav02 ul li:nth-child(2) a{
		color: #fff;
}











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


/*モーダル*/
#modal{
  position: fixed;
  top: 0;
  left: auto;
  right: 0;
  z-index: 100;/*これがモーダルのz基準*/
  width: 15%;
}


#bt_open_modal{
  line-height: 0;
  letter-spacing: 0;
  margin: 0% 0% 0% 0%!important;
  right: 0%;
  transition: 1s ease-in-out;
  -webkit-transition: 1s ease-in-out;
  position: relative;
  z-index: 0;
  display: block;
  width: 80%;
}


#bt_open_modal img{
  width: 100%;
  margin: 25% 0 0 0;
  filter: drop-shadow(1px 0.5px 1.5px #111);
}

#modal_area{
	position: absolute;
	z-index: 1;
	background: linear-gradient(0deg, rgb(39, 49, 68), rgba(0, 49, 175, 0.85))!important;
	display: none;
}

.close-modal_area{
  color: #fff;
  display: block;
  position: absolute;
  top: 5%;
  vertical-align: middle;
  bottom: auto;
  left: auto;
  right: 3%;
  height: auto;
  width: 25px;
  font-size: 2em;
  z-index: 1;
  line-height: 0;
}


#modal_logo_area{
	width: 100%;
	position: relative;
	display: flex;
	    align-items: center;
}

#modal_logo{
  width: 40%;
  position: relative;
      padding: 2% 0 2% 2%;
}





.modal-content{
  padding: 6% 0 0 0;
  position: relative;
  z-index: 0;
}


.modal-content ul{
  position: relative;
  z-index: 0;
}

.modal-content ul li{
text-align: center;
position: relative;
z-index: 0;
margin: 0px 0 4% 0px;
}

.modal-content ul li a{
  color: #fff;
  position: relative;
  z-index: 0;
  font-size: 0.9em;
  padding: 0px 0px 0px 0;
}

.modal-content ul li a i{
margin: 0 2% 0 0;
}



.fixed_bt_modal{
  background-color: rgba(35, 13, 60, 0.85)!important;
  padding: 2% 0% 2% 0%!important;
  border-radius: 5px;
  line-height: 0;
  width: 10%!important;
  letter-spacing: 0;
  margin: 0% 0% 0% 0%!important;
  right: 1%;
  transition: 1s ease-in-out;
  -webkit-transition: 1s ease-in-out;
  position: fixed!important;
      z-index: -50!important;
}

.fixed_bt_modal > img{
  width: 70%!important;
  display: block;
  margin: 0 auto!important;
  z-index: -1;
position: relative;
    z-index: -50;
}



.modal_tel_area{

}

.modal_tel_area dl{
    display: flex;
}

.modal_tel_area dl dt{
	color: #3c3c3c;
	    font-size: 0.8em;
	    margin: 0 0% 0 0%;
	    font-weight: bold;
}

.modal_tel_area dl dd{
	color: #0031af;
	font-size: 0.8em;
	font-weight: bold;
}








/*モーダルここまで*/






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










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







/*グローバルナビ*/

#globalNavi{
	background: #f5f5f5;
	display: none;
}

#globalNavi ul{
	width: 1200px;
	    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: 15px 0;
		    transition: 0.5s ease-in-out;
}
#globalNavi ul li:last-child a{
background: #3857ac;
    color: #fff;
		    transition: 0.5s ease-in-out;
}

#globalNavi ul li:last-child a:hover{
	background: #00c9ff;
    color: #fff;
		    transition: 0.5s ease-in-out;
}


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


/*グローバルナビ*/


















main{

}








/*　　　　　　　　　　　　--トップ--　　　　　　　　　　　　　　　*/




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


.mainImage_area01{
position: relative;
display: none;
}



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

.mainImage_area_sp {
	background-color: #F6F6F6;
	display: block;
	position: relative;
}

.mainImage_area_sp > .inner {
	position: absolute;
	    top: 10%;
	    right: 0;
	    left: auto;
	    width: 100%;
	    margin: 0 auto;
	    z-index: 10;
}

.mainImage_area_sp > .inner > span.catch01{
	color: #fff;
	    font-size: 5.5vw;
	    line-height: 1.5em;
	    display: block;
	    position: relative;
	    z-index: 10;
	    text-shadow: 0px -1px 10px #000000, -1px 1px 10px #020202, 1px 3px 10px #000000, 1px 2px 10px #10182d;
	    margin: 0 3% 15px auto;
	    width: 97%;
	    text-align: right;
			    font-weight: bold;
}

.mainImage_area_sp .keyV_sp{
	background-color: #F6F6F6;
	    display: block;
	    position: relative;
}
.mainImage_area_sp .keyV_sp li{
line-height: 0;
}

.mainImage_area_sp .keyV_sp img{
	width: 100%;
}










/*共通ボタン*/





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

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

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

.bt01 a i{

}

.bt01_right{
    margin: 0 7% 0 auto;
}

.bt01_center{
	margin: 0 auto 0 auto;
}





/*共通ボタン*/














/*新着情報ヘッドライン*/
#news_headline{
background: #1b1b1b;
}
#news_headline > .inner{
	width: 100%;
	margin: 0 auto;
	display: flex;
	padding: 10px 0;
	align-items: center;
	flex-direction: column;
}
#news_headline > .inner > h2{
	color: #fff;
	font-size: 0.8em;
	border-bottom: 1px #fff solid;
	padding: 0 0px 0 0;
	width: 95%;
}


#news_headline > .inner > .right{
	padding: 0 0px 0 0px;
	width: 95%;
	/* text-overflow: ellipsis; */
	overflow: hidden;
	/* white-space: nowrap; */
	color: #fff;
	font-size: 14px;
}

#news_headline > .inner > .right > a{
color: #fff;
font-size: 0.8em;
}




/*新着情報ヘッドラインここまで*/







/*製品情報*/
.top_product{


}

.top_product > .inner{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
}

.top_product > .inner > section{
	background: #1b2952;
	    display: flex;
overflow: hidden;
flex-direction: column;
}

.top_product > .inner > section:nth-child(2){
    background: #293f7e;
}

.top_product > .inner > section > .left{
	   /*flex: 1 1 100%;*/
}

.top_product > .inner > section > figure{
	   /*flex: 1 1 100%;*/
		 line-height: 0;
}

.top_product > .inner > section > figure img{
	width: 100%;
}



.top_product > .inner > section > .left > h3{
	color: #fff;
    margin: 10px 0 10px 0;
	font-size: 1.5em;
}




.top_product > .inner > section > .left > .sentence{
	color: #fff;
	margin: 0 0 10px 0;
	    font-size: 1em;
}


.top_product > .inner > section > .left > .bt_to_detail{

}

.top_product > .inner > section > .left > .bt_to_detail a{
	background: #1b2952;
	color: #fff;
	display: block;
	padding: 0px 0px;
	text-align: center;
	width: 200px;
	border: 1px #fff solid;
	transition: 0.5s ease-in-out;
	font-size: 0.8em;
}
.top_product > .inner > section > .left > .bt_to_detail a i{
color: #fff;
}

.top_product > .inner > section > .left > .bt_to_detail a:hover{
    background: #3857ac;
}


.top_product > .inner > section:nth-child(1){
	flex: 1 1 100%;
  border-top: 1px #fff solid;
	border-bottom: 1px #fff solid;
	overflow: hidden;
	padding: 2% 2% 0% 2%;
}

.top_product > .inner > section:nth-child(1) figure{
	flex: 1 1 100%;
	margin: 10px -60px 0 0px;
}





.top_product > .inner > section:nth-child(2){
	flex: 1 1 100%;
    border-bottom: 1px #fff solid;
	    overflow: hidden;
    padding: 2% 2% 0% 2%;
}
.top_product > .inner > section:nth-child(2) .left{

}
.top_product > .inner > section:nth-child(2) figure{
    /*margin: 30px -100px 0 0px;*/
margin: 20px auto;
		width: 80%;
}


.top_product > .inner > section:nth-child(3){
	flex: 1 1 100%;
    border-bottom: 1px #fff solid;
	    overflow: hidden;
    padding: 2% 2% 0% 2%;
}
.top_product > .inner > section:nth-child(3) .left{

}
.top_product > .inner > section:nth-child(3) figure{
	    /*margin: 30px -100px 0 0px;*/
			margin: 20px auto;
			width: 80%;
}


.top_product > .inner > section:nth-child(4){
	flex: 1 1 100%;
    border-bottom: 1px #fff solid;
	    overflow: hidden;
    padding: 2% 2% 0% 2%;
}
.top_product > .inner > section:nth-child(4) .left{

}
.top_product > .inner > section:nth-child(4) figure{
	margin: 30px 0px 0 100px;
	    /* margin: 20px auto; */
	    width: 80%;
}




.top_product > .inner > section:nth-child(5){
	flex: 1 1 100%;
    border-bottom: 1px #fff solid;
	    overflow: hidden;
    padding: 2% 2% 0% 2%;
}
.top_product > .inner > section:nth-child(5) .left{

}
.top_product > .inner > section:nth-child(5) figure{
	    /*margin: 30px -100px 0 0px;*/
margin: 20px auto;
			width: 80%;
}




/*製品情報ここまで*/





/*news & topics*/

.top_news_topics{
background: url(../img/bg_top_news.jpg);
position: relative;
}

/*.top_news_topics::before{
	background: url(../img/ob_top_news01.png);
	background-repeat: no-repeat;
	content: "";
	height: 260px;
	width: 100%;
	position: absolute;
	top: -10px;
	left: -3%;
	z-index: 0;
}*/

/*.top_news_topics::after{
	background: url(../img/ob_top_news02.png);
	background-repeat: no-repeat;
	content: "";
	height: 260px;
	width: 100%;
	position: absolute;
	top: auto;
	bottom: -10px;
	right: -60%;
	left: auto;
}*/


.top_news_topics > .inner{
	width: 90%;
	    margin: 0px auto;
	    padding: 30px 0;
}

.top_news_topics > .inner > h2{
	text-align: center;
	    position: relative;
	    z-index: 10;
	    display: flex;
			align-items: center;
}

.top_news_topics > .inner > h2 div .sp_letter{
	background: #1b2952;
	    color: #fff;
	    padding: 0px 10px;
	    position: relative;
	    margin: 0 15px 0 0;
	    font-size: 36px;
	    font-weight: normal;
}
.top_news_topics > .inner > h2 div .sp_letter::before{
	background: #ffffff;
	content: "";
	transform: rotate(-35deg);
	position: absolute;
	height: 30px;
	width: 100%;
	padding: 10px 0px;
	z-index: -1;
	top: 0px;
	left: 0px;
}

.top_news_topics > .inner > h2 > figure{
width:48%;
margin: 0 2% 0 0;
display: none;
}

.top_news_topics > .inner > h2 > figure img{
width: 100%;
}

.top_news_topics > .inner > h2 > div{
	text-align: left;
	position: relative;
	border-bottom: 4px #ffffff solid;
	width: 100%;
	margin: 0 0 0 30px;
	color: #fff;
}





.top_news_topics > .inner > .inner{
	display: flex;
	flex-direction: column;
	margin: 30px 0 30px 0;
	position: relative;
	z-index: 10;
}


.top_news_topics > .inner > .inner > article{
	margin: 0 0 10px 0;
	width: 100%;
	display: flex;
	background: #fff;
	padding: 10px 10px 0 10px;
	align-items: center;
	flex-direction: column;
}
.top_news_topics > .inner > .inner > article:last-child{
margin-right: 0;
}


.top_news_topics > .inner > .inner > article > .icon_box{
	display: flex;
	    margin: 0;
	    width: 100%;
			align-items: center;
}

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


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

.top_news_topics > .inner > .inner > article > .icon_box > .icon03{
	font-size: 12px;
	    background: #3857ac;
	    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 > .news_title{
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.top_news_topics > .inner > .inner > article > .news_title > a{
	display: block;
	text-overflow: ellipsis;
	overflow: hidden;
	font-size: 14px;
	font-weight: bold;
	color: #3753a4;
	padding: 10px 0 10px 0;
}


/*news & topics*/




















/*私たちの強み*/

.top_tsuyomi{
position: relative;
}



.top_tsuyomi > .inner{
	width: 90%;
	margin: 0px auto;
	padding: 30px 0;
}

.top_tsuyomi > .inner > h2{
	text-align: center;
	    position: relative;
	    z-index: 10;
	    display: flex;
			align-items: center;
}

.top_tsuyomi > .inner > h2 div .sp_letter{
	background: #1b2952;
	    color: #fff;
	    padding: 0px 10px;
	    position: relative;
	    margin: 0 15px 0 0;
	    font-size: 36px;
	    font-weight: normal;
}
.top_tsuyomi > .inner > h2 div .sp_letter::before{
	background: #cccccc;
	content: "";
	transform: rotate(-35deg);
	position: absolute;
	height: 30px;
	width: 100%;
	padding: 10px 0px;
	z-index: -1;
	top: 0px;
	left: 0px;
}

.top_tsuyomi > .inner > h2 > figure{
width:30%;
display: none;
}

.top_tsuyomi > .inner > h2 > figure img{
width: 100%;
}

.top_tsuyomi > .inner > h2 > div{
	text-align: left;
	position: relative;
	border-bottom: 4px #ccc solid;
	width: 450px;
	margin: 0 0 0 30px;
	color: #1b2952;
}





.top_tsuyomi > .inner > .inner{
	display: flex;
	    flex-direction: column;
	    margin: 40px 0 20px 0;
	    position: relative;
	    z-index: 10;
}


.top_tsuyomi > .inner > .inner > article{
margin: 0 0 60px 0;
	width: 100%;
	display: flex;
	background: #fff;
	padding: 0px 0 0 0px;
	align-items: center;
	flex-wrap: wrap;
}


.top_tsuyomi > .inner > .inner > article:nth-child(even){
	margin: 0 0 60px 0;
	width: 100%;
	display: flex;
	flex-direction: row-reverse;
	background: #fff;
	padding: 0px 0 0 0px;
	align-items: center;
	flex-wrap: wrap;
}



.top_tsuyomi > .inner > .inner > article > figure{
    width: 100%;
    position:  relative;
    z-index: 5;
}

.top_tsuyomi > .inner > .inner > article > figure > img{
    width: 100%;
    box-shadow: 0px 1px 5px #4a4a4a;
}

.top_tsuyomi > .inner > .inner > article > .right{
	width: 100%;
	margin: 0 0 0 0px;
	background: #d9f1ff;
	padding: 20px;
	box-shadow: 0px 1px 5px #4a4a4a;
	transition: 0.5s ease-in-out;
	position: relative;
	z-index: 1;
}


/*.top_tsuyomi > .inner > .inner > article > .right::before{
	width: 0;
	    height: 0;
	    border-top: 0px solid transparent;
	    border-right: 0px solid #3753a4;
	    border-bottom: 140px solid transparent;
	    border-left: 120px solid #3753a4;
	    content: "";
	    display: inline-block;
	    position: absolute;
	    top: 0;
	    left: 0;
	    z-index: 0;
}*/


.top_tsuyomi > .inner > .inner > article > .right h3{font-size: 22px;color: #3753a4;}

.top_tsuyomi > .inner > .inner > article > .right dl{

}
.top_tsuyomi > .inner > .inner > article > .right dl dt{
	font-weight: bold;
	font-size: 16px;
	color: #1b2952;
	margin: 0 0 20px 0;
	letter-spacing: 0em;
	}
.top_tsuyomi > .inner > .inner > article > .right dl dd{
	color: #3753a4;
font-size: 14px;
margin: 0 0 20px 0;
}









/*私たちの強みここまで*/















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

.top_google_map {
width: 100%;
height: 500px;
position: relative;
overflow: hidden;
}

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




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















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



















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






/*下層メイン画像*/
 #mainImage02{
width: 100%;
background: url(../img/bg_slider.jpg);
 }
 #mainImage02 > .inner{
	 width: 100%;
	 margin: 0 auto;
	 position: relative;
	 line-height: 0;
	}
 #mainImage02 > .inner > h2{
	 font-size: 2em;
	 position: absolute;
	 top: auto;
	 left: 0%;
	 right: 0%;
	 bottom: 2%;
	 color: #fff;
	 width: 90%;
	 margin: 0 auto;
	 text-align: center;
	 text-shadow: 0px -1px 10px #000000, -1px 1px 10px #020202, 1px 3px 10px #000000, 1px 2px 10px #10182d;
}

 #mainImage02 > .inner > img{
	 /*width: 1200px;
	 margin: 0 0 0 0;
	 display: block;*/
	 width: 250%;
	 margin: 0 0 0 -80%;
	 display: block;
	}


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




/*タイトル装飾*/
h2.title01{
	width: 1200px;
	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: 16px;
	border-bottom: 4px #1b2952 solid;
	padding: 0px 0 10px 0px;
	margin: 0px auto 10px;
	/* text-shadow: 1px 2px 2px rgba(0,0,0,0.4); */
	letter-spacing: 0.8pt;
	font-weight: bold;
	color: #333;
}

h3.title01::before {
	content: "";
	border: 5px #3857ac solid;
	width: 100%;
	height: auto;
	margin: 0px 15px 0 0;
	box-shadow: 1px 2px 2px rgba(0,0,0,0.4);
	padding: 0px 0 0px 0;
}






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


h3.title03{
	font-size: 20px;
	border-bottom: 4px #1b2952 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: #3857ac;
}



h3.title04{
	font-size: 20px;
	border-bottom: 4px #3857ac 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: #1b2952;
}









h4.title01{
	font-size: 16px;
	border-bottom: 1px #3857ac 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: #3857ac;
	/* background: #1b2952; */
}




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






/*パンくず*/
ul.breadcrums{
width:1200px;
margin: 10px auto 10px;
display: none;
}

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 #0783d2 solid;
}


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




















nav.side_navi01{

}


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

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


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

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

}

nav.side_navi01 > ul > li > a{
    display: block;
			color: #3857ac;
			position: relative;
		 padding: 8px 16px;
}
nav.side_navi01 > ul > li > a > i{
	display: inline-block;
	position: absolute;
	top: 15px;
	left: 15px;
}

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

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

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


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




























/*会社案内*/


main.company{
	width: 100%;

}


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

main.company .content01 > .inner{
	width: 95%;
	margin: 30px auto;
}

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

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


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

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



main.company .content02 > .inner > .inner > dl{
	display: flex;
	/*border: 1px #333 solid;*/
	border-top: none;
	position: relative;
	flex-wrap: wrap;
}
main.company .content02 > .inner > .inner > dl:nth-child(1){
    border-top: 1px #eee solid;

}


main.company .content02 > .inner > .inner > dl > dt{
	color: #333;
	background: #eee;
	width: 100%;
	padding: 15px;
	border-bottom: 1px #fff solid;
}

main.company .content02 > .inner > .inner > dl > dd{
	width: 100%;
	padding: 15px 15px 15px 15px;
	/* border-right: 1px #eee solid; */
}



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

main.company .content02 > .inner > .inner > dl > dd > dl > dt{
	color: #3857ac;
	font-weight: bold;
	width: 100%;
	padding: 10px 0 0px 0;
}

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

}*/

main.company .content02 > .inner > .inner > dl > dd > dl > dd{
	    padding: 0px 0 30px 0;
	    width: 100%;
}










main.company .content02 > .inner > .inner > ul.photo{
	display: flex;
	top: auto;
	bottom: 10px;
	width: 100%;
	left: auto;
	right: 10px;
}

main.company .content02 > .inner > .inner > ul.photo li{
width: 32%;
margin: 0 2% 0 0;
line-height: 0;
}

main.company .content02 > .inner > .inner > ul.photo li:last-child{
margin-right: 0;
}

main.company .content02 > .inner > .inner > ul.photo li img{
width: 100%;
}




















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

main.company .content02 > .inner > #map_area > .inner{
	display: flex;
	    margin: 20px 0 0 0;
						flex-direction: column;
}


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

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

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

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: 500px;
	margin: 20px auto 0 auto;
	display: block;
	position: relative;
	overflow: hidden;
}

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






























figure.img_company01{
width: 360px;
position: absolute;
top: 60px;
left: auto;
right: 0;
display: none;
}
figure.img_company01 img{
width: 100%;
}























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



















/*私たちの強み*/


main.tsuyomi{
	width: 100%;

}


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

main.tsuyomi .content01 > .inner{
	width: 95%;
	margin: 30px auto;
}

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

main.tsuyomi .content01 > .inner > .inner > .sentence{
width: 100%;
}
main.tsuyomi .content01 > .inner > .inner > .sentence > p{
    margin: 0px 0px 20px 0;
}
main.tsuyomi .content01 > .inner > .inner > .photo{
	width: 90%;
	margin: 20px auto 0;
}
main.tsuyomi .content01 > .inner > .inner > .photo img{
width: 100%;
}


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

main.tsuyomi .content02 > .inner{
	width: 95%;
	    margin: 0 auto;
			position: relative;
}



main.tsuyomi .content02 > .inner > .inner > dl{
	display: flex;
	/*border: 1px #333 solid;*/
	border-top: none;
	position: relative;
	flex-wrap: wrap;
}
main.tsuyomi .content02 > .inner > .inner > dl:nth-child(1){
    border-top: 1px #eee solid;

}


main.tsuyomi .content02 > .inner > .inner > dl > dt{
	color: #333;
	background: #eee;
	width: 100%;
	padding: 15px;
	border-bottom: 1px #fff solid;
}

main.tsuyomi .content02 > .inner > .inner > dl > dd{
	width: 100%;
	padding: 15px 15px 15px 15px;
	/* border-right: 1px #eee solid; */
}



main.tsuyomi .content02 > .inner > .inner > dl > dd > dl{
	display: flex;
	border-bottom: 1px #cfd8f3 solid;
	flex-wrap:  wrap;
	padding: 0px 0;
}

main.tsuyomi .content02 > .inner > .inner > dl > dd > dl > dt{
	color: #3857ac;
	font-weight: bold;
	width: 100%;
	padding: 10px 0 0px 0;
}

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

}*/

main.tsuyomi .content02 > .inner > .inner > dl > dd > dl > dd{
	    padding: 0px 0 30px 0;
	    width: 100%;
}










main.tsuyomi .content02 > .inner > .inner > ul.photo{
	display: flex;
	top: auto;
	bottom: 10px;
	width: 100%;
	left: auto;
	right: 10px;
}

main.tsuyomi .content02 > .inner > .inner > ul.photo li{
width: 32%;
margin: 0 2% 0 0;
line-height: 0;
}

main.tsuyomi .content02 > .inner > .inner > ul.photo li:last-child{
margin-right: 0;
}

main.tsuyomi .content02 > .inner > .inner > ul.photo li img{
width: 100%;
}




















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

main.tsuyomi .content02 > .inner > #map_area > .inner{
	display: flex;
	    margin: 20px 0 0 0;
						flex-direction: column;
}


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

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

main.tsuyomi .content02 > .inner > #map_area > .inner > .address_area > figure.photo{
	line-height: 0;
	width: 60%;
	margin: 0 auto;
}

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



main.tsuyomi .content02 > .inner > #map_area > .inner > #map01{
	width: 100%;
	height: 500px;
	margin: 20px auto 0 auto;
	display: block;
	position: relative;
	overflow: hidden;
}

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







figure.img_company01{
width: 360px;
position: absolute;
top: 60px;
left: auto;
right: 0;
display: none;
}
figure.img_company01 img{
width: 100%;
}




/*私たちの強み　ここまで*/




























/*リクルート*/


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

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


main.recruit .content01 > .inner > .sentence{
	margin: 0 0 40px 0;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 18px;
	font-weight: bold;
}




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


main.recruit .content01 > .inner > .inner > dl > dt{
	color: #333;
	background: #eee;
	width: 100%;
	padding: 15px;
	border-bottom: 1px #fff solid;
}

main.recruit .content01 > .inner > .inner > dl > dd{
	width: 100%;
	padding: 15px 15px 15px 30px;
	/*border-right: 1px #eee solid;*/
}

/*main.recruit .content01 > .inner > .inner > dl:nth-child(even) > dd{
    background: linear-gradient(15deg, #ffffff, #dce5ff);
}*/

main.recruit .content01 > .inner > .inner > dl > dd > dl{
	display: flex;
border-bottom: 1px #cfd8f3 solid;
margin: 0 0 30px 0;
}

main.recruit .content01 > .inner > .inner > dl > dd > dl > dt{
	color: #3857ac;
	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: 95%;
	    margin: 0 auto;
	    position: relative;
}


main.recruit .content02 > .inner > .sentence{
	margin: 0 0 40px 0;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 18px;
	font-weight: bold;
}




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


main.recruit .content02 > .inner > .inner > dl > dt{
	color: #333;
	background: #eee;
	width: 100%;
	padding: 15px;
	border-bottom: 1px #fff solid;
}

main.recruit .content02 > .inner > .inner > dl > dd{
	width: 100%;
	padding: 15px 15px 15px 15px;
	/*border-right: 1px #eee solid;*/
}

/*main.recruit .content02 > .inner > .inner > dl:nth-child(even) > dd{
    background: linear-gradient(15deg, #ffffff, #dce5ff);
}*/

main.recruit .content02 > .inner > .inner > dl > dd > dl{
	display: flex;
border-bottom: 1px #cfd8f3 solid;
margin: 0 0 30px 0;
}

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

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

}*/

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



main.recruit .content02 > .inner > .inner > figure{

}

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



/*リクルート*/















































































/*製品紹介*/


main.product{
	width: 100%;

}


main.product .content01{
	width: 95%;
	margin: 0 auto 60px;
}

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


main.product .content01 > .inner > figure{
    width: 80%;
    margin: 0 auto 0px;
}
main.product .content01 > .inner > figure > figcaption{
    width: 100%;
    margin: 0 auto 20px;
}


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


main.product .content01 > .inner > .inner{
	width: 100%;
	margin: 0px 0 0 0px;
}



main.product .content01 > .inner > .inner > dl{
	display: flex;
	/*border: 1px #333 solid;*/
	border-top: none;
	position: relative;
	flex-wrap:  wrap;
}
main.product .content01 > .inner > .inner > dl:nth-child(1){
    border-top: 1px #eee solid;
}

main.product .content01 > .inner > .inner > dl > dt{
	color: #333;
	background: #eee;
	width: 100%;
	padding: 8px 16px;
	border-bottom: 1px #fff solid;
}

main.product .content01 > .inner > .inner > dl > dd{
	width: 100%;
	padding: 8px 16px 8px 30px;
	border-right: 1px #eee solid;
	background: #fbfcff;
}

main.product .content01 > .inner > .inner > dl:nth-child(even) > dd{
}

main.product .content01 > .inner > .inner > dl > dd > dl{
	display: flex;
border-bottom: 1px #cfd8f3 solid;
}

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

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

}*/

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










main.product .content01 > .inner > .inner > ul.photo{
	    display: flex;
}

main.product .content01 > .inner > .inner > ul.photo li{
	width: 32%;
	margin: 15px 2% 0 0;
	line-height: 0;
}

main.product .content01 > .inner > .inner > ul.photo li:last-child{
	margin-right: 0;
}

main.product .content01 > .inner > .inner > ul.photo li img{
width: 100%;
}



















main.product .content02{
	width: 95%;
	margin: 0 auto 0;
}

main.product .content02 > .inner{
	margin: 30px auto;
	display: flex;
	flex-wrap: wrap;
}


main.product .content02 > .inner > figure{
    width: 80%;
    margin: 0 auto 0px;
}

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


main.product .content02 > .inner > .sentence{
	width: 100%;
	margin: 0px 0 0 0px;
}

main.product .content02 > .inner > .sentence > p{
	margin: 0px 0 20px 0;
}


main.product .content02 .inner > .sentence table{
	width: 100%;
	border: 1px #444 solid;
	border-collapse: collapse;
}
main.product .content02 .inner > .sentence table tr{
	border: 1px #444 solid;
}
main.product .content02 .inner > .sentence table tr th{
	border: 1px #fff solid;
	font-size: 0.8em;
	padding: 10px 0;
	background: #eee;
}
main.product .content02 .inner > .sentence table tr:nth-child(1) th:nth-child(4){
}

main.product .content02 .inner > .sentence table tr:nth-child(2) th:nth-child(1){
}
main.product .content02 .inner > .sentence table tr:nth-child(2) th:nth-child(2){

}

main.product .content02 .inner > .sentence table tr td{
	border: 1px #fff solid;
	font-size: 0.8em;
	text-align: center;
	padding: 10px 0;
	background: linear-gradient(15deg, #ffffff, #dce5ff);
}



main.product .content02 >  ul{margin:  0px 0 20px 0;}
main.product .content02 >  ul > li{

}




/*main.product .content02 >  table{
	width: 780px;
	border: 1px #444 solid;
}
main.product .content02 >  table > tr{

}
main.product .content02 >  table > tr > th{

}
main.product .content02 >  table > tr > td{

}
*/




/*製品紹介*/















/*製品一覧*/


main.product_list{
	width: 100%;
	margin: 0 auto 60px;
}


main.product_list > .right{
	width: 100%;
	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 20px;
	display: flex;
}



main.product_list .content01 > .inner > figure{
	width: 46%;
	    margin: 0 4% 0 0;
	    line-height: 0;
}

main.product_list .content01 > .inner > .sentence{
	font-size: 14px;
	width: 50%;
	line-height: 1.5em;
}

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: 100%;
	margin: 0 auto 60px;
}


main.product_detail > .right{
	width: 100%;
	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: 100%;
	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;
}






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





























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

.privacy{
}

.privacy > .content01{

}

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

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

}


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


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

}

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

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

}





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






















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


main.sitemap{


}



main.sitemap > .content01 > ul{
	width: 95%;
	margin: 0 auto 40px;
}


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

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

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



main.sitemap > .content01 > ul > li:hover > a::before {
	content: "";
	background: #00c9ff;
	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: #3857ac;
	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 #3857ac solid;
}


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



main.sitemap > .content01 > ul > li > ul > li > a{
    color: #3857ac;
    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: #3857ac;
	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: #00c9ff;
	width: 10px;
	height: 10px;
	display: inline-block;
	margin: 0 15px 0 15px;
	position: absolute;
	top: 20px;
	left: 0;
}



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















































/*お問い合わせ*/


main.contact{

}

main.contact > .content01{
	display: flex;
	width: 95%;
	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: #1a4999;
	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 0 0 0;
			width: 100%;
}

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




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




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



main.contact > .content01 form.inner dl dt{
	width: 100%;
	padding: 0px 0 20px 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: #D01C01!important;
		padding: 2px;
		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;
	}








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

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

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




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 0px;
}
#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 {
	display: flex;
	    width: 95%;
	    margin: 0 auto;
	    flex-wrap: wrap;
}


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

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

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



main.contact > .content02 form.inner dl dt{
	padding: 0px 0 0px 0;
	width: 90%;
	margin: 0 auto;
	font-weight: bold;
}

/*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{
	width: 90%;
	    margin: 0 auto;
	    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: 100%;
	margin: 40px auto 80px;
	display: flex;
	flex-wrap: wrap;
}

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: 95%;
	margin: 0px auto 20px;
	cursor: pointer;
	padding: 10px 20px;
	border: 1px #1a4999 solid;
	border-radius: 5px;
	box-shadow: 1px 1px 2px #1a4999;
	color: #1a4999;
	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: #1a4999;
	    transition: 0.5s ease-in-out;
}





main.contact > .content01 form.inner .bt_area input#check_send{
	width: 95%;
	margin: 0px auto 0;
	cursor: pointer;
	padding: 10px 20px;
	border: 1px #1a4999 solid;
	border-radius: 5px;
	box-shadow: 1px 1px 2px #1a4999;
	color: #1a4999;
	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: #1a4999;
	    transition: 0.5s ease-in-out;
}









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

main.contact > .content02 form.inner .bt_area{
	width: 100%;
	margin: 40px auto 80px;
	display: flex;
	flex-direction: column;
}

main.contact > .content02 form.inner .bt_area input{

}


main.contact > .content02 form.inner .bt_area input#back{
	width: 100%;
	margin: 0px auto 20px auto;
	cursor: pointer;
	padding: 10px 20px;
	border: 1px #1a4999 solid;
	border-radius: 5px;
	box-shadow: 1px 1px 2px #1a4999;
	color: #1a4999;
	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: #1a4999;
	    transition: 0.5s ease-in-out;
}




main.contact > .content02 form.inner .bt_area input#send{
	width: 100%;
	margin: 0px auto 20px auto;
	cursor: pointer;
	padding: 10px 20px;
	border: 1px #1a4999 solid;
	border-radius: 5px;
	box-shadow: 1px 1px 2px #1a4999;
	color: #1a4999;
	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: #1a4999;
	    transition: 0.5s ease-in-out;
}

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



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







/*送信完了*/


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


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

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: #1a4999;
}

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

main.contact > .content03 > .inner .sentence br{
display: none;
		}



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

		}

		main.contact > .content03 > .inner .bt_pagetop a{
			width: 100%;
			    margin: 20px auto 0px;
			    cursor: pointer;
			    padding: 10px 20px;
			    border: 1px #1a4999 solid;
			    border-radius: 5px;
			    box-shadow: 1px 1px 2px #1a4999;
			    color: #1a4999;
			    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: #1a4999;
					    transition: 0.5s ease-in-out;
						}








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



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





























/*新着情報*/

main.news_list{
	width: 100%;
}


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

main.news_list .content01 > .inner{width: 95%;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 80px 0;
	flex-wrap: wrap;
}

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

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: #51a75f;
    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: #3857ac;
    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: #e5006e;
    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: 100%;
	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: 100%;margin: 10px 0 0 0;}
main.news_list .content01 > .inner > ul.inner > li .right > .sentence{font-size: 14px;}
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 #3857ac solid;
	    color: #3857ac;
	    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: #3857ac;
border: 2px #3857ac solid;
color: #fff;
transition: 0.5s ease-in-out;
}

main.news_list .content01 > .inner > ul.inner > li .right > .bt > a > i{
	color: #3857ac;
	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: 0px 0 0 0;
}


main.news_detail .content01 > .inner{
	width: 95%;
	margin: 40px auto 0;
}


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

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

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: #51a75f;
			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: #3857ac;
			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: #e5006e;
			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: 100%;}

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: #3857ac;
	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: #3857ac;
}

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: #3857ac;
	display: block;
	background: #ffffff;
	padding: 5px 10px 5px 10px;
	border-radius: 5px;
	transition: 0.5s ease-in-out;
	font-size: 14px;
	border: 1px #3857ac solid;
}
main.news_detail .content01 > .inner > .inner > .right > .bt_area > .bt_pdf > a:hover{
	color: #fff;
	background: #3857ac;
}

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

}










main.news_detail .content01 > .inner > .inner > .bt_area02{
	display: flex;
	flex-wrap: wrap;
	/* width: 100%; */
	margin: 0 auto;
}





main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_back{
	width: 100%;
	margin: 20px 0 20px 0px;
	text-align: center;
}

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

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_back > a:hover{
	color: #3857ac;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #3857ac 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: 100%;
	margin: 20px 0 0px 0;
	text-align: center;
}

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

main.news_detail .content01 > .inner > .inner > .bt_area02 > .bt_previous > a:hover{
	color: #3857ac;
	background: #fff;
	transition: 0.5s ease-in-out;
	border: 2px #3857ac 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: 100%;
	margin: 0px 0 0 0;
	text-align: center;
}

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

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

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








/*新着情報詳細*/






























/*フッター*/
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: 40px 0 40px 0; */
	position: relative;
	background: #1b1b1b;
}

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



#footer_top > .inner > figure{
	width: 100%;
	line-height: 0;
	margin: 30px auto;
}
#footer_top > .inner > figure img{
width: 100%;
}


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


#footer_top > .inner > ul li{

}



#footer_top > .inner > ul li:nth-child(1){
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	width: 100%;
}

#footer_top > .inner > ul li:nth-child(2){
	font-size: 12px;
	/* font-weight: bold; */
	color: #fff;
	width: 100%;
}

#footer_top > .inner > ul li:nth-child(3){
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	width: 100%;
	    margin: 20px 0 0 0;
}

#footer_top > .inner > ul li:nth-child(4){
	font-size: 12px;
	/* font-weight: bold; */
	color: #fff;
	width: 100%;
}












#footer_middle{
background: #333;
}

nav#footer_nav{
	display: flex;
	padding: 20px 0 20px 0;
	width: 90%;
	margin: 0 auto;
	flex-direction: column;
}
nav#footer_nav > section{
	width: 100%;
	border-right: 1px #fff solid;
	box-sizing: border-box;
	border-left: 1px #fff solid;
}
nav#footer_nav > section:nth-child(1) {
    border-left: 1px #fff solid;
    width: 100%;
}
nav#footer_nav > section:nth-child(2) {
    width: 100%;
}



/*大メニュー*/
nav#footer_nav > section > h2{
padding: 10px 0 0px 20px;
}
nav#footer_nav > section > h2 > a{
font-size: 14px;
font-weight: bold;
color: #fff;
}

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



/*小メニュー*/
nav#footer_nav > section > ul{
margin: 0px 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 #fff solid;
	box-sizing: border-box;
}





#footer_bottom{
	     background: #111;
}

#footer_bottom_inner{
	display: flex;
	width: 100%;
	margin: 0 auto;
	padding: 20px 0 100px 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: 1200px;*/
			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: #3857ac;
				transition: 0.3s ease-in-out;
		}


		.pagination_inner li a.pagination_on{
		    background: #3857ac;
		}


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












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


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

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