html {
  width: auto;
}

body {
  margin: 0;
  -webkit-text-size-adjust: 100%;
  color: #000;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

a {
  text-decoration: underline;
  color: #000;
}

a:hover {
  text-decoration: none;
}

ul {
  list-style: none;
  padding-left: 5px;
}

.hf-container {
  /*border: solid 1px black;*/
  padding-left: 15px;
  padding-right: 15px;
  margin-left: auto;
  margin-right: auto;
}

.header_container {
  /*border: solid 1px black;*/
  padding-left: 0px;
  padding-right: 0px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: flex-end;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

/* header */
header {
  background-color: #222;
  color: #fff;
}

.header_title {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 30px;
}


#logo {
  width: 300px;
  float: left;
}

#member {
  color: #fff;
  width: fit-content;
  margin: 0 0 0 auto;
}

/* main */
.main {
  padding-top: 20px;
  background-color: #fbfbfb;
}

.container {
  /* border: solid 1px black; */
  padding-left: 0px;
  padding-right: 0px;
  margin-left: auto;
  margin-right: auto;
  /*margin-top: 20px;
    margin-bottom: 20px;*/
}

.main li {
  padding-bottom: 10px;
}

.main .flex_container {
  display: flex;
}

.flex_container .flex_index {
  width: 15%;
  padding: 0 0 0 0px;
  font-weight: bold;
}

.flex_container .flex_text {
  width: 85%;
  padding: 0 0 0 0px;
}

.section-title {
  border-bottom: solid 1px #9f9f9f;
  margin-bottom: 10px;
  padding-left: 5px;
}

#profile_content {
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
}

.photo {
  width: 20%;
}

#photo {
  border-radius: 50%;
  border: solid 1px #9f9f9f;
}

.info {
  width: 70%;
  padding-left: 5%;
  padding-right: 5%;
}

@media (min-width:1200px) {
  .container {
    width: 1000px;
  }

  .contents {
    font-size: 18px;
  }

  .section-title {
    font-size: 30px;
  }
}

@media (max-width:1199px) and (min-width:992px) {
  .container {
    width: 900px;
  }

  .contents {
    font-size: 16px;
  }

  .section-title {
    font-size: 26px;
  }
}

@media (max-width:991px) and (min-width:768px) {
  .container {
    width: 700px;
  }

  .contents {
    font-size: 14px;
  }

  .section-title {
    font-size: 22px;
  }
}

@media (max-width:767px) and (min-width:601px) {
  .container {
    width: 600px;
  }

  .contents {
    font-size: 12px;
  }

  .section-title {
    font-size: 20px;
  }
}

@media (max-width:600px) and (min-width:0px) {
  .header_title {
    font-size: 20px;
  }

  .container {
    width: 350px;
  }

  #logo {
    width: 200px;
  }

  #member {
    font-size: 8px;
  }

  .contents {
    font-size: 12px;
  }

  .section-title {
    font-size: 20px;
  }

  .photo {
    width: 30%;
  }
}

/* footer */
footer {
  background-color: #222;
  padding-top: 15px;
  font-size: 12px;
}

footer p {
  color: #fff;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
}

.top {
  margin: 0 0 0 auto;
  width: fit-content;
}

footer a {
  color: #fff;
}