@charset "UTF-8";
html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 62.5%;
	font: inherit;
	vertical-align: baseline;}
a	{
	text-decoration : none;
	color : #2B2B2B;
}
img {image-rendering: -webkit-optimize-contrast;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;}
body {
	-webkit-text-size-adjust: none;
}
ol,ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
mark {
	background-color: transparent;
	color: inherit;
}
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input, select, textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
}
.mincho	{font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;}
.inline	{
	display : inline-block;
}

/* Body header */
body {
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	margin: 0;
	width : 100%;
	background : #FFF;
	color : #2B2B2B;
}
header	{
	/* position: fixed; */
	top : 0;
	left : 0;
	margin : 0 auto;
	padding : 1.2rem 0 0.8rem 0;
	width : 94%;
}
header #hd_title	{
	font-size : 2.6rem;
	line-height : 200%;
	margin-left : 2%;
}
header #hd_title a	{
	color : #2B2B2B;
}
@media screen and (max-width: 768px)	{
	header #hd_title	{
		font-size : 2.2rem;
	}
}
@media screen and (max-width: 479px)	{
	header #hd_title	{
		font-size : 2rem;
	}
}
/* spNav */
header #spNav	{
	display : none;
}
@media screen and (max-width: 479px)	{
	header #spNav	{
		display : block;
	}
}
/* gNav*/
#gNav	{
	margin-left : 2%; /* タイトルに合わせる */
	width : 12%; /* 仮確定 */
}
@media screen and (max-width: 768px)	{
	#gNav	{
		width : 14%;}
}
@media screen and (max-width: 479px)	{
	#gNav	{
		display : none;}
}
/* container*/
#container	{
	margin : 0 auto;
	width : 94%; /* header幅に合わせる */
	display: flex;
}
#cont_main	{
	width : calc(100% - 14%); /* containerからgNav(+marginleft)を引く */
}
.cont_in	{
	margin : 1rem auto; /* gNav高さ見ため調整 */
	width : 80%;
}
@media screen and (max-width: 768px)	{
	#cont_main	{
		width : calc(100% - 16%);
	}
	.cont_in	{
		width : 92%;
		margin-left : 8%;
	}
}
@media screen and (max-width: 479px)	{
	#container	{
	margin : 0 auto;
	width : 94%; /* header幅に合わせる */
	display: flex;
	}
	#cont_main	{
		width : 94%; /* 仮確定 */
		margin : 0 auto; /* ナビゲーション分の調整 */
	}
	.cont_in	{
		margin : 1rem 0;
		width : 100%;
	}
}
/* @media screen and (max-width: 1240px)	{
	#cont_main	{
		width : 96%;
		margin : 0 auto;
	}
}
@media screen and (max-width: 1024px)	{
	#cont_main	{
	}
}
@media screen and (max-width: 768px)	{
	#cont_main	{
	}
} */

/* ---------------------------------------------------------- */
/* top */
#top_visual	{
	margin : 1rem auto; /* gNav高さ見ため調整 */
	width : 80%;
	text-align : center;
}
#top_visual p	{
	font-size: 0.8rem;
	line-height : 140%;
	padding : 0.8rem 0;
	text-align : center;
}
@media screen and (max-width: 768px)	{
	#top_visual	{
		width : 90%;
	}
	#top_visual	img	{
		margin : 0 auto;
		width : 100%;
	}
}
@media screen and (max-width: 479px)	{
	#top_visual	{
		margin : 0 auto; /* gNav高さ見ため調整 */
		width : 100%;
	}
}
/* ---------------------------------------------------------- */
/* News */
.box_news	{
	margin-bottom : 5rem;
}
.news_ctg	{
	font-size : 0.9rem;
	padding : 0.1rem 0.4rem;
	line-height : 200%;
}
.Solo	{background-color : rgba(170, 221, 255,0.8);}
.Group	{background-color : rgba(242, 204, 255,0.8);}
.news_title	{
	font-size : 1rem;
	line-height : 180%;
}
.news_update	{
	font-size : 0.9rem;
	text-align : right;
}
.news_tx	{
	font-size : 0.9rem;
	line-height : 140%;
	margin-bottom : 1rem;
}
ul.news_img	{
	display : flex;
	justify-content: center;
}
ul.news_img li	{
	width : 30%;
	margin : 0 1%;
}
ul.news_img li img	{
	width : 100%;
}
.box_news a	{color : inherit;
	border-style : solid;
	border-width : 0 0 1px 0;
	border-color : #787878;}
@media screen and (max-width: 479px)	{
	ul.news_img	{
		flex-direction: column;
	}
	ul.news_img li	{
		width : 90%;
		margin : 0 auto 1rem auto;
	}
}
.goto_arc	{
	text-align : right;
	font-size : 0.9rem;
	margin-top : -3rem
}
.goto_arc a	{
	color : #2B2B2B;
}
/* ---------------------------------------------------------- */
/* Works*/
#Works_pt .box_ph,
#Works_ot .box_ph	{
	display : flex;
	width : 768px;
	flex-wrap: wrap;
	align-items: center;
}
#Works_pt .item,
#Works_ot .item	{ /* w244px 4点 */
	width : 242px;
	/* width : 220px; */
	margin : 0 14px 20px 0;
}
#Works_pt .item a:hover,
#Works_ot .item a:hover	{
	opacity: 0.7;
}
@media screen and (max-width: 1024px)	{
	#Works_pt .box_ph,
	#Works_ot .box_ph	{
		width : 100%;
	}
	#Works_pt .item,
	#Works_ot .item{
		width : 200px;
	}
}
@media screen and (max-width: 768px)	{
	#Works_pt .item,
	#Works_ot .item	{
		width : 168px;
	}
}
@media screen and (max-width: 479px)	{
	#Works_pt .box_ph,
	#Works_ot .box_ph	{
	}
	#Works_pt .item,
	#Works_ot .item	{
		/* width :180px; */
		width : 110px;
		margin : 0 10px 20px 0;
	}
}
@media screen and (max-width: 400px)	{
	#Works_pt .item,
	#Works_ot .item	{
		width : 100px;
	}
}
/* ---------------------------------------------------------- */
/* Exhibitions */
#Exh .box_exh	{
	margin-bottom : 4rem;
}
#Exh .box_exh .exh_title	{
	font-size : 1rem;
	margin-bottom : 1rem;
	padding-bottom : 0.2rem;
}
#Exh .box_exh .exh_title a	{color : inherit;}
#Exh .box_exh .exh_title a:hover{border-style : solid;
	border-width : 0 0 1px 0;
	border-color : #787878;}
#Exh .box_exh .exh_period	{
	font-size : 0.9rem;
	margin-bottom : 1rem;
}
#Exh .box_exh .exh_statement	{
	font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
	font-size : 0.9rem;
	margin-bottom : 1rem;
}
#Exh .box_exh .exh_subtx	{
	font-size : 0.8rem;
	margin-bottom : 1rem;
}
#Exh .Exh_ph	{
	display : flex;
	width : 768px;
	flex-wrap: wrap;
	align-items: center;
	margin-top : 3rem;
}
#Exh .item	{ /* 可変時w244px 4点 */
	width : 242px;
	margin : 0 14px 20px 0;
}
/* gNav 12%＋2% 14% 1024の表示領域768px相当 */
@media screen and (max-width: 1024px)	{
	#Exh .Exh_ph	{
		width : 100%;
	}
	#Exh .item	{
		width : 190px;
		margin : 0 14px 20px 0;
	}
}
@media screen and (max-width: 768px)	{
	#Exh .item	{
		width : 168px;
	}
}
@media screen and (max-width: 479px)	{
	#Exh .Exh_ph	{
		justify-content: space-between;
	}
	#Exh .item	{
		width : 112px;
		margin : 0 0 20px 0;
	}
}
@media screen and (max-width: 400px)	{
	#Exh .item	{
		width : 106px;
	}
}
/* ---------------------------------------------------------- */
/* Text */
#Text h2	{
	font-size : 1.1rem;
	font-weight : 900;
	line-height : 200%;
}
#Text h3	{
	font-size : 1rem;
	line-height : 140%;
	margin-bottom : 1rem;
}
#Text h4	{
	font-size : 0.9rem;
	line-height : 180%
}
#Text .tx p	{
	font-size : 0.9rem;
	line-height : 140%
	margin-bottom : 1rem;
}
#Text .break	{
	margin-bottom : 4rem;
}
.read-more {
	position: relative;
}
.read-more p {
	display: -webkit-box;
	position: relative;
	margin-top: 10px;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 8; /* 開く前に見せたい行数を指定 */
font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
}
.read-more:has(:checked) p {
	display: block;
}
.read-more p::after {
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 60px;
	background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .9) 50%, hsla(0, 0%, 100%, .9) 0, #fff);
	content: '';
}

.read-more:has(:checked) p::after {
	content: none;
}

.read-more label {
	display: flex;
	align-items: center;
	gap: 0 4px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	padding: .4em 1.2em;
	border-radius: 1px;
	background-color: #7e7e7e;
	color: #fff;
	font-size: .7em;
font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
}

.read-more label:hover {
	border:1px solid #7e7e7e;
	background-color: #fff;
	color: #7e7e7e;
	cursor: pointer;
}

.read-more:has(:checked) label {
	display: none;
}

.read-more label::after {
	display: inline-block;
	width: 10px;
	height: 5px;
	background-color: #fff;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
}

.read-more label:hover::after{
	background-color: #7e7e7e;
}

.read-more input {
	display: none;
}
/* ---------------------------------------------------------- */
/* About CV */
.bu_jp	{
	text-align : right;
	font-size : 0.9rem;
}
.bu_jp a	{
	color : #2B2B2B;
}
#cv h2	{
	font-size : 1.4rem;
	line-height : 200%;
}
#cv h3		{
	font-weight : 900;
	line-height : 200%;
}
#cv .tx	{
	margin : 2rem 0;
	font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
}
#cv ul.career	{
	margin : 2rem 0;
}
#cv ul.exh	{
	font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
	margin-bottom : 2rem;
}
#cv ul.career li	{
	margin : 0.2rem 0;
}
#cv ul.career li .year,
#cv ul.exh li .priod	{
	font-style : italic;
	padding-right : 1.4rem;
}
#cv ul.exh li.reigai	{
	margin : 0.4rem 0 0.4rem 3.8rem;
	line-height : 120%;
}
#cv ul.exh li .trans	{
	color : #FFF;
}
#cv ul.exh li p	{
	display : inline-block;
}
@media screen and (max-width: 768px)	{
	#cv .tx	{
		margin : 2rem 2rem 2rem 0;
	}
	#cv ul.exh li .priod	{
		display : block;
		font-weight : 900;
		margin-top : 0.6rem;
	}
	#cv ul.exh li.reigai	{
		margin : 0 0 0.4rem 0;
	}
	#cv ul.exh li .trans	{
		display : none;
	}
	#cv ul.exh li p	{
		margin-bottom : 0.4rem;
		line-height : 120%;
	}
}
@media screen and (max-width: 479px)	{
	.bu_jp	{margin-bottom : 2rem;}
}
/* ---------------------------------------------------------- */
/* Contact */
#contact h2	{
	font-size : 1.4rem;
	line-height : 200%;
}
#contact .box_QR	{
	display: flex;
	width : 80%;
	margin : 4rem 0 20rem 0.4rem;
}
#contact .box_QR img	{
	width : 180px;
}
#contact dl	{
	display: flex;
	flex-wrap: wrap;
	width : 100%;
}
#contact dl dt	{
	width : 20%;
}
#contact dl dd	{
	width : 80%;
}
@media screen and (max-width: 1024px)	{
	#contact .box_QR	{
		flex-direction: column;
		margin : 4rem 0 14rem 0.4rem;
	}
	#contact .box_QR img	{
		margin-top : 2rem;
		}
}
@media screen and (max-width: 479px)	{
	#contact .box_QR	{
	display: flex;
	width : 100%;
	margin : 2rem 0;
	}
	#contact dl	{
		flex-direction: column;
	}
	#contact dl dd	{
		padding-left : 1rem;
		margin-bottom : 2rem;
	}
}
/* ---------------------------------------------------------- */
/* 共通パーツ*/
.center	{margin : 0 auto;}
@keyframes taphere {
	0% {
		transform: scale(1.4)
	}
	45% {
		transform: scale(1)
	}
	95% {
		transform: scale(1)
	}
	100% {
	-webkit-transform: scale(1.4)
	}
}
.box_v-h	{
	display: flex;
	flex-direction: row;
}
#Works_pt h1,
#Works_ot h1{
	font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
	margin-bottom : 2rem;
}
#Works_pt h2,
#Works_ot h2	{
	font-family : "游明朝",Yu Mincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","MS P明朝","MS 明朝",'Noto Serif Display',serif;
	margin : 2rem 0 1rem 0;
}
#Exh h1	{display : none;}
@media screen and (max-width: 768px)	{
	.box_v-h	{
		flex-direction: column;
	}
	.half	{
		width : 50%;
	}
}
@media screen and (max-width: 479px)	{
	@keyframes taphere {
	0% {
		transform: scale(1.1)
	}
	45% {
		transform: scale(1)
	}
	95% {
		transform: scale(1)
	}
	100% {
	-webkit-transform: scale(1.1)
	}
	}
#Exh h1	{
		display : block;
		font-weight : 900;
		margin-bottom : 1rem;
	}
}
/* contents 以下未設定 */
#box_menu	{
	margin : 0 auto 4rem auto;
}
#box_menu .box_v-h div	{
	overflow: hidden;
	width : 50%;
	height : 460px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align : center;
}
#box_menu .box_v-h img	{
	width : 100%;
	transition: all 0.5s ease-in-out;
	background: #000;
}
#box_menu .box_v-h img:hover	{
	transform: scale(1.05);
	opacity: 0.6;
}
#box_menu .box_v-h div p	{
	position : relative;
	font-size : 2rem;
	font-weight : 900;
	top : -230px;
}
#box_menu .box_v-h div a:hover	{
	background-image : url(../img/icon_pdf.png);
	background-repeat : no-repeat;
	background-size : 40px;
	background-position : 50% 62%;
}
#info dl	{
	display: flex;
	flex-wrap: wrap;
	margin : 2rem auto;
	width : 14rem;
}
#info dl dt	{
	width : 50%;
	text-align : left;
}
#info dl dd	{
	width : 50%;
	text-align : left;
}
#info ul	{
	margin : 4rem auto 2rem auto;
	display: flex;
	justify-content: center;
}
#info ul li	{
	margin : 0 1rem;
}
#info ul li img	{
		width : 50px;
	}
#access .box_v-h	{
	width : 80%;
	margin : 0 auto;
}
#access .box_v-h #box_map	{
	width : 50%;
}
#access .box_v-h .tx	{
	width : 50%;
	text-align : left;
	margin-left : 3rem;
}
#access .box_v-h .tx .station	{
	font-weight : 900;
	margin : 0 0.2rem;
}
@media screen and (max-width: 1024px)	{
	#main	{
		height : calc(800px*0.75);
	}
	#sch	{
		padding-top : 140px;
		height : calc(460px*0.75);
	}
	#box_menu	{
		margin : -2.4rem auto 0 auto;
	}
	#access .box_v-h	{
		flex-direction: column;
		width : 100%;
		margin : 0 auto;
	}
	#access .box_v-h #box_map	{
		width : 100%;
	}
	#access .box_v-h .tx	{
		width : 60%;
		text-align : left;
		margin : 1rem auto;
	}
}
@media screen and (max-width: 768px)	{
	#main	{
		height : calc(800px*0.62);
		background-size : contain;
	}
	#sch	{
		padding-top : 40px;
		height : calc(460px*0.62);
	}
	#box_menu .box_v-h	{
		height : auto;
		width : 100%;
		flex-direction: row;
		margin : 0 auto;
	}
	#box_menu .box_v-h div	{
		height : auto;
	}
	#box_menu .box_v-h div p	{
		top : calc(-230px*0.66);
	}
}
@media screen and (max-width: 479px)	{
	#main	{
		height : calc(800px*0.4);
		background-size : contain;
	}
	#sch	{
		margin-top : -4.6rem; /* iphone13Pro調整 */
		padding-top : 40px;
		height : calc(460px*0.56);
	}
	#box_menu .box_v-h	{
		flex-direction: column;
	}
	#box_menu .box_v-h div	{
		width : 100%;
		height :calc(460px*0.46);
	}
	#info ul li	{
		margin : 0 0.6rem;
		font-size : xx-small;
	}
	#info ul li img	{
		width : 40px;
	}
	#access .box_v-h	{
		width : 90%;
	}
	#access .box_v-h .tx	{
		width : 96%;
		margin : 1rem auto;
	}
	.googlemap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.googlemap iframe,
.googlemap object,
.googlemap embed,
.movie_wrap iframe,
.movie_wrap object,
.movie_wrap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
}

/* ---------------------------------------------------------- */
/* copyright */
#cont_main #copyright	{ /* 左ナビがあるためPCタブレットではコンテンツ中央合わせ */
	margin : 0 auto;
	padding : 1rem 0;
	text-align : center;
	font-size : x-small;
}
@media screen and (max-width: 479px)	{
	#cont_main #copyright	{
		font-size : x-small;
	}
}
/* ---------------------------------------------------------- */
/* footer */
footer	{
	margin-top : 3rem;
}
/* ---------------------------------------------------------- */
.box_video	{margin : 0 auto;
width : 450px;}
@media screen and (max-width: 479px)	{
	.box_video	{width : 90%;}
}
video { width: 100%; }
.telNo	{
	display : block;
}
.telNo a	{
	color : #B28C7A;
}

#page-top {
	z-index : 2;
	position: fixed;
	bottom: 2%;
	right: 2%;
	/* background-color:rgba(45,28,24,0.8);
	background : #2D1C18;
	border-radius : 25px;*/
}
#page-top a {
	display: block;
	color : #2B2B2B;
}
@media screen and (max-width: 768px)	{
	#page-top {
		bottom: 10%;
		right: 2%;
	}
}
@media screen and (max-width: 479px)	{
	#page-top {
		bottom: 8%;
		right: 6%;
	}
}
/* br */
br.onlyPC	{
	display : block;
}
br.forTB	{
	display : none;
}
br.onlySP	{
	display : none;
}
@media screen and (max-width: 768px)	{
	br.onlyPC	{
		display : none;
	}
	br.forTB	{
		display : block;
	}
	br.onlySP	{
		display : none;
	}
}
@media screen and (max-width: 479px)	{
	br.onlyPC	{
		display : none;
	}
	br.forTB	{
		display : none;
	}
	br.onlySP	{
		display : block;
	}
}

.clearfix
	{
	display: block;
	min-height: 1%;
}
.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}

/* margin */
.mgt1	{margin-top : 1rem;}
.mgt2	{margin-top : 2rem;}
.mgt3	{margin-top : 3rem;}
.mgt4	{margin-top : 4rem;}
.mgt6	{margin-top : 6rem;}
.mgb1	{margin-bottom : 1rem;}
.mgb2	{margin-bottom : 2rem;}
.mgb3	{margin-bottom : 3rem;}
.mgb4	{margin-bottom : 4rem;}
.mgb6	{margin-bottom : 6rem;}