/* 調整用スタイル */


a {
  text-decoration: none;
}

ul,
li {
  list-style: none;
}

.body {
  margin: 0;
  display: flex;
  flex-flow: column;
  min-height: 100vh;
}
main {
  background-color: #f1f1f1;
  padding: 90px 180px 90px 180px;
  height: auto;
  margin: 0px auto;
}
@media screen and (max-width: 767px) {
  main {
    padding: 90px 90px 90px 90px;
  }
}
footer {
  background-color: #4D9E88;
  height: 40px;
  display: flex;
  padding: 6px;
  color: #fff;
}

.footer div {
  margin: auto;
}


/* ヘッダー */


.header {
  background-color: white;
  width: 100%;
  height: 90px;
  position: fixed; 
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

.header__inner {
  padding: 0 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  position: relative;
}


/* ヘッダーのロゴ部分 */
.header__title {
  width: 80px;
}


@media screen and (min-width: 1400px) {
  .header__title {
    width: 120px;
  }
}

.header__title img {
  display: block;
  width: 220px;
}

/* ヘッダーのナビ部分 */

.header__nav {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  transform: translateX(100%);
  background-color: #fff;
  transition: ease .4s;
  text-align: center;
}


@media screen and (min-width: 1400px) {
  .header__nav {
    position: static;
    transform: initial;
    background-color: inherit;
    height: inherit;
    display: flex;
    justify-content: end;
    width: 50%;
  }
}


@media screen and (min-width: 1400px) {
  .nav__items {
    width: 100%;
    display: flex;
    align-items: center;
    height: initial;
    justify-content: space-between;
  }
}

.nav-items {
  padding-top: 150px;
  padding-bottom: 200px;
}


@media screen and (min-width: 1400px) {
  .nav-items {
    padding-top: inherit;
    padding-bottom: inherit;
  }
}

/* ナビのリンク */
.nav-items__item a {
  color: #333;
  width: auto;
  display: block;
  padding: 10px 30px;
  text-align: center;
  font-size: 20px;
  margin-bottom: 24px;
  position: relative;
}

.nav-items__item a:hover{
  color: #4D9E88;
}

.nav-items__item a::after{
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  width: 80%;
  height: 3px;
  background: #4D9E88;
  transition: all .3s;
  transform: scale(0, 1);
  transform-origin: left top;
}

@media screen and (max-width: 1400px) {
  .nav-items__item a {
    color: #333;
    width: auto;
    display: inline-block;
    padding: 10px 30px;
    text-align: center;
    font-size: 20px;
    margin-bottom: 24px;
    position: relative;
  }
  
  .nav-items__item a::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 10%;
    height: 3px;
    background: #4D9E88;
    transition: all .3s;
    transform: scale(0, 1);
    transform-origin: left top;
  }
}

.nav-items__item a:hover::after{
  transform: scale(1, 1);
}

.nav-items__item:last-child a {
  margin-bottom: 0;

}

@media screen and (min-width: 960px) {
  .nav-items__item a {
    margin-bottom: 0;
  }
}


/* ハンバーガーメニュー */

.header__hamburger {
  width: 48px;
  height: 100%;
  cursor: pointer;

}

.hamburger {
  background-color: transparent;
  border-color: transparent;
  z-index: 9999;
}

@media screen and (min-width: 1400px) {
  .hamburger {
    display: none;
  }
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 100%;
  height: 1px;
  background-color: #000;
  position: relative;
  transition: ease .4s;
  display: block;
}

.hamburger span:nth-child(1) {
  top: 0;
}

.hamburger span:nth-child(2) {
  margin: 8px 0;
}

.hamburger span:nth-child(3) {
  top: 0;
}


/* ハンバーガーメニュークリック後のスタイル */
.header__nav.active {
  transform: translateX(0);
}

.hamburger.active span:nth-child(1) {
  top: 5px;
  transform: rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;

}

.hamburger.active span:nth-child(3) {
  top: -13px;
  transform: rotate(-45deg);
}

/* footer */

.wrapper {
  position: absolute;
}

/* メイン画面 */
.main_box {
  text-align: center;
}

.main_image img {
  margin: 0 auto;
  width: 80%;
  padding: 30px 0px 30px 0px;
}
.main_image p {
  padding: 8px;
  background-color: rgba(255, 255, 255, 0.7);
  display: flex;
  justify-content: center;
  font-size: 28px; 
  line-height: 1.6;
  position: absolute;
  margin-top: -250px;
  left: 40%;
}

/* 会社概要 */

.profile {
  text-align: center;
  padding-top: 40px;
  font-size: 30px;
}

.profile span {
  margin-top: 5px;
  font-size: 24px;
  color: #999;
  border-bottom: 1px solid #999;
}

.my {
  padding: 20px;
  margin-top: 60px;
  background-color: #bfdfe2;
}

.my p {
  padding-top: 30px;
  font-size: 16px;
  letter-spacing: 8px;
  line-height: 1.6;
}


.table_01 {
  font-size: 16px;
  width: center;
  margin: 50px auto 30px auto;
  border-collapse: separate;
  border-spacing: 20px 0;
}

#profile th {
border-bottom: 1px solid #ccc;
padding: 30px 0;
}
#profile td {
border-bottom: 1px solid #ccc;
}

.profile_box {
  padding: 100px;
}

.forio {
  line-height: 1.6;
  letter-spacing: .04em;
}


/*事業紹介*/

.business {
  margin-top: 170px;
}

.Form h1 {
  font-size: 3vw;
  margin-top: 50px;
  width: 50%;
  border-bottom: solid 2px black;
}

.service a {
  position: relative;
  padding: 1.2rem 2rem 1.2rem 4rem;
  color: #fff;
  border-radius: 100vh 0 0 100vh;
  background: #4D9E88;
  margin: 30px;
  font-size: 1.6rem;
  display: inline-block;
  width: 500px;
}

.service a:before {
  position: absolute;
  top: calc(50% - 7px);
  left: 10px;
  width: 14px;
  height: 14px;
  content: '';
  border-radius: 50%;
  background: #fff;
}

a.business_wind {
  display: block;
  padding-top: 10px;
  margin-top: -10px;
}

.wind_power {
  text-align: center;
}

#windsub {
  color: #0081f0;
  font-size: 20px;
  margin: 100px auto 50px auto;
  text-align: left;
}


.wind_power_min img {
  height: 500px;
  padding-left: 75px;
}

.wind_power_min p {
  display: inline-block;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .04em;
  position: relative;
  bottom: 150px;
  background-color: #f2f2f2;
}

.wind_power_problem_list li span {
  color: #acacac;
  font-size: 30px;
  font-weight: 400;
  height: auto;
  line-height: 1.4;
  text-align: center;
  width: auto;
  margin: 10px;
}

.wind_power_problem_list {
  color: #000;
  flex: none;
  font-size: 20px;
  font-weight: 700;
  height: auto;
  line-height: 1.4;
}

.wind_power_problem_list ul {
  margin: 20px;
  display: inline-block;
}

.wind_power_problem_list li {
  margin: 5px;
  text-align: left;
}

.wind_power_problem_list h2 span {
  font-size: 16px;
  font-weight: lighter;
  background: linear-gradient(transparent 70%, rgb(225, 225, 190) 30%);
}

.wind_power_features_sentence{
  margin: 30px;
}

.wind_power_features_sentence h3 {
  margin: 15px 100px;
  border-bottom: 1.5px solid #a3a3a3;
  padding: 0.2em 0.5em;
  border-left: solid 5px #27acd9;
  text-align: left;
  font-size: 20px;
}

.wind_power_features_sentence p {
  padding: 10px;
  line-height: 1.6;
  letter-spacing: .04em;
}

details {
  width: 600px;
  margin: 20px auto;
  border: 1px solid #aaa;
  border-radius: 4px;
  padding: .5em .5em 0;
}

summary {
  font-weight: bold;
  margin: -.5em -.5em 0;
  padding: .5em;
  cursor: pointer;
}

details[open] {
  padding: .5em;
}

details[open] summary {
  border-bottom: 1px solid #aaa;
  margin-bottom: .5em;
}

.wind_power_table_txt {
  border-collapse: collapse;
  border-spacing: 0;
  display: inline-block;
}

.wind_power_table_txt th,.wind_power_table_txt td{
  padding: 10px 0;
  text-align: center;
}

.wind_power_table_txt tr:nth-child(odd){
  background-color: rgb(209, 208, 208)
}

.wind_power_image_sentence, .wind_power_graph_sentence {
  font-size: 1.3rem;
  line-height: 1.6;
  letter-spacing: .04em;
}

.wind_power_image_position img {
  height: 250px;
  border-radius: 5%;
}

.windbox_main_box {
  position: relative;
  display: flex;
  width: 300px;
  height: 200px;
  margin: 20px;
}

.windbox_main img {
  border-radius: 25% 0% 0% 10%;
  height: 200px;
}

.windbox_content {
  background-color: #a7def0;
  width: 180px;
  border-radius: 0% 10% 25% 0%;
}

.windbox_content p {
  margin-top: 100px;
}

@media screen and (max-width: 767px){
.news-list .item a{
  flex-wrap: wrap;
}
.news-list .item .date{
  min-width: 100px;
}
.news-list .item .title{
  margin-top: 10px;
}
.main_image p {
  font-size: 15px;
  margin-top: -150px;
}

}


@media screen and (max-width: 425px) {
  .header__title img {
    width: 100px;
  }
  main {
  padding: 10px;
  }

  .footer {
    font-size: 10px;
  }

  .main_image img {
    position: relative;
    width: 80%;
    padding: 110px 0px 50px 0px;
  }

  .main_image p {
    font-size: 10px;
    margin-top: -150px;
    left: 35%;
  }

  .profile {
    font-size: 20px;
  }

  .profile span {
    font-size: 12px;
  }

  .my p {
    font-size: 10px;
  }

  .profile_box {
    padding: 10px;
  }

  #profile th {
    font-size: 10px;
    width: 60px;
  }

  #profile td {
    font-size: 10px;
  }

  .Form h1 {
    margin-top: 100px;
    font-size: 4vw;   
  }

  /* 事業内容 */
  .service a {
    width: 180px;
    font-size: 18px;
    margin: 20px;
  }

  .business {
    margin-top: 50px;
  }

  a.business_wind {
    padding-top: 70px;
    margin-top: -70px;
  }

  .wind_power_min img {
    height: 300px;
    padding-left: 0px;
  }

  .wind_power_min p {
    font-size: 10px;
    text-align: left;
    line-height: 1.6;
    letter-spacing: .04em;
    position: relative;
    background-color: #f2f2f2;
    bottom: 0px;
  }

  #windsub {
    margin: 40px auto 20px auto;
    font-size: 15px;
  }

  .wind_power_problem_list li {
    font-size: 10px;
  }

  .wind_power_problem_list li span {
    font-size: 12px;
  }

  .wind_power_problem_list img {
    height: 200px;
  }

  .wind_power_problem_list h2 span {
    margin: auto 20px auto 20px;
    font-size: 10px;
  }

  .wind_power_features_sentence h3 {
    margin: auto;
  }

  .wind_power_features_sentence p {
    font-size: 10px;
    text-align: left;
    padding: 5px;
    margin: 10px auto 10px auto;
  }

  details {
    width: 300px;
  }

  .wind_power_graph_sentence p, .wind_power_image_sentence p {
    font-size: 10px;
    margin: 10px;
  }

  .wind_power_table_txt th,.wind_power_table_txt td{
    font-size: 10px;
  }

  .windbox_main_box {
    width: 280px;
    font-size: 10px;
  }

  .wind_power_graph_sentence_img {
    width: 280px;
  }

  .video {
    width: 100%;
  }

  .wind_power_movie {
    width: 300px;
  }
  
}