@charset"utf-8";

/* =============================================
下層ページの余白
=============================================　*/
/* margin */
.lower-contents .u-mt-0 {
    margin-top: 0px !important;
}

.lower-contents .u-mt-5 {
    margin-top: 5px !important;
}

.lower-contents .u-mt-10 {
    margin-top: 10px !important;
}

.lower-contents .u-mt-15 {
    margin-top: 15px !important;
}

.lower-contents .u-mt-20 {
    margin-top: 20px !important;
}

.lower-contents .u-mt-25 {
    margin-top: 25px !important;
}

.lower-contents .u-mt-30 {
    margin-top: 30px !important;
}

.lower-contents .u-mt-35 {
    margin-top: 35px !important;
}

.lower-contents .u-mt-40 {
    margin-top: 40px !important;
}

.lower-contents .u-mb-0 {
    margin-bottom: 0px !important;
}

.lower-contents .u-mb-5 {
    margin-bottom: 5px !important;
}

.lower-contents .u-mb-10 {
    margin-bottom: 10px !important;
}

.lower-contents .u-mb-15 {
    margin-bottom: 15px !important;
}

.lower-contents .u-mb-20 {
    margin-bottom: 20px !important;
}

.lower-contents .u-mb-25 {
    margin-bottom: 25px !important;
}

.lower-contents .u-mb-30 {
    margin-bottom: 30px !important;
}

.lower-contents .u-mb-35 {
    margin-bottom: 35px !important;
}

.lower-contents .u-mb-40 {
    margin-bottom: 40px !important;
}

.lower-contents .u-mr-0 {
    margin-right: 0px !important;
}

.lower-contents .u-mr-5 {
    margin-right: 5px !important;
}

.lower-contents .u-mr-10 {
    margin-right: 10px !important;
}

.lower-contents .u-mr-15 {
    margin-right: 15px !important;
}

.lower-contents .u-mr-20 {
    margin-right: 20px !important;
}

.lower-contents .u-mr-25 {
    margin-right: 25px !important;
}

.lower-contents .u-mr-30 {
    margin-right: 30px !important;
}

.lower-contents .u-mr-35 {
    margin-right: 35px !important;
}

.lower-contents .u-mr-40 {
    margin-right: 40px !important;
}

.lower-contents .u-ml-0 {
    margin-left: 0px !important;
}

.lower-contents .u-ml-5 {
    margin-left: 5px !important;
}

.lower-contents .u-ml-10 {
    margin-left: 10px !important;
}

.lower-contents .u-ml-15 {
    margin-left: 15px !important;
}

.lower-contents .u-ml-20 {
    margin-left: 20px !important;
}

.lower-contents .u-ml-25 {
    margin-left: 25px !important;
}

.lower-contents .u-ml-30 {
    margin-left: 30px !important;
}

.lower-contents .u-ml-35 {
    margin-left: 35px !important;
}

.lower-contents .u-ml-40 {
    margin-left: 40px !important;
}

/* padding */
.lower-contents .u-pt-0 {
    padding-top: 0 !important;
}

.lower-contents .u-pt-5 {
    padding-top: 5px !important;
}

.lower-contents .u-pt-10 {
    padding-top: 10px !important;
}

.lower-contents .u-pt-15 {
    padding-top: 15px !important;
}

.lower-contents .u-pt-20 {
    padding-top: 20px !important;
}

.lower-contents .u-pt-25 {
    padding-top: 25px !important;
}

.lower-contents .u-pt-30 {
    padding-top: 30px !important;
}

.lower-contents .u-pt-35 {
    padding-top: 35px !important;
}

.lower-contents .u-pt-40 {
    padding-top: 40px !important;
}

.lower-contents .u-pb-0 {
    padding-bottom: 0 !important;
}

.lower-contents .u-pb-5 {
    padding-bottom: 5px !important;
}

.lower-contents .u-pb-10 {
    padding-bottom: 10px !important;
}

.lower-contents .u-pb-15 {
    padding-bottom: 15px !important;
}

.lower-contents .u-pb-20 {
    padding-bottom: 20px !important;
}

.lower-contents .u-pb-25 {
    padding-bottom: 25px !important;
}

.lower-contents .u-pb-30 {
    padding-bottom: 30px !important;
}

.lower-contents .u-pb-35 {
    padding-bottom: 35px !important;
}

.lower-contents .u-pb-40 {
    padding-bottom: 40px !important;
}

.lower-contents .u-pr-0 {
    padding-right: 0 !important;
}

.lower-contents .u-pr-5 {
    padding-right: 5px !important;
}

.lower-contents .u-pr-10 {
    padding-right: 10px !important;
}

.lower-contents .u-pr-15 {
    padding-right: 15px !important;
}

.lower-contents .u-pr-20 {
    padding-right: 20px !important;
}

.lower-contents .u-pr-25 {
    padding-right: 25px !important;
}

.lower-contents .u-pr-30 {
    padding-right: 30px !important;
}

.lower-contents .u-pr-35 {
    padding-right: 35px !important;
}

.lower-contents .u-pr-40 {
    padding-right: 40px !important;
}

.lower-contents .u-pl-0 {
    padding-left: 0 !important;
}

.lower-contents .u-pl-5 {
    padding-left: 5px !important;
}

.lower-contents .u-pl-10 {
    padding-left: 10px !important;
}

.lower-contents .u-pl-15 {
    padding-left: 15px !important;
}

.lower-contents .u-pl-20 {
    padding-left: 20px !important;
}

.lower-contents .u-pl-25 {
    padding-left: 25px !important;
}

.lower-contents .u-pl-30 {
    padding-left: 30px !important;
}

.lower-contents .u-pl-35 {
    padding-left: 35px !important;
}

.lower-contents .u-pl-40 {
    padding-left: 40px !important;
}


/* sp */
@media screen and (max-width: 960px) {
  .lower-contents .u-mt-10-sp {
      margin-top: 10px !important;
  }
}

/* =============================================
下層ページの見出し
=============================================　*/
.lower-contents h1 {
    margin-bottom: 30px;
    padding: 22px 24px 22px;
    border-top: solid 4px #549fde;
    background-color: #f3f3f3;
    font-size: 32px;
    line-height: 1.6;

}

.lower-contents h2 {
    margin-bottom: 30px;
    padding: 18px;
    border-left: solid 4px #549fde;
    background-color: #f3f3f3;
    line-height: 1.2;
    font-size: 20px;
}

.lower-contents h3 {
    margin-bottom: 30px;
    padding: 6px 12px 6px;
    border-left: solid 4px #549fde;
    border-bottom: solid 1px #f3f3f3;
    line-height: 1.4;
    font-size: 20px;
}

.lower-contents h4 {
    margin-bottom: 30px;
    padding: 6px 12px 6px;
    border-left: solid 4px #999;
    line-height: 1.4;
    font-size: 20px;
}

.lower-contents h5 {
    margin-bottom: 30px;
    line-height: 1.4;
    font-size: 20px;
}

/* sp */
@media screen and (max-width: 960px) {
    .lower-contents h1 {
        margin-bottom: 15px;
        padding: 5px;
        font-size: 32px;
    }

    .lower-contents h2 {
        margin-bottom: 15px;
        padding: 10px;
        font-size: 20px;
    }

    .lower-contents h3 {
        margin-bottom: 15px;
    }

    .lower-contents h4 {
        margin-bottom: 15px;
    }

    .lower-contents h5 {
        margin-bottom: 15px;
    }

}

/* =============================================
テキスト
=============================================　*/
.lower-contents p {
    margin-bottom: 30px;
    font-size: 16px;
    line-height: 1.8;
}

.lower-contents .box-cmn-01 p {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.8;
}

.lower-contents .box-cmn-02 p {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.8;
}

.lower-contents strong {
    color: #de7753;
    font-weight: bold;
    line-height: 1.8;
}

.lower-contents em {
    color: #000;
    font-weight: bold;
    line-height: 1.8;
}

.txt-cmn-01 {
    color: #000;
    font-size: 16px;
    line-height: 1.8;

}

.txt-left {
    text-align: left;
}

.txt-center {
    text-align: center;
}

.txt-right {
    text-align: right;
}

/* sp */
@media screen and (max-width: 960px) {
    .lower-contents p {
        margin-bottom: 15px;
    }
  .txt-nowrap-sp {
    display: block;
  }
}

/* =============================================
フロート
=============================================　*/
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.float-right {
    float: right;
}

.float-left {
    float: left;
}

.item-float-01 {
    margin: 0 0 50px 30px;
}


.item-float-02 {
    margin: 0 30px 50px 0;
}

/* sp */

@media screen and (max-width: 960px) {
    .float-right {
        float: none;
    }

    .float-left {
        float: none;
    }

    .item-float-01 {
        margin: 0 0 30px 0;
    }

    .item-float-02 {
        margin: 0 0 30px 0;

    }
}

/* =============================================
リスト
=============================================　*/
.list-cmn-01,
.list-cmn-02,
.list-cmn-03,
.list-cmn-04 {
    margin-bottom: 30px;
}
.list-cmn-01 a,
.list-cmn-02 a,
.list-cmn-03 a,
.list-cmn-04 a {
    color: #000;
    text-decoration: underline;
}
.list-cmn-01 a:hover,
.list-cmn-02 a:hover,
.list-cmn-03 a:hover,
.list-cmn-04 a:hover {
    text-decoration: none;
}


.list-cmn-01 li a {
    padding-left: 30px;
    background-image: url(./../../assets/images/arrow_01.png);
    background-repeat: no-repeat;
    background-position: left center;
    font-size: 16px;
    line-height: 1.8;

}

.list-cmn-01 ul li a {
    margin-left: 30px;
    padding-left: 30px;
    background-image: url(./../../assets/images/arrow_03.png);
    background-repeat: no-repeat;
    background-position: left center;
    font-size: 16px;
    line-height: 1.8;
}


.list-ico-pdf:after {
    margin-right: 5px;
    margin-left: 10px;
    font-family: FontAwesome;
    content: "\f1c1";
    color: #de7754;
}

.list-ico-word:after {
    margin-left: 10px;
    font-family: FontAwesome;
    content: "\f1c2";
    color: #549fde;
}

.list-ico-excel:after {
    margin-left: 10px;
    font-family: FontAwesome;
    content: "\f1c3";
    color: #77de54;
}

.list-ico-ppoint:after {
    margin-left: 10px;
    font-family: FontAwesome;
    content: "\f1c4";
    color: #debc54;
}

.list-ico-link:after {
    margin-left: 10px;
    font-family: FontAwesome;
    content: "\f24d";
    color: #999;
}


.list-cmn-02 li {
    padding-left: 20px;
    background: url(./../../assets/images/circle_01.png)no-repeat left 10px;
    font-size: 16px;
    line-height: 1.8;
}

.list-cmn-02 li ul li {
    background: url(./../../assets/images/circle_02.png)no-repeat left 10px;
    font-size: 16px;
    line-height: 1.8;
}

.list-cmn-03 li {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.8;
}

.list-cmn-03 li ol li {
    padding-left: 18px;
    font-size: 16px;
    line-height: 1.8;
}

.list-cmn-04 dt {
    font-weight: bold;
    margin-bottom: 10px;
}

.list-cmn-04 dd {
    margin-left: 15px;
    padding-left: 15px;
    border-left: solid 1px #549fde;
    font-size: 16px;
    line-height: 1.8;
}

/* sp */
@media screen and (max-width: 960px) {

    .list-cmn-02,
    .list-cmn-04,
    .list-cmn-06,
    .list-cmn-07 {
        margin-bottom: 15px;
    }
}

/* =============================================
リンクリスト
=============================================　*/
.area-link {
    margin-bottom: 60px;
}

.area-link ul {
    display: flex;
    flex-wrap: wrap;
}

.list-link-01 {
    margin-right: 20px;
}

.list-link-01:after {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(./../../assets/images/arrow_07.png);
    background-size: contain;
    vertical-align: middle;
}

.list-link-01:first-child {
    margin-left: 0;
}

.list-link-01 a {
    margin-right: 20px;
    color: #000;
    text-decoration: underline;
}

.list-link-01 a:hover {
    transition: 0.5s;
    opacity: 0.5;
}

/* sp */
@media screen and (max-width: 960px) {
    .area-link {
        margin-bottom: 30px;
    }

    .area-link ul {
        display: flex;
        flex-direction: column;
    }

    .list-link-01 {
        padding-right: 0;
    }
}

/* =============================================
テーブル
=============================================　*/
table {
    margin-bottom: 30px;
}

/* テーブルのレイアウト1 */
.table-cmn-01 {
    width: 100%;

}

.table-cmn-01 th,
.table-cmn-01 td {
    padding: 15px;
    border-collapse: collapse;
    border: solid 1px #ccc;
    text-align: left;
    vertical-align: top;
}

.table-cmn-01 thead th {
    background-color: #549fde;
    color: #fff;
}

.table-cmn-01 thead th:first-child {
    padding: 15px;
}
 
.table-cmn-01 tbody th {
    background-color: #f3f3f3;
}

/* テーブルのレイアウト2 */
.table-cmn-02 {
    width: 100%;
}

.table-cmn-02 th,
.table-cmn-02 td {
    padding: 15px;
    border-collapse: collapse;
    border: solid 1px #ccc;
    text-align: left;
    vertical-align: top;
}

.table-cmn-02 th {
    background-color: #549fde;
    color: #fff;
}

.table-cmn-02 td {
    background-color: #f3f3f3;
}

.table-cmn-02 td:last-child {
    width: auto;
    background-color: #fff;
}

/* テーブルのレイアウト3 */
.table-cmn-03 {
    width: 100%;
}

.table-cmn-03 thead th,
.table-cmn-03 thead td {
    border-top: solid 1px #ccc;
    border-bottom: dashed 1px #ccc;
    background-color: #f3f3f3;
    vertical-align: top;
}

.table-cmn-03 th,
.table-cmn-03 td {
    padding: 15px;
    text-align: left;
}

.table-cmn-03 tbody th {
    border-bottom: dashed 1px #ccc;
    text-align: left;
}

.table-cmn-03 tbody td {
    padding: 15px;
    border-bottom: dashed 1px #ccc;
    text-align: left;
}

.table-cmn-03 tbody tr:last-child {
    border-bottom: solid 1px #ccc;
}

/* sp */
@media screen and (max-width: 960px) {

    table,
    thead,
    tbody,
    tr,
    th,
    td {
        display: block;
        width: 100%;
    }

    table {
        margin-bottom: 15px;
    }

    /* テーブルのレイアウト1 */
    .table-cmn-01 {
        width: 100%;
    }

    .table-cmn-01 thead th:first-child {
        width: 100%;
    }

    .table-cmn-01 th {
        border-bottom: none;
    }

    .table-cmn-01 td {
        border-bottom: none;
    }

    .table-cmn-01 tr:last-child td {
        border: solid 1px #ccc;
    }

    .table-cmn-01 th {
        width: 100%;
    }

    .table-cmn-01 td {
        width: 100%;
    }

    /* テーブルのレイアウト2 */

    .table-cmn-02 {
        width: 100%;
    }

    .table-cmn-02 th,
    .table-cmn-02 td {
        width: 100%;
    }

    .table-cmn-02 th {
        border-bottom: none;
    }

    .table-cmn-02 td {
        border-bottom: none;
    }

    .table-cmn-02 tr:last-child td:last-child {
        border: solid 1px #ccc;
    }

    /* テーブルのレイアウト3 */

    .table-cmn-03 {
        width: 100%;
    }

    .table-cmn-03 thead td {
        border-top: none;
    }

    .table-cmn-03 th {
        width: 100%;
        font-weight: bold;
    }

    .table-cmn-03 td {
        width: 100%;
        border-top: none;
        text-indent: 1em;
    }

    .table-cmn-03 tbody tr:last-child td {
        border-bottom: none;
    }


}


/* =============================================
ボックス
=============================================　*/
.box-cmn-01,
.box-cmn-02,
.box-cmn-03,
.box-cmn-04 {
    margin-bottom: 30px;
}

/* 枠あり　*/
.box-cmn-01 {
    padding: 20px;
    border: solid 5px #ccc;
    background-color: #f3f3f3;
}

.box-cmn-02 {
    padding: 20px;
    border: solid 5px #debc54;
    background-color: #fff;
}

/* 2カラム　*/
.box-cmn-03 {
    display: flex;
    justify-content: space-between;
}

.item-box-2col {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 524px;
    height: 200px;
    border: solid 1px #ccc;
    background-color: #f3f3f3;
}

.item-box-2col:first-child {
    margin-right: 32px;
}

/* 3カラム　*/
.box-cmn-04 {
    display: flex;
    justify-content: space-between;
}

.item-box-3col {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 340px;
    height: 200px;
    margin-right: 30px;
    border: solid 1px #ccc;
    background-color: #f3f3f3;
}

.item-box-3col:last-child {
    margin-right: 0;
}


/* sp */
@media screen and (max-width: 960px) {

    .box-cmn-01,
    .box-cmn-02,
    .box-cmn-03,
    .box-cmn-04 {
        margin-bottom: 15px;
    }

    .item-box-2col {
        width: 49%;
    }

    .item-box-2col:first-child {
        margin-right: 2%;
    }

    .item-box-3col {
        width: 32%;
        margin-right: 2%;
    }

}

/* =============================================
ボタン
=============================================　*/
.area-btn {
    margin-bottom: 30px;
}

.btn-cmn-01 {
    width: 240px;
    height: 50px;
    line-height: 50px;
    border-radius: 5px;
    border: solid 2px #549fde;
    background-color: #549fde;
    background-image: url(./../../assets/images/arrow_04.png);
    background-repeat: no-repeat;
    background-position: 210px 16px;
    text-align: center;
    box-sizing: border-box;

}

.btn-cmn-01 a {
    display: block;
    width: 240px;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

.btn-cmn-01:hover {
    width: 240px;
    height: 50px;
    line-height: 50px;
    border-radius: 5px;
    border: solid 2px #549fde;
    background-color: #fff;
    background-image: url(./../../assets/images/arrow_01.png);
    background-repeat: no-repeat;
    background-position: 210px 16px;
    text-align: center;
    transition: 0.5s;

}

.btn-cmn-01 a:hover {
    display: block;
    width: 240px;
    height: 50px;
    line-height: 50px;
    color: #549fde;
    font-weight: bold;
    text-align: center;
}

.btn-cmn-02 {
    width: 240px;
    height: 50px;
    line-height: 50px;
    border-radius: 5px;
    border: solid 2px #debc54;
    background-color: #debc54;
    background-image: url(./../../assets/images/arrow_05.png);
    background-repeat: no-repeat;
    background-position: 210px 16px;
    text-align: center;
    box-sizing: border-box;

}

.btn-cmn-02 a {
    display: block;
    width: 240px;
    height: 50px;
    line-height: 50px;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

.btn-cmn-02:hover {
    width: 240px;
    height: 50px;
    line-height: 50px;
    border-radius: 5px;
    border: solid 2px #debc54;
    background-color: #fff;
    background-image: url(./../../assets/images/arrow_06.png);
    background-repeat: no-repeat;
    background-position: 210px 16px;
    text-align: center;
    transition: 0.5s;
}

.btn-cmn-02 a:hover {
    display: block;
    width: 240px;
    height: 50px;
    line-height: 50px;
    color: #debc54;
    font-weight: bold;
    text-align: center;
}

.btn-cmn-03 {
    width: 240px;
    height: 50px;
    line-height: 50px;
    border-radius: 5px;
    background-color: #999;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

/* sp */
@media screen and (max-width: 960px) {
    .area-btn {
        margin-bottom: 15px;
    }
}