


/*
共通
---------------------------------------------------*/ 


/*
mv
---------------------------------------------------*/ 

.mv{
	position: relative;
}

.mv h2{
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-size:4vw;
  line-height: 1.4;
font-family: montserrat, sans-serif;
font-weight: 800;
font-style: italic;
  color: #fff;
    width: 90%;
}

.mv h2 span{
	color: #96C800;
}


.slider::before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100vh;
	background: rgba(0,0,0,.4);
	z-index: 1;
}

.slider {
  position:relative;
	z-index: 1;
	height: 100vh;
}


.slider-item01 {
    background:url(../images/slide01.jpg);
}

.slider-item02 {
    background:url(../images/slide02.jpg);
}

.slider-item03 {
    background:url(../images/slide03.jpg);
}

.slider-item {
    width: 100%;
    height:100vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

/*矢印の設定*/

.slick-prev, 
.slick-next {
    position: absolute;
	z-index: 3;
    top: 42%;
    cursor: pointer;
    outline: none;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    height: 25px;
    width: 25px;
	
}

.slick-prev {
    left:2.5%;
    transform: rotate(-135deg);
}

.slick-next {
    right:2.5%;
    transform: rotate(45deg);
}

.slick-dots {
	position: relative;
	z-index: 3;
    text-align:center;
	margin:-50px 0 0 0;
}

.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;
    height:8px;
    display:block;
    border-radius:50%;
    background:#fff;
}

.slick-dots .slick-active button{
    background:#333;
}




/*
事業紹介
---------------------------------------------------*/ 

.services .s_top_blk{
	background: #555 url("../images/service_bg.jpg") no-repeat center / cover;
	background-blend-mode: multiply;
	padding: 4rem 0 5rem;
	color: #fff;	
}

 .s_top_blk .list ul{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 2rem 0 0;
}

 .s_top_blk .list ul li{
	text-align: center;
	width: 300px;
	position: relative;
	box-sizing: border-box;
}

 .s_top_blk .list ul li img{
	height: 60px;
}

 .s_top_blk .list ul li::before{
	position: absolute;
	content: '';
	width: 1px;
	height: 100px;
	right: 0;
	top:0;
	bottom: 0;
	margin: auto;
	background: #ccc;
}

 .s_top_blk .list ul li:last-child::before{
	display: none;
}

 .s_top_blk .list ul li p{
	line-height: 1.4;
	margin-top: .5rem;
	 font-weight: 500;
}

.s_detail_blk{
	margin: 5rem auto 0;
}

.s_detail_blk h4{
	position: relative;
	font-size: 1.6rem;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 2.5rem;
}


.s_detail_blk h4::before{
	position: absolute;
	content: '';
	bottom: -1rem;
	left:0;
	right: 0;
	margin: auto;
	width: 50px;
	height: 5px;
	background: #1FA2FF;
	background: -webkit-linear-gradient(to right, #F9E901, #87B814);
	background: linear-gradient(to right, #F9E901, #87B814);
}

.s_detail_flex ul li{
	display:flex;
	flex-wrap: wrap;
	height: 500px;
}

.s_detail_flex.rev_l ul li:nth-child(even){
    flex-direction: row-reverse;
}

.s_detail_flex.rev_r ul li:nth-child(odd){
    flex-direction: row-reverse;
}

.s_detail_flex ul li .img_box,
.s_detail_flex ul li .txt_box{
	width: 50%;
	height: 500px;
}

.s_detail_flex ul li .img_box img{
	display: none;
}

.s_detail_flex ul li .s_img1{
	background: url("../images/s_detail01.jpg") no-repeat center / cover;
	
}

.s_detail_flex ul li .s_img2{
	background: url("../images/s_detail02.jpg") no-repeat center / cover;
}

.s_detail_flex ul li .s_img3{
	background: url("../images/s_detail03.jpg") no-repeat center / cover;
}

.s_detail_flex ul li .s_img4{
	background: url("../images/s_detail04.jpg") no-repeat center / cover;
}

.s_detail_flex ul li .s_img5{
	background: url("../images/s_detail05.jpg") no-repeat center / cover;
}

.s_detail_flex ul li .s_img6{
	background: url("../images/s_detail06.jpg") no-repeat center / cover;
}

.s_detail_flex ul li .txt_box{
	background: #F0F0F0;
	display: flex;
	align-items: center;
}

.s_detail_flex ul li .txt_box_inr{
	width: 450px;
	margin: 0 auto;
}

.s_detail_flex ul li .txt_box_inr h5{
	font-size: 1.4rem;
	text-align: center;
	margin-bottom: .5rem;
}

.s_detail_flex ul li .txt_box_inr p{
	text-align: justify;
	line-height: 2;
	box-sizing: border-box;
}





/*
会社概要
---------------------------------------------------*/ 



.company span{
	margin-top: .5rem;
}

.company{
	margin: 8rem auto;
}

.company .ttl_area{
	background: #666 url("../images/company_ttl_bg.jpg") no-repeat center / cover;
	background-blend-mode: multiply;
	padding: 8rem 0;
}

.company dl{
	margin: 3rem auto;
}

.company dl div{
	display: flex;
	border-bottom: 1px solid #ccc;
	padding: 1.5rem 0;
}

.company dl div dt{
	width: 30%;
	font-weight: bold;
	padding:0 0 0 1rem;
}

.company dl div dd a{
	color: #313131;
	transition: .3s all ease-in-out;
}

.company dl div dd a:hover{
	opacity: .7;
}


/*
アクセス
---------------------------------------------------*/ 

.access{
	line-height: 0;
}

.access h3{
	color: #313131;
	margin-bottom: 2rem;
}

.gmap{
	width: 100%;
-webkit-filter: sepia(.15);
　filter: sepia(.15);
}



/*
お問い合わせ
---------------------------------------------------*/ 

.contact{
	background: #666 url("../images/top_contact_bg.jpg") no-repeat top / cover;
	background-blend-mode: multiply;
	background-attachment: fixed;
	color: #fff;
	font-weight: 400;
	padding: 4rem 0 5rem;
	text-align: center;
}

.contact .sub_txt,
.f_logo{
	margin: 5rem auto 1rem;
}

.f_logo a{
	width: 400px;
}

.c_btn a{
	margin-top: .5rem;
	background: #fff;
	color: #575757;
	display: inline-block;
	padding: 1rem 3rem;
	border-radius: 50px;
	vertical-align: middle;
	font-weight: bold;
	transition: .3s all ease-in-out;
}

.c_btn a img{
	width: 25px;
	vertical-align: middle;
	margin-bottom: 3px;
	margin-right: 5px;
}

.c_btn a:hover,
.contact address a:hover{
	opacity: .7;
}

.contact address{
	font-style: normal;
}

.contact address a{
	color: #fff;
	transition: .3s all ease-in-out;
}








@media screen and (max-width: 1024px) {


}


@media screen and (min-width: 769px) {
	

	
}

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

.mv h2{
	font-size: 9vw;
	line-height: 1.2;
}

.services .s_top_blk {
	padding: 3rem 0;
}
	
.s_top_blk .list ul{
	flex-wrap: wrap;
	margin: 2rem 0 0;
}
	
.s_top_blk .list ul li{
	width: calc(100% / 2);
	margin-bottom: 2rem;
}
	
.s_top_blk .list ul li:first-child{
	margin-left: -1rem;
}
	
.s_top_blk .list ul li img {
    height: 50px;
}
	
.s_top_blk .list ul li p{
	font-size: .8rem;
}
	
.s_top_blk .list ul li::before{
	display: none;
}
	
.s_detail_flex ul li .txt_box_inr p {
	padding: 0 1.5rem;
}	
		
.s_detail_blk h4 {
    font-size: 1.4rem;
	line-height: 1.4;
}
	
.s_detail_flex ul li {
    display: flex;
    flex-wrap: wrap;
    height: auto;
    flex-direction: column;
}
	
.s_detail_flex ul li .txt_box_inr h5 {
	font-size: 1.2rem;
}
	
.s_detail_flex ul li .img_box img{
	display: block;	
}
	
.s_detail_flex ul li .img_box {
    width: 100%;
	height: auto;

}
		
.s_detail_flex ul li .txt_box {
    width: 100%;
    height: auto;
	padding: 3rem 0 4rem;
}

.services .s_top_blk,
.contact{
	background-attachment:inherit;
}
	
.company .ttl_area {
    padding: 5rem 0;
}
	
.company dl {
    margin: 1rem auto;
}

.company dl div{
	flex-direction: column;	
}
	
.company dl div dt{
	padding: 0;
	width: 100%;
}
	

.f_logo a{
	max-width: 90%;
}
	

}
	
@media screen and (max-width: 480px) {

	
}

































