@charset "UTF-8";


.cp_qa02 {
  margin: 0 auto;
}
.cp_qa02 .cp_actab input[type=checkbox] {
  display: none;
}
.cp_qa02 .cp_actab {
  padding: 20px 0;
  border-bottom: 1px dotted #cccccc;
}
/*質問テキスト*/
.cp_qa02 label {
  position: relative;
  display: flex;
  align-items: center;
  font-size: 110%;
  width: calc(100% - 70px);
  margin: 0 0 0 50px;
  padding: 10px;
  cursor: pointer;
  line-height:1.4rem;
}
/*＋アイコン*/
.cp_qa02 label::before {
  position: absolute;
  content: '+';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 210%;
  font-weight: bold;
  margin-left: -50px;
  padding: 0 0 0 0;
  transition: 0.4s ease;
}
.cp_qa02 .cp_actab input[type=checkbox]:checked ~ label::before {
  transform: rotate(45deg);
}
/*答えテキスト*/
.cp_qa02 .cp_actab-content {
  font-size: 0.9em;
  position: relative;
  overflow: hidden;
  height: 0;
  margin: 0 45px;
  padding: 0 14px;
  transition: 0.4s ease;
  opacity: 0;
 line-height:1.4rem;
}
.cp_qa02 .cp_actab input[type=checkbox]:checked ~ .cp_actab-content {
  height: auto;
  padding: 14px;
  opacity: 1;
}

.mt30{margin-top:50px; margin-bottom:100px;}

.faqflex {
  display: flex;
  gap: 40px;
 overflow: visible; /* sticky のために必ず visible に */
}

.faqsticky {
  position: sticky;
  top: 120px;
  align-self: flex-start;
  width: 245px;
  height: fit-content;
}


.faqsticky a {
  position: relative; /* 下線用に相対位置 */
  display: inline-block;
  text-decoration: none;
  transition: color 0.3s ease;
}

/* 下線の初期状態 */
.faqsticky a::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0;
  height: 1px; /* 下線の太さ */
  background-color: #000; /* 下線の色 */
  transition: width 0.3s ease; /* アニメーション速度 */
}

/* ホバー時・active時に下線を展開 */
.faqsticky a:hover::after,
.faqsticky a.active::after {
  width: 100%;
}

.faqsticky a:hover {
  color: #cccccc; /* アクセントカラー */
}

.first_qaarea {
  flex: 1;
  max-width: 70%;
  margin: 0 0 0 auto;
border-left: solid 1px #dfdfdf;
    padding-left: 40px;
}
a.faqsticky1 {
    margin-bottom: 15px;
}

.faqsticky1:before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 16px;/*画像の幅*/
  height: 16px;/*画像の高さ*/
  background-image: url(https://beacon-works.co.jp/wp-content/uploads/2025/10/menu_icon01.svg);
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
  position:relative;
  bottom:1px;
}

.faq_right{text-align:left;!important;
    padding-top: 70px;
    margin-bottom: 50px;}

.mt-70{margin-top:-110px;}

@media screen and (max-width:960px){
	.faqsticky {	
		display:none;
}
	.first_qaarea {
  flex: 1;
  max-width: 100%;
  margin: 0 0 0 auto;
border-left: solid 0px #dfdfdf;
    padding-left: 0px;
}
	.faq_right{text-align:left;!important;
    padding-top: 50px;
    margin-bottom: 40px;}
	.mt-70{margin-top:-70px;}
}