@charset "utf-8";
/* CSS Document */

.contents{
  margin-bottom:0;
  }

/* ================================================== */
/* 質問共通 */
/* ================================================== */

#p-faq{
  background-color:#F8F8F8;
  padding:180px 0 200px;
  }
#p-faq h3{
  max-width:420px;
  background-color:#4F595D;
  color:#FFF;
  padding:5px 10px;
  margin:0 auto 80px;
  border-radius:15px;
  text-align:center;
  }
#p-faq .bold{
  font-weight:600;
  }
#p-faq .catebox{
  width:100%;
  background-color:#FFF;
  padding:80px 80px 100px;
  }
#p-faq .catebox + .catebox{
  margin-top:100px;
  }
#p-faq .item{
  border-bottom:solid #707070 1px;
  margin-bottom:15px;
  }
#p-faq .p-faq-title,
#p-faq .p-faq-answer{
  position: relative;
  padding: 15px 60px 15px 30px;	
  }
#p-faq .p-faq-title{
	cursor: pointer;
  font-size:1.6rem;
  transition: all .4s;
  }
#p-faq .p-faq-title:hover{
  opacity: 0.6;
  }
#p-faq .p-faq-answer{
  margin-bottom:15px;
  }
#p-faq .p-faq-title > div,
#p-faq .p-faq-answer > div{
	justify-content: flex-start;
  }
#p-faq .txt{
  width:calc(100% - 66px);	
	margin: 10px auto;
  }
#p-faq .p-faq-answer .txt{
  margin: 10px auto 30px;
  }

/* QAアイコン */
#p-faq .p-faq-title .icon,
#p-faq .p-faq-answer .icon{
  position:relative;
	font-size:2.0rem;
	line-height:1.0;
  margin-right: 20px;
  border-radius:50%;
  width:46px;
  height:46px;
  }
#p-faq .p-faq-title .icon span,
#p-faq .p-faq-answer .icon span{
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  }
#p-faq .p-faq-title .icon{
  color:#FFF;
  background-color:#4F595D;
  }
#p-faq .p-faq-answer .icon{
  color:#4F595D;
  background-color:#EAF2F5;
  }

/* 開閉アイコン */
#p-faq .p-faq-title::after{
  position: absolute;
  top: 50%;
  right:30px;
  display: block;
  content: "";
  width: 15px;
  height: 15px;
  border-top: solid 1px #4F595D;
  border-right: solid 1px #4F595D;
  transform:scale(0.8, 1) translate(0, -50%) rotate(135deg);
  transform-origin: center;	
  }
#p-faq .p-faq-title.active::after{
  transform:scale(0.8, 1) translate(0, -50%) rotate(-45deg);
  }

/* 開閉 */
#p-faq .p-faq-answer{
 	display: none;
  }
#p-faq .p-faq-answer.active{
  display: block;
  }

/* 例えば */
.ex{
  margin-top:60px;
  }
.ex > p{
  margin-bottom:10px
  }
.ex > div{
  align-items: center;
  }
.ex > div + div{
  margin-top:20px;
  }
.ex .graybox,
.ex .bluebox{
  padding:20px;
  font-size:1.3rem;
  border-radius:5px;
  }
.ex .graybox{
  background-color:#F0F0F0;
  width:38%;
  }
.ex .bluebox{
  background-color:#EAF2F5;
  width:52%;
  }
.ex .cursor{
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9.5px 0 9.5px 16.5px;
  border-color: transparent transparent transparent #f0f0f0;
  }

@media only screen and (max-width: 768px) {
#p-faq{
  padding:100px 0 150px;
  }
#p-faq .catebox{
  padding:80px 30px 100px;
  }
#p-faq .p-faq-title,
#p-faq .p-faq-answer{
  padding: 15px 60px 15px 15px;	
  }
/* 例えば */
.ex > div{
  display:block;
  align-items: center;
  }
.ex > div + div{
  margin-top:50px;
  }
.ex .graybox{
  width:100%;
  }
.ex .bluebox{
  width:100%;
  }
.ex .cursor{
  display:block;
  margin:8px auto;
  transform:rotate(90deg);
  }
}

@media only screen and (max-width: 480px) {
#p-faq{
  padding:50px 0 100px;
  }
#p-faq .catebox{
  padding:50px 25px 80px;
  }
#p-faq .catebox + .catebox{
  margin-top:50px;
  }
#p-faq h3{
  margin:0 auto 30px;
  }
#p-faq .p-faq-title,
#p-faq .p-faq-answer{
  padding: 15px 20px 15px 0;	
  }
#p-faq .p-faq-title{
  font-size:1.4rem;
  }
#p-faq .p-faq-title:hover{
  opacity: 1;
  }
#p-faq .txt{
  width:calc(100% - 52px);	
	margin: 0 auto;
  }
#p-faq .p-faq-answer .txt{
  margin: 5px auto 10px;
  }
/* QAアイコン */
#p-faq .p-faq-title .icon,
#p-faq .p-faq-answer .icon{
	font-size:1.8rem;
  margin-right: 0;
  width:32px;
  height:32px;
  }
#p-faq .p-faq-title .icon span,
#p-faq .p-faq-answer .icon span{
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  }
#p-faq .p-faq-title .icon{
  color:#FFF;
  background-color:#4F595D;
  }
#p-faq .p-faq-answer .icon{
  color:#4F595D;
  background-color:#EAF2F5;
  }
/* 開閉アイコン */
#p-faq .p-faq-title::after{
  right:5px;
  width: 10px;
  height: 10px;
  }
/* 例えば */
.ex{
  margin-top:30px;
  }
.ex .graybox,
.ex .bluebox{
  padding:15px 10px;
  font-size:1.1rem;
  }
}

/* ============ 問い合わせリンク ============ */

.contact-btn{
  margin-top:130px;
  }
.contact-btn a{
  display:inline-block;
  width:100%;
  max-width:700px;
  padding:20px;
  color:#FFF;
  background-color:#B2C3C7;
  border-radius:5px;
  transition: all .4s;
  }
.contact-btn a span::after{
  position:relative;
  bottom:-2px;
  display:inline-block;
  content: url(../img/common/icon_contact.svg);
  margin-bottom:-5px;
  margin-left:10px;
  }
.contact-btn a:hover{
  background-color:#9ab0b5;
  }



@media only screen and (max-width: 480px) {
.contact-btn{
  margin-top:60px;
  }
}

@media only screen and (max-width: 320px) {
.contact-btn a{
  padding:20px 5px;
  }
}
