@charset "utf-8";
body {
	animation: loading 1s;
}
@keyframes loading {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

/*----------------------------------------------------------------------------

メインビジュアル

---------------------------------------------------------------------------*/
.contact_main{
	padding:3em 0 ;
	margin: 0 auto;
	max-width:1040px;
	background:url(../../cmn/images/line.png) no-repeat 0 100%;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.contact_main dt{
	margin:0 0 15px;
}
@media screen and (max-width:768px){
.icon-img img{
	max-width:200px;
	}
}
.headline{
	text-align:center;
	margin:80px auto 40px;
}
.headline_text{
	max-width:520px;
	margin: 0 auto 120px;
	line-height:2;
	letter-spacing:2px;
}
.headline_text span{
	display:block;
	margin:0 0 30px;
}
@media screen and (max-width:768px){
	.headline img {
		max-width: 80%;
	}
	.headline_text {
		margin: 0 auto 60px;
	}
}

/*----------------------------------------------------------------------------

STYLE

---------------------------------------------------------------------------*/

.grid-block{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:80px 60px;

}
@media screen and (max-width:768px){
.grid-block{
	display:grid;
	grid-template-columns:1fr;
	gap:80px 0px;
	}
.order1{
	grid-row:1 ;
	}
.order2{
	grid-row:3 ;
	}
.order3{
	grid-row:1 ;
	}
.order4{
	grid-row:5 ;
	}
.order5{
	grid-row:9 ;
	}
}

.text-block dl{
	line-height:1.5;
	letter-spacing:2px;
}
@media screen and (max-width:768px){
.grid-block .img-block{
	margin:-50px auto 0 ;
	text-align:center;
	}
.grid-block .img-block img{
	max-width:80%;
	}
.text-block dl{
	margin: 0 0 0px;
	}
}
.text-block dl dt{
	font-size:1.4rem;
	margin:0 0 20px;
	background:url(../images/lbl-bg.png) no-repeat ;
	padding:5px 0 10px;
	display:inline-block;
	width:242px;
	text-align:center;
	
}
@media screen and (max-width:768px){
.text-block dl dt{
	font-size:1.25rem;
	margin:0 0 10px;
	}
}
.flex-block{
	padding:5em 0 ;
}

.flex-block dl{
	line-height:1.5;
	letter-spacing:2px;
}

.flex-block dl dt{
	font-size:1.4rem;
	margin:0 0 20px;
	background:url(../images/lbl-bg.png) no-repeat ;
	padding:5px 0 10px;
	display:inline-block;
	width:242px;
	text-align:center;
}
.flex-block ul{
	display:flex;
	justify-content:space-between;
	padding:3em 0;
}
@media screen and (max-width:768px){
.flex-block ul{
	padding:2em 0 0;
	gap:1em 0;
	flex-wrap:wrap;
	}
.flex-block ul li{
	text-align:center;
	}
.flex-block ul li img{
	max-width:80%;
	}
}

.treat01{
	background:url(../images/treat01.png) no-repeat 90% 90% ;
}
.treat02{
	background:url(../images/treat02.png) no-repeat 90% 90%;
}
.treat03{
	background:url(../images/treat03.png) no-repeat 90% 90%;
}
.treat04{
	background:url(../images/treat04.png) no-repeat 10% 90%;
}
@media screen and (max-width:768px){
.treat01{
	background:url(../images/treat01.png) no-repeat 100% 0%;
	background-size:80px;
}
.treat02{
	background:url(../images/treat02.png) no-repeat 100% 0%;
	background-size:80px;
}
.treat03{
	background:url(../images/treat03.png) no-repeat 100% 0%;
	background-size:80px;
}
.treat04{
	background:url(../images/treat04.png) no-repeat 100% 0%;
	background-size:80px;
}
}

.space-margin{
	margin:0 auto 100px;
}
.another-space{
	margin:20px 0;
}
