@charset "UTF-8";

/* ---------------------------------------
  ハウスリースバック
-----------------------------------------*/


/* pagettl
--------------------------------*/

@media screen and (max-width: 768px) {
	#pagettl .ico img {
		width: 9vw;
	}
}


/* btnwrap
--------------------------------*/

.btnwrap {
	margin-top: 70px;
}

.btnwrap .txt {
	letter-spacing: 0.03em;
}

.btnwrap .txt span {
	position: relative;
	padding: 0 1em;
}

.btnwrap .txt span::before,
.btnwrap .txt span::after {
	content: "";
	width: 2px;
	height: 85%;
	background-color: #4c4948;
	position: absolute;
	top: .2em;
}

.btnwrap .txt span::before {
	transform: rotate(-22deg);
	left: 0;
}

.btnwrap .txt span::after {
	transform: rotate(22deg);
	right: 0;
}

.btnwrap .btn {
	margin-top: 15px;
}

.btnwrap .btn a {
	width: 792px;
	font-weight: 700;
	font-size: 2.1rem;
	letter-spacing: 0.15em;
	height: 66px;
	border-radius: 33px;
}

@media screen and (max-width: 768px) {
	.btnwrap {
		margin-top: 10vw;
	}
	.btnwrap .txt span {
		display: block;
		width: 100%;
		padding: 0 .5em;
	}
	.btnwrap .txt span::before,
	.btnwrap .txt span::after {
		height: 95%;
	}
	.btnwrap .txt span::before {
		transform: rotate(-20deg);
		left: -1vw;
	}
	.btnwrap .txt span::after {
		transform: rotate(20deg);
		right: -1vw;
	}
	.btnwrap .contact_btn {
		margin-top: 3vw;
	}
	.btnwrap .contact_btn .midashi {
		letter-spacing: -0.05em;
	}
	.btnwrap .btn {
		margin-top: 2vw;
	}
	.btnwrap .btn a {
		width: 100%;
		font-size: 3.6vw;
		height: 16vw;
		border-radius: 8vw;
		padding: 0 2.5em 0 1.3em;
	}
}


/* contact_btn
--------------------------------*/

.contact_btn {
	margin-top: 15px;
}

@media screen and (min-width: 769px) {
	.contact_btn {
		max-width: 996px;
	}
	.contact_btn .midashi {
		width: 388px;
	}
}

@media screen and (max-width: 768px) {
	.contact_btn {
		margin-top: 13vw;
	}
	.contact_btn .midashi {
		height: auto;
		padding: .2em 1em;
		border-radius: 100vh;
	}
}


/* sec_intro
--------------------------------*/

#sec_intro-souzoku {
	padding: 70px 0 0;
}

#sec_intro-souzoku .secttl {
	font-size: 3.2rem;
	margin-bottom: 1.5em;
}

#sec_intro-souzoku .inner {
	align-items: flex-start;
	margin: 0 auto;
}

#sec_intro-souzoku .inner .txtwrap {
	width: 513px;
	margin-top: 10px;
}

#sec_intro-souzoku .inner .txtwrap .txt {
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	text-align: justify;
}

#sec_intro-souzoku .inner .txtwrap .txt span{
	font-weight: 700;
	color: #f5aa29;
}

#sec_intro-souzoku .inner .img {
	width: 650px;
	border-radius: 10px;
	overflow: hidden;
}

#sec_intro-souzoku .reason {
	margin-top: 100px;
}

#sec_intro-souzoku .reason .box {
	position: relative;
	width: 588px;
	background-color: #ffc93c;
	padding: 54px 40px 35px;
	border-radius: 10px;
}

#sec_intro-souzoku .reason .box .boxttl {
	font-size: 2.2rem;
	line-height: 1;
	letter-spacing: 0.1em;
	display: inline-block;
	width: 254px;
	padding: 12px 1.5em;
	background-color: #ffe49d;
	border-radius: 23px;
	position: absolute;
	left: 0;
	right: 0;
	top: -23px;
	margin: 0 auto;
	z-index: 1;
}

#sec_intro-souzoku .reason .box .boxttl::before {
	content: "";
	width: 8px;
	height: 40px;
	background-color: #ffe49d;
	border-radius: 4px;
	position: absolute;
	left: 50%;
	bottom: -20px;
	transform: rotate(40deg);
	z-index: -1;
}

#sec_intro-souzoku .reason .box .ttl {
	font-size: 2.8rem;
	line-height: 1.5;
	margin-bottom: .5em;
}

#sec_intro-souzoku .reason .box .txt {
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	text-align: justify;
}

#sec_intro-souzoku .reason .lead {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.8;
	letter-spacing: 0.12em;
	font-feature-settings: "palt";
	margin-top: 1.875em;
}

#sec_intro-souzoku .reason .lead span.orange {
	color: #ff6602;
}

#sec_intro-souzoku .reason .lead .marugo {
	line-height: 1.7;
	display: inline-block;
	padding: 0 0.25em 0 0.5em;
	font-size: 3.2rem;
	margin-top: .4em;
	position: relative;
}

#sec_intro-souzoku .reason .lead .marugo::before {
	content: "";
	width: 100%;
	height: 18px;
	background-color: #ffc93c;
	border-radius: 9px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}

#sec_intro-souzoku .consultation {
	margin-top: 130px;
}

#sec_intro-souzoku .consultation .ttl {
	font-size: 3.2rem;
	line-height: 1.5625;
	letter-spacing: 0.08em;
	padding-bottom: 1em;
	background: url(../img/souzoku/intro_consultation_ttl_bg.png) no-repeat center bottom .5em;
}

#sec_intro-souzoku .consultation .ttl>span {
	padding: 0 1.3em 0 1.9em;
	position: relative;
	display: inline-block;
}

#sec_intro-souzoku .consultation .ttl>span::before,
#sec_intro-souzoku .consultation .ttl>span::after {
	content: "";
	width: 6px;
	height: 90%;
	background-color: #4c4948;
	border-radius: 3px;
	position: absolute;
	top: .4em;
}

#sec_intro-souzoku .consultation .ttl>span::before {
	transform: rotate(-22deg);
	left: 0;
}

#sec_intro-souzoku .consultation .ttl>span::after {
	transform: rotate(22deg);
	right: 0;
}

#sec_intro-souzoku .consultation .ttl>span span {
	position: relative;
}

#sec_intro-souzoku .consultation .ttl>span span::before {
	content: "";
	width: 100%;
	height: 4px;
	background-color: #ffc93c;
	border-radius: 2px;
	position: absolute;
	left: 0;
	bottom: -.1em;
}

#sec_intro-souzoku .consultation .lead {
	max-width: 792px;
	margin: 0 auto;
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
}

#sec_intro-souzoku .consultation .img {
	overflow: hidden;
	border-radius: 10px;
	margin-top: 40px;
}

#sec_intro-souzoku .consultation .txtwrap {
	position: relative;
	width: 892px;
	margin: -170px auto 0;
	background-color: rgba(239, 238, 230, .9);
	border-radius: 10px;
	padding: 40px 70px 37px;
}

#sec_intro-souzoku .consultation .txtwrap::before,
#sec_intro-souzoku .consultation .txtwrap::after {
	content: "";
	width: 73px;
	height: 244px;
	background: url(../img/souzoku/intro_consultation_txt_bg.png) no-repeat center / 100% auto;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

#sec_intro-souzoku .consultation .txtwrap::before {
	left: -20px;
}

#sec_intro-souzoku .consultation .txtwrap::after {
	transform: scale(-1, 1) translateY(-50%);
	right: -20px;
}

#sec_intro-souzoku .consultation .txtwrap .ttl {
	font-size: 2.8rem;
}

#sec_intro-souzoku .consultation .txtwrap .list li {
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (max-width: 768px) {
	#sec_intro-souzoku {
		padding: 12vw 0 0;
	}
	#sec_intro-souzoku .secttl {
		font-size: 5.8vw;
	}
	#sec_intro-souzoku .inner .txtwrap {
		width: 100%;
		margin-top: 4vw;
	}
	#sec_intro-souzoku .inner .txtwrap .txt {
		font-size: 3.2vw;
	}
	#sec_intro-souzoku .inner .img {
		width: 100%;
		border-radius: 1.4vw;
	}
	#sec_intro-souzoku .reason {
		margin-top: 16vw;
	}
	#sec_intro-souzoku .reason .box {
		width: 100%;
		padding: 10vw 6vw 6vw;
		border-radius: 1.4vw;
	}
	#sec_intro-souzoku .reason .box+.box {
		margin-top: 10vw;
	}
	#sec_intro-souzoku .reason .box .boxttl {
		font-size: 4vw;
		width: 50vw;
		padding: 2vw 1.5em;
		border-radius: 4vw;
		top: -4vw;
	}
	#sec_intro-souzoku .reason .box .boxttl::before {
		width: 2vw;
		height: 8vw;
		border-radius: 1vw;
		bottom: -4vw;
	}
	#sec_intro-souzoku .reason .box .ttl {
		font-size: 5.2vw;
	}
	#sec_intro-souzoku .reason .lead {
		font-size: 4.2vw;
	}
	#sec_intro-souzoku .reason .lead .marugo {
		font-size: 5.4vw;
		margin-top: .4em;
		position: relative;
	}
	#sec_intro-souzoku .reason .lead .marugo::before {
		content: none;
	}
	#sec_intro-souzoku .reason .lead .marugo span {
		display: inline-block;
		position: relative;
	}
	#sec_intro-souzoku .reason .lead .marugo span::before {
		content: "";
		width: 100%;
		height: 2.8vw;
		background-color: #ffc93c;
		border-radius: 1.4vw;
		position: absolute;
		left: 0;
		bottom: .1em;
		z-index: -1;
	}
	#sec_intro-souzoku .consultation {
		margin-top: 20vw;
	}
	#sec_intro-souzoku .consultation .ttl {
		font-size: 5.6vw;
		background: url(../img/souzoku/intro_consultation_ttl_bg.png) no-repeat center bottom .5em;
		margin: 0 -1vw;
	}
	#sec_intro-souzoku .consultation .ttl>span {
		padding: 0 .6em;
		display: block;
	}
	#sec_intro-souzoku .consultation .ttl>span::before,
	#sec_intro-souzoku .consultation .ttl>span::after {
		width: 1vw;
		border-radius: .5vw;
	}
	#sec_intro-souzoku .consultation .ttl>span::before {
		transform: rotate(-12deg);
	}
	#sec_intro-souzoku .consultation .ttl>span::after {
		transform: rotate(12deg);
	}
	#sec_intro-souzoku .consultation .ttl>span span::before {
		height: .8vw;
		border-radius: .4vw;
	}
	#sec_intro-souzoku .consultation .lead {
		max-width: 100%;
	}
	#sec_intro-souzoku .consultation .img {
		overflow: hidden;
		border-radius: 0;
		margin-top: 8vw;
		margin: 8vw -12vw 0;
	}
	#sec_intro-souzoku .consultation .txtwrap {
		width: 92vw;
		margin: -14vw -4vw 0;
		border-radius: 1.4vw;
		padding: 6vw 4vw;
	}
	#sec_intro-souzoku .consultation .txtwrap::before,
	#sec_intro-souzoku .consultation .txtwrap::after {
		width: 16.2vw;
		height: 54.2vw;
		top: 19vw;
		transform: none;
	}
	#sec_intro-souzoku .consultation .txtwrap::before {
		left: -6vw;
	}
	#sec_intro-souzoku .consultation .txtwrap::after {
		transform: scale(-1, 1);
		right: -6vw;
	}
	#sec_intro-souzoku .consultation .txtwrap .ttl {
		font-size: 5.2vw;
	}
	#sec_intro-souzoku .consultation .txtwrap .list {
		padding: 0 5vw;
	}
}


/* trouble
--------------------------------*/

#sec_trouble {
	padding: 100px 0 0;
}

#sec_trouble .secttl {
	margin-bottom: -12px;
}

#sec_trouble .secttl .midashi {
	font-size: 3.6rem;
	letter-spacing: 0.05em;
	display: inline-block;
	position: relative;
	padding: 0 1.6em;
}

#sec_trouble .secttl .midashi::before,
#sec_trouble .secttl .midashi::after {
	content: "";
	width: .5em;
	height: 1.5em;
	background: url(../img/souzoku/ttl_kakko.png) no-repeat center / 100% auto;
	position: absolute;
	top: 0;
}

#sec_trouble .secttl .midashi::before {
	left: 0;
}

#sec_trouble .secttl .midashi::after {
	transform: scale(-1, 1);
	right: 0;
}

#sec_trouble .block {
	align-items: center;
	flex-wrap: nowrap;
}

#sec_trouble .block+.block {
	margin-top: 50px;
}

#sec_trouble .block .list {
	width: 740px;
	margin-right: -130px;
	margin-top: 20px;
}

#sec_trouble .block .list li {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.07em;
	font-feature-settings: "palt";
	position: relative;
	padding-left: 1.8em;
}

#sec_trouble .block .list li+li {
	margin-top: 1em;
}

#sec_trouble .block .list li::before {
	content: "";
	width: 20px;
	height: 19px;
	background: url(../img/souzoku/ico_list.png) no-repeat center / 100% auto;
	position: absolute;
	left: 0;
	top: .3em;
}

#sec_trouble .block .img {
	width: 590px;
	overflow: hidden;
	border-radius: 10px;
}

#sec_trouble .block .txt {
	width: 540px;
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0.12em;
	font-feature-settings: "palt";
}

#sec_trouble .block .btnwrap {
	width: 587px;
	margin-top: 0;
}

#sec_trouble .block .btnwrap .btn {
	margin-top: 0;
}

#sec_trouble .block .btnwrap .btn a {
	min-width: inherit;
	width: 100%;
}

#sec_trouble .block .btnwrap .btn+.btn {
	margin-top: 30px;
}

#sec_trouble .block+.btnwrap {
	margin-top: 90px;
}

@media screen and (max-width: 768px) {
	#sec_trouble {
		padding: 18vw 0 0;
	}
	#sec_trouble .secttl {
		margin-bottom: -4vw;
	}
	#sec_trouble .secttl .midashi {
		display: block;
		font-size: 6vw;
		padding: 0 1.5em;
		margin: 0;
		line-height: 1.4;
	}
	#sec_trouble .secttl .midashi::before,
	#sec_trouble .secttl .midashi::after {
		width: 5.6vw;
		height: 100%;
		background: url(../img/souzoku/ttl_kakko_sp.png) no-repeat center / 100% auto;
	}
	#sec_trouble .block+.block {
		margin-top: 8vw;
	}
	#sec_trouble .block .list {
		width: 100%;
		margin-right: 0;
		margin-top: 4vw;
	}
	#sec_trouble .block .list li {
		font-size: 4vw;
	}
	#sec_trouble .block .list li::before {
		width: 4vw;
		height: 3.8vw;
		top: .3em;
	}
	#sec_trouble .block .img {
		width: 100%;
		border-radius: 1.4vw;
	}
	#sec_trouble .block .txt {
		width: 100%;
	}
	#sec_trouble .block .btnwrap {
		width: 100%;
		margin-top: 6vw;
	}
	#sec_trouble .block .btnwrap .btn+.btn {
		margin-top: 6vw;
	}
	#sec_trouble .block+.btnwrap {
		margin-top: 12vw;
	}
}


/* service
--------------------------------*/

#sec_service {
	padding: 100px 0 120px;
}

#sec_service .secttl {
	position: relative;
	font-size: 3.6rem;
	letter-spacing: 0.15em;
	margin-bottom: 1em;
}

#sec_service .secttl::before {
	content: "";
	width: 100%;
	height: 20px;
	background-color: #d9d7c1;
	border-radius: 10px;
	position: absolute;
	left: 0;
	bottom: -3px;
	z-index: -1;
}

#sec_service .problem .ttl {
	font-size: 3.6rem;
	margin-bottom: -.75em;
	position: relative;
	z-index: 1;
}

#sec_service .problem .ttl .midashi {
	letter-spacing: 0.1em;
	display: inline-block;
	position: relative;
	padding: 0 1em;
}

#sec_service .problem .ttl .midashi::before,
#sec_service .problem .ttl .midashi::after {
	content: "";
	width: .5em;
	height: 1.5em;
	background: url(../img/leaseback/intro_secttl.png) no-repeat center / 100% auto;
	position: absolute;
	top: 0;
}

#sec_service .problem .ttl .midashi::before {
	left: 0;
}

#sec_service .problem .ttl .midashi::after {
	transform: scale(-1, 1);
	right: 0;
}

#sec_service .problem .box {
	height: 592px;
	border-radius: 15px;
	padding: 80px 40px 0;
	background: #fff4d8;
}

#sec_service .problem .txtwrap {
	margin-top: -78px;
}

#sec_service .problem .txt {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.8;
	position: relative;
	z-index: 1;
}

#sec_service .problem .txt+.txt {
	margin-top: 50px;
}

#sec_service .problem .txt.marugo {
	font-size: 3.2rem;
}

#sec_service .problem .txt.marugo::before {
	content: "";
	width: 341px;
	height: 173px;
	background: url(../img/souzoku/service_arw.png) no-repeat center / 100% auto;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: -78px;
	z-index: -1;
}

#sec_service .problem .txt span {
	position: relative;
}

#sec_service .problem .txt span::before {
	content: "";
	width: 100%;
	height: 4px;
	background-color: #ffc93c;
	border-radius: 2px;
	position: absolute;
	left: 0;
	bottom: -4px;
	z-index: -1;
}

#sec_service .block {
	margin-top: 100px;
}

#sec_service .block .blockttl {
	position: relative;
	font-size: 2.9rem;
	letter-spacing: 0.15em;
	margin-bottom: 2em;
}

#sec_service .block .blockttl::before {
	content: "";
	width: 100%;
	height: 20px;
	background-color: #fff4d8;
	border-radius: 10px;
	position: absolute;
	left: 0;
	bottom: -2px;
	z-index: -1;
}

#sec_service .block .blockttl span {
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.8rem;
	line-height: 1.4;
	letter-spacing: 0.08em;
	margin-bottom: .5em;
	position: relative;
	padding: 0 1em;
}

#sec_service .block .blockttl span::before,
#sec_service .block .blockttl span::after {
	content: "";
	width: 2px;
	height: 85%;
	background-color: #4c4948;
	position: absolute;
	top: .2em;
}

#sec_service .block .blockttl span::before {
	transform: rotate(-22deg);
	left: 0;
}

#sec_service .block .blockttl span::after {
	transform: rotate(22deg);
	right: 0;
}

#sec_service .block .box_chekck {
	/* background-color: #efeee6; */
	border: 4px solid #f0a172;
	border-radius: 20px;
	padding: 0 40px 34px;
	text-align: center;
}

#sec_service .block .box_chekck dt {
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	margin-bottom: 7px;
	transform: translateY(-50%);
	background: #fff;
	display: inline-block;
	padding: 0 0.5em;
}

#sec_service .block .box_chekck dd {
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
}

#sec_service .block01 .img {
	width: 50%;
	margin-top: 15px;
}

#sec_service .block01 .boxwrap {
	width: 50%;
}

#sec_service .block01 .boxwrap .box_chekck+.box_chekck {
	margin-top: 40px;
}

#sec_service .block01 .boxwrap .box_chekck dd {
	text-align: center;
}

#sec_service .block01 .box {
	width: 588px;
	background-color: #0468b6;
	border-radius: 20px;
	padding: 24px 44px;
	margin-top: 60px;
}

#sec_service .block01 .box .ttl {
	color: #fff;
	font-size: 2.2rem;
	line-height: 1.5;
	margin-bottom: 1.3em;
	padding-bottom: .8em;
	border-bottom: 1px dotted #fff;
}

#sec_service .block01 .box ul li {
	color: #fff;
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	position: relative;
	padding-left: 1.5em;
}

#sec_service .block01 .box ul li+li {
	margin-top: .5em;
}

#sec_service .block01 .box ul li::before {
	content: "";
	width: .625em;
	height: .625em;
	border: 2px solid #fff;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: .8em;
}

#sec_service .block02 .txtwrap {
	position: relative;
}

#sec_service .block02 .txtwrap .illust {
	position: absolute;
	bottom: 58px;
}

#sec_service .block02 .txtwrap .illust01 {
	left: 65px;
}

#sec_service .block02 .txtwrap .illust02 {
	right: 65px;
}

#sec_service .block02 .txtwrap .txt01 {
	position: relative;
}

#sec_service .block02 .txtwrap .txt01::before {
	content: "";
	width: 160px;
	height: 81px;
	background: url(../img/souzoku/service_arw.png) no-repeat center / 100% auto;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -50px;
	z-index: -1;
}

#sec_service .block02 .txtwrap .txt01 .txt {
	font-size: 2rem;
	line-height: 2;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	margin-bottom: .4em;
}

#sec_service .block02 .txtwrap .txt01 .txt span{
	position: relative;
	display: inline-block;
}
#sec_service .block02 .txtwrap .txt01 .txt span::before {
	content: "";
	width: 100%;
	height: 4px;
	background-color: #ffc93c;
	border-radius: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
#sec_service .block02 .txtwrap .txt01 .list {
	font-size: 1.6rem;
	line-height: 1.75;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
}

#sec_service .block02 .txtwrap .txt02 {
	margin-top: 60px;
}

#sec_service .block02 .txtwrap .txt02 .marugo {
	font-size: 3.2rem;
	line-height: 1.6;
}

#sec_service .block02 .txtwrap .txt02 .marugo>span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 .25em;
}

#sec_service .block02 .txtwrap .txt02 .marugo>span::before {
	content: "";
	width: 100%;
	height: 18px;
	background-color: #ffc93c;
	border-radius: 9px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}

#sec_service .block02 .txtwrap .txt02 .txt {
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	margin-top: .5em;
}

#sec_service .block03 .boxwrap {
	justify-content: flex-start;
}

#sec_service .block03 .boxwrap .box_chekck {
	width: 384px;
}

#sec_service .notice {
	font-size: 1.4rem;
	margin-top: 20px;
}

@media screen and (min-width: 769px) {
	#sec_service .block03 .boxwrap .box_chekck+.box_chekck:not(:nth-child(3n + 1)) {
		margin-left: 24px;
	}
	#sec_service .block03 .boxwrap .box_chekck:nth-child(n + 4) {
		margin-top: 35px;
	}
}

@media screen and (max-width: 768px) {
	#sec_case {
		padding: 18vw 0 24vw;
	}
	#sec_service .secttl {
		font-size: 6vw;
	}
	#sec_service .secttl::before {
		height: 2.8vw;
		border-radius: 1.4vw;
		bottom: 0;
	}
	#sec_service .problem .ttl {
		display: block;
    font-size: 6vw;
    margin: 0;
    line-height: 1.4;
		margin: 0 -3vw -8vw;
	}
	#sec_service .problem .ttl .midashi{
		width: 100%;
	}
	#sec_service .problem .ttl .midashi::before,
	#sec_service .problem .ttl .midashi::after {
		width: 5.6vw;
		height: 100%;
		background: url(../img/souzoku/ttl_kakko_sp.png) no-repeat center / 100% auto;
	}
	#sec_service .problem .ttl .midashi::before {
		left: 0;
	}
	#sec_service .problem .ttl .midashi::after {
		transform: scale(-1, 1);
		right: 0;
	}
	#sec_service .problem .box {
		height: 110vw;
		border-radius: 2vw;
		padding: 14vw 4vw 0;
	}
	#sec_service .problem .txtwrap {
		margin-top: -78px;
	}
	#sec_service .problem .txt {
		font-size: 4.4vw;
		letter-spacing: 0;
	}
	#sec_service .problem .txt+.txt {
		margin-top: 10vw;
	}
	#sec_service .problem .txt.marugo {
		font-size: 5.2vw;
		letter-spacing: 0;
	}
	#sec_service .problem .txt.marugo::before {
		width: 56.8vw;
    height: 29vw;
    top: -4vw;
	}
	#sec_service .problem .txt span::before {
		height: 0.6vw;
    border-radius: 0.3vw;
		bottom: -.1em;
	}
	#sec_service .block {
		margin-top: 12vw;
	}
	#sec_service .block .blockttl {
		font-size: 5.2vw;
		letter-spacing: 0.1em;
	}
	#sec_service .block .blockttl::before {
		height: 2.8vw;
    border-radius: 1.4vw;
    bottom: 0;
	}
	#sec_service .block .blockttl span {
		font-size: 3.6vw;
	}
	#sec_service .block .box_chekck {
		border-radius: 2.4vw;
		padding: 0 6vw 6vw;
	}
	#sec_service .block .box_chekck dt {
		font-size: 4.8vw;
		margin-bottom: 1.4vw;
	}
	#sec_service .block .box_chekck dd {
		text-align: center;
		font-size: 3.3vw;
	}
	#sec_service .block01 .img {
		width: 70%;
		margin: 0 auto 10vw;
	}
	#sec_service .block01 .boxwrap {
		width: 100%;
	}
	#sec_service .block01 .boxwrap .box_chekck+.box_chekck {
		margin-top: 8vw;
	}
	#sec_service .block01 .box {
		width: 100%;
		border-radius: 2.4vw;
		padding: 5vw 5vw;
		margin-top: 8vw;
	}
	#sec_service .block01 .box .ttl {
		font-size: 4.2vw;
	}
	#sec_service .block01 .box ul li {
		font-size: 3.2vw;
	}
	#sec_service .block02 .txtwrap .illust {
		position: static;
		display: inline-block;
		width: 49%;
		margin: 0 auto;
		text-align: center;
		margin-top: 4vw;
	}
	#sec_service .block02 .txtwrap .illust img{
		width: 24vw;
	}
	#sec_service .block02 .txtwrap .illust01 {
		left: 65px;
	}
	#sec_service .block02 .txtwrap .illust02 {
		right: 65px;
	}
	#sec_service .block02 .txtwrap .txt01::before {
		width: 26vw;
		height: 13.5vw;
		bottom: -10vw;
	}
	#sec_service .block02 .txtwrap .txt01 .txt {
		font-size: 3.8vw;
		letter-spacing: 0.04em;
	}
	#sec_service .block02 .txtwrap .txt01 .txt span::before {
		height: .6vw;
		border-radius: .3vw;
	}
	#sec_service .block02 .txtwrap .txt01 .list {
		font-size: 3.2vw;
		letter-spacing: 0.04em;
	}
	#sec_service .block02 .txtwrap .txt02 {
		margin-top: 12vw;
	}
	#sec_service .block02 .txtwrap .txt02 .marugo {
		font-size: 5.4vw;
	}
	#sec_service .block02 .txtwrap .txt02 .marugo>span{
		padding: 0;
	}
	#sec_service .block02 .txtwrap .txt02 .marugo>span span{
		position: relative;
		display: inline-block;
		padding: 0 0 0 .25em;
	}
	#sec_service .block02 .txtwrap .txt02 .marugo>span::before {
		content: none;
	}
	#sec_service .block02 .txtwrap .txt02 .marugo>span span::before {
		content: "";
		width: 100%;
		height: 2.8vw;
		background-color: #ffc93c;
		border-radius: 1.4vw;
		position: absolute;
		left: 0;
		bottom: 0.1em;
		z-index: -1;
	}
	#sec_service .block02 .txtwrap .txt02 .txt {
		font-size: 3.2vw;
	}
	#sec_service .block03 .boxwrap {
		justify-content: flex-start;
	}
	#sec_service .block03 .boxwrap .box_chekck {
		width: 100%;
	}
	#sec_service .block03 .boxwrap .box_chekck  + .box_chekck{
		margin-top: 8vw;
	}
}
