@charset 'utf-8';
/* CSS Document */

body {
    font-size: 1.4rem;
}

.alLeft {
    text-align: left !important;
}

.alRight {
    text-align: right !important;
}

.alCent {
    text-align: center !important;
}

.clearfix:after {
    display: block;
    clear: both;

    content: '';
}

u {
    text-decoration: none;

    background-color: #fdf1f7;
}

.parKey {
    padding: 10px;

    border: 3px dotted #e95098;
}

h1 {
    margin-bottom: 20px;
}

h1:not(:nth-of-type(1)) {
    margin-top: 40px;
}

h2 {
    font-size: 2.8rem;
    font-weight: bold;

    margin-top: 35px;
    margin-bottom: 30px;
    padding-left: 12px;

    color: #e95098;
    border-left: solid 4px #e95098;
}

h2 a {
    border-bottom: 1px solid #e95098;
}

h2 a:hover {
    border-bottom: none;
}

h3 {
    font-size: 2.2rem;
    font-weight: bold;

    margin-top: 30px;
    margin-bottom: 20px;
	color: #e95098;
}

h3 a {
    border-bottom: 1px solid #333;
}

h3 a:hover {
    border-bottom: none;
}

h4 {
    font-size: 1.8rem;
    font-weight: bold;

    margin-top: 25px;
    margin-bottom: 20px;
}

h4 a {
    border-bottom: 1px solid #333;
}

h4 a:hover {
    border-bottom: none;
}

h5 a {
    border-bottom: 1px solid #333;
}

h5 a:hover {
    border-bottom: none;
}

.comment {
    font-weight: bold;

    color: #d60f0f;
}

.indent {
    padding-left: 1em;

    text-indent: -1em;
}


.Flbox p.note {
    font-size: 85%;
}

.note {
    font-size: 80%;
}

p.listCheck {
    font-size: 1.1rem;

    padding-left: 1em;

    text-indent: -1em;
}

.listCheck::before {
    font-size: 1rem;

    content: '※ ';

    color: #666;
}


ul.listCheck li {
    display: inline;
}

.box {
    box-sizing: content-box;
    margin-bottom: 1.6em;
    padding: 30px 40px;
}

.box .box-bg01 {
    background-color: #fef5fa;
}

.box .box-bg01 h3 {
    margin-top: margin-top:0;
}

.box.box-bg02 {
    background-color: #f4f4f7;
}

.box.box-bg02 h3:nth-of-type(1),
.box.box-bg02 h2:nth-of-type(1),
.box.box-bg02 h4:nth-of-type(1),
.box.box-bg02 p:nth-of-type(1) {
    margin-top: 0;

    text-align: center;
}

.box-bg03 {
    box-sizing: content-box;
    margin-top: 1.6rem;
    margin-bottom: 1.6em;
    padding: 30px 55px;

    border: 1px solid #dee2e6;
}

.box-bg03 h3 {
    text-align: center;
}

.box-bg03 h3:nth-of-type(1),
.box-bg03 h2:nth-of-type(1),
.box-bg03 h4:nth-of-type(1),
.box-bg03 p:nth-of-type(1) {
    margin-top: 0;
}

ol {
    margin: 20px 0 0 1.3em;
    padding: 0;
}

ol li {
    line-height: 1.8;

    margin-top: 7px;
    padding-left: 1em;

    list-style-type: decimal;
    /* text-indent: -1em; */
}

ol li ul li {
    list-style-type: none;
}

ul {
    margin-top: 20px;
}

ul li {
    margin-top: 6px;
}




ul.listCircle li {
    padding-left: 1em;

    text-indent: -1em;
}


.listCircle li a:hover {
    border-bottom: 1px solid #333;
}

.listCircle li::before {
    font-size: .8rem;

    content: '●　';
    vertical-align: 3px;
}


.listCircle li ul {
    margin: 0 0 0 1.3em;
    padding: 0;
}

.listCircle li ul li::before {
    font-size: .8rem;

    content: '○　';
    vertical-align: 3px;
}

.listCircle li ul li ul li::before {
    font-size: .8rem;

    content: '■　';
    vertical-align: 3px;
}


ul.listLink {
    padding-left: 2em;

    text-indent: -1em;
}


.listLink li::before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.4em;
    font-weight: bold;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    display: inline-block;

    padding-right: 3px;

    content: '\f105';
    vertical-align: -2px;

    color: #e95098;

    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}


.listLink li .fa,
.listLink li .fab,
.listLink li .fal,
.listLink li .far,
.listLink li .fas {
    display: inherit;
}


.listLink li a {
    border-bottom: 1px solid #e95098;
}

.listLink li a:hover {
    border-bottom: none;
}

.listLink li ul {
    margin: 0 0 0 1.3em;
    padding: 0;
}


di.defShort {
    margin-top: 20px;
}

dl.defShort {
    margin-top: 20px;
}

dl.defShort dt {
    margin-bottom: .2em;
    padding: .25em 0 !important;

    background-image: none !important;
}



dl.defShort dd {
    margin-bottom: 1em;
    margin-left: 15px;
    padding-top: 5px;
    padding-left: 7px !important;

    border-left: 1px dotted #666;
    background-image: none !important;
}

table {
    width: 100%;
    margin-top: 20px;
}

table th {
    border-collapse: collapse;

    border: 1px solid #dee2e6;
}

table td {
    border-collapse: collapse;

    border: 1px solid #dee2e6;
}

table td p:first-child {
    margin-top: 0;
}

table thead th {
    padding: 10px;

    color: #fff;
    background-color: #e95098 !important;
}

table tbody th {
    font-weight: normal;

    width: 30%;
    padding: 10px;

    vertical-align: middle;

    background-color: #f4f4f7 !important;
}

table tbody td {
    padding: 10px;
}

table tbody td strong {
    font-weight: normal;

    color: #e95098;
}

.table-01 {
    margin-bottom: 30px;

    border: none;
    border-top: 2px solid #e2e2e2;
    border-bottom: 2px solid #e2e2e2;
}

.table-01 tr {
    border-top: 1px solid #e2e2e2;
    border-bottom: 1px solid #e2e2e2;
}

.table-01 tr h3 {
    margin-top: 0;
}

.table-01 th {
    font-weight: bold;

    text-align: left;

    color: #e95098;
    border: inherit;
    background-color: inherit;
}

.table-01 td {
    vertical-align: top;

    border: inherit;
}


table.middle th,
table.middle td {
    text-align: center;
    vertical-align: middle;
}

.iconLink {
    background-image: url(../../images/icon_pdf.gif);
}

.fa-clone,
.fa-file-pdf,
.fa-file-word,
.fa-file-excel,
.fa-file-powerpoint {
    margin-right: 3px;

    white-space: nowrap;

    background-repeat: no-repeat;
    background-position: center right;
}

.fa-file-pdf {
    color: #d60f0f;
}

.business .fa-file-pdf {
    color: #333;
}

.fa-file-word {
    color: #2c589c;
}

.fa-file-excel {
    color: #206f44;
}

.fa-file-powerpoint {
    color: #d04525;
}

.fa-clone {
    color: #009fe9;
}

.business .fa-clone {
    color: #333;
}

.fa-random {
    color: #444;
}

dl.defQa {
    padding-top: 40px;
    padding-bottom: 40px;

    border-bottom: 1px solid #dee2e6;
}

dl.defQa dt {
    font-size: 1.6rem;
    font-weight: bold;

    position: relative;

    padding-left: 3.5em;

    color: #e95098;
}

dl.defQa dt::before {
    font-family: 'Century', '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-size: 4rem;
    font-weight: normal;
    line-height: 1em;

    position: absolute;
    left: 0;

    display: inline-block;

    padding-left: 1rem;

    content: 'Q';

    color: #e95098;
}

dl.defQa dd {
    font-size: 1.6rem;

    position: relative;

    margin-top: 20px;
    padding-left: 3.5em;
}


dl.defQa dd::before {
    font-family: 'Century', '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
    font-size: 4rem;
    line-height: 1em;

    position: absolute;
    left: 0;

    display: inline-block;

    padding-left: 1rem;

    content: 'A';
}

dl.defQa dl.defShort dt::before {
    content: none;
}

dl.defQa dl.defShort dd::before {
    content: none;
}

.horizontal {
    display: flex;

    margin-top: 20px;

    justify-content: space-around;
}

.horizontal_three {
    display: flex;

    margin-top: 20px;

    justify-content: space-between;
    flex-wrap: wrap;
}

.horizontal p {
    margin-top: 0;
}

#subNav {
    margin-top: -20px;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 30px;

    background-color: #f3f3f3;
}

#subNav ul {
    display: flex;

    width: 100%;
    margin-top: 0;
    margin-right: auto;
    padding-left: 1em;

    flex-wrap: wrap;
}

#subNav ul li {
    position: relative;

    margin-right: 30px;
    padding-right: 10px;
    /*  float: left; */
    padding-left: 4px;
}

#subNav ul li.active::before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.4em;
    font-weight: bold;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    display: inline-block;

    padding-right: 10px;

    content: '\f107';
    vertical-align: -2px;

    color: #d3d3d3;

    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}

#subNav ul li a::before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.4em;
    font-weight: bold;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    position: absolute;
    left: -1em;

    display: inline-block;

    padding-right: 8px;

    content: '\f105';
    vertical-align: -2px;

    color: #d3d3d3;

    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}

#subNav ul li a {
    color: #e95098;
}

#subNav ul li a:hover {
    text-decoration: underline;
}

#subanchorNav {
    margin-top: -20px;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 30px;

    background-color: #f3f3f3;
}

#subanchorNav ul {
    display: flex;

    margin-top: 0;
    margin-right: auto;
    padding-left: 1em;

    flex-wrap: wrap;
}

#subanchorNav ul li {
    position: relative;

    float: left;

    margin-right: 30px;
    padding-right: 10px;
    padding-left: 20px;
}

#subanchorNav ul li a::before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.4em;
    font-weight: bold;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    position: absolute;
    left: -1em;

    display: inline-block;

    padding-right: 8px;

    content: '\f107';
    vertical-align: -2px;

    color: #d3d3d3;

    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}

#subanchorNav ul li a:hover {
    text-decoration: underline;
}

.button_icon {
    display: inline-block;

    width: 100%;
    padding-top: .8em;
    padding-bottom: .5em;

    transition: .4s;
    text-align: center;
    text-decoration: none;

    color: #e95098;
    border: solid 2px #e4e4e4;
    border-radius: 3px;
}

.button_icon:hover {
    background: #e4e4e4;
}


.horizontal .button_icon {
    width: 300px;
}

.horizontal_three .button_icon {
    width: 220px;
}

a.button_pdf:hover {
    opacity: .8;
}
