@charset "utf-8";
/* CSS Document */


#cform{
	background:#fff;
	width:90%;
	max-width:564px;
	margin:-70px auto 0;	
	padding:20px 45px;
	position: relative;
	
}
#cform *{
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  'Noto Sans JP', Hiragino Sans,"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
#cform .inner{
	width: 100%;
	position: relative;
}

.cformwrap{
	width: 100%;
}
#step2,#step3,#step4,#step5{
	display:none;
}

.stepnum{
  display: -webkit-flex;
  display: flex;
	justify-content:center;	
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */		
}
.stepnum li{
	position:relative;
	margin:0 18px;
}
.stepnum li span{
	display: block;
	text-align: center;
	font-size:18px;
	width: 2em;
	height: 2em;
	line-height: 2;
	border-radius: 2em;
	background:#EEEEEE;
	color:#BABABA;
	font-weight:bold;
}
.stepnum li.act span{
	background:#172139;
	color:#fff;
}

.stepnum li::before{
	content:"";
	background:url(../img/cform/step.png) no-repeat left top;
	background-size:contain;
	width:26px;
	height:7px;
	position:absolute;
	left:-31px;
	top:calc(50% - 3px);
}
.stepnum li:first-of-type::before{
	display: none !important;
}
.stepnum li.act::before{
	content:"";
	background:url(../img/cform/step_on.png) no-repeat left top;
	background-size:contain;
}

.stepnum li span{font-weight:bold;}
.forminput{
	padding:20px 0 5px;
}

.forminput dl{
	text-align:left;
}
.forminput .flexdl{
  	display: -webkit-flex;
  	display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
.forminput dl dt{
	color:#171F39;
	font-size:20px;
	line-height:1;
	padding:0.6em 1em 0.5em 1.5em;
	font-weight:bold;
	background:#EBEBEB;
	margin-bottom:20px;
}


.forminput dl dt span{
	font-weight:bold;
	color:#fff;
	display:inline-block;
	margin-right:10px;
	line-height:1;
	font-size: 0.65em;
	padding:0.3em 0.5em;
	background:#171F39;
	position:relative;
	border-radius: 0;
	bottom:0.15em;
}
.forminput dl dt span.hissu{
	background:#FF4D4D;
}
.forminput dl dd{
	padding-bottom:30px;
}

.forminput dl .flex{
  	display: -webkit-flex;
  	display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;

}

.forminput input[type="text"],
.forminput input[type="email"],
.forminput input[type="tel"]{
	
	width:100%;
	height:54px;
	font-size:18px;
	font-weight:500;
	margin-bottom:0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:solid 1px #172139;
	padding:0 1.8em;
	border-radius:8px;
	box-shadow:4px 2px 0 #172139;
}

.forminput ::placeholder{color:#AAAAAA;}

.forminput dl dd .radioflex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
.forminput dl dd .radioflex label{
	width:225px;
	display:block;
}
.forminput dl dd.radioflex2 .radioflex label{
	margin-bottom:20px;
}
.forminput dl dd.radioflex2 .error{
	margin-top:0;
	margin-bottom:20px;
}
.forminput dl dd.radioflex2{
	padding-bottom:10px;
}
.forminput dl dd .radioflex label input{
	display:none;
}
.forminput dl dd .radioflex label span{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  'Noto Sans JP', Hiragino Sans,"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	background:#fff;
	border-radius:8px;
	border:solid 1px #172139;
	box-shadow:4px 2px 0 #172139;
	font-weight:500;
	font-size:18px;
	padding:0.8em;
	color:#171F39;
}
.forminput dl dd .radioflex label span i{
	display:inline-block;
	font-style:normal;
	width:1em;
	height:1em;
	border-radius:2em;
	border:solid 1px #172139;
	margin-right:0.5em;
}
.forminput dl dd .radioflex label input:checked + span{
	background:#172139;
	box-shadow:4px 2px 0 #8B909C;
	color:#fff;
}
.forminput dl dd .radioflex label input:checked + span i{
	width:0.9em;
	height:0.9em;
	border:solid 4px #fff;
}
.forminput dl dd .radioflex label:hover span{
	background:#172139;
	box-shadow:4px 2px 0 #8B909C;
	color:#fff;	
}
.forminput dl dd .radioflex label:hover input + span i{
	width:0.9em;
	height:0.9em;
	border:solid 4px #fff;
}

.forminput dl dd .flex .cal{
	width:225px;
	background:#fff url(../img/cform/cal.png) no-repeat right 20px center;
	background-size:25px auto;
}


.forminput select{
	background:#fff url(../img/cform/select.png) no-repeat right 15px center;
	background-size:32px auto;
	display:block;
	width:100%;
	height:54px;
	font-size:18px;
	font-weight:500;
	margin-bottom:0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:solid 1px #172139;
	padding:0 1.8em;
	border-radius:8px;
	box-shadow:4px 2px 0 #172139;
	text-align: center;
  padding-right: 80px;
}
.forminput .flex select{
	width:220px;
}
.error{
	display:none;
	background:#E02020 !important;
	color:#fff !important;
	font-weight:bold;
	font-size:16px;
	text-align: center !important;
	line-height:1.4;
	padding:0.3em !important;
	margin:1em 0 0;
}
.btnwrap{
	background:#FBFBFB;
	padding:20px 50px;
	width:auto;
	margin:0 -45px -20px;
	padding:20px 0;
  display: -webkit-flex;
  display: flex;
	justify-content: center;	
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */	
}
.btnwrap .btn{
	
}
@keyframes shiny {
    0% { left: -20%; }
    40% { left: 120%; }
    100% { left: 120%; }
}
.btnwrap .stbtn{
	position:relative;
    background-repeat: no-repeat,repeat;
    background-position: 90% center;
    background-image: url(../img/cform/arrow.png), -webkit-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -moz-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -o-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), linear-gradient(180deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);

    background-size: 9px auto;
    font-weight: bold;
    font-size: 20px;
    padding: 1em 1em 1em 1em;
    text-align: center;
    color: #fff;
    line-height: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    border-radius: 8px;
    cursor: pointer;
	overflow:hidden;
}

.btnwrap .stbtn.active::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}


.btnwrap .stbtn:hover{
	
    background-repeat: no-repeat,repeat;
    background-position: 90% center;
    background-image: url(../img/cform/arrow.png), -webkit-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -moz-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -o-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), linear-gradient(180deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);

}
.btnwrap .stbtn::before{
	display: none !important;
}
.btnwrap .stbtn{
	display:block;
	padding:0.8em 1em;
	width: 270px;
	margin:0 auto;
}

.btnwrap .stbtn:disabled{
	background:#D8D8D8 url(../img/cform/arrow.png) no-repeat 90% center;
	background-size:9px auto;
	cursor:default;
	text-shadow:none;
}
.btnwrap .stbtn:disabled::hover{

	background:#D8D8D8 url(../img/cform/arrow.png) no-repeat 90% center;
	background-size:9px auto;
}


.btnwrap .stbtn#submit{
    background-repeat: no-repeat,repeat;
    background-position: 90% center;
    background-image: url(img/arrow.png), -webkit-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(img/arrow.png), -moz-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(img/arrow.png), -o-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(img/arrow.png), linear-gradient(180deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);

    background-size: 15px auto;
    font-weight: bold;
    font-size: 22px;
    padding: 0.8em 1em 0.8em 1em;
    text-align: center;
    color: #fff;
    line-height: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    width: 360px;
    border-radius: 10px;
    cursor: pointer;
}
.btnwrap .stbtn#submit:disabled{
	background:#D8D8D8 url(../img/cform/arrow.png) no-repeat 90% center;
	background-size:9px auto;
	cursor:default;
	text-shadow:none;
}

.btnwrap2 .stbtn{
	padding-right:2em;
}
.btnwrap .bkbtn{
	font-size:16px;
	white-space: nowrap;
	padding-right: 1.5em;
}
.btnwrap .bkbtn a{  
	color: #fff;
  display: block;
	width:90px;
  background: #D8D8D8 url(../img/cform/backbtn.png) no-repeat 15% center;
  background-size:7px auto;
  white-space: nowrap;
  padding: 0.6em 1.5em 0.6em 2em;
  border-radius: 8px;
  font-weight: bold;
}

#cform.thanks{
	padding-left:70px;
	padding-right:70px;
}
#cform.thanks h2{
	text-align: center;
	font-size: 28px;
	padding-bottom:1em;
	font-weight: bold;
	color:#171F39;
	padding:1.5em 0;
}
#cform.thanks p{
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  'Noto Sans JP', Hiragino Sans,"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size:18px;
	line-height: 1.8;
	text-align: left;
	color:#171F39;
	padding-bottom:2em;
}
#cform.thanks .telbox{
	padding:2.5em 0 4em;
	border-top:solid 1px #000000;
}
#cform.thanks .telbox .tel img{
	margin:0 auto;
}
#cform.thanks .telbox .tlogo{padding-bottom:1em;}
#cform.thanks .btnwrap{
	margin:0 -70px -20px;
}
.SP{
	display: none;
}

.pptxt{
	padding-bottom:1.5em;
}
.pptxt a{
	color:#4695E2;
	text-decoration:underline;
}

@media screen and (max-width: 768px) {
.SP{display: block;}
.PC{display: none;}
	

	.pagemv .pagetitle{
		width:100%;
	}
#cform{
	width:90%;
	margin:-10vw auto 0;	
	padding:5vw;
	
}
.stepnum{
  display: -webkit-flex;
  display: flex;
	justify-content:center;	
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */		
}
.stepnum li{
	font-size:0.9em;
	position:relative;
	margin:0 0.9em;
}
.stepnum li span{
	display: block;
	text-align: center;
	font-size:1em;
	width: 2em;
	height: 2em;
	line-height: 2;
	border-radius: 2em;
}

.stepnum li::before{
	content:"";    
	width: 1.4em;
    height: 0.5em;
    position: absolute;
    left: -1.55em;
    top: calc(50% - 0.25em);
}



.forminput{
	padding:2em 0 1em;
}


.forminput dl dt{    
	font-size: 1.1em;
    line-height: 1;
    padding: 0.6em 1em 0.5em 1em;
    margin-bottom: 1em;
}


.forminput dl dt span{
	font-weight:bold;
	font-size: 0.65em;
	padding:0.3em 0.5em;
	bottom:0.15em;
}

.forminput dl dd{
	padding-bottom:2em;
}


.forminput input[type="text"],
.forminput input[type="email"],
.forminput input[type="tel"]{
	
	width:100%;
	height:3.5em;
	font-size:1em;
	font-weight:500;
	margin-bottom:0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:solid 1px #172139;
	padding:0 1.3em;
	border-radius:6px;
	box-shadow:2px 1px 0 #172139;
}

.forminput dl dd .radioflex label{
	width:48%;
	display:block;
}
.forminput dl dd.radioflex2 .radioflex label{
	margin-bottom:1em;
}
.forminput dl dd.radioflex2{
	padding-bottom:1.5em;
}
.forminput dl dd .radioflex label input{
	display:none;
}
.forminput dl dd .radioflex label span{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  'Noto Sans JP', Hiragino Sans,"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	background:#fff;
	border-radius:6px;
	border:solid 1px #172139;
	box-shadow:2px 1px 0 #172139;
	font-weight:500;
	font-size:1em;
	padding:0.8em;
}
.forminput dl dd .radioflex label span i{
	display:inline-block;
	font-style:normal;
	width:1em;
	height:1em;
	border-radius:2em;
	border:solid 1px #172139;
	margin-right:0.5em;
}
.forminput dl dd .radioflex label input:checked + span{
	background:#172139;
	box-shadow:2x 1px 0 #8B909C;
	color:#fff;
}
.forminput dl dd .radioflex label input:checked + span i{
	width:0.9em;
	height:0.9em;
	border:solid 4px #fff;
}

.forminput dl dd .flex .cal{
	width:48%;
	background:#fff url(../img/cform/cal.png) no-repeat right 1em center;
	background-size:1.4em auto;
}


.forminput select{
	background:#fff url(../img/cform/select_sp.png) no-repeat right 0.8em center;
	background-size:1.8em auto;
	display:block;
	width:100%;
	height:3.5em;
	font-size:1em;
	font-weight:500;
	margin-bottom:0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:solid 1px #172139;
	padding:0 1.5em 0 1.3em;
	color:#3c3c3c;
	border-radius:6px;
	box-shadow:2px 1px 0 #172139;
	text-align: left;
}
.forminput .flex select{
	width:48%;
}
.error{
	font-size:0.9em;
}
.btnwrap{
	width:auto;    
	margin: 0 -5vw -5vw;
    padding: 3vw;
}

.btnwrap .stbtn{
	position:relative;
    background-repeat: no-repeat,repeat;
    background-position: 90% center;
    background-image: url(../img/cform/arrow.png), -webkit-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -moz-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -o-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), linear-gradient(180deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);

    background-size: 0.45em auto;
    font-weight: bold;
    font-size: 1.1em;
    padding: 1em 1em 1em 1em;
    text-align: center;
	overflow:hidden;
}

.btnwrap .stbtn.active::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
}


.btnwrap .stbtn:hover{
	
    background-repeat: no-repeat,repeat;
    background-position: 90% center;
    background-image: url(../img/cform/arrow.png), -webkit-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -moz-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), -o-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(../img/cform/arrow.png), linear-gradient(180deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);

}
.btnwrap .stbtn::before{
	display: none !important;
}
.btnwrap .stbtn{
	display:block;
	padding: 1em;
	width: 50vw;
	border-radius:6px;
	margin:0 auto;
}

.btnwrap .stbtn:disabled{
	background:#D8D8D8 url(../img/cform/arrow.png) no-repeat 90% center;
	background-size:0.45em auto;
	cursor:default;
	text-shadow:none;
}
.btnwrap .stbtn:disabled::hover{

	background:#D8D8D8 url(../img/cform/arrow.png) no-repeat 90% center;
	background-size:0.45em auto;
}


.btnwrap .stbtn#submit{
    background-repeat: no-repeat,repeat;
    background-position: 90% center;
    background-image: url(img/arrow.png), -webkit-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(img/arrow.png), -moz-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(img/arrow.png), -o-linear-gradient(270deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);
    background-image: url(img/arrow.png), linear-gradient(180deg,rgba(71,206,151,1.00) 0%,rgba(11,172,114,1.00) 100%);

    background-size: 0.45em auto;
    font-weight: bold;
    font-size: 1.1em;
    padding: 1em;
    width: 50vw;
    border-radius: 6px;
    cursor: pointer;
}
.btnwrap .stbtn#submit:disabled{
	background:#D8D8D8 url(../img/cform/arrow.png) no-repeat 90% center;
	background-size:0.45em auto;
	cursor:default;
	text-shadow:none;
}

.btnwrap2 .stbtn{
	padding-right:2em;
}
.btnwrap .bkbtn{
	font-size:1em;
	white-space: nowrap;
	padding-right: 1.1em;
}
.btnwrap .bkbtn a{  
	color: #fff;
  display: block;
	width:20vw;
  background: #D8D8D8 url(../img/cform/backbtn.png) no-repeat 15% center;
  background-size:0.4em auto;
  white-space: nowrap;
  padding: 0.5em 1.5em 0.5em 2em;
  border-radius: 6px;
  font-weight: bold;
}

#cform.thanks{
	padding-left:8vw;
	padding-right:8vw;
}
#cform.thanks h2{
	font-size: 1.4em;
	padding:1.5em 0;
}
#cform.thanks p{
	font-size:1em;
}
#cform.thanks .telbox{
	padding:1.5em 0 3em;
}
#cform.thanks .telbox .tel img{
	width:90%;
}
#cform.thanks .telbox .tlogo{
	width:50%;
	margin:0 auto;
	padding-bottom:1em;}
#cform.thanks .btnwrap{
	margin:0 -8vw -5vw;
}	
	.topbtn{width:62%;}
	#fixbtn{display:none !important;}
	
	.pptxt{
	padding-bottom:0.8em;
}
	#footer .finfo .fcont .btn{display:none !important;}
}