.contents-inner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.vocalCourseList {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}
.vocalCourseList__item {
    position: relative;
    box-sizing: border-box;
    width: calc(25% - 10px);
    margin: 15px auto 0;
}

.vocalCourseList__item > a > figure {
    position: relative;
}
.vocalCourseList__item > a > figure > img {
    width: 230px;
    height: 298px;
    object-fit: cover;
    object-position: top;
    border: 5px solid #ffffff;
}
.vocalCourseList__item.vocalCourseList__item--row2 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
    flex-wrap: nowrap;
}
.vocalCourseList__item.vocalCourseList__item--row2 > a > figure > img {
    height: calc(100% - 5px);
}
.vocalCourseList__item figcaption {
    background-color: red;
}
.vocalCourseList__item figcaption > span {
    position: absolute;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-family: HiraKakuProN-W6;
    font-size: 18px;
    font-weight: 600;
    color: #ffffff;
    text-align: center;
}
.vocalCourseList__item figcaption > p {
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 10px;
    text-align: left;
    color: #ffffff;
    padding: 14px 14px 10px;
}
.vocalCourseList__itemRibbon {
    position: absolute;
    left: -5px;
    top: 10px;
    min-width: 133px;
    box-sizing: border-box;
    font-size: 13px;
    background-color: #88DDBB;
    color: #ffffff;
    line-height: 23px;
    letter-spacing: 0.05em;
    padding: 2px calc(9px - 0.05em) 2px 15px;
}
.vocalCourseList__itemRibbon::after {
    content: "";
    width: 11px;
    position: inherit;
    right: 0;
    top: 0;
    background-color: inherit;
    display: block;
    height: 100%;
    z-index: 1;
    transform: skewX(-22.2deg);
    transform-origin: bottom right;
}
.vocalCourseList__itemRibbon--color2 {
    background-color: #EEAAAA;
}
.vocalCourseList__itemRibbon--color3 {
    background-color: #88CCDD;
    min-width: 121px;
}
.vocalCourseList__itemRibbon--color4 {
    background-color: #EFAC74;
}

.variousCourse {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.variousCourse__item {
    width: 185px;
}
.variousCourse__item > figure {
    width: 174px;
}
.variousCourse__itemInfo {
    display: none;
    text-align: center;
    padding-bottom: 10px;
}
.variousCourse__item > figure > figcaption {
    width: 174px;
    margin-left: auto;
    background-color: #ffffff;
    transform: translate(11px, -11px);
}
.variousCourse__item > figure > figcaption > span {
    display: block;
    font-family: HiraKakuProN-W6;
    font-size: 13px;
    font-weight: 600;
    color: #000000;
    line-height: 37px;
    padding: 0 15px;
    position: relative;
}
.variousCourse__item > figure > figcaption > .variousCourse__itemInfo > p {
    font-size: 12px;
    line-height: 1.75;
    text-align: left;
    color: #000000;
    padding: 0 15px 10px;
}
.variousCourse__item > figure > figcaption > .variousCourse__itemInfo > a {
    display: inline-block;
    font-size: 12px;
    color: #000000;
    text-decoration: none;
    border: 1px solid #000000;
    padding: 10px;
}

.js-accordion__button > .accordion__button {
    position: absolute;
    display: block;
    bottom: 50%;
    right: 10px;
    width: 12px;
    height: 1px;
    background-color: #000;
}
.js-accordion__button > .accordion__button::after {
    content: "";
    position: absolute;
    display: block;
    width: inherit;
    height: inherit;
    background-color: inherit;
    transform: rotateZ(90deg);
    transition: transform .5s 0s ease;
}
.is-accordionActive .accordion__button::after {
    transform: rotateZ(180deg);
}

/* -------------------------------------------------------------------- */
.vc-eysCommon {
    width: 100%;
    background-color: #dddddd;
    padding: 60px 0 100px;
}
.vocal__eysCommon {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: nowrap;
}
.vocal__eysCommonItem {
    width: calc(33.33% - 10px);

}
.vocal__eysCommonItem figcaption {
    box-sizing: border-box;
    padding: 0 5px 5px;
    background-color: #ffffff;
}
.vocal__eysCommonItem > img {
    width: 100%;
    display: flex;
}
main#instruments.compact.vc-vocalTop .contents-box.schedule01 img.allfree,
main#instruments.compact.vc-vocalTop .contents-box.musicstylist .musicstylist01 {
    margin-left: 0;
}

main#instruments.compact.vc-vocalTop .contents-box.musicstylist .box .inner-box {
    margin-top: 40px;
}