
@charset "UTF-8";

html {
  font-size: 100%;
}
body {
  color: #24292e;
}
a {
  text-decoration: none;
}
img {
  max-width: 100%;
}
li {
  list-style: none;
}

.wrapper {
  max-width: 960px;
  margin: 0 auto 130px auto;
  font-size: 0.9rem;
  padding: 0 4%;
}
.site-title {
  line-height: 1px;
}
.site-title a {
  display: block;
}
.sec-title {
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 65px;
}

/*-------------------------------------------
ヘッダー
-------------------------------------------*/
#header {
  max-width: 960px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 270px;
  margin: 0 auto;
  padding: 0 4%;
}
#header ul {
  display: flex;
  padding: 10px 0;
}
#header li {
  font-size: 0.9rem;
  margin-left: 30px;
}
#header li a {
  color: #24292e;
}
#header li a:hover {
  opacity: 0.7;
}
/* #header li img.icon {
  width: 20px;
} */
/* ------------------------------ */
/* sample01 */
/* ------------------------------ */
.header01 {
  padding: 16px 24px;
  background-color: #fafafa;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*
  ↓ 固定にしたい場合は下記を入れる
      position: sticky;
      top: 0;
      left: 0;
  */
}

.header01-logo {
  font-weight: bold;
  font-size: 20px;
}

.header01-list {
  display: flex;
  align-items: center;
  gap: 32px;
  font-size: 16px;
  font-weight: bold;
}

.header01-item--contact {
  background-color: #2486d1;
  color: #fff;
  padding: 6px 16px;
  border-radius: 6px;
}
/*-------------------------------------------
Mainvisual
-------------------------------------------*/
#mainvisual {
  margin-bottom: 80px;
}
#mainvisual img {
  width: 100%;
  max-width: 1920px;
  height: 420px;
  object-fit: cover;
}
video {
  width: 100%;
  max-width: 600px;
  height: auto;
  display: block;
  margin: auto;
}
/*-------------------------------------------
About
-------------------------------------------*/
#about ul {
  margin-bottom: 30px;
}
#about li:first-child {
  margin-bottom: 30px;
}
#about p {
  text-align:justify;
}
/*タイトル付き（見出しボックス）*/
.box71{
  margin: 2em auto; /* ボックスの余白 */
  background-color: #fff; /* ボックス背景色 */
  padding: 5em 2em 2em; /* ボックス内側余白 */
  position:relative; /*配置(ここを基準に)*/
  box-shadow: 0px 1px 5px rgba(0,0,0,0.1);/*ボックス影*/
  }
  .box71 .box-title {
  background-color: #fd0101; /* タイトル背景色 */
  font-size: 1.5rem;/* タイトル文字の大きさ */
  color: #fff; /* タイトル文字色 */
  padding:10px;/*タイトル余白*/
  text-align: center;	/* タイトル中央寄せ */
  position:absolute;	/* 配置(ここを動かす) */
  top:0;	/*上から(0px)に配置 */
  left:0; /*左から(0px)に配置 */
  width:100%;/*横幅最大幅 */
  }
/*-------------------------------------------
Works
-------------------------------------------*/
#works ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
#works li {
  width: 31%;
  margin-bottom: 23px;
}

/*-------------------------------------------
News
-------------------------------------------*/
#news dl {
  display: flex;
  flex-wrap: wrap;
  border-top: solid 1px #c8c8c8;
  margin-bottom: 20px;
}
#news dt {
  width: 20%;
  border-bottom: solid 1px #c8c8c8;
  padding: 15px;
}
#news dd {
  width: 80%;
  border-bottom: solid 1px #c8c8c8;
  padding: 15px;
}

/*-------------------------------------------
Contact
-------------------------------------------*/
#contact dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
#contact dt {
  width: 15%;
}
#contact dd {
  width: 85%;
  margin-bottom: 10px;
}
#contact dd input,
#contact dd textarea {
  width: 100%;
  border: solid 1px #c8c8c8;
  padding: 10px;
}
#contact dd textarea {
  height: 10rem;
}
#contact .button {
  text-align: center;
}
#contact .button input {
  width: 200px;
  background-color: #24292e;
  color: #fff;
  padding: 15px 0;
  border: solid 1px #24292e;
}
#contact .button input:hover {
  background: #fff;
  color: #24292e;
}
#contact2 dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
#contact2 dt {
  width: 15%;
}
#contact2 dd {
  width: 85%;
  margin-bottom: 10px;
}
#contact2 dd input,
#contact2 dd textarea {
  width: 100%;
  border: solid 1px #c8c8c8;
  padding: 10px;
}
#contact2 dd textarea {
  height: 10rem;
}
#contact2 .button {
  text-align: center;
}
#contact2 .button input {
  width: 200px;
  background-color: #24292e;
  color: #fff;
  padding: 15px 0;
  border: solid 1px #24292e;
}
#contact2 .button input:hover {
  background: #fff;
  color: #24292e;
}

/*-------------------------------------------
フッター
-------------------------------------------*/
#footer {
  background-color: #fd0101;
  color: #fff;
  font-size: 0.5rem;
  padding: 10px 20px;
  text-align: center;
}
/*-------------------------------------------
SP
-------------------------------------------*/
@media screen and (max-width: 600px) {
  .wrapper {
    margin-bottom: 70px;
  }
  .site-title {
    margin-top: 20px;
  }
  .sec-title {
    margin-bottom: 40px;
  }

  /*-------------------------------------------
  ヘッダー
  -------------------------------------------*/
  #header {
    max-width: 100%;
    height: auto;
    flex-direction: column;
  }
  #header li {
    font-size: 0.8rem;
    margin-left: 20px;
  }
  #header li:first-child {
    margin-left: 0;
  }

  /*-------------------------------------------
  Works
  -------------------------------------------*/
  #works ul {
    flex-direction: column;
  }
  #works li {
    width: 100%;
  }

  /*-------------------------------------------
  News
  -------------------------------------------*/
  #news dl {
    flex-direction: column;
  }
  #news dt {
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
  }
  #news dd {
    width: 100%;
    padding-top: 0;
  }

  /*-------------------------------------------
  Contact
  -------------------------------------------*/
  #contact dl {
    flex-direction: column;
  }
  #contact dt {
    width: 100%;
  }
  #contact dd {
    width: 100%;
  }
  #contact2 dl {
    flex-direction: column;
  }
  #contact2 dt {
    width: 100%;
  }
  #contact2 dd {
    width: 100%;
  }
}