@charset "UTF-8";

/* ******
KV
****** */
.p-schedule-kv {
    width: calc(1106 / 1280 * 100vw);
    height: calc(483 / 1280 * 100vw);
    padding-left: calc(152 / 1280 * 100vw);
    position: relative;
    margin: 0 auto;
}
.p-schedule-kv__bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url('../img/schedule/schedule-kv.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.p-schedule-kv__contents {
    position: absolute;
    bottom: calc(-188 / 1280 * 100vw);
    left: 50%;
    transform: translateX(-50%);
}
.p-schedule-kv__title-area {
    background-color: var(--color-primary);
    padding: calc(45 / 1280 * 100vw) calc(20 / 1280 * 100vw) calc(45 / 1280 * 100vw) calc(40 / 1280 * 100vw);
    width: calc(625 / 1280 * 100vw);
    display: flex;
    justify-content: center;
    align-items: center;
}
.p-schedule-kv__title {
    font-size: calc(30 / 1280 * 100vw);
    color: #fff;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 0.05em;
}
.p-schedule-kv__title-text {
    font-weight: 700;
    color: #fff;
}
.p-schedule__container {
    width: calc(800 / 1280 * 100vw);
    margin: calc(188 / 1280 * 100vw) auto 0;
}
.p-schedule__title-area {
    padding: calc(59 / 1280 * 100vw) 0 calc(78 / 1280 * 100vw);
    text-align: center;
}
.p-schedule__title {
    font-size: calc(18 / 1280 * 100vw);
    color: var(--color-primary);
    display: inline-block;
    border-bottom: 1px solid var(--color-primary);
    padding-bottom: calc(10 / 1280 * 100vw);
    letter-spacing: 0.1em;
}
.p-schedule__item {
    display: flex;
    width: 100%;
    gap: calc(7 / 1280 * 100vw);
    margin-bottom: calc(12 / 1280 * 100vw);
}
.p-schedule__list {
    width: calc(262 / 1280 * 100vw);
    height: 100%;
    background-color: #9F9B9D;
    clip-path: polygon(
        0 0,
        calc(100% - 40px) 0,
        100% 40px,
        100% 100%,
        0% 100%
    );
    cursor: pointer;
}
.p-schedule__list-title {
    font-size: calc(16 / 1280 * 100vw); 
    color: #fff;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 0.05em;
    padding: calc(35 / 1280 * 100vw) calc(14 / 1280 * 100vw);
    position: relative;
}
.p-schedule__list-title::after {
    content: '';
    position: absolute;
    bottom: calc(10 / 1280 * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: calc(15 / 1280 * 100vw) solid transparent;
    border-right: calc(15 / 1280 * 100vw) solid transparent;
    border-top: calc(15 / 1280 * 100vw) solid #fff;
}
.p-schedule__list-text {
    font-size: calc(20 / 1280 * 100vw);
    color: #fff;
    font-weight: 700;
}
.p-schedule__tab-img-area {
    width: 100%;
    margin-bottom: calc(28 / 1280 * 100vw);
}
.p-schedule__tab-schedule-area {
    display: flex;
    gap: calc(30 / 1280 * 100vw);
    width: calc(500 / 1280 * 100vw);
    margin: 0 auto calc(78 / 1280 * 100vw);
}
.p-schedule__tab-schedule {
    width: calc(117 / 1280 * 100vw);
    height: calc(1103 / 1280 * 100vw);
}
.p-schedule__tab-text-contents {
    width: calc(394 / 1280 * 100vw);
    height: 100%;
    margin-top: calc(60 / 1280 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-contents,
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-contents  {
    margin-top: calc(75 / 1280 * 100vw);
}
.p-schedule__tab-text-area {
    background-color: #E619580D;
    clip-path: polygon(
        0 0,
        calc(100% - 40px) 0,
        100% 40px,
        100% 100%,
        0% 100%
    );
    margin-bottom: calc(28 / 1280 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area {
    margin-bottom: calc(26 / 1280 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area {
    margin-bottom: calc(30 / 1280 * 100vw);
}
.p-schedule__tab-text {
    font-size: calc(16 / 1280 * 100vw);
    line-height: 1.4;
    letter-spacing: 0.07em;
    padding: calc(10 / 1280 * 100vw) calc(20 / 1280 * 100vw);
}
.p-schedule__tab-text-title {
    color: var(--color-primary);
    font-weight: 700;
}
.p-schedule__tab-txt-area02 {
    text-align: center;
    margin-bottom: calc(75 / 1280 * 100vw);
}
.p-schedule__tab-txt-title02 {
    font-size: calc(18 / 1280 * 100vw);
    color: var(--color-primary);
    display: inline-block;
    border-bottom: 1px solid var(--color-primary);
    padding-bottom: calc(10 / 1280 * 100vw);
    letter-spacing: 0.1em;
    position: relative;
    margin-bottom: calc(34 / 1280 * 100vw);
    font-weight: 700;
}
.p-schedule__tab-txt-title02::after {
    content: '';
    position: absolute;
    top: calc(-10 / 1280 * 100vw);
    right: calc(-72 / 1280 * 100vw);
    width: calc(62 / 1280 * 100vw);
    height: calc(37 / 1280 * 100vw);
    background-image: url('../img/schedule/schedule-img-03.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.p-schedule__tab-txt-text02 {
    width: calc(500 / 1280 * 100vw);
    margin: 0 auto calc(39 / 1280 * 100vw);
    line-height: 1.4;
    letter-spacing: 0.07em;
    text-align: left;
}
.p-schedule__list.is-active .p-schedule__list-title-area,
.p-schedule__list2.is-active
{
    background-color: var(--color-primary);
}
.p-schedule__tab-panel {
    display: none;
}
.p-schedule__tab-panel.is-active {
    display: block;
}
.p-schedule__item2 {
    display: flex;
    margin: 0 auto calc(39 / 1280 * 100vw) auto;
    gap: calc(10 / 1280 * 100vw);
    justify-content:center;
}
.p-schedule__list2 {    
    padding:10px 20px;
    background-color: #9F9B9D;
    text-align: center;
    color:white;
    cursor: pointer;
}
.p-schedule__list2 p{ 
    padding-top: 10px;
    color:white;
}
@media screen and (max-width: 767px)  {
/* ******
KV
****** */
.p-schedule-kv__container {
    padding: 0 calc(40 / 390 * 100vw);
}
.p-schedule-kv {
    width: 100%;
    height: calc(281 / 390 * 100vw);
}
.p-schedule-kv__bg {
    background-image: url('../img/schedule/schedule-kv-sp.webp');
}
.p-schedule-kv__contents {
    bottom: calc(-155 / 390 * 100vw);
}
.p-schedule-kv__title-area {
    padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
    width: calc(312 / 390 * 100vw);
}
.p-schedule-kv__title {
    font-size: calc(18 / 390 * 100vw);
    letter-spacing: 0;
}
.p-schedule__container {
    width: 100%;
    margin: calc(155 / 390 * 100vw) auto 0;
}
.p-schedule__title-area {
    padding: calc(35 / 390 * 100vw) 0;
}
.p-schedule__title {
    font-size: calc(18 / 390 * 100vw);
    padding-bottom: calc(10 / 390 * 100vw);
}
.p-schedule__contents {
    padding: 0 calc(40 / 390 * 100vw);
}
.p-schedule__item {
    gap: calc(7 / 390 * 100vw);
    margin-bottom: calc(12 / 390 * 100vw);
}
.p-schedule__list {
    width: calc(130 / 390 * 100vw);
    clip-path: polygon(
        0 0,
        calc(100% - 40px) 0,
        100% 40px,
        100% 100%,
        0% 100%
    );
}
.p-schedule__list-title {
    font-size: calc(12 / 390 * 100vw); 
    padding: calc(35 / 390 * 100vw) calc(7 / 390 * 100vw);
    letter-spacing: 0;
}
.p-schedule__list-title::after {
    bottom: calc(10 / 390 * 100vw);
    border-left: calc(15 / 390 * 100vw) solid transparent;
    border-right: calc(15 / 390 * 100vw) solid transparent;
    border-top: calc(15 / 390 * 100vw) solid #fff;
}
.p-schedule__list-text {
    font-size: calc(12 / 390 * 100vw);
}
.p-schedule__tab-img-area {
    width: 100%;
    margin-bottom: calc(22 / 390 * 100vw);
}
.p-schedule__tab-schedule-area {
    gap: calc(5 / 390 * 100vw);
    width: 100%;
    margin: 0 auto calc(48 / 390 * 100vw);
}
.p-schedule__tab-schedule {
    width: calc(117 / 390 * 100vw);
    height: calc(1103 / 390 * 100vw);
}
.p-schedule__tab-text-contents {
    width: 100%;
    height: 100%;
    margin-top: calc(72 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-contents,
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-contents  {
    margin-top: calc(75 / 390 * 100vw);
}
.p-schedule__tab-text-area {
    margin-bottom: calc(33 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area {
    margin-bottom: calc(33 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area {
    margin-bottom: calc(33 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(1) .p-schedule__tab-text-area:nth-last-of-type(2) {
    margin-bottom: calc(57 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(1) {
    margin-bottom: calc(57 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(2) {
    margin-bottom: calc(41 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(3) {
    margin-bottom: calc(57 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(4) {
    margin-bottom: calc(42 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(5) {
    margin-bottom: calc(12 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(5) .p-schedule__tab-text {
    padding: calc(12 / 390 * 100vw) calc(18 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area:nth-of-type(7) {
    margin-bottom: calc(40 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area:nth-of-type(1) {
    margin-bottom: calc(29 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area:nth-of-type(3) {
    margin-bottom: calc(57 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area:nth-of-type(4) {
    margin-bottom: calc(64 / 390 * 100vw);
}
.p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area:nth-of-type(5) {
    margin-bottom: calc(32 / 390 * 100vw);
}
.p-schedule__tab-text {
    font-size: calc(16 / 390 * 100vw);
    padding: calc(12 / 390 * 100vw) calc(20 / 390 * 100vw);
}
.p-schedule__tab-txt-area02 {
    margin-bottom: calc(75 / 390 * 100vw);
}
.p-schedule__tab-txt-title02 {
    font-size: calc(18 / 390 * 100vw);
    padding-bottom: calc(10 / 390 * 100vw);
    margin-bottom: calc(34 / 390 * 100vw);
}
.p-schedule__tab-txt-title02::after {
    top: calc(-10 / 390 * 100vw);
    right: calc(-72 / 390 * 100vw);
    width: calc(62 / 390 * 100vw);
    height: calc(37 / 390 * 100vw);
}
.p-schedule__tab-txt-text02  {
    text-align: left;
    letter-spacing: 0.15em;
    width: auto;
    margin: 0 auto;
}
.p-schedule__list2 {    
    font-size: calc(12 / 390 * 100vw);
}
}
@media screen and (min-width: 1281px) {
    .p-schedule-kv {
        width: 1106px;
        height: 603px;
    }
    .p-schedule-kv__contents {
        bottom: -188px;
    }
    .p-schedule-kv__title-area {
        padding: 45px 20px 45px 40px;
        width: 625px;
    }
    .p-schedule-kv__title {
        font-size: 30px;
    }
    .p-schedule__container {
        width: 800px;
        margin: 188px auto 0;
    }
    .p-schedule__title-area {
        padding: 59px 0 78px;
    }
    .p-schedule__title {
        font-size: 18px;
        padding-bottom: 10px;
    }
    .p-schedule__item {
        gap: 7px;
        margin-bottom: 12px;
    }
    .p-schedule__list {
        width: 262px;
    }
    .p-schedule__list-title {
        font-size: 16px;
        padding: 35px 14px;
    }
    .p-schedule__list-title::after {
        bottom: 10px;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-top: 15px solid #fff;
    }
    .p-schedule__list-text {
        font-size: 20px;
    }
    .p-schedule__tab-img-area {
        margin-bottom: 28px;
    }
    .p-schedule__tab-schedule-area {
        gap: 30px;
        width: 500px;
        margin: 0 auto 78px;
    }
    .p-schedule__tab-schedule {
        width: 117px;
        height: 1103px;
    }
    .p-schedule__tab-text-contents {
        width: 394px;
        margin-top: 60px;
    }
    .p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-contents,
    .p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-contents {
        margin-top: 75px;
    }
    .p-schedule__tab-text-area {
        margin-bottom: 28px;
    }
    .p-schedule__tab-panel:nth-of-type(2) .p-schedule__tab-text-area {
        margin-bottom: 26px;
    }
    .p-schedule__tab-panel:nth-of-type(3) .p-schedule__tab-text-area {
        margin-bottom: 30px;
    }
    .p-schedule__tab-text {
        font-size: 16px;
        padding: 10px 20px;
    }
    .p-schedule__tab-txt-area02 {
        margin-bottom: 75px;
    }
    .p-schedule__tab-txt-title02 {
        font-size: 18px;
        padding-bottom: 10px;
        margin-bottom: 34px;
    }
    .p-schedule__tab-txt-title02::after {
        top: -10px;
        right: -72px;
        width: 62px;
        height: 37px;
    }
}