@charset "UTF-8";
/*
	 background-repeat: no-repeat; background-position: center; background-size: contain;
*/

/* fv
-------------------------------*/
.fv { position: relative; display: flex; justify-content: center; align-items: center; height: 100svh; background: url("../img/fv_bg_sp.jpg") no-repeat 50% 50%/cover; }
.fv__inner { display: flex; }
.fv__catch {  }
.fv__catch img { width: 27px; }
.fv__ttl { width: 280px; }

@media screen and (max-width: 680px) {
	.fv { padding-top: 74px; }
	.fv__inner { flex-direction: column; }
	.fv__catch { text-align: right; }
}
@media screen and (min-width: 681px) {
	.fv { height: 100vh; background-image: url("../img/fv_bg_pc.jpg"); padding-bottom: 140px; }
.fv__inner { justify-content: space-between; align-items: flex-end; min-width: 980px; padding-right: 60px; }
	.fv__catch { order: 2; margin-bottom: 20px; }
	.fv__catch img { width: 42px; }
	.fv__ttl { order: 1; width: 365px; }
	
}
@media screen and (min-width: 1401px) {
	
}
@media screen and (min-width: 1729px) {
	.fv { background-image: url("../img/fv_bg_lpc.jpg"); }
	.fv__inner { min-width: 56.7vw; padding-right: 3.471vw; }
	.fv__ttl { width: 21.111vw; }
	.fv__catch { margin-bottom: 1.157vw; }
	.fv__catch img { width: 2.43vw; }
}


/*  for iPhone SE  */
@media screen and (max-width: 375px) and (max-height: 554px) {
	.fv { min-height: 700px; }
}

/*	Short PC	*/
@media (hover: hover) and (pointer: fine) and (max-height: 800px) {
	.fv { min-height: 788px; }
}



.sec:nth-of-type(even) {  }

.upper-container { position: relative; padding-bottom: 68px; }
.upper-container::before,
.upper-container::after { position: absolute; left: 0; bottom: 0; display: block; width: 100%; content: ""; }
.upper-container::before { height: calc(100% - 350px); background: linear-gradient(to bottom, rgba(125,185,232,0) 0%,rgba(225,245,221,0.7) 48%,rgba(229,248,221,0.71) 50%,rgba(144,215,198,1) 100%); z-index: 0; }
.upper-container::after { height: 109px; background: url("../img/upper_container_mask_sp.png") no-repeat 50% 0/100% 100%; z-index: 10; }
.upper-container__bg { position: absolute; top: 9.4%; left: 50%; transform: translateX(-50%); display: block; width: 100%; aspect-ratio: 375/360; background: url("../img/bg_wave_sp.png") no-repeat center/100% auto; z-index: 0; }

.cmncatch { margin-top: 14px; font-size: 1.5rem; font-weight: 400; line-height: 1.734; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; }
@media screen and (max-width: 680px) {
	
}
@media screen and (min-width: 681px) {
	.upper-container { padding-bottom: 115px; }
	.upper-container::after { height: 523px; background-image: url("../img/upper_container_mask_pc.png"); }
	.upper-container__bg { top: 1140px; min-width: 1728px; width: 100%; aspect-ratio: 1728/680; background-image: url("../img/bg_wave_pc.png"); background-size: 1728px auto; }
	.cmncatch { margin-top: 18px; font-size: 1.8rem; line-height: 1.56; }
}
@media screen and (min-width: 1729px) {
	.upper-container__bg { top: 39.5%; background-size: 100% auto; }
}
@media screen and (min-width: 1900px) {
	.upper-container__bg { top: 37.5%; }
}

  
/* Intro
-------------------------------*/
.sec--intro { position: relative; padding-top: 58px; padding-bottom: 60px; z-index: 10; }
.intro-ttl { text-align: center; }
.intro-ttl img { width: auto; height: 134px; }
.intro-under-ttl { margin-top: 36px; font-size: 1.5rem; font-weight: 400; line-height: 2; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; }
.intro { margin-top: 33px; }
.intro__chart { text-align: center; }
.intro__chart img { width: calc(100% - 30px); }
.intro__ttl { font-size: 2.4rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.05em; color: var(--c-main); }
.intro__txt { margin-top: 17px; font-size: 1.5rem; font-weight: 400; line-height: 2; letter-spacing: 0.02em; text-align: justify; }
@media screen and (max-width: 680px) {
	.intro__ttl { text-align: center; text-indent: 0.05em; }
	.intro__inner { margin-top: 73px; }
}
@media screen and (min-width: 681px) {
.sec--intro { padding-top: 200px; padding-bottom: 90px; }
	.sec--intro .l-wrapper { width: 1020px; }
	.intro-ttl img { height: 159px; }
	.intro-under-ttl { margin-top: 58px; font-size: 2.0rem; line-height: 1; letter-spacing: 0.05em; text-indent: 0.05em; }
	.intro { display: flex; justify-content: space-between; align-items: center; margin-top: 87px; padding-left: 60px; }
	.intro__chart { width: 378px; margin-right: 40px; }
	.intro__chart img { width: 100%; }
	.intro__inner { flex: 1; margin-bottom: 25px; }
	.intro__ttl { font-size: 3.6rem; }
	.intro__txt { margin-top: 23px; }
	
}


/* Voice
-------------------------------*/
.sec--voice { padding-top: 30px; padding-bottom: 60px; }
.voice-wrap { margin-top: 57px; }
.voice { position: relative; display: block; background: #fff; padding: 194px 30px 30px; }
.voice__inner { position: relative; z-index: 10; }
.voice__ttl {  }
.voice__ttl img { width: auto; height: 65px; }
.voice__info { margin-top: 14px; }
.voice__info img { width: auto; height: 33px; }
.voice__person { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); display: block; width: auto; height: 390px; z-index: 0; }
@media screen and (max-width: 680px) {
	.voice:not(:first-of-type) { margin-top: 60px; }
}
@media screen and (min-width: 681px) {
	.sec--voice { position: relative; padding-top: 90px; padding-bottom: 105px; z-index: 10; }
	.voice-wrap { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: 1fr;  grid-column-gap: 70px; margin-top: 81px; }
	.voice { transition: .4s; padding: 270px 40px 40px; }
	.voice:hover { filter: brightness(108%); }
	.voice__ttl img { height: 90px; }
	.voice__info { margin-top: 20px; }
	.voice__info img { height: 46px; }
	.voice__person { height: 540px; }
}


/* Message
-------------------------------*/
.sec--msg { position: relative; padding-top: 60px; z-index: 20; }
.sec--msg .cmnttl { text-align: left; }
.sec--msg .cmnttl__jp,
.sec--msg .cmnttl__en { text-indent: inherit; }
.msg { background: #fff; margin-top: 19px; padding: 20px; box-shadow: 12px 12px 23px 0px rgba(30,99,35,0.1); }
.msg__ph { position: relative; }
.msg__ph__img {  }
.msg__ph__txt { position: absolute; bottom: 20px; left: -10px; }
.msg__ph__txt span { display: inline-flex; justify-content: center; align-items: center; font-weight: 700; line-height: 1; color: #fff; }
.msg__ph__txt span._occu { background: #333; padding: 6px 7px; font-size: 1.4rem; }
.msg__ph__txt span._who { background: var(--g-green); padding: 7px 7px; font-size: 1.8rem; }
.msg__ph__txt span._who::after { margin-left: 4px; font-size: 1.6rem; content: "教授"; }
.msg__ttl { font-size: 2.0rem; font-weight: 700; line-height: 1.5; color: var(--c-main); }
.msg__txt { font-size: 1.5rem; font-weight: 400; line-height: 2; }
@media screen and (max-width: 680px) {
	.msg__ph { margin-bottom: 24px; }
	.msg__txt { margin-top: 17px; }
}
@media screen and (min-width: 681px) {
	.sec--msg { padding-top: 105px; z-index: 20; }
	.msg { display: grid; grid-template-columns: 360px 1fr; grid-template-rows: auto 1fr; grid-column-gap: 40px; grid-row-gap: 17px; margin-top: 37px; padding: 60px; box-shadow: 20px 20px 40px 0px rgba(30,99,35,0.1); }
	.msg__ph { grid-area: 1 / 1 / 3 / 2; }
	.msg__ph__txt { bottom: 34px; left: -20px; }
	.msg__ttl { grid-area: 1 / 2 / 2 / 3; font-size: 2.2rem; line-height: 1.75; }
	.msg__txt { grid-area: 2 / 2 / 3 / 3; }
}




/* 
-------------------------------*/
.sec--feature { position: relative; padding-top: 103px; padding-bottom: 66px; z-index: 10; }
.feature-catch { margin-top: 14px; font-size: 1.5rem; font-weight: 400; line-height: 1.734; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; }
.sec--feature::before,
.sec--feature::after { position: absolute; left: 50%; display: block; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; pointer-events: none; }
.sec--feature::before { top: 0; transform: translateX(-127%); width: 125px; height: 100px; background-image: url("../img/feature_deco_1_sp.png"); }
.sec--feature::after { top: -12px; transform: translateX(3%); width: 145px; height: 109px; background-image: url("../img/feature_deco_2_sp.png"); }
.feature-bg { position: absolute; top: 150px; left: 0; display: block; width: 100%; height: calc(100% - 150px); background: var(--c-lgreen); pointer-events: none; z-index: -1; }


.feature-wrap { margin-top: 20px; }
.feature { position: relative; background: #fff; padding: 16px; cursor: pointer; }
.feature__label { position: absolute; top: 41%; display: flex; justify-content: center; align-items: center; min-width: 120px; width: 32.1vw; aspect-ratio: 1/1; background: var(--g-green45deg); border-radius: 50%; font-size: var(--fs15); font-weight: 700; line-height: 1.34; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; color: #fff; }

.feature:nth-of-type(odd) { transform: rotate(5deg); }
.feature:nth-of-type(odd) .feature__label { transform: rotate(-5deg); }
.feature:nth-of-type(even) { transform: rotate(-5deg); }
.feature:nth-of-type(even) .feature__label { transform: rotate(5deg); }
@media screen and (max-width: 680px) {
	.feature-wrap { display: grid; }
	.feature { width: calc(100% - 77px); }
	.feature:not(:first-of-type) { margin-top: 13px; }
	
	.feature:nth-of-type(odd) { margin-left: 10px; }
	.feature:nth-of-type(odd) .feature__label { left: 80%; }
	.feature:nth-of-type(even) { justify-self: flex-end; margin-right: 10px; }
	.feature:nth-of-type(even) .feature__label { right: 80%; }
}
@media screen and (min-width: 681px) {
	.sec--feature { padding-top: 173px; padding-bottom: 145px; }
	.sec--feature::before { top: 105px; transform: translateX(-165%); width: 394px; height: 240px; background-image: url("../img/feature_deco_1_pc.png"); }
	.sec--feature::after { top: 102px; transform: translateX(51.5%); width: 516px; height: 384px; background-image: url("../img/feature_deco_2_pc.png"); }
	.feature-bg { position: absolute; top: 150px; left: 0; display: block; width: 100%; height: calc(100% - 150px); background: var(--c-lgreen); z-index: -1; }
	.feature-bg { top: 173px; height: calc(100% - 173px); }
	
	.sec--feature .l-wrapper { width: 1321px; margin-top: -78px; }
	.feature-catch { margin-top: 18px; font-size: 1.8rem; line-height: 1.56; }
	.feature-wrap { display: flex; justify-content: space-between; align-items: flex-start; margin-top: 97px; }
	.feature { transition: .4s; width: 297px; padding: 18px; box-shadow: 20px 20px 40px 0px rgba(30,99,35,0.1); }
	.feature:hover { filter: brightness(110%); }
	.feature__label { max-width: 120px; font-size: 1.5rem; }
	.feature:nth-of-type(odd) .feature__label { top: calc(100% - 100px); right: -33px; }
	.feature:nth-of-type(even) { margin-top: 68px; }
	.feature:nth-of-type(even) .feature__label { top: calc(100% - 85px); right: -23px; }
}


/* Facility
-------------------------------*/
.sec--facility { padding-top: 65px; }
.facility-catch { margin-top: 13px; font-size: 1.5rem; font-weight: 400; line-height: 1.734; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; }
.fac-wrap { margin-top: 25px; }
.fac {  }
.fac__main { position: relative; }
.fac__main__txt-wrap { position: absolute; left: 20px; bottom: 25px; }
.fac__main__txt { display: inline-flex; justify-content: center; align-items: center; font-weight: 700; line-height: 1; color: #fff; }
.fac__main__txt--sub { height: 25px; background: #333; padding: 0 7px 2px; font-size: 1.3rem; }
.fac__main__txt--sub._lv1 { z-index: 0; }
.fac__main__txt--sub._lv2 { margin-top: -7px; z-index: 2; }
.fac__main__txt--main { height: 36px; background: var(--g-green); padding: 0 7px 2px; font-size: 2.4rem; }
.fac__main__txt--main small { margin-top: 2px; font-size: 80%; }

.fac__sub { width: calc(100% - 40px); margin-left: auto; margin-right: auto; padding-top: 22px; padding-bottom: 60px; }

.fac__article {  }
.fac__article__txt { font-size: 1.5rem; font-weight: 400; line-height: 2; text-align: justify; }
.fac__article__img {  }

.fac__pickup { position: relative; background: var(--c-lgreen50); margin-top: 67px; padding: 36px 20px 0; }
.fac__pickup__label { position: absolute; top: -17px; left: 50%; display: flex; justify-content: center; align-items: center; height: 34px; background: #1a1a1a; border-radius: 17px; padding: 0 17px 1px; font-size: 1.4rem; font-weight: 700; line-height: 1; text-align: center; color: #fff; }
.fac__pickup__ttl { display: inline-block; background: #fff; padding: 1px 8px 2px; font-size: 2.2rem; font-weight: 700; line-height: 1.5; text-align: center; color: var(--c-main); }
.fac__pickup__txt { margin-top: 22px; font-size: 1.4rem; font-weight: 400; line-height: 2; }
.fac__pickup__img {  }

.fac__eqp-wrap { margin-top: 60px; }
.fac__eqp-ttl { display: flex; justify-content: center; align-items: center; height: 50px; background: var(--c-lgreen50); margin-bottom: 30px; padding-bottom: 2px; font-size: 1.6rem; font-weight: 700; line-height: 1; text-align: center; }
.fac__eqp {  }
.fac__eqp__ph { position: relative; }
.fac__eqp__ph__txt { position: absolute; display: flex; justify-content: center; align-items: center; padding: 1vw 1.7vw 1.2vw; font-size: 4.8vw; font-weight: 700; line-height: 1.2; }
.fac__eqp__ph__txt small { font-size: 61.111%; }
.fac__eqp__ph__img {  }
.fac__eqp__txt { margin-top: 12px; font-size: 1.4rem; font-weight: 400; line-height: 1.857; }
@media screen and (max-width: 680px) {
	.fac__article__txt { margin-bottom: 22px; }
	.fac__article__img:not(:first-of-type) { margin-top: 20px; }
	.fac__pickup { margin-left: -20px; margin-right: -20px; }
	.fac__pickup__label { transform: translateX(-50%); }
	.fac__pickup__ttl { position: relative; left: 50%; transform: translateX(-50%); }
	.fac__pickup__img { margin-top: 25px; margin-left: -20px; margin-right: -20px; }
	
	.fac__eqp-ttl { margin-left: -20px; margin-right: -20px; }
	.fac__eqp:not(:first-of-type) { margin-top: 25px; }
	.fac__eqp__ph__txt { top: 50%; transform: translateY(-50%); left: 15px; flex-direction: column; background: #fff; color: var(--c-main); }
	.fac__eqp__ph__txt small { margin-top: 2px; }
	.fac__eqp__ph { display: grid; grid-template-columns: 1fr 59.7%; grid-template-rows: 1fr; grid-column-gap: 0px; grid-row-gap: 0px; }
	.fac__eqp__ph::before { grid-area: 1 / 1 / 2 / 2; background: var(--g-green); content: ""; }
	.fac__eqp__ph__img { grid-area: 1 / 2 / 2 / 3; }
}
@media screen and (min-width: 681px) {
	.sec--facility { padding-top: 200px; }
	.facility-catch { margin-top: 18px; font-size: 1.8rem; line-height: 1.4; }
	.fac-wrap { margin-top: 73px; background: url("../img/fac_under_gradient_pc.png") repeat-x 0 100%/1px auto; }
	.fac {  }
	.fac__main { position: relative; height: calc(100vh - 90px); }
	.fac__main::before { position: absolute; left: -7px; bottom: -30px; display: block; font: 900 21.9rem var(--ff-inti); line-height: 1; letter-spacing: 0.02em; color: #fff; white-space: nowrap; pointer-events: none; user-select: none; z-index: 10; }
	.fac--field .fac__main::before { content: "Field Facilities"; }
	.fac--indoor .fac__main::before { content: "Indoor Facilities"; }
	.fac__main__txt-wrap { left: 50%; transform: translateX(-50%); bottom: 60px; width: 1200px; z-index: 50; }
	.fac__main__txt--sub { position: relative; height: 42px; padding: 0 10px 2px; font-size: 2.2rem; }
	.fac__main__txt--sub._lv1 { z-index: 2; }
	.fac__main__txt--sub._lv2 { margin-top: -12px; z-index: 0; }
	.fac__main__txt--main { height: 60px; padding: 0 10px 2px; font-size: 4.0rem; }

	.fac__main__img { width: 100%; height: 100%; overflow: hidden; }
	.fac__main__img img { width: 100%; height: 100%; object-fit: cover; }
	.fac__sub { width: 1200px; padding-top: 60px; padding-bottom: 200px; }

	.fac__article { display: grid; grid-template-columns: 378px 1fr; grid-template-rows: 1fr; grid-column-gap: 60px; grid-row-gap: 0px; }
	.fac__article__txt { flex: 1; margin-top: -9px; font-size: 1.6rem; }
	.fac__article__img-wrap { display: grid; grid-template-columns: 428px 304px; grid-template-rows: 1fr; grid-column-gap: 30px; grid-row-gap: 0px; }
	.fac__article__img {  }
	.fac__article__img img { width: 100%; height: 100%; object-fit: cover; }
	
	.fac__pickup { margin-top: 110px; padding: 50px 650px 50px 50px; }
	.fac__pickup__label { top: -20px; left: 50px; min-width: 170px; height: 40px; border-radius: 20px; padding: 0 21px 1px; font-size: 1.6rem; }
	.fac__pickup__ttl { padding: 1px 9px 3px; font-size: 2.4rem }
	.fac__pickup__txt { margin-top: 17px; }
	.fac__pickup__img { position: absolute; bottom: 55px; right: 50px; width: 570px; }
	
	.fac__eqp-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; justify-content: space-between; margin-top: 60px; }
	.fac__eqp-ttl { width: 100%; height: 60px; margin-bottom: 40px; font-size: 2.0rem; }
	.fac__eqp { width: 270px; }
	.fac__eqp__ph { position: relative; }
	.fac__eqp__ph__txt { left: -16px; bottom: -16px; display: inline-flex; height: 32px; background: var(--g-green); padding: 0 10px 1px; font-size: 2.0rem; color: #fff; }
	.fac__eqp__ph__txt small { font-size: 70%; }
	.fac__eqp__ph__img {  }
	.fac__eqp__txt { margin-top: 31px; }
}


/* LAB
-------------------------------*/
.sec--lab { position: relative; background: url("../img/lab_gradient_sp.png") repeat-x 0% 0%/1px 100%; padding-top: 55px; padding-bottom: 60px; }
.lab-ttl {  }
.lab-ttl__txt { margin-top: 13px; font-size: 1.5rem; font-weight: 400; line-height: 1.734; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; }
.lab-btn-wrap { position: relative; }
/*	 width: 234px; height: 270px; margin-top: 119px;	*/
.lab-btn-wrap::before,
.lab-btn-wrap::after { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; content: ""; }
/*
.lab-btn-wrap::before { width: 100%; height: 100%; background: #fff; clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%); z-index: 1; }
*/
.lab-btn-wrap::after { width: 680px; height: 433px; background: url("../img/lab_bg_sp.png") no-repeat center/100% auto; z-index: 0; }
.lab-btn { position: relative; display: flex; justify-content: center; align-items: center; width: 120px; height: 120px; background: linear-gradient(135deg, rgba(145,222,113,1) 5%,rgba(54,189,157,1) 100%); border-radius: 50%; font-size: 1.4rem; font-weight: 400; line-height: 1.428; text-align: center; color: #fff; z-index: 10; }
.lab-btn::before { position: absolute; top: -10px; left: 50%; transform: translateX(-50%); display: block; width: 28px; height: 28px; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; pointer-events: none; }
/*
.lab-btn--fruit_horticulture { transform: translate(-50%, -167%); }
.lab-btn--fruit_horticulture::before { background-image: url("../img/icon_lab_fruit_horticulture.svg"); }
.lab-btn--vegetable_horticulture { transform: translate(-50%, -167%); }
.lab-btn--vegetable_horticulture::before { background-image: url("../img/icon_lab_vegetable_horticulture.svg"); }
.lab-btn--agri_economics { transform: translate(41%, -108%); }
.lab-btn--agri_economics::before { background-image: url("../img/icon_lab_agri_economics.svg");}
.lab-btn--crop_science { transform: translate(41%, 8%); }
.lab-btn--crop_science::before { background-image: url("../img/icon_lab_crop_science.svg"); }
.lab-btn--breeding { transform: translate(-50%, 67%); }
.lab-btn--breeding::before { background-image: url("../img/icon_lab_breeding.svg"); }
.lab-btn--floriculture { transform: translate(-141%, 8%); }
.lab-btn--floriculture::before { background-image: url("../img/icon_lab_floriculture.svg"); }
.lab-btn--entomology { transform: translate(-141%, -108%); }
.lab-btn--entomology::before { background-image: url("../img/icon_lab_entomology.svg"); }
.lab-btn--plant_pathology { transform: translate(-50%, -50%); }
.lab-btn--plant_pathology::before { background-image: url("../img/icon_lab_plant_pathology.svg"); }
*/
.lab-btn--fruit_horticulture::before { background-image: url("../img/icon_lab_fruit_horticulture.svg"); }
.lab-btn--vegetable_horticulture::before { background-image: url("../img/icon_lab_vegetable_horticulture.svg"); }
.lab-btn--agri_economics::before { background-image: url("../img/icon_lab_agri_economics.svg");}
.lab-btn--crop_science::before { background-image: url("../img/icon_lab_crop_science.svg"); }
.lab-btn--breeding::before { background-image: url("../img/icon_lab_breeding.svg"); }
.lab-btn--floriculture::before { background-image: url("../img/icon_lab_floriculture.svg"); }
.lab-btn--entomology::before { background-image: url("../img/icon_lab_entomology.svg"); }
.lab-btn--plant_pathology::before { background-image: url("../img/icon_lab_plant_pathology.svg"); }

.lab-deco { position: absolute; top: 50%; left: 50%; display: block; pointer-events: none; }
.lab-deco--1 { transform: translate(-169%, 22%); width: 105px; }
.lab-deco--2 { transform: translate(100%, 28%) rotate(25deg); width: 80px; }
.lab-deco--3 { transform: translate(-265%, 540%); width: 51px; }
.lab-deco--4 { transform: translate(18%, 270%); width: 182px; }
@media screen and (max-width: 680px) {
	.lab-btn-wrap { left: 50%; transform: translateX(-50%); }
	
	
	.lab-btn-wrap { display: grid; grid-template-columns: repeat(3, auto); grid-template-rows: repeat(4, auto); grid-column-gap: 0px; grid-row-gap: 30px; margin-top: 44px; }

	.lab-btn--fruit_horticulture { grid-area: 1 / 2 / 2 / 3; }
	.lab-btn--floriculture { grid-area: 1 / 3 / 3 / 4; align-self: center; transform: translateX(-17px); }
	.lab-btn--crop_science { grid-area: 2 / 2 / 3 / 3; }
	.lab-btn--breeding { grid-area: 3 / 2 / 4 / 3; margin-top: -10px; }
	.lab-btn--plant_pathology { grid-area: 3 / 3 / 5 / 4; align-self: center; transform: translateX(-17px); }
	.lab-btn--entomology { grid-area: 4 / 2 / 5 / 3; }
	.lab-btn--agri_economics { grid-area: 3 / 1 / 5 / 2; align-self: center; transform: translateX(17px); }
	.lab-btn--vegetable_horticulture { grid-area: 1 / 1 / 3 / 2; align-self: center; transform: translateX(17px); }
	
}
@media screen and (min-width: 681px) {
	.sec--lab { display: flex; justify-content: center; align-items: center; height: calc(100vh - 90px); background-image: url("../img/lab_gradient_pc.png"); background-size: 1px 100%; padding: 0; }
	.sec--lab .cmnttl__jp { font-size: 1.8rem; }
	.sec--lab .cmnttl__en { margin-top: 11px; font-size: 8.0rem; }
	.lab-ttl { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 10; }
	.lab-ttl__txt { margin-top: 14px; font-size: 1.6rem; line-height: 1.6875; }
	
	

	
	.lab-btn-wrap { width: 549px; height: 549px; margin-top: 0; }
	/*	Heptagon ->  width: 594px; height: 579px;	*/
	
	.lab-btn-wrap::before { width: 100%; height: 100%; background: #fff; clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%); z-index: 1; }
	/*	Heptagon -> clip-path: polygon(50% 0%, 90% 19%, 100% 64%, 72% 100%, 28% 100%, 0 64%, 10% 19%);	*/
	
	.lab-btn-wrap::after { transform: translate(-45%, -47%); width: 1088px; height: 1006px; background-image: url("../img/lab_bg_pc.png"); }
	
	.lab-btn { position: absolute; top: 50%; left: 50%; }
	.lab-btn { transition: .4s; }
	.lab-btn:hover { filter: brightness(110%); }
	.lab-btn::before {  }
	
	.lab-btn { align-items: flex-start; width: 190px; height: 190px; padding-top: 93px; font-size: 1.6rem; font-weight: 700; line-height: 1.5; }
	.lab-btn::before { top: 45px; width: 42px; height: 42px; }
	.lab-btn--fruit_horticulture { transform: translate(8%, -198%); }
	.lab-btn--vegetable_horticulture { transform: translate(-110%, -198%); }
	.lab-btn--floriculture { transform: translate(95%, -110%); }
	.lab-btn--crop_science { transform: translate(95%, 7%); }
	.lab-btn--breeding { transform: translate(8%, 92%); }
	.lab-btn--agri_economics { transform: translate(-110%, 90%); }
	.lab-btn--entomology { transform: translate(-195%, 7%); }
	.lab-btn--plant_pathology { transform: translate(-195%, -110%); }
	
	.lab-deco--1 { transform: translate(-208%, -69%); width: 360px; }
	.lab-deco--2 { transform: translate(190%, -108%) rotate(25deg); width: 215px; }
	.lab-deco--3 { transform: translate(-390%, 100%); width: 136px; }
	.lab-deco--4 { transform: translate(67%, 5%); width: 568px; }
	
}
@media (hover: hover) and (pointer: fine) and (max-height: 1000px) {
	.sec--lab { min-height: 1092px; }
}


/* Career
-------------------------------*/
.sec--career { padding-top: 60px; }
.career-catch { margin-top: 14px; font-size: 1.5rem; font-weight: 400; line-height: 1.734; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; }
.career-wrap { margin-top: 37px; }
.career { padding-bottom: 20px; }
.career__ttl { display: flex; justify-content: center; align-items: center; height: 50px; background: var(--c-lgreen50); padding-bottom: 2px; font-size: 1.6rem; font-weight: 700; line-height: 1; text-align: center; }
.career__comp-wrap { margin-top: 22px; }
.career__comp { font-size: 1.5rem; font-weight: 400; line-height: 1.867; }
.career__comp::before { margin-right: 3px; content: "\025cf"; color: var(--c-main); }

.career__chart { margin-top: 17px; }
.career_chart_list-wrap {  }
.career_chart_list {  }
.career_chart_list li { display: flex; align-items: center; font-size: 1.1rem; font-weight: 400; line-height: 1; white-space: nowrap; }
.career_chart_list li:not(:first-of-type) { margin-top: 10px; }
.career_chart_list li::before { width: 12px; height: 12px; margin-right: 4px; content: ""; }
.career_chart_list-notice { font-size: 1.0rem; font-weight: 400; line-height: 1.5; }

.career_chart_list:nth-of-type(1) li:nth-of-type(1)::before { background: #00aa81; }
/* 大学院進学 */

.career_chart_list:nth-of-type(1) li:nth-of-type(2)::before { background: #81c0e9; }
/* 卸売・小売業 */

.career_chart_list:nth-of-type(1) li:nth-of-type(3)::before { background: #ef8200; }
/* 製造業 */

.career_chart_list:nth-of-type(1) li:nth-of-type(4)::before { background: #675e7a; }
/* サービス業 */

.career_chart_list:nth-of-type(1) li:nth-of-type(5)::before { background: #4c8fcb; }
/* 建設業 */

.career_chart_list:nth-of-type(1) li:nth-of-type(6)::before { background: #aad185; }
/* 情報通信業 */

.career_chart_list:nth-of-type(1) li:nth-of-type(7)::before { background: #97ac47; }
/* 自営 */


.career_chart_list:nth-of-type(2) li:nth-of-type(1)::before { background: #3d599b; }
/* 運輸・郵便業 */

.career_chart_list:nth-of-type(2) li:nth-of-type(2)::before { background: #e0ac42; }
/* 金融・保険業 */

.career_chart_list:nth-of-type(2) li:nth-of-type(3)::before { background: #a89a93; }
/* 公務員 */

.career_chart_list:nth-of-type(2) li:nth-of-type(4)::before { background: #d1c47e; }
/* 農業・林業 */

.career_chart_list:nth-of-type(2) li:nth-of-type(5)::before { background: #b7b1d6; }
/* 医療・福祉 */

.career_chart_list:nth-of-type(2) li:nth-of-type(6)::before { background: #eb7491; }
/* 教員 */
@media screen and (max-width: 680px) {
	.career__ttl { margin-left: -20px; margin-right: -20px; }
	.career__comp-wrap { padding-bottom: 14px; }
	.career__comp { display: inline; }
	
	.career_chart_list-wrap { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: 1fr auto; grid-column-gap: 24px; grid-row-gap: 16px; margin-top: 10px; }
	.career_chart_list:nth-of-type(1) { grid-area: 1 / 1 / 2 / 2; }
	.career_chart_list:nth-of-type(2) { grid-area: 1 / 2 / 2 / 3; }
	.career_chart_list-notice { grid-area: 2 / 1 / 3 / 3; }

	
}
@media screen and (min-width: 681px) {
	.sec--career { padding-top: 160px; }
	.career-catch { margin-top: 18px; font-size: 1.8rem; line-height: 1.56; }
	.career-wrap { margin-top: 55px; }
	.career { padding-bottom: 80px; }
	.career__ttl { height: 60px; font-size: 2.0rem; }
	.career__comp-wrap { display: grid; grid-template-columns: repeat(3, 313px); grid-template-rows: repeat(12, auto); grid-auto-flow: column; gap: 0 40px; width: 920px; margin-top: 32px; margin-left: auto; margin-right: auto; }
	.career__comp { font-size: 1.4rem; line-height: 1.714; }
	.career__chart { display: flex; justify-content: space-between; align-items: center; width: 840px; margin-top: 49px; margin-left: auto; margin-right: auto; }
	.career__chart__img { width: 500px; margin-right: 90px; }
	.career_chart_list-wrap { flex: 1; margin-top: 18px; }
	.career_chart_list:not(:first-of-type) { margin-top: 10px; }
	.career_chart_list li { font-size: 1.3rem; }
	.career_chart_list li::before { width: 30px; height: 16px; margin-right: 6px; }
	.career_chart_list-notice { margin-top: 19px; }
}


/* Interview
-------------------------------*/
.lower-container { position: relative; padding-bottom: 60px; }
.lower-container::before { position: absolute; left: 0; bottom: 0; display: block; width: 100%; height: calc(100% - 237px); background: url("../img/bg_lower-container_sp.png") repeat-x 0 0/1px 100%; content: ""; z-index: 0; }

.sec--interview { position: relative; padding-top: 90px; z-index: 10; }
.intv-wrap { margin-top: 35px; }
.intv {  }
.intv__img {  }
.intv__inner { position: relative; margin-top: -28px; }
.intv__ttl {  }
.intv__ttl img { width: auto; height: 63px;}
.intv__info { margin-top: 18px; }
.intv__info__who { display: flex; align-items: center; font-size: 1.8rem; font-weight: 700; line-height: 1; }
.intv__info__who::after { content: "勤務"; font-size: 1.4rem; margin-left: 4px; }
.intv__info__txt { margin-top: 5px; font-size: 1.3rem; font-weight: 400; line-height: 1.5384; letter-spacing: 0.02em; }
.intv__button { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; height: 50px; background: #fff; border-radius: 25px; font-size: 1.4rem; font-weight: 700; line-height: 1; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; color: #333; }
.intv__button::before { width: 24px; aspect-ratio: 1/1; background: url("../common/img/icon_blank.svg") no-repeat center/contain; content: ""; }

@media screen and (max-width: 680px) {
	.intv:not(:last-of-type) { padding-bottom: 60px; }
	.intv__img { position: relative; margin-left: -20px; margin-right: -20px; }
	.intv__button { margin-top: 20px; }
	.intv__button::before { position: absolute; top: 50%; transform: translateY(-50%); right: 13px; display: block; }
}
@media screen and (min-width: 681px) {
	.lower-container { padding-bottom: 160px; }
	.lower-container::before { bottom: auto; top: 530px; width: 100%; height: 1739px; background-image: url("../img/bg_lower-container_pc.png"); }
	.lower-container::after { position: absolute; top: 510px; left: 0; display: block; width: 100%; height: 120px; background: url("../img/mask_lower-container.png") no-repeat 50% 0/100% 100%; content: ""; z-index: 5; }
	.sec--interview { padding-top: 120px; }
	.intv-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 81px; margin-left: -50px; margin-right: -50px; }
	.intv { position: relative; width: calc(50% - 50px); }
	.intv:nth-of-type(even) { margin-top: 100px; }
	.intv__img { overflow: hidden; }
	.intv__img img { transition: .4s; }
	.intv._hover .intv__img img { transform: scale(1.1); }
	
	.intv__inner { margin-top: -49px; }
	.intv__ttl { margin-left: -20px; }
	.intv__ttl img { height: 70px;}
	.intv__info { margin-top: 14px; padding-left: 5px; }
	.intv__info__txt { margin-top: 5px; font-size: 1.4rem; line-height: 1.5714; }
	.intv__button { position: absolute; right: 0; bottom: 4px; flex-direction: column-reverse; width: 120px; height: 120px; border-radius: 50%; }
	.intv__button::before { margin-top: 7px; }
}


/* FAQ
-------------------------------*/
.sec--faq { padding-top: 80px; }
.faq-wrap { margin-top: 35px; }
.faq {  }
.faq:not(:first-of-type) { margin-top: 14px; }
.faq__heading { position: relative; }
.faq__heading button { position: relative; display: block; width: 100%; background: var(--c-faq); transition: 0.3s; padding: 15px 20px 17px 20px; font-size: 1.6rem; font-weight: 700; line-height: 1.5; text-align: left; color: #fff; }
.faq__heading__icon { position: absolute; top: 50%; transform: translateY(-50%); right: 15px; display: block; width: 14px; height: 14px; }
.faq__heading__icon::before,
.faq__heading__icon::after { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; background: #fff; transition: .4s; content: ""; }
.faq__heading__icon::before { width: 100%; height: 2px; }
.faq__heading__icon::after { width: 2px; height: 100%; }
.faq__heading button.is-opend .faq__heading__icon::after { height: 0; }
.faq__content { display: none; }
.faq__content__inner { padding-top: 12px; }
.faq__content__inner__txt { font-size: 1.4rem; font-weight: 400; line-height: 2; text-align: justify; }
@media screen and (max-width: 680px) {
	.faq__heading button { min-height: 80px; }
}
@media screen and (min-width: 681px) {
	.sec--faq { padding-top: 238px; }
	.faq-wrap { margin-top: 72px; padding: 0 50px; }
	.faq {  }
	.faq:not(:first-of-type) { margin-top: 30px; }
	.faq__heading button { padding: 19px 0 21px; font-size: 2.0rem; text-align: center; }
	.faq__heading__icon { right: 26px; width: 16px; height: 16px; }
	.faq__content__inner { background: rgba(54,189,157,0.1); padding: 32px 40px; }
	.faq__content__inner__txt { font-size: 1.5rem; }
}


/*----------------------------
	Popup
----------------------------*/
.popup-content { position: relative; width: 100%; max-width: 1000px; margin: 0 auto; }
.mfp-container { padding: 0; }
.slider-wrapper {  }
button.mfp-close { top: -8px; right: 5px; width: 35px; height: 35px; background: var(--c-main) url("../common/img/icon_modal_close.svg") no-repeat center/15px auto; border-radius: 50%; opacity: 1; }
.mfp-close:active { top: -8px; }





/* 非表示button設定 */
.mfp-hide { display: none; }

.mfp-bg { background: rgba(232,248,226,1); opacity: .95; }
.cmn-modal { padding: 0 20px; }
.cmn-modal__inner { max-height: calc(100vh - 220px); overflow: auto; }

@media screen and (max-width: 680px) {
	#popup-feature button.mfp-close { top: -15px; right: 5px; }
	#popup-intv button.mfp-close { top: 15px; right: 5px; }
	#popup-feature button.mfp-close:active { top: -15px; }
	#popup-intv button.mfp-close:active { top: 15px; }
}
@media screen and (min-width: 681px) {
	button.mfp-close { display: none; }
}


/* Feature Modal
-------------------------------*/
.feature-modal {  }
.feature-modal__inner { max-height: calc(100svh - 40px); }
/* */
.feature-modal__img-wrap { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, auto); grid-column-gap: 13px; grid-row-gap: 13px; }

#popup-feature .slide-item { width: 100vw; }
#popup-feature .slick-dotted.slick-slider { margin-bottom: 0; }
.feature-modal__img {  }
.feature-modal__img:nth-of-type(1) { grid-area: 1 / 1 / 2 / 3; }
.feature-modal__img:nth-of-type(2) { grid-area: 2 / 1 / 3 / 2; }
.feature-modal__img:nth-of-type(3) { grid-area: 2 / 2 / 3 / 3; }
.feature-modal__content {  }
.feature-modal__ttl { font-size: 2.8rem; font-weight: 700; line-height: 1.4; color: var(--c-main); }
.feature-modal__ttl ._sub { font-size: 80%; }
.feature-modal__txt { margin-top: 16px; font-size: 1.5rem; font-weight: 400; line-height: 2; letter-spacing: 0.02em; text-align: justify; }
.feature-modal__dtl { position: relative; display: flex; justify-content: center; align-items: center; height: 50px; background: #fff; border-radius: 25px; margin-top: 22px; font-size: 1.4rem; font-weight: 700; line-height: 1; letter-spacing: 0.02em; text-indent: 0.02em; color: #333; }
.feature-modal__dtl::before { position: absolute; top: 50%; transform: translateY(-50%); right: 13px; display: block; width: 24px; aspect-ratio: 1/1; background: url("../common/img/icon_blank.svg") no-repeat center/contain; content: ""; }

@media screen and (max-width: 680px) {
	.feature-modal__content { margin-top: 22px; }
}
@media screen and (min-width: 681px) {
	#popup-feature .slide-item { width: 1000px; }
	.feature-modal { padding: 0; }
	.feature-modal__board { display: flex; justify-content: space-between; align-items: center; }
	.feature-modal__img-wrap { width: 500px; margin-right: 50px; grid-column-gap: 20px; grid-row-gap: 20px; }
	.feature-modal__content { flex: 1; }
	.feature-modal__ttl { font-size: 4.0rem; }
	.feature-modal__txt { margin-top: 25px; }
	.feature-modal__dtl { height: 70px; border-radius: 35px; margin-top: 43px; font-size: 1.8rem; letter-spacing: 0; text-indent: 0; }
	.feature-modal__dtl::before { right: 20px; width: 30px; }
	
}


/* Lab Modal
-------------------------------*/
.lab-modal {  }
.lab-modal__inner { max-height: calc(100svh - 40px); }
/*	 padding-top: 40px; padding-bottom: 40px;	*/
#popup-lab .slide-item { width: 100vw; }
#popup-lab .slick-dotted.slick-slider { margin-bottom: 0; }
.lab-modal__board { background: rgba(255,255,255,0.95); border-radius: 20px; padding: 34px 20px 0; }
.lab-modal__ttl { display: flex; justify-content: center; align-items: center; height: 46px; background: var(--g-green); font-size: 2.0rem; font-weight: 700; line-height: 1; text-align: center; color: #fff; }

.lab-modal__prfs-wrap {  }
.lab-modal__prfs { padding: 30px 0 30px; }
.lab-modal__prfs__who { display: flex; align-items: center; }
.lab-modal__prfs__who__img { width: 80px; height: 80px; border-radius: 50%; }
.lab-modal__prfs__who__txt { display: flex; align-items: center; margin-left: 16px; margin-bottom: 10px; font-size: 1.8rem; font-weight: 700; }
.lab-modal__prfs__who__txt::after { font-size: 1.3rem; margin-left: 4px; }
.lab-modal__prfs__who__txt._occu--1::after { content: "教授"; }
.lab-modal__prfs__who__txt._occu--2::after { content: "准教授"; }
.lab-modal__prfs__who__txt._occu--3::after { content: "講師"; }
.lab-modal__prfs__ttl { margin-top: 13px; font-size: 1.6rem; font-weight: 700; line-height: 1.625; color: var(--c-main); }
.lab-modal__prfs__txt { margin-top: 9px; font-size: 1.4rem; font-weight: 400; line-height: 1.857; text-align: justify; }
.lab-modal__prfs__btn { position: relative; display: flex; justify-content: center; align-items: center; height: 50px; background: rgba(54,189,157,0.1); border-radius: 25px; margin-top: 15px; font-size: 1.4rem; font-weight: 700; line-height: 1; letter-spacing: 0.02em; text-indent: 0.02em; text-align: center; color: #333; }
.lab-modal__prfs__btn::before { position: absolute; top: 50%; transform: translateY(-50%); right: 13px; display: block; width: 24px; aspect-ratio: 1/1; background: url("../common/img/icon_blank.svg") no-repeat center/contain; content: ""; }
@media screen and (max-width: 680px) {
	.lab-modal__ttl { margin-left: -20px; margin-right: -20px; margin-bottom: -10px; }
	.lab-modal__prfs:not(:first-of-type) { border-top: 1px solid #ccc; }
}
@media screen and (min-width: 681px) {
	#popup-lab .slide-item { width: 1000px; }
	.lab-modal { padding: 0; }
	.lab-modal__board { border-radius: 40px; padding: 30px 30px 60px; }
	.lab-modal__ttl { height: 50px; padding-bottom: 2px; font-size: 2.2rem; }
	.lab-modal__prfs-wrap { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 44px;  margin-top: 40px; padding-left: 30px; padding-right: 30px; }
	.lab-modal__prfs-wrap::before { position: absolute; top: 0; left: 50%; transform: translateX(-50%); display: block; width: 1px; height: 100%; background-color: #ccc; content: ""; }
	.lab-modal__prfs-wrap--crop_science::before { width: calc(100% / 3); background-color: transparent; border-left: 1px solid #ccc; border-right: 1px solid #ccc; }
	.lab-modal__prfs-wrap--fruit_horticulture::before,
	.lab-modal__prfs-wrap--vegetable_horticulture::before { display: none; }
	.lab-modal__prfs { padding: 0; }
	.lab-modal__prfs__btn { margin-top: 25px; }
}


/* Interview Modal
-------------------------------*/
.intv-modal {  }
.intv-modal__inner { max-height: calc(100svh - 40px); }
/*	 padding-top: 40px; padding-bottom: 40px;	*/
#popup-intv .slide-item { width: 100vw; }
#popup-intv .slick-dotted.slick-slider { margin-bottom: 0; }
.intv-modal__board {  }
.intv-modal__img {  }
.intv-modal__inner {  }
.intv-modal__ttl {  }
.intv-modal__ttl img { width: auto; height: 72px; }
.intv-modal__who { margin-top: 20px; font-size: 1.8rem; font-weight: 700; line-height: 1.4; }
.intv-modal__who::after { content: "勤務"; font-size: 1.4rem; margin-left: 4px; }
.intv-modal__info { margin-top: 2px; font-size: 1.4rem; font-weight: 400; line-height: 1.5714; letter-spacing: 0.02em; }
.intv-modal__txt { margin-top: 18px; font-size: 1.5rem; font-weight: 400; line-height: 2; letter-spacing: 0.02em; text-align: justify; }
@media screen and (max-width: 680px) {
	.intv-modal__inner { margin-top: 30px; margin-bottom: 23px; }
}
@media screen and (min-width: 681px) {
	#popup-intv .slide-item { width: 1000px; }
	.intv-modal { padding: 0; }
	.intv-modal__inner { margin-bottom: -5px; }
	.intv-modal__who { display: flex; flex-wrap: wrap; align-items: center; }
	.intv-modal__board { display: grid; grid-template-columns: 400px 1fr; grid-template-rows: 1fr; grid-column-gap: 40px; grid-row-gap: 0px; padding: 10px 0; }
	.intv-modal__img img { width: 100%; height: 100%; object-fit: cover; }
	.intv-modal__ttl img { height: 90px; }
	.intv-modal__who { margin-top: 29px; }
	.intv-modal__txt { margin-top: 27px; letter-spacing: 0; }
}


/*		Modal for YouTube		*/
.mfp-iframe-scaler button.mfp-close { top: -39px; right: 0; width: 40px; height: 40px; background: url("../common/img/icon_modal_close.svg") no-repeat center/20px auto; }


/*	Arrow, Dot Customize	*/

.slick-prev,
.slick-next { z-index: 10; top: 190px; width: 40px; height: 40px; background: #fff; border-radius: 50%; opacity: 1; transition: .4s; }
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus { background: #fff; opacity: 0.75; }
.slick-prev { left: 20px; }
.slick-next { right: 20px; }

.slick-prev::before,
.slick-next::before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transform-origin: center; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center; background-size: contain; content: ""; }
.slick-prev::before { background-image: url("../common/img/icon_slick_prev.svg"); }
.slick-next::before { background-image: url("../common/img/icon_slick_next.svg"); }

/*
.slick-dots { bottom: auto; top: 180px; display: flex; justify-content: center; align-items: center; }
.slick-dots li { width: 6px; height: 6px; padding: 8px; box-sizing: content-box; margin: 0; }
.slick-dots li button { width: 6px; height: 6px; padding: 0; border-radius: none; background: var(--c-dgreen); font-size: 0; line-height: 0; }
.slick-dots li button::before { display: none; }
.slick-dots li.slick-active button { background: var(--c-mustard); }
*/
@media screen and (min-width: 681px) {
	.slide-item { margin: 0 16px; }
	.slick-prev, .slick-next { top: 50%; transform: translateY(-50%); width: 80px; height: 80px; background: #fff; }
	.slick-prev { left: auto; right: calc(100% + 50px); }
	.slick-next { right: auto; left: calc(100% + 50px); }
/*
	.slick-dots { top: 200px; }
	.slick-dots li { width: 8px; height: 8px; padding: 8px; }
	.slick-dots li button { width: 8px; height: 8px; }
*/
}