@charset "UTF-8";

/* ------------------------------------------------
                    LP css
--------------------------------------------------- */

/*---------- 共通 ----------*/
.m-sec-inn {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

.p-txt-orange {
	color: #DF6B29;
}
.p-txt-bold {
	font-weight: 700;
}
.p-txt-green {
	color: #31AB6D;
}
.p-txt-marker {
	display: inline;
	padding: 0 2px 2px;
	background: linear-gradient(transparent 70%, #FFE59C 0%);
}
.p-txt-em {
	position: relative;
}
.p-txt-em::after {
	content: '・';
	font-weight: 400;
	position: absolute;
	top: -65%;
	left: 0;
}
.p-txt-dashed {
	background-image : linear-gradient(to right, #58544F, #58544F 7px, transparent 7px, transparent 2px);  /* 幅2の線を作る */
	background-size: 14px 2px;
	background-position: left bottom;
	background-repeat: repeat-x; 
}

.p-txt-indent {
	text-indent: -1em;
	padding-left: 1em;
}
.m-link-blank {
	display: inline;
	color: #DF6B29;
	font-size: 1.4rem;
	border-bottom: 1px solid #DF6B29;
	position: relative;
}
.m-link-blank::after {
	content: '';
	width: 15px;
	height: 13px;
	display: inline-block;
	margin-left: 2px;
	background: url("../images/icn_link_blank.svg") center center no-repeat;
	background-size: 100%;
}

.p-btn {
	min-width: 420px;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	display: inline-block;
    border: 3px solid #fff;
	border-radius: 48px;
    padding: 0 60px;
    text-align: center;
    outline: none;
	box-shadow: 0 0 12px rgba(0,0,0,0.16);
    transition: ease .2s;
}

.p-btn p {
	width: 100%;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 3;
	color: #fff;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1;
	transition: 0.3s ease-in-out;
}
.p-btn p span {
	margin-left: 20px;
	font-size: 2.8rem;
}

.p-btn-document {
	margin-right: 40px;
	background: #F2B134;
}
.p-btn-document::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: #fff;
	border-radius: 48px;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: right top;
}
.p-btn-document::after {
	content: '';
	width: 9px;
	height: 15px;
	background: url("../images/icn_arrow_white.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: calc(50% - 7.5px);
	right: 20px;
	transition: 0.3s ease-in-out;
}
.p-btn-document p::before {
	content: '';
	width: 36px;
	height: 36px;
	display: inline-block;
	background: url("../images/icn_document_white.svg") center center no-repeat;
	background-size: 100%;
	transition: 0.3s ease-in-out;
}

.p-btn-contact {
	background: #31AB6D;
}
.p-btn-contact::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: #fff;
	border-radius: 48px;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: right top;
}
.p-btn-contact::after {
	content: '';
	width: 9px;
	height: 15px;
	background: url("../images/icn_arrow_white.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: calc(50% - 7.5px);
	right: 20px;
	transition: 0.3s ease-in-out;
}
.p-btn-contact p::before {
	content: '';
	width: 36px;
	height: 36px;
	display: inline-block;
	background: url("../images/icn_contact_white.svg") center center no-repeat;
	background-size: 100%;
	transition: 0.3s ease-in-out;
}



.p-btn-blank {
	width: 90%;
	max-width: 200px;
	margin: 20px auto 0;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	display: block;
    border: 2px solid #DF6B29;
	background: #fff;
	border-radius: 48px;
    padding: 0 15px 0 30px;
    text-align: center;
    outline: none;
	box-shadow: 0 0 12px rgba(0,0,0,0.16);
    transition: ease .2s;
}

.p-btn-blank p {
	width: 100%;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 3;
	color: #DF6B29;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1;
	transition: 0.3s ease-in-out;
}

.p-btn-blank::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: #DF6B29;
	border-radius: 48px;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: right top;
}
.p-btn-blank p::after {
	content: '';
	width: 18px;
	height: 15px;
	margin-left: 5px;
	display: inline-block;
	background: url("../images/icn_btn_blank_orange.png") center center no-repeat;
	background-size: 100%;
	transition: 0.3s ease-in-out;
}


@media (min-width: 768px) {

	.p-btn-document:hover {
		border: 3px solid #F2B134;
	}
	.p-btn-document:hover p {
		color: #F2B134;	
	}
	.p-btn-document:hover p::before {
		background: url("../images/icn_document_orange.svg") center center no-repeat;
		background-size: 100%;
	}
	.p-btn-document:hover::before{
		transform-origin: left top;
		transform: scale(1, 1);
	}
	.p-btn-document:hover::after {
		background: url("../images/icn_arrow_orange.svg") center center no-repeat;
		background-size: 100%;
		z-index: 3;
	}

	.p-btn-contact:hover {
		border: 3px solid #31AB6D;
	}
	.p-btn-contact:hover p {
		color: #31AB6D;	
	}
	.p-btn-contact:hover p::before {
		background: url("../images/icn_contact_green.svg") center center no-repeat;
		background-size: 100%;
	}
	.p-btn-contact:hover::before{
		transform-origin: left top;
		transform: scale(1, 1);
	}
	.p-btn-contact:hover::after {
		background: url("../images/icn_arrow_green.svg") center center no-repeat;
		z-index: 3;
	}

	
	.p-btn-blank:hover {
		border: 2px solid #fff;
	}
	.p-btn-blank:hover p {
		color: #fff;	
	}
	.p-btn-blank:hover p::after {
		background: url("../images/icn_btn_blank_white.png") center center no-repeat;
		background-size: 100%;
	}
	.p-btn-blank:hover::before{
		transform-origin: left top;
		transform: scale(1, 1);
	}
	
}
@media (max-width: 767px) {
	.m-sec-inn {
	}
	
	.m-link-blank {
		font-size: 3.6vw;
	}
	.m-link-blank::after {
		content: '';
		width: 3vw;
		height: 2.8vw;
		display: inline-block;
		margin-left: 0.5vw;
	}

	.p-btn {
		width: 90%;
		min-width: initial;
		margin: 0 auto;
		position: relative;
		overflow: hidden;
		text-decoration: none;
		display: inline-block;
		border: 3px solid #fff;
		border-radius: 20vw;
		padding: 0 8vw;
	}

	.p-btn p {
		width: 100%;
		height: auto;
		padding: 3vw 0 3.2vw;
		display: block;
		font-size: 4.2vw;
		line-height: 1.6;
	}
	.p-btn p span {
		margin-left: 3vw;
		font-size: 5.2vw;
	}

	.p-btn-document {
		margin-right: auto;
		margin-bottom: 4vw;
	}
	.p-btn-document::before {
		content: '';
		border-radius: 20vw;
	}
	.p-btn-document::after {
		content: '';
		width: 2vw;
		height: 4vw;
		position: absolute;
		top: calc(50% - 2vw);
		right: 4vw;
	}
	.p-btn-document p::before {
		content: '';
		width: 6vw;
		height: 6vw;
		vertical-align: text-bottom;
	}

	.p-btn-contact {
		background: #31AB6D;
	}
	.p-btn-contact::before {
		content: '';
		border-radius: 20vw;
	}
	.p-btn-contact::after {
		content: '';
		width: 2vw;
		height: 4vw;
		position: absolute;
		top: calc(50% - 2vw);
		right: 4vw;
	}
	.p-btn-contact p::before {
		content: '';
		width: 6vw;
		height: 6vw;
		vertical-align: text-bottom;
	}
	
	.p-btn-blank {
		width: 70%;
		max-width: initial;
		margin: 4vw auto 0;
		position: relative;
		overflow: hidden;
		text-decoration: none;
		display: block;
		border-radius: 20vw;
		padding: 0 4vw;
	}

	.p-btn-blank p {
		width: 100%;
		height: auto;
		padding: 3vw 0 3.2vw;
		display: block;
		font-size: 3.4vw;
		line-height: 1;
	}

	.p-btn-blank::before {
		content: '';
		border-radius: 20vw;
	}
	.p-btn-blank p::after {
		content: '';
		width: 3.5vw;
		height: 3vw;
		margin-left: 1vw;
		display: inline-block;
		background: url("../images/icn_btn_blank_orange.png") center center no-repeat;
		background-size: 100%;
		transition: 0.3s ease-in-out;
	}
    
}


/*---------- CV ----------*/
.p-cv {
	width: 100%;
	margin: -4vw auto 0;
	padding: 80px 0 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	background: url("../images/bg_cv_02_pc.svg") center top no-repeat;
	background-size: cover;
	position: relative;
	z-index: 4;
}
.p-cv-ttl-wrap {
	width: 100%;
	margin: 0 auto 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.p-cv-ttl-img {
	margin-right: 20px;
}
.p-cv-ttl-img01 {
	width: 94px;
}
.p-cv-ttl-img02 {
	width: 126px;
}
.p-cv-ttl-img03 {
	width: 164px;
}
.p-cv-ttl {
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size: 3.0rem;
	line-height: 1.6;
}
.p-font-middle {
	font-size: 3.4rem;
}
.p-font-large {
	font-size: 4.2rem;
}
.p-txt-bg {
	margin: 0 5px;
	padding: 5px 5px 8px;
	display: inline-block;
	background: #fff;
	color: #413B32;
	border-radius: 4px;
	font-size: 4.2rem;
	line-height: 1;
}

@media (max-width: 767px) {
	.p-cv {
		width: 100%;
		margin: -4vw auto 0;
		padding: 12vw 0 10vw;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		background: url("../images/bg_cv_02_sp.svg") center top no-repeat;
		background-size: cover;
		position: relative;
		z-index: 4;
	}
	.p-cv-ttl-wrap {
		width: 90%;
		margin: 0 auto 4vw;
		display: flex;
		align-items: flex-end;
		justify-content: center;
	}
	.p-cv-ttl-img {
	}
	.p-cv-ttl-img01 {
		width: 20%;
		margin: 0 -3% 0 0;
	}
	.p-cv-ttl-img02 {
		width: 25%;
		margin: 0 -8% 0 0;
	}
	.p-cv-ttl {
		width: 81%;
		font-size: 3.8vw;
		line-height: 2;
	}
	.p-font-middle {
		font-size: 4.8vw;
	}
	
	.p-cv-ttl .p-txt-em {
		font-size: 7.0vw;
		line-height: 1.8;
	}
	.p-font-large {
		font-size: 7.4vw;
		line-height: 1.2;
	}
	.p-txt-bg {
		margin: 0 1vw;
		padding: 1vw 1vw 1.5vw;
		border-radius: 4px;
		font-size: 7.8vw;
	}
    
}

/*---------- header ----------*/
header {
    width: 100%;
	/*padding: 0 60px;*/
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99;
}
header h1 {
    width: 127px;
    margin: 30px auto 0 0;
    display: block;
}

@media (max-width: 767px) {
	header {
		width: 100%;
		padding: 0 5%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 99;
	}
	header h1 {
		width: 20%;
		margin: 6vw auto 0 0;
		display: block;
	}
    
}


/*---------- MV ----------*/
.p-mv {
	width: 100%;
	padding-bottom: 150px;
	position: relative;
}
.p-mv-img {
	width: 100%;
}
.p-mv-cv {
	width: 100%;
	padding: 104px 0 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url("../images/bg_cv_01_pc.svg") center top no-repeat;
	background-size: cover;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

@media (max-width: 767px) {
	.p-mv {
		width: 100%;
		/* padding-bottom: 30vw; */
		padding-bottom: 57vw;
		position: relative;
	}
	.p-mv-img {
		width: 100%;
	}

	.p-mv-cv {
		width: 100%;
		padding: 12vw 0;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		background: url("../images/bg_cv_01_sp.svg") center top no-repeat;
		background-size: cover;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 2;
	}

	/* 以下、無料冊子非表示時のみ */
	.p-mv-cv .p-btn p {
		width: 90%;
		height: auto;
		margin: 0 auto;
		padding: 3vw 4vw 3.2vw 11vw;
		display: block;
		font-size: 4.2vw;
		line-height: 1.6;
		text-align: left;
	}
	
	.p-mv-cv .p-btn p span {
		margin-left: 0;
		font-size: 5.2vw;
	}
	.p-mv-cv .p-btn-document, 
	.p-mv-cv .p-btn-contact {
		text-align: left;
		padding: 0 8vw;
	}
	.p-mv-cv .p-btn-document::before, 
	.p-mv-cv .p-btn-contact::before {
		content: '';
		border-radius: 10vw;
	}
	.p-mv-cv .p-btn-document::after, 
	.p-mv-cv .p-btn-contact::after {
		content: '';
		width: 2vw;
		height: 4vw;
		position: absolute;
		top: calc(50% - 2vw);
		right: 4vw;
	}
	.p-mv-cv .p-btn-document p::before, 
	.p-mv-cv .p-btn-contact p::before {
		content: '';
		width: 6vw;
		height: 6vw;
		position: absolute;
		top: calc(50% - 3vw);
		left: 0;
	}
	/* ここまで、無料冊子非表示時のみ */
    
}



/*---------- こんなお悩みありませんか ----------*/
.p-worry {
	width: 100%;
	padding: 95px 0 5vw;
	position: relative;
	background: url("../images/bg_worry.svg") center top no-repeat;
	background-size: cover;
}
.p-worry::after {
	content: '';
	width: 100%;
	height: 8vw;
	background: url("../images/bg_worry_bottom_pc.svg") center bottom no-repeat;
	background-size: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}
#hab.p-worry::after {
	background-image: none;
}
.p-worry-mh {
	text-align: center;
	color: #413B32;
	font-weight: 700;
	font-size: 3.4rem;
	letter-spacing: 0.06em;
	line-height: 1;
}
.p-worry-mh .p-worry-mh-01 {
	display: inline-block;
	font-size: 4.4rem;
	transform: rotate(-7deg);
}
.p-worry-mh .p-worry-mh-02 {
	display: inline-block;
	font-size: 4.4rem;
	transform: rotate(7deg);
	position: relative;
	top: 5px;
}
.p-worry-mh .p-worry-mh-02::after {
	content: '';
	width: 29px;
	height: 31px;
	background: url("../images/icn_worry.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: -30px;
	right: -10px;
}

.p-worry-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
}
.p-worry-list li {
	width: 32%;
	margin: 55px 2% 0 0;
	padding-bottom: 90px;
	display: flex;
	text-align: center;
	position: relative;
}
.p-worry-list li:nth-child(4), .p-worry-list li:last-child {
	width: 36%;
}
.p-worry-list li:nth-child(3), .p-worry-list li:last-child {
	margin-right: 0;
}
.p-worry-list li a {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: 3px solid #413B32;
	border-radius: 10px;
	color: #1C1C1C;
	position: relative;
	box-shadow: 0 0 12px rgba(0,0,0,0.16);
}
.p-worry-list li a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: #413B32;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: right top;
}
.p-worry-list li a::after {
	content: '';
	width: 26px;
	height: 26px;
	background: url("../images/icn_arrow_down.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: calc(50% - 13px);
	right: 15px;
	transition: 0.3s ease-in-out;
}

.p-worry-list-ttl {
	width: 70%;
	padding: 0;
	border-radius: 20px;
	background: #413B32;
	color: #fff;
	font-weight: 400;
	position: absolute;
	top: -15px;
	left: 15%;
	z-index: 3;
}
.p-worry-list-ttl span {
	font-weight: 700;
	font-size: 1.8rem;
}

.p-worry-list-txt {
	padding: 43px 0 28px;
	font-weight: 700;
	font-size: 2.0rem;
	position: relative;
	z-index: 3;
	transition: 0.3s ease-in-out;
}

.p-worry-list-img {
	width: 122px;
	position: absolute;
	bottom: 0;
	left: calc(50% - 61px);
}

@media (min-width: 768px) {
	.p-worry-list li a:hover::before{
		transform-origin: left top;
		transform: scale(1, 1);
	}
	.p-worry-list li a:hover::after {
		background: url("../images/icn_arrow_down_white.svg") center center no-repeat;
		z-index: 3;
	}
	.p-worry-list li a:hover .p-worry-list-txt {
		color: #fff;	
	}
}

@media (max-width: 767px) {
	.p-worry {
		width: 100%;
		padding: 10vw 0 12vw;
		position: relative;
		background: url("../images/bg_worry_sp.svg") center bottom no-repeat;
		background-size: cover;
	}
	.p-worry::after {
		content: none;
	}
	.p-worry-mh {
		text-align: left;
		font-size: 5.6vw;
		line-height: 1.6;
	}
	.p-worry-mh .p-font-small {
		font-size: 5.0vw;
	}
	.p-worry-mh .p-worry-mh-01 {
		margin-left: 0.5vw;
		font-size: 8.2vw;
	}
	.p-worry-mh .p-worry-mh-02 {
		margin-right: 0.5vw;
		font-size: 8.2vw;
		top: 0;
	}
	.p-worry-mh .p-worry-mh-02::after {
		content: '';
		width: 5.8vw;
		height: 6vw;
		background: url("../images/icn_worry.svg") center center no-repeat;
		background-size: 100%;
		position: absolute;
		top: -3vw;
		right: -4vw;
	}

	.p-worry-list {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: center;
	}
	.p-worry-list li {
		width: 48%;
		margin: 7vw 4% 0 0;
		padding-bottom: 19vw;
		display: flex;
		text-align: center;
		position: relative;
	}
	.p-worry-list li:nth-child(4) {
		width: 48%;
	}
	.p-worry-list li:last-child {
		width: 90%;
	}
	.p-worry-list li:nth-child(3) {
		margin-right: 4%;
	}
	.p-worry-list li:nth-child(2n), .p-worry-list li:last-child {
		margin-right: 0;
	}
	.p-worry-list li a {
		width: 100%;
		display: flex;
		flex-direction: column;
		border-radius: 3vw;
	}
	.p-worry-list li a::after {
		content: '';
		width: 5vw;
		height: 5vw;
		background: url("../images/icn_arrow_down.svg") center center no-repeat;
		background-size: 100%;
		position: absolute;
		top: auto;
		bottom: 2vw;
		right: calc(50% - 2.5vw);
	}

	.p-worry-list-ttl {
		width: 100%;
		padding: 0.5vw 0;
		border-radius: 2vw 2vw 0 0;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
		font-size: 3.2vw;
	}
	.p-worry-list-ttl span {
		font-weight: 700;
		font-size: 3.7vw;
	}

	.p-worry-list-txt {
		padding: 10vw 0 8vw;
		font-size: 4.0vw;
		line-height: 1.6;
		position: relative;
		z-index: 3;
		transition: 0.3s ease-in-out;
	}
	.p-worry-list-txt .p-txt-orange {
		font-size: 4.8vw;
	}

	.p-worry-list-img {
		width: 26vw;
		position: absolute;
		bottom: 0;
		left: calc(50% - 13vw);
	}
    
}


/*---------- そのお悩み ----------*/
.p-solve {
	width: 100%;
	padding-bottom: 5.5vw;
	position: relative;
	text-align: center;
}
.p-solve::after {
	content: '';
	width: 100%;
	height: 7.5vw;
	background: url("../images/bg_point_top.svg") center top no-repeat;
	background-size: 100% auto;
	position: absolute;
	bottom: 0;
	left: 0;
}
.p-solve-txt {
	width: 195px;
	height: 65px;
	margin: 0 auto 30px;
	padding: 5px 0 0;
	display: block;
	background: url("../images/bg_solve_txt.svg") center center no-repeat;
	background-size: 100%;
	color: #fff;
	font-weight: 700;
	font-size: 2.6rem;
	position: relative;
	top: -33px;
}
.p-solve-ttl {
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.6;
}
.p-solve-ttl .p-txt-orange {
	font-size: 4.2rem;
}
.p-solve-img {
	width: 90%;
	max-width: 1160px;
	margin: 48px auto 0;
}

@media (max-width: 767px) {
	.p-solve {
		width: 100%;
		padding-bottom: 3.5vw;
		position: relative;
		text-align: center;
	}
	.p-solve::after {
		content: '';
		width: 100%;
		height: 13.5vw;
		background: url("../images/bg_point_top_sp.svg") center top no-repeat;
		background-size: 100% auto;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.p-solve-txt {
		width: 40vw;
		height: 14vw;
		margin: 0 auto 2vw;
		padding: 2vw 0 0;
		display: block;
		background: url("../images/bg_solve_txt.svg") center center no-repeat;
		background-size: 100%;
		color: #fff;
		font-weight: 700;
		font-size: 5.2vw;
		position: relative;
		top: -6vw;
	}
	.p-solve-ttl {
		font-weight: 700;
		font-size: 6.2vw;
	}
	.p-solve-ttl .p-txt-orange {
		font-size: 7.8vw;
	}
	.p-solve-img {
		width: 100%;
		max-width: 1160px;
		margin: 6vw auto 0;
	}
    
}


/*---------- 5つのポイント ----------*/
.p-point {
	width: 100%;
	padding: 0 0 calc(100px + 4vw);
	position: relative;
	background: url("../images/bg_point.svg") 0 0 repeat-y;
	background-size: 100%;
}
.p-point-mh {
	font-weight: 700;
	font-size: 3.4rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.06em;
	position: relative;
	top: -40px;
}
.p-point-mh .p-txt-bg {
	margin-right: 5px;
	padding: 2px 5px 6px;
	display: inline-block;
	background: #DF6B29;
	border-radius: 4px;
	color: #fff;
	font-size: 5.6rem;
}
.p-point-mh .p-txt-bg .p-font-small {
	font-size: 4.2rem;
}
.p-point-mh .p-txt-orange {
	font-size: 4.2rem;
}

.p-point-android-txt {
	width: 90%;
	max-width: 204px;
	margin: -15px auto 45px;
	padding: 5px 0;
	border-radius: 20px;
	background: #413B32;
	text-align: center;
	color: #fff;
	font-weight: 700;
	font-size: 2.0rem;
	line-height: 1;
}

@media (max-width: 767px) {
	.p-point {
		width: 100%;
		padding: 4vw 0 12vw;
		position: relative;
		background: #F6E9D8;
		text-align: center;
	}
	.p-point-mh {
		font-size: 6.4vw;
		text-align: center;
		line-height: 1.6;
		position: relative;
		top: auto;
	}
	.p-point-mh .p-txt-bg {
		margin-right: 1vw;
		padding: 0.5vw 1vw 1vw;
		font-size: 10.2vw;
	}
	.p-point-mh .p-txt-bg .p-font-small {
		font-size: 8.0vw;
	}
	.p-point-mh .p-txt-orange {
		font-size: 8.0vw;
	}

	.p-point-android-txt {
		width: auto;
		max-width: initial;
		margin: 2vw auto 8vw;
		padding: 2vw 6vw;
		display: inline-block;
		border-radius: 6vw;
		font-size: 4.2vw;
	}
}

/* ポイント 共通 */
.p-point-box {
	width: 100%;
	margin: 0 auto 30px;
	padding: 40px 120px 50px;
	border-radius: 20px;
	background: #F7F5F0;
	position: relative;
}
.p-point-num {
	display: inline-block;
	color: #F6E9D8;
	font-family: 'Prompt', sans-serif;
	font-weight: 600;
	font-size: 13.6rem;
	line-height: 1;
	position: absolute;
	top: 20px;
	right: 30px;
}

.p-point-box-inn {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}

.p-point-box-ttl-wrap {
	width: 100%;
	position: relative;
}
.p-point-box-ttl-wrap::before {
	content: '';
	width: 3px;
	height: calc(100% + 40px);
	background: #DF6B29;
	border-radius: 0 0 4px 4px;
	position: absolute;
	top: -40px;
	left: -60px;
}

.p-point-ttl-en {
	margin-right: 20px;
	display: inline-block;
	font-family: 'Prompt', sans-serif;
	font-weight: 600;
	font-size: 1.7rem;
	line-height: 1;
}
.p-point-ttl-en span {
	font-size: 2.6rem;
	vertical-align: text-bottom;
}
.p-point-label {
	margin: 0 auto 15px 0;
	padding: 5px 12px;
	display: inline-block;
	border-radius: 20px;
	background: #413B32;
	text-align: center;
	color: #fff;
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1;
}
.p-point-sh {
	margin-bottom: 20px;
	padding-bottom: 25px;
	font-weight: 700;
	font-size: 3.0rem;
	line-height: 1.6;
}
.p-point-lead-txt {
	margin-bottom: 40px;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.6;
}
.p-point-note {
	font-size: 1.4rem;
	color: #A7A7A7;
}
.p-point-link-more {
	margin-top: 20px;
	text-align: right;
}
.p-point-box-inn sup {
	vertical-align: top;
	font-size: 1.4rem;
	line-height: 1.4;
}

@media (max-width: 767px) {
	.p-point-box {
		width: 100%;
		margin: 0 auto 7vw;
		padding: 5vw 4vw 8vw;
		border-radius: 4vw;
		text-align: left;
	}
	.p-point-num {
		font-size: 22vw;
		line-height: 1;
		position: absolute;
		top: 4vw;
		right: 5vw;
	}

	.p-point-box-inn {
		width: 100%;
		max-width: 960px;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}

	.p-point-box-ttl-wrap {
		width: 100%;
		padding-left: 7.5vw;
		position: relative;
	}
	.p-point-box-ttl-wrap::before {
		content: '';
		width: 3px;
		height: calc(100% + 5vw);
		background: #DF6B29;
		border-radius: 0 0 4px 4px;
		position: absolute;
		top: -5vw;
		left: 0;
	}
	.p-point-ttl-en {
		margin-right: 3vw;
		display: inline-block;
		font-size: 3.8vw;
		line-height: 1;
		vertical-align: text-bottom;
	}
	.p-point-ttl-en span {
		font-size: 6.2vw;
	}

	.p-point-label {
		margin: 0 auto 3vw 0;
		padding: 1.5vw 4vw;
		display: inline-block;
		border-radius: 4vw;
		font-weight: 700;
		font-size: 3.4vw;
	}
	.p-point-sh {
		margin: 0 auto 4vw 0;
		padding-bottom: 4vw;
		font-size: 5.1vw;
	}
	.p-point-lead-txt {
		margin: 0 auto 8vw 0;
		font-size: 4.2vw;
	}
	.p-point-note {
		font-size: 3.4vw;
	}
	.p-point-link-more {
		margin-top: 4vw;
		text-align: right;
	}
    
	.p-point-box-inn sup {
		vertical-align: top;
		font-size: 3.0vw;
	}
}


/* ポイント 01 */
.p-point01-cont {
	width: 100%;
	margin-top: 56px;
	display: flex;
	justify-content: space-between;
}
.p-point01-box {
	width: 48%;
	padding: 12px 30px 30px;
	border-radius: 10px;
	background: #fff;
	position: relative;
	display: flex;
	flex-direction: column;
}
.p-point01-fukidashi {
	width: 90%;
	max-width: 255px;
	margin: 0 auto;
	padding: 12px 10px;
	display: block;
	border-radius: 25px;
	background: #DF6B29;
	text-align: center;
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
	position: relative;
	top: -33px;
}
.p-point01-fukidashi::after {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	margin-left: -8px;
	left: 50%;
	bottom: -14px;
	border-right: 14px solid #DF6B29;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	transform: rotate(-90deg);
}
.p-point01-ttl {
	margin-bottom: 20px;
	text-align: center;
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1;
}
.p-point01-ttl span {
	font-size: 1.8rem;
}

.p-point01-txt {
	margin: 0 auto auto;
	font-weight: 400;
	font-size: 1.6rem;
}

@media (max-width: 767px) {
	.p-point01-cont {
		width: 100%;
		margin-top: 0;
		display: block;
	}
	.p-point01-box {
		width: 100%;
		margin-top: 10vw;
		padding: 2.5vw 5vw 5vw;
		border-radius: 3vw;
	}
	.p-point01-fukidashi {
		width: 86%;
		max-width: initial;
		margin: 0 auto;
		padding: 2vw;
		display: block;
		border-radius: 5vw;
		font-size: 4.2vw;
		line-height: 1;
		position: relative;
		top: -6vw;
	}
	.p-point01-fukidashi::after {
		content: '';
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		margin-left: -2vw;
		left: 50%;
		bottom: -3vw;
		border-right: 3vw solid #DF6B29;
		border-top: 2vw solid transparent;
		border-bottom: 2vw solid transparent;
		transform: rotate(-90deg);
	}
	.p-point01-ttl {
		margin-bottom: 4vw;
		font-size: 5.2vw;
	}
	.p-point01-ttl {
		margin-bottom: 4vw;
		font-size: 5.2vw;
	}
	.p-point01-ttl span {
		font-size: 3.6vw;
	}

	.p-point01-txt {
		font-size: 3.6vw;
	}
    
}


/* ポイント 02 */
.p-point02-cont {
	width: 100%;
	margin-bottom: 30px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
}
/*
.p-point02-img {
	width: 27%;
	margin-right: 3%;
}
*/
.p-point02-box {
	width: calc((73% - 40px) / 3);
	margin-right: 20px;
}
.p-point02-box:last-child {
	margin-right: 0;
}
.p-point02-ttl {
	margin-bottom: 10px;
	padding: 15px 0 15px 90px;
	display: inline-block;
	text-align: center;
	color:#DF6B29;
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1.4;
}
.p-point02-box01 .p-point02-ttl {
	background: url("../images/icn_point01_01.svg") left 10px center no-repeat;
	background-size: auto 100%;
}
.p-point02-box02 .p-point02-ttl {
	background: url("../images/icn_point01_02.svg") left 10px center no-repeat;
	background-size: auto 100%;
}
.p-point02-box03 .p-point02-ttl {
	background: url("../images/icn_point01_03.svg") left 10px center no-repeat;
	background-size: auto 100%;
}
.p-point02-txt {
	font-size: 1.2rem;
	line-height: 1.6;
}

.p-point02-txt-box {
	width: 100%;
	margin-bottom: 20px;
	padding: 20px 30px;
	background: #fff;
	border-radius: 10px;
}
@media (max-width: 767px) {
	.p-point02-cont {
		width: 100%;
		margin-bottom: 6vw;
		display: block;
	}
	.p-point02-img {
		width: 55%;
		margin: 0 auto 5vw;
	}
	.p-point02-box {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5vw;
	}
	.p-point02-box:last-child {
		margin-right: 0;
		margin-bottom: 0;
	}
	.p-point02-ttl {
		margin-bottom: 2vw;
		padding: 0 0 0 20vw;
		display: inline-block;
		text-align: left;
		font-size: 3.6vw;
		line-height: 1.4;
	}
	.p-point02-box01 {
		background: url("../images/icn_point01_01.svg") left center no-repeat;
		background-size: 16vw;
	}
	.p-point02-box02 {
		background: url("../images/icn_point01_02.svg") left center no-repeat;
		background-size: 16vw;
	}
	.p-point02-box03 {
		background: url("../images/icn_point01_03.svg") left center no-repeat;
		background-size: 16vw;
	}
	
	.p-point02-box01 .p-point02-ttl, 
	.p-point02-box02 .p-point02-ttl, 
	.p-point02-box03 .p-point02-ttl {
		background: none;
	}
	.p-point02-txt {
		padding: 0 0 0 20vw;
		font-size: 3.2vw;
	}

	.p-point02-txt-box {
		width: 100%;
		margin-bottom: 4vw;
		padding: 5vw;
		background: #fff;
		border-radius: 2vw;
		font-size: 3.8vw;
	}
}


/* ポイント 03 */
.p-point03-figure {
	width: 100%;
	margin-bottom: 40px;
	display: flex;
	justify-content: center;
}
.p-point03-figure-left,
.p-point03-figure-right {
	background: #fff;
	border-radius: 10px;
}

.p-point03-figure-left {
	width: 40%;
}
.p-point03-figure-arrow {
	width: 47px;
	margin: 0 14px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.p-point03-figure-arrow p {
	margin-bottom: 10px;
	color: #DF6B29;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
}
.p-point03-figure-right {
	width: 30%;
	display: flex;
	flex-direction: column;
}

.p-point03-ttl {
	width: 100%;
	height: 30px;
	padding: 5px;
	background: #413B32;
	border-radius: 10px 10px 0 0;
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
}
.p-point03-inner-box {
	width: 100%;
	height: calc(100% - 30px);
	padding: 15px 30px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.p-point03-inner-box-left p, 
.p-point03-inner-box-right p {
	font-weight: 700;
	line-height: 1;
}
.p-point03-figure-right .p-point03-inner-box-left, 
.p-point03-figure-right .p-point03-inner-box-right {
	width: 30%;
	text-align: center;
}
.p-point03-figure-right .p-point03-inner-box-left img, 
.p-point03-figure-right .p-point03-inner-box-right img {
	width: 75%;
	margin: 0 auto 15px;
}
.p-point03-figure-right .p-point03-inner-box-arrow {
	width: 47px;
	margin: 0 15px;
	padding-bottom: 90px;
}


.p-point03-figure-left .p-point03-inner-box-left {
	width: 55%;
	padding-right: 15px;
	text-align: center;
	background-image : linear-gradient(to bottom, #D8D8D8, #D8D8D8 5px, transparent 5px, transparent 3px);  /* 幅2の線を作る */
	background-size: 1px 10px;
	background-position: right top;
	background-repeat: repeat-y; 
}
.p-point03-figure-left .p-point03-inner-box-left img {
	width: 80%;
	margin: 0 auto 10px;
}

.p-point03-figure-left .p-point03-inner-box-right {
	width: 45%;
	padding-left: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
.p-point03-figure-left .p-point03-inner-box-right img {
	width: 38%;
	margin: 0 auto 15px;
}
.p-point03-figure-left img.p-point03-inner-box-right-arrow {
	width: 10px;
	margin: 10px auto;
}


.p-point03-txt-wrap {
	width: 100%;
}
.p-point03-txt-wrap dt {
	width: 100%;
	margin-bottom: 16px;
	position: relative;
}
.p-point03-txt-wrap dt::before {
	content: '';
	width: 100%;
	height: 2px;
	background: #DF6B29;
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	z-index: 1;
}
.p-point03-txt-wrap dt span {
	padding: 10px 20px 10px 40px;
	display: inline-block;
	border-radius: 0 20px 20px 0;
	background: #DF6B29;
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
	position: relative;
	z-index: 2;
}
.p-point03-txt-wrap dt span::before {
	content: '';
	width: 21px;
	height: 22px;
	background: url("../images/icn_check.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: calc(50% - 10px);
	left: 9px;
}
.p-point03-txt-wrap dd {
	width: 100%;
	margin-bottom: 36px;
}
.p-point03-txt-wrap dd:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.p-point03-figure {
		width: 100%;
		margin-bottom: 6vw;
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
	.p-point03-figure-left,
	.p-point03-figure-right {
		background: #fff;
		border-radius: 3vw;
	}

	.p-point03-figure-left {
		width: 100%;
	}
	.p-point03-figure-arrow {
		width: 100%;
		margin: 6vw auto;
		padding-left: 7vw;
		display: flex;
		flex-direction: row-reverse;
		align-items: center;
		justify-content: center;
	}
	.p-point03-figure-arrow p {
		margin-bottom: 0;
		font-size: 3.8vw;
		line-height: 1;
	}
	.p-point03-figure-arrow img {
		width: 12vw;
		transform: rotate(90deg);
	}
	.p-point03-figure-right {
		width: 80%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
	}
	
	.p-point03-ttl {
		width: 100%;
		height: auto;
		padding: 2vw;
		border-radius: 3vw 3vw 0 0;
		font-size: 4.0vw;
	}
	.p-point03-inner-box {
		width: 100%;
		height: auto;
		padding: 4vw 5vw;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.p-point03-inner-box-left p, 
	.p-point03-inner-box-right p {
	}

	.p-point03-figure-left .p-point03-inner-box-right{
		width: 50%;
		padding-left: 2.5vw;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
	.p-point03-figure-left .p-point03-inner-box-right img {
		width: 38%;
		margin: 0 auto 3vw;
	}
	.p-point03-figure-left .p-point03-inner-box-left {
		width: 50%;
		padding-right: 2.5vw;
		text-align: center;
	}
	.p-point03-figure-left .p-point03-inner-box-left img {
		width: 80%;
		margin: 0 auto 2vw;
	}
	.p-point03-figure-left img.p-point03-inner-box-right-arrow {
		width: 2.5vw;
		margin: 2vw auto;
	}
	
	.p-point03-figure-right .p-point03-inner-box-left, 
	.p-point03-figure-right .p-point03-inner-box-right {
		width: 30%;
		text-align: center;
	}
	.p-point03-figure-right .p-point03-inner-box-right img, 
	.p-point03-figure-right .p-point03-inner-box-left img {
		width: 70%;
		margin: 0 auto 3vw;
	}
	.p-point03-figure-right .p-point03-inner-box-arrow {
		width: 12vw;
		margin: 0 2vw;
		padding-bottom: 20vw;
	}



	.p-point03-txt-wrap {
		width: 100%;
	}
	.p-point03-txt-wrap dt {
		width: 100%;
		margin-bottom: 3vw;
		position: relative;
	}
	.p-point03-txt-wrap dt::before {
		content: '';
		width: 100%;
		height: 3px;
		background: #DF6B29;
		position: absolute;
		top: calc(50% - 1.5px);
		left: 0;
		z-index: 1;
	}
	.p-point03-txt-wrap dt span {
		padding: 2vw 4vw 2vw 11vw;
		display: inline-block;
		border-radius: 0 12vw 12vw 0;
		font-size: 4.2vw;
		line-height: 1.4;
	}
	.p-point03-txt-wrap dt span::before {
		content: '';
		width: 6vw;
		height: 6vw;
		background: url("../images/icn_check.svg") center center no-repeat;
		background-size: 100%;
		position: absolute;
		top: calc(50% - 3vw);
		left: 3vw;
	}
	.p-point03-txt-wrap dd {
		width: 100%;
		margin-bottom: 5vw;
		font-size: 4.0vw;
	}
	.p-point03-txt-wrap dd:last-child {
		margin-bottom: 0;
	}
	.p-point03-txt-wrap dd .p-txt-orange {
		font-weight: 700;
	}
    
}


/* ポイント 04 */
.p-point04-list {
	width: 100%;
	margin-bottom: 20px;
	display: flex;
	justify-content: space-between;
}
.p-point04-list li {
	width: 23.5%;
	padding-bottom: 20px;
	background: #fff;
	border-radius: 10px;
	text-align: center;
}
.p-point04-list li .p-point04-list-ttl {
	width: 100%;
	height: 30px;
	padding: 5px;
	background: #413B32;
	border-radius: 10px 10px 0 0;
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
}
.p-point04-list li img {
	width: calc(100% - 60px);
	margin: 10px auto 10px;
}
.p-point04-list li .p-point04-list-txt {
	width: 100%;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 700;
	line-height: 1.6;
}

@media (max-width: 767px) {
	.p-point04-list {
		width: 100%;
		margin-bottom: 0;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.p-point04-list li {
		width: 47%;
		margin-bottom: 6vw;
		padding-bottom: 4vw;
		border-radius: 3vw;
	}
	.p-point04-list li .p-point04-list-ttl {
		width: 100%;
		height: auto;
		padding: 2vw;
		border-radius: 3vw 3vw 0 0;
		font-size: 4.0vw;
	}
	.p-point04-list li img {
		width: 96%;
		margin: 2vw auto;
	}
	.p-point04-list li .p-point04-list-txt {
		width: 100%;
		height: auto;
		display: block;
		text-align: center;
		font-size: 3.8vw;
	}
    
}


/* ポイント 05 */
.p-point05-cont {
	width: 100%;
	margin-bottom: 20px;
	display: flex;
	justify-content: space-between;
}
.p-point05-box-left {
	width: calc(45% - 10px);
	padding: 0 20px 0 30px;
}
.p-point05-box-right {
	width: 55%;
}
.p-point05-box-inn {
	display: flex;
	align-items: center;
	background: #fff;
	border-radius: 6px;
}
.p-point05-box-right .p-point05-box-inn {
	padding: 20px 20px 20px 30px;
}
.p-point05-box-right .p-point05-box-inn:first-child {
	margin-bottom: 10px;
}
.p-point05-box-left .p-point05-box-img {
	width: 90px;
	margin-right: 20px;
}
.p-point05-box-right .p-point05-box-img {
	width: 55px;
	margin-right: 40px;
}
.p-point05-box-ttl {
	font-weight: 700;
}

@media (max-width: 767px) {
	.p-point05-cont {
		width: 100%;
		margin-bottom: 4vw;
		display: block;
	}
	.p-point05-box-left {
		width: 100%;
		padding: 5vw;
		margin-bottom: 3vw;
	}
	.p-point05-box-right {
		width: 100%;
	}
	.p-point05-box-inn {
		display: flex;
		align-items: flex-start;
		background: #fff;
		border-radius: 1.5vw;
	}
	.p-point05-box-right .p-point05-box-inn {
		padding: 5vw;
	}
	.p-point05-box-right .p-point05-box-inn:first-child {
		margin-bottom: 3vw;
	}
	.p-point05-box-left img.p-point05-box-img, 
	.p-point05-box-right img.p-point05-box-img {
		width: 25vw;
		max-width: initial;
		margin-right: 5vw;
		margin-top: 3vw;
	}
	.p-point05-box-txt-wrap {
		width: calc(100% - 30vw);
	}
	.p-point05-box-ttl {
		font-size: 4.4vw;
	}
	.p-point05-box-txt {
		font-size: 4.2vw;
	}
    
}


/*---------- サポート ----------*/
.p-support {
	width: 100%;
	padding: 70px 0 100px;
	text-align: center;
}
.p-support-mh {
	margin-bottom: 50px;
	padding-bottom: 24px;
	position: relative;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.2;
} 
.p-support-mh::after {
	content: '';
	width: 75px;
	height: 4px;
	border-radius: 2px;
	background: #DF6B29;
	position: absolute;
	bottom: 0;
	left: calc(50% - 37.5px);
}
.p-support-mh-sub {
	margin-bottom: 10px;
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1;
}
.p-support-mh-sub::before, 
.p-support-mh-sub::after {
	content: '';
	width: 2px;
	height: 25px;
	border-radius: 2px;
	background: #1C1C1C;
	position: absolute;
	top: 0;
}
.p-support-mh-sub::before {
	transform: rotate(-35deg);
	left: -30px;
}
.p-support-mh-sub::after {
	transform: rotate(35deg);
	right: -30px;
}
.p-support-mh .p-txt-orange {
	font-size: 4.2rem;
}

.p-support-list {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.p-support-list li {
	width: 31%;
	padding: 30px;
	background: #F7F5F0;
	border-radius: 20px;
	position: relative;
}
.p-support-list li::before {
	content: '';
	width: 100%;
	height: 100%;
	border-radius: 20px;
	background: url("../images/bg_dot.svg") 0 0 repeat;
	background-size: auto;
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: -1;
}
.p-support-list li::after {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: 0;
	top: 0;
	opacity: 0.3;
	border-right: 13vw solid #fff;
	border-top: 13.5vw solid transparent;
	transform: rotate(180deg);
}
.p-support-list li img {
	width: 90%;
	max-width: 153px;
	margin: 0 auto 20px;
	position: relative;
	z-index: 1;
}
.p-support-list-ttl {
	margin-bottom: 10px;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.6;
}
.p-support-list-ttl-sub {
	margin-bottom: 10px;
	font-weight: 700;
}
.p-support-list-lead-txt {
	width: 100%;
	margin-bottom: 20px;
	padding: 8px;
	background: #413B32;
	border-radius: 20px;
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
}
.p-support-list-txt {
	text-align: left;
}

@media (max-width: 767px) {
	.p-support {
		width: 100%;
		padding: 10vw 0 12vw;
		text-align: center;
	}
	.p-support-mh {
		margin-bottom: 10vw;
		padding-bottom: 4vw;
		font-size: 6.6vw;
		line-height: 1.4;
	} 
	.p-support-mh::after {
		content: '';
		width: 15vw;
		height: 0.8vw;
		border-radius: 1vw;
		background: #DF6B29;
		position: absolute;
		bottom: 0;
		left: calc(50% - 7.5vw);
	}
	.p-support-mh-sub {
		margin-bottom: 2vw;
		font-size: 4.6vw;
	}
	.p-support-mh-sub::before, 
	.p-support-mh-sub::after {
		content: '';
		width: 2px;
		height: 6vw;
		border-radius: 2px;
		top: -1vw;
	}
	.p-support-mh-sub::before {
		transform: rotate(-35deg);
		left: -7vw;
	}
	.p-support-mh-sub::after {
		transform: rotate(35deg);
		right: -7vw;
	}
	.p-support-mh .p-txt-orange {
		font-size: 8.6vw;
	}

	.p-support-list {
		width: 100%;
		display: block;
	}
	.p-support-list li {
		width: 98%;
		padding: 5vw;
		margin-bottom: 7vw;
		border-radius: 4vw;
		align-items: center;
		position: relative;
	}
	.p-support-list li:last-child {
		margin-bottom: 0;
	}
	.p-support-list li::before {
		content: '';
		width: 100%;
		height: 100%;
		border-radius: 4vw;
		background: url("../images/bg_dot.svg") 0 0 repeat;
		background-size: auto;
		position: absolute;
		top: 2vw;
		left: 2vw;
		z-index: -1;
	}
	.p-support-list li::after {
		content: '';
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		left: 0;
		top: 0;
		opacity: 0.3;
		border-right: 13vw solid #fff;
		border-top: 13.5vw solid transparent;
		transform: rotate(180deg);
	}
	.p-support-list li img {
		width: 25vw;
		max-width: initial;
		margin: 0;
		position: absolute;
		top: 5vw;
		left: 5vw;
		z-index: 1;
	}
	.p-support-list-ttl {
		width: 100%;
		padding-left: 30vw;
		margin: 5vw 0 2vw;
		font-size: 4.4vw;
		text-align: left;
	}
	.p-support-list-ttl-sub {
		padding-left: 30vw;
		margin-bottom: 8vw;
		font-size: 4.0vw;
		text-align: left;
	}
	.p-support-list-lead-txt {
		width: 100%;
		margin-bottom: 3vw;
		padding: 1.5vw 2vw;
		border-radius: 4vw;
		font-size: 4.0vw;
	}
	.p-support-list-txt {
		text-align: left;
		font-size: 4.2vw;
	}
    
}


/*---------- KDDIまとめてオフィスの強み ----------*/
.p-strength {
	width: 100%;
	padding: 100px 0 52px;
	background: url("../images/bg_strength_pc.svg") center top no-repeat;
	background-size: cover;
	text-align: center;
}
.p-strength-mh {
	margin-bottom: 50px;
	padding-bottom: 24px;
	position: relative;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.2;
} 
.p-strength-mh::after {
	content: '';
	width: 75px;
	height: 4px;
	border-radius: 2px;
	background: #DF6B29;
	position: absolute;
	bottom: 0;
	left: calc(50% - 37.5px);
}
.p-strength-mh-fukidashi {
	width: 86px;
	height: 80px;
	padding-right: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #DF6B29;
	font-size: 1.6rem;
	background: url("../images/bg_fukidashi.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: -45px;
	left: -140px;
}
.p-strength-mh-sub {
	margin-bottom: 10px;
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1;
}
.p-strength-mh-sub::before, 
.p-strength-mh-sub::after {
	content: '';
	width: 2px;
	height: 25px;
	border-radius: 2px;
	background: #1C1C1C;
	position: absolute;
	top: 0;
}
.p-strength-mh-sub::before {
	transform: rotate(-35deg);
	left: -30px;
}
.p-strength-mh-sub::after {
	transform: rotate(35deg);
	right: -30px;
}
.p-strength-mh .p-txt-orange {
	font-size: 4.2rem;
}

.p-strength-ttl-wrap {
	margin-bottom: 30px;
	position: relative;
}
.p-strength-ttl-wrap .p-strength-ttl-border-left, 
.p-strength-ttl-wrap .p-strength-ttl-border-right {
	width: 35%;
	height: 2px;
	background-image : linear-gradient(to right, #58544F, #58544F 7px, transparent 7px, transparent 2px);  /* 幅2の線を作る */
	background-size: 14px 2px;
	background-position: left bottom;
	background-repeat: repeat-x; 
	position: absolute;
	top: 50%;
}
.p-strength-ttl-border-left {
	left: 0;
} 
.p-strength-ttl-border-right {
	right: 0;
}
.p-strength-ttl {
	text-align: center;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1;
}
.p-strength-ttl span {
	font-size: 2.6rem;
}


.p-strength-list {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.p-strength-list li {
	width: 47%;
	margin-bottom: 48px;
	position: relative;
}
.p-strength-list li img {
	width: 70%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.p-strength-list li .p-strength-list-num {
	width: 50px;
	height: 50px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #413B32;
	border-radius: 50%;
	color: #fff;
	font-family: 'Prompt', sans-serif;
	font-weight: 600;
	font-size: 2.6rem;
	position: relative;
	top: -60px;
	z-index: 4;
}
.p-strength-list li .p-strength-list-ttl {
	width: 80%;
	max-width: 320px;
	margin: -100px auto 0;
	padding: 50px 0 0;
	background: #fff;
	border-radius: 54px 54px 0 0;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.6;
	position: relative;
	z-index: 3;
}
.p-strength-list li .p-strength-list-txt {
	width: 100%;
	height: calc(100% - 42%);
	margin: -90px auto 0;
	padding: 110px 40px 40px;
	background: #fff;
	border-radius: 20px;
	text-align: left;
	font-size: 1.8rem;
	position: relative;
	z-index: 1;
}


@media (max-width: 767px) {
	.p-strength {
		width: 100%;
		padding: 18vw 0 2vw;
		background: url("../images/bg_strength_sp.svg") center top no-repeat;
		background-size: cover;
		text-align: center;
	}
	.p-strength-mh {
		margin-bottom: 10vw;
		padding-bottom: 4vw;
		font-size: 6.6vw;
		line-height: 1.4;
	} 
	.p-strength-mh::after {
		content: '';
		width: 15vw;
		height: 0.8vw;
		border-radius: 1vw;
		background: #DF6B29;
		position: absolute;
		bottom: 0;
		left: calc(50% - 7.5vw);
	}
	.p-strength-mh-fukidashi {
		width: 20vw;
		height: 20vw;
		padding-right: 2vw;
		display: flex;
		justify-content: center;
		align-items: center;
		color: #DF6B29;
		font-size: 3.6vw;
		background: url(../images/bg_fukidashi.svg) center center no-repeat;
		background-size: 100%;
		position: absolute;
		top: -13vw;
		left: -26vw;
	}
	.p-strength-mh-sub {
		margin-bottom: 2vw;
		font-size: 4.6vw;
	}
	.p-strength-mh-sub::before, 
	.p-strength-mh-sub::after {
		content: '';
		width: 2px;
		height: 6vw;
		border-radius: 2px;
		top: -1vw;
	}
	.p-strength-mh-sub::before {
		transform: rotate(-35deg);
		left: -4vw;
	}
	.p-strength-mh-sub::after {
		transform: rotate(35deg);
		right: -4vw;
	}
	.p-strength-mh .p-txt-orange {
		font-size: 8.6vw;
	}

	.p-strength-ttl-wrap {
		margin-bottom: 8vw;
		position: relative;
	}
	.p-strength-ttl-wrap .p-strength-ttl-border-left, 
	.p-strength-ttl-wrap .p-strength-ttl-border-right {
		width: 15%;
		height: 3px;
		background-image : linear-gradient(to right, #58544F, #58544F 12px, transparent 12px, transparent 3px);  /* 幅2の線を作る */
		background-size: 24px 3px;
		background-position: left bottom;
		background-repeat: repeat-x; 
		position: absolute;
		top: 50%;
	}
	.p-strength-ttl-border-left {
		left: 0;
	} 
	.p-strength-ttl-border-right {
		right: 0;
	}
	.p-strength-ttl {
		font-size: 5.2vw;
	}
	.p-strength-ttl span {
		font-size: 5.8vw;
	}


	.p-strength-list {
		width: 100%;
		margin: 0 auto 10vw;
		display: block;
	}
	.p-strength-list li {
		width: 100%;
		margin-bottom: 5vw;
		position: relative;
	}
	.p-strength-list li img {
		width: 90%;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}
	.p-strength-list li .p-strength-list-num {
		width: 12vw;
		height: 12vw;
		font-size: 5.2vw;
		position: relative;
		top: -12vw;
		z-index: 4;
	}
	.p-strength-list li .p-strength-list-ttl {
		width: 80%;
		max-width: initial;
		margin: -20vw auto 0;
		padding: 10vw 0 0;
		background: #fff;
		border-radius: 16vw 16vw 0 0;
		font-size: 5.2vw;
		line-height: 1.6;
		position: relative;
		z-index: 3;
	}
	.p-strength-list li .p-strength-list-txt {
		width: 100%;
		height: auto;
		margin: -20vw auto 0;
		padding: 24vw 5vw 5vw;
		background: #fff;
		border-radius: 5vw;
		text-align: left;
		font-size: 4.2vw;
		position: relative;
		z-index: 1;
	}
    
}


/*---------- ⼈気の機種⼀覧 ----------*/
.p-device {
	width: 100%;
	padding: 70px 0 100px;
	text-align: center;
	position: relative;
	overflow: hidden;
}
.p-device .m-sec-inn {
	position: relative;
}
.p-device .m-sec-inn::before {
	content: '';
	width: 280px;
	height: 220px;
	background: url("../images/bg_device_left.svg") 0 0 no-repeat;
	background-size: 100%;
	position: absolute;
	bottom: 5%;
	left: -20%;
	z-index: 1;
}
.p-device .m-sec-inn::after {
	content: '';
	width: 293px;
	height: 284px;
	background: url("../images/bg_device_right.svg") 0 0 no-repeat;
	background-size: 100%;
	position: absolute;
	top: 5%;
	right: -28%;
	z-index: 1;
}
.p-device-mh {
	margin-bottom: 50px;
	padding-bottom: 24px;
	position: relative;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.2;
} 
.p-device-mh::after {
	content: '';
	width: 75px;
	height: 4px;
	border-radius: 2px;
	background: #DF6B29;
	position: absolute;
	bottom: 0;
	left: calc(50% - 37.5px);
}
.p-device-mh .p-txt-orange {
	font-size: 4.2rem;
}


.p-device-list {
	width: 100%;
	margin: 0 auto 80px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
	z-index: 2;
}
.p-device-list .p-device-box {
	width: 23%;
	padding: 30px 20px;
	background: #F6E9D8;
	border-radius: 20px;
	position: relative;
	overflow: hidden;
}
.p-device-list .p-device-box::before {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	right: 0;
	bottom: 0;
	opacity: 0.08;
	border-right: 15vw solid #F2B134;
	border-top: 12vw solid transparent;
}
.p-device-list-ttl {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
}
.p-device-list .p-device-box img {
	width: 25%;
	max-width: 64px;
	margin: 30px auto;
}
.p-device-list-tag {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.p-device-list-tag li {
	width: 100%;
	padding: 6px 0;
	margin-bottom: 1px;
	background: #FEFCF8;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1;
}
.p-device-note {
	width: 100%;
	margin: 20px auto 0;
	font-size: 1.4rem;
	color: #A7A7A7;
	text-align: left;
}

.p-device-other-txt {
	margin-bottom: 25px;
	font-size: 3.0rem;
	font-weight: 700;
	line-height: 1.6;
}
.p-device-other-txt .p-txt-marker {
	font-size: 3.4rem;
}

@media (max-width: 767px) {
	.p-device {
		width: 100%;
		padding: 12vw 0 10vw;
		text-align: center;
		position: relative;
		overflow: hidden;
	}
	.p-device .m-sec-inn {
		position: relative;
	}
	.p-device .m-sec-inn::before {
		content: '';
		width: 40vw;
		height: 36vw;
		background: url("../images/bg_device_left.svg") 0 0 no-repeat;
		background-size: 100%;
		position: absolute;
		bottom: 5%;
		left: -20%;
		z-index: 1;
	}
	.p-device .m-sec-inn::after {
		content: '';
		width: 50vw;
		height: 46vw;
		background: url("../images/bg_device_right.svg") 0 0 no-repeat;
		background-size: 100%;
		position: absolute;
		top: 5%;
		right: -28%;
		z-index: 1;
	}
	.p-device-mh {
		margin-bottom: 10vw;
		padding-bottom: 4vw;
		font-size: 6.6vw;
		line-height: 1.4;
	} 
	.p-device-mh::after {
		content: '';
		width: 15vw;
		height: 0.8vw;
		border-radius: 1vw;
		background: #DF6B29;
		position: absolute;
		bottom: 0;
		left: calc(50% - 7.5vw);
	}
	.p-device-mh .p-txt-orange {
		font-size: 8.6vw;
	}


	
	.p-device-list {
		width: 100%;
		margin: 0 auto 10vw;
		display: block;
		position: relative;
		z-index: 2;
	}
	.p-device-list .p-device-box {
		width: 100%;
		padding: 8vw 5vw;
		margin-bottom: 4vw;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		border-radius: 4vw;
	}
	.p-device-list .p-device-box::before {
		content: '';
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		right: 0;
		bottom: 0;
		opacity: 0.08;
		border-right: 15vw solid #F2B134;
		border-top: 12vw solid transparent;
	}
	.p-device-list-ttl {
		width: 100%;
		margin-bottom: 5vw;
		font-size: 4.2vw;
		line-height: 1;
	}
	.p-device-list .p-device-box img {
		width: 16%;
		max-width: initial;
		margin: 0 8% 0 0;
	}
	.p-device-list-tag {
		width: 70%;
		display: block;
	}
	.p-device-list-tag li {
		width: 100%;
		padding: 1.5vw 0;
		margin-bottom: 0;
		background: #FEFCF8;
		text-align: center;
		font-size: 3.8vw;
		font-weight: 500;
		line-height: 1;
	}

	.p-device-other-txt {
		margin-bottom: 5vw;
		font-size: 5.4vw;
	}
	.p-device-other-txt .p-txt-marker {
		font-size: 5.8vw;
	}
	
	.p-device-note {
		width: 100%;
		margin: 4vw auto 0;
		font-size: 3.4vw;
	}
    
}


/*---------- ご利用までの流れ ----------*/
.p-flow {
	width: 100%;
	padding: 70px 0 calc(100px + 4vw);
	background: url("../images/bg_flow.svg") center top no-repeat;
	background-size: cover;
	text-align: center;
	position: relative;
}
.p-flow-mh {
	margin-bottom: 50px;
	padding-bottom: 24px;
	position: relative;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.2;
} 
.p-flow-mh::after {
	content: '';
	width: 75px;
	height: 4px;
	border-radius: 2px;
	background: #DF6B29;
	position: absolute;
	bottom: 0;
	left: calc(50% - 37.5px);
}
.p-flow-mh .p-txt-orange {
	font-size: 4.2rem;
}


.p-flow-list {
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}
.p-flow-list li {
	width: 23%;
	padding: 30px 30px 20px;
	background: #fff;
	border-radius: 10px 10px 0 0;
	border-bottom: 3px solid #DF6B29;
	position: relative;
}
.p-flow-list li::after {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	top: calc(50% - 18px);
	right: -25px;
	border-left: 25px solid #DF6B29;
	border-top: 18px solid transparent;
	border-bottom: 18px solid transparent;
}
.p-flow-list li:last-child::after {
	content: none;
}
.p-flow-list-img {
	margin: 0 auto 20px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.p-flow-list li:nth-child(1) .p-flow-list-img {
	width: 102px;
}
.p-flow-list li:nth-child(2) .p-flow-list-img {
	width: 76px;
}
.p-flow-list li:nth-child(3) .p-flow-list-img {
	width: 80px;
}
.p-flow-list li:nth-child(4) .p-flow-list-img {
	width: 86px;
}

.p-flow-list-ttl {
	width: 100%;
	height: 50px;
	margin: 0 auto 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.6;
}
.p-flow-list-txt {
	text-align: left;
}

@media (max-width: 767px) {
	.p-flow {
		width: 100%;
		padding: 10vw 0;
		background: url("../images/bg_flow.svg") center top no-repeat;
		background-size: cover;
		text-align: center;
		position: relative;
	}
	.p-flow-mh {
		margin-bottom: 8vw;
		padding-bottom: 4vw;
		font-size: 6.6vw;
		line-height: 1.4;
	} 
	.p-flow-mh::after {
		content: '';
		width: 15vw;
		height: 0.8vw;
		border-radius: 1vw;
		background: #DF6B29;
		position: absolute;
		bottom: 0;
		left: calc(50% - 7.5vw);
	}
	.p-flow-mh .p-txt-orange {
		font-size: 8.6vw;
	}


	.p-flow-list {
		width: 100%;
		margin: 0 auto;
		display: block;
		position: relative;
		z-index: 2;
	}
	.p-flow-list li {
		width: 100%;
		margin: 0 auto 6.5vw;
		padding: 5vw 8vw;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		background: #fff;
		border-radius: 3vw 3vw 0 0;
		border-bottom: 3px solid #DF6B29;
		position: relative;
	}
	.p-flow-list li::after {
		content: '';
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		top: auto;
		bottom: -5.5vw;
		right: calc(50% - 5vw);
		border-left: 5vw solid transparent;
		border-right: 5vw solid transparent;
		border-top: 5.5vw solid #DF6B29;
		border-bottom: none;
	}
	.p-flow-list li:last-child::after {
		content: none;
	}
	.p-flow-list-img {
		width: 25vw;
		height: auto;
		margin: 0 3vw 4vw 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.p-flow-list li:nth-child(1) .p-flow-list-img, 
	.p-flow-list li:nth-child(2) .p-flow-list-img , 
	.p-flow-list li:nth-child(3) .p-flow-list-img, 
	.p-flow-list li:nth-child(4) .p-flow-list-img {
		width: 25vw;
	}

	.p-flow-list-ttl {
		width: calc(100% - 30vw);
		height: auto;
		margin: 0 auto 8px;
		display: block;
		text-align: left;
		font-weight: 700;
		font-size: 1.8rem;
		line-height: 1.6;
	}
	.p-flow-list-txt {
		text-align: left;
	}
    
}


/*---------- よくあるご質問 ----------*/
.p-faq {
	width: 100%;
	padding: 70px 0 100px;
	text-align: center;
	position: relative;
}
.p-faq-mh {
	margin-bottom: 50px;
	padding-bottom: 24px;
	position: relative;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.2;
} 
.p-faq-mh::after {
	content: '';
	width: 75px;
	height: 4px;
	border-radius: 2px;
	background: #DF6B29;
	position: absolute;
	bottom: 0;
	left: calc(50% - 37.5px);
}

.p-faq-box {
	width: 100%;
	margin: 0 auto 20px;
	border: 1px solid #D8D8D8;
	border-radius: 6px;
	overflow: hidden;
	text-align: left;
}
.p-faq-q {
	width: 100%;
	padding: 30px 104px;
	background: #F7F5F0;
	font-weight: 700;
	font-size: 1.8rem;
	position: relative;
	cursor: pointer;
}
.p-faq-q::before {
	content: 'Q';
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #DF6B29;
	border-radius: 4px;
	color: #fff;
	font-family: 'Prompt', sans-serif;
	font-weight: 600;
	font-size: 3.0rem;
	position: absolute;
	top: calc(50% - 22px);
	left: 30px;
}
.p-faq-q::after {
	content: '';
	width: 31px;
	height: 31px;
	display: block;
	background: url("../images/icn_open.svg") center center no-repeat;
	background-size: 100%;
	position: absolute;
	top: calc(50% - 15px);
	right: 30px;
	transition: 0.3s ease-in-out;
}
.p-faq-q.is-open::after {
	background: url("../images/icn_close.svg") center center no-repeat;
	background-size: 100%;
}
.p-faq-a {
	width: 100%;
	padding: 20px 104px;
	display: none;
	position: relative;
}
.p-faq-a::before {
	content: 'A';
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	color: #DF6B29;
	font-family: 'Prompt', sans-serif;
	font-weight: 600;
	font-size: 3.0rem;
	position: absolute;
	top: 20px;
	left: 30px;
}

@media (max-width: 767px) {
	.p-faq {
		width: 100%;
		padding: 10vw 0;
		text-align: center;
		position: relative;
	}
	.p-faq-mh {
		margin-bottom: 10vw;
		padding-bottom: 4vw;
		font-size: 6.6vw;
		line-height: 1.4;
	} 
	.p-faq-mh::after {
		content: '';
		width: 15vw;
		height: 0.8vw;
		border-radius: 1vw;
		background: #DF6B29;
		position: absolute;
		bottom: 0;
		left: calc(50% - 7.5vw);
	}

	.p-faq-box {
		width: 100%;
		margin: 0 auto 4vw;
		border: 1px solid #D8D8D8;
		border-radius: 1vw;
		overflow: hidden;
		text-align: left;
	}
	.p-faq-q {
		width: 100%;
		padding: 4vw 12vw;
		font-size: 3.8vw;
		position: relative;
		cursor: pointer;
	}
	.p-faq-q::before {
		content: 'Q';
		width: 6vw;
		height: 6vw;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 4px;
		font-size: 4.2vw;
		position: absolute;
		top: 5vw;
		left: 3vw;
	}
	.p-faq-q::after {
		content: '';
		width: 6vw;
		height: 6vw;
		display: block;
		background: url("../images/icn_open.svg") center center no-repeat;
		background-size: 100%;
		position: absolute;
		top: calc(50% - 3vw);
		right: 3vw;
		transition: 0.3s ease-in-out;
	}
	.p-faq-a {
		width: 100%;
		padding: 4vw 12vw;
		display: none;
		position: relative;
	}
	.p-faq-a::before {
		content: 'A';
		width: 6vw;
		height: 6vw;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 4px;
		font-size: 4.2vw;
		position: absolute;
		top: 5vw;
		left: 3vw;
	}
    
}


/*----------  ----------*/
.p-mnp {
	width: 100%;
	padding: 100px 0 80px;
	background: url("../images/bg_mnp_pc.svg") center top no-repeat;
	background-size: cover;
	text-align: center;
	position: relative;
}
.p-mnp-mh {
	margin-bottom: 50px;
	padding-bottom: 24px;
	position: relative;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.4;
} 
.p-mnp-mh::after {
	content: '';
	width: 75px;
	height: 4px;
	border-radius: 2px;
	background: #DF6B29;
	position: absolute;
	bottom: 0;
	left: calc(50% - 37.5px);
}
.p-mnp-mh-sub {
	margin-bottom: 10px;
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1;
}
.p-mnp-mh-sub::before, 
.p-mnp-mh-sub::after {
	content: '';
	width: 2px;
	height: 25px;
	border-radius: 2px;
	background: #1C1C1C;
	position: absolute;
	top: 0;
}
.p-mnp-mh-sub::before {
	transform: rotate(-35deg);
	left: -30px;
}
.p-mnp-mh-sub::after {
	transform: rotate(35deg);
	right: -30px;
}
.p-mnp-mh .p-txt-orange {
	font-size: 4.2rem;
}

.p-mnp-cont {
	width: 100%;
	margin: 0 auto 50px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.p-mnp-box {
	width: 48%;
	padding: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	background: #fff;
	border-radius: 20px;
}
.p-mnp-box-ttl {
	width: 100%;
	margin-bottom: 30px;
	padding-bottom: 14px;
	font-weight: 700;
	font-size: 2.4rem;
}
.p-mnp-box-img {
	width: 124px;
	margin-right: 30px;
}
.p-mnp-box-txt {
	font-weight: 700;
	text-align: left;
}
.p-mnp-note {
	width: 100%;
	margin: 15px auto 0;
	font-size: 1.4rem;
	color: #A7A7A7;
	text-align: left;
}

.p-mnp-txt-wrap {
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
.p-mnp-txt-img {
	width: 235px;
	margin-right: 40px;
}
.p-mnp-txt {
	font-weight: 700;
	font-size: 3.0rem;
	text-align: left;
	line-height: 1.6;
}
.p-mnp-txt .p-txt-marker {
	font-size: 3.4rem;
}

@media (max-width: 767px) {
	.p-mnp {
		width: 100%;
		padding: 10vw 0 10vw;
		background: url("../images/bg_mnp_sp.svg") center top no-repeat;
		background-size: cover;
		text-align: center;
		position: relative;
	}
	.p-mnp-mh {
		margin-bottom: 10vw;
		padding-bottom: 4vw;
		font-size: 6.6vw;
		line-height: 1.4;
	} 
	.p-mnp-mh::after {
		content: '';
		width: 15vw;
		height: 0.8vw;
		border-radius: 1vw;
		background: #DF6B29;
		position: absolute;
		bottom: 0;
		left: calc(50% - 7.5vw);
	}
	.p-mnp-mh-sub {
		margin-bottom: 2vw;
		font-size: 4.6vw;
	}
	.p-mnp-mh-sub::before, 
	.p-mnp-mh-sub::after {
		content: '';
		width: 2px;
		height: 6vw;
		border-radius: 2px;
		top: -1vw;
	}
	.p-mnp-mh-sub::before {
		transform: rotate(-35deg);
		left: -7vw;
	}
	.p-mnp-mh-sub::after {
		transform: rotate(35deg);
		right: -7vw;
	}
	.p-mnp-mh .p-txt-orange {
		font-size: 8.6vw;
	}

	.p-mnp-cont {
		width: 100%;
		margin: 0 auto;
		display: block;
	}
	.p-mnp-box {
		width: 100%;
		margin-bottom: 5vw;
		padding: 5vw;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		background: #fff;
		border-radius: 5vw;
	}
	.p-mnp-box-ttl {
		width: 100%;
		margin-bottom: 5vw;
		padding-bottom: 3vw;
		font-weight: 700;
		font-size: 5.2vw;
	}
	.p-mnp-box-img {
		width: 30%;
		margin-right: 5%;
	}
	.p-mnp-box-txt {
		width: 65%;
		font-size: 4.4vw;
	}
	.p-mnp-note {
		width: 100%;
		margin: 4vw auto 0;
		font-size: 3.4vw;
	}


	.p-mnp-txt-wrap {
		width: 100%;
		margin: 0 auto;
		display: block;
	}
	.p-mnp-txt-img {
		width: 100%;
		margin-right: 0;
		margin-top: 8vw;
	}
	.p-mnp-txt-img img {
		width: 100%;
		max-width: initial;
	}
	.p-mnp-txt {
		margin-top: 5vw;
		font-size: 6.0vw;
		text-align: center;
		line-height: 1.6;
	}
	.p-mnp-txt .p-txt-marker {
		font-size: 6.6vw;
	}
    
}


/*---------- footer ----------*/
.p-pagetop {
    width: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
	position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 9996;
}
.p-pagetop img {
	width: 12px;
	margin-bottom: 10px;
}
.p-pagetop span {
    color: #fff;
    font-family: 'Prompt', sans-serif;
	font-weight: 600;
	font-size: 1.4rem;
    line-height: 1;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.p-footer-cv {
	width: 100%;
	margin: 0 auto;
	padding: 70px 0 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	background: url("../images/bg_cv_03_pc.svg") center top no-repeat;
	background-size: cover;
	position: relative;
	z-index: 4;
}
.p-footer-cv .p-btn {
	min-width: 620px;
	border-radius: 60px;
}
.p-footer-cv .p-btn p {
	width: 100%;
	height: auto;
	padding: 15px 0;
	display: block;
	position: relative;
	z-index: 3;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1;
	transition: 0.3s ease-in-out;
}
.p-footer-cv .p-btn-contact p::before {
	content: none;
}
.p-footer-cv .p-btn-contact p span {
	margin-left: 0;
}

.p-cv-ttl-img03 {
	width: 164px;
}
.p-footer-cv-btn-sub {
	margin-bottom: 10px;
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1;
}
.p-footer-cv-btn-sub::before, 
.p-footer-cv-btn-sub::after {
	content: '';
	width: 2px;
	height: 28px;
	border-radius: 2px;
	background: #fff;
	position: absolute;
	top: 0;
	transition: 0.3s ease-in-out;
}
.p-footer-cv-btn-sub::before {
	transform: rotate(-35deg);
	left: -25px;
}
.p-footer-cv-btn-sub::after {
	transform: rotate(35deg);
	right: -25px;
}

@media (min-width: 768px) {
	.p-footer-cv .p-btn-contact:hover .p-footer-cv-btn-sub::before, 
	.p-footer-cv .p-btn-contact:hover .p-footer-cv-btn-sub::after {
		background: #31AB6D;
	}
}
@media (max-width: 767px) {
	.p-pagetop {
		width: auto;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		position: absolute;
		right: 3vw;
		bottom: 13vw;
		z-index: 9996;
	}
	.p-pagetop img {
		width: 2.2vw;
		margin-bottom: 2vw;
	}
	.p-pagetop span {
		font-size: 3.2vw;
		line-height: 1;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}

	.p-footer-cv {
		width: 100%;
		margin: 0 auto;
		padding: 10vw 0 10vw;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		background: url("../images/bg_cv_03_sp.svg") center top no-repeat;
		background-size: cover;
		position: relative;
		z-index: 4;
	}
	.p-footer-cv .p-cv-ttl-wrap {
		width: 90%;
		margin: 0 auto 4vw;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		position: relative;
	}
	.p-footer-cv .p-cv-ttl-img03 {
		width: 28%;
		margin: 0 auto;
	}
	.p-footer-cv .p-cv-ttl {
		width: 100%;
		font-size: 5.2vw;
		line-height: 2;
		text-align: center;
	}
	.p-footer-cv .p-font-middle {
		font-size: 6.8vw;
	}
	
	.p-footer-cv .p-cv-ttl .p-txt-em {
		font-size: 6.8vw;
		line-height: 1.8;
	}
	.p-footer-cv .p-font-large {
		font-size: 7.4vw;
		line-height: 1.2;
	}
	.p-footer-cv .p-txt-bg {
		margin: 0 1vw;
		padding: 1vw 1vw 1.5vw;
		border-radius: 4px;
		font-size: 7.8vw;
	}
	
	.p-footer-cv .p-btn {
		width: 85%;
		min-width: initial;
		margin-left: 5%;
		border-radius: 20vw;
	}
	.p-footer-cv .p-btn-contact {
		background: #31AB6D;
		padding: 0 8vw;
	}

	.p-footer-cv .p-btn p {
		width: 100%;
		height: auto;
		padding: 3vw 2vw 3.2vw;
		display: block;
		font-size: 4.2vw;
		line-height: 1.6;
	}
	
	.p-footer-cv .p-btn p span {
		margin-left: 0;
		font-size: 5.2vw;
	}
	.p-footer-cv .p-btn-contact::before {
		content: '';
		border-radius: 10vw;
	}
	.p-footer-cv .p-btn-contact::after {
		content: '';
		width: 2vw;
		height: 4vw;
		position: absolute;
		top: calc(50% - 2vw);
		right: 4vw;
	}
	.p-footer-cv .p-btn-contact p::before {
		content: none;
	}
	
	.p-footer-cv-btn-sub {
		margin-bottom: 1vw;
		font-size: 4.2vw;
	}
	.p-footer-cv-btn-sub::before, 
	.p-footer-cv-btn-sub::after {
		content: '';
		width: 2px;
		height: 7vw;
		border-radius: 2px;
		top: -1vw;
	}
	.p-footer-cv-btn-sub::before {
		transform: rotate(-35deg);
		left: -7vw;
	}
	.p-footer-cv-btn-sub::after {
		transform: rotate(35deg);
		right: -7vw;
	}
    
}

.p-footer-bnr{
	width: 80%;
	margin: auto;
	padding: 15px 20px;
	border: 7px solid #c55a11;
}
.p-footer-bnr-inr{
	align-items: center;
}
.p-footer-bnr-point{
	display: inline-block;
	background-color: #ffd966;
	padding: 0.5em 1.5em;
	border-radius: 0.5em;
}
.p-footer-bnr-img{
	box-shadow: 1px 2px 10px #A7A7A7;
}
@media (max-width: 767px) {
	.p-footer-bnr{
		width: 100%;
		margin-bottom: 80px;
	}
	.p-footer-bnr-point{
		margin-top: 1em;
	}
}
/*----------  ----------*/
.l-footer {
	width: 100%;
	padding: 38px 0;
}

.p-copyright {
	text-align: center;
	font-size: 1.4rem;
}
@media (max-width: 767px) {
	.l-footer {
		width: 100%;
		padding: 5vw 0;
	}

	.p-copyright {
		text-align: center;
		font-size: 3.4vw;
	}
}


/* スクロールエフェクト
---------------------------------------------------------------------------- */
.is-effect {
    opacity: 0;
    -webkit-transform: translate(0, 50px);
    -moz-transform: translate(0, 50px);
    -ms-transform: translate(0, 50px);
    -o-transform: translate(0, 50px);
    transform: translate(0, 50px);
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transition-delay: 0.2s;
}

.is-effect-delay {
    opacity: 0;
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transition-delay: 0.8s;
}

.is-effect-on {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}
.kddi_cam231016 {
	background:#fbe3d3;
	padding-top: 45px;
	@media (max-width: 900px) {
		padding-top: 0;
	}
}
