@charset "UTF-8";
/*================================================================
 *FILE          :simulation.css
 *DESCRIPTION   :resetはressを使用。環境変数とmixinは_mixin.scss内に記述。
                 それぞれfoundationよりインポート。
 *AUTHOR        :
 *--------------------------------------------------------------
 *(C)
=================================================================*/
/* フォント定設
-----------------------------------------------------------------*/
@font-face {
  font-family: "MyYuGothicM";
  font-weight: normal;
  src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular");
  /* 游ゴシックMediumが存在しないWindows8.1用 */
}
@font-face {
  font-family: "MyYuGothicM";
  font-weight: bold;
  src: local("YuGothic-Bold"), local("Yu Gothic Bold");
  /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
}
/*--------------------------------
PRICE SIMULATION
--------------------------------*/
.priceSimulation_inner {
  margin: 0 auto;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_inner {
    max-width: calc(1120 / 1280 * 100vw);
  }
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_inner .c-inner {
    padding-inline: 0;
  }
}

.priceSimulation_header {
  padding-bottom: 80px;
  border-bottom: 1px solid #dddddd;
}

@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_body {
    padding-top: calc(121 / 1280 * 100vw);
    padding-bottom: calc(120 / 1280 * 100vw);
    border-bottom: 1px solid #dddddd;
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_body {
    padding-top: calc(40 / 375 * 100vw);
  }
}

.priceSimulation_layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_layout {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: calc(80 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(82 / 375 * 100vw);
    padding: 0 calc(20 / 375 * 100vw);
  }
}

.priceSimulation_sidebar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background-color: #ffffff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_sidebar {
    position: sticky;
    top: calc(100 / 1280 * 100vw);
    width: calc(350 / 1280 * 100vw);
    min-height: calc(431 / 1280 * 100vw);
    margin-top: calc(13 / 1280 * 100vw);
    padding: calc(20 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_sidebar {
    padding: calc(20 / 375 * 100vw);
  }
}

.priceSimulation_totalLabel {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 300;
  letter-spacing: 0.05em;
  text-align: right;
  color: #000000;
  opacity: 0.5;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_totalLabel {
    margin-bottom: calc(28 / 1280 * 100vw);
    font-size: min(calc(12 / 1280 * 100vw), 16.8px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_totalLabel {
    margin-bottom: calc(24 / 375 * 100vw);
    font-size: min(calc(12 / 375 * 100vw), 16.8px);
  }
}

/* ▼ priceSimulation_currentInfo */
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_currentInfo {
    min-height: calc(100 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_currentInfo {
    min-height: calc(100 / 375 * 100vw);
  }
}

.priceSimulation_currentItem {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_currentItem {
    font-size: min(calc(11 / 1280 * 100vw), 15.4px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_currentItem {
    font-size: min(calc(11 / 375 * 100vw), 15.4px);
  }
}
.priceSimulation_currentItem + .priceSimulation_currentItem {
  margin-top: 8px;
}

.priceSimulation_totalHeading {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.3em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_totalHeading {
    margin-bottom: calc(31 / 1280 * 100vw);
    font-size: min(calc(20 / 1280 * 100vw), 28px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_totalHeading {
    margin-bottom: calc(25 / 375 * 100vw);
    font-size: min(calc(20 / 375 * 100vw), 28px);
  }
}

.priceSimulation_amount {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_amount {
    gap: calc(4 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_amount {
    gap: calc(4 / 375 * 100vw);
  }
}

.priceSimulation_amountNum {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 400;
  line-height: 1;
  color: #000000;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_amountNum {
    font-size: min(calc(45 / 1280 * 100vw), 63px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_amountNum {
    font-size: min(calc(40 / 375 * 100vw), 56px);
  }
}

.priceSimulation_amountSuffix {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_amountSuffix {
    margin-bottom: calc(8 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_amountSuffix {
    margin-bottom: calc(8 / 375 * 100vw);
  }
}

.priceSimulation_amountUnit {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.3em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_amountUnit {
    font-size: min(calc(25 / 1280 * 100vw), 35px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_amountUnit {
    font-size: min(calc(25 / 375 * 100vw), 35px);
  }
}

.priceSimulation_amountTax {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  text-align: right;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_amountTax {
    font-size: min(calc(12 / 1280 * 100vw), 16.8px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_amountTax {
    font-size: min(calc(12 / 375 * 100vw), 16.8px);
  }
}

@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_noteList {
    margin-top: calc(6 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_noteList {
    margin-top: calc(6 / 375 * 100vw);
  }
}

.priceSimulation_noteDivider {
  border: none;
  border-top: 1px solid #dddddd;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_noteDivider {
    margin: calc(20 / 1280 * 100vw) 0 calc(17 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_noteDivider {
    margin: calc(20 / 375 * 100vw) 0 calc(17 / 375 * 100vw);
  }
}

.priceSimulation_noteItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_noteItem {
    font-size: min(calc(11 / 1280 * 100vw), 15.4px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_noteItem {
    font-size: min(calc(11 / 375 * 100vw), 15.4px);
  }
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_noteItem + .priceSimulation_noteItem {
    margin-top: calc(2 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_noteItem + .priceSimulation_noteItem {
    margin-top: calc(2 / 375 * 100vw);
  }
}

.priceSimulation_noteMark {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_noteMark {
    width: calc(15 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_noteMark {
    width: calc(15 / 375 * 100vw);
  }
}

.priceSimulation_form {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 0;
}

.priceSimulation_step + .priceSimulation_step {
  position: relative;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_step + .priceSimulation_step {
    margin-top: calc(40 / 1280 * 100vw);
    padding-top: calc(40 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_step + .priceSimulation_step {
    margin-top: calc(40 / 375 * 100vw);
    padding-top: calc(43 / 375 * 100vw);
  }
}
.priceSimulation_step::before {
  position: absolute;
  top: 0;
  height: 1px;
  background-color: #dddddd;
  content: "";
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_step::before {
    left: calc(30 / 1280 * 100vw);
    width: calc(100% - calc(30 / 1280 * 100vw));
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_step::before {
    left: 0;
    width: 100%;
  }
}

.priceSimulation_stepTitle {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_stepTitle {
    margin-bottom: calc(15 / 1280 * 100vw);
    font-size: min(calc(18 / 1280 * 100vw), 25.2px);
    letter-spacing: 0.08em;
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_stepTitle {
    margin-bottom: calc(15 / 375 * 100vw);
    font-size: min(calc(16 / 375 * 100vw), 22.4px);
    letter-spacing: 0.3em;
  }
}

.priceSimulation_stepNote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  line-height: 1.45;
  letter-spacing: 0.1em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_stepNote {
    padding-left: calc(30 / 1280 * 100vw);
    font-size: min(calc(11 / 1280 * 100vw), 15.4px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_stepNote {
    font-size: min(calc(11 / 375 * 100vw), 15.4px);
  }
}

@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_stepHeader + .priceSimulation_sizeDisplay, .priceSimulation_stepHeader + .priceSimulation_optionGroup, .priceSimulation_stepHeader + .priceSimulation_qtyWrap {
    margin-top: calc(40 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_stepHeader + .priceSimulation_sizeDisplay, .priceSimulation_stepHeader + .priceSimulation_optionGroup, .priceSimulation_stepHeader + .priceSimulation_qtyWrap {
    margin-top: calc(20 / 375 * 100vw);
  }
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_stepHeader + .priceSimulation_panelNotes {
    margin-top: calc(10 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_stepHeader + .priceSimulation_panelNotes {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.priceSimulation_sizeDisplay,
.priceSimulation_qtyDisplay {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid #dddddd;
  outline: none;
  background-color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-align: center;
  color: #414141;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_sizeDisplay,
  .priceSimulation_qtyDisplay {
    width: calc(310 / 1280 * 100vw);
    height: calc(70 / 1280 * 100vw);
    font-size: min(calc(15 / 1280 * 100vw), 21px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_sizeDisplay,
  .priceSimulation_qtyDisplay {
    width: 100%;
    height: calc(60 / 375 * 100vw);
    font-size: min(calc(16 / 375 * 100vw), 22.4px);
  }
}
.priceSimulation_sizeDisplay span,
.priceSimulation_qtyDisplay span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_sizeDisplay span,
  .priceSimulation_qtyDisplay span {
    font-size: min(calc(15 / 1280 * 100vw), 21px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_sizeDisplay span,
  .priceSimulation_qtyDisplay span {
    font-size: min(calc(12 / 375 * 100vw), 16.8px);
  }
}
.priceSimulation_sizeDisplay.is-active,
.priceSimulation_qtyDisplay.is-active {
  background-color: #414141;
  color: #ffffff;
}
.priceSimulation_sizeDisplay.is-active span,
.priceSimulation_qtyDisplay.is-active span {
  color: #ffffff;
}
.priceSimulation_sizeDisplay.is-active .priceSimulation_qtyInput,
.priceSimulation_qtyDisplay.is-active .priceSimulation_qtyInput {
  color: #ffffff;
}
.priceSimulation_sizeDisplay.is-active .priceSimulation_qtyInput::-webkit-input-placeholder, .priceSimulation_qtyDisplay.is-active .priceSimulation_qtyInput::-webkit-input-placeholder {
  color: #ffffff;
  opacity: 0.5;
}
.priceSimulation_sizeDisplay.is-active .priceSimulation_qtyInput::-moz-placeholder, .priceSimulation_qtyDisplay.is-active .priceSimulation_qtyInput::-moz-placeholder {
  color: #ffffff;
  opacity: 0.5;
}
.priceSimulation_sizeDisplay.is-active .priceSimulation_qtyInput:-ms-input-placeholder, .priceSimulation_qtyDisplay.is-active .priceSimulation_qtyInput:-ms-input-placeholder {
  color: #ffffff;
  opacity: 0.5;
}
.priceSimulation_sizeDisplay.is-active .priceSimulation_qtyInput::-ms-input-placeholder, .priceSimulation_qtyDisplay.is-active .priceSimulation_qtyInput::-ms-input-placeholder {
  color: #ffffff;
  opacity: 0.5;
}
.priceSimulation_sizeDisplay.is-active .priceSimulation_qtyInput::placeholder,
.priceSimulation_qtyDisplay.is-active .priceSimulation_qtyInput::placeholder {
  color: #ffffff;
  opacity: 0.5;
}

@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_sizeDisplay {
    margin-left: calc(30 / 1280 * 100vw);
  }
}

.priceSimulation_qtyDisplay {
  overflow: hidden;
  padding: 0;
  cursor: text;
}

.priceSimulation_qtyInput {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 0;
  height: 100%;
  border: none;
  outline: none;
  background-color: transparent;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-align: center;
  color: #414141;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_qtyInput {
    font-size: min(calc(15 / 1280 * 100vw), 21px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_qtyInput {
    font-size: min(calc(16 / 375 * 100vw), 22.4px);
  }
}
.priceSimulation_qtyInput::-webkit-input-placeholder {
  color: #414141;
  opacity: 1;
}
.priceSimulation_qtyInput::-moz-placeholder {
  color: #414141;
  opacity: 1;
}
.priceSimulation_qtyInput:-ms-input-placeholder {
  color: #414141;
  opacity: 1;
}
.priceSimulation_qtyInput::-ms-input-placeholder {
  color: #414141;
  opacity: 1;
}
.priceSimulation_qtyInput::placeholder {
  color: #414141;
  opacity: 1;
}
.priceSimulation_qtyInput::-webkit-outer-spin-button, .priceSimulation_qtyInput::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
  appearance: none;
}

.priceSimulation_qtyStepper {
  position: relative;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  border-left: 1px solid #dddddd;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_qtyStepper {
    width: calc(40 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_qtyStepper {
    width: calc(40 / 375 * 100vw);
  }
}
.priceSimulation_qtyDisplay.is-active .priceSimulation_qtyStepper {
  border-color: #dddddd;
  background: #ffffff;
}

.priceSimulation_qtyStepperBtn {
  position: absolute;
  left: 50%;
  width: calc(24 / 1280 * 100vw);
  height: calc(20 / 1280 * 100vw);
  border: none;
  background-color: transparent;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  cursor: pointer;
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_qtyStepperBtn {
    width: calc(24 / 375 * 100vw);
    height: calc(20 / 375 * 100vw);
  }
}
.priceSimulation_qtyStepperBtn::before {
  position: absolute;
  left: 50%;
  width: calc(7 / 1280 * 100vw);
  height: calc(7 / 1280 * 100vw);
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  content: "";
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_qtyStepperBtn::before {
    width: calc(7 / 375 * 100vw);
    height: calc(7 / 375 * 100vw);
  }
}

.priceSimulation_qtyStepperBtn-up {
  top: 50%;
  -webkit-transform: translate(-50%, -100%);
  -ms-transform: translate(-50%, -100%);
  transform: translate(-50%, -100%);
}
.priceSimulation_qtyStepperBtn-up::before {
  top: 72%;
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
  -ms-transform: translate(-50%, -50%) rotate(-135deg);
  transform: translate(-50%, -50%) rotate(-135deg);
}

.priceSimulation_qtyStepperBtn-down {
  top: 50%;
}
.priceSimulation_qtyStepperBtn-down::before {
  top: 28%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.priceSimulation_sizeSelect {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  inset: 0;
}

.priceSimulation_optionGroup {
  display: -ms-grid;
  display: grid;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_optionGroup {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    gap: calc(24 / 1280 * 100vw);
    padding-left: calc(30 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_optionGroup {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    gap: calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
}

.priceSimulation_optionBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid #dddddd;
  background-color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: #414141;
  cursor: pointer;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_optionBtn {
    gap: calc(5 / 1280 * 100vw);
    height: calc(50 / 1280 * 100vw);
    font-size: min(calc(14 / 1280 * 100vw), 19.6px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_optionBtn {
    gap: calc(5 / 375 * 100vw);
    height: calc(50 / 375 * 100vw);
    font-size: min(calc(12 / 375 * 100vw), 16.8px);
  }
}
.priceSimulation_optionBtn.is-active {
  border-color: #414141;
  background-color: #414141;
  color: #ffffff;
}
.priceSimulation_optionBtn.is-disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.priceSimulation_optionBtnLabel {
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_optionBtnLabel {
    font-size: min(calc(14 / 1280 * 100vw), 19.6px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_optionBtnLabel {
    font-size: min(calc(12 / 375 * 100vw), 16.8px);
    line-height: 1.3;
  }
}

.priceSimulation_optionBtnSub {
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_optionBtnSub {
    font-size: min(calc(11 / 1280 * 100vw), 15.4px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_optionBtnSub {
    font-size: min(calc(11 / 375 * 100vw), 15.4px);
  }
}

.priceSimulation_panelNotes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_panelNotes {
    gap: calc(7 / 1280 * 100vw);
    margin-bottom: calc(40 / 1280 * 100vw);
    padding-left: calc(30 / 1280 * 100vw);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_panelNotes {
    gap: calc(4 / 375 * 100vw);
    margin-bottom: calc(40 / 375 * 100vw);
  }
}

.priceSimulation_panelNote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
  line-height: 1.82;
  letter-spacing: 0.1em;
  color: #414141;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_panelNote {
    font-size: min(calc(11 / 1280 * 100vw), 15.4px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_panelNote {
    font-size: min(calc(11 / 375 * 100vw), 15.4px);
  }
}

@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_qtyWrap {
    margin-left: calc(30 / 1280 * 100vw);
  }
}

.priceSimulation_result {
  position: fixed;
  z-index: 100;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%;
  height: calc(60 / 375 * 100vw);
  background-color: #ffffff;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.priceSimulation_result.is-hidden {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}

.priceSimulation_result_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: calc(8 / 375 * 100vw);
  padding: 0 calc(2 / 375 * 100vw) calc(15 / 375 * 100vw) calc(16 / 375 * 100vw);
}

.priceSimulation_result_label {
  margin-right: calc(5 / 375 * 100vw);
  padding-bottom: calc(6 / 375 * 100vw);
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(calc(12 / 375 * 100vw), 16.8px);
  font-weight: 400;
  letter-spacing: 0.08em;
  white-space: nowrap;
  color: #414141;
}

.priceSimulation_result_amount {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: calc(2 / 375 * 100vw);
  letter-spacing: 0.15em;
}

.priceSimulation_result_num {
  margin-bottom: -0.15em;
  font-family: "Nunito Sans", sans-serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  color: #000000;
}
@media print, screen and (min-width:1024px) and (orientation: landscape), screen and (min-width:1024px) {
  .priceSimulation_result_num {
    font-size: min(calc(40 / 375 * 100vw), 56px);
  }
}
@media print, screen and (max-width:1023px), screen and (min-width:1024px) and (max-width:1023px) and (orientation: portrait) {
  .priceSimulation_result_num {
    font-size: min(calc(30 / 375 * 100vw), 42px);
  }
}

.priceSimulation_result_unit {
  margin-bottom: calc(2 / 375 * 100vw);
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(calc(16 / 375 * 100vw), 22.4px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #414141;
}

.priceSimulation_result_tax {
  margin-bottom: calc(3 / 375 * 100vw);
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(calc(12 / 375 * 100vw), 16.8px);
  font-weight: 400;
  line-height: 1;
  color: #414141;
}

.priceSimulation_result_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: calc(2 / 375 * 100vw);
  width: calc(70 / 375 * 100vw);
  background-color: #414141;
}

.priceSimulation_result_btnLabel {
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(calc(11 / 375 * 100vw), 15.4px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #ffffff;
}

.priceSimulation_result_btnIcon {
  position: relative;
  width: calc(12 / 375 * 100vw);
  height: calc(9 / 375 * 100vw);
}
.priceSimulation_result_btnIcon::before, .priceSimulation_result_btnIcon::after {
  position: absolute;
  bottom: 0;
  width: calc(8 / 375 * 100vw);
  height: 1px;
  background-color: #ffffff;
  content: "";
}
.priceSimulation_result_btnIcon::before {
  left: 0;
  -webkit-transform: rotate(43deg);
  -ms-transform: rotate(43deg);
  transform: rotate(43deg);
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom;
}
.priceSimulation_result_btnIcon::after {
  right: 0;
  -webkit-transform: rotate(-43deg);
  -ms-transform: rotate(-43deg);
  transform: rotate(-43deg);
  -webkit-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
  transform-origin: right bottom;
}
/*# sourceMappingURL=maps/simulation.css.map */
