@charset "UTF-8";

html {
	font-size: 10px;
	line-height: 1.6;
	letter-spacing: 1px;
	/*font-family: "Zen Kaku Gothic New", sans-serif;*/
	font-family: 'Noto Sans JP', sans-serif;
	color: #222;
	scroll-behavior: smooth;
		scroll-padding-top: 100px;
}

/* PC */
@media (min-width: 1041px) {
	html {
	}
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
	html {
		scroll-padding-top: 80px;
	}	
}

@media (max-width: 767px) {
	html {
		scroll-padding-top: 60px;
	}
}

body{
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;

	-webkit-tap-highlight-color:rgba(0,0,0,0);
	background: #fff;
	position: relative;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

.grecaptcha-badge { visibility: hidden; }

#wrapper a:link      { text-decoration: underline; color: #0088ff; }
#wrapper a:visited   { text-decoration: underline; color: #0088ff; }
#wrapper a:hover     { text-decoration: none; }
#wrapper a:active    { text-decoration: none; }

a[href^="tel:"] {
	pointer-events: none;
}

a,:focus {
	outline: none;
}

::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

.img img {
	width: 100%;
	height: auto;
}

.tb   { display: none!important;}
.tbsp { display: none!important;}
.sp   { display: none!important;}

.pc   { display: inline-block!important;}
.pctb { display: inline-block!important;}
.pcsp { display: inline-block!important;}

.opacity a:hover,
.opacity input:hover {
	opacity: 0.60;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-moz-opacity: 0.60;
	-khtml-opacity: 0.60;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none!important;
}

/*======================================================
  common
======================================================*/

.wtLnk a:link,
.wtLnk a:visited {
	color: #fff!important;
	text-decoration: none!important;
}

.bkLnk a:link,
.bkLnk a:visited {
	color: #333!important;
	text-decoration: none!important;
}

.wtTxt {
	color: #fff;
}

.bkTxt {
	color: #333;
}

/*======================================================
  header
======================================================*/

header {
	width: 100%;
	height: 100px;
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 0 0 30px;
	box-sizing: border-box;
	background: #fff;
	z-index: 100;
	transition: all 0.3s ease;
}

header.chg {
	box-shadow: 0 0 6px rgba(0,0,0,0.15);
}

.lgCth {
	font-weight: 500;
	font-size: 1.3rem;
	margin: 0 0 15px;
}

.lgInr {
	display: flex;
	align-items: center;
}

.lg {
	max-width: 190px;
}

.lgNme {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.3;
	color: #232323;
	margin: 0 0 0 15px;
}

.gNav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.gNav li a {
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px;
	box-sizing: border-box;
	background: #fff14c;
}

.gNav li a:link,
.gNav li a:visited {
	text-decoration: none!important;
}

.gNav li:nth-child(1) a {
	background: #fff14c;
}

.gNav li:nth-child(2) a {
	background: #ff8400;
}

.gNavBox {
	position: relative;
	padding: 0 0 0 55px;
}

.gNav li .gNavBox:before {
	content: "";
	position: absolute;
	top: calc(50% - 20px);
	left: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
}

.gNav li:nth-child(1) .gNavBox:before {
	background: url(../images/icn_simulation.png) center no-repeat #05bedc;
	background-size: 25px auto;
}

.gNav li:nth-child(2) .gNavBox:before {
	background: url(../images/icn_form.png) center no-repeat #ffa94d;
	background-size: 25px auto;
}

.gNavCth {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1;
	margin: 0 0 7px;
	padding: 3px 10px;
	background: #fff;
	border-radius: 30px;
}

.gNav li:nth-child(1) .gNavCth {
	color: #05bedc;
}

.gNav li:nth-child(2) .gNavCth {
	color: #ff8400;
}

.gNavTtl {
	font-weight: 700;
	font-size: 1.9rem;
	line-height: 1.2;
}

.gNav li:nth-child(1) .gNavTtl {
	color: #004c8e;
}

.gNav li:nth-child(2) .gNavTtl {
	color: #fff;
}

@media screen and (max-width:1100px) {
	.gNav li a {
		padding: 30px 20px;
	}
}

@media screen and (min-width:768px) and (max-width:1040px) {
	header {
		height: 80px;
	}

	.lgCth {
		font-size: 1.2rem;
		margin: 0 0 10px;
	}

	.lg {
		max-width: 180px;
	}

	.lgNme {
		font-size: 1.3rem;
		margin: 0 0 0 10px;
	}

	.gNav {
		display: none;
	}
}

@media screen and (max-width:767px) {
	header {
		height: 60px;
		padding: 0 0 0 15px;
	}

	.lgCth {
		font-size: 1rem;
		margin: 0 0 7px;
	}

	.lg {
		max-width: 155px;
	}
	
	.lg img {
		width: 122px;
		height: 40px;
	}

	.lgNme {
		font-size: 1.2rem;
		margin: 0 0 0 7px;
	}

	.gNav {
		display: none;
	}
}

/* mdlAra */
.mdlAra {
	display: none;
}

@media screen and (max-width:1040px) {
	.mdlAra {
		display: block;
	}

	.menu, .menu span {
		display: inline-block;
		-webkit-transition: all .2s;
		transition: all .2s;
		box-sizing: border-box;
	}

	.menu {
		position: fixed;
		top: 0;
		right: 0;
		width: 80px;
		height: 80px;
		background: #004c8e;
		z-index: 2000;
		cursor: pointer;
		transition: all 0.3s ease;
	}

	.menu span {
		width: 50px;
		height: 4px;
		position: absolute;
		left: 15px;
		background: #fff;
		z-index: 100;
	}

	button {
		border: none;
		background: none;
	}

	.menu span:nth-of-type(1) {
		top: 26px;
	}

	.menu span:nth-of-type(2) {
		top: 38px;
	}

	.menu span:nth-of-type(3) {
		top: 50px;
	}

	.menu.active span:nth-of-type(1) {
		-webkit-transform: translateY(12px) rotate(45deg);
		transform: translateY(12px) rotate(45deg);
	}

	.menu.active span:nth-of-type(2) {
		opacity: 0;
	}

	.menu.active span:nth-of-type(3) {
		-webkit-transform: translateY(-12px) rotate(-45deg);
		transform: translateY(-12px) rotate(-45deg);
	}

	.mdlNavBox {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 1000;
		width: 100% ;
		height: 100vh;
		opacity: 0;
		padding: 30px;
		overflow-y: scroll;
		box-sizing: border-box;
		background: url(../images/bg_cloud.png) top no-repeat #0060F3;
		background-size: 100% auto;
		transition: all  0.3s ease;
		visibility: hidden;
	}

	.mdlNavInr {
		max-width: 800px;
		margin: 0 auto;
	}

	.mdlNavBox.active {
		right: 0;
		opacity: 1;
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		transform: translateX(0);
		visibility: visible;
	}
	
	.mdlLgBox {
		text-align: center;
		margin: 0 0 40px;
	}
	
	.mdlLgBox .lgInr {
		display: block;
	}
	
	.mdlLgBox .lg {
		margin: 0 auto 5px;
	}
	
	.mdlLgBox,.mdlLgBox .lgNme {
		color: #fff!important;
	}

	.mdlLg {
		max-width: 200px;
		margin: 0 auto 30px;
	}
}

@media screen and (max-width:767px) {
	.menu {
		width: 60px;
		height: 60px;
	}

	.menu span {
		width: 36px;
		height: 3px;
		left: 12px;
	}

	.menu span:nth-of-type(1) {
		top: 17.5px;
	}

	.menu span:nth-of-type(2) {
		top: 28.5px;
	}

	.menu span:nth-of-type(3) {
		top: 39.5px;
	}
	
	.menu.active span:nth-of-type(1) {
		-webkit-transform: translateY(11px) rotate(45deg);
		transform: translateY(11px) rotate(45deg);
	}

	.menu.active span:nth-of-type(3) {
		-webkit-transform: translateY(-11px) rotate(-45deg);
		transform: translateY(-11px) rotate(-45deg);
	}

	.mdlNavBox {
		padding: 30px 15px;
	}
	
	.mdlLgBox {
		margin: 0 0 30px;
	}

	.mdlLg {
		max-width: 155px;
	}
}


/*======================================================
  mnAra
======================================================*/

.mnAra {
	height: 750px;
	margin: 100px 0 0;
	background: #0060F3;
	background: linear-gradient(320deg,rgba(0, 96, 243, 1) 0%, rgba(1, 150, 244, 1) 100%);
}

.mnCtr {
	padding: 70px 30px 0;
	box-sizing: border-box;
	background: url(../images/img_main.png) bottom 0 right -200px no-repeat,
	url(../images/bg_main.png) bottom no-repeat,
	url(../images/bg_cloud.png) top no-repeat;
	background-size: auto 100%, 100% auto,100% auto;
}

.mnWrp {
	max-width: 1400px;
	height: 750px;
	position: relative;
	margin: 0 auto;
}

.mnSubCthBox {
	display: inline-block;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.4;
	color: #fff;
	margin: 0 0 30px;
	padding: 10px 60px 10px 20px;
	background: url(../images/icn_light.png) right 10px center no-repeat;
	background-size: 50px auto;
	border: solid 1px rgba(255,255,255,0.5);
	border-radius: 8px;
}

.mnCth {
	max-width: 645px;
	margin: 0 0 50px;
}

.mnBtnBox {
	max-width: 460px;
}

.mnBtnCth {
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.2;
	color: #fff;
	letter-spacing: 0.2em;
	margin: 0 0 10px;
}

.mnBtnLst li:nth-child(1) {
	margin: 0 0 20px;
}

.mnBtnLst li a {
	display: block;
	position: relative;
	box-sizing: border-box;
	padding: 30px 50px 30px 90px;
	border-radius: 100px;
	z-index: 1;
}

.mnBtnLst li:nth-child(2) a {
	padding: 30px 90px;
}

.mnBtnLst li a:link,
.mnBtnLst li a:visited {
	text-decoration: none!important;
}

.mnBtnLst li:nth-child(1) a {
	background: #fff14c;
}

.mnBtnLst li:nth-child(2) a {
	background: #ff8400;
}

.mnBtnLst li a:before {
	content: "";
	position: absolute;
	top: calc(50% - 30px);
	left: 15px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	z-index: 2;
}

.mnBtnLst li:nth-child(1) a:before {
	background: url(../images/icn_simulation.png) center no-repeat #05bedc;
	background-size: 30px auto;
}

.mnBtnLst li:nth-child(2) a:before {
	background: url(../images/icn_form.png) center no-repeat #ffa94d;
	background-size: 30px auto;
}

.mnBtnTtl {
	text-align: center;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.2;
	letter-spacing: -0.005em;
}

.mnBtnLst li:nth-child(1) .mnBtnTtl {
	color: #004c8e;
}

.mnBtnLst li:nth-child(2) .mnBtnTtl {
	color: #fff;
}

@media screen and (max-width:1400px) {
	.mnAra {
		height: 650px;
	}

	.mnCtr {
		background-size: auto 680px, 100% auto,100% auto;
	}
	
	.mnWrp {
			height: 670px;
	}
	
	.mnCth {
		max-width: 500px;
		margin: 0 0 30px;
	}
}

@media screen and (min-width:768px) and (max-width:1040px) {
	.mnAra {
		height: 500px;
		margin: 80px 0 0;
	}

	.mnCtr {
		padding: 50px 30px 0;
		background: url(../images/img_main.png) bottom 0 right -170px no-repeat,
		url(../images/bg_main.png) bottom no-repeat,
		url(../images/bg_cloud.png) top no-repeat;
		background-size: auto 500px, 100% auto,100% auto;
	}

	.mnWrp {
		height: 500px;
	}

	.mnSubCthBox {
		font-size: 1.8rem;
		margin: 0 0 25px;
		padding: 10px 40px 10px 10px;
		background-size: 30px auto;
	}

	.mnCth {
		max-width: 360px;
		margin: 0 0 25px;
	}

	.mnBtnBox {
		max-width: 360px;
	}

	.mnBtnCth {
		font-size: 1.5rem;
	}

	.mnBtnLst li a {
		padding: 18px 15px 18px 55px;
	}
	
	.mnBtnLst li:nth-child(2) a {
		padding: 18px 55px;
	}
	
	.mnBtnLst li a:before {
		top: calc(50% - 20px);
		left: 8px;
		width: 40px;
		height: 40px;
	}

	.mnBtnLst li:nth-child(1) a:before {
		background-size: 20px auto;
	}

	.mnBtnLst li:nth-child(2) a:before {
		background-size: 20px auto;
	}

	.mnBtnTtl {
		font-size: 1.8rem;
	}
}

@media screen and (max-width:767px) {
	.mnAra {
		height: auto;
		margin: 60px 0 180px;
		background: none;
	}

	.mnCtr {
		padding: 0;
		background: none;
	}

	.mnWrp {
		height: auto;
		position: relative;
	}

	.mnBtnBox {
		max-width: 100%;
		width: 100%;
		height: 180px;
		position: absolute;
		bottom: -180px;
		left: 0;
		padding: 15px 15px 0;
		box-sizing: border-box;
		background: #0B96B6;
		background: linear-gradient(120deg,rgba(11, 150, 182, 1) 0%, rgba(0, 207, 255, 1) 100%);
	}

	.mnBtnCth {
		font-size: 1.2rem;
	}
	
	.mnBtnLst {
		max-width: 300px;
		margin: 0 auto;
	}
	
	.mnBtnLst li:nth-child(1) {
		margin: 0 0 15px;
	}

	.mnBtnLst li a {
		padding: 18px 10px 18px 50px;
	}
	
	.mnBtnLst li:nth-child(2) a {
		padding: 18px 30px;
	}

	.mnBtnLst li a:before {
		top: calc(50% - 20px);
		left: 8px;
		width: 40px;
		height: 40px;
	}

	.mnBtnLst li:nth-child(1) a:before {
		background-size: 20px auto;
	}

	.mnBtnLst li:nth-child(2) a:before {
		background-size: 20px auto;
	}

	.mnBtnTtl {
		font-size: 1.6rem;
	}
	
	.mnBtnLst li:nth-child(1) .mnBtnTtl {
		font-size: 1.5rem;
		letter-spacing: -0.05em;
	}
}


@media screen and (max-width:350px) {
	.mnBtnLst li:nth-child(1) .mnBtnTtl,
	.mnBtnLst li:nth-child(2) .mnBtnTtl {
		font-size: 1.35rem;
	}	
}

/*======================================================
  content
======================================================*/

/* simAra */
.simAra {
	background: #D8F2F6;
	background: linear-gradient(0deg,rgba(216, 242, 246, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.simCtr {
	padding: 100px 30px;
	background: url(../images/bg_simulation_tp.png) top -150px center no-repeat,
	url(../images/bg_simulation_bt.png) top 500px center no-repeat;
	background-size: 100% auto;
}

.simWrp {
	max-width: 1200px;
	margin: 0 auto;
}

.simTtlBox {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}

.simTtlInr {
	text-align: center;
	padding: 0 0 40px;
}

.simTtlCth {
	font-weight: 700;
	font-size: 3.8rem;
	line-height: 1.2;
	color: #fff;
	margin: 0 0 20px;
	padding: 10px 20px;
	background: #004c8e;
	border-radius: 6px;
}

.simTtl {
	font-weight: 900;
	font-size: 7.5rem;
	line-height: 1.2;
	letter-spacing: -0.05em;
	color: #004c8e;
	margin: 0 0 30px;
}

.simTtlTxt {
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.6;
	color: #004c8e;
}

.simTtlImg {
	max-width: 250px;
	margin: 0 0 0 50px;
}

.simCntBox {
	padding: 60px 50px;
	background: #fff;
	border-radius: 15px;
	box-shadow: 0 0 15px rgba(0,52,112,0.15);
}

.simCntTtlBox {
	text-align: center;
	margin: 0 0 40px;
}

.simCntTtl {
	display: inline-block;
	position: relative;
	font-weight: 900;
	font-size: 3.3rem;
	line-height: 1.2;
	padding: 0 0 0 70px;
}

.simCntTtl:before {
	content: "";
	position: absolute;
	top: calc(50% - 25px);
	left: 0;
	width: 50px;
	height: 50px;
	background: url(../images/icn_choice.png) center no-repeat #09b8d4;
	background-size: 35px auto;
	border-radius: 50%;
}

.simBtnLstBox {
	max-width: 900px;
	margin: 0 auto 60px;
	padding: 15px;
	box-sizing: border-box;
	background: #ededed;
	border-radius: 10px;
}

.simBtnLst {
	display: flex;
	margin: 0 -7.5px;
}

.simBtnLst li {
	width: calc(33.33% - 15px);
	margin: 0 7.5px;
}

.simBtnLst label {
	text-align: center;
	width: 100%;
	height: 120px;
	display: block;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1;
	color: #a9a9a9;
	padding: 80px 0 0;
	box-sizing: border-box;
	border-radius: 6px;
	box-shadow: 0 3px 1px rgba(0,0,0,0.15);
	cursor: pointer;
}

.simBtnLst label:hover {
	opacity: 0.60;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-moz-opacity: 0.60;
	-khtml-opacity: 0.60;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.simBtnLst li:nth-child(1) label {
	background: url(../images/icn_simulation_01_off.png) top 20px center no-repeat #fff;
	background-size: 130px auto;
}

.simBtnLst li:nth-child(2) label {
	background: url(../images/icn_simulation_02_off.png) top 20px center no-repeat #fff;
	background-size: 130px auto;
}

.simBtnLst li:nth-child(3) label {
	background: url(../images/icn_simulation_03_off.png) top 20px center no-repeat #fff;
	background-size: 130px auto;
}

.simBtnLst input:checked+label {
	color: #fff;
}

.simBtnLst li:nth-child(1) input:checked+label {
	background: url(../images/icn_simulation_01_on.png) top 20px center no-repeat #09b8d4;
	background-size: 130px auto;
}

.simBtnLst li:nth-child(2) input:checked+label {
	background: url(../images/icn_simulation_02_on.png) top 20px center no-repeat #09b8d4;
	background-size: 130px auto;
}

.simBtnLst li:nth-child(3) input:checked+label {
	background: url(../images/icn_simulation_03_on.png) top 20px center no-repeat #09b8d4;
	background-size: 130px auto;
}

.simBtnLst input{
	display: none;
}

.simRngLst {
	display: flex;
	margin: 0 0 60px;
}

.simRngLst li {
	width: calc(50% - 15px);
}

.simRngLst li:first-child {
	margin: 0 15px 0 0;
}

.simRngLst li:last-child {
	margin: 0 0 0 15px;
}

.simRngTtlBox {
	text-align: center;
	margin: 0 0 20px;
}

.simRngTtl {
	text-align: center;
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.2;
}

.simRngLst li:first-child .simRngTtl {
	/*padding: 0 140px 0 0;*/
}

.simRngLst li:last-child .simRngTtl {
	/*padding: 0 60px 0 0;*/
}

.simRngTtl .stgTxt {
	/*
	position: absolute;
	top: -13px;
	right: 0;
	*/
	color: #09b8d4;
}

.simRngTtl .bigTxt {
	font-weight: 900;
	font-size: 3.8rem;
}

.simRngLstBox {
	padding: 20px 40px;
	background: #ededed;
	border-radius: 10px;
}

.simRngBtn {
	width: 100%;
	height: 14px;
	border-radius: 100px;
	background: #fff;
	appearance: none;
	cursor: pointer;
}

/* ツマミ：Chrome, Safari, Edge用 */
.simRngBtn::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 30px;
	height: 30px;
	border: 2px solid #fff;
	border-radius: 100px;
	background: #06b6d4;
	box-shadow: 0 2px 1px rgba(0,0,0,0.15);
}

/* ツマミ：Firefox用 */
.simRngBtn::-moz-range-thumb {
	width: 30px;
	height: 30px;
	border: 2px solid #fff;
	border-radius: 100px;
	background: #06b6d4;
	box-shadow: 0 2px 1px rgba(0,0,0,0.15);
}

.simCalBtn {
	max-width: 420px;
	position: relative;
	margin: 0 auto;
	z-index: 1;
}

.simCalBtn:before {
	content: "";
	position: absolute;
	top: calc(50% - 30px);
	left: 15px;
	width: 60px;
	height: 60px;
	background: url(../images/icn_calculation.png) center no-repeat #ffa94d;
	background-size: 35px auto;
	border-radius: 50%;
	z-index: 3;
}

.simCalBtn input {
	text-align: center;
	width: 100%;
	position: relative;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.2;
	color: #fff;
	padding: 30px 35px;
	background: #ff8400;
	border: none;
	border-radius: 50px!important;
	box-shadow: 0 0 10px rgba(0,52,112,0.15);
	cursor: pointer;
	z-index: 2;
}

.js-accordion--close{
	display: none;
}

#result {
}

.acdBox {
	/*
	height:0;
	overflow:hidden;
	transition:.4s ease;
	*/
	padding-top: 60px;
}

.simRstBox {
	/*margin: 60px 0 0;*/
	padding: 50px;
	background: #fffeee;
	border: solid 5px #ff8400;
	border-radius: 15px;
	transition: all 0.3s ease;
	position: relative;
}

.simRstBoxInr {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.simRstBoxCvr {
	background: url(../images/loading.gif) center center no-repeat;
	background-size: 70px 70px;
	width: calc(100% - 100px);
	height: calc(100% - 100px);
	position: absolute;
	top: 50px;
	left: 50px;
}

.simRstTtl {
	text-align: center;
	font-weight: 900;
	font-size: 4rem;
	line-height: 1.2;
	color: #ff8400;
	margin: 0 0 50px;
}

.simRstCntBox {
	text-align: center;
	display: flex;
	margin: 0 0 50px;
}

.simRstPlnBox {
	width: calc(50% - 15px);
	margin: 0 15px 0 0;
}

.simRstCntTtl {
	font-weight: 900;
	font-size: 2.8rem;
	line-height: 1.2;
	color: #004c8e;
	margin: 0 0 15px;
}

.simRstPlnLst {
	min-height: 115px;
	display: flex;
	color: #004c8e;
}

.simRstPlnLst li {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	box-sizing: border-box;
	background: #e0f4f7;
	border-radius: 6px;
	flex: 1;
	margin-right: 10px;
}

/*
.simRstPlnLst li:first-child {
	width: calc(50% - 10px);
	margin: 0 10px 0 0;
}

.simRstPlnLst li:last-child {
	width: calc(50% - 10px);
	margin: 0 0 0 10px;
}
*/

.simRstPlnTtl {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.2;
	white-space: nowrap;
	margin: 0 0 5px;
}

.simRstPlnTxt {
	font-weight: 900;
	font-size: 1.8rem;
	line-height: 1.2;
	white-space: nowrap;
}

.simRstPlnTxt .bigTxt {
	font-size: 3.8rem;
	letter-spacing: -0.025em;
	margin: 0 5px 0 0;
}

.simRstPrcBox {
	width: calc(50% - 15px);
	margin: 0 0 0 15px;
}

.simRstPrcCntBox {
	min-height: 115px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	box-sizing: border-box;
	background: #fff14c;
	border-radius: 6px;
}

.simRstPrc {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.2;
	color: #004c8e;
	letter-spacing: -0.005em;
	white-space: nowrap;
	margin: 0 0 5px;
}

.simRstPrc .stgTxt {
	font-weight: 900;
	color: #09b8d4;
	margin: 0 0 0 5px;
	border-bottom: solid 1px #09b8d4;
}

.simRstPrc .bigTxt {
	font-size: 3.6rem;
	margin: 0 5px 0 0;
}

.simRstPrcTxt {
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.2;
	color: #004c8e;
	letter-spacing: -0.005em;
	white-space: nowrap;
	margin: 10px 0 0;
}

.simRstExpBox {
	display: flex;
	align-items: center;
	margin: 0 0 50px;
	padding: 20px;
	background: #f7f7f7;
	border-radius: 6px;
}

.simRstExpImg {
	max-width: 220px;
	margin: 0 30px 0 0;
}

.simRstExpCntBox {
	width: calc(100% - 250px);
}

.simRstExpTtl {
	font-weight: 900;
	font-size: 2.8rem;
	line-height: 1.2;
	margin: 0 0 20px;
}

.simRstExpTxt {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.8;
}

.simFrmBtn {
	max-width: 460px;
	margin: 0 auto;
	overflow: hidden;
	border-radius: 15px;
	box-shadow: 0 0 15px rgba(0,52,112,0.15);
}

@media screen and (max-width:1200px) {
	.simCtr {
		background: url(../images/bg_simulation_tp.png) top no-repeat,
		url(../images/bg_simulation_bt.png) top 700px center no-repeat;
		background-size: 100% auto;
	}

	.simTtlInr {
		padding: 0 0 30px;
	}

	.simTtlCth {
		display: inline-block;
		font-size: 2.6rem;
		margin: 0 0 15px;
	}

	.simTtl {
		font-size: 4.7rem;
		margin: 0 0 15px;
	}

	.simTtlTxt {
		font-size: 1.8rem;
	}

	.simTtlImg {
		max-width: 180px;
		margin: 0 0 0 20px;
	}
	
	.simCntBox {
		padding: 50px 30px;
	}

	.simRngLst li:first-child .simRngTtl {
		padding: 0 0px;
	}

	.simRngLst li:last-child .simRngTtl {
		padding: 0 0px;
	}
	
	.simRngTtl .stgTxt  {
		/*
		position: absolute;
		top: 25px;
		right: 0;
		left: 0;
		margin: auto;
		*/
		display: block;
	}
	
	.simRngLstBox {
		padding: 15px;
		border-radius: 8px;
	}
	
	.acdBox {
		padding-top: 30px;
	}
	
	.simRstBox {
		padding: 30px;
	}
	
	.simRstCntBox {
		display: block;
	}
	
	.simRstPlnBox {
		width: 100%;
		margin: 0 0 40px;
	}
	
	.simRstPrcBox {
		width: 100%;
	}
}

@media screen and (max-width:767px) {
	.simCtr {
		padding: 30px 15px;
		background: url(../images/bg_simulation_tp.png) top no-repeat,
		url(../images/bg_simulation_bt.png) top 660px center no-repeat;
		background-size: 100% auto;
	}
	
	.simTtlBox {
		display: block;
	}
	
	.simTtlInr {
		padding: 0;
	}

	.simTtlCth {
		font-size: clamp(1.4rem, 3.4vw, 3.4rem);
		margin: 0 0 10px;
		padding: 7px;
		border-radius: 4px;
	}

	.simTtl {
		font-size: clamp(2.6rem, 6vw, 5rem);
		margin: 0 0 10px;
	}

	.simTtlTxt {
		font-size: 1.8rem;
		padding: 0 0 10px;
	}
	
	.simTtlTxtTp {
		font-weight: 700;
		color: #09b8d4;
	}
	
	.simTtlTxtBt {
		font-size: 1.6rem;
		letter-spacing: -0.02em;
		text-align: left;
	}
	
	.simTtlImgBox {
		display: flex;
		align-items: flex-end;
		justify-content: center;
	}

	.simTtlImg {
		max-width: 65px;
		margin: 0;
	}

	.simCntBox {
		padding: 20px 15px;
		border-radius: 10px;
	}

	.simCntTtlBox {
		margin: 0 0 20px;
	}

	.simCntTtl {
		font-size: 2rem;
		font-size: clamp(2rem, 5vw, 3rem);
		padding: 0 0 0 40px;
	}

	.simCntTtl:before {
		top: calc(50% - 15px);
		width: 30px;
		height: 30px;
		background-size: 20px auto;
	}

	.simBtnLstBox {
		margin: 0 auto 30px;
		padding: 10px;
		border-radius: 6px;
	}

	.simBtnLst {
		flex-wrap: wrap;
		margin: 0;
	}
	
	.simBtnLst li:nth-child(1) {
		width: 100%;
		margin: 0 0 10px;
	}
	
	.simBtnLst li:nth-child(2) {
		width: calc(50% - 5px);
		margin: 0 5px 0 0;
	}
	
	.simBtnLst li:nth-child(3) {
		width: calc(50% - 5px);
		margin: 0 0 0 5px;
	}

	.simBtnLst label {
		height: 70px;
		font-size: 1.6rem;
		padding: 42px 0 0;
		border-radius: 6px;
	}

	.simBtnLst li:nth-child(1) label {
		background: url(../images/icn_simulation_01_off.png) top 8px center no-repeat #fff;
		background-size: 80px auto;
	}

	.simBtnLst li:nth-child(2) label {
		background: url(../images/icn_simulation_02_off.png) top 8px center no-repeat #fff;
		background-size: 80px auto;
	}

	.simBtnLst li:nth-child(3) label {
		background: url(../images/icn_simulation_03_off.png) top 8px center no-repeat #fff;
		background-size: 80px auto;
	}

	.simBtnLst li:nth-child(1) input:checked+label {
		background: url(../images/icn_simulation_01_on.png) top 8px center no-repeat #09b8d4;
		background-size: 80px auto;
	}

	.simBtnLst li:nth-child(2) input:checked+label {
		background: url(../images/icn_simulation_02_on.png) top 8px center no-repeat #09b8d4;
		background-size: 80px auto;
	}

	.simBtnLst li:nth-child(3) input:checked+label {
		background: url(../images/icn_simulation_03_on.png) top 8px center no-repeat #09b8d4;
		background-size: 80px auto;
	}

	.simRngLst {
		display: block;
		margin: 0 0 30px;
	}

	.simRngLst li {
		width: 100%;
	}

	.simRngLst li:first-child {
		margin: 0 0 30px;
	}

	.simRngLst li:last-child {
		margin: 0;
	}

	.simRngTtlBox {
		margin: 0 0 15px;
	}

	.simRngTtl {
		font-size: 1.7rem;
		white-space: nowrap;
		padding: 0!important;
		
	}
	
	/*
	.simRngLst li:first-child .simRngTtl {
		padding: 0 95px 0 0;
	}

	.simRngLst li:last-child .simRngTtl {
		padding: 0 40px 0 0;
	}
	*/
	
	.simRngTtl .stgTxt {
		/*
		top: -10px;
		right: 0;
		left: auto;
		*/
		
		display: block
	}
	
	.simRngTtl .bigTxt {
		font-size: 2.8rem;
	}

	.simRngLstBox {
		padding: 10px;
		border-radius: 6px;
	}

	.simRngBtn {
		height: 12px;
	}

	.simRngBtn::-webkit-slider-thumb {
		width: 25px;
		height: 25px;
	}

	.simRngBtn::-moz-range-thumb {
		width: 25px;
		height: 25px;
	}

	.simCalBtn {
		max-width: 300px;
	}

	.simCalBtn:before {
		top: calc(50% - 20px);
		left: 10px;
		width: 40px;
		height: 40px;
		background-size: 20px auto;
	}

	.simCalBtn input {
		font-size: 1.6rem;
		padding: 17.5px 25px;
	}

	.simRstBox {
		margin: 30px 0 0;
		padding: 15px;
		border: solid 3px #ff8400;
		border-radius: 10px;
	}

	.simRstTtl {
		font-size: 2.4rem;
		margin: 0 0 20px;
	}

	.simRstCntBox {
		display: block;
		margin: 0 0 30px;
	}

	.simRstPlnBox {
		width: 100%;
		margin: 0 0 20px;
	}

	.simRstCntTtl {
		font-size: 1.8rem;
		margin: 0 0 10px;
	}

	.simRstPlnLst {
		min-height: auto;
		display: block;
	}

	.simRstPlnLst li {
		padding: 10px 5px;
	}

	.simRstPlnLst li:first-child {
		width: 100%;
		margin: 0 0 10px;
	}

	.simRstPlnLst li:last-child {
		width: 100%;
		margin: 0;
	}

	.simRstPlnTtl {
		font-size: 1.5rem;
		margin: 0 0 2px;
	}

	.simRstPlnTxt {
		font-size: 1.4rem;
	}

	.simRstPlnTxt .bigTxt {
		font-size: clamp(2.6rem, 6vw, 5rem);
		margin: 0 3px 0 0;
	}

	.simRstPrcBox {
		width: 100%;
		margin: 0;
	}

	.simRstPrcCntBox {
		min-height: auto;
		padding: 10px 5px;
	}

	.simRstPrc {
		font-size: 1.8rem;
		line-height: 1.4;
		margin: 0 0 2px;
	}

	.simRstPrc .stgTxt {
		margin: 0 0 0 3px;
	}

	.simRstPrc .bigTxt {
		font-size: clamp(2.6rem, 8vw, 5rem);
		margin: 0 3px 0 0;
	}

	.simRstPrcTxt {
		font-size: 1.4rem;
	}

	.simRstExpBox {
		display: block;
		margin: 0 0 30px;
		padding: 15px;
	}

	.simRstExpImg {
		max-width: 180px;
		margin: 0 auto 15px;
	}

	.simRstExpCntBox {
		width: 100%;
	}

	.simRstExpTtl {
		font-size: 1.8rem;
		font-size: clamp(2rem, 4vw, 4rem);
		margin: 0 0 15px;
	}

	.simRstExpTxt {
		font-size: 1.5rem;
		line-height: 1.7;
	}

	.simFrmBtn {
		max-width: 280px;
		border-radius: 10px;
	}
}

/* rsnAra */
.rsnAra {
	padding: 100px 30px;
	background: url(../images/bg_reason.png) bottom no-repeat #0088ff;
	background-size: 100% auto;
}

.rsnWrp {
	max-width: 1300px;
	margin: 0 auto;
}

.rsnTtlBox {
	text-align: center;
	position: relative;
	margin: 0 0 80px;
	padding: 80px 0 0;
}

.rsnTtlEn {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 900;
	font-size: 30rem;
	line-height: 0.6;
	color: #3d99ff;
	white-space: nowrap;
	margin: 0 auto 30px;
	z-index: 1;
}

.rsnTtlImg {
	width: 260px;
	height: auto;
	position: relative;
	margin: 0 auto;
	z-index: 2;
}

.rsnTtl {
	width: 420px;
	height: auto;
	position: relative;
	margin: -30px auto 0;
	z-index: 2;
}

.rsnLst {
	display: flex;
	margin: 0 -25px;
}

.rsnLst li {
	width: calc(33.33% - 50px);
	margin: 0 25px;
	padding: 15px;
	box-sizing: border-box;
	background: #e4f3ff;
	border-radius: 10px;
}

.rsnLstBox {
	position: relative;
	padding: 70px 10px 10px;
	background: #fff;
	border-radius: 10px;
}

.rsnLstNbr {
	position: absolute;
	top: 0;
	left: 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 900;
	font-size: 2.4rem;
	line-height: 1.2;
	color: #0088ff;
	padding: 0 15px 10px;
	background: #e4f3ff;
	border-radius: 0 0 10px 0;
}

.rsnLstNbr .bigTxt {
	font-size: 3.6rem;
	margin: 0 0 0 5px;
}

.rsnLstImg {
	max-width: 250px;
	margin: 0 auto 10px;
}

.rsnLstTtl {
	text-align: center;
	font-weight: 900;
	font-size: 2.5rem;
	line-height: 1.4;
	letter-spacing: -0.005em;
	color: #004c8e;
	margin: 0 0 20px;
}

.rsnLstTtl .stgTxt {
	font-size: 3.2rem;
	color: #0088ff;
}

.rsnLstTtl .ovr {
	display: none;
}

.rsnLstTxt {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.7;
	padding: 0 10px 10px;
}

@media screen and (max-width:1400px) {
	.rsnLstTtl .ovr {
		display: inline-block;
	}
}

@media screen and (max-width:1300px) {
	.rsnTtlEn {
		font-size: 18rem;
	}
	
	.rsnTtl {
		width: 350px;
	}
	
	.rsnLst {
		margin: 0 -15px;
	}

	.rsnLst li {
		width: calc(33.33% - 30px);
		margin: 0 15px;
		padding: 10px;
	}
	
	.rsnLstTtl {
		font-size: 2.4rem;
	}

	.rsnLstTtl .stgTxt {
		font-size: 3rem;
	}
}

@media screen and (min-width:768px) and (max-width:1040px) {
	.rsnLst {
		margin: 0 -10px;
	}

	.rsnLst li {
		width: calc(33.33% - 20px);
		margin: 0 10px;
	}

	.rsnLstNbr {
		font-size: 2rem;
	}

	.rsnLstNbr .bigTxt {
		font-size: 3.2rem;
	}

	.rsnLstImg {
		max-width: 160px;
	}
	
	.rsnLstTtl {
		font-size: 1.8rem;
		margin: 0 0 10px;
	}

	.rsnLstTtl .stgTxt {
		font-size: 2.4rem;
	}
	
}

@media screen and (max-width:767px) {
	.rsnAra {
		padding: 30px 15px;
		overflow: hidden;
	}
	
	.rsnTtlBox {
		margin: 0 0 25px;
		padding: 25px 0 0;
	}

	.rsnTtlEn {
		font-size: clamp(7rem, 23vw, 12rem);
	}

	.rsnTtlImg {
		width: 140px;
	}

	.rsnTtl {
		width: 230px;
		margin: -15px auto 0;
	}

	.rsnLst {
		display: block;
		margin: 0;
	}

	.rsnLst li {
		width: 100%;
		margin: 0;
		padding: 5px;
	}
	
	.rsnLst li:not(:last-child) {
		margin: 0 0 20px;
	}

	.rsnLstBox {
		padding: 45px 15px 15px;
		border-radius: 8px;
	}

	.rsnLstNbr {
		font-size: 1.6rem;
		padding: 0 10px 5px;
	}

	.rsnLstNbr .bigTxt {
		font-size: 2rem;
		margin: 0 0 0 3px;
	}
	
	.rsnImgBox {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0 0 10px;
	}

	.rsnLstImg {
		min-width: 100px;
		max-width: 150px;
		margin: 0 10px 0 0;
		transition: all 0.3s ease;
	}

	.rsnLstTtl {
		text-align: left;
		font-size: clamp(1.5rem, 4vw, 2.2rem);
		white-space: nowrap;
		margin: 0;
	}

	.rsnLstTtl .stgTxt {
		font-size: clamp(1.8rem, 5vw, 2.6rem);
	}

	.rsnLstTxt {
		font-size: 1.6rem;
		padding: 0;
	}
}

@media screen and (max-width:380px) {
	.rsnLstImg {
		max-width: 130px;
	}
}

/* sftAra */
.sftAra {
	padding: 100px 30px;
	background: url(../images/bg_safety_01.png) top 50% right 100px no-repeat,
	url(../images/bg_safety_02.png) bottom 25% left 50px no-repeat;
	background-size: 300px auto, 850px auto;
}

.sftWrp {
	max-width: 1300px;
	margin: 0 auto;
}

.sftTtlBox {
	text-align: center;
	position: relative;
	margin: 0 0 80px;
	padding: 80px 0 0;
}

.sftTtlEn {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 900;
	font-size: 30rem;
	line-height: 0.6;
	color: #e6f0ff;
	white-space: nowrap;
	margin: 0 auto 30px;
	z-index: 1;
}

.sftTtlImg {
	width: 260px;
	height: auto;
	position: relative;
	margin: 0 auto 25px;
	z-index: 2;
}

.sftTtl {
	position: relative;
	font-weight: 900;
	font-size: 4.6rem;
	line-height: 1.2;
	color: #0088ff;
	z-index: 2;
}

.sftLst li {
	display: flex;
	align-items: center;
}

.sftLst li:not(:last-child) {
	margin: 0 0 100px;
}

.sftLstImgBox {
	max-width: 600px;
	position: relative;
	margin: 0 50px 0 0;
	z-index: 1;
}

.sftLstImgBox:after {
	content: "";
	position: absolute;
	bottom: -12px;
	right: -12px;
	width: 100%;
	height: 100%;
	background: #004B8D;
	background: linear-gradient(90deg,rgba(0, 75, 141, 1) 0%, rgba(0, 136, 255, 1) 100%);
	border-radius: 10px;
	z-index: 2;
}

.sftLstImg {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	z-index: 3;
}

.sftLst li:nth-child(odd) .sftLstImgBox {
	order: 2;
	margin: 0 0 0 50px;
}

.sftLstCntBox {
	width: calc(100% - 650px);
}

.sftLst li:nth-child(odd) .sftLstCntBox {
	order: 1;
}

.sftLstTtl {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 3.6rem;
	line-height: 1.2;
	color: #0088ff;
	margin: 0 0 50px;
}

.sftLstTtl .ovr {
	display: none;
}

.sftLstTtl:after {
	content: "";
	position: absolute;
	top: -5px;
	right: -35px;
	width: 30px;
	height: 30px;
	background: url(../images/icn_quotation.png) center no-repeat;
	background-size: 30px auto;
}

.sftLstTxt {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.7;
}

.sftLstTxt .stgTxt {
	font-weight: 700;
	color: #0088ff;
	background: linear-gradient(transparent 70%, #fff796 70%);
}

@media screen and (max-width:1300px) {
	.sftTtlEn {
		font-size: 18rem;
	}
	
	.sftLstTtl .ovr {
		display: inline-block;
	}
	
	.sftLstImgBox {
		max-width: 450px;
	}

	.sftLstCntBox {
		width: calc(100% - 500px);
	}
}

@media screen and (min-width:768px) and (max-width:1040px) {
	.sftAra {
		background: url(../images/bg_safety_01.png) top 47% right 30px no-repeat,
		url(../images/bg_safety_02.png) bottom 23% left -100px no-repeat;
		background-size: 180px auto, 500px auto;
	}
	
	.sftLst li {
		align-items: flex-start;
	}

	.sftLstImgBox {
		max-width: 370px;
		margin: 0 30px 0 0;
	}

	.sftLst li:not(:last-child) {
		margin: 0 0 50px;
	}

	.sftLst li:nth-child(odd) .sftLstImgBox {
		margin: 0 0 0 30px;
	}
	
	.sftLstImgBox:after {
		bottom: -8px;
		right: -8px;
	}

	.sftLstCntBox {
		width: calc(100% - 400px);
	}
	
	.sftLstTtl {
		font-size: 3rem;
		margin: 0 0 30px;
	}

	.sftLstTtl:after {
		top: -5px;
		right: -25px;
		width: 20px;
		height: 20px;
		background-size: 20px auto;
	}
}

@media screen and (max-width:767px) {
	.sftAra {
		padding: 30px 15px;
		background: none;
	}

	.sftTtlBox {
		margin: 0 0 25px;
		padding: 25px 0 0;
	}

	.sftTtlEn {
		font-size: clamp(7rem, 23vw, 12rem);
	}

	.sftTtlImg {
		width: 140px;
		margin: 0 auto 10px;
	}

	.sftTtl {
		font-size: clamp(2.2rem, 5.5vw, 4rem);
	}

	.sftLst li {
		min-height: 300px;
		display: block;
		overflow: hidden;
		background: #004B8D;
		background: linear-gradient(90deg,rgba(0, 75, 141, 1) 0%, rgba(0, 136, 255, 1) 100%);
		border-radius: 10px;
	}

	.sftLst li:not(:last-child) {
		margin: 0 0 20px;
	}
	
	.sftLstImgBox {
		max-width: 100%;
		margin: 0!important;
		padding: 7px 7px 0;
		box-sizing: border-box;
	}
	
	.sftLstImgBox:after {
		content: none;
	}
	
	.sftLstImg {
		overflow: hidden;
		border-radius: 6px 6px 0 0
	}

	.sftLst li:nth-child(odd) .sftLstCtr {
		margin: 0 0 15px!important;
	}

	.sftLstCntBox {
		text-align: center;
		width: 100%;
		padding: 0 7px 7px;
		box-sizing: border-box;
	}
	
	.sftLstCntInr {
		padding: 15px;
		background: rgba(255,255,255,1);
		border-radius: 0 0 6px 6px;
	}
	
	.sftLstTtl {
		position: relative;
		font-size: clamp(1.7rem, 4.5vw, 2.2rem);
		letter-spacing: -0.005em;
		margin: 0 0 25px;
	}
	
	.sftLstTtl .ovr {
		display: none;
	}
	
	.sftLstTtl:before {
		content: "";
		position: absolute;
		bottom: -13px;
		left: calc(50% - 13px);
		width: 26px;
		height: 2px;
		background: #0088ff;
	}

	.sftLstTtl:after {
		top: -4px;
		right: -14px;
		width: 10px;
		height: 10px;
		background-size: 10px auto;
	}

	.sftLstTxt {
		text-align: left;
		font-size: 1.6rem;
		line-height: 1.45;
	}
	
	.sftLstTxt .stgTxt {
		background: linear-gradient(transparent 80%, #fff796 80%);
	}
}

/* voiAra */
.voiAra {
	padding: 0 0 120px;
	overflow: hidden;
}

.voiWrp {
	position: relative;
}

.voiTtlCtr {
	max-width: 350px;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0 50px 0 0;
	padding: 50px 50px 180px;
	box-sizing: border-box;
	background: url(../images/ils_voice.png) bottom no-repeat #e4f3ff;
	background-size: 220px auto;
	border-radius: 0 10px 10px 0;
}

.voiTtlBox {
	margin: 0 0 25px;
}

.voiTtlEn {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 900;
	font-size: 2.4rem;
	line-height: 1.2;
	color: #00aeee;
}

.voiTtl {
	font-weight: 900;
	font-size: 3.6rem;
	line-height: 1.2;
	color: #00aeee;
}

.voiTtlTxt {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.7;
}

/* slide */
.slick-track {
	display: flex;
	
}

.slick-slide {
	height: auto !important;
}

.slide-arrow {
	width: 70px;
	height: 70px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	z-index: 100;
}

.slide-arrow:hover {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	text-decoration: none!important;
}

.prev-arrow {
	left: 385px;
	background: url(../images/icn_arrow_wt_lt.png) center no-repeat #00aeee;
	background-size: 20px auto;
}

.next-arrow {
	right: 10px;
	background: url(../images/icn_arrow_wt_rt.png) center no-repeat #00aeee;
	background-size: 20px auto;
}

.voiLst {
	display: flex;
	padding: 0 30px 0 400px;
}

.voiLst li {
	margin: 5px 10px;
	padding: 15px;
	box-sizing: border-box;
	border: solid 1px #d1d1d1;
	border-radius: 10px;
}

.voiLstFlx {
	display: flex;
	align-items: center;
	margin: 0 0 15px;
	text-align: center;
}

.voiLstTtl {
	font-weight: 900;
	line-height: 1.3;
	margin: 0 0 10px;
	font-size: 2.4rem;
	white-space: nowrap;
}

.voiLstTyp {
	background: #00a2ee;
	color: #fff;
	padding: 5px 15px 6px;
	display: inline-block;
	font-weight: bold;
	border-radius: 5px;
	font-size: 1.3rem;
}

.voiLstImg {
	width: 35%;
}

.voiLstImg img {
	width: 100%;
	height: auto;
}

.voiLstInf {
	width: calc(65% - 20px);
	margin-left: 20px;
}

.voiPrcBox {
	text-align: center;
	display: flex;
	overflow: hidden;
	margin: 0 0 20px;
	border-radius: 6px;
}

.voiPrcBfoBox {
	width: 50%;
	position: relative;
	padding: 5px 5px 10px;
	box-sizing: border-box;
	background: #eee;
	z-index: 2;
}

.voiPrcBfoBox:after {
	content: "";
	position: absolute;
	top: calc(50% + 5px);
	right: 4px;
	border-style: solid;
	border-width: 6px 0 6px 8px;
	border-color: transparent transparent transparent #ff004e;
	translate: 100% -50%;
	z-index: 3;
}

.voiPrcAftBox {
	width: 50%;
	position: relative;
	padding: 5px 5px 15px;
	box-sizing: border-box;
	background: #fff1f5;
	z-index: 1;
}

.voiPrcBfoTtl {
	font-weight: 700;
	font-size: 13px;
	line-height: 1;
	color: #fff;
	padding: 6px 5px;
	background: #aaa;
	border-radius: 3px;
	margin-bottom: 14px;
}

.voiPrcAftTtl {
	font-weight: 700;
	font-size: 15px;
	line-height: 1;
	color: #fff;
	padding: 5px;
	background: #ff004e;
	border-radius: 3px;
	margin-bottom: 10px;
}

.voiPrcBfoTxt {
	font-weight: 900;
	font-size: 1.4rem;
	line-height: 1;
	color: #999;
	letter-spacing: 0;
}

.voiPrcAftTxt {
	font-weight: 900;
	font-size: 1.7rem;
	line-height: 1;
	color: #ff004e;
	letter-spacing: 0;
}

.voiPrcBfoTxt .bigTxt,.voiPrcAftTxt .bigTxt {
	font-size: 1.1rem;
}

.voiPrcTxt {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.7;
	padding: 0 5px 5px;
}

.voiPrcTxt span {
	font-size: 1.4rem;
}

@media screen and (max-width:767px) {
	.voiAra {
		padding: 0 0 30px;
		background: #e4f3ff;
	}

	.voiTtlCtr {
		max-width: 100%;
		position: relative;
		margin: 0 0 20px;
		padding: 25px 15px 0;
		background: #e4f3ff;
		border-radius: 0;
	}

	.voiTtlBox {
		text-align: center;
		margin: 0 0 20px;
	}

	.voiTtlEn {
		font-size: clamp(7rem, 23vw, 12rem);
		color: #fff;
		line-height: 0.6;
        margin: 0 auto 20px;
	}

	.voiTtl span {
		font-size: 1.4rem;
	}
	
	.voiLstTtl span {
		font-size: clamp(2.4rem, 5.5vw, 4rem);
	}
	
	.voiTtlTxtBox {
		min-height: 70px;
		display: flex;
		align-items: flex-end;
		padding: 0 100px 0 0;
		background: url(../images/ils_voice.png) bottom right no-repeat #e4f3ff;
		background-size: 90px auto;
	}
	
	.voiTtlTxt {
		font-size: 1.6rem;
		line-height: 1.6;
	}
	
	.slide-arrow {
		width: 40px;
		height: 40px;
	}

	.prev-arrow {
		left: 5px;
		background-size: 15px auto;
	}

	.next-arrow {
		right: 5px;
		background-size: 15px auto;
	}

	.voiLst {
		padding: 0;
	}

	.voiLst li {
		margin: 0 10px;
		padding: 10px;
		background: #fff;
		border: none;
		border-radius: 10px;
	}

	.voiLstTtl {
		font-size: 1.7rem;
	}

	.voiPrcBox {
		margin: 0 0 15px;
		border-radius: 4px;
	}

	.voiPrcBfoTtl {
		font-size: 1.3rem;
		padding: 2px;
	}

	.voiPrcAftTtl {
		font-size: 1.3rem;
		padding: 2px;
	}

	.voiPrcBfoTxt {
		font-size: 1.6rem;
	}

	.voiPrcAftTxt {
		font-size: 1.6rem;
	}

	.voiPrcBfoTxt .bigTxt,.voiPrcAftTxt .bigTxt {
		font-size: 1.2rem;
	}

	.voiPrcTxt {
		font-size: 1.6rem;
		line-height: 1.6;
	}
	
}

@media screen and (max-width:480px) {
	
	.voiPrcBfoBox,
	.voiPrcAftBox {
		padding-bottom: 8px;
	}
	
	.voiPrcAftTtl,
	.voiPrcBfoTtl {
		font-size: 1.2rem;
		padding: 2px 2px 4px;
		margin-bottom: 5px;
	}
	
	.voiPrcBfoTxt {
		font-size: 12px;
		padding: 1px 0;
	}
	.voiPrcAftTxt {
		font-size: 14px;
	}
	
	.voiLstFlx {
		display: block;
	}
	.voiLstImg {
		max-width: 240px;
		margin: 0 auto 10px;
	}
	.voiLstInf {
		width: 100%;
		margin: 0 auto;
	}
	.voiPrcBfoTxt .bigTxt,.voiPrcAftTxt .bigTxt {
		font-size: 1.1rem;
	}
}

/* chkAra */
.chkAra {
	padding: 60px 30px 0;
	background: url(../images/bg_check.jpg) top no-repeat;
	background-size: cover;
}

.chkWrp {
	max-width: 1100px;
	margin: 0 auto;
}

.chkBox {
	display: flex;
}

.chkCntBox {
	width: calc(100% - 250px);
}

.chkLstBox {
	position: relative;
	padding: 40px 50px;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 3px 1px rgba(0,0,0,0.15);
	z-index: 1;
}

.chkLstBox:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	border-style: solid;
	border-width: 40px 0 0 50px;
	border-color: transparent transparent transparent #fff;
	translate: 100% -50%;
	z-index: 2;
}

.chkIlsBox {
	max-width: 250px;
}

.chkLst {
	font-weight: 700;
	font-size: 3rem;
	line-height: 1.3;
	color: #0075cd;
	margin: 0 0 -20px;
}

.chkLst li {
	position: relative;
	padding: 0 0 0 70px;
	z-index: 1;
}

.chkLst li:before {
	content: "";
	position: absolute;
	top: calc(50% - 35px);
	left: 0;
	width: 45px;
	height: 45px;
	background: url(../images/icn_check.png) center no-repeat;
	background-size: 45px auto;
	z-index: 2;
}

.chkLst li span {
	display: block;
	padding: 0 0 20px;
}

.chkLst li:not(:last-child) span {
	margin: 0 0 20px;
	border-bottom: dashed 2px #dfdfdf;
}

.chkCth {
	font-weight: 900;
	font-size: 4rem;
	line-height: 1.4;
	color: #fff;
	margin: 40px 0 60px;
	text-shadow: 0 1px 8px rgba(0,98,170,0.3);
}

.chkIlsBox {
	display: flex;
	align-items: flex-end;
}

@media screen and (max-width:1200px) {
	.chkCntBox {
		width: calc(100% - 200px);
	}
	
	.chkLstBox {
		padding: 40px 30px;
	}
	
	.chkLstBox:after {
		border-width: 30px 0 0 40px;
	}

	.chkIlsBox {
		max-width: 200px;
	}
	
	.chkLst {
		font-size: 2.6rem;
	}
	
	.chkLst li {
		padding: 0 0 0 50px;
	}

	.chkLst li:before {
		top: calc(50% - 25px);
		width: 35px;
		height: 35px;
		background-size: 35px auto;
	}

	.chkCth {
		font-size: 3rem;
		margin: 50px 0;
	}
}

@media screen and (min-width:768px) and (max-width:1040px) {
	.chkBox {
		display: block;
	}
	
	.chkLstBox:after {
		content: none;
	}
	
	.chkLstBox:before {
		content: "";
		position: absolute;
		bottom: 0;
		right: 50px;
		border-style: solid;
		border-width: 20px 20px 0 0;
		border-color: #fff transparent transparent;
		translate: -50% 100%;
	}
	
	.chkCntBox {
		width: 100%;
	}
	
	.chkIlsBox {
		max-width: 100px;
	}
	
	.chkIlsBox {
		max-width: 100%;
		justify-content: center;
	}
	
	.chkIls {
		width: 120px;
	}
}

@media screen and (max-width:767px) {
	.chkAra {
		padding: 30px 15px 0;
	}

	.chkBox {
		display: block;
	}

	.chkCntBox {
		width: 100%;
	}

	.chkLstBox {
		padding: 20px 15px;
		border-radius: 15px;
	}

	.chkLstBox:after {
		content: none;
	}
	
	.chkLstBox:before {
		content: "";
		position: absolute;
		bottom: 0;
		right: 30px;
		border-style: solid;
		border-width: 10px 10px 0 0;
		border-color: #fff transparent transparent;
		translate: -50% 100%;
	}

	.chkIlsBox {
		max-width: 100%;
	}

	.chkLst {
		font-size: clamp(1.7rem, 3.8vw, 2.4rem);
		letter-spacing: -0.005em;
		margin: 0 0 -10px;
	}
	
	.chkLst br {
		display: none!important;
	}

	.chkLst li {
		padding: 0 0 0 30px;
	}

	.chkLst li:before {
		top: calc(50% - 18px);
		width: 20px;
		height: 20px;
		background-size: 20px auto;
	}

	.chkLst li span {
		padding: 0 0 10px;
	}

	.chkLst li:not(:last-child) span {
		margin: 0 0 10px;
	}

	.chkCth {
		font-size: clamp(1.6rem, 3.8vw, 1.9rem);
		margin: 35px 0 20px;
	}
	
	.chkIlsBox {
		max-width: 100%;
		justify-content: center;
	}
	
	.chkIls {
		width: 100px;
		margin: 0 0 0 5px;
	}
}

@media screen and (max-width:450px) {
	.chkLst br {
		display: inline-block!important;
	}
}

/* frmAra */
.frmAra {
	padding: 100px 30px;
	background: #e4f3ff;
	overflow: hidden;
}

.frmWrp {
	max-width: 1000px;
	margin: 0 auto;
}

.frmTtlBox {
	text-align: center;
	position: relative;
	margin: 0 0 80px;
	padding: 80px 0 0;
}

.frmTtlEn {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 900;
	font-size: 30rem;
	line-height: 0.6;
	color: #fff;
	white-space: nowrap;
	margin: 0 auto 30px;
	z-index: 1;
}

.frmTtlImg {
	width: 260px;
	height: auto;
	position: relative;
	margin: 0 auto 25px;
	z-index: 2;
}

.frmTtl {
	position: relative;
	font-weight: 900;
	font-size: 4.6rem;
	line-height: 1.2;
	color: #004c8e;
	z-index: 2;
}

.frmTtlTxt {
	position: relative;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.4;
	color: #004c8e;
	margin: 50px 0 0;
	z-index: 2;
}

.frmTtlTxt .ovr {
	display: none;
}

.frmIcnLst {
	display: flex;
	margin: 0 -10px 80px;
}

.frmIcnLst li {
	width: calc(25% - 20px);
	margin: 0 10px;
	padding: 20px 5px;
	box-sizing: border-box;
	background: #0475D8;
	background: linear-gradient(0deg,rgba(4, 117, 216, 1) 0%, rgba(0, 136, 255, 1) 100%);
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0,0,0,0.15);
}

.frmIcn {
	max-width: 100px;
	margin: 0 auto 5px;
}

.frmIcnTtl {
	text-align: center;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.3;
	color: #fff;
}

.frmBox {
	padding: 80px 50px;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #0476d9;
	border-radius: 15px;
	box-shadow: 0 0 10px rgba(0,52,112,0.15);
}

.frmStpImg {
	max-width: 600px;
	margin: 0 auto 60px;
}

.frmLst {
	margin: 0 0 50px;
}

.frmLst li {
	display: flex;
	align-items: flex-start;
	padding: 30px 0;
	border-bottom: solid 1px #dfdfdf;
}
.frmLst li:first-child {
	padding-bottom: 0!important;
	border-bottom: none!important;
}

.frmLst li.conn {
	padding-top: 0!important;	
}

.frmLstTtlBox {
	max-width: 200px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 20px 50px 0 0;
}

.frmLstTtl {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
}

.essIcn {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1;
	color: #fff;
	padding: 6px 7px;
	background: #ff004e;
	border-radius: 3px;
}

.anyIcn {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1;
	color: #fff;
	padding: 6px 7px;
	background: #bbb;
	border-radius: 3px;
}

.frmLstCntBox {
	width: calc(100% - 250px);
}

.frmLstMinBox {
	display: flex;
	align-items: center;
	margin: 0 0 20px;
}

.frmLstMinBox p {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
	margin: 0 15px 0 0;
}

.frmLstMinBox input {
	margin: 0 15px 0 0;
}

.frmBox01 {
	width: 100%;
	padding: 20px 15px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #dfdfdf;
	border-radius: 6px!important;
}

.frmBox02 {
	width: 180px;
	padding: 20px 15px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #dfdfdf;
	border-radius: 6px!important;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
	width: 170px;
	padding: 22px 15px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #dfdfdf;
	border-radius: 6px!important;
}

::placeholder {
  color: #acacac;
}

.frmLstCntTxt {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
}

.frmLstChkTxt {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2;
}

.frmLstChkTxt input {
	margin: 4px 10px 0 0;
}

.frmLstChkTxt label {
	cursor: pointer;
}

.frmLstCapTxt {
	position: relative;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.2;
	color: #838383;
	margin: 10px 0 30px;
	padding: 0 0 0 20px;
}

.frmLstCapTxt:before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.frmLstPlcBox {
	text-align: center;
	margin: 0 0 50px;
}

.frmLstPlcInr {
	display: inline-block;
	padding: 20px 30px;
	background: #f7f7f7;
	border-radius: 6px;
}

.frmLstPlcTxt {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	margin: 0 0 15px;
}

.cctDneBtn {
	max-width: 360px;
	margin: 0 auto;
}

.cctDneBtn input {
	text-align: center;
	width: 100%;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.2;
	color: #fff;
	padding: 25px 30px;
	background: #ff8400;
	border: none;
	border-radius: 50px!important;
	box-shadow: 0 0 10px rgba(0,52,112,0.15);
	cursor: pointer;
}

.cctDneBtn input:disabled {
	background: #9ab2c4;
	cursor: default;
}

.cctBakBtn {
	max-width: 300px;
	margin: 0 auto;
}

.cctBakBtn a,
.cctBakBtn input {
	text-align: center;
	width: 100%;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.2;
	color: #fff;
	margin: 20px 0 0;
	padding: 18px 20px;
	background: #9ab2c4;
	border: none;
	border-radius: 50px!important;
	box-shadow: 0 0 10px rgba(0,52,112,0.15);
	cursor: pointer;
	display: block;
	box-sizing: border-box;
	text-decoration: none!important;
	color: #fff!important;
}

.errTxt {
	display: block;
	font-weight: 500!important;
	font-size: 1.5rem!important;
	line-height: 1.2!important;
	color: #ff0000!important;
	margin: 10px 0 0!important;
}

/* check */
.frmChkAra,.frmDneAra {
	margin: 100px 0 0;
}

.frmChkLst li {
	align-items: center;
}

.frmChkLst li .frmLstTtlBox {
	margin: 0 50px 0 0;
}

.frmChkLst li .frmLstCntTxt {
	font-weight: 500;
}

/* done */
.frmDneTtl {
	text-align: center;
	font-weight: 900;
	font-size: 3.2rem;
	line-height: 1.3;
	color: #0476d9;
	letter-spacing: -0.005em;
	margin: 0 0 25px;
}

.frmDneIls {
	max-width: 220px;
	margin: 0 auto 25px;
}

.frmDneTxtBox {
	display: flex;
	justify-content: center;
	margin: 0 0 50px;
}

.frmDneTxt {
	display: inline-block;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.5;
}

.bakTopBtn {
	max-width: 420px;
	margin: 0 auto;
}

.bakTopBtn a {
	text-align: center;
	display: block;
	position: relative;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.2;
	color: #fff;
	box-sizing: border-box;
	padding: 30px 50px;
	background: #0088ff;
	border-radius: 100px;
	box-shadow: 0 0 10px rgba(0, 52, 112, 0.15);
}

@media screen and (max-width:1300px) {
	.frmTtlBox {
		padding: 40px 0 0;
	}
	
	.frmTtlEn {
		font-size: 18rem;
	}
	
	.frmTtl {
		font-size: 4rem;
	}
	
	.frmTtlTxt .ovr {
		display: inline-block;
	}
}

@media screen and (min-width:768px) and (max-width:1040px) {
	.frmChkAra,.frmDneAra {
		margin: 80px 0 0;
	}

	.frmIcnTtl {
		font-size: 2rem;
	}
	
	.frmBox {
		padding: 60px 30px;
	}
}

@media screen and (max-width:767px) {
	.frmChkAra,.frmDneAra {
		margin: 60px 0 0;
	}
	
	.frmAra {
		padding: 30px 15px;
	}

	.frmTtlBox {
		margin: 0 0 25px;
		padding: 25px 0 0;
	}

	.frmTtlEn {
		font-size: clamp(7rem, 23vw, 12rem);
		margin: 0 auto 30px;
	}

	.frmTtlImg {
		width: 140px;
		margin: 0 auto 10px;
	}

	.frmTtl {
		font-size: clamp(2.4rem, 5.5vw, 4rem);
	}
	
	.frmTtlTxtBox {
		display: flex;
		justify-content: center;
	}

	.frmTtlTxt {
		text-align: left;
		font-size: 1.8rem;
		margin: 20px 0 0;
	}

	.frmIcnLst {
		flex-wrap: wrap;
		margin: 0 -2.5px 20px;
	}

	.frmIcnLst li {
		width: calc(50% - 5px);
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0 2.5px 5px;
		padding: 7px 3px;
		border-radius: 4px;
	}

	.frmIcn {
		max-width: 20px;
		margin: 0 3px 0 0;
	}

	.frmIcnTtl {
		font-size: clamp(1.3rem, 3.5vw, 1.8rem);
		letter-spacing: -0.005em;
	}
	
	.frmIcnLst li:nth-child(3) .frmIcnTtl {
		font-size: clamp(1.2rem, 3.5vw, 1.8rem);
	}

	.frmBox {
		padding: 30px 15px;
		border-radius: 10px;
	}

	.frmStpImg {
		max-width: 300px;
		margin: 0 auto 20px;
	}
	
	.frmLst {
		margin: 0 0 30px;
	}

	.frmLst li {
		display: block;
		padding: 0 0 20px;
	}

	.frmLstTtlBox {
		max-width: 100%;
		width: 100%;
		margin: 20px 0;
	}

	.frmLstTtl {
		font-size: 1.6rem;
	}

	.essIcn {
		font-size: 1.1rem;
		padding: 5px 6px;
		margin-right: 10px;
		white-space: nowrap;
	}
	
	.anyIcn {
		font-size: 1.1rem;
		padding: 5px 6px;
		margin-right: 10px;
		white-space: nowrap;
	}
	.frmLst li.conn {
		padding-top: 10px!important;
	}
	.conn .frmLstTtlBox {
		display: none;
	}

	.frmLstCntBox {
		width: 100%;
		display: flex;
		align-items: center;
	}
	
	.frmLstCntBox#fhouse {
		display: block;
	}

	.frmLstMinBox {
		margin: 0;
	}

	.frmLstMinBox p {
		font-size: 1.5rem;
		margin: 0 10px 0 0;
	}

	.frmLstMinBox input {
		margin: 0 10px 0 0;
	}

	.frmBox01 {
		padding: 15px 10px;
		font-size: 1.5rem;
	}

	.frmBox02 {
		width: 70px;
		padding: 15px 10px;
		font-size: 1.5rem;
	}

	select {
		width: 100px;
		padding: 17px 10px;
		font-size: 1.5rem;
	}

	.frmLstCntTxt {
		font-size: 1.5rem;
	}

	.frmLstChkTxt {
		font-size: 1.5rem;
	}

	.frmLstChkTxt input {
		margin: 3px 8px 0 0;
	}

	.frmLstCapTxt {
		font-size: 1.4rem;
		margin: 10px 0 20px;
	}

	.frmLstPlcBox {
		margin: 0 0 30px;
	}

	.frmLstPlcInr {
		padding: 15px;
	}

	.frmLstPlcTxt {
		font-size: 1.6rem;
		margin: 0 0 10px;
	}

	.cctDneBtn {
		max-width: 300px;
	}

	.cctDneBtn input {
		font-size: 1.6rem;
		padding: 15px 20px;
	}

	.cctBakBtn {
		max-width: 240px;
	}

	.cctBakBtn a,
	.cctBakBtn input {
		font-size: 1.6rem;
		margin: 15px 0 0;
		padding: 13px 15px;
	}

	.errTxt {
		font-size: 1.4rem!important;
	}
	
	.frmChkLst li .frmLstTtlBox {
		margin: 20px 0 10px;
	}
	
	.frmDneTtl {
		font-size: clamp(2rem, 4vw, 4rem);
		margin: 0 0 15px;
	}

	.frmDneIls {
		max-width: 140px;
		margin: 0 auto 15px;
	}

	.frmDneTxtBox {
		margin: 0 0 20px;
	}

	.frmDneTxt {
		font-size: clamp(1.7rem, 3.7vw, 2.7rem);
	}

	.bakTopBtn {
		max-width: 300px;
	}

	.bakTopBtn a {
		font-size: 1.6rem;
		padding: 18px 30px;
	}
}

/*======================================================
  footer
======================================================*/

.ptpBtn {
	position: fixed;
	right: 20px;
	bottom: 70px;
	z-index: 200;
}

.ptpBtn a {
	text-align: center;
	width: 70px;
	height: 70px;
	display: block;
	padding: 25px 0 0;
	box-sizing: border-box;
	background: #0088ff;
	border: solid 1px rgba(255,255,255,0.3);
	border-radius: 50%;
}

.ptpBtn img {
	max-width: 20px;
	height: auto;
	margin: 0 auto;
}

@media screen and (min-width:768px) and (max-width:1040px) {
	.ptpBtn {
		bottom: 50px;
	}
}

@media screen and (max-width:767px) {
	.ptpBtn {
		position: fixed;
		right: 15px;
		bottom: 65px;
	}

	.ptpBtn a {
		width: 40px;
		height: 40px;
		padding: 12px 0 0;
	}

	.ptpBtn img {
		max-width: 15px;
	}

	.fltNavBox {
		width: 100%;
		height: 50px;
		position: fixed;
		bottom: 0;
		left: 0;
		padding: 5px;
		box-sizing: border-box;
		background: #fff;
		border-top: solid 1px #f0f0f0;
		z-index: 100;
	}

	.fltNav {
		height: 40px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0 -4px;
	}

	.fltNav li {
		margin: 0 4px;
		width: calc(50% - 8px);
	}

	.fltNav li a {
		height: 40px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 5px;
		box-sizing: border-box;
		border-radius: 5px;
		box-shadow: 0 0 3px rgba(0, 52, 112, 0.15);
	}

	.fltNav li a:link,
	.fltNav li a:visited {
		text-decoration: none!important;
	}

	.fltNav li:nth-child(1) a {
		background: #fff14c;
	}

	.fltNav li:nth-child(2) a {
		background: #ff8400;
	}

	.fltNavInr {
		position: relative;
		padding: 0 0 0 30px;
	}

	.fltNav li .fltNavInr:before {
		content: "";
		position: absolute;
		top: calc(50% - 11px);
		left: 0;
		width: 22px;
		height: 22px;
		border-radius: 50%;
	}

	.fltNav li:nth-child(1) .fltNavInr:before {
		background: url(../images/icn_simulation.png) center no-repeat #05bedc;
		background-size: 12px auto;
	}

	.fltNav li:nth-child(2) .fltNavInr:before {
		background: url(../images/icn_form.png) center no-repeat #ffa94d;
		background-size: 12px auto;
	}

	.fltNavTtl {
		font-weight: 700;
		font-size: 1.3rem;
		line-height: 1.1;
	}
	
	.fltNav li:nth-child(1) .fltNavTtl {
		letter-spacing: -0.02em;
	}

	.fltNav li:nth-child(1) .fltNavTtl {
		color: #004c8e;
	}

	.fltNav li:nth-child(2) .fltNavTtl {
		color: #fff;
	}
}

/* ftrAra */
.ftrCntBox {
	padding: 30px;
	background: #004c8e;
}

.ftrLgBox,.ftrLgBox .lgNme {
	color: #fff!important;
}

.ftrNavBox {
	padding: 20px 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #004480;
}

.ftrNav {
	display: flex;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.2;
}

.ftrNav li {
	position: relative;
	margin: 0 40px 0 0;
}

.ftrNav li:first-child:after {
	content: "";
	position: absolute;
	top: calc(50% - 7.5px);
	right: -20px;
	width: 1px;
	height: 15px;
	background: rgba(255,255,255,0.3);
}

.cpyTxt {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.2;
	color: #fff;
}

@media screen and (max-width:767px) {
	.ftrAra {
		margin: 0 0 50px;
	}

	.ftrCntBox {
		padding: 20px 15px;
	}
	
	.ftrLgBox .lgCth {
		text-align: center;
	}
	
	.ftrLgBox .lgInr {
		justify-content: center;
		display: block;
		text-align: center;
	}
	
	.ftrLgBox .lgInr .lg {
		margin: 0  auto;
	}
	
	.ftrLgBox .lgInr .lg img {
		display: block;
		margin: 10px auto;
	}
	
	.ftrNavBox {
		padding: 20px 15px;
		display: block;
	}

	.ftrNav {
		text-align: center;
		justify-content: center;
		font-size: 1.3rem;
		margin: 0 0 15px;
	}

	.ftrNav li {
		margin: 0 15px;
	}

	.ftrNav li:first-child:after {
		top: calc(50% - 7px);
		right: -15px;
		height: 14px;
	}

	.cpyTxt {
		text-align: center;
		font-size: 1.3rem;
	}
}

@media screen and (max-width:350px) {
	.lg img {
		width: 120px;
		height: auto;
	}
}

/*=========================================================

TB

=========================================================*/

@media screen and (min-width:768px) and (max-width:1040px) {

	.pc   { display: none!important;}
	.pcsp { display: none!important;}
	.sp   { display: none!important;}
	
	.pctb { display: inline-block!important;}
	.tb   { display: inline-block!important;}
	.tbsp { display: inline-block!important;}

}

/*=========================================================

SP

=========================================================*/

@media screen and (max-width:767px) {
	
	.pc   { display: none!important;}
	.tb   { display: none!important;}
	.pctb { display: none!important;}
	
	.pcsp { display: inline-block!important;}
	.tbsp { display: inline-block!important;}   
	.sp   { display: inline-block!important;}
	
	.opacity a:active {
		opacity: 0.50;
		filter: alpha(opacity=50);
		-ms-filter: "alpha(opacity=50)";
		-moz-opacity: 0.50;
		-khtml-opacity: 0.50;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
		transition: all 0.2s ease;
		text-decoration: none!important;
	}
	
	a[href^="tel:"] {
		pointer-events: auto!important;
	}
	
	input[type="button"],input[type="text"],input[type="submit"],input[type="image"],input[type="date"],textarea, select {
		-webkit-appearance: none;
		border-radius: 0;
	}

}