@charset "UTF-8";
/* CSS Document */

/* ----------cont_concept–---------- */
.cont_concept{
}

/* ----------cont_concept main–---------- */
.cont_concept .main{
    display:flex;
    justify-content:space-between;
    border-bottom:1px solid #ccc;
    padding-bottom:100px;
}
.cont_concept .main .detail{
    width:45%;
}
.cont_concept .main .detail h2{
    font-size:1.4rem;
    margin-bottom:3rem;
	
}
.cont_concept .main .image{
    width:50%;
    overflow:hidden;
}
.cont_concept .main .image img{
   object-fit:cover;
    height:100%;
    width:100%;
}
/* ----------768px–---------- */
@media screen and (max-width: 768px) {
    .cont_concept .main{
        display:block;
        justify-content:unset;
    }
    .cont_concept .main .detail{
        width:100%;
        margin:0 0 30px 0;
    }
    .cont_concept .main .detail h2{
        width:fit-content;
		text-align:center;
		margin:0 auto 2em;;
    }
    .cont_concept .main .image{
        width:100%;
    }
}


/* ----------cont_concept cont_wrap---------- */
.cont_concept .cont_wrap{
}
.cont_concept .cont_wrap .cont_inner{
    margin-bottom:150px;
}
.cont_concept .cont_wrap h2{
    font-size:1.4rem;
    position: relative;
    display: inline-block;
    margin-bottom: 2em;
}
.cont_concept .cont_wrap h2:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 50px;
  height: 2px;
  left: 0;
  background-color: black;
  border-radius: 2px;
}
.cont_concept .cont_wrap h3{
    font-size:1.3rem;
}
.cont_concept .cont_wrap h4{
    font-size:1.05rem;
}
.cont_wrap.end .cont_inner .sub_inner .btn_box{
    display:flex;
    justify-content:space-between
}
.cont_wrap.end .cont_inner .sub_inner .btn{
    margin:2em 0 0 0;
    width:48%;
    text-align:center;
}
.cont_wrap.end .cont_inner .sub_inner .btn a{
    width:100%;
    background:#000000;
    border-radius:30px;
    color:#fff;
    display:block;
    padding:0.5em 0;
}
/* ----------768px–---------- */
@media screen and (max-width: 768px) {
	.cont_concept .cont_wrap h2{
	    display:block;
		text-align:center;
	}
	.cont_concept .cont_wrap h2:before {
		right:0;
		margin:auto;
	}
}


/* ----------cont_wrap sec---------- */
.cont_wrap.sec{
}
.cont_wrap.sec .sub_inner{
    display:flex;
    justify-content:space-between;
    padding:100px 0;
    border-bottom:1px solid #ccc;
    margin-bottom:100px;
}
.cont_wrap.sec .sub_inner:last-of-type{
    border-bottom:1px dotted #ccc;
}
.cont_wrap.sec .sub_inner .text_wrap{
    width:45%;
}
.cont_wrap.sec .sub_inner .text_wrap h3{
    margin-bottom:2em;
}
.cont_wrap.sec .sub_inner .image_wrap{
    width:50%;
    overflow:hidden;
}
.cont_wrap.sec .sub_inner .image_wrap img{
    object-fit:cover;
    width:100%;
    height:100%;
}

/* ----------768px–---------- */
@media screen and (max-width: 768px) {
     .cont_wrap.sec .sub_inner{
        display:block;
        justify-content:unset;
    }
    .cont_wrap.sec .sub_inner .text_wrap{
        width:100%;
        margin:0 0 30px 0;
    }
    .cont_wrap.sec .sub_inner .image_wrap{
        width:100%;
    }
 }

/* ----------.sub_inner_flex---------- */
.sub_inner_flex{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}
.sub_inner_flex .wrap{
    width:48%;
    margin:0 0 100px 0;
}
.sub_inner_flex .wrap .text_inner{
}
.sub_inner_flex .wrap .text_inner h2{
    font-size:1.3rem;
    position: relative;
    display: inline-block;
    margin: 1.0em 0 0.5em;
}
.sub_inner_flex .wrap .text_inner h2:before {
  content: none;
}
.sub_inner_flex .wrap .text_inner h3{
    font-size:1.1rem;
	margin:0 0 1em 0;
}
.sub_inner_flex .wrap .image_inner{
    overflow:hidden;
}
.sub_inner_flex .wrap .image_inner img{
    object-fit:cover;
    height:100%;
    width:100%;
}
/* ----------768px–---------- */
@media screen and (max-width: 768px) {
    .sub_inner_flex{
        display:block;
        justify-content:unset;
        flex-wrap:unset;
    }
    .sub_inner_flex .wrap{
        width:100%;
    }
	.sub_inner_flex .wrap .text_inner h2{
	    display: block;
	}
	.sub_inner_flex .wrap .text_inner h3{
		text-align:center;
	}
}


/* -- cta -- */
.cta{
	margin:0 calc(50% - 50vw) 0;
	width:100vw;
	padding:15vh 0;
	background:url("../../../../../img/concept/safe/concept_safe_cta_bg.webp") center / cover;
	position:relative;
}
.cta:after{
	content:"";
	display:block;
	background:#000;
	position:absolute;
	height:100%;
	width:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0.5
}
.cta .inner{
	width:80%;
	max-width:600px;
	margin:auto;
	box-sizing:border-box;
	/* background:#fff; */
	z-index:1;
	position:relative;
	color:#fff;
}
.cta .inner h4{
	font-size:2rem;
	display: flex;
    align-items: center;
}
.cta .inner h4:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #ccc;
	margin-left: 1rem;
}
.cta .inner h2{
	font-size:1.3rem;
	margin:0 0 1em 0;
	line-height:2em;
}
.cta .inner h2 strong{
	font-weight:lighter;
	font-size:120%;
}
.cta .inner .ctr_box{
	display:flex;
	justify-content:space-between;
	margin:30px 0 0 0;
}
.cta .inner .ctr_box .btn{
	width:48%;
}
.cta .inner .ctr_box .btn a{
	width:100%;
	display:block;
	padding:10px 20px;
	box-sizing:border-box;
	border-radius:50px;
	background:#948977;
		box-shadow: 1rem 1rem 1rem -1rem hsl(200 50% 20% / 40%);
	background: linear-gradient(139deg, #948977, #7d6f57);
	color:#fff;
	text-align:center;
}


/* ----------839px–---------- */
@media screen and (max-width: 839px) {
	.cta .inner .ctr_box{
		display:block;
		justify-content:unset;
		margin:30px 0 0 0;
	}
	.cta .inner .ctr_box .btn{
		width:100%;
		margin:0 0 20px 0;
	}
}
/* ----------768px–---------- */
@media screen and (max-width: 768px) {
	.cta{
		padding:10vh 0;
	}
	.cta .inner h2{
			font-size:1.2rem;
			line-height:unset;
		}
	.cta .inner{
		width:80%;
		max-width:unset;
		margin:auto;
	}
}
