@charset "utf-8";
/*------------------------------------------------------------
共通
------------------------------------------------------------*/

body {
  margin: 0;
  -webkit-text-size-adjust: 100%;
  font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', sans-serif !important;
  background: #fff;
  color: #000;
  font-size: 17px;
  background: #fff;
  word-break: break-all;
}

*,
*:before,
*:after {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

a:visited, a:hover, a:active {
  color: #fff;
}

a:vis

a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}


/*共通*/
.fsS{
    font-size: .9em;
}
.fsSS {
    font-size: .6em;
    line-height: 1.3;
    text-align: right;
	margin: 1% auto;
}
.fsL{
    font-size: 1.3em;
}
.taC {
    text-align: center;
}
.taR {
    text-align: right;
}
.taL {
    text-align: left;
}
.fwB {
  font-weight: bold;
}
.marker {
    background: linear-gradient(transparent 60%, #fff47d 60%);
}
.rel {
    position: relative;
}
.abs {
    position: absolute;
}
.pa{
    padding: 20px 10px;
}
.pa2 {
    padding: 0 10px;
}

 .pc {
    display: block;
  }
 .sp {
    display: none;
  }

.fcB{
	color: #143c83;
	font-size: 0.8vw;
}
.fcY{
	color: #ffff01;
}

.b{
	font-weight: bold;
}

@media screen and (max-width:740px){
html {
    overflow-x: hidden;
    overflow-y: scroll; -webkit-overflow-scrolling: touch
}

.pa2 {
    padding: 0 20px;
}
  .pc {
    display: none;
  }
 .sp {
    display: block;
  }
	
	p{
		font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', sans-serif;
	}
	
	.fcB{
	font-size: 3.1vw;
}

}

/*------------------------------------------------------------
レイアウト
------------------------------------------------------------*/

body{
    margin: 0 auto;
    /*max-width: 1920px;*/
}

p,h2,h3{
    color: #000;
}
img{
    display: block;
    width: 100%;
    height: 100%;
}
p {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.5;
  }
@media screen and (min-width:740px) {
    p {
    font-size: 18px;
    margin-bottom: 10px;
    line-height: 1.5;
  }
}
/*------------------------------------------------------------
スマホから
ヘッダー
------------------------------------------------------------*/
header {
  width: 100vw;
  position: relative;
  z-index: 100;
  display: flex !important;
  justify-content: space-around;
  align-items: center;
}
.selected{
    position:absolute;
    top:87%;
    left: 11%;
    font-size: 16px;
    font-weight:bold;
    color:#fff6b6;
}
  header div>p {
    font-size: 12px;
    margin: 0 0 0 1%;
    color: #fff6b6;
	font-weight:bold
  }
@media screen and (min-width:640px) {
  header {
    width: 100%;
    min-height: 80px;
    left: 0;
  }
  header div.mf_log{
    display: flex !important;
    align-items: flex-end;
    justify-content: flex-start;
	flex-wrap: wrap;  
  }
  header div>img {
    width: 40%;
  }
  .selected{
    top: 87%;
    left: 11%;
    font-size: 16px;  
  }
	
}

@media screen and (min-width:800px){
      .selected{
        top: 37%;
        left: 30%;
        font-size: 26px;  
  }
	
} 
.head_tel {
  float: right;
  text-align: center;
}
header>img {
  max-width: 300px;
}
.head_tel_detail a p {
  font-size: 13px;
  margin: 0;
  color: #1f4ea0;
  text-align: center;
}
.head_tel_detail div p{
    font-size: 1.7rem;
    color: #1f4ea0;
}
.head_tel_detail {
	padding: 8px 10px;
	position: absolute;
	right: 0;
	top: 25px;
}

.head_tel_detail>div {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}
header{
	width: 60%;
	margin: 0 auto !important;
	padding: 1% 0 0 !important;
}

/* mv */
@media screen and (min-width:741px) {
	.mv {
    background-image: url(../img/fv1029_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}
.mv_pc{
	width: 90%;
    margin: 0 auto;
    max-width: 1200px;
    position: relative;
    padding: 25px 0;
}
}
@media screen and (max-width:740px){
	.mv {
		position: relative;
	}
	header{
		position: absolute;
		width: 100%;
		padding: 2% 3% 1% !important;
	}
	.mf_log img{
		width: 90%;
	}

	.head_tel_detail {
		border-radius: 5px;
		display: block;
        width: 50%;
        right: 10px;
        top: 12px;
        padding: 3px 0;
	}
	.head_tel_detail a p {
		font-size: 9px;
	}
	.head_tel_detail>div>p {
		font-size: 1.1rem;
	}
}


/* 3冠受賞 */
.award{
	background-image: url(../img/crown_bg_pc.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}
.sp_awarditem{
	display: none;
}
.total {
    width: 55%;
    margin: 0 auto;
    padding: 4% 0 0 2%;
}


@media screen and (min-width:741px) {
    .award{
		background-image: url(../img/crown_bg_pc.jpg);
		background-size: cover;
		background-repeat: no-repeat;
	}
}
@media screen and (max-width:740px){
	.pc_awarditem{
	display: none;
}
	.sp_awarditem{
	display: block;
}
	.total {
    width: 100%;
    padding: 6% 0 3% 4%;
	background: #f9fbfc;
}
}
.minutes{
    max-width: 800px;
    width: 90%;
    margin: auto;
    margin-top: 2%;
}
/* CTA */
.cta_area{ 
	background: -webkit-linear-gradient(top left, #0184f0, #143c83);
	background: -o-linear-gradient(top left, #0184f0, #143c83);
	background: linear-gradient(to bottom right, #0184f0, #143c83);  
	padding: 0 0 3%;
	overflow: hidden;
}

.cta_flex{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.cta_txt{
	width: 60%;
    margin: 0 auto 1%;
}

.mr2{
	margin-right: 2%;
}

.btn{
	position: relative;
	z-index: 2;
}

.tel_abs {
    position: absolute;
    top: 54px;
    left: 114px;
    font-size: 42px;
    font-weight: bold;
    color: #0050a9;
}
.cta_time {
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    padding: 3% 0 10px;
}

@media screen and (max-width:740px){
	.cta_time {
    font-size: 20px;
    line-height: 1.5;
    padding: 7% 0 10px;
}
	.cta_txt {
    width: 100%;
    margin: 0 auto 3%;
}
	.tel_abs {
    top: 36%;
    left: 24%;
    font-size: 8vw;
}
	.card img {
         margin: auto;
    width: 80%;
    margin-top: 2%;
}
	.cta_flex{
	padding: 0 0 3%;
}
	.btn, .card {
    width: 96%;
}
	
	
}


/* 時間表示箇所 */
#Realtime, #Realtime01, #Realtime02, #Realtime03 {
    font-size: 2vw;
    font-weight: 700;
    margin: 0;
    padding: 2% 2% 1%;
    text-align: center;
    font-family: 'Meiryo', 'メイリオ', sans-serif;
    color: #fffd61;
}

/* 点滅 */
.blinking{
  animation: flash 1.7s linear infinite;
}

@keyframes flash {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }


  100% {
    opacity: 1;
  }
}
/* 三冠 */
.crown img{
	width: 60%;
    margin: 0 auto;
    padding: 6% 0 10%;
}

@media screen and (min-width:741px) {
    .crown{
	background-image: url(../img/crown_pc_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}
}
@media screen and (max-width:740px){
	.crown img{
		width: 100%;
		padding: 0;
	}
}

/* 料金一覧 */
.price h2 {
	text-align: center;
    font-size: 3.3vw;
    font-weight: bold;
    color: #143c83;
    padding: 10% 0 4%;
    width: 28%;
    margin: auto;
}
.price{
    background-size: cover;
    background-repeat: no-repeat;
	padding-bottom: 10vw;
}
.price_detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 55%;
    margin: 0 auto;
    height: 55%;
}
 .price_box {
    width: 31%;
    margin-bottom: 2%;
    border-radius: 10px;
    height: 31%;
 }
.price_detail ul {
    padding: 0 0 0 5%;
    font-size: 1vw;
    background-color: #0049b0;
    height: 14vw;
    color: #fff;
    border-radius: 0 0 10px 10px;
  }

  .price_detail ul li {
   margin-left: 0;
    padding-right: 10%;
    text-align: justify;
    margin-bottom: 0%;
  	padding-left: 1em;
    text-indent: -1em;
  }

 .price_detail::after {
  content: "";
  display: block;
  width: 31%;
}
 .price_detail ul {
  text-align: left;
 }
.price_inner {
    position: relative;
}
.price_abs {
    position: absolute;
    top: 10.5%;
    left: 28%;
    width: 43.5vw;
}
.price_wrapper {
    position: relative;
}

.maker {
  width: 50%;
    text-align: center;
    margin: 3% auto 0;
    border: 2px solid #143c83;
    background-color: #fff;
}
.maker>p {
    color: #0049b0;
    font-weight: bold;
    padding: 1% 0 0;
    margin: 0 3%;
    font-size: 24px;
    border-bottom: solid 2px #0049b0;
}
.maker_detail {
  padding: 3% 5%;
}
.maker_detail img{
  padding: 0 0 1%;
}
.maker_detail p{
	font-size: 20px;
    padding-top: 1%;
    line-height: 1.5;
}
@media screen and (max-width:740px){
	.price {
		padding: 0 3% 12%;
	}
	.price h2{
		font-size: 8vw;
		width: 80%;
	}
	.price_detail {
		width: 100%;
	}
	.price_box {
		width: 48%;
		margin-bottom: 4%;
		height: 48%;
	}
	.price_detail ul {
    	line-height: 1.5;
		height: 52vw;
		font-size: 3.5vw;
	}
	.price h2{
		padding: 15% 3% 7%;
	}
	.price_abs {
		top: 8.3%;
		left: 5%;
		width: 83.5vw;
	}
	.maker {
		width: 100%;
		margin: 3% auto 4%;
	}
	.maker_detail {
		padding: 6% 5%;
	}
	.maker_detail p{
		font-size: 16px;
	}
}

/* 安心の明朗会計 */
.total_content {
	margin-top: -9vw;
}

/* 口コミ */
.voice h2 {
    width: 16%;
    margin: 0 auto;
}
.voice {
    padding: 5% 0;
}
.voice_in img {
    width: 90%;
    margin: 0 auto;
}

.voice_in {
   	position: relative;
	max-width: 1000px;
    width: 70vw!important;
}

.voice-p {
    font-size: 1.2vw;
    line-height: 1.5;
    color: #fff;
	padding: 3% 0 0;
}
.voice-type{
	font-size: 1.8vw;
    font-weight: bold;
    border-bottom: 2px solid #fff;
	line-height: 2;
	color: #fff;
}
.voice_text{
	position: absolute;
    top: 56%;
    left: 48%;
    transform: translate(-78%,-60%);
}
.slick_pc {
	display: block !important;
}
.slick_sp {
	display: none !important;
}


.slider .slick-prev:before {
	background: url(../img/prev.png) no-repeat center!important;
    background-size: contain!important;
    width: 90% !important;
    height: 90% !important;
}

.slider .slick-next:before {
	background: url(../img/next.png) no-repeat center!important;
    background-size: contain!important;
    width: 100% !important;
    height: 100% !important;
}
.slick-arrow::before {
    content: ""!important;
    width: 90%!important;
    height: 90%!important;
    position: absolute;
    top: 0;
    left: 0;
}
.slick-arrow {
    z-index: 2!important;
    width: 55px!important;
    height: 55px!important;
}
.slider .slick-prev{
	left: 18%;
}
.slider .slick-next{
	right: 20%;
}
.slick-prev:before, .slick-next:before{
	font-size: 60px !important;
	opacity: 1 !important;
}
.slider .slick-slide {
    transform: scale(0.8);
    transition: all .5s;
    opacity: 0.5;
}
.slider .slick-slide.slick-center {
    transform: scale(1);
    opacity: 1;
}

@media screen and (max-width:740px){
  .slick_pc {
    display: none !important;
  }
 .slick_sp {
    display: block !important;
  }
	.slick-prev:before, .slick-next:before {
		font-size: 26px !important;
	}
	.slider .slick-next {
		right: 2%;
		z-index: 2;
	}
	.slider .slick-prev {
		left: 2%;
		z-index: 2;
	}
	.uservoice h2 {
		width: 58%;
		padding: 8% 0 8%;
	}
	.voice_in img {
		width: 90%;
	}
	.voice-p{
		font-size: 3.8vw;
		line-height: 1.5;
		top: 54%;
		left: 21%;
	}
	.slick-arrow {
		width: 30px!important;
		height: 30px!important;
	}
	.voice h2 {
		width: 52%;
		padding: 6% 0;
	}
	.voice-type{
		font-size: 5vw;
	}
	.voice_text {
		top: 72%;
		left: 21%;
		transform: translate(-14%,-60%);
	}
	.voice-p{
		font-size: 3.6vw;
	}
	.voice_in {
		width: 96vw!important;
	}
}


/* 選ばれる5つの理由 */
.reason h2{
	width: 40%;
    margin: 0 auto;
	padding: 9% 0 0;
}
.reason img{
	width: 70%;
    margin: 0 auto;
    padding: 0 0 4%;
}
@media screen and (min-width:741px){
	.reason{
		background-image: url(../img/5reason_pc_bg.png);
		background-size: cover;
		background-repeat: no-repeat;
	}
}

@media screen and (max-width:740px){
	.reason{
		background-image: url(../img/5reason_sp_bg.png);
		background-size: cover;
		background-repeat: no-repeat;
		padding-bottom: 5%;
	}
	.reason img {
		width: 95%;
		margin: 0 auto;
		padding: 0 0 5%;
	}
	.reason h2 {
		width: 90%;
		padding: 23% 0 0;
	}
}


/* 他社との違い */
.difference h2{
	width: 55%;
    margin: 0 auto;
}
.chart{
	width: 60%;
    margin: 0 auto;
    padding: 3% 0 0;
}
.difference{
	background-image: url(../img/difference_pc_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
	padding: 6%  0 11% 0;
}
@media screen and (max-width:740px){
	.difference h2 {
		width: 93%;
	}
	.chart {
		width: 92%;
		padding: 7% 0 0;
	}
  .difference{
    padding:  10% 0 28%  0;
  }
}

/* お任せ */
.omakase_wrapper{
  position: absolute;
  width: 64%;
  margin: 0 auto;
  left: 0;
  right: 0;
  -webkit-transform: translate3d(0,-22%,0);
    transform: translate3d(0,-22%,0);
}
@media screen and (max-width:740px){
  .omakase_wrapper{
    width: 93%;
    -webkit-transform: translate3d(0,9%,0);
      transform: translate3d(0,9%,0);
  }
}

/* トラブルから解決までの流れ */
.flow h2{
	width: 40%;
    margin: 0 auto;
    padding: 0 0 3%;
}
.flow{
	background-image: url(../img/flow_pc_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 15% 0 8%;
}
.flow_flex{
	display: flex;
    width: 80%;
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: center;
}
.flow_box {
    width: 20%;
    height: 20%;
    margin: 0 7px;
    position: relative;
    box-shadow: #ddd 7px 7px 5px;
    margin-bottom: 4%;
}
.flow_txt {
    border: 2px solid #2962b2;
    background-color: #fff;
    padding: 5%;
    height: 160px;
    font-weight: 500;
}
.flow_txt p{
    color: #143c83;
}
.flow_triangle {
    position: absolute;
    top: 21%;
    left: 93%;
    z-index: 1;
    width: 18%;
}
@media screen and (max-width:740px){
	.flow h2 {
		width: 70%;
		padding: 6% 0 7%;
	}
  .flow{
      padding: 50% 0 4%;
  }
	.flow_flex {
		width: 100%;
		padding: 0 3% 3%;
	}
	.flow_txt {
		padding: 5%;
		height: 120px;
		margin: 0 ;
	}
	.flow_box {
		width: 100%;
	}
	.flow_triangle {
		top: 92%;
		left: 41%;
	}
}

/* 対象エリア */
@media screen and (min-width:741px){
	.area{
		background-image: url(../img/area_pc_bg.jpg);
		background-size: cover;
		background-repeat: no-repeat;
		padding: 5% 0 10%;
	}
	.area h2{
		width: 17%;
		margin: 0 auto;
		padding: 0 0 3%;
	}
	.area_content img{
		width: 60%;
		margin: 0 auto;
	}
}


/* Q&A */
.qa h2{
	width: 10%;
    margin: 0 auto;
	padding: 0 0 1%;
}
.qa{
	background: #f1f1f1;
	padding: 3% 0 9%;
}
.qa_box{
	width: 60%;
    margin: 2% auto;
    background: #fff;
    padding: 2%;
	background: linear-gradient(315deg, transparent 25px, #fff 20px);
	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.2));
}

.q{
	font-size: 22px;
    font-weight: bold;
	color: #143c83;
	border-bottom: 2px solid #143c83;
	padding: 0 0 2% 9%;
	position: relative;
}
.a{
	padding: 2% 0 0 9%;
	position: relative;
}
.q::before {
	position: absolute;
    left: 2%;
    top: 7%;
    content: "";
    display: inline-block;
    width: 1.6em;
    height: 1.6em;
    background: url(../img/q.png) no-repeat;
    background-size: contain;
}
*, *:before, *:after {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
.a::before {
	position: absolute;
    left: 2.5%;
    top: 19%;
    content: "";
    display: inline-block;
    width: 1.8em;
    height: 1.8em;
    background: url(../img/a.png) no-repeat;
    background-size: contain;
}

@media screen and (max-width:740px){
	.qa h2 {
		width: 35%;
    	padding: 0 0 4%;
	}
	.qa {
		padding: 7% 3% 13%;
	}
	.qa_box {
		width: 100%;
		padding: 5% 4%;
		margin: 4% auto;
	}
	.q {
		font-size: 18px;
		padding: 0 0 3% 14%;
	}
	.a {
		padding: 3% 0 0 14%;
	}
	.a::before {
		left: 2%;
    	top: 9%;
	}
	.q::before {
		left: 2.5%;
    	top: 7%;
	}
}

/* フォーム */
.form h2{
	width: 40%;
    margin: 0 auto;
    padding: 0 0 3%;
}
.form {
	background-image: url(../img/area_pc_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 5% 0 0;
}
.form_ttl img{
	width: 60%;
    margin: 0 auto;
    padding: 0 0 5%;
}
.postal-box .postal-frx{
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.postal-box span{
font-size: 14px;
    font-weight: bold;
}
.postal-box .postal-frx span{
    margin: 0 1% 0 0;
}
.postal-box .postal-frx input{
	width: 90%;
    margin: 1% 0;
}
.postal-box .tyu{
    font-size: 12px;
    color: #b2b2b2;
    line-height: 1.5;
    margin-bottom: 1%;
}
@media screen and (max-width:740px){
	.form h2 {
		width: 70%;
		padding: 8% 0 4%;
	}
	.form_ttl img {
		width: 90%;
		padding: 0 0 7%;
	}
	.form_tbl th {
		padding: 0 0 0 10px !important;
		border-left: 6px solid #143c83;
	}
	input[type=submit] {
		padding: 1.8% 16%;
	}
.postal-box .postal-frx span{
    margin: 0 2% 0 0;
}
.postal-box .postal-frx input{
	width: 70%;
}
}


/* フッター */
footer {
  background-color: #143c83;
  color: #fff;
  padding: 3% 0;
  text-align: center;
}
.footer_body {
  margin: 0 auto;
}
.footer_flex{
	display: flex;
	    justify-content: center;
  	align-items: center;
}
.footer_content{
	width: 20%;
}
footer p,footer a{
	color: #fff;
	font-size: 16px;
}
@media screen and (max-width:740px){
	.footer_content {
		width: 45%;
	}
	footer {
		padding: 7% 0 35%;
	}
	.footer_content img{
		padding: 0 0 0 2%;
	}
	footer p,footer a{
		color: #fff;
		font-size: 13px;
	}
}

/*-------------追従エリア-------------*/
/* デザインに関する記述 */
.cta_follow{
  background-color: rgba(255 255 255 / 70%);
}
.cta_follow p{
  color: #fff;
  font-size: 1.1em;
    font-weight: bold;
    background-color: #143c83;
    padding: 0.5%;
    text-align: center;
}
.cta_follow p span{
  color: #df1a01;
}
.cta_follow .inner_flex{
  width: 350px;
  padding: 0 0.5%;
  margin: 0 auto;
  
}
.hand{
  position: absolute;
  margin: 0;
    width: 40px;
    object-fit: contain;
    z-index: 10;
    top: 58%;
    right: 2%;
    bottom: 0;
    animation: float 1.5s infinite ease-in-out .8s alternate;
}
@keyframes float{
  0% {
    transform: translate(0, 0) rotate(-7deg);
}

50% {
    transform: translate(0, -3px) rotate(0deg);
}
100% {
    transform: translate(0, 0) rotate(7deg);
}
}
.shiny_btn{
  display: inline-block;
  position: relative;
  overflow: hidden;
  border-radius: 5px;
}
.shiny_btn:after {
  content: '';
  position: absolute;
  top: -100px;
  left: -100px;
  width: 50px;
  height: 50px;
  background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
  animation-name: shiny;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

@keyframes shiny {
  0% {
    transform: scale(0) rotate(25deg);
    opacity: 0;
}
50% {
    transform: scale(1) rotate(25deg);
    opacity: 1;
}
100% {
    transform: scale(50) rotate(25deg);
    opacity: 0;
}
}
/* 動きに関する記述 */
.ScrollTop {
  opacity: 0;
  transition: all 0.65s;
  width: 100%;
  position: fixed;
  z-index: 10;
  bottom: 0;
}
.ScrollTop.isActive {
  opacity: 1;
  transition: all 0.65s;
}

@media screen and (max-width:740px) {
  .cta_follow .inner_flex{
      width: 100%;
      padding: 0 0 0px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 2%;
      gap: 0 7px;
  }
  .cta_follow p{
    font-size: 1em;
    padding: 2%;
    margin-top: 0;
    line-height: 1.4;
  }
  .cta_men2{
      position: absolute;
      left: 0;
      bottom: 0;
      width: 96%;
  }
  .floow_btn{
      /*position: absolute;
      bottom: 12px;
      right: 20px;*/
      width: 90%;
      margin: 0 auto;
  }

  .hand{
    width: 38px;
    top: 68%;
    right: 4%;
}

}

@media screen and (max-width:420px) {
  .cta_follow p{
    font-size: 3.5vw;
  }
}
@media screen and (max-width:320px) {
  .cta_follow .inner_flex{
      height: 99px;
  }
}


/* --------------追従--------------- */
@media screen and (min-width: 767px) {
  .pagetop {
    position: fixed;
    bottom: 0px;
    width: 100%;
    max-width: 348px;
    text-align: center;
    padding: 0;
    z-index: 50;
    transition: 0.5s;
    right: 14px;
  }
  .cta_follow p {
    margin-top: 0;
    margin-bottom: 10px;
  }
  .cta_follow .inner_flex {
    max-width: 360px;
  }
  .cta_follow {
    margin-bottom: 1%;
  }
  .cta_follow p {
    border-radius: 2px 2px 0 0;
    line-height: 1.2;
    padding: 4% 0;
  }
}

@media screen and (min-width:741px) and ( max-width:1200px) {
  .cta_follow .inner_flex{
      max-width: 280px;
  }
}

@media screen and (max-width: 740px) {
   .pagetop {
      position: fixed;
      bottom: 0px;
      width: 30%;
        max-width: 350px;
      text-align: center;
      padding: 0 0 1%;
        z-index: 50;
        transition: 0.5s;
        right: 10px;
    }
    /* .pagetop a {
      color: #fff;
      text-decoration: none;
      width: 50%;
    } */
    .pagetop .line_b_n, .pagetop .web_b_n {
      width: 49%;
    }
    .pagetop div {
      width: 96%;
      margin: 0 auto;
    }
    .pagetop {
	  padding: 2% 0;
      overflow: hidden;
    }
    .pagetop .tel_b {
      width: 57%;
    }
    .pagetop .line_b, .pagetop .web_b {
      width: 26%;
    }
    .pagetop {
        bottom: 0px;
        width: 100%;
        max-width: none;
        text-align: center;
        padding: 0 0 1%;
        z-index: 50;
        transition: 0.5s;
        right: 0;
        left: 0;
        overflow-x: hidden;
    }
    .pagetop .floow_btn {
        width: 100%;
        margin: auto;
        box-shadow: 7px 6px 7px 0 rgba(0, 0, 0, 0.4);
    }

    .all{
        overflow-x: hidden;
    }
    .cost,.campaign {
        overflow-x: visible;
    }
    .is-hidden {
    visibility: hidden;
    opacity: 0;
    transition: .5s;
    }
    /* .pagetop .flow_btn_tel {
      width: 50%;
  } */
	.flow_btn_tel {
		display: block;
		position: relative;
    box-shadow: 7px 6px 7px 0 rgba(0, 0, 0, 0.4);
	}
}

  .pagetop.UpMove{
    animation: UpAnime 0.5s forwards;
  }
  @keyframes UpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }

  .pagetop.DownMove{
    animation: DownAnime 0.5s forwards;
  }
  @keyframes DownAnime{
    from {
      opacity: 1;
    transform: translateY(0);
    }
    to {
      opacity: 1;
    transform: translateY(200px);
    }
  }
.inner_flex a span{
	color: #0050a9;
    left: 25%;
    top: 38%;
    font-size: 28px;
    font-weight: bold;
}
.abs {
    position: absolute;
}

@media screen and (max-width:740px) {
  .inner_flex a span {
		left: 21%;
    top: 29%;
		font-size: 5.5vw;
	}
}
@media screen and (max-width:1200px)  {
    .inner_flex a span {
    font-size: 30px;
}
}

/* --------------細かいレスポンシブ--------------- */

@media screen and (min-width:741px) and (max-width:1335px) {
  .flow_flex {
    width: 100%;
    font-size: 1.4vw;
}
.flow_txt {
  height: 63%;
}
}
@media screen and (min-width:741px) and (max-width:1100px) {
	  header div>img {
		width: 80%;
	}
	.a {
		padding: 2% 0 0 12%;
	}
	.q {
		padding: 0 0 2% 12%;
	}
	  .selected{
    top: 88%;
    left: 7%;
    font-size: 17px;
  }
}
@media screen and (min-width:741px) and (max-width:1500px) {
	.slider .slick-prev {
		left: 12%;
	}
	.slider .slick-next {
		right: 14%;
	}
}
@media screen and (min-width:741px) and (max-width:980px) {
	  .price_abs {
		top: 10.5%;
		left: 22%;
		width: 53.8vw;
	}
	.price_detail {
		width: 85%;
	}
	.price h2 {
		font-size: 4vw;
		padding: 14% 0 2%;
	}
}

/* アコーディオン1  */
.accordion {
  margin-bottom: 3%;
  margin-top: 2%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.accordion_one {
    width: 35%;
    margin: 0 1%;
}

.acc {
  border: 3px solid #014ab0;
  margin-bottom: 10px;
}
.acc_header {
  background: #014ab0;
  color: #fff;
  padding: 0.5% 0 0.5%;
  text-align: center;
  font-size: 1.7rem;
  position: relative;
  cursor: pointer;
  font-size: 22px;

}

.acc_header::after {
  content: "";
  display:block;
  width:14px;
  height:14px;
  border-top: #fff 3px solid;
  border-right: #fff 3px solid;
  -webkit-transform: rotate(315deg);
  -ms-transform: rotate(315deg);
  transform: rotate(315deg);
  position:absolute;
  right: 8%;
  top: 5%;
  bottom: 4%;
  margin: auto;
  transition: all .4s ease-in-out;
}


.acc_header.open::after {
  content:"";
  display:block;
  width:14px;
  height:14px;
  border-top: #fff 3px solid;
  border-right: #fff 3px solid;
  -webkit-transform: rotate(136deg);
  -ms-transform: rotate(136deg);
  transform: rotate(136deg);
  position:absolute;
  right: 8%;
  top: 0%;
  bottom: 10%;
  margin: auto;

}

.acc-contents {
  padding: 3%;
}

@media screen and (max-width:741px) {
  .accordion_one {
    width: 95%;
    max-width: 100%;
  }
  
 .acc_header {
    font-size: 17px;
  }
  .acc-p {
    font-size: 3.7vw;
  }
  
}


.voice{
    padding-top: 8%;
}
.voice h2{
    position: relative;
}
.voice h2 .pop{
    position: absolute;
    top: -60%;
    left: -60%;
    object-fit: contain;
}
@media screen and (max-width:741px) {
    .voice{
        padding-top: 13%;
    }
    .voice h2 .pop{
        top: -42%;
        left: -36%;
        transform: scale(0.7) rotate(-7deg);
    }
}


.pri_head {
    position: relative;
}
.pri_logo{
    width: 50%;
}
.pri_htel_btn{
    border: solid 2px #1f4ea0;
    border-radius: 10px;
    margin-left: 15px;
}
.pri_wip {
    margin: 30px 20%;
}
.pri_ttl {
    font-size: 24px;
    font-weight: bold;
}
.pri_ttl2{
    font-size: 18px;
    font-weight: bold;
}
