@charset "UTF-8";

/* 収納シミュレーターCSS
========================================*/

body {
  /*@include mq(pc) {
  	min-width: auto !important;
  	#header, #footer, #sitemap {
  		min-width: 1240px;
  	}
  }*/
}

#main .simulator-main {
  background-color: #e9f3ff;
}

#main .simulator-main .-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: 1px solid #247ac0;
  color: #247ac0;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
}

#main .simulator-main .-title:after {
  border-bottom: 1px solid #247ac0;
  content: "";
  display: block;
  position: absolute;
  width: 100%;
}

#main .simulator-main-explan .-text {
  line-height: 1.5;
  margin-bottom: .5em;
}

#main .simulator-main-explan .-text>span {
  color: #ef7f1c;
}

#main .simulator-main-explan .-note {
  color: #959595;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em;
}

#main .simulator-main-tab>ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  border-bottom-color: #247ac0;
  border-bottom-style: solid;
}

#main .simulator-main-tab>ul>li {
  background-color: #fff;
  border-color: #247ac0;
  border-style: solid;
  border-bottom: 0;
  color: #247ac0;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

#main .simulator-main-tab>ul>li.is-cur {
  background-color: #247ac0;
  color: #fff;
}

#main .simulator-main-list {
  display: flex;
  flex-wrap: wrap;
  background-color: #fff;
}

#main .simulator-main-list>li {
  border-color: #f5f5f5;
  border-style: solid;
  position: relative;
  transition: .3s ease;
}

#main .simulator-main-list>li .-icon {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

#main .simulator-main-list>li .-label {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  line-height: 1.3;
  letter-spacing: 0;
  text-align: center;
  height: 2.6em;
}

#main .simulator-main-list>li .-label>span {
  display: block;
  line-height: 1.5;
  width: 100%;
}

#main .simulator-main-list>li .-count {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: #ef7f1c;
  color: #fff;
  display: none;
  line-height: 1.2;
  position: absolute;
  padding-bottom: .1em;
  z-index: 10;
}

#main .simulator-main-list>li.is-select {
  background-color: #fff9e8;
  border-color: #ef7f1c;
}

#main .simulator-main-list>li.is-select .-count {
  display: flex;
}

#main .simulator-footer-selected {
  border: 1px solid #247ac0;
  overflow: hidden;
}

#main .simulator-footer-selected>dt {
  background-color: #247ac0;
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}

#main .simulator-footer-selected>dd {
  background-color: #fff;
}

#main .simulator-footer-list-blk {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px dashed #ccc;
}

#main .simulator-footer-list-blk:last-of-type {
  border-bottom: 0;
}

#main .simulator-footer-list-blk .-label {
  flex: 1;
  line-height: 1.3;
}

#main .simulator-footer-list-blk .-label br {
  display: none;
}

#main .simulator-footer-list-blk .-label>span {
  line-height: 1.5;
}

#main .simulator-footer-list-control {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

#main .simulator-footer-list-control .-button {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border: 1px solid #247ac0;
  color: #247ac0;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
}

#main .simulator-footer-list-control .-count {
  line-height: 1;
  padding-bottom: .1em;
  text-align: center;
  width: 1.5em;
}

#main .simulator-footer-result>li>dl {
  position: relative;
}

#main .simulator-footer-result>li>dl>dt {
  background-color: #fff;
  border: 1px solid;
  font-weight: 700;
  letter-spacing: 0;
  position: absolute;
  top: 0;
  left: 7%;
  text-align: center;
  width: 86%;
}

#main .simulator-footer-result>li>dl>dt:before,
#main .simulator-footer-result>li>dl>dt:after {
  content: "";
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  display: block;
  position: absolute;
}

#main .simulator-footer-result>li>dl>dt:after {
  background-color: #fff;
}

#main .simulator-footer-result>li>dl>dd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  text-align: center;
}

#main .simulator-footer-result>li>dl>dd span {
  display: inline-block;
  margin-right: .1em;
  vertical-align: -.05em;
}

#main .simulator-footer-result>li._items>dl>dt {
  border-color: #247ac0;
  color: #247ac0;
}

#main .simulator-footer-result>li._items>dl>dt:before {
  background-color: #247ac0;
}

#main .simulator-footer-result>li._items>dl>dd {
  background-color: #e9f3ff;
  color: #247ac0;
}

#main .simulator-footer-result>li._crit>dl>dt {
  border-color: #ef7f1c;
  color: #ef7f1c;
  letter-spacing: -.05em;
}

#main .simulator-footer-result>li._crit>dl>dt:before {
  background-color: #ef7f1c;
}

#main .simulator-footer-result>li._crit>dl>dd {
  background-color: #fcf3da;
  color: #ef7f1c;
}

#main .simulator-footer-btns .c-button {
  letter-spacing: 0;
}

#main .simulator-footer-btns .c-button img {
  margin-right: .2em;
  vertical-align: -.4em;
}

#main .simulator-footer-btns .c-button:before {
  display: none;
}

#main .simulator-footer-btns .c-button._reset {
  background-color: #d4d4d4;
  color: #757575;
}

#main .simulator-footer-btns .c-button._reset:after {
  background-color: #ddd;
}

@media print, screen and (min-width: 768px) {
  #main .simulator {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  #main .simulator-main {
    flex: 1;
    padding: 40px 6.64%;
  }

  #main .simulator-main .-title {
    font-size: 1.7rem;
    margin-bottom: 40px;
    padding-bottom: 12px;
  }

  #main .simulator-main .-title:after {
    bottom: -4px;
  }

  #main .simulator-main .-title img {
    margin-right: 20px;
  }

  #main .simulator-main-explan {
    margin-bottom: 40px;
  }

  #main .simulator-main-explan .-text {
    font-size: 1rem;
  }

  #main .simulator-main-explan .-note {
    font-size: .9rem;
  }

  #main .simulator-main-tab>ul {
    border-bottom-width: 2px;
    gap: 6px;
  }

  #main .simulator-main-tab>ul>li {
    border-radius: 10px 10px 0 0;
    border-width: 2px;
    cursor: pointer;
    padding: 10px 0;
    width: calc((100% - 30px) / 6);
    transition: .3s ease;
  }

  #main .simulator-main-tab>ul>li.is-cur,
  #main .simulator-main-tab>ul>li:hover {
    padding: 14px 0;
  }

  #main .simulator-main-list {
    gap: 20px 2.425%;
    padding: 50px 4.5%;
  }

  #main .simulator-main-list>li {
    border-width: 4px;
    cursor: pointer;
    padding: 16px 3px 6px;
    width: 18.06%;
  }

  #main .simulator-main-list>li .-label {
    font-size: .9rem;
    letter-spacing: 0;
  }

  #main .simulator-main-list>li .-label>span {
    font-size: .75rem;
  }

  #main .simulator-main-list>li .-count {
    border-radius: 0 0 0 10px;
    font-size: 1.2rem;
    top: -4px;
    right: -4px;
    height: 45px;
    width: 45px;
  }

  #main .simulator-main-list>li:hover {
    background-color: #fff9e8;
    border-color: #ef7f1c;
  }

  #main .simulator-footer {
    background-color: #fff;
    padding: 30px 1.25%;
    position: sticky;
    top: 0;
    right: 0;
    height: 100dvh;
    width: 20%;
  }

  #main .simulator-footer .-logo {
    display: table;
    margin: 0 auto 30px;
  }

  #main .simulator-footer-selected {
    border-radius: 10px;
    margin-bottom: 30px;
  }

  #main .simulator-footer-selected>dt {
    font-size: 1rem;
    padding: 10px;
  }

  #main .simulator-footer-selected>dd {
    padding: 10px 5px;
  }

  #main .simulator-footer-list {
    overflow-y: scroll;
    padding: 0 4.69% 0 3.125%;
    height: min(100dvh - 60px - 94px - 66px - 197px - 150px, 500px);
  }

  #main .simulator-footer-list::-webkit-scrollbar {
    width: 7px;
  }

  #main .simulator-footer-list::-webkit-scrollbar-track {
    background-color: #d4d4d4;
    border-radius: 5px;
  }

  #main .simulator-footer-list::-webkit-scrollbar-thumb {
    background-color: #247ac0;
    border-radius: 5px;
  }

  #main .simulator-footer-list-blk {
    padding: 10px 0;
  }

  #main .simulator-footer-list-blk .-label {
    margin-right: 15px;
  }

  #main .simulator-footer-list-blk .-label>span {
    font-size: .75rem;
  }

  #main .simulator-footer-list-control .-button {
    cursor: pointer;
    font-size: 13px;
    height: 20px;
    width: 20px;
  }

  #main .simulator-footer-list-control .-count {
    font-size: 1.1rem;
    margin: 0 5px;
  }

  #main .simulator-footer-result {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30px;
  }

  #main .simulator-footer-result>li {
    width: 46.5%;
  }

  #main .simulator-footer-result>li>dl {
    padding-top: 17px;
  }

  #main .simulator-footer-result>li>dl>dt {
    border-radius: 20px;
    font-size: .75rem;
    padding: 4px 0;
  }

  #main .simulator-footer-result>li>dl>dt:before {
    left: calc(50% - 7px);
    bottom: -7px;
    height: 7px;
    width: 14px;
  }

  #main .simulator-footer-result>li>dl>dt:after {
    left: calc(50% - 7px);
    bottom: -6px;
    height: 7px;
    width: 14px;
  }

  #main .simulator-footer-result>li>dl>dd {
    border-radius: 10px;
    font-size: 1.1rem;
    height: 120px;
  }

  #main .simulator-footer-result>li>dl>dd span {
    font-size: 2.1rem;
  }

  #main .simulator-footer-btns .c-button {
    font-size: .9rem;
    padding: 18px 3px;
    width: 100%;
  }

  #main .simulator-footer-btns>li {
    margin-bottom: 18px;
  }

  #main .simulator-footer-btns>li:last-of-type {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  #main .simulator-main {
    padding: 8vw 5.3333333333vw;
  }

  #main .simulator-main .-title {
    font-size: 5.8666666667vw;
    margin-bottom: 6.6666666667vw;
    padding-bottom: 2.1333333333vw;
  }

  #main .simulator-main .-title:after {
    bottom: -1.0666666667vw;
  }

  #main .simulator-main .-title img {
    margin-right: 2.6666666667vw;
    width: 8.5333333333vw;
  }

  #main .simulator-main-explan {
    margin-bottom: 6.6666666667vw;
  }

  #main .simulator-main-explan .-text {
    font-size: 4.2666666667vw;
  }

  #main .simulator-main-explan .-note {
    font-size: 3.7333333333vw;
  }

  #main .simulator-main-tab {
    margin: 0 -1.3333333333vw;
  }

  #main .simulator-main-tab>ul {
    border-bottom-width: 2px;
    gap: .5333333333vw .8vw;
    position: relative;
  }

  #main .simulator-main-tab>ul:after {
    border-bottom: 2px solid #247ac0;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    top: calc(50% - .5333333333vw);
  }

  #main .simulator-main-tab>ul>li {
    border-radius: 2.1333333333vw 2.1333333333vw 0 0;
    border-width: .5333333333vw;
    font-size: 3.7333333333vw;
    margin-top: 1.0666666667vw;
    padding: 1.8666666667vw 0;
    width: 30.1333333333vw;
  }

  #main .simulator-main-tab>ul>li.is-cur {
    margin-top: 0;
    padding: 2.4vw 0;
  }

  #main .simulator-main-list {
    gap: 4vw 3.2vw;
    margin: 0 -1.3333333333vw;
    padding: 4vw;
  }

  #main .simulator-main-list>li {
    border-width: .8vw;
    padding: 3.2vw .2666666667vw 1.0666666667vw;
    width: 25.8666666667vw;
  }

  #main .simulator-main-list>li .-icon {
    height: 18.6666666667vw;
  }

  #main .simulator-main-list>li .-label {
    font-size: 3.4666666667vw;
  }

  #main .simulator-main-list>li .-label>span {
    font-size: 2.6666666667vw;
  }

  #main .simulator-main-list>li .-count {
    border-radius: 0 0 0 2.1333333333vw;
    font-size: 4.2666666667vw;
    top: -.8vw;
    right: -.8vw;
    height: 8.5333333333vw;
    width: 8.5333333333vw;
  }

  #main .simulator-footer {
    padding: 8vw 5.3333333333vw;
  }

  #main .simulator-footer .-logo {
    display: none;
  }

  #main .simulator-footer-selected {
    border-radius: 2.1333333333vw;
  }

  #main .simulator-footer-selected>dt {
    font-size: 4.8vw;
    padding: 2.1333333333vw;
  }

  #main .simulator-footer-selected>dd {
    padding: 2.1333333333vw 1.3333333333vw;
  }

  #main .simulator-footer-list {
    padding: 0 2.6666666667vw;
    min-height: 21.3333333333vw;
  }

  #main .simulator-footer-list-blk {
    padding: 2.6666666667vw 0;
    touch-action: manipulation;
  }

  #main .simulator-footer-list-blk .-label {
    margin-right: 4vw;
    touch-action: manipulation;
  }

  #main .simulator-footer-list-blk .-label>span {
    font-size: 3.4666666667vw;
  }

  #main .simulator-footer-list-control {
    touch-action: manipulation;
  }

  #main .simulator-footer-list-control .-button {
    font-size: 3.4666666667vw;
    touch-action: manipulation;
    height: 6.4vw;
    width: 6.4vw;
  }

  #main .simulator-footer-list-control .-count {
    font-size: 5.3333333333vw;
    margin: 0 2.6666666667vw;
    touch-action: manipulation;
  }

  #main .simulator-footer-result {
    position: fixed;
    right: 2.1333333333vw;
    bottom: 20vw;
    z-index: 100;
  }

  #main .simulator-footer-result>li {
    width: 19.4666666667vw;
  }

  #main .simulator-footer-result>li>dl {
    padding-top: 2.6666666667vw;
  }

  #main .simulator-footer-result>li>dl>dt {
    border-radius: 4vw;
    font-size: 2.6666666667vw;
    padding: .2666666667vw 0;
  }

  #main .simulator-footer-result>li>dl>dt:before {
    left: calc(50% - 1.3333333333vw);
    bottom: -1.3333333333vw;
    height: 1.3333333333vw;
    width: 2.6666666667vw;
  }

  #main .simulator-footer-result>li>dl>dt:after {
    left: calc(50% - 1.3333333333vw);
    bottom: -1.0666666667vw;
    height: 1.3333333333vw;
    width: 2.6666666667vw;
  }

  #main .simulator-footer-result>li>dl>dd {
    border: 1px solid;
    border-radius: 2.1333333333vw;
    font-size: 4vw;
    padding-top: 1.3333333333vw;
    height: 14.6666666667vw;
  }

  #main .simulator-footer-result>li>dl>dd span {
    font-size: 6.9333333333vw;
  }

  #main .simulator-footer-result>li._items {
    margin-bottom: 2.1333333333vw;
  }

  #main .simulator-footer-result>li._items>dl>dd {
    border-color: #247ac0;
  }

  #main .simulator-footer-result>li._crit>dl>dd {
    border-color: #ef7f1c;
  }

  #main .simulator-footer-btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: #fff;
    flex-direction: row-reverse;
    padding: 2.6666666667vw 1.8666666667vw;
    position: fixed;
    bottom: 0;
    left: 0;
    height: 17.8666666667vw;
    width: 100%;
    z-index: 1000;
  }

  #main .simulator-footer-btns .c-button {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 3.6vw;
    padding: 1.3333333333vw;
    height: 12.5333333333vw;
    width: 37.3333333333vw;
  }

  #main .simulator-footer-btns .c-button._selected,
  #main .simulator-footer-btns .c-button._reset {
    width: 27.2vw;
  }

  #main .simulator-footer-btns .c-button>span {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }

  #main .simulator-footer-btns .c-button>span>span {
    flex: 1;
    line-height: 1.2;
    padding-right: .5em;
  }

  #main .simulator-footer-btns .c-button img {
    height: 5.8666666667vw;
  }
}

@media print, screen and (min-width: 768px) and (max-width: 1279px) {
  #main .simulator {
    display: block;
  }

  #main .simulator-footer {
    position: relative;
    height: auto;
    width: auto;
  }

  #main .simulator-footer .-logo {
    display: none;
  }

  #main .simulator-footer-selected {
    margin: 0 auto;
    width: 400px;
  }

  #main .simulator-footer-list {
    padding: 8px 3%;
    height: auto;
    min-height: 100px;
  }

  #main .simulator-footer-list::-webkit-scrollbar {
    width: 6px;
  }

  #main .simulator-footer-result {
    display: block;
    margin-bottom: 0;
    position: fixed;
    right: 15px;
    bottom: 96px;
    z-index: 100;
  }

  #main .simulator-footer-result>li {
    width: 120px;
  }

  #main .simulator-footer-result>li>dl>dd {
    border: 1px solid;
  }

  #main .simulator-footer-result>li._items {
    margin-bottom: 15px;
  }

  #main .simulator-footer-result>li._items>dl>dd {
    border-color: #247ac0;
  }

  #main .simulator-footer-result>li._crit>dl>dd {
    border-color: #ef7f1c;
  }

  #main .simulator-footer-btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    background-color: #fff;
    flex-direction: row-reverse;
    gap: 0 25px;
    padding: 10px 20px;
    position: fixed;
    bottom: 0;
    left: 0;
    height: 86px;
    width: 100%;
    z-index: 1000;
  }

  #main .simulator-footer-btns>li.sponly {
    display: block;
  }

  #main .simulator-footer-btns .c-button {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 18px 20px 18px 15px;
  }

  #main .simulator-footer-btns .c-button._selected,
  #main .simulator-footer-btns .c-button._reset {
    width: 180px;
  }

  #main .simulator-footer-btns .c-button img {
    height: 30px;
  }
}

@media print, screen and (min-width: 1280px) and (max-width: 1400px) {
  #main .simulator-main-tab>ul>li {
    font-size: .85rem;
  }

  #main .simulator-main-list {
    padding: 40px 4%;
  }

  #main .simulator-main-list>li {
    padding: 13px 3px 5px;
  }

  #main .simulator-main-list>li .-label {
    font-size: .85rem;
  }

  #main .simulator-main-list>li .-label>span {
    font-size: .7rem;
  }

  #main .simulator-main-list>li .-count {
    font-size: 1.1rem;
    height: 40px;
    width: 40px;
  }

  #main .simulator-footer {
    padding: 25px 1%;
  }

  #main .simulator-footer .-logo {
    margin: 0 auto 25px;
  }

  #main .simulator-footer-selected {
    margin-bottom: 25px;
  }

  #main .simulator-footer-selected>dt {
    font-size: .9rem;
  }

  #main .simulator-footer-selected>dd {
    padding: 8px 4px;
  }

  #main .simulator-footer-list {
    padding: 8px 3%;
    height: min(100dvh - 50px - 89px - 59px - 165px - 147px, 500px);
  }

  #main .simulator-footer-list::-webkit-scrollbar {
    width: 6px;
  }

  #main .simulator-footer-list-blk .-label {
    font-size: .85rem;
  }

  #main .simulator-footer-list-blk .-label>span {
    font-size: .7rem;
  }

  #main .simulator-footer-list-control .-count {
    font-size: 1rem;
    margin: 0 3px;
  }

  #main .simulator-footer-result {
    margin-bottom: 25px;
  }

  #main .simulator-footer-result>li>dl {
    padding-top: 15px;
  }

  #main .simulator-footer-result>li>dl>dt {
    font-size: .7rem;
  }

  #main .simulator-footer-result>li>dl>dd {
    font-size: 1rem;
    height: 100px;
  }

  #main .simulator-footer-result>li>dl>dd span {
    font-size: 2rem;
  }

  #main .simulator-footer-btns .c-button {
    font-size: .85rem;
  }

  #main .simulator-footer-btns .c-button img {
    margin-right: .2em;
    vertical-align: -.4em;
  }

  #main .simulator-footer-btns>li {
    margin-bottom: 15px;
  }
}
/*# sourceMappingURL=../../_sourcemap/assets/css/simulator.css.map */