@charset "UTF-8";

/* ========================================
@media screen and (min-width: 768px),print {
======================================== */
@media screen and (min-width: 768px),print {

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

.c-sec__en.access {
  margin-bottom: -45px;
}

.c-sec__ttl {
	font-size: 34px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.2058823529;
	margin-bottom: 68px;
	text-align: center;
}

.c-sec__ttl.history {
  margin-bottom: 48px;
}

.c-sec__ttl.access {
  margin-bottom: 118px;
}

.p-company {
	margin-block: 40px 123px;
}

.p-company .l-inner.l-company {
	margin-inline: auto;
	width: min(95%, 1000px);
}

.p-company .p-company__info {
	border-collapse: collapse;
	width: 100%;
}

.p-company .p-company__info-row {
	border-bottom: 1px solid #CFCECE;
}

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

.p-company .p-company__info-row-left {
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin: 0;
	padding: 39px 53px;
	text-align: left;
	width: calc(100% - 720px);
}

.p-company .p-company__info-row-right {
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin: 0;
	padding: 0px;
	text-align: left;
	vertical-align: middle;
	width: 720px;
}

.p-company .p-company__info-row-right.map {
  padding-block: 38px;
}

.p-company .p-company__info-row-right.con {
  padding-block: 38px;
}

.p-history {
	margin-bottom: 205px;
}

.p-history .l-inner.l-history {
	margin-inline: auto;
	width: min(95%, 906px);
}

.p-history .p-history__info {
	border-collapse: collapse;
	width: 100%;
	position: relative;
	left: 35px;
}

.p-history .p-history__info-row-left {
	border-right: 1px solid #A8A7A7;
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2.125;
	margin: 0;
	padding: 16px 0;
	position: relative;
	text-align: left;
	width: 74px;
}

.p-history .p-history__info-row:nth-child(9) .p-history__info-row-left {
  padding: 33px 0 15px;
}

.p-history .p-history__info-row:nth-child(10) .p-history__info-row-left {
  padding: 18px 0 0px;
}

.p-history .p-history__info-row:nth-child(11) .p-history__info-row-left {
  padding: 38px 0 16px;
}

.p-history .p-history__info-row:nth-child(9) .p-history__info-row-left::after {
  top: 47px;
}

.p-history .p-history__info-row:nth-child(10) .p-history__info-row-left::after {
  top: 30px;
}

.p-history .p-history__info-row:nth-child(11) .p-history__info-row-left::after {
  top: 52px;
}

.p-history .p-history__info-row-left::after {
	background: #A8A7A7;
	border-radius: 50%;
	content: "";
	height: 8px;
	position: absolute;
	right: -4px;
	top: 31px;
  top: clamp(1.563rem, 1.313rem + 0.52vw, 1.938rem);
	width: 8px;
}

.p-history .p-history__info-row-right {
	display: grid;
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 500;
	gap: 0 14px;
	grid-template-columns: 40px minmax(0, 1fr);
	letter-spacing: 0.05em;
	line-height: 2.125;
	margin: 0;
	padding: 0;
	padding-inline: 27px 0;
	width: calc(100% - 64px);
}

.p-history .p-history__info-row-right.last {
	display: block;
	padding-block: 0 16px;
}

.p-history .p-history__info-row-right .items {
	display: grid;
	gap: 15px 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-history .p-history__info-row-right .items li {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	gap: 0 14px;
  position: relative;
}

.p-history .p-history__info-row-right .items li:nth-child(2)::before {
  background: #A8A7A7;
  border-radius: 50%;
  content: "";
  height: 8px;
  position: absolute;
  content: "";
  left: -32px;
  top: 11px;
  width: 8px;
}

.p-history .p-history__info-row-right .items li:nth-child(3)::before {
  background: #A8A7A7;
  border-radius: 50%;
  content: "";
  height: 8px;
  position: absolute;
  content: "";
  left: -32px;
  top: 11px;
  width: 8px;
}

.p-history .p-history__info-row-right p {
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.p-history .p-history__info-row-right span {
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.p-access {
  margin-bottom: 196px;
}

.p-access .l-inner.l-access {
	margin-inline: auto;
	width: min(95%, 1150px);
}

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

.p-access .p-access__item {
	display: grid;
	gap: 0 57px;
	grid-template-columns: 45.2% 49.5%;
	padding-bottom: 52px;
}

.p-access .p-access__item:first-child {
	border-bottom: 1px dashed #090909;
}

.p-access .p-access__item .right iframe {
	height: 360px;
	width: 100%;
}

.p-access .p-access__item-ttl {
	font-size: 34px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.2058823529;
	margin-bottom: 114px;
}

.p-access .p-access__info {
	border-collapse: collapse;
	width: 100%;
}

.p-access .p-access__info-row-left {
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.75;
	padding-block: 8px;
	text-align: left;
	width: 92px;
}

.p-access .p-access__info-row-right {
	font-size: 16px;
  font-size: clamp(0.813rem, 0.688rem + 0.26vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
	text-align: left;
	width: calc(100% - 83px);
}

.p-access .p-access__item-ttl-wrap {
	display: flex;
	gap: 0 16px;
}

.p-access .p-access__item-label {
	background: #090909;
	color: #ffffff;
	font-size: 15px;
	font-weight: 500;
	height: -moz-fit-content;
	height: fit-content;
	letter-spacing: 0.05em;
	line-height: 1.2;
	padding: 10px 12px;
	width: -moz-fit-content;
	width: fit-content;
}

#company .p-link {
	background-image: url(../images/common/link_bg.jpg); /* 画像を指定 */
	background-position: top left; /* 画像の位置を指定 */
	background-repeat: repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	position: relative;
}

#company .p-link:before {
	background: url(../images/company/link_icon.svg) no-repeat center center/contain;
	content: "";
	height: 148px;
	left: calc(50% - 300px);
	position: absolute;
	top: -40px;
	width: 144px;
}

#company .p-link .l-inner.l-link {
	margin-inline: auto;
	padding-block: 57px 89px;
	width: min(95%, 1100px);
}

#company .p-link .p-link__en {
	margin-bottom: 37px;
	text-align: center;
}

#company .p-link .p-link__ttl {
	font-size: 32px;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.8125;
	margin-bottom: 83px;
	text-align: center;
}

#company .p-link .p-link__items {
	display: flex;
	flex-wrap: wrap-reverse;
	gap: 39px 40px;
	justify-content: center;
  width: min(100%,1100px);
  margin-inline: auto;
}

#company .p-link .p-link__item {
	width: 338px;
}

#company .p-link .p-link__item:nth-child(1) {
	order: 4;
}

#company .p-link .p-link__item:nth-child(2) {
	order: 5;
}

#company .p-link .p-link__item:nth-child(3) {
	order: 1;
}

#company .p-link .p-link__item:nth-child(4) {
	order: 2;
}

#company .p-link .p-link__item:nth-child(5) {
	order: 3;
}

#company .p-link .p-link__item a {
	display: block;
}

#company .p-link .p-link__item a p {
	font-size: 14px;
  font-size: clamp(0.75rem, 0.667rem + 0.17vw, 0.875rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-block: 8px 0;
}

#company .p-link .p-link__item a img {
	height: auto;
	width: 100%;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1200px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1200px) {
.p-access .p-access__item .right iframe {
	height: 30vw;
	width: 100%;
}

.p-access .p-access__item-ttl {
	font-size: 2.833vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.2058823529;
	margin-bottom: 9.5vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1158px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1158px) {
#company .p-link .p-link__items {
	display: flex;
	flex-wrap: wrap-reverse;
	gap: 3.368vw 3.454vw;
	justify-content: center;
}

#company .p-link .p-link__item {
	width: 29.361vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1050px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1050px) {
.p-company .p-company__info-row-left {
	padding: 3.714vw 5.048vw;
	width: calc(100% - 68.571vw);
}

.p-company .p-company__info-row-right {
	width: 68.571vw;
}

.p-company .p-company__info-row-right.map {
  padding-block: 3.619vw;
}

.p-company .p-company__info-row-right.con {
  padding-block: 3.619vw;
}

.p-history .l-inner.l-inner.l-history {
  overflow: hidden;
}
}

/* ========================================
@media screen and (max-width: 767px) {
======================================== */
@media screen and (max-width: 767px) {
.c-sec__en {
	margin-bottom: -14.797vw;
	text-align: center;
}

.c-sec__en.company img {
	height: auto;
	width: 81.401vw;
}

.c-sec__en.history {
	margin-bottom: -18vw;
}

.c-sec__en.history img {
	height: auto;
	width: 67.401vw;
}

.c-sec__en.access img {
	height: auto;
	width: 58.213vw;
}

.c-sec__ttl {
	font-size: 5.797vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7916666667;
	margin-bottom: 11.841vw;
	text-align: center;
}

.c-sec__ttl.access {
  margin-bottom: 14vw;
}

.p-company {
	margin-block: 9.662vw 19.324vw;
}

.p-company .l-inner.l-company {
	margin-inline: auto;
	width: min(95%, 91.7vw);
}

.p-company .p-company__info {
	border-collapse: collapse;
	width: 100%;
}

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

.p-company .p-company__info-row:nth-child(1) {
	border: none;
}

.p-company .p-company__info-row-left {
	background: #EAEAEA;
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin: 0;
	padding: 6.039vw 7.246vw;
	text-align: left;
	width: 100%;
}

.p-company .p-company__info-row-right {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin: 0;
	padding-block: 5.039vw;
	padding-inline: 7.246vw 4.865vw;
	text-align: left;
	width: 100%;
}

.p-history {
	margin-bottom: 17.324vw;
}

.p-history .l-inner.l-history {
	margin-inline: auto;
	width: min(95%, 82.1vw);
}

.p-history .p-history__info {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
}

.p-history .p-history__info-row-left {
	border-right: 1px solid #A8A7A7;
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin: 0;
	padding: 5.8vw 0;
	position: relative;
	text-align: left;
	width: 13.802vw;
}

.p-history .p-history__info-row-left::after {
	background: #A8A7A7;
	border-radius: 50%;
	content: "";
	height: 1.932vw;
	position: absolute;
	right: -0.966vw;
	top: 8.2vw;
	width: 1.932vw;
}

.p-history .p-history__info-row-right {
	display: grid;
	font-size: 3.382vw;
	font-weight: 400;
	gap: 0 3.039vw;
	grid-template-columns: 8.696vw 52.415vw;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin: 0;
	padding: 0;
	padding-inline: 4.522vw 0;
	width: calc(100% - 12.802vw);
}

.p-history .p-history__info-row-right.last {
	display: block;
	padding-block: 0 5.8vw;
}

.p-history .p-history__info-row-right .items {
	display: grid;
	gap: 3.865vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-history .p-history__info-row-right .items li {
	display: grid;
	gap: 0 3.039vw;
	grid-template-columns: 8.696vw 52.415vw;
  position: relative;
}

.p-history .p-history__info-row-right .items li:nth-child(2)::before {
  background: #A8A7A7;
  border-radius: 50%;
  content: "";
  height: 1.932vw;
  position: absolute;
  content: "";
  left: -5.6vw;
  top: 2.5vw;
  width: 1.932vw;
}

.p-history .p-history__info-row-right .items li:nth-child(3)::before {
  background: #A8A7A7;
  border-radius: 50%;
  content: "";
  height: 1.932vw;
  position: absolute;
  content: "";
  left: -5.6vw;
  top: 2.5vw;
  width: 1.932vw;
}

.p-history .p-history__info-row-right p {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
}

.p-history .p-history__info-row-right span {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
}

.p-access {
  margin-bottom: 21vw;
}

.p-access .l-inner.l-access {
	margin-inline: auto;
	width: min(95%, 94.2vw);
}

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

.p-access .p-access__item {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	padding-bottom: 10.56vw;
}

.p-access .p-access__item:first-child {
	border-bottom: 1px dashed #090909;
}

.p-access .p-access__item .left {
	display: contents;
}

.p-access .p-access__item .right {
	order: 2;
	text-align: center;
}

.p-access .p-access__item .right iframe {
	height: 53.14vw;
	width: 86.957vw;
}

.p-access .p-access__item-ttl {
	font-size: 5.797vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7916666667;
	margin-bottom: 4.072vw;
	order: 1;
	text-align: center;
}

.p-access .p-access__info {
	border-collapse: collapse;
	margin-inline: auto;
	order: 3;
	table-layout: fixed;
	width: min(95%, 86.9vw);
}

.p-access .p-access__info-row-left {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	padding-block: 3.7vw 0;
	text-align: left;
	width: 21.633vw;
}

.p-access .p-access__info-row-right {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	text-align: left;
	width: calc(100% - 17.633vw);
}

.p-access .p-access__item-ttl-wrap {
	align-items: center;
	display: flex;
	gap: 0 2.415vw;
	justify-content: center;
	margin-bottom: 3.865vw;
}

.p-access .p-access__item-ttl-wrap .p-access__item-ttl {
	margin-bottom: 0;
}

.p-access .p-access__item-label {
	background: #090909;
	color: #ffffff;
	font-size: 3.623vw;
	font-weight: 500;
	height: -moz-fit-content;
	/* height: fit-content; */
	letter-spacing: 0.05em;
	line-height: 1.2;
	order: 2;
	padding: 1vw 2.899vw;
	width: -moz-fit-content;
	width: fit-content;
}

#company .p-link {
	background-image: url(../images/common/link_bg.jpg); /* 画像を指定 */
	background-position: top left; /* 画像の位置を指定 */
	background-repeat: repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	position: relative;
}

#company .p-link .l-inner.l-link {
  padding-block: 13vw 19vw;
}

#company .p-link:before {
	background: url(../images/company/link_icon.svg) no-repeat center center/contain;
	content: "";
	height: 22.464vw;
	left: calc(50% - 40.647vw);
	position: absolute;
	top: -8.797vw;
	width: 21.739vw;
}

#company .p-link .p-link__en {
	margin-bottom: 6.797vw;
	text-align: center;
}

#company .p-link .p-link__en img {
	height: auto;
	width: 46.86vw;
}

#company .p-link .p-link__ttl {
	font-size: 5.797vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.7916666667;
	margin-bottom: 11.043vw;
	text-align: center;
}

#company .p-link .p-link__items {
	display: grid;
	gap: 9.111vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 82.1vw);
}

#company .p-link .p-link__item {
	width: 100%;
}

#company .p-link .p-link__item a {
	display: block;
}

#company .p-link .p-link__item a p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-block: 2vw 0;
}

#company .p-link .p-link__item a img {
	height: auto;
	width: 100%;
}

}