@charset "UTF-8";

/* ---------------------------------------
  service
-----------------------------------------*/
#sec_service {
	padding-top: 2.4rem;
}

#sec_service .intro .mainimg {
	width: 100%;
	height: 38.8rem;
	border-radius: 19.4rem 19.4rem 0 0;
	overflow: hidden;
}

#sec_service .intro .mainimg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#sec_service .intro .txtwrap {
	display: flex;
	justify-content: space-between;
	padding: 0 2rem;
}

#sec_service .intro .txtwrap .ttl {
	writing-mode: vertical-rl;
	font-weight: 700;
	font-size: 2.6rem;
	margin-top: -3.34em;
	margin-left: -0.3em;
	margin-right: 2.4rem;
}

#sec_service .intro .txtwrap .ttl span {
	color: #fff;
}

#sec_service .intro .txtwrap .txt {
	margin-top: 4rem;
}

#sec_service .intro .txtwrap .concept_txt{
	margin-bottom: 2rem;
}

#sec_service .intro .txtwrap .concept span {
	font-weight: 700;
	display: block;
	margin-top: 4rem;
	margin-bottom: 2rem;
}

/*block*/

#sec_service .block {
	margin-top: 8rem;
}

#sec_service .block .blockttl {
	position: relative;
	text-align: center;
	padding-top: 4.8rem;
	margin-bottom: 2.4rem;
}

#sec_service .block .blockttl::before {
	content: "";
	width: 10rem;
	height: 3.5rem;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	margin: 0 auto;
}

#sec_service .block._01 .blockttl::before {
	background-image: url(../img/service/service01_ttldeco.svg);
}

#sec_service .block._02 .blockttl::before {
	background-image: url(../img/service/service02_ttldeco.svg);
}

#sec_service .block._03 .blockttl::before {
	background-image: url(../img/service/service03_ttldeco.svg);
}

#sec_service .block._04 .blockttl::before {
	background-image: url(../img/service/service04_ttldeco.svg);
}

#sec_service .block._05 .blockttl::before {
	background-image: url(../img/service/service05_ttldeco.svg);
}

#sec_service .block._06 .blockttl::before {
	background-image: url(../img/service/service06_ttldeco.svg);
}

#sec_service .block._07 .blockttl::before {
	background-image: url(../img/service/service07_ttldeco.svg);
}

#sec_service .block._08 .blockttl::before {
	background-image: url(../img/service/service08_ttldeco.svg);
}

#sec_service .block .blockttl span {
	display: inline-block;
	letter-spacing: 0.1em;
}

#sec_service .block .blockttl .en {
	font-size: 2.6rem;
	line-height: 1.2;
}

#sec_service .block .blockttl .ja {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.2;
	margin-top: .6rem;
}

#sec_service .block .lead {
	margin-bottom: 2.4rem;
}

#sec_service .block .item {
	margin-top: 4rem;
}

#sec_service .block .item + .item {
	margin-top: 6.4rem;
}

#sec_service .block .item .itemttl{
	text-align: center;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1;
	margin-bottom: 2.4rem;
}

#sec_service .block .img {
	margin-bottom: 2.4rem;
}

#sec_service .block .ttl {
	text-align: center;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.6875;
	letter-spacing: 0.05em;
	margin-bottom: .8rem;
}

#sec_service .block .ttl_l {
	text-align: center;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.7;
	letter-spacing: 0.05em;
	margin-bottom: .8rem;
}

#sec_service .block .txt + .ttl_l {
	margin-top: 2.4rem;
}

#sec_service .block .btn {
	margin-top: 2.4rem;
}

#sec_service .block .bnr {
	margin-top: 2.4rem;
}
#sec_service .block .btn + .btn
#sec_service .block .bnr + .bnr{
	margin-top: 1.6rem;
}

#sec_service .block .btn .note,
#sec_service .block .bnr .note {
	text-align: center;
	font-size: 1.1rem;
	line-height: 1.6;
	margin-top: .4rem;
}

#sec_service .block .logo {
	text-align: center;
	margin: 0 auto 2.4rem;
}

#sec_service .block .logo img {
	width: inherit;
}