.container {
 width: 400px;
 margin: 0 auto;
 padding: 50px 0;
 background: #fff;
}

.acc-container article{
 transition:background-color 0.2s ease-out;
}
.acc-container article:hover{
 background-color: #fafafa;
}

.acc {
 border-width: 1px 0 1px;
 border-style: solid;
 border-color: #aaa;
 box-sizing: border-box;
 overflow: hidden;
}
.acc_head {
 /* padding: 10px;
 background: #aaa;
 border-bottom: 1px solid #fff;
 color: #fff; */
 display: block;
 position: relative;
 cursor: pointer;
 box-sizing: border-box;
 text-decoration: none;
}
.acc_head:after{
 content:'\FF0B';/* 全角＋ */
 display: inline-block;
 background-color: #f5f5f5;
 position: absolute;
 top: 50%;
 right: 0;
 transform: translate(0, -50%);
 line-height: 1;
 padding: 10px;
 border-radius: 50%;
 color: #06c;
 /* font-weight: bold; */
 font-size: 25px;
}
.acc_head.on:after{
 content:'ー';/* 全角− \2212 */
}
.acc_body {
 height: 0;
 /* padding: 0 20px;
 border: 1px solid #aaa;
 border-width: 0 1px; */
 box-sizing: border-box;
 overflow: hidden;
}
.acc_body>div{
 padding-top: 30px;
}
main article h2:first-child, main .article h2:first-child{
 margin-top: 0;
 margin-bottom: 0;
}
.text-container.acc_body{
 margin-top: 0;
 margin-bottom: 0;
}
.acc_body p {
 /* margin: 10px 0; */
}

.acc:last-child .acc_head {
 /* border-bottom: none; */
}