@media print,screen and (min-width: 768px) {
    .kv {
        background: url("/jp/en/sustainability/img/kv.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 {
        margin: 30px auto 0
    }

    .category_top section.block1 ul {
        margin: -28px 0 0
    }

    .category_top section.block1 ul li {
        position: relative;
        margin: 0 0 56px
    }

    .category_top section.block1 ul li .title {
        width: 476px;
        font-size: 15px;
        font-weight: bold;
        line-height: 20px;
        letter-spacing: 0.04em;
        color: #1A1A1A;
        padding: 28px 0
    }

    .category_top section.block1 ul li p {
        width: 476px;
        font-size: 15px;
        line-height: 28px;
        color: #1A1A1A
    }

    .category_top section.block1 ul li p strong {
        font-weight: bold
    }

    .category_top section.block1 ul li .img {
        position: absolute;
        top: 0
    }

    .category_top section.block1 ul li:nth-child(odd) .img {
        right: 0
    }

    .category_top section.block1 ul li:nth-child(even) {
        padding-left: 504px
    }

    .category_top section.block1 ul li:nth-child(even) .img {
        left: 0
    }

    .category_top section.block1 ul li:nth-child(1) {
        min-height: 364px
    }

    .category_top section.block1 ul li:nth-child(1) .img {
        width: 364px;
        height: 364px;
        background: url("/jp/en/sustainability/img/block1_1.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 ul li:nth-child(2) {
        min-height: 392px
    }

    .category_top section.block1 ul li:nth-child(2) .img {
        width: 420px;
        height: 392px;
        background: url("/jp/en/sustainability/img/block1_2.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 ul li:nth-child(3) {
        min-height: 364px
    }

    .category_top section.block1 ul li:nth-child(3) .img {
        width: 420px;
        height: 364px;
        background: url("/jp/en/sustainability/img/block1_3.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 ul li a {
        position: relative;
        display: inline-block;
        border: 1px solid #CCCCCC;
        margin: 40px 0 0;
        font-size: 11px;
        font-weight: bold;
        line-height: 15px;
        color: #0099D9;
        letter-spacing: 0.04em;
        padding: 14px 64px 13px 21px
    }

    .category_top section.block1 ul li a:after {
        content: '';
        position: absolute;
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
        width: 14px;
        height: 14px
    }

    .category_top section.block1 ul li a.link:after {
        background: url("/jp/en/img/common/link.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block1 ul li a.plink_down:after {
        background: url("/jp/en/img/common/plink_down.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 .img.block2_1 {
        width: 100%;
        height: 420px;
        background: url("/jp/en/sustainability/img/block2_1.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 ul.table {
        font-size: 0;
        margin: 0 -14px 0
    }

    .category_top section.block2 ul.table>li {
        position: relative;
        display: inline-block;
        width: 224px;
        margin: 0 14px;
        vertical-align: top
    }

    .category_top section.block2 ul.table>li .main_title {
        font-size: 17px;
        font-weight: bold;
        line-height: 28px;
        color: #0099D9;
        min-height: 84px;
    }

    .category_top section.block2 ul.table>li .sdgs_icon {
        height: 154px;
        font-size: 0;
        margin: 42px -3.5px 0
    }

    .category_top section.block2 ul.table>li .sdgs_icon>li {
        display: inline-block;
        width: 70px;
        margin: 0 3.5px 7px
    }

    .category_top section.block2 ul.table>li .sdgs_icon>li img {
        width: 100%
    }

    .category_top section.block2 ul.table>li .title {
        height: 42px;
        font-size: 13px;
        font-weight: bold;
        line-height: 17px;
        color: #0099D9;
        letter-spacing: 0.08em;
        margin: 28px 0 0;
        border-bottom: 1px solid #9FD9F6
    }

    .category_top section.block2 ul.table>li p {
        position: relative;
        font-size: 13px;
        line-height: 21px;
        color: #1A1A1A;
        padding: 20px 0 0;
        box-sizing: border-box
    }

    .category_top section.block2 ul.table>li .text1 {
        height: 300px
    }

    .category_top section.block2 ul.table>li .text2 {
        height: 380px
    }

    .category_top section.block2 ul.table>li .text2:after {
        content: '';
        position: absolute;
        bottom: 5px;
        left: 50%;
        transform: translateX(-50%);
        width: 42px;
        height: 49px;
        background: url("/jp/en/sustainability/img/arrow.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 ul.table>li .text3 {
        height: 300px;
        font-size: 14px;
        font-weight: bold;
        line-height: 28px;
        color: #004F99
    }

    .category_top section.block2 ul.table>li .list {
        height: 280px;
        padding: 20px 0 0;
        box-sizing: border-box
    }

    .category_top section.block2 ul.table>li .list>li {
        position: relative;
        padding-left: 14px;
        font-size: 14px;
        line-height: 28px;
        color: #1A1A1A
    }

    .category_top section.block2 ul.table>li .list>li:before {
        content: '';
        position: absolute;
        top: 12px;
        left: 0;
        width: 7px;
        height: 2px;
        background-color: #0099D9
    }

    .category_top section.block2 ul.table>li .kpi {
      padding: 20px 0 0;
      height: 333px;
    }
    .category_top section.block2 ul.table>li .kpi strong{
      font-weight: bold;
    }
      .category_top section.block2 ul.table>li .kpi small{
        display: block;
        font-size: 13px;
        line-height: 21px;
        color: #787878;
      }
    .category_top section.block2 ul.table>li .kpi p {
      padding: 0;
      height: auto;
      line-height: 28px;
      font-size: 15px;
    }
    .category_top section.block2 ul.table>li .kpi .list {
      padding: 0;
      height: auto;
    }
    .category_top section.block2 ul.table>li .kpi ol{
      padding-left: 20px;
      line-height: 28px;
      font-size: 15px;
    }
    .category_top section.block2 ul.table>li .kpi ol li{
      list-style: decimal;
    }

    .category_top section.block2 ul.table>li .category_header {
        position: relative;
        height: 168px
    }

    .category_top section.block2 ul.table>li .category_header .title_wrap {
        border-bottom: 3px solid #9FD9F6;
        height: 80px;
        text-align: center;
        box-sizing: border-box;
        padding: 10px 0 0
    }

    .category_top section.block2 ul.table>li .category_header .title_wrap .ja {
        font-size: 17px;
        line-height: 22px;
        color: #0099D9;
        letter-spacing: 0.12em
    }

    .category_top section.block2 ul.table>li .category_header .title_wrap .en {
        font-family: 'Josefin Sans', sans-serif;
        font-size: 23px;
        line-height: 30px;
        color: #9FD9F6;
        margin: 26px 0 0
    }

    .category_top section.block2 ul.table>li .category_header:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 2px;
        height: 84px;
        background: url("/jp/en/sustainability/img/dot_line.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 ul.table>li .link {
        display: block;
        width: 308px;
        box-sizing: border-box;
        border: 1px solid #E6E6E6
    }

    .category_top section.block2 ul.table>li .link .name {
        position: relative;
        height: 56px;
        font-size: 15px;
        font-weight: bold;
        line-height: 18px;
        letter-spacing: 0.04em;
        color: #666;
        box-sizing: border-box;
        border-bottom: 1px solid #E6E6E6
    }

    .category_top section.block2 ul.table>li .link .name:after {
        content: '';
        position: absolute;
        top: 50%;
        right: 20px;
        width: 14px;
        height: 14px;
        transform: translateY(-50%);
        background: url("/jp/en/img/common/arrow.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 ul.table>li .link .name span {
        position: absolute;
        top: 50%;
        left: 28px;
        width: 238px;
        transform: translateY(-50%)
    }

    .category_top section.block2 ul.table>li .link .img {
        width: 100%;
        height: 196px;
        box-sizing: border-box;
        padding: 28px;
        position: relative
    }

    .category_top section.block2 ul.table>li .link .img span {
        height: 1px;
        width: 1px;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        clip: rect(1px, 1px, 1px, 1px);
        overflow: hidden
    }

    .category_top section.block2 ul.table>li:nth-child(1) .link .img {
        background: url("/jp/en/sustainability/img/block2_2.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block2 ul.table>li:nth-child(2) .category_header:after {
        display: none
    }

    .category_top section.block2 ul.table>li:nth-child(3) .category_header {
        margin-left: -252px
    }

    .category_top section.block2 ul.table>li:nth-child(3) .link {
        margin-left: -168px
    }

    .category_top section.block2 ul.table>li:nth-child(3) .link .img {
        background: url("/jp/en/sustainability/img/block2_3.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block2 ul.table>li:nth-child(4) .link {
        margin-left: -84px
    }

    .category_top section.block2 ul.table>li:nth-child(4) .link .img {
        background: url("/jp/en/sustainability/img/block2_4.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block2 ul.table>li .fixed_title {
        position: fixed;
        top: -84px;
        width: 224px;
        height: 84px;
        background-color: #E6F4FA;
        border-bottom: 2px solid #0099D9;
        box-sizing: border-box;
        transition: all 300ms 0s ease
    }

    .category_top section.block2 ul.table>li .fixed_title.on {
        top: 0
    }

    .category_top section.block2 ul.table>li .fixed_title span {
        position: absolute;
        bottom: 20px;
        left: 0;
        width: 100%;
        font-size: 13px;
        font-weight: bold;
        line-height: 18px;
        color: #0099D9;
        text-align: center
    }

    .pc_none {
        display: none !important
    }
}

@media screen and (max-width: 767px) {

    html,
    body {
        /*font-size: .26667vw*/
    }

    body {
        min-width: 320px
    }

    .kv {
        background: url("/jp/en/sustainability/img/sp/kv.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 {
        margin-top: 56px
    }

    .category_top section.block1 ul li {
        margin: 0 0 48px
    }

    .category_top section.block1 ul li .list_header {
        position: relative;
        height: 29.86667vw
    }

    .category_top section.block1 ul li .list_header .title {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        width: 53.33333vw;
        font-size: 15px;
        font-weight: bold;
        line-height: 28px;
        color: #1A1A1A;
        letter-spacing: 0.04em
    }

    .category_top section.block1 ul li .list_header .img {
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        width: 29.6vw;
        height: 22.4vw
    }

    .category_top section.block1 ul li p {
        font-size: 15px;
        line-height: 28px;
        color: #1A1A1A
    }

    .category_top section.block1 ul li p strong {
        font-weight: bold
    }

    .category_top section.block1 ul li:nth-child(1) .img {
        background: url("/jp/en/sustainability/img/block1_1.jpg") no-repeat center center;
        background-size: auto 22.4vw
    }

    .category_top section.block1 ul li:nth-child(2) .img {
        background: url("/jp/en/sustainability/img/sp/block1_2.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 ul li:nth-child(3) .img {
        background: url("/jp/en/sustainability/img/sp/block1_3.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block1 ul li a {
        position: relative;
        display: inline-block;
        border: 1px solid #CCCCCC;
        margin: 40px 0 0;
        font-size: 11px;
        font-weight: bold;
        line-height: 15px;
        color: #0099D9;
        letter-spacing: 0.04em;
        padding: 14px 64px 13px 21px
    }

    .category_top section.block1 ul li a:after {
        content: '';
        position: absolute;
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
        width: 14px;
        height: 14px
    }

    .category_top section.block1 ul li a.link:after {
        background: url("/jp/en/img/common/link.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block1 ul li a.plink_down:after {
        background: url("/jp/en/img/common/plink_down.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 .img.block2_1 {
        width: 100vw;
        height: 142vw;
        background: url("/jp/en/sustainability/img/sp/block2_1.png") no-repeat center center;
        background-size: 100% auto;
        margin: 0 -5.06667vw
    }

    .category_top section.block2 .plink_list {
        border: 3px solid #0099D9;
        padding: 3.73333vw 7.46667vw
    }

    .category_top section.block2 .plink_list li {
        font-size: 15px;
        font-weight: bold;
        line-height: 20px;
        border-bottom: 1px solid #9FD9F6;
        color: #0099D9
    }

    .category_top section.block2 .plink_list li a {
        position: relative;
        display: block;
        padding: 11px 0
    }

    .category_top section.block2 .plink_list li a:after {
        content: '';
        position: absolute;
        top: 50%;
        right: -2px;
        transform: translateY(-50%);
        width: 14px;
        height: 14px;
        background: url("/jp/en/img/common/plink_down.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 .plink_list li a span {
        display: inline-block;
        width: 20px;
        font-family: 'Josefin Sans', sans-serif;
        font-size: 18px;
        font-weight: 400
    }

    .category_top section.block2 .plink_list li:last-child {
        border-bottom: none
    }

    .category_top section.block2 .table {
        margin: 0 0 84px
    }

    .category_top section.block2 .table>li {
        margin: 84px 0 0;
        border-top: 3px solid #0099D9
    }

    .category_top section.block2 .table>li .main_title {
        font-size: 19px;
        font-weight: bold;
        line-height: 32px;
        color: #0099D9;
        padding: 40px 0
    }

    .category_top section.block2 .table>li .main_title span {
        display: inline-block;
        width: 30px;
        font-family: 'Josefin Sans', sans-serif;
        font-size: 30px;
        font-weight: 400;
        line-height: 32px;
        text-align: center
    }

    .category_top section.block2 .table>li .sdgs_icon {
        font-size: 0;
        margin: 0 -3.5px
    }

    .category_top section.block2 .table>li .sdgs_icon li {
        display: inline-block;
        width: 13.06667vw;
        margin: 0 3.5px 7px
    }

    .category_top section.block2 .table>li .sdgs_icon li img {
        width: 100%
    }

    .category_top section.block2 .table>li .title {
        margin: 28px 0 0;
        font-size: 13px;
        font-weight: bold;
        line-height: 17px;
        color: #0099D9;
        letter-spacing: 0.08em;
        padding: 0 0 20px;
        border-bottom: 1px solid #9FD9F6
    }

    .category_top section.block2 .table>li p {
        position: relative;
        font-size: 15px;
        line-height: 28px;
        color: #1A1A1A;
        padding: 20px 0 0
    }

    .category_top section.block2 .table>li p.text2 {
        padding-bottom: 48px;
        margin-bottom: -7.46667vw
    }

    .category_top section.block2 .table>li p.text2:after {
        content: '';
        position: absolute;
        bottom: 2.66667vw;
        left: 50%;
        transform: translateX(-50%);
        width: 7.46667vw;
        height: 7.46667vw;
        width: 28px;
        height: 28px;
        background: url("/jp/en/sustainability/img/sp/arrow.png") no-repeat center center;
        background-size: auto 100%
    }

    .category_top section.block2 .table>li p.text3 {
        font-size: 17px;
        font-weight: bold;
        color: #004F99
    }

    .category_top section.block2 .table>li .list {
        padding: 20px 0 0;
        box-sizing: border-box
    }

    .category_top section.block2 .table>li .list>li {
        position: relative;
        padding-left: 14px;
        font-size: 15px;
        line-height: 28px;
        color: #1A1A1A
    }

    .category_top section.block2 .table>li .list>li:before {
        content: '';
        position: absolute;
        top: 12px;
        left: 0;
        width: 7px;
        height: 2px;
        background-color: #0099D9
    }

    .category_top section.block2 ul.table>li .kpi {
      padding: 20px 0 0;
    }
    .category_top section.block2 ul.table>li .kpi strong{
      font-weight: bold;
    }
    .category_top section.block2 ul.table>li .kpi small{
      display: block;
      font-size: 13px;
      line-height: 21px;
      color: #787878;
    }
    .category_top section.block2 ul.table>li .kpi p {
      padding: 0;
      height: auto;
      line-height: 28px;
      font-size: 15px;
    }
    .category_top section.block2 ul.table>li .kpi .list {
      padding: 0;
    }
    .category_top section.block2 ul.table>li .kpi ol{
      padding-left: 20px;
      line-height: 28px;
      font-size: 15px;
    }
    .category_top section.block2 ul.table>li .kpi ol li{
      list-style: decimal;
    }

    .category_top section.block2 .table>li .category_header {
        margin: 60px 0 22px
    }

    .category_top section.block2 .table>li .category_header .title_wrap {
        position: relative;
        height: 50px
    }

    .category_top section.block2 .table>li .category_header .title_wrap .ja {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        font-size: 17px;
        line-height: 28px;
        color: #0099D9;
        letter-spacing: 0.12em
    }

    .category_top section.block2 .table>li .category_header .title_wrap .en {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        font-family: 'Josefin Sans', sans-serif;
        font-size: 23px;
        font-weight: 600;
        line-height: 28px;
        color: #9FD9F6
    }

    .category_top section.block2 .table>li .link {
        display: block;
        box-sizing: border-box;
        border: 1px solid #E6E6E6
    }

    .category_top section.block2 .table>li .link .name {
        position: relative;
        height: 56px;
        font-size: 15px;
        font-weight: bold;
        line-height: 18px;
        letter-spacing: 0.04em;
        color: #666;
        box-sizing: border-box;
        border-bottom: 1px solid #E6E6E6
    }

    .category_top section.block2 .table>li .link .name:after {
        content: '';
        position: absolute;
        top: 50%;
        right: 28px;
        width: 5px;
        height: 10px;
        transform: translateY(-50%);
        background: url("/jp/en/img/common/arrow.png") no-repeat center center;
        background-size: 100% auto
    }

    .category_top section.block2 .table>li .link .name span {
        position: absolute;
        top: 50%;
        left: 28px;
        width: 238px;
        transform: translateY(-50%)
    }

    .category_top section.block2 .table>li .link .img {
        width: 100%;
        height: 52.26667vw;
        box-sizing: border-box;
        padding: 28px;
        position: relative
    }

    .category_top section.block2 .table>li .link .img span {
        height: 1px;
        width: 1px;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        clip: rect(1px, 1px, 1px, 1px);
        overflow: hidden
    }

    .category_top section.block2 .table>li:nth-child(1) .link .img {
        background: url("/jp/en/sustainability/img/sp/block2_2.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block2 .table>li:nth-child(3) .link .img {
        background: url("/jp/en/sustainability/img/sp/block2_3.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block2 .table>li:nth-child(4) .link .img {
        background: url("/jp/en/sustainability/img/sp/block2_4.jpg") no-repeat center center;
        background-size: cover
    }

    .category_top section.block2 .table>li .fixed_title {
        display: none
    }

    .sp_none {
        display: none !important
    }
}

p.esg_data{
    padding-top: 48px;
    }
    p.esg_data a.pdf{
        position: relative;
        display: inline-block;
        font-size: 13px;
        font-weight: bold;
        line-height: 17px;
        color: #0099D9;
        letter-spacing: 0.04em;
        padding: 12px 52px 12px 35px;
        border: 1px solid #ccc;
        background-color: #fff;
    }
    p.esg_data a.pdf:before{
        content: '';
        position: absolute;
        top: 14px;
        left: 14px;
        width: 14px;
        height: 14px;
        background: url('/jp/ja/img/common/arrow.png') no-repeat center center;
        background-size: 100% auto;
    }
    p.esg_data a.pdf:after{
        content: '';
        position: absolute;
        top: 14px;
        right: 14px;
        width: 14px;
        height: 14px;
        background: url('/jp/ja/img/common/pdf.png') no-repeat center center;
        background-size: 100% auto;
    }