@charset "UTF-8"

html {
  font-size: 100%;
}

body {
  color: #2b2a27;
  font-family: "Helvetica Neue", "Arial", "Hiragino Sans", "Meiryo", sans-serif;
}
img {
  max-width: 100%;
}
ul {
  list-style: none;
}
a {
  color: #2b2a27;
}
/*-------------------------------------------
Mainvisual
-------------------------------------------*/
/*
「width: 100%;」と「height: 100vh;」で全画面表示にする。
「object-fit: cover;」でトリミングを行い、「object-position: center top;」で
横は中央、縦をトップに配置する。
*/
#mainvisual img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  object-position: center top;
  margin-bottom: 80px;
}
/*-------------------------------------------
text
-------------------------------------------*/
.text {
  text-align: center;
  padding: 0 20px;
  margin-bottom: 80px;
}
.text .site-title {
  margin-bottom: 20px;
}
.text .btn {
  display: inline-block;
  border: solid 1px #2b2a27;
  font-size: 0.875rem;
  padding: 18px 60px;
  text-decoration: none;
}
/*-------------------------------------------
 image
-------------------------------------------*/
.flex {
  display: flex;
  margin-bottom: 60px;
}
.flex li {
  width: calc(100%/3);
}
.flex li img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  vertical-align: bottom;
}
/*-------------------------------------------
 footer
-------------------------------------------*/
#footer {
  font-size: 0.75rem;
  padding: 20px;
  text-align: center;
}
#footer .sns {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}
#footer .sns li {
  margin: 0 10px;
}

/*-------------------------------------------
SP
-------------------------------------------*/
@media screen and (max-width: 834px) {
.flex {
  flex-direction: column;
}
.flex li {
  width: 100%;
}  
}