@charset "UTF-8";
@media screen and (min-width: 768px),print {
.p-fv {
  margin-bottom: 88px;
}

.p-fv__img {
  margin-bottom: -35px;
  text-align: center;
}

.p-fv__img img {
  height: auto;
  width: 100%;
}

.p-fv__logo {
  text-align: center;
}

.p-fv__logo img {
  height: auto;
  width: 277px;
}

.p-company {
  margin-bottom: 120px;
}

.c-sec__en {
  margin-bottom: 15px;
  text-align: center;
}

.c-sec__ttl {
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
  margin-bottom: 55px;
  text-align: center;
}

.p-history {
  background: #F1EDE3;
  margin-inline: auto;
  width: min(100%, 1920px);
}

.l-inner.l-history {
  padding: 123px 0px 110px;
}


.p-sdgs{ width: 960px; margin: 160px auto 160px;}
.p-sdgs .ttl-frame{}
.p-sdgs .p-sdgs-frame{
-webkit-box-orient:horizontal;-webkit-box-direction:normal;
-ms-flex-wrap: wrap;flex-wrap: wrap;
display:-webkit-box;display:-ms-flexbox;display:flex;}
.p-sdgs .p-sdgs-frame .sdgs-block{ width: 295px; margin:0 47px 0 0;}
.p-sdgs .p-sdgs-frame .sdgs-block .imgttl{margin: 12px 0 14px 0;}
.p-sdgs .p-sdgs-frame .sdgs-block .list{
display:-webkit-box;display:-ms-flexbox;display:flex;
-ms-flex-wrap: wrap;flex-wrap: wrap;
-webkit-box-orient:horizontal;-webkit-box-direction:normal;}
.p-sdgs .p-sdgs-frame .sdgs-block .list li{margin:0 9px 0 0;}
.p-sdgs .p-sdgs-frame .sdgs-block .list li:nth-child(2){margin:0 0 0 0;}
.p-sdgs .p-sdgs-txtframe{ width: 617px;}
.p-sdgs .p-sdgs-txtframe .subt{font-size: 22px;font-weight:bold;line-height: 1.6;letter-spacing: 1px;margin: 0 0 15px 0;}
.p-sdgs .p-sdgs-txtframe .txt{font-size: 13px;line-height: 1.7;letter-spacing: 1px;margin: 0 0 15px 0;}
.p-sdgs .p-sdgs-txtframe .txt-list{background-color:#F4F4F4;padding: 15px 10px 15px 20px;}
.p-sdgs .p-sdgs-txtframe .txt-list li{ font-size: 16px; line-height: 1.6; letter-spacing: 1px; }

.p-zeh{margin:0 0 120px 0;}
.p-zeh .ttl-frame{}
.p-zeh .zeh-zu{text-align: center;}
.p-zeh .zeh-txt{ width: 1000px;margin: 10px auto 0; font-size: 14px; line-height: 1.6; letter-spacing: 1px; }
.p-zeh .zeh-txt a{ text-decoration: underline;}


.p-access {
  background: url(../images/company/company_bg.jpg) no-repeat bottom center/contain;
  margin-bottom: 120px;
  margin-inline: auto;
  max-width: 1920px;
  width: 100%;
}

.l-inner.l-access {
  padding: 127px 0px 134px;
}

.p-access__box {
  background: #fff;
  margin-inline: auto;
  padding: 32px 32px 32px;
  width: min(95%, 1100px);
}

.p-access__box iframe {
  height: 500px;
  width: 100%;
  -o-object-fit: cover;
  margin-bottom: -2px;
  object-fit: cover;
}

.p-access__box p {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7142857143;
  text-align: center;
}

.p-link {
  margin-bottom: 157px;
}

.l-inner.l-link {
  margin-inline: auto;
  width: min(95%, 1300px);
}

.p-link__items {
  display: grid;
  gap: 37px 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link__subitems {
  display: grid;
  gap: 0 60px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-inline: auto;
  width: min(95%, 960px);
}

.p-link__sub02items {
  display: grid;
  gap: 0 42px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-inline: auto;
  width: min(100%, 1300px);
}

.p-link__item a {
  display: inline-block;
}

.p-link__item a img {
  height: auto;
  margin-bottom: 5px;
  width: 100%;
}

.p-link__item a p {
  font-size: 14px;
  font-size: clamp(0.8125rem, 0.7708333333rem + 0.0868055556vw, 0.875rem);
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
  text-align: center;
  white-space: nowrap;
}

.p-company__info {
	border-collapse: collapse;
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-company__info-row {
	border-bottom: 1px solid#8F8F8F;
}

.p-company__info-row:nth-child(1) {
	border-top: 1px solid#8F8F8F;
}

.p-company__info-row-left {
	background:#F4F4F4;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin: 0;
	padding: 40px 18px 38px 49px;
	text-align: left;
	width: 240px;
}

.p-company__info-row:nth-child(n + 14) .p-company__info-row-left {
  padding: 32px 18px 23px 49px;
}

.p-company__info-row.top .p-company__info-row-left {
  padding: 38px 18px 65px 49px;
}

.p-company__info-row:nth-child(n + 14) .p-company__info-row-right,
.p-company__info-row.top .p-company__info-row-right {
  line-height: 1.6;
  padding: 0px 18px 0px 39px;
}

.p-company__info-row.top .p-company__info-row-right {
  line-height: 2.2;
}

.p-company__info-row-right {
	background: #fff;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin: 0;
	padding: 0 40px 0;
	text-align: left;
	width: calc(100% - 240px);
}

.p-history__info {
	background: #fff;
	border-collapse: collapse;
	margin-inline: auto;
	position: relative;
	width: min(95%, 1100px);
}

.p-history__info::after {
	background: url(../images/company/line.svg) no-repeat top center/cover;
	content: "";
	height: 320px;
	left: 204px;
	position: absolute;
	top: 46px;
	width: 7px;
}

.p-history__info-row {
	border-bottom: 1px solid #8f8f8f;
}

.p-history__info-row:nth-child(1) {
	border-top: 1px solid #8f8f8f;
}

.p-history__info-row-left {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin: 0;
	padding: 42px 50px 36px;
	text-align: left;
	width: 207px;
}

.p-history__info-row-right {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 2;
	margin: 0;
	padding: 0 75px 0;
	text-align: left;
	width: calc(100% - 207px);
}

}







@media screen and (min-width:768px) and (max-width:1110px) {
.p-sdgs { width: 86.49vw; margin: 14.41vw auto 14.41vw; }
.p-sdgs .ttl-frame { }
.p-sdgs .p-sdgs-frame { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-wrap: wrap; flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; }
.p-sdgs .p-sdgs-frame .sdgs-block {width: 31.58vw;margin: 0 1.23vw 0 0;}
.p-sdgs .p-sdgs-frame .sdgs-block .imgttl { margin: 1.08vw 0 1.26vw 0;width: 25vw; }
.p-sdgs .p-sdgs-frame .sdgs-block .imgttl img{ width: 100%;}
.p-sdgs .p-sdgs-frame .sdgs-block .list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; }
.p-sdgs .p-sdgs-frame .sdgs-block .list li {margin: 0 0.81vw 0 0;width: 13vw;}
.p-sdgs .p-sdgs-frame .sdgs-block .list li img{width: 100%; }
.p-sdgs .p-sdgs-frame .sdgs-block .list li:nth-child(2) { margin: 0 0 0 0; }
.p-sdgs .p-sdgs-txtframe {width: 53.59vw;}
.p-sdgs .p-sdgs-txtframe .subt {/* font-size: 1.98vw; */font-weight: bold;/* line-height: 1.6; *//* letter-spacing: 0.25vw; */margin: 0 0 1.35vw 0;}
.p-sdgs .p-sdgs-txtframe .txt {/* font-size: 1.17vw; *//* line-height: 1.7; *//* letter-spacing: 0.25vw; */margin: 0 0 1.35vw 0;}
.p-sdgs .p-sdgs-txtframe .txt-list { background-color: #F4F4F4; padding: 1.35vw 0.9vw 1.35vw 1.8vw; }
.p-sdgs .p-sdgs-txtframe .txt-list li {/* font-size: 1.44vw; *//* line-height: 1.6; *//* letter-spacing: 0.25vw; */}
.p-zeh { margin: 0 0 10.81vw 0; }
.p-zeh .ttl-frame { }
.p-zeh .zeh-zu { text-align: center; padding: 0px 3vw 0px 3vw; width: 90vw; margin: 0 auto; }
.p-zeh .zeh-zu img{width: 100%;}
}


@media screen and (min-width:768px) and (max-width:1110px) {
.p-zeh .zeh-txt{width:84vw;margin:0.909vw auto 0;}
.p-zeh .zeh-txt a{text-decoration:underline;}
}


@media screen and (max-width: 767px) {
.p-company {
  margin-bottom: 15vw;
}
  
.p-company__info {
  border-collapse: collapse;
  margin-inline: auto;
  width: min(95%,89.3vw);
}

.p-company__info-row {
  border: none;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-company__info-row-left {
  background: #F4F4F4;
  font-size: 3.382vw;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.625;
  margin: 0;
  padding: 4vw 4.831vw 4.831vw;
  text-align: left;
  width: 100%;
}

.p-company__info-row-right {
  background: #fff;
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.625;
  margin: 0;
  padding: 6vw 1.831vw 7vw 4.831vw;
  text-align: left;
  width: 100%;
}

.p-company__info-row-right span {
  font-size: 2.899vw;
  line-height: 2.3;
  letter-spacing: 0.05em;
};

.p-history {
  background: #F1EDE3;
  margin-bottom: 4vw;
}

.l-inner.l-history {
  padding: 18vw 0 15vw;
}

.p-history__info {
  border-collapse: collapse;
  margin-inline: auto;
  width: min(95%,89.3vw);
  background: #fff;
  position: relative;
}

.p-history__info::after {
  background: url(../images/company/sp_line.svg) no-repeat top center/contain;
  content: "";
  height: 100%;
  left: 5.797vw;
  position: absolute;
  top: 12.077vw;
  width: 2.415vw;
}

.p-history__info-row {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  border-bottom: 0.2vw solid #8f8f8f;
}

.p-history__info-row-left {
  font-size: 3.382vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.625;
  margin: 0;
  padding: 6.522vw 12.077vw 1.657vw;
  text-align: left;
  width: 100%;
}

.p-history__info-row-right {
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.625;
  margin: 0;
  padding: 0px 0px 5.072vw 12.077vw;
  text-align: left;
  width: 100%;
}




.p-sdgs{width: 100%;margin: 30vw auto 25vw;}
.p-sdgs .ttl-frame{}
.p-sdgs .p-sdgs-frame{}
.p-sdgs .p-sdgs-frame .sdgs-block{width: 100%;margin: 0 11.35vw 0 0;}
.p-sdgs .p-sdgs-frame .sdgs-block .imgttl{margin: 2.9vw auto 7.38vw auto;text-align: center;width: 65vw;}
.p-sdgs .p-sdgs-frame .sdgs-block .list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;width: 73vw;margin: 0 auto 8vw;}
.p-sdgs .p-sdgs-frame .sdgs-block .list li{margin: 0 2.17vw 0 0;}
.p-sdgs .p-sdgs-frame .sdgs-block .list li img{width:35vw;}
.p-sdgs .p-sdgs-frame .sdgs-block .list li:nth-child(2){margin: 0 0 0 0;}
.p-sdgs .p-sdgs-txtframe{width: 100%;}
.p-sdgs .p-sdgs-txtframe .subt{text-align: center; font-size: 4.83vw;font-weight: bold;line-height: 1.6;letter-spacing: 0.25vw;margin: 0 0 3.62vw 0;}
.p-sdgs .p-sdgs-txtframe .txt{font-size: 3.14vw;line-height: 1.8;letter-spacing: 0.25vw;margin: 0 auto 5.62vw auto;width: 84vw;}
.p-sdgs .p-sdgs-txtframe .txt-list{background-color: #F4F4F4;width: 90vw;margin: 0 auto;padding: 4.62vw 2.41vw 3.62vw 4.83vw;}
.p-sdgs .p-sdgs-txtframe .txt-list li{font-size:3.62vw;line-height: 1.8;letter-spacing: 0.25vw;}

.p-zeh{position:relative;width: 90vw; margin: 0 auto 25vw;}
.p-zeh .ttl-frame{}
.p-zeh .zeh-zu{ }
.p-zeh .zeh-zu p{width: 200vw; padding: 3vw 0px 3vw 0px;}
.p-zeh .zeh-zu p img{width: 100%;}

.p-zeh .zeh-txt{ width: 90vw;margin: 3vw auto 0; font-size:3.2vw; line-height: 1.6; letter-spacing:0.2vw; }
.p-zeh .zeh-txt a{ text-decoration: underline;}




.p-access {
  background: none;
  margin-bottom: 18.324vw;
}

.l-inner.l-access {
  padding: 14.493vw 0 0vw;
}

.p-access__box {
  padding: 0;
  width: 100%;
}

.p-access__box iframe {
  height: 62.802vw;
  width: 100%;
  -o-object-fit: cover;
  margin-bottom: 0.415vw;
  object-fit: cover;
}

.p-access__box p {
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7142857143;
  text-align: center;
}

.p-link {
  margin-bottom: 27.155vw;
}

.l-inner.l-link {
  margin-inline: auto;
  width: min(95%,92vw);
}

.p-link__items {
  display: grid;
  gap: 4.072vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link__subitems {
  display: grid;
  gap: 4.072vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link__sub02items {
  display: grid;
  gap: 5.072vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link__item a {
  display: inline-block;
}

.p-link__item a img {
  height: auto;
  margin-bottom: 2.415vw;
  width: 100%;
}

.p-link__item a p {
  font-size: 3.382vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.8571428571;
  text-align: center;
  white-space: nowrap;
}

.p-fv {
  margin-bottom: 16.324vw;
}

.p-fv__img {
  width: 188.406vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin-inline: auto;
  margin-bottom: -4.628vw;
}

.p-fv__img img {
  height: auto;
  width: 100%;
}

.p-fv__logo {
  text-align: center;
  position: relative;
  z-index: 10;
}

.p-fv__logo img {
  height: auto;
  width: 49.14vw;
}

.c-sec__en {
  margin-bottom: 3.865vw;
  text-align: center;
}

.c-sec__ttl {
  font-size: 3.865vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2.6;
  margin-bottom: 8.454vw;
  text-align: center;
}

}