@charset"UTF-8";

/* 共通部分------------------------------- */

.wrapper{
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 4.5%;
}

html {
	font-size:100%
}

body {
	font-family: 'Noto Sans', sans-serif;
  font-family: 'Noto Sans JP', sans-serif;
  color: #121111;
}


h1 {
	text-align: left;
	margin-left: 0;
	letter-spacing: 0.15rem;
	font-size: 1.2rem;
	font-weight: 500;
	text-transform: uppercase;
	list-style: none;
}

h2 {
	position: left;
}

h3 {
	position: right;
}

a {
	text-decoration: none;
}

span {
	margin-top: 0rem;
	line-height: 1.5rem;
	text-align: left;
	letter-spacing: 0.1rem;
	font-size: 0.8rem;
	color: #545453;
}

#text-format {
	line-height: 1.5rem;
	text-align: left;
	letter-spacing: 0.1rem;
	font-size: 0.8rem;
	font-weight: 400;
	color:;
}

img {
	max-width: 100%;
}

.title-content {
	margin-bottom: 3rem;
	width: 100%;
  position: relative;
  display: flex;
  justify-content:;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.flow-title-content {
  margin-top: rem;
	margin-bottom: 4.5rem;
	width: 100%;
  position: relative;
  display: flex;
  justify-content:;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

main{
	margin-top: -4.5rem;
	margin-bottom: rem;
}

aside {
	width: 33%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-content: space-between;
}

article {
	width: 67%;
	display: flex;
	flex-direction: column;
}

.left-block {
	width: 33%;
	padding-left: 3rem;
}

.right-block{
	width: 67%;
}

.min-height{
	height: 90rem;
}

/* HEADER------------------------------- */

.page-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 1rem;
	margin-bottom: 4.5rem;
	padding-bottom: 3rem;
	width: 100%;
	height: 6rem;
	background-color: rgba(255, 255, 255,0.75);
	position: sticky;
	position: -webkit-sticky;
	top: 0;
	z-index: 9999;
}

.main-nav {
	display: flex;
	text-align: center;
	letter-spacing: 0.1rem;
	font-size: 0.9rem;
	font-weight: 500;
	text-transform: uppercase;
	list-style: none;
}

.main-nav li {
	margin-left: 36px;
}

li a {
	color: #121111;
}

.active-page {
	color: #b8b0a9;
}

.main-nav a:hover {
	color: #b8b0a9;
}

/* WORKS------------------------------- */

.grid {
  display: grid;
	gap: 3%;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	margin-top: -4.5rem;
	margin-bottom: 6rem;
}

.big-box-1 {
	grid-column: 3 / 4;
	grid-row: 2 / 4;
}

figure {
  position: auto;
  width: auto;
}

figure img {
  position: top;
  z-index: 1;
}

figure img:hover {
  opacity: 0.6;
  filter: brightness(110%);
}

figure img {
-webkit-transition: all .3s; transition: all .3s
}

.big-box-1 img  {
  height: 95% ;
	width: 100% ;
	object-fit: cover;
}

figcaption {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

figcaption a {
	color: red ;
	font-size: 0.75rem;
	padding-right: 1rem;
	font-weight: 500;
}

figure p {
  osition: absolute;
	padding-left: 0.5rem;
  z-index: 1;
  opacity: 0;
  -webkit-transition: .0s;
  transition: .0s;
}

figure p {
  bottom: -1rem;
  left: 0;
  font-size: 0.75rem;
	font-weight: 400;
}

figure:hover p {
  opacity: 1;
}

/* WORK-part------------------------------- */

.work-left-title {
	text-align: center;
	letter-spacing: 0.1rem;
	font-size: 1rem;
	font-weight: 500;
}

.work-nav {
	margin-top: -7rem;
	display: flex;
	align-items: flex-end;
	position: center;
	justify-content: space-between;
	font-size: 1.35rem;
	font-weight: 500;
}

.work-nav a {
	color: #121111
}

.work-nav a:hover {
	color: #b8b0a9;
}

/* ABOUT------------------------------- */

.about-left-title {
	text-align: center;
	margin-left: 1.5rem;
	letter-spacing: 0.1rem;
	font-size: 1rem;
	font-weight: 500;
}

.about-concept-title {
	text-align: left;
	letter-spacing: 0.1rem;
	font-size: 1rem;
	font-weight: 500;
}

.about-title {
	margin-bottom: 1rem;
	text-align: left;
	line-height: 1.8rem;
	letter-spacing: 0.1rem;
	font-size: 0.9rem;
	font-weight: 500;
}

/* FLOW------------------------------- */

.flow-left-title {
	text-align: left;
	margin-left: 4.5rem;
	padding-left: 0;
	letter-spacing: 0.1rem;
	font-size: 1rem;
	font-weight: 500;
}

/* NEWS------------------------------- */

.mews-nav {
	display: flex;
	justify-content: space-around;
	margin: 0 auto;
	font-size: 1.35rem;
	font-weight: 500;
}

.news-nav a {
	color: #121111
}
.news-nav a:hover {
	color: #b8b0a9;
}

.left-date {
	text-align: center;
	margin-right: rem;
	letter-spacing: 0.1rem;
	font-size: 1rem;
	font-weight: 500;
	color:;
	list-style: none;
}

.border{
	border-bottom: 1px solid;
}

.border-red{
	margin-top: 4.5rem;
	margin-left: 6rem;
	max-width: 1000px;
	border-bottom: 1px solid;
}

/* CONTACT------------------------------- */

form {
	display: flex;
  flex-direction: column;
	padding-right: 3rem;
	background-color: #f7f8f8;
  padding: 1.5rem 1.5rem;
  width: 90%;
}

.form-block{
	display: flex;
	justify-content: space-between;
	margin-bottom: 1rem;
}

#submit-btn {
	display: flex;
	justify-content: space-between;
	margin-top: 1.5rem;
	font-size: 1.2rem;
}


label {
	width: 33%;
	font-size: 0.8rem;
	display: block;
}

input, textarea {
	width: 67%;
}

input[type="text"],
input[type="email"],
textarea {
	background: rgba(255, 255, 255, .5);
	border: 1px #b8b0a9 solid;
	padding: 3px;
	font-size: 1rem;
}

input[type="text"],
input[type="email"], {
	width: 100%;
	max-width: px;
}

input[type="submit"] {
	width: 100%;
	font-size: 1rem;
	font-weight: normal;
}

textarea {
	width: 67%;
	height: 9rem;
	position: inherit;
	margin-right: 1rem;
	margin-top: rem;
}



/* フッター------------------------------- */

.footer {
	padding-bottom: 1.2rem;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
	height: 3rem;
	position: sticky;
	position: -webkit-sticky;
}

footer p  {
	text-align: center;
  font-size: 0.9rem;
  font-weight: 500;
	letter-spacing: 0.25rem;
}

footer p small {
	text-align: center;
  font-size: 0.6rem;
  font-weight: 500;
	letter-spacing: 0.1rem;
}


/*モバイル版-------------------------------*/

@media(max-width: 600px){

	span {
		margin-top: 2rem;
		line-height: 1.5rem;
		text-align: left;
		letter-spacing: 0.1rem;
		font-size: 0.6rem;
		color: #121111 70%;
	}



	#text-format {
		line-height: 1.5rem;
		text-align: left;
		letter-spacing: 0.1rem;
		font-size: 0.8rem;
	}

	img {
		max-width: 100%;
	}

	.title-content {
		margin-bottom: 0;
		padding-bottom: 0;
		width: 100%;
	  display: flex;
		flex-direction: column;
	  justify-content:;
	  -webkit-box-sizing: border-box;
	  box-sizing: border-box;
	}

	.flow-title-content {
	  margin-top: rem;
		margin-bottom: 3rem;
		width: 100%;
	  position: relative;
	  display: flex;
		flex-direction: column;
	  justify-content:;
	  -webkit-box-sizing: border-box;
	  box-sizing: border-box;
	}

	main{
		margin-top: -4.5rem;
	}

	aside {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-content: space-between;
	}

	article {
		width: 100%;
		display: flex;
		flex-direction: column;
	}

	.left-block {
		width: 100%;
		padding-left: 0;
	}

	.right-block{
		width: 100%;
	}

	.min-height{
		height: 45rem;
	}

	/* HEADER------------------------------- */

	.page-header {
		display: flex;
		flex-direction: column;
		align-items: center;
		lign-items: flex-start;
		padding-top: 0.9rem;
		padding-left: 0;
		padding-bottom: 3rem;
		width: 100%;
		height: 6rem;
		background-color: rgba(255, 255, 255,0.75);
		top: 0;
		z-index: 9999;
	}

	h1 {
		padding-left: 1rem;
		margin-left: 0;
		letter-spacing: 0.1425rem;
		font-size: 1.14rem;
		font-weight: 500;
		text-transform: uppercase;
		list-style: none;
	}

	.main-nav {
		padding-top: 0.45rem;;
		padding-left: 0;
		letter-spacing: 0.095rem;
		font-size: 0.855rem;
		font-weight: 500;
		text-transform: uppercase;
		list-style: none;

	}

	.main-nav li {
		margin-left: 0.45rem;
		padding-left: 0.45rem;
	}

	li a {
		color: #121111;
	}

	.active-page {
		color: #b8b0a9;
	}

	.main-nav a:hover {
		color: #b8b0a9;
	}

	/* WORKS------------------------------- */

	.grid {
		display: grid;
		gap: 3%;
		grid-template-columns: repeat(2, minmax(100px, 1fr));
		margin-top: -4.5rem;
		margin-bottom: 6rem;
	}

	.big-box-1 {
		grid-column: auto;
		grid-row: auto;
	}

	.big-box-1 img {
		height: auto;
	}


	figure {
	  position: auto;
	  width: auto;
	}

	figure img {
	  position: top;
	  z-index: 1;
	}

	figure img:hover {
	  opacity: 0.6;
	  filter: brightness(110%);
	}

	figure img {
	-webkit-transition: all .6s; transition: all .6s
	}

	.big-box-1 img  {
	  height: 95% ;
		width: 100% ;
		object-fit: cover;
		-index: 1;
	}

	figcaption {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	figcaption a {
		color: red ;
		font-size: 0.6rem;
		padding-right: 0.75rem;
	}

	figure p {
		padding-left: 0.5rem;
	  z-index: 1;
	  opacity: 0;
	  -webkit-transition: .0s;
	  transition: .0s;
	}

	figure p {
	  bottom: -1rem;
	  left: 0;
	  font-size: 0.6rem;
	}

	figure:hover p {
	  opacity: 1;
	}

	/* WORK-part------------------------------- */

	.work-left-title {
		text-align: left;
		letter-spacing: 0.1rem;
		font-size: 1rem;
		margin-bottom: 0.6rem;
	}

	.work-nav {
		margin-top: 0;
		display: flex;
		align-items: flex-end;
		position: center;
		justify-content: space-between;
		font-size: 1.35rem;
	}

	.work-nav a {
		color: #121111
	}

	.work-nav a:hover {
		color: #b8b0a9;
	}

	/* ABOUT------------------------------- */

	.about-left-title {
		margin-bottom: 1.5rem;
		padding-left: 0;
		padding-bottom: 0.5rem;
		border-bottom: 1px solid;
		text-align: left;
		margin-left: 0rem;
		letter-spacing: 0.1rem;
		font-size: 1rem;
	}

	.about-concept-title {
		text-align: left;
		letter-spacing: 0.1rem;
		font-size: 1rem;
	}

	.about-title {
		margin-top: rem;
		margin-bottom: 1rem;
		text-align: left;
		line-height: 1.8rem;
		letter-spacing: 0.1rem;
		font-size: 0.9rem;
	}

	/* FLOW------------------------------- */

	.flow-left-title {
		text-align: left;
		margin-left: 0rem;
		margin-bottom: 0.6rem;
		letter-spacing: 0.1rem;
		font-size: 1rem;
	}

	/* NEWS------------------------------- */

	.mews-nav {
		display: flex;
		justify-content: space-around;
		margin: 0 auto;
		font-size: 1.35rem;
	}

	.news-nav a {
		color: #121111
	}
	.news-nav a:hover {
		color: #b8b0a9;
	}

	.left-date {
		text-align: center;
		margin-right: rem;
		letter-spacing: 0.1rem;
		font-size: 1rem;
		list-style: none;
	}

	.border{
		border-bottom: 1px solid;
	}

	.border-red{
		margin-top: 4.5rem;
		margin-left: 6rem;
		max-width: 1000px;
		border-bottom: 1px solid;
	}

	/* CONTACT------------------------------- */

	form {
		display: flex;
	  flex-direction: column;
		padding-right: 3rem;
		background-color: #f7f8f8;
	  padding: 1.5rem 1.5rem;
	  width: 90%;
	}

	.form-block{
		display: flex;
		justify-content: space-between;
		margin-bottom: 1rem;
	}

	#submit-btn {
		display: flex;
		justify-content: space-between;
		margin-top: 1.5rem;
	}


	label {
		width: 33%;
		font-size: 0.8rem;
		display: block;
	}

	input, textarea {
		width: 67%;
	}

	input[type="text"],
	input[type="email"],
	textarea {
		background: rgba(255, 255, 255, .5);
		border: 1px #b8b0a9 solid;
		padding: 3px;
		font-size: 1rem;
	}

	input[type="text"],
	input[type="email"], {
		width: 100%;
		max-width: px;
	}

	input[type="submit"] {
		width: 100%;
		font-size: 1rem;
	}

	textarea {
		width: 67%;
		height: 9rem;
		position: inherit;
		margin-right: 1rem;
	}


	/* フッター------------------------------- */

	.footer {
		padding-bottom: 0.9rem;
		display: flex;
		justify-content: space-between;
		width: 100%;
		height: 3rem;
		position: sticky;
		position: -webkit-sticky;
	}

	footer p  {
		text-align: center;
	  font-size: 0.6rem;
	  font-weight: 500;
		letter-spacing: 0.25rem;
	}

	footer p small {
		text-align: center;
	  font-size: 0.45rem;
	  font-weight: 500;
		letter-spacing: 0.075rem;
	}

}
