@charset "UTF-8";


/* privacy------------------------------------------- */

#privacy {
	padding: 0;
	margin: 0;
}

#privacy section {
	padding: 0;
	margin: 0 0 30px;
}

/*#privacy ol {
	padding: 0;
	margin: 0;
}

#privacy ol li {
	padding: 0 0 15px;
	margin: 0 0 15px;
    border-bottom: dotted 1px #CCC;
}

#privacy ol li strong {
    color: #519FD6;
    font-weight: 600;
	padding: 0;
	margin: 0;
    display: block;
}*/
	
/*---------------------------------
 共通
---------------------------------*/

.privacy-section{
    line-height:160%;
    color:#333;
    overflow:hidden;
	padding: 0 .5rem;
}

.privacy-section h2{
    font-size:20px;
    margin:0 0 10px;
    padding-bottom:10px;
    border-bottom:2px solid #519FD6;
    color:#519FD6;
}

.privacy-section p{
    margin:0 0 16px;
}

.privacy-section table{
    width:100%;
    border-collapse:collapse;
    margin:15px 0 20px;
    table-layout:fixed;
}

.privacy-section th,
.privacy-section td{
    border:1px solid #ccc;
    padding:12px 15px;
    vertical-align:top;
    word-break:break-word;
}

.privacy-section th{
    background:#f5f5f5;
    text-align:left;
    width:50%;
}


/*---------------------------------
 リスト共通
---------------------------------*/

.privacy-section ol,
.privacy-section ul{
    margin:0;
    padding:0;
    list-style:none;
}

.privacy-section li{
    margin-bottom:12px;
}

.privacy-section li > div{
    min-width:0;
    overflow-wrap:anywhere;
    word-break:normal;
}
	.privacy-section li strong{
		font-weight: bold;
		
	}

/*---------------------------------
 自動番号リスト共通
---------------------------------*/

.lv1 > li,
.lv2 > li,
.lv_a > li,
.lv3 > li{
    display:grid;
   grid-template-columns:1.5em minmax(0, 1fr);
    column-gap:.2em;
    align-items:start;
}

.lv1 > li::before,
.lv2 > li::before,
.lv_a > li::before,
.lv3 > li::before{
    color:#519FD6;
    font-weight:bold;
    white-space:nowrap;
    text-align:left;
}


/*---------------------------------
 第1階層 1.
---------------------------------*/

.lv1{
    counter-reset:lv1;
}

.lv1 > li{
    counter-increment:lv1;
    margin:30px 0;
    padding-bottom:10px;
    border-bottom:1px solid #ddd;
    font-size:18px;
    font-weight:bold;
}

.lv1 > li::before{
    content:counter(lv1) ".";
}


/*---------------------------------
 第2階層 （1）
---------------------------------*/

.lv2{
     margin-top:16px!important;
    margin-left:0;
    counter-reset:lv2;
}

.lv2 > li{
    counter-increment:lv2;
    font-size:16px;
    font-weight:normal;
    border-bottom:none;
    padding-bottom:0;
    margin:0 0 12px;
	grid-template-columns:2em minmax(0, 1fr);
    column-gap:.15em;
}

.lv2 > li::before{
    content:"（" counter(lv2) "）";
}


/*---------------------------------
 a）
---------------------------------*/

.lv_a{
     margin-top:20px!important;
    margin-left:0;
    counter-reset:alpha;
}

.lv_a > li{
    counter-increment:alpha;
    font-size:16px;
    font-weight:normal;
    border-bottom:none;
    padding-bottom:0;
    margin:0 0 12px;
}

.lv_a > li::before{
    content:counter(alpha, lower-alpha) "）";
}


/*---------------------------------
 1）
---------------------------------*/

.lv3{
    margin-top:14px!important;
    margin-left:0;
    counter-reset:num;
}

.lv3 > li{
    counter-increment:num;
    font-size:16px;
    font-weight:normal;
    border-bottom:none;
    padding-bottom:0;
    margin:0 0 12px;
	 grid-template-columns:1.5em minmax(0, 1fr);
    column-gap:.2em;
}

.lv3 > li::before{
    content:counter(num) "）";
}


/*---------------------------------
 ①②③
 HTML側に <span>①</span><div>本文</div>
---------------------------------*/

.lv4{
   margin-top:12px!important;
    margin-left:0;
    counter-reset:circle;
}

.lv4 > li{
    font-size:16px;
    font-weight:normal;
    border-bottom:none;
    padding-bottom:0;
    margin:0 0 12px;
}

.lv4.circle > li{
   display:grid;
   grid-template-columns:1.25em minmax(0, 1fr);
    column-gap:.15em;
    align-items:start;
}

.lv4.circle > li::before{
    content:none;
}

.lv4.circle > li > span{
    color:#519FD6;
    font-weight:bold;
    white-space:nowrap;
    text-align:right;
}

.lv4.circle > li > div{
    min-width:0;
    overflow-wrap:anywhere;
    word-break:normal;
}


/*---------------------------------
 スマホ調整
---------------------------------*/

@media screen and (max-width:640px){
   /* .lv1 > li,
    .lv2 > li,
    .lv_a > li,
    .lv3 > li,
    .lv4.circle > li{
        grid-template-columns:2.8em minmax(0, 1fr);
    }*/

    .privacy-section li{
        font-size:14px;
    }
    .privacy-section table{
        font-size:14px;
    }

    .privacy-section th,
    .privacy-section td{
        padding:10px;
    }
}
	
