@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
/* CSS Document */
body {
  display: block;
  margin: 0px;
  padding: 0px;
  width: 100%;
  min-width: 1070px;
  min-height: 769px;
  height: 100vh;
	font-family: 'Noto Sans JP', sans-serif;
}
/*メニュー*/
.menu {
  position: fixed;
  left: 0px;
  right: -1030px;
  top: 60px;
  width: 30px;
  margin: auto;
  height: 20px;
  z-index: 7;
}
.menu_icon {
  width: 30px;
  margin: 0 0 0 auto;
}
.menu_icon span {
  display: block;
  width: 30px;
  height: 4px;
  background: #000;
  margin-bottom: 7px;
  margin-left: 4px;
}
/* 全セクション統一 */
section {
  /*scroll-snap-align: start;*/
  margin: auto;
  width: 100%;
  min-width: 1070px;
  height: 100vh;
  min-height: 769px;
}
/* 最初に「container」とついてるclassに対して */
div[class^="container"] {
  margin-bottom: 0px;
  width: 1006px;
  margin: auto;
}
/* セクション　トップ*/
#top {
  background-image: url("img/top/top.jpg");
  background-size: cover;
  position: relative;
  background-position: center center;
}
#top img {
  width: 400px;
  height: auto;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%);
}
/* セクション　アバウト*/
#about {
  background-color: black;
}
#about .overflow {
  height: 100vh;
  overflow: hidden;
}
#about .container_about {
  height: 100vh;
  min-height: 700px;
  position: relative;
}
#about .container_about .inner {
  height: 375px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
}
/* セクション　ワークス*/
#works {
  background-color: white;
}
#works .overflow {
  height: 100vh;
  width: 1006px;
  margin: auto;
  overflow: hidden;
}
#works .container_works {
  height: 100vh;
  min-height: 700px;
  position: relative;
}
#works .container_works .inner {
  height: 415px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
}
.wrap {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  overflow: scroll;
  -ms-overflow-style: none;
  position: relative;
}
.wrap::-webkit-scrollbar {
  display: none;
}
.slide {
  left: 0px;
  margin-left: 0px;
  position: relative;
  height: 200px;
  width: 2000px;
  overflow: hidden;
}
.slide img {
  height: 200px;
  width: 200px;
  float: left;
}
.next-back {
  margin-top: 8px;
  font-size: 25px;
  font-weight: 300;
}
.next, .back {
  margin-right: 10px;
  cursor: pointer;
}

/* セクション　ニュース*/
#news{
	background: black;
	height: 100vh;
}
.container_news{
	height: auto;
	margin: auto;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	justify-content: space-between;
}
.topic_wrap{
	width: 800px;
	height: auto;
}
.topic{
	height: auto;
	color: white;
}
/* 横線 */
.topic::before,
.topic_wrap:last-child::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: white;
}
.topic p{
	font-size: 13px;
	padding: 15px 0;
	font-weight: 300;
}
.topic a{
	display: inline-block;
	color: white;
}
.topic .details{
	display: block;
	margin: 10px 0 0 80px;
	font-size: 11px;
	font-weight: 200;
}


/* セクション　コンタクト*/
#contact {
  background-color: black;
  height: auto;
}
#map {
  position: relative;
  height: 50vh;
  min-height: 385px;
  width: 100%;
  min-width: 1070px;
}
#map iframe{
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	filter: grayscale(100%);
}
#contact .container_contact {
  height: 50vh;
  min-height: 386px;
  position: relative;
}
.address {
  height: 304px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
}
.mail img {
  margin-top: 15px;
  width: 104px;
}
a {
  text-decoration: none;
  color: white;
  display: block;
}
.btn_mail {
  display: inline-block;
  text-decoration: none;
  color: black;
  cursor: pointer;
}
/*テキスト*/
p {
  margin: 0px;
  padding: 0px;
}
.img-title {
  height: 23px;
  margin-bottom: 35px;
}
.title-size {
  font-size: 22px;
  margin-bottom: 16px;
  color: white;
  line-height: 36px;
  font-weight: 500;
}
.text-size {
  font-size: 13px;
  color: white;
  line-height: 26px;
  font-weight: 200;
}
.readmore {
  margin-top: 51px;
  float: right;
  display: inline-block;
  text-decoration: none;
  color: white;
  cursor: pointer;
}
.read_text {
  height: 17px;
}
.arrow {
  width: 82px;
  margin-bottom: 3px;
}
.privacy p {
  color: white;
}
.btn3 {
  color: white;
}
.btn4 {
  color: white;
}






