@charset "utf-8";
* {
    margin: 0;
    padding: 0;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}


/* ///////////////// reset ///////////////// */
a {
  text-decoration: none;
  color: #333;
}

/* input type=number の右スピンボタンを消す */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

input:invalid {
  box-shadow: none;
}

/* ///////////////// 他ページ共通 ///////////////// */
/* パンくず */
#breadCrumbArea {
    box-sizing: border-box;
    padding: 10px 0;
    background: #f1f1f1;
    border-bottom: 1px solid #FFF;
    clear: both;
    font-size: 11px;
    letter-spacing: -0.001em;
    width: 100%;
}
#breadCrumbArea .breadCrumb>li a {
    text-decoration: underline;
}

/* TOPへ戻る */
.pagetop_fixed {
    display: none;
}
.pagetop_fixed .toPageTop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
    width: 40px;
    height: 40px;
    z-index: 9999;
}
.pagetop_fixed img {
    max-width: 100%;
}

@media only screen and (min-width: 769px), print {
    .pagetop_fixed .toPageTop {
        width: 60px;
        height: 60px;
    }
}

/* footer */
footer p {
    font-size: inherit;
    line-height: inherit;
}

/* footer forIE */
@media all and (-ms-high-contrast: none) {
    footer {
        margin-top: 100px;
    }
}


/* ///////////////// ページ全体 ///////////////// */
body {
    background: #F4F4F4;
    color: #333333;
    text-align: left;
    line-height: 1.8;
    word-break: break-all;
}

.pc {
    display: block;
}

.pc-inline {
    display: inline;
}

.sp, .sp-inline {
    display: none;
}

.mainContainer {
  overflow: hidden;
}

/* ///////////////// head ///////////////// */
.head {
  width: 100%;
  min-height: 103px;
  position: relative;
  background: #ebebeb;
}

.head .headArea {
  width: 1000px;
  margin: 0 auto;
  padding: 11px 0;
}

.head .headArea h1 {
  font-size: 24px;
  font-weight: bold;
}

.head .headArea h1 i {
  color: #538aca;
  font-size: 22px;
  margin-right: 18px;
}

.head .headArea p {
  font-size: 14px;
  margin: 6px 0 0 40px;
  line-height: 1.5;
}

.head .headArea a {
  color: #e95959;
  text-decoration: underline;
}

/* ///////////////// uniqueContents ///////////////// */
.uniqueContents {
  width: 1000px;
  margin: 0 auto;
}
/* CSITE-3998 */
/* .uniqueContents section {
  margin-bottom: 50px;
} */
/* //CSITE-3998 */

.uniqueContents .lowercaseText {
  margin-top: 40px;
  font-size: 14px;
  color: #717171;
}

.uniqueContents .lowercaseText span {
  font-size: 18px;
  font-weight: bold;
  margin-right: 30px;
  color: #538aca;
}

.uniqueContents .lowercaseText + .pc {
  text-align: right;
}

.uniqueContents .clearBtn {
  background: #fff;
  box-shadow: 0px 3px 0px 0 #e1e1e1;
  border-radius: 5px;
  padding: 5px 16px;
  font-size: 14px;
  margin: 9px 30px 0 43px;
  cursor: pointer;
}

.uniqueContents .clearBtn:active {
  box-shadow: none;
  position: relative;
  top: 3px;
}

.uniqueContents .clearBtn i {
  color: #e95959;
  font-size: 16px;
  margin-right: 10px;
  vertical-align: middle;
}

/* topContent */
.topContent {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-top: 40px;
}

.topContent.no-wrap {
  flex-wrap: nowrap;
}

.errorMessage {
  width: 100%;
  color: #e95959;
  font-size: 14px;
  position: absolute;
  top: 58px;
  left: 0;
  line-height: 1.3;
  font-weight: normal;
}

.chintairyou .errorMessage {
  width: 230%;
  right: -60px;
  top: 45px;
}

.chintairyou .errorMessage.desc {
  top: 65px;
}

.errorMessage.mini {
  top: 55px;
}

.errorMessage.mini:nth-of-type(2) {
  top: 72px;
}

/* leftContent, rightContent */
.leftContent {
  width: 50%;
}

.leftContent.twoLine {
  width: 50%;
}

.leftContent.twoLine.chintairyou {
  width: 49%;
  background-color: #ebebeb;
  margin-bottom: 20px;
}

.leftContent.chintairyou .leftContentHead,
.rightContent.chintairyou .rightContentHead {
  display: block;
  color: #fff;
  background-color: #538aca;
  border-radius: 5px 5px 0 0;
  font-size: 18px;
  font-weight: bold;
  padding: 7px 0;
  position: relative;
  text-align: center;
}

.leftContent.chintairyou .leftContentHead::before,
.rightContent.chintairyou .rightContentHead::before {
  /* ストライプ */
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  background: url(/static_contents/20250623-105031/shikin/images/img_user_contentHead_back.png) no-repeat;
  background-size: 100%;
}

.leftContent.chintairyou .leftContentHead::after,
.rightContent.chintairyou .rightContentHead::after {
  /* 吹き出し、アイコン */
  content: "";
  width: 67px;
  height: 58px;
  position: absolute;
  bottom: 4px;
  left: 17px;
}

.leftContent.chintairyou .leftContentHead::after {
  background: url(/static_contents/20250623-105031/shikin/images/img_user_chintairyou_icon01.png) no-repeat;
}

.rightContent.chintairyou .rightContentHead::after {
  background: url(/static_contents/20250623-105031/shikin/images/img_user_chintairyou_icon02.png) no-repeat;
}

.leftContent ol li,
.rightContent ol li {
  display: flex;
  align-items: center;
}

.leftContent ol li:not(:first-of-type),
.rightContent ol li:not(:first-of-type) {
  margin-top: calc(30px - 2rem);
}

.rightContent ol.kuriage li:not(:first-of-type) {
  margin-top: calc(76px - 3rem);
}

.leftContent .question,
.rightContent .question {
  position: relative;
  width: 270px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 40px;
}

.leftContent .question.noQuestionDescription,
.rightContent .question.noQuestionDescription {
  display: flex;
  align-items: center;
}

.leftContent .question .listNum,
.rightContent .question .listNum {
  margin-right: 10px;
}

.leftContent .question .required,
.rightContent .question .required {
  background: #E95959;
  color: #fff;
  padding: 3px 8px;
  border-radius: 3px;
  font-size: 12px;
  vertical-align: middle;
  margin-left: 10px;
}

.leftContent .question .questionDescription,
.rightContent .question .questionDescription {
  display: block;
  font-size: 12px;
  font-weight: normal;
  color: #717171;
  line-height: 1.4;
  margin-top: 5px;
}

.leftContent .question .questionDescription span,
.rightContent .question .questionDescription span {
  color: #e95959;
}

.leftContent .answer,
.rightContent .answer {
  display: flex;
  align-items: flex-start;
  width: 352px;
  position: relative;
  margin-bottom: 26px;
}

.rightContent.twoLine .question:not(.rightContent.twoLine.chintairyou) {
  margin-left: 50px;
}

_:lang(x)+_:-webkit-full-screen-document, .rightContent.twoLine .question:not(.rightContent.twoLine.chintairyou) {
  /* safari対策 */
  margin-left: 5px;
}

.leftContent.twoLine.chintairyou ol {
  padding: 30px 0 30px 15px;
}

.rightContent.twoLine.chintairyou ol {
  padding: 30px 15px 30px 15px;
}

.rightContent.twoLine .answer:not(.rightContent.twoLine.chintairyou) {
  align-items: flex-start;
  justify-content: flex-end;
}

_:lang(x)+_:-webkit-full-screen-document, .rightContent.twoLine .answer:not(.rightContent.twoLine.chintairyou) {
  /* safari対策 */
  justify-content: flex-start;
}

.leftContent .answer input,
.rightContent .answer input {
  width: 120px;
  height: 27px;
  font-size: 18px;
  border-radius: 5px;
  border: 1px solid #b5b5b5;
  text-align: right;
  margin-top: 5px;
  padding: 9px 15px;
  outline: none;
}

.leftContent .answer input.errorRed,
.rightContent .answer input.errorRed {
  border: 1px solid #e95959;
}

.leftContent .answer input.mini,
.rightContent .answer input.mini {
  width: 30px;
}

.leftContent .answer input.middle,
.rightContent .answer input.middle {
  width: 45px;
}

.leftContent .answer input.mini:first-of-type + .unit {
  margin-right: 10px;
}

.rightContent .answer input.mini:first-of-type + .unit {
  margin-right: 42px;
}

.leftContent .answer input.middle:first-of-type + .unit {
  margin-right: 10px;
}

.rightContent .answer input.middle:first-of-type + .unit {
  margin-right: 26px;
}

.leftContent .answer input:hover,
.leftContent .answer input:hover,
.rightContent .answer input:focus,
.rightContent .answer input:focus {
  border: 2px solid #538aca;
  padding: 8px 14px;
}

.leftContent .answer input::placeholder,
.rightContent .answer input::placeholder {
  color: #b5b5b5;
}

.leftContent .answer input:-ms-input-placeholder,
.rightContent .answer input:-ms-input-placeholder {
  /* IE */
  color: #b5b5b5;
}

.leftContent .answer input::-ms-input-placeholder,
.rightContent .answer input::-ms-input-placeholder {
  /* Edge */
  color: #b5b5b5;
}

.leftContent .answer .unit,
.rightContent .answer .unit {
  font-size: 14px;
  font-weight: bold;
  margin: 25px 0 0 10px;
  line-height: 1.5;
}

.leftContent .answer .unit.twoLine,
.rightContent .answer .unit.twoLine {
  margin-top: 5px;
}

/* yearsLater */
.yearsLater {
  width: 100%;
  background-color: #b0e4f2;
  margin-bottom: 50px;
  padding: 18px 0;
  border-radius: 5px;
  text-align: center;
  font-size: 18px;
}

.yearsLater .question {
  display: inline;
}

.yearsLater .question .required {
  background: #E95959;
  color: #fff;
  padding: 3px 8px;
  border-radius: 3px;
  font-size: 12px;
  vertical-align: middle;
  margin-right: 10px;
}

.yearsLater .answer {
  display: inline;
  align-items: flex-start;
  flex-wrap: wrap;
  position: relative;
}

.yearsLater .answer input {
  width: 70px;
  height: 27px;
  border-radius: 5px;
  border: 1px solid #b5b5b5;
  font-size: 18px;
  text-align: right;
  padding: 9px 15px;
  outline: none;
}

.yearsLater .answer .yearsUnit {
  margin-left: 15px;
}

.rightContent .answer .inputTop-1 {
  color: #538aca;
  font-size: 12px;
  position: absolute;
  top: -20px;
  left: 0px;
}

.rightContent .answer .inputTop-2 {
  color: #538aca;
  font-size: 12px;
  position: absolute;
  top: -20px;
  left: 145px;
}

.yearsLater .answer p {
  margin: 10px 0 0 15px;
  display: inline;
}

.yearsLater .answer p span {
  font-weight: bold;
  margin: 0 20px;
}

.yearsLater .answer p span:first-of-type {
  margin-left: 0;
}

.yearsLater .answer input.errorRed {
  border: 1px solid #e95959;
}

.yearsLater .answer input.mini {
  width: 30px;
}

.yearsLater .answer input.mini:first-of-type + .unit {
  margin-right: 50px;
}

.yearsLater .answer input:focus,
.yearsLater .answer input:focus {
  border: 2px solid #538aca;
  padding: 8px 14px;
}

.yearsLater .answer input::placeholder {
  color: #b5b5b5;
}

.yearsLater .answer input:-ms-input-placeholder {
  /* IE */
  color: #b5b5b5;
}

.yearsLater .answer input::-ms-input-placeholder {
  /* Edge */
  color: #b5b5b5;
}

/* middleContent */
.middleContent.twoLine {
  width: 90%;
  margin: 0 auto;
}

/* rightContent */
.rightContent.twoLine {
  width: 50%;
}

.rightContent.twoLine.chintairyou {
  width: 49%;
  margin-bottom: 20px;
  background-color: #ebebeb;
}

.rightContent .frame {
  position: relative;
  left: 270px;
  bottom: 33px;
}

.rightContent .frame::before {
  content: "";
  background: #ebebeb;
  width: 130px;
  height: 290px;
  border-radius: 5px;
  display: block;
  position: absolute;
  left: -40px;
  top: 12px;
  z-index: -1;
}

_:lang(x)+_:-webkit-full-screen-document, .rightContent .frame::before {
  /* safari対策 */
  left: -40px;
}

@media screen and (device-width: 768px) and (device-height: 1024px) {
  _::-webkit-full-page-media, _:future, :root .rightContent .frame::before {
    /* safari, iPadmini対策 */
    left: -5px;
  }
}

.rightContent .frame::after {
  content: "";
  background: #ebebeb;
  width: 130px;
  height: 290px;
  border-radius: 5px;
  display: block;
  position: absolute;
  left: 105px;
  top: 15px;
  z-index: -1;
}

_:lang(x)+_:-webkit-full-screen-document,.rightContent .frame::after {
  /* safari対策 */
  left: 105px;
  top: 13px;
}

@media screen and (device-width: 768px) and (device-height: 1024px) {
  _::-webkit-full-page-media, _:future, :root .rightContent .frame::after {
    /* safari, iPadmini対策 */
    left: 140px;
    top: 12px;
  }
}

.rightContent .frame span {
  background: #538ACA;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  padding: 2px 20px;
  border-radius: 30px;
  position: absolute;
  top: 0;
}

.rightContent .frame span:first-of-type {
  margin-right: 35px;
  left: -31px;
}

@media screen and (device-width: 768px) and (device-height: 1024px) {
  _::-webkit-full-page-media, _:future, :root .rightContent .frame span:first-of-type {
    /* safari, iPadmini対策 */
    left: 5px;
  }
}

.rightContent .frame span:nth-of-type(2) {
  left: 115px;
}

@media screen and (device-width: 768px) and (device-height: 1024px) {
  _::-webkit-full-page-media, _:future, :root .rightContent .frame span:nth-of-type(2) {
    /* safari, iPadmini対策 */
    left: 150px
  }
}

.rightContentHead {
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.rightContentHead h2 {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  background: #538aca;
  border-radius: 30px;
  padding: 10px 75px;
  position: relative;
}

.rightContentHead h2::before {
  content: "";
  position: absolute;
  top: 99%;
  left: 22%;
  margin-left: -15px;
  border: 9px solid transparent;
  border-top: 15px solid #538aca;
}

.middleContent.twoLine .rightContentHead {
  justify-content: space-between;
}

/* result */
.result table {
  margin-top: 35px;
  font-size: 14px;
  font-weight: bold;
  width: 100%;
}

.result table tbody tr:first-of-type td:first-of-type {
  border-radius: 5px 0 0 0;
}

.result table tbody tr:first-of-type td:last-of-type {
  border-radius: 0 5px 0 0;
}

.result table tbody tr:last-of-type td:last-of-type,
.result table.kuriage tbody tr:nth-child(7) td:last-of-type,
.result table.karikae tbody tr:nth-child(8) td:last-of-type {
  border-radius: 0 0 5px 0;
}

.result table tbody tr:last-of-type td:first-of-type,
.result table.kuriage tbody tr:nth-child(7) td:first-of-type,
.result table.karikae tbody tr:nth-child(8) td:first-of-type {
  border-radius: 0 0 0 5px;
}

.result table tbody tr td {
  padding: 10px 10px 10px 10px;
  background: #fff;
  border: 1px solid #f4f4f4;
  vertical-align: middle;
  font-size: 14px;
  z-index: -1; /* firefox、ieで線が消えるの防止 */
}

.result table tbody tr td .inputNum {
  margin-right: 10px;
}

.result table tbody tr td.blankCel {
  opacity: 0;
}

.result table tbody tr td.transparent {
  background: transparent;
}

.result table tbody tr td:first-of-type {
  width: 80px;
  position: relative;
  background: #b0e4f2;
}

.result table tbody tr td:first-of-type span {
  position: absolute;
  bottom: 14px;
  right: 0;
  width: 23px;
  color: #e95959;
  font-size: 12px;
}

.result table tbody tr td.table-gray {
  position: relative;
  background: #ebebeb;
  padding-right: 15px;
  line-height: 1.5;
}

.result table tbody tr td.table-blue {
  background: #b0e4f2;
}

.result table tbody tr td.table-gray span {
  position: absolute;
  bottom: 30px;
  right: -5px;
  width: 30px;
  color: #e95959;
  font-size: 12px;
}

.result table tbody tr td:nth-of-type(2):not(.table-gray),
.result table tbody tr td:nth-of-type(3):not(.table-gray),
.result table tbody tr td:nth-of-type(4):not(.table-gray),
.result table tbody tr td:nth-of-type(5):not(.table-gray) {
  text-align: right;
  width: 140px;
  font-size: 16px;
}

.result table tbody tr td .kuriage-sa {
  font-size: 12px;
  font-weight: normal;
}

.result table tbody tr td.table-blue,
.result table tbody tr td.table-blue:nth-of-type(2):not(.table-gray),
.result table tbody tr td.table-blue:nth-of-type(3):not(.table-gray),
.result table tbody tr td.table-blue:nth-of-type(4):not(.table-gray) {
  font-size: 14px;
  text-align: center;
}

/* result（賃貸） */
.result table.chintairyou {
  margin-bottom: 50px;
}

.result table.chintairyou td.pc {
  display: table-cell;
}

.result table.chintairyou tr:first-of-type td {
  text-align: center;
}

/* result（投資） */
.result.toushi {
  margin-top: 33px;
  background-color: #b0e4f2;
  border-radius: 5px;
  padding: 35px 35px 30px;
}

.result.toushi .resultBox:not(:first-of-type) {
  margin-top: 40px;
}

.result.toushi p {
  font-size: 20px;
  font-weight: bold;
}

.result.toushi p i {
  margin-right: 15px;
}

.result.toushi span {
  display: block;
  font-size: 12px;
  line-height: 1.5;
  color: #717171;
  margin-top: 10px;
}

.result.toushi .yieldResult {
  text-align: right;
  padding: 16px 15px;
  background-color: #effafd;
  border-radius: 5px;
}

.result.toushi .yieldResult span {
  font-size: 26px;
  margin-top: 0;
  color:#333;
}

/* reduction */
.reduction {
  display: flex;
  justify-content: space-between;
  background: #b0e4f2;
  margin-top: 20px;
  padding: 20px;
  border-radius: 5px;
  font-weight: bold;
}

.reduction .reduction-left,
.reduction .reduction-right {
  width: calc(50% - 15px);
}

.reduction-right .asterisk {
  color: #e95959;
  font-size: 12px;
  vertical-align: bottom;
}

.reduction p {
  display: inline;
  font-weight: bold;
  line-height: 1.5;
}

.reduction .resultFrame {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fff;
  margin-top: 15px;
  padding: 10px 15px;
  font-size: 14px;
}

.reduction .resultFrame.color-blue p:first-of-type {
  color: #538aca;
}

.reduction .resultFrame.color-red p:first-of-type {
  color: #e95959;
}

/* rightContentBottom */
.rightContentBottom {
  text-align: right;
}

.rightContentBottom span:not(.redemptionBtn),
.redemptionBtns span:not(.redemptionBtn) {
  color: #e95959;
  font-size: 12px;
  vertical-align: bottom;
}

/* redemptionBtn */
.redemptionBtns {
  display: table-row;
}

.redemptionBtn {
  color: #fff;
  background: #538aca;
  box-shadow: 0px 3px 0px 0 #3c6fab;
  border-radius: 5px;
  padding: 7px 16px;
  font-size: 14px;
  display: inline-block;
  margin-top: 15px;
  margin-top: 15px;
  cursor: pointer;
}

.redemptionBtn:active {
  box-shadow: none;
  position: relative;
  top: 3px;
}

.redemptionBtn i {
  color: #fff;
  font-size: 16px;
  margin-right: 10px;
  vertical-align: middle;
}

/* scrollTableArea */
.scrollTableArea {
  margin-top: 50px;
}

.scrollTableArea .progress {
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

/* scrollTable */
.scrollTable {
  width: 100%;
  margin-bottom: 50px;
}

.scrollTable tbody tr td.table-blue  {
  text-align: center;
}

.result table.scrollTable  tbody tr td:first-of-type {
  width: 40px;
}

.result table.scrollTable tbody tr td.table-gray {
  width: 12%;
}

.result table tbody tr td.table-gray.gray-top {
  width: 100px;
}

/* bottomContent */
/* attention */
.attention {
  border-top: 1px dotted #b5b5b5;
}

.attention ul {
  margin: 40px 0 0 20px;
  font-size: 14px;
}

.attention ul li {
  color: #717171;
}

.attention ul li .asterisk {
  color: #e95959;
  margin-right: 3px;
}

.attention ul li:not(:first-of-type) {
  margin-top: 25px;
}

/* CSITE-3998 */
/* link__kariiregaku */
.link__kariiregaku_simulation {
  text-align: center;
  margin-top: 40px;
}

.link__kariiregaku_simulation a {
  width: 360px;
  border-radius: 53px;
  background-color: #fb0;
  color: #fff;
  font-family: 'Noto Sans CJK JP';
  letter-spacing: .05em;
  font-size: 22px;
  font-weight: bold;
  padding: 10px 20px 10px 88px;
  line-height: 1.5;
  display: inline-block;
}

.input__robot {
  position: relative;
  bottom: 68px;
  right: 165px;
  margin: 0 auto;
  background: url(/static_contents/20250623-105031/shikin/images/robot_anime.png) no-repeat;
  background-size: cover;
  width: 82px;
  height: 50px
}

.link__kariiregaku_simulation a:hover+.input__robot, .input__robot:hover {
  cursor: pointer;
  background: url(/static_contents/20250623-105031/shikin/images/robot_anime.png) no-repeat;
  width: 82px;
  height: 50px;
  animation: animationCongrats 1.3s steps(24) infinite
}

@keyframes animationCongrats {
  0% {
    background-position: 0 0
  }
  100% {
    background-position: 0 -1200px
  }
}
/* //CSITE-3998 */


/* ///////////////// ここからSP ///////////////// */
@media screen and (max-width: 767px) {
  /* ///////////////// ページ全体 ///////////////// */
  .pc, .pc-inline {
      display: none;
  }

  .sp {
      display: block;
  }

  .sp-inline {
    display: inline;
  }

  /* ///////////////// head ///////////////// */
  .head {
    width: 100%;
    height: auto;
  }

  .head .headArea {
    width: 90%;
    padding: 20px 0;
  }

  .head .headArea h1 {
    font-size: 16px;
  }

  .head .headArea h1 span {
    font-size: 14px;
  }

  .head .headArea h1 i {
    font-size: 16px;
    margin-right: 15px;
  }

  .head .headArea p {
    font-size: 12px;
    margin: 16px 0 0 0;
    line-height: 1.75;
  }

  /* ///////////////// uniqueContents ///////////////// */
  .uniqueContents {
    width: 100%;
  }

  .uniqueContents section {
    margin-bottom: 15px;
  }

  .uniqueContents .lowercaseText {
    width: 90%;
    margin: 10px auto 0 auto;
    font-size: 12px;
  }

  /* topContent */
  .topContent {
    display: block;
    width: 90%;
    margin: 30px auto 0 auto;
  }

  .topContent.no-wrap {
    width: 100%;
  }

  .topContent.no-wrap .leftContent {
    width: 90%;
    margin: 0 auto;
  }

  .topContent.no-wrap .rightContentHead {
    width: 90%;
    margin: 0 auto;
  }

  .errorMessage {
    width: 85%;
    font-size: 12px;
    top: 55px;
  }

  .chintairyou .errorMessage {
    width: 180%;
    right: 0;
    top: 42px;
  }

  .chintairyou .errorMessage.desc {
    width: 180%;
    right: 0;
    top: 62px;
  }

  .errorMessage.mini {
    top: 70px;
    width: 70%;
  }

  .errorMessage.mini.no-box {
    top: 52px;
    width: 80%;
  }

  .errorMessage.mini:nth-of-type(2) {
    top: 93px;
  }

  /* leftContent, rightContent */
  .leftContent.twoLine,
  .leftContent.twoLine.chintairyou {
    width: 100%;
  }

  .leftContent.chintairyou .leftContentHead::before,
  .rightContent.chintairyou .rightContentHead::before {
    /* ストライプ */
    background-size: auto;
  }

  .leftContent.chintairyou .leftContentHead::after,
  .rightContent.chintairyou .rightContentHead::after {
    /* 吹き出し、アイコン */
    content: "";
    width: 51px;
    height: 44px;
    position: absolute;
    bottom: 4px;
    left: 17px;
    background-size: 100%;
  }

  .leftContent,
  .rightContent {
    width: 100%;
    margin-top: 15px;
  }

  .leftContent ol li,
  .rightContent ol li {
    display: block;
  }

  .leftContent.chintairyou ol li,
  .rightContent.chintairyou ol li {
    display: flex;
  }

  .leftContent.twoLine.chintairyou ol,
  .rightContent.twoLine.chintairyou ol {
    padding: 0 0 20px 15px;
  }

  .leftContent .question,
  .rightContent .question {
    width: auto;
    font-size: 14px;
    margin-bottom: 0;
    height: auto;
  }

  .leftContent.chintairyou .question,
  .rightContent.chintairyou .question {
    width: 50%;
    margin-right: 0;
  }

  .leftContent .question .listNum,
  .rightContent .question .listNum {
    margin-right: 10px;
  }

  .leftContent .question .questionDescription,
  .rightContent .question .questionDescription {
    display: block;
    font-size: 12px;
  }

  .rightContent.twoLine .question:not(.rightContent.twoLine.chintairyou) {
    margin-left: 0;
  }

  .leftContent .answer,
  .rightContent .answer {
    margin-bottom: 30px;
  }

  .rightContent .answer {
    display: block;
  }

  .rightContent .answer .unit {
    vertical-align: bottom;
    margin-left: 5px;
  }

  .leftContent.chintairyou .answer,
  .rightContent.chintairyou .answer {
    width: 50%;
    margin-bottom: 20px;
  }

  .leftContent.chintairyou .answer,
  .rightContent.chintairyou .answer {
    width: 50%;
    margin: 20px auto;
  }

  .rightContent.twoLine .question {
    margin-left: 0;
  }

  .rightContent.twoLine .answer {
    justify-content: normal;
  }

  .leftContent .answer input,
  .rightContent .answer input {
    width: 55%;
    font-size: 16px;
    margin-right: 7px;
  }

  .leftContent.chintairyou .answer input,
  .rightContent.chintairyou .answer input {
    width: 60px;
  }

  .leftContent .answer .required,
  .rightContent .answer .required {
    padding: 2px 8px;
    font-size: 10px;
  }

  .uniqueContents .clearBtn {
    margin: 9px 0 0 43px;
  }

  .sp.clearBtnArea {
    width: 97%;
    text-align: right;
    margin-bottom: 15px;
  }

  .leftContent .clearBtn,
  .rightContent .clearBtn {
    display: inline-block;
    background: #fff;
    box-shadow: 0px 3px 0px 0 #e1e1e1;
    border-radius: 5px;
    padding: 3px 20px;
    font-size: 12px;
    margin-top: 10px;
    cursor: pointer;
  }

  .leftContent .clearBtn i,
  .rightContent .clearBtn i {
    color: #e95959;
    margin-right: 10px;
    vertical-align: middle;
  }

  .leftContent .answer input.mini,
  .rightContent .answer input.mini {
    width: 30px;
  }

  .leftContent ol.twoLine li:not(:first-of-type),
  .rightContent ol.twoLine li:not(:first-of-type) {
    margin-top: 60px;
  }

  .leftContent.chintairyou ol.twoLine li:not(:first-of-type),
  .rightContent.chintairyou ol.twoLine li:not(:first-of-type) {
    margin-top: 10px;
  }

  /* yearsLater */
  .yearsLater {
    width: calc(100% - 20px);
    padding: 15px 10px;
    text-align: left;
    font-size: 14px;
  }

  .yearsLater .question .required {
    margin-left: 10px;
  }

  .yearsLater .answer p {
    margin-left: 10px;
    display: block;
  }

  .yearsLater .answer p span {
    margin: 0 10px;
  }

  .yearsLater .answer input.mini {
    width: 30px;
  }

  .rightContent .answer .inputTop-1 {
    left: 8px;
  }

  .rightContent .answer .inputTop-2 {
    left: 157px;
  }

  .yearsLater .answer .errorMessage {
    top: 88px;
    left: -75px;
    width: 210%;
}

  /* middleContent */
  .middleContent.twoLine {
    width: 100%;
  }

  .middleContent.twoLine h2 {
    margin-left: 10px;
  }

  /* rightContent */
  /* rightContentHead */
  .rightContent.twoLine,
  .rightContent.twoLine.chintairyou {
    width: 100%;
  }

  .rightContentHead h2 {
    font-size: 14px;
    padding: 10px 58px;
  }

  .rightContentHead h2::before {
    top: 98%;
    left: 27%;
    margin-left: -15px;
    border: 7px solid transparent;
    border-top: 12px solid #538aca;
  }

  .rightContent .frame.sp {
    display: flex;
  }

  .rightContent .answer.inFrame {
    position: relative;
    top: 48px;
    left: 13px;
    margin-bottom: 95px;
    justify-content: normal;
  }

  .rightContent .answer.inFrame.big {
    top: 70px;
    margin-bottom: 115px;
  }

  .rightContent .frame.sp {
    position: relative;
    left: 10px;
    top: 10px;
  }

  .rightContent .frame::before {
    content: "";
    background: #ebebeb;
    width: 130px;
    height: 90px;
    border-radius: 5px;
    display: block;
    position: absolute;
    left: -10px;
    top: 15px;
    z-index: -1;
  }

  .rightContent .frame.big::before {
    height: 110px;
  }

  .rightContent .frame::after {
    content: "";
    background: #ebebeb;
    width: 130px;
    height: 90px;
    border-radius: 5px;
    display: block;
    position: absolute;
    left: 140px;
    top: 15px;
    z-index: -1;
  }

  .rightContent .frame.big::after {
    height: 110px;
  }

  .rightContent .frame span {
    background: #538ACA;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    padding: 6px 20px;
    border-radius: 30px;
  }

  .rightContent .frame span:first-of-type {
    left: 0;
  }

  .rightContent .frame span:nth-of-type(2) {
    left: 149px;
  }

  /* result */
  .result table {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 30px;
  }

  .result table tbody tr td {
    padding: 10px;
  }

  .result table tbody tr td .inputNum {
    margin-right: 10px;
    font-size: 14px;
  }

  .result table tbody tr td:first-of-type {
    position: relative;
  }

  .result table.scrollTable tbody tr td:first-of-type {
    position: static;
  }

  .result table tbody tr td:first-of-type span {
    bottom: 27px;
    right: 0;
    width: 30px;
    font-size: 12px;
  }

  .result .scrollTable tbody tr td:first-of-type span {
    bottom: 13px;
    left: 60px;
  }

  .result table tbody tr td.table-gray {
    padding-right: 10px;
    text-align: center;
    white-space: nowrap;
  }

  .result table.scrollTable tbody tr td.table-gray {
    position: static;
  }

  .result table tbody tr td.table-gray span {
    bottom: 26px;
    right: 0;
  }

  .result table tbody tr td:nth-of-type(2):not(.table-gray),
  .result table tbody tr td:nth-of-type(3):not(.table-gray) {
    width: 40%;
    font-size: 12px;
  }

  .scrollTableArea {
    position: relative;
    background: #ddebef;
    padding: 15px;
    overflow: scroll;
    margin-bottom: 35px;
    margin-top: 0;
  }

  .scrollTableArea .progress {
    text-align: left;
  }

  .scrollTableArea {
    margin-top: 16px;
  }

  .result table.scrollTable {
    width: 520px;
    margin: 0;
    position: relative;
  }

  .result table.scrollTable.kuriage {
    width: 730px;
  }

  .result table.scrollTable::before {
    /* 右padding用 */
    position: absolute;
    top: 0;
    left: 100%;
    width: 15px;
    height: 1px;
    content: '';
  }

  .result table.scrollTable td {
    font-size: 12px;
  }

  .result table.scrollTable tbody tr td:nth-of-type(2):not(.table-gray),
  .result table.scrollTable tbody tr td:nth-of-type(3),
  .result table.scrollTable tbody tr td:nth-of-type(4),
  .result table tbody tr td.table-blue:nth-of-type(3):not(.table-gray) {
    width: 35%;
    font-size: 12px;
  }

  .result table.scrollTable.kuriage tbody tr td:nth-of-type(2):not(.table-gray),
  .result table.scrollTable.kuriage tbody tr td:nth-of-type(3),
  .result table.scrollTable.kuriage tbody tr td:nth-of-type(4),
  .result table.scrollTable.kuriage tbody tr td:nth-of-type(5) {
    width: 26%;
    font-size: 12px;
  }

  /* result（賃貸） */
  .result table.chintairyou {
    table-layout: fixed;
    width: 95%;
    margin: 15px auto 30px auto;
  }

  .result table.chintairyou tr td {
    font-size: 12px;
    padding: 10px 0;
    text-align: center;
  }

  .result table.chintairyou tr td.table-blue {
    padding: 7px 0;
    font-size: 12px;
  }

  .result table.chintairyou tr td .loan-cell {
    font-size: 10px;
  }

  .result table.chintairyou tbody tr td:nth-of-type(2):not(.table-gray),
  .result table.chintairyou tbody tr td:nth-of-type(3):not(.table-gray),
  .result table.chintairyou tbody tr td:nth-of-type(4):not(.table-gray) {
    font-size: 12px;
    margin: 0;
    text-align: center;
  }

  .result table.chintairyou tr td.table-gray {
    white-space: normal;
    padding-right: 0;
  }

  .result table.chintairyou tr.sp {
    display: table-row;
    text-align: center;
  }

  .result table.chintairyou td.pc {
    display: none;
  }

  /* result（投資） */
  .result.toushi {
    display: flex;
    width: 100%;
    margin-top: 16px;
    margin-bottom: 40px;
    border-radius: 0;
    padding: 20px 0;
    justify-content: space-around;
  }

  .result.toushi .resultBox {
    width: 40%;
  }

  .result.toushi .resultBox:not(:first-of-type) {
    margin-top: 0;
  }

  .result.toushi p {
    display: table;
    font-size: 16px;
    margin: 0 auto;
  }

  .result.toushi p i {
    margin-right: 10px;
  }

  .result.toushi .yieldResult {
    padding: 13px;
    margin-top: 8px;
  }

  .result.toushi .yieldResult span {
    font-size: 20px;
  }

  /* reduction */
  .reduction {
    display: block;
    width: 80%;
    margin: 20px auto 20px;
    padding: 20px;
    border-radius: 5px;
  }

  .reduction .reduction-left,
  .reduction .reduction-right {
    width: 100%;
  }

  .reduction .reduction-right {
    margin-top: 20px;
  }

  .reduction-right .asterisk {
    color: #e95959;
    font-size: 12px;
    vertical-align: bottom;
  }

  .reduction p {
    font-size: 14px;
  }

  .reduction .resultFrame {
    flex-wrap: wrap;
    margin-top: 10px;
    padding: 7px 10px;
    font-size: 12px;
  }

  /* bottomContent */
  /* attention */
  .attention {
    margin: 0 15px;
  }

  .attention ul {
      margin-top: 30px;
      font-size: 12px;
  }

  /* CSITE-3998 */
  /* link__kariiregaku */
  .link__kariiregaku_simulation a {
    -webkit-appearance: none;
    -webkit-text-size-adjust: 100%;
    margin-right: 0;
    width: 228px;
    font-size: 14px;
    padding: 15px 8px 15px 70px;
  }
  .input__robot {
    bottom: 63px;
    right: 104px;
  }
  /* //CSITE-3998 */
}

/* ///////////////// ここから画面幅が小さいSP（iPhone5 等） ///////////////// */
@media screen and (max-width: 320px) {
  .chintairyou .errorMessage {
    right: 25px;
  }
  .leftContent.chintairyou .leftContentHead::after,
  .rightContent.chintairyou .rightContentHead::after {
    width: 41px;
    height: 34px;
    bottom: 9px;
    left: 10px;
  }

  .leftContent.chintairyou .question,
  .rightContent.chintairyou .question {
    position: relative;
    width: 60%;
    font-size: 13px;
  }

  .leftContent.chintairyou .question .required,
  .rightContent.chintairyou .question .required {
    font-size: 10px;
  }

  .leftContent.chintairyou .answer input,
  .rightContent.chintairyou .answer input {
    width: 40%;
  }

  .leftContent.chintairyou .answer input,
  .rightContent.chintairyou .answer input {
    width: 55px;
    padding: 9px 7px;
    font-size: 14px;
  }

  .leftContent.chintairyou .answer .unit,
  .rightContent.chintairyou .answer .unit {
    font-size: 12px;
    margin: 25px 0 0 0;
  }

  .yearsLater .answer .errorMessage {
    top: 115px;
    left: -75px;
    width: 180%;
  }
}