.home .main_visual {
	position:relative;
	margin-top: 50px;
  /*
	background-image: url('/assets/img/home/main_visual.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 66% center;
  */
}
.home .main_visual::before{
  /*
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
  */
}

.home .main_visual .detail_block {
	position: relative;
	display: grid;
  grid-template-columns: 1fr;
	justify-content: center;
  align-items:center;
	z-index: 2;
	row-gap:20px;
}
.home .main_visual .detail_block .catch {
	font-size: clamp(3rem,5vw,4rem);
	font-weight: 700;
	line-height:1.6;
	text-align:center;
  letter-spacing:0.2em;
  padding:1em 0;
}
.home .main_visual .detail_block .catch .strong{
  font-size:120%;
  color: #09A4BF;
}
/*
.home .main_visual .detail_block .text {
	font-size: 1.4rem;
	text-align:center;
	color:#FFFFFF;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
}
*/
.home .main_visual .detail_block .image{
}
.home .main_visual .detail_block .image img{
  object-fit: cover;
}
@media (min-width: 769px) {
  .home .main_visual {
		margin-top: 125px;
	}
 	.home .main_visual .detail_block .text {
		font-size: 2rem;
	}
}
@media (min-width: 993px) {
  .home .main_visual .detail_block {
    grid-template-columns: 1fr 1fr;    
  }
 .home .main_visual .detail_block .catch {
    padding:0;
  }
}
.sec_subcopy {
	padding: 50px 0;
  background-color: #FFFDE6;
}
.sec_subcopy p {
	font-size: clamp(2rem,2vw,2.8rem);
	line-height: 1.89;
	text-align: center;
	max-width: 1000px;
	margin: 0 auto;
}






/* COMMON LAYOUT */
.page_contents .content_block{
	display: grid;
	gap: 4%;
}
.page_contents .content_block .catch{
	font-size:2.2rem;
	color:var(--color-main);
	margin-bottom:1em;
}
.page_contents .content_block .link{
	margin-top:2em;
}
.page_contents .photo_block{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto auto;
	grid-column-gap: 0px;
	grid-row-gap: 0px;
}
.page_contents .photo_block picture:first-child{
  grid-column: span 2;
}
.page_contents .content_block .link .btn02{
	margin:auto;
}

@media (min-width: 769px){
	.page_contents .content_block{
		display: grid;
		grid-template-columns: 1fr 0.75fr;
	}
	.page_contents .content_block .catch{
		font-size:3.2rem;
	}
	.page_contents .content_block .link .btn02{
		margin:0;
	}
}


/* BUSINESS */
.sec_business{
	background:#FFFFFF;
	padding-top:80px;
	padding-bottom:80px;
}

/* MAINTENANCE */
.sec_maintenance{
	background:#E8EFF5;
	padding-top:80px;
	padding-bottom:80px;
}
@media (min-width: 769px){
	.sec_maintenance .content_block{
		grid-template-columns: 0.75fr 1fr;
	}
	.sec_maintenance .detail_block .text_block{
		order:2;
	}
	.sec_maintenance .detail_block .photo_block{
		order:1;
	}
}

/* WORKS */
.sec_works{
	background:#FFFFFF;
	padding-top:80px;
	padding-bottom:80px;
}

/* COMPANY */
.sec_company{
	background:#E8EFF5;
	padding-top:80px;
	padding-bottom:80px;
}
.sec_company .detail_block{
	display: grid;
	grid-template-columns:repeat(auto-fit , minmax(320px , 1fr));
	gap:5% 2%;
}
@media (min-width: 769px){
	.sec_company .sec_title .title{
		text-align:center;
	}
}


/* NEWS */
.sec_news {
	background:#FFFFFF;
	padding-top:80px;
	padding-bottom:80px;
}
.sec_news .news_list {
	max-width: 1000px;
	margin: 0 auto 40px;
}
.sec_news .news_list li {
	border-top: 1px solid #555555;
	position: relative;
	transition: 0.3s ease-in-out;
}
.sec_news .news_list li:last-child {
	border-bottom: 1px solid #555555;;
}
.sec_news .news_list li:hover {
	color:#FFFFFF;
	background: var(--color-main);
}
.sec_news .news_list li::after {
	display: block;
  content:"";
	width: 0;
	height: 0;
	border: 0.7rem solid transparent;
	border-left: 1.2rem solid #555555;
	position: absolute;
	top: 50%;
	right:1.5em;
	transform: translateY(-50%);
}
.sec_news .news_list li:hover::after{
	border-left: 1.2rem solid #FFFFFF;
}
.sec_news .news_list li a {
	display: block;
	padding:1em;
}
.sec_news .news_list li .date,
.sec_news .news_list li .title {
	display: block;
}
.sec_news .link .btn02{
	margin:auto;
}
@media (min-width: 769px){
	.sec_news .sec_title .title{
		text-align:center;
	}
}