@charset "utf-8";
/* reset
-------------------------------------------------- */
sub, sup {
	font-size: 75%;
}
sup {
	vertical-align: top;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
img {
	vertical-align: bottom;
}
a:link,
a:visited {
	color: #222;
	outline: none;
	text-decoration: none;
}
*,
*:before,
*:after {
	box-sizing: border-box;
}
@media (min-width: 768px) {
	.uHidden--pc {
		display: none;
	}
}
@media (max-width: 767px) {
	img {
		max-width: 100%;
	}
	.uHidden--sp {
		display: none;
	}
}
/* animation
-------------------------------------------------- */

.slideUp {
	transition: opacity 1s, transform 1s;
	transform: translateY(20px);
	opacity: 0;
}
.slideUp._action {
	transform: translateY(0);
	opacity: 1;
}
.fadeInKv {
	transition: opacity 2s;
	transition-delay: 2.6s;
	opacity: 1;
}
.fadeInKv._action {
	opacity: 1;
}
.fadeIn {
	transition: opacity .5s;
	transition-delay: .5s;
	opacity: 0;
}
.fadeIn._action {
	opacity: 1;
}
.fadeIn_height {
	height: 0;
	opacity: 0;
	overflow: hidden;
	transition: height 2s ease, opacity 2s ease;
}
.fadeIn_height._action {
	height: auto;
	opacity: 1;
}
/* Utility
-------------------------------------------------- */

.uText__center {
	text-align: center;
}
.uText__mid {
	font-size: 24px;
}
.uLink {
	display: inline-block;
	margin-top: 1vw;
	border-bottom: 1px solid #222;
}
.uColor__green {
	color: #01916d;
	font-family: var(--font-bold);
}
.uColor__black {
	color: #000;
	font-family: var(--font-bold);
}
.uFont__light {
	font-weight: 300 !important;
}
.uLine__green {
	border-bottom: 3px solid #01916d;
	font-weight: 500;
}
@media (max-width: 768px) {
	.uText__mid {
		font-size: 4.8vw;
	}
	.uLink {
		margin-left: 1em;
	}
}
/* common
------------------------------ */

[class*="Blk__inner"]:not(.kvBlk__inner){
	max-width: 1200px;
	margin: 0 auto;
	padding-left: clamp(50px, 7.14vw, 100px);
	padding-right: clamp(50px, 7.14vw, 100px);
	font-family: var(--font-bold);
}
.cTitle__large {
	font-size: clamp(27px, 2vw, 28px);
	line-height: 1.61;
	letter-spacing: .2em;
	color: #fff;
}
.cTitle__sec {
	padding-top: 100px;
	font-size: 20px;
	text-align: center;
	color: #01916d;
	letter-spacing: .05em;
	font-family: var(--font-bold);
}
.cTitle__mid {
	display: flex;
	vertical-align: top;
	font-size: 40px;
	letter-spacing: .05em;
	font-family: var(--font-normal);
}
.cTitle__small {
	margin-top: 50px;
	font-size: 24px;
	text-align: center;
	letter-spacing: .05em;
}
@media (max-width: 768px) {
	[class*="Blk__inner"]:not(.kvBlk__inner){
	padding-left: 6.66vw;
	padding-right: 6.66vw;
}
	.cTitle__sec {
	padding-top: 13.33vw;
	font-size: 4vw;
}
	.cTitle__mid {
		font-size: 7.2vw;
		letter-spacing: .01em;
	}
	.cTitle__small {
	margin-top: 12.66vw;
	font-size: 3.73vw;
	letter-spacing: -.03em;
}
}

/* kvBlk
------------------------------ */
.kvBlk__inner {
  position: relative;
	font-family: var(--font-bold);
}
.kvBlk img {
  width: 100%;
}
.kvBlk__textBox {
  position: absolute;
  top: 60px;
  right: 14.28%;
  width: 39.64%;
  z-index: 3;
}
.cTitle__kv {
	max-width: 552px;
}
.kvBlk .cTitle__large {
	margin-top: 30px;
	font-weight: 500;
	letter-spacing: .01em;
}
.kvBlk__statement {
	margin-top: 10px;
	font-size: 18px;
	letter-spacing: .02em;
	line-height: 1.78;
	color: #fff;
	font-family: var(--font-normal);
}
.kvBlk__note {
	display: inline-block;
	margin-top: 65px;
	padding: 2px 10px;
	font-size: clamp(15px, 1.28vw, 18px);
	color: #fff;
	border: 1px solid #fff;
	letter-spacing: .01em;
	font-family: var(--font-normal);
	line-height: 1.5;
}
.kvBlk__list {
	width: 100%;
	display: flex;
	justify-content: center;
}
.kvBlk__list li {
	width: clamp(200px, 17.85vw, 250px);
	font-size: 18px;
	text-align: center;
	border-radius: 10px 10px 0 0; 
	background-color: #fff;
	font-family: var(--font-bold);
	line-height: 1;
	transition: opacity .3s ease-in-out;
}
.kvBlk__list li:hover {
	opacity: .9;
}
.kvBlk__list li a {
	display: flex;
	padding: 15px 0;
	align-items: center;
	justify-content: center;
	height: 100%;
	gap: 8px;
	text-align: center;  
}
.kvBlk__list span {
	color: #01916d;
}
.kvBlk__list img {
	width: 1.5vw;
}
.kvBlk__btn {
	position: absolute;
	top: 15px;
	right: 50px;
	width: clamp(20px, 2.85vw, 40px);
	transition: opacity .3s ease;
}
.kvBlk__btn:hover {
	opacity: .6;
}
.nav {
	position: sticky;
	margin-top: -85px;
	padding-top: 20px;
	top: 0;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 15;
}
@media (min-width: 768px) {
	.kvBlk__mv picture,
	.kvBlk__mv img {
		display: block;
		width: 100%;
		height: 580px;
		object-fit: cover;
	}
}
@media (max-width: 1000px) {
	.cTitle__large {
		line-height: 1.4;
	}
	.kvBlk__statement {
		line-height: 1.71;
	}
	.kvBlk__textBox {
		width: 46%;
		right: 7%;
	}
}

@media (max-width: 768px) {
	.kvBlk__textBox {
    width: 86.66vw;
		right: 50%;
		transform: translateX(50%);
  }
	.cTitle__kv {
    width: 100% !important;
	}
	.kvBlk .cTitle__large {
    margin-top: 6.66vw;
		font-size: 4vw;
		line-height: 1.71;
	}
	.kvBlk__statement {
		margin-top: 6.66vw;
		font-size: 3.46vw;
	}
	.kvBlk__note {
    margin-top: 26.66vw;
    padding: .66vw 1.33vw;
    font-size: 3.06vw;
		letter-spacing: .04em;
	}
	.kvBlk__list {
		position: relative;
		flex-wrap: wrap;
		gap: 1.33vw;
		padding-top: 4vw;
		padding-bottom: 4vw;
		background-color: #000;
	}
	.kvBlk__list li {
		width: 42.66vw;
		padding: .66vw 0;
		font-size: 3.46vw;
		border-radius: 1.33vw; 
		font-family: var(--font-bold);
	}
	.kvBlk__list li:first-child,
	.kvBlk__list li:nth-child(2) {
		padding: 2.39vw 0;
	}
	.kvBlk__list img {
		width: 3.73vw;
	}
	.kvBlk__navText {
		margin-left: -3vw;
	}
	.kvBlk__list li a {
		position: relative;
		padding: 2vw 0;
	}
	.kvBlk__list li .kvBlk__arrow {
		position: absolute;
		top: 50%;
		right: 2.66vw;
		transform: translateY(-50%);
	}
	.kvBlk__btn {
    top: 4vw;
    right: 6.66vw;
    width: 8vw;
	}
	.nav {
		margin-top: 0;
		padding-top: 0;
	}
}

/* movieBlk
------------------------------ */
.movieBlk {
	background: #f1efea;
}
.movieBlk__inner {
	padding-bottom: 180px;
}
.movieBlk__movieWrapper {
	margin: 60px auto 0;
  max-width: 720px;
	width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden; 
}
.movieBlk__movieWrapper iframe {
	height: 100%;
}

@media (max-width: 768px) {
	.movieBlk__inner {
		padding-bottom: 13.33vw;
	}
	.movieBlk__movieWrapper {
	margin-top: 6.66vw;
}
}

/* eventBlk
------------------------------ */
.eventBlk img {
	width: 100%;
}
.eventBlk__inner {
	padding-bottom: 85px;
}
.eventBlk__flexBox {
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
}
.eventBlk .cTitle__mid {
	letter-spacing: 0;
}
.eventBlk__textBox {
	max-width: 425px;
	width: 42.5%;
}
.eventBlk__list {
	margin-top: 40px;
	font-family: var(--font-normal);
}
.eventBlk__list li {
	font-size: 18px;
	line-height: 1;
	letter-spacing: .05em;
}
.eventBlk__list li:nth-child(2),
.eventBlk__list li:nth-child(4) {
	margin-top: 25px;
}
.eventBlk__list li:nth-child(3),
.eventBlk__list li:nth-child(5) {
	margin-top: 15px;
}
.eventBlk__list .uText__mid {
	margin-left: .7vw;
}
.eventBlk__fig {
	max-width: 526px;
	width: 52.6%;
}
.eventBlk__caption {
	font-size: 13px;
	font-family: var(--font-normal);
}

@media (max-width: 768px) {
	.eventBlk__inner {
		padding-bottom: 10.66vw;
	}
	.eventBlk__flexBox {
    display: block;
    margin-top: 13.33vw;
	}
	.eventBlk__textBox {
		width: 100%;
	}
	.eventBlk__list {
		text-align: center;
	}
	.eventBlk__list li {
		margin-top: 4vw !important;
		font-size: 3.46vw;
		line-height: 1.2;
	}
	.eventBlk__fig {
		width: 100%;
		margin-top: 6vw;
	}
	.eventBlk__caption {
		font-size: 2.66vw;
	}
	.eventBlk__list .uText__mid {
	margin-left: 1vw;
}
}

/* lectureBlk
------------------------------ */
.lectureBlk {
	background-color: #f1f2f1;
}
.lectureBlk img {
	width: 100%;
}
.lectureBlk__inner {
	padding-bottom: 100px;
	font-size: 18px;
}
.lectureBlk .cTitle__mid {
	letter-spacing: .02em;
	line-height: 1.2;
}
.lectureBlk__flexBox {
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
}
.lectureBlk__list li {
	margin-top: 20px;
	line-height: 1.5;
	font-family: var(--font-normal);
}
.lectureBlk__list .uText__mid {
	margin-left: .7vw;
}
.lectureBlk__textBox {
	width: 66%;
	letter-spacing: .05em;
}
.lectureBlk__fig {
	width: 219px;
}

@media (min-width: 768px) {
	.lectureBlk__textBox {
		margin-right: 50px;
	}
}
@media (max-width: 768px) {
	.lectureBlk__flexBox {
    display: block;
    margin-top: 5.33vw;
	}
	.lectureBlk__inner {
		padding-bottom: 13.33vw;
		font-size: 3.46vw;
	}
	.lectureBlk .cTitle__mid {
	text-align: center;
	font-size: 5.8vw;
	}
	.lectureBlk__textBox {
		width: 100%;
	}
	.lectureBlk__list li:nth-child(3) {
		display: block !important;
		text-align: center;
	}
	.lectureBlk__list li {
		margin-top: 3vw;
	}
	.lectureBlk__list li:first-child {
		text-align: left;
	}
	.lectureBlk__list li:not(.lectureBlk__list li:first-child) {
		display: inline-block;
	}
	.lectureBlk__list .uText__mid {
		margin-left: 1vw;
	}
	.lectureBlk__fig {
	width: 47vw;
	margin: 0 auto;
	margin-top: 6.66vw;
	}
}

/* exhibitionBlk
------------------------------ */
.exhibitionBlk img {
	width: 100%;
}
.exhibitionBlk__fig01 {
	max-width: 1400px;
	margin: 0 auto;
}
.exhibitionBlk__fig02 {
	width: 670px;
	margin: 0 auto;
	margin-top: 10px;
}
.exhibitionBlk__inner {
	padding-bottom: 100px;
}
.exhibitionBlk .cTitle__mid {
	justify-content: center;
}
.exhibitionBlk .cTitle__mid {
	margin-top: 80px;
}
.exhibitionBlk__list {
	margin-top: 30px;
	text-align: center;
	line-height: 1.7;
	letter-spacing: .05em;
	font-family: var(--font-bold);
}
.exhibitionBlk__arrow {
	width: 96px;
	margin: 0 auto;
}
.exhibitionBlk__text:nth-of-type(2) {
	margin-top: 15px;
}
.exhibitionBlk__list li:last-child {
	margin-top: 40px;
}
.exhibitionBlk .cTitle__small {
	margin-top: 65px;
	font-size: 18px;
	color: #01916d;
}

@media (max-width: 768px) {
	.exhibitionBlk__inner {
		padding-bottom: 13.33vw;
	}
	.exhibitionBlk__fig02 {
		width: 100%;
		margin-top: 1.33vw;
	}
	.exhibitionBlk .cTitle__mid {
    margin-top: 13.33vw;
		letter-spacing: -.03em;
		text-align: center;
		line-height: 1.3;
	}
	.exhibitionBlk__arrow {
		width: 19vw;
		margin-top: 2vw;
	}
	.exhibitionBlk__text:nth-of-type(2) {
    margin-top: 2.5vw;
	}
	.exhibitionBlk__text {
		font-size: 3.46vw;
		line-height: 1.5;
	}
	.exhibitionBlk .uFont__light {
		display: block;
		margin-top: 3.33vw;
	}
	.exhibitionBlk__list li:last-child {
    margin-top: 6.66vw;
	}
	.exhibitionBlk__list {
		letter-spacing: .01em;
		line-height: 1.3;
	}
	.exhibitionBlk .cTitle__small {
		margin-top: 8vw;
		font-size: 2.66vw;
		letter-spacing: .05em;
	}
}

/* globalBlk
------------------------------ */
.globalBlk {
	background-color: #f1f2f1;
}
.globalBlk img {
	width: 100%;
}
.globalBlk__inner {
	padding-top: 100px;
	padding-bottom: 100px;
}
.globalBlk .cTitle__mid{
	text-align: center;
}
.globalBlk__text {
	margin-top: 50px;
	font-size: 18px;
	text-align: center;
	letter-spacing: .025em;
}
.globalBlk__fig {
	margin-top: 75px;
}

@media (max-width: 768px) {
	.globalBlk__inner {
		padding-top: 13.33vw;
		padding-bottom: 13.33vw;
		letter-spacing: .01em;
		line-height: 1.5;
	}
	.globalBlk .cTitle__mid {
		letter-spacing: -0.02em;
	}
	.globalBlk__fig {
		margin-top: 13.33vw;
	}
	.globalBlk__text {
		margin-top: 6.66vw;
		font-size: 3.46vw;
	}
}

/* productBlk
------------------------------ */
.productBlk__inner {
	max-width: 1010px !important;
	padding-top: 100px;
	padding-bottom: 100px;
}
.productBlk .cTitle__mid {
	justify-content: center;
}
.productBlk__statement {
	margin-top: 50px;
	font-size: 24px;
	text-align: center;
	line-height: 1.5;
}
.productBlk__group {
	margin-top: 50px;
	font-size: 18px;
	letter-spacing: .02em;
}
.productBlk__group:last-child {
	margin-top: 10px;
}
.productBlk__group:nth-of-type(3) .productBlk__list li:nth-child(2),
.productBlk__group:nth-of-type(3) .productBlk__list li:nth-child(3) {
	display: inline-block;
}
.productBlk__group:nth-of-type(3) .productBlk__list li:nth-child(3) {
	margin-left: 1em;
}
@media (min-width: 768px) {
	.productBlk__list li {
		padding-left: .5em;
		text-indent: -.5em; 
	}
}
@media (max-width: 768px) {
	.productBlk__inner {
		padding-top: 13.33vw;
		padding-bottom: 13.33vw;
	}
	.productBlk__statement {
		margin-top: 12.66vw;
		font-size: 3.73vw;
		line-height: 1.3;
		letter-spacing: .02em;
	}
	.productBlk__group {
		margin-top: 6.66vw;
		font-size: 3.46vw;
		text-align: center;
		letter-spacing: -.025em;
		line-height: 1.5;
	}
	.productBlk__list {
		display: inline-block;
		text-align: left;
		margin: 0 auto;
		}
	.productBlk__group:nth-of-type(3) .productBlk__list li:nth-child(2),
	.productBlk__group:nth-of-type(3) .productBlk__list li:nth-child(3) {
		display: block;
	}
	.productBlk__group:nth-of-type(3) .productBlk__list li:nth-child(3) {
		margin-left: 0;
	}
}

/* contactBlk
------------------------------ */
.contactBlk__inner {
	display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;    
	padding-top: 100px;
	padding-bottom: 100px;
	text-align: center;
	font-weight: 300 !important;
	letter-spacing: .025em;
	line-height: 1.7;
}
.contactBlk__title,
.contactBlk__subTitle {
	font-size: 18px;
	font-weight: 500;
}
.contactBlk__address {
	margin-top: 15px;
	font-size: 14px;
	font-family: var(--font-normal);
}
.contactBlk__elemBox {
	text-align: left;
	width: 100%;
	max-width: 300px;
}
.contactBlk__elemBox:first-of-type {
	padding-top: 25px;
	border-top: 1px solid #333333;
}
.contactBlk .uLine__under {
	padding-bottom: .1vw;
	border-bottom: 1px solid #333333;
}

@media (max-width: 768px) {
	.contactBlk__inner {
		padding-top: 13.33vw;
		padding-bottom: 13.33vw;
		gap: 4vw;
	}
	.contactBlk__title,
	.contactBlk__subTitle {
		font-size: 3.46vw;
	}
	.contactBlk__elemBox {
		padding-left: 4vw;
		max-width: 260px;
	}
	.contactBlk__address {
		font-size: 2.66vw;
	}
}