@media screen and (max-width: 768px) {
.menupanel {
	pointer-events: none;
}
.menupanel.open {
	pointer-events: auto;
}
}

.childSec h2 {
    font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
    .childSec h2 {
		font-size: 5vw;
	}
}

/* アクセシビリティ検証結果 テーブルスタイル */
.accessibility_table_wrap {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 40px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.accessibility_table {
    width: 100%;
    min-width: 760px; /* スマホで横スクロールさせる最低幅 */
    border-collapse: collapse;
    font-size: 1.6rem; /* PC本文と同じサイズ */
    line-height: 1.6;
    background-color: #fff;
}

.accessibility_table th,
.accessibility_table td {
    border: 1px solid #ccc;
    padding: 12px 14px;
    vertical-align: middle;
}

/* ヘッダー行の指定（背景色 #333333 / 文字色 #ffffff / 枠線 #ffffff） */
.accessibility_table th {
    background-color: #333333;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    border: 1px solid #ffffff;
}

/* データセルの文字色（黒） */
.accessibility_table td {
    color: #000000;
}

/* セル内のテキスト中央揃え */
.accessibility_table td.tac {
    text-align: center;
}

/* 列幅の調整 */
.accessibility_table .col_num   { width: 10%; }
.accessibility_table .col_name  { width: 40%; }
.accessibility_table .col_rank  { width: 8%; }
.accessibility_table .col_apply { width: 8%; }
.accessibility_table .col_fit   { width: 8%; }
.accessibility_table .col_note  { width: 26%; }

@media screen and (max-width: 768px) {
    .accessibility_table {
        font-size: 3.73333vw; /* SP本文と全く同じサイズ */
    }
    .accessibility_table th,
    .accessibility_table td {
        padding: 10px 8px;
    }
}

/* ==========================================
   GDPR Privacy Policy 独自スタイル
   ========================================== */
/* 定義リスト・項目インデント指定 */
.gdpr_detail_list {
    margin-top: 1rem;
    margin-bottom: 2rem;
}
.gdpr_detail_list p {
    font-size: 1.6rem;
    line-height: 1.8;
    color: #000;
    margin-bottom: 0.8rem;
}
@media screen and (max-width: 768px) {
    .gdpr_detail_list p {
        font-size: 3.73333vw;
        line-height: 1.7;
    }
}

.gdpr_detail_list .indent_item {
    padding-left: 2rem;
    text-indent: -2rem;
}
@media screen and (max-width: 768px) {
    .gdpr_detail_list .indent_item {
        padding-left: 1.5rem;
        text-indent: -1.5rem;
    }
}

.childSec ul.gdpr_rights_list {
    margin-left: 2rem;
    margin-bottom: 2rem;
    list-style-type: none; /* ← disc から none に変更して黒丸を消去 */
}
.childSec ul.gdpr_rights_list li {
    font-size: 1.6rem;
    line-height: 1.8;
    color: #000;
    margin-bottom: 0.5rem;
}
@media screen and (max-width: 768px) {
    .childSec ul.gdpr_rights_list {
        margin-left: 1.5rem;
    }
    .childSec ul.gdpr_rights_list li {
        font-size: 3.73333vw;
    }
}

/* GDPR用テーブルスタイル */
.gdpr_table_wrap {
    width: 100%;
    margin-top: 2rem;
    margin-bottom: 3rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.gdpr_table {
    width: 100%;
    min-width: 680px;
    border-collapse: collapse;
    font-size: 1.5rem;
    line-height: 1.6;
    background-color: #fff;
}

.gdpr_table th,
.gdpr_table td {
    border: 1px solid #ccc;
    padding: 12px 14px;
    vertical-align: top;
    color: #000;
}

.gdpr_table th {
    background-color: #512D5D;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
	border: 1px solid #ccc;
    border-right: 1px solid #ffffff;
}
/* 最後のヘッダーセルの右線は消す場合 */
.gdpr_table th:last-child {
    border-right: 1px solid #ccc;
}

.gdpr_table .col_data { width: 25%; }
.gdpr_table .col_how  { width: 20%; }
.gdpr_table .col_purp { width: 30%; }
.gdpr_table .col_legal{ width: 25%; }

@media screen and (max-width: 768px) {
    .gdpr_table {
        font-size: 3.5vw;
    }
    .gdpr_table th,
    .gdpr_table td {
        padding: 8px 10px;
    }
}
/* GDPR「5 Your Rights」直下のリード文の下余白のみを調整 */
.childSec p.lead + ul.gdpr_rights_list {
    margin-top: -2.5rem; /* 余白をお好みで調整（-1rem〜-1.8rem程度） */
}