.onitaiji{
    background-image: url(../../../img/oni/bg.jpg);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    color: #FFF;
    text-align: center;
    font-size: 16px;
    font-family: "Zen Old Mincho", serif;
    padding-top: 90px;
    box-sizing: border-box;
}
.onitaiji section{
    padding: 56px 0;
}
.onitaiji .inner{
    width: 900px;
    max-width: 100%;
    padding: 0 10px;
    margin: auto;
    box-sizing: border-box;
}
.onitaiji .sec02{
    padding-bottom: 0;
}
.onitaiji .sec03{
    padding: 0 0 56px 0;
}
.onitaiji .iframe{
    width: 448px;
    height: 0;
    padding-top: calc(448px * 9 / 16);
    position: relative;
    margin: auto;
}
.onitaiji .iframe iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}
.onitaiji .left{
    text-align: left;
}
.onitaiji h2{
    padding-top: 120px;
    margin-top: -120px;
    margin-bottom: 40px;
    font-size: 60px;
    font-weight: 900;
    text-shadow: 0 0 40px #FF0000, 0 0 30px #FF0000;
}
.onitaiji h3{
    padding-top: 120px;
    margin-top: -120px;
    font-size: 36px;
    font-weight: 900;
    text-shadow: 0 0 40px #00FFEE, 0 0 30px #00FFEE;
}
.onitaiji .sec01{
    padding-top: 120px;
    padding-bottom: 30px;
    background-image: url(../../../img/oni/oni.png);
    background-size: contain;
    background-position: top -100px center;
    background-repeat: no-repeat;
    margin-top: -200px;
}
.onitaiji .fw{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}
.onitaiji .fw .tx{
    flex-basis: 48%;
}
.onitaiji .fw img{
    width: 48%;
}
.onitaiji .sec04{
    background-image: url(../../../img/oni/oni2.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 48px 0;
}
.onitaiji .sec04 .tx img{
    width: 100%;
}
.onitaiji .sec05{
    background-image: url(../../../img/oni/bg_filter01.png);
    background-repeat: no-repeat;
    padding: 48px 0;
}
.onitaiji .sec05 h2{
    position: relative;
    z-index: 2;
}
.onitaiji .sec05 p{
    padding-top: 272px;
    font-size: 24px;
    position: relative;
    z-index: 0;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 1), 0px 0px 10px rgba(0, 0, 0, 1), 0px 0px 20px rgba(0, 0, 0, 1);
}
.onitaiji .sec05 p:before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 500px;
    background-image: url(../../../img/oni/story.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: -1;
}
.onitaiji .sec06 .inner{
    position: relative;
    z-index: 0;
}
.onitaiji .sec06 .inner:after{
    content: "";
    position: absolute;
    top: 240px;
    right: -140px;
    margin: auto;
    width: 460px;
    height: 340px;
    background-image: url(../../../img/oni/rule02.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: -1;
}
.onitaiji .sec06 p{
    width: 672px;
    max-width: 100%;
    margin: auto;
}
.onitaiji .sec07 .join{
    display: flex;
    justify-content: space-between;

}
.onitaiji .sec07 .join .step{
    flex-basis: 230px;
    position: relative;
}
.onitaiji .sec07 .join .step:before{
    content: "";
    position: absolute;
    top: 36px;
    right: -50px;
    margin: auto;
    width: 36px;
    height: 60px;
    background-image: url(../../../img/oni/triangle.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}
.onitaiji .sec07 .join .step:nth-last-child(1):before{
    content: none;
}
.onitaiji .sec07 .join img{
    width: 122px;
    height: 125px;
    object-fit: contain;
    object-position: center center;
}
.onitaiji .sec07 .join p{
    margin-top: 44px;
    font-size: 24px;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 1), 0px 0px 10px rgba(0, 0, 0, 1), 0px 0px 20px rgba(0, 0, 0, 1);
}
.onitaiji .case{
    display: flex;
    justify-content: center;
    gap: 40px 120px;
}
.onitaiji .case .box{
    flex-basis: 374px;
    color: #FFF;
}
.onitaiji .event{
    display: flex;
    justify-content: center;
    gap: 40px 8px;
}
.onitaiji .event .box{
    flex-basis: 300px;
    color: #FFF;
    background-color: #000;
}
.onitaiji .event dl{
    display: flex;
    justify-content: left;
    gap: 4px 16px;
    align-items: center;
    flex-wrap: wrap;
    padding: 28px 18px;
}
.onitaiji .event dt{
    background-color: #FF0000;
    color: #FFF;
    font-size: 20px;
    font-weight: bold;
    flex-basis: 60px;
    padding: 4px 2px;
    box-sizing: border-box;
    text-align: center;
}
.onitaiji .event dd{
    color: #FFF;
    font-size: 20px;
    font-weight: bold;
    flex-basis: calc(100% - 60px - 16px);
}
@media screen and (max-width: 768px) {
    .onitaiji .inner{
        width: 100%;
        padding: 0 20px;
    }
    .onitaiji section{
        padding: 30px 0;
    }
    .onitaiji h2{
        margin-bottom: 12px;
        font-size: 32px;
    }
    .onitaiji h3{
        font-size: 24px;
        margin-bottom: 24px;
    }
    .onitaiji section.onitaiji_mv{
        padding: 0;
    }
    .onitaiji .sec01{
        padding-top: 80px;
        margin-top: -120px;
    }
    .onitaiji .sec01 h2 img{
        width: 100%;
    }
    .onitaiji .fw{
        flex-direction: column;
        align-items: center;
    }
    .onitaiji .fw img,
    .onitaiji .fw .tx{
        width: 100%;
        margin-bottom: 20px;
    }
    .onitaiji .fw img{
        order: 1;
    }
    .onitaiji .fw .tx{
        order: 2;
    }
    .onitaiji .sec04,
    .onitaiji .sec05,
    .onitaiji .sec06{
        padding: 24px 0;
    }
    .onitaiji .sec05 p{
        padding-top: 120px;
        font-size: 16px;
    }
    .onitaiji .sec07 .join{
        flex-wrap: wrap;
        align-items: center;
        gap: 40px 0;
    }
    .onitaiji .sec07 .join .step{
        flex-basis: 100%;
    }
    .onitaiji .sec06 .inner:after{
        content: none;
    }
    .onitaiji .sec07 .join .step:before{
        left: 0;
        right: 0;
        top: auto;
        bottom: -60px;
        transform: rotate(90deg);
    }
    .onitaiji .sec07 .join p{
        margin-top: 20px;
        font-size: 16px;
    }
    .onitaiji .case{
        flex-wrap: wrap;
    }
    .onitaiji .case .box{
        flex-basis: 100%;
    }
    .onitaiji .case .box .left{
        text-align: center;
    }
    .onitaiji .event{
        flex-wrap: wrap;
    }
    .onitaiji .event .box{
        flex-basis: 100%;
    }
    .onitaiji .event dt{
        font-size: 16px;
    }
    .onitaiji .event dd{
        font-size: 16px;
    }
}

#header.onitaiji_header{
    background-color: #000;
    color: #FFF;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 120px 18px 30px;
    position: fixed;
    width: 100%;
    box-sizing: border-box;
    top: 0;
    left: 0;
    z-index: 1000;
}
.onitaiji_header .header_cont02{
    display: flex;
    justify-content: right;
    gap: 0 40px;
}
.onitaiji_header .header_cont02 a{
    color: #FFF;
    font-size: 18px;
    font-weight: 900;
}

@media screen and (max-width: 1040px) {
    #header.onitaiji_header{
        padding: 18px 30px;
    }
    .onitaiji_header .header_cont02{
        gap: 0 20px;
    }
}
@media screen and (max-width: 900px) {
    .onitaiji_header .header_cont01 {
        width: 200px;
    }
    .onitaiji_header .header_cont02 a{
        font-size: 15px;
    }
}
@media screen and (max-width: 768px) {
    .onitaiji_header .humberger_label{
        width: 30px;
        height: 20px;
        position: relative;
        border-top: solid 2px #FFF;
        border-bottom: solid 2px #FFF;
    }
    .onitaiji_header .humberger_label:before{
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 30px;
        height: 2px;
        background-color: #FFF;
        transition: 0.2s ease;
    }
    .onitaiji_header .humberger_label:after{
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 30px;
        height: 2px;
        background-color: #FFF;
        transition: 0.2s ease;
    }
    .onitaiji_header .header_cont02{
        width: 100vw;
        height: 0;
        overflow: hidden;
        position: fixed;
        top: 80px;
        bottom: 0;
        left: 0;
        display: block;
        text-align: center;
        box-sizing: border-box;
        transition: 0.2s ease;
        opacity: 0;
    }
    .onitaiji_header .header_cont02 li{
        line-height: 2.5;
        font-size: 18px;
        margin: 10px 0;
    }
    .onitaiji_header .header_cont02 li a{
        display: block;
    }
    .onitaiji_header .humberger:checked + .humberger_label + .header_cont02{
        height: calc(100vh - 80px);
        background-color: rgb(0 0 0 / 0.8);
        padding-top: 120px;
        opacity: 1;
    }
    .onitaiji_header .humberger:checked + .humberger_label{
        border-top: solid 0px #FFF;
        border-bottom: solid 0px #FFF;
    }
    .onitaiji_header .humberger:checked + .humberger_label:before{
        transform: rotate(45deg);
    }
    .onitaiji_header .humberger:checked + .humberger_label:after{
        transform: rotate(-45deg);
    }
    .onitaiji .iframe{
        width: 100%;
        height: 0;
        padding-top: calc(100% * 9 / 16);
        position: relative;
        margin: auto;
    }
    .onitaiji .rules img{
        margin: auto;
        text-align: center;
    }


}