@charset "UTF-8";

#thoughts main {
  background: #D1D1D1;
}

@media screen and (min-width: 768px),print {
#thoughts .seo_bread_list {
  max-width: 1600px;
  margin-inline: auto;
}

.p-mv {
	background-color: #D1D1D1; /* 背景色を指定 */
	background-image: url(../images/thoughts/mv_bg.png); /* 画像を指定 */
	background-position: top center; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-block: -11rem -30.5rem;
}

.p-mv .l-inner.l-mv {
	padding-block: 13.5rem 27.1rem;
}

.p-mv .p-mv__en {
	margin-bottom: -5.3rem;
	text-align: center;
}

.p-mv .p-mv__content {
	display: grid;
	grid-template-columns: 66% minmax(0, 1fr);
	margin-inline: auto;
	width: min(95%, 1600px);
}

.p-mv .p-mv__ttl {
	display: grid;
	gap: 0rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 3.125rem;
}

.p-mv .p-mv__ttl span.top {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.6;
}

.p-mv .p-mv__ttl span.bottom {
  font-size: 3.5rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1.5892857143;
  white-space: nowrap;
}

.p-mv .p-mv__txt {
	margin-bottom: 3.75rem;
}

.p-mv .p-mv__txt p.top {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1.9090909091;
	margin-bottom: 1.7rem;
}

.p-mv .p-mv__txt p.bottom {
	margin-bottom: 0;
}

.p-mv .p-mv__txt p {
	color: inherit;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.9090909091;
	margin-bottom: 2.7rem;
}

.p-mv .p-mv__content-right {
	left: -4rem;
	position: relative;
	top: -3rem;
}

.p-mv .p-mv__content-right .logo {
	margin-bottom: 3.5rem;
	text-align: center;
	position: relative;
	left: -3rem;
}

.p-vision {
	padding-block: 0 8.75rem;
	position: relative;
	z-index: 1;
}

.p-vision .l-inner.l-vision {
	background: #D1D1D1;
	margin-inline: auto;
	padding-block: 3.75rem 12.5rem;
	width: min(95%, 1800px);
}

.p-vision .p-vision__en {
	margin-bottom: -4rem;
	text-align: center;
}

.p-vision .p-vision__ttl {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 2rem;
}

.p-vision .p-vision__ttl p {
	font-size: 60px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.6;
	text-align: center;
}

.p-vision .p-vision__txt {
	font-size: 1.375rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.8;
	margin-bottom: 13.75rem;
	margin-inline: auto;
	text-align: center;
	width: min(90%, 1200px);
}

.p-vision .p-vision__contents-box {
	background-color: #ffffff; /* 背景色を指定 */
	background-image: url(../images/thoughts/line.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-bottom: 11rem;
	margin-inline: auto;
	padding-block: 0 6rem;
	position: relative;
	width: min(95%, 1400px);
}

.p-vision .p-vision__contents-box::after {
	background: url(../images/thoughts/human01.png) no-repeat center center/contain;
	bottom: 0.4rem;
	content: "";
	height: 16.875rem;
	position: absolute;
	right: 9.375rem;
	width: 11.25rem;
}

.p-vision .p-vision__contents-box .p-vision__contents {
	align-items: flex-end;
	display: grid;
	grid-template-columns: 48.3870967742% 56.4516129032%;
	margin-bottom: -3.625rem;
	margin-inline: auto;
	width: min(95%, 1240px);
	position: relative;
	top: -7.5rem;
}

.p-vision .p-vision__contents-box .p-vision__contents-left {
	position: relative;
	z-index: 10;
}

.p-vision .p-vision__contents-box .p-vision__contents-left h3 {
	display: grid;
	gap: 0.625rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 2.5rem;
}

.p-vision .p-vision__contents-box .p-vision__contents-left p.top {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.7272727273;
	margin-bottom: 1.0625rem;
}

.p-vision .p-vision__contents-box .p-vision__contents-left .txt {
	position: relative;
	right: -1rem;
}

.p-vision .p-vision__contents-box .p-vision__contents-left .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
}

.p-vision .p-vision__contents-box .p-vision__contents-left .txt p.bottom {
	margin-block: 1.25rem 0;
}

.p-vision .p-vision__contents-box .p-vision__contents-right {
	left: -4rem;
	position: relative;
	z-index: 1;
}

.p-vision .p-vision__contents-box .p-vision__contents02 {
	display: grid;
	gap: 0 2.5rem;
	grid-template-columns: 38.1818181818% 58.1818181818%;
	margin-bottom: 4.375rem;
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
	margin-block: 0rem 1em;
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p span {
	font-weight: 700;
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p.bottom {
	margin-block: 0;
}

.p-vision .p-vision__contents-box .p-vision__bottom p {
	font-size: 1.375rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.3636363636;
	text-align: center;
}

.p-vision .p-vision__contents-box .p-vision__bottom p.top {
	color: #00388D;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.9;
}

.p-vision .p-vision__contents-box02 {
	background-color: #ffffff; /* 背景色を指定 */
	background-image: url(../images/thoughts/line.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-inline: auto;
	padding-block: 0 6.375rem;
	width: min(95%, 1400px);
}

.p-vision .p-vision__contents-box02 .p-vision__contents {
	/* align-items: center; */
	display: grid;
	grid-template-columns: 56.4516129032% 45%;
	margin-bottom: -8rem;
	margin-inline: auto;
	width: min(95%, 1240px);
	position: relative;
	top: -5rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-left {
	position: relative;
	z-index: 1;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right {
	left: -3.5rem;
	position: relative;
	z-index: 10;
	top: 2.5rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right h3 {
	display: grid;
	gap: 0.625rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 2.6875rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right p {
	left: 6rem;
	position: relative;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right p.top {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.7272727273;
	margin-bottom: 1.0625rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt {
	position: relative;
	right: 0rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
	width: 86%;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt p.bottom {
	margin-block: 2.25rem 0;
}

.p-vision .p-vision__contents-box02 .p-vision__items-box {
	background: #D1D1D1;
	margin-bottom: 2.5rem;
	margin-inline: auto;
	padding-block: 2rem 2rem;
	position: relative;
	width: min(95%, 1000px);
	z-index: 11;
}

.p-vision .p-vision__contents-box02 .p-vision__items-box .p-vision__items {
	display: grid;
	gap: 0.8rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 710px);
}

.p-vision .p-vision__contents-box02 .p-vision__items-box .p-vision__item {
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.9;
	padding-left: 2.25rem;
	position: relative;
}

.p-vision .p-vision__contents-box02 .p-vision__items-box .p-vision__item:before {
	background: url(../images/thoughts/check.svg) no-repeat center center/contain;
	content: "";
	height: 1.8125rem; 
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 2.1875rem; 
}

.p-vision .p-vision__contents-box02 .p-vision__contents02 {
	display: grid;
	gap: 0 2.5rem;
	grid-template-columns: 58.1818181818% 38.1818181818%;
	margin-bottom: 4rem;
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt {
	display: contents;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt p.bottom {
	margin-block: 0.5rem 0;
}

.p-vision .p-vision__contents-box02 .p-vision__contents03 {
	align-items: center;
	display: grid;
	gap: 0 2.5rem;
	grid-template-columns: 46.6666666667% 50%;
	margin-inline: auto;
	width: min(95%, 1200px);
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-right .txt p {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.7272727273;
	margin-bottom: 2.6875rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-right .txt p.bottom {
	color: inherit;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
	margin-block: 2.25rem 0;
}

.p-vision02 {
	background: #ffffff;
	padding-block: 0 0rem;
	position: relative;
	z-index: 2;
}

.p-vision02 .l-inner.l-vision {
	background: #ffffff;
	margin-inline: auto;
	padding-block: 3.75rem 0rem;
	width: min(95%, 1800px);
	position: relative;
	top: -13rem;
}

.p-vision02 .p-vision__en {
	margin-bottom: -4.5rem;
	text-align: center;
}

.p-vision02 .p-vision__ttl {
	display: grid;
	gap: 0rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 14.125rem;
}

.p-vision02 .p-vision__ttl p {
	font-size: 60px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.6;
	text-align: center;
}

.p-vision02 .p-vision__contents-box {
	background-color: #f5f5f5; /* 背景色を指定 */
	background-image: url(../images/thoughts/line.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-bottom: 12rem;
	margin-inline: auto;
	padding-block: 0 5.375rem;
	position: relative;
	width: min(95%, 1400px);
}

.p-vision02 .p-vision__contents-box::after {
	background: url(../images/thoughts/human02.png) no-repeat center center/contain;
	bottom: 0.6rem;
	content: "";
	height: 16.875rem;
	position: absolute;
	right: 10.375rem;
	width: 11.8125rem;
}

.p-vision02 .p-vision__contents-box .p-vision__contents {
	align-items: flex-end;
	display: grid;
	grid-template-columns: 45.1612903226% 56.4516129032%;
	margin-bottom: -1.5rem;
	margin-inline: auto;
	width: min(95%, 1240px);
	position: relative;
	top: -5rem;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left {
  position: relative;
  z-index: 10;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left h3 {
	display: grid;
	gap: 0.625rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 2.6875rem;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left p.top {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.7272727273;
	margin-bottom: 2.0625rem;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt {
	position: relative;
	right: -1.3rem;
	width: 84.5%;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p.bottom {
	margin-block: 2.25rem 0;
  color: #00388D;
  font-size: 1.375rem;
  line-height: 1.8;
  font-weight: 600;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p.bottom span {
  background: #00388D;
  width: 2.5rem;
  height: 0.125rem;
  display: inline-block;
  position: relative;
  top: -0.5rem;
  left: 0.2rem;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-right {
	position: relative;
  left: -1rem;
	z-index: 1;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02 {
	display: grid;
	gap: 0 2.5rem;
	grid-template-columns: 38.1818181818% 58.1818181818%;
	margin-bottom: 5rem;
	margin-inline: auto;
	width: min(95%, 1100px);
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p span {
	font-weight: 700;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p.bottom {
	margin-block: 2.25rem 0;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p {
	text-align: center;
  color: #00388D;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.71875;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p.top {
  position: relative;
  left: -7.5rem;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p.top span {
  background: #00388D;
  width: 3.5rem;
  height: 0.25rem;
  display: inline-block;
  position: relative;
  top: -0.6rem;
  left: 0.2rem;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p.bottom {
  position: relative;
  left: 2.5rem;
}

.p-vision02 .p-vision__contents-box02 {
	background-color: #F5F5F5; /* 背景色を指定 */
	background-image: url(../images/thoughts/line.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-inline: auto;
	padding-block: 0 6.375rem;
	width: min(95%, 1400px);
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents {
	align-items: center;
	display: grid;
	grid-template-columns: 56.4516129032% 45%;
	margin-bottom: -1rem;
	margin-inline: auto;
	width: min(95%, 1240px);
	position: relative;
	top: -5rem;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-left {
	position: relative;
	z-index: 1;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right {
	left: -5rem;
	position: relative;
	z-index: 10;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right h3 {
	display: grid;
	gap: 0.625rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 2.6875rem;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right p {
	left: 7.5rem;
	position: relative;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right p.top {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0em;
	line-height: 1.7272727273;
	margin-bottom: 1.0625rem;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt {
	position: relative;
	right: 0rem;
	width: 84%;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt p.bottom {
	margin-block: 1.25rem 0;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02 {
	display: grid;
	gap: 0 2rem;
	grid-template-columns: 50.5% 50.9%;
	margin-bottom: 0rem;
	margin-inline: auto;
	width: min(95%, 1200px);
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.375;
	margin-bottom: 1.6875rem;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p.center {
	color: #00388D;
	font-size: 1.375rem;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.9090909091;
	margin-bottom: -0.5rem;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p.center span {
  background: #00388D;
  width: 2.5rem;
  height: 0.125rem;
  display: inline-block;
  position: relative;
  top: -0.5rem;
  left: 0.2rem;
  margin-inline: 0 0.5rem;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p.bottom {
	margin-block: 2.6875rem 0;
}

.p-link .l-inner.l-link {
	padding-block: 8.5rem 8.5rem;
}

.p-link .p-link__ttl {
	font-size: 36px;
	font-weight: 700;
	letter-spacing: 0.09em;
	line-height: 1.6666666667;
	margin-bottom: 3.125rem;
	text-align: center;
}

.p-link .p-link__items {
	display: grid;
	gap: 0 2.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-inline: auto;
	width: min(90%, 1800px);
}

.p-link .p-link__items .p-link__item a .img {
	margin-bottom: 1.25rem;
}

.p-link .p-link__items .p-link__item a .img img {
}

.p-link .p-link__items .p-link__item a p {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.875;
	text-align: center;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1900px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1900px) {
.p-mv .p-mv__en img {
  width: 85%;
  margin-inline: auto;
}

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

/* ========================================
@media screen and (min-width:768px) and ( max-width:1500px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1500px) {
.p-mv .p-mv__content-right .logo {
  margin-bottom: 3.5rem;
  text-align: center;
  position: relative;
  left: 0rem;
}
  
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1450px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1450px) {
.p-vision .p-vision__contents-box .p-vision__contents-right img {
  width: 95%;
  height: auto;        
}

.p-vision .p-vision__contents-box .p-vision__contents-right {
  left: -1rem;
}

.p-vision .p-vision__contents-box .p-vision__contents-left img {
  width: 100%;
  height: auto;        
}

.p-vision .p-vision__contents-box .p-vision__contents02-left img {
  width: 100%;
  height: auto;        
}

.p-vision .p-vision__contents-box02 .p-vision__contents-left img {
  width: 100%;
  height: auto;        
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right img {
  width: 100%;
  height: auto;        
}

.p-vision .p-vision__contents-box02 .p-vision__contents-left img {
  width: 100%;
  height: auto;        
}

.p-vision02 .p-vision__contents-box .p-vision__contents-right img {
  width: 100%;
  height: auto;        
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left img {
  width: 100%;
  height: auto;        
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-right img {
  width: 100%;
  height: auto;        
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-left img {
  width: 100%;
  height: auto;        
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-left img {
  width: 100%;
  height: auto;        
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right img {
  width: 100%;
  height: auto;        
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-right img {
  width: 92%;
  height: auto;        
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-left img {
  width: 92%;
  height: auto;        
}

.p-vision .p-vision__contents-box02 .p-vision__contents {
  margin-bottom: -6rem;
}

.p-vision .p-vision__contents-box::after {
  right: 4.3rem;
}

.p-vision02 .p-vision__contents-box::after {
  right: 4.3rem;
}

.p-vision .p-vision__ttl p {
	font-size: 4.138vw;
}

.p-vision02 .p-vision__ttl p {
	font-size: 4.138vw;
}


}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1300px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1300px) {
.p-mv .p-mv__content-right {
  left: -2rem;
}

.p-mv .p-mv__content-right div.img img {
  width: 100%;        
}

.p-vision .p-vision__contents-box .p-vision__contents-left p.top {
  font-size: 18px;
}

.p-vision .p-vision__contents-box::after {
  right: 0;
}

.p-vision02 .p-vision__contents-box::after {
  right: 0;
}


}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1100px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1100px) {
.p-vision .p-vision__contents-box .p-vision__contents-left .txt {
  position: relative;
  right: 0rem;
}

.p-vision .p-vision__contents-box02 .p-vision__contents {
  margin-bottom: 0rem;
}

.p-vision .p-vision__contents-box .p-vision__contents-right img {
  width: 90%;
  height: auto;        
}

.p-vision .p-vision__contents-box .p-vision__contents-right {
  left: 2rem;
}

.p-mv {
	margin-block: -12.5rem -30.5rem;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1000px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1000px) {
.p-vision .p-vision__contents-box .p-vision__contents-left .txt p {
  font-size: 14px;
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p {
  font-size: 14px;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt p {
  font-size: 14px;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt p {
  font-size: 14px;
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-right .txt p.bottom {
  font-size: 14px;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p {
  font-size: 14px;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p {
  font-size: 14px;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt p {
  font-size: 14px;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p {
  font-size: 14px;
}

.p-link .p-link__items .p-link__item a p {
  font-size: 14px;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:900px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:900px) {
.p-mv {
	margin-block: -14rem -30.5rem;
}
}

/* ========================================
@media screen and (max-width: 767px) {
======================================== */
@media screen and (max-width: 767px) {
/* vision
-------------------------------------*/
.p-mv {
  background-color: #D1D1D1; /* 背景色を指定 */
  background-image: url(../images/thoughts/mv_bg_sp.png); /* 画像を指定 */
  background-position: top center; /* 画像の位置を指定 */
  background-repeat: no-repeat; /* 画像を繰り返さない */
  background-size: cover; /* 画像のサイズ調整（必要に応じて変更） */
  margin-block: -9vw -141vw;
}

.p-mv .l-inner.l-mv {
  padding-block: 14.2vw 145.3vw;
  width: 100%;
}

.p-mv .p-mv__en {
  margin-bottom: -36.87vw;
  text-align: center;
}

.p-mv .p-mv__content {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-inline: auto;
  width: min(95%, 82.1vw);
}

.p-mv .p-mv__content-left {
  display: contents;
}

.p-mv .p-mv__ttl {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 7.662vw;
  order: 1;
}

.p-mv .p-mv__ttl span.top {
  font-size: 4.348vw;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 2.8333333333;
}

.p-mv .p-mv__ttl span.bottom {
  font-size: 7.246vw;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1.5666666667;
}

.p-mv .p-mv__txt {
  margin-bottom: 7.386vw;
  order: 2;
}

.p-mv .p-mv__txt p {
  font-size: 3.382vw;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 2.1428571429;
  margin-bottom: 7.2vw;
}

.p-mv .p-mv__txt p.bottom {
  margin-bottom: 0;
}

.p-mv .p-mv__txt p.top {
  color: #00388D;
  font-size: 4.348vw;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1.7777777778;
}

.p-mv .p-mv__content-right {
  display: grid;
  grid-template-columns: 21.014vw 57.425vw;
  left: 3vw;
  margin-bottom: -7.729vw;
  order: 3;
  position: relative;
  top: 1vw;
}

.p-mv .p-mv__content-right .logo {
  text-align: left;
  position: relative;
  left: 3vw;
}

.p-mv .p-mv__content-right .logo img {
  height: auto;
  width: 19.014vw;
}

.p-mv .p-mv__content-right .img {
  left: -4.797vw;
  position: relative;
  top: -3.797vw;
}

.p-vision {
	padding-block: 0 0vw;
}

.p-vision .l-inner.l-vision {
	background: #D1D1D1;
	margin-inline: auto;
	padding-block: 2.662vw 38.647vw;
	width: min(95%, 94.2vw);
}

.p-vision .p-vision__en {
	margin-bottom: -9vw;
	text-align: center;
}

.p-vision .p-vision__en img {
  width: 35.198vw;
  height: auto;
}

.p-vision .p-vision__ttl {
	display: grid;
	gap: 0vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 5.454vw;
}

.p-vision .p-vision__ttl p {
	font-size: 6.763vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.6;
	text-align: center;
}

.p-vision .p-vision__txt {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.125;
	margin-bottom: 27.918vw;
	margin-inline: auto;
	text-align: center;
	width: min(95%, 89.3vw);
}

.p-vision .p-vision__contents-box {
	background-color: #ffffff; /* 背景色を指定 */
	background-image: url(../images/thoughts/line_sp.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-bottom: 24.647vw;
	margin-inline: auto;
	padding-block: 0 14.734vw;
	position: relative;
	width: min(100%, 94.2vw);
}

.p-vision .p-vision__contents-box::after {
	background: url(../images/thoughts/human01_sp.png) no-repeat center center/contain;
	bottom: 2.15vw;
	content: "";
	height: 27.053vw;
	position: absolute;
	right: 0.797vw;
	width: 18.116vw;
}

.p-vision .p-vision__contents-box .p-vision__contents {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	/* width: min(95%, 91.7vw); */
	position: relative;
	top: -9vw;
}

.p-vision .p-vision__contents-box .p-vision__contents-left {
	order: 2;
	position: relative;
	z-index: 10;
	margin-bottom: 7vw;
}

.p-vision .p-vision__contents-box .p-vision__contents-left h3 {
	display: grid;
	gap: 1.932vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 6.246vw;
	position: relative;
	left: -3vw;
}

.p-vision .p-vision__contents-box .p-vision__contents-left p {
	margin-inline: auto;
	width: min(95%, 84.5vw);
}

.p-vision .p-vision__contents-box .p-vision__contents-left p.top {
	color: #00388D;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.8888888889;
	margin-bottom: 2.763vw;
}

.p-vision .p-vision__contents-box .p-vision__contents-left .txt {
	position: static;
}

.p-vision .p-vision__contents-box .p-vision__contents-left .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
}

.p-vision .p-vision__contents-box .p-vision__contents-left .txt p.bottom {
	margin-block: 0;
}

.p-vision .p-vision__contents-box .p-vision__contents-right {
	position: relative;
	right: -5vw;
	margin-bottom: -12vw;
}

.p-vision .p-vision__contents-box .p-vision__contents02 {
	display: grid;
	gap: 3.831vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: -0.198vw;
	position: relative;
	top: -8vw;
}

.p-vision .p-vision__contents-box .p-vision__contents02-left {
	margin-inline: auto;
	width: min(95%, 84.5vw);
}

.p-vision .p-vision__contents-box .p-vision__contents02-right {
	margin-inline: auto;
	width: min(95%, 84.5vw);
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
	margin-bottom: 7vw;
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p span {
	font-weight: 700;
}

.p-vision .p-vision__contents-box .p-vision__contents02-right .txt p.bottom {
	margin-block: -7vw 0vw;
}

.p-vision .p-vision__contents-box .p-vision__bottom p {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 2.1875;
	text-align: center;
}

.p-vision .p-vision__contents-box .p-vision__bottom p.top {
	color: #00388D;
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.9;
}

.p-vision .p-vision__contents-box02 {
	background-color: #ffffff; /* 背景色を指定 */
	background-image: url(../images/thoughts/line_sp.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-inline: auto;
	padding-block: 0 15.908vw;
	width: min(100%, 94.2vw);
}

.p-vision .p-vision__contents-box02 .p-vision__contents {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: -4.304vw;
	position: relative;
	top: -10vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-left {
	position: relative;
	right: -5vw;
	margin-bottom: -11vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right {
	position: relative;
  z-index: 10;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right h3 {
	display: grid;
	gap: 1.932vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 7.246vw;
	position: relative;
	left: -3vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right p {
	width: min(95%,85.1vw);
  margin-inline: auto;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right p.top {
	color: #00388D;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.8888888889;
	margin-bottom: 1.763vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt {
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
}

.p-vision .p-vision__contents-box02 .p-vision__contents-right .txt p.bottom {
	margin-block: 8.696vw 0;
}

.p-vision .p-vision__contents-box02 .p-vision__items-box {
	background: #D1D1D1;
	margin-bottom: 3.831vw;
	margin-inline: auto;
	padding-block: 6.179vw 5.971vw;
	width: min(95%, 89.3vw);
}

.p-vision .p-vision__contents-box02 .p-vision__items-box .p-vision__items {
	display: grid;
	gap: 3.763vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: 72.4637681159vw;
}

.p-vision .p-vision__contents-box02 .p-vision__items-box .p-vision__item {
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.875;
	padding-left: 3.246vw;
	position: relative;
}

.p-vision .p-vision__contents-box02 .p-vision__items-box .p-vision__item:before {
	background: url(../images/thoughts/check.svg) no-repeat center center/contain;
	content: "";
	height: 5.314vw;
	left: -4vw;
	position: absolute;
	top: 0.8vw;
	width: 6.2vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02 {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 84.5vw);
	margin-bottom: 8vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left {
  display: contents;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt {
  display: contents;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
	margin-bottom: 5.696vw;
	order: 1;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-left .txt p.bottom {
	margin-block: 0;
  order: 3;
}

.p-vision .p-vision__contents-box02 .p-vision__contents02-right {
	margin-bottom: 3.831vw;
	order: 2;
}

.p-vision .p-vision__contents-box02 .p-vision__contents03 {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 84.5410628019vw);
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-left {
	margin-bottom: 4.831vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-right .txt p {
	color: #00388D;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.8888888889;
	margin-bottom: 0vw;
}

.p-vision .p-vision__contents-box02 .p-vision__contents03-right .txt p.bottom {
	color: inherit;
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
	margin-block: 1.696vw 0;
}

.p-vision02 {
	background: #ffffff;
	padding-block: 0 9.816vw;
}

.p-vision02 .l-inner.l-vision {
	background: #ffffff;
	margin-inline: auto;
	padding-block: 1.662vw 0vw;
	width: min(95%, 94.2vw);
	position: relative;
	top: -14vw;
}

.p-vision02 .p-vision__en {
	margin-bottom: -9vw;
	text-align: center;
}

.p-vision02 .p-vision__en img {
  width: 37.198vw;
  height: auto;
}

.p-vision02 .p-vision__ttl {
	display: grid;
	gap: 1.106vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 9.454vw;
}

.p-vision02 .p-vision__ttl p {
	font-size: 6.763vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.6;
	text-align: center;
}

.p-vision02 .p-vision__contents-box {
	background-color: #F5F5F5; /* 背景色を指定 */
	background-image: url(../images/thoughts/line_sp.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-bottom: 24.647vw;
	margin-inline: auto;
	padding-block: 0 15vw;
	position: relative;
}

.p-vision02 .p-vision__contents-box::after {
	background: url(../images/thoughts/human02_sp.png) no-repeat center center/contain;
	bottom: 1.8vw;
	content: "";
	height: 27.053vw;
	position: absolute;
	right: 4.797vw;
	width: 18.116vw;
}

.p-vision02 .p-vision__contents-box .p-vision__contents {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	width: 100%;
	position: relative;
	top: -1vw;
	margin-bottom: 8vw;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left {
	order: 2;
  position: relative;
  z-index: 10;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left h3 {
	display: grid;
	gap: 1.932vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 6.246vw;
	position: relative;
	left: -3vw;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left p {
	margin-inline: auto;
	width: min(95%, 84.5410628019vw);
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left p.top {
	color: #00388D;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.8888888889;
	margin-bottom: 6.763vw;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt {
	position: static;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p.bottom {
	margin-block: 3.28vw 0;
	font-size: 4.348vw;
	line-height: 1.8;
	letter-spacing: 0.04em;
	font-weight: 700;
	color: #00388D;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-left .txt p.bottom span {
  background: #00388D;
  display: inline-block;
  width: 9.662vw;
  height: 0.483vw;
  position: relative;
  top: -1vw;
}

.p-vision02 .p-vision__contents-box .p-vision__contents-right {
	position: relative;
	right: -5vw;
	margin-bottom: -11vw;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02 {
	display: grid;
	gap: 2.831vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 6.802vw;
	margin-inline: auto;
	width: min(95%, 84.5410628019vw);
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right {
	margin-inline: auto;
	width: min(100%, 85.5vw);
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p span {
	font-weight: 700;
}

.p-vision02 .p-vision__contents-box .p-vision__contents02-right .txt p.bottom {
	margin-block: 8.696vw 0;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p {
	color: #00388D;
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.7083333333;
	text-align: center;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p span {
  background: #00388D;
  display: inline-block;
  width: 9.662vw;
  height: 0.8vw;
  position: relative;
  top: -1.5vw;
}

.p-vision02 .p-vision__contents-box .p-vision__bottom p.bottom {
	color: #00388D;
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.7083333333;
}

.p-vision02 .p-vision__contents-box02 {
	background-color: #F5F5F5; /* 背景色を指定 */
	background-image: url(../images/thoughts/line_sp.svg); /* 画像を指定 */
	background-position: bottom left; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-inline: auto;
	padding-block: 0 15.908vw;
	width: min(100%, 94.2vw);
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: -2.304vw;
	margin-inline: auto;
	width: 100%;
	position: relative;
	top: -10vw;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-left {
  position: relative;
  right: -5vw;
  margin-bottom: -11vw
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right {
  position: relative;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right h3 {
	display: grid;
	gap: 1.932vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 7.246vw;
	position: relative;
	left: -3vw;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right p {
		margin-inline: auto;
	width: min(100%, 85.5vw);
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right p.top {
	color: #00388D;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.8888888889;
	margin-bottom: 2.763vw;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt {
	position: static;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents-right .txt p.bottom {
	margin-block: 0vw 0;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02 {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 84.5410628019vw);
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left {
	order: 2;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.1428571429;
	margin-bottom: 2.28vw;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p span {
  background: #00388D;
  display: inline-block;
  width: 6vw;
  height: 0.4vw;
  position: relative;
  top: -1.2vw;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p.center {
	color: #00388D;
	font-size: 4.348vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.8888888889;
	margin-bottom: 2.005vw;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-left .txt p.bottom {
	margin-block: 0;
}

.p-vision02 .p-vision__contents-box02 .p-vision__contents02-right {
	margin-bottom: 4.831vw;
	order: 1;
}

.p-link .l-inner.l-link {
	padding-block: 19.014vw 18.014vw;
}

.p-link .p-link__ttl {
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.09em;
	line-height: 1.5833333333;
	margin-bottom: 4.662vw;
	text-align: center;
}

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

.p-link .p-link__items .p-link__item a .img {
	margin-bottom: 3.865vw;
}

.p-link .p-link__items .p-link__item a p {
	font-size: 3.382vw;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.7142857143;
	text-align: center;
}
}