@charset "utf-8";
/*
 * page.css
 * 
 */

.home .hdL .eng {
  font-size: 9.5rem;
}

.messageSection {
  padding: 8rem 0 16rem;
}
.messageSection .inner{
  max-width: 115rem;
}
.messageSection .hdL {
  position: relative;
  z-index: 2;
  margin-bottom: -4rem;
}

.messageDisplay {
  position: relative;
  margin: 0 auto;
  max-width: 115.2rem;
}
.messageDisplay .display {
  display: flex;
  overflow: hidden;
  border-radius: 6rem;
  box-shadow: 0 2rem 5rem rgba(160, 0, 0, 0.16);
}
.messageDisplay .img {
  width: 50%;
}
.messageDisplay .info {
  padding: 7rem 6.8rem 4.6rem;
  width: 50%;
}
.messageDisplay .hdM {
  margin-bottom: 1.2rem;
} 
.messageDisplay .hdM .foucs {
  line-height: 1.32;
    font-size: 3.4rem;
    letter-spacing: 0.15rem;
    font-weight: 800;
}
.messageDisplay .hdM .sub {
  color: #000;
}
.messageDisplay .txt {
  line-height: 1.785;
  font-weight: 500;
  font-size: 1.4rem;
}
.messageDisplay .message {
  margin-top: 2.7rem;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 1.5rem;
}
.messageDisplay .message .name {
  display: block;
  font-size: 2.6rem;
  margin-top: .5rem;
}
.messageDisplay .btn {
  margin-top: 3rem;
}

.aboutSection {
  overflow: hidden;
  position: relative;
  padding: 14rem 0;
  background-image: radial-gradient(#FFFFFF 0%, #FFFBEB 30%, #FFF8E5 75%, #FFEDBE 100%);
  background-size: 125%;
}
.aboutSection .inner {
  max-width: 150rem;
}
.aboutSection .hdL {
  margin: -3rem 0 3rem;
}
.aboutSection .hdM {
  margin-bottom: 2.5rem;
}
.aboutSection .hdM .foucs {
  font-size: 2.8rem;
  font-weight: bold;
}
.aboutSection .hdM .sub {
  color: #000;
}

.aboutDisplay {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 140rem;
}
.aboutDisplay > .info {
  padding: 0 7rem 0 8rem;
  width: 40%;
}
.aboutDisplay > .boxLinks {
  width: calc(60% + 50vw - 60rem);
  margin-right: calc(70rem - 50vw);
}
.aboutDisplay .txt {
  line-height: 2.14;
  font-size: 1.4rem;
}
.aboutDisplay .btn {
  margin-top: 2.8rem;
}
.aboutDisplay .aboutSonPages {
  border-radius: 2rem 0 0 2rem;
}

.serviceSection {
  padding: 13.5rem 0 18rem;
}
.serviceSection .inner{
  max-width: 119rem;
}
.serviceSection .title {
  position: relative;
  text-align: center;
  margin-bottom: 5rem;
}
.serviceSection .btn {
  margin-top: 8rem;
  text-align: center;
}

.serviceSonPages {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem 5.5rem;
}
.companyGroupPart .serviceSonPages{
  gap: 4.5rem 2.8rem;
}
.serviceSonPages li a {
  display: flex;
  overflow: hidden;
  position: relative;
  height: 22.4rem;
  background: url("../image/common/icon_right_red.svg")no-repeat right 2rem bottom 2rem #fff;
  background-size: 3.7rem;
  border-radius: 3rem;
  box-shadow: 1rem 1rem 4rem rgba(168, 41, 41, 0.15);
}
.serviceSonPages li .img {
  overflow: hidden;
  position: relative;
  width: 50%;
}
.serviceSonPages li .img img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  transition: all 0.3s;
}
.serviceSonPages li .img:after {
  content: "";
  position: absolute;
  right: -1px;
  top: 0;
  width: 2.8rem;
  height: 100%;
  background: url("../image/top/bg_line.png")no-repeat center;
  background-size: 100% 100%;
}
.serviceSonPages li .info {
  display: flex;
  align-items: center;
  padding: 0 1.8rem;
  width: 50%;
}
.serviceSonPages li .step {
  pointer-events: none;
  position: absolute;
  right: 2.4rem;
  top: 2.8rem;
  color: #DB2030;
  font-size: 2.2rem;
  font-weight: 300;
  font-style: italic;
}
.serviceSonPages li .step:before {
  content: "";
  position: absolute;
  left: -4rem;
  transform: rotate(-40deg);
  transform-origin: 0 0;
  height: 8rem;
  border-left: 1px solid #E3E3E3;
}
@media screen and (min-width: 768px) {
    .serviceSonPages .hdS .eng {
    font-size: 1.4rem;
  }
  .serviceSonPages .hdS .jap {
    font-size: 3rem;
    font-weight: 500;
  }
}
.serviceSonPages .hdS .jap {
  font-weight: 500;
}

.numberSection {
  overflow: hidden;
  position: relative;
  padding: 12.5rem 0 10.5rem;
  background: url("../image/top/bg_number.png")no-repeat center;
  background-size: cover;
  text-align: center;
}
.numberFoodS .food {
  pointer-events: none;
  position: absolute;
  z-index: 3;
  transition: all 0.3s;
}
.numberFoodS .food:before {
  content: "";
  position: absolute;
  border-radius: 100%;
  background:rgba(255,229,224,0.2);
  backdrop-filter: blur(0.5rem) saturate(115%);
  -webkit-backdrop-filter: blur(0.5rem) saturate(115%);
}
.numberFoodS .food:nth-child(1) {
  right: calc(50% + 41.3rem);
  top: 2.5rem;
  width: 24.6rem;
}
.numberFoodS .food:nth-child(2) {
  bottom: -8.7rem;
  right: calc(50% + 35rem);
  z-index: 0;
  width: 26.5rem;
}
.numberFoodS .food:nth-child(2):before {
  left: -40%;
  top: -20%;
  width: 200%;
  height: 140%;
}
.numberFoodS .food:nth-child(3) {
  top: 10.5rem;
  right: calc(50% + 18.6rem);
  width: 10rem;
}
.numberFoodS .food:nth-child(4) {
  top: 22.5rem;
  right: calc(50% + 11.6rem);
  width: 21.8rem;
}
.numberFoodS .food:nth-child(5) {
  bottom: 7rem;
  left: calc(50% + 13.9rem);
  width: 11.4rem;
}
.numberFoodS .food:nth-child(6) {
  left: calc(50% + 8.7rem);
  top: -1rem;
  width: 32rem;
}
.numberFoodS .food:nth-child(7) {
  top: 16.5rem;
  left: calc(50% + 30.4rem);
  width: 38.8rem;
}
.numberFoodS .food:nth-child(8) {
  left: calc(50% + 39rem);
  top: -2.5rem;
  z-index: 0;
  width: 40rem;filter: blur(1rem);
  opacity: 0.54;
}
.numberFoodS .food:nth-child(8):before {
  left: -10%;
  top: -10%;
  width: 140%;
  height: 120%;
}
.numberSection .numberButton {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 5.6rem 5rem;
  max-width: 76.5rem;
  background: url("../image/top/bor_number.png")no-repeat center;
  background-size: 100% 100%;
}
.numberSection .hdM .foucs {
  line-height: 1.285;
  font-size: 3.7rem;
    font-weight: 700;
}
.numberSection .btn {
  margin-top: 2.3rem;
}

.newsSection {
  padding: 13.5rem 0;
  overflow: hidden;
} 
.newsCon {
  display: flex;
  position: relative;
  z-index: 2;
  left: 50%;
  transform: translateX(-60rem);
  background-image: radial-gradient(#FFFFFF 0%, #FFFBEB 50%, #FFF8E5 80%, #FFEDBE 100%);
  background-size: 125%;
  border-radius: 5rem 0 0 5rem;
}
.newsCon .side {
  padding: 5.3rem 6rem;
  width: 43rem;
}
.newsCon .main {
  width: calc(100% - 43rem);
  border-left: 0.5px solid #E0E0E0;
}
.newsSection .btn {
  margin-top: 3.6rem;
}
.noticeList li:last-child {
  border-bottom-width: 0;
}
.noticeList li {
  display: flex;
  padding: 4rem;
  transition: all 0.3s;
  border-bottom: 0.5px solid #E0E0E0;
}
.noticeList li .img {
  display: block;
  overflow: hidden;
  margin-right: 4.3rem;
  width: 14.7rem;
  height: 11.4rem;
  border-radius: 1rem;
  position: relative;
}
.noticeList li .img img {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
}
.noticeList li .info {
  width: calc(100% - 19rem);
  max-width: 50rem;
}
.noticeList li .dt {
  margin-bottom: 1.5rem;
}
.noticeList li .sign {
  display: inline-block;
  margin-right: 1.5rem;
  padding: 0.2rem 0.8rem 0.1rem;
  background: #DB2030;
  border-radius: 2rem;
  letter-spacing: 0.05em;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
}
.noticeList li .date {
  letter-spacing: 0.1em;
  font-size: 1.3rem;
  font-weight: 300;
  font-style: italic;
}
.noticeList li h3 { 
  margin-bottom: 1rem;
  font-weight: bold;
	    font-size: 2rem;
}
.noticeList li .txt {
  overflow: hidden;
  text-overflow: ellipsis;
  display:-webkit-box; 
  -webkit-box-orient:vertical;  
  -webkit-line-clamp:2; 
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
}

.magazineSection {
  position: relative;
  padding-left: 13rem;
}
.magazineSection .hdL {
  position: absolute;
  left: 0;
  bottom: 100%;
  transform-origin: 0 100%;
  transform: rotate(90deg);
}
.magazineSection .title {
  position: relative;
  margin-bottom: 5rem;
  padding-right: 24rem;
}
.magazineSection .title .hdM {
  margin-bottom: 3.5rem;
}
.magazineSection .title .hdM .foucs { 
  font-size: 3.7rem; 
}
.magazineSection .title .txt {
  line-height: 1.928;
  font-size: 1.4rem;
  font-weight: 500;
}
.magazineSection .title .btn {
  position: absolute;
  right: 0;
  bottom: 0;
} 
.magazineFoods {
  overflow: hidden;
}  
.magazineFoods .swiper-slide {
  max-width: 32.7rem;
}
.magazineIntrod {
  position: relative;
  margin-bottom: 2rem;
  overflow: hidden;
  border-radius: 1.5rem;
  border: 1px solid #000;
}
.magazineIntrod {
  box-shadow: 1rem 0.8rem 0 #F6FFC7;
}
.magazineFoods .swiper-slide:nth-of-type(3n+2) .magazineIntrod {
  box-shadow: 1rem 0.8rem 0 #FFDDDD;
}
.magazineFoods .swiper-slide:nth-of-type(3n+3) .magazineIntrod {
  box-shadow: 1rem 0.8rem 0 #BEE8FF;
}
.magazineIntrod .pic {
  display: block;
  position: relative;
  padding-top: 71.5%;
}
.magazineIntrod .pic img{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.magazineIntrod .features {
  position: absolute;
  background: #fff;
  right: 0;
  top: 0;
  padding: 6.5rem 1rem  1rem;
  height: 100%;
  writing-mode: tb-rl;
  writing-mode: vertical-rl; 
  letter-spacing: 0.2em;
  font-size: 1.9rem;
  font-weight: 600;
}
.magazineIntrod .features:before {
  content: "特集"; 
  position: absolute;
  left: 50%;
  top: 1.8rem;
  transform: translateX(-50%);
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.5em;
  color: #909090;
  font-size: 1.3rem;
  font-weight: 500;
}
.magazineIntrod .eng {
  position: absolute;
  left: 0.8rem;
  top: 0.4rem;
  line-height: 1.06;
  text-shadow: 0 0 2rem rgba(0,0,0,0.57);
  color: #fff;
  font-size: 3.1rem;
  font-weight: lighter;
  -webkit-font-smoothing: antialiased;
}
.magazineIntrod .date {
  display: flex;
  align-items: center;
  position: absolute;
  left: 0.8rem;
  bottom: 0;
  color: #fff;
}
.magazineIntrod .date .year {
  line-height: 1.1875;
  font-size: 1.3rem;
	text-shadow: 0 0 2rem rgba(0, 0, 0, 1);
}
.magazineIntrod .date .year:before {
  content: "VOL.";
  display: block;
  font-family: 'Roboto', sans-serif;
  font-style: italic;
  font-size: 1.6rem;
  font-weight: 300;
}
.magazineIntrod .date .day {
  margin-left: 0.4rem;
  text-shadow: 0 0 2rem rgba(0, 0, 0, 1);
  font-weight: 300;
  font-size: 4.6rem;
}
.magazineFoods .tit {
  margin-bottom: 1.5rem;
  font-weight: bold;
  font-size: 1.8rem;
}
.magazineFoods .txt {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
}
.swiper-controller {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 5rem;
  font-size: 0;
  position: relative;
  z-index: 88;
}
.magazineFoods .swiper-button-prev,
.magazineFoods .swiper-button-next {
  display: inline-block;
  margin: 0 1rem 0 0;
  position: static;
}
.magazineFoods .swiper-scrollbar {
  position: static;
  width: calc(100% - 18.6rem);
  background: #E5E5E5;
}
.magazineFoods .swiper-scrollbar-drag {
  background: #DB2030;
}
.magazineFoods .swiper-button-prev.swiper-button-disabled {
  background-image: url("../image/common/icon_left_gray.svg");
}
.magazineFoods .swiper-button-next.swiper-button-disabled {
  background-image: url("../image/common/icon_right_gray.svg");
}

.sustainabilitySection {
  padding: 13rem 0;
}
.sustainabilityBtn {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 11.5rem 8.5rem 12rem;
  margin: 0 auto;
  max-width: 106.6rem;
  border-radius: 8rem;
  box-shadow: 0 2rem 5rem rgba(160, 0, 0, 0.16);
}
.sustainabilityBtn a {
  position: absolute;
  right: 8.8rem;
  top: 50%;
  transform: translateY(-50%);
}
.sustainabilityBtn .bg {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.sustainabilityBtn .hd01 {
  margin-bottom: 3.2rem;
}
.sustainabilityBtn .hd01:after {
  content: "";
  display: block;
  margin-top: 2rem;
  width: 3.1rem;
  border-top: 0.5rem solid #FF0015;
}
.sustainabilityBtn .hd01 .eng {
  display:block;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #DB2030;
  font-size: 6.5rem;
  font-weight: 300;
  font-style: italic;
}
.sustainabilityBtn .hd01 .sub {
  display:block;
  color: #A2A2A2;
  font-weight: bold;
}
.sustainabilityBtn .txt {
  line-height: 1.7778;
  font-size: 1.8rem;
  font-weight: bold;
}



/*** タブレット ***/
@media screen and (max-width: 1280px) {
  .messageDisplay .hdM .foucs {
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 768px) {
  .serviceSonPages li:hover .img img,
  .noticeList li:hover .img img {
    transform: scale(1.1);
  }

  .numberSection:hover .numberFoodS .food:nth-child(1) {
    top: 4.5rem;
    transform: rotate(-110deg);
  }
  .numberSection:hover .numberFoodS .food:nth-child(2) {
    right: calc(50% + 42rem);
    transform: rotate(-90deg);
  } 
  .numberSection:hover .numberFoodS .food:nth-child(3) {
    right: calc(50% + 19.6rem);
    transform: rotate(70deg) scale(1.2);
  }
  .numberSection:hover .numberFoodS .food:nth-child(4) {
    top: 24.5rem;
    right: calc(50% + 15.6rem);
    transform: rotate(-65deg) scale(1.05);
  }
  .numberSection:hover .numberFoodS .food:nth-child(5) {
    left: calc(50% + 18rem);
    transform: rotate(30deg)scale(1.2);
  }
  .numberSection:hover .numberFoodS .food:nth-child(6) {
    left: calc(50% + 14rem);
    top: -2.4rem;
    transform: rotate(50deg);
  }
  .numberSection:hover .numberFoodS .food:nth-child(7) {
    left: calc(50% + 35rem);
    transform: rotate(90deg);
  }
  .numberSection:hover .numberFoodS .food:nth-child(8) {
    top: 0;
    transform: scale(0.95);
  }
}
@media screen and (max-width: 767px) {
  .home .hdL .eng {
    font-size: 5rem;
  }
  
  .messageSection {
    padding: 6.4rem 0 7rem;
  }
  .messageSection .hdL {
    margin: 0 0 -1.4rem;
    text-align: center;
  }
  .messageDisplay {
    padding-bottom: 7.5rem;
  }
  .messageDisplay .display {
    display: block;
    border-radius: 3rem;
  }
  .messageDisplay .info {
    padding: 4rem 1.6rem 2.4rem;
    width: auto;
  }
  .messageDisplay .img {
    width: auto;
    height: 28rem;
  }
  .messageDisplay .hdM {
    text-align: center;
  }
  .messageDisplay .hdM .foucs {
    font-size: 2.3rem;
  } 
  .messageDisplay .txt {
    font-size: 1.2rem;
  }
  .messageDisplay .message {
    margin-top: 2rem;
    font-size: 1.3rem;
    text-align: center;
  }
  .messageDisplay .message .name {
    font-size: 2rem;
	  width: 13rem;
        margin: 1rem auto;
  }
  .messageDisplay .btn {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
  }  
}


/*company.html*/
.companyGroupWrap {
  overflow: hidden;
}

.companyWrap {
  overflow: hidden;
  padding-bottom: 15rem;
}
.companyWrap .hdL {
  margin-bottom: 5.6rem;
}

.companyPages {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.8rem 4rem;
}
.companyPages li {
  display: flex;
  overflow: hidden;
  background: url("../image/common/bg_company_list.png")no-repeat center;
  background-size: 100% 100%;
  /*background: radial-gradient(#FFFEF8 60%, #FCF8E9 80%, #FCF7E9 90%, #FFF5D8);
  background-size: 200%;*/
  border-radius: 1rem;
	height: 24rem;
}
.companyPages li .img {
  overflow: hidden;
  width: 21rem;
}
.companyPages li .img img {
  object-fit: cover;
  height: 100%; 
  transition: all 0.3s;
}
.companyPages li .info {
  padding: 5.6rem 3.6rem 3.8rem;
  width: calc(100% - 21rem);
}
.companyPages li .hdS {
  position: relative;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
  border-bottom: 0.2rem solid #DBDBDB;
}
.companyPages li .hdS:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 2.5rem;
  border-bottom: 0.2rem solid #DB2030;
}
.companyPages li .hdS .jap {
  letter-spacing: 0.05em;
  font-size: 2rem;
  font-weight: 500;
}
.companyPages li .hdS .eng {
  letter-spacing: 0.05em;
  font-size: 1.5rem;
}
.companyPages li .btn {
  text-align: right;
}

/* group_company */
.companyGroupPart {
  display: flex;
  margin-bottom: 10rem;
}
.companyGroupPart .side {
  width: 28rem;
}
.companyGroupPart .main {
  width: calc(100% - 28rem);
}
.companyGroupPart02 .main{
 display: flex;
}
.companyGroup .hd01 {
  letter-spacing: 0.1em;
  font-size: 3rem;
  font-weight: bold;
}
.companyGroup .hd01:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin: 0 1.5rem 0.5rem 0;
  width: 2rem;
  border-top: 0.3rem solid #DB2030;
}
.companyGroup .hd02 {
  padding-bottom: 1.4rem;
  margin-bottom: 3rem;
  border-bottom: 1px solid #313131;
  letter-spacing: 0.1em;
  font-size: 2rem;
  font-weight: bold;
}
.companyGroup .hd03 {
  margin-bottom: 1rem;
  font-size: 2.2rem;
  font-weight: bold;
}
.companyGroup .hd03s {
margin-top: 6rem;
}
.companyGroup .sub {
  line-height: 2.14;
  font-size: 1.4rem;
  font-weight: 500;
}
.companyfeatures {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.8rem;
  counter-reset: sectioncounter;
}
.companyfeatures.col3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 2.6rem;
}
.companyfeatures.col5 {
  grid-template-columns: repeat(5, 1fr);
  gap: 1.4rem;
}
.companyfeatures li {
  position: relative;
  padding: 4rem 1.5rem 1.8rem;
  background: #F8F4E8;
  border-radius: 1rem;
  text-align: center;
  line-height: 1.69;
  font-size: 1.3rem;
  font-weight: 500;
}
.companyfeatures li:before {
  content: "0"counter(sectioncounter); 
  counter-increment:sectioncounter;
  position: absolute;
  left: 2rem;
  top: 1.8rem;
  line-height: 1;
  font-size: 1.3rem;
  font-family: 'Roboto', sans-serif;
  font-style: italic;
  font-weight: 300;
}
.companyfeatures .hdS {
  margin-bottom: 1rem;
}
.companyfeatures .hdS .jap {
  line-height: 1.333;
  font-size: 1.8rem;
  font-weight: 500;
}
.companyfeatures .hdS .small {
  font-size: 1.6rem;
	font-weight: 400;
}
.companyfeatures .hdS .eng {
  margin-top: 0.6rem;
  font-size: 1rem;
}

.companySummary table {
  width: 100%;
  letter-spacing: 0.05em;
  border-top: 0.5px solid #E0E0E0;
}
.companySummary table + table {
  margin-top: -1px;
}
.companySummary th {
  padding: 2rem 1rem 2rem 0;
  width: 12rem;
  border-bottom: 0.5px solid #E0E0E0;
  color: #006927;
  font-size: 1.5rem;
  font-weight: bold;
}
.companySummary td {
  padding: 2rem 0;
  border-bottom: 0.5px solid #E0E0E0;
  font-size: 1.5rem;
  font-weight: 500;
}
.companySummary .officers {
  display: grid;
  grid-template-columns: 19.6rem calc(100% - 19.6rem);
}
.companyGroup .access {
  letter-spacing: 0.05em;
  font-size: 1.5rem;
}
.companyGroup .access .contact {
  margin-top: 0.5rem;
  font-weight: 400;
}
.companyGroup .access .place {
  overflow: hidden;
  margin-top: 3.2rem;
  border-radius: 1rem;
}
.companyGroup .access .places {
  display: flex;
  justify-content: space-between;
  margin: 3.5rem -5rem 0 0;
}
.companyGroup .access .places img {
  width: calc(50% - 1rem);
  border-radius: 1rem;
}
.companyGroup .access02 .places{
	margin-top: 5.9rem;
}
.companyGroupPart02 .access .places img{
	width: calc(80% - 1rem);
}
.companyGroup .access .sign {
  display: inline-block;
  margin-left: 1rem;
  padding: 0.4rem 0.8rem 0.3rem;
  border: 0.1rem solid;
  border-radius: 3rem;
  line-height: 1;
  color: #DB2030;
  font-size: 1.2rem;
}
.companyGroup .aboutSonPages {
  margin: 3.5rem -10rem 0 0;
}
.companyGroup .listBtn {
  margin-top: 2rem;
}
.companyGroup .btn {
  margin-top: 9rem;
  text-align: center;
}
.companyGroup .btn a {
  padding: 0.6rem 12rem 0.6rem 7.5rem;
  height: 10.4rem;
  background: #EFEFEF;
  color: #222;
  font-size: 1.8rem;
}
.companyGroup .btn .emp {
  right: 1.6rem;
  width: 7.2rem;
  height: 7.2rem;
}
.companyGroup .btn .emp:before,
.companyGroup .btn .emp:after {
  background-size: 2.55rem;
}
.companyGroup .serviceSonPages li a {
  height: 19rem;
}
.companyGroup .serviceSonPages .hdS .jap {
  font-size: 2.3rem;
  font-weight: 500;
}
.companyGroup .serviceSonPages .hdS .eng {
  margin-top: 0.5rem;
  font-size: 1.3rem;
  letter-spacing: 0;
}

.accessBranch {
  overflow: hidden;
  border-radius: 2rem 0 0 2rem;
  border: 0.5px solid #E0E0E0;
  border-right: 0;
}
.accessBranch table {
  width: 100%;
}
.accessBranch th {
  padding: 1rem;
  width: 5.8rem;
  border-width: 0 0.5px 0.5px 0;
  border-color: #E0E0E0;
  border-style: solid;
  text-align: center;
/*  writing-mode: tb-rl;
  writing-mode: vertical-lr;*/
	-ms-writing-mode: rl-tb;
    -webkit-writing-mode: vertical-rl;
    writing-mode: rl-tb;
  letter-spacing: 0.2em;
  font-size: 2rem;
  font-weight: bold;
}
.accessBranch .bgPink {
  background: #FCF5F2;
}
.accessBranch .bgGreen {
  background: #F4FCF5;
}
.accessBranch td {
  padding: 2.8rem 0;
  border-right: 0;
}
.accessBranch tr + tr td {
  border-top: 0.5px solid #E0E0E0;
}
.accessBranch .display {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.accessBranch .display .info {
  padding: 0 3.6rem;
  width: calc(100% - 27.6rem);
}
.accessBranch .display .img {
  width: 27.6rem;
}

.companyGroupTop {
  margin-bottom: 0;
}
.companyGroupTop .hd01 {
  position: relative;
  z-index: 3;
  text-align: center;
  line-height: 2.27;
  font-size: 2.2rem;
  font-weight: bold;
}
.companyGroupTop .textSwiper {
  overflow: hidden;
  position: relative;
  z-index: 1;
  white-space: nowrap;
  word-wrap: break-word;
  word-break:break-all;
  line-height: 1;
  color: #F5F5F5;
  font-size: 17.5rem;
  font-weight: 100;
  pointer-events: none;
}
.companyGroupTop .textSwiper .swiper-wrapper {
  transition-duration: 20s!important;
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
.companyGroupTop .textSwiper .swiper-slide {
  width: auto;
}

.companyGroupPosition{
  position: relative;
  z-index: 2;
  margin-top: -6rem;
}
.companyGroupPosition .hdS {
  margin-bottom: 4.5rem;
}
.companyGroupPosition .hdS .jap {
  font-size: 3rem;
}
.companyGroupPosition .hdS .eng {
  margin-top: 1rem;
  font-size: 1.5rem;
}
.companyGroupPosition .inner {
  max-width: 105rem;
}
.companyGroupPosition table {
  width: 100%;
}
.companyGroupPosition .data {
  overflow: hidden;
  border: 1px solid #D1D1D1;
  border-radius: 1rem;
}
.companyGroupPosition thead {
  background: #DB2030;
  color: #fff;
}
.companyGroupPosition tbody tr:nth-of-type(even) {
  background: #F8F8F8;
}
.companyGroupPosition thead th {
  padding: 2.1rem 1rem;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
}
.companyGroupPosition thead th + th {
  border-left: 1px solid #fff;
}
.companyGroupPosition tbody th {
  padding: 1.8rem 2.2rem 1.8rem 2.2rem;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #D1D1D1;
  font-size: 1.6rem;
  font-weight: bold;
}
.companyGroupPosition td {
  padding: 1.8rem 2.2rem;
  border-top: 1px solid #D1D1D1;
  font-size: 1.6rem;
  font-weight: 500;
}

/* message.html */
.messageWrap {
  overflow: hidden;
}
.messageDisplay2 {
  /*display: flex;
  margin: 0 auto;
  max-width: 140rem;*/
	margin: 0 auto;
    max-width: 120rem;
}
.messageDisplay2 .image {
/*  margin-left: -3.5rem;
  width: 42%;*/
	width: 85%;
    margin-right: 8rem;
}
.messageDisplay2 .image .bigImg {
  overflow: hidden;
  width: 100%;
  border-radius: 3rem;
}
.messageDisplay2 .image .smallImg {
  overflow: hidden;
  margin: 10.9rem 0 0 8rem;
  width: 30rem;
  border-radius: 2rem;
}
.messageDisplay2 .info {
/*  position: relative;
  z-index: 2;
  padding: 0 10rem;
  width: 58%;*/
	    position: relative;
    z-index: 2;
    display: flex;
}
.messageDisplay2 .info .txt{
	    width: 100%;
}
.messageDisplay2 .hdM {
  margin-bottom: 4rem;
	
	text-align: center;
}
.messageDisplay2 .hdM .sub {
  letter-spacing: 0.03em;
  color: #aaa;
  font-size: 2rem; 
  font-weight: 300;
	margin-bottom: 0;
}
.messageDisplay2 .hdM .foucs {
      letter-spacing: 0;
    /*font-size: 5rem;*/
	font-size: 4.5rem;
    font-weight: 700;
	margin-bottom: 6rem;
}
.messageDisplay2 .txt p {
  margin-bottom: 1.5rem;
  line-height: 1.8;
  font-size: 1.5rem;
  font-weight: 500;
}
.messageDisplay2 .message {
  margin-top: 1.2rem;
  letter-spacing: 0.05em;
  text-align: right;
  font-weight: bold;
  font-size: 1.4rem;
}
.messageDisplay2 .message .name {
  display: block;
  font-size: 4rem;
  font-weight: 300;
}
.messageDisplay2 .message .name img{
  width: 16rem;
  margin-top: 1rem;
}
.groupCompany {
  position: relative;
  z-index: 2;
  margin-top: 19rem;
  padding: 2rem 0 10rem;
  background: #FCFAF4;
}
.groupCompany:before {
  content: "";
  position: absolute;
  left: -10%;
  top: -8rem;
  z-index: -1;
  width: 120%;
  height: 16rem;
  border-radius: 50%;
  background: #FCFAF4;
}
.groupCompany .inner {
  max-width: 111.6rem;
}
.groupCompany .hdS {
  margin-bottom: 4rem;
}
.groupCompany .hdS .jap {
  font-size: 3rem;
}
.groupCompany .hdS .eng {
  font-size: 1.5rem;
}
.groupCompany .serviceSonPages li a {
  height: 19rem;
}


/* offices.html */
.officesWrap {
  padding: 0 0 10rem;
}
.officesIntrod {
  margin-bottom: 8rem;
  overflow: hidden;
  background: #FCFAF4;
  border-radius: 2rem;
}
.officesIntrod .banner {
  overflow: hidden;
  height: 28rem;
}
.officesIntrod .banner img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.officesIntrod .box {
  position: relative;
  padding: 6.4rem 5rem;
}
.officesIntrod .box:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: calc(100% - 1px);
  width: 100%;
  height: 2.4rem;
  background: url("../image/offices/bg_arc.png")no-repeat center top;
  background-size: 100% 100%; 
}
.officesIntrod .hd01 {
  margin-bottom: 2.6rem;
  padding: 1rem 2rem;
  background: #EFECE5;
  border-radius: 0 0.5rem 0.5rem 0;
  border-left: 0.3rem solid #DB2030;
  letter-spacing: 0.2em;
  line-height: 1.4;
  font-size: 2.3rem;
  font-weight: 500;
}

.officesAccess li {
  display: flex; 
  align-items: center;
  padding: 2.3rem 2.5rem;
  margin-bottom: 1.7rem;
  background: #fff;
  letter-spacing: 0.05em;
}
.officesAccess li .shop {
  width: 27.5%;
  font-size: 1.4rem;
  font-weight: bold;
}
.officesAccess li .shop .foucs {
  text-decoration: underline;
}
.officesAccess li .add {
  padding: 0 1.6rem;
  width: 46.5%;
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
}
.officesLogictics li .add {
  width: 48.5%;
}
.officesLogictics li .shop{
	width: 24%;
}
.officesAccess li .sign {
  display: inline-block;
  padding: 0 0.9rem;
  margin-left: 1.4rem;
  border: 1px solid;
  border-radius: 3rem;
  line-height: 1.3;
  color: #DB2030;
  font-style: italic;
  font-weight: 300;
}
.officesAccess li .sign:hover{
background: #DB2030;
  color: white;
}
.officesAccess li .contact {
  display: flex;
  justify-content: space-between;
  width: 27.5%;
  text-align: right;
  font-size: 1.5rem;
  font-style: italic;
}
.officesAccess li .contact .tel:before {
  content: "TEL.";
  color: #009638;
}
.officesAccess li .contact .fax:before {
  content: "FAX.";
  color: #009638;
}

/* history */
.historyWrap {
  overflow: hidden;
  padding: 0 0 20rem;
}
.historyWrap .hd01 {
  margin-bottom: 8rem;
  text-align: center;
  line-height: 2.5;
  font-size: 2rem;
  font-weight: bold;
}
.historyWrap .hd02 {
  line-height: 1.06;
  letter-spacing: 0.05em;
  color: #DB2030;
  font-size: 8.5rem;
  font-weight: 100;
  font-style: italic;
}
.historyWrap .hd02:after {
  content: "";
  display: block;
  height: 3px;
  width: 28.6rem;
  background: linear-gradient(to right, #DB2030 80%, transparent 80%, transparent 93%, #DB2030 93%, #DB2030 100%);
}
.historyWrap .hd03 {
  margin-top: 4rem;
  text-align: center;
  color: #DB2030;
  font-size: 4.2rem;
  font-weight: bold;
}

.historyTimeline .line {
  position: relative;
}
.historyTimeline .line:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 2rem;
  bottom: 0;
  border-left: 1px solid #C9C9C9;
}
.historyTimeline .line:after {
  /*content: "";*/
  position: absolute;
  left: calc(50% - 1rem);
  bottom: 0;
  width: 2rem;
  height: 2rem;
  background: url("../image/history/icon_point.svg")no-repeat center;
  background-size: 100%;
}
.historyTimeline li {
  position: relative;
  margin-left: auto;
  padding-left: 4rem;
  width: 50%;
  min-height: 24rem;
}
.historyTimeline li:last-of-type{
  padding-bottom: 7rem!important;
}
.historyTimeline li + li {
  margin-top: -9rem;
}
.historyTimeline li:before {
  content: "";
  position: absolute;
  left: -1rem;
  top: 1.9rem;
  width: 2rem;
  height: 2rem;
  background: url("../image/history/icon_point.svg")no-repeat center;
  background-size: 100%;
}
.historyTimeline li .year {
  margin-bottom: 0.4rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #009638;
  font-size: 5rem;
  font-weight: 100;
}
.historyTimeline li .txt {
  line-height: 1.6875;
  font-weight: 500;
	font-size: 1.45rem;
}
.historyTimeline li .imgs {
  display: flex;
  margin-top: 2rem;
  margin-left: -1rem;
}
.historyTimeline li .imgs .img {
  overflow: hidden;
  margin-left: 1rem;
  width: calc(100%/3);
  border-radius: 0.5rem;
}

.historyTimeline li:nth-of-type(even) {
  margin-left: 0;
  margin-right: auto;
  padding: 0 4rem 0 0;
  text-align: right;
}
.historyTimeline li:nth-of-type(even):before {
  left: auto;
  right: -1rem;
}
.historyTimeline li:nth-of-type(even) .imgs {
  justify-content: flex-end;
}
.historyNow {
  margin-top: 2.6rem;
}
.historyswiper .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
.historyswiper .swiper-slide {
  width: 38.4rem;
}
.toggleBtnSP  {
  display: none;
}

.numbersData {
  position: relative;
  padding: 8rem 0 9.5rem;
  background: url("../image/numbers/bg_numbers.png")no-repeat center;
  background-size: cover;
}
.numbersData:before {
  pointer-events: none;
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 100%;
  height: 5rem;
  background: url("../image/numbers/bg_arc.png")no-repeat center top;
  background-size: 100% 100%;
}
.numbersData .inner {
  max-width: 126rem;
}
.numbersData .hd01 {
  margin-bottom: 6.5rem;
  text-align: center;
  line-height: 2;
  font-size: 2rem;
  font-weight: bold;
}
.numbersData ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.6rem 3rem;
}
.numbersData li {
  background: rgba(255,255,255,0.6);
	    background-blend-mode: lighten;
  backdrop-filter: blur(2rem) saturate(12%);
  -webkit-backdrop-filter: blur(2rem) saturate(12%);
  border-radius: 3rem;
}
.numbersData .bgData {
  padding: 3.5rem 2rem 3.5rem 4rem;
  background: no-repeat center;
  background-size: 100%;
}
.numbersData .icon_data01 {
  background-image: url("../image/numbers/img_numbers01.png");
}
.numbersData .icon_data02 {
  background-image: url("../image/numbers/img_numbers02.png");
}
.numbersData .icon_data03 {
  background-image: url("../image/numbers/img_numbers03.png");
}
.numbersData .icon_data04 {
  background-image: url("../image/numbers/img_numbers04.png");
}
.numbersData .icon_data05 {
  background-image: url("../image/numbers/img_numbers05.png");
}
.numbersData .icon_data06 {
  background-image: url("../image/numbers/img_numbers06.png");
}
.numbersData .icon_data07 {
  background-image: url("../image/numbers/img_numbers07.png");
}
.numbersData .icon_data08 {
  background-image: url("../image/numbers/img_numbers08.png");
}
.numbersData .icon_data09 {
  background-image: url("../image/numbers/img_numbers09.png");
}
.numbersData .icon_data10 {
  background-image: url("../image/numbers/img_numbers10.png");
}
.numbersData li .cate {
  display: inline-block;
  padding: 0.6rem 2rem;
  min-width: 23.7rem;
  background: #DB2030;
  border-radius: 5rem;
  letter-spacing: 0.3em;
  text-align: center;
  color: #fff;
  font-weight: bold;
}
.numbersData li .num {
  display: inline-block;
  position: relative;
  line-height: 1.2;
  color: #DB2030;
  font-size: 12rem;
  font-weight: 100;
  font-style: italic;
}
.numbersData li .num sup {
  position: absolute;
  left: 100%;
  top: 13%;
  color: #aaa;
  font-size: 0.5em;
}
.numbersData li .num sup:before {
  content: "/";
}
.numbersData li .suffix {
  font-size: 2.7rem;
  font-weight: bold;
}
.numbersData .note {
  line-height: 1.69;
  font-size: 1.3rem;
  font-weight: 500;
}

.numbersData .endNote {
  margin-top: 7.5rem;
  text-align: center;
  font-weight: 500;
}

.philosophyWrap {
  padding: 0 0 10rem;
}

.philosophyTop {
  margin-bottom: 10rem;
  background: url("../image/philosophy/bg_philosophy.png")no-repeat center 8.6rem;
  background-size: 100%;
}
.philosophyTop .hdM {
  margin-bottom: 3.6rem;
}
.philosophyTop .hdM .foucs {
  letter-spacing: 0.1em;
  font-size: 4.2rem;
}
.philosophyTop .sub {
  text-align: center;
  line-height: 2.25;
  font-size: 2rem;
  font-weight: bold;
}
.philosophyTop .banner {
  position: relative;
  overflow: hidden;
  margin-top: 12rem;
  height: 70.8rem;
}
.philosophyTop .banner .con {
  overflow: hidden;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 200%;
  height: 100%;
  border-radius: 50%;
  text-align: center;
}
.philosophyTop .banner img {
  /*object-fit: cover;
  height: 100%;*/
}

.philosophyCates .inner {
  max-width: 97rem;
}
.philosophyCates .part {
  padding: 6.5rem 0 5.5rem;
  text-align: center;
}
.philosophyCates .part + .part {
  border-top: 0.3rem solid #F5F5F5;
}
.philosophyCates .hdS {
  margin-bottom: 2rem;
}
.philosophyCates .hdS .jap {
  letter-spacing: 0.17em;
  font-size: 4.5rem;
}
.philosophyCates .hdS .eng {
  letter-spacing: 0.05em;
  color: #B1B1B1;
  font-size: 2rem;
}
.philosophyCates .sub {
  letter-spacing: 0.05em;
  font-size: 2rem;
  font-weight: bold;
}
.philosophyCates .conduct {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  margin-top: 5rem;
}
.philosophyCates .conduct li {
  line-height: 1.875;
  font-weight: 500;
}
.philosophyCates .conduct li .icon {
  margin: 0 auto 2.2rem;
  max-width: 22.2rem;
}
.philosophyCates .conduct li .tit {
  margin-bottom: 2.2rem;
  line-height: 1.2;
  color: #DB2030;
  font-size: 2.5rem;
  font-weight: bold;
}




/*** スマホ ***/
@media screen and (max-width: 1400px) {
  .aboutDisplay > .info {
    padding: 0 7rem;
  }
  .companyGroup .aboutSonPages {
    margin-right: -5rem;
  }
}
@media screen and (min-width: 768px) {
  .companyPages li:hover .img img {
    transform: scale(1.1);
  }
  
}
@media screen and (max-width: 767px) {
	.messageDisplay2 .image .bigImg{
		    /*border-top-right-radius: 0;
    border-bottom-right-radius: 0;*/
	}
  .companyWrap {
    padding-bottom: 8rem;
  }
  .companyWrap .hdL {
    margin-bottom: 3.2rem;
  }
  .companyPages {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.6rem 0;
  }
	.companyPages li{
    height: 15rem;
  }
  .companyPages li .img {
    width: 14rem;
  }
  .companyPages li .info {
    padding: 2.4rem 1.6rem;
    width: calc(100% - 14rem);
  }
  .companyPages li .hdS {
    padding-bottom: 1.6rem;
    margin-bottom: 1.6rem;
  }
  .companyPages li .hdS .jap {
    font-size: 1.7rem;
  }
  .companyPages li .hdS .eng {
    font-size: 1.2rem;
  }
  
  .aboutSection {
    padding: 5.6rem 0;
  }
  .aboutDisplay {
    display: block;
  }
  .aboutDisplay > .info {
    padding: 0 0 2.4rem;
    width: auto;
  }
  .aboutDisplay > .boxLinks {
    padding: 0 2rem;
    margin-right: 0;
    width: auto;
  }
  .aboutSection .hdL {
    margin: 0 0 2rem;
    text-align: center;
  }
  .aboutSection .hdM {
    text-align: center;
  }
  .aboutSection .hdM .foucs {
    font-size: 2rem;
  }
  .aboutDisplay .txt {
    padding: 0 2rem;
    text-align: center;
    line-height: 1.785;
  }
  .aboutDisplay .btn {
    margin-top: 4.3rem;
    text-align: center;
  }
  .aboutDisplay .aboutSonPages {
    position: static;
    border-radius: 2rem;
  }
  
  
  .serviceSection .title {
    margin-bottom: 2.6rem;
  }
  .serviceSection {
    padding: 6rem 0 8rem;
  }
  .serviceSection .title .btn {
    margin-top: 2rem;
  }
  .companyGroupPart .serviceSonPages,
  .serviceSonPages {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.6rem 0;
  }
  .serviceSonPages li a {
    height: auto;
    min-height: 15rem;
    background-position: right 1.5rem bottom 1.3rem;
    background-size: 2.5rem; 
    border-radius: 1.6rem;
  }
  .serviceSonPages li .info {
    padding: 1rem 1rem 1rem 0.6rem;
  }
  .serviceSonPages li .step {
    right: 1.6rem;
    top: 2.2rem;
    font-size: 1.6rem;
  }
  .serviceSonPages li .step:before {
    left: -2.4rem;
    transform: rotate(-35deg);
    height: 4.8rem;
  }
  .serviceSection .btn {
    margin-top: 4.3rem;
    text-align: center;
  }
  
  .numberSection {
    padding: 7.4rem 0 5.2rem;
  }
  .numberFoodS .food:nth-child(2) {
    bottom: -3.8rem;
    right: calc(50% + 3.8rem);
    width: 13.1rem;
  }
  .numberFoodS .food:nth-child(3) {
    top: 5.7rem;
    right: calc(50% + 7rem);
    width: 6.8rem;
  }
  .numberFoodS .food:nth-child(4) {
    top: auto;
    bottom: 1.2rem;
    right: calc(50% + 6rem);
    width: 12rem;
  }
  .numberFoodS .food:nth-child(5) {
    bottom: 3.8rem;
    left: calc(50% + 8.8rem);
    width: 5.5rem;
  }
  .numberFoodS .food:nth-child(6) {
    left: calc(50% + 3.2rem);
    top: -1.6rem;
    width: 18rem;
  }
  .numberFoodS .food:nth-child(8) {
    left: calc(50% + 7rem);
    top: 5.2rem;
    width: 24rem;
  }
  .numberSection .numberButton {
    padding: 3.5rem 2rem;
    max-width: 29.8rem;
    background-image: url("../image/top/bor_number_sp.png");
  }
  .numberSection .hdM .foucs {
    font-size: 2.2rem;
	margin-bottom: 2rem;
  }
  .numberSection .btn {
    margin-top: 1rem;
  }
  
  .newsSection {
    padding: 6.5rem 0 8rem;
  }
  .newsCon {
    display: block;
    left: 2rem;
    transform: translateX(0);
    border-radius: 2rem 0 0 2rem;
  }
  .newsCon .side {
    padding: 3.6rem 2rem 1.6rem;
    width: auto;
  }
  .newsCon .main {
    padding: 0 0 6rem;
    width: auto;
    border-left: 0;
  }
  .newsSection .btn {
    margin: 3.5rem 2rem 0;
  }
  .newsSection .noticeList {
    padding: 0 1.6rem;
  }
  .noticeList li {
    padding: 1.6rem 0;
  }
  .noticeList li:last-child {
    border-bottom-width: 1px;
  }
  .noticeList li .img {
    margin-right: 2rem;
    width: 9.5rem;
    height: 7.4rem;
    border-radius: 0.5rem;
  }
  .noticeList li .info {
    width: calc(100% - 11.5rem);
    max-width: 20.5rem;
  }
  .noticeList li .dt {
    margin-bottom: 1rem;
  }
  .noticeList li .sign {
    padding: 0.2rem 1rem 0.1rem;
    margin-right: 1rem;
    font-size: 1.3rem;
  }
  .noticeList li h3 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin-bottom: 0;
    font-size: 1.4rem;
  }
  .noticeList li .txt {
    display: none;
  }
  
  .magazineSection {
    padding-left: 0;
  }
  .magazineSection .hdL {
    padding-bottom: 0.3rem;
    left: 0rem;
    z-index: 5; 
    background: #fff;
    width: calc(100% - 3rem);
  }
  .magazineSection .hdL .eng {
    font-size: 5.8rem;
  }
  .magazineSection .title .hdM .foucs {
    font-size: 2.4rem;
  }
	.magazineSection .title .hdM {
  margin-bottom: 1rem;
}
  .magazineSection .title {
    margin-bottom: 2.4rem;
    padding-right: 0;
  }
  .magazineSection .btn {
    position: static;
    margin-top: 2.4rem;
    text-align: center;
  }
  .magazineswiper {
    position: relative;
    padding-right: 1.6rem;
  }
  .magazineFoods .swiper-slide {
    padding-left: 6.3rem;
    max-width: 32.8rem;
  }
  .magazineFoods .swiper-scrollbar {
    width: calc(100% - 10rem);
    height: 1px;
  } 
  .magazineFoods .swiper-button-prev, 
  .magazineFoods .swiper-button-next {
    width: 3.5rem;
    height: 3.5rem;
  }
  .magazineIntrod {
    margin-bottom: 2rem;
  }
  .magazineIntrod .features {
    padding: 6rem 0.8rem 1rem;
    font-size: 1.7rem;
  }
  .magazineIntrod .features:before {
    font-size: 1.3rem;
  }
  .magazineIntrod .eng {
    font-size: 2.4rem;
  }
	.magazineIntrod .date{
   left: 0.8rem;
    bottom: -1rem;
  }
  .magazineIntrod .date .year {
    font-size: 2.3rem;
  }
  .magazineIntrod .date .year:before {
    font-size: 1rem;
  }
  .magazineIntrod .date .day {
    font-size: 5.5rem;
  }
  .magazineFoods .tit {
    margin-bottom: 1rem;
    font-size: 1.6rem;
  }
  .swiper-controller {
    margin-top: 0rem;
  }
  
  .sustainabilitySection {
    padding: 9.6rem 0 8rem;
  }
  .sustainabilityBtn {
    padding: 4.8rem 2rem;
    border-radius: 2.4rem;
  }
  .sustainabilityBtn .hd01 {
    margin-bottom: 2rem;
  }
  .sustainabilityBtn .hd01:after {
    margin-top: 1.2rem;
    width: 2.4rem;
    border-top-width: 0.3rem;
  }
  .sustainabilityBtn .hd01 .eng {
    font-size: 3.2rem;
  }
  .sustainabilityBtn .hd01 .sub {
    font-size: 1.2rem;
  }
  .sustainabilityBtn a {
    right: 1.6rem;
    top: 3.2rem;
    transform: translateY(0);
    width: 5rem;
  }
  .sustainabilityBtn .txt {
    font-size: 1.4rem;
  }
  
  .messageDisplay2 {
    display: block;
    padding: 0 2rem;
  }
  .messageDisplay2 .image {
    /*margin: 0 -2.8rem 3.6rem 0;
    width: auto;*/
	    width: auto;
        margin: 0 0 3rem;
  } 
  .messageDisplay2 .info {
    padding: 0;
    width: auto;
	  display: block;
  }
  .messageDisplay2 .hdM {
    position: relative;
    margin-bottom: -4rem;
  }
  .messageDisplay2 .hdM .sub {
    margin-bottom: 1rem;
    font-size: 1.7rem; 
  }
  .messageDisplay2 .hdM .foucs {
    line-height: 1.5;
        letter-spacing: 0.1rem;
        font-size: 3rem;
  }
  .messageDisplay2 .txt p {
    margin-bottom: 2.4rem;
    line-height: 1.785;
    font-size: 1.4rem;
  }
  .messageDisplay2 .message {
    margin-top: 2.4rem;
  }
  .messageDisplay2 .message .name {
    font-size: 3rem;
  }
  
  .groupCompany {
    margin-top: 9.2rem;
    padding: 1.5rem 0 7.6rem;
  }
  .groupCompany:before {
    top: -4rem;
    height: 8rem;
  }
  .groupCompany .hdS {
    margin-bottom: 2.2rem;
  }
  .groupCompany .hdS .jap {
    font-size: 1.8rem;
  }
  .groupCompany .hdS .eng {
    font-size: 1.2rem;
  }
  .groupCompany .aboutSonPages {
    grid-template-columns: repeat(1, 1fr);
  }
  .groupCompany .aboutSonPages li {
    padding: 2rem 1.6rem;
  }
  
  .companyGroupPart {
    display: block;
    margin-bottom: 6rem;
  }
  .companyGroupPart .side {
    margin-bottom: 2.5rem;
    width: auto;
  }
  .companyGroupPart .main {
    width: auto;
  }
	.companyGroupPart02 .main{
 display: block;
}
  .companyGroup .hd01 {
    font-size: 1.8rem;
  }
  .companyGroup .hd02 {
    padding-bottom: 0.8rem;
    margin-bottom: 1.6rem;
    font-size: 1.6rem;
  }
  .companyGroup .hd03 {
    font-size: 1.6rem;
  }
	.companyGroup .hd03s {
        margin-top: 3rem;
  }
	  .companyGroupPart02 .hd03 {
    margin-top: 3rem;
  }
  .companyGroup .sub {
    line-height: 1.785;
  }
  .companyfeatures,
  .companyfeatures.col3,
  .companyfeatures.col5{
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem 0;
  }
  .companyfeatures li {
    padding: 3rem 2rem;
  }
  .companyfeatures li:before {
    left: 2rem;
    top: 1.5rem;
  }
  .companyfeatures .hdS {
    margin-bottom: 1rem;
  }
  .companyfeatures .hdS .jap {
    font-size: 1.6rem;
  }
  .companyfeatures .hdS .eng {
    margin-top: 0.5rem;
  }
  
  .companyGroupTop {
    /*margin-bottom: 4rem;*/
  }
  .companyGroupTop .hd01 {
    line-height: 2.05;
    font-size: 1.6rem;
  }
  .companyGroupTop .textSwiper {
    font-size: 10rem;
  }
  
  .companyGroupPosition{
    margin-top: -3rem;
  }
  .companyGroupPosition .hdS {
    margin-bottom: 2.4rem;
  }
  .companyGroupPosition .hdS .jap {
    font-size: 1.8rem;
  }
  .companyGroupPosition .hdS .eng {
    margin-top: 0.8rem;
    font-size: 1.2rem;
  }
  .companyGroupPosition thead th {
    padding: 1rem;
    font-size: 1.3rem;
  }
  .companyGroupPosition tbody th {
    padding: 1.2rem 0.8rem;
    width: 10.8rem;
    font-size: 1.3rem;
  }
  .companyGroupPosition td {
    padding: 1.2rem 0.8rem;
    letter-spacing: -0.05em;
    font-size: 1.3rem;
  }
  
  .companySummary th {
    display: block;
    padding: 1.6rem 0 0.5rem 0;
    width: 100%;
    border-bottom: 0;
    font-size: 1.4rem;
  }
  .companySummary td {
    display: block;
    padding: 0 0 1.6rem;
    width: 100%;
    font-size: 1.4rem;
  }
  .companySummary .spSt2 {
    margin: -1px 0;
  }
  .companySummary .spSt2 th {
    display: table-cell;
    width: 8rem;
  }
  .companySummary .spSt2 td {
    display: table-cell;
    padding: 1.6rem 0;
    width: auto;
  }
  .companyGroup .access {
    line-height: 1.785;
    font-size: 1.4rem;
  }
  .companyGroup .access .sign {
    margin-left: 1rem;
    padding: 0.1rem 0.8rem 0.2rem;
    font-size: 1.3rem;
  }
  .companyGroup .access .place{
    margin-top: 3rem;
  }
  .companyGroup .access .places {
    display: block;
    margin: 0.6rem 0 0 0;
  }
  .companyGroup .access .places img {
    margin-top: 1rem;
    width: auto;
  }
	.companyGroupPart02 .access .places img{
	width: auto;
}
  .companyGroup .serviceSonPages li a {
    height: 15.3rem;
  }
  .companyGroup .serviceSonPages .hdS .jap {
    font-size: 1.8rem;
  }
  .companyGroup .serviceSonPages .hdS .eng {
    font-size: 1rem;
  }
  
  .accessBranch {
    border-radius: 2rem;
    border: 0.5px solid #E0E0E0;
  }
  .accessBranch th {
    display: block;
    margin-top: -1px;
    padding: 1.3rem 0 1rem;
    width: 100%;
    writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    border-width: 0.5px 0 0;
    font-size: 1.6rem;
  }
  .accessBranch td {
    display: block;
    padding: 1.6rem;
    width: 100%;
    border-top: 0.5px solid #E0E0E0;
  }
  .accessBranch .display {
    display: block;
  }
  .accessBranch .display .info {
    padding: 0 0 2rem;
    width: auto;
  }
  .accessBranch .display .img {
    width: auto;
  }
  
  .companyGroup .listBtn {
    margin-top: 2.6rem;
  }
  .companyGroup .btn {
    margin-top: 4rem;
  }
  .companyGroup .btn a {
    padding: 0.6rem 6.5rem 0.6rem 2.4rem;
    height: 6rem;
    font-size: 1.6rem;
  }
  .companyGroup .btn .emp {
    right: 1.2rem;
    width: 3.6rem;
    height: 3.6rem;
  }
  .companyGroup .btn .emp:before, 
  .companyGroup .btn .emp:after {
    background-size: 1.6rem;
  }
  
  .companySummary .officers {
    grid-template-columns: 12rem calc(100% - 12rem);
  }
  .companyGroup .aboutSonPages {
    margin: 3.2rem 0 0 0;
  }
  
  .officesIntrod .banner {
    height: 13.8rem;
  }
  .officesIntrod .box {
    padding: 4rem 1.6rem 2rem;
  }
  .officesIntrod .box:before {
    height: 1.5rem;
  }
  .officesIntrod .hd01 {
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
  .officesAccess li {
    display: block;
    padding: 1.6rem;
    margin-bottom: 1.2rem;
  }
  .officesAccess li .shop {
    width: auto;
  }
  .officesAccess li .add {
    padding: 1.2rem 0;
    width: auto;
  }
  .officesAccess li .contact {
    width: auto;
	  justify-content: flex-start;
	  text-align: left;
        font-size: 14px;
  }
	.officesAccess li .contact a{
    margin-right: 2rem;
  }
  
  .historyWrap {
    padding: 0 0 8rem;
  }
  .historyWrap .hd01 {
    margin-bottom: 2.5rem;
    line-height: 1.75;
    text-align: left;
    font-size: 1.6rem;
  }
  .historyWrap .hd02 {
    margin-bottom: 2.6rem;
    font-size: 5rem;
  }
  .historyWrap .hd02:after {
    width: 14rem;
    height: 1.5px;
  }
  .historyWrap .hd03 {
    margin-top: -3.2rem;
    padding-left: 2.8rem;
    text-align: left;
    font-size: 3rem;
  }
  .historyTimeline .line {
    padding-bottom: 5rem;
  }
  .historyTimeline .line:before {
    left: 0;
    top: 4rem;
  }
  .historyTimeline .line:after {
    left: -1rem;
  }
  .historyTimeline li {
    padding-left: 2.8rem;
    width: auto;
    min-height: inherit;
  }
  .historyTimeline li + li {
    margin-top: 3rem;
  }
  .historyTimeline li:before {
    top: 1.4rem;
  }
  .historyTimeline li .year {
    font-size: 4rem;
  }
  .historyTimeline li .txt {
    font-size: 1.4rem;
  }
  .historyTimeline li:nth-of-type(even) {
    padding: 0 0 0 2.8rem;
    text-align: left;
  }
  .historyTimeline li:nth-of-type(even):before {
    left: -1rem;
    right: auto;
  }
  .historyTimeline li:nth-of-type(even) .imgs {
    justify-content: flex-start;
  }
  .historyTimeline li:last-of-type{
    padding-bottom: 0!important;
  }

  .historyTimeline .toggleBox {
    padding-bottom: 2.5rem;
  }
  .historyTimeline .toggleWrap {
    border-bottom: 1px solid #C9C9C9;
  }
  .historyTimeline .toggleWrap:last-of-type{
    border-bottom: 0;
  }
  .historyTimeline .found {
    position: relative;
    padding: 2.5rem 0 2.5rem 6rem;
    background: url("../image/history/icon_plus.svg")no-repeat 3.4rem center;
    color: #009638;
    font-size: 2rem;
    font-weight: bold;
  }
  .historyTimeline .found.open {
    background-image: url("../image/history/icon_minus.svg");
  }
  .historyTimeline .found:before {
    content: "";
    position: absolute;
    left: -0.8rem;
    top: 3.2rem;
    width: 1.6rem;
    height: 1.6rem;
    background: #DB2030;
    border-radius: 100%;
  }
  
  .historyswiper .swiper-slide {
    width: 20rem;
  }
  
  .numbersData {
    padding: 6.4rem 0;
    background-image: url(../image/numbers/bg_numbers_sp.png);
  }
  .numbersData:before {
    background-size: 180% 100%;
  }
  .numbersData .hd01 {
    margin-bottom: 3.6rem;
    text-align: center;
    line-height: 2;
    font-size: 1.6rem;
  }
  .numbersData ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem 0;
  }
  .numbersData .bgData {
    padding: 2rem;
    background-position: right top;
    background-size: 88%;
  }
  .numbersData li .cate {
    padding: 0.6rem 1rem 0.5rem;
    min-width: 18rem;
    font-size: 1.4rem;
  }
  .numbersData li .num {
    font-size: 8rem;
  }
  .numbersData li .suffix {
    font-size: 2rem;
  }
  .numbersData .endNote {
    margin-top: 4rem;
    font-size: 1.4rem;
  }
  
  .philosophyWrap {
    padding: 0 0 8rem;
  }
  .philosophyTop {
    margin-bottom: 3rem;
    background-size: auto 39.3rem;
  }
  .philosophyTop .hdM {
    margin-bottom: 2.4rem;
  }
  .philosophyTop .hdM .foucs {
    line-height: 1.5833;
    font-size: 2.6rem;
  }
  .philosophyTop .sub {
    line-height: 2;
        font-size: 1.6rem;
  }
  .philosophyTop .banner {
    margin-top: 7rem;
    height: 63.2rem;
  }
  .philosophyTop .banner .con {
    width: 300%;
  }
  .philosophyCates .part {
    padding: 3rem 0;
  }
  .philosophyCates .hdS {
    margin-bottom: 1.2rem;
  }
  .philosophyCates .hdS .jap {
    font-size: 3rem;
  }
  .philosophyCates .hdS .eng {
    font-size: 1.2rem;
  }
  .philosophyCates .sub {
    line-height: 2;
    font-size: 1.5rem;
  }
  .philosophyCates .conduct {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.6rem 0;
    margin-top: 2.6rem;
  }
  .philosophyCates .conduct li {
    line-height: 1.6667;
  }
  .philosophyCates .conduct li .icon {
    margin-bottom: 1.4rem;
  }
  .philosophyCates .conduct li .tit {
    margin-bottom: 1.5rem;
    line-height: 1.5;
    font-size: 2rem;
  }
  
}


/* service.html */
.serviceTop {
  margin: 8rem auto 0;
  max-width: 100rem;
}
.serviceTop .left {
  width: 40%;
}
.serviceTop .right {
  width: 58%;
}
.serviceTop .hdM .foucs {
  letter-spacing: 0.1em;
  line-height: 1.5625;
  font-size: 3.2rem;
}
.serviceTop .sub {
  text-align: center;
  line-height: 2.222;
  font-weight: bold;
  font-size: 1.8rem;
}

.serviceOur {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 12rem 0 15rem;
}
.serviceOur:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  z-index: -1;
  transform: translateX(-50%);
  width: 240%;
  height: 100%;
  background: #FCFAF4;
  border-radius: 50% 50% 0 0;
} 
.serviceOur .hdL {
  margin-bottom: 5rem;
  letter-spacing: 0;
}
.serviceOur .hdL .eng,
.serviceOur .hdL .eng span {
  text-decoration: none;
}
.serviceOur .hdL .eng {
  font-size: 9rem;
}
.serviceOur .hdL .jap {
  margin-top: 0.2rem;
  font-size: 2rem;
  font-weight: 500;
}
.serviceOur .display {
  position: relative;
  padding-right: calc(50% + 10rem);
}
.serviceOur .display .info {
}
/*.serviceOur .display .img {
  position: relative;
  width: calc(50% - 2.2rem);
  box-shadow: 0 2rem 5rem rgba(88,0,0,0.11);
}*/
.serviceOur .display .toggleImg {
  overflow: hidden; 
  position: absolute;
  left: calc(50% + 2.2rem);
  bottom: 0;
  z-index: 1;
  height: calc(100% - 5.5rem);
  width: calc(50% + 8rem);
}
.serviceOur .sonPages li:nth-child(1) .toggleImg {
  z-index: 3;
}
.serviceOur .display .toggleImg.zindex {
  z-index: 4;
}
.serviceOur .display .img { 
  overflow: hidden; 
  position: absolute;
  top: -50%;
  left: 0;
  height: 200%;
  width: 200%;
  border-radius: 50%;
}
.serviceOur .display .img img {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
    height: 50%;
    width: 50%;
    object-fit: cover;
}
.serviceOur .sonPages {
  border-top: 1px solid #222222;
}
.serviceOur .sonPages li {
  padding: 2rem 0;
  border-bottom: 1px solid #222222;
}
.serviceOur .sonPages .hdS {
  cursor: pointer;
  padding-right: 5rem;
  background: url("../image/service/icon_plus.svg")no-repeat right center;
}
.serviceOur .sonPages .hdS.open {
  background-image: url("../image/service/icon_minus.svg");
}
.serviceOur .sonPages .hdS .jap {
  font-size: 2.3rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
}
.serviceOur .sonPages .hdS .eng {
  color: #222;
  font-size: 1.5rem;
}
.serviceOur .sonPages .box {
  padding: 1.6rem 0 0;
  line-height: 1.6667;
  font-weight: 500;
  font-size: 1.5rem;
}
.serviceOur .sonPages .btn {
  margin-top: 0.9rem;
  text-align: right;
}

.serviceValueChain {
  padding: 12rem 0;
}
.serviceValueChain .inner{
  max-width: 131.6rem;
}
.serviceValueChain .hdS {
  margin-bottom: 5.6rem;
}
.serviceValueChain .hdS .jap {
  margin-bottom: 1rem;
  line-height: 1.5625;
  font-size: 3.2rem;
}

.purchasingWrap {
  overflow: hidden;
}
.careerDisplay {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding: 0 0 12rem;
  margin: 0 auto;
  max-width: 120rem;
}
.careerDisplay .info {
  padding: 0 0 0 5rem;
  width: 42%;
  font-weight: 500;
}
.careerDisplay .imgs {
  pointer-events: none;
  position: relative;
  width: 50%;
}
.careerDisplay .imgs img {
  position: absolute;
  border-radius: 2.5rem;
  box-shadow: 2rem 3rem 4rem rgba(139, 0, 0, 0.08);
}
.careerDisplay .imgs .img1 {
  top: -16.5rem;
  left: 3rem;
  width: 50rem;
}
.careerDisplay .imgs .img2 {
  top: 18.8rem;
  left: 9rem;
  width: 25.5rem;
}
.careerDisplay .imgs .img3 {
  top: 18.8rem;
  left: 38.7rem;
  width: 36.7rem;
}
.careerDisplay .hdM {
  margin-bottom: 1.2rem;
}
.careerDisplay .hdM .foucs {
  letter-spacing: 0;
}
.careerDisplay .txt {
  line-height: 1.875;
  font-size: 1.6rem;
}
.careerDisplay .data {
  margin-top: 1rem;
}
.careerDisplay .note {
  margin-top: 3.2rem;
  font-size: 1.2rem;
}

.careerStrengths {
  padding: 11rem 0 8rem;
  background: #FCFAF4;
}
.careerStrengths .inner {
  max-width: 115.4rem;
}
.careerStrengths .hdL {
  margin-bottom: 6rem;
}
.careerStrengths .hdL .eng{
  text-underline-offset: 1.2rem;
    text-decoration: underline;
    text-decoration-thickness: 0.4rem;
}
.careerStrengths .hdL .sub {
  font-weight: 500;
}
.careerPart {
  margin-bottom: 8rem;
}
.careerPart .side {
  margin-bottom: 3.6rem;
}
.careerPart .main {
  
}
.careerStrengths .hdS .eng {
  margin-bottom: 1rem;
  font-size: 1.8rem;
}
.careerStrengths .hdS .eng:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 1.6rem;
  width: 2.8rem;
  border-top: 0.6rem solid #DB2030;
}
.careerStrengths p {
  line-height: 1.75;
  font-size: 1.6rem;
  font-weight: 500;
}
.careerStrengths .tit {
  margin-bottom: 2.2rem;
  line-height: 2;
  font-size: 2.2rem;
}
.careerStrengths .banner {
  overflow: hidden;
  position: relative;
  margin-top: 4rem;
  border-radius: 1rem;
}
.careerStrengths .banner_img{
  margin-top: 4rem;
}
.careerStrengths .note {
  margin-top: 3rem;
}
.careerStrengths .btn {
  position: absolute;
  left: 0;
  bottom: 4rem;
  padding: 0 9.6rem;
  width: 100%;
}
.careerStrengths .effortsBan2 .btn {
  
}

.careerColdchain {
  margin-top: 5rem;
  padding: 4.5rem 5rem 6rem;
  background: #fff;
  border-radius: 2rem;
}
.careerColdchain .hd01 {
  margin-bottom: 3.2rem;
  text-align: center;
  line-height: 1.8667;
  font-size: 1.6rem;
  font-weight: 500;
}
.careerColdchain .hd01 .big {
  font-size: 3rem;
  font-weight: bold;
}
.careerColdchain ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.careerColdchain .consts {
  gap: 0 6.4rem;
}
.careerColdchain li {
  position: relative;
}
.careerColdchain .const:before {
  content: "";
  position: absolute;
  right: 100%;
  top: 0;
  height: 100%;
  width: 6.4rem;
  background: no-repeat center;
  background-size: 1.6rem;
}
.careerColdchain .const1:before {
  background-image: url("../image/service/logistics/icon_flow01.svg");
}
.careerColdchain .const2:before {
  background-image: url("../image/service/logistics/icon_flow02.svg");
}
.careerColdchain li .tit {
  margin-bottom: 2rem;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
}
.careerColdchain .const {
  /*padding: 1.8rem 1.6rem;*/
  border-radius: 1rem;
  /*border: 1px solid #E2E2E2;*/
}
.careerColdchain .const .tit {
  margin-bottom: 1.4rem;
  color: #009638;
  min-height: 2.8em;
  font-size: 2rem;
  line-height: 1.4;
}
.careerColdchain .introds {
  position: relative;
  margin-top: 3.6rem;
  padding: 2.4rem 0 3rem;
  border-radius: 1rem;
  background: #F8F4E8;
}
.careerColdchain .introds:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 100%;
  transform: translateX(-50%);
  border-bottom: 2.5rem solid #F8F4E8;
  border-left: 4rem solid transparent;
  border-right: 4rem solid transparent;
}
.careerColdchain .introd {
  padding: 0 2.8rem;
}
.careerColdchain li + li .introd {
  border-left: 1px solid #A8A8A8;
}
.careerColdchain .introd p {
  line-height: 1.615;
  font-size: 1.3rem;
  font-weight: 500;
}
.careerColdchain li .img {
  overflow: hidden;
  margin-top: 1.2rem;
  border-radius: 0.5rem;
}

.careerCenter {
  overflow: hidden;
  background: #fff;
  border-radius: 1rem;
  border: 1px solid #D1D1D1;
}
.careerCenter + .careerCenter {
  margin-top: 5.5rem;
}
.careerCenter table {
  width: 100%;
}
.careerCenter thead {
  background: #DB2030;
  color: #fff;
  font-weight: bold;
}
.careerCenter thead tr:nth-of-type(2){
  background: #FFAFAF;
}
.careerCenter thead th + th {
  border-left: 1px solid #fff;
}
.careerCenter th {
  padding: 1.4rem 0 1rem;
  text-align: center;
  font-weight: bold;
  font-size: 1.9rem;
}
.careerCenter tbody th {
  padding: 1.6rem 1rem;
  border-top: 1px solid #D1D1D1;
  border-left: 0;
  width: 10rem;
  font-weight: 500;
  font-size: 1.6rem;
}
.careerCenter td {
  padding: 1.6rem 2.6rem;
  border-style: solid;
  border-color: #D1D1D1;
  border-width: 1px 0 0 1px; 
  font-weight: 500;
  font-size: 1.6rem;
}
.careerCenter .pic {
  padding: 0.5rem 1rem;
}
.careerCenter .pic img {
  border-radius: 1rem;
}

.careerFeatures {
  margin-bottom: 6rem;
}
.careerFeatures .hd01 {
  margin-bottom: 5rem;
  line-height: 1.6;
  font-size: 2.5rem;
      font-weight: 500;
    font-family: 'Noto Sans JP', sans-serif;
}
.careerFeatures .hd02 {
  position: relative;
  padding: 1.1rem 1rem 1.1rem 11rem;
  margin-bottom: 3.2rem;
  background: #EFECE5;
  letter-spacing: 0.1em;
  color: #DB2030;
  font-size: 2rem;
  font-weight: bold;
}
.careerFeatures .hd02:before {
  content: "";
  clip-path: polygon(0% 0%, calc(100% - 1.4rem) 0%, 100% 50%, calc(100% - 1.4rem) 100%, 0% 100%);
  position: absolute;
  left: 0;
  top: 0;
  width: 9.2rem;
  height: 100%;
  background: #F49CA4;
}
.careerFeatures .hd02 .pre {
  display: flex;
  align-items: center;
  justify-content: center;
  clip-path: polygon(0% 0%, calc(100% - 1.4rem) 0%, 100% 50%, calc(100% - 1.4rem) 100%, 0% 100%);
  position: absolute;
  left: 0;
  top: 0;
  padding: 1.2rem 0 1rem;
  height: 100%;
  width: 8.6rem;
  background: #DB2030;
  letter-spacing: 0.2em;
  color: #fff;
  font-size: 1.6rem;
}
.careerFeatures .hd03 {
  margin-bottom: 1.5rem;
  font-size: 2.2rem;
  font-weight: 500;
}
.careerFeatures .display {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.careerFeatures .display .info {
  width: 61%;
}
.careerFeatures .display .logo {
  width: 30%;
}
.careerFeatures .display .tit {
  margin-bottom: 1.5rem;
  font-size: 2rem;
  font-weight: 500;
}

.careerSecrets ol { 
  display: flex;
  counter-reset: sectioncounter; 
  position: relative;
  margin-top: 2.4rem;
  max-width: 61rem;
}
.careerSecrets ol:before {
  content: "";
  position: absolute;
  top: 4rem;
  bottom: 10rem;
  left: 4.4rem;
  border-left: 1px solid #E2E2E2;
}
.careerSecrets ol > li:before {
  content: "0"counter(sectioncounter); 
  counter-increment:sectioncounter;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 4rem;
  z-index: 3;
  width: 8.8rem;
  height: 8.8rem;
  background: #EFECE5;
  border-radius: 100%;
  color: #DB2030;
  font-family: 'Roboto', sans-serif;
  font-size: 2rem;
  font-style: italic;
}
.careerSecrets ol > li {
  position: relative;
  padding-left: 12.6rem;
}
.careerSecrets ol > li + li {
  margin-top: 3rem;
}
.careerSecrets li .careerBox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  padding: 2rem 3rem;
  background: #fff;
  border-radius: 1rem;
  border: 1px solid #E2E2E2;
}
.careerSecrets li .careerBox:before {
  content: "";
  position: absolute;
  right: 100%;
  top: 8rem;
  width: 10rem;
  border-top: 1px solid #E2E2E2;
}
.careerSecrets .careerBox .tit {
  margin-bottom: 1.4rem;
  font-size: 1.8rem;
  font-weight: bold;
}
.careerSecrets .matters li {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.875;
  font-weight: 500;
}
.careerSecrets .matters li:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.9rem;
  width: 0.7rem;
  border-top: 1px solid #DB2030;
}

.careerVegetable {
  padding: 15rem 0;
}
.careerVegetable .inner {
  max-width: 108rem;
}
.careerVegetable .hdS {
  margin-bottom: 7rem;
}
.careerVegetable ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3.4rem 3rem;
}
.careerVegetable li .img {
  position: relative;
  padding-top: 14.6rem;
  margin-bottom: 1.2rem;
  background: #fff;
  border-radius: 1rem;
  text-align: center;
}
.careerVegetable li .img img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-height: 100%;
object-fit: cover;
	    border-radius: 1rem;
}
.careerVegetable li .tit {
  font-size: 1.35rem;
  font-weight: bold;
}

.qualityActivities {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 2.4rem;
  position: relative;
  margin-top: 4.2rem;
  padding: 2.4rem;
  background: #FAE9E0;
  border-radius: 1rem;
}
.qualityActivities .hd01 {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 23.6rem;
  height: 23.6rem;
  border-radius: 100%;
  background: #DB2030;
  box-shadow: 0 0 2rem rgba(134,0,0,0.23);
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
}
.qualityActivities .hd01 .big {
  display: block;
  font-size: 3rem;
}
.qualityActivities .hd02 {
  margin-bottom: 2.2rem;
  text-align: center;
}
.qualityActivities .hd02 .con {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 3.2rem;
  min-height: 6.5rem;
  min-width: 28.4rem;
  background: #FF9C8B;
  border-radius: 3.3rem;
  box-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.16);
  line-height: 1.41;
  color: #fff;
  font-size: 1.9rem;
  font-weight: 500;
}
.qualityActivities .item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 4rem 3.6rem;
  min-height: 26rem;
  background: #fff;
  border-radius: 6rem;
}
.qualityActivities li {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.6667;
  font-size: 1.5rem;
  font-weight: 500;
}
.qualityActivities li:before {
  content: "●";
  margin-right: 0.5rem;
  color: #DB2030;
  font-size: 1rem;
}

.careerRole {
  padding: 5rem 6.5rem;
  margin-top: 4.5rem;
  background: #fff;
  border-radius: 2rem;
}
.careerRole .hd01 {
  margin-bottom: 3.5rem;
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
}
.careerRole ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.8rem;
}
.careerRole li {
  position: relative;
}
.careerRole li .pic {
  overflow: hidden;
  margin-bottom: 1.4rem;
  border-radius: 1rem;
}
.careerRole li .step {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 5.4rem;
  height: 5.6rem;
  background: #009638;
  color: #fff;
  font-size: 2.3rem;
  font-weight: 300;
}
.careerRole li .tit {
  margin: 0;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  font-size: 2.2rem;
}


/*** タブレット ***/
@media screen and (max-width: 767px) {
	.careerColdchain2 img{
		width: 95.4rem!important;
	}
	.careerColdchain .const .tit{
		min-height: 1.8em;
		font-size: 2.5rem;
	}
	.serviceValueChain .inner{
		padding: 0!important;
	}
  .serviceTop {
    display: block;
    margin-top: 4rem;
  }
  .serviceTop .left,
  .serviceTop .right {
    width: auto;
  } 
  .serviceTop .sub {
    line-height: 2.14;
    font-size: 1.4rem;
  }
  
  .serviceOur {
    overflow: hidden;
    padding: 8rem 0;
  }
  .serviceOur:before {
    width: 300%;
  }
  .serviceOur .display {
    display: block;
    padding-right: 0;
  }
  .serviceOur .display .toggleImg {
    display: none;
  }
  .serviceOur .display .img  {
    position: static;
    width: auto;
    height: auto;
  }
  .serviceOur .display .img img {
    position: static;
    transform: translateY(0%);
    max-height: inherit;
    width: auto;
    height: auto;
  }
  .serviceOur .hdL {
    margin-bottom: 2.5rem;
  }
  .serviceOur .hdL .eng {
    font-size: 6rem;
  }
  .serviceOur .hdL .jap {
    font-size: 1.6rem;
  }
  .serviceOur .sonPages .img {
    margin-top: 3rem;
    overflow: hidden;
    height: auto;
    border-radius: 1rem;
  }
  
  .serviceValueChain {
    overflow: hidden;
    padding: 5rem 0 5rem;
  }
	.serviceValueChain .hdS{
    margin-bottom: 3.6rem;
	}
  .serviceValueChain .hdS .jap {
    margin-bottom: 0.8rem; 
    font-size: 2rem;
  }
  .serviceValueChain .hdS .eng {
    font-size: 1.2rem;
  }
  .serviceValueChain .img {
    margin: 0 -2.2rem;
  }
  
  .careerDisplay {
    display: block;
    padding: 0 0 13rem;
  }
  .careerDisplay .info {
    padding: 0 2rem;
    width: auto;
  }
  .careerDisplay .imgs {
    padding: 0 2rem;
    width: auto;
  }
  .careerDisplay .imgs img {
    border-radius: 1rem;
  }
  .careerDisplay .imgs .img1 {
    top: auto;
    top: 3.6rem;
        left: 3rem;
        width: 23.8rem;
  }
  .careerDisplay .imgs .img2 {
    top: 18.2rem;
    left: calc(50% + 9.7rem);
    width: 10rem;
  }
  .careerDisplay .imgs .img3 {
    top: 1rem;
    left: calc(50% + 9.7rem);
    width: 12.6rem;
  }
  .careerDisplay .txt {
    font-size: 1.4rem;
  }
  .careerDisplay .data {
    margin-top: 2.8rem;
  }
  
  .careerStrengths {
    padding: 10rem 0 4rem;
  }
  .careerStrengths .hdL {
    margin-bottom: 3rem;
  }
  .careerStrengths .hdL .eng{
    text-underline-offset: .8rem;
      text-decoration-thickness: 0.2rem;
  }
  .careerPart {
    display: block;
    margin-bottom: 5rem;
  }
  .careerPart .side {
    margin-bottom: 2rem;
    width: auto;
  }
  .careerPart .main {
    width: auto;
  }
  .careerStrengths p {
    font-size: 1.3rem;
  }
  
  .careerStrengths .hdS:after {
    margin-top: 1rem;
    border-top-width: 0.3rem;
  }
  .careerStrengths .hdS .eng {
    font-size: 1.6rem;
  }
  .careerStrengths .hdS .jap {
    font-size: 2rem;
  }
  .careerStrengths .tit {
    margin-bottom: 1.6rem;
    font-size: 1.6rem;
  }
  .careerStrengths .txt {
    font-size: 1.4rem;
  }
  .careerStrengths .banner_img,
  .careerStrengths .banner {
    margin-top: 2rem;
  }
  .careerStrengths .banner_img{
    overflow-x: scroll;
  }
  .careerStrengths .banner_img img{
    width: 105.4rem;
    max-width: none;
  }
  .careerStrengths .banner.flowSt {
    margin-left: -2rem;
    margin-right: -2rem;
  }
  .careerStrengths .btn {
    padding: 0;
    width: auto;
  }
  .careerStrengths .btn img {
    width: 4.5rem;
  }
  .careerStrengths .effortsBan1 .btn {
    left: auto;
    right: 2rem;
    bottom: 8.4rem;
  }
  .careerStrengths .effortsBan2 .btn {
    left: auto;
    right: 2rem;
    bottom: auto;
    top: 17.3rem;
  }
  .careerStrengths .note {
    margin-top: 1.6rem;
    font-size: 1.2rem;
  }
  
  .careerColdchain {
    margin: 3.6rem -2rem 0;
    padding: 3.5rem 2rem;
    border-radius: 0;
  }
  .careerColdchain .hd01 {
    font-size: 1.4rem;
  }
  .careerColdchain .hd01 .big {
    font-size: 1.8rem;
  }
  .careerColdchain ul {
    grid-template-columns: repeat(1, 1fr);
  }
  
  .careerColdchain .const1 {
    /*padding: 1.8rem 1.6rem;
    border-radius: 1rem;
    border: 1px solid #E2E2E2;*/
	  margin-top: 2rem;
  }
  .careerColdchain .consts {
    gap: 4.5rem 0;
  }
  .careerColdchain .consts2{
    margin-top: 7.5rem;
  }
  .careerColdchain .const:before {
    left: 50%;
    top: auto;
    bottom: calc(100% + -0.5rem);
    transform: translateX(-50%);
    height: 4.5rem;
    width: 100%;
    background-size: 20.5rem;
  }
  .careerColdchain .const2:before {
    left: 50%;
    top: auto;
    bottom: calc(100% + 1.5rem);
    transform: translateX(-50%);
    height: 4.5rem;
    width: 100%;
    background-size: 10.5rem;
  }
  .careerColdchain .const1:before {
    background-image: url(../image/service/logistics/icon_flow_sp01.svg);
  }
  .careerColdchain .const2:before {
    background-image: url(../image/service/logistics/icon_flow_sp02.svg);
  } 
  .careerColdchain .introds {
    padding: 1rem 3.6rem;
  }
  .careerColdchain li + li .introd {
    border-left: 0;
    border-top: 1px solid #A8A8A8;
  }
  .careerColdchain .introd {
    padding: 1.4rem 0 2.7rem;
  }
  .careerColdchain .introds .tit {
    margin-bottom: 1.4rem;
    font-size: 1.6rem;
  }
  .careerCenter {
    overflow-x: scroll;
  }
  .careerCenter + .careerCenter {
    margin-top: 4.5rem;
  }
  .careerCenter table {
    min-width: 84rem;
  }
  .careerCenter th {
    padding: 1.1rem 0 0.9rem;
    font-size: 1.5rem;
  }
  .careerCenter tbody th {
    padding: 1.2rem 1rem;
    width: 8rem;
    font-size: 1.2rem;
  }
  .careerCenter td {
    padding: 1.2rem 2rem;
    font-size: 1.2rem;
  }
  
  .careerFeatures {
    margin-bottom: 3rem;
  }
  .careerFeatures .hd01 {
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
  .careerFeatures .hd02 {
    padding: 0.7rem 1rem 0.5rem 7rem;
    margin-bottom: 2rem;
    letter-spacing: 0;
    font-size: 1.4rem;
  }
  .careerFeatures .hd02:before {
    clip-path: polygon(0% 0%, calc(100% - 1rem) 0%, 100% 50%, calc(100% - 1rem) 100%, 0% 100%);
    width: 6rem;
  }
  .careerFeatures .hd02 .pre {
    clip-path: polygon(0% 0%, calc(100% - 1rem) 0%, 100% 50%, calc(100% - 1rem) 100%, 0% 100%);
    padding: 1.2rem 0.3rem 1rem 0;
    letter-spacing: 0;
    width: 5.5rem;
    font-size: 1.2rem;
  }
  .careerFeatures .hd03 {
    margin-bottom: 0.8rem;
    font-size: 1.6rem;
    font-weight: 600;
  }
  .careerFeatures .display {
    display: block;
  }
  .careerFeatures .display .info {
    width: auto;
  }
  .careerFeatures .display .logo {
    margin: 1rem auto 0;
    width: 20rem;
  }
  .careerSecrets ol:before {
    top: 4rem;
    bottom: 20rem;
    left: 2.4rem;
  }
  .careerSecrets ol > li {
    padding-left: 8rem;
  }
  .careerSecrets ol > li:before {
    top: 4rem;
    width: 4.8rem;
    height: 4.8rem;
    font-size: 1.6rem;
  }
  .careerSecrets ol > li + li {
    margin-top: 1.6rem;
  }
  .careerSecrets li .careerBox {
    display: block;
    padding: 1.6rem;
  }
  .careerSecrets li .careerBox:before {
    top: 6.4rem;
    width: 8rem;
  }
  .careerSecrets .careerBox .tit {
    margin-bottom: 0.8rem;
    font-size: 1.6rem;
  }
  .careerSecrets .matters li {
    font-size: 1.4rem;
  }
  
  .careerVegetable {
    padding: 8rem 0 12rem;
  }
  .careerVegetable .hdS {
    margin-bottom: 3.2rem;
  }
  .careerVegetable .hdS .jap {
    font-size: 2.3rem;
  }
  .careerVegetable ul {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.4rem 1.3rem;
  }
  .careerVegetable li .img {
    padding-top: 7.3rem;
    margin-bottom: 1rem;
  }
  .careerVegetable li .tit {
    font-size: 1.2rem;
  }
  
  .qualityActivities {
    gap: 0.8rem;
    margin: 3.2rem -2rem 0;
    padding: 3rem 2rem;
    border-radius: 0;
  }
  .qualityActivities .hd01 {
    padding: 1.8rem 1rem;
    width: 16.8rem;
    height: auto;
    font-size: 0.8rem;
  }
  .qualityActivities .hd01 .big {
    font-size: 1.4rem;
  }
  .qualityActivities .hd02 {
    margin-bottom: 1rem;
  }
  .qualityActivities .hd02 .con {
    padding: 0.5rem 1rem;
    min-height: inherit;
    min-width: inherit ;
    font-size: 1.1rem;
  }
  .qualityActivities .item {
    padding: 1.4rem 1.2rem;
    min-height: inherit;
    border-radius: 2rem;
  }
  .qualityActivities .item:nth-of-type(1),
  .qualityActivities .item:nth-of-type(2) {
    padding-bottom: 4rem;
  }
  .qualityActivities .item:nth-of-type(3),
  .qualityActivities .item:nth-of-type(4) {
    padding-top: 4rem;
  }
  .qualityActivities li {
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.6667;
    font-size: 0.8rem;
  }
  .qualityActivities li:before {
    margin-right: 0.3rem;
    font-size: 0.5rem;
  }
  
  .careerRole {
    padding: 2.4rem 2rem;
    margin: 2.5rem -2rem 0;
    border-radius: 0;
  }
  .careerRole .hd01 {
    margin-bottom: 1.8rem;
    font-size: 1.8rem;
  }
  .careerRole ul {
    gap: 1rem;
  }
  .careerRole li .pic {
    margin-bottom: 0.6em;
  }
  .careerRole li .tit {
    font-size: 1.4rem;
  }
  .careerRole li .step {
    width: 2rem;
    height: 2rem;
    font-size: 1rem;
  }
  
}


/* sustainability.html */
.sustainabilityGuide {
  overflow: hidden;
  position: relative;
  z-index: 2;
  margin-top: 5.6rem;
  padding: 8rem 0; 
  text-align: center;
}
.sustainabilityGuide .bg {
  pointer-events: none;
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: -1;
  transform: translateX(-50%);
  padding-top: 100%;
  width: 240%;
  overflow: hidden;
  border-radius: 50%;
  text-align: center;
}
.sustainabilityGuide .bg img {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%); 
  object-fit: cover;
  width: 100vw;
}
.sustainabilityGuide .hdM {
  margin-bottom: 5rem;
}
.sustainabilityGuide .hdM:after {
  content: "";
  display: block;
  margin: 2.4rem auto 0;
  width: 3.1rem;
  border-top: 0.5rem solid #FF0015;
}
.sustainabilityGuide .hdM .sub {
  margin-bottom: 0.3rem;
  color: #222;
  font-weight: bold;
}
.sustainabilityGuide .hdM .foucs {
  margin-bottom: 1rem;
  font-size: 3.7rem;
  font-weight: 900;
}
.sustainabilityGuide .hd01 {
  margin-bottom: 2.5rem;
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: bold;
}
.sustainabilityGuide .points {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  counter-reset:sectioncounter;
  margin-bottom: 2.5rem;
}
.sustainabilityGuide .points li {
  margin: 0.3rem 0.6rem;
  padding: 0.8rem 2.8rem 1rem;
  background: #fff;
  border-radius: 5rem;
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.09);
  letter-spacing: 0.05em;
  font-weight: bold;
  color: #DB2030;
}
.sustainabilityGuide .points li:before {
  content: "0"counter(sectioncounter); 
  counter-increment:sectioncounter;
  display: block;
  letter-spacing: 0.1em;
  color: #222222;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  font-style: italic;
  font-size: 1.1rem;
}
.sustainabilityGuide .note {
  margin-top: 5rem;
  font-size: 1.2rem;
  font-weight: 500;
} 

.sustainabilityTop {
  display: block;
  justify-content: space-between;
  margin: 12rem auto 9rem;
  max-width: 110rem;
  text-align: center;
}
.sustainabilityTop .left {
  width: auto;
}
.sustainabilityTop .right {
  padding: 3.6rem 0 0;
  width: auto;
}
.sustainabilityTop .hdM .foucs {
  font-size: 3rem;
  line-height: 1.66;
  font-weight: 900;
}
.sustainabilityTop .txt {
  font-size: 1.8rem;
  line-height: 1.94;
  font-weight: 500;
}
.sustainabilityTop .note {
  margin-top: 2.5rem;
  font-size: 1.3rem;
}

.sustainabilityFlow {
  overflow: hidden;
  padding: 0 0 10rem;
}
.sustainabilityFlow .displayItem {
  position: relative;
  padding: 2rem 0 6.6rem 8rem;
  margin-left: auto;
  margin-bottom: 12rem;
  max-width: 113.6rem;
}
.displayItem:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  height: 100%;
  width: 100vw;
  background: #FCFAF4;
  border-radius: 4.5rem 0 0 4.5rem;
  box-shadow: 0 2rem 5rem rgba(118, 0, 0, 0.1);
}
.sustainabilityFlow .display {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.displayItem .image {
  width: calc(50% - 2rem);
}
.displayItem .info {
  width: calc(50% - 5.2rem);
}
.sustainabilityTitle {
  position: relative;
}
.sustainabilityTitle .hdM {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.sustainabilityTitle .hdM .foucs {
  font-size: 4.1rem;
}
.sustainabilityTitle .hdM .eng {
  font-size: 1.9rem;
}
.sustainabilityTitle .step {
  text-align: right;
  line-height: 1.1;
  color: #EFECE5;
  font-size: 18.6rem;
  font-weight: 200;
  font-style: italic;
}
.sustainabilityFlow .info p {
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
}
.sustainabilityFlow .info .note {
  margin-top: 1.5rem;
  line-height: 2.08;
  font-size: 1.2rem;
  font-weight: 500;
}
.sustainabilityFlow .info .link {
  text-decoration: underline;
}
.sustainabilityswiper {
  overflow: hidden;
  position: relative; 
  padding-left: 4rem;
  margin-left: -4rem;
  height: 41rem;
}
.sustainabilityswiper:before {
  content: "";
  pointer-events: none;
  position: absolute;
  right: 0;
  left: 4rem;
  top: 0;
  bottom: 0;
  z-index: 5;
  background: url("../image/sustainability/bor01.png")no-repeat center;
  background-size: 100% 100%;
}
.sustainabilityswiper .swiper-slide {
  overflow: hidden;
  border-radius: 3rem;
}
.sustainabilityswiper .swiper-pagination {
  right: auto;
  left: 0;
}
.sustainabilityswiper .swiper-pagination-bullet {
  opacity: 1;
  margin: 2rem 0!important;
  width: 1.1rem;
  height: 1.1rem;
  background: #EFEFEF;
}
.sustainabilityswiper .swiper-pagination-bullet-active {
  background: #009638;
}
.sustainabilityFlow .hd01 {
  overflow: hidden;
  margin-bottom: 2rem;
  padding-left: 2.2rem;
  line-height: 1;
  border-left: 0.5rem solid #009638;
  font-size: 2rem;
  font-weight: bold;
}
.sustainabilityFlow .hd01 span {
  display: inline-block;
  position: relative;
  padding-right: 2.2rem;
}
.sustainabilityFlow .hd01 span:after {
  content: "";
  position: absolute;
  left: 100%;
  top: 50%;
  width: 50rem;
  border-top: 1px solid #D9D9D9;
}
.sustainabilityFlow .actIntrod {
  margin: 2rem 0;
  padding: 2.2rem 4.2rem 2.6rem;
  background: #fff;
  border-radius: 1rem;
}
.sustainabilityFlow .actIntrod .tit {
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: bold;
}
.sustainabilityFlow .actIntrod .logos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.2rem;
}
.sustainabilityFlow .btn {
  margin-top: 3rem;
  text-align: right;
}
.displayItem:nth-of-type(even) {
  padding: 2rem 8rem 6.6rem 0;
  margin-left: 0;
  margin-right: auto;
}
.displayItem:nth-of-type(even):after {
  left: auto;
  right: 0;
  border-radius: 0 4.5rem 4.5rem 0;
}
.sustainabilityCommittee {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
.sustainabilityFlow .sustainabilityCommittee {
  margin-top: 3.2rem;
}
.sustainabilityCommittee li {
  position: relative;padding: 0.5rem;
  overflow: hidden;
  border-radius: 3.5rem;
}
.sustainabilityCommittee li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../image/sustainability/bor02.png")no-repeat center;
  background-size: 100% 100%; 
}

.fancyboxBox {
  padding: 0;
  width: 100%;
  max-width: 95.3rem;
  border-radius: 5rem;
  background: #fff;
}
.fancyboxBox .scrollBar {
  overflow-y: scroll;
  padding: 2rem 9.6rem 10rem;
  height: calc(100vh - 10rem);
}
  .fancyboxBox .scrollBar::-webkit-scrollbar {
    width:5px; 
  }
  .fancyboxBox .scrollBar::-webkit-scrollbar-thumb {
    background: #12A047;
    border-radius: 20px;
  }

.fancyboxPart {
  margin-bottom: 6.2rem;
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
.sustainabilityTitle .hdM .foucs {
  font-size: 4rem;
}
.sustainabilityTitle .hdM .eng {
  font-size: 2.1rem;
}
.fancyboxBox .hd01 {
  position: relative;
  padding-bottom: 2rem;
  margin-bottom: 3.8rem;
  border-bottom: 0.5rem solid #F5F5F5;
  line-height: 1.32;
  font-size: 2.8rem;
  font-weight: bold;
}
.fancyboxBox .hd01:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.5rem;
  width: 7.3rem;
  border-bottom: 0.5rem solid #009638;
}
.fancyboxBox .hd01 .small {
  font-size: 1.4rem;
}
.soilAmendments {
  display: flex;
  justify-content: space-between;
  padding: 3rem;
  margin-top: 2rem;
  background: #EAF7EA;
  border-radius: 2rem;
}
.soilAmendments .before {
  position: relative;
  padding: 2rem;
  width: 62.6%;
  background: #fff;
  border-radius: 2rem;
}
.soilAmendments .before:after {
  content: "";
  position: absolute;
  left: 100%;
  top: 0;
  width: 5.8rem;
  height: 100%;
  background: url("../image/sustainability/icon_arrow_white.svg")no-repeat center;
  background-size: 100%;
}
.soilAmendments .after {
  padding: 3rem 0;
  width: 27.7%;
}
.soilAmendments .tit {
  padding: 0.9rem 1rem;
  margin-bottom: 1.5rem;
  background: #12A047;
  border-radius: 2.1rem;
  text-align: center;
  line-height: 1.333;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
}
.fancyboxDisplay,
.fancyboxDisplay2 {
  display: flex;
  justify-content: space-between;
}
.fancyboxDisplay .info {
  padding-right: 4.5rem;
  width: 56.5%;
}
.fancyboxDisplay .img {
  width: 43.5%;
}
.fancyboxDisplay .hd01 {
  margin-right: -4.5rem;
}
.fancyboxDisplay2 .info {
  width: calc(100% - 19.5rem);
}
.fancyboxDisplay2 .logo {
  width: 17.2rem;
}
.fancyboxDisplay2 .info p + p {
  margin-top: 2rem;
}
.fancyboxBox .close {
  margin-top: 2rem;
  text-align: center;
}
.fancyboxBox .close a {
  justify-content: center;
  padding: 0.6rem 7rem;
  height: 7.5rem;
  width: 28.4rem;
  font-size: 2rem;
}
.fancyboxBox .close .emp {
  width: 4.6rem;
  height: 4.6rem;
} 
.fancyboxBox .notes li {
  padding-left: 1rem;
  text-indent: -1em;
}
.fancyboxCommunity {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  margin-top: 3rem;
}
.fancyboxCommunity.col02 {
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
}

/*** タブレット ***/
@media screen and (min-width: 768px) {
  .sustainabilityFlow .info .link:hover {
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  .sustainabilityGuide {
    margin-top: 2.8rem;
    padding: 1rem 0 4rem;
  }
  .sustainabilityGuide .hdM {
    margin-bottom: 2.5rem;
  }
  .sustainabilityGuide .hdM:after {
    margin-top: 1.2rem;
    width: 3.1rem;
    border-top-width: 0.3rem;
  }
  .sustainabilityGuide .hdM .foucs {
    margin-bottom: 0.8rem;
    font-size: 2.4rem;
  }
  .sustainabilityGuide .points li {
    margin: 0.3rem 0.6rem;
    min-width: 8rem;
  }
  
  .sustainabilityTop {
    display: block;
    margin: 6.8rem 0 4.5rem;
  }
  .sustainabilityTop .left {
    width: auto;
  }
  .sustainabilityTop .right {
    width: auto;
	  padding-top: 1em;
  }
  .sustainabilityTop .hdM .foucs {
    line-height: 1.5;
    font-size: 2rem;
  }
  .sustainabilityTop .txt {
    line-height: 1.785;
    font-size: 1.4rem;
  }
  
  .sustainabilityFlow {
    padding: 0 0 5rem;
  }
  .sustainabilityTitle .hdM .foucs {
    font-size: 2rem;
  }
  .sustainabilityTitle .hdM .eng {
    font-size: 1.2rem;
  }
  .sustainabilityTitle .step {
    font-size: 10.8rem;
  }
  .sustainabilityFlow .displayItem {
    padding: 2rem 0 4.5rem 2rem;
    margin-bottom: 8rem;
  }
  .displayItem:after {
    border-radius: 2rem 0 0 2rem;
  }
  .sustainabilityFlow .display {
    display: block;
  }
  .displayItem .image {
    margin-bottom: 2.4rem;
    width: auto;
  }
  .displayItem .info {
    width: auto;
  }
  .sustainabilityFlow .hd01 {
    margin-bottom: 1.2rem;
    padding-left: 1.6rem; 
    border-left-width: 0.3rem;
    font-size: 1.8rem;
  }
  .sustainabilityswiper {
    padding-left: 2rem;
    margin-left: -2rem;
    height: 22.4rem;
  }
  .sustainabilityswiper:before {
    left: 2rem;
  }
  .sustainabilityswiper .swiper-pagination {
    left: 0.6rem;
  }
  .sustainabilityswiper .swiper-pagination-bullet {
    margin: 0.6rem 0 !important;
    width: 0.6rem;
    height: 0.6rem;
  }
  .sustainabilityFlow .actIntrod {
    padding: 1.6rem 2rem 2rem;
  }
  .sustainabilityFlow .actIntrod .logos {
    gap: 1rem;
  }
  .sustainabilityFlow .actIntrod .tit {
    margin-bottom: 0.6rem;
    font-size: 1.6rem;
  }
  .sustainabilityFlow .btn {
    text-align: center;
  }
  .displayItem:nth-of-type(even) {
    padding: 2rem 2rem 4.5rem 0;
  }
  .displayItem:nth-of-type(even):after {
    border-radius: 0 2rem 2rem 0;
  }
  .sustainabilityCommittee {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.4rem;
  }
  
  .fancyboxBox {
    border-radius: 2.5rem;
  }
  .fancybox-close-small {
    right: 2rem;
    top: 2rem;
    width: 2rem;
    height: 2rem;
  }
  .fancyboxBox .scrollBar {
    padding: 4rem 2rem 6rem;
  }
  .fancyboxPart {
    margin-bottom: 4rem;
  }
  .fancyboxBox .sustainabilityTitle .step {
    font-size: 9.1rem;
  }
  .fancyboxBox .hd01 {
    padding-bottom: 1.6rem;
    margin-bottom: 2rem;
    font-size: 1.6rem;
  }
  .fancyboxBox .hd01 .small {
    font-size: 1rem;
  }
  .soilAmendments {
    display: block;
    padding: 1.8rem;
    border-radius: 1rem;
  }
  .soilAmendments .before {
    padding: 1.4rem 1.6rem;
    margin-bottom: 4rem;
    width: auto;
    border-radius: 1.2rem;
  }
  .soilAmendments .before:after {
    left: 50%;
    top: calc(100% - 0.2rem);
    transform: rotate(90deg) translateY(50%);
    width: 3.9rem;
    height: 3.2rem;
    background-size: 100% 100%;
  }
  .soilAmendments .after {
    padding: 0;
    width: auto;
  }
  .soilAmendments .tit {
    padding: 0.5rem 1rem;
    margin-bottom: 0.8rem;
    font-size: 1.4rem;
  }
  .fancyboxDisplay, 
  .fancyboxDisplay2 {
    display: block;
  }
  .fancyboxDisplay .info,
  .fancyboxDisplay2 .info {
    padding: 0 0 2rem;
    width: auto;
  }
  .fancyboxDisplay .img {
    width: auto;
  }
  .fancyboxDisplay .hd01 {
    margin-right: 0;
  }
  .fancyboxDisplay2 .logo {
    margin: 0 auto;
  }
  .fancyboxBox .close a {
    padding: 0.6rem 5rem;
    height: 4.8rem;
    width: 24rem;
    font-size: 1.6rem;
  }
  .fancyboxBox .close .emp {
    width: 3.2rem;
    height: 3.2rem;
  }
  .fancyboxCommunity {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem;
    margin-top: 2.9rem;
  }
  .fancyboxCommunity.col02 {
    gap: 1.2rem;
  }
  
}


/* recruit.html */
.recruitTop {
  position: relative;
  z-index: 2;
  margin-top: -6rem;
}
.recruitTop .recruitCenter {
  display: flex;
  flex-wrap: wrap;
}
.recruitTop .recruitCenter .side {
  width: 27.5%;
}
.recruitTop .recruitCenter .side img {
  object-fit: cover;
  width: 100%;
}
.recruitTop .recruitCenter .slides {
  width: 45%;
}
.recruitCates {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  height: calc(100%/3);
}
.recruitCates li {
  display: flex;
}
.recruitCates li.reverse {
  flex-direction: row-reverse;
}
.recruitCates .title {
  align-items: center;
  padding: 0 4.5rem;
  background: #fff;
}
.recruitCates .hdM .foucs {
  line-height: 1.4;
  letter-spacing: 0.1em;
  font-size: 3.2rem;
  font-weight: 900;
}
.recruitCates .cates {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  background: #DB2030;
  text-align: center;
  line-height: 1.4;
  color: #fff;
  font-weight: bold;
  font-size: 1.5rem;
}
.recruitCates .cates p {
  padding: 6.2rem 0 0;
  width: 100%;
  background: no-repeat center top;
  background-size: auto 5.9rem;
}
.recruitCates .cates .icon_recruit01 {
  background-image: url("../image/recruit/icon_recruit01.svg");
}
.recruitCates .cates .icon_recruit02 {
  background-image: url("../image/recruit/icon_recruit02.svg");
}
.recruitCates .cates .icon_recruit03 {
  background-image: url("../image/recruit/icon_recruit03.svg");
}
.recruitCates .cates .icon_recruit04 {
  background-image: url("../image/recruit/icon_recruit04.svg");
}
.recruitCates .cates .icon_recruit05 {
  background-image: url("../image/recruit/icon_recruit05.svg");
}
.recruitCates .images {
  position: relative;
  width: 50%; 
}
.recruitswiper {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.recruitswiper .swiper-wrapper {
  transition-duration: 1s;
}
.recruitCates .images img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.productswiper {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  height: 100%;
  width: 176%;
}

.recruitTop .recruitBg {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  padding-top: 6rem;
  width: 100%;
  height: 100%;
}
.recruitTop .recruitBg:before {
  content: "";
  pointer-events: none;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url("../image/recruit/bg_circle.png")no-repeat center;
  background-size: 100% 100%;
}

.recruitSonPages {
  padding: 10.8rem 0 8rem;
  background: #DB2030;
  color: #fff;
}
.recruitSonPages ul {
  display: flex;
  justify-content: center;
  gap: 9rem;
}
.recruitSonPages ul li{
  width: 100%;
  max-width: 46.5rem;
}
.recruitSonPages li .img {
  margin-bottom: 1.8rem;
}
.recruitSonPages li .img img{
  width: 100%;
  height: 26.3rem;
  object-fit: cover;
  border-radius: 2rem;
}
.recruitSonPages li .tit {
  letter-spacing: 0.05em;
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
}
.recruitSonPages li .btn {
  margin-top: 2rem;
  text-align: center;
}

.recruitCategory {
  margin-bottom: 7rem;
}
.recruitCategory .hdS {
  margin-bottom: 3.5rem;
  text-align: center;
}
.recruitCategory .hdS .eng {
  font-size: 2.4rem;
}
.recruitCategory .links {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 72rem;
  text-align: center;
}
.recruitCategory .links a {
  display: inline-block;
  padding: 1.2rem 2.6rem 1rem;
  margin: 0.6rem;
  border-radius: 3rem;
  border: 1px solid #D1D1D1;
  line-height: 1;
  font-size: 2rem;
  font-weight: 500;
}
.recruitCategory .links .on {
  border-color: #DB2030;
  color: #DB2030;
}
.recruitCategory .cateMenu select {
  width: 17rem;
}

.recruitWrap {
  padding: 0 0 15rem;
}

.recruitMediumList .hdS {
  margin-bottom: 4rem;
}
.recruitMediumList .hdS .jap {
  font-size: 3.9rem;
}
.recruitMediumList .hdM .foucs{
	font-size: 2rem!important;
}
.recruitMediumList ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.recruitMediumList li {
  margin-top: -1px;
  padding: 8rem 4.5rem;
  border: 1px solid #D1D1D1;
}
.recruitMediumList li:nth-of-type(even) {
  margin-left: -1px; 
}
.recruitMediumList li .img {
  overflow: hidden;
  margin-bottom: 2rem;
  height: 18rem;
  border-radius: 2rem;
}
.recruitMediumList li .hdM {
  margin-bottom: 3.2rem;
  text-align: center;
}
.recruitMediumList li .hdM:after {
  content: "";
  display: block;
  margin: 0.8rem auto 0;
  width: 2.6rem;
  border-top: 0.4rem solid #DB2030;
}
.recruitMediumList li .txt {
  line-height: 1.85;
  font-size: 1.4rem;
  font-weight: 500;
}
.recruitMediumList li .btn {
  margin-top: 5rem;
  text-align: center;
}
.recruitMediumList li .btn a {
  padding: 0.6rem 8rem 0.6rem 3rem;
  height: 7rem;
}
.recruitMediumList li .btn .emp {
  right: 3rem;
  width: 3rem;
  height: 3rem;
}

.recruitMentData .inner {
  max-width: 89rem;
}
.recruitMentData .hd00{
	font-size: 3rem;
    margin-bottom: 2rem;
    margin-top: -1em;
}
.recruitMentData .hd01 {
  margin-bottom: 3rem;
  padding-left: 4rem;
  border-left: 0.6rem solid #009638;
  letter-spacing: 0.05em;
  font-size: 2.6rem;
  font-weight: bold;
}
.recruitMentData .hd01 .sign {
  display: inline-block;
  margin-left: 1rem;
  padding: 0.7rem 1rem 0.6rem;
  border: 0.1rem solid #009638;
  border-radius: 3rem;
  line-height: 1;
  color: #009638;
  font-size: 1.4rem;
}
.recruitMentData table {
  width: 100%;
  border-top: 1px solid rgba(0, 150, 56, 0.3);
  margin-bottom: 3em;
}
.recruitMentData tr {
  border-bottom: 1px solid rgba(0, 150, 56, 0.3);
}
.recruitMentData th {
  padding: 2rem 1rem;
  width: 15.8rem;
  background: rgba(0, 150, 56, 0.1);
  text-align: center;
  color: #009638;
  font-size: 1.4rem;
  font-weight: bold;
}
.recruitMentData td {
  padding: 2rem 3.5rem 2rem 2rem;
  line-height: 1.785;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  font-weight: 500;
}
.recruitMentData .schedule li {
  display: grid;
  grid-template-columns: 7.5rem calc(100% - 7.5rem);
}
.recruitMentData .btn {
  margin-top: 6rem;
  text-align: center;
}


/*** タブレット ***/
@media screen and (min-width: 768px) {
  .recruitCategory .links a:hover {
    border-color: #DB2030;
    color: #DB2030;
  }
}
@media screen and (max-width: 767px) {
	.recruitMentData .hd00{
	font-size: 2rem;
}
  .recruitTop {
    overflow: hidden;
    margin-top: 0;
  }
  .recruitTop .topBan {
    height: 26rem;
  }
  .recruitTop .bottomBan {
    height: 21rem;
  }
  .recruitTop .topBan img,
  .recruitTop .bottomBan img {
    object-fit: cover;
    height: 100%;
  }
  .recruitTop .recruitCenter .side {
    display: none;
  }
  .recruitTop .recruitCenter .slides {
    width: 100%;
  }
  .recruitTop .recruitBg {
    padding-top: 0;
  }
  .recruitTop .recruitBg:before {
    width: 83.6rem;
    height: 80rem;
  }
  .recruitCates {
    height: 10rem;
  }
  .recruitCates .title {
    padding: 0 1.6rem;
  }
  .recruitCates .hdM .foucs {
    font-size: 2rem;
  }
  .recruitCates .cates {
    font-size: 1.2rem;
  }
  .recruitCates .cates p {
    padding: 4rem 0 0;
    background-size: auto 3.6rem!important;
  }
  
  .recruitSonPages {
    padding: 6rem 0 7rem;
  }
  .recruitSonPages ul {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 5.3rem 0;
  }
  .recruitSonPages ul li{
    max-width: none;
  }
  .recruitSonPages li .img {
    margin-bottom: 1.7rem;
  }
  .recruitSonPages li .img img {
    height: auto;
  }
  .recruitSonPages li .tit {
    font-size: 2.3rem;
  }
  .recruitSonPages li .btn a {
    padding: 0.6rem 7.5rem 0.6rem 3.2rem;
    height: 5.8rem;
    font-size: 1.5rem;
  }
  .recruitSonPages li .btn .emp {
    right: 1rem;
    width: 3.5rem;
    height: 3.5rem;
  }
  
  .recruitWrap {
    padding: 0 0 8rem;
  }
  .recruitCategory {
    margin-bottom: 4rem;
  }
  .recruitCategory .hdS {
    margin-bottom: 1rem;
    text-align: left;
  }
  .recruitCategory .hdS .eng {
    font-size: 2rem;
  }
  
  .recruitMediumList .hdS {
    margin-bottom: 2.4rem;
  }
  .recruitMediumList .hdS .jap {
    font-size: 2.4rem;
  }
  .recruitMediumList ul {
    grid-template-columns: repeat(1, 1fr);
  }
  .recruitMediumList li {
    padding: 3.2rem 2rem 3rem;
  }
  .recruitMediumList li .img {
    margin-bottom: 2.4rem;
    height: 8em;
  }
  .recruitMediumList li .hdM {
    margin-bottom: 1rem;
  }
  .recruitMediumList .hdM .foucs {
    font-size: 1.5rem!important;
  }
  .recruitMediumList li .txt {
    line-height: 1.785;
  }
  .recruitMediumList li .btn {
    margin-top: 2rem;
  }
  .recruitMediumList li .btn a {
    padding: 0.6rem 5rem 0.6rem 3rem;
    height: 4.8rem;
  }
  .recruitMediumList li .btn .emp {
    right: 1rem;
  }
  
  .recruitMentData .hd01 {
    margin-bottom: 2.5rem;
    padding-left: 1.6rem;
    font-size: 2rem;
  }
  .recruitMentData .hd01 .sign {
    margin-left: 0;
    padding: 0.4rem 1rem 0.3rem;
    font-size: 1.3rem;
  }
  .recruitMentData table {
    border-top: 0;
  }
  .recruitMentData tr {
    border-bottom: 0;
  }
  .recruitMentData th {
    display: block;
    padding: 0.8rem 1rem;
    width: 100%;
    text-align: left;
  }
  .recruitMentData td {
    display: block;
    padding: 1rem 0 2rem;
    width: 100%;
  }
  .recruitMentData .btn {
    margin-top: 5rem;
  }
  .recruitMentData .btn a.bigSt {
    padding: 0 9rem 0 2.6rem;
    height: 6.9rem;
  }
  .recruitMentData .btn a.bigSt .emp {
    right: 1.4rem;
    width: 4.2rem;
    height: 4.2rem;
  }
  .recruitMentData .schedule li {
    grid-template-columns: 5.6rem calc(100% - 5.6rem);
  }
  
}


/* news */
.newsContent {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
  margin: 4rem auto;
  padding: 0 10rem 10rem 0;
  max-width: 140rem;
}
.newsContent .cateMenu select {
  width: 10.5rem;
  color: #DB2030;
}
.newsContent .side {
  position: sticky;
  left: 0;
  top: 10rem;
  padding: 4.5rem 6.8rem;
  width: 23.7rem;
  background: #F7F7F7;
  border-radius: 2rem;
}
.newsContent .side .hd01 {
  position: relative;
  padding-bottom: 0.7rem;
  margin-bottom: 2rem;
  border-bottom: 0.3rem solid #DBDBDB;
  color: #403E3E;
  font-size: 1.9rem;
  font-weight: bold;
}
.newsContent .side .hd01:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  width: 2.7rem;
  border-bottom: 0.3rem solid #DB2030;
}
.newsContent .side .links li {
  margin-bottom: 1.6rem;
}
.newsContent .side .links a {
  color: #808080;
  font-weight: 300;
  font-style: italic;
  font-size: 1.2rem;
}
.newsContent .main {
  width: calc(100% - 35rem);
} 
.newsList li .link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  padding: 4.8rem;
  border-bottom: 1px solid #E2E2E2;
}
.newsList li .link:after {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 3.5rem;
  bottom: 2.8rem;
  width: 3.6rem;
  height: 3.6rem;
  background: url("../image/common/icon_link_red2.svg")no-repeat center #EFECE5;
  background-size: 1.3rem;
  border-radius: 100%;
}
.newsList li .img {
  width: 28.6rem;
  height: 19.5rem;
  border-radius: 2rem;
  overflow: hidden;
  position: relative;
}
.newsList li .img img{
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.newsList li .info {
  padding-right: 5rem;
  width: calc(100% - 33.6rem);
}
.newsList li .dt {
  margin-bottom: 1rem;
}
.newsList li .sign {
  display: inline-block;
  padding: 0.3rem 1rem 0.2rem;
  margin-right: 1.6rem;
  border-radius: 3rem;
  background: #EFECE5;
  line-height: 1.41;
  color: #DB2030;
  font-size: 1.2rem;
  font-weight: 500;
}
.newsList li .date {
  font-weight: 300;
  font-style: italic;
}
.newsList li .tit {
  margin-bottom: 1.6rem;
  line-height: 1.27;
  font-size: 2.2rem;
  font-weight: bold;
}
.newsList li .txt {
  overflow: hidden;
  text-overflow: ellipsis;
  display:-webkit-box; 
  -webkit-box-orient:vertical;  
  -webkit-line-clamp:2; 
  line-height: 1.85;
  font-size: 1.4rem;
  font-weight: 500;
}

.newsDetail .title {
  margin-bottom: 3.6rem;
}
.newsDetail .title .sign {
  display: inline-block;
  padding: 0.3rem 1rem 0.2rem;
  margin-right: 1.6rem;
  border-radius: 3rem;
  background: #DB2030;
  line-height: 1.41;
  color: #fff;
  font-weight: 500;
}
.newsDetail .title .date {
  letter-spacing: 0.07em;
  font-weight: 300; 
  font-size: 2.1rem;
}
.newsDetail .title h3 {
  margin-top: 2.4rem;
  line-height: 1.34;
  font-size: 3.5rem;
  font-weight: bold;
}
.newsDetail .detail p {
  margin-bottom: 2rem;
  line-height: 1.785;
  font-size: 1.5rem;
  font-weight: 500;
}
.newsDetail .messageDisplay2 .message{
	font-size: 2rem;
	font-weight: bold;
}
.newsDetail .messageDisplay2{
	justify-content: flex-end;
}
.newsDetail .detail h3 {
  position: relative;
  padding-bottom: 1rem;
  margin-bottom: 3rem;
  border-bottom: 0.2rem solid #E6E6E6;
  font-size: 2.8rem;
  font-weight: bold;
}
.newsDetail .detail h3:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 7.2rem;
  border-bottom: 0.2rem solid #DB2030;
}
.newsDetail figure {
  margin: 0 auto 6.5rem;
}
.newsDetail .btns {
  margin-top: 12rem;
  text-align: center;
}
.newsDetail .btns a {
  margin: 0 1.6rem;
}


/*** タブレット ***/
@media screen and (max-width: 1200px) {
  .newsContent {
    padding-right: 5rem;
  }
  .newsContent .side {
    padding: 4.5rem 4rem;
  }
}
@media screen and (min-width: 768px) {
  .newsList li:hover .link {
    border-color: transparent;
    box-shadow: 2rem 2rem 5rem rgba(149, 0, 0, 0.08);
  }
  .newsList li:hover .link:after {
    background-image: url("../image/common/icon_link_white2.svg");
    background-color: #DB2030;
  }
  .newsList li:hover .sign {
    background-color: #DB2030;
    color: #fff;
  }
  .newsList li:hover .tit {
    color: #DB2030;
  }
  
}
@media screen and (max-width: 767px) {
	.newsContent .choiceSelect {
    margin-bottom: 0.6rem;
}
  .newsContent {
    display: block;
    padding: 0 2rem 6rem;
    margin-top: 2rem;
  }
  .newsContent .side {
    display: none;
  }
  .newsContent .main {
    width: auto;
  }
  .newsList li .link {
    padding: 1.6rem 0;
  }
  .newsList li .link:after {
    content: none;
  }
  .newsList li .img {
    width: 10.5rem;
    height: 7.1rem;
    border-radius: .8rem;
  }
  .newsList li .info {
    padding-right: 0rem;
    width: calc(100% - 12rem);
  }
  .newsList li .sign {
    padding: 0.3rem 1rem 0.2rem;
    margin-right: 0.8rem;
    font-size: 1rem;
  }
  .newsList li .date {
    font-size: 1.2rem;
  }
  .newsList li .tit {
    margin-bottom: 1rem;
    font-size: 1.7rem;
  }
  .newsList li .txt {
    display: none;
  }
  
  .newsDetail .title {
    margin-bottom: 2.4rem;
  }
  .newsDetail .title .sign {
    font-size: 1.4rem;
  }
  .newsDetail .title .date {
    font-size: 1.4rem;
  }
  .newsDetail .title h3 {
    margin-top: 1.6rem; 
    font-size: 2.2rem;
  }
  .newsDetail .detail h3 {
    margin-bottom: 2.4rem;
    font-size: 1.8rem;
  }
  .newsDetail .detail p {
    margin-bottom: 2rem;
  }
  .newsDetail figure {
    margin-bottom: 4rem;
  }
  .newsDetail .btns {
    margin-top: 4.4rem;
  }
  .newsDetail .btns a {
    margin: 2.4rem 0 0;
    padding: 0.6rem 5.7rem 0.6rem 3.6rem;
    width: 20.6rem;
  }
  
}


/* magazine */
.magazineAbout {
  padding: 8rem 0;
}
.magazineAbout .hdM {
  margin-bottom: 2rem;
  text-align: center;
}
.magazineAbout .hdM .foucs {
  font-size: 3.7rem;
}
.magazineAbout .sub {
  text-align: center;
  line-height: 2.1875;
  font-weight: 500;
}
.magazineAbout ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.8rem 5rem;
  margin-top: 8rem;
}

.magazineLatestRecipes {
  padding: 8rem 0;
}
.magazineLatestRecipes .hdS {
  margin-bottom: 3.2rem;
}
.magazineLatestRecipes .hdS .eng {
  letter-spacing: 0.05em;
}
.magazineLatestRecipes .hdS .jap {
  font-size: 5rem;
  letter-spacing: 0.07em;
}
.magazineLatestRecipes ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5rem 3rem;
}
.magazineLatestRecipes li .img {
  display: block;
  overflow: hidden;
  margin-bottom: 1.6rem;
  border-radius: 1rem;
  padding-top: 78.5%;
  position: relative;
}
.magazineLatestRecipes li .img img {
  transition: all 0.3s;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.magazineLatestRecipes li .dt {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  grid-gap: .6rem 1.2rem;
  margin-bottom: 1rem;
  font-size: 1.2rem;
}
.magazineLatestRecipes li .date {
  font-size: 1.4rem;
  font-weight: 500;
}
.magazineLatestRecipes li .sign {
  display: inline-flex;
  flex-wrap: wrap;
  grid-gap: .1em .8em;
  padding: 0.4rem 1rem 0.3rem;
  border-radius: 3rem;
  background: #EFECE5;
  line-height: 1.15;
  color: #DB2030;
  font-size: 1.3rem;
  font-weight: bold;
}
.magazineLatestRecipes li .name {
  letter-spacing: 0.05em;
  line-height: 1.4375;
  font-weight: bold;
}

.magazineDisplay {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 15rem;
}
.magazineDisplay .banner {
  width: calc(100%/3 * 2);
}
.magazineDisplay .banner .pic {
  padding-top: 53.94%;
}
.magazineDisplay .info {
  width: calc(100%/3 - 9.5rem);
}
.magazineDisplay .info .tit {
  line-height: 2.1875;
  font-weight: bold;
} 
.magazineDisplay .info .btn {
  margin-top: 2.4rem;
}
.magazineDisplay .magazineIntrod {
  margin-bottom: 0;
}
.magazineDisplay .magazineIntrod .features {
  padding: 10rem 1.4rem 1rem;
  font-size: 3.4rem;
}
.magazineDisplay .magazineIntrod .features:before {
  top: 3rem;
  font-size: 2.1rem;
}
.magazineDisplay .magazineIntrod .eng {
  left: 2.6rem;
  top: 2rem;
  font-size: 4.9rem;
}
.magazineDisplay .date{
	left: 1.5rem;
    bottom: -1rem;
}

.magazineDisplay .magazineIntrod .date .day {
  margin-left: 1.5rem;
  font-size: 5.7rem;
}
.magazineDisplay .magazineIntrod .date .year{
  font-size: 1.7rem;
}
.magazineDisplay .magazineIntrod .date .year:before {
  font-size: 2.4rem;
}

.magazineDetailIntrod {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 18rem 0 8rem;
}
.magazineDetailIntrod:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  z-index: -1;
  height: 100%;
  width: 240%;
  background: radial-gradient(#FFFFFF, #FFFBEB 30%, #FFF8E5 100%);
  border-radius: 100% 100% 0 0;
}
.magazineDetailIntrod .part {
  margin-bottom: 10rem;
}
.magazineDetailIntrod .hd01 {
  max-width: 83.4rem;
  margin: 0 auto 5rem;
  padding: 2.9rem 0 2.5rem;
  border-radius: 10rem;
  text-align: center;
  letter-spacing: 0.07em;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
}
.magazineDetailIntrod .hd01 .pre {
  display: inline-block;
  position: relative;
}
.magazineDetailIntrod .hd01 .pre:before {
  content: "";
  position: absolute;
  right: 100%;
  bottom: calc(100% - 1.2rem);
  width: 3rem;
  height: 2.8rem;
  background: url("../image/magazine/detail/icon_pre_white.svg")no-repeat left center;
  background-size: 100%;
}
.magazineHead {
  margin-bottom: 1.2rem;
  padding-bottom: 3.6rem;
  background: url("../image/magazine/detail/bor_bottom.svg")no-repeat center bottom;
  background-size: 100%;
  text-align: center;
  letter-spacing: 0.05em;
  color: #AD7100;
  font-size: 2.3rem;
  font-weight: 900;
}
.magazineDetailIntrod .hd03 {
  margin-bottom: 3rem;
  letter-spacing: 0.07em;
  line-height: 1.3;
  font-size: 3rem;
  font-weight: bold;
}
.magazineDetailIntrod .hd03 span {
  padding: 0 1rem;
  background: linear-gradient(to top, #F6FFC7 2.5rem, transparent 2.5rem);
}
.magazineDetailIntrod .sub {
  margin-bottom: 3.5rem;
  text-align: center;
  line-height: 1.944;
  font-size: 1.8rem;
  font-weight: bold;
}
.magazineDetailIntrod .variation {
  /*display: grid;
  grid-template-columns: repeat(3, 1fr);*/
 display: flex;
	justify-content: center;
  gap: 3.7rem;
}
.magazineDetailIntrod .variation li {
  padding: 2rem 3rem;
  background: #fff;
  border-radius: 1.5rem;
  border: 1px solid #000;
  width: 32%;
}
.magazineDetailIntrod .variation .pic {
  position: relative;
  overflow: hidden;
  padding-top: 95.5%;
  margin: 0 auto 1.6rem;
  width: 95.5%;
  border-radius: 100%;
}
.magazineDetailIntrod .variation .pic img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.magazineDetailIntrod .variation .txt {
  line-height: 1.6667;
  font-size: 1.5rem;
  font-weight: bold;
}
.magazineDetailIntrod .display {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  padding: 6.6rem 5rem;
  margin-bottom: 16rem;
  background: #fff;
  border-radius: 1.5rem;
  border: 1px solid #000;
}
.magazineDetailIntrod .display .pick {
  display: flex;
  align-items: center;
  position: absolute;
  left: -3.6rem;
  top: -2.6rem;
  padding: 0 2rem 0 4rem;
  width: 19.7rem;
  height: 19.3rem;
  background: no-repeat center;
  background-size: 100%;
  line-height: 1;
  font-size: 4.8rem;
  font-weight: 300;
}
.magazineDetailIntrod .display .img {
  overflow: hidden;
  width: 58%;
  border-radius: 2rem;
}
.magazineDetailIntrod .display .info {
  width: calc(42% - 6.8rem);
}
.magazineDetailIntrod .display .marker {
  position: relative;
  margin: 3rem 0 4rem;
}
.magazineDetailIntrod .display .marker .icon {
  position: relative;
}
.magazineDetailIntrod .display .marker .icon:before {
  content: "";
  position: absolute;
  left: -0.9rem;
  top: -1.1rem;
  width: 4rem;
  height: 3.6rem;
  background: url(../image/magazine/detail/icon_pre.svg) no-repeat left center;
  background-size: 100%;
}
.magazineDetailIntrod .display .marker .notes {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: absolute;
  right: -2.5rem;
  top: -5.2rem;
  width: 23.8rem;
  height: 15.8rem;
  background: url("../image/magazine/detail/bg_bor_foods.png")no-repeat center;
  background-size: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
}
.magazineDetailIntrod .display .txt {
  line-height: 1.875;
  font-weight: bold;
}
.magazineDetailIntrod .display .btn {
  margin-top: 2.4rem;
  text-align: right;
}

.magazineDetailIntrod .display .pick {
  background-image: url("../image/magazine/detail/bg_talk_green.svg");
}
.magazineDetailIntrod .display:nth-of-type(even) .pick {
  background-image: url("../image/magazine/detail/bg_talk_blue.svg");
}
.magazineDetailIntrod .display .img {
  box-shadow: 1.6rem 1.9rem 0 #F6FFC7;
}
.magazineDetailIntrod .display:nth-of-type(even) .img {
  box-shadow: 1.6rem 1.9rem 0 #BEE8FF;
}
.magazineDetailIntrod .display .marker .icon {
  width: 21.2rem;
}
.magazineDetailIntrod .display:nth-of-type(even) .marker .icon {
  width: 25.6rem;
}
.magazineDetailIntrod .display .hd03 span {
  background: linear-gradient(to top, #F6FFC7 2.5rem, transparent 2.5rem);
}
.magazineDetailIntrod .display:nth-of-type(even) .hd03 span {
  background: linear-gradient(to top, #BEE8FF 2.5rem, transparent 2.5rem);
}

.magazineFoodIntrod {
  padding: 0 0 18rem;
}
.magazineFoodIntrod .inner {
  max-width: 92.4rem;
}
.magazineFoodIntrod .display {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.magazineFoodIntrod .display .box {
  padding: 2.4rem;
  width: 55.5%;
  border: 1px solid #000;
  border-radius: 1rem;
}
.magazineFoodIntrod .display .img {
  margin-bottom: 1.4rem;
	border-radius: 2rem;
    overflow: hidden;
}
.magazineFoodIntrod .display .magazineHead {
  margin-bottom: 3rem;
  padding-bottom: 4rem;
  background-size: auto 2.6rem; 
  color: #222222;
  font-size: 2.5rem;
	font-weight: 500;
}
.magazineFoodIntrod .display .txt {
  line-height: 1.6667;
  font-size: 1.8rem;
  font-weight: bold;
	color: #222222;
}
.magazineFoodIntrod .display .info {
  width: 40%;
}
.magazineFoodIntrod .display .case {
  display: flex;
  align-items: flex-start;
  margin-bottom: 3rem;
  font-size: 1.4rem;
  font-weight: 500;
}
.magazineFoodIntrod .display .case .th {
  margin-right: 1rem;
  padding: 0.3rem 1.2rem 0.1rem;
  border: 1px solid #E20013;
  border-radius: 2rem;
  white-space: nowrap;
  word-wrap: break-word;
  word-break:break-all;
  color: #E20013;
  font-weight: bold;
}
.magazineFoodIntrod .display .case .td {
  margin: 0.4rem 0 0;
}
.magazineFoodIntrod .display .case .td font{
  margin-right: 1em;
}
.magazineFoodIntrod .display .time {
  padding-left: 4rem;
  margin-bottom: 2.8rem;
  background: url("../image/common/icon_clocks_red.png")no-repeat left center;
  background-size: 3rem;
  letter-spacing: 0.05em;
  font-size: 1.8rem;
  font-weight: bold;
}
.magazineFoodIntrod .display .time .num {
  margin-left: 1rem;
  color: #DB2030;
  font-size: 2.1rem;
}
.magazineFoodIntrod .hd01 {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem 0.5rem 2.5rem;
  margin-bottom: 1.3rem;
  min-height: 5.8rem;
  background: #F8F4E8;
  border-left: 0.5rem solid #00A83F;
  letter-spacing: 0.05em;
  color: #403E3E;
  font-weight: bold;
}
.magazineFoodIntrod .hd01 .big {
  font-size: 2.6rem;
}
.magazineFoodIntrod .material li {
  display: flex;
  justify-content: space-between;
  padding: 1.5rem 0;
  font-size: 1.5rem;
  font-weight: 500;
}
.magazineFoodIntrod .material li + li {
  border-top: 1px solid #C7C7C7;
}

.magazineFoodIntrod .recipe {
  margin-top: 4.8rem;
}
.magazineFoodIntrod .recipe .hd01 {
  margin-bottom: 5rem;
}
.magazineFoodIntrod .recipe li {
  position: relative;
  padding: 1.2rem 0 3.4rem 8.2rem;
  font-weight: 500;
}
.magazineFoodIntrod .recipe li:before {
  content: "";
  position: absolute;
  left: 2.3rem;
  top: 0;
  height: 100%;
  border-left: 1px solid #F0F0F0;
}
.magazineFoodIntrod .recipe li:last-child:before {
  content: none;  
}
.magazineFoodIntrod .recipe li .step {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 4.6rem;
  height: 4.6rem;
  background: #95D1A5;
  border-radius: 100%;
  letter-spacing: 0.05em;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 300;
}

.magazineFoodIntrod .characterBox {
  overflow: hidden;
  margin-top: 10rem;
  border-radius: 2rem;
}
.magazineFoodIntrod .characterBox .th {
  padding: 2.3rem 1rem 1.6rem;
  background: #12A047;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
  font-size: 2.9rem;
  font-weight: bold;
}
.magazineFoodIntrod .characterBox .td {
  padding: 4.6rem 4.5rem;
  background: #FCFAF4;
}
.characterBox .td li {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.characterBox .td li + li {
  margin-top: 5.5rem;
}
.characterBox .td .img {
  width: 19.8rem;
	    border-radius: 1rem;
    overflow: hidden;
}
.characterBox .td .info {
  width: calc(100% - 23.6rem);
}
.characterBox .td .tit {
  margin-bottom: 1rem;
  letter-spacing: 0.05em;
  font-size: 2.2rem;
  font-weight: bold;
}
.characterBox .td .txt {
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
}
.magazineFoodIntrod .btn {
  margin-top: 6rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .magazineLatestRecipes li .img:hover img {
    transform: scale(1.1,1.1);
  }
}
@media screen and (max-width: 767px) {
  .magazineAbout {
    padding: 3rem 0;
  }
  .magazineAbout .hdM {
    margin-bottom: 1.6rem;
  }
  .magazineAbout .hdM .foucs {
    font-size: 2.4rem;
  }
  .magazineAbout .sub {
    text-align: center;
    line-height: 1.75;
    font-size: 1.6rem;
  }
  .magazineAbout ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 3rem 0;
    margin-top: 4rem;
  }
  
  .magazineLatestRecipes {
    padding: 0;
	  padding-bottom: 4em;
  }
	.magazineLatestRecipes .hdS {
    margin-bottom: 1.2rem;
}
  .magazineLatestRecipes .hdS .jap {
    font-size: 2.8rem;
  }
  .searchTitle {
    margin-bottom: 3.6rem;
  }
  .searchTitle input[type=text] {
    padding: 0 1rem;
    height: 3.6rem;
    width: 60%;
    font-size: 1.2rem;
  }
  .searchTitle .search {
    padding: 0 3rem 0 1.4rem;
    height: 3.6rem;
    background-position: right 1rem center;
    background-size: 1.2rem;
    font-size: 1.3rem;
  }

  .magazineLatestRecipes ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.2rem 1.5rem;
  }
  .magazineLatestRecipes li .img {
    margin-bottom: 1rem;
  }
  .magazineLatestRecipes li .dt {
    grid-gap: .4rem .8rem;
	  margin-bottom: 0.5rem;
  }
  .magazineLatestRecipes li .date {
    font-size: 0.8rem;
  }
  .magazineLatestRecipes li .sign {
    padding: 0.3rem 1rem;
    font-size: 0.9rem;
  }
  .magazineLatestRecipes li .name {
    font-size: 1.1rem;
  }
  
  .magazineDisplay {
    display: block; 
    margin-bottom: 8rem;
  }
  .magazineDisplay .banner {
    margin-bottom: 3.5rem;
    width: auto;
  }
  .magazineDisplay .info {
    width: auto;
  }
  .magazineDisplay .banner .pic {
    height: 24rem;
  }
  .magazineDisplay .banner img {
    object-fit: cover;
    height: 100%;
  }
  .magazineDisplay .magazineIntrod .features {
    padding: 6.2rem 1rem 0;
    font-size: 2.2rem;
  }
  .magazineDisplay .magazineIntrod .features:before {
    top: 1.4rem;
    font-size: 1.5rem;
  }
  .magazineDisplay .magazineIntrod .eng {
            font-size: 2.8rem;
        left: 1.6rem;
        top: 1rem;
  }
  .magazineDisplay .magazineIntrod .date .year {
    font-size: 1.5rem;
  }
  .magazineDisplay .magazineIntrod .date .year:before {
    font-size: 1.8rem;
  }
  .magazineDisplay .magazineIntrod .date .day {
    font-size: 5rem;
  }
  .magazineDisplay .info .tit {
    line-height: 2;
  }
  
  .magazineDetailIntrod {
    padding: 8rem 0 4rem;
  }
  .magazineDetailIntrod:before {
    width: 500%;
  }
  .magazineDetailIntrod .hd01 {
    margin-bottom: 3rem;
    padding: 2.6rem 1rem;
    font-size: 1.6rem;
  }
  .magazineDetailIntrod .hd01 .pre:before {
    right: calc(100% - 0.3rem);
    bottom: calc(100% - 0.9rem);
    width: 2.6rem;
    height: 2.4rem;
  }
  .magazineHead {
    margin-bottom: 1.6rem;
    padding-bottom: 2.8rem;
    font-size: 2rem;
  }
  .magazineDetailIntrod .hd03 {
    margin-bottom: 1.6rem;
    font-size: 1.8rem;
  }
  .magazineDetailIntrod .display .hd03 span {
    background: linear-gradient(to top, #F6FFC7 1.6rem, transparent 1.6rem);
  }
  .magazineDetailIntrod .display:nth-of-type(even) .hd03 span {
    background: linear-gradient(to top, #BEE8FF 1.6rem, transparent 1.6rem);
  }
  .magazineDetailIntrod .part {
    margin-bottom: 5rem;
  }
  .magazineDetailIntrod .variation {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.5rem;
	  display: block;
  }
  .magazineDetailIntrod .variation li {
    padding: 2rem 2.4rem;
	          width: auto;
        margin-bottom: 3rem;
  }
  .magazineDetailIntrod .variation .pic {
    padding-top: 25rem;
    width: 25rem;
  }
  .magazineDetailIntrod .sub {
    margin-bottom: 2.5rem;
    font-size: 1.4rem;
  }
  .magazineDetailIntrod .display {
    display: block;
    padding: 2rem;
    margin-bottom: 4rem;
  }
  .magazineDetailIntrod .display .pick {
    left: -1.3rem;
    top: -3rem;
    padding: 0 1rem 0 2rem;
    width: 11.4rem;
        height: 11.2rem;
        font-size: 3rem;
  }
  .magazineDetailIntrod .display .img {
    width: auto;
  }
  .magazineDetailIntrod .display .info {
    width: auto;
  }
  .magazineDetailIntrod .display .img {
    box-shadow: 1rem 1rem 0 #F6FFC7;
  }
  .magazineDetailIntrod .display:nth-of-type(even) .img {
    box-shadow: 1rem 1rem 0 #BEE8FF;
  }
  .magazineDetailIntrod .display .marker {
    margin: 3.6rem 1rem 3rem;
  }
  .magazineDetailIntrod .display .marker .icon,
  .magazineDetailIntrod .display:nth-of-type(even) .marker .icon {
    width: 12.7rem;
  }
  .magazineDetailIntrod .display .marker .icon:before {
    left: -1.3rem;
    top: -0.8rem;
    width: 2.6rem;
    height: 2.4rem;
  }
  .magazineDetailIntrod .display .marker .notes {
    right: -1.2rem;
    top: -1.3rem;
    width: 17.4rem;
    height: 11.6rem;
    font-size: 1.3rem;
  }
  .magazineDetailIntrod .display .txt {
    font-size: 1.4rem;
  }
  .magazineDetailIntrod .display .btn {
    text-align: center;
  }
  
  .magazineFoodIntrod {
    padding: 0 0 8rem;
  }
  .magazineFoodIntrod .display {
    display: block;
  }
  .magazineFoodIntrod .display .box {
    margin-bottom: 3rem;
    padding: 2.4rem 2.2rem 2rem;
    width: auto;
  }
  .magazineFoodIntrod .display .info {
    width: auto;
  }
  .magazineFoodIntrod .display .magazineHead {
    margin-bottom: 1rem;
    padding-bottom: 3rem;
    background-size: auto 2rem;
    font-size: 2rem;
  }
  .magazineFoodIntrod .display .txt {
    font-size: 1.4rem;
  }
  .magazineFoodIntrod .display .case {
    margin-bottom: 1.8rem;
  }
  .magazineFoodIntrod .display .case .th {
    padding: 0.2rem 1rem 0.1rem;
  }
  .magazineFoodIntrod .display .time {
    padding-left: 4.4rem;
    margin-bottom: 3.2rem;
    background-size: 2.8rem;
  }
  .magazineFoodIntrod .display .time .num {
    font-size: 2.1rem;
  }
  .magazineFoodIntrod .hd01 {
    margin-bottom: 0.5rem;
    padding-left: 2.2rem;
    min-height: 4.5rem;
    font-size: 1.4rem;
  }
  .magazineFoodIntrod .hd01 .big {
    font-size: 1.8rem;
  }
  .magazineFoodIntrod .material li {
    padding: 1.4rem 1rem;
    font-size: 1.4rem;
  }
  
  .magazineFoodIntrod .recipe {
    margin-top: 3.5rem;
  }
  .magazineFoodIntrod .recipe .hd01 {
    margin-bottom: 2.6rem;
  }
  .magazineFoodIntrod .recipe li {
    position: relative;
    padding: 0.4rem 0 1.4rem 4.2rem;
    font-size: 1.4rem;
  }
  .magazineFoodIntrod .recipe li:before {
    left: 1.4rem;
  }
  .magazineFoodIntrod .recipe li .step {
    width: 2.9rem;
    height: 2.9rem;
    font-size: 1.2rem;
  }
  .magazineFoodIntrod .characterBox {
    margin-top: 6rem;
  }
  .magazineFoodIntrod .characterBox .th {
    padding: 2rem 1rem;
    font-size: 2rem;
  }
  .magazineFoodIntrod .characterBox .td {
    padding: 2.4rem 2rem;
  }
  .characterBox .td li {
    display: block;
  }
  .characterBox .td li + li {
    margin-top: 4rem;
  }
  .characterBox .td .img {
    margin: 0 auto 1.2rem;
    width: 24.8rem;
  }
  .characterBox .td .info {
    width: auto;
  }
  .characterBox .td .tit {
    margin-bottom: 1.6rem;
    text-align: center;
    font-size: 1.8rem;
  }
  .magazineFoodIntrod .btn {
    margin-top: 5rem;
  }
 .bgRed {
	margin-top: 5em!important;
}
	
}


/* form */
.applicationWrap {
  padding: 0 0 15rem;
}

.entryForm {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 12rem 2rem; 
  border-radius: 0 0 2rem 2rem;
}
.entryForm:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  z-index: -1;
  transform: translateX(-50%);
  width: 350%;
  height: 100%;
  background: #F7F7F7;
  border-radius: 100% 100% 0 0;
}
.entryForm .hdS {
  margin-bottom: 6rem;
  text-align: center;
}
.entryForm .sub {
  margin-bottom: 6rem;
  text-align: center;
  line-height: 2;
  font-weight: 500;
}
.entryForm .inputDate {
  margin: 0 auto;
  max-width: 68.4rem;
}
.entryForm .must {
  display: inline-block;
  padding: 0.4rem 0.6rem 0.3rem;
  background: #DB2030;
  border-radius: 0.5rem;
  line-height: 1;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
}
.mw_wp_form form table {
  width: 100%;
}
.mw_wp_form form th {
  display: block;
  margin-bottom: 1.2rem;
  width: 100%;
  font-weight: bold;
  font-size: 1.8rem;
}
.mw_wp_form form td {
  display: block;
  margin-bottom: 3rem;
  width: 100%;
  /*color: #D1D1D1;*/
  font-weight: bold;
  font-size: 1.8rem;
}
.mw_wp_form form th .must {
  margin-left: 1.2rem;
}
.entryForm input[type=text],
.entryForm input[type=email] {
  padding: 0 2rem;
  height: 5rem;
  width: 100%;
  background: #fff;
  border-radius: 1rem;
  border: 1px solid #EFEFEF;
  font-weight: bold;
}
.entryForm select {
  padding: 0 4rem 0 2rem;
  height: 6rem;
  width: 100%;
  background: url("../image/common/icon_select.svg")no-repeat right 2rem center #fff;
  border-radius: 1rem;
  border: 1px solid #EFEFEF;
  color: #D1D1D1;
  font-weight: bold;
}
.entryForm .colspan3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 2.5rem;
}
.entryForm .colspan3 .item {
  display: flex;
  align-items: center;
}
.entryForm .colspan3 .fun {
  margin-right: 0.6rem;
	    color: black;
}
.choiceRadio label {
  display: inline-flex;
  align-items: center;
  padding: 0 2rem;
  height: 6rem;
  width: 33.6rem;
  background: #fff;
  border-radius: 1rem;
  border: 1px solid #EFEFEF;
}
.choiceRadio input {
  display: inline-block;
  margin-right: 1rem;
  width: 2.1rem;
  height: 2.1rem;
  background: url("../image/common/icon_radio.svg")no-repeat center;
  background-size: 100%;
}
.choiceRadio input:checked {
  background-image: url("../image/common/icon_radio_checked.svg");
}
.entryForm .inputFile {
  padding: 1.5rem 1.6rem;
  background: #fff;
  border-radius: 1rem;
  border: 1px solid #EFEFEF;
}
.entryForm textarea {
  resize: none;
  padding: 1rem 2rem;
  height: 20rem;
  width: 100%;
  background: #fff;
  border-radius: 1rem;
  border: 1px solid #EFEFEF;
}
.entryForm .personalInfo {
  padding: 3.5rem 4rem;
  background: #EFECE5;
  border-radius: 1rem;
  line-height: 1.785;
  font-size: 1.4rem;
  font-weight: 500;
}
.entryForm .personalInfo h3 {
  margin-bottom: 2rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid #ccc;
  line-height: 1.35;
  font-size: 2.3rem;
  font-weight: bold;
}
.entryForm .agree {
  margin-top: 4.5rem;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
}
.entryForm .agree input {
  display: inline-block;
  vertical-align: middle;
  margin-right: 2rem;
  width: 2.4rem;
  height: 2.4rem;
  background: url("../image/common/icon_checkbox.svg")no-repeat center;
  background-size: 100%;
}
.entryForm .agree input:checked {
  background-image: url("../image/common/icon_checkbox_checked.svg");
}
.entryForm .personalInfo a,
.entryForm .agree a {
  text-decoration: underline;
}
.teamBtns {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 4.4rem;
  text-align: center;
}
.teamBtns .btn {
  transition: all 0.3s;
  width: calc(50% - 0.8rem);
  max-width: 33rem;
  height: 6.9rem;
  border: 1px solid;
  border-radius: 1rem;
  letter-spacing: 0.2em;
  color: #fff;
  font-size: 2.3rem;
  font-weight: bold;
}
.teamBtns .edit {
  background: #403E3E;
  border-color: #403E3E;
}
.teamBtns .submit {
  background: #DB2030;
  border-color: #DB2030;
}

.thankBox {
  padding: 8rem 5rem 7rem;
  margin: 0 auto;
  max-width: 102rem;
  border-radius: 6rem;
  box-shadow: 0 2rem 5rem rgba(160, 0, 0, 0.16);
  text-align: center;
}
.thankBox .hdS {
  margin-bottom: 3.6rem;
}
.thankBox .hdS .jap {
      font-size: 4rem;
    color: #DB2030;
}
.thankBox .sub {
  line-height: 2.125;
  font-weight: bold;
}
.thankBox .btn {
  margin-top: 5rem;
}

.contactWrap {
  padding-bottom: 15rem;
}
.contactWrap .entryForm .hdS .jap {
  font-size: 3.1rem;
}
.contactWrap .thankBox .hdS .jap {
  font-size: 3.2rem;
}

.contactCates ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
}
.contactCates li {
  overflow: hidden;
  background: #fff;
  border-radius: 3rem;
  box-shadow: 0 0 4rem rgba(168,41,41,0.15);
}
.contactCates li .img {
  height: 23rem;
  overflow: hidden;
  transition: all 0.3s;
}
.contactCates li .img img {
  transition: all 0.3s;
  width: 100%;
}
.contactCates li .info {
  position: relative;
  padding: 2.8rem 2rem 5.2rem;
}
.contactCates li .info:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: calc(100% - 2px);
  width: 100%;
  height: 4.2rem;
  background: url("../image/contact/bg_line.png")no-repeat center top;
  background-size: 100% 100%;
}
.contactCates li .hdM {
  text-align: center;
}
.contactCates li .hdM .foucs {
  letter-spacing: 0;
  font-size: 2.2rem;
}
.contactCates li .hdM .sub {
  letter-spacing: 0;
  color: #ADADAD;
  font-size: 2.2rem;
  font-weight: bold;
}
.contactCates li .btn {
  margin-top: 3.6rem;
  text-align: center;
}

.contactBox {
  overflow: hidden;
  margin: 0 auto 10rem;
  max-width: 90.4rem;
  border-radius: 2rem;
}
.contactBox .th {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.2rem 2rem;
  min-height: 7.6rem;
  background: #009638;
  text-align: center;
  line-height: 1.6667;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
}
.contactBox .td {
  padding: 4rem 4.8rem;
  background: #fff;
  line-height: 1.625;
  font-weight: 500;
}
.contactBox .lookingNotes {
  display: flex;
  justify-content: center;
  font-size: 1.8rem;
  font-weight: 500;
}
.contactBox .lookingNotes li {
  padding: 0.8rem 0;
  padding-left: 1.25em;
  text-indent: -1.25em;
}
.lookingNotes .emphasis {
  display: inline-block;
  margin-left: 1rem;
  padding: 0.3rem 1.6rem 0.2rem;
  background: #DB2030;
  border-radius: 5rem;
  line-height: 1.3;
  text-indent: 0;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
}
.contactTransaction {
  display: flex;
  margin-top: 3.6rem;
  border: 1px solid rgba(112,112,112, 0.2);
}
.contactTransaction .item {
  padding: 2.5rem 3.5rem 3rem;
}
.contactTransaction .item + .item {
  border-left: 1px solid rgba(112,112,112, 0.2);
}
.contactTransaction .products {
  width: 60%;
}
.contactTransaction .circulation {
  width: 40%;
}
.contactTransaction .tit {
  margin-bottom: 2rem;
  text-align: center;
  color: #009638;
  font-size: 2rem;
  font-weight: bold;
}
.contactTransaction .circulation ul {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem 0;
}
.contactTransaction .circulation li {
  padding: 1.5rem 1rem;
  background: #FCFAF4;
  border-radius: 1rem;
  line-height: 1.4;
  text-align: center;
  font-weight: bold;
}

.policyWrap {
  padding: 0 0 15rem;
}
.newsWrap .teaserTitle,
.policyWrap .teaserTitle {
  padding-bottom: 0rem;
}

.policyWrap .teaserTitle02 {
      margin-top: 3rem;
}

.policyForm table {
  width: 100%;
}
.policyForm tr {
  border-bottom: 1px solid #D1D1D1;
}
.policyForm th {
  vertical-align: middle;
  padding: 4.2rem 1rem 4.2rem 0;
  width: 35rem;
  color: #DB2030;
  font-size: 2rem;
  font-weight: bold;
}
.policyForm td {
  vertical-align: top;
  padding: 4.2rem 0;
  line-height: 1.5;
  font-size: 1.6rem;
  font-weight: 500
}
.policyForm td p + p {
  margin-top: 2rem;
}
.policyForm .notes {
  padding-left: 1.25em;
}
.policyForm .notes li {
  list-style: decimal;
}

@media screen and (min-width: 768px) {
  .entryForm .agree a:hover,
  .entryForm .personalInfo a:hover {
    text-decoration: none;
  }
  .teamBtns .edit:hover {
    opacity: 0.7;
  }
  .teamBtns .submit:hover {
    background: none;
    color: #DB2030;
  }
  
  .contactCates li:hover .img img {
    transform: scale(1.1,1.1);
  }

}
@media screen and (max-width: 767px) {
  .applicationWrap {
    padding: 0 0 8rem;
  }
  
  .entryForm {
    padding: 5rem 2rem 5.8rem;
    margin: 0 -2rem;
    border-radius: 0;
  }
  .entryForm:before {
    width: 500%;
  }
  .entryForm .hdS {
    margin-bottom: 3rem;
  }
  .entryForm .sub {
    margin-bottom: 3.6rem;
    font-size: 1.4rem;
  }
  .entryForm .must {
    font-size: 1.2rem;
  }
  .mw_wp_form form th {
    margin-bottom: 0.8rem;
    font-size: 1.4rem;
  }
  .mw_wp_form form td {
    margin-bottom: 2rem;
    font-size: 1.4rem;
  }
  .entryForm .colspan3 {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem 0;
  }
  .entryForm input[type=text],
  .entryForm input[type=email] {
    padding: 0 1.5rem;
    height: 4.8rem;
  }
  .entryForm select {
    padding: 0 2.5rem 0 1.5rem;
    height: 4.8rem;
    background-position: right 1.5rem center;
    background-size: 0.7rem;
  }
  .choiceRadio label {
    padding: 0 1rem;
    height: 4rem;
    width: 100%;
  }
  .entryForm .inputFile {
    padding: 1rem;
  }
  .entryForm textarea {
    padding: 0.8rem 1.5rem;
    height: 27.8rem;
  }
  .entryForm .personalInfo {
    padding: 3rem 2rem 2rem;
  }
  .entryForm .personalInfo h3 {
    margin-bottom: 2rem;
    padding-bottom: 1.6rem;
    font-size: 1.6rem;
  }
  .entryForm .agree {
    margin-top: 3.6rem;
    font-size: 1.4rem;
  }
  .entryForm .agree input {
    margin-right: 1rem;
  }
  .teamBtns {
    margin-top: 4rem;
  }
  .teamBtns .btn {
    height: 4.4rem;
    width: calc(50% - 0.4rem);
    font-size: 1.4rem;
  }
  
  .thankBox {
    padding: 5rem 2rem;
    border-radius: 2rem;
  }
  .thankBox .hdS  {
    margin-bottom: 2.4rem;
  }
  .thankBox .hdS .jap {
    font-size: 2.3rem;
  }
  .thankBox .sub {
    line-height: 1.785;
    font-weight: bold;
    font-size: 1.4rem;
  }
  .thankBox .btn {
    margin-top: 3rem;
  }
  .thankBox .btn a {
    font-size: 1.4rem;
  }
  
  .contactWrap {
    padding-bottom: 8rem;
  }
  .contactWrap .entryForm .hdS .jap {
    font-size: 1.8rem;
  }
  .contactWrap .thankBox .hdS .jap {
    font-size: 2.5rem;
  }
  .contactWrap .contactBox {
    margin-bottom: 5rem;
  }
  .contactBox .th {
    padding: 1.5rem 0.5rem;
    min-height: 6rem;
    font-size: 1.4rem;
  }
  .contactBox .td {
    padding: 2rem 1.4rem;
    font-size: 1.4rem;
  }
  .contactBox .td .subTit {
    text-align: center;
  }
  .contactBox .lookingNotes {
    font-size: 1.4rem;
  }
  .contactBox .lookingNotes li {
    padding: 0.3rem 0;
    padding-left: 1.25em;
  }
  .lookingNotes .emphasis {
    margin-left: 0;
    font-size: 1.2rem;
  }
  .contactTransaction {
    display: block;
    margin-top: 2rem;
  }
  .contactTransaction .item {
    padding: 2.8rem 0;
  }
  .contactTransaction .item + .item {
    border-left: 0;
    border-top: 1px solid rgba(112, 112, 112, 0.2);
  }
  .contactTransaction .products,
  .contactTransaction .circulation {
    width: auto;
  }
  .contactTransaction .tit {
    margin-bottom: 1rem;
    font-size: 1.6rem;
  }
  .contactTransaction {
    border-width: 1px 0 0;
  }
  .contactTransaction .circulation ul {
    gap: 1rem 0;
  }
  .contactTransaction .circulation li {
    padding: 1rem;
  }
  
  .contactCates ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 4.8rem 0;
  }
  .contactCates li .info:before {
    height: 3.8rem;
  }
  .contactCates li .hdM .foucs {
    font-size: 1.9rem;
  }
  .contactCates li .btn {
    margin-top: 3.2rem;
  }
  
  .policyWrap {
    padding: 0 0 8rem;
  }
  .policyForm th {
    display: block;
    padding: 3rem 0 1.6rem;
    width: 100%;
    font-size: 1.6rem;
  }
  .policyForm td {
    display: block;
    padding: 0 0 3rem;
    width: 100%;
    font-size: 1.4rem;
  }
  
  
}


.mw_wp_form_confirm .agree,
.mw_wp_form_confirm .personalInfo{
  display: none;
}
.agree .mwform-checkbox-field label, 
.agree .mwform-radio-field label{
  font-weight: bold;
}

.mw_wp_form_confirm .colspan3{
  display: flex;
  grid-gap: 0;
}
.mw_wp_form_confirm .inputFile{
  display: none;
}

.mw_wp_form_confirm .teamBtns input[name='reset']{
  display: none;
}

/*0910*/
.committeeWrap{
  background: #EFFDF2;
  padding: 13.5rem 0 20rem;
}
.committeeWrap .inner{
  max-width: 124.4rem;
}
.committeeWrap .hdM{
  text-align: center;
  margin-bottom: 4rem;
}
.committeeWrap .hdM .foucs{
  font-size: 4rem;
}
.committeeWrap .hdM .eng{
  font-size: 2rem;
}
.committeeWrap .txt{
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.875;
  margin: 0 auto 7rem;
  max-width: 85rem;
}

@media screen and (max-width: 767px) {
  .sustainabilityTop .txt{
  }

  .committeeWrap{
    background: #EFFDF2;
    padding: 6rem 0;
  }
  .committeeWrap .inner{
    max-width: 124.4rem;
  }
  .committeeWrap .hdM{
    text-align: center;
    margin-bottom: 2rem;
  }
  .committeeWrap .hdM .foucs{
    font-size: 2.2rem;
  }
  .committeeWrap .hdM .eng{
    font-size: 1.4rem;
  }
  .committeeWrap .txt{
    line-height: 1.785;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0 auto 3rem;
    max-width: 85rem;
  }
}

.philosophyTop{
  background: none;
}
.philosophyTop .banner{
  margin-top: 10rem;
  height: 73.6rem;
}
.philosophyTop .banner .con{
  height: auto;
}
.philosophyTop .banner .bg{
  background: url(../image/philosophy/bg_banner.png)no-repeat center center;
  background-size: 100vw 100%;

}
.philosophyTop .banner .con dl{
  padding: 10rem 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.philosophyTop .banner .con dt{
  width: 54.5rem;
}
.philosophyTop .banner .con dd{
  width: 55.7rem;
}
.shunen60{
	font-size: 3rem;
    text-align: center;
    border: 1px solid #C6C6C6;
    border-radius: 1rem;
    padding: 3rem;
}

@media screen and (max-width: 767px) {
	.shunen60{
	font-size: 1.6rem;
    padding: 2rem;
}
	.detail .messageDisplay2{
		padding: 0;
	}

  .philosophyTop .banner .inner{
    max-width: 37.5rem;
  }
  .philosophyTop .banner{
    margin-top: 4rem;
    height: 84rem;
  }
  .philosophyTop .banner .con{
    height: auto;
  }
  .philosophyTop .banner .bg{
    background: url(../image/philosophy/bg_banner.png)no-repeat center center;
    background-size: auto 100%;

  }
  .philosophyTop .banner .con dl{
    padding: 8rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column-reverse;
  }
  .philosophyTop .banner .con dt{
    width: auto;
  }
  .philosophyTop .banner .con dd{
    width: auto;
    margin-bottom: 4rem;
  }
}

.careerCenter td.letter_spaceing{
  letter-spacing: -.05em;
}


.marukeibuzu li{
	    padding: 4rem 3rem 1.8rem;
}

.linepop{
	text-align: center;
}
.linepop p{
	font-size: 2rem;
    font-weight: 600;
}
.linepop img{
	max-width: 250px;
	margin: 2vh 0 3rem;
}

.linepop h3{
font-size: 2.5rem;
    margin-top: 6.6vh;
    margin-bottom: 2rem;
    color: #12A047;
	font-weight: 600;
}

@media screen and (max-width: 767px) {
	.linepop img{
	max-width: 200px;
}
	.linepop h3 {
		font-size: 1.8rem;}
	.linepop p {
		font-size: 1.3rem;}
}




