.txtEx {
	text-indent: 120%;
	white-space: nowrap;
	overflow: hidden;
}
.PC {display: inherit;}
.SP {display: none;}

:root {
	--font-default: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "Yu Gothic Medium", "Yu Gothic", "メイリオ", Meiryo, Osaka, "sans-serif";
	--font-Mincho:  "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;

}

html {
	font-size: 62.5%; /*1rem = 10px*/
	font-size: 1.33vw; /*defaultFontsize / maxWidth * 100*/
	/*max-width: 750px;*/ /*maxWidth*/
	margin: 0 auto;
}
  /*deviceWidth 750px 以上の時 全体のフォントサイズ 10px に固定*/
  @media screen and (min-width: 750px) {
    html {
      font-size: 1vw; /*defaultFontsize*/
    }
  }
  @media screen and (min-width: 1000px) {
    html {
      font-size: 10px; /*defaultFontsize*/
    }
  }
body {
	font-family: var(--font-default);
	width: 100%;
	margin: 0 auto;
	/*overflow-x: hidden;*/
}
html > body img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
picture {
	display: inline-block;
	vertical-align: bottom;
}

a:where([class]) {
	display: inline-block;
	transition: opacity 0.12s;
}
	a:where([class]):hover {
		opacity: 0.8;
	}

/*--------------------
No1*/

/*--No2*/

/*No3*/


/*--------------------
header*/
header {
	height: 10rem;
	color: #333;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	line-height: 2;
}
header a{
	backface-visibility: hidden;
	transition: none;
}
header .wrap {
	position: fixed;
		z-index: 1000;
		right: 0;
		left: 0;
	overflow: hidden;
}
header .snsbtn {
	position: absolute;
		z-index: 10;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	display: flex;
	margin-left: -20rem;
}
header .snsbtn a {
	width: 5rem;
	margin-right: 1rem;
}
header .contbtn {
	position: absolute;
		z-index: 10;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	width: 26rem;
	margin-left: 3rem;
}
header .topbtn {
	position: absolute;
		z-index: 10;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	width: 16rem;
	height: 6rem;
	margin-left: -41.6rem;
}
header .topbtn a {
	display: block;
	height: 100%;
	background: #fff;
	opacity: 0;
}
header .topbtn a:hover {
	opacity: 0.2;
}



.whn_22bg {
	background: url(../images/lp_whn_22bg.jpg) no-repeat top 7rem center;
	background-size: 200rem;
}
.w900img {
	width: 90rem;
	margin: 0 auto;
}
.whn_22 {
	margin-top: -7rem;
}
.whn_24.is-open {
	position: relative;
}
	.whn_24.is-open:before {
		content: "";
		position: absolute;
			z-index: 10;
			top: 50%;
			right: 2rem;
			transform: translateY(-50%);
		width: 4rem;
		height: 4rem;
		background: url(../images/lp_whn_24close.jpg);
		background-size: 100%;
	}
.whn_26.is-open {
	position: relative;
}
	.whn_26.is-open:before {
		content: "";
		position: absolute;
			top: 49%;
			left: 49.8%;
			transform: translate(-50%,-50%);
		width: 4.4rem;
		height: 4.4rem;
		background: url(../images/lp_whn_26close.png);
		background-size: 100%;
	}
.js-flex-order {
	display: flex;
	flex-direction: column;
}
.js-flex-order .is-open {
	order: 2;
}
.js-flex-order .is-open + .content {
	order: 1;
}

.whn_28bg {
	padding-bottom: 10rem;
	background: url(../images/lp_whn_28bg.jpg) top center;
	background-size: 1rem;
}
.w1000img {
	width: 100rem;
	margin: 0 auto;
}
.whn_28bg .js-toggle .btn {
	width: 100rem;
}
	.whn_28bg .is-open:before {
		display: none;
	}
	.whn_28bg .btn:before {
		content: "";
		position: absolute;
			z-index: 10;
			/*top: 50%;*/
			top: 1.6rem;
			right: 5.4rem;
			/*transform: translateY(-50%);*/
		width: 4.5rem;
		height: 2.5rem;
		background: url(../images/lp_whn_30close.jpg);
		background-size: 100%;
	}



/*--------------------
main*/
main {
	color: #333;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	line-height: 2;
	overflow: hidden;
}
.img {
	display: flex;
		justify-content: center;
	max-width: 2000px;
	width: 100%;
	margin: 0 auto;
}
.img img {
	max-width: 2000px;
	width: 200rem;
}
.txt {
	position: relative;
}
	.txt .txtarea01 {
		position: absolute;
			z-index: 10;
			left: 50%;
			transform: translateX(-50%);
		width: 51.6rem;
		margin-left: 16.1rem;
		background: #f7f7f7;
	}
	.txt .txtarea01 mark {
		background: #fff799;
		background: linear-gradient(180deg, rgba(255,255,255,0) 15%, rgba(255,247,153,1) 15%, rgba(255,247,153,1) 85%, rgba(255,255,255,0) 85%);
		font-weight: bold;
	}
	.txt .txtarea02 {
		position: absolute;
			z-index: 10;
			left: 50%;
			transform: translateX(-50%);
		text-align: center;
		width: 100%;
	}
		.txt .txtarea02 p {
			display: inline-block;
			background: #fff;
		}
	.txt .txtarea03 {
		position: absolute;
			z-index: 10;
			left: 50%;
			transform: translateX(-50%);
		width: 84rem;
		font-size: 1.4rem;
		background: #fff;
	}
	.txt .txtarea04 {
		position: absolute;
			z-index: 10;
			left: 50%;
			transform: translateX(-50%);
		width: 64.6rem;
		margin-left: -10rem;
		background: #fff;
	}
	.txt .txtarea05 {
		position: absolute;
			z-index: 10;
			left: 50%;
			transform: translateX(-50%);
		width: 40.1rem;
		margin-left: 23.1rem;
		background: #fff;
	}
	.txt .txtarea06 {
		position: absolute;
			z-index: 10;
			left: 50%;
			transform: translateX(-50%);
		width: 40.1rem;
		margin-left: -19.3rem;
		background: #fff;
	}
	.box .txtarea07 {
		position: absolute;
			z-index: 10;
			top: 48.8rem;
			left: 50%;
			transform: translateX(-50%);
		width: 36.4rem;
		background: #fff;
		outline: 1rem solid #fff;
	}

.column .columnarea {
	position: absolute;
	display: flex;
}
.column .box {
	position: relative;
	width: 45rem;
}
.column .box img {
	width: 100%;
}

.sim {
	margin: 0 auto;
	margin-top: 8rem;
	margin-bottom: 4.5rem;
	border-collapse: collapse;
	border: 1px solid #333;
}
.sim tr:nth-child(1) th {
	background: #f8f8fd;
}
.sim tr th,
.sim tr td {
	padding: 1em 0;
	font-weight: normal;
	text-align: center;
	line-height: 1;
	border: 1px solid #333;
	border-top: 0;
	border-left: 0;
}
.sim tr td {
	width: 16rem;
	font-weight: bold;
}
	.sim tr th sub,
	.sim tr td sub {
		font-size: 63%;
		font-weight: normal;
		vertical-align: baseline;
	}
		.sim tr *:first-child {
			width: 25.3rem;
		}
		.sim tr *:last-child {
		}
.sim tr.tuwa td {
	font-size: 1.8rem;
	font-weight: normal;
}
.sim tr.tuwa td strong {
	font-size: 2.2rem;
}
.sim tr.tuwa2 td span {
	display: inline-block;
	width: 3em;
	vertical-align: middle;
	border-top: 1px solid #333;
}
.tusin {
	margin-top: 0;
}
.table_note {
	width: 90rem;
	margin: 0 auto;
	font-size: 1.4rem;
}
.univahead {
	margin-top: 6.5rem;
	margin-bottom: 3rem;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
}
.univa {
	margin-top: 0;
}
.univa tr td {
	width: 64.5rem;
	font-weight: normal;
	line-height: 2;
}
.table_note.note2 {
	width: 91.4rem;
}
.table_note.note2 a {
	color: #0098ca;
	text-decoration: none;
}
	.table_note.note2 a:hover {
		text-decoration: underline;
	}

.reco {
	display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	width: 92.1rem;
	margin: 0 auto;
}
.reco .img {
	position: relative;
	width: 30rem;
	margin-bottom: 1rem;
}
.reco .img img {
	width: 100%;
}
.reco .btnarea {
	position: absolute;
		bottom: 4.5rem;
		left: 50%;
		transform: translateX(-50%);
}
.reco .btnarea a {
	width: 25rem;
}
	.reco .btnarea a:first-child {
		/*margin-bottom: 1rem;*/
	}
.reco_note {
	padding-top: 3rem;
	padding-bottom: 5rem;
}
	.txt .txtarea01.voice01,
	.txt .txtarea01.voice02,
	.txt .txtarea01.voice03 {
			z-index: 0;
		display: inline-block;
		width: auto;
		margin: 0;
		background: #fff;
	}
	.txt .txtarea01.voice01 {
			top: 5.1rem;
		width: 44rem;
		margin-left: -22.6rem;
	}
	.txt .txtarea01.voice02 {
			top: 20.3rem;
		width: 37rem;
		margin-left: 28.1rem;
	}
	.txt .txtarea01.voice03 {
			top: 33.6rem;
		width: 43rem;
		margin-left: -18.1rem;
		letter-spacing: 0;
	}
.txt .flowtxt {
	position: absolute;
		/*z-index: 10;*/
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
	width: 62rem;
	margin-left: 15rem;
	background: #fff;
}
	.txt .flowtxt.yl {
		margin-top: 0.5rem;
		background: #fff799;
	}
.txt .flowtxt mark {
	display: inline-block;
	margin-top: 0.9rem;
	color: #0098ca;
	font-weight: bold;
	background: none;
}
	.txt .flowtxt mark.mtnone {
		margin-top: 0;
	}
.txt .flowtxt_note {
	position: absolute;
		z-index: 10;
		left: 50%;
		transform: translate(-50%,0);
	width: 100%;
	max-width: 950px;
}
.txt .flowtxt_note p {
	margin-bottom: 1.3rem;
}
.txt .flowtxt_note strong {
	display: inline-block;
	width: 14rem;
	margin-top: 0.5em;
	margin-right: 0.7rem;
	padding: 0.5em 0;
	font-size: 1.7rem;
	text-align: center;
	line-height: 1.35;
	vertical-align: top;
	border: 1px solid #000;
}
.txt .flowtxt_note span {
	display: inline-block;
	width: 79.6rem;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
}

.attentarea {
	padding-bottom: 7rem;
	background: #ddf5fc;
}
.attentarea p {
	width: 88.3rem;
	margin: 0 auto;
	font-size: 1.4rem;
}

.optionarea {}
.optionarea .js-toggle {
	margin-bottom: 2rem;
}
.optionarea .content {
	background: #ddf5fc;
	width: 90rem;
	margin: 0 auto;
	padding: 5rem 0 5.7rem 0;
}
.optionarea .head {
	width: 80rem;
	margin: 0 auto;
	margin-bottom: 3.5rem;
	font-weight: bold;
}
.optionarea .content ul {
	width: 80rem;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.optionarea .content ul li {
	display: flex;
	margin-bottom: 1.5rem;
	background: #fff;
	border-radius: 0 1rem 1rem 0;
}
.optionarea .content ul .left {
	display: flex;
		justify-content: center;
		align-items: center;
		flex-shrink: 0;
	width: 20rem;
	margin-right: 1em;
	padding: 0.2em 0;
	color: #fff;
	font-weight: bold;
	border-radius: 1rem 0 0 1rem;
	background: #3dc6ef;
}
	.optionarea .content ul .left2 {
		width: 17rem;
		margin-right: 2.5rem;
		text-align: center;
		line-height: 1.5;
	}
	.optionarea .content ul .left2 + .right {
		padding: 4rem 0;
	}
.optionarea .content ul mark {
	display: block;
	margin-top: 1rem;
	font-size: 1.4rem;
	background: none;
}
.optionarea .content ul .right {
	display: flex;
		align-items: center;
		flex-wrap: wrap;
}
	.optionarea .content .note {
		width: 80rem;
		margin: 0 auto;
		padding-left: 1em;
		text-indent: -1em;
	}

.qaarea {
	background: #0098ca;
}
.qaarea .js-toggle .que {
	display: flex;
		align-items: center;
	color: #0098ca;
	font-size: 2.2rem;
	font-weight: bold;
	background: #ebf6f7;
	border-radius: 0.8rem;
	margin-bottom: 2.4rem;
}
	.qaarea .js-toggle:last-child .que {
		margin-bottom: 0;
	}
	.qaarea .js-toggle .que.is-open {
		margin-bottom: 0;
	}
.qaarea .js-toggle .que .toggleicon {
	display: flex;
		align-items: center;
	width: 2.5rem;
	margin: 0 1.4rem 0 auto;
}
	.qaarea .js-toggle .que .toggleicon:before,
	.qaarea .js-toggle .que .toggleicon:after {
		content: "";
		position: absolute;
		width: 2.5rem;
		border-top: 0.2rem solid #0098ca;
	}
	.qaarea .js-toggle .que .toggleicon:after {
		transform: rotate(90deg);
	}
	.qaarea .js-toggle .que.is-open .toggleicon:after {
		display: none;
	}
.qaarea .qaicon {
	width: 3.7rem;
	margin: 0 1rem;
}
.qaarea .js-toggle .content {
	width: 90rem;
	margin: 0 auto;
	color: #fff;
	padding-bottom: 1.4rem;
}
.qaarea .js-toggle .content .ans {
	display: flex;
		align-items: flex-start;
	padding: 2.2rem 0;
}
.qaarea .js-toggle .content .note {
	margin-top: -1.8rem;
	padding-bottom: 2.2rem;
	padding-left: 5.7rem;
	font-size: 1.4rem;
}
.qaarea .js-toggle .content .qaimg01 {
	width: 33.2rem;
}
.qaarea .js-toggle .content .qaimg02 {
	width: 36.7rem;
}
.qaarea .js-toggle .content .listarea {
	padding-left: 5.7rem;
}
.qaarea .js-toggle .content .listarea li {
	display: flex;
		align-items: center;
	margin-bottom: 1.6rem;
	font-size: 1.8rem;
}
.qaarea .js-toggle .content .listarea span {
	margin-right: 0.8em;
	padding: 0.1em 0.6em;
	font-size: 1.7rem;
	font-weight: bold;
	border: 1px solid #fff;
}
.recomodalarea.panel {
	position: absolute;
		bottom: 10.5rem;
		/*z-index: 1;*/
	width: auto;
	margin: 0;
	padding: 0;
	background: none;
	box-shadow: none;
}
.recomodalarea .c-btn {
	width: 25rem;
}
.recomodalarea .modal-panel-back {
	z-index: 10000;
	background: rgba(0,0,0,0.5);
}
.recomodalarea .recomodalcont {
	width: 90rem;
	height: auto;
	padding: 2.2rem 2.6rem 6.2rem 2.6rem;
}
.recomodalarea .recomodalcont .btn-area {
	position: relative;
		z-index: 10;
	text-align: right;
}
.recomodalarea .recomodalcont .c-btn {
	width: auto;
	margin: 0 0 0 auto;
	padding: 0.2rem 1rem 0.2rem 0.9rem;
	color: #fff;
	font-size: 1.3rem;
	text-decoration: none;
	background: #333;
}
.recomodalarea .recomodalcont .modal-panel-img {
	margin-top: -3rem;
}
.recomodalarea .recodetaillist {
	width: 80rem;
	margin: 0 auto;
	line-height: 1.77;
}
.recomodalarea .recodetaillist li {
	display: flex;
	padding: 0.4em 0 0.4em 0.6em;
	border-bottom: 1px solid #ccc;
}
	.recomodalarea .recodetaillist li:last-child {
		border: 0;
	}
.recomodalarea .recodetaillist .head {
		flex-shrink: 0;
	width: 14.5rem;
	text-align: left;
}
.recomodalarea .recodetaillist .cont {
	text-align: left;
}
.recomodalarea .recodetaillist .cont .contwrap {
	display: flex;
}
.recomodalarea .recodetaillist .cont .contwrap .wraphead {
		flex-shrink: 0;
	width: 5.25em;
	text-align: right;
}
.recomodalarea .recodetaillist .cont .contwrap .wrapcont {
}
.recomodalarea .recodetaillist .color {
	display: flex;
		flex-wrap: wrap;
	text-align: left;
}
	.color .colorwrap {
		display: flex;
			align-items: center;
	}
	.color mark {
		display: inline-block;
		width: 2rem;
		height: 2rem;
		margin: 0 1.5em 0 0.5em;
		border-radius: 50%;
		box-shadow: 0.3rem 0.3rem 0.3rem rgba(0,0,0,0.15)
	}
	.color .pdred {background: #df3939;}
	.color .stwh {background: #fff;}
	.color .mdbk {background: #000;}
	.color .bl {background: #11699f;}
	.color .pk {background: #f8d6c8;}
	.color .ltcp {background: #f9c1a4;}
	.color .sl {background: #e2e2e2;}
	.color .gl {background: #b6e1d7;}

/*--------------------
footer*/
footer .snsbtn {
	padding: 4rem 0;
	text-align: center;
}
footer .snsbtn .btn {
	margin: 0 0.55rem;
}
.footer {
	padding: 1em 0;
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
	background: #2b99f1;
}



/*toggle*/
.js-toggle {
	position: relative;
}
.js-toggle .btn {
	cursor: pointer;
	position: relative;
	display: block;
	width: 90rem;
	margin: 0 auto;
}
	div:not(.whn_28bg) .js-toggle .btn:hover {
		opacity: 0.8;
	}
	.optionarea .js-toggle .btn:not(.is-open):after {
		content: "";
		position: absolute;
			right: 1.8rem;
			top: 50%;
			transform: translateY(-50%);
		display: block;
		width: 5rem;
		height: 5rem;
		background: url(../images/optionbtnarr.png);
		background-size: 100% 100%;
	}
.js-toggle .btn.is-open + img {
	display: none;
}
.js-toggle .btn.is-open + .is-active {
	display: block;
}
.js-toggle .is-active {
	display: none;
}



body.is-modalOpen{overflow:hidden;position:fixed;left:0}.panel{width:680px;max-width:90%;margin:100px auto;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,0.2);background-color:white;text-align:center}.modal-panel-back{position:fixed;width:100%;height:100%;top:0;right:0;bottom:0;left:0;background-color:rgba(200,200,200,.5);overflow-y:scroll}.modal-panel-back.is-disable{display:none}.modal-panel{width:600px;height:150vh;background-color:white;padding:30px;margin:100px auto}



.required:after {
	content: "必須";
	display: inline-flex;
		justify-content: center;
		align-items: center;
	margin: 0 0.5em;
	margin-left: 1em;
	padding: 0.2em 0.5em;
	color: #fff;
	font-size: 80%;
	line-height: 1;
	white-space: nowrap;
	background: #d63a21;
}
.ninni:after {
	content: "任意";
	display: inline-flex;
		justify-content: center;
		align-items: center;
	margin: 0 0.5em;
	margin-left: 1em;
	padding: 0.2em 0.5em;
	color: #fff;
	font-size: 80%;
	line-height: 1;
	white-space: nowrap;
	background: #999;
}

	.php-MailForm01 .formradio li {
		display: flex;
	}
	.php-MailForm01 .formradio .formradio_block {
	}
	.php-MailForm01 .formradio label {
		cursor: pointer;
		display: flex;
			align-items: flex-start;
		line-height: 1;
		margin-right: 2em;
		padding: 0.5em 0;
	}
	.php-MailForm01 .formradio input {
		display: none;
	}
	.php-MailForm01 .formradio .radiostyle {
		position: relative;
			flex-shrink: 0;
		/*display: flex;
			justify-content: center;
			align-items: center;*/
		width: 1.8rem;
		height: 1.8rem;
		margin-right: 0.5em;
		border-radius: 50%;
		border: 1px solid #afafaf;
	}
		.php-MailForm01 .formradio .radiostyle:before {
			content: "";
			position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%,-50%);
			display: block;
			width: 0.8rem;
			height: 0.8rem;
			border-radius: 50%;
			background: #333;
			opacity: 0;
		}
		.php-MailForm01 .formradio input:checked ~ .radiostyle:before {
			opacity: 1;
		}
			.php-MailForm01 .formradio .checkstyle {
				border-radius: 0;
			}
			.php-MailForm01 .formradio .checkstyle:before {
				border-radius: 0;
			}
	.php-MailForm01 .formtxt textarea {
		width: 100%;
		padding: 0.5em 0.5em;
		line-height: 1.2;
		border: 1px solid #afafaf;
		background: #fff;
	}
	.php-MailForm01 .formtxt label {
		display: flex;
	}
	.php-MailForm01 .formtxt .forminput {
		position: relative;
		width: 100%;
	}
	.php-MailForm01 .formtxt input {
		width: 100%;
		padding: 0.2em 0.5em;
		line-height: 1;
		border: 1px solid #afafaf;
		background: #fff;
	}
	.php-MailForm01 .formtxt .unit {
			align-self: flex-end;
		margin-left: 1em;
		font-size: 80%;
	}
	.php-MailForm01 .form-name- {
		width: 100rem;
		margin: 0 auto;
		font-size: 1.6rem;
	}
	.php-MailForm01 .formarea {}
	.php-MailForm01 .formarea label span,
	.php-MailForm01 .formarea.formradio span:not(.radiostyle) {
			display: flex;
			flex-shrink: 0;
			align-items: center;
			justify-content: flex-end;
		width: 25rem;
		margin-bottom: 2rem;
		padding-right: 1em;
		text-align: right;
	}
		.php-MailForm01 .formarea.formradio span:not(.radiostyle) {
			align-items: flex-start;
		}
		.php-MailForm01 .formarea.formradio span.required:after {
			margin-top: 0.5em;
		}
	.php-MailForm01 .formarea {}
	.php-MailForm01 .formtxt input,
	.php-MailForm01 .formtxt textarea {
		width: 69rem;
		max-width: 690px;
		margin-bottom: 2rem;
		padding: 0.8em;
		background: #f2f2f2;
		border-radius: 1rem;
		border: 0;
	}
	.php-MailForm01 .formarea li.note {
		font-size: 1.4rem;
		margin-top: -1rem;
		margin-bottom: 2rem;
	}
	.php-MailForm01 .formsubmit {
		cursor: pointer;
		display: block;
		width: 74rem;
		margin: 0 auto;
		margin-top: 7rem;
	}
		.php-MailForm01 .formsubmit:hover {
			opacity: 0.8;
		}



	.php-MailForm01 .formtextarea label span {
		align-items: flex-start;
	}
	.php-MailForm01 .formtextarea label span.ninni:after {
		margin-top: 0.5em;
	}
	.php-MailForm01 .formradio .radiostyle {
		margin-left: 1.5em;
		padding-right: 0;
	}
	.php-MailForm01 .formradio label:not(:last-child) .radiostyle {
		margin-bottom: 0.7rem;
	}

.thanks {
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: 0.05em;
	text-align: center;
}
.thanks .head {
	width: 54.5rem;
	margin: 0 auto;
	margin-top: 6rem;
	margin-bottom: 3rem;
}
.thanks .formsubmit {
	width: 50rem;
	margin-bottom: 10rem;
}
.thanks .formsubmit img {
	width: 100%;
}

#CONTACT {
	padding-top: 10rem;
	margin-top: -10rem;
}


.fixbnr {
	pointer-events: none;
	position: fixed;
	z-index: 100;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	padding-bottom: 30px;
	opacity: 0;
}

.fixbnr.is-active {
	pointer-events: auto;
	opacity: 1;
}

.fixbnr.is-hidden {
	pointer-events: none;
	opacity: 0;
}

.fixbnr .fixbnr_btn {
	display: block;
	width: 900px;
	filter: drop-shadow(7px 7px 5px rgba(0, 0, 0, 0.5));
}

/* 202605 tnetpro 追加 */
.flex{
	display: flex;
}
.center{
	text-align: center;
}
.bold{
	font-weight: bold;
}
.dib{
	display: inline-block;
}
.color_wh{
	color: #fff;
}
.mt10{
	margin-top: 10px;
}
.mt20{
	margin-top: 20px;
}
.mt40{
	margin-top: 40px;
}

.btn_wrap{
	max-width: 1000px;
	gap: 4%;
	margin: 80px auto;
}
.net_btn{
	width: 48%;
}
.net_note01{
	max-width: 1000px;
	margin: 30px auto;
	font-size: 0.6em;
}

.shindan{
	padding: 150px 20px;
	background-image: url(../images/stripe_pink.png);
}
.net_img{
	text-align: center;
}
.net_img img{
	max-width: 2000px;
	width: 100%;
	margin: auto;
}
.w1000{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
.shindan_wrap{
	gap: 20PX 40px;
	margin-top: 20px;
	flex-wrap: wrap;
}
.shindan01{
	width: 100%;
	padding: 20px;
	border-radius: 10px;
	background: #eee;
}
.shindan_h2{
	font-size: 60px;
	line-height: 1.5;
	color: #01a6b4;
}
.u_line{
	position: relative;background:linear-gradient(transparent 60%, #ffd9ab 60%);
}
.shindan_h3{
	line-height: 1.5;
}
.shindan_step{
	font-size: 0.8em;
	color: #11699f;
}
.shidan_cource{
	width: calc(50% - 10px);
}
input[type="radio"],
input[type="checkbox"]{
	display: none;
}
.shindan_label{
	padding: 5px;
	display: block;
	border-radius: 5px;
	padding-left: 30px;
	background-image: url(../images/check.svg);
	background-position: 5px 10px;
	background-size: 20px;
	background-repeat: no-repeat;
	cursor: pointer;
	border: solid 2px #e7f5f6;
	position: relative;
	min-height: 200px;
}
input[type="radio"]:checked +  .shindan_label,
input[type="checkbox"]:checked +  .shindan_label{
	background-color: #e7f5f6;
	background-image: url(../images/check_on.svg);
	background-position: 5px 10px;
	background-size: 20px;
	background-repeat: no-repeat;
}
.shindan_label_name{
	font-size: 1.3em;
	line-height: 1.5;
}
.shidan_cource_wrap,
.shindan_option_wrap,
.shindan_result_wrap{
	background: #fff;
	padding: 20px;
	border-radius: 10px;
	margin-top: 10px;
	flex-wrap: wrap;
	gap: 10px;
}
.course_ex{
	gap: 10px;
}
.course_ex_box{
	font-size: 0.8em;
	line-height: 1.5;
	color: #01a6b4;
	width: calc(50% - 5px);
}
.shindan_icon_box{
	height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.shindan_icon{
	max-width: 70px;
}
.shidan_option_box{
	width: calc((100% - 30px) / 4);
}
.option_label_name{
	font-size: 1.1em;
	line-height: 1.5;
}
.service_icon{
	width: 27px;
    height: 36px;
    position: absolute;
    left: 32px;
    top: 1px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.option_ex_box{
	font-size: 0.8em;
	line-height: 1.5;
	color: #01a6b4;
	margin-top: 5px;
}

.shindan02{
	width: 100%;
	padding: 20px;
	border-radius: 10px;
	background: #01a6b4;
	margin-top: 40px;
}
.shindan_result_wrap{
	gap: 20px;
}
.shindan02_box{
	width: calc(50% - 10px);
}
.shindan02_ttl{
	font-size: 1.1em;
}
.shindan02_course{
	font-size: 1.2em;
	padding: 5px;
	background: #dd7ba0;
	color: #fff;
	border-radius: 5px;
}
.shindan_period{
	background: #ffd9ab;
	border-radius: 100px;
	padding: 5px;
}
.total-price-p{
	font-size: 2em;
	line-height: 1.5;
}
.total-price-after-p{
	font-size: 1.1em;
}
#total-price{
	color: #dd7ba0;
	font-size: 1.8em;
}
.shindan_otoku{
	color: #01a6b4;
	font-size: 1.5em;
}
#otoku-price{
	color: #dd7ba0;
	font-size: 1.5em;
}
.s_sup{
	font-size: 0.5em;
}
.shindan_note{
	font-size: 0.6em;
	margin-top: 40px;
}
.shindan_btn{
	display: inline-block;
	padding: 10px 60px;
	border-radius: 100px;
	background: #ecaa51;
	color: #fff;
	font-size: 1.5em;
	text-decoration: none;
}

@media screen and (max-width: 1024px) {
	.shindan{
		padding: 60px 20px;
	}
	.shindan_h2{
		font-size: 6vw;
	}

	.btn_wrap{
		padding: 0 40px;
	}
}

.contact_btn_wrap {
	display: flex;
	justify-content: center;
	margin: 40px 0 80px;
}

.contact_btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 260px;
	min-height: 58px;
	padding: 10px 50px 10px 30px;
	border-radius: 4px;
	background: #fff;
	text-decoration: none;
	box-sizing: border-box;
}

.contact_btn::before {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 28px;
	background: #f54e3d;
	transition: opacity 0.3s;
}

.contact_btn__text {
	position: relative;
	z-index: 1;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.4;
}

.contact_btn__arrow {
	position: absolute;
	z-index: 1;
	top: 50%;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: translateY(-50%) rotate(45deg);
}

.contact_btn:hover::before {
	opacity: 0.8;
}

@media screen and (max-width: 768px) {
	.contact_btn {
		width: 100%;
		max-width: 260px;
		min-height: 54px;
		padding: 8px 44px 8px 24px;
	}

	.contact_btn__text {
		font-size: 18px;
		text-align: center;
	}

	.contact_btn__arrow {
		right: 18px;
		width: 9px;
		height: 9px;
	}
}