/* ------------------------------------------------------ */
/* feature_usj_pc.css */
/* ------------------------------------------------------ */

/* 共通調整 */

.feature-maintext {
    margin-top: 16px;
}
.feature-maintext p {
    width: 100%;
    height: auto;
    text-align: center;
}
.feature_usj .feature_category_title {
    color: #000;
}
.featureusj .feature_category_title::after {
    background: #ee4656;
}
.feature_usj .heading3 {
    margin-bottom: 16px;
    color: #000;
    font-size: 22px;
    font-weight: bold;
    line-height: 1;
    text-align: left;
}
.feature_usj .content_product_list .feature_category_title {
    position: relative;
    margin: 0 20px 16px;
    padding: 0;
    color: #000;
    font-size: 22px;
    font-weight: bold;
    line-height: 1;
    text-align: left;
}
.feature_usj .content_product_list .feature_category_title::after {
    content: none;
}
.feature_usj .block-product-list {
    margin-top: 0;
}
.list-note-dot {
    margin-bottom: 16px;
}
.list-note-dot:last-child {
    margin-bottom: 0;
}
.list-note-dot > li {
    position: relative;
    margin: 0 0 0 1em;
    font-size: 14px;
}
.list-note-dot > li::before {
    content: '・';
    position: absolute;
    top: 0;
    left: -1em;
}
.list-note-dot > li:last-child {
    margin-bottom: 0;
}

.list-product {
    margin-bottom: 40px;
}

/* スタジオパスエリア */
.block-studio-pass {
    width: 1080px;
    margin: 0 auto;
}
.block-studio-pass .feature_category_title {
    margin-bottom: 24px;
    color: #000;
    line-height: 1;
}
.block-studio-pass .feature_category_title::after {
    background: #ee4656;
}
.text-introduction {
    margin-bottom: 48px;
    text-align: center;
}

/* 取り扱いチケット */
.handling-ticket {
    margin-bottom: 40px;
}
.handling-ticket .ticket-type {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.ticket-type li {
    width: 258px;
    height: 95px;
    overflow: hidden;
    border-radius: 4px;
    background: #e6f0f8;
    font-size: 14px;
    text-align: center;
}
.handling-ticket .ticket-type .ticket-name {
    display: block;
    padding: 7px 0;
    background: #0069b5;
    color: #fff;
    font-weight: bold;
}
.handling-ticket .ticket-type .ticket-description {
    display: inline-block;
    padding-top: 8px;
}

/* 各チケットの年齢制限 */
.ticket-groups {
    margin-bottom: 40px;
}
.ticket-groups .group-category {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
} 
.group-category li {
    display: flex;
    width: 258px;
    height: auto;
    overflow: hidden;
    border-radius: 4px;
    background: #e6f0f8;
    color: #fff;
    font-size: 14px;
    font-weight: normal;
}
.group-category li:first-child {
    margin-right: 16px;
}
.group-category .group-category-detail {
    display: inline-block;
    width: 72px;
    padding: 8px 0;
    background: #0069b5;
    font-weight: bold;
    text-align: center;
}
.group-category .group-category-age {
    display: inline-block;
    width: 186px;
    padding: 8px 0;
    color: #000;
    font-size: 16px;
    text-align: center;
}

/* 利用の流れ */

.ticket-how-to-use {
    margin-bottom: 40px;
}
.ticket-how-to-use .how-to-use-step {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.how-to-use-step li {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    width: 328px;
    height: 256px;
    border: 2px solid #0069b5;
    border-radius: 8px;
}
.how-to-use-step li::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 56px;
    height: 56px;
    background-color: #0069b5;
    border-radius: 4px 0 0 0;
}
.how-to-use-step li.step1::before {
    background-image: url(../images/icon_step1.png);
    background-repeat: no-repeat;
    background-position: 8px 9px;
    background-size: 36px 37px;
}
.how-to-use-step li.step2::before {
    background-image: url(../images/icon_step2.png);
    background-repeat: no-repeat;
    background-position: 8px 9px;
    background-size: 36px 37px;
}
.how-to-use-step li.step3::before {
    background-image: url(../images/icon_step3.png);
    background-repeat: no-repeat;
    background-position: 8px 9px;
    background-size: 36px 37px;
}
.how-to-use-step li::after {
    content: '';
    display: block;
    position: absolute;
    top: 114px;
    right: -34px;
    width: 14px;
    height: 27px;
    background-color: #0069b5;

    clip-path: polygon(14px 50%, 0% 0%, 0% 27px);
}
.how-to-use-step li:last-of-type::after {
    content: none;
}

.how-to-use-step p {
    width: 100%;
    padding: 16px 24px 0 72px;
}
.how-to-use-step .text-note {
    display: block;
    padding-left: 1em;
    font-size: 12px;
    text-indent: -1em;
}
.how-to-use-step figure {
    width: 257px;
    height: auto;
    padding-bottom: 24px;
}
.how-to-use-step figure img {
    width: inherit;
}

/* 注意事項 */
.block-attention {
    width: 1080px;
    margin: 0 auto;
}

.list-attention dt {
    font-weight: bold;
}
.list-attention dd:not(:last-of-type) {
    margin-bottom: 16px;
}