* {    -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: 80px;    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    }}@media screen and (max-width: 480px) {    .sustainability__headingTitle {        margin-bottom:30px    }}.sustainability__headingDoc {    font-size: 16px;    font-weight: 500;    line-height: 1.8}.sustainability__logo {    text-align: center;    margin-bottom: 60px}.sustainability__logo>img {    max-width: 634px}@media screen and (max-width: 768px) {    .sustainability__logo {        margin-bottom:40px    }}@media screen and (max-width: 480px) {    .sustainability__logo {        margin-bottom:30px    }}.sustainability__typeTitle>span {    margin-bottom: 68px}@media screen and (max-width: 600px) {    .sustainability__typeTitle>span {        margin-bottom:40px    }}.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:30px    }}.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.6}.sustainability__list {    margin: 64px 0 0;    display: grid;    grid-template-columns: repeat(3,1fr);    gap: 30px}@media screen and (max-width: 1200px) {    .sustainability__list {        grid-template-columns:repeat(2,1fr)    }}@media screen and (max-width: 768px) {    .sustainability__list {        margin:8.5333333333vw 0 0;        grid-template-columns: repeat(1,1fr);        gap: 3.2vw    }}.sustainability__listItem {    border-radius: 8px;    background: #f6f6f6;    transition: background .2s ease-in-out}.sustainability__listItem:hover {    background: #E7EAEF}.sustainability__listItemIcon {    display: block;    width: 36px;    height: 36px}@media screen and (max-width: 480px) {    .sustainability__listItemIcon {        width:8.5333333333vw;        height: 8.5333333333vw    }}.sustainability__listItemIcon svg {    display: block;    width: 16px;    height: 16px}.sustainability__listItemLabel {    font-family: Noto Sans JP;    font-weight: 900;    font-size: 18px}@media screen and (max-width: 480px) {    .sustainability__listItemLabel {        font-size:4.8vw    }}.sustainability__listItemLabel--narrowed {    letter-spacing: -1px}@media screen and (max-width: 480px) {    .sustainability__listItemLabel--narrowed {        letter-spacing:-.5333333333vw    }}.sustainability__listItemLink {    display: flex;    justify-content: space-between;    align-items: center;    padding: 0 20px 0 40px;    height: 100px}@media screen and (max-width: 480px) {    .sustainability__listItemLink {        border-radius:2.1333333333vw;        padding: 0 6.4vw;        height: 18.6666666667vw    }}