@charset "utf-8";
/* お問い合わせフォームのみ */
body {
  font-family: "Zen Maru Gothic", serif;
}
.none {
  display: none;
}
.confirm_list, .contact {
  display: flex;
}
.confirm_list {
  justify-content: center;
  margin-top: 1.75rem;
}
#mail_page .confirm_list {
  margin-bottom: 3rem;
}
.confirm_list li {
  padding: 8px 10px;
}
#mail_page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  justify-content: space-between;
}
#mail_page p {
  line-height: 1.75;
}
#mail_page .inner {
  padding-bottom: 20px;
}
form .flex {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width:600px) { /*タブレット600~1024*/
  .confirm_list li:nth-child(even) {
    margin: 0 1.75rem;
  }
  form .flex {
    display: inline-block;
    width: 100%;
  }
  .info form .flex [type="text"], .info [type="text"]#searchBox {
    width: 49.2%;
  }
}
#confirm_page h1 {
  text-align: center;
  padding-top: 20px;
}
#simulater_page .confirm_list li:nth-child(1), #confirm_page .confirm_list li:nth-child(3), #mail_page .confirm_list li:last-child, .partners .confirm_list li:nth-child(1), #partners_confirm .confirm_list li:nth-child(3) {
  color: #fff;
  background: #f5a200;
  border-radius: 10px;
}
#partners_confirm .confirm_list li:nth-child(1) {
  color: #333;
  background: #fff;
}
.contact {
  flex-direction: column;
  text-align: center;
  overflow: scroll;
  -ms-overflow-style: none; /* IE, Edge 対応 */
  scrollbar-width: none; /* Firefox 対応 */
}
.contact::-webkit-scrollbar {
  display: none; /* Chrome, Safari 対応 */
}
#system, #confirm_page .info, #mail_page .wrap {
  margin: 1.75rem 0;
  flex-shrink: 0;
  flex-basis: 100%;
  padding: 0 10px 20px;
  border: 5px solid #f5a200;
  border-radius: 5px;
}
.contact_list {
  display: flex;
  justify-content: space-evenly;
}
h2 {
  font-size: 1.25rem;
  text-align: left;
}
h2 span {
  font-size: 0.8rem;
}
#system h2 {
  padding-top: 20px
}
#system > h2 {
  padding-top: 32px;
  padding-bottom: 20px;
  text-align: center;
}
.contact_list {
  flex-wrap: wrap;
  justify-content: flex-start;
  row-gap: 5vw;
}
#system .contact_list li {
  width: 30%;
  height: 130px;
  margin-right: 5%;
}
#drawing .contact_list li {
  flex-grow: 1;
  height: 60px;
}
#system .contact_list li:nth-child(3) {
  margin-right: 0;
}
#system .contact_list li label {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
}
[type="checkbox"], [type="radio"] {
  display: none;
  -webkit-appearance: none;
  appearance: none;
}
[type="checkbox"]:checked + label, [type="radio"]:checked + label {
  background: #ddd;
}
.info {
  text-align: left;
}
.info [type="text"], .info [type="email"], .info [type="tel"], textarea, #confirm_page .info li {
  box-sizing: border-box;
  width: 100%;
  padding: 8px 5px;
  margin-top: 5px;
  margin-bottom: 1.2rem;
  border: 1px solid #ddd;
  outline: #0052f5;
}
.info .flex [type="text"]:first-child {
  margin-bottom: 0;
}
#confirm_page .info .form_btn li {
  border: none;
  margin-bottom: 0;
}
.info .address_box [type="text"] {
  border: none;
}
.info .address_box {
  border: 1px solid #ddd;
}
.info [type="text"]#searchBox {
  margin-bottom: .5rem;
}
#search_btn {
  padding: 10px 20px;
  border-radius: 5px;
  background: #f5a200;
  color: #fff;
  margin-bottom: 1.2rem;
}
.form_btn {
  margin: 1.75rem auto 0;
  width: 80%;
}
.form_btn li a, .form_btn li input, .partners input[type="submit"], .partners input[type="reset"], #confirm_page .form_btn li button,#partners_confirm .form_btn li button {
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  padding: 20px 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
  text-align: center;
}
.form_btn li:first-child a, .form_btn li:first-child input, .partners input[type="submit"], #confirm_page .form_btn input[type="submit"] {
  background: #f5a200;
  color: #fff;
  border-color: #f5a200;
}
.form_btn li a:active, .form_btn li a:hover, [type="submit"]:hover, [type="submit"]:active {
  opacity: .8;
}
#confirm_page .inner, #mail_page .inner {
  margin: 0 20px;
}
#confirm_page .info h2 {
  padding: 20px
}
@media screen and (min-width:600px) { /*タブレット600~1024*/
  #system .contact_list li label img {
    width: 100%;
    height: 80%;
    object-fit: contain;
  }
  #system .contact_list li label {
    padding: 8px;
  }
  .form_btn {
    display: flex;
    justify-content: center;
    column-gap: 20px;
  }
  .form_btn li {
    width: 40%;
  }
  #confirm_page .inner, #mail_page .inner {
    max-width: 960px;
    margin: 10px 50px;
  }
  .info .flex [type="text"]:first-child {
    margin-bottom: 1.2rem;
  }
}
@media screen and (min-width:1025px) { /*PC1025~*/
  body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
  }
  footer {
    margin-top: auto;
  }
  #system .contact_list li {
    width: 16%;
    height: 130px;
    margin-right: 5%;
  }
  #system .contact_list li:nth-child(3) {
    margin-right: 5%;
  }
  #system .contact_list li:nth-child(5) {
    margin-right: 0;
  }
  #drawing .contact_list li {
    flex-grow: 0;
    height: 60px;
  }
  .info li br {
    display: none;
  }
  .info label, .info .check span {
    display: inline-block;
    width: 200px;
    text-align: right;
    vertical-align: top;
    padding-top: 8px;
    margin-right: 5px;
  }
  .info [type="text"], .info [type="email"], .info [type="tel"], textarea {
    width: calc(100% - 220px);
  }
  form .flex {
    width: calc(100% - 220px);
  }
  .info [type="text"]#searchBox {
    width: 20%;
  }
  #search_btn {
    display: inline-block;
    margin-left: 10px;
    margin-bottom: 5px;
  }
  #confirm_page .inner, #mail_page .inner {
    min-width: 960px;
    max-width: 1200px;
    margin: 10px auto;
  }
}
/*ここからfooter*/
footer {
  background: #333;
  color: #fff;
  padding: 20px 20px 80px;
  position: relative;
  z-index: 101;
}
footer img {
  filter: grayscale(100%);
  text-shadow: 0 0 5px #999;
}
footer .other_link {
  font-size: 0.8rem;
  margin-top: 16px;
}
footer p {
  text-align: center;
}
.footer_nav li a {
  display: block;
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, .5);
}
footer .other_link li a {
  border-bottom: none;
  padding-top: 0;
}
@media screen and (min-width:600px) { /*タブレット600~1024*/
}
@media screen and (min-width:1025px) { /*PC1025~*/
  footer {
    padding-bottom: 18px;
  }
  footer::after {
    content: "";
    display: block;
    width: 200px;
    height: 100px;
    position: absolute;
    top: -100px;
    left: 0;
    background: url("../images/footer_bottom.png")left top/contain no-repeat;
  }
  footer .flex {
    display: flex;
    column-gap: 60px;
    margin-left: 200px;
  }
  footer .flex .footer_nav li a {
    border-bottom-color: transparent;
    padding-bottom: 0;
  }
  footer .other_link {
    margin-left: auto;
    line-height: 2;
  }
}
/*ここからフォーム*/
.partners form {
  margin: 1.75rem 0 0;
  padding: 20px 10px;
  border: 5px solid #f5a200;
  border-radius: 5px;
}
.partners form label {
  padding: 5px;
  padding-left: 0;
  font-weight: normal;
  display: block;
}
form span {
  font-size: 0.8rem;
  background: #f5a200;
  color: #fff;
  padding: 2px 5px 5px;
  margin-left: 5px;
  border-radius: 10px;
}
.partners form input,.partners form textarea {
  padding: 5px 12px;
  border: 1px solid #f5a200;
  width: 100%;
  margin-top: 5px;
  margin-bottom: 1.2rem;
  outline: none;
}
form input:focus,form textarea:focus {
  border-width: 3px;
}
.partners form input[id*="name"] {
  width: 49.2%;
}
@media screen and (min-width:1025px) { /*PC1025~*/
  .partners form label {
    display: inline-block;
    width: 200px;
    text-align: right;
    vertical-align: top;
    padding-top: 8px;
    margin-right: 5px;
  }
  .partners form input,.partners form textarea {
    width: calc(100% - 210px);
    margin-top: 5px;
    margin-bottom: 1.2rem;
  }
  .partners form input[id*="name"] {
    width: 20%;
  }
}