@charset "UTF-8";
/* CSS Document */

/* ===========================================================================
  util
============================================================================= */
.c-incubation {
	color: #b11717 !important;
}

/* ===========================================================================
  p-mv
============================================================================= */
.p-mv {
	padding-inline: 40px;
}
.p-mv_slideArea {
	position: relative;
}
.p-mv_title {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.p-mv_titleImg {
	display: block;
	width: 100%;
	max-width: none;
}
.p-mv_text {
	width: 582px;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
}
.p-mv_textImg {
	display: block;
	width: 100%;
	max-width: none;
}
.p-mv_sliderImg {
	display: block;
	aspect-ratio: 1360 / 657;
	object-fit: cover;
	object-position: center 0%;
}
.is-animation .p-mv_sliderImg {
	animation: slideMovePc 11s ease-out 0s normal both;
}
.p-mv_slider .slick-slide {
	z-index: 0;
}
.p-mv_slider .slick-active {
	z-index: 1;
}
.p-mv_bottom {
	margin-top: 30px;
}
.p-mv_leadImg {
	display: block;
	width: 100%;
	max-width: none;
}

@keyframes slideMovePc {
	0% {
		object-position: center 0%;
	}
	100% {
		object-position: center 100%;
	}
}
@keyframes slideMoveSp {
	0% {
		object-position: 0% 0%;
	}
	100% {
		object-position: 100% 100%;
	}
}

/* ===========================================================================
  p-content01
============================================================================= */
.p-content01 {
	margin-top: 17.36vw;
}
.p-content01_inner {
	width: calc(100% - 80px);
	max-width: 1200px;
	margin-inline: auto;
}

/* ===========================================================================
  p-content02
============================================================================= */
.p-content02 {
	margin-top: 13.92vw;
}
.p-content02_inner {
	width: calc(100% - 80px);
	max-width: 1200px;
	margin-inline: auto;
}
.p-content02_head {
	margin-bottom: 10.42vw;
}
.p-content02_facility {
	margin-top: 13.92vw;
}

/* ===========================================================================
  p-content03
============================================================================= */
.p-content03_inner {
	width: calc(100% - 80px);
	max-width: 1200px;
	margin-inline: auto;
	padding-block: 17.36vw 200px;
}
.p-content03_contact {
	margin: 200px 100px 0;
}

/* ===========================================================================
  p-newsBlock
============================================================================= */
.p-newsBlock {
	max-width: 2000px;
	margin-left: auto;
	padding: 13.2vw 0 14vw 8.3vw;
}
.p-newsBlock_inner {
	padding-left: 90px;
	position: relative;
}
.p-newsBlock_inner::before {
	content: '';
	width: 100%;
	height: calc(100% - 90px);
	background-color: #f8f6f2;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.p-newsBlock_slider {
	padding: 0 8.33vw 94px 0;
	overflow: hidden;
}
.p-newsBlock_title {
	position: absolute;
	top: 0;
	left: 27px;
	font-weight: bold;
	writing-mode: vertical-rl;
	font-size: 3.2rem;
	letter-spacing: 3px;
}
.p-newsBlock_link {
	padding-left: 44px;
	position: absolute;
	bottom: 33.5px;
	right: 8.33vw;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.45;
}
.p-newsBlock_icon {
	display: block;
	width: 34px;
	height: 34px;
	background-color: #000;
	position: absolute;
	top: -3.5px;
	left: 0;
}
.p-newsBlock_icon::before,
.p-newsBlock_icon::after {
	content: '';
	width: 6px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	transform-origin: calc(100% - .5px) 50%;
}
.p-newsBlock_icon::before {
	rotate: 45deg;
}
.p-newsBlock_icon::after {
	rotate: -45deg;
}

@media screen and (min-width: 1024px) {
	#other main a.p-newsBlock_link:hover {
		text-decoration: underline;
	}
}

/* ===========================================================================
  p-newsSlider
============================================================================= */
.p-newsSlider_item {
	padding: 10px;
}
.p-newsSlider .slick-list{
    overflow: visible;
}
.p-newsSlider_arrow-prev,
.p-newsSlider_arrow-next {
	display: block;
	width: 34px;
	height: 34px;
	background-color: #fff;
	border: none;
	position: absolute;
	top: calc(100% + 30px);
	transition: background-color .4s;
}
.p-newsSlider_arrow-prev::before,
.p-newsSlider_arrow-prev::after,
.p-newsSlider_arrow-next::before,
.p-newsSlider_arrow-next::after {
	content: '';
	width: 6px;
	height: 1px;
	background-color: #000;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	transform-origin: calc(100% - .5px) 50%;
}
.p-newsSlider_arrow-prev::before,
.p-newsSlider_arrow-next::before {
	rotate: 45deg;
}
.p-newsSlider_arrow-prev::after,
.p-newsSlider_arrow-next::after {
	rotate: -45deg;
}
.p-newsSlider_arrow-prev {
	left: 10px;
	scale: -1 1;
}
.p-newsSlider_arrow-next {
	left: 54px;
}
@media screen and (min-width: 1024px) {
	.p-newsSlider_arrow-prev:hover,
	.p-newsSlider_arrow-next:hover {
		background-color: #ccc;
	}
}

/* ===========================================================================
  p-block01
============================================================================= */
.p-block01 {
	display: grid;
	grid-template-columns: 46.875% 1fr;
	max-width: 1800px;
	margin-inline: auto;
}
.p-block01_textArea {
	padding-inline: 13%;
}
.p-block01_lead {
	margin-bottom: 30px;
	font-weight: bold;
	font-size: 4.2rem;
	line-height: 1.5;
}
.p-block01_text {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 2;
}
.p-block01_text:nth-child(n+2) {
	margin-top: 20px;
}

/* ===========================================================================
  p-block02
============================================================================= */
#other main .p-block02 {
	display: block;
	padding: 10px;
	background-color: #fff;
	box-shadow: 0 0 5px rgba(0, 0, 0, .1);
	transition: box-shadow .4s;
}
.p-block02_imgArea {
	overflow: hidden;
}
.p-block02_img {
	display: block;
	width: 100%;
	max-width: none;
	aspect-ratio: 333 / 188;
	object-fit: cover;
	transition: scale .4s;
}
.p-block02_textArea {
	padding: 20px 20px 10px;
}
.p-block02_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 30px;
}
.p-block02_category {
	color: #999;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.4;
}
.p-block02_date {
	display: block;
	font-family: "Roboto", sans-serif;
	font-size: 1.6rem;
	line-height: 1.2;
}
.p-block02_text {
	font-weight: bold;
}
a.p-block02[href$=".pdf"] .p-block02_text,
a.p-block02[target="_blank"]:not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".xls"]):not([href$=".xlsx"]):not([href$=".zip"]) .p-block02_text {
	position: relative;
}
a.p-block02[href$=".pdf"] .p-block02_text::after,
a.p-block02[target="_blank"]:not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".xls"]):not([href$=".xlsx"]):not([href$=".zip"]) .p-block02_text::after {
	content: '';
	display: inline-block;
	margin-inline: 5px;
	vertical-align: middle;
	background: no-repeat center/contain;
}
a.p-block02[href$=".pdf"] .p-block02_text::after {
	width: 32px;
	height: 15px;
	background-image: url('../img/icon/icon_pdf-black.svg');
}
a.p-block02[target="_blank"]:not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".xls"]):not([href$=".xlsx"]):not([href$=".zip"]) .p-block02_text::after {
	width: 12px;
	height: 12px;
	background-image: url('../img/icon/icon_blank-black.svg');
}
@media screen and (min-width: 1024px) {
	#other main a.p-block02:hover {
		box-shadow: none;
	}
	#other main a.p-block02:hover .p-block02_img {
		scale: 1.05;
		opacity: 1;
	}
}

/* ===========================================================================
  p-block03
============================================================================= */
.p-block03 {
	max-width: 1500px;
	margin-inline: auto;
	padding: 78px 0 0 420px;
	position: relative;
}
.p-block03_head {
	position: absolute;
	top: 0;
	left: 60px;
	z-index: 1;
}
.p-block03_en {
	font-weight: 600;
	font-family: "Roboto", sans-serif;
	font-size: clamp(12.5rem, 9vw + 1rem, 13rem);
	line-height: 1;
}
.p-block03_title {
	margin: 5px 0 0 60px;
	font-weight: bold;
	font-size: clamp(2.4rem, 1.1vw + 1.5rem, 3rem);
	line-height: 1.45;
}
.p-block03_logo {
	width: 250px;
	position: absolute;
	bottom: 0;
	left: 120px;
}

/* ===========================================================================
  p-block04
============================================================================= */
.p-block04_textArea {
	max-width: 1000px;
	margin-inline: auto;
}
.p-block04_title {
	margin-bottom: 30px;
	font-weight: bold;
	font-size: 3.6rem;
	line-height: 1.45;
	text-align: center;
}
.p-block04_text {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.75;
}
.p-block04_text:nth-child(n+2) {
	margin-top: 10px;
}
.p-block04_imgBox {
	margin-top: 50px;
	padding: 50px;
	background-color: #f8f6f2;
}
.p-block04_imgSp {
	display: none;
}
.p-block04_link {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

/* ===========================================================================
  p-block05
============================================================================= */
.p-block05_head {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: flex-start;
	gap: 30px;
	padding-inline: 30px;
}
.p-block05_num {
	display: grid;
	place-items: center;
	width: 100px;
	height: 100px;
	background-color: #326112;
	border-radius: 50%;
	color: #fff;
	font-family: "Roboto", sans-serif;
	font-size: 4rem;
	line-height: 1;
}
.p-block05_headText {
	margin-top: 16px;
	font-weight: 500;
	font-size: 3rem;
	line-height: 1.45;
}
.p-block05_emphasis {
	font-weight: bold;
	font-size: 4rem;
}
.p-block05_mapArea {
	padding: 20px 100px 70px;
	position: relative;
}
.p-block05_mapArea::before {
	content: '';
	width: 100%;
	height: calc(100% + 50px);
	background-color: #f8f6f2;
	position: absolute;
	top: -50px;
	left: 0;
	z-index: -1;
}
.p-block05_map-sp {
	display: none;
}
.p-block05_linkPin {
	transition: transform .4s;
}
.p-block05_pin {
	opacity: 0;
	transform: translate(0, -200px);
}
.is-fadeIn .p-block05_pin {
	animation: pinDrop .8s cubic-bezier(.25,.8,.25,1) forwards;
	animation-delay: calc(1s + 0.1s * var(--index));
}
.p-block05_info {
	max-width: 1000px;
	margin: 40px auto 0;
}
.p-block05_item {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: flex-start;
	gap: 20px;
	padding-bottom: 20.5px;
	border-bottom: 1px solid #ccc;
}
.p-block05_item:nth-child(n+2) {
	margin-top: 20.5px;
}
.p-block05_icon {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	background-color: #326112;
	border-radius: 50%;
	color: #fff;
	font-weight: bold;
	font-family: "Roboto", sans-serif;
	font-size: 2.6rem;
	line-height: 1;
}
.p-block05_title {
	margin-block: 4px 15px;
	font-weight: bold;
	font-size: 2.2rem;
	line-height: 1.45;
}
.p-block05_text {
	font-weight: 500;
}
.p-block05_notoArea {
	margin-top: 160px;
}
.p-block05_noto {
	text-align: center;
}
.p-block05_notoMark {
	color: #b11717;
}

@keyframes pinDrop {
	0% {
		opacity: 0;
		transform: translate(0, -200px);
	}
	10% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: translate(0, 0);
	}
}

@media screen and (min-width: 1024px) {
	.p-block05_linkPin:hover {
		transform: translate(0, -10px);
	}
}

/* ===========================================================================
  p-block06
============================================================================= */
.p-block06_head {
	display: grid;
	grid-template-columns: 21.7% 1fr;
	align-items: flex-end;
	gap: 40px;
	position: relative;
}
.p-block06_headEn {
	font-weight: 600;
	font-family: "Roboto", sans-serif;
	font-size: clamp(6rem, 5vw + 1rem, 7.7rem);
	line-height: 1.19;
}
.p-block06_headText {
	font-weight: bold;
	font-size: 3rem;
	line-height: 1.45;
}
.p-block06_content {
	margin: -20px 100px 0;
}
.p-block06_lead {
	margin-top: 40px;
	font-weight: bold;
	font-size: 3rem;
	line-height: 1.45;
	text-align: center;
}

/* ===========================================================================
  p-facilityBlock
============================================================================= */
.p-facilityBlockList_item:nth-child(n+2) {
	margin-top: 160px;
}

.p-facilityBlock_head {
	display: grid;
	grid-template-columns: 1fr 52.64%;
	align-items: flex-start;
	max-width: 1440px;
	margin: 0 auto 50px;
}
.p-facilityBlock_headTextArea {
	padding-inline: 120px 60px;
}
.p-facilityBlock_title {
	display: inline-block;
	margin-bottom: 40px;
	padding-bottom: 10px;
	position: relative;
	font-weight: bold;
	font-size: 4rem;
	line-height: 1.45;
}
.p-facilityBlock_title::before {
	content: '';
	width: 50vw;
	height: 2px;
	background-color: #000;
	position: absolute;
	bottom: 0;
	right: 0;
}
.p-facilityBlock_headText {
	font-weight: 500;
	line-height: 1.75;
}
.p-facilityBlock_headText:nth-child(n+3) {
	margin-top: 10px;
}
.p-facilityBlock_headImg {
	position: relative;
}
.p-facilityBlock_headImg::after {
	content: '';
	width: 100%;
	height: 100%;
	background-color: #326112;
	position: absolute;
	top: 0;
	left: 0;
	transform-origin: center right;
}
.is-fadeIn .p-facilityBlock_headImg::after {
	animation: imgFade .8s ease-in-out forwards;
}
.p-facilityBlock_content {
	width: calc(100% - 80px);
	max-width: 1200px;
	margin-inline: auto;
}

@keyframes imgFade {
	0% {
		transform: scale(1,1)
	}
	100% {
		transform: scale(0,1)
	}
}

/* ===========================================================================
  p-contactBlock
============================================================================= */
.p-contactBlock_title {
	position: relative;
	font-weight: bold;
	font-size: 2.8rem;
	line-height: 1.43;
	text-align: center;
}
.p-contactBlock_body {
	padding: 30px 50px 50px;
	position: relative;
}
.p-contactBlock_body::before {
	content: '';
	width: 100%;
	height: calc(100% + 20px);
	background-color: #f8f6f2;
	position: absolute;
	top: -20px;
	left: 0;
	z-index: -1;
}
.p-contactBlock_text {
	font-weight: 500;
}
.p-contactBlock_infoBox {
	margin-top: 30px;
	padding: 30px;
	background-color: #fff;
}
.p-contactBlock_infoTitle {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.45;
}
.p-contactBlock_address {
	margin-top: 20px;
	line-height: 1.5;
}
.p-contactBlock_infoText {
	margin-top: 10px;
	line-height: 1.5;
}

/* ===========================================================================
  p-linkText01
============================================================================= */
.p-linkText01List {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.p-linkText01 {
	display: block;
	padding: 0 50px 20.5px 34px;
	position: relative;
	font-weight: 500;
	font-size: 1.7rem;
	line-height: 1.45;
}
.p-linkText01::before,
.p-linkText01::after {
	content: '';
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}
.p-linkText01::before {
	width: 100%;
	background-color: #ccc;
}
.p-linkText01::after {
	width: 0;
	background-color: #000;
	transition: width .4s;
}
.p-linkText01_icon {
	display: block;
	width: 24px;
	height: 24px;
	background-color: #000;
	position: absolute;
	top: 1px;
	left: 0;
}
.p-linkText01_icon::before,
.p-linkText01_icon::after {
	content: '';
	width: 6px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	transform-origin: calc(100% - .5px) 50%;
}
.p-linkText01_icon::before {
	rotate: 45deg;
}
.p-linkText01_icon::after {
	rotate: -45deg;
}
.p-linkText01_icon.is-l {
	top: 3px;
}
.p-linkText01_icon.is-down {
	rotate: 90deg;
}
.p-linkText01_text {
	display: block;
	padding-bottom: 7px;
}
.p-linkText01_text-l {
	display: block;
	font-size: 2.2rem;
}

@media screen and (min-width: 1024px) {
	#other main a.p-linkText01:hover::after {
		width: 100%;
	}
}

#other main a.p-linkTel {
	text-decoration: underline;
}

@media screen and (max-width: 1200px) {
	/* ===========================================================================
	  p-content03
	============================================================================= */
	.p-content03_inner {
		padding-block: 17.36vw 160px;
	}
	.p-content03_contact {
		margin: 160px 80px 0;
	}
	/* ===========================================================================
	  p-block01
	============================================================================= */
	.p-block01_textArea {
		padding-inline: 40px;
	}
	
	/* ===========================================================================
	  p-block03
	============================================================================= */
	.p-block03 {
		padding-left: 320px;
	}
	.p-block03_head {
		top: -58px;
		left: 40px;
	}
	.p-block03_en {
		font-size: 10rem;
	}
	.p-block03_title {
		margin: 5px 0 0 40px;
	}
	.p-block03_logo {
		width: 200px;
		left: 80px;
	}
	
	/* ===========================================================================
	  p-block05
	============================================================================= */
	.p-block05_num {
		width: 80px;
		height: 80px;
		font-size: 3.4rem;
	}
	.p-block05_headText {
		margin-top: 13px;
		font-size: 2.6rem;
	}
	.p-block05_emphasis {
		font-size: 3.4rem;
	}
	.p-block05_mapArea {
		padding: 20px 80px 60px;
	}
	.p-block05_mapArea::before {
		height: calc(100% + 40px);
		top: -40px;
	}
	
	/* ===========================================================================
	  p-block06
	============================================================================= */
	.p-block06_head {
		gap: 30px;
	}
	.p-block06_headEn {
		font-size: 6rem;
	}
	.p-block06_headText {
		font-size: 2.6rem;
	}
	.p-block06_content {
		margin: -16px 80px 0;
	}
	.p-block06_lead {
		font-size: 2.8rem;
	}
	
	/* ===========================================================================
	  p-facilityBlock
	============================================================================= */
	.p-facilityBlock_head {
		grid-template-columns: 1fr 52.64%;
	}
	.p-facilityBlock_headTextArea {
		padding-inline: 100px 50px;
	}
	.p-facilityBlock_title {
		margin-bottom: 30px;
		font-size: 3.6rem;
	}
	.p-facilityBlock_title::before {
		width: calc(100% + 100px);
		left: -100px;
		right: auto;
	}
}
@media screen and (max-width: 1024px) {
	/* ===========================================================================
	  p-mv
	============================================================================= */
	.p-mv {
		padding-inline: 0;
	}
	.p-mv_text {
		width: 450px;
	}
	.p-mv_lead {
		width: calc(100% - 60px);
		margin-inline: auto;
	}

	/* ===========================================================================
	  p-content01
	============================================================================= */	
	.p-content01 {
		margin-top: 180px;
	}
	.p-content01_inner {
		width: calc(100% - 60px);
	}

	/* ===========================================================================
	  p-content02
	============================================================================= */
	.p-content02 {
		margin-top: 20.1vw;
	}
	.p-content02_inner {
		width: calc(100% - 60px);
	}
	.p-content02_head {
		margin-bottom: 60px;
	}
	.p-content02_facility {
		margin-top: 150px;
	}
	
	/* ===========================================================================
	  p-content03
	============================================================================= */
	.p-content03_inner {
		width: calc(100% - 60px);
		padding-block: 200px 180px;
	}
	.p-content03_contact {
		margin: 150px 0 0;
	}
	
	/* ===========================================================================
	  p-newsBlock
	============================================================================= */
	.p-newsBlock {
		padding: 150px 0 150px 30px;
	}
	.p-newsBlock_inner {
		padding-left: 90px;
	}
	.p-newsBlock_inner::before {
		height: calc(100% - 90px);
	}
	
	/* ===========================================================================
	  p-block01
	============================================================================= */
	.p-block01 {
		display: block;
	}
	.p-block01_imgArea {
		margin-inline: 30px;
	}
	.p-block01_textArea {
		margin-top: 30px;
		padding-inline: 30px;
	}
	.p-block01_lead {
		font-size: 3.4rem;
	}
	.p-block01_text {
		font-size: 1.6rem;
	}
	.p-block01_text:nth-child(n+2) {
		margin-top: 15px;
	}

	/* ===========================================================================
	  p-block03
	============================================================================= */
	.p-block03 {
		padding: 0 30px 75px;
	}
	.p-block03_head {
		margin-bottom: 40px;
		position: static;
	}
	.p-block03_en {
		font-size: 8.6rem;
	}
	.p-block03_title {
		margin: 10px 0 0 0;
		font-size: 2rem;
	}
	.p-block03_logo {
		width: 250px;
		left: 50%;
		translate: -50% 0;
	}
	
	/* ===========================================================================
	  p-block04
	============================================================================= */
	.p-block04_title {
		font-size: 3rem;
	}
	.p-block04_text {
		font-size: 1.6rem;
	}
	.p-block04_imgBox {
		margin-top: 50px;
		padding: 50px 30px;
		background-color: #f8f6f2;
	}
	
	/* ===========================================================================
	  p-block05
	============================================================================= */
	.p-block05_head {
		gap: 20px;
		padding-inline: 20px;
	}
	.p-block05_num {
		width: 60px;
		height: 60px;
		font-size: 2.4rem;
	}
	.p-block05_headText {
		margin-top: 7px;
		font-size: 2.4rem;
	}
	.p-block05_emphasis {
		font-size: 3rem;
	}
	.p-block05_mapArea {
		padding: 20px 30px 40px;
	}
	.p-block05_mapArea::before {
		height: calc(100% + 30px);
		top: -30px;
	}
	.p-block05_info {
		margin-top: 30px;
	}
	.p-block05_icon {
		width: 34px;
		height: 34px;
		font-size: 2rem;
	}
	.p-block05_title {
		margin-block: 1px 15px;
		font-size: 2rem;
	}
	.p-block05_notoArea {
		margin-top: 120px;
	}
	
	/* ===========================================================================
	  p-block06
	============================================================================= */
	.p-block06_head {
		display: block;
		text-align: center;
	}
	.p-block06_logo {
		width: 200px;
		margin-inline: auto;
	}
	.p-block06_headEn {
		font-size: 5.8rem;
		line-height: 1;
	}
	.p-block06_headText {
		margin-top: 10px;
		font-size: 2rem;
	}
	.p-block06_content {
		margin: -16px 0 0;
	}
	.p-block06_lead {
		margin-top: 30px;
		font-size: 2.4rem;
	}
	
	/* ===========================================================================
	  p-facilityBlock
	============================================================================= */
	.p-facilityBlockList_item:nth-child(n+2) {
		margin-top: 120px;
	}

	.p-facilityBlock_head {
		display: block;
	}
	.p-facilityBlock_headTextArea {
		padding-inline: 30px;
	}
	.p-facilityBlock_title {
		font-size: 3rem;
	}
	.p-facilityBlock_title::before {
		width: calc(100% + 30px);
		left: -30px;
	}
	.p-facilityBlock_headImg {
		margin: 30px 30px 0 0;
	}
	.p-facilityBlock_content {
		width: calc(100% - 60px);
	}
	
	/* ===========================================================================
	  p-contactBlock
	============================================================================= */
	.p-contactBlock_title {
		font-size: 2.6rem;
	}
	.p-contactBlock_body {
		padding: 20px 30px 30px;
	}
	.p-contactBlock_body::before {
		height: calc(100% + 15.6px);
		top: -15.6px;
	}
	.p-contactBlock_infoBox {
		padding: 20px;
	}
	
	/* ===========================================================================
	  p-linkText01
	============================================================================= */
	.p-linkText01 {
		padding: 0 40px 20.5px 34px;
	}
	.p-linkText01_icon {
		top: 2px;
	}
	.p-linkText01_text-l {
		font-size: 2rem;
	}
	
}
@media screen and (max-width: 767px) {
	/* ===========================================================================
	  p-mv
	============================================================================= */
	.p-mv_text {
		width: 268px;
	}
	.p-mv_sliderImg {
		aspect-ratio: 375.47 / 460;
		object-position: 0% 0%;
		transform-origin: center right;
	}
	.is-animation .p-mv_sliderImg {
		animation: slideMoveSp 17s ease-out 0s normal both;
	}
	.p-mv_bottom {
		margin-top: 20px;
	}
	.p-mv_lead {
		width: calc(100% - 40px);
	}
	
	/* ===========================================================================
	  p-content01
	============================================================================= */	
	.p-content01 {
		margin-top: 100px;
	}
	.p-content01_inner {
		width: calc(100% - 40px);
	}

	/* ===========================================================================
	  p-content02
	============================================================================= */
	.p-content02 {
		margin-top: 120px;
	}
	.p-content02_inner {
		width: calc(100% - 40px);
	}
	.p-content02_head {
		margin-bottom: 50px;
	}
	.p-content02_facility {
		margin-top: 120px;
	}
	
	/* ===========================================================================
	  p-content03
	============================================================================= */
	.p-content03_inner {
		width: calc(100% - 40px);
		padding-block: 120px 160px;
	}
	.p-content03_contact {
		margin-top: 120px;
	}
	
	/* ===========================================================================
	  p-newsBlock
	============================================================================= */
	.p-newsBlock {
		padding: 120px 0 120px 20px;
	}
	.p-newsBlock_inner {
		padding-left: 10px;
	}
	.p-newsBlock_inner::before {
		height: calc(100% - 22px);
	}
	.p-newsBlock_slider {
		padding: 0 17.33vw 70px 0;
	}
	.p-newsBlock_title {
		margin: 0 0 10px -10px;
		position: static;
		writing-mode: horizontal-tb;
		font-size: 3rem;
		letter-spacing: 0;
	}
	.p-newsBlock_link {
		padding-left: 40px;
		bottom: 24.5px;
		right: 20px;
		font-size: 1.5rem;
	}
	.p-newsBlock_icon {
		width: 30px;
		height: 30px;
		top: -4.5px;
	}

	/* ===========================================================================
	  p-newsSlider
	============================================================================= */
	.p-newsSlider_arrow-prev,
	.p-newsSlider_arrow-next {
		width: 30px;
		height: 30px;
		top: calc(100% + 20px);
	}
	.p-newsSlider_arrow-next {
		left: 50px;
	}
	
	/* ===========================================================================
	  p-block01
	============================================================================= */
	.p-block01_imgArea {
		margin-inline: 20px;
	}
	.p-block01_textArea {
		margin-top: 20px;
		padding-inline: 20px;
	}
	.p-block01_lead {
		font-size: 2.6rem;
	}
	.p-block01_text {
		font-size: 1.5rem;
		line-height: 1.75;
	}
	.p-block01_text:nth-child(n+2) {
		margin-top: 10px;
	}

	/* ===========================================================================
	  p-block02
	============================================================================= */
	.p-block02_img {
		display: block;
		width: 100%;
		max-width: none;
		aspect-ratio: 333 / 188;
		object-fit: cover;
	}
	.p-block02_textArea {
		padding: 20px 10px 10px;
	}
	.p-block02_wrap {
		margin-top: 20px;
	}
	.p-block02_category {
		font-size: 1.3rem;
	}
	.p-block02_date {
		font-size: 1.4rem;
	}
	.p-block02_text {
		font-size: 1.5rem;
	}
	
	/* ===========================================================================
	  p-block03
	============================================================================= */
	.p-block03 {
		padding: 0 20px 60px;
	}
	.p-block03_head {
		margin-bottom: 20px;
	}
	.p-block03_en {
		font-size: 5.4rem;
	}
	.p-block03_title {
		font-size: 1.8rem;
	}
	.p-block03_logo {
		width: 200px;
	}
	
	/* ===========================================================================
	  p-block04
	============================================================================= */
	.p-block04_title {
		margin-bottom: 20px;
		font-size: 2.6rem;
	}
	.p-block04_text {
		font-size: 1.5rem;
	}
	.p-block04_imgBox {
		margin-top: 40px;
		padding: 20px;
	}
	.p-block04_imgPc {
		display: none;
	}
	.p-block04_imgSp {
		display: block;
	}
	.p-block04_spItem {
		position: relative;
	}
	.p-block04_spItem:nth-child(n+2) {
		margin-top: 47px;
	}
	.p-block04_spItem:not(:last-child)::after {
		content: '';
		width: 30px;
		height: 27.2px;
		background: url('../incubation/img/pic_arrow.svg') no-repeat center/contain;
		position: absolute;
		top: calc(100% + 10px);
		left: 50%;
		translate: -50% 0;
	}
	.p-block04_scroll {
		padding-bottom: 15px;
		overflow-x: auto;
		scrollbar-width: thin;
		scrollbar-color: #000 #fff;
		white-space: nowrap;
	}
	/*スクロールバー*/
	.p-block04_scroll::-webkit-scrollbar {
		height: 5px;
	}
	.p-block04_scroll::-webkit-scrollbar-track {
		background-color: #fff;
	}
	.p-block04_scroll::-webkit-scrollbar-thumb {
		background-color: #000;
	}
	.p-block04_scrollImg {
		width: 1000px;
	}
	.p-block04_spItem .scroll-hint-icon {
		top: 20px;
	}
	.p-block04_link {
		display: block;
	}
	
	/* ===========================================================================
	  p-block05
	============================================================================= */
	.p-block05_head {
		gap: 15px;
		margin-inline: -10px;
		padding-inline: 0;
	}
	.p-block05_num {
		width: 50px;
		height: 50px;
		font-size: 1.8rem;
	}
	.p-block05_headText {
		margin-top: 7px;
		font-size: 1.8rem;
	}
	.p-block05_emphasis {
		font-size: 2.4rem;
	}
	.p-block05_mapArea {
		padding: 20px;
	}
	.p-block05_mapArea::before {
		height: calc(100% + 25.4px);
		top: -25.4px;
	}
	.p-block05_map-pc {
		display: none;
	}
	.p-block05_map-sp {
		display: block;
	}
	.p-block05_info {
		margin-top: 20px;
	}
	.p-block05_item {
		gap: 10px;
	}
	.p-block05_icon {
		width: 26px;
		height: 26px;
		font-size: 1.4rem;
	}
	.p-block05_title {
		margin-block: 1px 5px;
		font-size: 1.7rem;
	}
	.p-block05_text {
		font-weight: 500;
		font-size: 1.5rem;
	}
	.p-block05_notoArea {
		margin-top: 80px;
	}
	.p-block05_noto {
		font-size: 1.5rem;
		text-align: left;
	}
	
	/* ===========================================================================
	  p-block06
	============================================================================= */
	.p-block06_logo {
		width: 160px;
	}
	.p-block06_headEn {
		font-size: 5.4rem;
	}
	.p-block06_headText {
		font-size: 1.6rem;
	}
	.p-block06_content {
		margin-top: -10px;
	}
	.p-block06_lead {
		margin-top: 20px;
		font-size: 2rem;
	}
	
	/* ===========================================================================
	  p-slider02
	============================================================================= */
	.p-slider02_img {
		display: block;
		width: 100%;
		max-width: none;
		aspect-ratio: 334.71 / 400;
		object-fit: cover;
		object-position: 0% center;
	}
	.is-animation .p-slider02_img {
		animation: slideMoveSp 12s ease-out 0s normal both;
	}
	
	/* ===========================================================================
	  p-facilityBlock
	============================================================================= */
	.p-facilityBlockList_item:nth-child(n+2) {
		margin-top: 80px;
	}
	
	.p-facilityBlock_headTextArea {
		padding-inline: 20px;
	}
	.p-facilityBlock_title {
		margin-bottom: 10px;
		font-size: 2.2rem;
	}
	.p-facilityBlock_title::before {
		width: calc(100% + 20px);
		left: -20px;
	}
	.p-facilityBlock_headImg {
		margin: 20px 20px 0 0;
	}
	.p-facilityBlock_content {
		width: calc(100% - 40px);
	}
	
	/* ===========================================================================
	  p-contactBlock
	============================================================================= */
	.p-contactBlock_title {
		font-size: 2.4rem;
	}
	.p-contactBlock_body {
		padding: 20px;
	}
	.p-contactBlock_text {
		font-size: 1.5rem;
	}
	.p-contactBlock_infoBox {
		margin-top: 20px;
		padding: 15px;
	}
	.p-contactBlock_address {
		margin-top: 10px;
		font-size: 1.5rem;
	}
	.p-contactBlock_infoText {
		margin-top: 10px;
		font-size: 1.5rem;
	}
	
	/* ===========================================================================
	  p-linkText01
	============================================================================= */
	.p-linkText01List {
		display: grid;
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.p-linkText01 {
		display: block;
		padding: 5px 45px 14.5px 0;
		font-size: 1.5rem;
	}
	.p-linkText01::before {
		background-color: #000;
	}
	.p-linkText01_icon {
		width: 30px;
		height: 30px;
		top: auto;
		bottom: 10.5px;
		left: auto;
		right: 0;
	}
	.p-linkText01_icon.is-down {
		top: auto;
		bottom: 10.5px;
		left: auto;
		right: 0;
	}
	.p-linkText01_text {
		padding-bottom: 0;
	}
	.p-linkText01_text-l {
		font-size: 1.7rem;
	}
}