@charset "UTF-8";

/*-------------------------------------------------
	Reset
-------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {margin:0; padding:0; border:0; outline:0; vertical-align:baseline;background:transparent;}
body {line-height:1; -webkit-text-size-adjust: 100%;}
article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section,picture {display:block;}
ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:''; content:none;}
a {margin:0; padding:0; vertical-align:baseline; background:transparent;}
ins {background-color:#fff; color:#000; text-decoration:none;}
mark {background-color:#ff9; color:#000; font-style:italic; font-weight:bold;}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom:1px dotted; cursor:help;}
table {border-collapse:collapse; border-spacing:0; font-size:inherit;}
hr {display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0;}
input, select {vertical-align:middle;}
img {vertical-align:top; font-size:0; line-height:0;}
button {margin: 0; padding: 0; border: none; background: none; cursor: pointer;}

/*-------------------------------------------------
	Clearfix
-------------------------------------------------*/
.cf:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}

/*-------------------------------------------------
	Base
-------------------------------------------------*/
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
:root {
	--font-jp: 'Noto Sans JP',YuGothic,'Yu Gothic','ヒラギノ角ゴシック','Hiragino Sans','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	--font-en: "Barlow", sans-serif;
	--key-color: #00352c;
	--text-color: #00352c;
	--mori-color-1: #629939;
	--mori-color-2: #005f2e;
	--mori-color-3: #5a2200;
	--mori-color-4: #35a36e;
	--line-color: rgb(0 53 44 / .25);
	--pd-side: 30px;
	--pd-side-wide: 60px;
	--mgn-btm-high: 110px;
}

body {
	position: relative;
	margin: 0;
	padding: 0;
	font-family: var(--font-jp);
	font-weight: 500;
	font-style: normal;
	font-size: 100%;
	line-height: 1;
	color: var(--text-color);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/*.loading {
	width: 100%;
	height: 100%;
	background: #f7fbf7;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
}*/
a:link, a:visited {
	color: var(--text-color);
	text-decoration: none;
	outline: none;
	opacity: 1;
	transition: opacity 360ms;
}
a:hover {
	text-decoration: none;
	opacity: .7;
	cursor: pointer;
}
img {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 666px) {
	:root {
		--mgn-btm-high: 60px;
	}
}

/*-------------------------------------------------
	Commons
-------------------------------------------------*/
/* Layout */
.ly_fL {
	float: left;
}
.ly_fR {
	float: right;
}
.ly_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ly_flex.rev {
	flex-direction: row-reverse;
}
.ly_flex.aiC {
	align-items: center;
}
.ly_flex.jcFs {
	justify-content: flex-start;
}
.ly_flex.jcC {
	justify-content: center;
}
.ly_w_100 {
	width: 100%;
}
.ly_w_master {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 980px;
}
.ly_scroll {
	margin-top: calc(-1 * var(--mgn-btm-high));
	padding-top: var(--mgn-btm-high);
}
/* Helper */
.la_dn, .la_dn_ib {
	display: none;
}
.sm_dn {
	display: block;
}
.sm_dn_ib {
	display: inline-block;
}
span.ib {
	display: inline-block;
}
.hp_posRe {
	position: relative;
}
.hp_ofH {
	overflow: hidden;
}
.hp_color_key {
	color: var(--key-color) !important;
}
.hp_txtShadow {
	filter: drop-shadow(0px 0px 3px #333);
}
/* Margin */
.hp_mA {
	margin-left: auto;
	margin-right: auto;
}
.mgn_btm_high {
	margin-bottom: var(--mgn-btm-high);
}
.mgn_btm_mid {
	margin-bottom: var(--mgn-btm-mid);
}
.pd_side {
	padding-left: var(--pd-side);
	padding-right: var(--pd-side);
}
/* Heading + Text */
.el_lv2H {
	margin-bottom: 1.15em;
	font-family: var(--font-en);
	font-weight: 700;
	font-size: 28px;
	line-height: 1.333;
	letter-spacing: .05em;
	text-align: center;
	color: var(--key-color);
	/* text-transform: uppercase; 全部大文字にする*/
}
p {
	font-size: 16px;
	line-height: 2;
	letter-spacing: .15em;
	text-align: justify;
	color: var(--text-color);
	font-feature-settings: "palt";
}
p:not(:last-of-type) {
	padding-bottom: 2em;
}
.hp_txtA_c {
	text-align: center !important;
}
.hp_txtA_l {
	text-align: left !important;
}
.hp_ls0 {
	letter-spacing: 0;
}
.small,
span.small {
	font-size: .9em;
}
@media screen and (max-width: 1279px) {
	/* Heading + Text */
	.el_lv2H {
		margin-bottom: 1em;
		font-size: 24px;
	}
}
@media screen and (max-width: 666px) {
	/* Layout */
	.sm_floatNone {
		float: none;
	}
	.sm_flexNone {
		display: block;
	}
	.ly_scroll_sm {
		margin-top: -100px;
		padding-top: 100px;
	}
	/* helper */
	.la_dn {
		display: block;
	}
	.la_dn_ib {
		display: inline-block;
	}
	.sm_dn, .sm_dn_ib {
		display: none !important;
	}
	.sm_w_100 {
		width: 100% !important;
	}
	.sm_w_100vw {
		margin-left: calc( - ( var(--pd-side) ));
		width: 100vw !important;
	}
	/* Margin */
	.mgn_btm_high {
		margin-bottom: 60px;
	}
	/* Heading + Text */
	.el_lv2H {
		margin-bottom: 1em;
	}
	p {
		font-size: 15px;
	}
}

/*-------------------------------------------------
	Header
-------------------------------------------------*/
.ly_hdr {
	position: fixed;
	top: 0;
	left: 0;
	padding: 0 var(--pd-side);
	width: 100%;
	height: 75px;
	background-color: #fff;
	z-index: 1;
}
.un_seikoLogo {
	width: 120px;
	height: 24px;
}
#overlay-hbg.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(255, 255, 255, 0.7);
	width: 100%;
	height: 100%;
	z-index: 0;
}
.el_gNav,
.bl_Switch {
	display: inline-block;
	font-family: var(--font-en);
	font-size: 20px;
	line-height: 1;
	letter-spacing: .05em;
	color: rgb(0 53 44 / .5);
}
.el_gNav a,
.bl_Switch a {
	color: var(--key-color);
}
.bl_gNav li + li {
	margin-left: 1.1em;
}
.ly_langSwitch {
	display: flex;
	justify-content: flex-end;
	width: 120px;
	z-index: 1;
}
.un_langS_bar {
	margin: 0 .4em 0 .35em;
	border-left: 1px solid var(--key-color);
}
@media screen and (max-width: 1279px) {
	.un_seikoLogo {
		margin-left: -10px;
		width: 90px;
		height: 18px;
	}
	.ly_hdr {
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 55px;
		background-color: #fff;
	}
	.un_seikoLogo {
		position: relative;
		top: unset;
		left: unset;
		width: 90px;
		height: 18px;
	}
	.bl_Switch {
		margin-top: 1px;
		margin-right: 13px;
	}
	.bl_Switch > .el_gNav {
		font-size: 16px;
	}
	.ly_langSwitch .bl_Switch > .el_gNav,
	.ly_langSwitch .bl_Switch > .el_gNav a {
		transition: color 360ms;
	}
	.ly_langSwitch.active .bl_Switch > .el_gNav {
		color: rgb(255 255 255 / .3);
	}
	.ly_langSwitch.active .bl_Switch > .el_gNav a {
		color: #fff;
	}
	.ly_langSwitch .un_langS_bar {
		transition: border-color 360ms;
	}
	.ly_langSwitch.active .un_langS_bar {
		border-color: #fff;
	}
	#overlay-hbg.overlay {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		background-color: rgba(255, 255, 255, 0.7);
		width: 100%;
		height: 100%;
		z-index: 0;
	}
	.ly_gNav {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		position: fixed;
		top: 0;
		right: -220px;
		padding: 30px;
		width: 220px;
		height: 100%;
		background-color: #335d56;
		transition: right 360ms;
		overflow-y: scroll;
		/* filter: drop-shadow(0px 0px 3px #333); */
	}
	.ly_gNav.active {
		right: 0;
	}
	.ly_gNav .bl_gNav {
		padding-right: 5px;
	}
	.ly_gNav .el_gNav {
		display: block;
		margin-left: 0;
		font-size: 18px;
		line-height: 3;
		text-align: right;
	}
	.ly_gNav .el_gNav > a {
		display: block;
		color: #fff;
	}
	.bl_gNav .un_langS {
		display: none;
	}
	.ly_gNav_sm {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		z-index: 1;
	}
	.ly_gNav_sm .un_langS {
		margin-left: 0;
		margin-right: 10px;
		font-size: 15px;
		vertical-align: bottom;
	}
	/* Hamburger Icon */
	.un_btn_hbg {
		display: block;
		position: relative;
		margin-right: -15px;
		width: 44px;
		height: 27px;
	}
	.un_btn_hbg span {
		display: block;
		position: absolute;
		left: 5px;
		width: 34px;
		height: 1px;
		background-color: var(--text-color);
		transition: all 360ms;
	}
	.un_btn_hbg span:nth-of-type(1) {
		top: 6px;
	}
	.un_btn_hbg span:nth-of-type(2) {
		top: 13px;
	}
	.un_btn_hbg span:nth-of-type(3) {
		top: 20px;
	}
	.un_btn_hbg.active span {
		background-color: #fff;
	}
	.un_btn_hbg.active span:nth-of-type(1) {
		transform: translateY(7px) translateX(0) rotate(45deg);
	}
	.un_btn_hbg.active span:nth-of-type(2) {
		opacity: 0;
	}
	.un_btn_hbg.active span:nth-of-type(3) {
		transform: translateY(-7px) translateX(0) rotate(-45deg);
	}
}

/*-------------------------------------------------
	Animation
-------------------------------------------------*/
/* Fadein animation */
.bl_fadeIn {
	opacity: 0 !important;
	top: 25px;
	position: relative;
}
.bl_fadeIn.in {
	opacity: 1 !important;
	top: 0 !important;
	transition: all 1s ease-out,top 1s ease-out;
}

/*-------------------------------------------------
	Contents
-------------------------------------------------*/
/* #main-visual */
.ly_mV {
	margin: 75px auto 0;
	padding: 0;
}
@media screen and (max-width: 1279px) {
	.ly_mV {
		margin-top: 55px;
	}
}

/* Haguruma Parts */
.wrap_outline {
	padding-top: 158px;
}
.ly_kvPart {
	position: absolute;
	display: block;
}
.ly_kvPart.part_a {
	z-index: 100;
	top: 0px;
	left: -70px;
	width: 158px;
	height: 220px;
}
.ly_kvPart.part_b {
	z-index: 100;
	top: -100px;
	right: -50px;
	width: 162px;
	height: 218px;
}
.ly_kvPart.part_d {
	z-index: 100;
	top: -100px;
	left: 0;
	width: 162px;
	height: 218px;
}
.ly_kvPart.part_c {
	display: none;
}
@media screen and (max-width: 1193px) {
	.wrap_outline {
		padding-top: var(--mgn-btm-high);
	}
	.ly_kvPart.part_a,
	.ly_kvPart.part_b,
	.ly_kvPart.part_d {
		display: none;
	}
	.ly_kvPart.part_c {
		display: block;
		top: -60px;
		right: 15px;
		width: 116px;
		height: 80px;
	}
}
figure.part_a img {
  animation: shake 2s cubic-bezier(0.175, 0.885, 0.32, 1.275) infinite;
  animation-delay: 0s;
  transform-origin: center center;
}
figure.part_b img {
  animation: shake 2s cubic-bezier(0.175, 0.885, 0.32, 1.275) infinite;
  animation-delay: 0.6s;
  transform-origin: center center;
}
figure.part_c img {
  animation: shake 2s cubic-bezier(0.175, 0.885, 0.32, 1.275) infinite;
  animation-delay: 0.3s;
  transform-origin: center center;
}
figure.part_d img {
  animation: shake 2s cubic-bezier(0.175, 0.885, 0.32, 1.275) infinite;
  animation-delay: 0.9s;
  transform-origin: center center;
}
@keyframes shake {
  0%, 100% {
    transform: rotate(-10deg);
  }
  50% {
    transform: rotate(10deg);
  }
}
@keyframes shake {
  0%, 100% {
    transform: rotate(-5deg);
  }
  50% {
    transform: rotate(5deg);
  }
}

/*-------------------------------------------------
	ABOUT （ + #main-visual）
-------------------------------------------------*/
.ly_mV {
	margin-bottom: calc(-1 * (var(--mgn-btm-high) + 135px));
}
.ly_about {
	padding-left: 150px;
}
@media screen and (min-width: 1920px) {
	.ly_about {
		padding-left: 0;
	}
}
@media screen and (min-width: 1441px) {
	.ly_mV {
		margin-bottom: calc(-1 * (var(--mgn-btm-high) + 10vw));
	}
	/* .ly_about {
		margin-top: -10vw;
	} */
}
@media screen and (max-width: 1365px) {
	.ly_about {
		padding-left: 180px;
	}
}
@media screen and (max-width: 1280px) {
	.ly_mV {
		margin-bottom: calc(-1 * (var(--mgn-btm-high) + 120px));
	}
	.ly_about {
		/* margin-top: -120px; */
		padding-left: 210px;
	}
}
@media screen and (max-width: 1093px) {
	.ly_mV {
		margin-bottom: calc(-1 * (var(--mgn-btm-high) + 8vw));
	}
	.ly_about {
		/* margin-top: -8vw; */
		padding-left: 25%;
	}
}
@media screen and (max-width: 666px) {
	.ly_about {
		/* margin-top: -48.5vw;
		padding-left: 49%; */
		margin-top: 0;
		padding-left: 0;
		padding-bottom: 20px;
	}
}
@media screen and (max-width: 666px) {
	.ly_mV {
		margin-bottom: -62.5vw;
	}
}
.el_aboutTtl {
	margin-bottom: 3em;
	font-size: 20px;
	line-height: 1.666;
	letter-spacing: .15em;
	color: var(--key-color);
	font-feature-settings: "palt";
}
p.el_aboutTxt {
	padding-bottom: 1em;
	color: var(--key-color);
}
p.el_aboutTxt:last-of-type {
	padding-bottom: 0;
}
@media screen and (max-width: 666px) {
/*	.ly_aboutTtl_sm {
		display: flex !important;
		align-items: center;
		margin-top: calc(-1 * var(--mgn-btm-high));
		margin-left: calc(-1 * var(--pd-side));
		width: calc(100% + (var(--pd-side) * 2));
		aspect-ratio: 4 / 3;
	}*/
/*	.el_aboutTtl.sm {
		margin-top: 10vw;
		margin-bottom: 0;
		padding-left: 49%;
		padding-right: 15px;
		width: 100%;
		font-size: 18px;
	}*/
}
@media screen and (max-width: 389px) {
	.el_aboutTtl.sm {
		font-size: 17px;
	}
}

/*-------------------------------------------------
	INSTALLATIONS
-------------------------------------------------*/
.ly_inst {
	margin-top: 46px;
	gap: 54px 0;
	padding-top: 50px;
}
.bl_inst {
	position: relative;
	padding-top: 26px;
	width: 50%;
}
#inst-1, #inst-3, #inst-5 {
	margin-left: -20px;
	margin-top: -50px;
}
#inst-2, #inst-4, #inst-6 {
	margin-right: -20px;
	margin-top: 50px;
}
.bl_inst_modalBtn {
	position: relative;
	cursor: pointer;
}
.bl_inst_modalBtn > .bl_inst_pic > img {
	transition: opacity 360ms;
}
.bl_inst_modalBtn:hover > .bl_inst_pic > img {
	opacity: .7;
}
.bl_inst_pic {
	position: relative;
}

.el_inst_creatorName,
.el_inst_instName {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.333;
	letter-spacing: .15em;
}
.el_inst_creatorName {
	width: 100%;
	text-align: center;
	margin-bottom: 1em;
}
#inst-1 .el_inst_creatorName {
	color: var(--mori-color-1);
}
#inst-3 .el_inst_creatorName {
	color: var(--mori-color-2);
}
#inst-4 .el_inst_creatorName {
	color: var(--mori-color-3);
}
#inst-5 .el_inst_creatorName {
	color: var(--mori-color-4);
}
.el_inst_instName {
	position: absolute;
	bottom: 16px;
	left: 10px;
	color: #fff;
}
.bl_btn_inst {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	bottom: 10px;
	right: 10px;
	margin: 0 auto;
	width: 7.8em;
	height: 2.4em;
	text-align: center;
	border: 1px solid #fff;
	border-radius: 7.8em;
}
.bl_btn_inst.hp_color_key {
	border-color: var(--key-color);
}
.el_btn_inst {
	display: block;
	font-weight: 500;
	font-size: 12px;
	line-height: 1;
	letter-spacing: .15em;
	font-feature-settings: "palt";
	color: #fff;
}
.hp_color_key .el_btn_inst {
	color: var(--key-color);
}
.el_btn_inst::before {
	content: '';
	display: inline-block;
	margin-right: 6px;
	width: 10px;
	height: 8px;
	border-radius: 2px;
	background-color: #fff;
}
.hp_color_key .el_btn_inst::before {
	background-color: var(--key-color);
}

@media screen and (max-width: 1040px) {
.ly_inst {padding-top: 0; }


}
@media screen and (max-width: 666px) {
	:root {
		--inst-side-mgn: 10px;
	}
	.ly_inst {
		margin-top: 20px;
	}
	.bl_inst {
		margin-left: unset;
		width: 100%;
	}
	.bl_inst + .bl_inst {
		margin-top: 25px;
	}
	.el_inst_creatorName,
	.el_inst_instName {
		font-size: 15px;
		margin-bottom: 1em;
	}
	.bl_inst_pic::before {
		position: absolute;
		top: 0;
		left: calc(-1 * var(--inst-side-mgn));
		width: var(--inst-side-mgn);
		height: 100%;
	}


#inst-1, #inst-3, #inst-5 {margin: 0; }
#inst-2, #inst-4, #inst-6 {margin: 0; }

}

/*-------------------------------------------------
	Modal Window
-------------------------------------------------*/
body.no_scroll {
	overflow-y: hidden;
}
/* モーダル */
.modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	padding: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s;
	pointer-events: none;
	opacity: 0;
	z-index: -1;
	background-color: rgb(0 53 44 / 0.8);
}
/* モーダルがactiveの時 */
.modal.is-active {
	opacity: 1;
	pointer-events: auto;
	z-index: 100;
}
/* モーダル背景のオーバーレイ部分 */
.modal__overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	cursor: pointer;
}
/* モーダルのコンテンツ */
.modal__content {
	position: relative;
	width: 100%;
	max-width: 1040px;
	padding: 60px;
}
.modal_inner {
	filter: drop-shadow(0px 0px 4px #333);
	background: #FFF;
	width: 100%;
	margin: 0 auto;
	padding: 45px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
}
/* 閉じるボタン */
.modal__close-btn {
	position: absolute;
	right: -18px;
	top: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 20;
}
.modal__close-btn:hover {
	opacity: 0.8;
}
/* 閉じるボタンのX */
.lineClose {
	display: block;
	width: 36px;
	height: 36px;
	background: center / contain no-repeat url(../img/btn_close.svg);
}
@media screen and (max-width: 666px) {
	.modal {
		padding: 0;
	}
	.modal__content {
		padding: 30px;
		height: 100svh;
	}
	.modal_inner {
		padding: 15px;
		max-width: 500px;
		height: auto;
		max-height: calc(100svh - 60px);
	}
	.swiper-button-prev:after,
	.swiper-button-next:after {
		width: 15px !important;
		height: 60px !important;
	}
	.swiper-button-prev {
		left: 0 !important;
	}
	.swiper-button-next {
		right: 0 !important;
	}
}

/* Inst Detail */
.ly_instDtl_pic {
	width: 50%;
}
.ly_instDtl_txt {
	width: calc(50% - 45px);
}
.ly_instDtl_txt p {
	padding-bottom: 1em;
	font-size: 14px;
	letter-spacing: .05em;
}
.ly_instDtl_txt p:last-of-type {
	padding-bottom: 0;
}
.ly_instDtl_txt p.el_hosoku {
	font-size: .8em;
}
.ly_instDtl_pic .ly_flex {
	margin-top: 45px;
}
.ly_instDtl_ttl,
.ly_instDtl_ptr {
	width: calc((100% - 30px) / 2);
}
.ly_instDtl_ptr {
	position: relative;
}
.ly_instDtl_ptr::after {
	content: '';
	display: block;
	width: 100%;
	height: 5px;
	background-color: var(--key-color);
}

.ly_instDtl_ttl .el_instTtl {
	display: block;
	margin-top: -.4em;
	margin-bottom: 0.5em;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.666;
	letter-spacing: .15em;
	color: var(--key-color);
	font-feature-settings: "palt";
}
.ly_instDtl_ttl .el_instTtl_en {
	display: block;
	margin-bottom: 1.2em;
	font-family: var(--font-en);
	font-weight: 600;
	font-size: 13px;
	line-height: 1.333;
	letter-spacing: .05em;
	color: var(--key-color);
	opacity: .5;
}
.el_cName {
	display: block;
	font-weight: 500;
	font-size: 15px;
	line-height: 1.666;
	letter-spacing: .15em;
	color: var(--key-color);
	font-feature-settings: "palt";
}
.swiper-button-prev:after,
.swiper-button-next:after {
	content: '';
	font-size: 0 !important;
	width: 30px;
	height: 60px;
	background: center / contain no-repeat url(../img/arrow_slide_left.svg);
}
.swiper-button-next:after {
	transform: scale(-1, 1);
}
@media screen and (max-width: 1279px) {
	.ly_instDtl_txt p{
		font-size: 13px;
	}
}
@media screen and (max-width: 666px) {
	.ly_instDtl {
		flex-direction: column;
		max-height: calc(100svh - 60px);
	}
	.ly_instDtl_pic,
	.ly_instDtl_txt,
	.ly_instDtl_ttl,
	.ly_instDtl_ptr {
		width: 100%;
	}
	.ly_instDtl_ptr {
		display: none;
	}
	.ly_instDtl_pic .ly_flex {
		margin-top: 20px;
	}
	.ly_instDtl_ttl {
		margin-bottom: 15px;
		text-align: center;
	}
	.ly_instDtl_ttl .el_instTtl {
		margin-top: -0.35em;
		margin-bottom: 0;
	}
	.ly_instDtl_ttl .el_instTtl_en {
		margin-bottom: 0.8em;
	}
	.ly_instDtl_txt {
		padding: 0 15px;
		max-height: calc(100svh - (120px + 76.923vw));
		overflow-y: scroll;
	}
	.ly_instDtl_txt p.el_hosoku {
		font-size: 12px;
	}
}

/*-------------------------------------------------
	CREATOR
-------------------------------------------------*/
.wrap_creator {
	background-color: rgb(0 53 44 / .05);
}
.ly_creator {
	margin: 0 auto;
	gap: 100px 0;
	padding: 20px 10px;
	max-width: 1680px;
}
.bl_creator {
	padding: 0 10px;
	width: 25%;
}
.bl_creator_pic img {
	border-radius: 30px;
}

.el_creatorName {
	margin: 1.2em 0 .6em;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.333;
	letter-spacing: .15em;
	text-align: center;
}
button h3.el_creatorName {
	color: var(--key-color);
}

.el_btn_profTxt_inn {
	display: inline-block;
	position: relative;
	padding-left: 16px;
	padding-bottom: 3px;
	font-weight: 500;
	font-size: 13px;
	line-height: 1;
	color: var(--key-color);
	border-bottom: 1px dotted var(--key-color);
	transition: all 360ms;
}
.el_btn_profTxt_inn.open {
	filter: grayscale(1);
	opacity: .8;
}
.el_btn_profTxt_inn::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 13px;
	height: 13px;
	background: center / contain no-repeat url(../img/arrow_btn_profile.svg);
	transition: all 360ms;
}
.el_btn_profTxt_inn.open::before {
	transform:rotate(180deg);
	filter: grayscale(1);
}
.bl_prof {
	display: none;
	padding-top: 18px;
	padding-bottom: 1em;
}
.el_profTxt,
a.el_profLink {
	padding: 0 20px;
	font-weight: 400;
	font-size: 12px;
	line-height: 2;
	letter-spacing: .15em;
	text-align: justify;
	font-feature-settings: "palt";
}
a.el_profLink {
	display: block;
	margin-top: 1em;
	line-height: 1.333;
	text-align: left;
	color: var(--key-color);
	word-wrap: break-word;
}
a.el_profLink + a {
	margin-top: 0.5em;
}
@media screen and (max-width: 1279px) {
	.ly_creator {
		justify-content: center;
		gap: 40px 40px;
		padding: 40px 60px;
	}
	.bl_creator {
		padding: 0;
		width: 40%;
		max-width: 350px;
	}
}
@media screen and (max-width: 767px) {
	.ly_creator {
		flex-direction: column;
		align-items: center;
		gap: 40px 0;
	}
	.bl_creator {
		padding: 0;
		width: 100%;
	}
	.el_creatorName {
		margin: .75em 0 0.375em;
		font-size: 15px;
	}
	.el_profTxt, a.el_profLink {
		padding: 0;
		font-size: 13px;
	}
}

/*-------------------------------------------------
	VISUALS
-------------------------------------------------*/
/* Vimeo */
.vimeo {
	position: relative;
	padding-top: 56.25%;
	margin:  -20px auto 20px;
}
.vimeo iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
/* Photo */
.ly_exhPhoto {
	gap: 0 30px;
	width: 100%;
}
.el_exhPhoto {
	width: calc((100% - 60px) / 3);
}
@media screen and (max-width: 666px) {
	/* Vimeo */
	/* Photo */
	.ly_exhPhoto {
		gap: 20px 0;
	}
	.el_exhPhoto {
		width: 100%;
	}
}

/*-------------------------------------------------
	EVENT
-------------------------------------------------*/
.el_wip {
	padding: 1em 30px;
	text-align: center;
	border: 1px solid var(--line-color);
	border-radius: 30px;
}
@media screen and (max-width: 666px) {
	.el_wip {
		text-align: justify;
	}
}

/*-------------------------------------------------
	Present
-------------------------------------------------*/
@media screen and (max-width: 666px) {
	.un_presentImg {
		margin-bottom: 30px;
	}
}

/*-------------------------------------------------
	OUTLINE (EXHIBITION OUTLINE)
-------------------------------------------------*/
.ly_exhOl {
	border-top: 1px solid var(--line-color);
}
.bl_exhOl {
	padding: 20px 0;
	border-bottom: 1px solid var(--line-color);
}
.el_exhOl_ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 200px;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: .15em;
	font-feature-settings: "palt";
	border-right: 1px solid var(--line-color);
}
.el_exhOl_ttl,
.el_exhOl_txt {
	line-height: 32px;
	text-align: left;
}
.el_exhOl_txt {
	width: calc(100% - 230px);
}
p.el_notice {
	margin: 1.5em 0 100px;
	font-size: 15px;
}
a.un_btn_dat2025 {
	display: block;
	position: relative;
	padding: .945em 1em;
	width: 100%;
	height: auto;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.666;
	letter-spacing: .15em;
	text-align: center;
	font-feature-settings: "palt";
	color: #5d2114;
	background: #b49b7f;
	transition: background 360ms;
	border-radius: 30px;
}
a.un_btn_dat2025:hover {
	opacity: .7 !important;
	/* background-image: url(../img/bg_btn_dat2023_hover.png); */
	/* transition: background 360ms; */
}
a.un_btn_dat2025::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	right: 27px;
	width: 10px;
	height: 10px;
	border: 0px;
	border-top: solid 2px #5d2114;
	border-right: solid 2px #5d2114;
	transition: right 360ms;
}
a.un_btn_dat2025:hover:after {
	right: 22px;
}
@media screen and (max-width: 666px) {
	.bl_exhOl {
		display: block;
		padding: 15px 0;
	}
	.bl_exhOl.sm_flex {
		display: flex;
		justify-content: flex-start;
	}
	.el_exhOl_ttl {
		display: block;
		width: auto;
		border: none;
	}
	.el_exhOl_ttl::after {
		content: '：';
		margin: 0 .2em;
	}
	.el_exhOl_ttl,
	.el_exhOl_txt {
		line-height: 30px;
	}
	.el_exhOl_txt {
		width: auto;
	}
	p.el_notice {
		margin: 15px 0 42px;
	}
	a.un_btn_dat2025 {
		padding: .668em 1em;
		font-size: 15px;
	}
	a.un_btn_dat2025::after {
		display: none;
	}
}

/*-------------------------------------------------
	MAP
-------------------------------------------------*/
iframe.ly_gMap {
	width: 100%;
	aspect-ratio: 16/9;
	/*border: 1px solid var(--line-color);*/
	/* filter: grayscale(100%) */
	border-radius: 30px;
}
@media screen and (max-width: 666px) {
	iframe.ly_gMap {
		aspect-ratio: 1/1;
	}
}

/*-------------------------------------------------
	Footer
-------------------------------------------------*/
.un_ftrLogo {
	margin: 0 auto;
	width: 120px;
	height: 26px;
}
p.un_copyright {
	margin: 15px auto 0;
	font-family: YuGothic,'Yu Gothic','ヒラギノ角ゴシック','Hiragino Sans','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	font-size: 10px;
	line-height: 1;
	letter-spacing: 0;
	color: #000;
	text-align: center;
	padding-bottom: 70px;
}

/*-------------------------------------------------
	EN
-------------------------------------------------*/
body.en {
	font-family: var(--font-en);
	font-weight: 600;
}
body.en .el_aboutTtl,
body.en p,
body.en .el_inst_creatorName,
body.en .el_inst_instName,
body.en .el_btn_inst,
body.en .ly_instDtl_ttl .el_instTtl,
body.en .el_cName,
body.en .el_btn_profTxt,
body.en .el_creatorName,
body.en .el_exhOl_ttl,
body.en p.el_profTxt,
body.en  a.el_profLink {
	letter-spacing: .05em;
}
body.en p {
	font-weight: 500;
	line-height: 1.666;
}
body.en .el_inst_creatorName,
body.en .el_inst_instName,
body.en .el_btn_inst,
body.en .ly_instDtl_ttl .el_instTtl {
	font-weight: 600;
}
@media screen and (max-width: 820px) {
	body.en .hp_dn_u820 {
		display: none;
	}
}
@media screen and (max-width: 666px) {
	body.en p {
		text-align: left;
	}
}

/* ABOUT */
body.en .el_aboutTtl {
	font-size: 24px;
	line-height: 1.333;
	letter-spacing: .04em;
}
@media screen and (max-width: 666px) {
	body.en .el_aboutTtl {
		font-size: 18px;
	}
}

/* INSTALLATIONS */
body.en .el_inst_instName {
	left: 20px;
}

/* CREATORS */
body.en p.el_profTxt,
body.en  a.el_profLink {
	text-align: left;
}



/*------Event-------*/

.event {
    color: #fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content:center;
	align-items:flex-end;
}
.event li {
	margin: 0 10px;
/*	max-width: 360px;*/
}

.event a {
    transition: 0.2s;
    margin-bottom: 45px;
    background: #fff;
	border: 1px solid #b1c5b8
}
.event a {
    margin-bottom: 0;
	display: inline-block;
}
/*
.event a:nth-of-type(2) {margin-right: 30px;}
.event a:nth-of-type(3) {margin: 0;}
*/


.event a.entryclosed{
    background: #000;
    position: relative;
}

.event a.entryclosed img{
    filter: grayscale(1);
    opacity: 0.4;
}

.event a.entryclosed:hover img{
    opacity: 0.6;
}

.event a.entryclosed:before,
.event a.entryclosed:after{
    content:"受付終了";
    position:absolute;
    top: calc(50% - 30px);
    color: #fff;
    opacity: 1!important;
    width: 100%;
    height: 30px;
    font-size: 30px;
    text-align: center;
}


.event a.entryclosed:after{
    content:"ご応募ありがとうございました";
    top: calc(50% + 20px);
    font-size: 14px;
}

.event a:hover img{
    opacity: 0.9;
}


.event a img {width: 100%;}

@media screen and (max-width: 799px), print {
	.event {
		flex-wrap: wrap
	}

	.event li {
		width: calc(100% - 60px);
		margin: 10px 0
	}


}





/**********************
フローティングバナー
**********************/
.floating-banner {
  text-decoration: none;
  color: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.25em;
}
.floating-banner {
  display: block;
  position: fixed;
  z-index: 9999;
  bottom: 70px;

  right: 0;
  box-shadow: 0px 0px 12px 2px rgba(0, 0, 0, 0.3);
  background-image: url("../img/event_03.jpg");
	    background-size: contain;
}
.floating-banner a {
  transition: .5s;
  height: 250px;
}
.floating-banner a:hover {
  opacity: 0.7;
}
.floating-banner a.banner {
  display: block;
  background-size: contain;
  text-indent: -9999px;
}
.flyinclose {
  position: absolute;
  top: -10px;
  left: -10px;
}
.floating-banner:hover {
  transform: translateY(-5px);
  transition: all .5s;
}
.floating-banner.close {
  visibility: hidden;
  opacity: 0;
}
.flyinclose {
-webkit-transition:0 .5s ease .2s,opacity .5s ease,top .5s ease .2s;
transition:transform .5s ease .2s,opacity .5s ease,top .5s ease .2s;
content:'';
display:block;
z-index:2;
box-shadow:0 0 10px rgba(0,0,0,.2);
cursor:pointer;
width:30px;
height:30px;
border-radius:30px;
background:#fff url(../img/exit-x.png) no-repeat center center;
	background-size: 16px;
position:absolute;
top:-20px;
left:5px;
margin:0;
padding:0;
}
@media screen and (min-width: 641px), print {
	.floating-banner {
		 width: 250px;
  		height: 250px;
	}
}
@media screen and (max-width: 640px), print {
   .floating-banner {
        position: fixed;
        z-index: 9999;
        bottom: 0;
        width: 100%;
/*	   	max-height: 90px;*/
        right: 0;
		box-shadow: 0px 0px 12px 2px rgba(0, 0, 0, 0.3);
 		background-image: none;
/*
	    background-size: cover;
	    background-position:  bottom center;
	    background-repeat: no-repeat;
*/
    }
   .floating-banner a {
       height: auto;
    }
.floating-banner img.sp {
	vertical-align: bottom;
	display: block;
}
.floating-banner a span {
	display: none;
}

.floating-banner.close {
	visibility: hidden;
	opacity: 0;
}
}
