* {    -moz-box-sizing: border-box;    -webkit-box-sizing: border-box;    box-sizing: border-box}html,body {    overflow-x: hidden;    width: 100%}body * {    font-family: Roboto,YakuHanJP,Noto Sans JP,sans-serif;    -webkit-font-smoothing: antialiased}body {    overflow: hidden;    width: 100vw}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {    margin: 0;    padding: 0;    border: 0;    font-size: 100%;    font: inherit;    vertical-align: baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {    display: block}body {    line-height: 1}ol,ul {    list-style: none}blockquote,q {    quotes: none}blockquote:before,blockquote:after,q:before,q:after {    content: "";    content: none}table {    border-collapse: collapse;    border-spacing: 0}html {    font-size: calc(15px + .390625vw)}img {    width: 100%;    min-height: 100%;    max-width: 100%;    max-height: 100%;    object-fit: cover}a {    text-decoration: none;    color: inherit}.pc {    display: block}@media screen and (max-width: 768px) {    .pc {        display:none    }}@media screen and (max-width: 480px) {    .pc {        display:none    }}.tablet {    display: none}@media screen and (max-width: 768px) {    .tablet {        display:block    }}.sp {    display: none}@media screen and (max-width: 480px) {    .sp {        display:block    }}.link {    display: inline-block}.sustainability__inner {    padding: 120px 0 132px;    margin: 0 auto;    width: min(83.3333333333vw,1200px)}@media screen and (max-width: 1000px) {    .sustainability__inner {        padding:100px 0 120px    }}@media screen and (max-width: 768px) {    .sustainability__inner {        padding:80px 0 112px    }}@media screen and (max-width: 480px) {    .sustainability__inner {        width:92vw;        padding: 62px 0 94px    }}.sustainability__heading {    margin-bottom: 84px}@media screen and (max-width: 768px) {    .sustainability__heading {        margin-bottom:8vw    }}@media screen and (max-width: 480px) {    .sustainability__heading {        margin-bottom:60px    }}.sustainability__headingTitle {    font-weight: 900;    font-size: 68px;    line-height: 1.6;    color: #202121;    margin-bottom: 60px;    line-height: 1.4}@media screen and (max-width: 1200px) {    .sustainability__headingTitle {        font-size:65px    }}@media screen and (max-width: 1000px) {    .sustainability__headingTitle {        font-size:63px    }}@media screen and (max-width: 768px) {    .sustainability__headingTitle {        font-size:8.5333333333vw    }}@media screen and (max-width: 480px) {    .sustainability__headingTitle {        font-size:32px;        line-height: 1.4    }}@media screen and (max-width: 1200px) {    .sustainability__headingTitle {        font-size:59px    }}@media screen and (max-width: 1000px) {    .sustainability__headingTitle {        font-size:min(5.6vw,56px);        line-height: 1.6    }}@media screen and (max-width: 768px) {    .sustainability__headingTitle {        font-size:32px;        margin-bottom: 40px    }}.sustainability__headingDoc {    font-size: 16px;    font-weight: 500;    line-height: 1.8}.sustainability__typeTitle>span {    margin-bottom: 40px}@media screen and (max-width: 600px) {    .sustainability__typeTitle>span {        margin-bottom:40px    }}.sustainability__imgList {    display: flex;    flex-wrap: wrap}@media screen and (max-width: 480px) {    .sustainability__imgList {        margin:0 24px 60px    }}@media screen and (max-width: 768px) {    .sustainability__imgList li {        width:50%    }}.sustainability__imgListDesc {    padding-top: 40px;    font-size: 16px;    font-weight: 500;    line-height: 1.8}@media screen and (max-width: 480px) {    .sustainability__imgListDesc {        padding-top:0    }}.sustainability__imgListSpacer {    margin-bottom: 60px}.sustainability__sustainList {    margin-bottom: 120px}@media screen and (max-width: 600px) {    .sustainability__sustainList {        margin-bottom:60px    }}.sustainability__sustainList>li {    margin-bottom: 60px}@media screen and (max-width: 600px) {    .sustainability__sustainList>li {        margin-bottom:40px    }}.sustainability__sustainListTitle {    font-size: 24px;    font-weight: 900;    color: #065fd4;    margin-bottom: 20px;    line-height: 1.5}.sustainability__sustainListDesc {    font-size: 16px;    font-weight: 500;    line-height: 1.8}.sustainability__sustainListDescSubtitle {    font-size: 20px;    font-weight: 700;    margin-bottom: 20px}.sustainability__sustainListImg {    margin-top: 20px;    text-align: center}@media screen and (max-width: 480px) {    .sustainability__sustainListImg {        text-align:center    }}.sustainability__sustainListImg img {    object-fit: scale-down;    margin-bottom: 20px}.sustainability__sustainListImgList {    display: flex;    gap: 10px;    margin-bottom: 20px}@media screen and (max-width: 480px) {    .sustainability__sustainListImgList {        flex-wrap:wrap    }}.sustainability__sustainListImgList img {    width: 50%;    object-fit: scale-down}@media screen and (max-width: 480px) {    .sustainability__sustainListImgList img {        width:100%    }}.sustainability__sustainListSubList {    font-size: 16px;    line-height: 1.7;    margin-bottom: 0}.sustainability__sustainListSubList li {    border-top: solid 1px #dbe0df;    padding: 20px 0}.sustainability__sustainListSubList li .heading {    font-weight: 700;    margin-bottom: 8px}@media screen and (max-width: 600px) {    .sustainability__sustainListSubList li .heading {        margin-bottom:20px    }}.sustainability__sustainListSubList li .heading .date,.sustainability__sustainListSubList li .heading .title {    margin-right: 10px}.sustainability__sustainListSubList li .heading .title a,.sustainability__sustainListSubList li .desc a {    color: #0026c4;    text-decoration: underline}.sustainability__sustainListSubList li:last-child {    border-bottom: solid 1px #dbe0df}.sustainability__diversity {    overflow: auto;    margin-bottom: 120px}.sustainability__diversityTable {    width: 100%;    white-space: nowrap}.sustainability__diversityTable caption,.sustainability__diversityTable th,.sustainability__diversityTable td {    font-size: 16px;    vertical-align: middle;    padding: 24px}@media screen and (max-width: 600px) {    .sustainability__diversityTable caption,.sustainability__diversityTable th,.sustainability__diversityTable td {        font-size:12px    }}.sustainability__diversityTable caption {    background: #3B79C9;    color: #fff;    height: 60px;    line-height: 60px;    font-size: 20px;    font-weight: 900;    text-align: left;    padding: 0 20px}@media screen and (max-width: 600px) {    .sustainability__diversityTable caption {        font-size:12px    }}.sustainability__diversityTable tr {    height: 84px}.sustainability__diversityTable tr:nth-child(odd) {    background: #f2f3f5}.sustainability__diversityTable tr:last-child {    border-bottom: 1px solid #f2f3f5}.sustainability__diversityTable th {    text-align: left;    font-weight: 900}.sustainability__diversityTable td {    text-align: right;    padding-left: 0}.sustainability__diversityTable th {    background-color: #3b79c9;    color: #fff;    font-size: 16px;    font-weight: 900;    text-align: right;    padding-right: 90px}@media screen and (max-width: 480px) {    .sustainability__diversityTable th {        padding:24px 30px 24px 20px    }}.sustainability__diversityTable td {    line-height: 1.8;    padding: 16px 60px 16px 0}@media screen and (max-width: 480px) {    .sustainability__diversityTable td {        padding:24px 30px 24px 20px    }}.sustainability__diversityTable td:first-child {    text-align: left;    padding: 30px 30px 30px 20px;    font-weight: 900}