答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text.
答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text.
答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text.
<div class="cp_qa03">
<div class="cp_actab">
<input id="cp_tabfour031" type="checkbox" name="tabs">
<label for="cp_tabfour031">質問テキスト</label>
<div class="cp_actab-content">
<p>答えテキスト</p>
</div>
</div>
<div class="cp_actab">
<input id="cp_tabfour032" type="checkbox" name="tabs">
<label for="cp_tabfour032">質問テキスト</label>
<div class="cp_actab-content">
<p>答えテキスト</p>
</div>
</div>
<div class="cp_actab">
<input id="cp_tabfour033" type="checkbox" name="tabs">
<label for="cp_tabfour033">質問テキスト</label>
<div class="cp_actab-content">
<p>答えテキスト</p>
</div>
</div>
</div>
.cp_qa03 .cp_actab {
position: relative;
width: 100%;
margin: 0 0 1em 0;
color: #1b2538;
}
.cp_qa03 .cp_actab input {
display: none;
}
/* 質問 */
.cp_qa03 .cp_actab label {
font-weight: bold;
line-height: 1.6em;
position: relative;
display: block;
margin: 0 0 0 0;
padding: 1em 2em 1em 2.5em;
cursor: pointer;
text-indent: 1em;
border-radius: 0.5em;
background: rgba(27,37,56,0.1);
}
.cp_qa03 .cp_actab label::before {
content: 'Q';
font-family: serif;
font-size: 1.5em;
margin-left: -2em;
padding-right: 0.5em;
}
.cp_qa03 .cp_actab label:hover {
color: #00838f;
transition: all 0.3s;
}
/* --質問の+アイコン */
.cp_qa03 .cp_actab label::after {
position: absolute;
top: 0;
right: 0;
content: '+';
font-size: 1.7em;
font-weight: bold;
line-height: 2em;
display: inline-block;
width: 2em;
height: 2em;
transition: transform 0.3s;
}
/* 答え */
.cp_qa03 .cp_actab .cp_actab-content {
position: relative;
overflow: hidden;
max-height: 0;
padding: 0 0 0 2.5em;
border-radius: 0 0 0.5em 0.5em;
transition: max-height 0.2s;
}
.cp_qa03 .cp_actab .cp_actab-content::before {
position: absolute;
content: 'A';
font-family: serif;
font-size: 1.5em;
margin: 0.4em 0 0 -1em;
padding: 0;
}
.cp_qa03 .cp_actab .cp_actab-content p {
margin: 1em 1em 1em 0;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa03 .cp_actab input:checked ~ .cp_actab-content {
max-height: 40em;
border: 10px solid rgba(27,37,56,0.1);
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa03 .cp_actab input:checked ~ label {
color: #00838f;
border-radius: 0.5em 0.5em 0 0;
}
/* 質問をクリックした時の+の動き */
.cp_qa03 .cp_actab input[type=checkbox]:checked + label::after {
transform: rotateZ(45deg);
transform-origin: 50% 50%;
}