.sp-only {
  display: none;
}

@media screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
  img {
    max-width: 100%;
    height: auto;
  }
}

/*------------------------------------------------------------
csr common
------------------------------------------------------------*/

.coverText p:after {
  display: none;
}
.coverText p.coverTextTitle {
  text-shadow: none;
  font-size: 1.8rem;
}
@media (max-width: 767px) {
  .coverText p.coverTextTitle {
    font-size: 1.3rem;
  }
}
.coverTextTitle span {
  background-color: #7b94a6;
  /* min-width: 176px; */
  display: inline-block;
  padding: 5px 10px;
  text-align: center;
}
@media (max-width: 767px) {
  .coverTextTitle span {
    padding: 2vw;
  }
}
.coverText > * {
  text-align: left;
}
.coverText {
  width: 960px;
  margin: 0 auto;
  padding-top: 77px;
}
@media (max-width: 767px) {
  .coverText {
    /* position: relative;
    top: -42vw; */
    width: 100%;
    margin: 0;
    padding: 3vw 2vw 3vw 3vw;
  }
}
@media (max-width: 767px) {
  .cover {
    min-height: 45vw;
  }
  .sp-none{
  display: none;
    
}

}
.coverText h1 {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .coverText h1 {
    margin-top: 3vw;
    color: #000;
    text-shadow: none;
    font-weight: 700;
    font-family: 'ヒラギノ角ゴ Pro W6', 'HiraKakuPro-W6';
  }
}
.contsLead {
  margin-top: 58px;
  text-align: center;
  font-size: 1.8rem;
  color: #46525f;
  line-height: 2.2;
}
@media (max-width: 767px) {
  .contsLead {
    margin-top: 7vw;
    text-align: left;
    font-size: 1.3rem;
  }
}
.contsLead em {
  font-weight: 700;
  font-style: normal;
  font-family: 'ヒラギノ角ゴ Pro W6', 'HiraKakuPro-W6';
}
.proTitle {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .proTitle {
    margin-bottom: 5vw;
  }
}
section + section {
  margin-top: 32px;
}
@media (max-width: 767px) {
  section + section {
    margin-top: 10vw;
  }
}
.textImgContainer {
  overflow: hidden;
  margin-bottom:0px;
}
@media (max-width: 767px) {
  .textImgContainer {
    /* margin-bottom:40px; */
  }
}

@media (max-width: 767px) {
  .textImgContainer:last-child{
    margin-bottom:55px;
  }
}

.text a {
  color: #003f98;
  text-decoration: underline;
  text-decoration-color: #003f98;
}
/*------------------------------------------------------------
index
------------------------------------------------------------*/
.csr-top {
  padding-top: 70px;
}
.csr-top {
  padding-top: 23.5px;
}
.csr-bottom {
  padding-top: 40px;
}

.box-portal{
  overflow: hidden;
}
.box-portal .i-con img{
	width: 12%;
}

@media (max-width: 767px) {
	.box-portal .i-con img   {
		padding-top: 15px;
	}
}

.number {
	padding-top: 30px;
}

@media (max-width: 767px) {
	.number   {
		padding-top: 0;
		padding-right: 10px;
	}
}
.box-portal.logo .i-con {
	padding: 30px 0 20px 0;
}

@media (max-width: 767px) {
	.box-portal.logo .i-con   {
		padding: 0px;
		width: 100%;
	}
}

@media (max-width: 767px)  {
	.box-portal .i-con a {
		padding: 0;
	}
}

.box-portal.logo a {
	padding: 15px 50px 15px 50px;
}

@media (max-width: 767px) {
	.box-portal a, .box-portal.logo a {
		padding: 10px;
	}
}

.eq01 img {
	padding-top: 28px; 
}


li.box-portal.logo:hover {
  background: #e8f1f9;
}



.subTitle {
	padding-top: 6px;
	padding-left: 50px;
	display: contents;
}

.subTitle p {
	font-size: 15px;
	padding-top: 13px;
}

@media (max-width: 767px) {
  .subTitle {
	padding-top: 10px;
    padding-left: 0;
  }
  .subTitle p {
	padding-top: 10px;
    font-size: 12px;
  }
}

.subTitle img {
  width: 22%;
  padding: 0 8px 0 15px;
}

@media (max-width: 767px) {
  .subTitle img {
	width: 30%;
	  display: block;
	  padding: 10px 0 0 0;
}
}

.sp {
	display: contents;
	flex-direction: column;
}
@media (max-width: 767px) {
  .sp {
	  display: flex;
	  width: 50%;
 }
	.text-portal {
		width: 100%;
		padding-left: 0;
		
	}
}

.scale:hover{
  transform: scale(1.1, 1.1);
}

/*------------------------------------------------------------
commitment
------------------------------------------------------------*/

/* @media (max-width: 767px) {
  .topCommitment .coverText {
    top: -51vw;
  }
}
@media (max-width: 767px) {
  .topCommitment .cover {
    margin-top: 45vw;
  }
} */
@media (max-width: 767px) {
  .topCommitment .coverText h1 {
    font-size: 1.9rem;
  }
}
.topCommitment .text {
  font-size: 1.6rem;
  color: #46525f;
  line-height: 2.4;
}
@media (max-width: 767px) {
  .topCommitment .text {
    font-size: 1.2rem;
  }
}
.topCommitment .cover {
  background: url(../img/csr/topCommitment/main_img.png) no-repeat center;
  background-size: cover;
}
@media (max-width: 767px) {
  .topCommitment .cover {
    padding: 7.5vw 0;
  }
}
.topCommitment .coverTextSigniture {
  display: flex;
  align-items: center;
  margin-top: 6px;
}
@media (max-width: 767px) {
  .topCommitment .coverTextSigniture {
    text-shadow: none;
    color: #000;
  }
}
.topCommitment .coverTextSigniture img {
  padding-left: 10px;
}
@media (max-width: 767px) {
  .topCommitment .coverTextSigniture img {
    width: auto;
    height: 7vw;
  }
}
.topCommitment .conts {
  margin-top: 65px;
}
@media (max-width: 767px) {
  .topCommitment .conts {
    margin-top: 40px;
  }
}
.topCommitment .greeting {
  text-align: right;
  margin-top: 10px;
  color: #46525f;
}
.topCommitment .greetingDate {
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .topCommitment .greetingDate {
    font-size: 1.2rem;
  }
}
.topCommitment .greetingSigniture {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-top: 10px;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .topCommitment .greetingSigniture {
    font-size: 1.2rem;
  }
}
.topCommitment .greetingSigniture img {
  padding-left: 10px;
}
@media (max-width: 767px) {
  .topCommitment .greetingSigniture img {
    width: auto;
    height: 6vw;
  }
}
/*------------------------------------------------------------
sustainability
------------------------------------------------------------*/
.sustainability .text {
  font-size: 1.6rem;
  color: #46525f;
  line-height: 2.4;
}
@media (max-width: 767px) {
  .sustainability .text {
    font-size: 1.2rem;
  }
}
.sustainability .text em {
  font-weight: 700;
  font-style: normal;
  font-family: 'ヒラギノ角ゴ Pro W6', 'HiraKakuPro-W6';
}
.sustainability .text.tCenter {
  text-align: center;
}
.sustainability .cover {
  background: url(../img/csr/sustainability/main_img.png) no-repeat center;
  background-size: cover;
}
@media (max-width: 767px) {
  .sustainability .cover {
    padding: 7.5vw 0;
  }
}
.sustainability .imgCaption {
  display: block;
  margin-top: 5px;
  font-size: 1.4rem;
  color: #46525f;
}
@media (max-width: 767px) {
  .sustainability .imgCaption {
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .sustainability .hasImg {
    width: 50%;
  }
}
.hasImg{
  letter-spacing: normal;
}

.sustainability .hasImg.imgLeft {
  float: left;
  margin-right: 20px;
}
.sustainability .hasImg.imgRight {
  float: right;
  margin-left: 20px;
}
.sustainability .contribution .text.tCenter {
  margin: 42px 0;
}
@media (max-width: 767px) {
  .sustainability .contribution .text.tCenter {
    margin: 6vw 0;
  }
}
.sustainability .contribution {
  margin-top: 95px;
}
@media (max-width: 767px) {
  .sustainability .contribution {
    margin-top: 7vw;
  }
}
.sustainability .textNote {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.7;
}
@media (max-width: 767px) {
  .sustainability .textNote {
    font-size: 1.1rem;
  }
}
.sustainability .framework .textNote {
  margin-top: 15px;
}
.sustainability .framework .textImgContainer .text {
  overflow: auto;
}
@media (max-width: 767px) {
  .sustainability .framework .textImgContainer .text {
    overflow: initial;
  }
}

/*------------------------------------------------------------
environmental
------------------------------------------------------------*/
.environmental .text {
  font-size: 1.6rem;
  color: #46525f;
  line-height: 2.4;
}
@media (max-width: 767px) {
  .environmental .text {
    font-size: 1.2rem;
  }
}
.environmental .text em {
  font-weight: 700;
  font-style: normal;
  font-family: 'ヒラギノ角ゴ Pro W6', 'HiraKakuPro-W6';
}
.environmental .text.tCenter {
  text-align: center;
}
.environmental .cover {
  background: url(../img/csr/environmental/main_img.png) no-repeat center;
  background-size: cover;
}
@media (max-width: 767px) {
  .environmental .cover {
    padding: 7.5vw 0;
  }
}
.environmental .imgCaption {
  display: block;
  margin-top: 5px;
  font-size: 1.4rem;
  color: #46525f;
}
@media (max-width: 767px) {
  .environmental .imgCaption {
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .environmental .hasImg {
    width: 50%;
  }
}
.environmental .hasImg.imgLeft {
  float: left;
  margin-right: 20px;
}
.environmental .hasImg.imgRight {
  float: right;
  margin-left: 20px;
}
.environmental .protection {
  margin-top: 95px;
}
@media (max-width: 767px) {
  .environmental .protection {
    margin-top: 7vw;
  }
}
.environmental .textNote {
  display: inline-block;
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.7;
}
@media (max-width: 767px) {
  .environmental .textNote {
    font-size: 1.1rem;
  }
}
/*------------------------------------------------------------
quality
------------------------------------------------------------*/
.quality .text {
  font-size: 1.6rem;
  color: #46525f;
  line-height: 2.4;
}
@media (max-width: 767px) {
  .quality .text {
    font-size: 1.2rem;
  }
}
.quality .text em {
  font-weight: 700;
  font-style: normal;
  font-family: 'ヒラギノ角ゴ Pro W6', 'HiraKakuPro-W6';
}
.quality .text.tCenter {
  text-align: center;
}
.quality .cover {
  background: url(../img/csr/quality/main_img.png) no-repeat center;
  background-size: cover;
}
@media (max-width: 767px) {
  .quality .cover {
    padding: 7.5vw 0;
  }
}
.quality .imgCaption {
  display: block;
  margin-top: 5px;
  font-size: 1.4rem;
  color: #46525f;
}
@media (max-width: 767px) {
  .quality .imgCaption {
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .quality .hasImg {
    width: 50%;
  }
}
.quality .hasImg.imgRight {
  float: right;
  margin-left: 50px;
}
@media (max-width: 767px) {
  .quality .hasImg.imgRight {
    margin-left: 20px;
  }
}
.quality .assurance {
  margin-top: 55px;
}
@media (max-width: 767px) {
  .quality .assurance {
    margin-top: 7vw;
  }
}
.quality .specTitle {
  margin-top: 30px;
}

.quality .specTitle:nth-of-type(2),
.quality .specTitle:nth-of-type(3) {
  margin-top: 50px;
}


@media (min-width: 767px){

  .quality .specTitle{
    margin-top: 20px;
  }

  .quality .specTitle:nth-of-type(1){
    margin-top: 40px;
  }
  .quality .specTitle:nth-of-type(2){
    margin-top: 50px;
  }

}

@media (max-width: 767px) {
  .quality .specTitle:nth-of-type(2),
.quality .specTitle:nth-of-type(3) {
  margin-top: 30px;
}

.quality .specTitle:nth-of-type(1){
  margin-top: 50px;
}
}



@media (max-width: 767px) {
  .quality .specTitle {
    /* margin-top: 5vw; */
  }
}
.quality .specTitle + * {
  margin-top: 15px;
}
@media (max-width: 767px) {
  .quality .specTitle + * {
    margin-top: 3vw;
  }
}


.FoodSafety .FoodSafety-img {
	text-align: center;
	display: flex;
	justify-content: space-between;
}

.FoodSafety .textNote {
	display: inline-block;
	margin-top: 10px;
	font-size: 14px;
	line-height: 1.7;
}

@media (max-width: 767px) {
  .FoodSafety .FoodSafety-img {
    flex-wrap:wrap;
  }
  .FoodSafety .FoodSafety-img img {
      width: 48%;
      align-self: flex-start;
      display: block;
      margin-bottom: 20px;
  }
  .FoodSafety .FoodSafety-img:nth-child(3) {
      margin-bottom: 0;
  }
  .FoodSafety .textNote {
	font-size: 11px;
  }
}



/*------------------------------------------------------------
contribute
------------------------------------------------------------*/
.contribute .text {
  font-size: 1.6rem;
  color: #46525f;
  line-height: 2.4;
}
@media (max-width: 767px) {
  .contribute .text {
    font-size: 1.2rem;
  }
}
.contribute .text em {
  font-weight: 700;
  font-style: normal;
  font-family: 'ヒラギノ角ゴ Pro W6', 'HiraKakuPro-W6';
}
.contribute .text.tCenter {
  text-align: center;
}
.contribute .cover {
  background: url(../img/csr/contribute/main_img.png) no-repeat center;
  background-size: cover;
}
@media (max-width: 767px) {
  .contribute .cover {
    padding: 7.5vw 0;
  }
}
.contribute .imgCaption {
  display: block;
  margin-top: 5px;
  font-size: 1.4rem;
  color: #46525f;
}
@media (max-width: 767px) {
  .contribute .imgCaption {
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .contribute .hasImg {
    width: 50%;
  }
}
.contribute .hasImg.imgRight {
  float: right;
  margin-left: 50px; 
}
@media (max-width: 767px) {
  .contribute .hasImg.imgRight {
    margin-left: 20px;
  }
}

.contribute .hasImg.imgRight img.secondImg {
	margin-top: 15px;
}

.contribute .flexBox {
  display: flex;
  margin-top: 20px;
  margin-right: -39px;
  width: 100%;
}
@media (max-width: 767px) {
  .contribute .overseas .flexBox {
    flex-wrap: wrap;
    margin-right: -3vw;
  }
}

.contribute .overseas .flexBox .hasImg {
  width: calc(33.3333% - 39px * 2 / 3);
}
@media (max-width: 767px) {
  .contribute .overseas .flexBox .hasImg {
    width: calc(50% - 3vw * 2 / 2);
  }
}
.contribute .flexBox .hasImg {
  margin-right: 39px;
}
@media (max-width: 767px) {
  .contribute .flexBox .hasImg {
    margin-right: 3vw;
  }
  .contribute .flexBox .hasImg:nth-child(n + 3) {
    margin-top: 5vw;
  }
}
.contribute .flexBox + .text {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .contribute .flexBox + .text {
    margin-top: 5vw;
  }
}
.contribute .activity {
  margin-top: 95px;
}
@media (max-width: 767px) {
  .contribute .activity {
    margin-top: 7vw;
  }
}
@media (max-width: 767px) {
  .wfp .proTitle {
    height: 80px;
  }
}

/*------------------------------------------------------------
csr sdgs
------------------------------------------------------------*/
.sdgsBox {
  margin-top: 50px;
}
@media (max-width: 767px) {
  .sdgsBox {
    margin-top: 20.5vw;
  }
}
.sdgsHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 60px;
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .sdgsHeader {
    display: block;
    margin-top: 40px;
    padding-bottom: 4.6vw;
  }
}
@media (max-width: 767px) {
  .sdgsHeaderTitle {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .sdgsHeaderTitle img {
    width: auto;
    height: 7.5vw;
  }
}
.sdgsHeaderText {
  font-size: 18px;
}
@media (max-width: 767px) {
  .sdgsHeaderText {
    margin-top: 4vw;
    text-align: center;
    font-size: 2.7vw;
  }
}
.sdgsBody {
  display: flex;
  border-top: 1px solid #a4abb3;
  border-bottom: 1px solid #a4abb3;
}
@media (max-width: 767px) {
  .sdgsBody {
    display: block;
    border-bottom: 0;
  }
}
.sdgsIcon {
  width: 240px;
  padding: 18px 20px;
  border-right: 1px solid #a4abb3;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .sdgsIcon {
    width: auto;
    padding: 2.6vw 3.3vw;
    border-right: 0;
    border-bottom: 1px solid #a4abb3;
  }
}
.sdgsIconList {
  display: flex;
  flex-wrap: wrap;
}
.sdgsIconList li {
  width: calc(33.3% - 10px * 2 / 3);
  margin-right: 10px;
}
@media (max-width: 767px) {
  .sdgsIconList li {
    width: calc(16.6% - 2.6vw * 5 / 6);
    margin-right: 2.6vw;
  }
}
/* pc 3の倍数のmargin-right */
.sdgsIconList li:nth-child(3n) {
  margin-right: 0;
}
@media (max-width: 767px) {
  .sdgsIconList li:nth-child(3n) {
    margin-right: 2.6vw;
  }
}
/* sp 6の倍数のmargin-right */
@media (max-width: 767px) {
  .sdgsIconList li:nth-child(6n) {
    margin-right: 0;
  }
}
/* pc 4番目以降のmargin-top */
.sdgsIconList li:nth-child(n + 4) {
  margin-top: 10px;
}
@media (max-width: 767px) {
  .sdgsIconList li:nth-child(n + 4) {
    margin-top: 0;
  }
}
/* sp 7番目以降のmargin-top */
@media (max-width: 767px) {
  .sdgsIconList li:nth-child(n + 7) {
    margin-top: 2.6vw;
  }
}
.sdgsIconList li img {
  width: 60px;
  height: auto;
}
@media (max-width: 767px) {
  .sdgsIconList li img {
    width: 12vw;
    height: auto;
  }
}
.sdgsDetail {
  width: 720px;
  padding: 18px 0 18px 20px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .sdgsDetail {
    width: auto;
    padding: 4vw 0 0 0;
  }
}
.sdgsDetailList {
  list-style-type: disc;
}
.sdgsDetailList li {
  line-height: 1.7;
  margin-left: 20px;
  font-size: 16px;
}
@media (max-width: 767px) {
  .sdgsDetailList li {
    font-size: 3.4vw;
  }
}
.sdgsDetailList li + li {
  margin-top: 5px;
}
@media (max-width: 767px) {
  .sdgsDetailList li + li {
    margin-top: 1vw;
  }
}
@media (max-width: 767px) {
  .sdgs a{
    display: block;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .sp100 {
    width: 100%!important;
  }
}

@media screen and (min-width: 768px){
.pcImg{
	display:inline-block!important;
}
.spImg{
	display:none!important;
}
}

@media screen and (max-width: 767px){
.spImg{
	display:inline-block!important;
}
.pcImg{
	display:none!important;
}
}

/*------------------------------------------------------------
csr algin×sustainability
------------------------------------------------------------*/

.algin-sustainability .text-mb{
  margin-bottom: 15px;

}

.algin-sustainability .sustainability .cover {
  background: url(../img/csr/algin-sustainability_mv.jpg) no-repeat center;
  background-size: cover;
}

@media screen and (max-width: 991px){
  .proTitle{
    min-height: 40px;
    height: auto;
    line-height: 1.6;
    padding: 10px;
  }
}

.algin-sustainability .cover{
  position: relative;

}
.logo-item{
  display: flex;
  position: absolute;
  top: 88%;
  right: 1%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  /* background: #fff; */
  /* padding: 40px; */
  /* border-top: 10px solid #7b94a6; */
}

.logo-item li:first-child{
  margin-right: 15px;
}
.logo-item li a{
  transition: 0.8s;
}
.logo-item li a:hover{
  opacity: 0.9;
}

.logo-item li img{
/* box-shadow: 5px 5px 7px #17060b; */
}

@media screen and (max-width: 991px){
  .logo-item li img{
    width: 100%;
  }
  .logo-item{
    justify-content:center;
    width: 40%;
  }
}

@media screen and (min-width: 992px){
  .logo-item{
    right: 6%;
  }
}
@media screen and (max-width: 767px){
  .logo-item{
  padding: 15px;
  /* border-top: 5px solid #7b94a6; */
  right: 5%;
  width: 50%;
  }
  .algin-sustainability .proTitle {
    font-size: 1.7rem;

  }
}