@charset "utf-8";

/*============================
#mainPanelArea
============================*/
#mainPanelArea {}
#mainPanelArea .category {}
#mainPanelArea .category span {}
#mainPanelArea h1.middleTitle {}

/*============================
#leadArea
============================*/
#leadArea {}

/*============================
#lawsArea
============================*/
#lawsArea.lawsArea { margin-top: 60px; }
#lawsArea.lawsArea .md_container {}
#lawsArea.lawsArea .note { display: flex; align-items: center; justify-content: center; gap: 30px; padding: 0 60px 80px; }
#lawsArea.lawsArea .note .text { font-weight: 500; }
#lawsArea.lawsArea .note .text a { font-weight: 600; }
#lawsArea.lawsArea .note .text a:hover { text-decoration: underline; }
#lawsArea.lawsArea .note .image { overflow: hidden; flex-shrink: 0; width: 200px; height: auto; border: 1px solid #ccc; }
#lawsArea.lawsArea .note .image a {}
#lawsArea.lawsArea .note .image a img { width: 100%; height: auto; transition: 0.3s all; }
#lawsArea.lawsArea .note .image a img:hover { transform: scale(1.05); }
#lawsArea.lawsArea .note.bottom { border-top: 1px solid #e2e8f0; padding: 60px 60px 0; }

/*============================
#laws0
============================*/
#laws0.laws0 { padding: 60px 100px 80px; background-color: #f8fafc; }
#laws0.laws0 .titleArea {}
#laws0.laws0 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws0.laws0 .titleArea .main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws0.laws0 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws0.laws0 ul.disc { display: flex; flex-direction: column; gap: 20px; margin-top: 40px; }
#laws0.laws0 ul.disc li { position: relative; padding-left: 25px; font-size: 1em; }
#laws0.laws0 ul.disc li::before { content: ''; position: absolute; left: 0; top: 8px; width: 10px; height: 10px; border-radius: 50%; background-color: #457b9d; }
#laws0.laws0 ul.disc li span { margin-right: 10px; font-weight: 700; color: #1d3557; display: block; font-size: 1.1em; margin-bottom: 4px; }
#laws0.laws0 .copy { margin-top: 40px; font-weight: 600; font-size: 0.9em; letter-spacing: 0.05em; }
#laws0.laws0 .image { margin-top: 15px; width: 100%; max-width: 800px; height: auto; overflow: hidden; background-color: #fff; padding: 10px; border: 1px solid #e2e8f0; }
#laws0.laws0 .image img { width: 100%; height: auto; display: block; }

/*============================
#laws1
============================*/
#laws1.laws1 { position: relative; padding: 60px 100px 80px; counter-reset: li-counter; }
#laws1.laws1::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws1.laws1 .titleArea {}
#laws1.laws1 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws1.laws1 .titleArea .main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws1.laws1 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws1.laws1 ol { display: flex; flex-direction: column; gap: 15px; margin-top: 40px; }
#laws1.laws1 ol li { list-style: none; margin-left: 0; position: relative; padding-left: 45px; font-size: 1em; line-height: 1.7; counter-increment: li-counter; }
#laws1.laws1 ol li::before { content: counter(li-counter); position: absolute; left: 0; top: 2px; width: 26px; height: 26px; background-color: #1d3557; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.85em; font-weight: 700; }
#laws1.laws1 ol li span { margin-right: 10px; font-weight: 700; color: #1d3557; }

/*============================
#laws2
============================*/
#laws2.laws2 { position: relative; padding: 60px 100px 80px; }
#laws2.laws2::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws2.laws2 .titleArea {}
#laws2.laws2 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws2.laws2 .titleArea .main::before  { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws2.laws2 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws2.laws2 .miniTitle { margin-top: 40px; font-weight: 700; font-size: 1.25em; color: #1d3557; border-bottom: 2px solid #457b9d; padding-bottom: 6px; }
#laws2.laws2 ul.point { display: flex; flex-direction: column; gap: 12px; margin-top: 20px; background-color: #f8fafc; padding: 20px; }
#laws2.laws2 ul.point li { position: relative; padding-left: 20px; line-height: 1.6; }
#laws2.laws2 ul.point li::before { content: ''; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background-color: #e63946; }
#laws2.laws2 ul.point li span { display: inline; margin-right: 10px; font-weight: 700; color: #1d3557; }
#laws2.laws2 .copy { margin-top: 15px; line-height: 1.7; }
#laws2.laws2 .copy span { display: block; font-weight: 700; color: #1d3557; }
#laws2.laws2 ul li em { font-weight: 700; color: #e63946; font-style: normal; background: linear-gradient(transparent 60%, #ffe3e3 60%); }
#laws2.laws2 ul.disc { margin-top: 15px; display: flex; flex-direction: column; gap: 15px; }
#laws2.laws2 ul.disc li { position: relative; padding-left: 25px; line-height: 1.6; }
#laws2.laws2 ul.disc li::before { content: ''; position: absolute; left: 0; top: 6px; width: 14px; height: 14px; background-color: #457b9d; }
#laws2.laws2 ul.disc li span { margin-right: 10px; font-weight: 700; color: #1d3557; display: block; margin-bottom: 4px; }
#laws2.laws2 .copy ul {}
#laws2.laws2 .copy ul li {}
#laws2.laws2 .copy ul li span {}

/*============================
#laws3
============================*/
#laws3.laws3 { position: relative; padding: 60px 100px 80px; }
#laws3.laws3::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws3.laws3 .titleArea {}
#laws3.laws3 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws3.laws3 .titleArea .main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws3.laws3 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws3.laws3 .miniTitle { margin-top: 40px; font-weight: 700; font-size: 1.25em; color: #1d3557; border-bottom: 2px solid #457b9d; padding-bottom: 6px; }
#laws3.laws3 .copy { margin-top: 15px; line-height: 1.7; }
#laws3.laws3 ul.point { display: flex; flex-direction: column; gap: 12px; margin-top: 20px; background-color: #f8fafc; padding: 20px; }
#laws3.laws3 ul.point li { position: relative; padding-left: 20px; line-height: 1.6; }
#laws3.laws3 ul.point li::before { content: ''; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background-color: #e63946; }
#laws3.laws3 ul li span { margin-right: 10px; font-weight: 700; color: #1d3557; }

/*============================
#laws4
============================*/
#laws4.laws4 { position: relative; padding: 60px 100px 80px; }
#laws4.laws4::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws4.laws4 .titleArea {}
#laws4.laws4 .titleArea h2.main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws4.laws4 .titleArea h2.main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws4.laws4 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws4.laws4 .miniTitle { margin-top: 40px; font-weight: 700; font-size: 1.25em; color: #1d3557; border-bottom: 2px solid #457b9d; padding-bottom: 6px; }
#laws4.laws4 ul.point { display: flex; flex-direction: column; gap: 12px; margin-top: 20px; background-color: #f8fafc; padding: 20px; }
#laws4.laws4 ul.point li { position: relative; padding-left: 20px; line-height: 1.6; }
#laws4.laws4 ul.point li::before { content: ''; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background-color: #e63946; }
#laws4.laws4 ul.point li span { margin-right: 10px; font-weight: 700; color: #1d3557; }
#laws4.laws4 ul.point li em { font-weight: 700; color: #e63946; font-style: normal; background: linear-gradient(transparent 60%, #ffe3e3 60%); }

/*============================
#laws5
============================*/
#laws5.laws5 { position: relative; padding: 60px 100px 80px; }
#laws5.laws5::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws5.laws5 .titleArea {}
#laws5.laws5 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws5.laws5 .titleArea .main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws5.laws5 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws5.laws5 .tableArea { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin-top: 40px; }
#laws5.laws5 .tableArea table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 15px; border: 1px solid #cbd5e1; overflow: hidden; }
#laws5.laws5 .tableArea th, #laws5.laws5 .tableArea td { border-right: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; padding: 16px 18px; text-align: left; line-height: 1.5; vertical-align: middle; }
#laws5.laws5 .tableArea th:last-child, #laws5.laws5 .tableArea td:last-child { border-right: none; }
#laws5.laws5 .tableArea table tbody tr:last-child td { border-bottom: none; }
#laws5.laws5 .tableArea th { background-color: #1d3557; color: #fff; font-weight: 700; letter-spacing: 0.05em; }
#laws5.laws5 .tableArea table tbody tr:nth-child(even) { background-color: #f8fafc; }
#laws5.laws5 .tableArea table tbody tr:hover { background-color: #f1f5f9; transition: background-color 0.2s ease; }
#laws5.laws5 .tableArea table tbody tr td:first-child { font-weight: 700; color: #334155; background-color: #f1f5f9; width: 18%; text-align: center; }

/*============================
#laws6
============================*/
#laws6.laws6 { position: relative; padding: 60px 100px 80px; }
#laws6.laws6::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws6.laws6 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws6.laws6 .titleArea .main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws6.laws6 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws6.laws6 .miniTitle { margin-top: 40px; font-weight: 700; font-size: 1.25em; color: #1d3557; border-bottom: 2px solid #457b9d; padding-bottom: 6px; }
#laws6.laws6 .copy { margin-top: 15px; line-height: 1.7; }
#laws6.laws6 ul.point { display: flex; flex-direction: column; gap: 12px; margin-top: 20px; background-color: #f8fafc; padding: 20px; }
#laws6.laws6 ul.point li { position: relative; padding-left: 20px; line-height: 1.6; }
#laws6.laws6 ul.point li::before { content: ''; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background-color: #e63946; }
#laws6.laws6 ul.point li span { margin-right: 10px; font-weight: 700; color: #1d3557; }

/*============================
#laws7
============================*/
#laws7.laws7 { position: relative; padding: 60px 100px 80px; }
#laws7.laws7::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid #e2e8f0; width: 100%; }
#laws7.laws7 .titleArea {}
#laws7.laws7 .titleArea .main { position: relative; padding-left: 20px; font-size: 1.75em; font-weight: 700; color: #1d3557; line-height: 1.3; }
#laws7.laws7 .titleArea .main::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #1d3557; }
#laws7.laws7 .titleArea .subCopy { margin-top: 20px; font-size: 1.05em; font-weight: 500; line-height: 1.6; }
#laws7.laws7 .copy { margin-top: 20px; line-height: 1.8; font-size: 1.05em; }