@charset "UTF-8";

.is-pc {
    display: block !important
}

@media (max-width:640px) {
    .is-pc {
        display: none !important
    }
}

.is-sp {
    display: none !important
}

@media (max-width:640px) {
    .is-sp {
        display: block !important
    }
}

.mt0 {
    margin-top: 0 !important
}

.mb0 {
    margin-bottom: 0 !important
}

.ml0 {
    margin-left: 0 !important
}

.mr0 {
    margin-right: 0 !important
}

.mtb0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important
}

.mlr0 {
    margin-left: 0 !important;
    margin-right: 0 !important
}

.pt0 {
    padding-top: 0 !important
}

.pb0 {
    padding-bottom: 0 !important
}

.pl0 {
    padding-left: 0 !important
}

.pr0 {
    padding-right: 0 !important
}

.ptb0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important
}

.plr0 {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.mt5 {
    margin-top: 5px !important
}

.mb5 {
    margin-bottom: 5px !important
}

.ml5 {
    margin-left: 5px !important
}

.mr5 {
    margin-right: 5px !important
}

.mtb5 {
    margin-top: 5px !important;
    margin-bottom: 5px !important
}

.mlr5 {
    margin-left: 5px !important;
    margin-right: 5px !important
}

.pt5 {
    padding-top: 5px !important
}

.pb5 {
    padding-bottom: 5px !important
}

.pl5 {
    padding-left: 5px !important
}

.pr5 {
    padding-right: 5px !important
}

.ptb5 {
    padding-top: 5px !important;
    padding-bottom: 5px !important
}

.plr5 {
    padding-left: 5px !important;
    padding-right: 5px !important
}

.mt10 {
    margin-top: 10px !important
}

.mb10 {
    margin-bottom: 10px !important
}

.ml10 {
    margin-left: 10px !important
}

.mr10 {
    margin-right: 10px !important
}

.mtb10 {
    margin-top: 10px !important;
    margin-bottom: 10px !important
}

.mlr10 {
    margin-left: 10px !important;
    margin-right: 10px !important
}

.pt10 {
    padding-top: 10px !important
}

.pb10 {
    padding-bottom: 10px !important
}

.pl10 {
    padding-left: 10px !important
}

.pr10 {
    padding-right: 10px !important
}

.ptb10 {
    padding-top: 10px !important;
    padding-bottom: 10px !important
}

.plr10 {
    padding-left: 10px !important;
    padding-right: 10px !important
}

.mt15 {
    margin-top: 15px !important
}

.mb15 {
    margin-bottom: 15px !important
}

.ml15 {
    margin-left: 15px !important
}

.mr15 {
    margin-right: 15px !important
}

.mtb15 {
    margin-top: 15px !important;
    margin-bottom: 15px !important
}

.mlr15 {
    margin-left: 15px !important;
    margin-right: 15px !important
}

.pt15 {
    padding-top: 15px !important
}

.pb15 {
    padding-bottom: 15px !important
}

.pl15 {
    padding-left: 15px !important
}

.pr15 {
    padding-right: 15px !important
}

.ptb15 {
    padding-top: 15px !important;
    padding-bottom: 15px !important
}

.plr15 {
    padding-left: 15px !important;
    padding-right: 15px !important
}

.mt20 {
    margin-top: 20px !important
}

.mb20 {
    margin-bottom: 20px !important
}

.ml20 {
    margin-left: 20px !important
}

.mr20 {
    margin-right: 20px !important
}

.mtb20 {
    margin-top: 20px !important;
    margin-bottom: 20px !important
}

.mlr20 {
    margin-left: 20px !important;
    margin-right: 20px !important
}

.pt20 {
    padding-top: 20px !important
}

.pb20 {
    padding-bottom: 20px !important
}

.pl20 {
    padding-left: 20px !important
}

.pr20 {
    padding-right: 20px !important
}

.ptb20 {
    padding-top: 20px !important;
    padding-bottom: 20px !important
}

.plr20 {
    padding-left: 20px !important;
    padding-right: 20px !important
}

.mt25 {
    margin-top: 25px !important
}

.mb25 {
    margin-bottom: 25px !important
}

.ml25 {
    margin-left: 25px !important
}

.mr25 {
    margin-right: 25px !important
}

.mtb25 {
    margin-top: 25px !important;
    margin-bottom: 25px !important
}

.mlr25 {
    margin-left: 25px !important;
    margin-right: 25px !important
}

.pt25 {
    padding-top: 25px !important
}

.pb25 {
    padding-bottom: 25px !important
}

.pl25 {
    padding-left: 25px !important
}

.pr25 {
    padding-right: 25px !important
}

.ptb25 {
    padding-top: 25px !important;
    padding-bottom: 25px !important
}

.plr25 {
    padding-left: 25px !important;
    padding-right: 25px !important
}

.mt30 {
    margin-top: 30px !important
}

.mb30 {
    margin-bottom: 30px !important
}

.ml30 {
    margin-left: 30px !important
}

.mr30 {
    margin-right: 30px !important
}

.mtb30 {
    margin-top: 30px !important;
    margin-bottom: 30px !important
}

.mlr30 {
    margin-left: 30px !important;
    margin-right: 30px !important
}

.pt30 {
    padding-top: 30px !important
}

.pb30 {
    padding-bottom: 30px !important
}

.pl30 {
    padding-left: 30px !important
}

.pr30 {
    padding-right: 30px !important
}

.ptb30 {
    padding-top: 30px !important;
    padding-bottom: 30px !important
}

.plr30 {
    padding-left: 30px !important;
    padding-right: 30px !important
}

.mt35 {
    margin-top: 35px !important
}

.mb35 {
    margin-bottom: 35px !important
}

.ml35 {
    margin-left: 35px !important
}

.mr35 {
    margin-right: 35px !important
}

.mtb35 {
    margin-top: 35px !important;
    margin-bottom: 35px !important
}

.mlr35 {
    margin-left: 35px !important;
    margin-right: 35px !important
}

.pt35 {
    padding-top: 35px !important
}

.pb35 {
    padding-bottom: 35px !important
}

.pl35 {
    padding-left: 35px !important
}

.pr35 {
    padding-right: 35px !important
}

.ptb35 {
    padding-top: 35px !important;
    padding-bottom: 35px !important
}

.plr35 {
    padding-left: 35px !important;
    padding-right: 35px !important
}

.mt40 {
    margin-top: 40px !important
}

.mb40 {
    margin-bottom: 40px !important
}

.ml40 {
    margin-left: 40px !important
}

.mr40 {
    margin-right: 40px !important
}

.mtb40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important
}

.mlr40 {
    margin-left: 40px !important;
    margin-right: 40px !important
}

.pt40 {
    padding-top: 40px !important
}

.pb40 {
    padding-bottom: 40px !important
}

.pl40 {
    padding-left: 40px !important
}

.pr40 {
    padding-right: 40px !important
}

.ptb40 {
    padding-top: 40px !important;
    padding-bottom: 40px !important
}

.plr40 {
    padding-left: 40px !important;
    padding-right: 40px !important
}

.mt45 {
    margin-top: 45px !important
}

.mb45 {
    margin-bottom: 45px !important
}

.ml45 {
    margin-left: 45px !important
}

.mr45 {
    margin-right: 45px !important
}

.mtb45 {
    margin-top: 45px !important;
    margin-bottom: 45px !important
}

.mlr45 {
    margin-left: 45px !important;
    margin-right: 45px !important
}

.pt45 {
    padding-top: 45px !important
}

.pb45 {
    padding-bottom: 45px !important
}

.pl45 {
    padding-left: 45px !important
}

.pr45 {
    padding-right: 45px !important
}

.ptb45 {
    padding-top: 45px !important;
    padding-bottom: 45px !important
}

.plr45 {
    padding-left: 45px !important;
    padding-right: 45px !important
}

.mt50 {
    margin-top: 50px !important
}

.mb50 {
    margin-bottom: 50px !important
}

.ml50 {
    margin-left: 50px !important
}

.mr50 {
    margin-right: 50px !important
}

.mtb50 {
    margin-top: 50px !important;
    margin-bottom: 50px !important
}

.mlr50 {
    margin-left: 50px !important;
    margin-right: 50px !important
}

.pt50 {
    padding-top: 50px !important
}

.pb50 {
    padding-bottom: 50px !important
}

.pl50 {
    padding-left: 50px !important
}

.pr50 {
    padding-right: 50px !important
}

.ptb50 {
    padding-top: 50px !important;
    padding-bottom: 50px !important
}

.plr50 {
    padding-left: 50px !important;
    padding-right: 50px !important
}

.black {
    color: #000
}

.white {
    color: #fff
}

.orange {
    color: #f60
}

.green {
    color: #14813d
}

.yellow-green {
    color: #d5f2ae
}

.light-blue {
    color: #e7bb65
}

.beige {
    color: #f3efe7
}

.bg-light-gray {
    background: #f6f6f6
}

.bg-mid-gray {
    background: #939598
}

.bg-dark-gray {
    background: #333
}

.bg-pale-orange {
    background: rgba(255, 102, 0, .1)
}

.bg-pale-green {
    background: rgba(20, 129, 61, .1)
}

.bg-pale-yellow-green {
    background: rgba(213, 242, 174, .5)
}

.bg-pale-light-blue {
    background: rgba(81, 133, 197, .1)
}

.bg-beige {
    background: #f3efe7
}

.bg-co-summary-numbers {
    background: url(../img/ja/bg-co-summary.png) no-repeat;
    background-size: cover;
    background-position: center center
}

.bg-co-content-base,
.bg-co-performance-main {
    display: flex
}

.bg-co-content-base .flexbox-item:first-child,
.bg-co-performance-main .flexbox-item:first-child {
    flex-basis: 22.5%;
    max-width: 22.5%
}

@media (max-width:768px) {

    .bg-co-content-base .flexbox-item:first-child,
    .bg-co-performance-main .flexbox-item:first-child {
        display: none
    }
}

.bg-co-content-base .flexbox-item:last-child,
.bg-co-performance-main .flexbox-item:last-child {
    flex-basis: 77.5%;
    max-width: 77.5%
}

@media (max-width:768px) {

    .bg-co-content-base .flexbox-item:last-child,
    .bg-co-performance-main .flexbox-item:last-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

.bg-co-performance-main .flexbox-item {
    flex-basis: 100%;
    max-width: 100%
}

.bg-co-performance-main .flexbox-item {
    min-height: 550px
}

@media (max-width:768px) {
    .bg-co-performance-main .flexbox-item {
        min-height: 400px
    }
}

@media (max-width:640px) {
    .bg-co-performance-main .flexbox-item {
        min-height: 350px
    }
}

.bg-co-performance-main .flexbox-item:first-child {
    background: url(../img/ja/bg-co-performance-main01.png) no-repeat right center;
    background-size: cover
}

.bg-co-performance-main .flexbox-item:last-child {
    background: url(../img/ja/bg-co-performance-main02.png) no-repeat left center;
    background-size: cover
}

.bg-co-firmdata-main .flexbox-item {
    flex-basis: 100%;
    max-width: 100%;
    min-height: 300px;
    background: url(../img/ja/bg-co-firmdata-main.png) no-repeat center 40%;
    background-size: cover
}

@media (max-width:768px) {
    .bg-co-firmdata-main .flexbox-item {
        height: 100%;
        min-height: 200px
    }
}

.js-fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

.js-fadeUp {
    -webkit-animation-name: fadeUp;
    animation-name: fadeUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes fadeUp {
    0% {
        opacity: 0;
        transform: translateY(70px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes fadeUp {
    0% {
        opacity: 0;
        transform: translateY(70px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

.js-fadeDown {
    -webkit-animation-name: fadeDown;
    animation-name: fadeDown;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes fadeDown {
    0% {
        opacity: 0;
        transform: translateY(0)
    }

    100% {
        opacity: 1;
        transform: translateY(70px)
    }
}

@keyframes fadeDown {
    0% {
        opacity: 0;
        transform: translateY(0)
    }

    100% {
        opacity: 1;
        transform: translateY(70px)
    }
}

.js-fadeLeft {
    -webkit-animation-name: fadeLeft;
    animation-name: fadeLeft;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes fadeLeft {
    0% {
        opacity: 0;
        transform: translateX(-70px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes fadeLeft {
    0% {
        opacity: 0;
        transform: translateX(-70px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

.js-fadeLeft {
    -webkit-animation-name: fadeRight;
    animation-name: fadeRight;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes fadeRight {
    0% {
        opacity: 0;
        transform: translateX(70px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes fadeRight {
    0% {
        opacity: 0;
        transform: translateX(70px)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

figure {
    margin: 1rem 0
}

section[id^=co-],
section[id^=fi-],
section[id^=sub-] {
    box-sizing: border-box;
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, ヒラギノ角ゴ Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, Arial, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
    font-feature-settings: "palt"
}

@media (max-width:640px) {

    section[id^=co-],
    section[id^=fi-],
    section[id^=sub-] {
        font-family: ヒラギノ角ゴ Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, Arial, ＭＳ Ｐゴシック, MS PGothic, sans-serif
    }
}

section[id^=co-] img,
section[id^=fi-] img,
section[id^=sub-] img {
    max-width: 100%;
    vertical-align: middle;
    height: auto
}

section[id^=co-] img[src$=".svg"],
section[id^=fi-] img[src$=".svg"],
section[id^=sub-] img[src$=".svg"] {
    width: 100%;
    height: auto
}

section[id^=co-] a,
section[id^=fi-] a,
section[id^=sub-] a {
    text-decoration: none
}

section[id^=co-] a:hover,
section[id^=fi-] a:hover,
section[id^=sub-] a:hover {
    text-decoration: none
}

@font-face {
    font-family: icomoon;
    src: url(../fonts/icomoon.eot?745phb);
    src: url(../fonts/icomoon.eot?745phb#iefix) format("embedded-opentype"), url(../fonts/icomoon.ttf?745phb) format("truetype"), url(../fonts/icomoon.woff?745phb) format("woff"), url(../fonts/icomoon.svg?745phb#icomoon) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: block
}

[class*=" icon-"],
[class^=icon-] {
    font-family: icomoon !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-icon-arrow-up:before {
    content: "\e900";
    color: #fff
}

.icon-icon-arrow-left:before {
    content: "\e902";
    color: #fff
}

.icon-icon-arrow-down:before {
    content: "\e903";
    color: #fff
}

.l-article {
    padding: 0;
    margin: 0
}

.l-section {
    padding: 0;
    box-sizing: border-box;
    opacity: 0
}

.l-section.js-fadeIn {
    opacity: 1
}

.l-section.js-fadeUp {
    opacity: 1
}

.l-section:not(.hero-main) {
    padding: 0
}

.l-container {
    padding: 8rem 0;
    margin: 0 auto;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    width: 100%
}

@media (max-width:1440px) {
    .l-container {
        padding: 4rem 1rem
    }
}

@media (max-width:835px) {
    .l-container {
        padding: 5rem 1rem
    }
}

@media (max-width:768px) {
    .l-container {
        padding: 5rem 15px
    }
}

@media (max-width:640px) {
    .l-container {
        padding: 3rem 15px
    }
}

.l-container.is-btn {
    padding: 0
}

.l-container+.l-container {
    margin-top: 0
}

#co-summary .l-container+.l-container {
    margin-top: 0;
    padding: 3rem 15px
}

@media (max-width:640px) {
    #co-summary .l-container+.l-container {
        padding: 1rem 15px
    }
}

.l-position-relative {
    position: relative
}

#co-firmdata-wrap .l-position-absolute,
.l-position-absolute {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#co-firmdata-wrap .l-position-absolute {
    top: 60%;
    transform: translate(-50%, -40%)
}

.marker {
    background: linear-gradient(transparent 40%, #a7c587 40%);
    padding: 0 3rem
}

.marker.bule {
    background: linear-gradient(transparent 40%, rgba(81, 133, 197, .1) 40%)
}

@media (max-width:768px) {
    .marker {
        padding: 0
    }
}

.marker-02 {
    background: linear-gradient(transparent 90%, #083 0);
    padding: 0 3rem
}

.marker-03 {
    background: linear-gradient(transparent 90%, #7ba918 0);
    padding: 0 3rem
}

.marker-04 {
    background: linear-gradient(transparent 90%, #1ba2d7 0);
    padding: 0 3rem
}

.marker-05 {
    /* background: linear-gradient(transparent 90%, #796caf 0); */
    background: linear-gradient(transparent 90%, #A88787 0); /* その他の事業 */
    padding: 0 3rem
}

.marker-06 {
    background: linear-gradient(transparent 90%, #c6000b 0);
    padding: 0 3rem
}

.marker-07 {
    background: linear-gradient(transparent 90%, #b8c9d1 0);
    padding: 0 3rem
}

.co-h1,
.co-h2,
.co-h3,
.co-h4,
.co-h5,
.co-h6,
.fi-h1,
.fi-h2,
.fi-h3,
.fi-h4,
.fi-h5,
.fi-h6 {
    margin: 0 0 1rem 0;
    line-height: 1.25;
    font-feature-settings: "palt"
}

@media (max-width:640px) {

    .co-h1,
    .co-h2,
    .co-h3,
    .co-h4,
    .co-h5,
    .co-h6,
    .fi-h1,
    .fi-h2,
    .fi-h3,
    .fi-h4,
    .fi-h5,
    .fi-h6 {
        font-weight: 400
    }
}

.co-h1,
.fi-h1 {
    font-size: 4.6rem;
    font-weight: 700;
    line-height: 1.5
}

.co-h1 br,
.fi-h1 br {
    display: none
}

@media (max-width:1024px) {

    .co-h1,
    .fi-h1 {
        font-size: 4.6rem
    }
}

@media (max-width:835px) {

    .co-h1,
    .fi-h1 {
        font-size: 4rem
    }
}

@media (max-width:768px) {

    .co-h1,
    .fi-h1 {
        font-size: 3.6rem
    }

    .co-h1 br,
    .fi-h1 br {
        display: block
    }
}

@media (max-width:768px) and (orientation:landscape) {

    .co-h1,
    .fi-h1 {
        font-size: 3.4rem
    }
}

@media (max-width:640px) {

    .co-h1,
    .fi-h1 {
        font-size: 2.6rem;
        line-height: 1.25
    }
}

@media (max-width:640px) and (orientation:landscape) {

    .co-h1,
    .fi-h1 {
        font-size: 2.6rem
    }
}

.co-h2,
.fi-h2 {
    text-align: center;
    font-weight: 700;
    font-size: 4.2rem;
    line-height: 1.5;
    margin-bottom: 5rem
}

@media (max-width:1024px) {

    .co-h2,
    .fi-h2 {
        font-size: 4.2rem;
        margin-bottom: 4rem
    }
}

@media (max-width:835px) {

    .co-h2,
    .fi-h2 {
        font-size: 3.8rem;
        margin-bottom: 3rem
    }
}

@media (max-width:768px) {

    .co-h2,
    .fi-h2 {
        font-size: 3.6rem;
        margin-bottom: 2rem
    }
}

@media (max-width:768px) and (orientation:landscape) {

    .co-h2,
    .fi-h2 {
        font-size: 2.6rem;
        margin-bottom: 2rem
    }
}

@media (max-width:640px) {

    .co-h2,
    .fi-h2 {
        font-size: 2.5rem;
        line-height: 1.25;
        margin-bottom: 2rem
    }
}

.co-h2 br,
.fi-h2 br {
    display: none
}

@media (max-width:640px) {

    .co-h2 br,
    .fi-h2 br {
        display: block
    }
}

.co-h3,
.fi-h3 {
    text-align: center;
    font-size: 3.8rem;
    font-weight: 700;
    line-height: 1.5
}

@media (max-width:1024px) {

    .co-h3,
    .fi-h3 {
        font-size: 3.8rem
    }
}

@media (max-width:835px) {

    .co-h3,
    .fi-h3 {
        font-size: 3.6rem
    }
}

@media (max-width:768px) {

    .co-h3,
    .fi-h3 {
        font-size: 3.2rem
    }
}

@media (max-width:768px) and (orientation:landscape) {

    .co-h3,
    .fi-h3 {
        font-size: 2.6rem
    }
}

@media (max-width:640px) {

    .co-h3,
    .fi-h3 {
        font-size: 2.4rem;
        line-height: 1.25
    }
}

.co-h3 br,
.fi-h3 br {
    display: none
}

@media (max-width:640px) {

    .co-h3 br,
    .fi-h3 br {
        display: block
    }
}

.co-h4,
.fi-h4 {
    font-size: 2.4rem
}

@media (max-width:1024px) {

    .co-h4,
    .fi-h4 {
        font-size: 2.4rem
    }
}

@media (max-width:835px) {

    .co-h4,
    .fi-h4 {
        font-size: 2rem
    }
}

@media (max-width:768px) {

    .co-h4,
    .fi-h4 {
        font-size: 2rem
    }
}

@media (max-width:768px) and (orientation:landscape) {

    .co-h4,
    .fi-h4 {
        font-size: 1.8rem
    }
}

@media (max-width:640px) {

    .co-h4,
    .fi-h4 {
        font-size: 1.8rem
    }
}

.co-h5,
.fi-h5 {
    font-size: 2.6rem
}

@media (max-width:1024px) {

    .co-h5,
    .fi-h5 {
        font-size: 2.6rem
    }
}

@media (max-width:835px) {

    .co-h5,
    .fi-h5 {
        font-size: 2.2rem
    }
}

@media (max-width:768px) {

    .co-h5,
    .fi-h5 {
        font-size: 2rem
    }
}

@media (max-width:768px) and (orientation:landscape) {

    .co-h5,
    .fi-h5 {
        font-size: 1.6rem
    }
}

@media (max-width:640px) {

    .co-h5,
    .fi-h5 {
        font-size: 1.6rem
    }
}

.title-co-summary {
    background: rgba(255, 255, 255, .7);
    border: 2px solid #14813d;
    border-radius: 1rem;
    display: inline-block;
    padding: 1rem 2rem;
    margin: 0 0 2rem 0
}

@media (max-width:640px) {
    .title-co-summary {
        padding: .5rem 2rem;
        font-size: 1.6rem;
        margin: 0 0 1rem 0
    }
}

p {
    font-size: 1.8rem;
    text-align: center;
    line-height: 1.6
}

@media (max-width:768px) {
    p {
        font-size: 1.6rem
    }
}

@media (max-width:768px) and (orientation:landscape) {
    p {
        font-size: 1.4rem
    }
}

@media (max-width:640px) {
    p {
        font-size: 1.4rem;
        text-align: left
    }

    p br {
        display: none
    }
}

.text-notes {
    text-align: left;
    font-size: 1.4rem
}

.btn-wrap,
.co-btn-wrap,
.fi-btn-wrap,
.sub-btn-wrap {
    background: #fff;
    border-radius: 3rem;
    display: inline-block;
    font-size: 2rem;
    font-weight: 700;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .2);
    margin: 1rem;
    line-height: 1
}

@media (max-width:835px) {

    .btn-wrap,
    .co-btn-wrap,
    .fi-btn-wrap,
    .sub-btn-wrap {
        display: block;
        width: 80%;
        margin: 1rem auto;
        font-size: 1.6rem
    }
}

.btn-wrap:hover,
.co-btn-wrap:hover,
.fi-btn-wrap:hover,
.sub-btn-wrap:hover {
    transition: all .5s;
    background: #f60
}

.btn-wrap:hover a,
.co-btn-wrap:hover a,
.fi-btn-wrap:hover a,
.sub-btn-wrap:hover a {
    color: #fff !important
}

.btn-wrap a,
.co-btn-wrap a,
.fi-btn-wrap a,
.sub-btn-wrap a {
    color: #333;
    display: block;
    line-height: 1;
    text-decoration: none;
    text-align: center
}

.btn-wrap a:hover,
.co-btn-wrap a:hover,
.fi-btn-wrap a:hover,
.sub-btn-wrap a:hover {
    color: #fff !important
}

@media (max-width:1024px) {

    .btn-wrap a,
    .co-btn-wrap a,
    .fi-btn-wrap a,
    .sub-btn-wrap a {
        padding: 1.5rem 3rem
    }
}

.co-btn-wrap.btn-backnumber,
.fi-btn-wrap.btn-backnumber {
    background: #333;
    border-radius: 0;
    border: 1px solid #fff
}

@media (max-width:768px) {

    .co-btn-wrap.btn-backnumber,
    .fi-btn-wrap.btn-backnumber {
        width: 80%;
        margin: 1rem
    }
}

@media (max-width:640px) {

    .co-btn-wrap.btn-backnumber,
    .fi-btn-wrap.btn-backnumber {
        width: 80%;
        text-align: center;
        margin: 1rem 1rem 0 1rem
    }
}

.is-arrow-down a:after {
    font-family: icomoon;
    content: "\e903";
    font-size: 3rem;
    color: #fff;
    width: 50px;
    height: 50px;
    background: #14813d;
    border-radius: 50%;
    display: block;
    margin: 0 auto;
    position: absolute;
    bottom: 5%;
    left: 50%;
    line-height: 50px;
    transform: translate(-50%, -50%)
}

.is-arrow-down a:hover::after {
    background: #f60
}

.is-arrow-right a:after {
    font-family: icomoon;
    content: "\e903";
    font-size: 3rem;
    color: #fff;
    width: 50px;
    height: 50px;
    background: #14813d;
    border-radius: 50%;
    display: block;
    margin: 0 auto;
    position: absolute;
    bottom: 5%;
    left: 50%;
    line-height: 50px;
    transform: translate(-50%, -50%) rotate(-90deg)
}

.is-arrow-right a:hover::after {
    background: #f60
}

a span.pdf:after,
span.pdf:after {
    margin-left: 10px;
    display: inline-block;
    width: 24px;
    height: 25px;
    background: url(../img/ja/icon-pdf.svg) no-repeat 0 0;
    content: "PDF";
    text-indent: -9999rem;
    vertical-align: middle
}

a span.download {
    background-color: transparent
}

a span.download:after {
    margin-left: 10px;
    display: inline-block;
    width: 30px;
    overflow: hidden;
    background: url(../img/ja/icon-download-white.svg) no-repeat 0 0;
    content: "ZIPを開く";
    text-indent: -9999rem;
    vertical-align: middle
}

a:hover span.download:after {
    background: url(../img/ja/icon-download-white.svg) no-repeat 0 0
}

a span.excel:after {
    margin-left: .5rem;
    display: inline-block;
    width: 30px;
    background: url(../img/ja/icon-excel.svg) no-repeat 0 0;
    content: "Excel";
    text-indent: -9999rem;
    vertical-align: middle
}

figure img {
    margin-bottom: 2rem
}

.fig-title {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1rem
}

@media (max-width:1024px) {
    .fig-title {
        font-size: 1.8rem
    }
}

.fig-info {
    font-size: 1.4rem
}

@media (max-width:640px) {
    .fig-info {
        font-size: 1.3rem
    }
}

.card {
    background: #fff;
    box-shadow: 1px 2px 5px #ccc;
    display: block !important
}

.card-img {
    max-width: 100%;
    height: auto
}

.card-content {
    padding: 2rem
}

@media (max-width:640px) {
    .card-content {
        padding: 1rem .5rem
    }
}

.card-title {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1rem;
    text-align: center
}

@media (max-width:640px) {
    .card-title {
        font-size: 1.6rem
    }
}

.card-text {
    font-size: 1.6rem
}

.card-num {
    display: flex;
    align-items: baseline;
    line-height: 1.5;
    font-size: 3rem;
    font-weight: 700;
    justify-content: center
}

@media (max-width:640px) {
    .card-num {
        font-size: 2.4rem
    }
}

.card-num span {
    font-size: 2rem
}

@media (max-width:640px) {
    .card-num span {
        font-size: 1.6rem
    }
}

.card-logo {
    max-width: 100px;
    margin: 0 auto 1rem
}

.card-logo.sogo-seibu {
    max-width: 100px;
    height: 50px
}

.card-logo.logo-akachan {
    max-width: 55px;
    height: 50px
}

.card-logo.logo-dennys {
    max-width: 100px;
    height: 50px
}

.card-logo.logo-loft {
    max-width: 55px;
    height: 50px
}

.card-label {
    background: #14813d;
    border-radius: 2rem;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    padding: .5rem;
    width: 60%;
    margin: 0 auto 2rem;
    text-align: center
}

.card-link {
    text-align: center;
    border-top: 1px solid #ccc
}

.card-link a {
    text-decoration: none;
    color: #14813d;
    margin: 0 1rem
}

.card-link a:hover {
    color: #0090aa
}

@media only screen and (max-width:1200px) {

    .table[data-table-sp=scroll] .table__body,
    table[data-table-sp=scroll].table-main-business .table__body {
        padding-bottom: 20px;
        overflow-x: auto;
        margin-bottom: 1rem
    }

    .table[data-table-sp=scroll] .table__body::-webkit-scrollbar,
    table[data-table-sp=scroll].table-main-business .table__body::-webkit-scrollbar {
        height: 9px
    }

    .table[data-table-sp=scroll] .table__body::-webkit-scrollbar-track,
    table[data-table-sp=scroll].table-main-business .table__body::-webkit-scrollbar-track {
        border-radius: 9px;
        background-color: #ddd
    }

    .table[data-table-sp=scroll] .table__body::-webkit-scrollbar-thumb,
    table[data-table-sp=scroll].table-main-business .table__body::-webkit-scrollbar-thumb {
        border-radius: 9px;
        background-color: #666
    }

    .sticky_table {
        z-index: 2;
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        left: 0;
        font-weight: 400
    }

    .sticky_table:before {
        display: inline-block;
        position: absolute;
        top: 0;
        width: 1px;
        height: 100%;
        background-color: #ddd;
        content: "";
        left: -1px
    }

    .sticky_table:after {
        display: inline-block;
        position: absolute;
        top: 0;
        width: 1px;
        height: 100%;
        background-color: #ddd;
        content: "";
        right: -1px
    }
}

.table,
table.table-main-business {
    border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
    margin-top: 0 !important;
    max-width: 1200px
}

.table>tbody tr,
.table>thead tr,
table.table-main-business>tbody tr,
table.table-main-business>thead tr {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc
}



.table>tbody tr td,
.table>tbody tr th,
.table>thead tr td,
.table>thead tr th,
table.table-main-business>tbody tr td,
table.table-main-business>tbody tr th,
table.table-main-business>thead tr td,
table.table-main-business>thead tr th {
    padding: 1rem .7rem;
    font-size: 1.4rem;
    font-weight: 400;
    text-align: right;
    border-right: 1px solid #ccc
}

#sub-cvs-overseas_financial02 .l-container .table>tbody tr,
#sub-cvs-overseas_financial02 .l-container .table>thead tr {
    border-top: none;
    border-bottom: none;
}

#sub-cvs-overseas_financial02 .l-container .table>tbody tr th,
#sub-cvs-overseas_financial02 .l-container .table>tbody tr td,
#sub-cvs-overseas_financial02 .l-container .table>thead tr th,
#sub-cvs-overseas_financial02 .l-container .table>thead tr td {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

#sub-cvs-overseas_financial02 .l-container .table>thead tr td:first-child,
.empty-column {
    border-top: none !important; /* ボーダーを削除 */
    border-bottom: none !important; /* ボーダーを削除 */
    border-right: none !important; /* ボーダーを削除 */
}

.table>tbody tr,
table.table-main-business>tbody tr {
    box-sizing: border-box
}

.table>tbody tr td,
.table>tbody tr th,
table.table-main-business>tbody tr td,
table.table-main-business>tbody tr th {
    box-sizing: border-box
}

.table-caption,
.table-caption-notes {
    text-align: left;
    font-size: 1.3rem;
    margin: .2rem 0
}

.table-caption-notes {
    text-indent: 2.6rem
}

@media (max-width:640px) {
    .table-caption-notes {
        text-indent: 0
    }
}

.flexbox-1column,
.sub-1column {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap
}

.flexbox-1column>.flexbox-item,
.sub-1column>.flexbox-item {
    flex-basis: 100%;
    max-width: 100%
}

.flexbox-1column>.flexbox-item img,
.sub-1column>.flexbox-item img {
    width: 100%;
    height: 100%
}

@media (max-width:640px) {

    .flexbox-1column>.flexbox-item,
    .sub-1column>.flexbox-item {
        padding: 0 0 1rem 0
    }
}

.flexbox-hero-2column {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap
}

.flexbox-hero-2column>.flexbox-item {
    flex-basis: 50%;
    max-width: 50%
}

@media (max-width:835px) {
    .flexbox-hero-2column>.flexbox-item {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-2column:not(#co-hero),
.sub-2column:not(#co-hero) {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto
}

.flexbox-2column:not(#co-hero)>.flexbox-item,
.sub-2column:not(#co-hero)>.flexbox-item {
    flex-basis: calc(50% - 2rem);
    max-width: calc(50% - 2rem)
}

@media (max-width:640px) {

    .flexbox-2column:not(#co-hero)>.flexbox-item,
    .sub-2column:not(#co-hero)>.flexbox-item {
        flex-basis: 100%;
        max-width: 100%
    }
}

#sub-consolidated_financial01 .sub-2column:not(#co-hero)>.flexbox-item:first-child {
    flex-basis: calc(50% - 2rem); /* 32.7% */
    max-width: calc(50% - 2rem); /* 32.7% */
}

#sub-consolidated_financial01 .sub-2column:not(#co-hero)>.flexbox-item:nth-child(2) {
    flex-basis: calc(50% - 2rem); /* 67.5% */
    max-width: calc(50% - 2rem); /* 67.5% */
    /* margin-top: 2.8rem; */
}

@media (max-width:640px) {
    #sub-consolidated_financial01 .sub-2column:not(#co-hero)>.flexbox-item:first-child,
    #sub-consolidated_financial01 .sub-2column:not(#co-hero)>.flexbox-item:nth-child(2) {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-2column-btn-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    padding: 8rem 5rem
}

@media (max-width:768px) {
    .flexbox-2column-btn-wrap {
        padding: 5rem 5rem
    }
}

@media (max-width:640px) {
    .flexbox-2column-btn-wrap {
        padding: 3rem 2rem
    }
}

.flexbox-2column-btn-wrap a.block-link {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%
}

.flexbox-2column-btn-wrap:hover {
    color: #c90000;
    transition: all .5s;
    cursor: pointer
}

.flexbox-2column-btn-wrap:hover .co-btn-wrap {
    background: #f60;
    color: #fff;
    transition: all .5s
}

.flexbox-2column-btn-wrap>.flexbox-item:first-child {
    flex-basis: 60%;
    max-width: 60%
}

@media (max-width:768px) {
    .flexbox-2column-btn-wrap>.flexbox-item:first-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-2column-btn-wrap>.flexbox-item:last-child {
    flex-basis: 40%;
    max-width: 40%
}

@media (max-width:768px) {
    .flexbox-2column-btn-wrap>.flexbox-item:last-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-2column-btn-wrap>.flexbox-item.btn {
    text-align: center
}

@media (max-width:768px) {
    .flexbox-2column-btn-wrap>.flexbox-item.btn {
        text-align: center;
        margin: 1rem 0 0 0
    }
}

.flexbox-2column-tab-warp {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto
}

@media (max-width:835px) {
    .flexbox-2column-tab-warp {
        max-width: auto
    }
}

.flexbox-2column-tab-warp>.flexbox-item:first-child {
    flex-basis: 75%;
    max-width: 75%
}

@media (max-width:835px) {
    .flexbox-2column-tab-warp>.flexbox-item:first-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-2column-tab-warp>.flexbox-item:last-child {
    flex-basis: 20%;
    max-width: 20%
}

@media (max-width:835px) {
    .flexbox-2column-tab-warp>.flexbox-item:last-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-3column,
.sub-3column {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap
}

.flexbox-3column>.flexbox-item,
.sub-3column>.flexbox-item {
    flex-basis: calc(33.3333333333% - 1rem);
    max-width: calc(33.3333333333% - 1rem)
}

.flexbox-3column>.flexbox-item img,
.sub-3column>.flexbox-item img {
    width: 100%;
    height: 100%
}

@media (max-width:768px) {

    .flexbox-3column>.flexbox-item,
    .sub-3column>.flexbox-item {
        flex-basis: calc(50% - 1rem);
        max-width: calc(50% - 1rem);
        margin-bottom: 2rem
    }
}

@media (max-width:640px) {

    .flexbox-3column>.flexbox-item,
    .sub-3column>.flexbox-item {
        flex-basis: 100%;
        max-width: 100%;
        padding: 0
    }
}

.flexbox-4column {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap
}

.flexbox-4column>.flexbox-item {
    flex-basis: 24%;
    max-width: 24%
}

@media (max-width:768px) {
    .flexbox-4column>.flexbox-item {
        flex-basis: 100%;
        max-width: 100%
    }
}

.flexbox-5column {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap
}

.flexbox-5column>.flexbox-item {
    flex-basis: 20%;
    max-width: 20%
}

@media (max-width:768px) {
    .flexbox-5column>.flexbox-item {
        flex-basis: 100%;
        max-width: 100%
    }
}

ul li {
    list-style: none
}

.co-domestic-conveni-list,
.list,
.list-style-disc,
.list-style-disc-indent,
.list-style-hyphen {
    list-style: none;
    margin: 0;
    padding-left: 0;
    -webkit-padding-start: 0;
    padding-inline-start: 0
}

.co-domestic-conveni-list .list-item,
.list .list-item,
.list-style-disc .list-item,
.list-style-disc-indent .list-item,
.list-style-hyphen .list-item {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.75
}

@media (max-width:768px) {

    .co-domestic-conveni-list .list-item,
    .list .list-item,
    .list-style-disc .list-item,
    .list-style-disc-indent .list-item,
    .list-style-hyphen .list-item {
        font-size: 2rem
    }
}

@media (max-width:768px) and (orientation:landscape) {

    .co-domestic-conveni-list .list-item,
    .list .list-item,
    .list-style-disc .list-item,
    .list-style-disc-indent .list-item,
    .list-style-hyphen .list-item {
        font-size: 1.8rem
    }
}

@media (max-width:640px) {

    .co-domestic-conveni-list .list-item,
    .list .list-item,
    .list-style-disc .list-item,
    .list-style-disc-indent .list-item,
    .list-style-hyphen .list-item {
        font-size: 1.8rem
    }
}

.list-style-disc,
.list-style-disc-indent {
    font-feature-settings: "palt"
}

.list-style-disc-indent>.list-item,
.list-style-disc>.list-item {
    font-size: 2.2rem;
    line-height: 1.75
}

.list-style-disc-indent>.list-item a,
.list-style-disc>.list-item a {
    text-decoration: underline
}

@media (max-width:768px) {

    .list-style-disc-indent>.list-item,
    .list-style-disc>.list-item {
        font-size: 1.8rem
    }
}

@media (max-width:640px) {

    .list-style-disc-indent>.list-item,
    .list-style-disc>.list-item {
        font-size: 1.6rem
    }
}

.list-style-disc-indent>.list-item::before,
.list-style-disc>.list-item::before {
    content: "●";
    color: #14813d;
    margin-right: .5rem
}

.list-style-disc-indent {
    text-indent: -2rem;
    padding-left: 2rem
}

@media (max-width:640px) {
    .list-style-disc-indent {
        text-indent: -2rem;
        padding-left: 2rem
    }
}

.list-style-hyphen {
    text-indent: -1.5rem;
    padding-left: 1.5rem
}

@media (max-width:640px) {
    .list-style-hyphen {
        text-indent: -2rem;
        padding-left: 2rem;
        margin-left: 1.5rem
    }
}

.list-style-hyphen>.list-item::before {
    content: "-";
    color: #000;
    margin-right: .5rem
}

.list-domestic-stores {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap
}

.list-domestic-stores .list-item {
    list-style: none;
    flex-basis: 12.5%;
    max-width: 12.5%;
    margin: 0;
    box-sizing: border-box
}

@media (max-width:1024px) {
    .list-domestic-stores .list-item {
        flex-basis: 25%;
        max-width: 25%;
        margin: 10px 0
    }
}

@media (max-width:640px) {
    .list-domestic-stores .list-item {
        flex-basis: 50%;
        max-width: 50%;
        margin: 10px 0
    }
}

.list-domestic-stores .list-item .stores-logo,
.list-domestic-stores .list-item .stores-name,
.list-domestic-stores .list-item .stores-num {
    margin: 1rem auto;
    text-align: center
}

@media (max-width:768px) {

    .list-domestic-stores .list-item .stores-logo,
    .list-domestic-stores .list-item .stores-name,
    .list-domestic-stores .list-item .stores-num {
        margin: .5rem auto
    }
}

.stores-num {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1
}

@media (max-width:640px) {
    .stores-num {
        font-size: 2.4rem
    }
}

.stores-name {
    align-items: center;
    justify-content: center;
    display: flex;
    font-weight: 700;
    line-height: 1;
    min-height: 30px
}

@media (max-width:640px) {
    .stores-name {
        min-height: auto
    }
}

.stores-logo.logo-itoyokado,
.stores-logo.logo-seven-eleven,
.stores-logo.logo-yorkbenimaru {
    max-width: 52.5px;
    max-height: 52.5px
}

.stores-logo.logo-akachan {
    max-width: 60px;
    max-height: 60px
}

.stores-logo.logo-dennys,
.stores-logo.logo-sogo-seibu,
.stores-logo.logo-york-inc {
    max-width: 115px;
    max-height: 52.5px
}

.stores-logo.logo-loft {
    max-width: 60px;
    max-height: 60px
}

.co-domestic-conveni-list {
    margin-left: 3rem !important
}

.co-domestic-conveni-list .list-item {
    line-height: 1.5
}

.co-domestic-conveni-list .list-item::before {
    content: "・";
    color: #14813d;
    margin-right: .5rem
}

.co-domestic-conveni-list .list-item:last-child {
    margin-bottom: .5rem
}

.tab {
    width: 100%;
    margin: 0 !important
}

.tab__list {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0
}

.tab__item {
    background: #14813d;
    border-top: 2px solid #14813d;
    color: #fff;
    cursor: pointer;
    font-size: 2rem;
    padding: 2rem 0 2.5rem;
    text-align: center;
    transition: all .25s;
    position: relative;
    line-height: 1.5
}

.tab__item:hover {
    border-top: 2px solid #f60;
    background: #f60
}

.tab__item.is-active {
    background: #fff;
    border-top: 2px solid #14813d;
    color: #000
}

.tab__item.is-active:after {
    border-top: 2px solid #000;
    border-right: 2px solid #000
}

.tab__item:after {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: rotate(135deg);
    content: "";
    width: 12px;
    height: 12px;
    margin: -2px 0 0 -6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transition: opacity .25s cubic-bezier(.4, 0, .2, 1) 0s
}

.tab__item br {
    display: none
}

@media (max-width:768px) {
    .tab__item br {
        display: block
    }
}

@media (max-width:768px) {
    .tab__item {
        padding: 1rem 1rem 2.5rem 1rem;
        font-size: 1.6rem;
        line-height: 1.25
    }
}

@media (max-width:640px) {
    .tab__item {
        padding: 1rem 1rem 2.5rem 1rem;
        font-size: 1.5rem
    }
}

.tab__content {
    padding: 2rem 0
}

@media (max-width:640px) {
    .tab__content {
        padding: 2rem 0
    }
}

.tab__content-item {
    display: none
}

.tab__content-item.is-active {
    display: block
}

.tab__list.en-fi-performance-group>li {
    min-height: 11rem
}

@media (max-width:768px) {
    .tab__list.en-fi-performance-group>li {
        min-height: 9rem
    }
}

@media (max-width:640px) {
    .tab__list.en-fi-performance-group>li {
        min-height: 11.25rem
    }
}

#sub-retail_industry03.en-retail_industry .sub-2column:not(#co-hero)>.flexbox-item:first-child {
    flex-basis: 70%;
    max-width: 70%
}

@media (max-width:640px) {
    #sub-retail_industry03.en-retail_industry .sub-2column:not(#co-hero)>.flexbox-item:first-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

#sub-retail_industry03.en-retail_industry .sub-2column:not(#co-hero)>.flexbox-item:last-child {
    flex-basis: 30%;
    max-width: 30%
}

@media (max-width:640px) {
    #sub-retail_industry03.en-retail_industry .sub-2column:not(#co-hero)>.flexbox-item:last-child {
        flex-basis: 100%;
        max-width: 100%
    }
}

#sub-retail_industry03.en-retail_industry .fi-h3 {
    font-size: 3.1rem/*3.2*/
}

@media (max-width:640px) {
    #sub-retail_industry03.en-retail_industry .fi-h3 {
        font-size: 2.2rem;
        line-height: 1.25
    }
}

#sub-retail_industry03.en-retail_industry .sub-2column .flexbox-item .is-ranking {
    padding-left: 34rem
}

@media (max-width:640px) {
    #sub-retail_industry03.en-retail_industry .sub-2column .flexbox-item .is-ranking {
        padding-left: 25.5rem
    }
}

.ir-h1 {
    width: 100%;
    box-sizing: border-box
}

@media (max-width:835px) {
    .ir-h1 .ir-h1__inner {
        padding: 15px 4%
    }
}

.ir-h1 .ir-h1__inner .ir-h1__title {
    font-size: 3.4rem !important;
    font-weight: 700;
    color: #fff
}

@media (max-width:1024px) {
    .ir-h1 .ir-h1__inner .ir-h1__title {
        font-size: 3rem !important
    }
}

@media (max-width:835px) {
    .ir-h1 .ir-h1__inner .ir-h1__title {
        font-size: 2.4rem !important
    }
}

@media (max-width:768px) {
    .ir-h1 .ir-h1__inner .ir-h1__title {
        font-size: 2.4rem !important
    }
}

@media (max-width:640px) {
    .ir-h1 .ir-h1__inner .ir-chart {
        margin: 5px 0 0
    }
}

.ir-h1 .ir-h1__inner .ir-chart__item {
    font-size: 1.4rem
}

.ir-h1 .ir-h1__inner .ir-chart__item em {
    font-size: 1.8rem;
    font-weight: 700;
    color: #fff
}

.ir-h1 .ir-h1__inner a.ir-chart-button {
    display: block;
    width: 138px;
    padding: 5px;
    border: 1px solid #fff;
    border-radius: 50px;
    color: #fff !important;
    font-weight: 700;
    text-align: center;
    font-size: 1.6rem
}

.individual-heading1 {
    margin: 0 !important;
    padding: 0 !important
}

.individual-heading1 .individual-heading1__inner {
    max-width: 100% !important;
    padding: 1.4em 4%
}

@media (max-width:835px) {
    .individual-heading1 .individual-heading1__inner {
        padding: 17px 4%
    }
}

.individual-heading1 .individual-heading1__inner h1.individual-heading1__title {
    font-size: 3.3rem !important;
    margin: 0 !important
}

@media (max-width:768px) and (orientation:landscape) {
    .individual-heading1 .individual-heading1__inner h1.individual-heading1__title {
        font-size: 2.5rem !important
    }
}

@media (max-width:640px) {
    .individual-heading1 .individual-heading1__inner h1.individual-heading1__title {
        font-size: 2.5rem !important
    }
}

.fi-h3 {
    font-size: 3.6rem;
    text-align: left
}

@media (max-width:1024px) {
    .fi-h3 {
        font-size: 3.6rem
    }
}

@media (max-width:835px) {
    .fi-h3 {
        font-size: 3.2rem
    }
}

@media (max-width:768px) {
    .fi-h3 {
        font-size: 3.2rem
    }
}

@media (max-width:768px) and (orientation:landscape) {
    .fi-h3 {
        font-size: 2.6rem
    }
}

@media (max-width:640px) {
    .fi-h3 {
        font-size: 2.8rem;
        line-height: 1.25
    }
}

.fi-h3 br {
    display: none
}

@media (max-width:640px) {
    .fi-h3 br {
        display: block
    }
}

.fi-h3 .fi-h3-sub {
    display: block;
    font-size: 1.4rem
}

@media (max-width:640px) {
    .fi-h4 {
        font-weight: 700
    }
}

.title-chart {
    font-size: 2.2rem;
    font-weight: 700;
    border-bottom: 1px solid #333;
    line-height: 1.25;
    padding-bottom: .5rem;
    font-feature-settings: "palt"
}

@media (max-width:768px) {
    .title-chart {
        font-size: 1.8rem
    }
}

.sub-btn-wrap a {
    display: block;
    padding: 2rem 5rem
}

@media (max-width:640px) {
    .sub-btn-wrap a {
        padding: 2rem
    }
}

.sub-1column {
    max-width: 1200px;
    margin: 0 auto
}

.sub-1column .flexbox-item.btn {
    text-align: right;
    margin-bottom: 4rem
}

.sub-1column .flexbox-item.table,
.sub-1column table.flexbox-item.table-main-business {
    margin: 0 0 5rem 0
}

@media (max-width:640px) {

    .sub-1column .flexbox-item.table,
    .sub-1column table.flexbox-item.table-main-business {
        margin: 0 0 3rem 0
    }
}

.sub-2column {
    max-width: 1200px;
    margin: 0 auto
}

.sub-2column .flexbox-item.btn {
    text-align: center
}

.sub-2column+.sub-2column {
    margin-top: 3rem !important
}

.box-2022 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap
}

.box-2022 li {
    width: 48%
}

@media (max-width:640px) {
    .box-2022 li {
        width: 100%
    }
}

.sub-3column {
    max-width: 1200px;
    margin: 0 auto
}

.table thead tr.table-unit,
table.table-main-business thead tr.table-unit {
    border-top: none;
    border-left: none
}

.table thead tr.table-unit td,
table.table-main-business thead tr.table-unit td {
    border-top: none;
    border-right: none;
    border-left: none
}

.table>tbody tr th,
table.table-main-business>tbody tr th {
    padding: 1rem .75rem;
    text-align: left;
    min-width: 200px
}

@media (max-width:640px) {

    .table>tbody tr td,
    table.table-main-business>tbody tr td {
        min-width: 150px
    }
}

table.table-main-business {
    border-spacing: 1px;
    border-collapse: collapse;
    margin-top: 2rem
}

table.table-main-business>thead tr {
    border: none
}

table.table-main-business>thead tr th {
    background: #fff
}

table.table-main-business>thead tr td {
    text-align: center;
    border: 1px solid #fff
}

table.table-main-business>tbody .ttle-segment {
    text-align: left;
    color: #fff
}

table.table-main-business>tbody tr {
    border-bottom: none;
    border-left: none
}

table.table-main-business>tbody tr th {
    background: #fff;
    border-right: none
}

table.table-main-business>tbody tr td {
    border-top: 1px solid #ccc;
    border-right: none
}

.sub-2column .flexbox-item.is-guide {
    flex-basis: 25% !important;
    max-width: 25% !important
}

@media (max-width:640px) {
    .sub-2column .flexbox-item.is-guide {
        flex-basis: 80% !important;
        max-width: 80% !important
    }
}

.sub-2column .flexbox-item.is-chart {
    flex-basis: 72.5% !important;
    max-width: 72.5% !important
}

@media (max-width:640px) {
    .sub-2column .flexbox-item.is-chart {
        flex-basis: 100% !important;
        max-width: 100% !important
    }
}

#sub-macroeconomic02 .l-container {
    padding: 0 1rem
}

@media (max-width:835px) {
    #sub-macroeconomic02 .l-container {
        padding: 0 1rem
    }
}

@media (max-width:768px) {
    #sub-macroeconomic02 .l-container {
        padding: 0 15px
    }
}

@media (max-width:640px) {
    body[data-browser=safari] #sub-macroeconomic03 #anc02 {
        padding-top: 5rem
    }
}

body[data-browser=ie11] #sub-macroeconomic03 #anc02 {
    padding-top: 5rem
}

#sub-retail_industry02 figure .fig-title {
    min-height: 6.5rem
}

#sub-retail_industry02 figure.is-guide {
    min-height: 420px
}

#sub-retail_industry03 .is-ranking {
    padding-left: 21rem
}

@media (max-width:640px) {
    #sub-retail_industry03 .is-ranking {
        padding-left: 16rem
    }
}

@media (max-width:640px) {
    body[data-browser=safari] #sub-retail_industry02 #anc02 {
        padding-top: 6rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-retail_industry03 #anc03,
    body[data-browser=safari] #sub-retail_industry03 #anc04 {
        padding-top: 4rem
    }
}

body[data-browser=ie11] #sub-retail_industry03 #anc03,
body[data-browser=ie11] #sub-retail_industry03 #anc04 {
    padding-top: 5rem
}

#sub-consolidated_financial02 #anc02 {
    padding: 3rem 0 0
}

#sub-consolidated_financial02 .l-container {
    padding: 0 1rem
}

@media (max-width:835px) {
    #sub-consolidated_financial02 .l-container {
        padding: 0 1rem
    }
}

@media (max-width:768px) {
    #sub-consolidated_financial02 .l-container {
        padding: 0 15px
    }
}

#sub-consolidated_financial03 #anc03 {
    padding: 3rem 0 0
}

#sub-consolidated_financial04 #anc04,
#sub-consolidated_financial04 #anc05,
#sub-consolidated_financial04 #anc06,
#sub-consolidated_financial05 #anc04,
#sub-consolidated_financial05 #anc05,
#sub-consolidated_financial05 #anc06,
#sub-consolidated_financial06 #anc04,
#sub-consolidated_financial06 #anc05,
#sub-consolidated_financial06 #anc06 {
    padding: 3rem 0 0
}

#sub-consolidated_financial04 .l-container,
#sub-consolidated_financial05 .l-container,
#sub-consolidated_financial06 .l-container {
    padding: 0 1rem
}

@media (max-width:835px) {

    #sub-consolidated_financial04 .l-container,
    #sub-consolidated_financial05 .l-container,
    #sub-consolidated_financial06 .l-container {
        padding: 0 1rem 8rem
    }
}

@media (max-width:768px) {

    #sub-consolidated_financial04 .l-container,
    #sub-consolidated_financial05 .l-container,
    #sub-consolidated_financial06 .l-container {
        padding: 0 15px
    }
}

@media (max-width:640px) {
    body[data-browser=safari] #sub-consolidated_financial02 #anc02 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-consolidated_financial03 #anc03,
    body[data-browser=safari] #sub-consolidated_financial03 #anc04,
    body[data-browser=safari] #sub-consolidated_financial03 #anc05,
    body[data-browser=safari] #sub-consolidated_financial03 #anc06,
    body[data-browser=safari] #sub-consolidated_financial04 #anc03,
    body[data-browser=safari] #sub-consolidated_financial04 #anc04,
    body[data-browser=safari] #sub-consolidated_financial04 #anc05,
    body[data-browser=safari] #sub-consolidated_financial04 #anc06 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-consolidated_financial07 #anc07,
    body[data-browser=safari] #sub-consolidated_financial07 #anc08,
    body[data-browser=safari] #sub-consolidated_financial07 #anc09,
    body[data-browser=safari] #sub-consolidated_financial07 #anc10 {
        padding-top: 4rem
    }
}

@media only screen and (max-width:1200px) {

    .table[data-table-sp=scroll] .table_financial_targets_body,
    table[data-table-sp=scroll].table-main-business .table_financial_targets_body {
        padding-bottom: 20px;
        overflow-x: auto;
        margin-bottom: 1rem
    }
}

.table_financial_targets_body .table_financial_targets {
    border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
    margin-top: 0 !important;
    max-width: 1200px
}

.table_financial_targets_body .table_financial_targets th {
    width: 25%;
    box-sizing: border-box;
    font-size: 1.4rem;
    font-weight: 400;
    padding: 1rem .75rem;
    text-align: left;
    min-width: 170px;/*200*/
    /*border-top: 1px solid #000;*/
    border-bottom: 1px solid #000;
    border-right: 1px solid #000
}

@media (max-width:768px) {
    .table_financial_targets_body .table_financial_targets th {
        z-index: 2;
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        left: 0;
        /*border-top: 1px solid #f6f6f6;*/
        border-bottom: 1px solid #f6f6f6;
        border-right: 1px solid #f6f6f6
    }

    .table_financial_targets_body .table_financial_targets th::before {
        display: inline-block;
        position: absolute;
        bottom: -1px;
        width: 100%;
        height: 1px;
        background-color: #000;
        content: "";
        left: 0;
        z-index: 1
    }

    .table_financial_targets_body .table_financial_targets th::after {
        display: inline-block;
        position: absolute;
        top: 0;
        width: 1px;
        height: 100%;
        background-color: #000;
        content: "";
        right: -1px;
        z-index: 1
    }
}

.table_financial_targets_body .table_financial_targets td {
    /*width: 50%;*/
    font-weight: 700;
    text-align: right;
    padding: .5rem 1rem;
    /*border-top: 1px solid #000;*/
    border-bottom: 1px solid #000;
    white-space: nowrap
}

@media (max-width:768px) {
    .table_financial_targets_body .table_financial_targets td {
        width: 16.6%
    }
}

/*.table_financial_targets_body .table_financial_targets td small {
    display: inline-block;
    text-align: center !important;
    width: 100%;
}*/

/*.table_financial_targets_body .table_financial_targets td:nth-child(2) {
    border-right: 1px solid #000
}*/

.table_financial_targets_body .table_financial_targets .green-bg {
    background-color: #34b371;
    color: #fff
}

.table_financial_targets_body .table_financial_targets .green-txt {
    color: #34b371
}

.table_financial_targets_body .table_financial_targets .border-none th {
    background-color: #fff
}

.green-banner {
    background-color: #00a650; /* 緑色の背景 */
    color: #fff; /* 白文字 */
    text-align: center; /* テキストを中央揃え */
    padding: 1rem; /* 上下左右の余白を設定 */
    width: 100%; /* 画面幅いっぱいに広げる */
    margin-top: 2rem; /* 上の要素との間に余白を追加 */
}

.green-banner p {
    margin: 0; /* 段落のデフォルトの余白をリセット */
    font-size: 2rem; /* テキストサイズを調整 */
    font-weight: bold; /* テキストを太字にする */
}

@media (max-width:768px) {
    .table_financial_targets_body .table_financial_targets .border-none th::after {
        content: none
    }
}

.table_financial_targets_body .table_financial_targets .border-none td,
.table_financial_targets_body .table_financial_targets .border-none th {
    border: none;
    text-align: center;
}

.table_financial_targets_body .orange-bg {
    background-color: #f08200;
    color: #fff
}

.table {
    width: 100%;
}

.table_financial_targets_body .orange-txt {
    color: #f08200;
    /*transform: scale(0.60, 1);*/
    width: 60%;
    font-size: 100%;
    line-height: 1.6;
    margin-top: 9px;
    margin-bottom: 9px;
    text-align: center;
}

#sub-cvs-domestic_financial01 .l-container {
    padding: 8rem 1rem 0
}

@media (max-width:1440px) {
    #sub-cvs-domestic_financial01 .l-container {
        padding: 4rem 1rem 0
    }
}

@media (max-width:835px) {
    #sub-cvs-domestic_financial01 .l-container {
        padding: 5rem 1rem 0
    }
}

@media (max-width:768px) {
    #sub-cvs-domestic_financial01 .l-container {
        padding: 5rem 15px 0
    }
}

@media (max-width:640px) {
    #sub-cvs-domestic_financial01 .l-container {
        padding: 3rem 15px 0
    }
}

#sub-cvs-domestic_financial02 .l-container {
    padding: 0 1rem
}

@media (max-width:835px) {
    #sub-cvs-domestic_financial02 .l-container {
        padding: 0 1rem
    }
}

@media (max-width:768px) {
    #sub-cvs-domestic_financial02 .l-container {
        padding: 0 15px
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-cvs-domestic_financial02 #anc02,
    body[data-browser=safari] #sub-cvs-domestic_financial02 #anc03 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-cvs-domestic_financial03 #anc04,
    body[data-browser=safari] #sub-cvs-domestic_financial03 #anc05,
    body[data-browser=safari] #sub-cvs-domestic_financial03 #anc06,
    body[data-browser=safari] #sub-cvs-domestic_financial03 #anc07 {
        padding-top: 5rem
    }
}

#sub-cvs-overseas_financial01 .l-container {
    padding: 8rem 1rem 0
}

@media (max-width:1440px) {
    #sub-cvs-overseas_financial01 .l-container {
        padding: 4rem 1rem 0
    }
}

@media (max-width:1260px) {
    #sub-cvs-overseas_financial01 .l-container {
        padding: 4rem 1rem 0
    }
}

@media (max-width:835px) {
    #sub-cvs-overseas_financial01 .l-container {
        padding: 5rem 1rem 0
    }
}

@media (max-width:768px) {
    #sub-cvs-overseas_financial01 .l-container {
        padding: 5rem 15px 0
    }
}

@media (max-width:640px) {
    #sub-cvs-overseas_financial01 .l-container {
        padding: 3rem 15px 0
    }
}

#sub-cvs-overseas_financial02 .l-container,
#sub-cvs-overseas_financial03 .l-container,
#sub-cvs-overseas_financial04 .l-container,
#sub-cvs-overseas_financial05 .l-container {
    padding: 0 1rem 0 /* 0 0 8rem 0 */
}

@media (max-width:835px) {
    #sub-cvs-overseas_financial02 .l-container,
    #sub-cvs-overseas_financial03 .l-container,
    #sub-cvs-overseas_financial04 .l-container,
    #sub-cvs-overseas_financial05 .l-container {
        padding: 0 15px 0 /*0 1rem 8rem*/
    }
}

@media (max-width:768px) {
    #sub-cvs-overseas_financial02 .l-container,
    #sub-cvs-overseas_financial03 .l-container,
    #sub-cvs-overseas_financial04 .l-container,
    #sub-cvs-overseas_financial05 .l-container {
        padding: 0 15px 0 /*0 15px 8rem*/
    }
}

#sub-cvs-overseas_financial06 .l-container {
    padding: 0 15px 8rem /* 0 0 8rem 0 */
}

@media (max-width:835px) {
    #sub-cvs-overseas_financial06 .l-container {
        padding: 0 15px 8rem /*0 1rem 8rem*/
    }
}

@media (max-width:768px) {
    #sub-cvs-overseas_financial02 .l-container {
        padding: 0 15px 8rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-cvs-overseas_financial02 #anc02,
    body[data-browser=safari] #sub-cvs-overseas_financial02 #anc03,
    body[data-browser=safari] #sub-cvs-overseas_financial02 #anc04 {
        padding-top: 5rem
    }
}

#sub-supermarket_financial01 .l-container {
    padding: 8rem 0 0 0
}

#sub-supermarket_financial03 .l-container {
    padding: 0 0 0 0
}

#sub-supermarket_financial05 .l-container {
    padding: 8rem 0 5rem 0
}

#sub-supermarket_financial06 .l-container {
    padding: 5rem 0 8rem 0
}

@media (max-width:1440px) {

    #sub-supermarket_financial01 .l-container,
    #sub-supermarket_financial03 .l-container {
        padding: 4rem 0 0
    }
}

@media (max-width:835px) {

    #sub-supermarket_financial01 .l-container,
    #sub-supermarket_financial03 .l-container {
        padding: 5rem 1rem 0
    }
}

@media (max-width:768px) {

    #sub-supermarket_financial01 .l-container,
    #sub-supermarket_financial03 .l-container {
        padding: 5rem 15px 0
    }
}

@media (max-width:640px) {

    #sub-supermarket_financial01 .l-container,
    #sub-supermarket_financial03 .l-container {
        padding: 3rem 15px 0
    }
}

#sub-supermarket_financial02 #anc02,
#sub-supermarket_financial02 #anc03,
#sub-supermarket_financial02 #anc05,
#sub-supermarket_financial04 #anc02,
#sub-supermarket_financial04 #anc05 {
    padding: 3.5rem 0 0
}

#sub-supermarket_financial02 .l-container,
#sub-supermarket_financial04 .l-container {
    padding: 0
}

@media (max-width:835px) {

    #sub-supermarket_financial02 .l-container,
    #sub-supermarket_financial04 .l-container {
        padding: 0 1rem
    }
}

@media (max-width:768px) {

    #sub-supermarket_financial02 .l-container,
    #sub-supermarket_financial04 .l-container {
        padding: 0 15px
    }
}

#sub-supermarket_financial03 #anc03,
#sub-supermarket_financial03 #anc04 {
    padding: 3.5rem 0 0
}

@media (max-width:640px) {
    body[data-browser=safari] 
    #sub-supermarket_financial02 #anc02 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-supermarket_financial03 #anc03,
    body[data-browser=safari] #sub-supermarket_financial03 #anc04 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-supermarket_financial04 #anc05,
    body[data-browser=safari] #sub-supermarket_financial04 #anc06,
    body[data-browser=safari] #sub-supermarket_financial04 #anc07 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {
    body[data-browser=safari] #sub-supermarket_financial05 #anc08 {
        padding-top: 5rem
    }
}

#sub-department_financial01 #anc02,
#sub-department_financial03 #anc02 {
    padding: 3.5rem 0 0
}

#sub-department_financial01 .l-container,
#sub-department_financial03 .l-container {
    padding: 8rem 0 0 0
}

@media (max-width:1440px) {

    #sub-department_financial01 .l-container,
    #sub-department_financial03 .l-container {
        padding: 4rem 0 0
    }
}

@media (max-width:835px) {

    #sub-department_financial01 .l-container,
    #sub-department_financial03 .l-container {
        padding: 5rem 1rem 0
    }
}

@media (max-width:768px) {

    #sub-department_financial01 .l-container,
    #sub-department_financial03 .l-container {
        padding: 5rem 15px 0
    }
}

@media (max-width:640px) {

    #sub-department_financial01 .l-container,
    #sub-department_financial03 .l-container {
        padding: 3rem 15px 0
    }
}

#sub-department_financial02 #anc03,
#sub-department_financial02 #anc04,
#sub-department_financial04 #anc03,
#sub-department_financial04 #anc04,
#sub-department_financial05 #anc03,
#sub-department_financial05 #anc04 {
    padding: 3.5rem 0 0
}

#sub-department_financial02 .l-container,
#sub-department_financial04 .l-container,
#sub-department_financial05 .l-container {
    padding: 0
}

@media (max-width:835px) {

    #sub-department_financial02 .l-container,
    #sub-department_financial04 .l-container,
    #sub-department_financial05 .l-container {
        padding: 0 1rem
    }
}

@media (max-width:768px) {

    #sub-department_financial02 .l-container,
    #sub-department_financial04 .l-container,
    #sub-department_financial05 .l-container {
        padding: 0 15px
    }
}

#sub-department_financial06 .l-container {
    padding: 0 0 8rem
}

@media (max-width:835px) {
    #sub-department_financial06 .l-container {
        padding: 0 1rem 8rem
    }
}

@media (max-width:768px) {
    #sub-department_financial06 .l-container {
        padding: 0 15px 3rem
    }
}

@media (max-width:640px) {
    body[data-browser=safari] #sub-department_financial03 #anc02 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {
    body[data-browser=safari] #sub-department_financial04 #anc03 {
        padding-top: 5rem
    }
}

@media (max-width:640px) {

    body[data-browser=safari] #sub-department_financial05 #anc04,
    body[data-browser=safari] #sub-department_financial05 #anc05 {
        padding-top: 5rem
    }
}

.sub-ancor-menu-5column .flexbox-item:first-child {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding: 1.5% 1.5% 0 1.5%;
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

.sub-ancor-menu-5column .flexbox-item:nth-child(n+2) {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding: 1.5% 1.5% 0 1.5%;
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

.sub-ancor-menu-5column .flexbox-item:last-child {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 2% auto;
    padding: 1.5% 1.5% 1.5% 1.5%;
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

.sub-ancor-menu-5column .flexbox-item-sub:first-child {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding: 1.5% 1.5% 0 1.5%;
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

.sub-ancor-menu-5column .flexbox-item-sub:nth-child(2) {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding-top: 1.5%;
    padding-right: 1.5%;
    padding-bottom: 0%;
    padding-left: 3%;
    /*text-indent: -2em;*/
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

.sub-ancor-menu-5column .flexbox-item-sub:nth-child(3) {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding-top: 1.5%;
    padding-right: 1.5%;
    padding-bottom: 0%;
    padding-left: 3%;
    /*text-indent: -2em;*/
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

.sub-ancor-menu-5column .flexbox-item-sub:last-child {
    /*display: flex;*/
    /*justify-content: space-around;*/
    max-width: 1200px;
    margin: 0 auto 2% auto;
    padding: 1.5% 1.5% 1.5% 1.5%;
    background-color: #f0f0f0
    /*align-items: flex-start;
    flex-wrap: wrap*/
}

#sub-macroeconomic01 .l-container ul,
#sub-retail_industry01 .l-container ul,
#sub-consolidated_financial01 .l-container ul,
#sub-cvs-domestic_financial01 .l-container ul,
#sub-cvs-overseas_financial01 .l-container ul,
#sub-supermarket_financial01 .l-container ul,
#sub-finance_financial01 .l-container ul,
#sub-department_financial01 .l-container ul {
    /*max-width: 1200px;*/
    /*list-style: none;*/
    margin: 0 auto 0 auto;
    padding: 0;
    font-size: 1.8rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3列のグリッド */
    column-gap: 5%; /* 列間のスペース */
    position: relative; /* 相対位置指定 */
    left: 20px;  /*左からの位置 */
}

@media (max-width:835px) {
    #sub-macroeconomic01 .l-container ul,
    #sub-retail_industry01 .l-container ul,
    #sub-consolidated_financial01 .l-container ul,
    #sub-cvs-domestic_financial01 .l-container ul,
    #sub-cvs-overseas_financial01 .l-container ul,
    #sub-supermarket_financial01 .l-container ul,
    #sub-finance_financial01 .l-container ul,
    #sub-department_financial01 .l-container ul {
        /*max-width: 1200px;*/
        /*list-style: none;*/
        margin: 0 2% 0 0;
        padding: 0;
        font-size: 1.7rem;
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 3列のグリッド */
        column-gap: 5%; /* 列間のスペース */
        position: relative; /* 相対位置指定 */
        left: 20px;  /*左からの位置 */
    }
}

@media (max-width:768px) {
    #sub-macroeconomic01 .l-container ul,
    #sub-retail_industry01 .l-container ul,
    #sub-consolidated_financial01 .l-container ul,
    #sub-cvs-domestic_financial01 .l-container ul,
    #sub-cvs-overseas_financial01 .l-container ul,
    #sub-supermarket_financial01 .l-container ul,
    #sub-finance_financial01 .l-container ul,
    #sub-department_financial01 .l-container ul {
        /*max-width: 1200px;*/
        /*list-style: none;*/
        margin: 0 2% 0 0;
        padding: 0;
        font-size: 1.6rem;
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 3列のグリッド */
        column-gap: 5%; /* 列間のスペース */
        position: relative; /* 相対位置指定 */
        left: 20px;  /*左からの位置 */
    }
}

@media (max-width:640px) {
    #sub-macroeconomic01 .l-container ul,
    #sub-retail_industry01 .l-container ul,
    #sub-consolidated_financial01 .l-container ul,
    #sub-cvs-domestic_financial01 .l-container ul,
    #sub-cvs-overseas_financial01 .l-container ul,
    #sub-supermarket_financial01 .l-container ul,
    #sub-finance_financial01 .l-container ul,
    #sub-department_financial01 .l-container ul {
        /*max-width: 1200px;*/
        /*list-style: none;*/
        margin: 0 2% 0 0;
        padding: 0;
        font-size: 1.5rem;
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 3列のグリッド */
        column-gap: 5%; /* 列間のスペース */
        position: relative; /* 相対位置指定 */
        left: 20px;  /*左からの位置 */
    }
}

#sub-macroeconomic01 .l-container li,
#sub-retail_industry01 .l-container li,
#sub-consolidated_financial01 .l-container li,
#sub-cvs-domestic_financial01 .l-container li,
#sub-cvs-overseas_financial01 .l-container li,
#sub-supermarket_financial01 .l-container li,
#sub-finance_financial01 .l-container li,
#sub-department_financial01 .l-container li {
    /*margin-bottom: 10px;*/
    position: relative; /* 相対位置指定 */
}

#sub-macroeconomic01 .l-container li::before,
#sub-retail_industry01 .l-container li::before,
#sub-consolidated_financial01 .l-container li::before,
#sub-cvs-domestic_financial01 .l-container li::before,
#sub-cvs-overseas_financial01 .l-container li::before,
#sub-supermarket_financial01 .l-container li::before,
#sub-finance_financial01 .l-container li::before,
#sub-department_financial01 .l-container li::before {
    content: "▼"; /* ▼を表示 */
    color: green; /* 緑色 */
    position: absolute; /* 絶対位置指定 */
    left: -20px;  /*左からの位置 */
}

#sub-supermarket_financial01 .l-container .sub-ancor-menu-5column .flexbox-item-sub li::before {
    content: "▼"; /* ▼を表示 */
    color: rgb(116, 178, 0); /* 緑色 */
    position: absolute; /* 絶対位置指定 */
    left: -20px;  /*左からの位置 */
}

.title-ancor-menu {
    /*max-width: 1200px;*/
    margin: 0 auto 0 auto;
    font-size: 2.1rem; /*2.5*/
    font-weight: 700
    /*border-bottom: 1px solid #333;
    line-height: 1.25;
    padding-bottom: .5rem;*/
    /*font-feature-settings: "palt"*/
}

@media (max-width:640px) {
    .title-ancor-menu {
        /*max-width: 1200px;*/
        margin: 0 auto 0 auto;
        font-size: 1.8rem; /*2.5*/
        font-weight: 700
    }
}

.l-container .title-ancor-menu a {
    color: gray
}

.title-ancor-menu-sub {
    /*max-width: 1200px;*/
    margin: 0 auto 0 -1.3%;
    font-size: 2.1rem; /*2.5*/
    font-weight: 700
    /*border-bottom: 1px solid #333;
    line-height: 1.25;
    padding-bottom: .5rem;*/
    /*font-feature-settings: "palt"*/
}

@media (max-width:640px) {
    .title-ancor-menu-sub {
        /*max-width: 1200px;*/
        margin: 0 auto 0 -2%;
        font-size: 1.8rem; /*2.5*/
        font-weight: 700
    }
}

.l-container .title-ancor-menu-sub a {
    color: gray
}

/*
#anc01, #anc01-01, #anc01-02, #anc01-03, #anc01-04, #anc01-05, #anc01-06, #anc01-07, #anc01-08, #anc01-09,
#anc02, #anc02-01, #anc02-02, #anc02-03, #anc02-04, #anc02-05, #anc02-06, #anc02-1,	#anc02-2,
#anc03, #anc03-01,
#anc04, #anc04-01,
#anc05,
#anc06,
#anc07,
#anc08,
#anc09,
#anc10 {
    margin-top:-100px;
    padding-top:100px
}
*/

:root { /* htmlでも可 */
    scroll-padding-top: 100px;
    scroll-behavior: smooth
}

/* 連結業績の連結財務KPIの右表で、矢印を示すためのスタイル */
/* 右向き ▶︎ */
.right_arrow {
    clip-path: polygon(0 28%, 100% 50%, 0 72%);
    background: linear-gradient(to right, transparent, #f08200);
}

.table-row {
    /*flex: 2;*/
    line-height : 25px;/*157%*/
    /*vertical-align: middle;*/
}

.table_financial_targets_body .orange-bg span {
    font-size: 100%;
    display: inline-block;
    margin-top: 5px;
    padding: 0px 30px;
    background-color: #ff0000;
    /* cursor: pointer;*/
    border-radius: 100px;
    /* border: 0;*/
    /* color: #fff;*/
    /* font-weight: bold;*/
    /* transition: 0.3s;*/
}

.table_financial_targets_body p {
    font-size: 100%;
    line-height: 3.66;
    margin-top: 9px;
    margin-bottom: 9px;
    text-align: right;
}

.table_financial_targets_body br {
    display: block;
    content: "";
    margin: -8px 0;
}

/*
    border-radius: 100px;
    display: block;
    width: 200px;
    padding: 15px;
    box-sizing: border-box;
    background: #6fa1ff;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 10px 0;
*/
