.policy_common {
    scroll-behavior: auto;
}
.policy_common .page_title {
    letter-spacing: -0.28rem;
    padding-bottom: 2.1rem;
    line-height: 1.32;
}
.policy_common .page_title_box.n0 {
    padding-bottom: 6.2rem;
}
.policy_common .page_title_box.n1,
.policy_common .page_title_box.n2 {
    padding-bottom: 8.9rem;
}
.policy_common .page_sub_desc01 {
    font-size: 2rem;
    font-weight: normal;
    line-height: 1.35;
    letter-spacing: -0.15rem;
    color: rgba(0, 0, 0, 0.7);
    margin-bottom: 2.1rem;
}
.policy_common .page_sub_desc02 {
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.71;
    letter-spacing: -0.15rem;
    text-align: center;
    color: rgba(0, 0, 0, 0.7);
}
.policy_common .tab .tab_effect {
    width: calc(100% / 3 - 1rem);
}
.policy_common .tab .tab_ul .tab_li {
    color: rgba(0, 0, 0, 0.5);
}
.policy_common .tab .tab_ul .tab_li.on {
    color: #fff;
}
.policy_common .section02{
    margin: 0 auto;
    width: 105rem;
}
.policy_common .section02 {
    margin-bottom: 15rem;
}
.policy_common .tab_content_li .policy_cont_txt {
    margin-top: 10rem;
}
.policy_common .policy_cont_box {
    width: 100%;
    border: 0.1rem solid #ddd;
    border-radius: 2rem;
}
.policy_common .tab_content_li .policy_cont_box {
    padding: 3.5rem 9.4rem 4.4rem 9.4rem;
}
.policy_common .policy02 .policy_cont_box {
    padding: 3.5rem 3.2rem 4.4rem 3.2rem;
}
.policy_common .policy_date {
    text-align: right;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1;
    letter-spacing: -0.13rem;
    color: rgba(0, 0, 0, 0.7);
    margin-top: 1.6rem;
}
.policy_common .policy_cont_tit {
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1.59;
    letter-spacing: -0.15rem;
    text-align: center;
}
.policy_common .policy_cont_desc ul {
    display: grid;
    grid-auto-flow: column;
    margin-top: 2.9rem;
}
.policy_common .policy01 .policy_cont_desc ul {
    grid-template-rows: repeat(4, 1fr);
    row-gap: 1.2rem;
}
.policy_common .policy02 .policy_cont_desc ul {
    grid-template-rows: repeat(7, 1fr);
    row-gap: 1.2rem;
}
.policy_common .policy03 .policy_cont_desc ul   {
    grid-template-rows: repeat(4, 1fr);
}
.policy_common .policy01 .policy_cont_desc ul li:nth-child(n+5),
.policy_common .policy03 .policy_cont_desc ul li:nth-child(n+5) {
    margin-left: 5rem;
}
.policy_common .policy02 .policy_cont_desc ul li:nth-child(n+8) {
    margin-left: 4rem;
}
.policy_common .policy_cont_desc li dl {
    display: flex;
}
.policy_common .policy_cont_desc li dt,
.policy_common .policy_cont_desc li dd {
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: -0.15rem;
    color: rgba(0, 0, 0, 0.7);
    cursor: pointer;
}
.policy_common .policy_cont_desc li dt {
    margin-right: 1rem;
    width: 3.85rem;
}
.policy_common .policy03 .policy_cont_desc li dt {
    width: 2rem;
}
.policy_common .policy_cont_desc li dd {
    font-weight: 500;
    color: #1954db;
}
.policy_common .policy_cont_txt dl {
    margin-bottom: 2.7rem;
}
.policy_common .policy03 .policy_cont_txt dl {
    margin-bottom: 4rem;
}
.policy_common .policy_cont_txt dl:last-of-type {
    margin-bottom: 0;
}
.policy_common .policy_cont_txt dl dt {
    font-size: 1.7rem;
    font-weight: bold;
}
.policy_common .policy_cont_txt dl dd {
    font-size: 1.5rem;
    font-weight: normal;
    line-height: 1.8;
    letter-spacing: -0.13rem;
    text-align: left;
    padding-left: 1.6rem;
    text-indent: -1.6rem
}
.policy_common .policy_cont_txt dl dd a.per_pol {
    font-size: 1.5rem;
    font-weight: normal;
    line-height: 1.8;
    letter-spacing: -0.13rem;
    text-align: left;
}
.policy_common .policy_cont_txt dl dt.policy_m_b {
    margin-bottom: 3rem;
}
.policy_common .policy_sub_tit,
.policy_common .policy_cont_txt dl dd.policy_sub_tit {
    font-weight: bold;
}
.policy_common .policy_cont_txt .no_indent,
.policy_common .policy_cont_txt dl dd.no_indent {
    padding-left: 0;
    text-indent: 0;
}
.policy_common .policy_cont_txt .dash_indent,
.policy_common .policy_cont_txt dl dd.dash_indent {
    padding-left: 0.6rem;
    text-indent: -0.6rem;
}
.policy_common .policy_cont_txt dl dd.table_dd {
    padding: 1rem;
    margin-top: 1rem;
}
.policy_common .policy_cont_txt dl dd.table_dd.n2 {
    margin-top: 2rem;
}
.policy_common .policy_cont_txt dl.pol_tit dd, .policy_ver {
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    letter-spacing: -0.15rem;
    color: #1954db;
    text-decoration: underline;
}
.policy_common .service-policy-tab{
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.4rem;
    text-align: center;
}
.policy_common .service-policy-tab li{
	height: 5rem;
    border: 1px solid #dddddd;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
	transition:all 0.15s;
	cursor:pointer;
}
.policy_common .service-policy-tab li.on{
	color:#227AFF;
	border-color:#227AFF;
	transition:all 0.15s;
}

.policy_common .policy_cont_txt dl span.txt-red{
	color: #ef3c29;
}

/* table */
.policy_common .table_dd {
    border: 1px solid #ebebeb;
    border-radius: 1rem;
    background: #fff;
}
.personal_data_table {
    width: 100%;
}
.personal_data_table thead tr {
    height: 3.8rem;
    background: #f4f6f8;
    border-radius: 1rem;
}
/* .personal_data_table thead tr.empty {
    height: 1rem;
} */
.personal_data_table thead th {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: -0.08rem;
    text-align: center;
    color: #000;
}
.personal_data_table thead th:first-of-type {
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem;
}
.personal_data_table thead th:last-of-type {
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
}
/* .personal_data_table tbody {
    display: block;
    margin-top: 1rem;
} */
.personal_data_table tbody::before {
    content: '';
    display: block;
    height: 1rem;
    width: 100%;
}
.personal_data_table tbody tr {
    height: 5rem;
}
.personal_data_table tbody td {
    padding: 1.2rem 0;
    text-align: center;
    font-size: 1.5rem;
    font-weight: normal;
    line-height: 1.73;
    letter-spacing: -0.08rem;
    color: rgba(0, 0, 0, 0.7);
    position: relative;
    border-bottom: 1px solid #ebebeb;
    word-break: break-all;
}
.personal_data_table tbody td::after {
    content: "";
    width: 0.1rem;
    height: 100%;
    background: #e7e7e7;
    position: absolute;
    right: 0;
    top: 0;
}
.personal_data_table tbody tr:last-of-type td {
    border-bottom: unset;
}
.personal_data_table tbody td:last-of-type:after {
    all: unset;
}
/* table end */
@media screen and (max-width: 1280px) {
    .policy_common .policy03 .policy_cont_desc li dt {
        width: 1rem;
    }
}
@media screen and (max-width: 990px) {
    .policy_common .section02 {
        width: 100%;
    }
    .policy_common .tab_content_li .policy_cont_box {
        padding: 3rem 2rem 3.5rem 2rem;
    }
    .policy_common .policy01 .policy_cont_desc ul {
        grid-template-rows: repeat(6, 1fr);
    }
    .policy_common .policy01 .policy_cont_desc ul li:nth-child(n+5):nth-child(-n+6) {
        margin-left: 0;
    }
    .policy_common .policy03 .policy_cont_desc ul li:nth-child(n+5) {
        margin-left: 2.2rem;
    }
}
@media screen and (max-width: 768px) {
    .policy_common .policy01 .policy_cont_desc ul {
        grid-template-rows: repeat(8, 1fr);
    }
    .policy_common .policy02 .policy_cont_desc ul {
        grid-template-rows: repeat(9, 1fr);
    }
    .policy_common .policy03 .policy_cont_box {
        padding-bottom: 2rem;
    }
    .policy_common .policy03 .policy_cont_desc ul {
        grid-template-rows: repeat(6, 1fr);
    }
    .policy_common .policy01 .policy_cont_desc ul li:nth-child(n+5),
    .policy_common .policy02 .policy_cont_desc ul li:nth-child(n+8),
    .policy_common .policy03 .policy_cont_desc ul li:nth-child(n+5) {
        margin-left: 0;
    }
    .policy_common .policy01 .policy_cont_desc ul li:nth-child(n+9),
    .policy_common .policy03 .policy_cont_desc ul li:nth-child(n+7) {
        margin-left: 10rem;
    }
    .policy_common .policy02 .policy_cont_desc ul li:nth-child(n+10) {
        margin-left: 4rem;
    }
	.policy_common .service-policy-tab{
		grid-template-columns: repeat(3, 1fr);
		gap: 1rem;
	}
}
@media screen and (max-width: 650px) {
    .policy_common .policy02 .policy_cont_desc ul li:nth-child(n+10) {
        margin-left: 3rem;
    }
}
@media screen and (max-width: 500px) {
    .policy_common .tab .tab_ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 0.5rem;
    }
    .policy_common .tab .tab_ul .tab_li {
        width: 100%;
    }
    .policy_common .page_title_box.n1,
    .policy_common .page_title_box.n2 {
        padding-bottom: 1rem;
    }
    .policy_common .page_sub_desc01 {
        font-size: 1.6rem;
    }
    .policy_common .policy_cont_txt dl dt {
        font-size: 1.5rem;
    }
    .policy_common .policy_cont_txt dl dd {
        font-size: 1.4rem;
        padding-left: 1.4rem;
        text-indent: -1.4rem;
    }
    .policy_common .policy_cont_desc li dt {
        margin-right: 0.8rem;
        width: 2.7rem;
    }
    .policy_common .policy_cont_desc li dt,
    .policy_common .policy_cont_desc li dd {
        font-size: 1.2rem;
        line-height: 1.33;
    }
    .personal_data_table tbody td {
        font-size: 1.3rem;
    }
    .personal_data_table thead th {
        font-size: 1.3rem;
    }

    .policy_common .policy02 .policy_cont_desc ul {
        grid-template-rows: repeat(14, 1fr);
    }
    .policy_common .policy02 .policy_cont_desc ul li:nth-child(n+10) {
        margin-left: 0;
    }
    .policy_common .policy01 .policy_cont_desc ul li:nth-child(n+9),
    .policy_common .policy02 .policy_cont_desc ul li:nth-child(n+15),
    .policy_common .policy03 .policy_cont_desc ul li:nth-child(n+7) {
        margin-left: 3rem;
    }

	.policy_common .service-policy-tab{
		grid-template-columns: repeat(2, 1fr);
		gap: 0.5rem;
	}
	.policy_common .service-policy-tab li{
		height: 3rem;
		border-radius: 0.8rem;
		font-size:1.2rem
	}
}