@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: 60%;
	}
	.headline_text {
		margin: 0 auto 60px;
	}
}

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

bg付見出し

---------------------------------------------------------------------------*/
.bg-on-title{
	background:url(../images/bgtext.png) no-repeat 50% 50% ;
	padding:1em 0;
	text-align:center;
	letter-spacing:2px;
	font-size:1.4rem;
	font-weight:500;
}
@media screen and (max-width:768px){
.bg-on-title{
	font-size:1.2rem;
	}
.bg-on-title-margin {
	margin-top: -40px;
}
}

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

STYLE

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

.use-text{
	max-width:840px;
	margin: 0 auto;
}
.use-text p,
.use-text2 p {
	padding:1em 0 ;
	letter-spacing:2.2px;
}
.use-text2{
	max-width:840px;
	margin: 0 auto 100px;
}

.bg-middle{
	background:url(../images/bgmiddle.png) no-repeat;
	max-width:840px;
	margin: 20px auto 20px;
	padding:30px 0 30px 30px;
}
@media screen and (max-width:768px){
.bg-middle{
	background:url(../images/bgmiddle.png) no-repeat;
	max-width:100%;
	margin: 20px auto 20px;
	padding: 17px;
	line-height: 1.4;
	}
}

.bg-middle ul li{
	margin:0 0 20px;
	letter-spacing:2px;
}
@media screen and (max-width:768px){
.bg-middle ul li{
	margin:0 0 13px;
	font-size:.9rem;
	}
}

.bg-middle ul li:before{
	content:"●";
	color:#D9E021;
}

.root{
	max-width:840px;
	margin: 20px auto 0px;
	letter-spacing:2.2px;
	position:relative;
}
.root:after{
   content: "";
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #D9E021 transparent transparent transparent;
    display: block;
    margin: 0 auto;
    width: 0;
    height: 0;
}
@media screen and (max-width:768px){
.root:after{
	border-width: 15px 15px 0 15px;
	}
}

.end-fl:after{
   content: "";
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: transparent transparent transparent transparent;
    display: block;
    margin: 0 auto;
    width: 0;
    height: 0;
}

.root dt{
	font-size:1.2rem;
	background:#F7F9D3;
	padding:.8em 1em;
}
@media screen and (max-width:768px){
.root dt{
	font-size:1.05rem;
	padding:.4em .5em;
	}
}
.root dt:before{
	content:"●";
	color:#D9E021;
}
.root dd{
	padding:.7em 2.5em;
}
@media screen and (max-width:768px){
.root dd{
	padding:.7em 1.8em;
	}
}

.root dd span{
	display:block;
}

.oneday{
	max-width:840px;
	margin: 20px auto 10px;
	letter-spacing:2.2px;
}
.oneday span{
	display:block;
	font-size:.9rem;
	margin:60px 0 0;
}
.oneday2{
	max-width:840px;
	margin: 20px auto 10px;
	letter-spacing:2.2px;
}
.oneday2 span{
	display:block;
	font-size:.9rem;
	margin:20px 0 100px;
}
.bglarge{
	background:url(../images/bglarge.png) no-repeat ,
	url(../images/icon01.png) no-repeat 98% 95%;
	max-width:840px;
	margin: 0 auto;
	padding:1em 3em
}
@media screen and (max-width:768px){
.bglarge{
	background:url(../images/bglarge.png) no-repeat ,
	url(../images/icon01.png) no-repeat 98% 95%;
	background-size:cover , 70px;
	padding:1em 1em
	}

}
.bglarge ul{

}
.bglarge ul li{
	margin:20px 0px;
	letter-spacing:2px;
}
@media screen and (max-width:768px){
.bglarge ul li{
	margin:10px 0px;
	}
}

.bglarge ul li:before{
	content:"●";
	color:#D9E021;
}
.bglarge ul li span{
	display:inline-block;
	margin:0 0 0 20px;
	width:200px;
}
@media screen and (max-width:768px){
.bglarge ul li span{
	margin:0 0 0 0px;
	width:135px;
	}
}

.support-text{
	max-width:840px;
	margin: 5px auto 100px;
	font-size:.8rem;
	text-align:right;
}


.grid-style{
	display:grid;
	grid-template-columns:3fr 1fr;
	max-width:840px;
	margin: 20px auto 10px;
}
@media screen and (max-width:768px){
.grid-style{
	grid-template-columns:1fr;
	max-width:100%;
	gap:30px 0;
	}
}

.gridtext{
	padding:0 1em 0 0em;
	max-width:580px;
	letter-spacing:2px;
}
@media screen and (max-width:768px){
.gridtext{
	padding:0 0em 0 0em;
	max-width:100%;
	}
}
.gridtext span{
	display:block;
	margin: 5px 0 ;
}
@media screen and (max-width:768px){

.gridimg{
	display:flex;
	justify-content:center;
	}
.gridimg img{
	max-width:180px;
	}
}

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