body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  color: #333333;
  background: #f0f0f0;
}

img {
  width: 100%;
  height: auto;
}

a:hover {
  opacity: 0.5;
}

.content {
  max-width: 1140px;
  padding: 0 20px;
  margin: auto;
}

.header_top {
  height: 75px;
  font-weight: 700;
  display: flex;
  gap: 80px;
  align-items: center;
  background: #ffffff;
  padding: 0 40px;
}
.header_top h1 {
  font-size: 35px;
}
.header_top ul{
  gap: 40px;
  display: flex;
}

.kv {
  background: url(../img/kv.png) center / cover;
  height: 650px;
  position: relative;
}
.kv div {
  width: 388px;
  background-color: #00000091;
  color: #ffffff;
  padding: 20px;
  position: absolute;
  right: 38px;
  bottom: 40px;
}
.kv h2 {
  padding-bottom: 20px;
  font-size: 20px;
}

p:not(:last-child) {
  line-height: 2;
}

main section {
  padding-top: 120px;
}
main section h2 {
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 40px;
}
main section h2::after {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  background: #707070;
}
main section h2 span {
  font-size: 14px;
  padding: 20px 0 40px;
  display: block;
}

.list_news {
  display: flex;
  gap: 40px;
}
.list_news li {
  width: calc((100% - 80px) / 3);
  padding-right: 40px;
}
.list_news li:not(:last-child) {
  border-right: 1px solid #707070;
}
.list_news p {
  font-size: 14px;
  padding-bottom: 20px;
}
.list_news h3 {
  line-height: 1;
  padding-bottom: 20px;
}
.list_news p span {
  background: #333333;
  color: #ffffff;
  padding: 0 10px;
  margin-left: 10px;
}

.rap{
  display: flex;
  justify-content: space-between;
}
.rap_content{
  width: 40%;
}
.rap_pic{
  width: 55%;
}
.rap_studio{
  flex-direction: row-reverse;
}
.rap_company{
  flex-wrap: wrap;
  align-items: center;
}
.rap_company .rap_content{
  background: #FFFFFF;
  width: 55%;
  padding: 100px 8% 100px 6%;
}
.rap_company .rap_pic{
  width: 50%;
  margin-left: -5%;
}

main section#company{
  padding-bottom: 120px;
}

footer{
  font-size: 16px;
  color:#333333;
  text-align: center;
  background: #FFFFFF;
  line-height: 100px;
}

@media screen and (max-width: 750px) {
  .header_top{height: 80px; padding: 0 20px; gap: 0; display: block;}
  /* .header_top h1{padding-bottom: 20px;} */
  .header_top nav ul{gap: 20px; }
  .header_top nav ul a{font-size: 16px;}

  .kv{background-image: url(../img/kv.png); height: 650px; display: flex; justify-content: center;}
  /* .kv div{absolute; right: 5px; bottom: 20px; padding: 20px; margin: 0 20px; max-width: 88%;} */
  .kv div{absolute; right: 0px; bottom: 20px; padding: 20px; margin: 0 auto; width: calc(100% - 40px); left: 0;}
  .kv div h2{line-height: 1;}
  .kv div p{line-height: 2;}
  
  main section{padding-top: 80px;}
  /* main section#about{padding-bottom: 0;} */
  /* section h2{padding-bottom: 32px;} */

  /* .about_wrap{width: 100%; gap: 20px 0; flex-wrap: wrap;} */
  /* .about_wrap div{width: 100%;} */
  /* .about_wrap figure{margin: auto;} */
  /* .about_wrap h3{padding-bottom: 11px; text-align: center;} */

  /* .list_beans{gap: 40px 0; flex-direction: column;} */
  /* .list_beans li{width: 100%;} */

  .list_news{display: block; gap: 0;}
  .list_news h3:not(:last-child) {padding-bottom: 40px;}
  .list_news li:not(:last-child) {border: none;}
  .list_news li{width: 100%;}
  .content{margin: 0;}  /* max-width: calc(100% - 20px); */
  .rap{display: block;}
  .rap_content{width: 100%;}
  .rap_content p{line-height: 2; padding-bottom: 40px;}
  .rap_pic{width: 100%;}

  .rap_company .rap_content{width: 100%; padding: 80px 20px; line-height: 2;}
  .rap_company .rap_content p{padding-bottom: 0;}
  .rap_company .rap_pic{width: 100%; margin: auto;}
  main section#company{padding-bottom: 80px;}

  footer{height: 80px; line-height: 80px;}
  .btn{margin-top: 40px;}
}