@charset "utf-8";

/* ============================================================
   キャスト詳細（single-cast.php）
   もとは style.css の 1 枚に入っていたものを、使うページごとに分けた（並び順はもとのまま）
============================================================ */

.cast-right {
    width: 52%;
    float: right;
    position: relative;
}

.cast-photo.cast-left {
    width: 44%;
    float: left;
    background: none;
    position: relative;
}

h1.profile-bg {
    color: #D7BAA8;
}

table.cast-profile-table th {
    background: #000;
    color: #D7BAA8;
    font-weight: 500;
    padding: 5px 10px;
    vertical-align: middle;
    font-size: 13px;
    width: 30%;
    font-family: "Yu Gothic" , "YuGothic" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" ,Meiryo , "MS PGothic" , sans-serif;
}

table.cast-profile-table {
    border-collapse: separate;
    border-spacing: 1px;
    width: 100%;
    font-family: sans-serif!important;
    margin: 20px 0;
}

table.cast-profile-table td {
    background: rgb(0 0 0 / 49%);
    vertical-align: middle;
    padding: 11px 10px;
    font-size: 15px;
    font-weight: 500;
    font-family: "Yu Gothic" , "YuGothic" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" ,Meiryo , "MS PGothic" , sans-serif;
    color: #D7BAA8;
}

.cast-text {
    line-height: 2;
    font-size: 16px;
    position: relative;
    background: rgb(0 0 0 / 49%);
    padding: 15px;
}

.single .swiper-button-next,.single .swiper-button-prev {
    top: 50%!important;
}

@media screen and (max-width: 1000px) {

    .cast-photo.cast-left {
        width: 98%;
        float: none;
        margin: 0 auto 10px;
    }

    .cast-right {
        width: 95%;
        float: none;
        margin: 0 auto;
        position: relative;
    }

    table.cast-profile-table th {
        width: 30%;
        box-sizing: border-box;
        text-align: center;
    }
}

.single .swiper-container.swiper-container-horizontal {
    background: none;
}

.cast-text p {
    font-family: "Yu Gothic" , "YuGothic" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" ,Meiryo , "MS PGothic" , sans-serif;
    font-weight: 500;
}

.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 2px!important;
    left: 0;
    width: 100%;
    position: relative;
}

.swiper-pagination-bullet {
    width: 21px!important;
    height: 3px!important;
    background: #D7BAA8!important;
    opacity: .2;
    border-radius: unset!important;
}

@media screen and (max-width: 1116px) {

    .single .cast-name {
        font-size: 21px;
    }

    .single .cast-new.NEW.FACE,.single .cast-new.NEW.PHOTO {
        position: relative;
        top: 0;
        margin: 10px 10px 5px 0;
        width: auto;
        border-radius: 0;
        padding: 3px 10px;
        line-height: 13px;
        height: auto;
    }
}

@media screen and (max-width: 1000px) {

    .cast-right p.type-list {
        margin-top: 3px;
    }
}

.cast-new-icon-single .cast-new.NEW.PHOTO,.cast-new-icon-single .cast-new.NEW.FACE {
    width: auto;
    height: auto;
    border-radius: 1px;
    display: inline-block;
    padding: 0px 10px;
    top: 0;
    margin: 10px 10px 10px 0;
    line-height: 23px;
}

.one-cast .swiper-wrapper .swiper-slide:first-child {
    display: none;
}

.cast-photo.cast-left:hover {
    background: none;
}

@media screen and (max-width: 1000px) {

    p.insta-icon {
        /* position: absolute; */
        /* max-width: 100px; */
        /* right: 0; */
        /* top: 30px; */
        /* border-radius: 3px; */
        /* overflow: hidden; */
        margin-bottom: 0px;
    }
}

@media screen and (min-width: 1000px) {

    p.insta-icon {
        /* position: absolute; */
        /* max-width: 160px; */
        /* right: 0; */
        /* top: 42px; */
        margin-bottom: 10px;
    }
}

p.insta-icon {
    display: none;
}

p.concept {
    text-align: center;
    margin: 10px auto 10px;
    display: none;
}

p.concept a:hover {
    background: #f00;
    color: #fff;
}

p.concept a span {
    font-size: 179%;
    margin-left: 10px;
    position: relative;
    top: -2px;
    float: right;
}

@media screen and (max-width: 1000px) {

    table.cast-profile-table td {
        width: 60%;
        line-height: 1.6;
        box-sizing: border-box;
    }
}

/* ============================================================
   出勤（6 日分・2026-10-25）
   3 日ずつ上下 2 段に並べる。もとの float だと、出勤のある日だけ欄が高くなって段がずれるので grid にする
============================================================ */
#schedule .krc_calendar {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

/* clearfix の ::after が 7 つめの升にならないようにする */
#schedule .krc_calendar::after {
    display: none;
}

#schedule .krc_calendar dl {
    width: auto;
    min-width: 0px;
    float: none;
}

/* 下の段の上に区切りの線を引く */
#schedule .krc_calendar dl:nth-child(n+4) {
    border-top: 1px solid #ccc;
}

@media screen and (max-width: 1000px) {
    #schedule .krc_calendar dl {
        width: auto;
    }

    #schedule .krc_calendar dl dd {
        font-size: 14px;
    }
}
