@charset "UTF-8";
.p-faq-bg {
	background-color: #f6f6f6;
}


.l-content-inn{
	padding-bottom: 120px
}

@media screen and (max-width: 767px) {
	.l-content-inn{
	padding-bottom: 13.33333333333vw
}
}
/* ページ内anchorリンク
---------------------------------------------------------------------------- */
.p-page-anchor{
	width: 100%;
    max-width: 1120px;
	background: #cff1ff;
	border-radius: 50px;
	display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	box-sizing: border-box;
	padding: 20px 40px 0;
	margin:30px auto 60px
}


.p-page-anchor .p-page-anchor-btn a{
	display: block;
	box-sizing: border-box;
	width:245px;
	border-radius: 25px;
	background: #fff;
	text-align: left;
	font-size:1.8rem;
	font-weight: 600;
	margin-bottom:20px;
	padding: 15px 40px 15px 30px;
	position: relative;
}
.p-page-anchor .p-page-anchor-btn:nth-child(4n),
.p-page-anchor .p-page-anchor-btn:nth-child(4n-1),
.p-page-anchor .p-page-anchor-btn:nth-child(4n-2){
	margin-left: 20px
}
.p-page-anchor .p-page-anchor-btn a::after{
  content: '';
  width: 10px;
  height: 10px;
  border: 0px;
  border-right: solid 1px #6f6f6f;
  border-bottom: solid 1px #6f6f6f;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 18px;
  margin-top: -8px;
}


@media all and (max-width: 767px) {
.p-page-anchor{
	padding: 4vw;
	margin:5.3333333333vw auto 10.6666666666vw;
	width: 92%;
	border-radius: 10vw;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}	
.p-page-anchor .p-page-anchor-btn a{
	display: block;
	box-sizing: border-box;
	width:40vw;
	height:12vw;
	border-radius: 6vw;
	background: #fff;
	text-align: left;
	font-size:4vw;
	line-height: 1.1;
	padding: 3.3333333333vw;
	padding-right: 9.3333333333vw;
	position: relative;
	display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.p-page-anchor .p-page-anchor-btn a::after{
  content: '';
  width: 2.6vw;
  height: 2.6vw;
  border: 0px;
  border-right: solid 1px #3a3a3a;
  border-bottom: solid 1px #3a3a3a;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top:calc(50% - 2vw) ;
  right:4vw;
  margin-top: 0;
}	
	
.p-page-anchor .p-page-anchor-btn:nth-child(4n),
.p-page-anchor .p-page-anchor-btn:nth-child(4n-1),
.p-page-anchor .p-page-anchor-btn:nth-child(4n-2){
	margin-left: 0;
}	
	
}





/* sh
---------------------------------------------------------------------------- */
.p-lineup-sh{
	font-size:4.2rem;
	font-weight: 600;
	letter-spacing: 0.6rem;
	margin: 10px auto 30px 0;
	text-align: left;
	width:400px;
}


@media screen and (max-width: 767px) {
.p-function-sh{
	font-size:8vw;
	font-weight: 600;
	letter-spacing: 0.8vw;
	margin: 0 auto 6vw;
	text-align: center;
}

}
/* text
---------------------------------------------------------------------------- */

.m-normal-txt{
	font-size:1.8rem;
	letter-spacing: 0.2rem;
	text-align: left
}

.m-normal-txt+.m-normal-txt{
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
.m-normal-txt{
	font-size:4.8vw;
	letter-spacing: 0.1rem;
	text-align: left
}
.m-normal-txt+.m-normal-txt{
	margin-top: 4vw;
}
}


/* accordion
---------------------------------------------------------------------------- */
.p-accordion > li{margin-bottom: 20px;background: #fff;	border-radius: 40px;}
.p-accordion > li p{
	width:100%;
	padding: 30px 120px 30px 110px;
	cursor: pointer;
	background: #cff1ff;
	border-radius: 40px;
	font-size:2.2rem;
	position: relative;
	}
.p-accordion > li p span::before{
	content:'Q';
	font-size: 5.4rem;
	font-family: 'Montserrat', sans-serif;
    font-weight: 700;
	top:calc(50% - 27px);
	left:40px;
	color:#007ce6;
	position: absolute
}
.p-accordion > li p span::after {
	content:'';
	width:60px;
	height:60px;
	position: absolute;
	background: #fff;
	right:30px;
	top:calc(50% - 30px);
	border-radius: 50%
}

.p-accordion > li p::before,
.p-accordion > li p::after{
    content: '';
    display: block;
    width: 26px;
    height: 4px;
    border-radius: 1px;
    background: #127836;
    right:47px;
    top:calc(50% - 1px);
    transform: translateY(-50%);
	position: absolute;
	z-index: 1
  }
.p-accordion > li p::before{top:calc(50%);}
.p-accordion > li p::after {
	top: calc(50% - 1px);
    transform: translateY(-50%) rotate(-90deg);
    transition: 0.3s;
	}

.p-accordion > li p.is-active{
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.p-accordion > li p.is-active::after {
    transform: rotate(0);
    transition: 0.3s;
	top: calc(50% - 1.5px);
  }
	
.p-accordion > li p a{
	display: block;
	width:100%;
	height:100%;
	}


.p-accordion .p-accordion-inn {
	display: none;
}
.p-accordion .p-accordion-inn.open {
	display: block;
}

.p-accordion .p-accordion-inn > li{
	width:100%;
	padding: 30px 30px 30px 110px;
	cursor: pointer;
	background: #fff;
	border-bottom-left-radius: 40px;
	border-bottom-right-radius: 40px;
	line-height: 1.8;
	font-size:1.8rem;
	position: relative;
	}
.p-accordion .p-accordion-inn > li::before{
	content:'A';
	font-size: 5.4rem;
	font-family: 'Montserrat', sans-serif;
    font-weight: 700;
	top:-2px;
	left:45px;
	color:#007ce6;
	position: absolute
}



@media screen and (max-width: 767px) {
.p-accordion > li{margin-bottom: 5.3333333333vw}
.p-accordion > li p{
	width:100%;
	padding: 6vw  14.6666666666vw 6vw 16vw;
	cursor: pointer;
	background: #cff1ff;
	border-radius: 5.3333333333vw;
	font-size:5.3333333333vw;
	line-height: 1.4;
	position: relative;
	}
.p-accordion > li p span::before{
	content:'Q';
	font-size: 10.6666666666vw;
	font-family: 'Montserrat', sans-serif;
    font-weight: 700;
	top:calc(50% - 7.5vw);
	left:4vw;
	color:#007ce6;
	position: absolute
}
.p-accordion > li p span::after {
	content:'';
	width:10.6666666666vw;
	height:10.6666666666vw;
	position: absolute;
	background: #fff;
	right:2.6666666666vw;
	top:calc(50% - 5.3333333333vw);
	border-radius: 50%
}

.p-accordion > li p::before,
.p-accordion > li p::after{
    content: '';
    display: block;
    width: 4vw;
    height: 0.8vw;
    border-radius: 1px;
    background: #127836;
    right:5.9999999999vw;
    top:50%;
    transform: translateY(-50%);
	position: absolute;
	z-index: 1
  }
.p-accordion > li p::before{top:calc(50%);}
.p-accordion > li p::after {
	top:50%;
    transform: translateY(-50%) rotate(-90deg);
    transition: 0.3s;
	}

.p-accordion > li p.is-active::after {
	top:calc(50% - 0.5vw);
  }

.p-accordion .p-accordion-inn > li{
	width:100%;
	padding: 6vw 6vw 6vw 16vw;
	cursor: pointer;
	background: #fff;
	border-bottom-left-radius: 5.3333333333vw;
	border-bottom-right-radius:5.3333333333vw;
	line-height: 1.8;
	font-size:4.8vw;
	position: relative;
	}
.p-accordion .p-accordion-inn > li::before{
	content:'A';
	font-size:10.6666666666vw;
	font-family: 'Montserrat', sans-serif;
    font-weight: 700;
	top:2.66666666666vw;
	left:5vw;
	color:#007ce6;
	position: absolute
}

	
}

