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

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

Contents:
    module
    page
    utility
    ========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */
/*  font color
--------------------------------------------- */
.fc-white {
    color: #fff !important;
}

.fc-black {
    color: #333 !important;
}

/*  backgound color
--------------------------------------------- */
.bg-white {
    background-color: #fff !important;
}

@media screen and (min-width: 751px) {
    .bg-white-pc {
        background-color: #fff !important;
    }
}

.bg-gray1 {
    background-color: #f4f4f4 !important;
}

.bg-gray2 {
    background-color: #efefef !important;
}
.bg-gray3 {
    background-color: #f0f0f0 !important;
}

@media screen and (min-width: 751px) {
    .bg-gray2-pc {
        background-color: #efefef !important;
    }
}

/*  font family
--------------------------------------------- */
.ff-roboto {
    font-family: 'Roboto';
}

.ff-yumincho {
    font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}

.ff-notoerif {
    font-family: 'Noto Serif JP';
}

/*  line height
--------------------------------------------- */
.line-height--2 {
    line-height: 2 !important;
}

/*  text align
--------------------------------------------- */
.txt-al--left {
    text-align: left !important;
}

.txt-al--center {
    text-align: center !important;
}

.txt-al--right {
    text-align: right !important;
}

@media screen and (min-width: 751px) {
    .txt-al-pc--left {
        text-align: left !important;
    }
    .txt-al-pc--center {
        text-align: center !important;
    }
    .txt-al-pc--right {
        text-align: right !important;
    }
}

@media screen and (max-width: 750px) {
    .txt-al-sp--left {
        text-align: left !important;
    }
    .txt-al-sp--center {
        text-align: center !important;
    }
    .txt-al-sp--right {
        text-align: right !important;
    }
}

/*  mod-acc
--------------------------------------------- */
.mod-acc {
    padding-top: 20px;
}

.mod-acc__item-head {
    position: relative;
    display: block;
    padding: 23px 25px 23px 0;
    border-top: 1px solid #d4d4d4;
    cursor: pointer;
}

.mod-acc__item:first-of-type .mod-acc__item-head {
    border-top: none;
}

@media screen and (min-width: 751px) {
    .mod-acc__item-head {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .mod-acc__item-head:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .mod-acc__item-head {
        padding: 23px 0 23px 10px;
    }
}

.mod-acc__item:last-of-type .mod-acc__item-head {
    border-bottom: 1px solid #d4d4d4;
}

.mod-acc__ttl {
    position: relative;
    display: inline-block;
    font-weight: bold;
    font-size: 1.71429rem;
    line-height: 1.4;
}

@media screen and (max-width: 750px) {
    .mod-acc__ttl {
        display: block;
        padding-right: 65px;
        letter-spacing: 1px;
        font-size: 1.14286rem;
        line-height: 1.4;
    }
}

.mod-acc__item-head[href] .mod-acc__ttl {
    padding-right: 42px;
}

.mod-acc__item-head[href] .mod-acc__ttl::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .mod-acc__item-head[href] .mod-acc__ttl::after {
        right: 9px;
    }
}

.js-acc-trigger .mod-acc__ttl {
    padding-right: 35px;
}

.js-acc-trigger .mod-acc__ttl::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 16px;
    height: 10px;
    background: url(../img/common/icon_arrow_down.svg) 0 0 no-repeat;
    background-size: 16px 10px;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .js-acc-trigger .mod-acc__ttl::after {
        right: 9px;
    }
}

.js-acc-opened .js-acc-trigger .mod-acc__ttl::after {
    background-image: url(../img/common/icon_arrow_up.svg);
}

@media screen and (min-width: 751px) {
    .mod-acc__item-head:hover .mod-acc__ttl {
        text-decoration: underline;
    }
}

.mod-acc__item-body {
    position: relative;
    display: none;
    padding: 80px 0;
    border-top: 1px solid #d4d4d4;
}

@media screen and (max-width: 750px) {
    .mod-acc__item-body {
        padding: 40px 0 80px 0;
    }
}

.mod-acc__item-body *:last-child {
    margin-bottom: 0;
}

/*  mod-btn
--------------------------------------------- */
.mod-btn-wrap-container {
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}

@media screen and (max-width: 750px) {
    .mod-btn-wrap-container {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}

.mod-btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;
    margin-bottom: 30px;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -ms-flex: 0 1 auto;
}

@media screen and (max-width: 750px) {
    .mod-btn-wrap {
        display: block;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 751px) {
    .mod-col__item .mod-btn-wrap {
        height: 100%;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn-wrap--mgb-narrow {
        margin-bottom: 7px;
    }
}

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

.mod-btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 60px 0 20px;
    max-width: 100%;
    background-color: #fff;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
}



@media screen and (min-width: 751px) {
    .mod-btn {
        min-height: 100px;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn {
        padding-top: 17px;
        padding-bottom: 17px;
        width: 100%;
    }
    .mod-btn:nth-of-type(n+2) {
        margin-top: 7px;
    }
    .mod-btn--nolink {
        margin-top: 7px;
    }
}

.mod-btn--bg {
    background-color: #666;
}

.mod-btn--no-arrow {
    padding-right: 1em;
}

.mod-btn--more {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 32px;
    padding-bottom: 35px;
    padding-left: 40px;
}

@media screen and (max-width: 750px) {
    .mod-btn--more {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        -ms-flex-pack: justify;
        -ms-flex-align: start;
        padding-top: 14px;
        padding-bottom: 15px;
        padding-left: 18px;
        min-height: 127px;

        -webkit-box-pack: start;
        justify-content: start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        justify-content: space-between;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-box-align: start;
        align-items: flex-start;
    }
}

.mod-btn--mid {
    padding-top: 7px;
    padding-bottom: 7px;
}

@media screen and (min-width: 751px) {
    .mod-btn--mid {
        min-height: 110px;
    }
    .mod-col .mod-btn--mid {
        margin-bottom: 20px;
    }
    .mod-col .mod-btn--mid:last-of-type {
        margin-bottom: 0;
    }
    .windows .mod-btn--mid {
        padding-top: 9px;
        padding-bottom: 5px;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn--mid {
        margin-bottom: 20px;
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .mod-btn--mid:last-of-type {
        margin-bottom: 0;
    }
}

.mod-btn--mid02 {
    padding-top: 25px;
    padding-bottom: 25px;
}

@media screen and (min-width: 751px) {
    .mod-col .mod-btn--mid02 {
        margin-bottom: 20px;
    }
    .mod-col .mod-btn--mid02:last-of-type {
        margin-bottom: 0;
    }
    .windows .mod-btn--mid02 {
        padding-top: 9px;
        padding-bottom: 5px;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn--mid02 {
        margin-bottom: 7px;
        padding-top: 17px;
        padding-bottom: 17px;
    }
    .mod-btn--mid02:last-of-type {
        margin-bottom: 0;
    }
}

@media screen and (min-width: 751px) {
    .mod-btn--mid-pc {
        padding-top: 37px;
        padding-bottom: 37px;
    }
}

.mod-btn--large {
    min-height: 155px;
}
@media screen and (max-width: 750px) {
    .mod-btn--large {
        padding-top: 28px;
        padding-bottom: 25px;
    }
}

.mod-btn::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.mod-btn--black::after {
    background-image: url(../img/common/icon_circle-arrow_right_white.svg);
}

.mod-btn--bg::after {
    background-image: url(../img/common/icon_circle-arrow_right_white.svg);
}

.mod-btn--no-arrow::after {
    background-image: none;
}

.mod-btn--nolink::after {
    content: none;
}

@media screen and (min-width: 751px) {
    .mod-btn {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
}
@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .mod-btn:hover {
        opacity: 0.8;
    }

    .mod-btn--nolink:hover {
        opacity: 1;
    }
}
.mod-btn--black {
    background-color: #333;
}
@media screen and (max-width: 750px) {
    .mod-btn--black:nth-of-type(n+2) {
        margin-top: 15px;
    }
}

@media screen and (max-width: 750px) {
.mod-btn--sustainability {
    min-height: 123px;
}
}

@media screen and (min-width: 751px) {
    .mod-btn-wrap--col2 .mod-btn {
        width: 48.4375%;
    }
    .mod-btn-wrap--col2 .mod-btn:nth-of-type(n+3) {
        margin-top: 20px;
    }
    .mod-btn--nolink {
        margin-top: 20px;
    }
}

@media screen and (min-width: 751px) {
    .mod-btn-wrap--col3 .mod-btn {
        width: 31.25%;
    }
    .mod-btn-wrap--col3 .mod-btn:nth-of-type(n+4) {
        margin-top: 20px;
    }
}

.contact-service .mod-btn {
    margin-top: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    min-height: 80px;
    border-bottom: 1px solid #d4d4d4;
}

@media screen and (min-width: 751px) {
    .contact-service .mod-btn {
        padding-right: 20px;
        padding-left: 0;
    }
    .windows.ie .contact-service .mod-btn,
    .windows.edge .contact-service .mod-btn {
        padding-top: 21px;
        padding-bottom: 19px;
    }
    .contact-service .mod-btn::after {
        display: none;
    }
}

@media screen and (max-width: 750px) {
    .contact-service .mod-btn {
        padding-right: 21.44772%;
        padding-left: 10px;
    }
    .contact-service .mod-btn::after {
        right: 10px;
    }
}

.mod-btn--wide {
    width: 100%;
}

.mod-btn__txt {
    display: block;
    max-width: 100%;
    font-weight: bold;
    font-size: 1.28571rem;
    /* IE10ÓÃ */
}

.mod-btn__txt--en {
    font-family: 'Roboto';
}

@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .mod-btn:hover .mod-btn__txt {
        text-decoration: underline;
    }
}

@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .mod-btn--nolink:hover .mod-btn__txt {
        text-decoration: none;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn__txt {
        letter-spacing: 1px;
        font-size: 1.28571rem;
    }
}

.mod-btn--bg .mod-btn__txt {
    color: #fff;
}

.mod-btn--black .mod-btn__txt {
    color: #fff;
}

.mod-btn--bg:hover .mod-btn__txt {
    text-decoration: none;
}

.mod-btn--more .mod-btn__txt {
    display: block;
}

.mod-btn--mid .mod-btn__txt {
    font-size: 1.71429rem;
}

@media screen and (max-width: 750px) {
    .mod-btn--mid .mod-btn__txt {
        font-size: 1.5rem;
    }
}

@media screen and (min-width: 751px) {
    .mod-btn--mid-pc .mod-btn__txt {
        font-size: 1.71429rem;
    }
}

.mod-btn--large .mod-btn__txt {
    font-size: 2.14286rem;
}

@media screen and (max-width: 750px) {
    .mod-btn--large .mod-btn__txt {
        font-size: 1.71429rem;
    }
}

.contact-service .mod-btn__txt {
    font-size: 1.71429rem;
}

@media screen and (max-width: 750px) {
    .contact-service .mod-btn__txt {
        letter-spacing: .5px;
        font-size: 1.14286rem;
    }
}

@media screen and (min-width: 751px) {
    .contact-service .mod-btn__txt {
        position: relative;
        display: inline-block;
        padding-right: 45px;
    }
    .contact-service .mod-btn__txt::after {
        position: absolute;
        top: 50%;
        right: 0;
        display: inline-block;
        width: 24px;
        height: 24px;
        background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
        background-size: 100% auto;
        content: "";
        vertical-align: middle;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}
@media screen and (min-width: 751px) {
    .mod-btn__txt--White-icon {
        padding-top: 36px;
        padding-bottom: 32px;
    }
}
@media screen and (max-width: 750px) {
    .mod-btn__txt--White-icon {
        padding-top: 48px;
    }
}

.mod-btn__txt--White-icon:after {
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    display: block;
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.mod-btn-wrap .mod-btn__txt {
    position: relative;
}
.mod-btn__txt--pdf::after {
        position: absolute;
        content: "";
        background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
        background-size: 100% auto;
        width: 25px;
        height: 25px;
        top: 10px;
        right: -33px;
    }
@media screen and (max-width: 750px) {
    .mod-btn__txt--pdf::after {
        position: absolute;
        content: "";
        background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
        background-size: 100% auto;
        width: 25px;
        height: 25px;
        top: 5px;
        right: -33px;
    }
    .windows.chrome .mod-btn__txt--pdf::after {
        position: absolute;
        content: "";
        background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
        background-size: 100% auto;
        width: 23px;
        height: 23px;
        top: 3px;
        right: -33px;
    }
}
@media screen and (max-width: 751px) {
    .mod-btn__txt--icon-pdf:after {
        position: relative;
        top: 1px;
        display: inline-block;
        margin-left: 3px;
        width: 20px;
        height: 20px;
        background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
        background-size: 100% auto;
        content: "";
    }
}
.mod-btn__txt .mod-btn__txt--icon-pdf::after {
    position: relative;
    top: 1px;
    display: inline-block;
    margin-left: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}
.mod-btn__txt-space {
    position: relative;
    display: block;
    font-size: 1.71429rem;
    font-weight: bold;
    color: #fff;
    padding-top: 26px;
    letter-spacing: 0.06em;
}

.mod-btn__txt-space--en {
    font-family: 'Roboto';
}
@media screen and (min-width: 751px) {
    .mod-btn__txt-space::after {
        position: absolute;
        content: "";
        width: 25px;
        height: 25px;
        top: 31px;
        left: 210px;
        background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
        background-size: 100% auto;
    }

    .mod-btn__txt-space--en::after {
        position: absolute;
        content: "";
        width: 25px;
        height: 25px;
        top: 31px;
        left: 400px;
        background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
        background-size: 100% auto;
    }
}
@media screen and (max-width: 750px) {
    .mod-btn__txt-space {
        padding-top: 16px;
    }
    .mod-btn__txt-space::after {
        position: absolute;
        content: "";
        width: 23px;
        height: 23px;
        top: 23px;
        right: -31px;
        background-image: url(../img/common/icon_pdf3.png);
    }

    .mod-btn__txt-space--en::after {
        position: absolute;
        content: "";
        width: 23px;
        height: 23px;
        top: 59px;
        right: -31px;
        background-image: url(../img/common/icon_pdf3.png);
    }

    .windows.chrome .mod-btn__txt-space::after {
        position: absolute;
        content: "";
        width: 23px;
        height: 23px;
        top: 19px;
        right: -31px;
        background-image: url(../img/common/icon_pdf3.png);
    }
}
@media screen and (max-width: 750px) {
    .mod-btn--info {
        min-height: 140px;
        padding-top: 38px;
    }

    .mod-btn--info--en {
        padding-top: 20px;
    }
}
.mod-btn-link {
    position: relative;
    display: block;
    font-size: 1.1429rem;
    width: 180px;
    margin-top: 6px;
    padding: 15px 0 15px 19px;
    background-color: #000;
    color: #fff;
}
.mod-btn-link::after {
    position: absolute;
    content: "";
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
}
@media screen and (max-width: 750px) {
    .mod-btn-link::after {
        position: absolute;
        content: "";
        width: 25px;
        height: 25px;
        top: 18px;
        background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
        background-size: 100% auto;
    }
}
.mod-btn-access {
    position: relative;
    display: block;
    font-size: 1.1429rem;
    width: 180px;
    margin-top: 6px;
    padding: 15px 0 15px 19px;
    background-color: #333;
    color: #fff;
    transition: opacity 0.3s;
}
.mod-btn-access::after {
    position: absolute;
    content: "";
    width: 25px;
    height: 25px;
    right: 14px;
    top: 50%;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
    transform: translateY(-50%);
}
@media screen and (min-width: 751px) {
    .mod-btn-access:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 750px) {
    .mod-btn-access {
        width: 170px;
        margin-top: 11px;
        margin-bottom: 13px;
        padding: 10px 0px 10px 27px;
    }
    .mod-btn-access::after {
        width: 26px;
        height: 26px;
        right: 20px;
    }
}

.mod-btn-access--en {
    width: 110px;
    padding: 9px 0 9px 19px;
}
.mod-btn-access--en::after {
    width: 21px;
    height: 21px;
}

/*  mod-btn02
--------------------------------------------- */
.mod-btn02 {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 35px;
    margin-right: auto;
    margin-left: auto;
    padding: 21px 1em;
    max-width: 460px;
    width: 100%;
    background-color: #333;
    text-align: center;
}

.mod-btn02--sp-multi {
    padding-top: 19px;
    padding-bottom: 19px;
}

@media screen and (max-width: 750px) {
    .mod-btn02--sp-multi {
        padding-top: 9px;
        padding-bottom: 9px;
    }
}

@media screen and (min-width: 751px) {
    .mod-btn02 {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .mod-btn02:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn02 {
        max-width: 310px;
    }
}

.mod-btn02__txt {
    display: block;
    max-width: 100%;
    color: #fff;
    font-size: 1rem;
    line-height: 1.8;
    letter-spacing: 0.07em;
}

@media screen and (max-width: 750px) {
    .mod-btn02__txt {
        position: relative;
        display: inline-block;
        padding-right: 35px;
        text-align: left;
        letter-spacing: .4px;
        font-size: 1.14286rem;
        line-height: 1.4;
    }
}

.mod-btn02__txt::after {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-left: 15px;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .mod-btn02__txt::after {
        position: absolute;
        top: 50%;
        right: 0;
        margin-left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

@media screen and (min-width: 751px) {
    .mod-btn02:hover .mod-btn02__txt {
        text-decoration: underline;
    }
}

/*  mod-checkbox
--------------------------------------------- */
.mod-checkbox-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .mod-checkbox-wrap {
        padding-left: 22px;
    }
}

.news-search .mod-checkbox-wrap {
    margin-right: auto;
    padding-right: 1em;
}

@media screen and (max-width: 750px) {
    .news-search .mod-checkbox-wrap {
        margin-right: 0;
        padding-right: 0;
    }
}

.mod-checkbox {
    margin-right: 25px;
    font-size: 0;
}

@media screen and (max-width: 750px) {
    .mod-checkbox {
        margin-right: 18px;
    }
}

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

.mod-checkbox label {
    cursor: pointer;
}

@media screen and (min-width: 751px) {
    .mod-checkbox label {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .mod-checkbox label:hover {
        opacity: 0.8;
    }
}

.mod-checkbox__checkbox {
    display: none;
}

.mod-checkbox__checkbox + span {
    position: relative;
    display: inline-block;
    padding-left: 28px;
    font-size: 1.14286rem;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

@media screen and (min-width: 751px) {
    .windows .mod-checkbox__checkbox + span {
        padding-top: 2px;
    }
}

@media screen and (min-width: 751px) and (min-width: 751px) {
    .mod-checkbox label:hover .mod-checkbox__checkbox + span {
        text-decoration: underline;
    }
}

@media screen and (max-width: 750px) {
    .mod-checkbox__checkbox + span {
        padding-left: 33px;
        font-size: 1.14286rem;
    }
}

.mod-checkbox__checkbox + span::before, .mod-checkbox__checkbox + span::after {
    position: absolute;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: "";
}

.mod-checkbox__checkbox + span::before {
    top: 2px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #333;
}

@media screen and (max-width: 750px) {
    .mod-checkbox__checkbox + span::before {
        top: -1px;
        width: 25px;
        height: 25px;
    }
}

@media screen and (min-width: 751px) {
    .windows .mod-checkbox__checkbox + span::before {
        top: 3px;
    }
}

.mod-checkbox__checkbox + span::after {
    top: 4px;
    left: 7px;
    width: 7px;
    height: 12px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    opacity: 0;
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}

@media screen and (max-width: 750px) {
    .mod-checkbox__checkbox + span::after {
        top: 2px;
        left: 8px;
        width: 9px;
        height: 15px;
        border-width: 4px;
    }
}

@media screen and (min-width: 751px) {
    .windows .mod-checkbox__checkbox + span::after {
        top: 5px;
    }
}

.mod-checkbox__checkbox:checked + span:before {
    background-color: #333;
}

.mod-checkbox__checkbox:checked + span:after {
    opacity: 1;
}

/*  mod-col
--------------------------------------------- */
.mod-col--pc-col2 .mod-col__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .mod-col--pc-col2 .mod-col__list {
        display: block;
    }
}

@media screen and (max-width: 750px) {
    .mod-col__item {
        margin-bottom: 20px;
    }
    .mod-col__item:last-of-type {
        margin-bottom: 0;
    }
}

.mod-col--pc-col2 .mod-col__item {
    width: 48.4375%;
}

@media screen and (min-width: 751px) {
    .mod-col--pc-col2 .mod-col__item:nth-of-type(n+3) {
        margin-top: 30px;
    }
}

@media screen and (max-width: 750px) {
    .mod-col--pc-col2 .mod-col__item {
        width: 100%;
    }
}
/*  mod-section
--------------------------------------------- */
.mod-section__specific-container {
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}
.mod-section--esg {
    padding-bottom: 80px;
}
@media screen and (max-width: 750px) {
    .mod-section__specific-container {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}
.mod-section__esg-img {
    max-width: 960px;
    margin: 30px auto 0;
    padding-right: 10px;
    padding-left: 10px;
}
@media screen and (max-width: 750px) {
    .mod-section__esg-img {
        margin-top: calc((100 / 828) * 35vw);
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}

/* ---------------------------------------------
*   mod-list-case
--------------------------------------------- */
.mod-list-case {
    display: flex;
    margin-bottom: 30px;
    flex-wrap: wrap;
    justify-content: space-between;
    -ms-flex: 0 1 auto;
}
@media screen and (max-width: 750px) {
    .mod-list-case {
        display: block;
    }
}

.mod-list-case__item {
    width: 31.25%;
    box-sizing: border-box;
    padding: 22px 20px 29px 20px;
    max-width: 100%;
    background-color: #efefef;
}
@media screen and (max-width: 750px) {
    .mod-list-case__item {
        margin-top: calc((100 / 828) * 15vw);
        padding: calc((100 / 828) * 31vw) calc((100 / 828) * 20vw) calc((100 / 828) * 31vw) calc((100 / 828) * 36vw);
        width: 100%;
    }
    .mod-list-case__item:nth-of-type(n+2) {
        margin-top: calc((100 / 828) * 20vw);
    }
}
.mod-list-case__item a:hover {
    text-decoration: underline;
}
.mod-list-case__lead {
    display: block;
    font-size: 1.1428571429rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 7px;
}
@media screen and (max-width: 750px) {
    .mod-list-case__lead {
        font-size: calc((100 / 828) * 32vw);
        margin-bottom: calc((100 / 828) * 22vw);
    }
}

.mod-list-case__txt {
    font-size: 1rem;
    color: #333333;
}
@media screen and (max-width: 750px) {
    .mod-list-case__txt {
        font-size: calc((100 / 828) * 32vw);
        line-height: 1.8;
        color: #333333;
    }
}

/*  mod-container
--------------------------------------------- */
.mod-container {
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}

.contents--aboutas .mod-container {
    padding-bottom: 80px;
}
@media screen and (max-width: 750px) {
    .contents--aboutas .mod-container {
        padding-bottom: 9.2%;
    }
}

@media screen and (max-width: 750px) {
    .mod-container {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}

@media screen and (min-width: 751px) {
    .mod-container-pc {
        margin-right: auto;
        margin-left: auto;
        max-width: 960px;
    }
}

@media screen and (max-width: 750px) {
    .mod-container-sp {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
    }
}

.mod-container--en {
    margin-top: -10px;
}

/*  mod-faq
--------------------------------------------- */
.mod-faq {
    padding-top: 20px;
}

.mod-faq__item {
    border-bottom: 1px solid #d4d4d4;
}

.mod-faq__item-head {
    position: relative;
    padding: 17px 25px 17px 50px;
    cursor: pointer;
}

@media screen and (min-width: 751px) {
    .windows .mod-faq__item-head {
        padding-top: 18px;
        padding-bottom: 16px;
    }
}

@media screen and (max-width: 750px) {
    .mod-faq__item-head {
        padding: 20px 0 20px 33px;
    }
}

.mod-faq__item-head::before {
    position: absolute;
    top: 19px;
    left: 20px;
    display: block;
    content: "Q";
    font-weight: bold;
    font-size: 1.57143rem;
    font-family: 'Roboto';
    line-height: 1;
}

@media screen and (max-width: 750px) {
    .mod-faq__item-head::before {
        top: 50%;
        left: 8px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

.mod-faq__ttl {
    position: relative;
    display: inline-block;
    padding-right: 35px;
    font-weight: bold;
    font-size: 1.14286rem;
    line-height: 1.8;
}

@media screen and (max-width: 750px) {
    .mod-faq__ttl {
        display: block;
        padding-right: 65px;
        letter-spacing: 1px;
        font-size: 1.14286rem;
        line-height: 1.4;
    }
}

@media screen and (min-width: 751px) {
    .mod-faq__item-head:hover .mod-faq__ttl {
        text-decoration: underline;
    }
}

.mod-faq__ttl::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 16px;
    height: 10px;
    background: url(../img/common/icon_arrow_down.svg) 0 0 no-repeat;
    background-size: 16px 10px;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .mod-faq__ttl::after {
        right: 9px;
    }
}

.js-acc-opened .mod-faq__ttl::after {
    background-image: url(../img/common/icon_arrow_up.svg);
}

.mod-faq__item-body {
    position: relative;
    display: none;
    padding: 0 25px 17px 50px;
}

@media screen and (max-width: 750px) {
    .mod-faq__item-body {
        margin-top: 10px;
        padding: 0 30px 14px 33px;
    }
}

.mod-faq__item-body::before {
    position: absolute;
    top: 4px;
    left: 20px;
    display: block;
    color: #ccc;
    content: "A";
    font-weight: bold;
    font-size: 1.57143rem;
    font-family: 'Roboto';
    line-height: 1;
}

@media screen and (max-width: 750px) {
    .mod-faq__item-body::before {
        left: 8px;
    }
}

.mod-faq__txt {
    font-size: 1.14286rem;
    line-height: 2;
}

/*  mod-heading
--------------------------------------------- */
.mod-heading {
    padding-top: 7px;
    padding-bottom: 7px;
    background-color: #333;
    color: #fff;
}

.mod-heading--en {
    padding-top: 20px;
    padding-bottom: 12px;
}

@media screen and (max-width: 750px) {
    .mod-heading {
        padding-top: 13px;
        padding-bottom: 13px;
    }
    .mod-heading--en {
        padding-top: 4%;
        padding-bottom: 4%;
    }
    .contents--aboutas .mod-heading--en {
        padding-top: 1%;
        padding-bottom: 1%;
    }
}

.mod-heading--mid {
    padding-top: 12px;
    padding-bottom: 12px;
}

@media screen and (max-width: 750px) {
    .mod-heading--mid {
        position: relative;
    }
}

.mod-heading--mid02 {
    padding-top: 15px;
    padding-bottom: 15px;
}

@media screen and (max-width: 750px) {
    .mod-heading--mid02 {
        position: relative;
    }
}

@media screen and (min-width: 751px) {
    .mod-heading--mid03 {
        padding-top: 17px;
        padding-bottom: 17px;
    }
}

@media screen and (max-width: 750px) {
    .mod-heading--mid03 {
        position: relative;
    }
}

.mod-heading--large {
    margin-bottom: 75px;
    padding-top: 32px;
    padding-bottom: 32px;
}

@media screen and (max-width: 750px) {
    .mod-heading--large {
        margin-bottom: 33px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .contents--officer .mod-heading--large {
        margin-bottom: 7%;
    }
    .contents--topmessage .mod-heading--large {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 750px) {
    .mod-heading--sustainability {
        margin-bottom: calc((100 / 826) * 60vw);
    }
}

.mod-heading__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;

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

.mod-heading__container--frist {
    display: block !important;
}


@media screen and (max-width: 750px) {
    .mod-heading__container {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
    .mod-heading__container--sustainability {
        position: relative;
        justify-content: center;
    }
    .mod-heading__container--sustainability-icon {
        position: absolute;
        width: calc((100 / 828) * 50vw);
        height: calc((100 / 828) * 50vw);
        top: 50%;
        right: 5vw;
        transform: translateY(-50%);
    }
}

@media screen and (min-width: 751px) {
    .mod-heading__container--wide {
        max-width: 1130px;
    }
}

@media screen and (max-width: 750px) {
    .mod-heading--mid .mod-heading__container {
        display: block;
        text-align: center;
    }
    .mod-heading--large .mod-heading__container {
        display: block;
    }

    .mod-heading__container--en {
        justify-content: center;
    }
}

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

@media screen and (min-width: 751px) {
    .mod-heading__ttl {
        width: calc(100% - 180px);
    }
    .top-company .mod-heading__ttl {
        width: auto;
    }
}

.mod-heading--large .mod-heading__ttl {
    width: 100%;
}

@media screen and (max-width: 750px) {
    .mod-heading--large .mod-heading__ttl {
        display: block;
        text-align: center;
    }
}

.mod-heading__crumb {

}

.mod-heading__ttl-txt {
    font-size: 1.71429rem;
}

@media screen and (max-width: 750px) {
    .mod-heading__ttl-txt {
        font-size: 5.86797vw;
    }
    .mod-heading__ttl-txt--sp-small {
        font-size: 4.88998vw;
    }
}

.mod-heading--mid .mod-heading__ttl-txt {
    font-size: 2.14286rem;
}

@media screen and (max-width: 750px) {
    .mod-heading--mid .mod-heading__ttl-txt {
        display: inline-block;
        font-size: 5.86797vw;
    }
}

.mod-heading--mid02 .mod-heading__ttl-txt {
    font-size: 1.85714rem;
}

@media screen and (max-width: 750px) {
    .mod-heading--mid02 .mod-heading__ttl-txt {
        display: inline-block;
        font-size: 5.13447vw;
    }
}

.mod-heading--large .mod-heading__ttl-txt {
    font-size: 2.14286rem;
}

.mod-heading__ttl-txt--font {
    font-family: 'Roboto';
}

.mod-heading--large .mod-heading__ttl-txt--font {
    font-family: 'Roboto';
}
.c-section-ir__head .mod-heading__ttl-txt--font {
    font-family: 'Roboto';
}

@media screen and (min-width: 751px) {
    .mod-heading--large .mod-heading__ttl-txt {
        letter-spacing: 2px;
    }
}

@media screen and (max-width: 750px) {
    .mod-heading--large .mod-heading__ttl-txt {
        display: inline-block;
        font-size: 5.86797vw;
    }
    .mod-heading--large .mod-heading__ttl-txt--font {
        letter-spacing: 0;
    }
}

.top-company .mod-heading__ttl-txt {
    position: relative;
    top: 5px;
}

@media screen and (max-width: 750px) {
    .top-company .mod-heading__ttl-txt {
        top: 0;
    }
}

.top-company .mod-heading__ttl-txt::after {
    position: absolute;
    top: -2px;
    right: -40px;
    display: block;
    width: 30px;
    height: 20px;
    background: url(../img/common/img_deco_04.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 750px) {
    .top-company .mod-heading__ttl-txt::after {
        top: -4px;
        right: -32px;
        width: 24px;
        height: 16px;
        background-image: url(../img/common/img_deco_06.png);
    }
}

.mod-heading__ttl-txt-small {
    position: relative;
    top: -2px;
    margin-left: 17px;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .mod-heading__ttl-txt-small {
        top: -0.489vw;
        margin-left: 4.27873vw;
        font-size: 3.42298vw;
    }
}
.mod-heading__ttl-txt--en {
    position: relative;
}

@media screen and (max-width: 750px) {
    .mod-heading__ttl-txt--en {
        letter-spacing: 0.1em;
    }
}

.mod-heading__ttl-txt--en::after {
    position: absolute;
    top: -2px;
    right: -40px;
    display: block;
    width: 30px;
    height: 20px;
    background: url(../img/common/img_deco_04.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}
@media screen and (max-width: 750px) {
    .mod-heading__ttl-txt--en::after {
        position: absolute;
        top: -0.3vw;
        right: -4.6vw;
        display: block;
        width: 4vw;
        height: 3vw;
        background: url(../img/common/img_deco_04.png) 0 0 no-repeat;
        background-size: 100% auto;
        content: "";
    }
}




/*  mod-lead
--------------------------------------------- */
.mod-lead {
    margin-bottom: 35px;
    font-size: 1.14286rem;
    line-height: 1.9;
}

@media screen and (max-width: 750px) {
    .mod-lead {
        margin-bottom: 32px;
        font-size: 1.14286rem;
    }
}

.mod-lead--en {
    font-family: 'Roboto';
    margin-bottom: 70px;
}
@media screen and (max-width: 750px) {
    .mod-lead--en {
        margin-bottom: 10%;
    }
}

.mod-lead--ir {
    font-family: 'Roboto';
    margin-bottom: 21px;
}

@media screen and (max-width: 750px) {
    .mod-lead--sustainability {
        font-size: calc((100 / 826) * 32vw);
        margin-bottom: calc((100 / 826) * 72vw);
    }
}

/*  mod-date
--------------------------------------------- */
.mod-date {
    font-size: 1.14286rem;
    line-height: 1.9;
    text-align: right;
}


/*  mod-more
--------------------------------------------- */
.mod-more--center {
    text-align: center;
}

.mod-heading .mod-more {
    margin-top: 3px;
}

@media screen and (min-width: 751px) {
    .mod-heading .mod-more {
        width: 180px;
        text-align: right;
    }
}

@media screen and (max-width: 750px) {
    .mod-heading .mod-more {
        margin-top: 0;
        margin-left: .5em;
    }
}

.mod-btn-wrap .mod-more {
    margin-top: 26px;
}

@media screen and (max-width: 750px) {
    .mod-btn-wrap .mod-more {
        margin-top: 17px;
    }
}

@media screen and (max-width: 750px) {
    .mod-heading--mid .mod-more {
        position: absolute;
        top: 50%;
        right: 4.40098%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

.info-settlement .mod-more {
    margin-top: 62px;
}

@media screen and (max-width: 750px) {
    .info-settlement .mod-more {
        margin-top: 42px;
    }
}

.mod-more__link {
    display: inline-block;
}

@media screen and (min-width: 751px) {
    .mod-more__link[href] {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .mod-more__link[href]:hover {
        opacity: 0.8;
    }
}

.mod-more__link:nth-child(2) {
  margin: 0 0 0 40px;
}


.mod-more__txt {
    font-size: 1rem;
}
.mod-more__txt--black {
    color: #000;
}
.top-panel--en .mod-more__txt {
    font-weight: bold;
}
.mod-more__txt--en {
    font-family: 'Roboto';
}


@media screen and (max-width: 750px) {
    .mod-heading .mod-more__txt {
        font-size: 0;
    }
    .mod-more--sp-vw .mod-more__txt {
        font-size: 3.42298vw;
    }

    .mod-more__txt--sustainability {
        font-size: 3.42298vw;
    }
}
.mod-more__txt-gavanance {
    font-size: 1rem;
}
.mod-more__txt-gavanance {
    color: #fff;
}

@media screen and (max-width: 750px) {
    .mod-heading .mod-more__txt-gavanance {
        font-size: 0;
    }
    .mod-more--sp-vw .mod-more__txt-gavanance {
        font-size: 3.42298vw;
    }
}
@media screen and (min-width: 751px) {
    .mod-more__txt-gavanance::after {
        display: inline-block;
        margin-top: -3px;
        margin-left: 7px;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
        background-size: 100% auto;
        content: "";
        vertical-align: middle;
    }
}

.mod-more__txt::after {
    display: inline-block;
    margin-top: -3px;
    margin-left: 7px;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}
.mod-more__txt--black::after {
    background-image: url(../img/common/icon_circle-arrow_right.svg);
}

@media screen and (max-width: 750px) {
    .mod-heading .mod-more__txt::after {
        margin-top: -0.7335vw;
        margin-left: 0;
        width: 6.11247vw;
        height: 6.11247vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-more--sp-vw .mod-more__txt::after {
        margin-top: -0.7335vw;
        margin-left: 2.44499vw;
        width: 6.11247vw;
        height: 6.11247vw;
    }
}

.mod-more--icon-white .mod-more__txt::after {
    background-image: url(../img/common/icon_circle-arrow_right_white.svg);
}



.mod-more--icon-left .mod-more__txt::after {
    display: none;
}

.mod-more--icon-left .mod-more__txt::before {
    display: inline-block;
    margin-top: -3px;
    margin-right: 20px;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-image: url(../img/common/icon_circle-arrow_left.svg);
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .mod-more--icon-left .mod-more__txt::before {
        margin-right: 10px;
    }
}

@media screen and (min-width: 751px) {
    .mod-more__link[href]:hover .mod-more__txt {
        text-decoration: underline;
    }
}


/*  mod-panel
--------------------------------------------- */
.mod-panel + .mod-panel--wide {
    margin-top: 20px;
}

@media screen and (min-width: 751px) {
    .mod-col .mod-panel {
        height: 100%;
    }
}
.mod-panel--books {
    margin-top: 5px;
}
@media screen and (max-width: 750px) {
    .mod-panel--books {
        margin-bottom: calc((100 / 750) * 150vw);
        margin-top: calc((100 / 750) * 45vw);
    }
}

.mod-panel__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

.mod-panel__list--ir {
    margin-top: 30px;
    margin-bottom: 55px;
}
.mod-en-container .mod-panel__list {
    margin-top: 25px;
}
.mod-panel__list--sustainabillty {
    margin-top: 80px;
}
@media screen and (min-width: 751px) {
    .mod-col .mod-panel__list {
        height: 100%;
    }
}
@media screen and (max-width: 750px) {
    .mod-panel__list--ir {
        margin-top: calc((100 / 750) * 56vw);
        margin-bottom: calc((100 / 750) * 155vw);
    }
    .mod-en-container .mod-panel__list {
        margin-top: 9%;
    }
}

.mod-panel__item {
    min-height: 240px;
    width: 48.4375%;
}

@media screen and (min-width: 751px) {
    .mod-panel__item:nth-of-type(n+3) {
        margin-top: 25px;
    }
    .mod-panel__item--en:nth-of-type(n+3) {
        margin-top: 10px;
    }
    .mod-panel--wide .mod-panel__item {
        width: 100%;
    }
    .mod-panel__item--large {
        min-height: 340px;
    }
    .mod-panel__item--small {
        min-height: 240px;
    }
    .contents--aboutas .mod-panel__item {
        min-height: 160px;
    }
    .mod-panel__item--sustainabillty {
        width: 49%;
        min-height: 240px;
    }
    .mod-panel__item--sustainabillty:nth-of-type(n+3) {
        margin-top: 2%;
    }
}

@media screen and (max-width: 960px) {
    .mod-panel__item--en:nth-of-type(n+3) {
        margin-top: 5px;
    }
}
@media screen and (max-width: 750px) {
    .mod-panel__item {
        min-height: 193px;
        width: 100%;
    }
    .mod-panel__item--en {
        min-height: auto;
    }
    .mod-panel__item:nth-of-type(n+2) {
        margin-top: 45px;
    }
    .mod-panel__item--sustainabillty {
        min-height: 153px;
    }
    .mod-panel__item--sustainabillty:nth-of-type(n+2) {
        margin-top: 15px;
    }
    .mod-panel__item--en:nth-of-type(n+2) {
        margin-top: calc((100 / 750) * 45vw);
    }
    .mod-panel__item--thema:nth-of-type(n+2) {
        margin-top: 20px;
    }
}

.mod-panel__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 31px 40px 32px;
    height: 100%;
    background-color: #efefef;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-box-pack: justify;
    justify-content: space-between;
}
.mod-panel__item--top-philosophy .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-about .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-executives .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-group .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-ir .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-highlights .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-mid .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-results .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--top-books .mod-panel__link {
    justify-content: center;
}

.mod-panel__item--large .mod-panel__link--en-info {
    justify-content: center;
}
.mod-panel__item--sustainabillty .mod-panel__link {
    position: relative;
    display: block;
    padding: 31px 40px 20px 20px;
}
@media screen and (max-width: 750px) {
    .mod-panel__item--sustainabillty .mod-panel__link {
        position: relative;
        display: flex;
        padding: 2vw 0vw 0vw 5vw;
        justify-content: center;
    }

}
.mod-panel__item--sustainabillty .mod-panel__link::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
@media screen and (min-width: 751px) {
    .mod-panel__link {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .mod-panel__link:hover {
        opacity: 0.8;
    }
    .mod-panel__item--large .mod-panel__link {
        padding-top: 75px;
        padding-bottom: 75px;
    }

    .mod-panel__item--large .mod-panel__link--en {
        padding-top: 115px;
        padding-bottom: 90px;
    }

    .mod-panel__item--large .mod-panel__link--en-info {
        padding-top: 83px;
        padding-bottom: 90px;
        justify-content: center;
    }

    .mod-panel__link--en {
        height: 218px;
        background-position: 0 0;
    }
}
@media screen and (max-width: 750px) {
    .mod-panel__link {
        padding: 15px 17px 14px;
    }
    .mod-panel__link--en {
        height: calc((100 / 750) * 306vw);
        padding: calc((100 / 750) * 53vw) calc((100 / 750) * 40vw) calc((100 / 750) * 44vw);
    }
    .mod-panel__link--sustainability {
        padding: calc((100 / 826) * 26vw) calc((100 / 826) * 32vw) calc((100 / 826) * 50vw);
    }
}

.top-harf-panel--sustainability .mod-panel__link {
    background-image: url(../img/top/bg_sustainability.jpg);
}

.top-harf-panel--gyoseki .mod-panel__link {
    background-image: url(../img/top/bg_gyoseki_half.jpg);
}

.top-harf-panel--recruit .mod-panel__link {
    background-image: url(../img/top/bg_recruit.jpg);
}

.top-harf-panel--group .mod-panel__link {
    background-image: url(../img/top/bg_group-company.jpg);
}

.mod-panel__item--news-pressrelease .mod-panel__link {
    background-image: url(../img/news/bg_press-release.jpg);
    background-size: cover;
}

.mod-panel__item--news-pressrelease-group .mod-panel__link {
    background-image: url(../img/news/bg_press-release-group.jpg);
}

.mod-panel__item--news-info .mod-panel__link {
    background-image: url(../img/news/bg_info.jpg);
}

.mod-panel__item--news-update .mod-panel__link {
    background-image: url(../img/news/bg_update.jpg);
}

.mod-panel__item--info-group .mod-panel__link {
    background-image: url(../img/info/bg_group.jpg);
}

.mod-panel__item--info-outline .mod-panel__link {
    background-image: url(../img/info/bg_outline.jpg);
}

.mod-panel__item--ir-top-investor .mod-panel__link {
    background-image: url(../img/ir/bg_for-investor.jpg?v=20241213);
}

.mod-panel__item--ir-top-division .mod-panel__link {
    background-image: url(../img/ir/bg_business-division.jpg);
}

.mod-panel__item--about-msg .mod-panel__link {
    background-image: url(../img/about/bg_top-message.jpg?v=20251126);
}

.mod-panel__item--small .mod-panel__link {
    background-image: url(../img/about/bg_about_company.jpg);
}
.mod-panel__item--commitment .mod-panel__link {
    background-image: url(../img/sustainability/img_sustainability_top.jpg);
}
.mod-panel__item--esg .mod-panel__link {
    background-image: url(../img/sustainability/img_esg_top.jpg);
}
.mod-panel__item--thema .mod-panel__link {
    background-image: url(../img/sustainability/img_thema_top.jpg);
}
.mod-panel__item--irlib .mod-panel__link {
    background-image: url(../img/sustainability/img_irlib_top.jpg);
}
.mod-panel__item--history .mod-panel__link {
    background-image: url(../img/sustainability/img_history_top.jpg);
}
.mod-panel__item--contact .mod-panel__link {
    background-image: url(../img/sustainability/img_contact_top.jpg);
}
.mod-panel__item--integratedreport .mod-panel__link {
    background-image: url(../img/sustainability/img_integratedreport_top.jpg);
}

@media screen and (max-width: 750px) {
    .mod-panel__item--small .mod-panel__link {
        background-image: url(../img/about/bg_sp_about_company.jpg);
    }
}
@media screen and (max-width: 375px) {
    .mod-panel__item--about-msg .mod-panel__link {
        background-position: 60% center;
    }
}

.mod-panel__item--about-philosophy .mod-panel__link {
    background-image: url(../img/about/bg_philosophy.jpg);
}

.mod-panel__item--top-philosophy .mod-panel__link {
    background-image: url(../en/img/img_en-top-message.jpg);
}

.mod-panel__item--top-about .mod-panel__link {
    background-image: url(../en/img/img_top-about.jpg);
}

.mod-panel__item--top-executives .mod-panel__link {
    background-image: url(../en/img/img_top-executive.jpg);
}

.mod-panel__item--top-group .mod-panel__link {
    background-image: url(../en/img/img_top-group.jpg);
}

.mod-panel__item--top-books .mod-panel__link {
    background-image: url(../en/img/img_top-books.jpg);
}

.mod-panel__item--top-ir .mod-panel__link {
    background-image: url(../en/img/img_top-ir.jpg);
}

.mod-panel__item--top-highlights .mod-panel__link {
    background-image: url(../en/img/img_top-highlights.jpg);
}

.mod-panel__item--top-mid .mod-panel__link {
    background-image: url(../en/img/img_top-mid.jpg);
}

.mod-panel__item--top-results .mod-panel__link {
    background-image: url(../en/img/img_top-results.jpg);
}

.mod-panel__item--about-management .mod-panel__link {
    background-image: url(../img/about/bg_management.jpg);
}


.mod-panel__item--about-csr .mod-panel__link {
    background-image: url(../img/about/bg_csr.jpg);
}

.mod-panel__item--iph-company .mod-panel__link {
    background-image: url(../img/info/bg_iph-company.jpg);
}

.mod-panel__item--large .mod-panel__link--en-info {
    background-image: url(../en/img/bg_iph-company.jpg);
}

@media screen and (max-width: 375px) {
    .mod-panel__item---company .mod-panel__link {
        background-position: 60% center;
    }
}

.mod-panel__item--recruit .mod-panel__link {
    background-image: url(../img/recruit/bg_recruit_career.jpg);
}

@media screen and (max-width: 750px) {
    .mod-panel__item--recruit .mod-panel__link {
        background-image: url(../img/recruit/bg_recruit_career_sp.jpg);
        background-position: 100% center;
    }

    .mod-panel__item--top-philosophy .mod-panel__link {
        background-image: url(../en/img/img_en-top-message_sp.jpg);
    }

    .mod-panel__item--top-about .mod-panel__link {
        background-image: url(../en/img/img_top-about_sp.jpg);
    }

    .mod-panel__item--top-executives .mod-panel__link {
        background-image: url(../en/img/img_top-executive_sp.jpg);
    }

    .mod-panel__item--top-group .mod-panel__link {
        background-image: url(../en/img/img_top-group_sp.jpg);
    }

    .mod-panel__item--top-books .mod-panel__link {
        background-image: url(../en/img/img_top-books_sp.jpg);
    }

    .mod-panel__item--top-ir .mod-panel__link {
        background-image: url(../en/img/img_top-ir_sp.jpg);
    }

    .mod-panel__item--top-highlights .mod-panel__link {
        background-image: url(../en/img/img_top-highlights_sp.jpg);
    }

    .mod-panel__item--top-mid .mod-panel__link {
        background-image: url(../en/img/img_top-mid_sp.jpg);
    }

    .mod-panel__item--top-results .mod-panel__link {
        background-image: url(../en/img/img_top-results_sp.jpg);
    }
    .mod-panel__item--irlib .mod-panel__link {
        background-image: url(../img/sustainability/img_irlib_top_sp.jpg);
    }
    .mod-panel__item--history .mod-panel__link {
        background-image: url(../img/sustainability/img_history_top_sp.jpg);
    }
    .mod-panel__item--contact .mod-panel__link {
        background-image: url(../img/sustainability/img_contact_top_sp.jpg);
    }
    .mod-panel__item--integratedreport .mod-panel__link {
        background-image: url(../img/sustainability/img_integratedreport_top_sp.jpg);
    }
}

.mod-panel__item--business .mod-panel__link {
    background-image: url(../img/recruit/bg_business.jpg);
}

.mod-panel__txt-wrap {
    width: 100%;
}

.mod-panel__ttl {
    display: block;
    margin-bottom: 12px;
    padding-right: .5em;
    font-weight: bold;
    font-size: 2.14286rem;
    line-height: 1.2;
}

@media screen and (max-width: 960px) {
    .mod-panel__ttl {
        padding-right: 0;
        font-size: 1.92857rem;
    }
}

@media screen and (max-width: 750px) {
    .mod-panel__ttl {
        margin-bottom: 2px;
        padding-right: 0;
        max-width: 300px;
        width: 100%;
        font-size: 1.71429rem;
        line-height: 1.3;
    }
    .mod-panel__item--large .mod-panel__ttl {
        color: #000;
    }
    .mod-panel__item--small .mod-panel__ttl {
        color: #000;
    }
    .mod-panel__item--about-csr .mod-panel__ttl {
        color: #fff;
    }
}
.mod-panel__ttl--en {
    position: relative;
    font-family: 'Roboto';
    letter-spacing: 0.05em;
}
.mod-panel__ttl--en::after {
    position: absolute;
    content: "";
    width: 25px;
    height: 25px;
    top: 50%;
    right: -5%;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
    transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
    .mod-panel__ttl--en {
        font-size: calc((100 / 750) * 52vw);
        max-width: initial;
    }

    .mod-panel__ttl--en::after {
        width: calc((100 / 750) * 40vw);
        height: calc((100 / 750) * 40vw);
        right: 0;
    }
}



.mod-panel__ttl--books {
    position: relative;
    display: inline-block;
    font-family: 'Roboto';
    letter-spacing: 0.05em;
}

.mod-panel__ttl--books::after {
    position: absolute;
    content: "";
    width: 32px;
    height: 36px;
    top: 60%;
    right: -6%;
    background: url(../en/img/icon_books.png) 0 0 no-repeat;
    background-size: 100% auto;
    transform: translateY(-50%);
}
@media screen and (max-width: 960px) {
    .mod-panel__ttl--books::after {
        right: -12%;
    }
}
@media screen and (max-width: 750px) {
    .mod-panel__ttl--books {
        font-size: calc((100 / 750) * 52vw);
        max-width: initial;
    }

    .mod-panel__ttl--books::after {
        width: calc((100 / 750) * 46vw);
        height: calc((100 / 750) * 55vw);
        right: 14%;
    }
    .windows .mod-panel__ttl--books::after {
        right: 11%;
    }
}

@media screen and (max-width: 750px) {
    .mod-panel__ttl--sustainability {
        max-width: initial;
        font-size: calc((100 / 826) * 48vw);
    }
}

.mod-panel__item--top-about .mod-panel__ttl--en {
    color: #000;
}

.mod-panel__item--top-executives .mod-panel__ttl--en {
    color: #000;
}

.mod-panel__item--top-group .mod-panel__ttl--en {
    color: #000;
}

.mod-panel__item--top-about .mod-panel__ttl--en::after {
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
}

.mod-panel__item--top-executives .mod-panel__ttl--en::after {
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
}

.mod-panel__item--top-group .mod-panel__ttl--en::after {
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
}


@media screen and (min-width: 751px) {
    .mod-panel__item--large .mod-panel__ttl {
        color: #000;
        font-size: 2.57143rem;
    }
    .mod-panel__item--small .mod-panel__ttl {
        color: #000;
        font-size: 2.57143rem;
    }
    .mod-panel__item--about-csr .mod-panel__ttl {
        color: #fff;
        font-size: 2.57143rem;
    }
    .mod-panel__item--large .mod-panel__ttl--en {
        font-size: 2.143rem;
        letter-spacing: 0.05em;
        font-family: 'Roboto';
    }

    .mod-panel__item--large .mod-panel__ttl--en-info {
        font-size: 2.143rem;
        letter-spacing: 0.05em;
        font-family: 'Roboto';
        margin-bottom: 25px;
    }
}
@media screen and (max-width: 750px) {
    .mod-panel__item--large .mod-panel__ttl--en-info {
        margin-bottom: calc((100 / 750) * 20vw);
    }
}

.mod-panel__item--sustainabillty .mod-panel__ttl {
    font-size: 1.2857142857rem;
}

.mod-panel__txt {
    margin-bottom: 20px;
    width: 62%;
    font-size: 1rem;
}

@media screen and (min-width: 751px) {
    .mod-panel__txt {
        line-height: 1.8;
    }
}

@media screen and (max-width: 750px) {
    .mod-panel__txt {
        margin-bottom: 15px;
        width: 210px;
        letter-spacing: 1px;
        font-size: 1rem;
    }
    .mod-panel__item--large .mod-panel__txt {
        color: #000;
    }
    .mod-panel__item--small .mod-panel__txt {
        color: #000;
    }
    .mod-panel__item--about-csr .mod-panel__txt {
        color: #fff;
    }
}

@media screen and (min-width: 751px) {
    .mod-panel__item--large .mod-panel__txt {
        width: 46%;
        color: #000;
        font-size: 1.14286rem;
    }
    .mod-panel__item--small .mod-panel__txt {
        width: 46%;
        color: #000;
        font-size: 1.14286rem;
    }
    .mod-panel__item--about-csr .mod-panel__txt {
        width: 46%;
        color: #fff;
        font-size: 1.14286rem;
    }
    .mod-panel__item--sustainabillty .mod-panel__txt {
        width: 92.6%;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 750px) {
    .mod-panel__txt--sustainability {
        width: 51vw;
        margin-bottom: calc((100 / 826) * 31vw);
        font-size: calc((100 / 826) * 28vw);
    }
    .mod-panel__txt--sustainability-bottom {
        margin-bottom: calc((100 / 826) * 70vw);
    }
}


/*  mod-select
--------------------------------------------- */
.mod-select {
    position: relative;
    z-index: 1;
}

@media screen and (min-width: 751px) {
    .mod-select {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .mod-select:hover {
        opacity: 0.8;
    }
}

.news-search .mod-select {
    margin-right: 40px;
    width: 98px;
}

.news-search .mod-select--mr0 {
    margin-right: 0;
}

.news-search .mod-select--en {
    margin-right: 0;
    width: 108px;
}

@media screen and (max-width: 750px) {
    .news-search .mod-select {
        width: 100%;
    }
}

@media screen and (min-width: 751px) {
    .news-search .mod-select--large {
        margin-right: auto;
        padding-right: 30px;
        width: 310px;
    }
}

@media screen and (min-width: 751px) and (max-width: 899px) {
    .news-search--col3 .mod-select {
        margin-right: 0;
        width: 100%;
    }
    .news-search--col3 .mod-select--large {
        padding-right: 0;
    }
}

.mod-select__select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 25px;
    padding-left: 10px;
    width: 100%;
    height: 38px;
    border: 1px solid #333;
    background: url(../img/common/icon_select_triangle.png) calc(100% - 18px) center no-repeat;
    background-size: 11px 8px;
    font-size: 1rem;
    color: #000;
    cursor: pointer;
}

@media screen and (min-width: 751px) {
    .windows .mod-select__select {
        padding-top: 3px;
    }
    .windows.firefox .mod-select__select,
    .windows.ie11 .mod-select__select {
        padding-top: 2px;
    }
}

@media screen and (max-width: 750px) {
    .mod-select__select {
        padding-right: 42px;
        padding-left: 19px;
        height: 45px;
        font-size: 1.14286rem;
    }
}

/*  mod-table
--------------------------------------------- */
.mod-table {
    margin-bottom: 20px;
}

.mod-table__tbl {
    width: 100%;
    border-top: 1px solid #d2d2d2;
    table-layout: fixed;
}

.mod-table__tbl--en {
    font-family: 'Roboto';
}

@media screen and (max-width: 750px) {
    .mod-table__tbl {
        border: none;
    }
}

.mod-table__tbl th, .mod-table__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 18px;
    border-right: 1px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
    vertical-align: top;
    font-size: 1.14286rem;
}

.contents--info .mod-table__tbl th, .mod-table__tbl td {
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) {
    .windows .mod-table__tbl th, .windows .mod-table__tbl td {
        padding-top: 20px;
        padding-bottom: 16px;
    }
}

@media screen and (max-width: 750px) {
    .mod-table__tbl th, .mod-table__tbl td {
        display: block;
        padding: 12px 10px;
        width: 100%;
        border: none;
        letter-spacing: 1px;
        font-size: 1.14286rem;
    }
}

.mod-table__tbl th.no-border-btm, .mod-table__tbl td.no-border-btm {
    border-bottom: none;
}

.mod-table__tbl th.no-border-right, .mod-table__tbl td.no-border-right {
    border-right: none;
}

.mod-table__tbl th {
    width: 24.39024%;
    background-color: #efefef;
}

@media screen and (max-width: 750px) {
    .mod-table__tbl th {
        width: 100%;
    }
}

.mod-table__tbl td {
    border-right: none;
    text-align: justify;
}

.contents--info .mod-table__tbl td {
    text-align: unset;
}

@media screen and (max-width: 750px) {
    .mod-table__tbl td {
        padding-top: 13px;
        padding-bottom: 13px;
        line-height: 2;
    }
}

.mod-table--td-al-left .mod-table__tbl td {
    text-align: left;
}

.mod-table--wordbreak .mod-table__tbl th, .mod-table--wordbreak .mod-table__tbl td {
    word-break: break-all;
}

.mod-table td.mod-table__sub-tbl-wrap {
    padding: 0;
}

.mod-table__sub-tbl {
    width: 100%;
    table-layout: fixed;
}

@media screen and (max-width: 750px) {
    .mod-table__sub-tbl {
        display: block;
        padding-top: 5px;
        padding-bottom: 17px;
    }
}

.mod-table__sub-tbl tr:last-of-type th, .mod-table__sub-tbl tr:last-of-type td {
    border-bottom: none;
}

.mod-table__sub-tbl th {
    width: 35.48387%;
    background: none;
}

.mod-table__sub-tbl--en th {
    width: 64.68387%;
}

@media screen and (max-width: 750px) {
    .mod-table__sub-tbl th {
        padding-bottom: 0;
        width: 100%;
        font-weight: bold;
        line-height: 1.3;
    }
}

@media screen and (max-width: 750px) {
    .mod-table__sub-tbl td {
        padding-top: 0;
        padding-bottom: 0;
    }
}

@media screen and (max-width: 750px) {
    .mod-table__list {
        margin-top: 3px;
        line-height: 2;
    }
}

.mod-table__list--icon {
    padding-left: 1em;
    text-indent: -1em;
}

.mod-table__list-item {
    margin-bottom: 5px;
    text-align: left;
}

@media screen and (max-width: 750px) {
    .mod-table__list-item {
        margin-bottom: 0;
    }
}

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

/* =================== */
/*  mod-table2
--------------------------------------------- */
.mod-table2 {
    margin-bottom: 20px;
}

.mod-table2__tbl {
    width: 100%;
    border-top: 1px solid #d2d2d2;
    table-layout: fixed;
}

@media screen and (max-width: 750px) {
    .mod-table2 {
        overflow: scroll;
    }
    .mod-table2__tbl {
        min-width: 820px;
    }
}

.mod-table2__tbl th, .mod-table2__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 18px;
    border-right: 1px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
    vertical-align: top;
    font-size: 1.14286rem;
    line-height: 1.5;
}

.mod-table2__tbl th {
    text-align: left;
    letter-spacing: 1;
}

@media screen and (max-width: 750px) {
    .mod-table2__tbl td {
        padding-top: 13px;
        padding-bottom: 13px;
    }
}

@media screen and (min-width: 751px) {
    .windows .mod-table2__tbl th, .windows .mod-table2__tbl td {
        padding-top: 20px;
        padding-bottom: 16px;
    }
}

.mod-table2__tbl th.no-border-right, .mod-table2__tbl td.no-border-right {
    border-right: none;
}

.mod-table2__tbl th.no-border-btm, .mod-table2__tbl td.no-border-btm {
    border-bottom: none;
}

.mod-table2__tbl th {
    background-color: #efefef;
}

.mod-table2__tbl th:first-child {
    width: 15%;
}

.mod-table2__tbl th:nth-child(2) {
    width: 43%;
}

.mod-table2__tbl td {
    text-align: justify;
}

.mod-table2--td-al-left .mod-table2__tbl td {
    text-align: left;
}

.mod-table2--wordbreak .mod-table2__tbl th, .mod-table2--wordbreak .mod-table2__tbl td {
    word-break: break-all;
}

.mod-table2 td.mod-table2__sub-tbl-wrap {
    padding: 0;
}

.mod-table2__sub-tbl {
    width: 100%;
    table-layout: fixed;
}

.mod-table2__sub-tbl td.wdt26 {
    width: 26.356%;
}

.mod-table2__item {
    margin-top: 20px;
}

.mod-table2__item:first-child {
    margin-top: 0;
}

.ind1 {
    padding-left: 1em;
    text-indent: -1em;
}

.mod-table2__item > .mod-txt-link__link {
    text-indent: 0;
}

@media screen and (min-width: 751px) {
    .sw-swipeText {
        display: none;
    }
}

@media screen and (max-width: 750px) {
    .sw-swipeText {
        display: block;
        text-align: center;
        margin-bottom: 20px;
    }
    .sw-swipeText:before {
        content:'';
        display: inline-block;
        width: 35px;
        height: 33px;
        top: 0;
        left: 0;
        background: url(../img/common/icon_table_scroll.png) no-repeat center center;
        background-size: contain;
        margin-right: 10px;
        vertical-align: bottom;
    }
}

/* =================== */
/*  mod-table3
--------------------------------------------- */
.mod-table3 {
    margin-bottom: 20px;
}

.mod-table3__tbl {
    width: 65.85365%;
    border-top: 1px solid #d2d2d2;
    table-layout: fixed;
}

@media screen and (max-width: 750px) {
    .mod-table3__tbl {
        width: 100%;
    }
}

.mod-table3__tbl th, .mod-table3__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 18px;
    border-right: 1px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
    vertical-align: top;
    font-size: 1.14286rem;
    text-align: center;
}

.mod-table3__tbl th {
    letter-spacing: 1;
}

@media screen and (max-width: 750px) {
    .mod-table3__tbl td {
        padding-top: 13px;
        padding-bottom: 13px;
        line-height: 2;
    }
}

@media screen and (min-width: 751px) {
    .windows .mod-table3__tbl th, .windows .mod-table3__tbl td {
        padding-top: 20px;
        padding-bottom: 16px;
    }
}

.mod-table3__tbl th.no-border-right, .mod-table3__tbl td.no-border-right {
    border-right: none;
}

.mod-table3__tbl th {
    width: 33.33333%;
    background-color: #efefef;
}

.mod-table3--wordbreak .mod-table3__tbl th, .mod-table3--wordbreak .mod-table3__tbl td {
    word-break: break-all;
}


/*  mod-tab-block
--------------------------------------------- */
.mod-tab-block__selector-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    border-bottom: 2px solid #333;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

.mod-tab-block__selector-item {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 23px;
    padding-bottom: 20px;
    width: calc(50% - 8px);
    border: 2px solid #333;
    border-bottom-width: 0px;
    text-align: center;
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .mod-tab-block__selector-item {
        padding-top: 3.91198vw;
        padding-bottom: 0;
        width: calc(50% - 1.1vw);
    }
}

.mod-tab-block__selector-item:last-of-type {
    margin-right: 0;
}

.mod-tab-block__selector-item.current {
    position: relative;
    cursor: default;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

.mod-tab-block__selector-item.current::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 4px;
    background-color: #fff;
    content: "";
}

@media screen and (max-width: 750px) {
    .mod-tab-block__selector-item.current::after {
        bottom: -1vw;
        height: 1.46699vw;
    }
}

.mod-tab-block__selector-item:not(.current) {
    background-color: #333;
    color: #fff;
}

@media screen and (min-width: 751px) {
    .mod-tab-block__selector-item:not(.current):hover {
        text-decoration: underline;
        opacity: 0.8;
    }
}

.mod-tab-block__selector-item-txt {
    font-weight: bold;
    font-size: 1.57143rem;
}

@media screen and (max-width: 899px) {
    .mod-tab-block__selector-item-txt {
        font-size: 1.1rem;
    }
}

@media screen and (max-width: 750px) {
    .mod-tab-block__selector-item-txt {
        letter-spacing: -.3vw;
        font-size: 3.91198vw;
    }
}

.mod-tab-block__selector-item-txt::after {
    display: inline-block;
    margin-top: -.2em;
    margin-left: 11px;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_circle-arrow_down.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .mod-tab-block__selector-item-txt::after {
        display: block;
        margin-top: 1.95599vw;
        margin-right: auto;
        margin-bottom: 3.17848vw;
        margin-left: auto;
        width: 6.11247vw;
        height: 6.23472vw;
        background-size: 6.11247vw auto;
    }
}

.mod-tab-block__selector-item:not(.current) .mod-tab-block__selector-item-txt::after {
    background-image: url(../img/common/icon_circle-arrow_down_white.svg);
}

.mod-tab-block__body {
    padding-top: 40px;
}

@media screen and (max-width: 750px) {
    .mod-tab-block__body {
        padding-top: 25px;
    }
}

.mod-tab-block__contents {
    display: none;
}

.mod-tab-block__contents.current {
    display: block;
}

/*  mod-ttl-h2
--------------------------------------------- */
.mod-ttl-h2 {
    font-weight: bold;
    font-size: 2.14286rem;
}

@media screen and (max-width: 750px) {
    .mod-ttl-h2 {
        font-size: 1.71429rem;
    }
}

/*  mod-txt
--------------------------------------------- */
.mod-txt {
    font-size: 1.14286rem;
    line-height: 2;
}

/*  mod-txt-link
--------------------------------------------- */
.mod-txt-link + .mod-txt-link {
    margin-top: 5px;
}

.mod-txt-link__link {
    display: inline-block;
    color: #336699;
    text-decoration: underline;
    word-break: break-all;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .mod-txt-link__link {
        font-size: 1.14286rem;
    }
}

@media screen and (min-width: 751px) {
    .mod-txt-link__link:hover {
        text-decoration: none;
    }
}

.mod-txt-link__link--icon-pdf::after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-left: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.mod-txt-link__link--icon-external::after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-left: 6px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 750px) {
    .mod-txt-link__link--icon-external::after {
        top: 2px;
        margin-left: 5px;
        width: 16px;
        height: 18px;
    }
}

/* ---------------------------------------------
*   mod-crumb
--------------------------------------------- */
.mod-crumb {
    position: relative;
    background-color: #333;
}
@media screen and (max-width: 750px) {
    .mod-crumb {
        background-color: #555555;

    }
}

.mod-crumb__container {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 13px;
    padding-bottom: 13px;
}

.mod-crumb-txt {
    position: relative;
    cursor: pointer;
    font-size: 1rem;
    color: #999999;
    border-bottom: 1px solid #999999;
    margin-right: 26px;
    padding-bottom: 2px;
}
.windows .mod-crumb-txt {
    padding-bottom: 0;
}
.mod-crumb-txt::after {
    position: absolute;
    content: "";
    right: -17px;
    top: 50%;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}
.mod-crumb-txt--bg::after {
    border-top: 2px solid #b2b2b2;
    border-right: 2px solid #b2b2b2;
}
.mod-crumb-txt-lv2::after {
    display: none;
}

.mod-crumb-txt:hover {
    transition: opacity 0.3s;
    border: none;
}

.mod-crumb__link {
    padding-left: 10px;
}

.mod-crumb-txt--top {
    pointer-events: none;
    border: none;
    cursor: pointer;
    padding-top: 2px;
    padding-bottom: 0;
    color: #fff;
}
.mod-crumb-txt--top:hover {
    pointer-events: none;
}
/* ---------------------------------------------
*   mod-btn-return
--------------------------------------------- */
.mod-btn-return__container {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
}
.mod-btn-return__inner {
    padding-left: 10px;
}
.mod-btn-return__txt {
    position: relative;
    display: inline-block;
    font-size: 1.429rem;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 5px;
    cursor: pointer;
}
.mod-btn-return__txt::after {
    position: absolute;
    content: "";
    width: 25px;
    height: 25px;
    right: -33px;
    top: 50%;
    transform: translateY(-50%);
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
}
@media screen and (min-width: 751px) {
    .mod-btn-return__txt:hover {
        opacity: 0.8;
        transition: opacity 0.3;
    }
}

/*  txt-link
--------------------------------------------- */
.txt-link {
    color: #336699;
    text-decoration: underline;
}

@media screen and (min-width: 751px) {
    .txt-link:hover {
        text-decoration: none;
    }
}

.txt-link--icon-pdf::after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-left: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.txt-link--icon-external::after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-left: 6px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 750px) {
    .txt-link--icon-external::after {
        top: 2px;
        margin-left: 5px;
        width: 16px;
        height: 18px;
    }
}

/*  mod-wysiwyg
--------------------------------------------- */
.mod-wysiwyg {
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .mod-wysiwyg {
        font-size: 1.14286rem;
    }
}

.mod-wysiwyg a {
    text-decoration: underline;
}

.mod-wysiwyg a:hover {
    text-decoration: none;
}

.mod-wysiwyg abbr {
    border-bottom: 1px dotted;
    cursor: help;
}

.mod-wysiwyg cite {
    font-style: italic;
}

.mod-wysiwyg hr {
    display: block;
    margin-top: 1.4em;
    margin-bottom: 1.4em;
    height: 1px;
    border: none;
    background: #e6e6e6;
}

.mod-wysiwyg img {
    vertical-align: text-bottom;
}

.mod-wysiwyg ins {
    background-color: lime;
    text-decoration: none;
}

.mod-wysiwyg mark {
    background-color: #ff0;
}

.mod-wysiwyg small {
    font-size: 0.8em;
}

.mod-wysiwyg strong {
    font-weight: 700;
}

.mod-wysiwyg sub,
.mod-wysiwyg sup {
    font-size: 0.8em;
}

.mod-wysiwyg sub {
    vertical-align: sub;
}

.mod-wysiwyg sup {
    vertical-align: super;
}

.mod-wysiwyg p,
.mod-wysiwyg dl,
.mod-wysiwyg ol,
.mod-wysiwyg ul,
.mod-wysiwyg blockquote,
.mod-wysiwyg pre,
.mod-wysiwyg table {
    margin-bottom: 1.8em;
}

.mod-wysiwyg p:last-child,
.mod-wysiwyg dl:last-child,
.mod-wysiwyg ol:last-child,
.mod-wysiwyg ul:last-child,
.mod-wysiwyg blockquote:last-child,
.mod-wysiwyg pre:last-child,
.mod-wysiwyg table:last-child {
    margin-bottom: 0;
}

.mod-wysiwyg p:empty {
    display: none;
}

.mod-wysiwyg h1,
.mod-wysiwyg h2,
.mod-wysiwyg h3,
.mod-wysiwyg h4,
.mod-wysiwyg h5,
.mod-wysiwyg h6 {
    font-weight: 700;
    line-height: 1.4;
}

.mod-wysiwyg h1:first-child,
.mod-wysiwyg h2:first-child,
.mod-wysiwyg h3:first-child,
.mod-wysiwyg h4:first-child,
.mod-wysiwyg h5:first-child,
.mod-wysiwyg h6:first-child {
    margin-top: 0;
}

.mod-wysiwyg h1 {
    margin-top: 0.58333em;
    margin-bottom: 0.58333em;
    font-size: 2.07143rem;
}

@media screen and (max-width: 750px) {
    .mod-wysiwyg h1 {
        font-size: 1.42857rem;
    }
}

.mod-wysiwyg h2 {
    margin-top: 1.75em;
    margin-bottom: 0.875em;
    font-size: 1.71429rem;
}

@media screen and (max-width: 750px) {
    .mod-wysiwyg h2 {
        font-size: 1.28571rem;
    }
}

.mod-wysiwyg h3 {
    margin-top: 1.07692em;
    margin-bottom: 1.07692em;
    font-size: 1.5rem;
}

@media screen and (max-width: 750px) {
    .mod-wysiwyg h3 {
        font-size: 1.21429rem;
    }
}

.mod-wysiwyg h4 {
    margin-top: 1.16667em;
    margin-bottom: 1.16667em;
    font-size: 1.35714rem;
}

@media screen and (max-width: 750px) {
    .mod-wysiwyg h4 {
        font-size: 1.17857rem;
    }
}

.mod-wysiwyg h5 {
    margin-top: 1.27273em;
    margin-bottom: 1.27273em;
    font-size: 1.21429rem;
}

@media screen and (max-width: 750px) {
    .mod-wysiwyg h5 {
        font-size: 1.14286rem;
    }
}

.mod-wysiwyg h6 {
    margin-top: 1.4em;
    margin-bottom: 1.4em;
    font-size: 1em;
}

.mod-wysiwyg dd {
    margin-left: 1.4em;
}

.mod-wysiwyg ol,
.mod-wysiwyg ul {
    margin-left: 1.4em;
    list-style-position: outside;
}

.mod-wysiwyg ol {
    list-style-type: decimal;
}

.mod-wysiwyg ol ol {
    list-style-type: lower-alpha;
}

.mod-wysiwyg ol ol ol {
    list-style-type: lower-roman;
}

.mod-wysiwyg ol ol ol ol {
    list-style-type: lower-greek;
}

.mod-wysiwyg ol ol ol ol ol {
    list-style-type: decimal;
}

.mod-wysiwyg ol ol ol ol ol ol {
    list-style-type: lower-alpha;
}

.mod-wysiwyg ul {
    list-style-type: disc;
}

.mod-wysiwyg ul ul {
    list-style-type: circle;
}

.mod-wysiwyg ul ul ul {
    list-style-type: square;
}

.mod-wysiwyg ul ul ul ul {
    list-style-type: circle;
}

.mod-wysiwyg ul ul ul ul ul {
    list-style-type: disc;
}

.mod-wysiwyg ul ul ul ul ul ul {
    list-style-type: circle;
}

.mod-wysiwyg blockquote {
    padding: 0.6em 1.2em;
    border-left: 4px solid #efefef;
}

.mod-wysiwyg blockquote p {
    margin-bottom: 0;
}

.mod-wysiwyg code,
.mod-wysiwyg kbd,
.mod-wysiwyg samp,
.mod-wysiwyg pre {
    background-color: #f2f2f2;
    color: #333;
    font-size: 0.9em;

    -moz-osx-font-smoothing: auto;
    -webkit-font-smoothing: auto;
}

.mod-wysiwyg code,
.mod-wysiwyg kbd,
.mod-wysiwyg samp {
    padding: 0.1em 0.4em 0.2em;
    border-radius: 3px;
    vertical-align: baseline;
    line-height: 1.77778;
}

.mod-wysiwyg pre {
    overflow: auto;
    padding: 1em 1.2em;
}

.mod-wysiwyg pre code {
    background: none;
    font-size: 1em;
    line-height: 1em;
}

.mod-wysiwyg figure {
    margin-bottom: 2.8em;
    text-align: center;
}

.mod-wysiwyg figure:first-child {
    margin-top: 0;
}

.mod-wysiwyg figure:last-child {
    margin-bottom: 0;
}

.mod-wysiwyg figcaption {
    margin-top: 0.875em;
    font-size: 0.8em;
}

.mod-wysiwyg table {
    width: 100%;
}

.mod-wysiwyg table pre {
    white-space: pre-wrap;
}

.mod-wysiwyg th,
.mod-wysiwyg td {
    padding: 0.7em;
    border: 1px solid #e6e6e6;
    font-size: 1em;
    line-height: 1.4;
}

.mod-wysiwyg thead tr,
.mod-wysiwyg tfoot tr {
    background-color: #efefef;
}

.mod-wysiwyg thead th,
.mod-wysiwyg thead td,
.mod-wysiwyg tfoot th,
.mod-wysiwyg tfoot td {
    padding: 0.77778em;
    font-size: 0.9em;
}

.mod-wysiwyg thead th code,
.mod-wysiwyg thead td code,
.mod-wysiwyg tfoot th code,
.mod-wysiwyg tfoot td code {
    background-color: #fff;
}

.mod-wysiwyg tbody tr {
    background-color: #fff;
}

.mod-wysiwyg *:last-child {
    margin-bottom: 0;
}

/*  fadein class
--------------------------------------------- */
[data-fadein],
[data-fadein-target] {
    opacity: 0;
    -webkit-transition: opacity .6s, -webkit-transform .6s !important;
    transition: opacity .6s, -webkit-transform .6s !important;
    transition: opacity .6s, transform .6s !important;
    transition: opacity .6s, transform .6s, -webkit-transform .6s !important;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}

[data-fadein].js-fadein-active,
[data-fadein-target].js-fadein-active {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   About Page
--------------------------------------------- */
/*  about-message
--------------------------------------------- */
.about-message__head {
    margin-bottom: 35px;
}

.about-message--philosophy .about-message__head {
    margin-bottom: 25px;
}

.about-message__kv {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 60px;
    padding-left: 4.87805%;
    background: url(../img/about/img_topmessage_kv.png?v=20251126) 70% center no-repeat;
    background-size: cover;
}

.about-message__kv--sustainability {
    background-image: url(../img/sustainability/img_sustainability_messagekv.jpg);
}

.about-message--en .about-message__kv {
    padding-top: 71px;
}


@media screen and (min-width: 751px) {
    .about-message__kv {
        min-height: 300px;
    }
}

@media screen and (max-width: 750px) {
    .about-message__kv {
        padding-top: 0;
        padding-left: 0;
        background: none;
    }
    .about-message--en .about-message__kv {
        padding-top: 33px;
    }
}

.about-message__kv-ttl {
    overflow: hidden;
    margin-bottom: 40px;
    padding-top: 8.84%;
    width: 56.02%;
    height: 0;
    background: url(../img/about/txt_topmessage_title.png?v=20250801) 0 0 no-repeat;
    background-size: 100% auto;
}

.about-message__kv-ttl--sustainability {
    background-image: url(../img/sustainability/txt_sustainability_messagetitle.png);
}

.about-message__kv-ttl--en {
    overflow: auto;
    width: 60%;
    height: auto;
    background: none;
    margin-bottom: 60px;
    padding: 0;
    font-size: 24px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS PMincho", serif;
}
@media screen and (max-width: 1085px) {
    .about-message__kv-ttl--en {
        margin-bottom: 27px;
    }
}

@media screen and (max-width: 780px) {
    .about-message__kv-ttl--en {
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 750px) {
    .about-message__kv-ttl {
        margin-right: auto;
        margin-bottom: 4.64548vw;
        margin-left: auto;
        padding-top: 16%;
        width: 99.06%;
        background-image: url(../img/about/txt_topmessage_title_sp.png?v=20251126);
    }

    .about-message__kv .about-message__kv-ttl--sustainability {
        background-image: url(../img/sustainability/txt_sustainability_messagetitle_sp.png);
        padding-top: 25%;
    }

    .about-message__kv .about-message__kv-ttl--en {
        overflow: auto;
        height: auto;
        background: none;
        padding: 0;
        font-size: calc((100 / 750) * 42vw);
        text-align: center;
        font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS PMincho", serif;
    }
}

.about-message__kv-txt {
    font-size: 1rem;
    line-height: 1.6;
}

@media screen and (max-width: 750px) {
    .about-message__kv-txt {
        display: none;
    }
}

.about-message--en .about-message__kv-txt {
    font-family: 'Roboto';
}
.about-message--philosophy .about-message__kv-txt {
    font-family: 'Roboto';
}

.about-message__img {
    display: none;
}

@media screen and (max-width: 750px) {
    .about-message__img {
        display: block;
    }
}

.about-message__img img {
    width: 100%;
}

.about-message__txt {
    margin-top: 30px;
    text-align: justify;
    word-break: break-all;
    font-size: 1.137rem;
    line-height: 2;
}

.about-message__txt--en {
    font-family: 'Roboto';
    letter-spacing: 0.03em;
    word-break: unset;
}



@media screen and (max-width: 750px) {
    .about-message__txt {
        margin-top: 35px;
        font-size: 1.14286rem;
    }
    .about-message__txt--s {
        white-space: nowrap;
        letter-spacing: -1.65px;
    }

    .about-message__txt--en {
        letter-spacing: 0.05em;
        word-break: unset;
    }
}

.about-message__txt--philosophy {
    font-family: 'Roboto';
    letter-spacing: 0.05em;
    word-break: unset;
}

.about-message__txt:first-of-type {
    margin-top: 0;
}

.about-message__txt-detail {
    display: block;
    margin-top: 100px;
    line-height: 1.9;
    text-align: right;
}

.about-message__txt-detail--en {
    font-family: 'Roboto';
    line-height: 2.2;
    margin-top: 45px;
    word-break: unset;
}

.about-message__txt-detail--philosophy {
    font-family: 'Roboto';
    margin-top: 39px;
    line-height: 2.3;
    text-align: right;
    word-break: unset;
}

@media screen and (max-width: 750px) {
    .about-message__txt-detail {
        margin-top: 15%;
    }
}

.about-message__txt-detail--anno {
    display: block;
    text-align: right;
}
@media screen and (max-width: 750px) {
    .about-message__txt-detail--anno {
        margin-top: 40px;
    }
}
/* ---------------------------------------------
*   Business Page
--------------------------------------------- */
/*  biz-block
--------------------------------------------- */
.biz-block {
    margin-bottom: 55px;
}

@media screen and (max-width: 750px) {
    .biz-block {
        margin-bottom: 37px;
    }
}

.biz-block:last-of-type {
    margin-bottom: 0;
}

.biz-block__ttl {
    font-weight: bold;
    font-size: 1.85714rem;
}

@media screen and (max-width: 750px) {
    .biz-block__ttl {
        font-size: 1.42857rem;
    }
}

.biz-block__body img {
    width: 100%;
}

.biz-block__img-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;
    margin-top: 15px;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .biz-block__img-list {
        display: block;
        margin-top: 17px;
    }
}

.biz-block__img-item {
    width: 48.64583%;
}

@media screen and (max-width: 750px) {
    .biz-block__img-item {
        margin-bottom: 20px;
        width: 100%;
    }
    .biz-block__img-item:last-of-type {
        margin-bottom: 0;
    }
}

.biz-block__img {
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    width: 83.33333%;
}

@media screen and (max-width: 750px) {
    .biz-block__img {
        margin-top: 15px;
        width: 100%;
    }
}

/*  biz-type-main
--------------------------------------------- */
.biz-type-main__ttl {
    font-weight: bold;
    font-size: 5.71429rem;
}

@media screen and (max-width: 899px) {
    .biz-type-main__ttl {
        font-size: 4.28571rem;
    }
}

@media screen and (max-width: 750px) {
    .biz-type-main__ttl {
        text-align: center;
        letter-spacing: -.2vw;
        font-size: 12.22494vw;
    }
}

/*  biz-type
--------------------------------------------- */
.biz-type {
    margin-bottom: 60px;
}

@media screen and (max-width: 750px) {
    .biz-type {
        margin-bottom: 35px;
    }
}

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

.biz-type__ttl {
    padding-top: 15px;
    padding-bottom: 15px;
    font-weight: bold;
    font-size: 1.85714rem;
}

@media screen and (max-width: 750px) {
    .biz-type__ttl {
        font-size: 5.62347vw;
    }
}

.biz-type__ttl-num {
    position: relative;
    top: 1px;
    margin-right: 17px;
    font-size: 2.07143rem;
    font-family: 'Roboto';
}

@media screen and (max-width: 750px) {
    .biz-type__ttl-num {
        font-size: 6.60147vw;
    }
}

.biz-type__img {
    margin-bottom: 30px;
}

.biz-type__img img {
    width: 100%;
}

.biz-type__img-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;
    margin-bottom: 30px;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .biz-type__img-list {
        display: block;
    }
}

.biz-type__img-item {
    width: 49.39024%;
}

@media screen and (max-width: 750px) {
    .biz-type__img-item {
        margin-bottom: 10px;
        width: 100%;
    }
    .biz-type__img-item:last-of-type {
        margin-bottom: 0;
    }
}

.biz-type__img-item img {
    width: 100%;
}

.biz-type__txt {
    font-size: 1.14286rem;
    line-height: 2;
}

/* ---------------------------------------------
*   Company Page
--------------------------------------------- */
/*  officer-block
--------------------------------------------- */
.officer-block {
    margin-bottom: 35px;
}
@media screen and (min-width: 751px) {
    .officer-block {
        letter-spacing: .5px;
    }
}
@media screen and (max-width: 750px) {
    .officer-block {
        margin-bottom: 40px;
    }
}
.officer-block:last-of-type {
    margin-bottom: 0;
}

.officer-block--en {
    font-family: 'Roboto';
}

.officer-block__ttl {
    font-weight: bold;
    font-size: 1.85714rem;
}

@media screen and (max-width: 750px) {
    .officer-block__ttl {
        font-size: 4.88998vw;
    }
}

/*----  -----*/
.mod-btn__txt .mod-btn__txt--icon-pdf::after {
    position: relative;
    top: 1px;
    display: inline-block;
    margin-left: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}
/*----  -----*/

/*  officer-detail
--------------------------------------------- */
.officer-detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    padding-top: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #efefef;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .officer-detail {
        padding-bottom: 35px;
    }
    .contents--officer .officer-detail {
        padding-bottom: 7%;
        padding-top: 7%;
    }
}

.officer-detail:first-of-type {
    padding-top: 7%;
}

.officer-detail:last-of-type {
    border-bottom: none;
}

.officer-detail__left {
    width: 31.70732%;
}

@media screen and (max-width: 750px) {
    .officer-detail__left {
        width: 34.85255%;
    }
}

.officer-detail__img {
    width: 84.61538%;
}

.officer-detail__img img {
    width: 100%;
}

.officer-detail__right {
    width: 68.29268%;
}

@media screen and (max-width: 750px) {
    .officer-detail__right {
        width: 65.14745%;
    }
}

.officer-detail__head {
    margin-top: -2px;
    margin-bottom: 35px;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .officer-detail__head {
        margin-top: -.9vw;
        margin-bottom: 4.52323vw;
        font-size: 3.42298vw;
    }
}

.officer-detail__head-txt {
    display: block;
}
@media screen and (max-width: 750px) {
    .officer-detail__head-txt {

    }
}

.officer-detail__head-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    margin-bottom: 12px;
    line-height: 1.3;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .officer-detail__head-name {
        margin-bottom: 2.44499vw;
    }
}

.officer-detail__head-name-large {
    margin-right: 8px;
    font-size: 1.42857rem;
}

@media screen and (max-width: 750px) {
    .officer-detail__head-name-large {
        margin-right: 1.95599vw;
        font-size: 4.88998vw;
    }
}

.officer-detail__head-name-txt {
    position: relative;
    top: 2px;
}

@media screen and (max-width: 750px) {
    .officer-detail__head-name-txt {
        top: .2vw;
    }
}

/*  personal-history
--------------------------------------------- */
.personal-history__head {
    padding-top: 17px;
    padding-bottom: 17px;
    background-color: #333;
    text-align: center;
    cursor: pointer;
}

@media screen and (min-width: 751px) {
    .personal-history__head {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
}
@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .personal-history__head:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .personal-history__head {
        padding-top: 2.44499vw;
        padding-bottom: 2.44499vw;
    }
}

.personal-history__head-txt {
    position: relative;
    padding-right: 37px;
    color: #fff;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .personal-history__head-txt {
        padding-right: 8.55746vw;
        letter-spacing: 1px;
        font-size: 3.91198vw;
    }
}

.personal-history__head-txt::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_circle-arrow_down_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .personal-history__head-txt::after {
        width: 6.11247vw;
        height: 6.11247vw;
    }
}

.js-acc-opened .personal-history__head-txt::after {
    background-image: url(../img/common/icon_circle-arrow_up_white.svg);
}

@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .personal-history:hover .personal-history__head-txt {
        text-decoration: underline;
    }
}

.personal-history__body {
    display: none;
}

.personal-history__tbl {
    width: 100%;
    table-layout: fixed;
}

.personal-history__tbl tr {
    background-color: #efefef;
}

.personal-history__tbl tr:nth-of-type(2n) {
    background-color: #e0e0e0;
}

.personal-history__tbl th, .personal-history__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 17px;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .personal-history__tbl th, .personal-history__tbl td {
        display: block;
        padding: 0 5px 0 10px;
        width: 100%;
    }
}

@media screen and (min-width: 751px) {
    .personal-history__tbl th {
        width: 127px;
        vertical-align: top;
    }
}

@media screen and (max-width: 750px) {
    .personal-history__tbl th {
        padding-top: 13px;
    }
}

@media screen and (min-width: 751px) {
    .personal-history__tbl td {
        padding-left: 0;
    }
}

@media screen and (max-width: 750px) {
    .personal-history__tbl td {
        padding-bottom: 13px;
        letter-spacing: .5px;
    }
}

.personal-history__lower {
    margin-top: 15px;
    font-size: 1rem;
}

.contents--officer .personal-history__lower {
    margin-top: 19px;
}

.personal-history__lower-ttl {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
}

@media screen and (max-width: 750px) {
    .personal-history__lower-ttl {
        margin-bottom: 2px;
    }
}

.personal-history__lower-item {
    margin-bottom: 5px;
}

@media screen and (max-width: 750px) {
    .personal-history__lower-item {
        margin-bottom: 2px;
    }
}

.personal-history__lower-item:last-of-type {
    margin-bottom: 0;
}

/* ---------------------------------------------
*   Contact Page
--------------------------------------------- */
/*  contact-top
--------------------------------------------- */
.contact-top {
    margin-bottom: 70px;
}

.contact-top:last-of-type {
    margin-bottom: 0;
}

.contact-top__ttl {
    margin-bottom: 25px;
    font-weight: bold;
    font-size: 1.85714rem;
}

@media screen and (max-width: 750px) {
    .contact-top__ttl {
        margin-bottom: 10px;
        font-size: 1.42857rem;
    }
}

.contact-top__txt {
    font-size: 1.14286rem;
    line-height: 2;
}

.contact-top__btn {
    margin-top: 35px;
}

/* ---------------------------------------------
*   ¥Õ¥©©`¥àÈëÁ¦»­Ãæ
--------------------------------------------- */
/*  contact-form
--------------------------------------------- */
.contact-form__lead {
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .contact-form__lead {
        font-size: 1.14286rem;
    }
}

.contact-form__txt-list {
    margin-bottom: 40px;
}

@media screen and (max-width: 750px) {
    .contact-form__txt-list {
        margin-bottom: 18px;
    }
}

.contact-form__txt-item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .contact-form__txt-item {
        font-size: 1.14286rem;
    }
}

.contact-form__tbl {
    margin-top: 60px;
    width: 100%;
    table-layout: fixed;
}

@media screen and (max-width: 750px) {
    .contact-form__tbl {
        margin-top: 42px;
    }
}

.contact-form__tbl tr {
    border-top: 1px solid #d2d2d2;
}

.contact-form__tbl tr:last-of-type {
    border-bottom: 1px solid #d2d2d2;
}

.contact-form__tbl th, .contact-form__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 20px;
    padding-bottom: 20px;
}

@media screen and (max-width: 750px) {
    .contact-form__tbl th, .contact-form__tbl td {
        display: block;
        padding-bottom: 18px;
        width: 100%;
    }
}

.contact-form__tbl th {
    padding-left: 20px;
    width: 255px;
}

@media screen and (max-width: 750px) {
    .contact-form__tbl th {
        padding-left: 0;
        width: 100%;
    }
}

@media screen and (max-width: 750px) {
    .contact-form__tbl td {
        padding-top: 0;
        padding-bottom: 22px;
    }
}

.contact-form__item-ttl {
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .contact-form__item-ttl {
        letter-spacing: 1px;
        font-weight: bold;
        font-size: 1.14286rem;
    }
}

.contact-form__required {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-left: 9px;
    padding: 3px 10px;
    border: 1px solid #ff0033;
    color: #ff0033;
    font-size: 0.92857rem;
    line-height: 1;
}

@media screen and (max-width: 750px) {
    .contact-form__required {
        font-weight: normal;
    }
}

.contact-form__error-txt {
    color: #ff0033;
    letter-spacing: .5px;
    font-weight: bold;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .contact-form__error-txt {
        letter-spacing: 1px;
        font-size: 1.14286rem;
    }
}

.contact-form__error-txt .is-error {
    display: block;
    margin-bottom: 6px;
}

@media screen and (max-width: 750px) {
    .contact-form__error-txt .is-error {
        margin-bottom: 17px;
    }
}

.contact-form__select, .contact-form__input, .contact-form__textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 1em;
    padding-left: 20px;
    border: 1px solid #333;
    font-size: 1.14286rem;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", sans-serif;
}

@media screen and (max-width: 750px) {
    .contact-form__select, .contact-form__input, .contact-form__textarea {
        padding-left: 20px;
        font-size: 1.14286rem;
    }
}

@media screen and (max-width: 340px) {
    .contact-form__select, .contact-form__input, .contact-form__textarea {
        padding-left: 15px;
    }
}

.contact-form__select.is-error, .contact-form__input.is-error, .contact-form__textarea.is-error {
    border-color: #ff0033;
    background-color: #ffebef;
}

.contact-form__select:placeholder-shown, .contact-form__input:placeholder-shown, .contact-form__textarea:placeholder-shown {
    color: rgba(51, 51, 51, 0.4);
}

.contact-form__select::-webkit-input-placeholder, .contact-form__input::-webkit-input-placeholder, .contact-form__textarea::-webkit-input-placeholder {
    color: rgba(51, 51, 51, 0.4);
}

.contact-form__select:-ms-input-placeholder, .contact-form__input:-ms-input-placeholder, .contact-form__textarea:-ms-input-placeholder {
    color: rgba(51, 51, 51, 0.4);
}

.contact-form__select::-ms-input-placeholder, .contact-form__input::-ms-input-placeholder, .contact-form__textarea::-ms-input-placeholder {
    color: rgba(51, 51, 51, 0.4);
}

.contact-form__select::placeholder, .contact-form__input::placeholder, .contact-form__textarea::placeholder {
    color: rgba(51, 51, 51, 0.4);
}

@media screen and (min-width: 751px) {
    .windows .contact-form__select, .windows .contact-form__input {
        padding-top: 3px;
    }
}

.contact-form__select-wrap {
    max-width: 450px;
    width: 100%;
}

@media screen and (max-width: 750px) {
    .contact-form__select-wrap {
        max-width: 100%;
    }
}

.contact-form__select-wrap.is-error {
    background-color: #ffebef;
}

.contact-form__select {
    padding-right: 40px;
    width: 100%;
    height: 46px;
    border: 1px solid #333;
    background: url(../img/common/icon_select_triangle.png) calc(100% - 18px) center no-repeat;
    background-size: 11px 8px;
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .contact-form__select {
        padding-right: 42px;
        height: 45px;
        font-size: 1.14286rem;
    }
}

@media screen and (max-width: 340px) {
    .contact-form__select {
        padding-left: 15px;
    }
}

.contact-form__input {
    max-width: 360px;
    width: 100%;
    height: 46px;
    font-size: 1.14285rem;
}

@media screen and (max-width: 750px) {
    .contact-form__input {
        max-width: 100%;
        height: 45px;
    }
}

.contact-form__textarea {
    display: block;
    overflow: auto;
    padding-top: 10px;
    padding-right: 1em;
    padding-bottom: 10px;
    min-height: 215px;
    max-width: 680px;
    width: 100%;
    resize: none;
}

@media screen and (min-width: 751px) {
    .windows .contact-form__textarea {
        padding-top: 13px;
    }
}

@media screen and (max-width: 750px) {
    .contact-form__textarea {
        min-height: 320px;
        max-width: 100%;
    }
}

.contact-form__btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    margin-top: 40px;

    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.contact-form__btn {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 20px;
    min-height: 65px;
    width: 240px;
    border: 1px solid;
    font-size: 1rem;
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .contact-form__btn {
        margin-right: 2.68097%;
        min-width: 130px;
        min-height: 45px;
        width: 40.21448%;
        letter-spacing: 1px;
        font-size: 1rem;
    }
}

@media screen and (min-width: 751px) {
    .contact-form__btn {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .contact-form__btn:hover {
        opacity: 0.8;
    }
}

.contact-form__btn:last-of-type {
    margin-right: 0;
}

.contact-form__btn--clear {
    border-color: #333;
}

.contact-form__btn--submit {
    border: none;
    background-color: #d4d4d4;
}

.contact-form__btn-txt {
    position: relative;
}

@media screen and (max-width: 750px) {
    .contact-form__btn-txt {
        top: 1px;
    }
}

.contact-form__btn--submit .contact-form__btn-txt {
    position: relative;
    top: 2px;
}

.contact-form__btn--submit .contact-form__btn-txt::after {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-left: 14px;
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 25px 25px;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .contact-form__btn--submit .contact-form__btn-txt::after {
        margin-left: 5px;
    }
}

@media screen and (min-width: 751px) {
    .contact-form__btn:hover .contact-form__btn-txt {
        text-decoration: underline;
    }
}

/*  contact-form-confirm
--------------------------------------------- */
.contact-form-confirm__head-ttl {
    display: block;
    font-weight: bold;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (min-width: 751px) {
    .contact-form-confirm__head-ttl {
        letter-spacing: .5px;
    }
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__head-ttl {
        font-size: 1.14286rem;
    }
}

.contact-form-confirm__head-txt {
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__head-txt {
        font-size: 1.14286rem;
    }
}

.contact-form-confirm__tbl {
    margin-top: 55px;
    width: 100%;
    table-layout: fixed;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__tbl {
        margin-top: 35px;
    }
}

.contact-form-confirm__tbl tr {
    border-top: 1px solid #d2d2d2;
}

.contact-form-confirm__tbl tr:last-of-type {
    border-bottom: 1px solid #d2d2d2;
}

.contact-form-confirm__tbl th, .contact-form-confirm__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 17px;
    padding-bottom: 17px;
    line-height: 1.7;
}

@media screen and (min-width: 751px) {
    .windows .contact-form-confirm__tbl th, .windows .contact-form-confirm__tbl td {
        padding-top: 18px;
        padding-bottom: 16px;
    }
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__tbl th, .contact-form-confirm__tbl td {
        display: block;
        padding-top: 17px;
        width: 100%;
    }
}

.contact-form-confirm__tbl th {
    padding-left: 20px;
    width: 255px;
}

@media screen and (min-width: 751px) {
    .contact-form-confirm__tbl th {
        letter-spacing: .3px;
    }
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__tbl th {
        padding-bottom: 10px;
        padding-left: 0;
        width: 100%;
    }
}

.contact-form-confirm__tbl td {
    padding-right: 20px;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__tbl td {
        padding-top: 0;
        padding-bottom: 14px;
    }
}

.contact-form-confirm__item-ttl {
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__item-ttl {
        letter-spacing: 1px;
        font-weight: bold;
        font-size: 1.14286rem;
    }
}

.contact-form-confirm__data {
    font-size: 1.14286rem;
}

@media screen and (min-width: 751px) {
    .contact-form-confirm__data {
        letter-spacing: .8px;
    }
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__data {
        font-size: 1.14286rem;
        line-height: 2;
    }
}

.contact-form-confirm__btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    margin-top: 40px;

    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.contact-form-confirm__btn {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 20px;
    min-height: 65px;
    width: 240px;
    font-size: 1rem;
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__btn {
        margin-right: 2.68097%;
        min-width: 130px;
        min-height: 45px;
        width: 40.21448%;
        letter-spacing: 1px;
        font-size: 1rem;
    }
}

@media screen and (min-width: 751px) {
    .contact-form-confirm__btn {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .contact-form-confirm__btn:hover {
        opacity: 0.8;
    }
}

.contact-form-confirm__btn:last-of-type {
    margin-right: 0;
}

.contact-form-confirm__btn--back {
    background-color: #d4d4d4;
}

.contact-form-confirm__btn--submit {
    background-color: #333;
}

.contact-form-confirm__btn-txt {
    position: relative;
    top: 2px;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__btn-txt {
        top: 1px;
    }
}

.contact-form-confirm__btn--submit .contact-form-confirm__btn-txt {
    color: #fff;
}

.contact-form-confirm__btn-txt::after {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-left: 15px;
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 25px 25px;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__btn-txt::after {
        margin-left: 7px;
    }
}

.contact-form-confirm__btn--back .contact-form-confirm__btn-txt::after {
    display: none;
}

.contact-form-confirm__btn--back .contact-form-confirm__btn-txt::before {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-right: 15px;
    width: 25px;
    height: 25px;
    background: url(../img/common/icon_circle-arrow_left.svg) 0 0 no-repeat;
    background-size: 25px 25px;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .contact-form-confirm__btn--back .contact-form-confirm__btn-txt::before {
        margin-right: 7px;
    }
}

@media screen and (min-width: 751px) {
    .contact-form-confirm__btn:hover .contact-form-confirm__btn-txt {
        text-decoration: underline;
    }
}

/* ---------------------------------------------
*   Top Page
--------------------------------------------- */
/*  top-keyvidual
--------------------------------------------- */
.top-keyvidual {
    position: relative;
    /*height: 56.2vw;*/
}
@media screen and (max-width: 750px) {
    .top-keyvidual {
        /*height: 172.1vw;*/
    }
    .top-keyvidual--en {
        /*height: 157.1vw;*/
    }
}

.top-keyvidual__img img {
    width: 100%;
}

.top-keyvidual__txt-wrap {
    position: absolute;
    top: 23.06003vw;
    left: 9.15081vw;
}

@media screen and (max-width: 750px) {
    .top-keyvidual__txt-wrap {
        position: static;
        padding-top: 3.66748vw;
        padding-bottom: 9.1687vw;
        background-color: #96d8f2;
    }
}

.top-keyvidual__ttl {
    display: block;
    margin-bottom: 2.19619vw;
    font-weight: bold;
    font-size: 1.75695vw;
}

@media screen and (max-width: 750px) {
    .top-keyvidual__ttl {
        color: #fff;
        text-align: center;
        font-size: 4.88998vw;
    }
}

.top-keyvidual__lead {
    overflow: hidden;
    padding-top: 7.75988vw;
    width: 31.25915vw;
    height: 0;
    background: url(../img/top/txt_kv.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .top-keyvidual__lead {
        margin-right: auto;
        margin-left: auto;
        padding-top: 19.5599vw;
        width: 85.57457vw;
        background-image: url(../img/top/txt_kv_sp.png);
    }
}

/*  top-message
--------------------------------------------- */
.top-message__txt {
    display: block;
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-message__txt {
        padding-top: 35px;
        padding-bottom: 41px;
        line-height: 1.9;
    }
}

/*  top-info
--------------------------------------------- */
.top-info--en {
    background-color: #fff;
}
.top-info__item {
    background-color: #e0e0e0;
}

.top-info__item:nth-of-type(2n) {
    background-color: #efefef;
}

.top-info__item-container {
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}

@media screen and (max-width: 750px) {
    .top-info__item-container {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}

/* プレスリリースリンクstart */
.top-press__link {
    display: block;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-press__link {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .top-press__link:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .top-press__link {
        padding-top: 18px;
        padding-bottom: 18px;

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

/* nolink */
.top-press__nolink {
    display: block;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-press__nolink {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
}

@media screen and (max-width: 750px) {
    .top-press__nolink {
        padding-top: 18px;
        padding-bottom: 18px;

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

.top-press__nolink a {
    text-decoration: underline;
    color: #1b519e;
}

.top-press__nolink a:hover {
    text-decoration: none;
}

.top-press__nolink a:after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-right: 2px;
    margin-left: 4px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.top-press__category-wrap {
    display: block;
}

.top-press__category {
    display: inline-block;
    padding: 4px 20px;
    margin-right: 18px;
    margin-bottom: 12px;
    min-width: auto;
    border: 1px solid #333;
    text-align: left;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .top-press__category {
        font-size: 1rem;
    }
}

.top-press__date {
    padding-top: 2px;
    color: #999;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-press__date {
        width: auto;
        font-size: 1.14286rem;
    }
}

.top-press__txt {
    padding-top: 2px;
    width: 100%;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-press__txt {
        margin-top: 10px;
        font-size: 1.14286rem;
        line-height: 1.7;
    }
}

.top-press__link:hover .top-press__txt {
    text-decoration: underline;
}
/* プレスリリースリンクend */

.top-info__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-info__link {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .top-info__link:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .top-info__link {
        padding-top: 18px;
        padding-bottom: 18px;

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

/* nolink */
.top-info__nolink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-info__nolink {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
}

@media screen and (max-width: 750px) {
    .top-info__nolink {
        padding-top: 18px;
        padding-bottom: 18px;

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

.top-info__nolink a {
    text-decoration: underline;
    color: #1b519e;
}

.top-info__nolink a:hover {
    text-decoration: none;
}

.top-info__nolink a:after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-right: 2px;
    margin-left: 4px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.top-info__category-wrap {
    display: block;
    width: 152px;
}

.top-info__category {
    display: block;
    padding-top: 2px;
    padding-bottom: 2px;
    width: 110px;
    border: 1px solid #333;
    text-align: center;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .top-info__category {
        font-size: 1rem;
    }
}

.top-info__date {
    display: block;
    padding-top: 2px;
    width: 135px;
    color: #999;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-info__date {
        width: auto;
        font-size: 1.14286rem;
    }
}

.top-info__txt {
    padding-top: 2px;
    width: calc(100% - 152px - 135px);
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-info__txt {
        margin-top: 10px;
        width: 100%;
        font-size: 1.14286rem;
        line-height: 1.7;
    }
}

.top-info__link:hover .top-info__txt {
    text-decoration: underline;
}

/*  top-panel
--------------------------------------------- */
.top-panel {
    margin-top: 52px;
    margin-right: auto;
    margin-bottom: 40px;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}

.top-panel--en {
    margin-top: 31px;
    margin-bottom: 30px;
}

@media screen and (max-width: 750px) {
    .top-panel {
        max-width: 100%;
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        margin-top: 8%;
        margin-bottom: 8%;
    }
}

.top-panel__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .top-panel__list {
        display: block;
    }
}

.top-panel__list--en {
    display: block;
}

.top-panel__item {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    width: 48.75%;
    -webkit-box-shadow: 0 0 8px rgba(51, 51, 51, 0.16);
    box-shadow: 0 0 8px rgba(51, 51, 51, 0.16);
}

@media screen and (min-width: 751px) {
    .top-panel__item {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .top-panel__item:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .top-panel__item {
        margin-bottom: 4.88998vw;
        padding: 2.68949vw 1.95599vw;
        width: 100%;
    }
}

.top-panel__item:last-of-type {
    margin-right: 0;
}

@media screen and (max-width: 750px) {
    .top-panel__item:last-of-type {
        margin-bottom: 0;
    }
}

.top-panel__item--en {
    width: 100%;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.top-panel__item-inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 25px 20px 13px;
    height: 100%;
}

@media screen and (max-width: 750px) {
    .top-panel__item-inner {
        padding: 4.40098vw 4.40098vw 2.20049vw;
    }
}

.top-panel__item-inner--en {
    padding: 132px 20px 132px;
}
@media screen and (max-width: 750px) {
    .top-panel__item-inner--en {
        padding: calc((100 / 750) * 80vw) calc((100 / 750) * 33vw) calc((100 / 750) * 106vw);
    }
}

.top-panel__item--top-msg .top-panel__item-inner {
    background: url(../img/top/img_top-msg.png?v=20251126) center center no-repeat;
    background-size: cover;
}

.top-panel__item--en .top-panel__item-inner {
    background: url(../img/common/img_top-img.jpg) center center no-repeat;
    background-size: cover;
}

.top-panel__item--en .top-panel__item-inner--en {
    background: url(../en/img/img_en_topmessage.jpg?v=20260409) center center no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .top-panel__item--top-msg .top-panel__item-inner {
        background-image: url(../img/top/img_top-msg_sp.png?v=20251126);
    }

    .top-panel__item--en .top-panel__item-inner--en {
        background-image: url(../en/img/img_en_topmessage_sp.jpg?v=20260409);
    }
}

.top-panel__item--vision .top-panel__item-inner {
    background: url(../img/top/img_vision.jpg) center center no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .top-panel__item--vision .top-panel__item-inner {
        background-image: url(../img/top/img_vision_sp.jpg);
    }
}

/*  top-section
--------------------------------------------- */
.top-section__ttl {
    margin-bottom: 10px;
}

.top-panel__item--top-msg .top-section__ttl {
    text-shadow: 1px 1px 6px #fff;
}

@media screen and (max-width: 750px) {
    .top-panel .top-section__ttl {
        margin-bottom: 1.7vw;
    }
}

.top-jigyou .top-section__ttl {
    margin-bottom: 30px;
}

@media screen and (max-width: 750px) {
    .top-jigyou .top-section__ttl {
        margin-bottom: 15px;
        text-align: center;
    }
}

.top-gyoseki .top-section__ttl {
    margin-bottom: 30px;
}

@media screen and (max-width: 750px) {
    .top-gyoseki .top-section__ttl {
        margin-bottom: 15px;
        text-align: center;
    }
}

.top-section__ttl-txt {
    position: relative;
}

@media screen and (max-width: 750px) {
    .top-section__ttl-txt {
        font-size: 5.79707vw;
    }
}

.top-section__ttl-txt::after {
    position: absolute;
    display: block;
    content: "";
}

.top-panel__item--top-msg .top-section__ttl-txt {
    letter-spacing: -1.3px;
}

.top-panel__item--top-msg .top-section__ttl-txt::after {
    top: -19px;
    right: -37px;
    width: 30px;
    height: 30px;
    background: url(../img/common/img_deco_01.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .top-panel__item--top-msg .top-section__ttl-txt::after {
        top: -3vw;
        right: -8vw;
        width: 5.86797vw;
        height: 5.86797vw;
    }
}

.top-panel__item--vision .top-section__ttl-txt::after {
    top: -10px;
    right: -39px;
    width: 34px;
    height: 20px;
    background: url(../img/common/img_deco_02.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .top-panel__item--vision .top-section__ttl-txt::after {
        top: -2.3vw;
        right: -7.8vw;
        width: 6.60147vw;
        height: 3.91198vw;
    }
}

.top-jigyou .top-section__ttl-txt::after {
    top: -22px;
    right: -24px;
    width: 20px;
    height: 30px;
    background: url(../img/common/img_deco_03.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .top-jigyou .top-section__ttl-txt::after {
        top: -4vw;
        right: -5.2vw;
        width: 3.91198vw;
        height: 5.86797vw;
    }
}

.top-gyoseki .top-section__ttl-txt::after {
    top: -22px;
    right: -24px;
    width: 20px;
    height: 30px;
    background: url(../img/common/img_deco_03.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .top-gyoseki .top-section__ttl-txt::after {
        top: -4vw;
        right: -5.2vw;
        width: 3.91198vw;
        height: 5.86797vw;
    }
}

.top-panel__item-inner--en .top-section__ttl-txt {
    font-family: 'Roboto';
    letter-spacing: 0.05em;
}

.top-section__txt {
    margin-bottom: 32px;
    line-height: 1.7;
}

@media screen and (max-width: 750px) {
    .top-panel .top-section__txt {
        margin-bottom: 5.2vw;
        font-size: 3.1vw;
        line-height: 1.5;
    }
}

.top-jigyou .top-section__txt {
    margin-bottom: 45px;
}

@media screen and (max-width: 750px) {
    .top-jigyou .top-section__txt {
        margin-bottom: 25px;
        line-height: 1.9;
    }
}

.top-gyoseki .top-section__txt {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 45px;
    width: 320px;
}

@media screen and (max-width: 750px) {
    .top-gyoseki .top-section__txt {
        margin-bottom: 30px;
        width: 100%;
        line-height: 1.9;
    }
}

/*  top-jigyou
--------------------------------------------- */
.top-jigyou {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin-bottom: 80px;

    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .top-jigyou {
        display: block;
        margin-bottom: 48px;
    }
}

.top-jigyou__main {
    margin-top: 130px;
    margin-right: 2em;
    width: 320px;
}

@media screen and (max-width: 750px) {
    .top-jigyou__main {
        margin-top: 0;
        margin-right: 0;
        width: 100%;
    }
}

.top-jigyou__img {
    width: 60.41667%;
}

@media screen and (max-width: 750px) {
    .top-jigyou__img {
        margin-top: 40px;
        width: 100%;
    }
}

/*  top-gyoseki
--------------------------------------------- */
.top-gyoseki {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    padding-top: 96px;
    padding-bottom: 80px;
    background: url(../img/top/bg_gyoseki.jpg) center center no-repeat;
    background-size: cover;

    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .top-gyoseki {
        display: block;
        padding-top: 53px;
        padding-bottom: 50px;
    }
}

.top-gyoseki__main {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
}

/*  top-company
--------------------------------------------- */
.top-company__body {
    padding-top: 40px;
    padding-bottom: 43px;
    background: url(../img/top/bg_outline.jpg) center center no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .top-company__body {
        padding-top: 8.31296vw;
        padding-bottom: 6.84597vw;
        background-image: url(../img/top/bg_outline_sp.jpg);
    }
}

.top-company__body--en {
    padding-bottom: 18px;
}
@media screen and (max-width: 750px) {
    .top-company__body--en {
        padding-bottom: 4vw;
    }
}

.top-company__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: center;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    justify-content: center;
}

@media screen and (max-width: 750px) {
    .top-company__list {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}

.top-company__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 23px;
    margin-left: 23px;
    padding-right: 17px;
    padding-left: 17px;
    width: 205px;
    height: 240px;
    background-color: #fff;
    -webkit-box-shadow: 0 5px 8px rgba(51, 51, 51, 0.16);
    box-shadow: 0 5px 8px rgba(51, 51, 51, 0.16);
    text-align: center;
    font-weight: bold;
}

@media screen and (max-width: 800px) {
    .top-company__item {
        margin-right: 15px;
        margin-left: 15px;
    }
}

@media screen and (max-width: 750px) {
    .top-company__item {
        margin-right: 4.27873vw;
        margin-left: 0;
        width: 47.31903%;
        height: 50.36675vw;
    }
    .top-company__item:nth-of-type(2n) {
        margin-right: 0;
    }
    .top-company__item:nth-of-type(n+3) {
        margin-top: 3.91198vw;
    }
    .top-company__item:last-of-type {
        margin-right: 0;
    }
}

@media screen and (min-width: 751px) {
    .top-company__item:nth-of-type(n+4) {
        margin-top: 40px;
    }
}

.top-company__img {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: auto;
    margin-left: auto;
    height: 125px;
}

@media screen and (max-width: 750px) {
    .top-company__img {
        height: 27.13936vw;
    }
}

.top-company__item--uriage .top-company__img {
    padding-top: 28px;
    width: 86px;
}

@media screen and (max-width: 750px) {
    .top-company__item--uriage .top-company__img {
        padding-top: 5.99022vw;
        width: 18.33741vw;
    }
}

.top-company__item--shihonkin .top-company__img {
    padding-top: 57px;
    width: 115px;
}

@media screen and (max-width: 750px) {
    .top-company__item--shihonkin .top-company__img {
        padding-top: 12.34719vw;
        width: 24.57213vw;
    }
}

.top-company__item--group .top-company__img {
    padding-top: 37px;
    width: 79px;
}

@media screen and (max-width: 750px) {
    .top-company__item--group .top-company__img {
        padding-top: 7.82396vw;
        width: 17.23716vw;
    }
}

.top-company__item--jyugyoin .top-company__img {
    padding-top: 37px;
    width: 82px;
}

@media screen and (max-width: 750px) {
    .top-company__item--jyugyoin .top-company__img {
        padding-top: 8.19071vw;
        width: 17.35941vw;
    }
}

.top-company__item--syuppan .top-company__img {
    padding-top: 40px;
    width: 77px;
}

@media screen and (max-width: 750px) {
    .top-company__item--syuppan .top-company__img {
        padding-top: 9.04645vw;
        width: 16.38142vw;
    }
}

/*¤³¤³¤«¤éÓ¢ÕZÓÃ¥¯¥é¥¹*/
.top-company__img--en {
    height: 125px;
}

@media screen and (max-width: 750px) {
    .top-company__img--en {
        height: 27.13936vw;
    }
}

.top-company__item--uriage .top-company__img--en {
    padding-top: 28px;
    width: 86px;
}

@media screen and (max-width: 750px) {
    .top-company__item--uriage .top-company__img--en {
        padding-top: 4.89022vw;
        width: 18.33741vw;
    }
}

.top-company__item--shihonkin .top-company__img--en {
    padding-top: 57px;
    width: 115px;
}

@media screen and (max-width: 750px) {
    .top-company__item--shihonkin .top-company__img--en {
        padding-top: 12.34719vw;
        width: 24.57213vw;
    }
}

.top-company__item--group .top-company__img--en {
    padding-top: 37px;
    width: 79px;
}

@media screen and (max-width: 750px) {
    .top-company__item--group .top-company__img--en {
        padding-top: 4.82396vw;
        width: 17.23716vw;
    }
}

.top-company__item--jyugyoin .top-company__img--en {
    padding-top: 20px;
    width: 82px;
        padding-bottom: 20px;
    height: auto;
}

@media screen and (max-width: 750px) {
    .top-company__item--jyugyoin .top-company__img--en {
        padding-top: 5.19071vw;
        width: 17.35941vw;
    }
}

.top-company__item--syuppan .top-company__img--en {
    padding-top: 20px;
    padding-bottom: 18px;
    width: 77px;
    height: auto;
}

@media screen and (max-width: 750px) {
    .top-company__item--syuppan .top-company__img--en {
        padding-top: 3.94645vw;
        width: 16.38142vw;
    }
}

.top-company__img img {
    width: 100%;
}

.top-company__ttl {
    display: block;
    margin-bottom: 5px;
        font-size: 15px;
}

.top-company__ttl--en {
    font-family: 'Roboto';
}

.top-company__item--jyugyoin .top-company__ttl--en,
.top-company__item--syuppan .top-company__ttl--en {
    display: block;
    line-height: 1.1;
}

@media screen and (max-width: 750px) {
    .top-company__ttl {
        margin-bottom: 1.2vw;
        font-size: 2.93399vw;
    }
    .top-company__item--uriage .top-company__ttl--en {
        margin-bottom: 0vw;
        margin-top: -2.9vw;
        font-size: 3.63399vw;
    }
    .top-company__item--shihonkin .top-company__ttl--en {
        margin-bottom: 0vw;
        margin-top: -2.9vw;
        font-size: 3.63399vw;
    }
    .top-company__item--group .top-company__ttl--en {
        margin-bottom: 1.2vw;
        margin-top: -4.8vw;
        font-size: 2.93399vw;
        letter-spacing: 0.13em;
    }
    .top-company__item--jyugyoin .top-company__ttl--en {
        margin-bottom: 0.2vw;
        margin-top: -7%;
        font-size: 2.93399vw;
        letter-spacing: 0.13em;
    }
    .top-company__item--syuppan .top-company__ttl--en {
        margin-bottom: 1.2vw;
        margin-top: -3%;
        font-size: 2.93399vw;
        letter-spacing: 0.13em;
    }
}

.top-company__number {
    position: relative;
    display: inline-block;
    letter-spacing: -2px;
    font-size: 50px;
    font-family: 'Roboto';
    line-height: 1;
}

@media screen and (max-width: 750px) {
    .top-company__number {
        letter-spacing: -.5vw;
        font-size: 10.51345vw;
        right: 3%;
    }
    .top-company__item--jyugyoin .top-company__number--en {
        top: calc((100 / 750) * 3vw);
    }
    .top-company__item--group .top-company__number--en {
        top: calc((100 / 750) * 18vw);
    }
}

.top-company__txt-left {
    position: absolute;
    bottom: 6px;
    left: -40px;
    letter-spacing: 0;
    font-size: 14px;
}

@media screen and (max-width: 750px) {
    .top-company__txt-left {
        bottom: 1.5vw;
        left: -9vw;
        font-size: 2.93399vw;
    }
}

.top-company__unit {
    position: absolute;
    right: -20px;
    bottom: 6px;
    letter-spacing: 0;
    font-size: 14px;
}
@media screen and (max-width: 750px) {
    .top-company__unit {
        right: -4vw;
        bottom: 1.5vw;
        font-size: 2.93399vw;
    }
}

.top-company__unit--comma {
    font-size: 0.7em;
}

.top-company__unit--btm {
    right: 3px;
    bottom: -14px;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 750px) {
    .top-company__unit--btm {
        bottom: -3vw;
    }

}

.top-company__item--uriage .top-company__unit--en {
    display: block;
    bottom: -14px;
    right: -28px;
    width: 200px;
}
@media screen and (max-width: 750px) {
    .top-company__item--uriage .top-company__unit--en {
        display: inline-block;
        text-align: right;
        letter-spacing: 0.12em;
        bottom: calc((100 / 750) * -55vw);
        right: calc((100 / 750) * 4vw);
        width: calc((100 / 750) * 261vw);
    }
    .top-company__item--shihonkin .top-company__unit--en {
        bottom: -4vw;
        letter-spacing: 0.13em;
    }
}

.top-company__item--syuppan .top-company__unit--en {
    right: -44px;
}

.top-company__item--group .top-company__unit--en {
    right: -54px;
    bottom: -14px;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 750px) {
    .top-company__item--group .top-company__unit--en {
        right: calc((100 / 750) * -84vw);
        letter-spacing: 0.13em;
        bottom: calc((100 / 750) * -29vw);
    }
    .top-company__item--syuppan .top-company__unit--en {
        right: -10.5vw;
        bottom: 0.2vw;
        letter-spacing: 0.13em;
    }
}

.top-company__unit {
    font-size: 0.3em;
}

.top-company__unit--comma {
    font-size: 0.7em;
}

.top-company__txt {
    padding-right: 3px;
    text-align: right;
    font-size: 14px;
}

.top-company__txt--en {
    font-family: 'Roboto';
}

@media screen and (max-width: 750px) {
    .top-company__txt {
        padding-right: 0;
        font-size: 2.93399vw;
    }
    .top-company__item--jyugyoin .top-company__txt {
        letter-spacing: 0.1em;
    }
    .top-company__item--syuppan .top-company__txt {
        margin-top: 1.7vw;
    }
}

.top-company__txt-btm {
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
    color: #fff;
    text-align: right;
    font-size: 1.07143rem;
    line-height: 1;
}

@media screen and (max-width: 750px) {
    .top-company__txt-btm {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}

@media screen and (max-width: 750px) {
    .top-company__txt-btm {
        margin-top: 15px;
        font-size: 0.85714rem;
    }
}

.top-company__txt-btm--en {
    line-height: 1.3;
}
@media screen and (max-width: 750px) {
    .top-company__txt-btm--en {
        margin-top: 19px;
        font-size: calc((100 / 750) * 24.6vw);
        line-height: 1.55;
        padding-right: 4.40098%;
        padding-left: 0;
    }
}

/*  top-harf-panel-wrap
--------------------------------------------- */
.top-harf-panel-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .top-harf-panel-wrap {
        display: block;
    }
}

/*  top-harf-panel
--------------------------------------------- */
.top-harf-panel {
    position: relative;
    max-height: 382px;
    width: 50%;
    height: 24.89019vw;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

@media screen and (max-width: 750px) {
    .top-harf-panel {
        max-height: initial;
        max-height: none;
        width: 100%;
        height: 62.34719vw;
    }
}

.top-harf-panel--sustainability {
/*  background-image: url(../img/top/bg_sustainability.jpg); */
/*  background-position: center 0; */
}

@media screen and (max-width: 750px) {
    .top-harf-panel--sustainability {
        background-image: url(../img/top/bg_sustainability_sp.jpg);
    }
}

.top-harf-panel--gyoseki {
/*  background-image: url(../img/top/bg_gyoseki_half.jpg); */
}

@media screen and (max-width: 750px) {
    .top-harf-panel--gyoseki {
        background-image: url(../img/top/bg_gyoseki_half_sp.jpg);
    }
}

.top-harf-panel--recruit {
/*  background-image: url(../img/top/bg_recruit.jpg); */
/*  background-position: center 0; */
}

@media screen and (max-width: 750px) {
    .top-harf-panel--recruit {
        background-image: url(../img/top/bg_recruit_sp.jpg);
    }
}

.top-harf-panel--group {
/*  background-image: url(../img/top/bg_group-company.jpg); */
}

@media screen and (max-width: 750px) {
    .top-harf-panel--group {
        background-image: url(../img/top/bg_group-company_sp.jpg);
    }
}

.top-harf-panel__inner {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    height: 100%;

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

.top-harf-panel__contents {
    position: relative;
    z-index: 1;
    display: inline-block;
}

@media screen and (max-width: 750px) {
    .top-harf-panel__contents {
        padding-top: 13px;
    }
}

.top-harf-panel__ttl {
    position: relative;
    margin-bottom: 28px;
}

@media screen and (max-width: 750px) {
    .top-harf-panel__ttl {
        margin-bottom: 15px;
    }
}

.top-harf-panel--recruit .top-harf-panel__ttl {
    color: #333;
}

.top-harf-panel__ttl::before {
    position: absolute;
    top: -10px;
    left: 6px;
    display: block;
    width: 38px;
    height: 10px;
    background: url(../img/common/img_deco_05.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 750px) {
    .top-harf-panel__ttl::before {
        left: 50%;
        width: 8px;
        height: 31px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

.top-harf-panel--recruit .top-harf-panel__ttl::before,
.top-harf-panel--sustainability .top-harf-panel__ttl::before {
    background-image: url(../img/common/img_deco_07.png);
}

@media screen and (max-width: 750px) {
    .top-harf-panel--recruit .top-harf-panel__ttl::before,
    .top-harf-panel--sustainability .top-harf-panel__ttl::before {
        top: -10px;
        left: 33px;
        width: 32px;
        height: 8px;
    }
}

@media screen and (max-width: 750px) {
    .top-harf-panel--group .top-harf-panel__ttl::before,
    .top-harf-panel--gyoseki .top-harf-panel__ttl::before {
        top: -42px;
        background-image: url(../img/common/img_deco_08.png);
    }
}

.top-harf-panel__btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.top-harf-panel__btn-wrap .mod-more:first-of-type {
    margin-right: 32px;
}

@media screen and (max-width: 750px) {
    .top-harf-panel__btn-wrap .mod-more:first-of-type {
        margin-right: 36px;
    }
}

/* ---------------------------------------------
*   Info Page
--------------------------------------------- */
/*  info-settlement
--------------------------------------------- */
.info-settlement__link {
    display: block;
    padding: 20px 18px;
    background-color: #e0e0e0;
}

@media screen and (max-width: 750px) {
    .info-settlement__link {
        padding: 13px 4.40098%;
    }
}

.info-settlement__item:nth-of-type(2n) .info-settlement__link {
    background-color: #efefef;
}

@media screen and (min-width: 751px) {
    .info-settlement__link {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .info-settlement__link:hover {
        opacity: 0.8;
    }
}

.info-settlement__txt {
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .info-settlement__txt {
        font-size: 1.14286rem;
        line-height: 1.9;
    }
}

.info-settlement__txt::after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-left: 6px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (min-width: 751px) {
    .info-settlement__link:hover .info-settlement__txt {
        text-decoration: underline;
    }
}

/* ---------------------------------------------
*   News Page
--------------------------------------------- */
/*  news-search
--------------------------------------------- */
.news-search {
    padding-top: 19px;
    padding-right: 3.65854%;
    padding-left: 3.65854%;
    border-top: 1px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
}

@media screen and (max-width: 750px) {
    .news-search {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
    }
}

.news-search__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .news-search__container {
        display: block;
    }
}

.news-search--center .news-search__container {
    -ms-flex-pack: center;

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

.news-search__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 75px;
    width: 75px;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .news-search__head {
        display: block;
        padding-top: 20px;
        padding-bottom: 20px;
        width: 100%;
        text-align: center;
    }
}

@media screen and (min-width: 751px) {
    .news-search--center .news-search__head {
        width: auto;
    }
}

@media screen and (min-width: 751px) and (max-width: 899px) {
    .news-search--col3 .news-search__head {
        display: block;
        width: 100%;
        text-align: center;
    }
}

.news-search__head-txt {
    display: inline-block;
    margin-top: 10px;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (min-width: 751px) and (max-width: 899px) {
    .news-search--col3 .news-search__head-txt {
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 750px) {
    .news-search__head-txt {
        font-size: 1.14286rem;
    }
    .news-search__head-txt::after {
        display: inline-block;
        margin-top: -3px;
        margin-left: 10px;
        width: 25px;
        height: 25px;
        background: url(../img/common/icon_circle-arrow_down.svg) 0 0 no-repeat;
        background-size: 100% auto;
        content: "";
        vertical-align: middle;
    }
}

.news-search--ir {
    margin-top: 30px;
    border-bottom: none;
    border-top: 1px solid #d2d2d2;
}

.news-search__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(100% - 75px);

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .news-search__body {
        display: block;
        width: 100%;
    }
}

@media screen and (min-width: 751px) {
    .news-search--center .news-search__body {
        width: auto;
    }
}

.news-search__btn {
    min-height: 38px;
    width: 170px;
    background-color: #333;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .news-search__btn {
        display: block;
        margin-right: auto;
        margin-left: auto;
        min-height: 44px;
        width: 220px;
        font-size: 1.14286rem;
    }
}

.news-search__btn::after {
    display: inline-block;
    margin-left: 6px;
    width: 13px;
    height: 10px;
    background: url(../img/common/icon_sort.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 750px) {
    .news-search__btn::after {
        position: relative;
        top: 1px;
        margin-left: 8px;
        width: 20px;
        height: 15px;
    }
}

@media screen and (min-width: 751px) {
    .news-search__btn {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .news-search__btn:hover {
        opacity: 0.8;
    }
}

/*  news-list
--------------------------------------------- */
.news-list {
    position: relative;
}
.news-list__img-loading {
    position: absolute;
    top: 100px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    display: block;
    width: 30px;
}

.news-list__img-loading img {
    width: 100%;
    animation: r1 2s linear infinite;
}

@keyframes r1 {
  0%   { transform: rotate(0deg)}
  100% { transform: rotate(360deg)}
}

@media screen and (max-width: 750px) {
    .news-list__img-loading {
        top: 40px;
    }
}

.news-list__img-loading.js-list-loaded {
    display: none;
}

.news-list__item.js-item-hide {
    display: none;
}

.news-list__item.js-item-show {
    display: block;
}

.news-list__link,
.news-list__nolink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-align: center;
    padding: 20px;
    background-color: #e0e0e0;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .news-list__link,
    .news-list__nolink {
        padding: 20px 4.40098% 15px;
    }
}

.news-list__item:nth-of-type(2n) .news-list__link,
.news-list__item:nth-of-type(2n) .news-list__nolink {
    background-color: #efefef;
}

@media screen and (min-width: 751px) {
    .news-list__link,
    .news-list__nolink {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .news-list__link:hover {
        opacity: 0.8;
    }
}

.news-list__nolink a {
    text-decoration: underline;
    color: #1b519e;
}

.news-list__nolink a:hover {
    text-decoration: none;
}

.news-list__nolink a:after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-right: 2px;
    margin-left: 4px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.news-list__nolink a {
    text-decoration: underline;
    color: #1b519e;
}

.news-list__nolink a:hover {
    text-decoration: none;
}

.news-list__nolink a:after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-right: 2px;
    margin-left: 4px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.news-list__date {
    display: inline-block;
    margin-right: 18px;
    margin-bottom: 12px;
    color: #999;
    font-size: 1rem;
}

@media screen and (min-width: 751px) {
    .windows .news-list__date {
        margin-top: 2px;
    }
}

@media screen and (max-width: 750px) {
    .news-list__date {
        margin-top: 1px;
        margin-bottom: 8px;
        font-size: 1.14286rem;
    }
}

.news-list__label-wrap {
    margin-bottom: 12px;
}

@media screen and (max-width: 750px) {
    .news-list__label-wrap {
        margin-bottom: 8px;
    }
}

.news-list__label {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2px 10px 1px 10px;
    min-width: 110px;
    border: 1px solid #707070;
    text-align: center;
    font-size: 1rem;
}

@media screen and (min-width: 751px) {
    .windows .news-list__label {
        padding-top: 3px;
    }
}

@media screen and (max-width: 750px) {
    .news-list__label {
        padding-top: 1px;
        font-size: 1rem;
    }
}

.news-list--group .news-list__label {
    padding-right: 20px;
    padding-left: 20px;
    min-width: initial;
    min-width: auto;
    text-align: left;
}

@media screen and (max-width: 750px) {
    .news-list--group .news-list__label {
        padding-right: 9px;
        padding-left: 9px;
    }
}

.news-list__txt {
    display: block;
    width: 100%;
    line-height: 2;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .news-list__txt {
        font-size: 1.14286rem;
        line-height: 1.9;
    }
}

@media screen and (min-width: 751px) {
    .news-list__link:hover .news-list__txt {
        text-decoration: underline;
    }
}

.news-list__txt--icon-pdf::after {
    display: inline-block;
    margin-top: -2px;
    margin-left: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

.news-list__txt--icon-external::after {
    display: inline-block;
    margin-top: -3px;
    margin-left: 5px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .news-list__txt--icon-external::after {
        top: 2px;
        margin-left: 5px;
        width: 16px;
        height: 18px;
    }
}

/*  article-detail
--------------------------------------------- */
.article-detail__head {
    margin-bottom: 75px;
}

@media screen and (max-width: 750px) {
    .article-detail__head {
        margin-bottom: 72px;
    }
}

.article-detail__ttl {
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 2.14286rem;
}

@media screen and (max-width: 750px) {
    .article-detail__ttl {
        margin-bottom: 12px;
        font-size: 1.42857rem;
    }
}

.article-detail__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
}

.article-detail__label-wrap {
    display: inline-block;
    margin-right: 20px;
    padding-right: .5em;
    padding-left: .5em;
    min-width: 110px;
    text-align: center;
}

.article-detail__label {
    display: block;
    margin-right: auto;
    margin-left: auto;
    padding-top: 2px;
    padding-bottom: 1px;
    border: 1px solid #333;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .article-detail__label {
        font-size: 1rem;
    }
}

.article-detail__date {
    color: #999;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .article-detail__date {
        font-size: 1.14286rem;
    }
}

/* ---------------------------------------------
*  Ir Page
--------------------------------------------- */
/*  ir-message
--------------------------------------------- */
.ir-message__head {
    margin-bottom: 35px;
}

.ir-message__kv {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 130px;
    padding-left: 4.87805%;
    background: url(../img/ir/img_irmessage_kv.jpg?v=20241213) 70% center no-repeat;
    background-size: cover;
}

@media screen and (min-width: 751px) {
    .ir-message__kv {
        min-height: 300px;
    }
}

@media screen and (max-width: 750px) {
    .ir-message__kv {
        padding-top: 0;
        padding-left: 0;
        background: none;
    }
}

.ir-message__kv-ttl {
    overflow: hidden;
    padding-top: 4.02439%;
    width: 27.31707%;
    height: 0;
    background: url(../img/ir/txt_irmessage_title.png) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .ir-message__kv-ttl {
        display: none;
    }
}

.ir-message__img {
    display: none;
}

@media screen and (max-width: 750px) {
    .ir-message__img {
        display: block;
    }
}

.ir-message__img img {
    width: 100%;
}

.ir-message__txt {
    margin-top: 30px;
    text-align: justify;
    word-break: break-all;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .ir-message__txt {
        margin-top: 35px;
        letter-spacing: -.25px;
        font-size: 1.14286rem;
    }
}

.ir-message__txt:first-of-type {
    margin-top: 0;
}

.ir-message__txt-detail {
    display: block;
    margin-top: 100px;
    text-align: right;
}

@media screen and (max-width: 750px) {
    .ir-message__txt-detail {
        margin-top: 70px;
    }
}

/*  benefit
--------------------------------------------- */
.benefit__ttl-s {
    font-size: 1.428rem;
    font-weight: bold;
}

.benefit__txt {
    margin-top: 10px;
    text-align: justify;
    word-break: break-all;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .benefit__txt {
        margin-top: 20px;
        letter-spacing: -.25px;
        font-size: 1.14286rem;
    }
}

.benefit__txt-caution {
    color: #ea5959;
    font-size: 1.14286rem;
    line-height: 2;
    font-weight: bold;
    text-align: center;
}

.benefit-contact__box {
    font-size: 1.14286rem;
    line-height: 2;
    padding-top: 10px;
}

.benefit-contact__box > li {
    padding-left: 5em;
    text-indent: -5em;
}

@media screen and (max-width: 750px) {
    .benefit-contact__box {
    }
}

.benefit-contact__box-mail {
    color: #336699;
    text-decoration: underline;
}

.benefit-contact__box-mail:hover {
 text-decoration: none;
}


/*  ir-report-search
--------------------------------------------- */
.ir-report-search {
    padding-top: 19px;
    padding-right: 3.65854%;
    padding-left: 3.65854%;
    border-top: 1px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
}

@media screen and (max-width: 750px) {
    .ir-report-search {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
    }
}

.ir-report-search__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .ir-report-search__container {
        display: block;
    }
}

.ir-report-search--center .ir-report-search__container {
    -ms-flex-pack: center;

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

.ir-report-search__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 75px;
    width: 75px;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .ir-report-search__head {
        display: block;
        padding-top: 20px;
        padding-bottom: 20px;
        width: 100%;
        text-align: center;
    }
}

@media screen and (min-width: 751px) {
    .ir-report-search--center .ir-report-search__head {
        width: auto;
    }
}

@media screen and (min-width: 751px) and (max-width: 899px) {
    .ir-report-search--col3 .ir-report-search__head {
        display: block;
        width: 100%;
        text-align: center;
    }
}

.ir-report-search .mod-select {
    margin-right: 40px;
    width: 118px;
}

@media screen and (max-width: 750px) {
    .ir-report-search .mod-select {
        width: 100%;
    }
}

.ir-report-search__head-txt {
    display: inline-block;
    margin-top: 10px;
    font-weight: bold;
    font-size: 1rem;
}

@media screen and (min-width: 751px) and (max-width: 899px) {
    .ir-report-search--col3 .ir-report-search__head-txt {
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 750px) {
    .ir-report-search__head-txt {
        font-size: 1.14286rem;
    }
    .ir-report-search__head-txt::after {
        display: inline-block;
        margin-top: -3px;
        margin-left: 10px;
        width: 25px;
        height: 25px;
        background: url(../img/common/icon_circle-arrow_down.svg) 0 0 no-repeat;
        background-size: 100% auto;
        content: "";
        vertical-align: middle;
    }
}

.ir-report-search__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(100% - 75px);

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .ir-report-search__body {
        display: block;
        width: 100%;
    }
}

@media screen and (min-width: 751px) {
    .ir-report-search--center .ir-report-search__body {
        width: auto;
    }
}

.ir-report-search__btn {
    min-height: 38px;
    width: 170px;
    background-color: #333;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .ir-report-search__btn {
        display: block;
        margin-right: auto;
        margin-left: auto;
        min-height: 44px;
        width: 220px;
        font-size: 1.14286rem;
    }
}

.ir-report-search__btn::after {
    display: inline-block;
    margin-left: 6px;
    width: 13px;
    height: 10px;
    background: url(../img/common/icon_sort.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

@media screen and (max-width: 750px) {
    .ir-report-search__btn::after {
        position: relative;
        top: 1px;
        margin-left: 8px;
        width: 20px;
        height: 15px;
    }
}

@media screen and (min-width: 751px) {
    .ir-report-search__btn {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .ir-report-search__btn:hover {
        opacity: 0.8;
    }
}

/*  ir-finance
--------------------------------------------- */
.EurolandTool {
    overflow: hidden;
    width: 100% !important;
    height: 1200px !important;
}
@media screen and (max-width: 750px) {
    .EurolandTool {
        width: 100% !important;
        height: 1460px !important;
    }
}
@media screen and (max-width: 340px) {
    .EurolandTool {
        width: 100% !important;
        height: 1800px !important;
    }
}

/*  ir-repot
--------------------------------------------- */
/*  ir-report-list
--------------------------------------------- */
.ir-report-list__item.js-item-hide {
    display: none;
}

.ir-report-list__item.js-item-show {
    display: block;
}

.ir-report-list__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-align: center;
    padding: 20px;
    background-color: #e0e0e0;

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

.ir-report-list__link--en {
    padding: 16px;
}

@media screen and (max-width: 750px) {
    .ir-report-list__link {
        padding: 20px 4.40098% 15px;
    }
}

.ir-report-list__item:nth-of-type(2n) .ir-report-list__link {
    background-color: #efefef;
}

@media screen and (min-width: 751px) {
    .ir-report-list__link {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .ir-report-list__link:hover {
        opacity: 0.8;
    }
}

.ir-report-list__nolink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-align: center;
    padding: 20px;
    background-color: #e0e0e0;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .ir-report-list__nolink {
        padding: 20px 4.40098% 15px;
    }
}

.ir-report-list__item:nth-of-type(2n) .ir-report-list__nolink {
    background-color: #efefef;
}

@media screen and (min-width: 751px) {
    .ir-report-list__nolink {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .ir-report-list__nolink:hover {
        cursor: default;
    }
}

.ir-report-list__date {
    display: inline-block;
    margin-right: 18px;
    padding-top: 2px;
    color: #999;
    font-size: 1rem;
}

@media screen and (min-width: 751px) {
    .windows .ir-report-list__date {
        margin-top: 2px;
    }
}

@media screen and (max-width: 750px) {
    .ir-report-list__date {
        margin-top: 1px;
        margin-bottom: 8px;
        font-size: 1rem;
    }
}

.ir-report-list__txt {
    width: auto;
    line-height: 2;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .ir-report-list__txt {
        width: 100%;
        font-size: 1.14286rem;
        line-height: 1.6;
    }
}
.ir-report-list__txt--pdf {
    position: relative;
}
.ir-report-list__txt--pdf:after {
    position: absolute;
    content: "";
    width: 23px;
    height: 21px;
    top: 50%;
    right: -29px;
    background: url(../../img/common/icon_pdf2.png) 0 0 no-repeat;
    background-size: 100% auto;
    transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
    .ir-report-list__txt--pdf:after {
        top: -5.8%;
        width: 5vw;
        height: 4vh;
        right: -7.7%;
    }
}

.ir-report-list__link:hover .ir-report-list__txt {
    text-decoration: underline;
}

@media screen and (min-width: 751px) {
    .ir-report-list__link:hover .ir-report-list__txt {
        text-decoration: underline;
    }
}

.ir-report-list__txt--icon-pdf::after {
    display: inline-block;
    margin-top: -3px;
    margin-left: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

.ir-report-list__txt--icon-external::after {
    display: inline-block;
    margin-top: 3px;
    margin-left: 5px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .ir-report-list__txt--icon-external::after {
        top: 2px;
        margin-left: 5px;
        width: 16px;
        height: 18px;
    }
}

/*  ir-calender
--------------------------------------------- */
.ir-calender-block__img {
    margin: 40px auto 40px auto;
    width: 100%;
}

@media screen and (max-width: 750px) {
    .ir-calender-block__img-sp {
        margin: 40px auto 40px auto;
        width: 86.55913%;
    }
}


/* ---------------------------------------------
*   Recruit Page
--------------------------------------------- */
/*  recruit-top
--------------------------------------------- */
.recruit-top__keyvisual img {
    width: 100%;
}

.recruit-top__intro {
    position: relative;
    z-index: 1;
    margin-top: -40px;
    margin-bottom: 95px;
    padding-top: 50px;
    background-color: #fff;
}

@media screen and (max-width: 750px) {
    .recruit-top__intro {
        margin-top: 0;
        margin-bottom: 64px;
        padding-top: 32px;
    }
}

.recruit-top__intro {
    text-align: center;
}

.recruit-top__intro-ttl {
    display: block;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 1.85714rem;
    font-family: 'Roboto';
}

@media screen and (max-width: 750px) {
    .recruit-top__intro-ttl {
        margin-bottom: 15px;
        font-size: 1.42857rem;
    }
}

.recruit-top__intro-txt {
    margin-bottom: 16px;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .recruit-top__intro-txt {
        margin-bottom: 30px;
        letter-spacing: .5px;
        font-size: 1.14286rem;
    }
}

/*  recruit-career
--------------------------------------------- */
.career__txt-no-rct {
    font-size: 1.14286rem;
    line-height: 2;
    text-align: center;
}

.career-entry__ttl {
    margin-bottom: 20px;
    font-size: 1.42857rem;
    font-weight: bold;
}

.career-entry__form {
    max-width: 960px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .career-entry__form {
        max-width: 100%;
    }
}

.career-entry__form-inner {
    max-width: 960px;
}

@media screen and (max-width: 750px) {
    .career-entry__form-inner {
        width: 100%;
        height: 2400px;
    }
}


/* ---------------------------------------------
*   Sitemap Page
--------------------------------------------- */
/*  sitemap
--------------------------------------------- */
.sitemap {
    margin-bottom: 70px;
}

@media screen and (max-width: 750px) {
    .sitemap {
        margin-bottom: 65px;
    }
}

.sitemap:last-child {
    margin-bottom: 0;
}

.sitemap__head {
    padding-bottom: 16px;
    border-bottom: 1px solid #d4d4d4;
}

@media screen and (max-width: 750px) {
    .sitemap__head {
        padding-bottom: 21px;
    }
}

.sitemap__ttl {
    position: relative;
    display: inline-block;
    padding-right: 40px;
    font-weight: bold;
    font-size: 1.85714rem;
}

@media screen and (max-width: 750px) {
    .sitemap__ttl {
        padding-right: 35px;
        font-size: 1.42857rem;
    }
}

.sitemap__ttl::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 24px 24px;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .sitemap__ttl::after {
        width: 25px;
        height: 25px;
        background-size: 25px 25px;
    }
}

@media screen and (min-width: 751px) {
    .sitemap__ttl:hover {
        text-decoration: underline;
        opacity: 0.8;
    }
}

.sitemap__body {
    padding-top: 20px;
}

@media screen and (max-width: 750px) {
    .sitemap__body {
        padding-left: 12px;
    }
}

.sitemap__lv1-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;

    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 750px) {
    .sitemap__lv1-list {
        display: block;
    }
}

.sitemap__lv1-item {
    margin-right: 4.6875%;
    margin-bottom: 18px;
    width: 30.20833%;
}

@media screen and (min-width: 751px) {
    .sitemap__lv1-item:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 750px) {
    .sitemap__lv1-item {
        margin-right: 0;
        margin-bottom: 24px;
        width: 100%;
    }
}

.sitemap__lv1-item-inner {
    display: inline-block;
}

.sitemap__lv1-link {
    position: relative;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 40px;
    max-width: 100%;
    font-size: 1.28571rem;
    line-height: 1.4;
}

@media screen and (min-width: 751px) {
    .sitemap__lv1-link:hover {
        text-decoration: underline;
        opacity: 0.8;
    }
}

@media screen and (max-width: 899px) {
    .sitemap__lv1-link {
        font-size: 1.15rem;
    }
}

@media screen and (max-width: 750px) {
    .sitemap__lv1-link {
        padding-right: 33px;
        font-size: 1.14286rem;
    }
}

.sitemap__lv1-link-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    height: 100%;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
}

.sitemap__lv1-link-txt {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 100%;
    word-break: break-all;
    letter-spacing: -.2px;
}

@media screen and (max-width: 750px) {
    .sitemap__lv1-link-txt {
        letter-spacing: .5px;
    }
}

.sitemap__lv1-link-txt::after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_circle-arrow_right.svg) 0 0 no-repeat;
    background-size: 24px 24px;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .sitemap__lv1-link-txt::after {
        width: 25px;
        height: 25px;
        background-size: 25px 25px;
    }
}

.sitemap__lv2-list {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 15px;
    padding-left: 25px;
    max-width: 260px;
}

@media screen and (max-width: 750px) {
    .sitemap__lv2-list {
        margin-top: 20px;
        padding-left: 23px;
        max-width: 100%;
    }
}

.sitemap__lv2-item {
    position: relative;
    margin-bottom: 10px;
}

@media screen and (max-width: 750px) {
    .sitemap__lv2-item {
        margin-bottom: 18px;
    }
}

.sitemap__lv2-item::before {
    position: absolute;
    top: 1px;
    left: -15px;
    content: "-";
}

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

.sitemap__lv2-link {
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 100%;
    font-size: 1.14286rem;
}

@media screen and (min-width: 751px) {
    .sitemap__lv2-link:hover {
        text-decoration: underline;
    }
}

/* ---------------------------------------------
*   Policy Page
--------------------------------------------- */
/*  policy-main
--------------------------------------------- */
.policy-main__txt {
    margin-bottom: 35px;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .policy-main__txt {
        font-size: 1.14286rem;
    }
}

.policy-main__txt:last-of-type {
    margin-bottom: 105px;
}

@media screen and (max-width: 750px) {
    .policy-main__txt:last-of-type {
        margin-bottom: 70px;
    }
}

/*  policy
--------------------------------------------- */
.policy {
    margin-bottom: 70px;
}

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

.policy__ttl {
    margin-bottom: 8px;
    font-weight: bold;
    font-size: 1.42857rem;
}

@media screen and (max-width: 750px) {
    .policy__ttl {
        font-size: 1.42857rem;
    }
}

.policy__body *:last-child {
    margin-bottom: 0;
}

.policy__txt {
    margin-bottom: 35px;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .policy__txt {
        font-size: 1.14286rem;
    }
}

.policy__body:last-child > p {
    margin-bottom: 0;
}

.policy__list {
    margin-top: 35px;
    margin-bottom: 35px;
}

.policy__item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.14286rem;
    line-height: 2;
}

/* ---------------------------------------------
*   Policy Page
--------------------------------------------- */
/*  p-policy-main
--------------------------------------------- */
.p-policy-main__txt {
    margin-bottom: 35px;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .p-policy-main__txt {
        font-size: 1.14286rem;
    }
}

.p-policy-main__txt:last-of-type {
    margin-bottom: 105px;
}

@media screen and (max-width: 750px) {
    .p-policy-main__txt:last-of-type {
        margin-bottom: 70px;
    }
}

/*  p-policy
--------------------------------------------- */
.p-policy {
    margin-bottom: 70px;
}

.p-policy:last-of-type {
    margin-bottom: 0;
}

.p-policy__ttl {
    margin-bottom: 8px;
    font-weight: bold;
    font-size: 1.42857rem;
}

@media screen and (max-width: 750px) {
    .p-policy__ttl {
        font-size: 1.42857rem;
    }
}

.p-policy__body *:last-child {
    margin-bottom: 0;
}

.p-policy__txt {
    margin-bottom: 35px;
    font-size: 1.14286rem;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .p-policy__txt {
        font-size: 1.14286rem;
    }
}

.p-policy__list {
    margin-bottom: 35px;
}

.p-policy__item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.14286rem;
    line-height: 2;
}

/* ==========================================================
*
*   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: 750px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 5px !important;
    }
    .mgt-sp--10 {
        margin-top: 10px !important;
    }
    .mgt-sp--15 {
        margin-top: 15px !important;
    }
    .mgt-sp--20 {
        margin-top: 20px !important;
    }
    .mgt-sp--25 {
        margin-top: 25px !important;
    }
    .mgt-sp--30 {
        margin-top: 30px !important;
    }
    .mgt-sp--35 {
        margin-top: 35px !important;
    }
    .mgt-sp--40 {
        margin-top: 40px !important;
    }
    .mgt-sp--45 {
        margin-top: 45px !important;
    }
    .mgt-sp--50 {
        margin-top: 50px !important;
    }
    .mgt-sp--55 {
        margin-top: 55px !important;
    }
    .mgt-sp--60 {
        margin-top: 60px !important;
    }
    .mgt-sp--65 {
        margin-top: 65px !important;
    }
    .mgt-sp--70 {
        margin-top: 70px !important;
    }
    .mgt-sp--75 {
        margin-top: 75px !important;
    }
    .mgt-sp--80 {
        margin-top: 80px !important;
    }
    .mgt-sp--85 {
        margin-top: 85px !important;
    }
    .mgt-sp--90 {
        margin-top: 90px !important;
    }
    .mgt-sp--95 {
        margin-top: 95px !important;
    }
    .mgt-sp--100 {
        margin-top: 100px !important;
    }
    .mgt-sp--105 {
        margin-top: 105px !important;
    }
    .mgt-sp--110 {
        margin-top: 110px !important;
    }
    .mgt-sp--115 {
        margin-top: 115px !important;
    }
    .mgt-sp--120 {
        margin-top: 120px !important;
    }
    .mgt-sp--125 {
        margin-top: 125px !important;
    }
    .mgt-sp--130 {
        margin-top: 130px !important;
    }
    .mgt-sp--135 {
        margin-top: 135px !important;
    }
    .mgt-sp--140 {
        margin-top: 140px !important;
    }
    .mgt-sp--145 {
        margin-top: 145px !important;
    }
    .mgt-sp--150 {
        margin-top: 150px !important;
    }
    .mgt-sp--155 {
        margin-top: 155px !important;
    }
    .mgt-sp--160 {
        margin-top: 160px !important;
    }
    .mgt-sp--165 {
        margin-top: 165px !important;
    }
    .mgt-sp--170 {
        margin-top: 170px !important;
    }
    .mgt-sp--175 {
        margin-top: 175px !important;
    }
    .mgt-sp--180 {
        margin-top: 180px !important;
    }
    .mgt-sp--185 {
        margin-top: 185px !important;
    }
    .mgt-sp--190 {
        margin-top: 190px !important;
    }
    .mgt-sp--195 {
        margin-top: 195px !important;
    }
    .mgt-sp--200 {
        margin-top: 200px !important;
    }
    .mgt-sp--205 {
        margin-top: 205px !important;
    }
    .mgt-sp--210 {
        margin-top: 210px !important;
    }
    .mgt-sp--215 {
        margin-top: 215px !important;
    }
    .mgt-sp--220 {
        margin-top: 220px !important;
    }
    .mgt-sp--225 {
        margin-top: 225px !important;
    }
    .mgt-sp--230 {
        margin-top: 230px !important;
    }
    .mgt-sp--235 {
        margin-top: 235px !important;
    }
    .mgt-sp--240 {
        margin-top: 240px !important;
    }
    .mgt-sp--245 {
        margin-top: 245px !important;
    }
    .mgt-sp--250 {
        margin-top: 250px !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: 750px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 5px !important;
    }
    .mgb-sp--10 {
        margin-bottom: 10px !important;
    }
    .mgb-sp--15 {
        margin-bottom: 15px !important;
    }
    .mgb-sp--20 {
        margin-bottom: 20px !important;
    }
    .mgb-sp--25 {
        margin-bottom: 25px !important;
    }
    .mgb-sp--30 {
        margin-bottom: 30px !important;
    }
    .mgb-sp--35 {
        margin-bottom: 35px !important;
    }
    .mgb-sp--40 {
        margin-bottom: 40px !important;
    }
    .mgb-sp--45 {
        margin-bottom: 45px !important;
    }
    .mgb-sp--50 {
        margin-bottom: 50px !important;
    }
    .mgb-sp--55 {
        margin-bottom: 55px !important;
    }
    .mgb-sp--60 {
        margin-bottom: 60px !important;
    }
    .mgb-sp--65 {
        margin-bottom: 65px !important;
    }
    .mgb-sp--70 {
        margin-bottom: 70px !important;
    }
    .mgb-sp--75 {
        margin-bottom: 75px !important;
    }
    .mgb-sp--80 {
        margin-bottom: 80px !important;
    }
    .mgb-sp--85 {
        margin-bottom: 85px !important;
    }
    .mgb-sp--90 {
        margin-bottom: 90px !important;
    }
    .mgb-sp--95 {
        margin-bottom: 95px !important;
    }
    .mgb-sp--100 {
        margin-bottom: 100px !important;
    }
    .mgb-sp--105 {
        margin-bottom: 105px !important;
    }
    .mgb-sp--110 {
        margin-bottom: 110px !important;
    }
    .mgb-sp--115 {
        margin-bottom: 115px !important;
    }
    .mgb-sp--120 {
        margin-bottom: 120px !important;
    }
    .mgb-sp--125 {
        margin-bottom: 125px !important;
    }
    .mgb-sp--130 {
        margin-bottom: 130px !important;
    }
    .mgb-sp--135 {
        margin-bottom: 135px !important;
    }
    .mgb-sp--140 {
        margin-bottom: 140px !important;
    }
    .mgb-sp--145 {
        margin-bottom: 145px !important;
    }
    .mgb-sp--150 {
        margin-bottom: 150px !important;
    }
    .mgb-sp--155 {
        margin-bottom: 155px !important;
    }
    .mgb-sp--160 {
        margin-bottom: 160px !important;
    }
    .mgb-sp--165 {
        margin-bottom: 165px !important;
    }
    .mgb-sp--170 {
        margin-bottom: 170px !important;
    }
    .mgb-sp--175 {
        margin-bottom: 175px !important;
    }
    .mgb-sp--180 {
        margin-bottom: 180px !important;
    }
    .mgb-sp--185 {
        margin-bottom: 185px !important;
    }
    .mgb-sp--190 {
        margin-bottom: 190px !important;
    }
    .mgb-sp--195 {
        margin-bottom: 195px !important;
    }
    .mgb-sp--200 {
        margin-bottom: 200px !important;
    }
    .mgb-sp--205 {
        margin-bottom: 205px !important;
    }
    .mgb-sp--210 {
        margin-bottom: 210px !important;
    }
    .mgb-sp--215 {
        margin-bottom: 215px !important;
    }
    .mgb-sp--220 {
        margin-bottom: 220px !important;
    }
    .mgb-sp--225 {
        margin-bottom: 225px !important;
    }
    .mgb-sp--230 {
        margin-bottom: 230px !important;
    }
    .mgb-sp--235 {
        margin-bottom: 235px !important;
    }
    .mgb-sp--240 {
        margin-bottom: 240px !important;
    }
    .mgb-sp--245 {
        margin-bottom: 245px !important;
    }
    .mgb-sp--250 {
        margin-bottom: 250px !important;
    }
}

/* ---------------------------------------------
*   padding-top
--------------------------------------------- */
.pdt-pc--0 {
    padding-top: 0 !important;
}

.pdt-pc--5 {
    padding-top: 5px !important;
}

.pdt-pc--10 {
    padding-top: 10px !important;
}

.pdt-pc--15 {
    padding-top: 15px !important;
}

.pdt-pc--20 {
    padding-top: 20px !important;
}

.pdt-pc--25 {
    padding-top: 25px !important;
}

.pdt-pc--30 {
    padding-top: 30px !important;
}

.pdt-pc--35 {
    padding-top: 35px !important;
}

.pdt-pc--40 {
    padding-top: 40px !important;
}

.pdt-pc--45 {
    padding-top: 45px !important;
}

.pdt-pc--50 {
    padding-top: 50px !important;
}

.pdt-pc--55 {
    padding-top: 55px !important;
}

.pdt-pc--60 {
    padding-top: 60px !important;
}

.pdt-pc--65 {
    padding-top: 65px !important;
}

.pdt-pc--70 {
    padding-top: 70px !important;
}

.pdt-pc--75 {
    padding-top: 75px !important;
}

.pdt-pc--80 {
    padding-top: 80px !important;
}

.pdt-pc--85 {
    padding-top: 85px !important;
}

.pdt-pc--90 {
    padding-top: 90px !important;
}

.pdt-pc--95 {
    padding-top: 95px !important;
}

.pdt-pc--100 {
    padding-top: 100px !important;
}

.pdt-pc--105 {
    padding-top: 105px !important;
}

.pdt-pc--110 {
    padding-top: 110px !important;
}

.pdt-pc--115 {
    padding-top: 115px !important;
}

.pdt-pc--120 {
    padding-top: 120px !important;
}

.pdt-pc--125 {
    padding-top: 125px !important;
}

.pdt-pc--130 {
    padding-top: 130px !important;
}

.pdt-pc--135 {
    padding-top: 135px !important;
}

.pdt-pc--140 {
    padding-top: 140px !important;
}

.pdt-pc--145 {
    padding-top: 145px !important;
}

.pdt-pc--150 {
    padding-top: 150px !important;
}

.pdt-pc--155 {
    padding-top: 155px !important;
}

.pdt-pc--160 {
    padding-top: 160px !important;
}

.pdt-pc--165 {
    padding-top: 165px !important;
}

.pdt-pc--170 {
    padding-top: 170px !important;
}

.pdt-pc--175 {
    padding-top: 175px !important;
}

.pdt-pc--180 {
    padding-top: 180px !important;
}

.pdt-pc--185 {
    padding-top: 185px !important;
}

.pdt-pc--190 {
    padding-top: 190px !important;
}

.pdt-pc--195 {
    padding-top: 195px !important;
}

.pdt-pc--200 {
    padding-top: 200px !important;
}

.pdt-pc--205 {
    padding-top: 205px !important;
}

.pdt-pc--210 {
    padding-top: 210px !important;
}

.pdt-pc--215 {
    padding-top: 215px !important;
}

.pdt-pc--220 {
    padding-top: 220px !important;
}

.pdt-pc--225 {
    padding-top: 225px !important;
}

.pdt-pc--230 {
    padding-top: 230px !important;
}

.pdt-pc--235 {
    padding-top: 235px !important;
}

.pdt-pc--240 {
    padding-top: 240px !important;
}

.pdt-pc--245 {
    padding-top: 245px !important;
}

.pdt-pc--250 {
    padding-top: 250px !important;
}

@media screen and (max-width: 750px) {
    .pdt-sp--0 {
        padding-top: 0 !important;
    }
    .pdt-sp--5 {
        padding-top: 5px !important;
    }
    .pdt-sp--10 {
        padding-top: 10px !important;
    }
    .pdt-sp--15 {
        padding-top: 15px !important;
    }
    .pdt-sp--20 {
        padding-top: 20px !important;
    }
    .pdt-sp--25 {
        padding-top: 25px !important;
    }
    .pdt-sp--30 {
        padding-top: 30px !important;
    }
    .pdt-sp--35 {
        padding-top: 35px !important;
    }
    .pdt-sp--40 {
        padding-top: 40px !important;
    }
    .pdt-sp--45 {
        padding-top: 45px !important;
    }
    .pdt-sp--50 {
        padding-top: 50px !important;
    }
    .pdt-sp--55 {
        padding-top: 55px !important;
    }
    .pdt-sp--60 {
        padding-top: 60px !important;
    }
    .pdt-sp--65 {
        padding-top: 65px !important;
    }
    .pdt-sp--70 {
        padding-top: 70px !important;
    }
    .pdt-sp--75 {
        padding-top: 75px !important;
    }
    .pdt-sp--80 {
        padding-top: 80px !important;
    }
    .pdt-sp--85 {
        padding-top: 85px !important;
    }
    .pdt-sp--90 {
        padding-top: 90px !important;
    }
    .pdt-sp--95 {
        padding-top: 95px !important;
    }
    .pdt-sp--100 {
        padding-top: 100px !important;
    }
    .pdt-sp--105 {
        padding-top: 105px !important;
    }
    .pdt-sp--110 {
        padding-top: 110px !important;
    }
    .pdt-sp--115 {
        padding-top: 115px !important;
    }
    .pdt-sp--120 {
        padding-top: 120px !important;
    }
    .pdt-sp--125 {
        padding-top: 125px !important;
    }
    .pdt-sp--130 {
        padding-top: 130px !important;
    }
    .pdt-sp--135 {
        padding-top: 135px !important;
    }
    .pdt-sp--140 {
        padding-top: 140px !important;
    }
    .pdt-sp--145 {
        padding-top: 145px !important;
    }
    .pdt-sp--150 {
        padding-top: 150px !important;
    }
    .pdt-sp--155 {
        padding-top: 155px !important;
    }
    .pdt-sp--160 {
        padding-top: 160px !important;
    }
    .pdt-sp--165 {
        padding-top: 165px !important;
    }
    .pdt-sp--170 {
        padding-top: 170px !important;
    }
    .pdt-sp--175 {
        padding-top: 175px !important;
    }
    .pdt-sp--180 {
        padding-top: 180px !important;
    }
    .pdt-sp--185 {
        padding-top: 185px !important;
    }
    .pdt-sp--190 {
        padding-top: 190px !important;
    }
    .pdt-sp--195 {
        padding-top: 195px !important;
    }
    .pdt-sp--200 {
        padding-top: 200px !important;
    }
    .pdt-sp--205 {
        padding-top: 205px !important;
    }
    .pdt-sp--210 {
        padding-top: 210px !important;
    }
    .pdt-sp--215 {
        padding-top: 215px !important;
    }
    .pdt-sp--220 {
        padding-top: 220px !important;
    }
    .pdt-sp--225 {
        padding-top: 225px !important;
    }
    .pdt-sp--230 {
        padding-top: 230px !important;
    }
    .pdt-sp--235 {
        padding-top: 235px !important;
    }
    .pdt-sp--240 {
        padding-top: 240px !important;
    }
    .pdt-sp--245 {
        padding-top: 245px !important;
    }
    .pdt-sp--250 {
        padding-top: 250px !important;
    }
}

/* ---------------------------------------------
*   padding-bottom
--------------------------------------------- */
.pdb-pc--0 {
    padding-bottom: 0 !important;
}

.pdb-pc--5 {
    padding-bottom: 5px !important;
}

.pdb-pc--10 {
    padding-bottom: 10px !important;
}

.pdb-pc--15 {
    padding-bottom: 15px !important;
}

.pdb-pc--20 {
    padding-bottom: 20px !important;
}

.pdb-pc--25 {
    padding-bottom: 25px !important;
}

.pdb-pc--30 {
    padding-bottom: 30px !important;
}

.pdb-pc--35 {
    padding-bottom: 35px !important;
}

.pdb-pc--40 {
    padding-bottom: 40px !important;
}

.pdb-pc--45 {
    padding-bottom: 45px !important;
}

.pdb-pc--50 {
    padding-bottom: 50px !important;
}

.pdb-pc--55 {
    padding-bottom: 55px !important;
}

.pdb-pc--60 {
    padding-bottom: 60px !important;
}

.pdb-pc--65 {
    padding-bottom: 65px !important;
}

.pdb-pc--70 {
    padding-bottom: 70px !important;
}

.pdb-pc--75 {
    padding-bottom: 75px !important;
}

.pdb-pc--80 {
    padding-bottom: 80px !important;
}

.pdb-pc--85 {
    padding-bottom: 85px !important;
}

.pdb-pc--90 {
    padding-bottom: 90px !important;
}

.pdb-pc--95 {
    padding-bottom: 95px !important;
}

.pdb-pc--100 {
    padding-bottom: 100px !important;
}

.pdb-pc--105 {
    padding-bottom: 105px !important;
}

.pdb-pc--110 {
    padding-bottom: 110px !important;
}

.pdb-pc--115 {
    padding-bottom: 115px !important;
}

.pdb-pc--120 {
    padding-bottom: 120px !important;
}

.pdb-pc--125 {
    padding-bottom: 125px !important;
}

.pdb-pc--130 {
    padding-bottom: 130px !important;
}

.pdb-pc--135 {
    padding-bottom: 135px !important;
}

.pdb-pc--140 {
    padding-bottom: 140px !important;
}

.pdb-pc--145 {
    padding-bottom: 145px !important;
}

.pdb-pc--150 {
    padding-bottom: 150px !important;
}

.pdb-pc--155 {
    padding-bottom: 155px !important;
}

.pdb-pc--160 {
    padding-bottom: 160px !important;
}

.pdb-pc--165 {
    padding-bottom: 165px !important;
}

.pdb-pc--170 {
    padding-bottom: 170px !important;
}

.pdb-pc--175 {
    padding-bottom: 175px !important;
}

.pdb-pc--180 {
    padding-bottom: 180px !important;
}

.pdb-pc--185 {
    padding-bottom: 185px !important;
}

.pdb-pc--190 {
    padding-bottom: 190px !important;
}

.pdb-pc--195 {
    padding-bottom: 195px !important;
}

.pdb-pc--200 {
    padding-bottom: 200px !important;
}

.pdb-pc--205 {
    padding-bottom: 205px !important;
}

.pdb-pc--210 {
    padding-bottom: 210px !important;
}

.pdb-pc--215 {
    padding-bottom: 215px !important;
}

.pdb-pc--220 {
    padding-bottom: 220px !important;
}

.pdb-pc--225 {
    padding-bottom: 225px !important;
}

.pdb-pc--230 {
    padding-bottom: 230px !important;
}

.pdb-pc--235 {
    padding-bottom: 235px !important;
}

.pdb-pc--240 {
    padding-bottom: 240px !important;
}

.pdb-pc--245 {
    padding-bottom: 245px !important;
}

.pdb-pc--250 {
    padding-bottom: 250px !important;
}

@media screen and (max-width: 750px) {
    .pdb-sp--0 {
        padding-bottom: 0 !important;
    }
    .pdb-sp--5 {
        padding-bottom: 5px !important;
    }
    .pdb-sp--10 {
        padding-bottom: 10px !important;
    }
    .pdb-sp--15 {
        padding-bottom: 15px !important;
    }
    .pdb-sp--20 {
        padding-bottom: 20px !important;
    }
    .pdb-sp--25 {
        padding-bottom: 25px !important;
    }
    .pdb-sp--30 {
        padding-bottom: 30px !important;
    }
    .pdb-sp--35 {
        padding-bottom: 35px !important;
    }
    .pdb-sp--40 {
        padding-bottom: 40px !important;
    }
    .pdb-sp--45 {
        padding-bottom: 45px !important;
    }
    .pdb-sp--50 {
        padding-bottom: 50px !important;
    }
    .pdb-sp--55 {
        padding-bottom: 55px !important;
    }
    .pdb-sp--60 {
        padding-bottom: 60px !important;
    }
    .pdb-sp--65 {
        padding-bottom: 65px !important;
    }
    .pdb-sp--70 {
        padding-bottom: 70px !important;
    }
    .pdb-sp--75 {
        padding-bottom: 75px !important;
    }
    .pdb-sp--80 {
        padding-bottom: 80px !important;
    }
    .pdb-sp--85 {
        padding-bottom: 85px !important;
    }
    .pdb-sp--90 {
        padding-bottom: 90px !important;
    }
    .pdb-sp--95 {
        padding-bottom: 95px !important;
    }
    .pdb-sp--100 {
        padding-bottom: 100px !important;
    }
    .pdb-sp--105 {
        padding-bottom: 105px !important;
    }
    .pdb-sp--110 {
        padding-bottom: 110px !important;
    }
    .pdb-sp--115 {
        padding-bottom: 115px !important;
    }
    .pdb-sp--120 {
        padding-bottom: 120px !important;
    }
    .pdb-sp--125 {
        padding-bottom: 125px !important;
    }
    .pdb-sp--130 {
        padding-bottom: 130px !important;
    }
    .pdb-sp--135 {
        padding-bottom: 135px !important;
    }
    .pdb-sp--140 {
        padding-bottom: 140px !important;
    }
    .pdb-sp--145 {
        padding-bottom: 145px !important;
    }
    .pdb-sp--150 {
        padding-bottom: 150px !important;
    }
    .pdb-sp--155 {
        padding-bottom: 155px !important;
    }
    .pdb-sp--160 {
        padding-bottom: 160px !important;
    }
    .pdb-sp--165 {
        padding-bottom: 165px !important;
    }
    .pdb-sp--170 {
        padding-bottom: 170px !important;
    }
    .pdb-sp--175 {
        padding-bottom: 175px !important;
    }
    .pdb-sp--180 {
        padding-bottom: 180px !important;
    }
    .pdb-sp--185 {
        padding-bottom: 185px !important;
    }
    .pdb-sp--190 {
        padding-bottom: 190px !important;
    }
    .pdb-sp--195 {
        padding-bottom: 195px !important;
    }
    .pdb-sp--200 {
        padding-bottom: 200px !important;
    }
    .pdb-sp--205 {
        padding-bottom: 205px !important;
    }
    .pdb-sp--210 {
        padding-bottom: 210px !important;
    }
    .pdb-sp--215 {
        padding-bottom: 215px !important;
    }
    .pdb-sp--220 {
        padding-bottom: 220px !important;
    }
    .pdb-sp--225 {
        padding-bottom: 225px !important;
    }
    .pdb-sp--230 {
        padding-bottom: 230px !important;
    }
    .pdb-sp--235 {
        padding-bottom: 235px !important;
    }
    .pdb-sp--240 {
        padding-bottom: 240px !important;
    }
    .pdb-sp--245 {
        padding-bottom: 245px !important;
    }
    .pdb-sp--250 {
        padding-bottom: 250px !important;
    }
}

@media screen and (min-width: 751px) {
    .pc-hide {
        display: none !important;
    }
}

@media screen and (min-width: 751px) and (max-width: 899px) {
    .tb-hide {
        display: none !important;
    }
}

@media screen and (max-width: 750px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   iframe-wrap
--------------------------------------------- */
@media screen and (min-width: 751px) {
    .iframe-wrap {
        position: relative;
        width: 100%;
        padding-top: 532px;
    }
    .iframe-wrap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .iframe-wrap--footer {
        padding-top: 300px;
        max-width: 343px;
        margin-left: auto;
    }
    .iframe-wrap--footer-en {
        max-width: 352px;
        padding-top: 245px;
    }
}

@media screen and (max-width: 750px) {
    .iframe-wrap {
      position: relative;
      width: 100%;
      padding-top: 320px;
  }
  .iframe-wrap iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
  }
  .iframe-wrap--en {
    padding-top: calc((100 / 750) * 1000vw);
  }
}
/* ---------------------------------------------
*   c-section-contents
--------------------------------------------- */
.c-section-contents {
    margin-top: 70px;
}
.c-section-contents__head {
    margin-bottom: 10px;
}
@media screen and (max-width: 750px) {
    .c-section-contents__head {
        margin-bottom: calc((100 / 826) * 40vw);
    }
}
@media screen and (max-width: 750px) {
    .c-section-contents__body {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
    }
}
.c-section-contents--frist {
    margin-top: 68px;
}

.c-section-contents__body-inner {
    display: flex;
    flex-direction: row-reverse;
}
@media screen and (max-width: 750px) {
    .c-section-contents__body-inner {
        display: block;
    }
}

.c-section-contents__lead {
    font-size: 1.8571428571rem;
    font-weight: 600;
    margin-bottom: 5px;
}
@media screen and (max-width: 750px) {
    .c-section-contents__lead {
        font-size: calc((100 / 826) * 48vw);
        text-align: center;
    }
}

.c-section-contents__lead--en-l {
    font-family: 'Roboto';
    font-size: 2.4285714286rem;
    font-weight: bold;
}
@media screen and (max-width: 750px) {
    .c-section-contents__lead--en-l {
        font-size: calc((100 / 826) * 60vw);
    }
}

.c-section-contents__lead--en-s {
    display: inline-block;
    font-family: 'Roboto';
    font-size: 1.4285714286rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    vertical-align: text-top;
    margin: 0 8px;
}
.windows .c-section-contents__lead--en-s {
    letter-spacing: 0.07em;
}
@media screen and (max-width: 750px) {
    .c-section-contents__lead--en-s {
        font-size: calc((100 / 826) * 40vw);
    }
}

.c-section-contents__ttl {
    text-align: left;
    font-size: 1.4286rem;
    font-weight: bold;
    color: #fff;
    background-color: #333333;
    padding: 17px 16px 17px 16px;
    letter-spacing: 0.02em;
}

@media screen and (max-width: 750px) {
    .c-section-contents__ttl {
        text-align: center;
        font-size: calc((100 / 826) * 40vw);
    }
}

.c-section-contents__txt {
    margin-top: 30px;
    margin-right: 30px;
    margin-bottom: 36px;
    text-align: justify;
    word-break: break-all;
    font-size: 1.14286rem;
    line-height: 2;
}
@media screen and (max-width: 750px) {
    .c-section-contents__txt {
        margin-top: 0;
        margin-right: 0;
        margin-bottom: calc((100 / 826) * 70vw);
        font-size: calc((100 / 826) * 32vw);
        letter-spacing: 0.05em;
    }
}

.c-section-contents__txt:first-of-type {
    margin-top: 0;
}
.contents--philosophy .c-section-contents__ttl {
    font-family: 'Roboto';
}
.c-section-contents__img {
    margin-top: 0;
    flex-shrink: 0;
    margin-top: 9px;
}
@media screen and (max-width: 750px) {
    .c-section-contents__img {
        margin: 0 auto calc((100 / 826) * 55vw);
    }
}

.c-section-contents__img--sustainability {
    width: 80px;
}
@media screen and (max-width: 750px) {
    .c-section-contents__img--sustainability {
        width: 80px;
        width: calc((100 / 826) * 180vw);
    }
}
.c-section-contents__author {
    text-align: right;
}
.contents--philosophy .c-section-contents__author {
    font-family: 'Roboto';
}
@media screen and (min-width: 751px) {
    .c-section-contents__author {
        font-size: 1.071rem;
        margin-top: 15px;
    }
}
@media screen and (max-width: 750px) {
    .c-section-contents__author {
        font-size: 1.14286rem;
        margin-top: 20px;
    }
}
/* ---------------------------------------------
*   c-contact-fixed
--------------------------------------------- */
.c-contact-fixed {
    position: fixed;
    width: 50px;
    right: 0;
    top: 119px;
    background-color: #333333;
    z-index: 100000
}
@media screen and (max-width: 1070px) {
    .c-contact-fixed {
        animation:elm 1s forwards;
    }
}

.c-contact-fixed:hover {
    background: linear-gradient(to bottom, rgba(27,80,157,1) 44%,rgba(16,47,91,1) 96%);
}

.c-contact-fixed__head {
    width: 23px;
    margin: 13px auto 0;
}
.c-contact-fixed__body {
    text-align: center;
    margin-top: 9px;
    margin-bottom: 17px;
}
.c-contact-fixed__txt {
    display: block;
    font-size: 1.143rem;
    font-weight: bold;
    line-height: 1.1;
    color: #fff;
}
@keyframes elm {
    to {
        transform:translateY(300px);
    }
}
/* ---------------------------------------------
*   c-section-ir
--------------------------------------------- */
.c-section-ir--center {
    margin-bottom: 80px;
}
.c-section-ir__body {
    max-width: 960px;
    margin: 0 auto;
    padding-right: 10px;
    padding-left: 10px;
}
@media screen and (max-width: 750px) {
    .c-section-ir__body {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
    }
}

.c-section-ir__body--center {
    margin: 23px auto 0;
}

.c-section-ir__link {
    position: relative;
    display: inline-block;
    font-size: 1.14286rem;
    margin-top: 23px;
    margin-left: 6px;
    color: #1a45b1;
    line-height: 1.1;
    border-bottom: 1px solid #1a45b1;
}
@media screen and (max-width: 750px) {
    .c-section-ir__link {
        font-size: 3vw;
        margin-top: 20px;
        margin-left: 4px;
    }
}
.c-section-ir__link:after {
    position: absolute;
    content: "";
    width: 23px;
    height: 24px;
    top: -2px;
    right: -29px;
    background: url(../img/common/icon_pdf3.png) 0 0 no-repeat;
    background-size: 100% auto;
}
@media screen and (max-width: 750px) {
    .c-section-ir__link:after {
        top: -10.9%;
        width: 3.5vw;
        height: 4vw;
        right: -7.7%;
    }
}
@media screen and (min-width: 751px) {
    .c-section-ir__link:hover {
        border: none;
    }
}

.c-section-ir .mod-btn-wrap {
    margin-bottom: 115px;
}
@media screen and (max-width: 750px) {
    .c-section-ir .mod-btn-wrap {
        margin-bottom: 12%;
    }
}

.c-section-ir__txt {
    font-size: 26px;
    font-weight: bold;
    font-family: 'Roboto';
    letter-spacing: 0.05em;
    margin-bottom: 10px;
}
@media screen and (max-width: 750px) {
    .c-section-ir__txt {
        line-height: 1.2;
    }
}
/* ---------------------------------------------
*   mod-en-container
--------------------------------------------- */
.mod-en-container {
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}
@media screen and (max-width: 750px) {
    .mod-en-container {
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        max-width: 100%;
    }
}
/* ---------------------------------------------
*   mod-list-thema
--------------------------------------------- */
.mod-list-thema {
    display: flex;
}
@media screen and (max-width: 750px) {
    .mod-list-thema {
        display: block;
    }
}

.mod-list-thema__item {
    width: 100%;
    margin: 0 auto;
}

.mod-list-thema__item:not(:last-of-type) {
    margin-right: 4px;
}
@media screen and (max-width: 750px) {
    .mod-list-thema__item:not(:last-of-type) {
        margin-bottom: 5vw;
    }
}
/* ---------------------------------------------
*   c-list-contents
--------------------------------------------- */
.c-list-contents {
    display: flex;
    flex-shrink: 0;
    width: 170px;
    margin-top: 9px;
}
@media screen and (max-width: 750px) {
    .c-list-contents {
        width: calc((100 / 826) * 380vw);
        margin: 0 auto calc((100 / 826) * 55vw);
    }
}
.c-list-contents__img {
    width: 80px;
}
.c-list-contents__item:not(:last-of-type) {
    margin-right: 10px;
}
@media screen and (max-width: 750px) {
    .c-list-contents__img {
        width: calc((100 / 826) * 180vw);
    }
    .c-list-contents__item:not(:last-of-type) {
        margin-right: calc((100 / 826) * 20vw);
    }
}
/* ---------------------------------------------
*   mod-susta-link
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .mod-susta-link {
        text-align: center;
    }
}
/* ---------------------------------------------
*   c-section-toc
--------------------------------------------- */
.c-section-toc__container {
    background-color: #efefef;
    padding: 30px;
}

@media screen and (max-width: 750px) {
    .c-section-toc__container {
        padding-top: calc((100 / 826) * 65vw);
        padding-right: 4.40098%;
        padding-bottom: calc((100 / 826) * 65vw);
        padding-left: 4.40098%;
        max-width: 100%;
    }
}
/* ---------------------------------------------
*   c-list-toc
--------------------------------------------- */
.c-list-toc {

}
.c-list-toc__item:not(:first-of-type) {
    margin-top: 20px;
}
.c-list-toc__ttl {
    font-size: 1.1428571429rem;
    font-weight: 600;
}
@media screen and (max-width: 750px) {
    .c-list-toc__ttl {
        font-size: calc((100 / 826) *32vw);
    }
}
.c-list-toc__link {
    position: relative;
    font-size: 1.1428571429rem;
    font-weight: 300;
    color: #333333;
    text-decoration: underline;
    text-underline-position: under;
    transition: 0.3s;
}
.c-list-toc__link::before {
    content: "";
    position: absolute;
    background: url(../img/common/icon_arrow_down.svg) 0 0 no-repeat;
    background-size: 100% auto;
    width: 10px;
    height: 6px;
    left: -21px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
    .c-list-toc__link {
        font-size: calc((100 / 826) *32vw);
        transition: none;
    }

    .c-list-toc__link::before {
        content: "";
        position: absolute;
        background: url(../img/common/icon_arrow_down.svg) 0 0 no-repeat;
        background-size: 100% auto;
        width: calc((100 / 826) *18vw);
        height: calc((100 / 826) *11vw);
        left: calc((100 / 826) *-37vw);
        top: 50%;
        transform: translateY(-50%);
    }
}
@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .c-list-toc__link:hover {
        opacity: 0.8;
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   c-list-toc-lv2
--------------------------------------------- */
.c-list-toc-lv2 {
    margin-top: 10px;
    padding-left: 25px;
}
@media screen and (max-width: 750px) {
    .c-list-toc-lv2 {
        margin-top: calc((100 / 826) *10vw);
        padding-left: calc((100 / 826) *50vw);
    }
}

.c-list-toc-lv2__item:not(:first-of-type) {
    margin-top: 10px;
}
@media screen and (max-width: 750px) {
    .c-list-toc-lv2__item:not(:first-of-type) {
        margin-top: calc((100 / 826) * 20vw);
    }
}
/* ---------------------------------------------
*   c-section-csr
--------------------------------------------- */
.c-section-csr {
    margin-top: 80px;
}
@media screen and (max-width: 750px) {
    .c-section-csr {
        margin-top: calc((100 / 826) * 80vw);
    }
    .c-section-csr:not(:first-of-type) {
        margin-top: calc((100 / 826) * 150vw);
    }
}
/* ---------------------------------------------
*   c-ttl-csr
--------------------------------------------- */
.c-ttl-csr {
    background-color: #d4d4d4;
    font-size: 1.1428571429rem;
    display: inline-block;
    font-weight: 600;
    text-align: center;
    padding: 8px 30px;
    margin-bottom: 15px;
}
@media screen and (max-width: 750px) {
    .c-ttl-csr {
        font-size: calc((100 / 826) *32vw);
    }
}

.c-ttl-csr2 {
    font-size: 1.7142857143rem;
    font-weight: bold;
    margin-bottom: 6px;
    line-height: 1.8;
}
@media screen and (max-width: 750px) {
    .c-ttl-csr2 {
        font-size: calc((100 / 826) *48vw);
        margin-bottom: calc((100 / 826) * 15vw);
        line-height: 1.5;
    }
}
/* ---------------------------------------------
*   c-list-csr
--------------------------------------------- */
.c-list-csr {
    display: flex;
    max-width: 656px;
    margin: 0 auto 38px;
}

.c-list-csr--2 {
    max-width: initial;
    width: 100%;
}
@media screen and (max-width: 750px) {
    .c-list-csr--2 {
        display: block;
        margin-bottom: calc((100 / 826) * 120vw);
    }
}

.c-list-csr__item:not(:last-of-type) {
    margin-right: 8px;
}

.c-list-csr__item--2:not(:last-of-type){
    margin-right: 5.4%;
}

@media screen and (max-width: 750px) {
    .c-list-csr__item--2 {
        margin-bottom: calc((100 / 826) * 50vw);
    }
    .c-list-csr__item--2:not(:last-of-type){
        margin-right: 0;
    }
}

/* ---------------------------------------------
*   c-btn-csr
--------------------------------------------- */
.c-btn-csr {
    max-width: 460px;
    margin: 0 auto;
    text-align: center;
    background-color: #333;

    box-sizing: border-box;
    transition: opacity 0.3s;
}
@media screen and (max-width: 750px) {
    .c-btn-csr {
        max-width: 310px;
        width: 100%;
        transition: opacity 0.3s;
    }
}
.c-btn-csr--2 {
    display: block;
    width: 100%;
    padding-right: 30px;
    padding-left: 30px;
    margin-top: 20px;
}
@media screen and (max-width: 750px) {
    .c-btn-csr--2 {
        padding-right: calc((100 / 826) * 30vw);
        padding-left: calc((100 / 826) * 30vw);
        margin-top: calc((100 / 826) * 60vw);
    }
    .c-btn-csr--2-top {
        padding-right: 33px;
        padding-left: 15px;
    }
}

.c-btn-csr__link {
    position: relative;
    display: inline-block;
    padding: 20px 0 20px 0px;
    margin-right: 40px;
    font-size: 1rem;
    color: #fff;
    transition: opacity 0.3s;
}
@media screen and (max-width: 750px) {
    .c-btn-csr__link {
        padding: 19px 0;
        margin-right: calc((100 / 826) * 40vw);
        font-size: 1.1rem;
        color: #fff;
    }
}

@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .c-btn-csr__link:hover {
        text-decoration: underline;
    }
    .c-btn-csr--2:hover .c-btn-csr__link {
        text-decoration: underline;
    }
}
.c-btn-csr__link::after {
    position: absolute;
    content: "";
    width: 24px;
    height: 24px;
    right: -38px;
    top: 50%;
    background: url(../img/common/icon_circle-arrow_right_white.svg) 0 0 no-repeat;
    background-size: 100% auto;
    transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
    .c-btn-csr__link::after {

    }
}

/* ---------------------------------------------
*   c-cassette-csr
--------------------------------------------- */
.c-cassette-csr {
    margin-bottom: 80px;
}
@media screen and (max-width: 750px) {
    .c-cassette-csr {
        margin-bottom: calc((100 / 826) * 150vw);
    }
}

.c-cassette-csr__img {
    max-width: 656px;
    margin: 0 auto 40px;
}

@media screen and (max-width: 750px) {
    .c-cassette-csr__img {
        max-width: initial;
        width: 100%;
        margin-bottom: calc((100 / 826) * 60vw);
    }
}

.c-cassette-csr__work {
    font-size: 1.4285714286rem;
    font-weight: bold;
}
/* ---------------------------------------------
*   c-list-csr-work
--------------------------------------------- */
.c-list-csr-work {
    margin-top: 40px;
    margin-bottom: 40px;
    padding-left: 20px;
}
@media screen and (max-width: 750px) {
    .c-list-csr-work {
        padding-left: 0;
        margin-bottom: 30px;
    }
}

.c-list-csr-work__item {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #efefef;
    padding-bottom: 15px;
}
.c-list-csr-work__item:not(:first-of-type) {
    padding-top: 12px;
}
@media screen and (max-width: 750px) {
    .c-list-csr-work__item {
        display: block;
    }
}

.c-list-csr-work__inner {
    width: 180px;
    margin-right: 8px;
    flex-shrink: 0;
}

.c-list-csr-work__num {
    font-weight: bold;
    font-size: 1.428rem;
    font-family: 'Roboto';
}

.c-list-csr-work__ttl {
    font-weight: bold;
    font-size: 1.285rem;
}

.c-list-csr-work__txt {
    font-size: 1.1428571429rem;
}
@media screen and (max-width: 750px) {
    .c-list-csr-work__txt {
        display: inline-block;
        padding-left: 1.9em;
        margin-top: 7px;
    }
}

.c-section-csr-work__ttl {
    font-weight: bold;
    font-size: 1.428rem;
    margin-bottom: 20px;
}
/* ---------------------------------------------
*   c-list-benefit
--------------------------------------------- */
.c-list-benefit {
    margin-bottom: 40px;
    padding-left: 35px;
}

.c-list-benefit__item:not(:last-of-type) {
    margin-bottom: 40px;
}

.c-list-benefit__ttl {
    position: relative;
    font-size: 1.2857142857rem;
    font-weight: bold;
    margin-bottom: 10px;
}
@media screen and (max-width: 750px) {
    .c-list-benefit__ttl {
        margin-bottom: calc((100 / 828) * 5vw);
    }
}
.c-list-benefit__ttl::before {
    position: absolute;
    content: "";
    width: 14px;
    height: 2px;
    background-color: #333333;
    top: 50%;
    left: -23px;
    transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
    .c-list-benefit__ttl::before {
        width: 20px;
        height: 1px;
        left: -33px;
    }
}

.c-list-benefit__txt {
    font-size: 1.1428571429rem;
    line-height: 1.9;
}
/* ---------------------------------------------
*   c-list-history
--------------------------------------------- */
.c-list-history {
    display: flex;
}
@media screen and (max-width: 750px) {
    .c-list-history {
        display: block;
    }
}

.c-list-history__item:last-of-type {
    width: 62%;
    margin-left: 30px;
}
@media screen and (max-width: 750px) {
    .c-list-history__item:last-of-type {
        width: 100%;
        margin-left: 0;
        margin-top: calc((100 / 826) * 60vw);
    }
}

.c-list-history__img {
    width: 280px;
}
@media screen and (max-width: 750px) {
    .c-list-history__img {
        width: calc((100 / 826) * 460vw);
        margin: 0 auto;
    }
}

.c-list-history__card__inner {
    background-color: #efefef;
    box-sizing: border-box;
    padding: 25px 30px;
    border: 1px solid #d4d4d4;
}
@media screen and (max-width: 750px) {
    .c-list-history__card__inner {
        padding: calc((100 / 826) * 50vw) calc((100 / 826) * 30vw) calc((100 / 826) * 30vw);
    }
}

.c-list-history__head {
    padding-bottom: 20px;
    border-bottom: 1px solid #d4d4d4;
}
@media screen and (max-width: 750px) {
    .c-list-history__head {
        text-align: justify;
        padding-bottom: calc((100 / 826) * 20vw);
    }
}

.c-list-history__version:not(:last-of-type) {
    margin-bottom: 10px;
}
@media screen and (max-width: 750px) {
    .c-list-history__version:not(:last-of-type) {
        margin-bottom: calc((100 / 826) * 10vw);
    }
}

.c-list-history__name {
    display: inline-block;
    font-size: 1.1428571429rem;
    font-weight: 600;
    margin-right: 13px;
}
@media screen and (max-width: 750px) {
    .c-list-history__name {
        font-size: calc((100 / 826) * 32vw);
        margin-right: calc((100 / 826) * 57vw);
    }
}

.c-list-history__name--2 {
    margin-right: 28px;
}
@media screen and (max-width: 750px) {
    .c-list-history__name--2 {
        margin-right: calc((100 / 826) * 88vw);
    }
}

/*@media screen and (max-width: 750px) {
    .androidphone .c-list-history__name {
        margin-right: calc((100 / 826) * 68vw);
    }
}*/

.c-list-history__price {
    display: inline-block;
    font-size: 1.1428571429rem;
    font-weight: 600;
    margin-right: 4px;
}
@media screen and (max-width: 750px) {
    .c-list-history__price {
        font-size: calc((100 / 826) * 32vw);
        margin-right: 0;
    }
}

.c-list-history__txt {
    display: inline-block;
    font-size: 1rem;
    font-weight: 300;
}
@media screen and (max-width: 750px) {
    .c-list-history__txt {
        font-size: calc((100 / 826) * 32vw);
        margin-left: calc((100 / 375) * 8vw);
    }
    /*.android .c-list-history__txt--bottom {
        margin-left: calc((100 / 375) * 10vw);
    }*/
}

.c-list-history__body {
    padding-top: 20px;
}

.c-list-history__label {
    display: block;
    font-size: 1rem;
    margin-bottom: 5px;
}
@media screen and (max-width: 750px) {
    .c-list-history__label {
        font-size: calc((100 / 826) * 32vw);
    }
}
/* ---------------------------------------------
*   c-list-repot
--------------------------------------------- */
.c-list-report__head {
    background-color: #333;
    padding: 8px 16px;
    margin-bottom: 20px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
}
/* ---------------------------------------------
*   c-section-site
--------------------------------------------- */
.c-section-site {
    margin-top: 80px;
}
@media screen and (max-width: 750px) {
    .c-section-site {
        margin-top: 60px;
    }
}
.c-section-site__ttl {
    font-size: 1.4285714286rem;
    font-weight: bold;
}
@media screen and (max-width: 750px) {
    .c-section-site__ttl {
        font-size: calc((100 / 826) * 40vw);
    }
}
/* ---------------------------------------------
*c-list-site
--------------------------------------------- */
.c-list-site {
    display: flex;
    background-color: #d4d4d4;
    -ms-align-items: center;
    align-items: center;
    padding: 20px;
    padding-right: 3px;
    margin-top: 10px;
}
@media screen and (max-width: 750px) {
    .c-list-site {
        display: block;
        padding: calc((100 / 826) * 30vw);
    }
}

.c-list-site--bg {
    background-color: #dfd4b8;
    margin-top: 10px;
}

.c-list-site__item:first-of-type {
    flex-shrink: 0;
    margin-right: 90px;
}
@media screen and (max-width: 750px) {
    .c-list-site__item:first-of-type {
        margin-right: 0;
        margin-bottom: calc((100 / 826) * 30vw);
        text-align: center;
    }
}

.c-list-site__txt {
    font-size: 1.1428571429rem;
    font-weight: 600;
}
@media screen and (max-width: 750px) {
    .c-list-site__txt {
        font-size: calc((100 / 826) * 40vw);
        letter-spacing: 0.07em;
    }
}


/* ---------------------------------------------
*   c-list-site-lv2
--------------------------------------------- */
.c-list-site-lv2 {
    max-width: 620px;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
@media screen and (max-width: 750px) {
    .c-list-site-lv2 {
        gap: 1vw;
    }
}

.c-list-site-lv2__item {
    width: 140px;
    background-color: #fff;
}
@media screen and (max-width: 750px) {
    .c-list-site-lv2__item {
        width: 32.5%;
    }
}

.c-list-site-lv2__link {
    transition: opacity 0.3s;
}

@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .c-list-site-lv2__link:hover {
        opacity: 0.8;
    }
}

/* ---------------------------------------------
*   c-section-date
--------------------------------------------- */
.c-section-date {
    padding-right: 10px;
    padding-left: 10px;
}
.c-section-date__txt {
    font-weight: bold;
}
/* ---------------------------------------------
*   プレスリリースリンクstart
--------------------------------------------- */
.top-press__link {
    display: block;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-press__link {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
    .top-press__link:hover {
        opacity: 0.8;
    }
}

@media screen and (max-width: 750px) {
    .top-press__link {
        padding-top: 18px;
        padding-bottom: 18px;

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

/* nolink */
.top-press__nolink {
    display: block;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-press__nolink {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
}

@media screen and (max-width: 750px) {
    .top-press__nolink {
        padding-top: 18px;
        padding-bottom: 18px;

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

.top-press__nolink a {
    text-decoration: underline;
    color: #1b519e;
}

.top-press__nolink a:hover {
    text-decoration: none;
}

.top-press__nolink a:after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-right: 2px;
    margin-left: 4px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

.top-press__category-wrap {
    display: block;
}

.top-press__category {
    display: inline-block;
    padding: 4px 20px;
    margin-right: 18px;
    margin-bottom: 12px;
    min-width: auto;
    border: 1px solid #333;
    text-align: left;
    font-size: 1rem;
}

@media screen and (max-width: 750px) {
    .top-press__category {
        font-size: 1rem;
    }
}

.top-press__date {
    padding-top: 2px;
    color: #999;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-press__date {
        width: auto;
        font-size: 1.14286rem;
    }
}

.top-press__txt {
    padding-top: 2px;
    width: 100%;
    font-size: 1.14286rem;
}

@media screen and (max-width: 750px) {
    .top-press__txt {
        margin-top: 10px;
        font-size: 1.14286rem;
        line-height: 1.7;
    }
}

.top-press__link:hover .top-press__txt {
    text-decoration: underline;
}

/* nolink */
.top-info__nolink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 22px;
    padding-bottom: 22px;
}

@media screen and (min-width: 751px) {
    .top-info__nolink {
        -webkit-transition: opacity 300ms;
        transition: opacity 300ms;
    }
}

@media screen and (max-width: 750px) {
    .top-info__nolink {
        padding-top: 18px;
        padding-bottom: 18px;

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

.top-info__nolink a {
    text-decoration: underline;
    color: #1b519e;
}

.top-info__nolink a:hover {
    text-decoration: none;
}

.top-info__nolink a:after {
    position: relative;
    top: 3px;
    display: inline-block;
    margin-right: 2px;
    margin-left: 4px;
    width: 15px;
    height: 17px;
    background: url(../img/common/icon_external-link.svg) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
}

/* archive */
.c-section-archive {
    margin-top: 100px;
}
.c-section-archive .common-lead__ttl {
    font-size: 20px;
}
.c-list-archive__item {
    background-color: #e0e0e0;
    padding: 15px 20px;
}
.c-list-archive__item:nth-child(2n) {
    background-color: #efefef;
}
.c-list-archive__item a {
    display: block;
    margin-bottom: 10px;
    color: #333;
    text-decoration: none;
}
.c-list-archive__item a:hover {
    text-decoration: underline;
}

/* カスタマーハラスメント対応ポリシー */
.gnav-lv2__icon-cushara {
    width: 44px;
    height: 45px;
    left: 18px;
}
.sidebar-nav__lv1-link[href*='customer_harassment'] .sidebar-nav__lv1-ttl {
    font-size: .9rem;
}
.cushara-contents {
    font-size: 16px;
}
.cushara-contents a {
    text-decoration: underline;
}
.cushara-contents a:hover {
    text-decoration: none;
}
.cushara-contents h2 {
    font-size: 20px;
    font-weight: bold;
}
.cushara-contents * + h2 {
    margin-top: 3em;
}
.cushara-contents h3 {    
    font-weight: bold;
}
.cushara-contents * + h3 {
    margin-top: 1.5em;
}
.cushara-contents * + p {
    margin-top: 1.5em;
}
.cushara-contents * + ul {
    margin-top: 1.5em;
}
.cushara-contents ul li {
    text-indent: -1.3em;
    margin-left: 1.3em;
}
.cushara-contents .history {    
    margin-top: 6em;
    font-weight: bold;
}

/* ほんらぼバナー */
.top-banner {
    margin-top: 52px;
    margin-right: auto;
    margin-bottom: 40px;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 960px;
}
.top-note a {
    display: block;
    background: url(../img/top/img_bnr-honlab.jpg);
    background-size: cover;
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 30.2%;
}
@media screen and (max-width: 750px) {
    .top-banner {
        max-width: 100%;
        padding-right: 4.40098%;
        padding-left: 4.40098%;
        margin-top: 8%;
        margin-bottom: 8%;
    }
    .top-note a {
        background-image: url(../img/top/img_bnr-honlab_sp.jpg);
        padding-top: 49.8%;
    }
}

/* 20260413 業績ハイライト */
.mod-tab-block__selector-item--3col {
    width: calc(33.3% - 8px);;
}
.mod-table--data {
    margin-bottom: 40px;
}
.mod-table-title {
    margin-bottom: 16px;
    font-size: 1.57rem;
    font-weight: bold;
}
.mod-table__wrap {
    overflow-x: scroll;
}
.mod-table--data__tbl {
    width: 100%;
    border-top: 1px solid #d2d2d2;
    table-layout: fixed;
}
.mod-table--data__tbl th,
.mod-table--data__tbl td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 116px;
    padding: 18px 12px;
    border-bottom: 1px solid #d2d2d2;
    vertical-align: middle;
    font-size: 1.14286rem;
}
.mod-table--data__tbl th {
    background-color: #efefef;
}
.mod-table--data__tbl td {
    border-left: 1px solid #d2d2d2;
    text-align: right;
}
.mod-table--data__tbl .col_th {
    width: 180px;
}
.mod-table--data__tbl .col_th_en {
    width: 180px;
}
.mod-table--data__tbl .col_th_esg {
    width: 240px;
}
.mod-table--data__tbl .col_unit {
    width: 90px;
}
.mod-table--data__tbl thead th {
    border-left: 1px solid #d2d2d2;
    text-align: center;
}
.mod-table--data__tbl thead th:first-child {
    border-left: 0;
}
@media screen and (max-width: 750px) {
    .mod-table--data__tbl th,
    .mod-table--data__tbl td {
        width: 68px;
        padding: 10px 8px;
        font-size: 12px;
    }
    .mod-table--data__tbl .col_th {
        width: 70px;
    }
    .mod-table--data__tbl .col_th_en {
        width: 100px;
    }
    .mod-table--data__tbl .col_th_esg {
        width: 110px;
    }
    .mod-table--data__tbl .col_unit {
        width: 60px;
    }
    .mod-table--data__tbl th br,
    .mod-table--data__tbl td br {
        display: none;
    }
    .mod-table--data__tbl td:nth-child(2) {
        font-size: 11px;
    }
}