@charset "UTF-8";
/* text */
.font-weight-bold {
		font-weight: bold !important;
}
.small {
		font-size: 80%;
}
.text-error {
		color: #fc0000;
		display: block;
}
.text-left {
		text-align: left;
}
.text-center {
		text-align: center;
}
.text-right {
		text-align: right;
}
.text-nowrap {
		white-space: nowrap;
}

/* padding */
.pt-1rem {
		padding-top: 1rem !important;
}

/* margin */
.mb-2rem {
		margin-bottom: 2rem !important;
}

/* width */
.w-100 {
		width: 100% !important;
}
.w-auto {
		width: auto !important;
}

/* display */
.d-sm-none {
		display: inline-block;
}

/* flex */
.align-items-center {
		align-items: center !important;
}

/* position */
.position-relative {
		position: relative !important;
}
.position-absolute {
		position: absolute !important;
}

/* section */
.section {
		max-width: 900px;
}
@media screen and (min-width: 1250px) {
		.section {
				max-width: 980px;
		}
}
.section.sim-form {
		width: 980px;
		margin: 40px auto 0;
		color: #666666;
		font-size: 1.6rem;
}

/* box */
.box {
		margin: 0 0 6rem;
}
.box h4 {
		font-size: 2.4rem;
		font-weight: bold;
		margin-bottom: 0;
		border-left: solid 4px #0572ce;
		padding-left: 10px;
}
.box .blueBox {
		background-color: #e5f2ff;
		margin: 20px auto;
		padding: 20px;
		border-radius: 5px;
}
.box .blueBox .row {
		margin-bottom: 1rem;
}

/* row, col */
.row {
		display: flex;
		flex-direction: column;
		align-items: baseline;
		padding: 0;
		width: 100%;
		margin-top: 1rem;
}
.row .col {
		display: block;
		flex: 1 1 auto;
		margin-left: 0;
		max-width: 100%;
		width: 100%;
		min-width: 0;
}
@media screen and (min-width: 40rem) {
		.row {
				flex-direction: row;
				margin-left: -1.0rem;
				width: calc(100% + 2.0rem);
		}
		.row.width10 {
				width: calc(100% - 10rem);
		}
		.row .col {
				margin-bottom: inherit;
				padding: 0 1.0rem;
		}
}

/* progressbar */
.progressbar {
		display: flex;
		flex-wrap: wrap;
		overflow: hidden;
		list-style: none;
}
.progressbar .item {
		position: relative;
		width: 50%;
		text-align: center;
		position: relative;
		align-items: center;
		justify-content: center;
		padding: 13px 0;
		line-height: 1.5;
		background: #F5F5F5;
		color: #999999;
		margin-bottom: 0;
}
.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
		position: absolute;
		z-index: 2;
		top: 0;
		bottom: 0;
		left: 100%;
		content: '';
		border: 37px solid transparent;
		border-left: 20px solid #F5F5F5;
		margin: auto;
}
.progressbar .item:not(:last-child)::before {
		margin-left: 1px;
		border-left-color: #FFF;
}
.progressbar .item.active {
		z-index: 1;
		background: #0572ce;
		color: #FFF;
}
.progressbar .item.active:not(:last-child)::after {
		border-left-color: #0572ce;
}
.progressbar .item.active:not(:last-child)::before {
		border-left: none;
}

/* btn-area */
.btn-area {
		display: flex;
		justify-content: space-around;
		width: 80%;
		margin: 0 auto;
}
.btn-area .row {
		align-items: baseline;
		width: auto;
}
.btn-area .button-right,
.btn-area .button-left{
		position: relative;
}
.btn-area .button-right::after{
		content: "";
		position: absolute;
		margin: auto;
		padding: 0;
		vertical-align: middle;
		width: 10px;
		height: 10px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 35%;
		right: 10%;
		display: block;
}
.btn-area .button-left::after{
		content: "";
		position: absolute;
		margin: auto;
		padding: 0;
		vertical-align: middle;
		width: 10px;
		height: 10px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(225deg);
		transform: rotate(225deg);
		top: 35%;
		left: 10%;
		display: block;
}
.btn-area button,
.btn-area input[type="button"] {
		transition: .2s;
}
.btn-area .btn-accent {
		display: block;
		text-align: center;
		font-weight: bold;
		color: #000;
		background: #FFFF00;
		width: 65px;
		height: 65px;
		padding: 14px 8px 8px;
		line-height: 20px;
		border-radius: 50%;
		top: -22px;
		left: -22px;
		z-index: 1;
		color: #0a50a0;
}
.btn-area .btn-col {
		margin: 0 3rem;
		padding: 1rem 0 0;
		position: relative;
		width: auto;
}
.btn-area .btn-row {
		margin: 0 auto;
}
@media screen and (max-width: 899px) {
		.btn-area .btn-col {
				margin: 0 1.5rem;
		}
		.btn-area .btn-accent {
				top: -35px;
		}
}
@media screen and (max-width: 639px) {
		.btn-area .btn-col {
				margin: 0;
				width: 100%;
				padding: 4rem 0 0;
		}
		.btn-area .btn-accent {
				top: 15px;
		}
		.btn-area .btn-row {
				margin: 0;
		}
}

/* button */
.sim-form button,
.sim-form input[type="button"] {
		background-color: #0572ce;
		border: 0.1rem solid #0572ce;
		border-radius: .8rem;
		color: #fff;
		cursor: pointer;
		display: inline-block;
		font-size: 1.8rem;
		font-weight: 700;
		height: 6.8rem;
		letter-spacing: .1rem;
		line-height: 6.8rem;
		padding: 0 3.0rem;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		white-space: nowrap;
		width: 360px;
}
.sim-form button:hover,
.sim-form input[type="button"]:hover,
.sim-form .btn-menu:hover {
		opacity: 0.6;
		color: #fff;
		outline: 0;
}
.sim-form .btn-menu {
		background-color: #ff7900;
		border: 0.1rem solid #ff7900;
		border-radius: .8rem;
		color: #fff;
		cursor: pointer;
		display: inline-block;
		font-size: 1.8rem;
		font-weight: 700;
		height: 6.8rem;
		letter-spacing: .1rem;
		line-height: 6.8rem;
		padding: 0 3.0rem;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		white-space: nowrap;
		width: 360px;
}
.sim-form a.btn-menu {
		display: block;
}
@media screen and (max-width: 1500px) {
		.sim-form .btn-menu {
				width: 280px;
		}
}
@media screen and (max-width: 1240px) {
		.sim-form .btn-menu {
				width: 240px;
		}
}
@media screen and (max-width: 899px) {
		.sim-form .btn-menu {
				padding: 0;
				width: 160px;
				font-size: 90%;
		}
}
@media screen and (max-width: 639px) {
		.sim-form .btn-menu {
				width: 100%;
				font-size: 1.8rem;
		}
}
.sim-form .sim-title {
		font-size: 20px;
		color: #0d487d;
}
@media screen and (max-width: 768px) {
		.sim-form .sim-title {
				font-size: 18px;
		}
}

/* radio, label */
.radioArea {
		display: flex;
		justify-content: space-around;
		margin: 1rem 0;
}
.radioArea label {
		display: block;
		width: 40%;
		padding: 10px 4px;
		font-size: 1.6rem;
		font-weight: bold;
		border: 2px solid #0070bd;
		border-radius: 5px;
		background: #ffffff;
		cursor: pointer;
		transition: .2s;
		text-align: center;
}
.radioArea input[type="radio"] {
		display: none !important;
}
.radioArea input[type="radio"]:checked + label {
		background: #0070bd;
		color: #fff;
}
.radioArea input[type="radio"] + label:hover {
		background: rgba(0, 112, 189, 0.40);
}

/* result-table */
.result-table table,
.result-table th,
.result-table td {
		border-collapse: collapse;
		border: 1px solid #d9d9d9;
		font-size: 1.6rem;
		vertical-align: middle;
}
.result-table th,
.result-table td {
		padding: 10px;
}
.result-table th {
		background: #e5f4fd;
}
.result-table .result {
		margin: 3rem 0;
		font-size: 30px;
}
.result-table .result .text-sum {
    color: #0066cc;
		margin-bottom: 0;
}
.result-table .result .text-sum .sum {
		font-size: 50px;
}
.result-table .result .text-tax {
		color: #0066cc;
		margin-bottom: 0;
}
.result-table .result .text-app {
		color: #0066cc;
		margin-bottom: 0;
}

/* form */
fieldset, input, select, textarea {
		margin-bottom: 1.5rem;
}
input {
		-webkit-appearance: none;
		background-color: #ffffff;
		border: 0.1rem solid #d1d1d1;
		border-radius: 0.4rem;
		box-shadow: none;
		box-sizing: inherit;
		height: 3.8rem;
		width: auto;
		padding: 0.6rem 1rem 0.7rem;
		margin-bottom: 0;
}
input:focus {
		border-color: #0572ce;
		outline: 0;
}

/* .sim-form */
.sim-form .mw-appe1 {
		max-width: 180px;
}
.sim-form .text-info {
		font-size: 16px;
		font-weight: normal !important;
		color: #666;
		display: block;
		margin: 8px 0 0 0;
		padding: 0;
		width: 90%;
}

/* media screen */
@media screen and (max-width: 899px) {
.section.sim-form {
		max-width: 96%;
		margin: 40px 2% 0;
}
.btn-area {
		width: 90%;
		margin: 0 auto;
		flex-direction: column;
}
}
@media screen and (max-width: 768px) {
.d-sm-none {
		display: none;
}
.section.sim-form {
		width: 96%;
		margin: 20px 2% 0;
		font-size: 1.4rem;
}
.box h4 {
		font-size: 1.8rem;
}
.box .blueBox {
		margin: 10px auto;
		padding: 15px;
}
.sim-form button,
.sim-form input[type="button"] {
		width: 100%;
}
.sim-form .text-info {
		width: 100%;
}
.result-table .result {
		margin: 2rem 0;
		font-size: 21px;
}
.result-table .result .text-sum .sum {
		font-size: 40px;
}
}


/*202409add
.btn-area .btn-accent {
	width: 240px;
	height: auto;
	padding: 10px 8px 8px;
	line-height: 1.3;
	border-radius: 10px;
	top: -40px;
	left: -30px;
	color: #0a50a0;
}
.btn-area .btn-accent:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
  border-top: 10px solid #FFFF00;
}
.fsRed {
	color: #ff0000;
}
.fss {
	font-size: 1.0rem;
}
.btn-area .btn-accent .brBlock {
	display: none;
}

@media screen and (max-width: 899px) {
	.btn-area .btn-accent {
		left: -50px;
		width: auto;
		line-height: 1.0;
		font-size: 1.2rem;
	}
	.btn-area .btn-accent .brBlock {
		display: block;
	}
}
@media screen and (max-width: 639px) {
	.btn-area .btn-accent {
		top: 5px;
		left: -15px;
		font-size: 1.4rem;
	}
	.btn-area .btn-accent .brBlock {
		display: none;
	}
}*/