@charset "utf-8";

body {
  background-color: #fff;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

header h1, header nav a {
font-family: 'IBM Plex Sans JP', sans-serif;
}

h2, h3, h4, th, td, dt, dd, button, input, textarea {
font-family: 'Noto Serif JP', serif;
}

h1 {
  font-size: 5rem;
  color: #000;
  text-align: center;
}
h2 {
  font-size: 4.5rem;
  color: #000;
  margin-left: 10%;
  margin-bottom: 10%;
}
h3, button {
  font-size: 3rem;
  color: #010;
}
h4 {
  font-size: 2.8rem;
  color: #010;
  margin: 3% auto 3% 1%;
}
p, input, textarea {
  font-size: 2rem;
  line-height: 1.5;
  text-align: justify;
}
a {
  text-decoration: none;
  color: #000;
}
img {
  width: 100%;
}

.flex {
  display: flex;
}
.center {
  text-align: center;
}

.tamura {
  width: 60%;
  margin: auto auto 1% 1%;
}
.tamura img {
  width: 100px;
}
nav {
  width: 40%;
}
.keigo {
  margin: 20vw;
}

nav ul {
  justify-content: flex-start;
  display: flex;
}
nav ul li{
  width: 33%;
  margin: 10% auto;
}

nav ul li a {
  display: block;
  color: #8978df;
  font-size: 3.5rem;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  border-right: 1px solid #fff;
}
nav ul li a:hover {
  color: #1221dd;
}

.blue {
  color: #00f;
}

.art {
  width: 30%;
  margin: 5% 10%;
  border: 2px solid;
}
.art2 {
  width: 30%;
  margin: 5% 35%;
  border: 2px solid;
}

.flex_art {
  display: flex;
}

/* profile */
.mt10 {
  margin-top: 10%;
}

.face {
  width: 25%;
}
.face img {
  width: 80%;
  margin: 0 10%;
}

.explanation {
  width: 70%;
}

/* slill */
.skill {
  width: 90%;
  margin: 10% 0 20% 10%;
}

.skill h2 {
  margin-bottom: 3%;
}

.soft {
  font-weight: bold;
  width: 200px;
}

/* contact */
.contact {
  width: 80%;
  margin: 10%;
}

.red {
  color: #f00;
}

.ml1 {
  margin-left: 1%;
}
.mt5 {
  margin-top: 5%;
}

input {
  width: 500px;
}

textarea {
  width: 80%;
  height: 20vh;
}

button {
  width: 200px;
  padding: 10px;
  border-radius: 0%;
  margin: 30px 20%;
}
.button1 {
  border: 1px solid #2589d0;
  background-color: #fff;
  color: #2589d0;
}
.button1:hover{
  background-color: #2589d0;
  color: #fff;
}


/* 各サイトの紹介 */
.pc_off {
  display: none;
}
.pc_on {
  display: block;
}

.div2 {
  margin: 2% 5%;
}

.link {
  text-decoration: underline;
  color: #00f;
}

.mb30 {
  margin-bottom: 30%;
}

/*------ max-width:1000px ------*/
@media screen and (max-width: 1000px) {
  h4 {
    font-size: 2.4rem;
  } 

  .tamura {
    width: 50%;
  }
  nav {
    width: 50%;
  }
    
  nav ul li a {
    font-size: 2.5rem;
  }

  /* slill */
  .skill {
    width: 97%;
    margin: 10% 0 20% 3%;
  }

  .soft {
    width: 145px;
  }

}
/* レスポンシブ */
/*------ max-width:768px ------*/
@media screen and (max-width: 768px) {
  .wrapper {
    width: 100%;
  }

  .content {
    flex-wrap: wrap;
  }

  h1 {
    font-size: 4rem;
  }
  h2 {
    font-size: 3rem;
  }
  h3, button {
    font-size: 2.8rem;
  }  
  h4 {
    font-size: 3rem;
  } 
  p, input, textarea {
    font-size: 1.5rem;
  }

  .tamura {
    width: 40%;
  }
  nav {
    width: 60%;
  }
  nav ul li a {
    font-size: 2rem;
  }

  .art {
    width: 60%;
    margin: 5% 20%;
  }
  .art2 {
    width: 60%;
    margin: 5% 20%;
  }

  .flex_art {
    display: block;
  }

  /* slill */
  .skill {
    width: 95%;
    margin: 10% 0 20% 5%;
  }

  .soft {
    width: 130px;
  }
  .soft2 {
    font-size: smaller;
  }

  /* contact */
  input {
    width: 300px;
  }

}
/*------ max-width:480px ------*/
@media screen and (max-width: 480px) {
  h1 {
    font-size: 3.5rem;
  }
  h2 {
    font-size: 2rem;
  }  
  h3, button {
    font-size: 1.9rem;
  }  
  h4 {
    font-size: 2.3rem;
  } 
  p, input, textarea {
    font-size: 1rem;
  }

  .tamura {
    width: 30%;
  }
  .tamura img {
    width: 70px;
  }
  nav {
    width: 70%;
  }

  /* slill */
  .skill {
    width: 98%;
    margin: 10% 0 20% 2%;
  }
  .soft {
    width: 75px;
  }

  /* contact */
  input {
    width: 200px;
  }

  button {
    margin: 30px;
  }

  /* 各サイトの紹介 */
  .pc_off {
    display: block;
  }
  .pc_on {
    display: none;
  }

}


