@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;
  }
}

.wrapper {
  background: #fff;
  margin: min(0.99338vw,15px) 0 0;
  padding: min(2.64901vw,40px) min(1.98675vw,30px) min(3.97351vw,60px);
  border-radius: min(0.5298vw,8px);
}

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

.wrapper .ttl {
  text-align: center;
  font-size: min(1.5894vw,24px);
  margin-bottom: min(1.8543vw,28px);
}

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

.wrapper .total {
  margin-bottom: min(0.66225vw,10px);
}

@media screen and (max-width: 768px) {
  .wrapper .total {
    margin-bottom: 2.08333vw;
  }
}

.wrapper .total:last-of-type {
  padding: 0 min(3.70861vw,56px);
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .wrapper .total:last-of-type {
    padding: 0 5.20833vw;
  }
}

.wrapper .total p {
  text-align: right;
  font-size: min(1.3245vw,20px);
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .wrapper .total p {
    font-size: 4.42708vw;
  }
}

.wrapper .total p span {
  font-size: min(1.72185vw,26px);
  padding-left: min(0.39735vw,6px);
}

@media screen and (max-width: 768px) {
  .wrapper .total p span {
    font-size: 5.46875vw;
    padding-left: 1.30208vw;
  }
}

.wrapper .total.col {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: end;
}

@media screen and (max-width: 768px) {
  .wrapper .total.col {
    display: block;
  }
}

.wrapper .total.col p + p {
  margin-left: min(2.64901vw,40px);
}

@media screen and (max-width: 768px) {
  .wrapper .total.col p + p {
    margin-left: 0;
  }
}

.wrapper .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) {
  .wrapper .error {
    margin-top: 2.34375vw;
    font-size: 3.38542vw;
  }
}

.wrapper button {
  padding: 0;
  border: none;
  outline: none;
  font: inherit;
  color: inherit;
  background: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}

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

.quote_detail {
  padding: min(3.97351vw,60px) 0 0;
  border-top: 1px solid #67C467;
}

@media screen and (max-width: 768px) {
  .quote_detail {
    padding: 7.8125vw 0 0;
    border-top: 0.26042vw solid #67C467;
  }
}

.quote_detail .quote_subtotal {
  padding: 0 0 min(4.76821vw,72px);
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal {
    padding: 0 0 10.41667vw;
  }
}

.quote_detail .quote_subtotal .scroll {
  background: #F8F8F8;
  text-align: left;
  padding: min(1.72185vw,26px) min(0.92715vw,14px) min(1.72185vw,26px) min(3.97351vw,60px);
  border: 1px solid #333;
  border-radius: min(0.39735vw,6px);
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .scroll {
    height: 62.5vw;
    padding: 5.85938vw 3.25521vw 5.85938vw 5.85938vw;
    border: 0.26042vw solid #333;
    border-radius: 1.30208vw;
  }
}

.quote_detail .quote_subtotal .scroll > div {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  padding-right: min(11.92053vw,180px);
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .scroll > div {
    padding-right: 3.90625vw;
  }
}

.quote_detail .quote_subtotal .scroll > div::-webkit-scrollbar {
  width: min(0.5298vw,8px);
}

.quote_detail .quote_subtotal .scroll > div::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.2);
  border: none;
  border-radius: min(0.39735vw,6px);
}

.quote_detail .quote_subtotal .scroll > div h3 {
  font-size: min(1.3245vw,20px);
  margin-bottom: min(0.92715vw,14px);
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .scroll > div h3 {
    font-size: 4.42708vw;
    margin-bottom: 2.60417vw;
  }
}

.quote_detail .quote_subtotal .scroll > div h4 {
  margin-bottom: min(1.3245vw,20px);
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .scroll > div h4 {
    margin-bottom: 3.90625vw;
  }
}

.quote_detail .quote_subtotal .scroll > div p {
  font-weight: 400;
}

.quote_detail .quote_subtotal .scroll > div p:not(:last-child) {
  margin-bottom: 1em;
}

.quote_detail .quote_subtotal .scroll > div .disc {
  display: block;
  text-indent: -.5em;
  padding-left: .5em;
  margin: 0.25em 0;
}

.quote_detail .quote_subtotal .scroll > div .disc .coution {
  font-size: 0.9em;
}

.quote_detail .quote_subtotal .scroll > div .coution {
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}

.quote_detail .quote_subtotal .scroll > div .number {
  display: block;
  text-indent: -2em;
  padding-left: 2em;
}

.quote_detail .quote_subtotal .subtotal {
  text-align: center;
  font-size: min(1.78808vw,27px);
  margin: min(2.64901vw,40px) 0 0;
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .subtotal {
    font-size: 5.72917vw;
    margin: 7.8125vw 0 0;
  }
}

.quote_detail .quote_subtotal .subtotal span {
  padding: 0 min(0.92715vw,14px);
  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%);
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .subtotal span {
    padding: 0 2.60417vw;
  }
}

.quote_detail .quote_subtotal .total {
  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;
}

.quote_detail .quote_subtotal .total p + p {
  margin-left: min(2.64901vw,40px);
}

@media screen and (max-width: 768px) {
  .quote_detail .quote_subtotal .total p + p {
    margin-left: 0;
  }
}

.quote_detail .customer_info {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
  padding: min(1.98675vw,30px) 0;
  border-bottom: 1px solid rgba(51, 51, 51, 0.2);
}

@media screen and (max-width: 768px) {
  .quote_detail .customer_info {
    display: block;
    padding: 7.8125vw 0;
    border-bottom: 0.26042vw solid rgba(51, 51, 51, 0.2);
  }
}

.quote_detail .customer_info_col {
  width: calc(100% / 2);
  padding: min(1.98675vw,30px) 0 min(1.98675vw,30px) min(3.97351vw,60px);
}

.quote_detail .customer_info_col:last-of-type {
  border-left: 1px solid rgba(51, 51, 51, 0.2);
}

@media screen and (max-width: 768px) {
  .quote_detail .customer_info_col:last-of-type {
    border-left: 0;
    border-top: 0.26042vw solid rgba(51, 51, 51, 0.2);
    padding: 6.25vw 0 0;
    margin: 6.25vw 0 0;
  }
}

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

.quote_detail .customer_info_col h3 {
  font-size: min(1.13vw,17px);
  font-weight: 700;
  background-image: -webkit-linear-gradient(left, #67C467 0 30px, #e2e2e2 30px);
  background-image: -o-linear-gradient(left, #67C467 0 30px, #e2e2e2 30px);
  background-image: linear-gradient(90deg, #67C467 0 30px, #e2e2e2 30px);
  background-repeat: no-repeat;
  background-size: 100% 8%;
  background-position: bottom;
  display: inline-block;
  margin-bottom: min(1.32vw,20px);
  padding-bottom: min(0.53vw,8px);
}

@media screen and (max-width: 768px) {
  .quote_detail .customer_info_col h3 {
    font-size: 4.42708vw;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #67C467), color-stop(7.29167vw, #e2e2e2));
    background-image: -webkit-linear-gradient(left, #67C467 0 7.29167vw, #e2e2e2 7.29167vw);
    background-image: -o-linear-gradient(left, #67C467 0 7.29167vw, #e2e2e2 7.29167vw);
    background-image: linear-gradient(90deg, #67C467 0 7.29167vw, #e2e2e2 7.29167vw);
    margin-bottom: 5.20833vw;
    padding-bottom: 1.04167vw;
  }
}

.quote_detail .customer_info_col h3 span {
  font-size: min(0.86vw,13px);
  color: #2FA350;
  padding-left: min(0.53vw,8px);
}

@media screen and (max-width: 768px) {
  .quote_detail .customer_info_col h3 span {
    font-size: 2.86458vw;
    padding-left: 1.04167vw;
  }
}

.quote_detail .customer_info_col p {
  font-weight: 400;
  line-height: 1.6;
}

.quote_detail .product_confirm {
  padding: min(3.97351vw,60px) 0 0;
}

@media screen and (max-width: 768px) {
  .quote_detail .product_confirm {
    padding: 7.8125vw 0 0;
  }
}

.quote_detail .product_confirm_ttl {
  font-size: min(1.13vw,17px);
  font-weight: 700;
  background-image: -webkit-linear-gradient(left, #67C467 0 30px, #e2e2e2 30px);
  background-image: -o-linear-gradient(left, #67C467 0 30px, #e2e2e2 30px);
  background-image: linear-gradient(90deg, #67C467 0 30px, #e2e2e2 30px);
  background-repeat: no-repeat;
  background-size: 100% 8%;
  background-position: bottom;
  display: inline-block;
  margin-left: min(3.70861vw,56px);
  margin-bottom: min(1.98vw,30px);
  padding-bottom: min(0.53vw,8px);
}

@media screen and (max-width: 768px) {
  .quote_detail .product_confirm_ttl {
    font-size: 4.42708vw;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #67C467), color-stop(7.29167vw, #e2e2e2));
    background-image: -webkit-linear-gradient(left, #67C467 0 7.29167vw, #e2e2e2 7.29167vw);
    background-image: -o-linear-gradient(left, #67C467 0 7.29167vw, #e2e2e2 7.29167vw);
    background-image: linear-gradient(90deg, #67C467 0 7.29167vw, #e2e2e2 7.29167vw);
    margin-left: 0;
    margin-bottom: 6.51042vw;
    padding-bottom: 1.04167vw;
  }
}

.quote_detail .product_confirm_ttl.mg_l0 {
  margin-left: 0;
}

.quote_detail .product_confirm_ttl span {
  font-size: min(0.86vw,13px);
  color: #2FA350;
  padding-left: min(0.53vw,8px);
}

@media screen and (max-width: 768px) {
  .quote_detail .product_confirm_ttl span {
    font-size: 2.86458vw;
    padding-left: 1.04167vw;
  }
}

.quote_detail 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;
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center;
  padding: 0 min(3.70861vw,56px) min(3.31126vw,50px);
  margin: 0 0 min(3.31126vw,50px);
  border-bottom: 1px solid rgba(51, 51, 51, 0.2);
}

.quote_detail dl:last-of-type {
  margin: 0 0 min(0.66225vw,10px);
}

@media screen and (max-width: 768px) {
  .quote_detail dl:last-of-type {
    margin: 0 0 1.5625vw;
  }
}

@media screen and (max-width: 768px) {
  .quote_detail dl {
    display: block;
    padding: 0 0 7.8125vw;
    margin: 0 0 7.8125vw;
    border-bottom: 0.26042vw solid rgba(51, 51, 51, 0.2);
  }
}

.quote_detail dl dt {
  width: 31%;
  aspect-ratio: 98 / 71;
}

@media screen and (max-width: 768px) {
  .quote_detail dl dt {
    width: 100%;
    margin-bottom: 4.94792vw;
  }
}

.quote_detail dl dt img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.quote_detail dl dd {
  width: 65%;
  line-height: 1.6;
}

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

.quote_detail dl dd .order_type {
  display: inline-block;
  background: #EFB33E;
  font-size: min(0.7947vw,12px);
  color: #fff;
  padding: min(0.13245vw,2px) min(0.5298vw,8px);
  border-radius: min(0.33113vw,5px);
}

@media screen and (max-width: 768px) {
  .quote_detail dl dd .order_type {
    font-size: 3.125vw;
    padding: 0.52083vw 3.125vw;
    border-radius: 1.30208vw;
  }
}

.quote_detail dl dd .name {
  font-size: min(1.12583vw,17px);
  margin: min(0.5298vw,8px) 0;
}

@media screen and (max-width: 768px) {
  .quote_detail dl dd .name {
    font-size: 3.90625vw;
    margin: 1.04167vw 0 3.125vw;
  }
}

.quote_detail dl dd ul {
  margin-bottom: min(0.7947vw,12px);
}

@media screen and (max-width: 768px) {
  .quote_detail dl dd ul {
    margin-bottom: 2.60417vw;
  }
}

.quote_detail dl dd ul li {
  font-weight: 400;
}

.quote_detail dl dd .amount {
  font-size: min(1.3245vw,20px);
  margin-bottom: min(0.92715vw,14px);
}

@media screen and (max-width: 768px) {
  .quote_detail dl dd .amount {
    font-size: 4.94792vw;
    margin-bottom: 2.60417vw;
  }
}

.quote_detail dl dd button {
  padding: min(0.5298vw,8px) min(1.3245vw,20px);
  font-size: min(0.92715vw,14px);
  border-radius: min(0.39735vw,6px);
  background: #D5D3D3;
}

@media screen and (max-width: 768px) {
  .quote_detail dl dd button {
    padding: 1.30208vw 5.46875vw;
    font-size: 3.64583vw;
    border-radius: 1.30208vw;
  }
}

.quote_detail .note {
  padding: min(1.98675vw,30px) min(3.70861vw,56px) 0;
}

@media screen and (max-width: 768px) {
  .quote_detail .note {
    padding: 7.8125vw 0 0;
  }
}

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

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

.quote_detail .note .textarea textarea {
  width: calc(100% - min(2.38vw,36px));
}

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

.quote_detail .thanks_text {
  text-align: center;
  font-size: min(1.12583vw,17px);
}

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

.quote_detail .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) {
  .quote_detail .top_back {
    width: 100%;
    line-height: 11.71875vw;
    border-radius: 1.04167vw;
    font-size: 4.16667vw;
    margin: 7.8125vw auto 0;
  }
}

.quote_detail .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) {
  .quote_detail .top_back::after {
    width: 2.60417vw;
    height: 2.60417vw;
    border-top: solid 0.52083vw #fff;
    border-right: solid 0.52083vw #fff;
    right: 5.20833vw;
  }
}

.quote_detail .input_item dl {
  -webkit-box-align: inherit;
  -ms-flex-align: inherit;
  align-items: inherit;
}

.quote_detail .input_item dl dt {
  width: 20%;
  font-size: min(0.99338vw,15px);
  font-weight: 700;
  aspect-ratio: inherit;
}

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

.quote_detail .input_item dl dt .item {
  position: relative;
}

.quote_detail .input_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) {
  .quote_detail .input_item dl dt .item::after {
    font-size: 3.38542vw;
    border-radius: 1.04167vw;
    margin-left: 1.82292vw;
    padding: 0 2.60417vw;
  }
}

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

.quote_detail .input_item dl dd {
  width: 75%;
  font-weight: 400;
}

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

.quote_detail .input_item dl dd .radio {
  display: -webkit-box;
  /*Android4.3*/
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  /*PC-Safari,iOS8.4*/
  display: flex;
}

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

.quote_detail .input_item dl dd .radio li + li {
  margin-left: min(1.98675vw,30px);
}

@media screen and (max-width: 768px) {
  .quote_detail .input_item dl dd .radio li + li {
    margin: 3.125vw 0 0;
  }
}

.quote_detail .input_item dl dd input[type="radio"] {
  display: none;
}

.quote_detail .input_item dl dd 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) {
  .quote_detail .input_item dl dd input[type="radio"] + span {
    font-size: 3.90625vw;
    padding-left: 8.85417vw;
  }
}

.quote_detail .input_item dl dd 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) {
  .quote_detail .input_item dl dd input[type="radio"] + span::before {
    width: 5.20833vw;
    height: 5.20833vw;
    border: solid 0.26042vw #333;
  }
}

.quote_detail .input_item dl dd 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) {
  .quote_detail .input_item dl dd input[type="radio"] + span::after {
    border: solid 0.26042vw transparent;
    width: 3.125vw;
    height: 3.125vw;
    left: 2.60417vw;
    padding: 0.26042vw;
  }
}

.quote_detail .input_item dl dd input[type="radio"]:checked + span::after {
  opacity: 1;
}

.quote_detail .input_item dl dd ::-webkit-input-placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.quote_detail .input_item dl dd :-ms-input-placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.quote_detail .input_item dl dd ::-ms-input-placeholder {
  color: rgba(51, 51, 51, 0.5);
}

.quote_detail .input_item dl dd ::placeholder {
  color: rgba(51, 51, 51, 0.5);
}

@media screen and (max-width: 768px) {
  .quote_detail .input_item dl dd ::-webkit-input-placeholder {
    font-size: 3.125vw;
  }
  .quote_detail .input_item dl dd :-ms-input-placeholder {
    font-size: 3.125vw;
  }
  .quote_detail .input_item dl dd ::-ms-input-placeholder {
    font-size: 3.125vw;
  }
  .quote_detail .input_item dl dd ::placeholder {
    font-size: 3.125vw;
  }
}

.quote_detail .input_item dl dd textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
}

.quote_detail .input_item dl dd textarea {
  font-size: min(0.99338vw,15px);
  width: calc(100% - min(2.38vw,36px));
}

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

.quote_detail .input_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) {
  .quote_detail .input_item dl dd .textarea {
    border: solid 0.26042vw #707070;
    padding: 3.125vw;
    border-radius: 1.04167vw;
  }
}

.quote_detail .input_item dl dd .note {
  display: inline-block;
  text-align: left;
  text-indent: -1em;
  margin: min(0.5298vw,8px) 0 0;
  padding: 0 0 0 1em;
  font-size: min(0.86093vw,13px);
  font-weight: 400;
  line-height: 1.5;
}

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

.quote_detail .input_item dl dd .note .red {
  color: #FF4B4B;
}

.btn_wrap {
  margin: min(3.97351vw,60px) 0 0;
}

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

.btn_wrap.mg0 {
  margin: 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(3.31126vw,50px);
}

@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: 5.20833vw;
  }
}

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

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

.btn_wrap ul li span {
  display: block;
  text-align: center;
  margin-bottom: min(0.5298vw,8px);
}

@media screen and (max-width: 768px) {
  .btn_wrap ul li span {
    margin-bottom: 1.30208vw;
  }
}

.btn_wrap ul li button,
.btn_wrap ul li a {
  width: 100%;
  height: min(3.97351vw,60px);
  margin: 0 auto;
  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(1.12583vw,17px);
  font-weight: 700;
  border-radius: min(0.2649vw,4px);
  background: #fff;
  border: 1px solid #67C467;
  color: #67C467;
}

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

.btn_wrap ul li button.login,
.btn_wrap ul li a.login {
  background: #67C467;
  color: #fff;
}

@media (any-hover: hover) {
  .btn_wrap ul li button,
  .btn_wrap ul li 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;
  }
  .btn_wrap ul li button:hover,
  .btn_wrap ul li a:hover {
    opacity: 0.7;
  }
}
