@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400&family=Noto+Serif+JP:wght@500&display=swap");
/* -----------------------------------------------------
	basic
----------------------------------------------------- */
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: 100%;
  font-size: min(0.99vw,15px);
  font-weight: 500;
  line-height: 1.8;
  color: #333;
  letter-spacing: 0.1em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}

@media screen and (max-width: 768px) {
  body {
    font-size: 3.64583vw;
  }
}

main {
  width: 100%;
  position: relative;
}

#contents {
  background: #f8f8f8;
  padding-top: min(5.29vw,80px);
}

@media screen and (max-width: 768px) {
  #contents {
    padding-top: 19.53125vw;
  }
}

.inner {
  max-width: min(79.37vw,1200px);
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .inner {
    max-width: 100%;
    padding: 0 4.16667vw;
  }
}

a {
  opacity: 1;
  -webkit-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  text-decoration: none;
}

a img {
  -webkit-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}

a img:hover {
  opacity: .8;
}

@media screen and (max-width: 768px) {
  a img:hover {
    opacity: 1;
  }
}

.en {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
}

.mt0 {
  margin-top: 0 !important;
}

/* -----------------------------------------------------
	br
----------------------------------------------------- */
br.pc {
  display: block;
}

@media screen and (max-width: 768px) {
  br.pc {
    display: none;
  }
}

br.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  br.sp {
    display: block;
  }
}

.text_area {
  padding-bottom: min(2.64901vw,40px);
  margin-bottom: min(3.31126vw,50px);
  border-bottom: 1px solid rgba(51, 51, 51, 0.5);
}

@media screen and (max-width: 768px) {
  .text_area {
    padding-bottom: 9.11458vw;
    margin-bottom: 10.41667vw;
  }
}

.text_area.no_line {
  padding-bottom: 0;
  margin-bottom: min(3.31126vw,50px);
  border-bottom: 0;
}

.text_area .ttl_l {
  text-align: center;
  font-size: min(1.5894vw,24px);
  margin-bottom: min(2.25166vw,34px);
}

@media screen and (max-width: 768px) {
  .text_area .ttl_l {
    text-align: left;
    font-size: 5.07813vw;
  }
}

.text_area .ttl_l span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgba(103, 196, 103, 0.15)));
  background: -webkit-linear-gradient(transparent 50%, rgba(103, 196, 103, 0.15) 50%);
  background: -o-linear-gradient(transparent 50%, rgba(103, 196, 103, 0.15) 50%);
  background: linear-gradient(transparent 50%, rgba(103, 196, 103, 0.15) 50%);
}

.text_area .text {
  text-align: center;
  font-size: min(0.99338vw,15px);
  font-weight: 400;
}

@media screen and (max-width: 768px) {
  .text_area .text {
    font-size: 3.64583vw;
  }
}

.text_area .text span {
  font-weight: 700;
}

.text_area .text + .text {
  margin-top: min(1.98675vw,30px);
}

@media screen and (max-width: 768px) {
  .text_area .text + .text {
    margin-top: 5.20833vw;
  }
}

.text_area .text.link {
  margin-top: min(0.99338vw,15px);
}

@media screen and (max-width: 768px) {
  .text_area .text.link {
    margin-top: 2.60417vw;
  }
}

.text_area .text.link a {
  color: #49AED3;
  font-weight: 700;
  border-bottom: 1px solid #49AED3;
}

.add_area {
  text-align: center;
  margin-bottom: min(3.97351vw,60px);
}

@media screen and (max-width: 768px) {
  .add_area {
    font-size: 3.90625vw;
    margin-bottom: 7.8125vw;
  }
}

.add_area p {
  color: #FF4B4B;
}

.add_area ul li {
  font-weight: 400;
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 768px) {
  .add_area ul li {
    text-align: left;
  }
}

.add_area ul li.none_indent {
  padding-left: 0;
  text-indent: 0;
}

.add_area ul li.none_indent a {
  display: inline-block;
  color: #49AED3;
  border-bottom: 1px solid #49AED3;
  margin: min(1.3245vw,20px) 0 min(1.98675vw,30px);
}

@media screen and (max-width: 768px) {
  .add_area ul li.none_indent a {
    margin: 2.60417vw 0 5.20833vw;
  }
}

/* -----------------------------------------------------
	form common
----------------------------------------------------- */
.form_item_wrap {
  background: #fff;
  margin: min(0.99338vw,15px) 0 0;
  padding: min(3.31126vw,50px) min(2.64901vw,40px) min(3.97351vw,60px);
  border-radius: min(0.5298vw,8px);
}

@media screen and (max-width: 768px) {
  .form_item_wrap {
    margin: 3.90625vw 0 0;
    padding: 5.46875vw 3.90625vw 7.8125vw;
    border-radius: 1.5625vw;
  }
}

.form_item_wrap h2:not(.ttl_l) {
  text-align: center;
  font-size: min(1.3245vw,20px);
  padding-bottom: min(1.98675vw,30px);
  margin-bottom: min(1.98675vw,30px);
  border-bottom: 1px solid #67C467;
}

@media screen and (max-width: 768px) {
  .form_item_wrap h2:not(.ttl_l) {
    text-align: left;
    font-size: 4.94792vw;
    padding-bottom: 5.20833vw;
    margin-bottom: 7.8125vw;
    border-bottom: 0.52083vw solid #67C467;
    line-height: 7.8125vw;
  }
}

.form_item_wrap h3 {
  text-align: center;
  font-size: min(1.12583vw,17px);
  padding-bottom: min(0.39735vw,6px);
  margin-bottom: min(2.64901vw,40px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .form_item_wrap h3 {
    text-align: left;
    font-size: 4.6875vw;
    padding-left: 3.90625vw;
    padding-bottom: 0;
    margin-bottom: 5.20833vw;
    border-left: 0.78125vw solid #67C467;
    line-height: 7.8125vw;
  }
}

.form_item_wrap h3::after {
  content: '';
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: min(1.72185vw,26px);
  height: min(0.06623vw,1px);
  background: #67C467;
}

@media screen and (max-width: 768px) {
  .form_item_wrap h3::after {
    content: none;
  }
}

.form_item_wrap .note_text {
  color: #FF4B4B;
  font-size: min(0.99338vw,15px);
  font-weight: 400;
  margin: min(2.64901vw,40px) 0 0;
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 768px) {
  .form_item_wrap .note_text {
    margin: 5.20833vw 0 0;
    font-size: 3.25521vw;
  }
}

.form_item_wrap .note_text span {
  font-weight: 700;
}

.form_item_wrap .note_text + .note_text {
  margin: min(1.19205vw,18px) 0 0;
}

@media screen and (max-width: 768px) {
  .form_item_wrap .note_text + .note_text {
    margin: 3.90625vw 0 0;
  }
}

.form_item_wrap .note_text2 {
  text-align: center;
  font-size: min(0.99338vw,15px);
  font-weight: 400;
  margin: min(2.64901vw,40px) 0 0;
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 768px) {
  .form_item_wrap .note_text2 {
    margin: 5.20833vw 0 0;
    font-size: 3.38542vw;
  }
}

.form_item_wrap .note_text2 a {
  color: #49AED3;
  border-bottom: 1px solid #49AED3;
}

/* -----------------------------------------------------
	form_item
----------------------------------------------------- */
.form_item dl {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify;
  /*IE10*/
  -webkit-box-pack: justify;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-justify-content: space-between;
  /* Safari6.1以降 */
  justify-content: space-between;
  border-bottom: solid 1px #D6D6D6;
  margin-bottom: min(2.51656vw,38px);
  padding-bottom: min(2.51656vw,38px);
}

@media screen and (max-width: 768px) {
  .form_item dl {
    display: block;
    border-bottom: solid 0.26042vw #D6D6D6;
    margin-bottom: 7.8125vw;
    padding-bottom: 7.8125vw;
  }
}

.form_item dl:last-of-type {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.form_item dl.login {
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
}

.form_item dl.login a {
  display: block;
  width: min(15.87vw,240px);
  font-size: min(0.86vw,13px);
  font-weight: 700;
  line-height: min(2.65vw,40px);
  text-align: center;
  border-radius: min(0.33vw,5px);
  background: #67C467;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .form_item dl.login a {
    width: 100%;
    font-size: 3.64583vw;
    line-height: 9.375vw;
    border-radius: 1.30208vw;
  }
}

@media (any-hover: hover) {
  .form_item dl.login a {
    opacity: 1;
    -webkit-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
    text-decoration: none;
  }
  .form_item dl.login a:hover {
    opacity: 0.7;
  }
}

.form_item dl .note {
  margin-top: min(0.5298vw,8px);
}

@media screen and (max-width: 768px) {
  .form_item dl .note {
    margin-top: 1.04167vw;
  }
}

.form_item dl .note li {
  font-size: min(0.86093vw,13px);
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (max-width: 768px) {
  .form_item dl .note li {
    font-size: 3.125vw;
  }
}

.form_item dl dt {
  width: 30%;
  font-size: min(0.99338vw,15px);
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .form_item dl dt {
    width: 100%;
    font-size: 4.16667vw;
  }
}

.form_item dl dt .item {
  position: relative;
}

.form_item dl dt .item::after {
  content: '';
  position: absolute;
  display: inline-block;
  font-size: min(0.7947vw,12px);
  font-weight: bold;
  text-align: center;
  color: #fff;
  border-radius: min(0.2649vw,4px);
  margin-left: min(0.66225vw,10px);
  padding: 0 min(0.7947vw,12px);
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

@media screen and (max-width: 768px) {
  .form_item dl dt .item::after {
    font-size: 3.38542vw;
    border-radius: 1.04167vw;
    margin-left: 1.82292vw;
    padding: 0 2.60417vw;
  }
}

.form_item dl dt .item.green::after {
  content: '必須';
  background: #67C467;
}

.form_item dl dt .item .add_f {
  position: absolute;
  left: 0;
  bottom: min(-1.3245vw,-20px);
}

@media screen and (max-width: 768px) {
  .form_item dl dt .item .add_f {
    bottom: -5.20833vw;
  }
}

.form_item dl dt .item b {
  display: inline-block;
}

.form_item dl dt .item b #content_require {
  color: #fff;
  font-size: min(0.7947vw,12px);
  font-weight: bold;
  border-radius: min(0.2649vw,4px);
  margin-left: min(0.66225vw,10px);
  padding: 0 min(0.7947vw,12px);
  background: #67C467;
}

@media screen and (max-width: 768px) {
  .form_item dl dt .item b #content_require {
    font-size: 3.38542vw;
    border-radius: 1.04167vw;
    margin-left: 1.82292vw;
    padding: 0 2.60417vw;
  }
}

.form_item dl dt .cap {
  display: inline-block;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
  font-size: min(0.99338vw,15px);
  font-weight: 400;
  line-height: 1.5;
  margin-top: 8px;
}

@media screen and (max-width: 768px) {
  .form_item dl dt .cap {
    font-size: 3.64583vw;
    margin-top: 1.04167vw;
  }
}

.form_item dl dt .cap .red {
  color: #db0011;
}

.form_item dl dd {
  width: 70%;
  font-weight: 400;
}

@media screen and (max-width: 768px) {
  .form_item dl dd {
    width: 100%;
    margin-top: 3.90625vw;
  }
}

.form_item dl dd .mt:not(:first-child) {
  margin-top: min(1.19205vw,18px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .mt:not(:first-child) {
    margin-top: 5.46875vw;
  }
}

@media screen and (max-width: 768px) {
  .form_item dl dd.sp_mt {
    margin-top: 9.375vw;
  }
}

.form_item dl dd .item_wrap {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  gap: min(1.98675vw,30px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap {
    display: block;
  }
}

.form_item dl dd .item_wrap.end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.form_item dl dd .item_wrap.end:last-of-type ul, .form_item dl dd .item_wrap.end:last-of-type .box {
  margin: 0 0;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap.end:last-of-type ul, .form_item dl dd .item_wrap.end:last-of-type .box {
    margin: 3.125vw 0 0;
  }
  .form_item dl dd .item_wrap.end:last-of-type ul.mt0, .form_item dl dd .item_wrap.end:last-of-type .box.mt0 {
    margin: 0 0;
  }
}

.form_item dl dd .item_wrap.end input[type="date"] {
  color: rgba(51, 51, 51, 0.5);
}

.form_item dl dd .item_wrap.end ul {
  width: 10vw;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap.end ul {
    width: 100%;
  }
}

.form_item dl dd .item_wrap.end .box {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  width: min(27.81457vw,420px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap.end .box {
    display: block;
    width: auto;
  }
}

.form_item dl dd .item_wrap.end .box .add_select {
  width: 50%;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap.end .box .add_select {
    width: 100%;
  }
}

.form_item dl dd .item_wrap.end .box .add_select .select {
  width: 100%;
}

.form_item dl dd .item_wrap.end .box span {
  display: inline-block;
  font-size: min(0.99338vw,15px);
  padding: min(0.2649vw,4px) min(0.66225vw,10px) 0 0;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap.end .box span {
    font-size: 3.90625vw;
    padding: 0 0;
  }
}

.form_item dl dd .item_wrap.end .date_text {
  font-size: min(0.86093vw,13px);
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap.end .date_text {
    font-size: 3.38542vw;
  }
}

.form_item dl dd .item_wrap ul, .form_item dl dd .item_wrap .box {
  width: calc(100% / 2 - 20px);
  margin: 0 0 min(1.3245vw,20px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap ul, .form_item dl dd .item_wrap .box {
    width: 100%;
    margin: 0 0 5.20833vw;
  }
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap .col input[type="text"] {
    width: calc(50% - 1.30208vw);
  }
}

.form_item dl dd .item_wrap .box {
  width: 60%;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .item_wrap .box {
    width: 100%;
  }
}

.form_item dl dd .text {
  font-size: min(0.86093vw,13px);
  margin-top: min(0.39735vw,6px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .text {
    font-size: 3.38542vw;
    margin-top: 1.5625vw;
  }
}

.form_item dl dd .bold {
  font-size: min(0.86093vw,13px);
  font-weight: 700;
  margin-top: min(1.3245vw,20px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .bold {
    font-size: 3.38542vw;
    margin-top: 5.20833vw;
  }
}

.form_item dl dd .ttl {
  font-size: min(0.99338vw,15px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .ttl {
    font-size: 3.90625vw;
  }
}

.form_item dl dd .select {
  width: 50%;
  position: relative;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .select {
    width: 100%;
  }
}

.form_item dl dd .select::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 52%;
  right: min(0.99338vw,15px);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: min(0.39735vw,6px);
  height: min(0.39735vw,6px);
  border-style: solid;
  border-width: min(0.39735vw,6px) min(0.2649vw,4px) 0 min(0.2649vw,4px);
  border-color: #333 transparent transparent transparent;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .select::after {
    right: 3.90625vw;
    width: auto;
    height: auto;
    border-width: 2.60417vw 1.82292vw 0 1.82292vw;
  }
}

.form_item dl dd .select select {
  color: #333;
  background: #fff;
  border: solid 1px #707070;
  height: min(2.25166vw,34px);
  padding: 0 min(1.0596vw,16px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .select select {
    border: solid 0.26042vw #707070;
    height: 10.41667vw;
    padding: 0 3.125vw;
    line-height: 10.41667vw;
  }
}

.form_item dl dd .textarea {
  border: solid 1px #707070;
  padding: min(1.0596vw,16px);
  border-radius: min(0.2649vw,4px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .textarea {
    border: solid 0.26042vw #707070;
    padding: 3.125vw;
    border-radius: 1.04167vw;
  }
}

.form_item dl dd .textarea + .col2 {
  margin-top: min(2.64901vw,40px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .textarea + .col2 {
    margin-top: 8.33333vw;
  }
}

.form_item dl dd .col1 li + li {
  margin-top: min(1.5894vw,24px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col1 li + li {
    margin-top: 5.20833vw;
  }
}

.form_item dl dd .col1 + .col1 {
  margin-top: min(1.3245vw,20px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col1 + .col1 {
    margin-top: 5.20833vw;
  }
}

.form_item dl dd .col2 {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
  gap: 30px;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 5.20833vw;
  }
}

.form_item dl dd .col2 li {
  width: calc(38%);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col2 li {
    width: 100%;
  }
}

.form_item dl dd .col2 li div {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
}

.form_item dl dd .col2 li div span {
  display: inline-block;
  width: min(3.97351vw,60px);
  font-size: min(0.99338vw,15px);
  text-align: right;
  margin: 0 min(0.66225vw,10px) 0 0;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col2 li div span {
    width: 14.0625vw;
    text-align: left;
    font-size: 3.90625vw;
  }
}

.form_item dl dd .col2:nth-of-type(n+2) {
  margin-top: min(1.98675vw,30px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col2:nth-of-type(n+2) {
    margin-top: 8.33333vw;
  }
}

.form_item dl dd .col2 + .textarea {
  margin-top: min(1.5894vw,24px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col2 + .textarea {
    margin-top: 5.20833vw;
  }
}

.form_item dl dd .col3 {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify;
  /*IE10*/
  -webkit-box-pack: justify;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-justify-content: space-between;
  /* Safari6.1以降 */
  justify-content: space-between;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
}

.form_item dl dd .col3 li {
  width: calc(50% - 16px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col3 li {
    width: calc(50% - 2.08333vw);
  }
  .form_item dl dd .col3 li.w_sp {
    width: 100%;
  }
}

.form_item dl dd .col3 + .textarea {
  margin-top: min(1.5894vw,24px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .col3 + .textarea {
    margin-top: 5.20833vw;
  }
}

.form_item dl dd .radio li + li {
  margin-top: min(0.66225vw,10px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .radio li + li {
    margin-right: 5.20833vw;
  }
}

.form_item dl dd .upload {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
}

.form_item dl dd .upload .btn_upload {
  width: min(10.59603vw,160px);
  line-height: min(2.64901vw,40px);
  background: #D5D3D3;
  text-align: center;
  font-size: min(0.99338vw,15px);
  border-radius: min(0.2649vw,4px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .upload .btn_upload {
    width: 36.45833vw;
    line-height: 11.71875vw;
    border-radius: 1.04167vw;
    font-size: 3.64583vw;
  }
}

.form_item dl dd .upload .file_name {
  margin-left: min(1.5894vw,24px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .upload .file_name {
    margin-left: 3.125vw;
    font-size: 3.125vw;
  }
}

.form_item dl dd .checkbox-inner {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-wrap: wrap;
  /*IE10*/
  -webkit-flex-wrap: wrap;
  /*PC-Safari,iOS8.4*/
  flex-wrap: wrap;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
  gap: min(1.5894vw,24px) min(1.98675vw,30px);
  width: 100%;
}

.form_item dl dd .checkbox-inner input[type="checkbox"] {
  display: none;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .checkbox-inner {
    gap: 3.125vw 7.29167vw;
  }
}

.form_item dl dd .checkbox-inner label span {
  padding-left: min(2.12vw,32px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .checkbox-inner label span {
    font-size: 3.125vw;
    padding-left: 7.29167vw;
  }
}

.form_item dl dd .checkbox-inner label span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: min(1.32vw,20px);
  height: min(1.32vw,20px);
  border: 1px solid  #999;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .checkbox-inner label span::before {
    width: 4.16667vw;
    height: 4.16667vw;
    border: 0.26042vw solid #999;
  }
}

.form_item dl dd .checkbox-inner label input:checked + span::after {
  content: "";
  display: block;
  position: absolute;
  top: -.6em;
  left: .8em;
  width: min(0.53vw,8px);
  height: min(1.59vw,24px);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom: min(0.2vw,3px) solid #2FA350;
  border-right: min(0.2vw,3px) solid #2FA350;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .checkbox-inner label input:checked + span::after {
    top: -1.5625vw;
    left: 2.08333vw;
    width: 2.08333vw;
    height: 5.20833vw;
    border-bottom: 0.78125vw solid #2FA350;
    border-right: 0.78125vw solid #2FA350;
  }
}

.form_item dl dd .cap_text {
  font-size: min(0.99338vw,15px);
  margin-top: min(1.0596vw,16px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .cap_text {
    font-size: 3.125vw;
    margin-top: 5.20833vw;
  }
}

.form_item dl dd .error {
  margin-top: min(0.5298vw,8px);
  color: #FF4B4B;
  font-size: min(0.92715vw,14px);
  font-weight: 700;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .form_item dl dd .error {
    margin-top: 2.34375vw;
    font-size: 3.38542vw;
  }
}

.form_item dl dd .example_text {
  margin-bottom: min(1.0596vw,16px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .example_text {
    margin-bottom: 4.16667vw;
  }
}

.form_item dl dd .example_text .important {
  color: #FF4B4B;
}

.form_item dl dd .example_text span {
  font-weight: 700;
}

.form_item dl dd .example_text p + p {
  margin-top: min(0.5298vw,8px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .example_text p + p {
    margin-top: 2.08333vw;
  }
}

.form_item dl dd .cap {
  display: inline-block;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
  font-size: min(0.99338vw,15px);
  font-weight: 700;
  line-height: 1.5;
  margin: min(1.5894vw,24px) 0 min(0.5298vw,8px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .cap {
    font-size: 3.64583vw;
    margin-top: 1.04167vw;
  }
}

.form_item dl dd .red {
  color: #FF4B4B;
}

.form_item dl dd .fwb {
  font-weight: 700;
}

.form_item dl dd .mt0 {
  margin-top: 0;
}

.form_item dl dd .bg_yellow {
  background: #fff000;
}

.form_item dl dd .fz_l {
  font-size: min(1.3245vw,20px);
}

@media screen and (max-width: 768px) {
  .form_item dl dd .fz_l {
    font-size: 3.90625vw;
  }
}

.form_item dl.control {
  border-bottom: solid 1px #D6D6D6;
  margin-bottom: min(2.51656vw,38px);
  padding-bottom: min(2.51656vw,38px);
}

@media screen and (max-width: 768px) {
  .form_item dl.control {
    border-bottom: solid 0.26042vw #D6D6D6;
    margin-bottom: 7.8125vw;
    padding-bottom: 7.8125vw;
  }
}

.form_item label {
  cursor: pointer;
}

.form_item input[type="email"],
.form_item input[type="date"],
.form_item input[type="text"] {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

.form_item select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

.form_item textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
}

.form_item input[type="email"],
.form_item input[type="date"],
.form_item input[type="text"] {
  background: #fff;
  border: solid 1px #707070;
  height: min(1.98675vw,30px);
}

@media screen and (max-width: 768px) {
  .form_item input[type="email"],
  .form_item input[type="date"],
  .form_item input[type="text"] {
    border: solid 0.26042vw #707070;
    height: 10.41667vw;
  }
}

.form_item input[type="text"], .form_item select, .form_item input[type="date"], .form_item input[type="email"] {
  font-size: min(0.99338vw,15px);
  width: calc(100% - min(1.99vw,30px));
  padding: 0 min(1.0596vw,16px);
  border-radius: min(0.2649vw,4px);
}

@media screen and (max-width: 768px) {
  .form_item input[type="text"], .form_item select, .form_item input[type="date"], .form_item input[type="email"] {
    font-size: 4.16667vw;
    line-height: 13.02083vw;
    width: calc(100% - 7.8125vw);
    padding: 0 2.08333vw;
    border-radius: 1.04167vw;
  }
}

.form_item select {
  width: 100%;
}

.form_item textarea {
  font-size: min(1.19205vw,18px);
  width: calc(100% - min(2.38vw,36px));
}

@media screen and (max-width: 768px) {
  .form_item textarea {
    font-size: 4.16667vw;
    width: calc(100% - 4.16667vw);
  }
}

.form_item input[type="file"] {
  display: none;
}

.form_item input[type="radio"] {
  display: none;
}

.form_item input[type="radio"] + span {
  display: inline-block;
  cursor: pointer;
  padding-left: min(1.98675vw,30px);
  position: relative;
  font-size: min(0.99338vw,15px);
}

@media screen and (max-width: 768px) {
  .form_item input[type="radio"] + span {
    font-size: 3.90625vw;
    padding-left: 8.85417vw;
  }
}

.form_item input[type="radio"] + span::before {
  content: '';
  display: block;
  width: min(1.0596vw,16px);
  height: min(1.0596vw,16px);
  border-radius: 50vh;
  border: solid 1px #333;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
  .form_item input[type="radio"] + span::before {
    width: 5.20833vw;
    height: 5.20833vw;
    border: solid 0.26042vw #333;
  }
}

.form_item input[type="radio"] + span::after {
  content: '';
  background: #333333;
  border: solid 1px transparent;
  border-radius: 50vh;
  width: min(0.66225vw,10px);
  height: min(0.66225vw,10px);
  left: min(0.5298vw,8px);
  opacity: 0;
  padding: min(0.13245vw,2px);
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

@media screen and (max-width: 768px) {
  .form_item input[type="radio"] + span::after {
    border: solid 0.26042vw transparent;
    width: 3.125vw;
    height: 3.125vw;
    left: 2.60417vw;
    padding: 0.26042vw;
  }
}

.form_item input[type="radio"]:checked + span::after {
  opacity: 1;
}

.form_item ::-webkit-input-placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.form_item :-ms-input-placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.form_item ::-ms-input-placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.form_item ::placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.form_item .price input[type="text"]::-webkit-input-placeholder {
  text-align: right;
  color: #333333;
}

.form_item .price input[type="text"]:-ms-input-placeholder {
  text-align: right;
  color: #333333;
}

.form_item .price input[type="text"]::-ms-input-placeholder {
  text-align: right;
  color: #333333;
}

.form_item .price input[type="text"]::placeholder {
  text-align: right;
  color: #333333;
}

.form_item.confirm dl dt {
  margin-top: 0;
}

.form_item.confirm dl dt .item::after {
  content: none;
}

.form_item.confirm dl dd {
  font-size: min(0.99338vw,15px);
}

@media screen and (max-width: 768px) {
  .form_item.confirm dl dd {
    font-size: 3.90625vw;
  }
}

.form_item.confirm dl dd .result_list li {
  background: none;
  border: none;
  height: inherit;
  padding: 0;
}

.form_item.confirm dl dd .result_list li + li {
  margin-top: min(0.39735vw,6px);
}

@media screen and (max-width: 768px) {
  .form_item.confirm dl dd .result_list li + li {
    margin-top: 1.5625vw;
  }
}

.form_item.complete .text {
  font-size: min(1.0596vw,16px);
  text-align: center;
}

@media screen and (max-width: 768px) {
  .form_item.complete .text {
    font-size: 4.42708vw;
  }
}

.form_item.complete .top_back {
  display: block;
  width: calc(100% / 2);
  margin: min(2.64901vw,40px) auto 0;
  line-height: min(2.64901vw,40px);
  border-radius: min(0.2649vw,4px);
  font-size: min(1.19205vw,18px);
  font-weight: 700;
  color: #fff;
  text-align: center;
  background: #67C467;
  position: relative;
}

@media screen and (max-width: 768px) {
  .form_item.complete .top_back {
    width: 100%;
    line-height: 11.71875vw;
    border-radius: 1.04167vw;
    font-size: 4.16667vw;
    margin: 7.8125vw auto 0;
  }
}

.form_item.complete .top_back::after {
  content: '';
  width: min(0.66225vw,10px);
  height: min(0.66225vw,10px);
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  right: min(1.3245vw,20px);
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(45deg);
  -ms-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
}

@media screen and (max-width: 768px) {
  .form_item.complete .top_back::after {
    width: 2.60417vw;
    height: 2.60417vw;
    border-top: solid 0.52083vw #fff;
    border-right: solid 0.52083vw #fff;
    right: 5.20833vw;
  }
}

/*------------------------------------------------------------
.notes_required
------------------------------------------------------------*/
.notes_required .error {
  text-align: center;
  margin-top: min(0.5298vw,8px);
  color: #FF4B4B;
  font-size: min(0.92715vw,14px);
  font-weight: 700;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .notes_required .error {
    margin-top: 2.34375vw;
    font-size: 3.38542vw;
  }
}

.notes_required .checkBtn_area {
  text-align: center;
  margin: min(1.0596vw,16px) 0 0;
}

@media screen and (max-width: 768px) {
  .notes_required .checkBtn_area {
    margin: 5.20833vw 0 0;
  }
}

.notes_required label {
  color: #000;
  cursor: pointer;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
  position: relative;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .notes_required label {
    vertical-align: middle;
    line-height: 1.6;
    font-size: 3.64583vw;
  }
}

.notes_required label .label_inner {
  font-size: min(0.99338vw,15px);
  font-weight: 400;
}

@media screen and (max-width: 768px) {
  .notes_required label .label_inner {
    font-size: 3.90625vw;
  }
}

.notes_required label .label_inner:before {
  content: "";
  width: min(1.3245vw,20px);
  height: min(1.3245vw,20px);
  background: #fff;
  border: min(0.06623vw,1px) solid rgba(51, 51, 51, 0.5);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: min(-1.5894vw,-24px);
  margin-top: min(-0.46358vw,-7px);
}

@media screen and (max-width: 768px) {
  .notes_required label .label_inner:before {
    width: 6.51042vw;
    height: 6.51042vw;
    border: 0.26042vw solid rgba(51, 51, 51, 0.5);
    left: -8.07292vw;
    margin-top: -3.25521vw;
  }
}

.notes_required._check label .label_inner:after {
  content: '';
  width: min(0.7947vw,12px);
  height: min(0.39735vw,6px);
  border-top: min(0.19868vw,3px) solid #67C467;
  border-right: min(0.19868vw,3px) solid #67C467;
  -webkit-transform: rotate(130deg);
  -ms-transform: rotate(130deg);
  transform: rotate(130deg);
  position: absolute;
  top: min(0.39735vw,6px);
  left: min(-1.3245vw,-20px);
}

@media screen and (max-width: 768px) {
  .notes_required._check label .label_inner:after {
    width: 3.125vw;
    height: 1.5625vw;
    top: 1.17188vw;
    left: -6.51042vw;
    border-top: 0.78125vw solid #67C467;
    border-right: 0.78125vw solid #67C467;
  }
}

.notes_required label input {
  position: relative;
  z-index: -1;
  display: none;
}

/*------------------------------------------------------------
.btn_wrap
------------------------------------------------------------*/
.btn_wrap {
  margin: min(1.98675vw,30px) 0 0;
}

@media screen and (max-width: 768px) {
  .btn_wrap {
    margin: 7.8125vw 0 0;
  }
}

.btn_wrap ul {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: center;
  /*IE10*/
  -webkit-box-pack: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-justify-content: center;
  /* Safari6.1以降 */
  justify-content: center;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
  gap: min(1.0596vw,16px);
}

@media screen and (max-width: 768px) {
  .btn_wrap ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3.90625vw;
  }
}

.btn_wrap ul li {
  width: calc(50% / 2);
}

@media screen and (max-width: 768px) {
  .btn_wrap ul li {
    width: 100%;
  }
}

.btn_wrap ul li input {
  width: 100%;
  height: min(2.64901vw,40px);
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: center;
  /*IE10*/
  -webkit-box-pack: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-justify-content: center;
  /* Safari6.1以降 */
  justify-content: center;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
  font-size: min(0.99338vw,15px);
  font-weight: 700;
  cursor: pointer;
  border-radius: min(0.2649vw,4px);
  background: #fff;
  border: 1px solid #67C467;
  color: #67C467;
  outline: 0;
}

@media screen and (max-width: 768px) {
  .btn_wrap ul li input {
    height: 13.02083vw;
    font-size: 4.16667vw;
    border-radius: 1.04167vw;
    border: 0.26042vw solid #67C467;
  }
}

@media (any-hover: hover) {
  .btn_wrap ul li input {
    opacity: 1;
    -webkit-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
    text-decoration: none;
  }
  .btn_wrap ul li input:hover {
    opacity: 0.7;
  }
}

.btn_wrap ul li input[type="reset"] {
  background: #fff;
  color: #67C467;
}

.btn_wrap ul li.none_btnArea input[type="button"] {
  background: #67C467;
  color: #fff;
}

.btn_wrap ul li.btnArea input[type="button"] {
  background: #fff;
  color: #67C467;
  pointer-events: none;
}

.btn_wrap ul li.btnArea._check input[type="button"] {
  background: #67C467;
  color: #fff;
  pointer-events: auto;
}

/*------------------------------------------------------------
.info_wrap
------------------------------------------------------------*/
.info_wrap {
  margin: min(3.97351vw,60px) 0 0;
  padding: min(1.98675vw,30px) 0 0;
  border-top: 1px solid rgba(51, 51, 51, 0.5);
}

@media screen and (max-width: 768px) {
  .info_wrap {
    margin: 10.41667vw 0 0;
    padding: 7.8125vw 0 0;
    border-top: 0.26042vw solid rgba(51, 51, 51, 0.5);
  }
}

.info_wrap_text {
  text-align: left;
  font-size: min(0.99338vw,15px);
  font-weight: 400;
}

.info_wrap_text.indent {
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 768px) {
  .info_wrap_text {
    font-size: 3.125vw;
  }
}

.info_wrap_text:nth-of-type(n+2) {
  margin-top: 24px;
}

@media screen and (max-width: 768px) {
  .info_wrap_text:nth-of-type(n+2) {
    margin-top: 4.94792vw;
  }
}

.info_wrap_text strong {
  display: block;
}

.info_wrap_text a {
  color: #49AED3;
  border-bottom: 1px solid #49AED3;
}

.info_wrap_text a.tel {
  display: inline-block;
  color: #67C467;
  font-size: min(1.3245vw,20px);
  font-weight: 700;
  padding: 0 0 0 min(2.38411vw,36px);
  border-bottom: 0;
  vertical-align: sub;
  margin-right: min(0.39735vw,6px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .info_wrap_text a.tel {
    display: block;
    font-size: 4.94792vw;
    padding: 0 0 0 8.85417vw;
  }
}

.info_wrap_text a.tel::before {
  content: '';
  display: block;
  width: min(1.8543vw,28px);
  height: min(1.8543vw,28px);
  background: url(../img/service/common/lower_tel_icon.png) center top/cover no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
  .info_wrap_text a.tel::before {
    width: 7.29167vw;
    height: 7.29167vw;
  }
}

.info_wrap_text a.mail {
  font-size: min(1.3245vw,20px);
  font-weight: 700;
  border-bottom: 0;
}

@media screen and (max-width: 768px) {
  .info_wrap_text a.mail {
    font-size: 4.6875vw;
  }
}
