@charset "UTF-8";
/* Scss Document */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700|Rubik:400,500,700");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,500,700|Rubik:400,500,700");
@import url("https://fonts.googleapis.com/css?family=EB+Garamond");
@import url("https://fonts.googleapis.com/css?family=Josefin+Sans");

textarea,
select,
input[type=search],
input[type=password],
input[type=text] {
  background: #f8f9fa;
  padding: 5px;
  border: solid 1px #ccc;
  position: relative;
  font-size: min(2.8vw,14px); }
  @media screen and (max-width: 750px) {
    textarea,
    select,
    input[type=search],
    input[type=password],
    input[type=text] {
      padding: .5rem .5rem; } }

select.hissu,
input[type=password].hissu,
input[type=text].hissu {
  background: #fff1f1; }

input[type=password].hissu:focus,
input[type=text].hissu:focus {
  /*background: #fff;*/ }

/*input[type=password].hissu:valid,
input[type=text].hissu:valid{
	background: #fff;
}*/
.err {
  background: #f7e8e8; }

select {
  line-height: 1.8;
  height: 3.65rem;
  position: relative;
  top: 2px; }

.short {
  width: 100px; }
  @media screen and (max-width: 970px) {
    .short {
      width: 25%; } }
  @media screen and (max-width: 750px) {
    .short {
      width: 20%; } }

.middle {
  width: 35%; }

.middle-long {
  width: 290px; }
  @media screen and (max-width: 970px) {
    .middle-long {
      width: 100%; } }
  @media screen and (max-width: 750px) {
    .middle-long {
      width: 100%; } }

.long {
  width: 460px; }
  @media screen and (max-width: 970px) {
    .long {
      width: 100%; } }
  @media screen and (max-width: 750px) {
    .long {
      width: 100%; } }

.textarea_long {
  width: 800px;
  height: 180px; }
  @media screen and (max-width: 1170px) {
    .textarea_long {
      width: 600px; } }
  @media screen and (max-width: 970px) {
    .textarea_long {
      width: 450px; } }
  @media screen and (max-width: 750px) {
    .textarea_long {
      height: 6rem;
      width: 100%; } }

input[type=button] {
  border-radius: 1rem;
  background: #242424;
  padding: .5rem 1rem;
  color: #fff;
  text-align: center;
  font-size: min(2.8vw,14px);
  border: 0;
  cursor: pointer; }

select.error,
input[type=password].error,
input[type=text].error {
  border: solid 1px #953b3b; }

textarea::placeholder,
input::placeholder {
  color: #bbb; }

#btn_totop {
  bottom: 39px !important; }

.page-inquiry {
  padding: 120px 0 90px 0; }
  @media screen and (max-width: 750px) {
    .page-inquiry {
      padding: 100px 0 50px 0; } }

.page-inquiry h2 {
  margin: 0 auto 2em;
  font-size: min(5vw,32px);
  line-height: 1;
  margin-top: 0;
  text-align: center;
  font-family: "Noto Sans JP"; }
  @media screen and (max-width: 750px) {
    .page-inquiry h2 {
      margin-bottom: 0 auto 1em; }
    }

.page-inquiry h3 {
  margin-bottom: 30px; }

.btn_back {
  width: 100%;
  padding: 1rem 1.5rem !important;
  border-radius: 3rem !important; }

.form-caution {
  margin: 2em auto;
  text-align: center;
  font-size: min(2.8vw,14px);
  padding: 10px; }
  .form-caution span {
    color: #de0000; }
  @media screen and (max-width: 750px) {
    .form-caution {
      margin: 1em auto;
      padding: 0 ;} }

.login-form_error {
  margin-bottom: 30px;
  text-align: center; }
  @media screen and (max-width: 750px) {
    .login-form_error {
      margin-bottom: 6%; } }

.login-form_error_message {
  color: #953b3b;
  font-weight: bold; }

.block-form .long {
  width: 525px; }
  @media screen and (max-width: 750px) {
    .block-form .long {
      width: 100%; } }

.block-form .harf {
  width: 255px; }
  @media screen and (max-width: 750px) {
    .block-form .harf {
      width: 48%; } }

.block-form .short {
  width: 80px; }
  @media screen and (max-width: 750px) {
    .block-form .short {
      width: 20%; } }

.block-form_table_caution {
  padding-left: 1em; }
  @media screen and (max-width: 750px) {
    .block-form_table_caution {
      padding: .3rem 0 0 0;
      display: block; } }

.block-form_error-message {
  color: #953b3b;
  font-weight: bold;
  font-size: 16px;
  padding: 15px 10px;
  text-align: center;
  border: solid 2px #953b3b;
  margin: 30px 0; }
  .block-form_error-message ul {
    margin-bottom: 0;
    padding-left: 0; }
  .block-form_error-message li {
    list-style: none; }
  @media screen and (max-width: 750px) {
    .block-form_error-message {
      padding: 1rem;
      font-size: 0.85rem; } }

.block-form_table {
  margin: 2em 0;
  width: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  border-left: 1px solid rgba(0, 0, 0, 0.3); }
  @media screen and (max-width: 750px) {
    .block-form_table {
      margin: 1em 0;
    }
  }
.block-form_table th,
.block-form_table td {
  border-bottom: solid 1px #ccc;
  padding: 15px 10px; }
  @media screen and (max-width: 750px) {
    .block-form_table th,
    .block-form_table td {
      padding: 3% 3% 3% 0;
      display: block;
      width: 100%;
      box-sizing: border-box; } }

.block-form_table td .p-name {
  display: inline-block; }
  @media screen and (max-width: 970px) {
    .block-form_table td .p-name {
      display: block; } }

.block-form_table th {
  width: 30%;
  vertical-align: middle;
  background: #EEE;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  border-right: 1px solid rgba(0, 0, 0, 0.3);
  text-align: center;
  color: #000;
  font-size: min(2.8vw,14px);
  font-weight: 500;
  line-height: 1.4; }
  @media screen and (max-width: 750px) {
    .block-form_table th {
      padding: 1em;
      width: 100%;
      text-align: left;
      line-height: 1; } }

.checkelement {
  margin-right: 2rem; }

.hissu2::before {
  content: '＊';
  color: #de0000;
  font-size: min(2.4vw,12px);
  padding-left: .3rem;
  position: relative;
  top: -2px; }

.hissu {
  position: relative;
}
.hissu::before {
  content: '＊';
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%);
  color: #de0000;
  font-size: min(2.4vw,12px);
}

.th_caption,
.block-form_table th .caption {
  margin: 0.5em 0;
  padding: 0;
  color: #666666;
  font-size: min(2.4vw,12px);
  line-height: 1.4; }

.block-form_table td {
  width: 70%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  border-right: 1px solid rgba(0, 0, 0, 0.3);
  font-size: min(2.8vw,14px); }
  @media screen and (max-width: 750px) {
    .block-form_table td {
      padding: 0.75em;
      width: 100%;
     } }
.block-form_table .ul_checkbox  {
  overflow: hidden;}
.block-form_table .ul_checkbox li {
  float: left;
  margin-right: 1rem; }
  @media screen and (max-width: 750px) {
    .block-form_table .ul_checkbox li li {
      font-size: 1.4rem; } }

.block-form_table .ul_checkbox_known {
  border-bottom: solid 1px #ccc;
  padding-bottom: 1.25em;
  margin-bottom: 1.25rem; }
  @media screen and (max-width: 750px) {
    .block-form_table .ul_checkbox_known li {
      font-size: 1.4rem;
      display: block; } }
.block-form_table .ul_checkbox_known.btm {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.block-form_table .ul_checkbox_known input[type="checkbox"] {
  margin-right: 5px;
}

.block-form_table .ul_checkbox_known.underber-none {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0; }

.block-form_btns {
  margin-top: 1em;
  padding: 0.5em 0;
  width: 100%;
  background: #EEE;
  text-align: center; }

.block-form_btns.bg-non {
  background: none;
}

.block-form_btns_submit {
  display: inline-block;
  width: 80%;
  max-width: 300px; }
  @media screen and (max-width: 750px) {
    .block-form_btns_submit {
      display: block;
      margin: 0 auto;
      margin-bottom: 1vh; } }

.block-form_btns_cancel {
  display: inline-block; }

.block-news_table_address_wrap_caption {
  padding: 0.3em 0;
  margin: 0 0 0.3em;
  color: #242424; }

.block-news_table_address_wrap_detail {
  margin-bottom: 7px; }

.next-btn {
  margin-bottom: 0;
  padding: 1em 0;
  width: 100%;
  background: #00478b;
  border: 0;
  box-sizing: border-box;
  position: relative;
  display: block;
  text-align: center;
  color: #fff;
  font-size: min(3.6vw,18px);
  letter-spacing: 0.1em;
  line-height: 1;
  cursor: pointer; }

#form_submit::after {
  content: '▼';
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 50%;
  right: 1.5em;
  transform: translateY(-50%) rotate(-90deg);
  z-index: 1;
  color: #FFF;
  font-size: min(3.6vw,18px);
  line-height: 1;
  transition: transform 0.3s linear;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }

#form_submit:hover::after {
    right: 0.5em;
}

.block-flow {
  margin-bottom: 30px; }
  @media screen and (max-width: 750px) {
    .block-flow {
      margin-bottom: 1em; }
    }

.block-flow ol {
  display: flex;
  display: -ms-flexbox;
  justify-content: space-between;
  -ms-flex-pack: justify;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  padding-left: 0;
  font-size: min(3vw,16px);
  line-height: 1; }

.block-flow ol li {
  color: #a4a4a4;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 17%;
  height: 4rem;
  margin-right: calc(4rem/1.5);
  padding: 0 0 0 0.7rem;
  background: #eee;
  font-weight: bold; }
  @media screen and (max-width: 750px) {
    .block-flow ol li {
      height: 3rem;
      margin-right: calc(2.5rem/1.5);
      margin-bottom: 1vh; } }

.block-flow ol li .num {
  display: inline-block;
  margin: .3rem .2rem 0;
  padding-right: 0.25em;
  color: #a4a4a4;
  font-size: 1.4em; }

.block-flow ol li:after {
  display: block;
  position: absolute;
  top: 0;
  right: -4rem;
  width: calc(4rem/2);
  height: calc(4rem/2);
  border: calc(4rem/2) solid transparent;
  border-left: calc(4rem/2) solid #eee;
  content: ''; }
  @media screen and (max-width: 750px) {
    .block-flow ol li:after {
      right: -3rem;
      width: calc(3rem/2);
      height: calc(3rem/2);
      border: calc(3rem/2) solid transparent;
      border-left: calc(3rem/2) solid #eee; } }

.block-flow ol li.current {
  background: #00478b;
  color: #fff; }

.block-flow ol li.current:after {
  border-left: calc(4rem/2) solid #00478b; }
  @media screen and (max-width: 750px) {
    .block-flow ol li.current:after {
      border-left: calc(3rem/2) solid #00478b; } }

.block-flow ol li.current .num {
  color: #fff; }

.block-flow ol li:nth-child(3) {
  line-height: 1; }

.block-flow ol li:nth-child(3) p {
  margin-bottom: 0; }

.block-flow ol li:nth-child(3) p > span {
  font-size: 0.6rem;
  line-height: 1;
  font-weight: normal; }

.block-form_information {
  border: solid 1px #ccc;
  padding: 20px 25px;
  margin-bottom: 20px;
  text-align: center;
  font-size: min(2.8vw,14px); }
  .block-form_information h3 {
    margin-bottom: 1em; }
  @media screen and (max-width: 750px) {
    .block-form_information {
      font-size: 1.2rem; } }

.errs {
  color: #de0000;
  font-weight: bold;
  padding: 10px 20px;
  background: #f7e8e8;
  margin: 15px 0; }

.block-thanks h3 {
  margin-top: 20px; }

.now-caution {
  border: solid 3px #de0000;
  padding: 30px;
  margin-top: 30px;
  color: #de0000;
  font-size: 1.4rem;
  line-height: 1.6; }
  .now-caution h3 {
    font-size: 2.0rem;
    margin-bottom: 1rem; }
  .now-caution .now-caution_ex {
    background: #f0f0f0;
    padding: 20px 30px;
    color: #000;
    margin: 20px 0;
    font-weight: bold;
    font-size: 1.2rem;
    text-align: left; }



.contents {}

.h2_page {
  text-align: center;
}
.h2_page .en {
  display: block;
}
.h2_page .ja {
  display: block;
}

.footer_conv_tel {
  margin: 0 auto;
}
a.tel {
  color: #000;
  font-family: 'Yu Mincho Medium', 'YuMincho', 'Hiragino Mincho ProN W3', 'Noto Serif JP', serif;
}


input[type=radio]{
  vertical-align: middle;
}

.ul_checkbox label {
  vertical-align: middle;
}

#form_submit {
  position: relative;
}

#form_submit input.not {
  pointer-events: none;
  opacity: 0.5;
}

.ft-request {
  display: none;
}

.tokuten {
  margin: 0;
}

.block-form_table dl {
  margin-bottom: 0;
}
.block-form_table li.li-cap {
  font-size: 12px;
  line-height: 1.5;
  margin: 0.5em 0;
}

@media screen and (max-width: 750px) {
  .block-form_table dl {
    width: 100%;
  }
  .block-form_table dl input {
    width: 100%;
  }
}
