@charset "utf-8";
/* CSS Document */





#kenshu #main_bg {}

#kenshu ul#y_list {
    overflow: hidden;
}

#kenshu ul#y_list li {
    padding-left: 10px;
    padding-right: 10px;
    float: left;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #718096;
}

#kenshu ul#y_list li:last-child {
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #718096;
}

#kenshu ul#y_list li a {
    color: #BAE1E9;
    text-decoration: underline;
}

#kenshu ul#info_list {
    border: 6px solid #8099b4;
    clear: both;
    padding: 14px;
}

#kenshu ul#info_list li {
    padding-top: 9px;
    padding-right: 16px;
    padding-bottom: 9px;
    padding-left: 16px;
    background-color: #212121;
    overflow: hidden;
}

#kenshu ul#info_list li:nth-child(2n) {
    background-color: #282828
}

#kenshu ul#info_list li .yymmdd {
    float: left;
    width: 150px;
    font-weight: bold;
    color: #90c5ff;
    letter-spacing: 0.1em;
}

#kenshu ul#info_list li .info_txt {
    float: left;
    width: 708px;
}

#kenshu ul#info_list li .info_txt a {
    text-decoration: underline;
}

#kenshu ul#info_list li.only_mem .info_txt a:after {
    content: url("../../news/img/news_01.gif");
}

#kenshu ul#res_menu {
    overflow: hidden;
    padding-right: 3px;
    padding-left: 3px;
}

#kenshu ul#res_menu li {
    float: left;
    margin-right: 3px;
    margin-left: 3px;
}

#kenshu ul#res_menu li a {
    color: #FFFFFF;
    padding-top: 6px;
    padding-right: 16px;
    padding-bottom: 6px;
    padding-left: 16px;
    display: block;
    background-color: #414141;
    letter-spacing: 0.1em;
    font-weight: bold;
}

#kenshu ul#res_menu li.hdc_now a {
    background-color: #8099B4;
}

#kenshu ul#res_menu li.kenshu_out {
    float: right;
}

.man#kenshu ul#res_menu li:nth-of-type(odd) a {
    background-color: #8099B4;
}

.woman#kenshu ul#res_menu li:nth-of-type(even) a {
    background-color: #8099B4;
}

#kenshu.point ul#res_menu li#rmenu_point a {
    background-color: #8099B4;
}

#kenshu.order ul#res_menu li#rmenu_order a {
    background-color: #8099B4;
}

#kenshu.combi ul#res_menu li#rmenu_combi a {
    background-color: #8099B4;
}

#kenshu.senkou ul#res_menu li#rmenu_senkou a {
    background-color: #8099B4;
}

#kenshu.kiyaku ul#res_menu li#rmenu_kiyaku a {
    background-color: #8099B4;
}

#kenshu.progress ul#res_menu li#rmenu_prog a {
    background-color: #8099B4;
}

#kenshu.minutes ul#res_menu li#rmenu_minutes a {
    background-color: #8099B4;
}


#kenshu ul#month_menu {
    padding: 10px;
    overflow: hidden;
}

#kenshu ul#month_menu li {
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #8099B4;
    padding-top: 2px;
    padding-right: 10px;
    padding-bottom: 2px;
    padding-left: 10px;
    float: left;
}

#kenshu ul#month_menu li:last-child {
    border-right-style: none;
}

#kenshu ul#month_menu li a {
    letter-spacing: 0.1em;
}


#kenshu .detail_box {
    border: 6px solid #8099b4;
    clear: both;
}

#kenshu .detail_box h3 {
    display: block;
    padding-top: 14px;
    padding-right: 20px;
    padding-bottom: 14px;
    padding-left: 20px;
    font-size: 16px;
    color: #FFF;
    background-color: #282828;
    letter-spacing: 0.1em;
}

#kenshu .detail_box .txt_area {
    padding: 14px;
}

#kenshu .detail_box .txt_area .img_follow {
    text-align: center;
    background-color: #FFF;
    display: block;
    margin-bottom: 20px;
    padding: 20px;
}

#kenshu .detail_box .txt_area .img_follow img {
    width: 100%;
}

#kenshu .detail_box .txt_area a {
    color: #BAE1E9;
    text-decoration: underline;
}

#kenshu .detail_box table {
    margin-top: 6px;
    margin-bottom: 6px;
    counter-reset: pronum;
    width: 100%;
}






#kenshu .detail_box table th {
    background-color: #3c6896;
    padding: 6px 3px;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #748DA3;
    text-align: center;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #748DA3;
    font-size: 11px;
    line-height: 14px;
    vertical-align: middle;
}

#kenshu .detail_box table td {
    background-color: #232323;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-right-color: #3a3a3a;
    border-bottom-color: #3a3a3a;
    padding: 4px;
}

#kenshu .detail_box table td.totalP,
#kenshu .detail_box table tr:nth-child(2n) td.totalP {
    background-color: #0F1B28;
    font-size: 12px;
    font-weight: bold;
    color: #BFD5EA;
    text-align: center;
    white-space: nowrap;
}

#kenshu .detail_box table td.kkP,
#kenshu .detail_box table tr:nth-child(2n) td.kkP {
    background-color: #132233;
    text-align: center;
    font-size: 12px;
}

#kenshu .detail_box table td.juni,
#kenshu .detail_box table tr:nth-child(2n) td.juni {
    background-color: #2c445e;
    text-align: center;
    font-size: 12px;
}

#kenshu .detail_box table td.ranknum,
#kenshu .detail_box table tr:nth-child(2n) td.ranknum {
    background-color: #0D0E0F;
    font-size: 10px;
    font-weight: bold;
    color: #FFFFFF;
    text-align: center;
    white-space: nowrap;
}

#kenshu .detail_box table th.totalP {
    background-color: #1B3161;
}

#kenshu .detail_box table th.kkP {
    background-color: #244382;
}

#kenshu .detail_box table th.font_s {
    font-size: 10px;
    line-height: 12px;
}


#kenshu .detail_box table td.Pname,
#kenshu .detail_box table td.Pname_nonum,
#kenshu .detail_box table tr:nth-child(2n) td.Pname_nonum,
#kenshu .detail_box table td.Pname-Noco,
#kenshu .detail_box table td.Seed,
#kenshu .detail_box table tr:nth-child(2n) td.Seed,
#kenshu .detail_box table tr:nth-child(2n) td.Pname,
#kenshu .detail_box table tr:nth-child(2n) td.Pname-Noco,
#kenshu .detail_box table td.PnameEreg,
#kenshu .detail_box table tr:nth-child(2n) td.PnameEreg {
    background-color: #0D0E0F;
    white-space: nowrap;
    padding-right: 6px;
    font-size: 12px;
    padding-left: 4px;
}

#kenshu .detail_box table td.rank_point,
#kenshu .detail_box table td.getsu {
    font-size: 12px;
    text-align: center;
    line-height: 11px;
    white-space: nowrap;
}

#kenshu .detail_box table td.rank_point strong {
    display: block;
    text-align: center;
    line-height: 14px;
    margin: 0px;
    font-size: 12px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    color: #69A2CB;
}

#kenshu .detail_box table td.rank_point:after {
    content: "位";
}

#kenshu .detail_box table td.rank_point.no_i:after {
    content: " ";
}

#kenshu .detail_box table td.rank_point:empty:after {
    content: "";
}

#kenshu .detail_box table td.rank_point16- {
    font-size: 12px;
    text-align: center;
    line-height: 16px;
    white-space: nowrap;
}

#kenshu .detail_box table td.rank_point16- strong {
    display: block;
    text-align: center;
    line-height: 14px;
    margin: 0px;
    font-size: 12px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    color: #69A2CB;
}

#kenshu .detail_box table td.rank_point16-:after {
    content: "";
}

#kenshu .detail_box table td.rank_point16-.no_i:after {
    content: "";
}

#kenshu .detail_box table td.rank_point16-:empty:after {
    content: "";
}




#kenshu .detail_box table td.PnameEreg em {
    font-weight: bold;
    color: #BFD5EA;
    float: left;
    padding-right: 6px;
    margin: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}

#kenshu .detail_box table td.Pname:before {
    counter-increment: pronum;
    content: counter(pronum) "位";
    color: #BFD5EA;
    float: left;
    padding-right: 4px;
    font-weight: bold;
    width: 25px;
    font-size: 10px;
}

#kenshu .detail_box table td.Pname.rank_nr:before {
    counter-increment: pronum;
    content: "NR";
    color: #BFD5EA;
    float: left;
    padding-right: 4px;
    font-weight: bold;
    width: 25px;
    font-size: 10px;
}

#kenshu .detail_box table td.Pname.rank_blank:before {
    counter-increment: pronum;
    content: "　";
    color: #BFD5EA;
    float: left;
    padding-right: 4px;
    font-weight: bold;
    width: 25px;
    font-size: 10px;
}


#kenshu .detail_box table td.Pname.plus2:before {
    counter-increment: pronum 2;
}

#kenshu .detail_box table td.Pname.plus3:before {
    counter-increment: pronum 3;
}

#kenshu .detail_box table td.Pname.plus4:before {
    counter-increment: pronum 4;
}

#kenshu .detail_box table td.Pname.plus5:before {
    counter-increment: pronum 5;
}

#kenshu .detail_box table td.Pname.plus6:before {
    counter-increment: pronum 6;
}

#kenshu .detail_box table td.Pname.plus7:before {
    counter-increment: pronum 7;
}


#kenshu .detail_box table td.Pname.even:before {
    counter-increment: pronum 0;
}

#kenshu .detail_box table td.Pname-Noco strong {
    color: #BFD5EA;
    float: left;
    padding-right: 6px;
    font-weight: bold;
    width: 29px;
    font-size: 12px;
}



#kenshu .detail_box table td.Pname.Seed:before {
    counter-increment: none;
    content: "S";
    color: #BFD5EA;
    float: left;
    padding-right: 4px;
    font-weight: bold;
    width: 25px;
    font-size: 12px;
    text-align: center;
}


#kenshu .detail_box table td strong {
    display: inline;
    margin: 0px;
    width: auto;
    font-size: 14px;
    font-weight: bold;
    color: #BFD5EA;
    padding-top: 0px;
    padding-right: 2px;
    padding-bottom: 0px;
    padding-left: 0px;
}


#kenshu .detail_box table th:last-child {
    border-right-style: none;
}

#kenshu .detail_box table td:last-child {
    border-right-style: none;
}

#kenshu .detail_box table tr:last-child td {
    border-bottom-style: none;
}

#kenshu .detail_box table tr:nth-child(2n) td {
    background-color: #2d2d2d;
}

#kenshu .detail_box table td.tab_name {
    background-color: #002454;
    border-right-style: none;
    border-bottom-style: none;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.1em;
}


#kenshu .detail_box .atg {
    padding-top: 10px;
    text-align: right;
}

#kenshu .detail_box .yymmdd {
    font-style: normal;
    display: inline;
    color: #90c5ff;
    padding-left: 12px;
    font-weight: normal;
    letter-spacing: 0em;
}

#kenshu .detail_box .update {
    text-align: right;
    font-size: 10px;
}

#kenshu .detail_box strong {
    font-size: 16px;
    color: #ADD7ED;
    display: block;
    font-weight: normal;
    padding-top: 12px;
}

#kenshu .detail_box em {
    font-size: 12px;
    color: #ADD7ED;
    display: block;
    font-weight: normal;
    padding-top: 10px;
    font-style: normal;
}


#kenshu .detail_box .img_area {
    background-color: #FFF;
    text-align: center;
    margin: 14px;
    padding-top: 20px;
    padding-right: 14px;
    padding-bottom: 20px;
    padding-left: 14px;
}

#kenshu .detail_box .img_area .update {
    color: #333;
    padding-right: 20px;
}

#kenshu .detail_box .pincharge,
#kenshu .detail_box table tr:nth-child(2n) td.pincharge {
    background-color: #000000;
}

#kenshu .detail_box div.pincharge {
    display: inline;
}

#kenshu .detail_box ul.heir_01 {}

#kenshu .detail_box ul.heir_01 li {
    padding-bottom: 6px;
}

#kenshu .detail_box ul.heir_01 li h4 {
    font-size: 14px;
    line-height: normal;
    letter-spacing: 0.1em;
}

#kenshu .detail_box ul.heir_01 li .heir_02 {
    padding-right: 10px;
    padding-left: 10px;
}

#kenshu .detail_box ul.heir_01 li .heir_02 ul li {
    padding-bottom: 4px;
    text-indent: -22px;
    padding-left: 22px;
}

#kenshu .detail_box table.plname_area {
    width: 100%;
    float: left;
}

#kenshu .detail_box table.plpoint_area {
    width: 500px;
    display: block;
    float: left;
}

#kenshu.notes .detail_box ul.heir_01 li h4 {
    display: inline-block;
}

#kenshu.notes .detail_box ul.heir_01 li {
    padding-bottom: 15px;
}

/*1020追加*/
#kenshu .detail_box .rank_box {
    width: 290px;
    float: left;
}

#kenshu .detail_box .score_box {
    width: 600px;
    overflow-x: scroll;
    display: block;
    float: left;
    overflow: auto;
}

/*180509追加*/
#kenshu.kenshu2018 .detail_box .rank_box {
    width: 390px;
    float: left;
}

#kenshu.kenshu2018 .detail_box .score_box {
    width: 500px;
    overflow-x: scroll;
    display: block;
    float: left;
    overflow: auto;
}

#kenshu.kenshu2018 .detail_box table.plpoint_area {
    width: 500px;
    display: block;
    float: left;
}

#kenshu.kenshu2018 .detail_box table td.rank_point:after {
    content: normal;
}

#kenshu.kenshu2018 .detail_box table th.getsu {
    background-color: #ffcc99;
    color: #0D0E0F;
}

#kenshu.kenshu2018 .detail_box table td.getsu {
    background-color: #fff;
    color: #0D0E0F;
}

#kenshu.kenshu2018 .detail_box table tr:nth-child(2n) td.getsu {
    background-color: #f7f7f7;
    color: #0D0E0F;
}


/*横幅小さい時使用--大きくなったら削除*/
#kenshu .detail_box table.plpoint_area td {
    width: 100px;
}

#kenshu .detail_box table.plname_area th,
#kenshu .detail_box table.plpoint_area th {
    height: 120px;
}

#kenshu .detail_box table td.Pname,
#kenshu .detail_box table td.PnameEreg,
#kenshu .detail_box table td.Pname_nonum {
    height: 36px;
}

#kenshu .detail_box table td.rank_point,
#kenshu .detail_box table td.rank_point16-,
#kenshu .detail_box table td.getsu {
    height: 36px;
}

/*1020追加ここまで*/

/*1105追加*/
#kenshu em.oshirase {
    font-size: 12px;
    font-style: normal;
    font-weight: bold;
    color: #FFF;
    display: block;
    padding-bottom: 4px;
}

#kenshu p.oshirase {
    display: block;
    padding-top: 6px;
    padding-right: 12px;
    padding-bottom: 6px;
    padding-left: 12px;
    border: 1px solid #FFF;
}

#kenshu p.oshirase em {
    background-color: #B13303;
    padding: 4px;
    display: inline;
    color: #FFF;
    margin-right: 6px;
}

#kenshu .detail_box table td.orange {
    background-color: #B13303 !important;
}

/*1105追加ここまで*/




/*結果発表*/
#kenshu .detail_box table.progress_tab {}

#kenshu .detail_box table.progress_tab td {
    text-align: center;
}

#kenshu .detail_box table.progress_tab td.prog_month {
    font-weight: bold;
    width: 120px;
}

#kenshu .detail_box table.progress_tab td.average {
    font-weight: bold;
    background-color: #3c6896;
    letter-spacing: 0.1em;
    font-size: 14px;
}

#kenshu .detail_box table.progress_tab td.prog_month.average {
    font-size: 12px;
    background-color: #1C1C1C;
}

#kenshu .detail_box .senkou_box {
    background-color: #FFF;
    padding: 7px;
}

#kenshu .detail_box table.progress_tab td img.diagonal {
    width: 100px;
    height: 20px;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
}

#kenshu .detail_box table.progress_tab td.diagonal {
    background-image: url(../../kenshukai/img/progress_line.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

#kenshu .detail_box table.progress_tab td.xmark {
    background-image: url(../../kenshukai/img/progress_X.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}


#kenshu .detail_box table.progress_tab td {}


/* 新サイトデザイン用スタイル（成田ゴルフ倶楽部 公式サイト準拠） */
#subbox .detail_box {
    margin: 0 auto;
    max-width: 800px;
    padding: 40px 0;
}

#subbox .detail_box .txt_area {
    text-align: center;
}

#subbox .detail_box .kenshu_btn {
    list-style: none;
    padding: 0;
    margin: 0;
}

#subbox .detail_box .kenshu_btn li {
    margin-bottom: 20px;
}

#subbox .detail_box .kenshu_btn li a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    max-width: 500px;
    margin: 0 auto;
    padding: 20px;
    background: linear-gradient(to bottom, #003a7a 0%, #002454 100%);
    color: #ffffff;
    font-family: 'Crimson Text', 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
    font-size: 18px;
    text-decoration: none;
    letter-spacing: 0.1em;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

#subbox .detail_box .kenshu_btn li a:hover {
    opacity: 0.9;
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
}

#subbox .detail_box .kenshu_btn li a::before {
    content: '';
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 8px;
    height: 8px;
    border-top: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
}

#subbox .detail_box .kenshu_btn li a span {
    display: inline-block;
    font-size: 13px;
    color: #d4b46a;
    position: absolute;
    right: 20px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0;
    font-weight: normal;
}

#subbox .detail_box .atg {
    margin-top: 40px;
    text-align: right;
    font-family: 'Crimson Text', 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
    font-size: 18px;
    color: #333333;
    padding-right: 20px;
}

@media screen and (max-width: 768px) {
    #subbox .detail_box .kenshu_btn li a {
        font-size: 16px;
        padding: 15px;
        flex-direction: column;
        align-items: center;
    }

    #subbox .detail_box .kenshu_btn li a span {
        position: static;
        margin-top: 10px;
        font-size: 12px;
    }

    #subbox .detail_box .kenshu_btn li a::before {
        left: 15px;
    }
}

/* 理事会ページ（riji.php）個別用スタイル */
#subbox .detail_box .riji-ninki {
    font-family: 'Crimson Text', 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
    font-size: 16px;
    color: #666;
    margin-bottom: 30px;
    text-align: center;
}

#subbox .detail_box .riji-h2 {
    font-family: 'Crimson Text', 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
    font-size: 24px;
    color: #002454;
    border-bottom: 1px solid #d4b46a;
    padding-bottom: 15px;
    margin: 60px auto 30px;
    text-align: center;
    letter-spacing: 0.1em;
    max-width: 600px;
}

#subbox .detail_box .riji-h2 .tantou-riji {
    display: block;
    font-size: 15px;
    color: #9b7625;
    font-family: "Noto Sans JP", sans-serif;
    margin-top: 10px;
    font-weight: normal;
}

#subbox .detail_box table {
    width: 100%;
    max-width: 800px;
    margin: 0 auto 40px;
    border-collapse: collapse;
    font-family: "Noto Sans JP", sans-serif;
    border: 1px solid #e5e5e5;
}

#subbox .detail_box table th {
    background-color: #666666;
    color: #ffffff;
    font-weight: bold;
    padding: 12px 15px;
    border: 1px solid #e5e5e5;
    text-align: left;
    font-size: 14px;
}

#subbox .detail_box table td {
    padding: 12px 15px;
    border: 1px solid #e5e5e5;
    background-color: #fff;
    color: #333;
    font-size: 15px;
}

/* モバイルビュー：1行（1レコード）ずつ表示 */
@media screen and (max-width: 768px) {
    #subbox .detail_box table,
    #subbox .detail_box table tbody,
    #subbox .detail_box table tr {
        display: block;
        width: 100%;
    }
    #subbox .detail_box table th,
    #subbox .detail_box table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }
    #subbox .detail_box table th {
        padding: 8px 15px;
        background-color: #555555; /* Slightly darker for distinction */
        border-bottom: none;
    }
    #subbox .detail_box table td {
        padding: 10px 15px 20px;
        margin-bottom: 5px;
    }
    /* スマホビューでは、空のセル（調整用）は非表示にしてスッキリさせる */
    #subbox .detail_box table th:empty,
    #subbox .detail_box table td:empty {
        display: none;
    }
}

/* メンバーニュース 成績発表・組合せ（mnXXXXXX.php）用スタイル */
#subbox .detail_box h3 {
    display: block;
    background: none !important;
    color: #b4a25f !important; /* Gold */
    font-family: "Crimson Text", 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
    font-size: 28px;
    font-weight: 600;
    text-align: left;
    padding: 0 0 10px 0;
    margin-bottom: 20px;
    border-bottom: 1px solid #b4a25f;
    letter-spacing: 0.05em;
    position: relative;
}

#subbox .detail_box h3 .yymmdd {
    display: inline-block !important;
    font-size: 14px;
    color: #666 !important;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: normal;
    margin-left: 20px;
    padding-left: 0;
    vertical-align: bottom;
    letter-spacing: 0;
}

#subbox .detail_box table {
    width: 100% !important;
    max-width: 1000px !important;
    margin: 20px auto !important;
    border-collapse: collapse;
}

#subbox .detail_box table th {
    background: linear-gradient(to bottom, #003a7a 0%, #002454 100%) !important;
    color: #d4b46a !important; /* Gold */
    border: 1px solid #d4b46a !important;
    padding: 12px 10px;
    text-align: center;
    font-weight: normal;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
}

#subbox .detail_box table td {
    border: 1px solid #ccc !important;
    padding: 10px;
    text-align: center;
    background-color: #fff !important;
    color: #333 !important;
    font-size: 15px;
    vertical-align: middle;
}

#subbox .detail_box table tr:nth-child(even) td {
    background-color: #f9f9f9 !important;
}

#subbox .detail_box .update {
    text-align: right;
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
}

/* モバイル表示調整（成績発表用） */
@media screen and (max-width: 768px) {
    #subbox .detail_box h3 {
        font-size: 22px;
        flex-direction: column;
        display: flex;
    }
    #subbox .detail_box h3 .yymmdd {
        margin-left: 0;
        margin-top: 5px;
    }
    #subbox .detail_box table {
        display: block !important;
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* メンバーニュース 個別・画像あり（mnXXXXXX.php）用スタイル追加 */
#subbox .detail_box .img_follow {
    text-align: center;
    margin: 30px auto;
    max-width: 100%;
}

#subbox .detail_box .img_follow img {
    max-width: 100%;
    height: auto;
    border: 8px solid #fff;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    box-sizing: border-box;
}

/* 追加：txt_area 内の個別スタイル */
#subbox .detail_box .txt_area {
    line-height: 1.8;
    color: #333;
}

#subbox .detail_box .txt_area strong {
    display: block;
    font-family: "Crimson Text", "Noto Serif JP", "游明朝", "Yu Mincho", serif;
    font-size: 20px;
    color: #b4a25f; /* Gold */
    margin: 40px auto 15px;
    font-weight: 600;
}

#subbox .detail_box .txt_area img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 30px auto;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

@media screen and (max-width: 768px) {
    #subbox .detail_box .img_follow {
        margin: 20px auto;
    }
    #subbox .detail_box .img_follow img {
        border-width: 4px;
    }
    
    #subbox .detail_box .txt_area strong {
        font-size: 18px;
        margin: 30px auto 10px;
    }
}

/* ニュース個別ページ（n140212.php, n140408.php, n150205.php 等）追加スタイル */
#subbox .detail_box .photo_n140212 {
    text-align: center;
    margin: 30px auto;
    font-size: 15px;
    color: #666;
}

#subbox .detail_box .img_n140212 {
    display: block;
    margin: 15px auto 0;
    max-width: 100%;
    height: auto;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

#subbox .detail_box .qul_memberTxt,
#subbox .detail_box .n150205 {
    line-height: 1.8;
    margin-bottom: 30px;
    color: #333;
}

#subbox .detail_box table td.tab_name {
    background-color: #002454 !important; /* Blue */
    color: #d4b46a !important; /* Gold */
    font-weight: bold;
    text-align: center;
    padding: 10px;
}

/* レディースWEEK 用スタイル */
#subbox .detail_box .ladies_box {
    padding: 20px;
    margin: 20px auto;
    max-width: 900px;
}

#subbox .detail_box .ladies_ol {
    background: rgba(255, 255, 255, 0.1);
    padding: 30px;
    border-radius: 8px;
    overflow: hidden;
}

#subbox .detail_box .ladies_box table {
    width: 100% !important;
    margin-bottom: 20px !important;
}

#subbox .detail_box .ladies_box table th,
#subbox .detail_box .ladies_box table td {
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    color: #fff !important;
}

#subbox .detail_box .ladies_box p {
    color: #fff !important;
}

/* スポーツマッサージ 用スタイル */
#subbox .detail_box .massage_box {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    margin: 30px auto;
    gap: 20px;
}

#subbox .detail_box .massage_menu {
    flex: 1;
    min-width: 300px;
}

#subbox .detail_box .massage_menu table {
    width: 100% !important;
}

#subbox .detail_box .massage_menu table th {
    background: #002454 !important;
    color: #d4b46a !important;
}

@media screen and (max-width: 768px) {
    #subbox .detail_box .massage_box {
        flex-direction: column;
    }
}