/* ----------------------------------------
.page-header
---------------------------------------- */

.lower-page .page-header {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	min-height: 320px;
	background-image: url("../img/common/page-header.png");
	background-position: center center;
	background-size: cover;
	color: #ffffff;
	padding: 50px 0;
}
.lower-page .page-header .title {
	font-size: var(--font-48);
	letter-spacing: 0.05em;
	line-height: 1.3;
	margin: 0 0 12px 0;
}
.lower-page .page-header .en {
	font-size: var(--font-32);
	font-weight: 600;
}
@media (max-width: 767px) {
	.lower-page .page-header {
		min-height: 220px;
		padding: 60px 0;
	}
	.lower-page .page-header .title {
		font-size: var(--font-28);
	}
	.lower-page .page-header .en {
		font-size: var(--font-14);
	}
}
@media (max-width: 575px) {
	.lower-page .page-header .container {
		padding-left: 15px;
		padding-right: 15px;
	}
}

/* ----------------------------------------
.breadcrumb-wrap
---------------------------------------- */

.breadcrumb-wrap {
	display: flex;
	align-items: center;
	min-height: 100px;
	font-size: var(--font-14);
	line-height: 1.8;
	background-color: #FAFAFA;
	padding: 20px 0;
}
.breadcrumb-wrap .container {
	max-width: 1100px;
}
.breadcrumb-wrap ol {
	position: relative;
	padding: 0;
	margin: 0;
	list-style-type: none;
	text-indent: 30px;
}
.breadcrumb-wrap ol::after {
	position: absolute;
	left: 0;
	top: 0.2em;
	content: "";
	clip-path: polygon(60% 0%, 100% 0%, 40% 100%, 0% 100%);
	background-color: var(--red);
	aspect-ratio: 1 / 1;
	width: 16px;
}
.breadcrumb-wrap ol li {
	display: inline;
	padding: 0;
	margin: 0 8px 0 0;
}
.breadcrumb-wrap ol li:last-child {
	margin: 0;
}
.breadcrumb-wrap ol li::before {
	font-family: "Material Symbols Sharp";
	content: "\e5e1";
	font-size: 90%;
	font-weight: 300;
	margin: 0 5px 0 0;
}
.breadcrumb-wrap ol li:first-child::before {
	content: none;
}
.breadcrumb-wrap ol li a {
	color: var(--red);
	font-weight: 500;
	text-decoration: underline;
}
@media (min-width: 768px) {
	.breadcrumb-wrap ol li a:hover {
		text-decoration: none;
	}
}
@media (max-width: 767px) {
	.breadcrumb-wrap {
		min-height: 60px;
	}
	.breadcrumb-wrap .container {
		padding-left: 20px;
		padding-right: 20px;
	}
	.breadcrumb-wrap ol {
		text-indent: 25px;
	}
	.breadcrumb-wrap ol::after {
		top: 0.25rem;
	}
}


/* ----------------------------------------
.lower-page .page-body
---------------------------------------- */

.lower-page .page-body {
	line-height: 1.8;
}
.lower-page .page-body .container {
	max-width: 1100px;
}
.lower-page .page-body .section-first {
	padding: 160px 0 0 0;
}
.lower-page .page-body .section-gray {
	background-color: #FAFAFA;
	padding: 117px 0 160px 0;
}
.lower-page .page-body p + p {
	margin-top: 2rem;
}
.lower-page .page-body .line-title {
	font-size: var(--font-26);
	margin: 60px 0 35px 35px;
}
.lower-page .page-body .section > .container > *:first-child {
	margin-top: 0;
}
.lower-page .page-body .section > .container > *:last-child {
	margin-bottom: 0;
}
@media (max-width: 767px) {
	.lower-page .page-body .section-first {
		padding: 80px 0 55px 0;
	}
	.lower-page .page-body .section-gray {
		padding: 80px 0 100px 0;
	}
	.lower-page .page-body .line-title {
		font-size: var(--font-22);
		line-height: 1.5;
		margin: 60px 0 35px 34px;
	}
	.lower-page .page-body .line-title::after {
		left: -34px;
	}
}

/* .red-wrap */
.lower-page .red-wrap {
	background-color: var(--red);
	padding: 40px;
}
.lower-page .red-wrap .proposal-dl {
	display: flex;
}
.lower-page .red-wrap:has(.proposal-dl.theme) {
	margin-top: 120px;
}
.lower-page .red-wrap:has(.proposal-dl.free) {
	margin-top: 80px;
}
.lower-page .red-wrap .proposal-dl dt,
.lower-page .red-wrap .proposal-dl dd {
	width: 50%;
}
.lower-page .red-wrap .proposal-dl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	background-position: center;
	background-size: cover;
	padding: 67px;
}
.lower-page .red-wrap .proposal-dl.theme dt {
	background-image: url("../img/about-lab/ph-proposal-01.jpg");
}
.lower-page .red-wrap .proposal-dl.free dt {
	background-image: url("../img/about-lab/ph-proposal-02.jpg");
}
.lower-page .red-wrap .proposal-dl dt img {
	
}
.lower-page .red-wrap .proposal-dl dd {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: var(--white);
}
.lower-page .page-body .red-wrap .proposal-dl dd .line-title {
	margin-bottom: 23px;
}
@media (max-width: 991px) {
	.lower-page .red-wrap {
		padding: 20px;
	}
	.lower-page .page-body .line-title {
		font-size: var(--font-22);
	}
	.lower-page .red-wrap .proposal-dl dd {
		padding: 34px 25px;
	}
}
@media (max-width: 767px) {
	.lower-page .red-wrap:has(.proposal-dl.theme) {
		margin-top: 80px;
	}
	.lower-page .red-wrap:has(.proposal-dl.free) {
		margin-top: 55px;
	}
	.lower-page .red-wrap .proposal-dl {
		flex-direction: column;
	}
	.lower-page .red-wrap .proposal-dl dt, 
	.lower-page .red-wrap .proposal-dl dd {
		width: 100%;
	}
	.lower-page .red-wrap .proposal-dl dt {
		padding: 30px;
	}
	.lower-page .red-wrap .proposal-dl dt img {
		width: 100px;
	}
	.lower-page .page-body .red-wrap .proposal-dl dd .line-title {
		margin-bottom: 20px;
	}
}
@media (max-width: 575px) {
	.lower-page .red-wrap {
		margin-left: -30px;
		margin-right: -30px;
	}
}

/* .lower-page .page-body ul.red-point */
.lower-page .page-body ul.red-point {
	list-style-type: disc; 
	padding-left: 2rem;
	margin-bottom: 0;
}
.lower-page .page-body ul.red-point > li::marker {
	color: var(--red);
}
.lower-page .page-body ul.red-point > li {
	position: relative;
	margin-bottom: 5px;
}
.lower-page .page-body ul.red-point > li a {
	color: var(--red);
	font-size: 500;
	text-decoration: underline;
	transition: 0.3s all;
}

/* .lower-page .section.links */
.lower-page.aboutus-page + .section.links,
.lower-page.aboutlab-page + .section.links,
.lower-page.keytheme-page + .section.links,
.lower-page.cfa-page + .section.links {
  border-top: 1px solid var(--gray);
}

/* ----------------------------------------
.aboutus-page
(public-private-partnerships)
---------------------------------------- */
.lower-page .page-body .section-first {
	padding-bottom: 80px;
}
.lower-page .page-body ol.point {
	counter-reset: my-counter;
	list-style: none;
	padding-left: 0;
	margin: 45px 0;
}
.lower-page .page-body ol.point li {
	counter-increment: my-counter;
	position: relative;
	font-weight: 500;
	line-height: 1.7;
	background-color: #ffffff;
	padding: 50px 48px 50px 116px;
}
.lower-page .page-body ol.point li + li {
	margin-top: 5px;
}
.lower-page .page-body ol.point li::before {
	content: counter(my-counter);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 44px;
	height: 44px;
	font-size: var(--font-22);
	font-weight: 700;
	color: #ffffff;
	background-color: var(--red);
}
.lower-page .page-body .etc-measure {
	margin-top: 45px;
}
.lower-page .page-body .etc-measure > ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px 140px;
}
.lower-page .page-body .etc-measure > ul > li {
  display: flex;
  width: 33.33%;
  padding: 0 10px;
  margin-bottom: 20px;
}
.lower-page .page-body .etc-measure .card-wrap {
  position: relative;
  display: block;
  background: var(--white);
  padding: 40px 32px 85px;
  box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, .05);
  width: 100%;
}
.lower-page .page-body .etc-measure .card-wrap .title {
  position: relative;
  color: var(--red);
  font-size: var(--font-22);
  font-weight: 600;
	line-height: 1.5;
  padding-bottom: 16px;
  margin-bottom: 13px;
}
.lower-page .page-body .etc-measure .card-wrap .title .small {
	font-size: var(--font-20);
	font-weight: 600;
	font-feature-settings: "palt";
}
.lower-page .page-body .etc-measure .card-wrap .title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  content: '';
  width: 100px;
  height: 2px;
  background-color: var(--red);
}
.lower-page .page-body .etc-measure .card-wrap .summary {
	margin-bottom: 0;
}
.lower-page .page-body .etc-measure .card-wrap .cat-wrap {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding: 5px 30px 38px 30px;
}
.lower-page .page-body .etc-measure .card-wrap .cat-wrap .more {
    display: flex;
    align-items: center;
    font-size: var(--font-14);
    font-weight: 500;
    color: var(--d-gray);
}
.lower-page .page-body .etc-measure .card-wrap .cat-wrap .more::after {
    font-family: "Material Symbols Sharp";
    content: "\e941";
    font-size: 20px;
    font-weight: 300;
}
.lower-page .page-body .etc-measure .btn {
  margin: 30px auto 0 auto;
}
@media (max-width: 991px) {
  .lower-page .page-body .etc-measure > ul > li {
    width: 50%;
  }
}
@media (min-width: 768px) {
	.lower-page .page-body ol.point li::before {
		position: absolute;
		left: 50px;
		top: 50%;
		transform: translateY(-50%);
	}
  .lower-page .page-body .etc-measure .card-wrap .cat-wrap {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .lower-page .page-body .etc-measure .card-wrap:hover .cat-wrap .more {
	  color: var(--red);
  }
  .lower-page .page-body .etc-measure .card-wrap:hover .cat-wrap .more span {
	  text-decoration: underline;
		text-decoration-thickness: 2px;
  }
}
@media (max-width: 767px) {
	.lower-page .page-body .section-first {
		padding-bottom: 55px;
	}
	.lower-page .page-body .section.section-gray.thinking {
		padding-bottom: 80px;
	}
	.lower-page .page-body ol.point {
		margin: 48px -10px;
	}
	.lower-page .page-body ol.point li {
		padding: 30px 20px;
	}
	.lower-page .page-body ol.point li::before {
		margin: 0 auto 15px auto;
	}
  .lower-page .page-body .etc-measure > ul {
    margin: 0 -10px 80px;
  }
  .lower-page .page-body .etc-measure > ul > li {
    width: 100%;
		padding: 0;
  }
  .lower-page .page-body .etc-measure .card-wrap {
    padding-bottom:  35px;
  }
  .lower-page .page-body .etc-measure .card-wrap .title {
    font-size: var(--font-20);
		margin-bottom: 15px;
  }
  .lower-page .page-body .etc-measure .card-wrap .title .small {
	  font-size: var(--font-18);
  }
  .lower-page .page-body .etc-measure .card-wrap .cat-wrap {
    padding: 0;
  }
}

/* ----------------------------------------
.aboutlab-page
(kawasaki-future-co-lab)
---------------------------------------- */
.lower-page.aboutlab-page .page-body .section-first {
	padding-bottom: 160px;
}
.lower-page.aboutlab-page .page-body .section-first p + figure {
	margin-top: 45px;
}
.lower-page.aboutlab-page .page-body .section-first .btn-wrap .btn {
	margin: 50px auto 80px auto;
}
.lower-page.aboutlab-page .page-body .section.task {
	padding-top: 85px;
	padding-bottom: 120px;
}
.lower-page.aboutlab-page .page-body .section.task p + .line-title {
	margin: 80px 0 45px 35px;
}
.lower-page.aboutlab-page .page-body .section.free,
.lower-page.aboutlab-page .page-body .section.achievements {
	padding-bottom: 120px;
}
.lower-page.aboutlab-page .page-body .section.notes {
	padding-top: 150px;
	padding-bottom: 120px;
}
.lower-page.aboutlab-page .page-body .achievements .btn,
.lower-page.aboutlab-page .page-body .section.notes .btn {
	margin-top: 45px;
}
.lower-page .page-body .red-wrap .proposal-dl dd .line-title {
	margin-top: 0;
}
.lower-page.aboutlab-page .page-body .section.staff .container {
	max-width: 1300px;
}
.lower-page.aboutlab-page .page-body .section.staff .kawasaki-staff-card-wrap {
	margin-top: 45px;
}
.lower-page.aboutlab-page .page-body .section.staff .btn {
	margin: 140px auto 0;
}
@media (max-width: 767px) {
	.lower-page.aboutlab-page .page-body .section-first {
		padding-bottom: 80px;
	}
	.lower-page.aboutlab-page .page-body .section-first figure {
		max-width: calc(100% + 20px);
		margin-right: -10px;
		margin-left: -10px;
	}
	.lower-page.aboutlab-page .page-body .section-first .btn-wrap .btn {
		margin-top: 35px;
	}
	.lower-page.aboutlab-page .page-body .section.task,
	.lower-page.aboutlab-page .page-body .section.free {
		padding-bottom: 80px;
	}
	.lower-page.aboutlab-page .page-body .section.free {
		padding-top: 80px;
	}
	.lower-page.aboutlab-page .page-body .section.notes,
	.lower-page.aboutlab-page .page-body .section.achievements {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.lower-page.aboutlab-page .page-body .section.task p + .line-title {
		margin: 77px 0 40px 34px;
	}
	.lower-page.aboutlab-page .page-body .section.staff .btn {
		margin-top: 80px;
	}
}

/* ----------------------------------------
.keytheme-page
(Key Co-Creation Fields Themes)
---------------------------------------- */
.lower-page.keytheme-page .page-body .section.theme .container {
	max-width: 1300px;
}
.lower-page.keytheme-page .page-body .line-title {
	margin-bottom: 45px;
}
.lower-page .theme-wrap > ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 -16px 128px;
}
.lower-page .theme-wrap > ul > li {
  display: flex;
  width: 50%;
  padding: 0 16px;
  margin-bottom: 32px;
}
.lower-page .theme-wrap .card-wrap {
  position: relative;
  display: block;
  background: var(--white);
  box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, .05);
}
.lower-page .theme-wrap .card-wrap .thum-wrap {
    position: relative;
}
.lower-page .theme-wrap .card-wrap .txt-wrap {
	padding: 43px 48px 63px;
}
.lower-page .theme-wrap .card-wrap .txt-wrap .title {
  position: relative;
  color: var(--red);
  font-size: var(--font-22);
  font-weight: 600;
  padding-bottom: 20px;
  margin-bottom: 15px;
}
.lower-page .theme-wrap .card-wrap .txt-wrap .title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  content: '';
  width: 100px;
  height: 2px;
  background-color: var(--red);
}
.lower-page .theme-wrap .card-wrap .txt-wrap p {
	margin-bottom: 35px;
}
.lower-page .theme-wrap ul + .btn {
	margin: 0 auto 0;
}
@media (max-width: 991px) {
	.lower-page .theme-wrap .card-wrap .txt-wrap {
		padding: 28px 30px 45px;
	}
	.lower-page .theme-wrap .card-wrap .txt-wrap .title {
		font-size: var(--font-20);
	}
	.lower-page .theme-wrap .card-wrap .txt-wrap p {
		margin-bottom: 25px;
	}
}
@media (max-width: 767px) {
	.lower-page .theme-wrap > ul {
		flex-direction: column;
		margin: 0 -16px 75px;
	}
	.lower-page .theme-wrap > ul > li {
		width: 100%;
		margin-bottom: 25px;
	}
}
@media (max-width: 575px) {
	.lower-page .theme-wrap > ul {
		margin: 0 -10px 75px;
	}
	.lower-page .theme-wrap > ul > li {
		padding: 0;
	}
}

/* ----------------------------------------
.keytheme-sub-page
重点共創フィールド 個別ページ
---------------------------------------- */
.lower-page.keytheme-sub-page .page-body .etc-measure > ul {
	margin-bottom: 44px;
}
.lower-page.keytheme-sub-page .page-body .etc-measure > ul > li {
	width: 100%;
}
.lower-page.keytheme-sub-page .page-body .etc-measure .card-wrap {
	padding: 48px 48px 62px;
}
.lower-page.keytheme-sub-page .page-body .section.task .row-2-col.row {
	margin-right: -20px !important;
  margin-left: -20px !important;
}
.lower-page.keytheme-sub-page .page-body .section.task .row-2-col .col-md-6 {
	padding-right: 20px !important;
  padding-left: 20px !important;
}
.lower-page.keytheme-sub-page .page-body .section.task .row-2-col img {
	width: 100%;
}
.lower-page .page-body .line-title.effort {
	margin-top: 105px;
	margin-bottom: 50px;
}
.lower-page .page-body .line-title.group {
	margin-top: 105px;
	margin-bottom: 30px;
}
.lower-page.keytheme-sub-page .page-body .bottom {
	padding-top: 120px;
	padding-bottom: 160px;
}
.lower-page.keytheme-sub-page .page-body .bottom .message {
	font-size: var(--font-20);
	font-weight: 600;
	text-align: center;
	margin-bottom: 0;
}
.lower-page.keytheme-sub-page .page-body .bottom .red-wrap:has(.proposal-dl.free) {
	margin-top: 32px;
}
.lower-page.keytheme-sub-page .page-body .btn-wrap {
	display: flex;
	justify-content: center;
	margin-top: 160px;
}
.lower-page.keytheme-sub-page .page-body .btn-wrap > a.btn {
	margin: 0 10px;
}
@media (max-width: 767px) {
	.lower-page.keytheme-sub-page .page-body .section-first {
		
	}
	.lower-page.keytheme-sub-page .page-body .etc-measure .card-wrap {
		padding: 40px 32px 43px;
	}
	.lower-page.keytheme-sub-page .page-body .etc-measure > ul {
		margin-bottom: 28px;
	}
	.lower-page.keytheme-sub-page .page-body figure {
		width: calc(100% + 20px);
		max-width: calc(100% + 20px);
		margin-left: -10px;
		margin-right: -10px;
	}
	.lower-page .page-body .line-title.effort {
		margin-top: 65px;
	}
	.lower-page.keytheme-sub-page .page-body .swiper-mixed {
		margin-bottom: 60px !important;
	}
	.lower-page .page-body .line-title.group {
		margin-top: 60px;
	}
	.lower-page.keytheme-sub-page .page-body .bottom {
		padding-top: 80px;
		padding-bottom: 100px;
	}
	.lower-page.keytheme-sub-page .page-body .bottom .message {
		line-height: 1.5;
		margin-left: -10px;
		margin-right: -10px;
	}
	.lower-page.keytheme-sub-page .page-body .btn-wrap {
		flex-direction: column;
		align-items: center;
		margin-top: 100px;
	}
	.lower-page.keytheme-sub-page .page-body .btn-wrap a.btn {
		min-height: 85px;
	}
	.lower-page.keytheme-sub-page .page-body .btn-wrap a.btn + a.btn {
		margin-top: 20px;
	}
}

/* ----------------------------------------
.simple-page
(Privacy Policy / notes)
---------------------------------------- */
.lower-page.simple-page .page-body .section-first {
	padding-bottom: 160px;
}
.lower-page.simple-page .page-body h2 {
	font-size: var(--font-24);
	font-weight: 700;
	margin-bottom: 38px;
}
.lower-page.simple-page .page-body p {
	margin-bottom: 2rem;
}
.lower-page.simple-page .page-body p + ul.red-point {
	margin-top: -0.75rem;
}
.lower-page.simple-page .page-body .date {
	text-align: right;
	margin-bottom: 35px;
	margin-top: -10px;
}
.lower-page.simple-page .page-body h3 {
	color:var(--d-gray);
	font-size: var(--font-20);
	font-weight: 700;
	margin-bottom: 20px;
}
.lower-page.simple-page .page-body * + h3 {
	margin-top: 32px;
}
.lower-page.simple-page .page-body .gray-wrap {
	background-color: var(--l-gray);
	padding: 28px 25px;
	margin: 25px 0;
}
.lower-page.simple-page .page-body .gray-wrap h4 {
	font-size: var(--font-16);
	font-weight: 600;
	margin-bottom: 15px;
}
.lower-page.simple-page .page-body .btn-wrap {
	display: flex;
	justify-content: center;
	margin-top: 170px;
}
.lower-page.simple-page .page-body .btn-wrap > a.btn {
	margin: 0 10px;
}
.lower-page.simple-page .page-body .notes-ol {
	list-style: none;
	padding-left: 12px;
}
.lower-page.simple-page .page-body .notes-ol > li { 
	counter-increment: count-01; 
	position: relative; 
	padding-left: 28px;
	margin-bottom: 35px;
} 
.lower-page.simple-page .page-body .notes-ol > li:before { 
	position: absolute;
	top: 0;
	left: 0;
	content: counter(count-01)"."; 
	font-weight: 700; 
	font-size: var(--font-20); 
	color: var(--d-gray); 
	line-height: 1.4;
 }
.lower-page.simple-page .page-body .notes-ol > li h3 {
	font-weight: 700; 
	font-size: var(--font-20); 
	color: var(--d-gray);
	margin-bottom: 23px;
}
.lower-page.simple-page .page-body .notes-ol > li > .inner {
	margin-left: -40px;
}
.lower-page.simple-page .page-body .notes-ol > li > .inner .gray-wrap {
	margin: 13px 0 35px;
}
.lower-page.simple-page .page-body .kakko-number {
	list-style: none;
	padding-left: 0;
}
.lower-page.simple-page .page-body .kakko-number > li {
	counter-increment: count-ex02;
	position: relative;
	padding-left: 2.675rem;
	margin-bottom: 5px;
}
.lower-page.simple-page .page-body .kakko-number > li:before {
	content: "（" counter(count-ex02) "）";
	position: absolute;
	top: 0;
	left: 0;
}
.lower-page.simple-page .page-body .kakko-number > li table {
	margin-top: 10px;
	margin-left: -2.675rem;
	margin-bottom: 20px;
}
.lower-page.simple-page .page-body .maru-number {
	list-style: none;
	padding-left: 0;
}
.lower-page.simple-page .page-body .maru-number > li {
	position: relative;
	padding-left: 1.125rem;
}
.lower-page.simple-page .page-body .maru-number > li span {
  position: absolute;
  left: 0;
  margin: 0
}
.lower-page.simple-page .page-body table.basic-table {
	margin-bottom: 40px;
}
.lower-page.simple-page .page-body .basic-table {
	border-top: 1px solid #E3E3E3;
	width: 100%;
}
.lower-page.simple-page .page-body .basic-table th,
.lower-page.simple-page .page-body .basic-table td {
	line-height: 1.7;
	vertical-align: middle;
	border-bottom: 1px solid #E3E3E3;
	padding: 22px 25px;
}
.lower-page.simple-page .page-body .basic-table th {
	background-color: #FFF6F5;
	width: 25%;
}
.lower-page.simple-page .page-body .basic-table td > * {
	margin: 0;
}
@media (max-width: 767px) {
	.lower-page.simple-page .page-body .section-first {
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.lower-page.simple-page .page-body h2 {
		font-size: var(--font-20);
		line-height: 1.5;
		margin-bottom: 33px;
	}
	.lower-page.simple-page .page-body .date {
		font-size: var(--font-14);
		text-align: left;
		margin-top: 0;
	}
	.lower-page.simple-page .page-body h3 {
		font-size: var(--font-18);
		margin-bottom: 18px;
	}
	.lower-page.simple-page .page-body p + ul.red-point {
		margin-top: -1.25rem;
	}
	.lower-page.simple-page .page-body ul.red-point > li {
		margin-bottom: 2px;
	}
	.lower-page.simple-page .page-body .notes-ol > li {
		margin-bottom: 30px;
	}
	.lower-page.simple-page .page-body .notes-ol > li h3 {
		font-size: var(--font-18);
		margin-bottom: 15px;
	}
	.lower-page.simple-page .page-body .notes-ol > li > .inner .gray-wrap {
		margin-left: -2rem;
		padding: 23px 25px 23px 10px;
	}
	.lower-page.simple-page .page-body p + .gray-wrap {
		padding: 24px 20px 25px 16px;
		margin-top: -0.75rem;
		margin-bottom: 1rem;
	}
	.lower-page.simple-page .page-body .gray-wrap h4 {
		margin-bottom: 8px;
	}
	.lower-page.simple-page .page-body .basic-table {
		width: calc(100% + 20px);
		margin-left: -10px;
		margin-right: -10px;
	}
	.lower-page.simple-page .page-body p + table.basic-table {
		margin-top: -0.5rem;
	}
	.lower-page.simple-page .page-body .basic-table th, 
	.lower-page.simple-page .page-body .basic-table td {
		display: block;
		width: 100%;
	}
	.lower-page.simple-page .page-body .basic-table th {
		padding: 13px 20px 12px;
		border-bottom: none;
	}
	.lower-page.simple-page .page-body .basic-table td {
		padding: 13px 20px 21px;
	}
	.lower-page.simple-page .page-body .kakko-number > li table {
		margin-left: calc(-2.675rem - 10px);
		margin-top: 15px;
		width: calc(100% + 2.675rem + 20px);
	}
	.lower-page.simple-page .page-body .maru-number {
		margin-top: 2px;
		margin-bottom: 7px;
	}
	.lower-page.simple-page .page-body .maru-number li {
		margin-bottom: 2px;
	}
	.lower-page.simple-page .page-body .btn-wrap {
		flex-direction: column;
    align-items: center;
		margin-top: 105px;
	}
	.lower-page.simple-page .page-body .btn-wrap > a.btn:first-child {
		margin-bottom: 20px;
	}
}

/* ----------------------------------------
.sitemap-page
common.cssからfooterナビの記述を持ってきている→あとで調整
---------------------------------------- */
.lower-page.sitemap-page .page-body .section-first {
    padding-bottom: 160px;
}
.lower-page.sitemap-page .page-body .container {
	max-width: 1300px;
}
.lower-page.sitemap-page .page-body h2 {
	font-size: var(--font-24);
	margin-bottom: 20px;
}
@media (min-width: 768px) {
	.lower-page.sitemap-page .page-body .row-menu {
		display: flex;
		margin: 0 -20px;
	}
	.lower-page.sitemap-page .page-body .row-menu > * {
		width: 50%;
		padding: 0 20px;
	}
}
/* .main-menu */
.lower-page.sitemap-page .page-body .main-menu > ul > li {
	border-bottom: 1px solid #E3E3E3
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > a {
	position: relative;
	display: block;
	font-size: var(--font-18);
	font-weight: 500;
	line-height: 1.6;
	padding: 22px 50px 23px 0;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > a::after {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-family: "Material Symbols Sharp";
	content: "\e941";
	display: flex;
	justify-content: center;
	align-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid #E3E3E3;
	color: var(--d-gray);
	font-size: 20px;
	font-weight: 300;
	transition: 0.3s;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > a:hover::after {
	color: #fff;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul {
	list-style-type: none;
	margin: -7px 0 18px 0;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li {
	position: relative;
	padding-right: 20px;
	margin-bottom: 2px;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li::before {
	position: absolute;
	top: 0.7rem;
	left: -16px;
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--red);
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li::marker {
	color: var(--red);
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li a {
	position: relative;
	display: inline-block;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li a::after {
	position: absolute;
	top: 0.1rem;
	right: -23px;
	display: inline-block;
	font-family: "Material Symbols Sharp";
	content: "\e5e1";
	font-size: var(--font-14);
	margin-left: 0.3em;
	font-weight: 200;
	vertical-align: middle;
	margin: 0 0 0.25em 0.5em;
}
.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li a:hover::after {
	color: var(--red);
}
.lower-page.sitemap-page .page-body .btn-wrap a {
	margin: 160px auto 0;
}
@media (min-width: 768px) {
	.lower-page.sitemap-page .page-body .main-menu > ul > li > a:hover {
		color: var(--red);
		text-decoration: underline;
		text-decoration-thickness: 3px;
		text-decoration-color: var(--red);
	}
	.lower-page.sitemap-page .page-body .main-menu > ul > li > a:hover::after {
		border: 1px solid var(--red);
		background-color: var(--red);
	}
	.lower-page.sitemap-page .page-body .main-menu > ul > li > ul > li a:hover {
		color: var(--red);
		text-decoration: underline;
		text-decoration-thickness: 3px;
		text-decoration-color: var(--red);
	}
}
@media (max-width: 767px) {
	.lower-page.sitemap-page .page-body .section-first {
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.lower-page.sitemap-page .page-body h2 {
		font-size: var(--font-20);
	}
	.lower-page.sitemap-page .page-body .btn-wrap a {
		margin-top: 100px;
	}
}

/* ----------------------------------------
.cfa-page
(colors-future-actions)
スライド部分はtop.cssの.newsより記述を持ってきている→あとで調整
---------------------------------------- */
.lower-page.cfa-page .page-body .organization .container,
.lower-page.cfa-page .page-body .member .container {
	 max-width: 1300px;
}
.lower-page.cfa-page .page-body {
}
.lower-page.cfa-page .page-body .section-first p + figure {
	margin-top: 2rem;
}
.lower-page .page-body .hasUnderbar {
	position: relative;
	color: var(--red);
	font-size: var(--font-22); 
	font-weight: 600;
	padding-bottom: 12px;
	margin-bottom: 15px;
}
.lower-page .page-body .hasUnderbar::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	display: inline-block;
	width: 100px;
	height: 2px;
	background-color: var(--red);
}
.lower-page.cfa-page .page-body .hasUnderbar + p {
	margin-bottom: 40px;
}
.lower-page.cfa-page .page-body .section.organization {
	padding-bottom: 70px;
}
.lower-page.cfa-page .page-body .section.organization ol.point + .line-title {
	margin-top: 120px;
}
.lower-page .page-body .section.organization .section-gray {
	padding-bottom: 50px;
}
.lower-page.cfa-page .page-body .section.organization p {
	margin-bottom: 50px;
}
.lower-page.cfa-page .page-body .section.member {
	padding-top: 0;
	padding-bottom: 100px;
}
.lower-page.cfa-page .page-body .row-3-col.row {
	margin-right: -10px;
  margin-left: -10px;
}
.lower-page.cfa-page .page-body .row-3-col.row > * {
	padding-left: 10px;
	padding-right: 10px;
}
.lower-page.cfa-page .page-body .row-3-col .hasUnderbar {
	padding-bottom: 16px;
}
/* .news */
.lower-page.cfa-page .page-body .news {
	padding-bottom: 160px;
}
.lower-page.cfa-page .page-body .news .line-title {
	
}
.lower-page.cfa-page .page-body .news .hasUnderbar {
	margin-top: 40px;
}
.lower-page.cfa-page .page-body .news .section-swiper + .btn {
	margin: 150px auto 0;
}
@media (min-width: 1200px) {
	
}
@media (max-width: 767px) {
	.lower-page.cfa-page .page-body .section-first {
		padding-top: 80px;
	}
	.lower-page.cfa-page .page-body .section-first figure {
		max-width: calc(100% + 20px);
		margin-left: -10px;
		margin-right: -10px;
	}
	.lower-page .page-body .hasUnderbar {
		font-size: var(--font-20);
	}
	.lower-page.cfa-page .page-body .section.organization {
		padding-bottom: 30px;
	}
	.lower-page.cfa-page .page-body .section.organization ol.point + .line-title {
		margin-top: 100px;
	}
	.lower-page.cfa-page .page-body .news {
		padding-bottom: 100px;
	}
	.lower-page.cfa-page .page-body .news .section-swiper + .btn {
		margin-top: 80px;
	}
	.lower-page.cfa-page .page-body .section.member {
		padding-bottom: 70px;
	}
	.lower-page.cfa-page .page-body .section.member .co-creation-card-wrap + .line-title {
		margin-top: 85px;
	}
}

/*--------------------------------------------------*/
/* .page-404 */
/*--------------------------------------------------*/

.page-404 .page-body .section {
	padding: 100px 0;
}
.page-404 .page-body .section p a {
	color: var(--red);
	text-decoration: underline;
}
@media (min-width: 768px) {
	.page-404 .page-body .section p a:hover {
		text-decoration-thickness: 2px;
	}	
}
