@charset "UTF-8";
/******************************************************************************
Default CSS Reset
******************************************************************************/
*, *:before, *:after {
box-sizing: border-box;
}

html {
height: 100%;
font-size: 16px;
}

html, body {
position: relative;
box-sizing: border-box;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, figure {
margin: 0;
padding: 0;
}

body {
overflow-x: hidden;
}

table {
border-collapse: collapse;
table-layout: fixed;
}

fieldset, img {
border: 0;
}

address, caption, cite, code, dfn, th, var {
font-style: normal;
font-weight: normal;
}

em, i {
font-style: normal;
}

ol, ul {
list-style: none;
}

caption {
text-align: left;
}

h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: 400;
}

img {
vertical-align: bottom;
/* chormeで画像のぼやけ回避 */
-webkit-backface-visibility: hidden;
}

/* iOSでのデフォルトスタイルをリセット */
input, button, select, textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background: transparent;
border: none;
border-radius: 0;
font: inherit;
outline: none;
}

textarea {
resize: vertical;
}

input[type=checkbox], input[type=radio] {
display: none;
}

input[type=submit], input[type=button], label, button, select {
cursor: pointer;
}

select::-ms-expand {
display: none;
}

picture {
display: block;
}

/******************************************************************************
General Setting
******************************************************************************/
body {
margin: 0 auto;
padding: 0;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color: #191919;
word-wrap: break-word;
-webkit-font-smoothing: antialiased;
width: 100%;
font-size: 15px;
letter-spacing: 0;
line-height: 1.5;
font-weight: 400;
background-color: #fff;
counter-reset: section;
counter-reset: h2-counter;
}

a {
margin: 0;
padding: 0;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color: #191919;
outline: none;
text-decoration: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:focus, *:focus {
outline: none;
}

@media screen and (max-width: 768px) {
body {
font-size: 14px;
}
}

/******************************************************************************
content
******************************************************************************/

.contents {
margin: 0 auto;
max-width: 1000px;
width: calc(100% - 40px);
padding: 60px 0;
}
.contents .mb10 {
margin-bottom: 10px;
}
.contents .mb20 {
margin-bottom: 20px;
}
.contents .mb30 {
margin-bottom: 30px;
}
.contents h2 {
font-size: 16px;
font-weight: bold;
border-bottom: 1px solid #191919;
margin-bottom: 8px;
line-height: 1.4;
padding-bottom: 6px;
}
h2.numbered-heading {
display: flex;
align-items: flex-start;
gap: 0.2em; /* 番号とテキストの間隔 */
line-height: 1.6;
flex-wrap: wrap; /* 長文対応 */
word-break: break-word;
counter-increment: h2-counter;
}
h2.numbered-heading .number {
flex: 0 0 1em;      /* 番号用の固定幅 */
font-weight: bold;
}
h2.numbered-heading .text {
flex: 1;
}
h2.numbered-heading .number::before {
content: counter(h2-counter) ". ";
}
.num_list li {
counter-increment: number;
position: relative;
padding-left: 1.5em;
}
.num_list li::before {
content: counter(number) ") ";
position: absolute;
left: 0;
}
.contents a,
.bance_link button {
color: #1c7fd7;
text-decoration: underline;
}
.bance_link button {
  padding: 0 0 0 12px;
}

@media screen and (min-width: 769px) {
.contents a:hover,
.bance_link button:hover {
text-decoration: none;
}
}
footer {
padding: 30px 10px;
background-color: #191919;
text-align: center;
}
footer .copyright {
font-size: 12px;
vertical-align: middle;
color: #fff;
}
@media screen and (max-width: 768px) {
.contents h2 {
font-size: 18px;
}
}