/* 共通
------------------------------------------------------------*/
html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}
/*--------------------------*/
body {
  font-family: "Lato", "Noto Sans JP", "Helvetica", "Helvetica Neue", "Yu Gothic", "Verdana", "Meiryo", sans-serif;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 3px;
  color: #414141;
}
a {
  text-decoration: none;
  color: #414141;
}

img {
  width: 100%;
  height: auto;
}
h4 {
  font-size: 20px;
}

h5 {
  font-size: 17px;
}

p {
  font-size: 15px;
}
.flex-box {
  display: flex;
}

.block-box {
  display: block;
}

/* main
------------------------------------------------------------*/
main {
  margin: 0 auto;
}

.large-category.red {
  color: #c30d23;
}

.large-category {
  font-size: 60px;
  margin: 200px 0 0px;
  text-align: center;
}

.large-category.contact {
  margin-top: 300px;
}

.large-category::before {
  content: "問い合わせ";
  font-size: 12px;
  color: #000;
  display: block;
}

.c-form {
  max-width: 600px;
  margin: 0 auto;
}
.c-form__item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin-bottom: 20px;
  justify-content: center;
}
.c-form__label,
.c-form__input {
  padding: 10px;
}
.c-form__label {
  width: 90%;
}
.c-form__input {
  width: 90%;
  font-size: 16px;
  border: solid 1px #333;
  border-radius: 4px;
}
.c-form__input:focus-visible {
  outline: #c30d23 auto 1px;
}
.c-form__required {
  color: #fff;
  background-color: #c30d23;
  border-radius: 4px;
  padding: 5px 5px;
  margin: 0 0 0 18px;
}
textarea.c-form__input {
  height: 160px;
}
.c-form__submit {
  text-align: center;
}
.c-form__submit button {
  font-size: 18px;
  font-weight: bold;
  color: #c30d23;
  background-color: #fff;
  border: solid 1px #c30d23;
  border-radius: 4px;
  padding: 5px 32px;
  transition: 0.4s;
  cursor: pointer;
}
.c-form__submit button:hover {
  color: #fff;
  background-color: #c30d23;
}
.comment {
  text-align: center;
  margin-top: 100px;
}
.comment a {
  color: #c30d23;
  font-size: 17px;
}

.red {
  color: #c30d23;
}
.top-go {
  margin: 0 auto;
  border: 1px solid #c30d23;
  border-radius: 15px;
  margin: 0 auto;
  margin-top: 50px;
  text-align: center;
  width: 24%;
  min-width: 210px;
}
.top-go a {
  display: inline-block;
  padding: 5px 20px;
}
.top-go:hover {
  background-color: #c30d23;
  color: #fff;
}

.top-go a:hover {
  color: #fff;
}

/* footer
------------------------------------------------------------*/
footer {
  background-color: #f5f5f5;
  margin-top: 300px;
  padding-top: 70px;
}

footer .copywrite {
  text-align: center;
  color: #fff;
  padding: 10px;
  background-color: #414141;
  font-size: 10px;
}

/* RESPONSIVE 設定
------------------------------------------------------------*/
@media (min-width: 999px) {
  .c-form__item {
    flex-wrap: nowrap;
  }
  .c-form__label {
    width: 25%;
  }
  .c-form__input {
    width: 55%;
  }
}
@media (min-width: 1400px) {
  .c-form__label {
    width: 17%;
  }
}
/*---------●タブレット●----------*/
@media only screen and (max-width: 999px) {
  .large-category.contact {
    margin-top: 350px;
  }

  /*-----------footer------------*/
  footer {
    margin-top: 300px;
  }
}

@media only screen and (max-width: 800px) {
  .chronology {
    display: none;
  }
  .content {
    width: 90%;
    margin: 0 auto;
    padding-left: 0;
  }
  .large-category {
    margin-top: 150px;
  }
  .year {
    margin-top: 70px;
    margin-bottom: 20px;
  }
}

/*------●スマホ●-------*/
@media only screen and (max-width: 600px) {
  /*-------共通--------*/

  body {
    letter-spacing: 0;
  }
  .large-category {
    font-size: 40px;
  }
  .large-category.contact {
    margin-top: 200px;
  }

  /*-------footer--------*/

  footer {
    margin-top: 100px;
  }
}
