@charset "UTF-8";
/* CSS Document */
/* ttlArea */
.imgArea {
	/*background-image: url("../img/privacy/main_bg.jpg");*/
}
.ttlArea .inner .h1Area h1:before {
	content: "ABOUT US";
}
/*aboutArea*/
.aboutArea .inner {
  padding: 60px 20px 40px;
  text-align: center;
}


/*aboutArea01*/
.aboutArea01 {
	width: 100%;
	padding: 50px 6vw 0;
}
.aboutArea01 .inner {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
	background-image: url("../img/service/service_building.svg");
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: 100%;
	text-align: center;
}
.arcTextWrap {
  width: 100%;
  max-width: 500px;
  margin: 0 auto 40px;
  text-align: center;
}

.arcTextWrap svg {
  width: 100%;
  height: auto;
}

.arcTextWrap text {
  font-size: min(10.5vw, 35px); /* 画面幅に応じて文字サイズ可変 */
  font-weight: bold;
  fill: #ab8945;
font-family: 'Noto Sans JP', sans-serif;
}
.aboutArea01 .inner h2.tit01 {
	margin-top: -100px;
    padding: 120px 0 50px;
	font-size: min(4.9vw, 25px);
	font-weight: 700;
    display: inline-block;
    letter-spacing: .05em;
    position: relative;
}
.aboutArea01 .inner h2.tit01:before {
	content: "";
    display: block;
    position: absolute;
    top: -120px;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
	max-width: 200px;
    height: 200px;
    text-align: center;
    background-image: url(../img/top/logomark.svg);
    background-position: center;
    background-repeat: no-repeat;
}
.aboutArea01 .inner h2.tit01:after {
	content: "";
    width: 100%;
    height: 19px;
    position: absolute;
    left: 0;
    bottom: 45px;
    z-index: -1;
    display: block;
    background: #ffea00;
    border-radius: 2px;
    transition: transform .3s, background .3s;
}
.aboutArea01 .inner .txt01 {
    padding: 30px 0 80px;
    font-size: min(5.5vw, 22px);
    font-weight: 700;
	color: #80b41f;
}
.aboutArea02 {
	padding: 60px 0 100px;
	position: relative;
	background-color: #ebeef2;
}
.aboutArea02 .inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.aboutArea02 .inner h2 {
	padding-top: 10px;
    font-size: min(5.5vw, 30px);
	font-weight: 700;
	text-align: center;
	position: relative;
}
.aboutArea02 .inner h2:before {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translate(-50%, 0);
	width: 20px;
	height: 4px;
	background-color: #ab8945;
}
.aboutArea02 .inner .txt01 {
	padding: 50px 0 80px;
    font-size: min(4.5vw, 22px);
    font-weight: 700;
    color: #a98744;
	text-align: center;
}
.aboutArea02 .inner .list {
	display: flex;
	flex-wrap: wrap;
}
.aboutArea02 .inner .list dl {
	width: calc(100% / 3 - 20px);
	margin: 15px 10px;
	padding: 15px 2em;
	text-align: left;
	border-radius: 5px;
	border: 1px solid #CCC;
	background-color: #FFF;
}
.aboutArea02 .inner .list dl dt {
	text-align: center;
	background-color: #80b41f;
	color: #FFF;
	display: block;
	width: 90%;
	margin: 10px auto;
	border-radius: 25px;
	padding: 5px 1em;
    font-size: min(4vw, 18px);
	font-weight: 700;
}
.aboutArea02 .inner .list dl dd {
	padding: 20px 1em;
    font-weight: 700;
	font-size: min(4.5vw, 15px);
}
.aboutArea02 .inner .list dl dd .img {
	margin-bottom: 10px;
}
.aboutArea02 .inner .txt02 {
	max-width: 900px;
	margin: 0 auto;
	font-size: min(4.5vw, 17px);
    font-weight: 700;
    line-height: 1.6;
    padding: 20px 2em;
	text-align: center;
}
.aboutArea03 {
	padding: 60px 0 100px;
	position: relative;
	background-color: #fff;
}
.aboutArea03 .inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.aboutArea03 .inner h2 {
	padding-top: 10px;
    font-size: min(5.5vw, 30px);
	font-weight: 700;
	text-align: center;
}
.aboutArea03 .inner .list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 30px;
}
.aboutArea03 .inner .list dl {
	width: calc(100% / 3 - 20px);
	margin: 15px 10px;
	padding: 15px 2em;
	text-align: left;
	border-radius: 5px;
	border: 1px solid #CCC;
	background-color: #FFF;
}
.aboutArea03 .inner .list dl dt {
	text-align: center;
	background-color: #48acdd;
	color: #FFF;
	display: block;
	width: 90%;
	margin: 10px auto;
	border-radius: 10px;
	padding: 5px 1em;
    font-size: min(4vw, 18px);
	font-weight: 700;
}
.aboutArea03 .inner .list dl dd {
	padding: 20px 1em;
    font-weight: 700;
	font-size: min(4.5vw, 15px);
}
.aboutArea03 .inner .list dl dd .img {
	margin-bottom: 10px;
}

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

@media screen and (max-width: 767px) {
	.aboutArea01 .inner h2.tit01 {
		padding: 100px 0 50px;
		margin-top: -80px;
	}
	.aboutArea01 .inner {
		background-size: 200%;
	}
	.aboutArea01 .inner .txt01 {
		padding: 0 0 180px;
	}
	.aboutArea02 {
		margin-top: -150px;
	}
	.aboutArea02 .inner h3 {
		font-size: 20px;
		padding: 20px 4vw;
	}
	.aboutArea02 .inner .list dl {
		width: calc(100% / 1 - 20px);
	}
	.aboutArea02 .inner .txt02 {
			text-align: left;
	}
	.aboutArea03 {
		margin-top: -150px;
	}
	.aboutArea03 .inner h3 {
		font-size: 20px;
		padding: 20px 4vw;
	}
	.aboutArea03 .inner .list dl {
		width: calc(100% / 1 - 20px);
	}
	.aboutArea03 .inner .txt02 {
			text-align: left;
	}
}	
@media screen and (max-width: 400px) {
	.aboutArea01 .inner h2.tit01:before {
		top: -80px;
	}
	.aboutArea02 .inner .txt01 {
		padding: 60px 2em 20px;
		text-align: left;
	}
}
