@charset "UTF-8";

@media screen and (max-width: 767px) {
	/*-------------------------------------------
	layout
	-------------------------------------------*/
	#wrap {
		transform: none !important; /* fixed対策 */
	}
	.loanSimulator {
		display: block;
	}
	.simulationResultBlock01 {
		position: relative;
		bottom: 0;
	}


	/*-------------------------------------------
	parts
	-------------------------------------------*/
	/* full column */
	#mainArea .coverTitle + .v3_fullColumnB01 {
		margin-top: 0;
	}
	.v3_fullColumnA01:not(:first-child) {
		padding-left: 10px;
		padding-right: 10px;
	}

	/* table */
	.v4-glyphScroll01.column1 {
		display: none;
	}
	.simComparisonTable {
		overflow-x: auto;
		width: calc(100% + 10px);
	}
	.simComparisonTable.column1 {
		overflow-x: visible;
		width: 100%;
	}
	.simComparisonTable.column1 .w22p {
		width: 38% !important;
	}
	.simComparisonTable.column2 .w22p {
		width: 33% !important;
	}
	.simComparisonTable::-webkit-scrollbar {
		width: auto;
		height: 15px;
	}
	.simComparisonTable::-webkit-scrollbar-track {
		background: #dedede;
		border-radius: 10px;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		-ms-border-radius: 10px;
		-o-border-radius: 10px;
		border-radius: 10px;
	}
	.simComparisonTable::-webkit-scrollbar-thumb {
		background: #0c3bbc;
		border: solid 3px #dedede;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		-ms-border-radius: 10px;
		-o-border-radius: 10px;
		border-radius: 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.simComparisonTable .simTable {
		min-width: 460px;
		border-left: 0;
		border-collapse: separate;
		border-spacing: 0;
		font-size: 0.75em;
	}
	.column1 .simTable {
		min-width: 0;
	}
	.column2 .simTable {
		min-width: 337px
	}
	.simTable .sticyCell01 {
		z-index: 1;
		position: -webkit-sticky;
		position: sticky;
		left: 0;
		padding-right: 5px;
		padding-left: 5px;
		border-left: 1px solid #e1e1e1;
	}

	/* btn */
	.btnSimT02,
	.btnSimT03 {
		padding: 5px 0 7px;
		border-radius: 20px;
		font-size: 0.875em;
	}
	.v3-boxModal .v3-itemModal .btnSimT01 > span {
		font-size: 1.0em;
	}
	.v3-boxModal .v3-itemModal .btnSimT01 > span::before,
	.btnSimT02 > span::before,
	.btnSimT03 > span::before {
		margin-top: -7px;
	}

	/* simulationResultBlock01 */
	.simulationResultBlock01 > .inner {
		z-index: 100;
		position: fixed;
		width: auto;
		margin: 40px -10px 0;
		padding: 0 18px 10px;
		border-radius: 0;
		bottom: -200px;
		transition: bottom 1.0s cubic-bezier(0.19, 1, 0.22, 1);
	}
	.simulationResultBlock01 > .inner.hide {
		bottom: -200px;
	}
	.simulationResultBlock01 > .inner.catHide {
		bottom: 0;
	}
	.simulationResultBlock01 > .inner.catShow {
		bottom: 0;
	}
	.simulationResultBlock01 > .inner.focusHide {
		bottom: -200px !important;
	}
	.simulationResultBlock01 > .inner::before {
		content: '';
		display: block;
		position: absolute;
		top: -40px;
		left: 110px;
		width: 50px;
		height: 46px;
		background: none;
		/*background-size: 50px 46px;*/
	}
	.simulationResultBlock01 > .inner.hide::before {
		background: url(/kojin/jutaku/simulation/shinki/images/ico_nya01.png) 0 0 no-repeat;
		background-size: 50px 46px;
	}
	.simulationResultBlock01 > .inner.fixed::before {
		background: url(/kojin/jutaku/simulation/shinki/images/ico_nya03.png) 0 0 no-repeat;
		background-size: 50px 46px;
	}
	.simulationResultBlock01 > .inner::after {
		content: '';
		display: block;
		position: absolute;
		top: -30px;
		left: 85px;
		width: 40px;
		height: 30px;
		background: url(/kojin/jutaku/simulation/shinki/images/ico_tail01.png) 0 0 no-repeat;
		background-size: 40px 30px;
	}
	.simulationResultBlock01 .resultHead {
		display: none;
	}
	.resultMainBlock01,
	.resultSubBlock01 {
		display: table;
		width: 100%;
		padding: 5px 0;
		border-bottom: solid 1px #fff;
	}
	.resultMainBlock01 dt,
	.resultSubBlock01 dt {
		display: table-cell;
		font-weight: bold;
	}
	.resultMainBlock01 dt {
		font-size: 0.875em;
	}
	.resultSubBlock01 dt {
		font-size: 0.75em;
	}
	.resultMainBlock01 dd {
		display: table-cell;
		font-size: 1.5em;
	}
	.resultSubBlock01 dd {
		display: table-cell;
		font-size: 0.75em;
	}

	.resultAnnualBlock01,
	.resultTotalBlock01 {
		width: 46%;
		margin-top: 7px;
	}
	.resultAnnualBlock01 {
		float: left;
	}
	.resultTotalBlock01 {
		float: right;
	}
	.resultAnnualBlock01 dt,
	.resultTotalBlock01 dt,
	.resultAnnualBlock01 dd,
	.resultTotalBlock01 dd {
		font-size: 0.75em;
	}

	/* simulationResultButton */
	.simulationResultButton {
		clear: both;
		margin-top: 0;
		padding-top: 10px;
	}
	.simulationResultButton .spColumnA2 > *:nth-child(odd) {
		padding-right: 2%;
	}
	.simulationResultButton .spColumnA2 > *:nth-child(even) {
		padding-left: 2%;
	}

	/* simSettingButtonArea01 */
	.simSettingButtonArea01 {
		width: 100%;
		margin: 0 0 30px;
	}
	.simSettingButtonArea01 > .button {
		width: auto;
		min-width: 120px;
		padding: 15px 0;
		border-radius: 0 10px 10px 0;
		font-size: 1.0em;
		line-height: 1.4;
	}
	.simSettingButtonArea01 > .button > span {
		margin-left: -10px;
		font-size: 0.875em;
	}
	.simSettingButtonArea01 > .description {
		width: 100%;
		padding: 0 20px;
		border-radius: 10px 0 0 10px;
		font-size: 0.875em;
		line-height: 1.4;
	}

	/*-------------------------------------------
	modal
	-------------------------------------------*/
	.simModalWrap.comparison {
		overflow-x: visible;
	}
	.simSaveText01 {
		top: -30px;
		margin: 0 -10px;
		padding: 10px;
	}

	/*-------------------------------------------
	form Setting
	-------------------------------------------*/
	.simFiledset01 .inputNum > input {
		width: 5em;
	}
	/* bonus */
	.simBonusNum {
		justify-content: flex-end;
	}
	.simBonusNum .bonusPct {
		margin-right: 20px;
		padding: 8px 14px;
		font-size: 0.875em;
		line-height: 1.2;
	}
	.simBonusNum .bonusPct > dl {
		display: block;
		width: 100%;
	}
	.simBonusNum .bonusPct > dl > dt,
	.simBonusNum .bonusPct > dl > dd {
		display: block;
	}
	.simBonusNum .bonusPct > dl > dt::after {
		display: none;
	}
	.simBonusNum .bonusPct > dl > dd {
		color: #0c3bbc;
	}
	.simBonusNum .bonusPct > dl > dd .bonusPctNum {
		min-width: 1.5em;
		width: auto;
		text-align: left;
	}
	.simFiledset01 .simBonusNum .inputNum {
		margin-bottom: 0;
	}

	/* tooltip */
	.simTooltip01 {
		width: 16em;
		margin-left: -3.6em;
		font-size: 0.875em;
	}
	.simBonusNum .simTooltip01{
		margin-left: -9.5em;
	}


	/* range slider */
	.simulationForm .simFiledset01:last-child {
		border-bottom: 0;
	}
	.simFiledset01 > dl {
		display: block;
		width: auto;
		margin: 0 0 20px;
		padding-bottom: 35px;
		border-top: 0;
		border-bottom: solid 1px #e1e1e1;
	}
	.simFiledset01 .simFiledset01Inner {
		padding: 0 30px 40px;
	}
	.simFiledset01 .legend {
		display: block;
		width: auto;
		padding: 0;
	}
	.simFiledset01 .simFiledset01Inner {
		display: block;
		width: auto;
		padding: 0 10px;
		border-left: 0;
	}

	/* simPlanList01 */
	.simPlanBlock01 {
		margin: 20px 0 0;
	}
	.simPlanList01 {
		margin-bottom: 30px;
		font-size: 1.0em;
	}
	.simPlanBlock01 .simPlanButton01 {
		margin-top: 0;
	}
	.planRadioList01 input + label > .planApplyWrap {
		min-width: 65px;
	}

	/* simulationMvBlock */
	.simulationMvBlock01 > .columnInner {
		padding: 30px 0 0;
		min-height: 150px;
		background: url(/kojin/jutaku/simulation/shinki/images/shinki_bg_01.png) no-repeat left 10px top -38px;
		background-size: 219px 196px;
	}
	.simulationMvBlock01 .simulationTabBlock01 {
		left: 50%;
		margin-left: -47%;
		width: 94%;
	}
	.simulationMvBlock01 .simulationTabBlock01 .simulationTabList > li > * {
		padding: 9px 5px;
		width: 100%;
	}
	.simulationMvBlock01 .simulationTabBlock01 .simulationTabList > li > span,
	.simulationMvBlock01 .simulationTabBlock01 .simulationTabList > li > [aria-selected="true"] {
		padding: 12px 5px;
	}
	.simulationMvBlock01.jsItemClose01 .title {
		padding: 0 39px;
	}

	/* simulationConversion */
	.simulationConversion01.v3_fullColumnA01:not(:first-child) {
		margin-top: 68px;
	}
	.simulationConversion01 .columnInner::before {
		top: -32px;
		left: 0;
		height: 32px;
		background-size: cover;
	}

	/* simulationCarousel */
	.simulationCarousel01 .v3-cardblockA01 {
		width: 100%;
	}
	.simulationCarousel01 .v3-cardblockA01 > .v3-blockInner {
		padding-top: 40px;
	}
	.simulationCarousel01 .carouselList > li,
	.simulationCarousel01 .bx-viewport .carouselList > li a {
		width: 100%;
	}
	.simulationCarousel01.autoControls .bx-controls {
		padding: 12px 80px 12px 40px;
	}
	.simulationCarousel01.autoControls .bx-prev::before {
		left: 10px;
	}
	.simulationCarousel01.autoControls .bx-next::after {
		right: 50px;
	}
	.simulationCarousel01.autoControls .bx-controls-auto {
		right: 8px;
	}
	.simulationCarousel01.autoControls .bx-start::before {
		right: -.3em;
	}

	/* notes */
	.attentionBlock01.jsAccTitle > .blockInner > .blockTitle {
		padding: 25px 24px;
	}

	/*-------------------------------------------

	/kojin/jutaku/help/consultation.html

	-------------------------------------------*/
	.consultation_layout01 .text01.glyphLamp01 > span::before {
		margin-top: -16px;
	}
	.consultation_layout01 .text02 {
		font-size: 1em;
	}
	.v2-listMarkCheck02.text02 *[class*="glyphCheck"] > span {
		padding-left: 2em;
	}
	.v2-listMarkCheck02.text02 *[class*="glyphCheck"] > span:before {
		top: -4px;
		font-size: 28px;
	}
}
