@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュール及びページ固有のスタイルを記述する
    汎用モジュールは、アルファベット降順(A->Z)に記述する
    ページ固有のスタイルは、ディレクトリ名のアルファベット降順(A->Z)、
    ファイル名のアルファベット降順(A->Z)にそれぞれ記述する

Contents:
    module
    page
    utility
========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */
/* ---------------------------------------------
*   下層ページ
--------------------------------------------- */
/* ---------------------------------------------
*   l-mv-head
--------------------------------------------- */
.l-mv-head--csr {
    position: relative;
}

.l-mv-head--csr:before {
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 100%;
    background: #009944;
    content: "";
}

/* ---------------------------------------------
*   l-main-contents
--------------------------------------------- */
.l-main-contents {
    padding: 4.75rem 0 8.75rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents {
        padding: 8vw 0 13.33333vw;
    }
}

.l-main-contents--news {
    padding: 4.75rem 0 4.0625rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents--news {
        padding: 8vw 0 13.33333vw;
    }
}

.l-main-contents--history {
    padding: 0 0 5.625rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents--history {
        padding: 0 0 13.33333vw;
    }
}

.l-main-contents--csr {
    padding: 4.75rem 0 6.25rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents--csr {
        padding: 8vw 0 13.33333vw;
    }
}

.l-main-contents--top {
    padding-top: 0;
    padding-bottom: 3.4375rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents--top {
        padding-bottom: 13.33333vw;
    }
}

.l-main-contents--btm {
    padding-bottom: 0;
}

@media screen and (max-width: 767px) {
    .l-main-contents--btm {
        padding-bottom: 13.33333vw;
    }
}

.l-main-contents__choise-area {
    margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents__choise-area {
        margin: 4vw 0;
    }
}

.l-main-contents-2 {
    padding-top: 0;
    padding-bottom: 3.4375rem;
}

@media screen and (max-width: 767px) {
    .l-main-contents-2 {
        padding-bottom: 13.33333vw;
    }
}

.l-main-contents-2:last-of-type {
    padding-bottom: 0;
}

/* ---------------------------------------------
*   l-page-head
--------------------------------------------- */
.l-page-head {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 5.6875rem auto;
    padding: 0 20px;
    max-width: 1140px;
}

@media screen and (max-width: 767px) {
    .l-page-head {
        margin: 8vw auto;
        padding: 0;
        width: 92vw;
    }
}

.l-page-head__img {
    position: absolute;
    top: 0;
    right: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .l-page-head__img {
        top: auto;
        right: 0;
        margin-top: 1.33333vw;
    }
}

.l-page-head__icon {
    margin-right: 0.4375rem;
    width: 7.1875rem;
}

@media screen and (max-width: 767px) {
    .l-page-head__icon {
        margin-right: 0.66667vw;
        width: 13.33333vw;
    }
}

.l-page-head__icon:last-of-type {
    margin-right: 0;
}

/* ---------------------------------------------
*   l-page-body
--------------------------------------------- */
.l-page-body {
    margin-bottom: 6rem;
}

@media screen and (max-width: 767px) {
    .l-page-body {
        margin-bottom: 10.66667vw;
    }
}

.l-page-body--philosophy {
    overflow: hidden;
    margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
    .l-page-body--philosophy {
        margin-bottom: 13.33333vw;
    }
}

.l-page-body--group-list {
    margin-bottom: 9.375rem;
}

@media screen and (max-width: 767px) {
    .l-page-body--group-list {
        margin-bottom: 10.66667vw;
    }
}

.l-page-body--business {
    margin-bottom: 6.875rem;
}

@media screen and (max-width: 767px) {
    .l-page-body--business {
        margin-bottom: 10.66667vw;
    }
}

.l-page-body--biz {
    margin-top: 5.6875rem;
    margin-bottom: 6.875rem;
}

@media screen and (max-width: 767px) {
    .l-page-body--biz {
        margin-top: 8vw;
        margin-bottom: 10.66667vw;
    }
}

.l-page-body--csr {
    margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
    .l-page-body--csr {
        margin-bottom: 10.66667vw;
    }
}

.l-page-body--other {
    margin-top: 5.6875rem;
    margin-bottom: 6.875rem;
}

@media screen and (max-width: 767px) {
    .l-page-body--other {
        margin-top: 8vw;
        margin-bottom: 10.66667vw;
    }
}

/* ---------------------------------------------
*   l-lead-area
--------------------------------------------- */
.l-lead-area {
    margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {
    .l-lead-area {
        margin-bottom: 8vw;
    }
}

/* ---------------------------------------------
*   l-ttl-about
--------------------------------------------- */
.l-ttl-about__inner {
    margin-bottom: 5.3125rem;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .l-ttl-about__inner {
        margin-bottom: 10.66667vw;
    }
}

.l-ttl-about__lead {
    margin-bottom: 2.25rem;
    font-size: 1rem;
    font-family: kozuka-gothic-pr6n, sans-serif;
    line-height: 2.25;
}

@media screen and (max-width: 767px) {
    .l-ttl-about__lead {
        margin-bottom: 5.33333vw;
        font-size: 3.73333vw;
        line-height: 2;
    }
}

.l-ttl-about__lead:last-of-type {
    margin-bottom: 0;
}

.l-ttl-about__lead--small {
    margin-bottom: 0;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    font-family: YuGothic, sans-serif;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .l-ttl-about__lead--small {
        padding-bottom: 0.93333vw;
        font-size: 3.2vw;
    }
}

/* ---------------------------------------------
*   l-ttl-about-phrase
--------------------------------------------- */
.l-ttl-about-phrase {
    margin-top: 3.125rem;
    text-align: center;
    letter-spacing: .06em;
    font-weight: 500;
    font-style: normal;
    font-size: 4.5rem;
    font-family: urw-din, sans-serif;
}

@media screen and (max-width: 767px) {
    .l-ttl-about-phrase {
        margin-top: 8vw;
        font-size: 5.06667vw;
    }
}

/* ---------------------------------------------
*   l-catch-wrap
--------------------------------------------- */
.l-catch-wrap {
    margin-bottom: 6.5625rem;
}

@media screen and (max-width: 767px) {
    .l-catch-wrap {
        margin-bottom: 10.66667vw;
    }
}

.l-catch-wrap__sub-txt {
    margin-top: 3.125rem;
    text-align: right;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .l-catch-wrap__sub-txt {
        margin-top: 8vw;
        font-size: 3.2vw;
    }
}

/* ---------------------------------------------
*   l-catch-section
--------------------------------------------- */
.l-catch-section {
    margin-bottom: 4.0625rem;
}

@media screen and (max-width: 767px) {
    .l-catch-section {
        margin-bottom: 8vw;
    }
}

.l-catch-section:last-of-type {
    margin-bottom: 0;
}

.l-catch-section__inner {
    margin-top: 2.5rem;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .l-catch-section__inner {
        margin-top: 0;
    }
}

.l-catch-section__txt {
    letter-spacing: .1em;
    font-size: 1.75rem;
    line-height: 1.78;
}

@media screen and (max-width: 767px) {
    .l-catch-section__txt {
        font-size: 4.26667vw;
    }
}

/* ---------------------------------------------
*   l-layout-field
--------------------------------------------- */
.l-layout-field {
    margin: 4.0625rem 0 6.625rem;
}

@media screen and (max-width: 767px) {
    .l-layout-field {
        margin: 8vw 0 13.33333vw;
    }
}

/* ---------------------------------------------
*   l-layout-item
--------------------------------------------- */
.l-layout-item {
    margin-bottom: 6.875rem;
}

@media screen and (max-width: 767px) {
    .l-layout-item {
        margin-bottom: 13.33333vw;
    }
}

.l-layout-item:last-of-type {
    margin-bottom: 0;
}

.l-layout-item__bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 980px;
    width: 89.09091%;
    background-color: #f5f9eb;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .l-layout-item__bar {
        max-width: 100%;
        width: 100%;
    }
}

.l-layout-item__word {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 150px;
    width: 15.30612%;
    background-color: #009944;
    color: #fff;
    font-weight: bold;
    font-size: 3.75rem;

    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

@media screen and (max-width: 767px) {
    .l-layout-item__word {
        max-width: 100%;
        width: 20%;
        font-size: 5.33333vw;
    }
}

.ie11 .l-layout-item__word {
    padding-top: 1.25rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-layout-item__word {
        padding-top: 2.66667vw;
    }
}

.l-layout-item__ttl {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.5rem 1.5625rem 1.5rem 5.25rem;
    max-width: 830px;
    width: 84.69388%;
    text-indent: -1.1em;
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 2.125rem;
}

@media screen and (max-width: 767px) {
    .l-layout-item__ttl {
        padding: 2.66667vw 2.66667vw 2.66667vw 8.26667vw;
        max-width: 100%;
        width: 80%;
        font-size: 4vw;
    }
}

.ie11 .l-layout-item__ttl {
    padding: 1.75rem 1.5625rem 1.25rem 5.25rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-layout-item__ttl {
        padding: 2.93333vw 2.66667vw 2.4vw 8.26667vw;
    }
}

.l-layout-item__txt {
    margin-top: 3.4375rem;
    text-align: center;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .l-layout-item__txt {
        margin-top: 5.33333vw;
        text-align: left;
        font-size: 3.73333vw;
    }
}

.l-layout-item__small-txt {
    margin-top: 3.125rem;
    text-align: right;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .l-layout-item__small-txt {
        margin-top: 8vw;
        font-size: 3.2vw;
    }
}

/* ---------------------------------------------
*   l-layout-separate-item
--------------------------------------------- */
.l-layout-separate-item {
    margin-bottom: 5.625rem;
}

@media screen and (max-width: 767px) {
    .l-layout-separate-item {
        margin-bottom: 10.66667vw;
    }
}

.l-layout-separate-item:last-of-type {
    margin-bottom: 0;
}

.l-layout-separate-item__bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 980px;
    width: 89.09091%;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .l-layout-separate-item__bar {
        max-width: 100%;
        width: 100%;
    }
}

.l-layout-separate-item__word {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 150px;
    width: 15.30612%;
    background-color: #009944;
    color: #fff;
    font-weight: bold;
    font-size: 3.75rem;

    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

@media screen and (max-width: 767px) {
    .l-layout-separate-item__word {
        max-width: 100%;
        width: 20%;
        font-size: 5.33333vw;
    }
}

.ie11 .l-layout-separate-item__word {
    padding-top: 1.25rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-layout-separate-item__word {
        padding-top: 2.66667vw;
    }
}

.l-layout-separate-item__word-small {
    margin-top: 1.25rem;
    font-size: 2.25rem;
}

@media screen and (max-width: 767px) {
    .l-layout-separate-item__word-small {
        margin-top: 1.33333vw;
        font-size: 3.73333vw;
    }
}

.ie11 .l-layout-separate-item__word-small {
    margin-top: 0.625rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-layout-separate-item__word-small {
        margin-top: 0.66667vw;
    }
}

.l-layout-separate-item__ttl {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 1.73469%;
    padding: 1.1875rem 1.5625rem 1.1875rem 6.125rem;
    max-width: 813px;
    width: 82.95918%;
    background-color: #f5f9eb;
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 2rem;
}

@media screen and (max-width: 767px) {
    .l-layout-separate-item__ttl {
        padding: 2.66667vw 2.66667vw 2.66667vw 8.26667vw;
        max-width: 100%;
        width: 80%;
        font-size: 4vw;
    }
}

.ie11 .l-layout-separate-item__ttl {
    padding: 1.5rem 1.5625rem 0.875rem 6.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-layout-separate-item__ttl {
        padding: 2.93333vw 2.66667vw 2.4vw 8.26667vw;
    }
}

.l-layout-separate-item__txt {
    margin-top: 3.4375rem;
    text-align: center;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .l-layout-separate-item__txt {
        margin-top: 5.33333vw;
        text-align: left;
        font-size: 3.73333vw;
    }
}

/* ---------------------------------------------
*   group/companyページ
--------------------------------------------- */
.gmap {
    position: relative;
    margin-top: 3.75rem;
    padding-top: 36.36364%;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .gmap {
        margin-top: 8vw;
        padding-top: 50%;
    }
}

.gmap iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/* ---------------------------------------------
*   /business/ページ
--------------------------------------------- */
.l-page-wrap {
    margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
    .l-page-wrap {
        margin-bottom: 13.33333vw;
    }
}

.l-page-wrap--harf {
    margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {
    .l-page-wrap--harf {
        margin-bottom: 9.33333vw;
    }
}

/* ---------------------------------------------
*   /recruit/ページ
--------------------------------------------- */
/* ---------------------------------------------
*   l-page-block
--------------------------------------------- */
.l-page-block {
    margin-top: 4.5rem;
}

@media screen and (max-width: 767px) {
    .l-page-block {
        margin-top: 10.66667vw;
    }
}

/* ---------------------------------------------
*   mod-base-btn
--------------------------------------------- */
.mod-base-btn {
    position: relative;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.0625rem 7.125rem 1rem 2.1875rem;
    width: 14.6875rem;
    background-color: #009944;
    color: #fff;
    font-size: 0.875rem;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;
}

@media screen and (max-width: 767px) {
    .mod-base-btn {
        padding: 4.53333vw 21.33333vw 4.26667vw;
        width: 100%;
        text-align: center;
        font-size: 3.73333vw;
    }
}

.ie11 .mod-base-btn {
    padding: 1.1875rem 7.125rem 0.875rem 2.1875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn {
        padding: 4.53333vw 21.33333vw 4.26667vw 0;
    }
}

.edge .mod-base-btn {
    padding: 1.1875rem 7.125rem 0.875rem 2.1875rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn {
        padding: 4.53333vw 21.33333vw 4.26667vw 0;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-btn:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-btn:hover,
    .android .mod-base-btn:hover {
        background-color: #beda79;
    }
}

.mod-base-btn:hover:after {
    -webkit-transform: translateY(-50%) translate3d(8%, 0, 0);
    transform: translateY(-50%) translate3d(8%, 0, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-btn:hover:after {
        -webkit-transform: translateY(-50%) translate3d(0, 0, 0);
        transform: translateY(-50%) translate3d(0, 0, 0);
    }
}

.mod-base-btn[target="_blank"]:before {
    position: absolute;
    top: 50%;
    right: 10.90909%;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_w.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .mod-base-btn[target="_blank"]:before {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-btn[target="_blank"]:before {
        right: 5.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.ie11 .mod-base-btn[target="_blank"]:before {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn[target="_blank"]:before {
        height: 3.73333vw;
    }
}

.edge .mod-base-btn[target="_blank"]:before {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn[target="_blank"]:before {
        height: 3.73333vw;
    }
}

.mod-base-btn[target="_blank"]:after {
    display: none;
}

.mod-base-btn:after {
    position: absolute;
    top: 46%;
    right: 8.51064%;
    width: 60px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translateY(-50%) translate3d(0, 0, 0);
    transform: translateY(-50%) translate3d(0, 0, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-btn:after {
        right: 5.33333vw;
        width: 16vw;
        height: 2.66667vw;
    }
}

.ie11 .mod-base-btn:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn:after {
        height: 2.66667vw;
    }
}

.edge .mod-base-btn:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn:after {
        height: 2.66667vw;
    }
}

.mod-base-btn--arrow-target {
    padding: 1.0625rem 7.125rem 1rem 1.875rem;
}

@media screen and (max-width: 767px) {
    .mod-base-btn--arrow-target {
        padding: 4.53333vw 28vw 4.26667vw;
    }
}

.mod-base-btn--arrow-target:before {
    right: 45.10638% !important;
    width: 14px !important;
    height: 14px !important;
}

@media screen and (max-width: 1140px) {
    .mod-base-btn--arrow-target:before {
        right: 8.54vw !important;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-btn--arrow-target:before {
        right: 24.66667vw !important;
        width: 3.73333vw !important;
        height: 3.73333vw !important;
    }
}

.ie11 .mod-base-btn--arrow-target:before {
    height: 15px !important;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn--arrow-target:before {
        height: 3.73333vw !important;
    }
}

.edge .mod-base-btn--arrow-target:before {
    height: 15px !important;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn--arrow-target:before {
        height: 3.73333vw !important;
    }
}

.mod-base-btn--arrow-target:after {
    right: 10.21277% !important;
    display: block !important;
}

@media screen and (max-width: 1140px) {
    .mod-base-btn--arrow-target:after {
        right: 3.40426% !important;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-btn--arrow-target:after {
        right: 6.4vw !important;
    }
}

.mod-base-btn--small {
    padding: 1.0625rem 6.25rem 1rem 1.25rem;
    width: 13.125rem;
}

@media screen and (max-width: 767px) {
    .mod-base-btn--small {
        padding: 4.53333vw 28vw 4.26667vw;
        width: 100%;
    }
}

.ie11 .mod-base-btn--small {
    padding: 1.0625rem 6.25rem 1rem 1.25rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn--small {
        padding: 4.53333vw 28vw 4.26667vw;
    }
}

.edge .mod-base-btn--small {
    padding: 1.0625rem 6.25rem 1rem 1.25rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn--small {
        padding: 4.53333vw 28vw 4.26667vw;
    }
}

.mod-base-btn--medium {
    padding: 1.4375rem 7.125rem 1.4375rem 2.1875rem;
    width: 17.1875rem;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-base-btn--medium {
        padding: 4.53333vw 21.33333vw 4.26667vw;
        width: 100%;
        text-align: center;
        font-size: 3.73333vw;
    }
}

.mod-base-btn--medium:after {
    right: 13.81818%;
}

@media screen and (max-width: 1140px) {
    .mod-base-btn--medium:after {
        right: 10.90909%;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-btn--medium:after {
        right: 5.33333vw;
        width: 16vw;
        height: 2.66667vw;
    }
}

.ie11 .mod-base-btn--medium {
    padding: 1.5rem 7.125rem 1.375rem 2.1875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn--medium {
        padding: 4.53333vw 21.33333vw 4.26667vw 0;
    }
}

.edge .mod-base-btn--medium {
    padding: 1.5rem 7.125rem 1.375rem 2.1875rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn--medium {
        padding: 4.53333vw 21.33333vw 4.26667vw 0;
    }
}

.mod-base-btn--large {
    padding: 1.75rem 6.875rem 1.75rem 3.25rem;
    width: 26.25rem;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-base-btn--large {
        padding: 4.53333vw 21.33333vw 4.26667vw;
        width: 100%;
        text-align: center;
        font-size: 3.73333vw;
    }
}

.ie11 .mod-base-btn--large {
    padding: 1.875rem 6.875rem 1.625rem 3.25rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-btn--large {
        padding: 4.53333vw 21.33333vw 4.26667vw;
    }
}

.edge .mod-base-btn--large {
    padding: 1.875rem 6.875rem 1.625rem 3.25rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-btn--large {
        padding: 4.53333vw 21.33333vw 4.26667vw;
    }
}

.mod-base-btn--large:after {
    right: 8.09524%;
}

@media screen and (max-width: 767px) {
    .mod-base-btn--large:after {
        right: 5.33333vw;
    }
}

.mod-base-btn--red {
    background-color: #d96666;
}

@media screen and (min-width: 768px) {
    .mod-base-btn--red:hover {
        background-color: #f38080;
    }
}

/* ---------------------------------------------
*   mod-btn-link-box
--------------------------------------------- */
.mod-btn-link-box {
    margin-top: 5.75rem;
}

@media screen and (max-width: 767px) {
    .mod-btn-link-box {
        margin-top: 10.66667vw;
    }
}

.mod-btn-link-box .mod-base-btn {
    margin-bottom: 1.875rem;
}

@media screen and (max-width: 767px) {
    .mod-btn-link-box .mod-base-btn {
        margin-bottom: 5.33333vw;
    }
}

.mod-btn-link-box .mod-base-btn:nth-of-type(2n+1) {
    margin-right: 3.125rem;
}

@media screen and (max-width: 767px) {
    .mod-btn-link-box .mod-base-btn:nth-of-type(2n+1) {
        margin-right: 0;
    }
}

/* ---------------------------------------------
*   mod-separate-bar
--------------------------------------------- */
.mod-separate-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    width: 100%;
    height: 4.125rem;
    background: linear-gradient(45deg, #f8fbf1 0%, #f8fbf1 53.88889%, #fff 53.88889%, #fff 100%);

    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-separate-bar {
        height: 13.33333vw;
    }
}

.mod-separate-bar--csr {
    height: 2.875rem;
}

@media screen and (max-width: 767px) {
    .mod-separate-bar--csr {
        height: 9.33333vw;
    }
}

/* ---------------------------------------------
*   mod-ttl
--------------------------------------------- */
.mod-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-ttl {
        display: block;
    }
}

.mod-ttl--block {
    display: block;
}

.mod-ttl__main {
    display: inline-block;
    letter-spacing: .06em;
    font-weight: 500;
    font-style: normal;
    font-size: 3.75rem;
    font-family: urw-din, sans-serif;
}

@media screen and (max-width: 767px) {
    .mod-ttl__main {
        font-size: 10.66667vw;
    }
}

.mod-ttl__main--second {
    margin-left: 1.5625rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl__main--second {
        margin-left: 2.66667vw;
    }
}

.mod-ttl__main--low {
    font-weight: bold;
    font-size: 2.25rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
    .mod-ttl__main--low {
        font-size: 6.13333vw;
    }
}

.mod-ttl__main--low:first-letter {
    color: #151515 !important;
}

.mod-ttl__main:first-letter {
    color: #009944;
}

.mod-ttl__sub {
    display: block;
    margin-top: 1.25rem;
    margin-left: 2.5rem;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl__sub {
        display: block;
        margin-top: 0;
        margin-left: 0;
        font-size: 3.46667vw;
    }
}

.mod-ttl__sub--big {
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl__sub--big {
        font-size: 3.73333vw;
    }
}

.mod-ttl--block .mod-ttl__sub {
    margin-top: 1.6875rem;
    margin-left: 0;
}

@media screen and (max-width: 767px) {
    .mod-ttl--block .mod-ttl__sub {
        margin-top: 0;
    }
}

/* ---------------------------------------------
*   mod-ttl-w
--------------------------------------------- */
.mod-ttl-w {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
}

.mod-ttl-w--block {
    display: block;
}

.mod-ttl-w__main {
    margin-right: 1.25rem;
    letter-spacing: .05em;
    font-weight: bold;
    font-weight: 500;
    font-style: normal;
    font-size: 3.75rem;
    font-family: urw-din, sans-serif;
}

@media screen and (max-width: 767px) {
    .mod-ttl-w__main {
        font-size: 10.66667vw;
    }
}

.mod-ttl-w__main:first-letter {
    color: #009944;
}

.mod-ttl-w__main:last-of-type {
    margin-right: 0;
}

/* ---------------------------------------------
*   mod-bar
--------------------------------------------- */
.mod-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2.5rem;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .mod-bar {
        margin-bottom: 8vw;
    }
}

.mod-bar--space {
    margin-top: 6.25rem;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .mod-bar--space {
        margin-top: 10.66667vw;
    }
}

.mod-bar--acc {
    margin-bottom: 0;
}

.mod-bar__left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.25rem 2.125rem;
    width: 74.12281%;
    background-color: #009944;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-bar__left {
        padding: 2.8vw 2.93333vw 2.4vw 4.53333vw;
        width: 65%;
    }
}

.ie11 .mod-bar__left {
    padding: 1.4375rem 2.125rem 1.0625rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-bar__left {
        padding: 2.8vw 2.93333vw 2.4vw 4.53333vw;
    }
}

.mod-bar__txt {
    color: #fff;
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-bar__txt {
        font-size: 4.26667vw;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-bar__txt {
        font-size: 4.26667vw;
    }
}

.mod-bar__right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 25.87719%;
    background-color: #85c669;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-bar__right {
        width: 35%;
    }
}

@media screen and (min-width: 768px) {
    .mod-bar__right:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-bar__right:hover,
    .android .mod-bar__right:hover {
        background-color: #beda79;
    }
}

.mod-bar__link {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.4375rem 8.125rem 1.4375rem 2.375rem;
    width: 100%;
    color: #fff;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-bar__link {
        padding: 3.86667vw 3.33333vw 3.33333vw;
        font-size: 3.2vw;
    }
}

.ie11 .mod-bar__link {
    padding: 1.625rem 8.125rem 1.0625rem 2.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-bar__link {
        padding: 3.6vw 3.33333vw;
        font-size: 3.2vw;
    }
}

.windows.firefox .mod-bar__link {
    padding: 1.5rem 8.125rem 1.1875rem 2.125rem;
}

@media screen and (max-width: 767px) {
    .windows.firefox .mod-bar__link {
        padding: 3.6vw 3.33333vw;
        font-size: 3.2vw;
    }
}

.mod-bar__link:hover:after {
    -webkit-transform: translateY(-50%) translate3d(8%, 0, 0);
    transform: translateY(-50%) translate3d(8%, 0, 0);
}

@media screen and (max-width: 767px) {
    .mod-bar__link:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-bar__link[target="_blank"]:before {
    position: absolute;
    top: 50%;
    right: 12.88136%;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_w.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .mod-bar__link[target="_blank"]:before {
        right: 3.31143vw;
        width: 20px;
        height: 20px;
    }
}

@media screen and (max-width: 767px) {
    .mod-bar__link[target="_blank"]:before {
        right: 2.66667vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.mod-bar__link[target="_blank"]:after {
    display: none;
}

.mod-bar__link:after {
    position: absolute;
    top: 46%;
    right: 13.55932%;
    width: 60px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translateY(-50%) translate3d(0, 0, 0);
    transform: translateY(-50%) translate3d(0, 0, 0);
}

@media screen and (max-width: 1140px) {
    .mod-bar__link:after {
        right: 3.48571vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-bar__link:after {
        top: auto;
        right: 2.66667vw;
        bottom: 1.33333vw;
        width: 16vw;
        height: 2.66667vw;
        -webkit-transform: none;
        transform: none;
    }
}

.ie11 .mod-bar__link:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-bar__link:after {
        height: 2.66667vw;
    }
}

.edge .mod-bar__link:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .edge .mod-bar__link:after {
        height: 2.66667vw;
    }
}

.mod-bar__link--acc:after, .mod-bar__link--acc:before {
    position: absolute;
    top: 50% !important;
    right: 13.55932%;
    width: 2.5rem !important;
    height: 2px !important;
    background: #fff !important;
    content: "";
}

@media screen and (max-width: 767px) {
    .mod-bar__link--acc:after, .mod-bar__link--acc:before {
        width: 5.33333vw !important;
    }
}

.mod-bar__link--acc:after {
    -webkit-transform: translateY(0) translate3d(0, 0, 0) !important;
    transform: translateY(0) translate3d(0, 0, 0) !important;
}

@media screen and (max-width: 1140px) {
    .mod-bar__link--acc:after {
        right: 3.48571vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-bar__link--acc:after {
        top: auto;
        right: 2.66667vw;
        bottom: 1.33333vw;
        width: 5.33333vw;
        height: 2px;
        -webkit-transform: none;
        transform: none;
    }
}

.mod-bar__link--acc:before {
    -webkit-transform: translateY(0) translate3d(0, 0, 0) rotate(90deg) !important;
    transform: translateY(0) translate3d(0, 0, 0) rotate(90deg) !important;
}

@media screen and (max-width: 1140px) {
    .mod-bar__link--acc:before {
        right: 3.48571vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-bar__link--acc:before {
        top: auto;
        right: 2.66667vw;
        bottom: 1.33333vw;
        width: 5.33333vw;
        height: 2px;
        -webkit-transform: none;
        transform: none;
    }
}

.is-plus-minus .mod-bar__link--acc:before {
    display: none !important;
}

.mod-bar__link--acc:hover {
    cursor: pointer;
}

.mod-bar__link--acc:hover:after {
    -webkit-transform: translateY(0) translate3d(0, 0, 0) !important;
    transform: translateY(0) translate3d(0, 0, 0) !important;
}

@media screen and (max-width: 767px) {
    .mod-bar__link--acc:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-bar__link--open {
    display: block;
}

.is-plus-minus .mod-bar__link--open {
    display: none !important;
}

.mod-bar__link--close {
    display: none;
}

.is-plus-minus .mod-bar__link--close {
    display: block !important;
}

/* ---------------------------------------------
*   mod-bottom-line
--------------------------------------------- */
.mod-bottom-line {
    position: relative;
    padding: 4.625rem 0 3.75rem;
    background-color: #f4f4f4;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line {
        padding: 13.33333vw 0 8vw;
    }
}

.mod-bottom-line--multi .mod-base-line-box {
    margin-bottom: 1.625rem;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line--multi .mod-base-line-box {
        margin-bottom: 5.33333vw;
    }
}

.mod-bottom-line__inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1140px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line__inner {
        padding: 0;
        width: 92vw;
    }
}

.mod-bottom-line__ttl {
    margin-bottom: 1.25rem;
    margin-left: 1rem;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line__ttl {
        margin-bottom: 4vw;
        margin-left: 2vw;
        font-size: 3.73333vw;
    }
}

.mod-bottom-line--add-ttl {
    margin-top: 8.75rem;
    padding: 2.5rem 0 1.4375rem;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line--add-ttl {
        margin-top: 0;
        padding: 8vw 0 3.06667vw;
    }
}

.mod-bottom-line--add-ttl .mod-ttl {
    margin-bottom: 2.8125rem;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line--add-ttl .mod-ttl {
        margin-bottom: 5.33333vw;
    }
}

.mod-bottom-line__flame {
    position: absolute;
    bottom: 1.875rem;
    left: 0;
    padding-top: 3.125rem;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(15%, rgba(244, 244, 244, 0)), color-stop(60%, #f4f4f4), to(#f4f4f4));
    background: linear-gradient(rgba(244, 244, 244, 0) 15%, #f4f4f4 60%, #f4f4f4 100%);
    background: -ms-linear-gradient(rgba(244, 244, 244, 0) 15%, #f4f4f4 60%, #f4f4f4 100%);
    text-align: center;
    -webkit-transition: bottom 0.2s;
    transition: bottom 0.2s;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line__flame {
        bottom: 8vw;
        padding-top: 32vw;
    }
}

.mod-bottom-line__flame.is-bg {
    background: none;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line__flame.is-bg {
        bottom: 4vw;
    }
}

.mod-bottom-line__show {
    display: inline-block;
    font-size: 1rem;
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    .mod-bottom-line__show {
        font-size: 3.2vw;
    }
}

/* ---------------------------------------------
*   mod-base-line-box
--------------------------------------------- */
.mod-base-line-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2.5rem;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box {
        margin-bottom: 5.33333vw;
    }
}

.mod-base-line-box__item {
    margin-right: 1.81818%;
    margin-bottom: 1.25rem;
    max-width: 204px;
    width: 18.54545%;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box__item {
        margin-right: 2.66667vw !important;
        margin-bottom: 2.66667vw !important;
        max-width: 100%;
        width: 28.8vw;
    }
}

.mod-base-line-box__item--none {
    opacity: 0;
    pointer-events: none;
}

.mod-base-line-box__item:last-of-type {
    margin-right: 0;
}

.mod-base-line-box__link {
    position: relative;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.0625rem 1.25rem 3.875rem 1.125rem;
    width: 100%;
    height: 6.25rem;
    background-color: #009944;
    color: #fff;
    letter-spacing: .06em;
    font-size: 0.875rem;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;
}

.mod-base-line-box__link--current {
    background-color: #beda79;
}

.mod-base-line-box__link.is-current {
    background-color: #beda79;
    pointer-events: none;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box__link {
        padding: 4.53333vw 2vw 16.53333vw;
        height: 26.66667vw;
        font-size: 3.46667vw;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-line-box__link:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-line-box__link:hover,
    .android .mod-base-line-box__link:hover {
        background-color: #beda79;
    }
}

.mod-base-line-box__link:hover:after {
    -webkit-transform: translate3d(8%, 0, 0);
    transform: translate3d(8%, 0, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-line-box__link:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-base-line-box__link:after {
    position: absolute;
    right: 11.76471%;
    bottom: 1.0625rem;
    width: 60px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 1140px) {
    .mod-base-line-box__link:after {
        right: 2.09143vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box__link:after {
        right: 3.06667vw;
        bottom: 2vw;
        width: 16vw;
        height: 2.66667vw;
    }
}

.mod-base-line-box--four .mod-base-line-box__item {
    margin-right: 1.81818%;
    margin-bottom: 1.25rem;
    max-width: 260px;
    width: 23.63636%;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--four .mod-base-line-box__item {
        margin-right: 2.66667vw !important;
        margin-bottom: 2.66667vw !important;
        max-width: 100%;
        width: 28.8vw;
    }
}

.mod-base-line-box--four .mod-base-line-box__item:nth-of-type(4n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--four .mod-base-line-box__item:nth-of-type(4n) {
        margin-right: auto;
    }
}

.mod-base-line-box--four .mod-base-line-box__item:nth-child(4n+1):nth-last-child(-n+4),
.mod-base-line-box--four .mod-base-line-box__item:nth-child(4n+1):nth-last-child(-n+4) ~ li {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--four .mod-base-line-box__item:nth-child(4n+1):nth-last-child(-n+4),
    .mod-base-line-box--four .mod-base-line-box__item:nth-child(4n+1):nth-last-child(-n+4) ~ li {
        margin-bottom: auto;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--four .mod-base-line-box__item:nth-of-type(3n) {
        margin-right: 0 !important;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--four .mod-base-line-box__item:nth-child(3n+1):nth-last-child(-n+3),
    .mod-base-line-box--four .mod-base-line-box__item:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0 !important;
    }
}

.mod-base-line-box--five .mod-base-line-box__item:nth-of-type(5n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--five .mod-base-line-box__item:nth-of-type(5n) {
        margin-right: auto;
    }
}

.mod-base-line-box--five .mod-base-line-box__item:nth-child(5n+1):nth-last-child(-n+5),
.mod-base-line-box--five .mod-base-line-box__item:nth-child(5n+1):nth-last-child(-n+5) ~ li {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--five .mod-base-line-box__item:nth-child(5n+1):nth-last-child(-n+5),
    .mod-base-line-box--five .mod-base-line-box__item:nth-child(5n+1):nth-last-child(-n+5) ~ li {
        margin-bottom: auto;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--five .mod-base-line-box__item:nth-of-type(3n) {
        margin-right: 0 !important;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--five .mod-base-line-box__item:nth-child(3n+1):nth-last-child(-n+3),
    .mod-base-line-box--five .mod-base-line-box__item:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0 !important;
    }
}

.mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
    position: absolute;
    right: 6.18182%;
    bottom: 15%;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_w.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 1140px) {
    .mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
        right: 5.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.ie11 .mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
        height: 3.73333vw;
    }
}

.edge .mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .edge .mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:before {
        height: 3.73333vw;
    }
}

.mod-base-line-box--five .mod-base-line-box__link[target="_blank"]:after {
    display: none;
}

.mod-base-line-box--w-anchor .mod-base-line-box__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 0 0 0 4.125rem;
    height: 4.375rem;
    border: 1px solid #009944;
    background-color: #fff;
    color: #009944;
    font-weight: bold;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-anchor .mod-base-line-box__link--center {
        -ms-flex-pack: center;

        -webkit-box-pack: center;
        justify-content: center;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-anchor .mod-base-line-box__link {
        padding: 4vw 0.66667vw 4vw 2.66667vw;
        height: 17.33333vw;
    }
}

.ie11 .mod-base-line-box--w-anchor .mod-base-line-box__link {
    padding: 0.25rem 0 0 4.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--w-anchor .mod-base-line-box__link {
        padding: 4vw 0.66667vw 4vw 2.66667vw;
    }
}

.mod-base-line-box--w-anchor .mod-base-line-box__link:after {
    top: 50%;
    right: auto;
    bottom: auto;
    left: 11.76471%;
    width: 9px;
    height: 39px;
    background: url(/img/common/anchor_link.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

@media screen and (max-width: 1140px) {
    .mod-base-line-box--w-anchor .mod-base-line-box__link:after {
        left: 2.09143vw;
        width: 7px;
        height: 30px;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-anchor .mod-base-line-box__link:after {
        left: 0.66667vw;
        width: 2.13333vw;
        height: 9.33333vw;
    }
}

.ie11 .mod-base-line-box--w-anchor .mod-base-line-box__link:after {
    width: 10px;
}

@media screen and (max-width: 1140px) {
    .ie11 .mod-base-line-box--w-anchor .mod-base-line-box__link:after {
        width: 6px;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--w-anchor .mod-base-line-box__link:after {
        width: 2.13333vw;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-line-box--w-anchor .mod-base-line-box__link:hover {
        background-color: #f4f9eb;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-line-box--w-anchor .mod-base-line-box__link:hover,
    .android .mod-base-line-box--w-anchor .mod-base-line-box__link:hover {
        background-color: #f4f9eb;
    }
}

.mod-base-line-box--w-anchor .mod-base-line-box__link:hover:after {
    -webkit-transform: translate3d(0, -40%, 0);
    transform: translate3d(0, -40%, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-anchor .mod-base-line-box__link:hover:after {
        -webkit-transform: translate3d(0, -50%, 0);
        transform: translate3d(0, -50%, 0);
    }
}

.mod-base-line-box--g-low .mod-base-line-box__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 0 3.875rem 0 1.875rem;
    height: 4.375rem;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--g-low .mod-base-line-box__link {
        padding: 4vw 0.66667vw 4vw 2vw;
        height: 17.33333vw;
    }
}

.ie11 .mod-base-line-box--g-low .mod-base-line-box__link {
    padding: 0.3125rem 3.875rem 0 1.875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--g-low .mod-base-line-box__link {
        padding: 4vw 0.66667vw 4vw 2vw;
    }
}

.mod-base-line-box--g-low .mod-base-line-box__link:after {
    top: 50%;
    right: 11.27451%;
    bottom: auto;
    width: 40px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

@media screen and (max-width: 1140px) {
    .mod-base-line-box--g-low .mod-base-line-box__link:after {
        right: 2.00429vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--g-low .mod-base-line-box__link:after {
        top: auto;
        right: 3.06667vw;
        bottom: 1.33333vw;
        width: 16vw;
        height: 2.66667vw;
        -webkit-transform: none;
        transform: none;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-line-box--g-low .mod-base-line-box__link:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-line-box--g-low .mod-base-line-box__link:hover,
    .android .mod-base-line-box--g-low .mod-base-line-box__link:hover {
        background-color: #beda79;
    }
}

.mod-base-line-box--g-low .mod-base-line-box__link:hover:after {
    -webkit-transform: translate3d(8%, -50%, 0);
    transform: translate3d(8%, -50%, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--g-low .mod-base-line-box__link:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-base-line-box--w-low .mod-base-line-box__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 0 3.75rem 0 0.9375rem;
    height: 5.625rem;
    border: 1px solid #009944;
    background-color: #fff;
    color: #009944;
    letter-spacing: .02em;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-low .mod-base-line-box__link {
        padding: 2vw 0.66667vw 2vw 2vw;
        height: 26.66667vw;
    }
}

.ie11 .mod-base-line-box--w-low .mod-base-line-box__link {
    padding: 0.3125rem 3.75rem 0 0.9375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--w-low .mod-base-line-box__link {
        padding: 2vw 0.66667vw 2vw 2vw;
    }
}

.mod-base-line-box--w-low .mod-base-line-box__link.is-current {
    background-color: #f4f9eb;
    pointer-events: none;
}

.mod-base-line-box--w-low .mod-base-line-box__link:after {
    top: 50%;
    right: 11.27451%;
    bottom: auto;
    width: 40px;
    height: 9px;
    background: url(/img/common/link_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

@media screen and (max-width: 1140px) {
    .mod-base-line-box--w-low .mod-base-line-box__link:after {
        right: 0.71429vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-low .mod-base-line-box__link:after {
        top: auto;
        right: 3.06667vw;
        bottom: 1.33333vw;
        width: 16vw;
        height: 2.66667vw;
        -webkit-transform: none;
        transform: none;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-line-box--w-low .mod-base-line-box__link:hover {
        background-color: #f4f9eb;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-line-box--w-low .mod-base-line-box__link:hover,
    .android .mod-base-line-box--w-low .mod-base-line-box__link:hover {
        background-color: #f4f9eb;
    }
}

.mod-base-line-box--w-low .mod-base-line-box__link:hover:after {
    -webkit-transform: translate3d(8%, -50%, 0);
    transform: translate3d(8%, -50%, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-low .mod-base-line-box__link:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-base-line-box--w-small .mod-base-line-box__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 0 3.75rem 0 0.9375rem;
    height: 4.375rem;
    border: 1px solid #009944;
    background-color: #fff;
    color: #009944;
    letter-spacing: .02em;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-small .mod-base-line-box__link {
        padding: 2vw 0.66667vw 2vw 2vw;
        height: 26.66667vw;
    }
}

.ie11 .mod-base-line-box--w-small .mod-base-line-box__link {
    padding: 0.3125rem 3.75rem 0 0.9375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--w-small .mod-base-line-box__link {
        padding: 2vw 0.66667vw 2vw 2vw;
    }
}

.mod-base-line-box--w-small .mod-base-line-box__link.is-current {
    background-color: #f4f9eb;
    pointer-events: none;
}

.mod-base-line-box--w-small .mod-base-line-box__link:after {
    top: 50%;
    right: 11.27451%;
    bottom: auto;
    width: 40px;
    height: 9px;
    background: url(/img/common/link_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

@media screen and (max-width: 1140px) {
    .mod-base-line-box--w-small .mod-base-line-box__link:after {
        right: 0.71429vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-small .mod-base-line-box__link:after {
        top: auto;
        right: 3.06667vw;
        bottom: 1.33333vw;
        width: 16vw;
        height: 2.66667vw;
        -webkit-transform: none;
        transform: none;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-line-box--w-small .mod-base-line-box__link:hover {
        background-color: #f4f9eb;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-line-box--w-small .mod-base-line-box__link:hover,
    .android .mod-base-line-box--w-small .mod-base-line-box__link:hover {
        background-color: #f4f9eb;
    }
}

.mod-base-line-box--w-small .mod-base-line-box__link:hover:after {
    -webkit-transform: translate3d(8%, -50%, 0);
    transform: translate3d(8%, -50%, 0);
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-small .mod-base-line-box__link:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-base-line-box--w-check .mod-base-line-box__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    padding: 0 0 0 4.125rem;
    height: 4.375rem;
    border: 1px solid #009944;
    background-color: #fff;
    color: #009944;
    font-weight: bold;
    cursor: pointer;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-check .mod-base-line-box__link {
        padding: 4vw 0.66667vw 4vw 5.33333vw;
        height: 17.33333vw;
    }
}

.ie11 .mod-base-line-box--w-check .mod-base-line-box__link {
    padding-top: 0.25rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-line-box--w-check .mod-base-line-box__link {
        padding: 4vw 0.66667vw 4vw 5.33333vw;
    }
}

.mod-base-line-box--w-check .mod-base-line-box__link.is-current {
    border: 1px solid #beda79;
    background-color: #beda79 !important;
    color: #fff !important;
}

.mod-base-line-box--w-check .mod-base-line-box__link.is-current:after {
    background-image: url(/img/common/check_w.svg);
}

.mod-base-line-box--w-check .mod-base-line-box__link:after {
    top: 50%;
    right: auto;
    bottom: auto;
    left: 9.80392%;
    width: 23px;
    height: 14px;
    background: url(/img/common/check_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: none;
    transition: none;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--w-check .mod-base-line-box__link:after {
        left: 0.66667vw;
        width: 3.73333vw;
        height: 2.26667vw;
    }
}

@media screen and (min-width: 768px) {
    .mod-base-line-box--w-check .mod-base-line-box__link:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-base-line-box--w-check .mod-base-line-box__link:hover,
    .android .mod-base-line-box--w-check .mod-base-line-box__link:hover {
        background-color: #beda79;
    }
}

.mod-base-line-box--w-check .mod-base-line-box__link:hover {
    border: 1px solid #beda79;
    background-color: #beda79;
    color: #fff;
}

.mod-base-line-box--w-check .mod-base-line-box__link:hover:after {
    background-image: url(/img/common/check_w.svg);
}

.mod-base-line-box--mt-space {
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-base-line-box--mt-space {
        margin-top: 10.66667vw;
    }
}

/* ---------------------------------------------
*   mod-normal-txt
--------------------------------------------- */
.mod-normal-txt {
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-normal-txt {
        font-size: 4.26667vw;
    }
}

.mod-normal-txt--bold {
    margin-top: 2.5rem;
    margin-left: 1.25rem;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-normal-txt--bold {
        margin-top: 5.33333vw;
        margin-left: 0;
        font-size: 3.73333vw;
    }
}

.mod-normal-txt--bold:first-of-type {
    margin-top: 0;
}

.mod-normal-txt--note {
    margin-top: 0.5rem;
    margin-left: 1.25rem;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-normal-txt--note {
        margin-top: 2vw;
        margin-left: 0;
        word-break: break-word;
        font-size: 3.2vw;
    }
}

.mod-normal-txt--acc {
    margin-top: 0;
}

.mod-normal-txt__link {
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

.mod-normal-txt__link:hover {
    border-bottom: 1px solid #fff;
}

.mod-normal-txt__link--target {
    position: relative;
    margin-right: 3.125rem;
}

@media screen and (max-width: 767px) {
    .mod-normal-txt__link--target {
        margin-right: 5.33333vw;
    }
}

.mod-normal-txt__link--target:after {
    position: absolute;
    top: 50%;
    right: -2.5rem;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: '';
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1100px) {
    .mod-normal-txt__link--target:after {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mod-normal-txt__link--target:after {
        top: auto;
        right: -4vw;
        bottom: .1em;
        width: 3.33333vw;
        height: 3.33333vw;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.mod-normal-txt__note {
    display: block;
    margin-top: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-normal-txt__note {
        margin-top: 3.2vw;
    }
}

/* ---------------------------------------------
*   mod-card-block
--------------------------------------------- */
.mod-card-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .mod-card-block {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.mod-card-block__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 1.81818%;
    width: 18.54545%;
}

@media screen and (max-width: 767px) {
    .mod-card-block__item {
        margin-right: 2.66667vw;
        margin-bottom: 4vw;
        width: 28.8vw;
    }
}

.mod-card-block__item:last-of-type {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .mod-card-block__item:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .mod-card-block__item:nth-child(3n+1):nth-last-child(-n+3),
    .mod-card-block__item:nth-child(3n+1):nth-last-child(-n+3) ~ li {
        margin-bottom: 0;
    }
}

.mod-card-block__link {
    position: relative;
    display: block;
    background-color: #009944;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;
}

@media screen and (min-width: 768px) {
    .mod-card-block__link:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-card-block__link:hover,
    .android .mod-card-block__link:hover {
        background-color: #beda79;
    }
}

.mod-card-block__link:hover:after {
    -webkit-transform: translate3d(8%, 0, 0);
    transform: translate3d(8%, 0, 0);
}

@media screen and (max-width: 767px) {
    .mod-card-block__link:hover:after {
        -webkit-transform: none;
        transform: none;
    }
}

.mod-card-block__link:after {
    position: absolute;
    right: 11.27451%;
    bottom: 1.0625rem;
    width: 60px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 1140px) {
    .mod-card-block__link:after {
        right: 2.00429vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-card-block__link:after {
        right: 3.06667vw;
        bottom: 2vw;
        width: 16vw;
        height: 2.66667vw;
    }
}

.ie11 .mod-card-block__link:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-card-block__link:after {
        height: 2.66667vw;
    }
}

.edge .mod-card-block__link:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .edge .mod-card-block__link:after {
        height: 2.66667vw;
    }
}

.mod-card-block__image {
    width: 100%;
}

.mod-card-block__image img {
    width: 100%;
}

.mod-card-block__bottom {
    height: 5rem;
}

@media screen and (max-width: 767px) {
    .mod-card-block__bottom {
        height: 21.33333vw;
    }
}

.mod-card-block__bottom-txt {
    padding: 0.9375rem 0.625rem 0 1rem;
    color: #fff;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-card-block__bottom-txt {
        padding: 1.33333vw 2.66667vw 0 2.66667vw;
        font-size: 3.46667vw;
    }
}

/* ---------------------------------------------
*   mod-news-list
--------------------------------------------- */
.mod-news-list__link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: baseline;
    padding: 1.0625rem 2.72727% 1.0625rem 4.54545%;
    -webkit-transition: background-color 300ms;
    transition: background-color 300ms;

    -webkit-box-align: baseline;
    align-items: baseline;
}

@media screen and (max-width: 767px) {
    .mod-news-list__link {
        display: block;
        padding: 4vw 0;
    }
}

@media screen and (min-width: 768px) {
    .mod-news-list__link:hover {
        background-color: #f2f2f2;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-news-list__link:hover,
    .android .mod-news-list__link:hover {
        background-color: #f2f2f2;
    }
}

.mod-news-list__link--ex[target="_blank"] .mod-news-list__detail:after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .mod-news-list__link--ex[target="_blank"] .mod-news-list__detail:after {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mod-news-list__link--ex[target="_blank"] .mod-news-list__detail:after {
        top: auto;
        bottom: 1.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.mod-news-list__link--pdf[href$=".pdf"] .mod-news-list__detail:after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 25px;
    color: #009944;
    content: "\f1c1";
    text-align: center;
    font-size: 1.5rem;
    font-family: FontAwesome;
    line-height: 1.0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mod-news-list__link--pdf[href$=".pdf"] .mod-news-list__detail:after {
        top: auto;
        bottom: 1.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
        font-size: inherit;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.mod-news-list__date {
    max-width: 150px;
    width: 14.70588%;
    font-size: 1rem;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .mod-news-list__date {
        max-width: 100%;
        width: 100%;
        font-size: 3.46667vw;
    }
}

.mod-news-list__category {
    margin-left: 3.13725%;
    padding: 0.5rem 0 0.4375rem;
    max-width: 150px;
    width: 14.70588%;
    background-color: #f2f2f2;
    color: #00813d;
    text-align: center;
    letter-spacing: 0;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-news-list__category {
        margin: 2vw 0;
        padding: 1.33333vw 2.66667vw;
        max-width: 100%;
        width: 42.66667vw;
        font-size: 3.46667vw;
    }
}

.ie11 .mod-news-list__category {
    padding: 0.625rem 0 0.3125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-news-list__category {
        padding: 1.33333vw 2.66667vw;
    }
}

.windows.chrome .mod-news-list__category {
    width: 16.17647%;
}

@media screen and (max-width: 767px) {
    .windows.chrome .mod-news-list__category {
        width: 42.66667vw;
    }
}

.mod-news-list__detail {
    position: relative;
    display: -webkit-box;
    overflow: hidden;
    margin-left: 3.13725%;
    padding-right: 2.94118%;
    max-width: 650px;
    width: 63.72549%;
    height: 1.75rem;
    font-size: 1rem;
    line-height: 1.75;

    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

@media screen and (max-width: 767px) {
    .mod-news-list__detail {
        margin-left: 0;
        max-width: 100%;
        width: 97%;
        height: auto;
        font-size: 4.26667vw;

        -webkit-line-clamp: 2;
    }
}

/* ---------------------------------------------
*   mod-row-list
--------------------------------------------- */
.mod-row-list {
    margin-bottom: 4.0625rem;
}

@media screen and (max-width: 767px) {
    .mod-row-list {
        margin-bottom: 5.33333vw;
    }
}

.mod-row-list__item {
    padding: 1.0625rem 2.27273% 1.0625rem 2.27273%;
}

@media screen and (max-width: 767px) {
    .mod-row-list__item {
        padding: 4vw 2vw;
    }
}

.mod-row-list__item:first-of-type {
    padding-top: 0;
}

.mod-row-list__link {
    position: relative;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

.mod-row-list__link:hover {
    opacity: .8;
}

.mod-row-list__icon {
    display: inline-block;
    max-width: 30px;
    width: 2.94118%;
    vertical-align: middle;
}

@media screen and (max-width: 767px) {
    .mod-row-list__icon {
        max-width: 100%;
        width: 8vw;
    }
}

.mod-row-list__icon img {
    width: 100%;
}

.mod-row-list__detail {
    display: inline-block;
    margin-left: 2.35294%;
    vertical-align: middle;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-row-list__detail {
        margin-left: 0;
        font-size: 3.46667vw;
    }
}

/* ---------------------------------------------
*   mod-l-head
--------------------------------------------- */
.mod-l-head {
    margin-top: 104px;
}

@media screen and (max-width: 1024px) {
    .mod-l-head {
        margin-top: 60px;
    }
}

.mod-l-head__bg {
    background-color: #f8fbf1;
}

.mod-l-head__container {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 2.25rem 20px;
    max-width: 1140px;
}

@media screen and (max-width: 767px) {
    .mod-l-head__container {
        padding: 4vw 0;
        width: 92vw;
    }
}

.ie11 .mod-l-head__container {
    padding: 2.625rem 20px 1.875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-l-head__container {
        padding: 5.06667vw 0 2.93333vw;
    }
}

/* ---------------------------------------------
*   mod-l-heading
--------------------------------------------- */
.mod-l-heading {
    letter-spacing: .12em;
    font-weight: bold;
    font-size: 2.25rem;
}

@media screen and (max-width: 767px) {
    .mod-l-heading {
        font-size: 4.8vw;
    }
}

.mod-l-heading--line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: baseline;

    -webkit-box-align: baseline;
    align-items: baseline;
}

.mod-l-heading__ttl {
    display: block;
    margin-left: 3.125rem;
    line-height: 1.2;
}

@media screen and (max-width: 767px) {
    .mod-l-heading__ttl {
        margin-left: 4vw;
    }
}

/* ---------------------------------------------
*   mod-ttl-bar
--------------------------------------------- */
.mod-ttl-bar {
    margin-bottom: 1.875rem;
    padding: 1.25rem 2.1875rem;
    background-color: #009944;
    color: #fff;
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 1.25rem;
}

.mod-ttl-bar:after {
    display: block;
    clear: both;
    content: "";
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar {
        margin-bottom: 8vw;
        padding: 2.66667vw 1.33333vw 2.66667vw 2.66667vw;
        letter-spacing: .04em;
        font-size: 3.46667vw;
    }
}

.ie11 .mod-ttl-bar {
    padding: 1.5625rem 2.625rem 0.9375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar {
        padding: 3.46667vw 1.33333vw 1.86667vw;
    }
}

.edge .mod-ttl-bar {
    padding: 1.375rem 2.625rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-ttl-bar {
        padding: 2.66667vw 1.33333vw;
    }
}

@media screen and (max-width: 767px) {
    .windows.firefox .mod-ttl-bar {
        padding: 2.66667vw 1.33333vw;
    }
}

.mod-ttl-bar--border {
    position: relative;
    margin-bottom: 1.25rem;
    padding: 0 1.25rem 1rem;
    border-bottom: 2px solid #009944;
    background-color: transparent;
    color: #151515;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--border {
        margin-bottom: 8vw;
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
        border-bottom: 1px solid #009944;
    }
}

.ie11 .mod-ttl-bar--border {
    padding: 0 1.375rem 0.75rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--border {
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
    }
}

.edge .mod-ttl-bar--border {
    padding: 0 1.375rem 0.75rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-ttl-bar--border {
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
    }
}

.mod-ttl-bar--border-type2 {
    margin-bottom: 1.25rem;
    padding: 0 1.25rem 1rem 1.25rem;
    border-bottom: 2px solid #009944;
    background-color: transparent;
    color: #151515;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--border-type2 {
        margin-bottom: 4vw;
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
        border-bottom: 1px solid #009944;
    }
}

.ie11 .mod-ttl-bar--border-type2 {
    padding: 0 1.375rem 0.75rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--border-type2 {
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
    }
}

.edge .mod-ttl-bar--border-type2 {
    padding: 0 1.375rem 0.75rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-ttl-bar--border-type2 {
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
    }
}

.mod-ttl-bar--border-color1 {
    margin-bottom: 1.25rem;
    padding: 0 1.25rem 1rem 1.25rem;
    border-bottom: 1px solid #cccccc;
    background-color: transparent;
    color: #151515;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--border-color1 {
        margin-bottom: 4vw;
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
        border-bottom: 1px solid #cccccc;
    }
}

.ie11 .mod-ttl-bar--border-color1 {
    padding: 0 1.375rem 0.75rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--border-color1 {
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
    }
}

.edge .mod-ttl-bar--border-color1 {
    padding: 0 1.375rem 0.75rem 1.125rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-ttl-bar--border-color1 {
        padding: 0 2.66667vw 2.66667vw 2.66667vw;
    }
}

.mod-ttl-bar--normal {
    margin-bottom: 1.75rem;
    padding: 0 1.25rem;
    background-color: transparent;
    color: #151515;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--normal {
        margin-bottom: 8vw;
        padding: 0 2.66667vw;
    }
}

.ie11 .mod-ttl-bar--normal {
    padding: 0 1.375rem 0 1.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--normal {
        padding: 0 2.66667vw;
    }
}

.edge .mod-ttl-bar--normal {
    padding: 0 1.375rem 0 1.125rem;
}

@media screen and (max-width: 767px) {
    .edge .mod-ttl-bar--normal {
        padding: 0 2.66667vw;
    }
}

.mod-ttl-bar--ttl-bg {
    padding-left: 0;
}

.ie11 .mod-ttl-bar--ttl-bg {
    padding: 1.375rem 2.625rem 1.125rem 0;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--ttl-bg {
        padding: 2.66667vw 1.33333vw 2.66667vw 0;
    }
}

.edge .mod-ttl-bar--ttl-bg {
    padding: 1.375rem 2.625rem 1.125rem 0;
}

@media screen and (max-width: 767px) {
    .edge .mod-ttl-bar--ttl-bg {
        padding: 2.66667vw 1.33333vw 2.66667vw 0;
    }
}

.mod-ttl-bar--ttl-bg .mod-ttl-bar__label {
    padding: 0.6875rem 1.25rem 0.5625rem;
    background-color: #f8fbf1;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--ttl-bg .mod-ttl-bar__label {
        padding: 1.33333vw 2.66667vw 1.06667vw;
    }
}

.ie11 .mod-ttl-bar--ttl-bg .mod-ttl-bar__label {
    padding: 0.875rem 1.25rem 0.375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--ttl-bg .mod-ttl-bar__label {
        padding: 1.6vw 2.66667vw 0.8vw;
    }
}

.mod-ttl-bar--green {
    color: #009944;
}

.mod-ttl-bar--contact-high {
    margin-top: 6.25rem;
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--contact-high {
        margin-top: 10.66667vw;
        margin-bottom: 4vw;
    }
}

.mod-ttl-bar--contact-middle {
    margin-top: 5rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--contact-middle {
        margin-top: 9.33333vw;
    }
}

.mod-ttl-bar--contact-low {
    margin-top: 3.75rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--contact-low {
        margin-top: 6.66667vw;
    }
}

.mod-ttl-bar--contact-ex-low {
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--contact-ex-low {
        margin-top: 4vw;
    }
}

.mod-ttl-bar--center {
    text-align: center;
}

.mod-ttl-bar--indent {
    padding-left: 5.3125rem;
    text-indent: -3.3em;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar--indent {
        padding-left: 0;
        text-indent: 0;
    }
}

.ie11 .mod-ttl-bar--indent {
    padding-left: 5.3125rem;
    text-indent: -3.3em;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-ttl-bar--indent {
        padding-left: 0;
        text-indent: 0;
    }
}

.mod-ttl-bar__link {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    padding-right: 1rem;
    color: #009944;
    font-size: 1rem;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.mod-ttl-bar__link:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar__link:hover {
        opacity: 1;
    }
}

.ios .mod-ttl-bar__link:hover,
.android .mod-ttl-bar__link:hover {
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .mod-ttl-bar__link {
        top: 0.4vw;
        padding-right: 2.66667vw;
        font-size: 2.93333vw;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

/* ---------------------------------------------
*   mod-choice-block
--------------------------------------------- */
.mod-choice-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin-bottom: 3.75rem;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-choice-block {
        margin-bottom: 8vw;

        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.mod-choice-block__list-item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 12.54545%;
    border-top: 1px solid #009944;
    border-bottom: 1px solid #009944;
    border-left: 1px solid #009944;
    color: #00813d;
    -webkit-transition: color 300ms, background-color 300ms;
    transition: color 300ms, background-color 300ms;
}

@media screen and (max-width: 767px) {
    .mod-choice-block__list-item {
        margin-bottom: 2.66667vw;
        width: 22.93333vw;
    }
}

@media screen and (min-width: 768px) {
    .mod-choice-block__list-item:hover {
        background-color: #009944;
        color: #fff;
    }
}

@media screen and (min-width: 1025px) {
    .ios .mod-choice-block__list-item:hover,
    .android .mod-choice-block__list-item:hover {
        background-color: #009944;
        color: #fff;
    }
}

.mod-choice-block__list-item:last-of-type {
    border-right: 1px solid #009944;
}

@media screen and (max-width: 767px) {
    .mod-choice-block__list-item:last-of-type {
        border-right: auto;
    }
}

@media screen and (max-width: 767px) {
    .mod-choice-block__list-item:nth-of-type(4n) {
        border-right: 1px solid #009944;
    }
}

@media screen and (max-width: 767px) {
    .mod-choice-block__list-item:nth-child(4n+1):nth-last-child(-n+4),
    .mod-choice-block__list-item:nth-child(4n+1):nth-last-child(-n+4) ~ li {
        margin-bottom: 0;
    }
}

.mod-choice-block__list-item .is-current {
    background-color: #009944;
    color: #fff;
    pointer-events: none;
}

.mod-choice-block__link {
    display: block;
    padding: 1.25rem 0 1.1875rem;
    text-align: center;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-choice-block__link {
        padding: 2.66667vw;
        font-size: 3.46667vw;
    }
}

.ie11 .mod-choice-block__link {
    padding: 1.375rem 0 1.0625rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-choice-block__link {
        padding: 2.93333vw 0 2.4vw;
    }
}

/* ---------------------------------------------
*   mod-parts-container
--------------------------------------------- */
.mod-parts-container {
    margin-bottom: 5rem;
    margin-left: 2.125rem;
}

@media screen and (max-width: 767px) {
    .mod-parts-container {
        margin-bottom: 8vw;
        margin-left: 0;
    }
}

/* ---------------------------------------------
*   mod-side-line
--------------------------------------------- */
.mod-side-line {
    position: relative;
    margin-bottom: 2.5rem;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .mod-side-line {
        margin-bottom: 5.33333vw;
    }
}

.mod-side-line--green .mod-side-line__ttl {
    color: #009944;
    letter-spacing: .1em;
    font-weight: 600;
    font-size: 2.375rem;
    font-family: YuMincho,'Yu Mincho',serif;
}

@media screen and (max-width: 767px) {
    .mod-side-line--green .mod-side-line__ttl {
        font-size: 5.33333vw;
    }
}

.mod-side-line--green:before, .mod-side-line--green:after {
    background-color: #009944 !important;
}

.mod-side-line__ttl {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding: 0 4.54545%;
    background-color: #fff;
    font-weight: bold;
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
    .mod-side-line__ttl {
        padding: 0 4vw;
        font-size: 4.26667vw;
    }
}

.ie11 .mod-side-line__ttl {
    padding-top: 0.5rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-side-line__ttl {
        padding-top: 1.33333vw;
    }
}

.mod-side-line:before, .mod-side-line:after {
    position: absolute;
    top: 50%;
    width: 100%;
    height: 2px;
    background-color: #cccccc;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mod-side-line:before, .mod-side-line:after {
        height: 0.26667vw;
    }
}

.mod-side-line:before {
    left: 0;
}

.mod-side-line:after {
    right: 0;
}

/* ---------------------------------------------
*   mod-link-box
--------------------------------------------- */
.mod-link-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    clear: both;
    margin-top: 2.5rem;
    margin-left: 2.125rem;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mod-link-box {
        margin-top: 5.33333vw;
        margin-left: 0;
    }
}

.mod-link-box--top-space {
    margin-top: 1.5625rem;
}

@media screen and (max-width: 767px) {
    .mod-link-box--top-space {
        margin-top: 0;
    }
}

.mod-link-box--left-space {
    margin-left: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-link-box--left-space {
        margin-left: 0;
    }
}

.mod-link-box--space {
    margin-top: 1.5625rem;
    margin-left: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-link-box--space {
        margin-top: 0;
        margin-left: 0;
    }
}

.mod-link-box--space .mod-link-box__column {
    margin-bottom: 0;
}

.mod-link-box__column {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 1.75rem;
    width: 50%;
}

@media screen and (max-width: 767px) {
    .mod-link-box__column {
        margin-bottom: 4vw;
        width: 48%;
    }
}

.mod-link-box__column .mod-base-link--arrow {
    margin-left: 1em;
}

@media screen and (max-width: 767px) {
    .mod-link-box__column:nth-of-type(2n) {
        margin-left: 4%;
    }
}

.mod-link-box__column--single {
    width: 100%;
}

/* ---------------------------------------------
*   mod-base-link
--------------------------------------------- */
.mod-base-link {
    position: relative;
    border-bottom: 1px solid #00813d;
    color: #00813d;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-base-link {
        font-size: 3.2vw;
    }
}

.mod-base-link:hover {
    border-bottom: 1px solid transparent;
}

.mod-base-link[target="_blank"]:after {
    position: absolute;
    top: auto;
    right: -2.5rem;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 1140px) {
    .mod-base-link[target="_blank"]:after {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-link[target="_blank"]:after {
        right: -4.26667vw;
        margin-top: 1.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.ie11 .mod-base-link[target="_blank"]:after {
    width: 24px;
    height: 24px;
}

@media screen and (max-width: 1140px) {
    .ie11 .mod-base-link[target="_blank"]:after {
        margin-top: 2%;
        width: 16px;
        height: 16px;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-base-link[target="_blank"]:after {
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.mod-base-link--large {
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-base-link--large {
        font-size: 4vw;
    }
}

.mod-base-link--arrow {
    text-indent: -1em;
}

.mod-base-link--arrow:before {
    position: absolute;
    top: auto;
    left: 0;
    color: #151515;
    content: "\0226b";
}

@media screen and (max-width: 767px) {
    .mod-base-link--arrow:before {
        line-height: 2.2;
    }
}

.mod-base-link--no-click {
    border-bottom: 1px solid #fff;
    color: #151515;
    pointer-events: none;
}

.mod-base-link--bold {
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .firefox .mod-base-link--icon-right[target="_blank"]:after {
        right: auto;
    }
    .ie11 .mod-base-link--icon-right[target="_blank"]:after {
        right: auto;
    }
}

@media screen and (max-width: 767px) {
    .mod-base-link--lts {
        letter-spacing: -.01em;
    }
}

/* ---------------------------------------------
*   mod-list
--------------------------------------------- */
.mod-list {
    clear: both;
    margin: 3.125rem 0;
}

@media screen and (max-width: 767px) {
    .mod-list {
        margin: 10.66667vw 0;
    }
}

.mod-list--green .mod-list__item:before {
    display: inline-block;
    margin: auto 0.625rem auto auto;
    width: 0.6875rem;
    height: 0.6875rem;
    border-radius: 50%;
    background-color: #009944;
    content: "";
    vertical-align: middle;
    -webkit-transform: translateY(-20%);
    transform: translateY(-20%);
}

@media screen and (max-width: 767px) {
    .mod-list--green .mod-list__item:before {
        margin-right: 1.33333vw;
        width: 1.33333vw;
        height: 1.33333vw;
    }
}

.mod-list__item {
    margin-bottom: 1.25rem;
    margin-left: 1em;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-list__item {
        margin-bottom: 2.66667vw;
        font-size: 3.73333vw;
    }
}

.mod-list__item:before {
    content: "・";
}

.mod-list__item:last-of-type {
    margin-bottom: 0;
}

/* ---------------------------------------------
*   mod-number-list
--------------------------------------------- */
.mod-number-list {
    clear: both;
    margin: 3.125rem 0;
}

@media screen and (max-width: 767px) {
    .mod-number-list {
        margin: 10.66667vw 0;
    }
}

.mod-number-list__item {
    margin-bottom: 1.25rem;
    margin-left: 1.5em;
    list-style-type: decimal;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-number-list__item {
        margin-bottom: 2.66667vw;
        font-size: 3.73333vw;
    }
}

.mod-number-list__item:last-of-type {
    margin-bottom: 0;
}

/* ---------------------------------------------
*   mod-border-block
--------------------------------------------- */
.mod-border-block {
    border: 1px solid #cccccc;
}

.mod-border-block__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    border-bottom: 1px solid #cccccc;
    line-height: 1.75;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-border-block__contents {
        display: block;
    }
}

.mod-border-block__contents:last-of-type {
    border-bottom: none;
}

.mod-border-block__ttl {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.9375rem 2.625rem 0.9375rem 1.25rem;
    width: 37%;
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-border-block__ttl {
        padding: 2.66667vw 4vw;
        width: 100%;
        font-size: 3.46667vw;
    }
}

.ie11 .mod-border-block__ttl {
    letter-spacing: .02em;
}

.edge .mod-border-block__ttl {
    letter-spacing: .02em;
}

.mod-border-block__text {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.5625rem 2.5rem 1.875rem 2.8125rem;
    width: 63%;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-border-block__text {
        padding: 2.66667vw 4vw;
        width: 100%;
        font-size: 3.46667vw;
    }
}

/* ---------------------------------------------
*   mod-bg
--------------------------------------------- */
.mod-bg {
    margin: 2.5rem 0;
    padding: 2.9375rem 2.8125rem 2.625rem 3.4375rem;
    background-color: #f5f9eb;
}

.mod-bg:after {
    display: block;
    clear: both;
    content: "";
}

@media screen and (max-width: 767px) {
    .mod-bg {
        margin: 5.33333vw 0;
        padding: 8vw 5.33333vw;
    }
}

.mod-bg--w-margin {
    margin-bottom: 5.625rem;
}

@media screen and (max-width: 767px) {
    .mod-bg--w-margin {
        margin-bottom: 12vw;
    }
}

.mod-bg__ttl {
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 1.25rem;
}

.mod-bg__ttl--green {
    color: #009944;
}

@media screen and (max-width: 767px) {
    .mod-bg__ttl {
        font-size: 4.26667vw;
    }
}

.mod-bg__ttl + .mod-bg__lead {
    margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
    .mod-bg__ttl + .mod-bg__lead {
        margin-top: 4vw;
    }
}

.mod-bg__ttl + .mod-bg__image {
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-bg__ttl + .mod-bg__image {
        margin-top: 8vw;
    }
}

.mod-bg__lead {
    margin-top: 1.25rem;
    margin-bottom: 0.9375rem;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-bg__lead {
        margin-top: 4vw;
        margin-bottom: 4vw;
        font-size: 3.73333vw;
    }
}

.mod-bg__lead + .mod-bg__medium-ttl {
    clear: both;
}

.mod-bg__lead + .mod-bg__lead {
    clear: both;
}

.mod-bg__lead-right {
    text-align: right;
    font-weight: bold;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-bg__lead-right {
        font-size: 3.73333vw;
    }
}

.mod-bg__medium-ttl {
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-bg__medium-ttl {
        margin-top: 8vw;
        font-size: 3.73333vw;
    }
}

.mod-bg__medium-ttl--mt-none {
    margin-top: 0;
}

.mod-bg__medium-ttl--green {
    color: #009944;
}

.mod-bg__list {
    margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
    .mod-bg__list {
        margin-top: 4vw;
    }
}

.mod-bg__list--green {
    position: relative;
}

.mod-bg__list--green .mod-bg__list-item:before {
    display: inline-block;
    margin: auto 0.325rem auto auto;
    width: 0.6875rem;
    height: 0.6875rem;
    border-radius: 50%;
    background-color: #009944;
    content: "";
    vertical-align: middle;
    -webkit-transform: translateY(-20%);
    transform: translateY(-20%);
}

@media screen and (max-width: 767px) {
    .mod-bg__list--green .mod-bg__list-item:before {
        margin-right: 2.13333vw;
        width: 1.33333vw;
        height: 1.33333vw;
    }
}

.mod-bg__list--mt-0 {
    margin-top: 0;
}

.mod-bg__list--none .mod-bg__list-item:before {
    content: "";
}

.mod-bg__list-item {
    margin-left: 1em;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-bg__list-item {
        font-size: 3.46667vw;
    }
}

.mod-bg__list-item:before {
    content: "・";
}

.mod-bg__image {
    float: left;
    margin-right: 3.125rem;
    margin-bottom: 2.8125rem;
    max-width: 340px;
    width: 34%;
}

@media screen and (max-width: 767px) {
    .mod-bg__image {
        margin-right: 0;
        margin-bottom: 5.33333vw;
        max-width: 100%;
        width: 100%;
    }
}

.mod-bg__image + .mod-bg__lead {
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-bg__image + .mod-bg__lead {
        margin-top: 4vw;
    }
}

.mod-bg__image--700 {
    float: none;
    margin: 0 auto 2.8125rem;
    max-width: 700px;
    width: 70%;
}

@media screen and (max-width: 767px) {
    .mod-bg__image--700 {
        margin-right: 0;
        margin-bottom: 5.33333vw;
        max-width: 100%;
        width: 100%;
    }
}

.mod-bg__image img {
    width: 100%;
}

.mod-bg__bold-text {
    font-weight: bold;
}

/* ---------------------------------------------
*   mod-table
--------------------------------------------- */
.mod-table {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
}

.mod-table--harf th, .mod-table--harf td {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .mod-table {
        margin-top: 5.33333vw;
        margin-bottom: 5.33333vw;
    }
}

.mod-table table {
    width: 100%;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.mod-table tr:first-child th {
    padding: 1.875rem 1.25rem;
    border: 1px solid #cccccc;
    background-color: #009944;
    color: #fff;
    font-weight: bold;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-table tr:first-child th {
        padding: 2.66667vw;
        font-size: 3.73333vw;
    }
}

.mod-table th, .mod-table td {
    padding: 1.25rem;
    border: 1px solid #cccccc;
    border-collapse: collapse;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-table th, .mod-table td {
        padding: 2.66667vw;
        font-size: 3.46667vw;
        line-height: 1.5;
    }
}

.ie11 .mod-table th, .ie11 .mod-table td {
    padding: 1.5rem 1.25rem 1rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-table th, .ie11 .mod-table td {
        padding: 1.71429vw 1.42857vw 1.14286vw;
    }
}

.mod-table th {
    font-weight: bold;
}

.mod-table--color tr:nth-of-type(2n+1) {
    background-color: #f5f9eb;
}

.mod-table--color th {
    text-align: left;
}

.mod-table--color td {
    padding: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-table--color td {
        padding: 1.33333vw 2.66667vw;
    }
}

.mod-table--csr:first-of-type {
    margin-bottom: 5.625rem;
}

@media screen and (max-width: 767px) {
    .mod-table--csr:first-of-type {
        margin-bottom: 13.33333vw;
    }
}

.mod-table--csr td:first-of-type {
    max-width: 150px;
    width: 13.15789%;
}

@media screen and (max-width: 767px) {
    .mod-table--csr td:first-of-type {
        max-width: 100%;
        width: 20%;
    }
}

.mod-table--csr td:nth-of-type(2) {
    max-width: 690px;
    width: 60.52632%;
}

@media screen and (max-width: 767px) {
    .mod-table--csr td:nth-of-type(2) {
        max-width: 100%;
        width: 60%;
    }
}

.mod-table--csr td:nth-of-type(3) {
    max-width: 260px;
    width: 22.80702%;
}

@media screen and (max-width: 767px) {
    .mod-table--csr td:nth-of-type(3) {
        max-width: 100%;
        width: 20%;
    }
}

.mod-table__bg-color {
    background-color: #f5f9eb;
}

.mod-table__bg-color2 {
    background-color: #85c669;
    color: #fff;
}

.mod-table__bold {
    font-weight: bold;
}

/* ---------------------------------------------
*   mod-image-contents
--------------------------------------------- */
.mod-image-contents {
    margin-bottom: 2.25rem;
}

@media screen and (max-width: 767px) {
    .mod-image-contents {
        margin-bottom: 10.66667vw;
    }
}

.mod-image-contents__case {
    margin-bottom: 2.1875rem;
    margin-left: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__case {
        margin-bottom: 4vw;
        margin-left: 2.66667vw;
    }
}

.mod-image-contents__case--ml-0 {
    margin-left: 0;
}

.mod-image-contents__ttl {
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__ttl {
        margin-top: 5.33333vw;
        margin-bottom: 4vw;
        font-size: 3.73333vw;
    }
}

.mod-image-contents__lead {
    margin-top: 1.25rem;
    font-size: 1rem;
    line-height: 1.75;
}

.mod-image-contents__lead--right {
    margin-top: 0;
    text-align: right;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__lead {
        margin-top: 4vw;
        font-size: 3.46667vw;
    }
}

.mod-image-contents__parts {
    margin-top: 2.5rem;
    margin-bottom: 3.125rem;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__parts {
        margin-top: 5.33333vw;
        margin-bottom: 5.33333vw;
    }
}

.mod-image-contents__parts--700 {
    max-width: 700px;
    width: 63.63636%;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__parts--700 {
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-contents__parts--700 .mod-image-contents__item img {
    width: 100%;
}

.mod-image-contents__parts--700 .mod-image-contents__item iframe {
    width: 100%;
}

.mod-image-contents__parts--1100 {
    max-width: 1100px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__parts--1100 {
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-contents__parts--1100 .mod-image-contents__item {
    text-align: center;
}

.mod-image-contents__parts--1100 .mod-image-contents__item iframe {
    width: 100%;
}

.mod-image-contents__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
}

.mod-image-contents__item--border {
    padding-top: 1px;
    border: 1px solid #151515;
}

.mod-image-contents__item--border img {
    width: 100%;
}

.mod-image-contents__caption {
    margin-top: 1rem;
    margin-right: 4.71698%;
    margin-left: 4.71698%;
    letter-spacing: .06em;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-image-contents__caption {
        margin: 2.66667vw 1.33333vw;
        font-size: 3.2vw;
    }
}

/* ---------------------------------------------
*   mod-image-figure-contents
--------------------------------------------- */
.mod-image-figure-contents:after {
    display: block;
    clear: both;
    content: "";
}

.mod-image-figure-contents__case {
    margin-top: 1.25rem;
    margin-bottom: 2.5rem;
    margin-left: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__case {
        margin-top: 4vw;
        margin-bottom: 4vw;
        margin-left: 2.66667vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__case--m-space {
        margin-left: 0;
    }
}

.mod-image-figure-contents__detail {
    margin-top: 2.5rem;
    margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__detail {
        margin-top: 5.33333vw;
        margin-bottom: 10.66667vw;
    }
}

.mod-image-figure-contents__lead {
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__lead {
        font-size: 3.46667vw;
    }
}

.mod-image-figure-contents__lead--m-space {
    margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__lead--m-space {
        margin-top: 4vw;
    }
}

.mod-image-figure-contents__link {
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

@media screen and (min-width: 768px) {
    .mod-image-figure-contents__link:hover {
        opacity: .8;
    }
}

.mod-image-figure-contents__wrap {
    margin-right: 3.125rem;
    margin-bottom: 2.5rem;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__wrap {
        margin-right: 0;
        margin-bottom: 5.33333vw;
        max-width: 100%;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__detail {
        margin-bottom: 10.66667vw;
    }
}

.mod-image-figure-contents__parts {
    float: left;
    margin-right: 3.125rem;
    margin-bottom: 3.125rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__parts {
        float: none;
        margin-right: 0;
        margin-bottom: 5.33333vw;
    }
}

.mod-image-figure-contents__parts--middle {
    max-width: 530px;
    width: 48.18182%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__parts--middle {
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-figure-contents__parts--small {
    max-width: 340px;
    width: 30.90909%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__parts--small {
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-figure-contents__parts--reverse {
    float: right;
    margin-right: 0;
    margin-left: 3.125rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__parts--reverse {
        float: none;
        margin-left: 0;
    }
}

.mod-image-figure-contents__item {
    width: 100%;
}

.mod-image-figure-contents__item img {
    width: 100%;
}

.mod-image-figure-contents__caption {
    margin-top: 1rem;
    margin-right: 4.71698%;
    margin-left: 4.71698%;
    letter-spacing: .06em;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__caption {
        margin: 2.66667vw 1.33333vw;
        font-size: 3.2vw;
    }
}

.mod-image-figure-contents__column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.5rem;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__column {
        display: block;
        margin-top: 8vw;
    }
}

.mod-image-figure-contents__column .mod-image-figure-contents__parts {
    float: none;
    margin-right: 3.63636%;
    max-width: 530px;
    width: 48.18182%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__column .mod-image-figure-contents__parts {
        margin-right: 0;
        margin-bottom: 5.33333vw;
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-figure-contents__column .mod-image-figure-contents__parts:nth-of-type(2n) {
    margin-right: 0;
}

.mod-image-figure-contents__column .mod-image-figure-contents__parts .mod-image-figure-contents__item--middle {
    width: 100%;
}

.mod-image-figure-contents__harf {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    float: left;
    margin-right: 3.125rem;
    margin-bottom: 3.125rem;
    max-width: 530px;
    width: 48.18182%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__harf {
        margin-right: 0;
        margin-bottom: 5.33333vw;
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-figure-contents__harf--single {
    max-width: 255px;
    width: 23.18182%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__harf--single {
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-figure-contents__harf-inner {
    margin-right: 1.25rem;
    max-width: 255px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__harf-inner {
        margin-right: 4vw;
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-figure-contents__harf-inner:last-of-type {
    margin-right: 0;
}

.mod-image-figure-contents__line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.5rem;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__line {
        margin-top: 5.33333vw;
    }
}

.mod-image-figure-contents__line--mb-space {
    margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__line--mb-space {
        margin-bottom: 10.66667vw;
    }
}

.mod-image-figure-contents__line-item {
    margin-right: 1.81818%;
    margin-bottom: 1.25rem;
    width: 23.63636%;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__line-item {
        margin-right: 4.34783%;
        margin-bottom: 4vw;
        width: 47.82609%;
    }
}

.mod-image-figure-contents__line-item:nth-of-type(4n) {
    margin-right: 0;
}

.mod-image-figure-contents__line-item:nth-child(4n+1):nth-last-child(-n+4),
.mod-image-figure-contents__line-item:nth-child(4n+1):nth-last-child(-n+4) ~ div {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__line-item:nth-child(4n+1):nth-last-child(-n+4),
    .mod-image-figure-contents__line-item:nth-child(4n+1):nth-last-child(-n+4) ~ div {
        margin-bottom: 4vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__line-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .mod-image-figure-contents__line-item:nth-child(2n+1):nth-last-child(-n+2),
    .mod-image-figure-contents__line-item:nth-child(2n+1):nth-last-child(-n+2) ~ .mod-image-figure-contents__line-item {
        margin-bottom: 0 !important;
    }
}

.mod-image-figure-contents__line-item img {
    width: 100%;
}

/* ---------------------------------------------
*   mod-box-column
--------------------------------------------- */
.mod-box-column {
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-box-column {
        margin-top: 5.33333vw;
    }
}

.mod-box-column:after {
    display: block;
    clear: both;
    content: "";
}

.mod-box-column__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mod-box-column__list {
        display: block;
    }
}

.mod-box-column__list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    clear: both;
    margin-right: 3.63636%;
    margin-bottom: 1.875rem;
    width: 45.90909%;
}

@media screen and (max-width: 767px) {
    .mod-box-column__list-item {
        display: block;
        margin-bottom: 5.33333vw;
        width: 100%;
    }
}

.mod-box-column__list-item:nth-of-type(2n) {
    margin-right: 0;
}

.mod-box-column__list-item:nth-child(2n+1):nth-last-child(-n+2),
.mod-box-column__list-item:nth-child(2n+1):nth-last-child(-n+2) ~ li {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .mod-box-column__list-item:nth-child(2n+1):nth-last-child(-n+2),
    .mod-box-column__list-item:nth-child(2n+1):nth-last-child(-n+2) ~ li {
        margin-bottom: 5.33333vw;
    }
}

@media screen and (max-width: 767px) {
    .mod-box-column__list-item:last-of-type {
        margin-bottom: 0 !important;
    }
}

.mod-box-column__thumb {
    margin-right: 3.7037%;
    max-width: 140px;
    width: 25.92593%;
}

@media screen and (max-width: 767px) {
    .mod-box-column__thumb {
        float: left;
        margin-right: 3.46667vw;
        margin-bottom: 4vw;
        max-width: 100%;
        width: 40%;
    }
}

.mod-box-column__thumb img {
    width: 100%;
}

.mod-box-column__inner {
    max-width: 380px;
    width: 70.37037%;
}

@media screen and (max-width: 767px) {
    .mod-box-column__inner {
        max-width: 100%;
        width: auto;
    }
}

.mod-box-column__inner--full {
    max-width: 100%;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .mod-box-column__inner--full {
        width: auto;
    }
}

.mod-box-column__ttl {
    margin-bottom: 0.75rem;
    font-weight: bold;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-box-column__ttl {
        margin-bottom: 2.66667vw;
        font-size: 3.73333vw;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-box-column__ttl {
        line-height: 2;
    }
}

.mod-box-column__link {
    position: relative;
    padding-bottom: 0.0625rem;
    border-bottom: 1px solid #009944;
    color: #009944;
}

@media screen and (max-width: 767px) {
    .mod-box-column__link {
        padding-bottom: 0;
    }
}

.ie11 .mod-box-column__link {
    padding-bottom: 0;
}

.mod-box-column__link:hover {
    border-bottom: 1px solid transparent;
}

.mod-box-column__link--click-off {
    border-bottom: none;
    color: #151515;
    pointer-events: none;
}

.mod-box-column__link[target="_blank"]:after {
    position: absolute;
    top: auto;
    right: -2.25rem;
    margin-top: 0.3125rem;
    width: 16px;
    height: 16px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 1140px) {
    .mod-box-column__link[target="_blank"]:after {
        width: 14px;
        height: 14px;
    }
}

@media screen and (max-width: 767px) {
    .mod-box-column__link[target="_blank"]:after {
        right: auto;
        margin-top: 0.8vw;
        margin-left: 2.66667vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-box-column__link[target="_blank"]:after {
        margin-top: 1.33333vw;
    }
}

.mod-box-column__link-2 {
    position: relative;
    padding-bottom: 0.0625rem;
    border-bottom: 1px solid #009944;
    color: #009944;
}

@media screen and (max-width: 767px) {
    .mod-box-column__link-2 {
        padding-bottom: 0.26667vw;
        word-break: break-all;
    }
}

.ie11 .mod-box-column__link-2 {
    border-bottom: none;
    text-decoration: underline;
}

.ie11 .mod-box-column__link-2:hover {
    border-bottom: none;
    text-decoration: none;
}

.mod-box-column__link-2:hover {
    border-bottom: 1px solid transparent;
}

.mod-box-column__text {
    font-size: 1rem;
    line-height: 1.7;
}

@media screen and (max-width: 767px) {
    .mod-box-column__text {
        font-size: 3.46667vw;
    }
}

.mod-box-column__text--link {
    margin-left: 1em;
}

@media screen and (max-width: 767px) {
    .mod-box-column__text--link {
        margin-left: 43.46667vw;
    }
}

.ie11 .mod-box-column__text--link {
    line-height: 2;
}

.mod-box-column__text--link .mod-base-link[target="_blank"]:after {
    position: absolute;
    top: auto;
    right: auto;
    margin-top: 0.3125rem;
    margin-left: 0.3125rem;
    width: 16px;
    height: 16px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 1140px) {
    .mod-box-column__text--link .mod-base-link[target="_blank"]:after {
        width: 14px;
        height: 14px;
    }
}

@media screen and (max-width: 767px) {
    .mod-box-column__text--link .mod-base-link[target="_blank"]:after {
        right: -5.33333vw;
        margin-top: 1.06667vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

/* ---------------------------------------------
*   mod-pager
--------------------------------------------- */
.mod-pager {
    margin: 5.9375rem 0;
}

@media screen and (max-width: 767px) {
    .mod-pager {
        margin: 10.66667vw 0;
    }
}

.mod-pager__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    margin: 0 auto;
    max-width: 730px;
    width: 66.36364%;

    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .mod-pager__container {
        max-width: 100%;
        width: 100%;
    }
}

.mod-pager__parts {
    width: 50%;
}

.mod-pager__parts--back {
    margin-right: auto;
}

.mod-pager__parts--back .mod-pager__link {
    padding-left: 3.5rem;
}

@media screen and (max-width: 767px) {
    .mod-pager__parts--back .mod-pager__link {
        padding-left: 8vw;
    }
}

.mod-pager__parts--back .mod-pager__link:before {
    left: 0;
    background: url(/img/common/page_left.svg) 0 0 no-repeat;
    background-size: 100% 100%;
}

.mod-pager__parts--next {
    margin-left: auto;
}

.mod-pager__parts--next .mod-pager__link {
    padding-right: 3.5rem;
    text-align: right;
}

@media screen and (max-width: 767px) {
    .mod-pager__parts--next .mod-pager__link {
        padding-right: 8vw;
    }
}

.mod-pager__parts--next .mod-pager__link:before {
    right: 0;
    background: url(/img/common/page_right.svg) 0 0 no-repeat;
    background-size: 100% 100%;
}

.mod-pager__link {
    position: relative;
    display: block;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
}

.mod-pager__link:before, .mod-pager__link:after {
    position: absolute;
    top: 50%;
    width: 34px;
    height: 34px;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .mod-pager__link:before, .mod-pager__link:after {
        width: 26px;
        height: 26px;
    }
}

@media screen and (max-width: 767px) {
    .mod-pager__link:before, .mod-pager__link:after {
        width: 5.33333vw;
        height: 5.33333vw;
    }
}

.ie11 .mod-pager__link:before, .ie11 .mod-pager__link:after {
    width: 32px;
    height: 32px;
}

@media screen and (max-width: 1140px) {
    .ie11 .mod-pager__link:before, .ie11 .mod-pager__link:after {
        width: 24px;
        height: 24px;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-pager__link:before, .ie11 .mod-pager__link:after {
        width: 28px;
        height: 28px;
    }
}

.edge .mod-pager__link:before, .edge .mod-pager__link:after {
    width: 32px;
    height: 32px;
}

@media screen and (max-width: 1140px) {
    .edge .mod-pager__link:before, .edge .mod-pager__link:after {
        width: 24px;
        height: 24px;
    }
}

@media screen and (max-width: 767px) {
    .edge .mod-pager__link:before, .edge .mod-pager__link:after {
        width: 28px;
        height: 28px;
    }
}

.mod-pager__link:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .mod-pager__link:hover {
        opacity: 1;
    }
}

.ios .mod-pager__link:hover,
.android .mod-pager__link:hover {
    opacity: 1;
}

.mod-pager__text {
    font-weight: bold;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-pager__text {
        font-size: 3.2vw;
    }
}

.mod-pager__color-text {
    color: #00813d;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-pager__color-text {
        font-size: 2.66667vw;
    }
}

/* ---------------------------------------------
*   mod-lead-normal
--------------------------------------------- */
.mod-lead-normal {
    margin-bottom: 2.5rem;
    padding: 0 0.625rem;
    font-size: 1rem;
    line-height: 1.75;
}

.mod-lead-normal:after {
    display: block;
    clear: both;
    content: "";
}

.mod-lead-normal--center {
    text-align: center;
}

.mod-lead-normal--green {
    color: #009944;
}

.mod-lead-normal--bold {
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .mod-lead-normal {
        margin-bottom: 5.33333vw;
        padding: 0;
        font-size: 3.73333vw;
    }
}

.mod-lead-normal__link {
    position: relative;
    margin-right: 4rem;
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

@media screen and (max-width: 767px) {
    .mod-lead-normal__link {
        margin-right: 5.33333vw;
    }
}

.mod-lead-normal__link:hover {
    border-bottom: 1px solid transparent;
}

.mod-lead-normal__link[target="_blank"]:after {
    position: absolute;
    top: auto;
    right: -2.875rem;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 1140px) {
    .mod-lead-normal__link[target="_blank"]:after {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mod-lead-normal__link[target="_blank"]:after {
        right: -4.26667vw;
        margin-top: 1.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.ie11 .mod-lead-normal__link[target="_blank"]:after {
    width: 24px;
    height: 24px;
}

@media screen and (max-width: 1140px) {
    .ie11 .mod-lead-normal__link[target="_blank"]:after {
        margin-top: 2%;
        width: 16px;
        height: 16px;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .mod-lead-normal__link[target="_blank"]:after {
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

/* ---------------------------------------------
*   mod-lead-contents
--------------------------------------------- */
.mod-lead-contents {
    margin-top: 2.5rem;
    padding: 0 0.625rem;
    font-size: 1rem;
    line-height: 1.75;
}

.mod-lead-contents:after {
    display: block;
    clear: both;
    content: "";
}

@media screen and (max-width: 767px) {
    .mod-lead-contents {
        margin-top: 5.33333vw;
        padding: 0;
        font-size: 3.73333vw;
    }
}

.mod-lead-contents__link {
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

.mod-lead-contents__link:hover {
    border-bottom: 1px solid transparent;
}

/* ---------------------------------------------
*   parts-list-inner
--------------------------------------------- */
.parts-list-inner {
    margin-bottom: 5.75rem;
}

@media screen and (max-width: 767px) {
    .parts-list-inner {
        margin-bottom: 13.33333vw;
    }
}

/* ---------------------------------------------
*   mod-image-txt-block
--------------------------------------------- */
.mod-image-txt-block {
    margin-top: 2.5rem;
}

.mod-image-txt-block:after {
    display: block;
    clear: both;
    content: "";
}

@media screen and (max-width: 767px) {
    .mod-image-txt-block {
        margin-top: 8vw;
    }
}

.mod-image-txt-block__detail {
    margin-top: 2.5rem;
    padding-bottom: 3.125rem;
}

@media screen and (max-width: 767px) {
    .mod-image-txt-block__detail {
        margin-top: 8vw;
        padding-bottom: 4vw;
    }
}

.mod-image-txt-block__lead {
    font-size: 1rem;
    line-height: 1.75;
}

.mod-image-txt-block__lead--bold {
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-image-txt-block__lead {
        font-size: 3.46667vw;
    }
    .mod-image-txt-block__lead--bold {
        font-size: 3.46667vw;
    }
}

.mod-image-txt-block__parts {
    float: left;
    margin-right: 3.125rem;
    padding-bottom: 0.625rem;
    max-width: 340px;
    width: 30.90909%;
}

@media screen and (max-width: 767px) {
    .mod-image-txt-block__parts {
        float: none;
        margin-right: 0;
        padding-bottom: 0;
        max-width: 100%;
        width: 100%;
    }
}

.mod-image-txt-block__item {
    width: 100%;
}

.mod-image-txt-block__item img {
    width: 100%;
}

.mod-image-txt-block__link {
    display: block;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
}

.mod-image-txt-block__link:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .mod-image-txt-block__link:hover {
        opacity: 1;
    }
}

.ios .mod-image-txt-block__link:hover,
.android .mod-image-txt-block__link:hover {
    opacity: 1;
}

/* ---------------------------------------------
*   mod-harf-ttl-area
--------------------------------------------- */
.mod-harf-ttl-area {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
    .mod-harf-ttl-area {
        margin-top: 8vw;
        margin-bottom: 5.33333vw;
    }
}

.mod-harf-ttl-area__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mod-harf-ttl-area__inner {
        display: block;
    }
}

.mod-harf-ttl-area__item {
    margin-top: 2.5rem;
    margin-right: 5.09091%;
    max-width: 522px;
    width: 47.45455%;
}

@media screen and (max-width: 767px) {
    .mod-harf-ttl-area__item {
        margin-top: 8vw;
        margin-right: 0;
        max-width: 100%;
        width: 100%;
    }
}

.mod-harf-ttl-area__item:nth-child(1) {
    margin-top: 0;
}

.mod-harf-ttl-area__item:nth-child(2) {
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    .mod-harf-ttl-area__item:nth-child(2) {
        margin-top: 8vw;
    }
}

.mod-harf-ttl-area__item:nth-of-type(2n) {
    margin-right: 0;
}

.mod-harf-ttl-area__lead {
    margin-top: 1.25rem;
    padding-left: 0.625rem;
    letter-spacing: .08em;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .mod-harf-ttl-area__lead {
        margin-top: 4vw;
        padding-left: 2.66667vw;
        font-size: 3.46667vw;
    }
}

/* ---------------------------------------------
*   mod-link-list
--------------------------------------------- */
.mod-link-list {
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
    padding-left: 2.1875rem;
}

@media screen and (max-width: 767px) {
    .mod-link-list {
        margin-top: 8vw;
        margin-bottom: 8vw;
        padding-left: 1em;
    }
}

/* ---------------------------------------------
*   mod-link-list-second
--------------------------------------------- */
.mod-link-list-second {
    margin-top: 2.1875rem;
    padding-left: 3.75rem;
}

@media screen and (max-width: 767px) {
    .mod-link-list-second {
        margin-top: 4vw;
        padding-left: 2em;
    }
}

.mod-link-list-second__item {
    margin-bottom: 1.75rem;
    margin-left: 1em;
}

@media screen and (max-width: 767px) {
    .mod-link-list-second__item {
        margin-bottom: 2.66667vw;
        margin-left: 0;
    }
}

/* ---------------------------------------------
*   mod-link-list-third
--------------------------------------------- */
.mod-link-list-third {
    margin-top: 1.875rem;
    padding-left: 3.75rem;
}

@media screen and (max-width: 767px) {
    .mod-link-list-third {
        margin-top: 2.66667vw;
        padding-left: 1em;
    }
}

.mod-link-list-third__item {
    margin-bottom: 1.5625rem;
}

@media screen and (max-width: 767px) {
    .mod-link-list-third__item {
        margin-bottom: 4vw;
    }
}

/* ---------------------------------------------
*   mod-after-txt
--------------------------------------------- */
.mod-after-txt {
    margin-left: 4.0625rem;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .mod-after-txt {
        margin-left: 4.66667vw;
        font-size: 3.46667vw;
    }
}

/* ---------------------------------------------
*   mod-note-list
--------------------------------------------- */
.mod-note-list {
    margin-top: 0.9375rem;
    margin-left: 1.25rem;
}

@media screen and (max-width: 767px) {
    .mod-note-list {
        margin-top: 2.66667vw;
        margin-left: 0;
    }
}

.mod-note-list__item {
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .mod-note-list__item {
        font-size: 2.66667vw;
    }
}

.ie11 .mod-note-list__item {
    margin-bottom: 0.1875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .mod-note-list__item {
        margin-bottom: 0.4vw;
    }
}

.mod-note-list__link {
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

.mod-note-list__link:hover {
    border-bottom: 1px solid #fff;
}

/* ---------------------------------------------
*   mod-txt-set
--------------------------------------------- */
.mod-txt-set {
    margin-top: 1.875rem;
    border-bottom: 2px solid #cccccc;
}

@media screen and (max-width: 767px) {
    .mod-txt-set {
        margin-top: 8vw;
    }
}

.mod-txt-set__parts {
    padding-bottom: 2rem;
}

@media screen and (max-width: 767px) {
    .mod-txt-set__parts {
        padding-bottom: 5.33333vw;
    }
}

.mod-txt-set__ttl {
    margin-bottom: 1rem;
    font-weight: bold;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mod-txt-set__ttl {
        margin-bottom: 2.66667vw;
        font-size: 3.73333vw;
    }
}

.mod-txt-set__lead {
    font-size: 1rem;
    line-height: 1.7;
}

@media screen and (max-width: 767px) {
    .mod-txt-set__lead {
        font-size: 3.46667vw;
    }
}

.mod-txt-set__link {
    border-bottom: 1px solid #009944;
    color: #009944;
}

.mod-txt-set__link:hover {
    border-bottom: 1px solid transparent;
}

.ie11 .mod-txt-set__link {
    border-bottom: none;
    text-decoration: underline;
}

.ie11 .mod-txt-set__link:hover {
    border-bottom: none;
    text-decoration: none;
}

/* ---------------------------------------------
*   groupページ
--------------------------------------------- */
/* ---------------------------------------------
*   contents-wrap
--------------------------------------------- */
.contents-wrap {
    margin-top: 2.8125rem;
    background-color: #f4f4f4;
}

@media screen and (max-width: 767px) {
    .contents-wrap {
        margin-top: 12vw;
    }
}

/* ---------------------------------------------
*   bar-list
--------------------------------------------- */
.bar-list {
    margin-top: 2.125rem;
}

@media screen and (max-width: 767px) {
    .bar-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-top: 6.66667vw;

        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.bar-list__item {
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
    .bar-list__item {
        margin-bottom: 10.66667vw;
        width: 100%;
    }
}

.bar-list__item:last-of-type {
    margin-bottom: 0;
}

.bar-list__link {
    display: block;
    background-color: #009944;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;
}

@media screen and (min-width: 768px) {
    .bar-list__link:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .bar-list__link:hover,
    .android .bar-list__link:hover {
        background-color: #beda79;
    }
}

.bar-list__link:hover .bar-list__detail:after {
    -webkit-transform: translate3d(8%, 0, 0);
    transform: translate3d(8%, 0, 0);
}

@media screen and (max-width: 767px) {
    .bar-list__link:hover .bar-list__detail:after {
        -webkit-transform: none;
        transform: none;
    }
}

.bar-list__link--no-click:hover {
    background-color: #009944 !important;
}

.bar-list__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .bar-list__inner {
        display: block;
    }
}

.bar-list__thumbnail {
    width: 29.09091%;
}

@media screen and (max-width: 767px) {
    .bar-list__thumbnail {
        width: 100%;
    }
}

.bar-list__thumbnail img {
    width: 100%;
}

.bar-list__box {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.125rem 2.5rem 1.25rem;
    width: 70.90909%;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .bar-list__box {
        padding: 5.33333vw 8vw 10.66667vw;
        width: 100%;
    }
}

.bar-list__box-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.5rem;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .bar-list__box-inner {
        display: inline-block;
        margin-top: 0;
    }
}

.bar-list__box-inner-link {
    position: relative;
    display: inline-block;
    margin: 0 2.375rem 1.25rem 1.25rem;
    border-bottom: 1px solid #fff;
    font-size: 1.25rem;
    line-height: 1.2;
}

@media screen and (max-width: 767px) {
    .bar-list__box-inner-link {
        margin: 0 3.33333vw 2.66667vw 4vw;
        font-size: 3.46667vw;
    }
}

.ie11 .bar-list__box-inner-link {
    margin: 0 2rem 1.25rem 1rem;
}

@media screen and (max-width: 767px) {
    .ie11 .bar-list__box-inner-link {
        margin: 0 3.33333vw 2.66667vw 4vw;
    }
}

.bar-list__box-inner-link:before {
    position: absolute;
    top: 60%;
    left: -1.25rem;
    color: #fff;
    content: "\0226b";
    font-size: 0.875rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .bar-list__box-inner-link:before {
        top: 50%;
        left: -4vw;
        font-size: 2.93333vw;
    }
}

.bar-list__box-inner-link:last-of-type {
    margin-right: 0;
}

.bar-list__box-inner-link:hover {
    border-bottom: 1px solid transparent;
}

@media screen and (max-width: 767px) {
    .bar-list__box-inner-link:hover {
        border-bottom: 1px solid #fff;
    }
}

.bar-list__ttl {
    margin-bottom: 0.875rem;
    letter-spacing: .12em;
    font-weight: bold;
    font-size: 1.75rem;
}

@media screen and (max-width: 767px) {
    .bar-list__ttl {
        font-size: 5.06667vw;
    }
}

.bar-list__text {
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .bar-list__text {
        font-size: 3.46667vw;
    }
}

.bar-list__detail {
    position: absolute;
    right: 8.3125rem;
    bottom: 1.3125rem;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .bar-list__detail {
        right: 26.66667vw;
        bottom: 2.66667vw;
        font-size: 2.93333vw;
    }
}

.bar-list__detail:after {
    position: absolute;
    top: 0.125rem;
    left: 137.17949%;
    width: 60px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 767px) {
    .bar-list__detail:after {
        left: 20vw;
        width: 16vw;
        height: 2.66667vw;
    }
}

.ie11 .bar-list__detail:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .ie11 .bar-list__detail:after {
        height: 2.66667vw;
    }
}

.edge .bar-list__detail:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .edge .bar-list__detail:after {
        height: 2.66667vw;
    }
}

/* ---------------------------------------------
*   /group/message/ページ
--------------------------------------------- */
/* ---------------------------------------------
*   l-mv-block
--------------------------------------------- */
.l-mv-block {
    position: relative;
}

.l-mv-block__image {
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .l-mv-block__image {
        height: 53.33333vw;
    }
}

@media screen and (max-width: 767px) {
    .l-mv-block__image--small {
        height: 45.33333vw;
    }
}

.l-mv-block__inner {
    position: absolute;
    bottom: 2.3125rem;
    left: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1140px;
    width: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .l-mv-block__inner {
        bottom: 4vw;
    }
}

.l-mv-block__box {
    position: absolute;
    right: 20px;
    bottom: 0;
}

@media screen and (max-width: 767px) {
    .l-mv-block__box {
        right: 4vw;
    }
}

.l-mv-block__sub {
    margin-bottom: 1.5rem;
    font-size: 1.25rem;
    line-height: 1.8;
}

@media screen and (max-width: 767px) {
    .l-mv-block__sub {
        margin-bottom: 4vw;
        font-size: 2.93333vw;
    }
}

.l-mv-block__main {
    font-weight: bold;
    font-size: 1.875rem;
}

@media screen and (max-width: 767px) {
    .l-mv-block__main {
        letter-spacing: .06em;
        font-size: 4.53333vw;
    }
}

/* ---------------------------------------------
*   l-main-block
--------------------------------------------- */
.l-main-block {
    margin-top: 6.25rem;
}

@media screen and (max-width: 767px) {
    .l-main-block {
        margin-top: 10vw;
    }
}

/* ---------------------------------------------
*   l-inner-block
--------------------------------------------- */
.l-inner-block {
    margin: 4.5rem 0 6rem 0.625rem;
}

@media screen and (max-width: 767px) {
    .l-inner-block {
        margin: 10vw 0 12.8vw;
    }
}

.l-inner-block__text {
    margin-bottom: 4rem;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .l-inner-block__text {
        margin-bottom: 8vw;
        font-size: 3.46667vw;
    }
}

.l-inner-block__text:last-of-type {
    margin-bottom: 0;
}

/* ---------------------------------------------
*   /group/group/ページ
--------------------------------------------- */
/* ---------------------------------------------
*   contents-all
--------------------------------------------- */
.contents-all {
    position: relative;
}

/* ---------------------------------------------
*   l-page-item
--------------------------------------------- */
.l-page-item--first {
    margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
    .l-page-item--first {
        margin-bottom: 10.66667vw;
    }
}

.l-page-item__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 1.875rem;
    padding-top: 2.1875rem;
    border-top: 1px solid #c7c7c7;
}

@media screen and (max-width: 767px) {
    .l-page-item__contents {
        display: block;
        margin-bottom: 8vw;
        padding-top: 5.33333vw;
    }
}

.l-page-item__contents--first {
    padding-top: 0;
    border-top: none;
}

.l-page-item__contents--second {
    margin-bottom: 0;
    margin-left: auto;
    padding: 1.1875rem 0 1.75rem;
    max-width: 1000px;
    width: 90.90909%;
    border-top: 1px solid #c7c7c7;
}

@media screen and (max-width: 767px) {
    .l-page-item__contents--second {
        padding: 5.33333vw 0;
        max-width: 100%;
        width: 90%;
    }
}

.l-page-item__contents--second .l-page-item__main {
    max-width: 468px;
    width: 46.8%;
}

@media screen and (max-width: 767px) {
    .l-page-item__contents--second .l-page-item__main {
        max-width: 100%;
        width: 100%;
    }
}

.l-page-item__contents--second .l-page-item__detail {
    max-width: 532px;
    width: 53.2%;
}

@media screen and (max-width: 767px) {
    .l-page-item__contents--second .l-page-item__detail {
        max-width: 100%;
        width: 100%;
    }
}

.l-page-item__main {
    margin-top: 0.5rem;
    max-width: 567px;
    width: 51.54545%;
}

@media screen and (max-width: 767px) {
    .l-page-item__main {
        max-width: 100%;
        width: 100%;
    }
}

.l-page-item__link {
    position: relative;
    border-bottom: 1px solid #00813d;
    color: #00813d;
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__link {
        font-size: 4vw;
    }
}

.l-page-item__link--no-wrap {
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .l-page-item__link--no-wrap {
        white-space: normal;
    }
}

.l-page-item__link[target="_blank"]:after {
    position: absolute;
    top: 50%;
    right: -2.625rem;
    width: 27px;
    height: 27px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .l-page-item__link[target="_blank"]:after {
        width: 20px;
        height: 20px;
    }
}

@media screen and (max-width: 767px) {
    .l-page-item__link[target="_blank"]:after {
        top: auto;
        right: -8vw;
        margin-top: 1.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
        -webkit-transform: none;
        transform: none;
    }
}

.l-page-item__link:hover {
    border-bottom: 1px solid transparent;
}

.l-page-item__normal {
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__normal {
        font-size: 4vw;
    }
}

.l-page-item__sub {
    margin-top: 0.875rem;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__sub {
        margin-top: 4vw;
        font-size: 3.73333vw;
    }
}

.l-page-item__sub-link {
    margin-right: 1.5rem;
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

.l-page-item__sub-link:hover {
    border-bottom: 1px solid transparent;
}

.l-page-item__detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 533px;
    width: 48.45455%;
}

@media screen and (max-width: 767px) {
    .l-page-item__detail {
        display: block;
        margin-top: 4vw;
        max-width: 100%;
        width: 100%;
    }
}

.l-page-item__detail--m-space {
    margin-top: 3.4375rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__detail--m-space {
        margin-top: 4vw;
    }
}

.l-page-item__detail-link {
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

.l-page-item__detail-link:hover {
    border-bottom: 1px solid transparent;
}

.l-page-item__box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.5rem 0;
    width: 7.25rem;
    background-color: #f5f9eb;
    text-align: center;
    font-weight: bold;
    font-size: 1rem;

    -ms-flex-item-align: baseline;
    align-self: baseline;
}

@media screen and (max-width: 767px) {
    .l-page-item__box {
        display: inline-block;
        padding: 1.33333vw 0;
        width: 26.66667vw;
        font-size: 3.73333vw;
    }
}

.ie11 .l-page-item__box {
    padding: 0.625rem 0 0.375rem;
}

.l-page-item__detail-txt {
    margin-top: 0.5rem;
    margin-left: 5.25328%;
    max-width: 388px;
    width: 72.7955%;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__detail-txt {
        margin-top: 2vw;
        margin-left: 0;
        max-width: 100%;
        width: 100%;
        font-size: 3.73333vw;
    }
}

.l-page-item__bg-contents {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 1.875rem;
    margin-left: auto;
    padding: 1.375rem 1.875rem 1.875rem;
    max-width: 956px;
    width: 86.90909%;
    background-color: #f7f7f7;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-contents {
        margin-bottom: 8vw;
        margin-left: 0;
        padding: 4.66667vw 3.33333vw;
        max-width: 100%;
        width: 100%;
    }
}

.ie11 .l-page-item__bg-contents {
    padding: 1.375rem 1.875rem 1.75rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-page-item__bg-contents {
        padding: 4.66667vw 3.33333vw;
    }
}

.l-page-item__bg-ttl {
    margin-bottom: 1rem;
    font-weight: bold;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-ttl {
        margin-bottom: 2.66667vw;
        font-size: 4vw;
    }
}

.ie11 .l-page-item__bg-ttl {
    margin-bottom: 0.875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-page-item__bg-ttl {
        margin-bottom: 2.66667vw;
    }
}

.l-page-item__bg-txt {
    padding: 0.625rem 1.125rem;
    background-color: #fff;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-txt {
        padding: 3.33333vw 2.66667vw;
        font-size: 3.46667vw;
    }
}

.ie11 .l-page-item__bg-txt {
    padding: 0.75rem 1.125rem 0.5rem;
}

@media screen and (max-width: 767px) {
    .ie11 .l-page-item__bg-txt {
        padding: 3.33333vw 2.66667vw;
    }
}

.l-page-item__bg-line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-line {
        display: block;
        margin-bottom: 2.66667vw;
    }
}

.l-page-item__bg-line .l-page-item__bg-ttl {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-line .l-page-item__bg-ttl {
        margin-bottom: 2.66667vw;
    }
}

.l-page-item__bg-link {
    position: relative;
    margin-right: 5.625rem;
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-link {
        margin-right: 0;
    }
}

.l-page-item__bg-link[target="_blank"]:after {
    position: absolute;
    top: 50%;
    right: -2.625rem;
    width: 27px;
    height: 27px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .l-page-item__bg-link[target="_blank"]:after {
        width: 20px;
        height: 20px;
    }
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-link[target="_blank"]:after {
        top: auto;
        right: -8vw;
        margin-top: 1.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
        -webkit-transform: none;
        transform: none;
    }
}

.l-page-item__bg-link:hover {
    border-bottom: 1px solid transparent;
}

.l-page-item__bg-contact {
    font-weight: bold;
    font-size: 1rem;

    -ms-flex-item-align: end;
    align-self: flex-end;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-contact {
        font-size: 3.73333vw;
    }
}

.l-page-item__bg-sub-link {
    margin-right: 1.5rem;
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

@media screen and (max-width: 767px) {
    .l-page-item__bg-sub-link {
        margin-right: 4vw;
    }
}

.l-page-item__bg-sub-link:hover {
    border-bottom: 1px solid transparent;
}

.l-page-item__note {
    margin-bottom: 1.5625rem;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .l-page-item__note {
        margin-bottom: 2.66667vw;
        font-size: 3.2vw;
    }
}

/* ---------------------------------------------
*   /group/philosophy/ページ
--------------------------------------------- */
/* ---------------------------------------------
*   animation
--------------------------------------------- */
.animation__ttl img {
    width: 100%;
}

.animation__item {
    position: relative;
    padding-bottom: 46.25rem;
}

@media screen and (max-width: 767px) {
    .animation__item {
        padding-bottom: 120vw;
    }
}

.animation__video {
    position: absolute;
    top: 6.25rem;
    left: 50%;
    z-index: 2;
    visibility: hidden;
    margin-left: -16.8125rem;
    width: 33.625rem;
}

@media screen and (max-width: 767px) {
    .animation__video {
        top: 17.2vw;
        margin-left: -33.06667vw;
        width: 66.13333vw;
    }
}

.is-fadein .animation__video {
    visibility: visible;
}

.is-fadein-item .animation__video {
    visibility: hidden;
    opacity: 0;
}

.animation__img {
    position: absolute;
    top: 11rem;
    left: 50%;
    width: 25.75rem;
    opacity: 0;
    -webkit-transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), -webkit-transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), -webkit-transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), -webkit-transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .animation__img {
        top: 26.66667vw;
        width: 50.66667vw;
    }
}

.animation__img img {
    width: 100%;
}

.is-fadein .animation__img {
    z-index: 3;
    opacity: 1;
    -webkit-transition-delay: 8.5s;
    transition-delay: 8.5s;
}

.animation__anchor {
    position: absolute;
    opacity: 0;
    -webkit-transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), -webkit-transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), -webkit-transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
    transition: opacity 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99), -webkit-transform 0.8s cubic-bezier(0.6, 0.31, 0.16, 0.99);
}

.is-fadein-item .animation__anchor {
    z-index: 2;
    opacity: 1;
}

.animation__anchor--vision {
    top: 29.375rem;
    left: 6.125rem;
    width: 20.4%;
}

@media screen and (max-width: 767px) {
    .animation__anchor--vision {
        top: 84vw;
        left: 9.33333vw;
        width: 26.66667vw;
    }
}

.animation__anchor--mission {
    top: 1.6875rem;
    left: 50%;
    width: 36%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .animation__anchor--mission {
        top: 6vw;
        width: 49.33333vw;
    }
}

.animation__anchor--actions {
    top: 24.75rem;
    left: 48.75rem;
    width: 22%;
}

@media screen and (max-width: 767px) {
    .animation__anchor--actions {
        top: 80vw;
        left: 54.66667vw;
        width: 29.33333vw;
    }
}

.animation__anchor-link {
    display: block;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    pointer-events: none;
}

.is-fadein-item .animation__anchor-link {
    pointer-events: auto;
}

.animation__anchor-link:hover {
    opacity: .8;
}

.animation__anchor-link img {
    width: 100%;
}

/* ---------------------------------------------
*   separate-block
--------------------------------------------- */
.separate-block {
    overflow: hidden;
    margin-bottom: 6.25rem;
    background-color: #f5f9eb;
}

.separate-block:last-of-type {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .separate-block {
        margin-bottom: 8vw;
        padding: 8vw 0;
    }
}

.separate-block__inner {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 2.5625rem 20px 2.6875rem;
    max-width: 1140px;
    width: 100%;

    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .separate-block__inner {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        padding: 0;
        width: 92vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
    }
}

.separate-block__inner:before {
    position: absolute;
    top: 0;
    z-index: -1;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
}

.separate-block__inner--base:before {
    left: 44.375rem;
    border-width: 120vw 0 0 100vw;
    border-color: #fff transparent transparent transparent;
}

@media screen and (max-width: 767px) {
    .separate-block__inner--base:before {
        display: none;
    }
}

.separate-block__inner--reverse {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

@media screen and (max-width: 767px) {
    .separate-block__inner--reverse {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
    }
}

.separate-block__inner--reverse:before {
    right: 44.375rem;
    border-width: 0 0 120vw 100vw;
    border-color: transparent transparent transparent #fff;
}

@media screen and (max-width: 767px) {
    .separate-block__inner--reverse:before {
        display: none;
    }
}

.separate-block__text-area {
    position: relative;
    margin-top: 1.5625rem;
    width: 46.18182%;
}

@media screen and (max-width: 767px) {
    .separate-block__text-area {
        margin-top: 4vw;
        width: 100%;
    }
}

.separate-block__text-area--left {
    margin-right: 5.63636%;
}

@media screen and (max-width: 767px) {
    .separate-block__text-area--left {
        margin-right: 0;
    }
}

.separate-block__text-area--right {
    margin-left: 5.63636%;
}

@media screen and (max-width: 767px) {
    .separate-block__text-area--right {
        margin-left: 0;
    }
}

.separate-block__ttl {
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 1.875rem;
}

@media screen and (max-width: 767px) {
    .separate-block__ttl {
        font-size: 4.26667vw;
    }
}

.separate-block__text {
    margin-top: 1.875rem;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .separate-block__text {
        margin-top: 4vw;
        margin-bottom: 4vw;
        font-size: 3.46667vw;
    }
}

.separate-block__parts {
    position: absolute;
    bottom: 0.75rem;
    left: 0;
}

@media screen and (max-width: 767px) {
    .separate-block__parts {
        position: static;
    }
}

.separate-block__image-area {
    max-width: 520px;
    width: 47.27273%;
}

@media screen and (max-width: 767px) {
    .separate-block__image-area {
        max-width: 100%;
        width: 100%;
    }
}

.separate-block__image-area img {
    width: 100%;
}

/* ---------------------------------------------
*   /group/philosophy/environment/ページ
--------------------------------------------- */
.charter-ttl {
    margin-top: 4.6875rem;
    text-align: center;
    font-size: 1.75rem;
    line-height: 1.92;
}

@media screen and (max-width: 767px) {
    .charter-ttl {
        margin-top: 8vw;
        font-size: 3.46667vw;
        line-height: 2;
    }
}

.charter-separate-line {
    margin: 0 auto;
    width: 15%;
    height: 2px;
    background-color: #009944;
}

.charter-list-container {
    text-align: center;
}

.charter-list {
    display: inline-block;
    margin: 0 auto 4.6875rem;
    text-align: left;
}

@media screen and (max-width: 767px) {
    .charter-list {
        margin-bottom: 8vw;
    }
}

.charter-item {
    margin-top: 0.9375rem;
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1rem;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .charter-item {
        margin-top: 2vw;
        font-size: 3.46667vw;
    }
}

.charter-item:before {
    display: inline-block;
    margin: auto 0.625rem auto auto;
    width: 0.6875rem;
    height: 0.6875rem;
    border-radius: 50%;
    background-color: #009944;
    content: '';
    vertical-align: middle;
    -webkit-transform: translateY(-20%);
    transform: translateY(-20%);
}

@media screen and (max-width: 767px) {
    .charter-item:before {
        margin-right: 1.33333vw;
        width: 1.33333vw;
        height: 1.33333vw;
    }
}

/* ---------------------------------------------
*   /group/company/ページ
--------------------------------------------- */
.company-table {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .company-table {
        border-right: 1px solid #f2f2f2;
        border-bottom: 1px solid #f2f2f2;
        border-left: 1px solid #f2f2f2;
    }
}

.company-table tr th {
    padding: 1.5625rem 0 1.5625rem 1.875rem;
    width: 24.0625rem;
    border: 1px solid #f2f2f2;
    background-color: #f5f9eb;
    text-align: left;
    font-weight: bold;
    font-size: 1rem;
    line-height: 2.5;
}

@media screen and (max-width: 767px) {
    .company-table tr th {
        display: inline-block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 1.33333vw 0 1.33333vw;
        width: 100%;
        border-right: none;
        border-left: none;
        text-align: center;
        font-size: 2.66667vw;
    }
}

.company-table tr th.large-th {
    padding-bottom: 32.5rem;
}

@media screen and (max-width: 767px) {
    .company-table tr th.large-th {
        padding-bottom: 1.33333vw;
    }
}

.company-table tr td {
    padding: 1.25rem 0 1.25rem 2.1875rem;
    width: 43.625rem;
    border: 1px solid #f2f2f2;
    text-align: left;
    font-size: 1rem;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .company-table tr td {
        display: inline-block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 2.85714vw 0 2.85714vw;
        width: 100%;
        border-top: none;
        border-top: none;
        border-right: none;
        border-bottom: none;
        border-left: none;
        text-align: center;
        font-size: 2.66667vw;
    }
}

.company-table tr td p {
    margin-bottom: 3.125rem;
}

@media screen and (max-width: 767px) {
    .company-table tr td p {
        margin-bottom: 5.33333vw;
    }
}

.company-table tr td p:first-line {
    font-weight: bold;
}

.company-table tr td p:last-of-type {
    margin-bottom: 0;
}

.company-table tr td span {
    display: block;
    text-align: left;
}

.company-table__btm-txt {
    display: block;
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
    text-align: left;
    font-size: 0.875rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .company-table__btm-txt {
        margin-top: 2.66667vw;
        margin-bottom: 2.66667vw;
        padding-left: 6.66667vw;
        font-size: 1.86667vw;
    }
}

.company-table__note {
    display: block;
    margin-top: 1.25rem;
    text-align: right;
    font-size: 0.875rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .company-table__note {
        font-size: 1.86667vw;
    }
}

.company-table-2 {
    width: 100%;
}

.company-table-2 tr th {
    padding: 1.5625rem 0 1.25rem 2.1875rem;
    width: 21.81818%;
    border-bottom: 1px solid #f2f2f2;
    text-align: left;
    font-size: 1rem;
    line-height: 2.5;
}

@media screen and (max-width: 767px) {
    .company-table-2 tr th {
        padding: 1.33333vw 0 1.33333vw 1.33333vw;
        width: 28%;
        font-size: 2.93333vw;
    }
}

.company-table-2 tr td {
    width: 25.90909%;
    border-bottom: 1px solid #f2f2f2;
    text-align: left;
    font-size: 1rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .company-table-2 tr td {
        width: 20%;
        font-size: 2.93333vw;
    }
}

.company-table-2__txt {
    display: block;
    margin-top: 1.25rem;
    text-align: right;
    font-size: 0.875rem;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .company-table-2__txt {
        font-size: 1.86667vw;
    }
}

.td-right {
    display: inline-block;
    padding-right: 1.5625rem;
    text-align: right !important;
}

.access {
    border-bottom: 1px solid #00813d;
    color: #00813d;
}

.access:hover {
    border-bottom: none;
}

/* ---------------------------------------------
*   /group/history/ページ
--------------------------------------------- */
.history-table {
    width: 100%;
}

.history-table tr th {
    padding: 1.25rem 5.9375rem 0.9375rem 2.1875rem;
    width: 6.25rem;
    border-bottom: 1px solid #f2f2f2;
    text-align: left;
    font-size: 1rem;
    line-height: 2.5;
}

@media screen and (max-width: 767px) {
    .history-table tr th {
        padding: 4vw 2.66667vw;
        width: 33.33333vw;
        border-bottom: 0.26667vw solid #f2f2f2;
        text-align: center;
        font-size: 2.13333vw;
    }
}

.history-table tr td {
    padding: 1.25rem 0;
    width: 51.25rem;
    border-bottom: 1px solid #f2f2f2;
    text-align: left;
    font-size: 1rem;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .history-table tr td {
        padding: 2.66667vw;
        width: 109.33333vw;
        border-bottom: 0.26667vw solid #f2f2f2;
        font-size: 2.13333vw;
    }
}

/* ---------------------------------------------
*   table-note
--------------------------------------------- */
.table-note {
    margin-top: 1.25rem;
    text-align: right;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .table-note {
        margin-top: 2.66667vw;
        font-size: 1.86667vw;
    }
}

.table-note__link {
    border-bottom: 1px solid #009944;
    color: #009944;
}

.table-note__link:hover {
    border-bottom: none;
}

/* ---------------------------------------------
*   /group/company/map/ページ
--------------------------------------------- */
/* ---------------------------------------------
*   map-item
--------------------------------------------- */
.map-item {
    margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
    .map-item {
        margin-bottom: 10.66667vw;
    }
}

/* ---------------------------------------------
*   box-liner
--------------------------------------------- */
.box-liner {
    margin-top: 2.5rem;
    padding: 1.25rem 2.75rem 1.125rem 2.125rem;
    border: 1px solid #cccccc;
}

@media screen and (max-width: 767px) {
    .box-liner {
        margin-top: 8vw;
        padding: 2.8vw 4.53333vw 2.4vw;
    }
}

.box-liner__top {
    padding-bottom: 1rem;
    border-bottom: 1px solid #cccccc;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .box-liner__top {
        padding-bottom: 2.8vw;
        font-size: 3.46667vw;
    }
}

.ie11 .box-liner__top {
    padding-bottom: 0.875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .box-liner__top {
        padding-bottom: 2.8vw;
    }
}

.box-liner__bottom {
    padding-top: 1rem;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .box-liner__bottom {
        padding-top: 2.8vw;
        font-size: 3.46667vw;
    }
}

.ie11 .box-liner__bottom {
    padding-top: 1.125rem;
}

@media screen and (max-width: 767px) {
    .ie11 .box-liner__bottom {
        padding-top: 2.8vw;
    }
}

/* ---------------------------------------------
*   Newsページ
--------------------------------------------- */
/* ---------------------------------------------
*   select-box-parts
--------------------------------------------- */
.select-box-parts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin-top: 2.1875rem;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .select-box-parts {
        display: block;
        margin-top: 4vw;
    }
}

.select-box-parts__text {
    margin-right: 2rem;
    color: #00813d;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .select-box-parts__text {
        margin-right: 0;
        margin-bottom: 1.33333vw;
        font-size: 3.73333vw;
    }
}

.select-box-parts__icon {
    position: relative;
}

.select-box-parts__icon:after {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    margin: auto;
    width: 0px;
    height: 0px;
    border-width: 0.75rem 0.4375rem 0 0.4375rem;
    border-style: solid;
    border-color: #009944 transparent transparent transparent;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    pointer-events: none;
}

@media screen and (max-width: 767px) {
    .select-box-parts__icon:after {
        right: 4vw;
        border-width: 2.66667vw 1.6vw 0 1.6vw;
    }
}

.select-box-parts__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.6875rem 1.5625rem;
    width: 22.5625rem;
    outline: none;
    border: 1px solid #009944;
    background-color: #f5f9eb;
    color: transparent;
    text-shadow: 0px 0px 0px #00813d;
    font-size: 1rem;
    cursor: pointer;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 767px) {
    .select-box-parts__item {
        padding: 2.93333vw 2.66667vw 2.4vw;
        width: 100%;
        border: 1px solid #009944;
        font-size: 4.26667vw;
    }
}

.windows.chrome .select-box-parts__item {
    color: #00813d;
}

.ie11 .select-box-parts__item {
    color: #00813d;
}

.edge .select-box-parts__item {
    padding: 0.8125rem 1.5625rem 0.5625rem;
    color: #00813d;
}

@media screen and (max-width: 767px) {
    .edge .select-box-parts__item {
        padding: 2.93333vw 2.66667vw 2.4vw;
    }
}

.select-box-parts__item::-ms-expand {
    display: none;
}

.select-box-parts__item:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .select-box-parts__item:hover {
        opacity: 1;
    }
}

.ios .select-box-parts__item:hover,
.android .select-box-parts__item:hover {
    opacity: 1;
}

/* ---------------------------------------------
*   news-detail-contents
--------------------------------------------- */
.news-detail-contents__inner {
    margin-bottom: 5.1875rem;
}

@media screen and (max-width: 767px) {
    .news-detail-contents__inner {
        margin-bottom: 10.66667vw;
    }
}

/* ---------------------------------------------
*   wp-pagenavi
--------------------------------------------- */
.wp-pagenavi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;

    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 1rem;
    padding: 0.5rem 0;
    width: 2.125rem;
    border: 1px solid #e0e0e0;
    color: #00813d;
    text-align: center;
    font-weight: bold;
    font-size: 1rem;
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    .wp-pagenavi a,
    .wp-pagenavi span {
        display: inline-block;
        margin-right: 2.66667vw;
        padding: 1.33333vw 0;
        width: 5.86667vw;
        border: 1px solid #e0e0e0;
        font-size: 4.26667vw;
    }
}

.wp-pagenavi a:hover,
.wp-pagenavi span:hover {
    background-color: #009944;
    color: #fff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.ie11 .wp-pagenavi a, .ie11
.wp-pagenavi span {
    padding: 0.625rem 0 0.375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .wp-pagenavi a, .ie11
    .wp-pagenavi span {
        padding: 1.86667vw 0 0.8vw;
    }
}

.wp-pagenavi .current {
    background-color: #009944;
    color: #fff;
    cursor: default;
}

/* ---------------------------------------------
*   news-pager
--------------------------------------------- */
.news-pager__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;

    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.news-pager__list {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 1rem;
    width: 2.125rem;
    border: 1px solid #e0e0e0;
    color: #00813d;
    text-align: center;
    -webkit-transition: color 300ms, background-color 300ms;
    transition: color 300ms, background-color 300ms;
}

@media screen and (max-width: 767px) {
    .news-pager__list {
        margin-right: 2.66667vw;
        width: 5.86667vw;
        border: 1px solid #e0e0e0;
    }
}

.news-pager__list:last-of-type {
    margin-right: 0;
}

.news-pager__list--current {
    background-color: #009944;
    color: #fff;
    pointer-events: none;
}

@media screen and (min-width: 768px) {
    .news-pager__list:hover {
        background-color: #009944;
        color: #fff;
    }
}

@media screen and (min-width: 1025px) {
    .ios .news-pager__list:hover,
    .android .news-pager__list:hover {
        background-color: #009944;
        color: #fff;
    }
}

.news-pager__link {
    display: block;
    padding: 0.5rem 0;
}

@media screen and (max-width: 767px) {
    .news-pager__link {
        padding: 1.33333vw 0;
    }
}

.ie11 .news-pager__link {
    padding: 0.625rem 0 0.375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .news-pager__link {
        padding: 1.86667vw 0 0.8vw;
    }
}

/* ---------------------------------------------
*   l-contents-wrap
--------------------------------------------- */
.l-contents-wrap {
    margin: 7.5rem 0 9.0625rem;
}

@media screen and (max-width: 767px) {
    .l-contents-wrap {
        margin: 10.66667vw 0;
    }
}

/* ---------------------------------------------
*   page-head
--------------------------------------------- */
.page-head__ttl {
    color: #00813d;
    letter-spacing: .1em;
    font-weight: 400;
    font-style: normal;
    font-size: 1.5rem;
    font-family: kozuka-gothic-pr6n, sans-serif;
}

@media screen and (max-width: 767px) {
    .page-head__ttl {
        font-size: 4.26667vw;
    }
}

/* ---------------------------------------------
*   page-sub
--------------------------------------------- */
.page-sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin: 2.5rem 0 3.625rem;

    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .page-sub {
        margin: 5.33333vw 0;
    }
}

.page-sub__category {
    margin-right: 1.5625rem;
    padding: 0.625rem 0 0.5625rem;
    width: 10.625rem;
    background-color: #f2f2f2;
    color: #00813d;
    text-align: center;
    letter-spacing: .02em;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .page-sub__category {
        margin-right: 2.66667vw;
        padding: 1.33333vw 2.66667vw;
        width: 42.66667vw;
        font-size: 3.46667vw;
    }
}

.page-sub__date {
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .page-sub__date {
        font-size: 3.46667vw;
    }
}

/* ---------------------------------------------
*   /business/ページ
--------------------------------------------- */
.banner-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 0.625rem;
}

@media screen and (max-width: 767px) {
    .banner-list {
        padding: 0 2.66667vw;
    }
}

/* ---------------------------------------------
*   /recruit/ページ
--------------------------------------------- */
.banner-item {
    margin-right: 1.5rem;
    width: 12.375rem;
    -webkit-transition: .2s;
    transition: .2s;
}

@media screen and (max-width: 767px) {
    .banner-item {
        margin-right: 4vw;
        width: 46.66667vw;
        text-align: center;
    }
}

.banner-item:hover {
    opacity: 0.8;
}

.banner-item:last-of-type {
    margin-right: 0;
}

.banner-item--sns {
    margin-right: 1.875rem;
    width: 9.8125rem;
}

@media screen and (max-width: 767px) {
    .banner-item--sns {
        margin-right: 4vw;
        width: 20.93333vw;
    }
}

.banner-item--sns:last-of-type {
    margin-right: 0;
    width: 5.5rem;
}

@media screen and (max-width: 767px) {
    .banner-item--sns:last-of-type {
        width: 11.73333vw;
    }
}

.recruit-ttl-btm {
    margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
    .recruit-ttl-btm {
        margin-bottom: 8.66667vw;
    }
}

.recruit-ttl-btm__lead {
    padding-left: 1.5em;
}

@media screen and (max-width: 767px) {
    .recruit-ttl-btm__lead {
        padding-left: 6.66667vw;
    }
}

.recruit-link-box {
    margin-left: 11rem;
}

@media screen and (max-width: 767px) {
    .recruit-link-box {
        margin-left: 44vw;
    }
}

/* ---------------------------------------------
*   other
--------------------------------------------- */
/* ---------------------------------------------
*   /contact/usual/
--------------------------------------------- */
.chapter {
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
    .chapter {
        margin-bottom: 5.33333vw;
    }
}

.chapter__contents {
    display: none;
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .chapter__contents {
        margin-top: 5.33333vw;
    }
}

/* ---------------------------------------------
*   /sitepolicy/
--------------------------------------------- */
.adebe-plugin {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1.5625rem;
    width: 100%;
}

.adebe-plugin__btn {
    width: 10rem;
}

@media screen and (max-width: 767px) {
    .adebe-plugin__btn {
        width: 33.33333vw;
    }
}

.adebe-plugin__btn:nth-of-type(n+2) {
    margin-left: 1.875rem;
}

@media screen and (max-width: 767px) {
    .adebe-plugin__btn:nth-of-type(n+2) {
        margin-left: 8vw;
    }
}

.adebe-plugin__btn:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .adebe-plugin__btn:hover {
        opacity: 1;
    }
}

.adebe-plugin__img {
    width: 100%;
}

/* ---------------------------------------------
*   /recruit/
--------------------------------------------- */
/* ---------------------------------------------
*   mv-sub
--------------------------------------------- */
.mv-sub__txt {
    margin-top: 0.3125rem;
}

@media screen and (max-width: 767px) {
    .mv-sub__txt {
        margin-top: 0;
    }
}

.mv-sub__link {
    position: relative;
    display: inline-block;
    margin-right: 2.5rem;
    border-bottom: 1px solid #009944;
    color: #009944;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .mv-sub__link {
        margin-right: 6.66667vw;
        font-size: 3.2vw;
    }
}

.mv-sub__link:hover {
    border-bottom: 1px solid transparent;
}

.mv-sub__link[target="_blank"]:after {
    position: absolute;
    top: 50%;
    right: -2.5rem;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .mv-sub__link[target="_blank"]:after {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .mv-sub__link[target="_blank"]:after {
        right: -6.66667vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.ie11 .mv-sub__link[target="_blank"]:after {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .ie11 .mv-sub__link[target="_blank"]:after {
        height: 3.73333vw;
    }
}

.edge .mv-sub__link[target="_blank"]:after {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .edge .mv-sub__link[target="_blank"]:after {
        height: 3.73333vw;
    }
}

.mv-sub__img {
    margin-top: 0.625rem;
}

@media screen and (max-width: 767px) {
    .mv-sub__img {
        margin-top: 2.66667vw;
    }
}

.mv-sub__movie {
    position: relative;
    padding-top: 28.63636%;
    max-width: 560px;
    width: 50.90909%;
}

@media screen and (max-width: 767px) {
    .mv-sub__movie {
        padding-top: 56.25%;
        max-width: 100%;
        width: 100%;
    }
}

.mv-sub__movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/* ---------------------------------------------
*   btn-parts
--------------------------------------------- */
.btn-parts {
    margin-top: 0.9375rem;
}

@media screen and (max-width: 767px) {
    .btn-parts {
        margin-top: 4vw;
    }
}

.btn-parts__link {
    position: relative;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.0625rem 3.4375rem 1rem 2.1875rem;
    width: 14.6875rem;
    background-color: #009944;
    color: #fff;
    font-size: 0.875rem;
    -webkit-transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, background-color 300ms, -webkit-transform 0.8s;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms;
    transition: opacity 0.8s, transform 0.8s, background-color 300ms, -webkit-transform 0.8s;
}

@media screen and (max-width: 767px) {
    .btn-parts__link {
        padding: 4.53333vw 21.33333vw 4.26667vw;
        width: 100%;
        text-align: center;
        font-size: 3.73333vw;
    }
}

.ie11 .btn-parts__link {
    padding: 1.25rem 3.4375rem 0.8125rem 2.1875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .btn-parts__link {
        padding: 5.06667vw 21.33333vw 3.73333vw;
    }
}

@media screen and (min-width: 768px) {
    .btn-parts__link:hover {
        background-color: #beda79;
    }
}

@media screen and (min-width: 1025px) {
    .ios .btn-parts__link:hover,
    .android .btn-parts__link:hover {
        background-color: #beda79;
    }
}

.btn-parts__link:hover:after {
    -webkit-transform: translateY(-50%) translate3d(8%, 0, 0);
    transform: translateY(-50%) translate3d(8%, 0, 0);
}

@media screen and (max-width: 767px) {
    .btn-parts__link:hover:after {
        -webkit-transform: translateY(-50%) translate3d(0, 0, 0);
        transform: translateY(-50%) translate3d(0, 0, 0);
    }
}

.btn-parts__link[target="_blank"]:before {
    position: absolute;
    top: 50%;
    right: 10.90909%;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_w.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1140px) {
    .btn-parts__link[target="_blank"]:before {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .btn-parts__link[target="_blank"]:before {
        right: 5.33333vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

.ie11 .btn-parts__link[target="_blank"]:before {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .ie11 .btn-parts__link[target="_blank"]:before {
        height: 3.73333vw;
    }
}

.edge .btn-parts__link[target="_blank"]:before {
    height: 26px;
}

@media screen and (max-width: 767px) {
    .edge .btn-parts__link[target="_blank"]:before {
        height: 3.73333vw;
    }
}

.btn-parts__link[target="_blank"]:after {
    display: none;
}

.btn-parts__link:after {
    position: absolute;
    top: 46%;
    right: 8.51064%;
    width: 60px;
    height: 9px;
    background: url(/img/common/btn_arrow_l.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translateY(-50%) translate3d(0, 0, 0);
    transform: translateY(-50%) translate3d(0, 0, 0);
}

@media screen and (max-width: 767px) {
    .btn-parts__link:after {
        right: 5.33333vw;
        width: 16vw;
        height: 2.66667vw;
    }
}

.ie11 .btn-parts__link:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .ie11 .btn-parts__link:after {
        height: 2.66667vw;
    }
}

.edge .btn-parts__link:after {
    height: 11px;
}

@media screen and (max-width: 767px) {
    .edge .btn-parts__link:after {
        height: 2.66667vw;
    }
}

/* ---------------------------------------------
*   csrページ
--------------------------------------------- */
/* ---------------------------------------------
*   /csr/featured/nurture/
--------------------------------------------- */
.contents-head-image {
    margin: 2.625rem 0 2.1875rem 1.25rem;
}

@media screen and (max-width: 767px) {
    .contents-head-image {
        margin: 0 0 8vw 0;
    }
}

@media screen and (max-width: 767px) {
    .contents-head-image img {
        width: 100%;
    }
}

/* ---------------------------------------------
*   /csr/partner/
--------------------------------------------- */
.sub-head {
    margin-bottom: 5.625rem;
    padding-left: 1.25rem;
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.65;
}

@media screen and (max-width: 767px) {
    .sub-head {
        margin-bottom: 8vw;
        padding-left: 2.66667vw;
        font-size: 4.26667vw;
    }
}

.sub-head__small {
    position: relative;
    display: block;
    margin-top: 1rem;
    padding-left: 2.375rem;
    font-weight: normal;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .sub-head__small {
        margin-top: 2vw;
        padding-left: 5.06667vw;
        font-size: 3.46667vw;
    }
}

.sub-head__small:before, .sub-head__small:after {
    position: absolute;
    top: 50%;
    width: 1.8125rem;
    height: 2px;
    background-color: #009944;
    content: '';
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .sub-head__small:before, .sub-head__small:after {
        width: 4vw;
    }
}

.ie11 .sub-head__small:before, .ie11 .sub-head__small:after {
    top: 38%;
}

.sub-head__small:before {
    left: 0;
}

.ie11 .sub-head__small:before {
    left: 0.1875rem;
}

@media screen and (max-width: 767px) {
    .ie11 .sub-head__small:before {
        left: 0;
    }
}

.sub-head__small:after {
    right: auto;
}

/* ---------------------------------------------
*   /csr/philosophy/
--------------------------------------------- */
.philosophy-kv-txt {
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
    font-size: 1.75rem;
    line-height: 1.92;
}

@media screen and (max-width: 767px) {
    .philosophy-kv-txt {
        font-size: 2.93333vw;
    }
}

/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   Index Page
--------------------------------------------- */
/* ---------------------------------------------
*   section-contents
--------------------------------------------- */
.section-contents--news {
    margin: 0.9375rem 0 5.625rem;
}

@media screen and (max-width: 767px) {
    .section-contents--news {
        margin: 8vw 0 12vw;
    }
}

.section-contents--about {
    padding: 3.25rem 0 5rem;
    background-color: #f4f4f4;
}

@media screen and (max-width: 767px) {
    .section-contents--about {
        padding: 8.57143vw 0;
    }
}

.section-contents--business {
    padding: 4.6875rem 0 6.25rem;
}

@media screen and (max-width: 767px) {
    .section-contents--business {
        padding: 6.42857vw 0 14.28571vw;
    }
}

.section-contents--half {
    width: 50%;
}

@media screen and (max-width: 767px) {
    .section-contents--half {
        width: 100%;
    }
}

.section-contents--link {
    padding: 5rem 0 0.75rem;
    background-color: #fff;
}

/* ---------------------------------------------
*   mv-block
--------------------------------------------- */
.mv-block {
    z-index: 0;
    width: 100%;
    height: 700px;
}

@media screen and (max-width: 1024px) {
    .mv-block {
        position: relative;
        margin-top: 60px;
    }
}

@media screen and (max-width: 767px) {
    .mv-block {
        overflow: hidden;
        min-height: 90vh;
        height: calc(90vh - 60px);
    }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
    .mv-block {
        min-height: 100vw;
    }
}

.mv-block__movie {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
    overflow: hidden;
    width: 100%;
    height: 700px;
}

@media screen and (max-width: 767px) {
    .mv-block__movie {
        height: 100%;
    }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
    .mv-block__movie {
        height: 100vw;
    }
}

.mv-block__movie:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.45);
    content: '';
}

.mv-block__movie video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mv-block__movie video {
        height: 100%;
    }
}

.mv-block__bg-img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
    overflow: hidden;
    width: 100%;
    height: 700px;
}

@media screen and (max-width: 767px) {
    .mv-block__bg-img {
        height: 100%;
    }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
    .mv-block__bg-img {
        height: 100vw;
    }
}

.mv-block__bg-img:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.45);
    content: '';
}

.mv-block__outer {
    position: relative;
    z-index: 2;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1140px;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .mv-block__outer {
        padding: 0 4vw;
        width: 100%;
    }
}

.mv-block__inner {
    position: absolute;
    top: 22.28571%;
    right: 4.38596%;
    max-width: 770px;
}

@media screen and (max-width: 810px) {
    .mv-block__inner {
        right: auto;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }
}

@media screen and (max-width: 767px) {
    .mv-block__inner {
        top: 50%;
        max-width: 100%;
        width: 77.33333vw;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

.mv-block__big {
    color: #fff;
    white-space: nowrap;
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 50px;
    line-height: 1.38;
}

@media screen and (max-width: 810px) {
    .mv-block__big {
        letter-spacing: 0;
    }
}

@media screen and (max-width: 767px) {
    .mv-block__big {
        letter-spacing: .06em;
        font-size: 43px;
    }
}

@media screen and (max-width: 650px) {
    .mv-block__big {
        font-size: 6.66667vw;
    }
}

.mv-block__small {
    position: relative;
    margin-top: 10px;
    margin-left: 5px;
    padding-left: 42px;
    color: #fff;
    letter-spacing: .22em;
    font-weight: bold;
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    .mv-block__small {
        margin-top: 2.66667vw;
        margin-left: 1.33333vw;
        padding-left: 11.2vw;
        font-size: 17px;
    }
}

@media screen and (max-width: 650px) {
    .mv-block__small {
        font-size: 3.73333vw;
    }
}

.mv-block__small:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 28px;
    height: 2px;
    background-color: #fff;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mv-block__small:before {
        width: 7.46667vw;
        height: 0.53333vw;
    }
}

.mv-block__board {
    overflow-y: scroll;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 48px;
    padding: 25px 35px 20px;
    max-height: 173px;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .mv-block__board {
        margin-top: 2.66667vw;
        padding: 2.66667vw 2vw;
        max-height: 52.26667vw;
    }
}

.mv-block__board-head .textwidget .mv-block__board-txt {
    font-size: 13px;
}

@media screen and (max-width: 767px) {
    .mv-block__board-head .textwidget .mv-block__board-txt {
        font-size: 20px;
    }
}

@media screen and (max-width: 650px) {
    .mv-block__board-head .textwidget .mv-block__board-txt {
        font-size: 3.2vw;
    }
}

.mv-block__board-ttl {
    margin-bottom: 3px;
    color: #009944;
    font-weight: bold;
    font-size: 16px;
}

@media screen and (max-width: 767px) {
    .mv-block__board-ttl {
        margin-bottom: 0.4vw;
        font-size: 24px;
    }
}

@media screen and (max-width: 650px) {
    .mv-block__board-ttl {
        font-size: 3.73333vw;
    }
}

.mv-block__board-txt {
    font-size: 13px;
}

@media screen and (max-width: 767px) {
    .mv-block__board-txt {
        font-size: 20px;
    }
}

@media screen and (max-width: 650px) {
    .mv-block__board-txt {
        font-size: 3.2vw;
    }
}

.mv-block__board-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 12px;
}

@media screen and (max-width: 767px) {
    .mv-block__board-bottom {
        display: block;
        margin-top: 2.66667vw;
    }
}

.mv-block__img-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 40px;
    width: 300px;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .mv-block__img-wrap {
        -ms-flex-pack: center;
        margin-right: 2.66667vw;
        width: 100%;

        -webkit-box-pack: center;
        justify-content: center;
    }
}

.mv-block__img {
    margin-right: 20px;
    margin-bottom: 20px;
    width: 140px;
}

@media screen and (max-width: 767px) {
    .mv-block__img {
        margin-right: 8%;
        margin-bottom: 8%;
        width: 46%;
    }
}

.mv-block__img:last-of-type {
    margin-bottom: 0;
}

.mv-block__img:nth-of-type(2n) {
    margin-right: 0;
}

.mv-block__img:nth-child(2n+1):nth-last-child(-n+2),
.mv-block__img:nth-child(2n+1):nth-last-child(-n+2) ~ .mv-block__img {
    margin-bottom: 0;
}

.mv-block__img img {
    width: 100%;
}

.mv-block__link-wrap {
    width: 340px;
}

@media screen and (max-width: 767px) {
    .mv-block__link-wrap {
        margin-top: 2.66667vw;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .mv-block__list {
        line-height: 1;
    }
}

.mv-block__item {
    margin-bottom: 4px;
}

@media screen and (max-width: 767px) {
    .mv-block__item {
        margin-bottom: 0.53333vw;
        margin-left: 4.26667vw;
    }
}

.mv-block__item:last-of-type {
    margin-bottom: 0;
}

.mv-block__link {
    position: relative;
    border-bottom: 1px solid #009944;
    color: #009944;
    text-indent: -1em;
    font-size: 13px;
}

@media screen and (max-width: 767px) {
    .mv-block__link {
        font-size: 20px;
    }
}

@media screen and (max-width: 650px) {
    .mv-block__link {
        font-size: 3.2vw;
    }
}

.mv-block__link:before {
    position: absolute;
    top: .1em;
    left: -1.3em;
    width: 9px;
    height: 11px;
    background: url(/img/common/w_arrow.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.windows .mv-block__link:before {
    top: .3em;
}

@media screen and (max-width: 767px) {
    .mv-block__link:before {
        top: .3em;
        width: 2.13333vw;
        height: 2.66667vw;
    }
}

.mv-block__link:hover {
    border-bottom: none;
}

.mv-block__link[target="_blank"]:after {
    position: absolute;
    right: -25px;
    bottom: 0;
    width: 16px;
    height: 16px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 767px) {
    .mv-block__link[target="_blank"]:after {
        right: -6.66667vw;
        margin-top: 2vw;
        width: 3.2vw;
        height: 3.2vw;
    }
}

/* ---------------------------------------------
*   mv-box-btn
--------------------------------------------- */
.mv-box-btn {
    width: 265px;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .mv-box-btn {
        width: 70.66667vw;
    }
}

.mv-box-btn__link {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 0 14px 25px;
    letter-spacing: .2em;
    font-size: 14px;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link {
        padding: 2.66667vw 0 2.4vw 7.2vw;
        letter-spacing: .06em;
        font-size: 3.73333vw;
    }
}

.ie11 .mv-box-btn__link {
    padding: 15px 0 12px 25px;
}

@media screen and (max-width: 767px) {
    .ie11 .mv-box-btn__link {
        padding: 2.66667vw 0 2.4vw 7.2vw;
    }
}

.mv-box-btn__link:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link:hover {
        opacity: 1;
    }
}

.ios .mv-box-btn__link:hover,
.android .mv-box-btn__link:hover {
    opacity: 1;
}

.mv-box-btn__link:before, .mv-box-btn__link:after {
    position: absolute;
    content: "";
}

.mv-box-btn__link:before {
    top: 0;
    right: 0;
    width: 45px;
    height: 100%;
    background-color: #009944;
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link:before {
        width: 12vw;
    }
}

.mv-box-btn__link:after {
    top: 50%;
    right: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    background: url(/img/common/mv_arrow.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link:after {
        right: 4vw;
        width: 3.2vw;
        height: 3.2vw;
    }
}

/* ---------------------------------------------
*   mv-box-btn
--------------------------------------------- */
.mv-box-btn {
    width: 265px;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .mv-box-btn {
        width: 70.66667vw;
    }
}

.mv-box-btn__link {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 0 14px 25px;
    letter-spacing: .2em;
    font-size: 14px;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link {
        padding: 2.66667vw 0 2.4vw 7.2vw;
        letter-spacing: .06em;
        font-size: 3.73333vw;
    }
}

.ie11 .mv-box-btn__link {
    padding: 15px 0 12px 25px;
}

@media screen and (max-width: 767px) {
    .ie11 .mv-box-btn__link {
        padding: 2.66667vw 0 2.4vw 7.2vw;
    }
}

.mv-box-btn__link:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link:hover {
        opacity: 1;
    }
}

.ios .mv-box-btn__link:hover,
.android .mv-box-btn__link:hover {
    opacity: 1;
}

.mv-box-btn__link:before, .mv-box-btn__link:after {
    position: absolute;
    content: "";
}

.mv-box-btn__link:before {
    top: 0;
    right: 0;
    width: 45px;
    height: 100%;
    background-color: #009944;
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link:before {
        width: 12vw;
    }
}

.mv-box-btn__link:after {
    top: 50%;
    right: 16px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    background: url(/img/common/mv_arrow.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .mv-box-btn__link:after {
        right: 4vw;
        width: 3.2vw;
        height: 3.2vw;
    }
}

/* ---------------------------------------------
*   news-block
--------------------------------------------- */
.news-block {
    margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
    .news-block {
        margin-top: 8vw;
    }
}

/* ---------------------------------------------
*   about-image
--------------------------------------------- */
.about-image {
    margin-top: 2.125rem;
    margin-bottom: 1.25rem;
    max-width: 1100px;
    width: 100%;
    height: 15rem;
}

@media screen and (max-width: 767px) {
    .about-image {
        margin-top: 9.06667vw;
        margin-bottom: 5.33333vw;
        height: auto;
    }
}

.about-image img {
    width: 100%;
    height: 100%;
}

/* ---------------------------------------------
*   business-middle
--------------------------------------------- */
.business-middle {
    margin: 1.875rem 0 3.125rem;
}

@media screen and (max-width: 767px) {
    .business-middle {
        margin: 8vw 0;
    }
}

/* ---------------------------------------------
*   medium-box-wrap
--------------------------------------------- */
.medium-box-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .medium-box-wrap {
        display: block;
    }
}

/* ---------------------------------------------
*   medium-box
--------------------------------------------- */
.medium-box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 3.63636%;
    padding: 1.75rem 1.63636% 1.25rem 2.36364%;
    width: 48.18182%;
    border: 1px solid #cacaca;
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .medium-box {
        margin-right: 0;
        margin-bottom: 4vw;
        padding: 7.46667vw 4.8vw 5.33333vw;
        width: 100%;
        border: 0.26667vw solid #cacaca;
    }
}

.medium-box:last-of-type {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .medium-box:last-of-type {
        margin-bottom: 0;
    }
}

.medium-box__ttl {
    letter-spacing: .05em;
    font-size: 2.25rem;
}

@media screen and (max-width: 767px) {
    .medium-box__ttl {
        font-size: 9.6vw;
    }
}

.medium-box__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: end;
    margin-top: 1.875rem;
    height: 5.8125rem;

    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    align-items: flex-end;
}

@media screen and (max-width: 767px) {
    .medium-box__inner {
        display: block;
        margin-top: 4vw;
        height: auto;
    }
}

.medium-box__txt {
    font-size: 1.125rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .medium-box__txt {
        font-size: 4.8vw;
    }
}

.medium-box__txt--left {
    margin-right: 6.17284%;
}

@media screen and (max-width: 767px) {
    .medium-box__txt--left {
        margin-right: 0;
        margin-bottom: 4vw;
    }
}

.medium-box__txt--right {
    margin-right: 12.39669%;
}

@media screen and (max-width: 767px) {
    .medium-box__txt--right {
        margin-right: 0;
        margin-bottom: 4vw;
    }
}

.windows .medium-box__txt {
    letter-spacing: 0em;
}

/* ---------------------------------------------
*   column-wrap
--------------------------------------------- */
.column-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {
    .column-wrap {
        display: block;
    }
}

/* ---------------------------------------------
*   container-column
--------------------------------------------- */
.container-column {
    position: relative;
    height: 31.25rem;
}

@media screen and (max-width: 767px) {
    .container-column {
        height: 93.33333vw;
    }
}

.container-column--ir {
    background: url(/img/img_bg_ir.jpg) right center no-repeat;
    background-size: cover;
}

.container-column--csr {
    background: url(/img/img_bg_csr.jpg) right center no-repeat;
    background-size: cover;
}

.container-column:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.75);
    content: "";
}

.container-column__inner {
    position: absolute;
    top: 3.5rem;
    z-index: 1;
    max-width: 485px;
    width: 100%;
}

@media screen and (max-width: 1140px) {
    .container-column__inner {
        width: 69.28571%;
    }
}

@media screen and (max-width: 767px) {
    .container-column__inner {
        top: 14.93333vw;
        max-width: 100%;
        width: 92vw;
    }
}

.container-column__inner--left {
    right: 4.0625rem;
}

@media screen and (max-width: 1140px) {
    .container-column__inner--left {
        right: auto;
        left: 20px;
    }
}

@media screen and (max-width: 767px) {
    .container-column__inner--left {
        right: auto;
        left: 4vw;
    }
}

.container-column__inner--right {
    left: 3.5rem;
}

@media screen and (max-width: 767px) {
    .container-column__inner--right {
        left: 4vw;
    }
}

.container-column__middle {
    margin: 3.125rem 0;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .container-column__middle {
        margin: 8vw 0;
    }
}

/* ---------------------------------------------
*   business-area
--------------------------------------------- */
.business-area {
    position: relative;
    height: 31.25rem;
}

@media screen and (max-width: 767px) {
    .business-area {
        height: 93.33333vw;
    }
}

.business-area__bg {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}

.business-area__bg:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.75);
    content: "";
}

.business-area__inner {
    position: absolute;
    top: 3.5rem;
}

@media screen and (max-width: 767px) {
    .business-area__inner {
        top: 14.93333vw;
        width: 93.33333vw;
    }
}

.business-area__txt {
    margin-top: 3.125rem;
    margin-bottom: 5.625rem;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .business-area__txt {
        margin: 8vw 0 12vw;
        font-size: 4.26667vw;
    }
}

/* ---------------------------------------------
*   link-block
--------------------------------------------- */
.link-block {
    margin-top: 2.5rem;
}

/* ---------------------------------------------
*   wysiwyg
--------------------------------------------- */
.wysiwyg {
    overflow: hidden;
    line-height: 1.75;
}

.wysiwyg:after {
    display: block;
    clear: both;
    content: "";
}

.wysiwyg > :last-child {
    margin-bottom: 0 !important;
}

.wysiwyg sup {
    vertical-align: super;
    font-size: smaller;
}

.wysiwyg sub {
    vertical-align: sub;
    font-size: smaller;
}

.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
    position: relative;
    clear: both;
    margin-bottom: 3.4375rem;
    color: #151515;
    letter-spacing: .1em;
    font-weight: bold;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
        margin-bottom: 8vw;
        letter-spacing: .04em;
        font-size: 4vw;
    }
}

.wysiwyg h2 {
    margin-bottom: 1.875rem;
    padding: 0.9375rem 2.625rem;
    background-color: #009944;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .wysiwyg h2 {
        margin-bottom: 8vw;
        padding: 2.66667vw 1.33333vw 2.66667vw 2.66667vw;
    }
}

.ie11 .wysiwyg h2 {
    padding: 1.125rem 2.625rem 0.75rem;
}

@media screen and (max-width: 767px) {
    .ie11 .wysiwyg h2 {
        padding: 2.93333vw 1.33333vw 2.4vw 2.66667vw;
    }
}

.wysiwyg h3 {
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    padding-left: 1.25rem;
    border-bottom: 2px solid #009944;
}

@media screen and (max-width: 767px) {
    .wysiwyg h3 {
        margin-bottom: 8vw;
        padding-bottom: 1.33333vw;
        padding-left: 2.66667vw;
        border-bottom: 1px solid #009944;
    }
}

.wysiwyg h3 + .wp-caption {
    margin-top: 1.25rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg h3 + .wp-caption {
        margin-top: 8vw;
    }
}

.wysiwyg h3 + .wp-caption + p {
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg h3 + .wp-caption + p {
        margin-top: 4vw;
    }
}

.wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
    margin-bottom: 1.25rem;
    padding-left: 1.25rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
        padding-left: 2.66667vw;
    }
}

.wysiwyg h4 + p + figure, .wysiwyg h5 + p + figure, .wysiwyg h6 + p + figure {
    max-width: 700px;
    width: 63.63636%;
}

@media screen and (max-width: 767px) {
    .wysiwyg h4 + p + figure, .wysiwyg h5 + p + figure, .wysiwyg h6 + p + figure {
        max-width: 100%;
        width: 100%;
    }
}

.wysiwyg h4 + p + figure img, .wysiwyg h5 + p + figure img, .wysiwyg h6 + p + figure img {
    width: 100%;
}

.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
    font-weight: 700;
}

.wysiwyg i,
.wysiwyg strong {
    font-weight: bold;
}

.wysiwyg p {
    margin-bottom: 2.5rem;
    padding: 0 2.1875rem;
    font-size: 1rem;
    line-height: 1.75;
}

@media screen and (max-width: 767px) {
    .wysiwyg p {
        margin-top: 4vw;
        margin-bottom: 4vw;
        padding: 0 2.66667vw;
        font-size: 3.73333vw;
    }
}

.wysiwyg p > strong {
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg p > strong {
        font-size: 4vw;
    }
}

.wysiwyg em {
    font-style: italic;
}

.wysiwyg a {
    position: relative;
    color: #009944;
    text-decoration: underline;
}

.wysiwyg a[target="_blank"] {
    margin-right: 3.75rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg a[target="_blank"] {
        display: inline-block;
        margin-right: 4vw;
    }
}

.wysiwyg a[target="_blank"]:after {
    position: absolute;
    right: -2.9375rem;
    bottom: 0;
    width: 25px;
    height: 25px;
    background: url(/img/common/window_g.svg) 0 0 no-repeat;
    background-size: 100% 100%;
    content: "";
}

@media screen and (max-width: 1140px) {
    .wysiwyg a[target="_blank"]:after {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg a[target="_blank"]:after {
        right: -4vw;
        bottom: 2vw;
        width: 3.73333vw;
        height: 3.73333vw;
    }
}

@media screen and (max-width: 767px) {
    .ie11 .wysiwyg a[target="_blank"]:after {
        top: 50%;
        bottom: auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

@media screen and (max-width: 767px) {
    .edge .wysiwyg a[target="_blank"]:after {
        top: 50%;
        bottom: auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

.wysiwyg a:hover {
    text-decoration: none;
}

.wysiwyg ul {
    margin-bottom: 4.0625rem;
    padding-left: 2.5rem;
    list-style-type: disc;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg ul {
        margin-bottom: 8vw;
        padding-left: 5.33333vw;
        font-size: 3.73333vw;
    }
}

.wysiwyg ol {
    margin-bottom: 4.0625rem;
    padding-left: 2.5rem;
    list-style-type: decimal;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg ol {
        margin-bottom: 8vw;
        padding-left: 5.33333vw;
        font-size: 3.73333vw;
    }
}

.wysiwyg li {
    display: list-item;
    margin-bottom: 0.9375rem;
    text-align: -webkit-match-parent;
}

@media screen and (max-width: 767px) {
    .wysiwyg li {
        margin-bottom: 2.66667vw;
    }
}

.wysiwyg li:last-of-type {
    margin-bottom: 0;
}

.wysiwyg blockquote {
    margin: 2.0rem 0;
    padding: 2.0em;
    background-color: #009944;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg blockquote {
        margin-top: 4vw;
        margin-bottom: 4vw;
        padding: 4vw;
    }
}

.wysiwyg table {
    width: 100%;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.wysiwyg th {
    padding: 1.625rem 1.875rem;
    border: 1px solid #cccccc;
    border-collapse: collapse;
    background-color: #009944;
    color: #fff;
    text-align: center;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg th {
        padding: 2.66667vw;
        font-size: 3.73333vw;
    }
}

.ie11 .wysiwyg th {
    padding: 1.875rem 1.875rem 1.375rem;
}

@media screen and (max-width: 767px) {
    .ie11 .wysiwyg th {
        padding: 2.93333vw 0 2.4vw;
    }
}

.wysiwyg td {
    padding: 1.125rem 1.875rem;
    border: 1px solid #cccccc;
    border-collapse: collapse;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg td {
        padding: 2.66667vw;
        font-size: 3.46667vw;
    }
}

.wysiwyg .aligncenter {
    display: block;
    margin: 0 auto 1.875rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg .aligncenter {
        margin-top: 4vw;
        margin-bottom: 4vw;
    }
}

.wysiwyg .alignright {
    float: right;
    margin-left: 3.63636%;
}

@media screen and (max-width: 767px) {
    .wysiwyg .alignright {
        float: none;
        margin-left: 0;
    }
}

.wysiwyg .alignright + p {
    clear: left;
    padding-top: 0.625rem;
}

.wysiwyg .alignleft {
    float: left;
    margin-right: 3.63636%;
}

@media screen and (max-width: 767px) {
    .wysiwyg .alignleft {
        float: none;
        margin-right: 0;
    }
}

.wysiwyg .alignleft + p {
    clear: right;
    padding-top: 0.625rem;
}

.wysiwyg .alignleft + .wp-caption {
    margin-left: 0 !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .alignleft + .wp-caption {
        margin-top: 2.66667vw;
    }
}

.wysiwyg br {
    clear: both;
}

.wysiwyg img[class*="wp-image-"],
.wysiwyg img[class*="attachment-"] {
    margin-bottom: 2.1875rem;
    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 767px) {
    .wysiwyg img[class*="wp-image-"],
    .wysiwyg img[class*="attachment-"] {
        margin-bottom: 4vw;
    }
}

.wysiwyg .fc_green {
    margin-left: .5em;
}

.wysiwyg .wp-caption {
    margin-bottom: 2.5rem;
    max-width: 700px;
    width: 63.63636% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .wp-caption {
        margin-bottom: 8vw;
        width: 100% !important;
    }
}

.wysiwyg .wp-caption.aligncenter {
    max-width: 530px;
    width: 48.18182% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .wp-caption.aligncenter {
        max-width: 100%;
        width: 100% !important;
    }
}

.wysiwyg .wp-caption.alignleft {
    max-width: 530px;
    width: 48.18182% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .wp-caption.alignleft {
        max-width: 100%;
        width: 100% !important;
    }
}

.wysiwyg .wp-caption.alignright {
    max-width: 530px;
    width: 48.18182% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .wp-caption.alignright {
        max-width: 100%;
        width: 100% !important;
    }
}

.wysiwyg .wp-caption img {
    width: 100%;
}

.wysiwyg .wp-caption-text {
    margin-top: -1.1875rem;
    margin-bottom: 0;
    text-align: center;
    letter-spacing: .06em;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    .wysiwyg .wp-caption-text {
        margin-top: -1.33333vw;
        font-size: 3.73333vw;
    }
}

.wysiwyg .gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    clear: both;
    margin-bottom: 2.5rem !important;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery {
        margin-bottom: 0 !important;
    }
}

.wysiwyg .gallery .gallery-item {
    float: none !important;
    margin-top: 0 !important;
}

.wysiwyg .gallery-columns-2 .gallery-item {
    margin-right: 1.81818%;
    width: 23.63636% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-2 .gallery-item {
        margin-right: 4vw;
        margin-bottom: 4vw;
        width: 44vw !important;
    }
}

.wysiwyg .gallery-columns-2 .gallery-item img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-2 .gallery-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-2 .gallery-item:nth-child(2n+1):nth-last-child(-n+2),
    .wysiwyg .gallery-columns-2 .gallery-item:nth-child(2n+1):nth-last-child(-n+2) ~ a {
        margin-bottom: 0;
    }
}

.wysiwyg .gallery-columns-2 .gallery-item:last-of-type {
    margin-right: 0;
}

.wysiwyg .gallery-columns-3 .gallery-item {
    margin-right: 1.81818%;
    width: 23.63636% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-3 .gallery-item {
        margin-right: 4vw;
        margin-bottom: 4vw;
        width: 44vw !important;
    }
}

.wysiwyg .gallery-columns-3 .gallery-item img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-3 .gallery-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-3 .gallery-item:nth-child(2n+1):nth-last-child(-n+2),
    .wysiwyg .gallery-columns-3 .gallery-item:nth-child(2n+1):nth-last-child(-n+2) ~ a {
        margin-bottom: 0;
    }
}

.wysiwyg .gallery-columns-3 .gallery-item:last-of-type {
    margin-right: 0;
}

.wysiwyg .gallery-columns-4 .gallery-item {
    margin-right: 1.81818%;
    width: 23.63636% !important;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-4 .gallery-item {
        margin-right: 4vw;
        margin-bottom: 4vw;
        width: 44vw !important;
    }
}

.wysiwyg .gallery-columns-4 .gallery-item img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-4 .gallery-item:nth-of-type(2n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg .gallery-columns-4 .gallery-item:nth-child(2n+1):nth-last-child(-n+2),
    .wysiwyg .gallery-columns-4 .gallery-item:nth-child(2n+1):nth-last-child(-n+2) ~ a {
        margin-bottom: 0;
    }
}

.wysiwyg .gallery-columns-4 .gallery-item:last-of-type {
    margin-right: 0;
}

/* ---------------------------------------------
*   link-box
--------------------------------------------- */
.link-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 3.125rem 0 3.75rem;
    padding-left: 1.25rem;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .link-box {
        margin: 6.66667vw 0 8vw;
        padding-left: 0;
    }
}

.link-box__inner {
    margin-bottom: 1.25rem;
    width: 50%;
}

@media screen and (max-width: 767px) {
    .link-box__inner {
        width: 46vw;
    }
}

.link-box__inner:nth-child(2n+1):nth-last-child(-n+2),
.link-box__inner:nth-child(2n+1):nth-last-child(-n+2) ~ .link-box__inner {
    margin-bottom: 0;
}

.link-box__inner a {
    position: relative;
    margin-right: 2.9375rem;
    margin-left: 1.125rem;
}

@media screen and (max-width: 767px) {
    .link-box__inner a {
        margin-right: 4vw;
        margin-left: 4vw;
        margin-left: 0;
        font-size: 3.73333vw;
    }
}

.link-box__inner a:before {
    position: absolute;
    top: 50%;
    left: -1.125rem;
    color: #151515;
    content: "\0226b";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

/* ==========================================================
*
*   utility
*
========================================================== */
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 0.66667vw !important;
    }
    .mgt-sp--10 {
        margin-top: 1.33333vw !important;
    }
    .mgt-sp--15 {
        margin-top: 2vw !important;
    }
    .mgt-sp--20 {
        margin-top: 2.66667vw !important;
    }
    .mgt-sp--25 {
        margin-top: 3.33333vw !important;
    }
    .mgt-sp--30 {
        margin-top: 4vw !important;
    }
    .mgt-sp--35 {
        margin-top: 4.66667vw !important;
    }
    .mgt-sp--40 {
        margin-top: 5.33333vw !important;
    }
    .mgt-sp--45 {
        margin-top: 6vw !important;
    }
    .mgt-sp--50 {
        margin-top: 6.66667vw !important;
    }
    .mgt-sp--55 {
        margin-top: 7.33333vw !important;
    }
    .mgt-sp--60 {
        margin-top: 8vw !important;
    }
    .mgt-sp--65 {
        margin-top: 8.66667vw !important;
    }
    .mgt-sp--70 {
        margin-top: 9.33333vw !important;
    }
    .mgt-sp--75 {
        margin-top: 10vw !important;
    }
    .mgt-sp--80 {
        margin-top: 10.66667vw !important;
    }
    .mgt-sp--85 {
        margin-top: 11.33333vw !important;
    }
    .mgt-sp--90 {
        margin-top: 12vw !important;
    }
    .mgt-sp--95 {
        margin-top: 12.66667vw !important;
    }
    .mgt-sp--100 {
        margin-top: 13.33333vw !important;
    }
    .mgt-sp--105 {
        margin-top: 14vw !important;
    }
    .mgt-sp--110 {
        margin-top: 14.66667vw !important;
    }
    .mgt-sp--115 {
        margin-top: 15.33333vw !important;
    }
    .mgt-sp--120 {
        margin-top: 16vw !important;
    }
    .mgt-sp--125 {
        margin-top: 16.66667vw !important;
    }
    .mgt-sp--130 {
        margin-top: 17.33333vw !important;
    }
    .mgt-sp--135 {
        margin-top: 18vw !important;
    }
    .mgt-sp--140 {
        margin-top: 18.66667vw !important;
    }
    .mgt-sp--145 {
        margin-top: 19.33333vw !important;
    }
    .mgt-sp--150 {
        margin-top: 20vw !important;
    }
    .mgt-sp--155 {
        margin-top: 20.66667vw !important;
    }
    .mgt-sp--160 {
        margin-top: 21.33333vw !important;
    }
    .mgt-sp--165 {
        margin-top: 22vw !important;
    }
    .mgt-sp--170 {
        margin-top: 22.66667vw !important;
    }
    .mgt-sp--175 {
        margin-top: 23.33333vw !important;
    }
    .mgt-sp--180 {
        margin-top: 24vw !important;
    }
    .mgt-sp--185 {
        margin-top: 24.66667vw !important;
    }
    .mgt-sp--190 {
        margin-top: 25.33333vw !important;
    }
    .mgt-sp--195 {
        margin-top: 26vw !important;
    }
    .mgt-sp--200 {
        margin-top: 26.66667vw !important;
    }
    .mgt-sp--205 {
        margin-top: 27.33333vw !important;
    }
    .mgt-sp--210 {
        margin-top: 28vw !important;
    }
    .mgt-sp--215 {
        margin-top: 28.66667vw !important;
    }
    .mgt-sp--220 {
        margin-top: 29.33333vw !important;
    }
    .mgt-sp--225 {
        margin-top: 30vw !important;
    }
    .mgt-sp--230 {
        margin-top: 30.66667vw !important;
    }
    .mgt-sp--235 {
        margin-top: 31.33333vw !important;
    }
    .mgt-sp--240 {
        margin-top: 32vw !important;
    }
    .mgt-sp--245 {
        margin-top: 32.66667vw !important;
    }
    .mgt-sp--250 {
        margin-top: 33.33333vw !important;
    }
}

/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 0.66667vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 1.33333vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 2vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 2.66667vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 3.33333vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 4vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 4.66667vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 5.33333vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 6vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 6.66667vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 7.33333vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 8vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 8.66667vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 9.33333vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 10vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 10.66667vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 11.33333vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 12vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 12.66667vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 13.33333vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 14vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 14.66667vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 15.33333vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 16vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 16.66667vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 17.33333vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 18vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 18.66667vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 19.33333vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 20vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 20.66667vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 21.33333vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 22vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 22.66667vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 23.33333vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 24vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 24.66667vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 25.33333vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 26vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 26.66667vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 27.33333vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 28vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 28.66667vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 29.33333vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 30vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 30.66667vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 31.33333vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 32vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 32.66667vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 33.33333vw !important;
    }
}

@media screen and (min-width: 768px) {
    .pc-hide {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .sp-hide {
        display: none !important;
    }
}
