
header {
    background-color: #fff!important;
    color: #3f609d!important;
    z-index: 100;
}


body{
	overflow-y: scroll;
}

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}



#styleMain{
	/*font-family: "ヒラギノ角ゴ Pro W6","HiraKakuPro-W6";*/
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 16px;
    position: relative;
    margin-top: 92px;
    color: #6d6d6d;
}


#styleMain p {
  color: #6d6d6d;
  font-weight: normal;
}

#styleMain strong{
	font-weight: normal;
}	

#styleMain img{
  max-width: 100%;
  height: auto;	
}	



.catchWrap{
	background: url("../img/v1/bg_catch.jpg") no-repeat center top;
	background-size: auto 500px;
	max-width: 1920px;
	margin: 0 auto 100px;
}


.catchMain{
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.mainCatch{
	max-width: 1000px;
	flex-basic: 1000px;
}

.optionCatch{
	color: #fff!important;
	width: 350px;
	padding-top: 80px;
}

.optionCatch .catchTtl{
	font-size: 52px;
	font-weight: bold !important;
	margin-bottom: 30px;
	line-height: 1.2;
	letter-spacing: 4px;
}

.optionCatch p{
	margin-bottom: 100px;
	color: #fff!important;
	font-size: 19px;
	letter-spacing: 2px;
}

.btnCatchApply{
	display: block;
	position: relative;	
}

.btnCatchApply a{
	display: block;
	position: relative;
	border-radius: 100px;
	background-color: #fba111;
	color: #fff;
	text-align: center;
	width: 320px;
	height:70px;
	line-height: 70px;
	font-size: 24px;
	box-shadow: 4px 3px 10px -1px #4f98d1;
}

.btnCatchApply a::before,
.btnCatchApply a::after{
    content: "";
    position: absolute;
    bottom: 0;
    top: 0;
    margin: auto;
    z-index: 2;
}

.btnCatchApply a::before{
    right: 20px;
    width: 20px;
    height: 3px;
    background: #fff;
}

.btnCatchApply a::after{
    right: 20px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 3px;
}

.btnCatchApply::before,
.btnCatchApply::after{
    position: absolute;
    z-index: 3;
}

.btnCatchApply::before{
	content: "今すぐ";
	background: #fff;
	border-radius: 100px;
	width: 80px;
	height: 80px;
	color: #fba111;
	line-height: 80px;
	text-align: center;
	left: 14px;
	top: -56px;
}

.btnCatchApply:after {
    content: "";
    top: 20px;
    left: 84px;
    margin-top: -15px;
    border: 5px solid transparent;
    border-left: 15px solid #fff;
    z-index: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.movieBox{
	text-align: center;
	padding: 0 10px;
}

.movieThumb{
	box-shadow: 4px 3px 10px 4px #eff3f7;
	margin: 0 auto 20px;
	cursor: pointer;
	border-radius: 15px;
}

.movieThumb:hover{
	opacity: 0.7;
}

.movieBoxInner p{
	font-size: 18px;
	margin: 0 auto 100px;
}



/*--- js-modal ---*/

.modal {
    display: none;
    /*visibility: hidden;*/
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100vw;
    left: 0;
    z-index: 1000;
    overflow: hidden;
}

.modal.open {
    /*display: none;*/
    visibility: inherit;
    height: 100vh;
    z-index: 1050;
}

.modal__bg{
  background: rgba(0,0,0,0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.modal__content {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%;
}

.modal__content.img{
	width: auto!important;
}

.modal_img{
	clear: both;
}

.btnClose{
    width: 40px;
    height: 40px;
    display: block;
    position: relative;
    float: right;
    margin-right: 4px;
}

.btnClose span {
    position: absolute;
    width: 24px;
    height: 3px;
    background-color: #ccc;
    transition: all 0.2s ease-out;
    top: 20px;
}

.btnClose span:nth-of-type(1){
	transform: rotate(45deg);
    -webkit-transform: rotate(45deg);	
}

.btnClose span:nth-of-type(2) {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}



.lpContentWrap{
	max-width: 1040px;
	margin: 0 auto 100px;
}

.wrapTitle {
	display: block;
    text-align: center;
    position: relative;
    font-size: 32px;
    color: #3f609d;
    padding-bottom: 25px;
    max-width: 1040px;
    margin: 0 auto 50px;
    letter-spacing: 4px;
    font-weight: bold!important;
}

.wrapTitle::after{
	content: "";
	position: absolute;
	width:140px;
	height: 7px;
	background:#4f98d1;
	border-radius: 10px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

.wrapIntro{
	color: #3f609d!important;
	text-align: center;
	font-size: 24px;
	margin-bottom: 50px;
	letter-spacing: 2px;
	font-weight: 500 !important;
}


.boxTitle{
	font-size: 24px;
	margin-bottom: 60px;
	text-align: center;
	color: #6d6d6d;
}

.probleList{
	display: flex;
	margin-bottom: 50px;
}

.probleList li{
	width: 232px;
	margin-right: 34px;
	background: #fff;
	border-radius: 10px;
	padding: 18px;
	box-shadow: 4px 3px 10px 4px #eef3f6;
}

.probleList li p{
	color: #6d6d6d!important;
}	

.probleList li:last-child{
	margin-right: 0;
}

.probleList li .boxTitle{
	font-size: 24px;
	margin:0 auto 60px;
}

.probleList li .listTitle{
	font-size: 24px;
	color: #3f609d;
	display: block;
	margin-bottom: 20px;
	font-weight: 500!important;
	line-height: 1.4;	
}

.probleList li .listThumb{
	margin: -50px auto 30px;
	display: block;
	text-align: center;
}

.probleList li .listThumb img{
    display: inline;
}


.impressPart{
	background: linear-gradient(to right, #3888cc 40%, #21578f);
	text-align: center;
	padding: 50px 0;
	margin: 0 auto;
}

.impressPart p{
	color: #fff!important;
	letter-spacing: 4px;
	font-size: 30px;
}	

.impressPart strong{
	font-size: 54px;
	font-weight: bold!important;
}

#solutionWrap{
	background: #ecf2f3;
	padding: 50px 0 1px;
	margin-bottom: 100px;
}

#solutionWrap .lpContentWrap {
    margin: 0 auto;
}

.solutionInner{
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}

.solutionInner.odd{
	flex-direction: row-reverse;
}

.solutionInner .innerImg {
    flex-basis: 520px;
    min-width: 520px;
}

.solutionInner .innerImg img{
	box-shadow: 4px 3px 10px 4px #e0e9ed;
}	

.solutionInner .innerTtl{
	font-size: 24px;
	color: #3f609d;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.solutionInner .innerBox{
	position: relative;
	padding: 50px 0 150px;
	width: 450px;
	flex-basis: 450px;
}

.solutionInner .innerBox::after{
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 100px;
	font-family: 'Roboto', sans-serif;
	background: linear-gradient(to right, #3888cc 40%, #21578f);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.solutionInner .innerBox p{
	color: #6d6d6d!important;
	letter-spacing: 2px;
}

.solutionInner .innerBox.solution_1::after{
	content: "01";
}

.solutionInner .innerBox.solution_2::after{
	content: "02";
}

.solutionInner .innerBox.solution_3::after{
	content: "03";
}

.solutionInner .innerBox.solution_4::after{
	content: "04";
}

.analyTab {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 50px;
}

.analyTab li {
    border-radius: 50px;
    color: #3f609d;
    flex-basis: 190px;
    background: #ecf2f3;
    height: 70px;
    margin-bottom: 20px;
    position: relative;
    border: 3px solid #ecf2f3;
    cursor: pointer;
    text-align: center;
	align-items: center;
	display: flex;
	justify-content: center; 
	box-shadow: 1px -1px 8px 1px #c9d8e1;   
}

/*
.analyTab li.onerow {
	line-height: 70px;
	padding: 0;
}
*/

.analyTab li.active{
	border: 3px solid #3f609d;
	background: #fff;
	box-shadow: 1px -1px 8px 1px #c9d8e1;
}

.analyTab li.active::after{
  content: "";
  position: absolute;	
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #3f609d;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -13px;
} 

.tabContentBox{
	border-radius: 10px;
	border: 5px solid #3f609d;
	padding: 30px;
	margin: 0 auto 50px;
	box-shadow: 1px 1px 6px 2px #ebf0f5;
}

.tabContent{
	display: flex;
	justify-content: space-between;
	display: none;
	opacity: 0;	
}




.tabContent .contentImg{
	flex-basis: 400px;
	min-width: 400px;
}

.tabContent .contentBox{
	flex-basis: 530px;
}


.tabContent .contentBox .contentTitle{
	color: #3f609d;
	font-size: 24px;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.tabContent .contentBox .psList{
	margin-top: 40px;
}

.tabContent .contentBox .psList li{
	padding-left: 20px;
	position: relative;
	font-size: 14px;
	margin-bottom: 10px;
}

.tabContent .contentBox .psList li::before{
	content: "";
	position: absolute;
	left: 2px;
	top: 2px;
	width: 14px;
	height: 14px;
	border-radius: 100px;
	background: linear-gradient(to right, #83b7df 40%, #4cbebf);		
}

.tabContent .contentBox .psList li::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 100px;
    background: #fff;
}


.tabContent .contentBox p,
.tabContent .contentBox .psList li{
	font-weight: normal;
	letter-spacing: 2px;
}


.strongTxt{
	display: block;
	color: #3f609d;
	font-size: 54px;
	margin-bottom: 100px;
	text-align: center;
	font-weight: bold!important;
}	

.btnApply,.btnFree{
	display: block;
	background: linear-gradient(to right, #3888cc 40%, #21578f);
	color: #fff;
	font-size: 30px;
	text-align: center;
	width: 700px;
	height: 70px;
	line-height: 70px;
	margin: 0 auto;
	box-shadow: 6px 5px 10px -3px #9ec6e6;
	position: relative;
	border-radius: 100px;
}

.btnFree{
	background: #fff45c;
	box-shadow: none;
	color:#3f609d;
}

	

.btnApply::before,
.btnApply::after,
.btnFree::before,
.btnFree::after{
	content: "";
	position: absolute;
	bottom: 0;
	top: 0;
	margin: auto;
}	

.btnApply::before,
.btnFree::before{
    right: 20px;
    width: 20px;
    height: 3px;
    background: #fff;
}

.btnFree::before{
	background: #3f609d;
}	

.btnApply::after,
.btnFree::after {
    right: 20px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 3px;
}

.btnFree::after{
    border-top: 3px solid #3f609d;
    border-right: 3px solid #3f609d;
}


.gradeList{
	display: flex;
	justify-content: space-between;
}

.analyBox{
	margin: 0 auto 100px;
}


.voiceTabList{
	display: flex;
	justify-content: space-between;
	max-width: 1040px;
	margin: 0 auto;
}

.voiceTab{
	border-radius: 10px 10px 0 0;
	background-color: #fff;
	width: 320px;
	height: 100px;
	color: #3f609d;
	font-size: 24px;
	box-shadow: 1px -1px 8px 1px #eef3f6;
    display: flex;
	text-align: center;
	align-items: center;
	justify-content: center;
	line-height: 1.5;
	cursor: pointer;
	letter-spacing: 2px;	
}

.voiceTab.active{
	box-shadow: none;
	background-color: #ecf2f3;
}


.voiceBoxWrap{
	background-color: #ecf2f3;
	padding: 80px 0;
	margin: 0 auto 100px;
}

.voiceBox{
	max-width: 1040px;
	margin: 0 auto;
	
}

.voiceBoxList{
	display: none;
	opacity: 0;
}

.voiceBoxList li{
	max-width: 960px;
	margin: 0 0 50px auto;
	background-color: #fff;
	padding: 45px 0 45px 150px;
	position: relative;
	border-radius: 20px;

}

.voiceBoxList li:last-child{
	margin: 0 0 0 auto;
}	


.voiceBoxList li p{
	color: #6d6d6d!important;
}

.voiceBoxList li p strong{
	font-size: 24px;
	display: block;
	font-weight: bold!important;
}

.voiceBoxList li p span{
	font-weight: normal;
}


.voiceBoxList li .listIcon{
	width: 150px;
	height: 150px;
	border-radius: 100px;
	border:5px solid #fff;
	background-color: #ecf2f3;
	position: absolute;
	left: -70px;
	top: -30px;
	overflow: hidden;
	display: flex;
    justify-content: center;
    align-items: end;
}

.voiceBoxList li .listIcon img{
	width: 94px;
}



.tabContent.active
{
	display: flex;
	animation-name:fadeInAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
}

.voiceBoxList.active{
	display: block;
	animation-name:fadeInAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;	
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}


.qaList{
	background-color: #fff;
	box-shadow: 1px -1px 8px 1px #eef3f6;
	padding: 30px;
	margin-bottom: 40px;
	cursor: pointer;
}


.qaList dt{
	color: #3f609d;
	font-size: 24px;
}

.qaList dd{
	color: #6d6d6d;
	line-height: 1.5;
	margin-top: 20px;
	font-size: 24px;
	display: none;
	font-weight: normal;
	font-size: 16px;
	padding-top: 8px;
}

.qaList dt,
.qaList dd{
	position: relative;
	padding-left: 45px;
}

.qaList dt:before{
	content: "Q.";
	color: #3f609d;
}

.qaList dd:before{
	content: "A.";
	color: #6d6d6d;
}

.qaList dt:before,
.qaList dd:before{
	position: absolute;
	left: 0;
	top: 0;
	font-size: 24px;
	font-weight: bold;
}

.qaList dt:after{
	content: "+";
	position: absolute;
	right: 0;
	top: 0;
	color:#b5b5b5;
}

.qaList dt.active:after{
	content: "-";
}	


.impressTxt{
	font-size: 30px;
	max-width: 700px;
	margin: 0 auto 20px;
}

.impressPart.fin {
    margin: 0 auto!important;
}


.planListBox{
	display: flex;
	margin: 0 auto 20px;
	align-items: self-end;
}

.planList{
	border-radius: 10px;
	min-width: 256px;
	border: 1px solid #b5b5b5;
	padding-bottom: 30px;
}

.planList.recommend{
	border: 3px solid #3f609d!important;
}


.listTtile{
	background: #4f98d1;
	color: #fff;
	font-size: 20px;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	position: relative;
	border-top-left-radius: 9px;
	border-top-right-radius: 9px;	
}

.recommend .listTtile{
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;	
}	


.listTtile .impress{
	position: absolute;
	background: #fff45c;
	border-radius: 100px;
	color: #3f609d;
	width: 120px;
	height: 30px;
	line-height: 30px;
	left: 0;
	right: 0;
	top: -15px;
	margin: auto;
	font-size: 16px;
}

.optionList{
	margin: 0 auto 100px;
}

.optionList li{
	font-weight: normal;
	margin-bottom:10px; 
	letter-spacing: 2px;
}

.optionList li.special{
	color: #ff0000;

}


.free .listTtile,
.free .planStyle{
	background: #b5b5b5;
}

.recommend .listTtile,
.recommend .planStyle{
	background: #3f609d;
}

.recommend .listTtile{
	height: 90px;
	line-height: 90px;
}


.planList .listPTxt{
	margin: 30px auto;
	text-align: center;
	color: #000;
}
/*
.planList.free .listPTxt.free {
    margin: 22px auto 28px;
}
*/
.planList .listPTxt strong{
	font-size: 30px;
	color: #3f609d;
	display: block;
	font-weight: bold!important;
}

.planList .listPTxt strong span{
	font-size: 12px;
}	

.planStyle{
	background: #4f98d1;
	border-radius: 50px;
	color: #fff;
	width: 160px;
	height: 30px;
	line-height: 30px;
	margin: 0 auto;
	display: block;
	text-align: center;
}

.listPs{
	width: 90%;
	margin: 0 auto;
}

.listPs li{
	display: flex;
	justify-content: space-between;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #6d6d6d;
	font-size: 16px;
	color: #6d6d6d;
}

.listPs li:last-child{
	border-bottom: none;
}

.listPs li span.count{
	color: #3f609d!important;
}

.listPs li span.icon{
	color: #3f609d!important;
}
/*
.free .listPs li span.icon{
	color: #b5b5b5!important;
}
*/

#styleMain .only_sp{ display: none !important; }

.float-button__wrap {
    background: #fff;
    width: 200px;
    border-radius: 20px;
    padding: 20px 0;
    position: fixed;
    right: 30px;
    bottom: 100px;
    box-shadow: 1px -1px 15px 1px #c7ddea;
    display: none;
    text-align: center;
}
.float-button__wrap img{
	margin: 0 auto 20px;
}	

.float-button__wrap .btnApply {
    max-width: 90%;
    font-size: 18px;
    height: 50px;
    line-height: 50px;
}

.float-button__wrap .btnApply::before{
	width: 16px;
}

.float-button__wrap .btnApply::before,
.float-button__wrap .btnApply::after{
    right: 14px;
}

#footer{
	position: relative;
}

.btnPageTop{
	position: absolute;
	bottom: 0;
	right: 30px;
	border-radius:20px 20px 0 0;
	background: #fff;
	width: 200px;
	height: 36px;
	line-height: 30px;
	
}

.btnPageTop a{
	color: #2c477a;
	display: block;
	position: relative;
	font-weight: bold;
}

.btnPageTop a::before {
	content: "";
    position: absolute;
    margin: auto;
    top: 5px;
    bottom: 0;	
    left: 30px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #2c477a;
    border-left: 3px solid #2c477a;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 3px;
}

.setupFree{
	display: block;
	border-radius: 50px;
	line-height: 30px;
	height: 30px;
	background: #3f609d;
	color: #fff45c;
	text-align: center;
	margin: 10px auto;
	width: 90%;
}

@media screen and (max-width: 1060px) {
	.probleList {
	  flex-wrap: wrap;
	  justify-content: space-around;
	}

	.probleList li {
	  width: 45%;
	  margin-right: 0;
	  margin-bottom: 67px;	  
	}  


	.solutionInner {
		padding: 0 20px;
	}

	.solutionInner .innerImg {
		margin: 0 20px;
	}

	.voiceTabList {
	  padding: 0 20px;
	}

	.voiceBoxList li {
	  max-width: 90%;
	  margin: 0 auto 50px;
	  padding: 45px 0 45px 190px;
	}
	.voiceBoxList li:last-child{
		margin: 0 auto;
	}

	.voiceBoxList li .listIcon {
	  left: -10px;
	}
}	

@media screen and (max-width: 1000px) {
	.solutionInner {
	  flex-wrap: wrap;
	  justify-content: center;
	}

	.solutionInner .innerImg {
	  margin: 0 auto;
	}

}


@media screen and (max-width: 1420px) {

	.catchMain {
	    justify-content: center;
	}

	.mainCatch {
	    max-width: 630px;
	    margin-right: 20px;
	}	
}	

@media screen and (max-width: 1060px) {

	.catchWrap {
  		background-size: auto 740px;
	}

	.catchMain {
	    display: block;
	}

	.mainCatch {
		margin: 0 auto 50px;
	}

	.optionCatch {
	    margin: 0 auto 50px;
	    padding-top: 0;
	}


	.planListBox {
	    width: 92vw;
	    overflow-x: scroll;
	    padding: 30px 0;
	}

}	



/* Media Queries ================================================== */
/*640*/
@media screen and (max-width: 600px) {

	#styleMain .only_pc{ display: none !important; }
	#styleMain .only_sp{ display: block !important; }

	body{
	width: 100vw;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
	}
	

	#styleMain {
	    margin-top: 80px;
	}


	.lpContentWrap{
		max-width: 92vw;
		margin: 0 auto 50px;
	}	


	.catchMain {
	    padding: 0 20px;
	}

	.btnCatchApply a {
	    margin: 0 auto;
	}

	.optionCatch .catchTtl {
		font-size: 10vw;
	    text-align: center;
	}

	.movieBox {
		padding: 0 10px;
	}

	.modal__content.img {
	    width: 92vw!important;
	}
	
	.modal__content {
	    width: 92vw;
	    top: 40%;
	}
	.wrapTitle {
	    font-size: 20px;
	}


	.probleList{
		display: block;
	}

	.probleList li{
		width: auto;
		margin: 0 auto 60px;
	}

	.probleList li .listTitle{
		font-size: 24px;
		margin-bottom: 20px;
		text-align: center;
	}


	.impressPart{
		padding: 24px 0;
	}

	.impressPart p {
	    font-size: 18px;
	}

	.impressPart strong{
		font-size: 30px;
	}

	.solutionInner {
	  display: block;
	  margin-bottom: 40px;
	}

	.solutionInner .innerImg {
	  min-width: initial;
	}

	.solutionInner .innerBox {
	  position: relative;
	  padding: 20px 0 80px;
	  width: auto;
	}

	.solutionInner .innerBox::after {
	  font-size: 60px;
	}

	.solutionInner .innerTtl {
	  font-size: 20px;
	  margin-bottom: 10px;
	}


	.wrapIntro {
	  font-size: 20px;
	}


	.analyTab {
	    flex-wrap: nowrap;
	    overflow-x: scroll;
	    width: 92vw;
	    margin: 0 auto;
	    padding: 10px 20px 0;
	}

	.analyTab li {
		min-width: 190px;
		margin-right: 10px;
	}	

	.tabContentBox {
	  padding: 20px;
	}

	.tabContent.active {
	  display: block;
	}  

	.tabContent .contentImg {
	  min-width: initial;
	  margin-bottom: 20px;
	}


	.strongTxt {
	  font-size: 30px;
	  margin-bottom: 50px;
	}

	.btnApply, .btnFree {
		width: 90%;
		font-size: 20px;
	}	

	.gradeList {
		flex-wrap: wrap;
	}

	.gradeList li{
		width: 44%;
		margin-bottom: 20px;
	}	


	.voiceTabList {
	  width: 92vw;
	  flex-wrap: nowrap;
	  overflow-x: scroll;
	  margin: 0 auto 20px;
	}

	.voiceTab {
	  min-width: 200px;
	  font-size: 20px;
	  border-radius: 20px;
	  box-shadow: none;
	  border:1px solid #ecf2f3;
	  margin-right: 20px;
	}

	.voiceBoxWrap {
	  padding: 40px 0;
	  margin: 0 auto 50px;
	}

	.voiceBoxList{
		width: 92vw;
		margin: 0 auto;
	}

	.voiceBoxList li {
	  max-width: 100%;
	  margin: 0 0 50px auto;
	  padding: 10px 10px 10px 60px;
	  border-radius: 100px;
	}

	.voiceBoxList li p strong {
	  font-size: 16px;
	}

	.voiceBoxList li p span {
	  font-size: 14px;
	}

	.voiceBoxList li .listIcon {
	  width: 50px;
	  height: 50px;
	  left: 0;
	  top: 0;
	  bottom: 0;
	  margin: auto;
	}


	.qaList {
	 padding: 14px;
	  margin-bottom: 20px;
	}


	.qaList dt, .qaList dd {
	  padding-left: 30px;
	}

	.qaList dt,.qaList dd {
	  font-size: 18px!important;
	  -webkit-text-size-adjust: none!important;
	}


	.qaList dt::before, .qaList dd::before {
	  font-size: 18px;
	}

	.qaList dt::after {
	  right: -4px;
	}

	.qaList dd {
		padding-top: 0;
	}


	.impressTxt {
	  font-size: 18px;
	  padding: 0 10px;
	}


	.btnPageTop{
		position: static;
		border-radius:0;
		width: 100%;
		height: 50px;
		line-height: 50px;
		
	}

	.btnPageTop a::before {
	    left: 30vw;
	}   




.float-button__wrap {
    width: 96vw;
    right: 0;
    bottom: 10px;
    left: 0;
    margin: auto;
    border-radius: 100px;
}

.float-button__wrap img{
	margin: auto;
}



.float-button__wrap .btnApply {
    max-width: 90%;
    font-size: 18px;
    height: 50px;
    line-height: 50px;
}

.float-button {
    display: flex;
    position: relative;
    color: #2d487b;
    align-items: center;
}

.float-button img{
    width: 48%;
    margin: 0 20px;
}

.float-button strong{
	font-size: 18px;
	font-weight: bold!important;
}

.float-button::before, .float-button::after {
    content: "";
    position: absolute;
    bottom: 0;
    top: 0;
    margin: auto;	
    right: 20px;
    width: 20px;
    height: 3px;
    background: #2d487b;
}

.float-button::after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #2d487b;
    border-right: 3px solid #2d487b;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 3px;
    background: transparent;
}


.float-button::before,
.float-button::after{
    right: 14px;
}



}

@media screen and (max-width: 414px) {
	.catchWrap {
	    background-size: auto 100%;
	    padding-bottom: 10px;
	}	
}	