section.contact {
}

section.contact .inner {
  width: 100%;
  max-width: 1000px;
  margin: auto;
  padding: 120px 0 0;
}

p.catch {
  font-size: 16px;
  text-align: justify;
  color: #111;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: inherit;
  width: 100%;
  max-width: 1000px;
  margin: auto auto 20px;
  /* border: solid 1px #111; */
  padding: 20px 20px;
  border-radius: 3px;
  font-weight: bold;
}

p.catch span {
  font-size: 16px;
  text-align: justify;
  color: #f02833;
  display: contents;
}

section.contact h2 {
  background: #ff7218;
  border-radius: 50px;
  text-align: center;
  padding: 10px 0;
  margin-bottom: 40px;
  font-size: 36px;
  font-weight: 900;
  color: #fff;
}

.contact_block {
  width: 100%;
  background: #fff;
  margin-top: 50px;
}

.contact_block form {
  width: 100%;
  margin: 0px auto 50px;
  background: none;
}

.contact_block .note01 {
  margin: 0 0 16px 0;
}

.contact_block .note01 span {
  color: #ff7218;
  font-size: 12px;
  font-weight: bold;
}

.contact_block form dl {
  display: flex;
  padding: 0px 0px 0px 16px;
  width: 100%;
  flex-wrap: wrap;
  margin-top: 10px;
}

.contact_block form dl:hover {
}

.contact_block form dt {
  width: 100%;
  padding: 8px 8px 8px 0;
  position: relative;
  font-size: 4.5vw;
  font-weight: bold;
}

.contact_block form dt.required::before {
  content: "＊" !important;
  color: #ff7218 !important;
  padding: 8px 0;
  font-size: 16px;
  border-radius: 5px;
  vertical-align: middle;
  margin: 0px 0 0px 0;
  box-sizing: border-box;
  font-weight: bold;
  position: absolute;
  left: -24px;
  top: 0px;
  bottom: 0;
}

.contact_block form dd {
  width: 100%;
  padding: 0px 0 0px 0;
  margin: 0 0 0 auto;
  position: relative;
  /* border-bottom: solid 1px #ddd; */
  display: flex;
  flex-wrap: wrap;
  gap: 10px 4%;
}

.contact_block form dd .note01 {
  font-size: 3.5vw;
  margin: 0;
  line-height: 1.4em;
  color: #ff7218;
  padding-left: 0;
  text-indent: 0;
}

.contact_block form dd input {
  width: 100%;
  padding: 8px;
  font-size: 16px;
  border: none;
  border-bottom: solid 1px #111;
  line-height: 1.7;
	border-radius: 0px;
}

.contact_block form dd textarea {
  width: 100%;
  padding: 8px;
  font-size: 14px;
  border: solid 1px #222;
	border-radius: 0px;
}

.contact_block form .btn_block {
  margin: 30px auto 0;
  position: relative;
  max-width: 300px;
  background: none;
}

.contact_block form .btn_block .btn01 {
  letter-spacing: 0.05em;
  color: #fff;
  font-size: 21px;
  font-weight: bold;
  position: relative;
  padding: 10px 30px;
  background: #ff7218;
  border: none;
  width: 100%;
  border: solid 1px #ff7218;
  z-index: 2;
  border-radius: 0;
}

/*
.btn_block::after {
content: "";
border-right: solid 1px #000b8c;
border-bottom: solid 1px #000b8c;
position: absolute;
bottom: -3px;
right: -3px;
width: 100%;
height: 100%;
z-index: 1;
background: none;
}
*/
.contact_block form .btn_block .btn01:hover {
  color: #111;
  background: #fff;
  padding: 10px 30px;
  color: #ff7218;
  font-weight: bold;
  border: solid 1px #ff7218;
  box-shadow: none;
}

.contact_block form .btn_block02 {
  margin: 56px 0 0px 0;
  display: flex;
  justify-content: center;
}

.contact_block form .btn_block02 .btn01 {
  margin: 0px 16px 0 0px;
  display: block;
  width: 300px;
  color: #fff;
  background: #555;
  font-size: 18px;
  padding: 8px 24px;
  border: none;
  font-weight: bold;
  letter-spacing: 0;
  text-align: center;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  border: solid 1px #555;
  border-radius: 0;
}

.contact_block form .btn_block02 .btn01:hover {
  background: #fff;
  padding: 8px 24px;
  color: #555;
  font-weight: bold;
  border: solid 1px #555;
}

input.btn01:hover {
  transition: 0.3s ease-in-out;
  background: #fff;
  color: #999;
  border: solid 1px #999;
}

input.btn02 {
  display: block;
  width: 300px;
  color: #fff;
  background: #ff7218;
  font-size: 18px;
  padding: 8px 24px;
  border: none;
  font-weight: bold;
  letter-spacing: 0;
  text-align: center;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  border: solid 1px #ff7218;
  border-radius: 0;
}

input.btn02:hover {
  background: #fff;
  padding: 8px 24px;
  color: #ff7218;
  font-weight: bold;
  border: solid 1px #ff7218;
}

#check_send[disabled] {
  opacity: 0.3 !important;
  pointer-events: none;
  position: relative;
}

section.contact_access {
  width: 100%;
  margin: 60px 0 80px;
}

section.contact_access .inner {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

section.contact_access p {
  text-align: justify;
}

section.contact_access dl {
  display: flex;
  margin-bottom: 48px;
  align-items: center;
  padding: 24px;
  border: solid 1px #ccc;
  border-radius: 8px;
}

section.contact_access dl:not(:last-child) {
}

section.contact_access dt {
  width: 75%;
  color: #111;
}

section.contact_access dd {
  width: 25%;
}

section.contact_access dd iframe {
  width: 100%;
  height: 320px;
  display: block;
}

.access_name {
  color: #ff7218;
  font-size: 22px;
  line-height: 1;
  margin-bottom: 20px;
  letter-spacing: 0.2em;
}

.access_address {
  margin-bottom: 10px;
}

.contact_access {
  display: flex;
  margin-bottom: 48px;
  align-items: center;
  padding: 24px;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  background: #ff7218;
  margin-top: 80px;
}

.contact_access:not(:last-child) {
}

.contact_access dt {
  color: #111;
  margin: 0 auto;
  display: flex;
  align-items: center;
}

.contact_access dd {
}

.contact_access dd iframe {
  width: 100%;
  height: 320px;
  display: block;
}

.contact_access_name {
  color: #fff;
  font-size: 22px;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  margin-right: 20px;
}

.contact_access_address {
  color: #fff;
  display: inline-block;
  font-size: 40px;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .contact_access {
    display: flex;
    margin-bottom: 48px;
    align-items: center;
    padding: 24px;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    background: #ff7218;
    margin-top: 80px;
    flex-wrap: wrap;
  }

  .contact_access:not(:last-child) {
  }

  .contact_access dt {
    color: #222;
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
  }

  .contact_access dd {
  }

  .contact_access dd iframe {
    width: 100%;
    height: 320px;
    display: block;
  }

  .contact_access_name {
    color: #fff;
    font-size: 22px;
    line-height: 1;
    letter-spacing: 0.1em;
    display: inline-block;
    margin-right: 0;
  }

  .contact_access_address {
    color: #fff;
    display: inline-block;
    font-size: 32px;
    font-weight: bold;
  }
}

form .privacy_box {
  padding: 20px;
  width: 100%;
  background: #eff0f5;
  margin-top: 30px;
}

form .privacy_box .sentence {
}

form .privacy_box .sentence p {
  font-size: 15px;
  margin: 0 0 8px 0;
  text-align: justify;
}

form .privacy_box .sentence p br {
  display: none;
}

form .privacy_box .sentence p a {
  color: #ff7218;
  font-weight: bold;
  transition: 0.3s ease-in-out;
  display: inline-block;
}

form .privacy_box .sentence p a:hover {
  color: #ff7218;
  font-weight: bold;
  transition: 0.3s ease-in-out;
}

form .privacy_box .sentence #check_area {
  padding: 15px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  margin: 20px auto 0;
  width: 100%;
  font-weight: bold;
}

form .privacy_box .sentence #check_area #check {
  margin-right: 8px;
}

form .privacy_box .sentence #check_area label {
  cursor: pointer;
  font-weight: bold;
  font-size: 16px;
}

.tk_block {
  margin: 30px auto 50px;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #fff;
  padding: 0;
}

.tk_block .sente {
  margin: 0px auto 60px;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: center;
}

.tk_block .btn01 a {
  letter-spacing: 0.05em;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 10px 30px;
  background: #ff7218;
  margin: 0px auto 0;
  display: block;
  text-align: center;
  max-width: 300px;
  border: none;
  transition: 0.3s ease-in-out;
  border: 1px #ff7218 solid;
  border-radius: 0;
  letter-spacing: 0;
}

.tk_block .btn01 a:hover {
  transition: 0.3s ease-in-out;
  color: #ff7218;
  background: #fff;
  border: 1px #ff7218 solid;
}

.btn01 {
  display: block;
  margin: 30px auto;
  transition: 0.3s ease-in-out;
  position: relative;
  right: 0;
}

.btn01 a {
  width: 100%;
  color: #ff7218;
  background: #fff;
  display: block;
  padding: 10px 30px;
  text-align: center;
  transition: 0.3s ease-in-out;
  font-weight: bold;
  font-size: 24px;
  border: solid 1px #ff7218;
}

.btn01 a i {
}

.btn01:hover a {
  transition: 0.3s ease-in-out;
  color: #fff;
  background: #ff7218;
  border: 1px #fff solid;
}

input[type="submit"] {
  appearance: none;
}

input[type="reset"] {
  appearance: none;
}

.form_back {
	background: #efefef;
  padding: 20px;
}

.one {
  position: relative;
  display: block;
  margin: 5px 0px;
  padding-left: 28px;
  cursor: pointer;
  user-select: none;
  width: 100%;
}