@charset "utf-8";

/* for Common & Smartphone*/
html,body{
	position:relative;
	height:100%;
}
html {
  font-size: 62.5%;/*10px基準*/
	}

@media screen and (min-width:768px){
  /* PC 769px以上 */
}
@media screen and  (max-width:767px){
  /* スマートフォン 767px以下 */
}

body{
	position:relative;
	-webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	color:#222222;
	line-height:1.6;
  font-weight: 500;
  font-feature-settings: "palt";
}

@media screen and (max-width:320px) {
	html{
		font-size: 50%;
	}
}
/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 840px) and (orientation:portrait) {
/*縦向きのみの記述*/
}
/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 834px) and (orientation:portrait) {
/*縦向きのみの記述 --- iPad Pro12.9はPC表示*/
}

.wrap{
	height: 100%;
}

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

.spIL{display:inline;}
.pcIL{display:none;}

.conSP{
	margin-left: 2.66vw !important;/*10px*/
	margin-right: 2.66vw !important;
}

/*リンク 
*/
a:link{
	color:#222222;
	text-decoration: none;
	}
a:visited{
	color:#222222;
	}

a:active/*,
a:hover*/{
	color:#222222;
	}
.disabled{
	cursor:default;
}
.txtUL{
	text-decoration: underline;
}

img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
}
img[src$=".svg"] {
    width: 100%;
}
.img100{
	width:100%;
}

.relative{
	position:relative;
	}
.static{
	position:static !important;
	}
.hide{
	display:none;
	}

/*font*/
.bold{
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
	font-weight:bold;
	font-weight: 700;
	}
.fEn{
	font-family: 'Lato', sans-serif;
	}
/*txt*/
.tCol00{
	color: #fff;
}
.tCol01{
	color: #003c85;
}
.tCol02{
  color: #ff5a44;
}
.tCol03{
  color: #ffc200;
}

/* for PC*/
@media print, screen and (min-width:768px) {
	.sp{display:none;}
	.pc{display:block;}

	.spIL{display:none;}
	.pcIL{display:inline;}

	.conSP{
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.conPC{
		max-width:1080px;/*1060px*/
		width: auto !important;
		width: 1020px;
		margin-left:auto !important;
		margin-right:auto !important;
		padding-left:10px;
		padding-right:10px;
	}
	.conPCS{
		max-width:720px;
		margin-left:auto !important;
		margin-right:auto !important;
	}

	a:link,
	a:visited{}
	a:active,
	a:not(.disabled):hover{
		text-decoration:none;
		}
	a,
	.hover{
		-webkit-transition: .3s;
		transition: .3s;
		}
	a:not(.noRO):hover,
	.hover:hover{
		filter:alpha(opacity=70);
		-ms-filter: "alpha(opacity=70)";
		-moz-opacity:0.7;
		-khtml-opacity: 0.7; 
		opacity:0.7;
		zoom:1; 
		}
	.disabled{
		text-decoration:none;
	}
}

/*
header
*/
.header{
  position: fixed;
  top: 0;
	width: 100%;
	height: 50px;
  background: #fff;
  z-index: 999;
}
.header > div{
  position: relative;
  height: 100%;
}
.header a{
	display: block;
  line-height: 1.0;
}
.header .logoApro{
  position: absolute;
  left: 0;
  top: 50%;
  width: 100px;
  padding: 10px 0;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
	}
.header .btn{
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
}

.header .btnTel{
  right: 0;
  width: 40px;
	}
.header .btnTel a{
  height: 40px;
  background: url("../images/ico_tel01.png") no-repeat center center;
  background-size: 24px 24px;
  /*border: 1px solid #ccc;
  border-radius: 100%;*/
	}
.header .btnTel a span{
  display: none;
	}
.header .btnForm{
  right: 50px;
  width: 120px;
	}
.header .btnForm a{
  height: 30px;
  line-height: 30px;
  background-color: #ffc200;
  text-align: center;
  font-size: 1.4rem;
  border-radius: 200px;
	}



/* for PC*/
@media print, screen and (min-width:768px) {
	.header{
    height: 80px;
	}
  .header > div{}
  .header a{}
  .header .logoApro{
    width: 160px;
    }
  .header .btn{
    position: static;
    margin-top: 20px;
    -webkit-transform: none;
    transform: none;
  }

  .header .btnTel{
    float: right;
    width: auto;
    margin-left: 20px;
    text-align: left;
    }
  .header .btnTel a{
    position: relative;
    height: auto;
    padding: 0 0 0 25px;
    background: none;
    }
  .header .btnTel a:hover{
    opacity: 1;
    }
  .header .btnTel a::before{
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    display: block;
    width: 20px;
    height: 20px;
    background: url("../images/ico_tel01.png") no-repeat center center;
    background-size: cover;
    }
  .header .btnTel a span{
    display: block;
    }
  .header .btnTel a span:nth-of-type(1){
    margin: 0 0 3px 0;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    }
  .header .btnTel a span:nth-of-type(2){
    font-size: 1.1rem;
    }
  .header .btnForm{
    float: right;
    width: 200px;
    }
  .header .btnForm a{
    height: 40px;
    line-height: 40px;
    font-size: 1.6rem;
    }
}

/*btnPageTop*/
.btnPageTop{
  display: none;
	position:fixed;
	right:10px;
	bottom:20px;
	width:48px;
	height:48px;
  border-radius: 50%;
  z-index: 999;
	}
.btnPageTop a{
	position:relative;
	display:block;
	width:100%;
	height:100%;
	/*background:rgba(15,26,113,0.8);*/
	background: rgba(0,0,0,0.6);
  border-radius: inherit;
	}
.btnPageTop a::after{
	content:"";
	position:absolute;
	display:block;
	left:50%;
	top:50%;
	width:20px;
	height:20px;
	margin:-5px 0 0 -10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	}


/* for PC*/
@media print, screen and (min-width:768px) {
  /*btnPageTop*/
  .btnPageTop{
    bottom:10px;
    }
  }




/*
contents
*/
main{
	display: block;
}
.contents{
  position: relative;
  margin: 50px 0 0 0;
  background: #fff;
  z-index: 100;
}

.section{
  padding-top: 40px;
  padding-bottom: 50px;
	overflow: hidden;
}

.ttl01{
  position: relative;
  margin: 0 0 50px 0;
  padding: 0 0 20px 0;
  font-size: 2.4rem;/*24 / 36*/
  text-align: center;
  line-height: 1.2;
  font-weight: 500;
}
.ttl01::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  display: block;
  width: 3.5em;
  height: 4px;
  background: #003c85;
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0);
}
.ttl01 .-sub{
    font-size:2rem;
    display: block;
    margin-bottom: 28px;
}
/*lead*/
.lead01{
  font-size: 1.4rem;/*14 / 18*/
  line-height: 2.0;
}
.lead02{
  font-size: 1.6rem;/*16 / 20*/
  line-height: 1.8;
}

/*bg*/
.bg00{
  background: #fff;
}
.bg99{
  background: #222;
}
.bg01{
  background: #003c85;
}
.bg02{
  background: #eeeeee;
}
.bg03{
  background: #dde9f2;
}

.line{
  background:linear-gradient(transparent 50%, #ffc200 50%);
}

/* for PC*/
@media print, screen and (min-width:768px) {
	.contents{
    margin: 80px 0 0 0;
  }
	.section{
		padding-top: 100px;
		padding-bottom: 100px;
	}
  
	.ttl01{
    margin: 0 0 50px 0;
    padding: 0 0 30px 0;
    font-size: 3.6rem;/*24 / 36*/
  }
  .ttl01::after{}

  /*lead*/
  .lead01{
    font-size: 1.8rem;/*14 / 18*/
  }
  .lead02{
    font-size: 2.0rem;/*16 / 20*/
  }
}

/*
実績 --- mv*/
.mvWrap{
  padding: 30px 0;
  background: url("../images/mv.jpg") no-repeat center center;
  background-size: cover;
}
.mvWrap .txt{
  margin: 0 0 30px 0;
  padding: 0 10px;
  color: #fff;
}
.mvWrap .txt h1{
  margin: 0 0 20px 0;
  font-size: 1.8rem;/*18 / 30*/
  text-align: left;
}
.mvWrap .txt h1 strong{
  font-size: 2.2rem;/*22 / 36*/
}
.mvWrap .txt .list{}
.mvWrap .txt .list li{
  width: 48.5%;
  margin: 0 0 10px 0;
  padding: 7px 0;
  background: #fff;
  text-align: center;
  font-size: 1.2rem;/*13 / 18*/
}
.mvWrap .txt .list li:nth-of-type(2n+1){
  clear: both;
  float: left;
}
.mvWrap .txt .list li:nth-of-type(2n){
  float: right;
}
.mvWrap .txt .price01{
  padding: 0 0 10px 0;
  margin: 0 0 10px 0;
  border-bottom: 1px solid rgba(255,255,255,0.5);
  text-align: center;
  font-size: 2.0rem;/*20 / 30*/
  line-height: 1.2;
}
.mvWrap .txt .price01 span{
  font-size: 6.0rem;/*60 / 84*/
}
.mvWrap .txt .price02{
  margin: 0 0 20px 0;
}
.mvWrap .txt .price02 p{
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
  line-height: 1.2;
}
.mvWrap .txt .price02 p:nth-of-type(1){
  padding: 3px;
  border: 1px solid #fff;
  text-align: center;
  font-size: 1.3rem;/*13 / 17*/
}
.mvWrap .txt .price02 p:nth-of-type(2){
  text-align: center;
  font-size: 1.2rem;/*12 / 16*/
}
.mvWrap .txt .price02 p:nth-of-type(2) span{
  font-size: 2.4rem;/*24 / 34*/
}
.mvWrap .txt .telbox{
  position: relative;
  background: #1c68aa;
  border: 2px solid #1c68aa;
}
.mvWrap .txt .telbox dt{
  position: absolute;
  left: 0;
  top: 50%;
  width: 110px;
  background: #1c68aa;
  font-size: 1.4rem;/*14 / 20*/
  font-weight: 700;
  line-height: 1.4;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
  z-index: 2;
}
.mvWrap .txt .telbox dd{
  position: relative;
  float: right;
  width: calc(100% - 100px);
  padding: 5px;
  background: #fff;
  /*background: #fff url("../images/arrow.png") no-repeat left center;
  background-size: contain;*/
  line-height: 1.4;
  z-index: 1;
}
.mvWrap .txt .telbox dd::before{
  content: "";
  position: absolute;
  left: -10px;
  top: 0;
  display: block;
  width: 28px;
  height: 100%;
  background: #1c68aa url("../images/arrow.png") no-repeat right center;
  background-size: cover;
}
.mvWrap .txt .telbox dd a{
  position: relative;
  display: block;
  font-size: 2.4rem;/*24 / 34*/
  color: #003c85;
}
.mvWrap .txt .telbox dd a::before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin: -4px 5px 0 0;
  width: 22px;
  height: 22px;
  background: url("../images/ico_tel02.png") no-repeat left center;
  background-size: cover;
}
.mvWrap .txt .telbox dd p{
  font-size: 1.1rem;/*11 / 14*/
}


.mvWrap .form{
  padding: 0 10px;
}
.mvWrap .form > h2{
  padding: 5px;
  background: #1c68aa;
  color: #fff;
  font-size: 1.6rem;/*16 / 20*/
  text-align: center;
}
.mvWrap .form > div{
  padding: 20px;
  background: #fff;
}


/* for PC*/
@media print, screen and (min-width:768px) {
  .mvWrap{
    min-height: 700px;
  }
  .mvWrap .txt{
    float: left;
    width: 60%;
  }
  .mvWrap .txt h1{
    font-size: 3.0rem;/*18 / 30*/
  }
  .mvWrap .txt h1 strong{
    font-size: 3.6rem;/*22 / 36*/
  }
  .mvWrap .txt .list{
    margin: 0 0 10px 0;
  }
  .mvWrap .txt .list li{
    width: 49.1%;
    padding: 15px 0;
    font-size: 1.8rem;/*13 / 18*/
  }
  .mvWrap .txt .list li:nth-of-type(2n+1){}
  .mvWrap .txt .list li:nth-of-type(2n){}
  .mvWrap .txt .price01{
    display: inline-block;
    vertical-align: middle;
    padding: 0 15px 0 0;
    margin: 0 15px 25px 0;
    border-bottom: none;
    border-right: 1px solid rgba(255,255,255,0.5);
    font-size: 3.0rem;/*20 / 30*/
  }
  .mvWrap .txt .price01 span{
    font-size: 8.4rem;/*60 / 84*/
  }
  .mvWrap .txt .price02{
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 25px 0;
  }
  .mvWrap .txt .price02 p{
    display: block;
    margin: 0;
  }
  .mvWrap .txt .price02 p:nth-of-type(1){
    font-size: 1.7rem;/*13 / 17*/
  }
  .mvWrap .txt .price02 p:nth-of-type(2){
    font-size: 1.6rem;/*12 / 16*/
  }
  .mvWrap .txt .price02 p:nth-of-type(2) span{
    font-size: 3.4rem;/*24 / 34*/
  }
  .mvWrap .txt .telbox{
    position: relative;
    background: #1c68aa;
    border-width: 4px;
  }
  .mvWrap .txt .telbox dt{
    width: 200px;
    font-size: 2.0rem;/*14 / 20*/
  }
  .mvWrap .txt .telbox dd{
    width: calc(100% - 200px);
    padding: 10px;
  }
  .mvWrap .txt .telbox dd::before{
    left: 0;
    background-size: 100% 100%;
  }
  .mvWrap .txt .telbox dd a{
    font-size: 3.4rem;/*24 / 34*/
  }
  .mvWrap .txt .telbox dd a::before{
    margin: -4px 5px 0 0;
    width: 30px;
    height: 30px;
  }
  .mvWrap .txt .telbox dd p{
    font-size: 1.41rem;/*11 / 14*/
  }


  
  
  
  
  .mvWrap .form{
    float: right;
    width: 38%;
  }
  .mvWrap .form{
    padding: 0 10px;
  }
  .mvWrap .form > h2{
    padding: 5px;
    background: #1c68aa;
    color: #fff;
    font-size: 1.6rem;/*16 / 20*/
    text-align: center;
  }
  .mvWrap .form > div{
    padding: 20px;
    background: #fff;
  }
}

/*
実績 --- con01*/
.con01{}
.con01 .ttl01{
  display: inline-block;
  padding-left: 70px;
  padding-right: 70px;
}
.con01 .ttl01 span{
  position: absolute;
  right: 0;
  bottom: 22px;
}
.con01 ul{
  padding: 20px 0 0 0;
}
.con01 li{
  float: left;
  width: 25%;
  text-align: center;
}
/* for PC*/
@media print, screen and (min-width:768px) {
  .con01{}
  .con01 .ttl01 span{
    bottom: 32px;
  }
  .con01 ul{
    padding: 40px 0 0 0;
  }
  .con01 li{}
}

/*
料金プラン --- con02*/
.con02{}
.con02 .price{
  margin: 0 0 30px 0;
}
.con02 table{
  width: 100%;
  border: 1px solid #dde9f2;
  border-collapse: collapse;
}
.con02 table th,
.con02 table td{
  padding: 10px 10px 10px calc(10px + 0.05em);
  border: 2px solid #dde9f2;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.con02 table th{
  background: #1c68aa;
  font-size: 1.6rem;/*16 / 20*/
  color: #fff;
  font-weight: 500;
}
.con02 table td{
  background: #fff;
  font-size: 2.0rem;/*20 / 30*/
}
.con02 table td :not(.fEn){
  font-size: 60%;
}

.valueAnnotation{
  font-size:1.6rem;
  text-align:left;
  max-width: 800px;
  margin: auto;
  margin-top:10px;
}
.valueAnnotation:nth-of-type(2){
  font-size:1.4rem;
}

.valueAnnotation span{
  position:relative;
  z-index: 9;
}
.valueAnnotation span:after{
  content: "";
  border-bottom: 12px solid #ffe000;
  display: inline;
  width: 100%;
  position: absolute;
  bottom: -2px;
  left: 0px;
  z-index: -1;
}
/* for PC*/
@media print, screen and (min-width:768px) {
  .con02{}
  .con02 .price{
    margin: 0 0 80px 0;
  }
  .con02 table{
    max-width: 800px;
    margin: 0 auto;
  }
  .con02 table th,
  .con02 table td{
    width: 50%;
    padding: 18px 18px 18px calc(18px + 0.05em);
    border-width: 4px;
  }
  .con02 table th{
    background: #1c68aa;
    font-size: 1.6rem;/*16 / 20*/
    color: #fff;
    font-weight: 500;
  }
  .con02 table td{
    background: #fff;
    font-size: 2.0rem;/*20 / 30*/
  }
  .con02 table td :not(.fEn){
    font-size: 60%;
  }
}


/*
料金比較--- con03*/
.con03{}
.con03 table{
  width: 100%;
  /*border: 1px solid #fff;*/
  border-collapse: collapse;
}
.con03 table th,
.con03 table td{
  padding: 10px 0;
  border: 1px solid #ccc;
  text-align: center;
  letter-spacing: 0.05em;
  vertical-align: middle;
  line-height: 1.6;
}
.con03 table th{
  background: #ccc;
  font-size: 1.3rem;/*13 / 20*/
  border-color: #fff;
}
.con03 table td{
  font-size: 1.2rem;/*14 / 20*/
}
.con03 table tr:nth-of-type(2n+1) td{
  background: #eee;
}
.con03 table tr:nth-of-type(2n) td{
  background: #fff;
}
.con03 table .mark{
  font-size: 2.0rem;/*20 / 40*/
}
.con03 table td .fEn{
  font-size: 165%;
  color: #003c85;
}

/*apro*/
.con03 table tr th:nth-of-type(2){
  width: 47%;
  background: #003c85;
  color: #fff;
}
.con03 table tr td:nth-of-type(2){
  background: #dde9f2;
}
.con03 table tr td:nth-of-type(2) > span:not(.fEn){
  /*display: inline-block;
  vertical-align: middle;
  width: 22px;*/
}
.con03 table tr td:nth-of-type(2) > p{
  /*display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 5px;
  padding: 0 0 0 5px;*/
  width: 95%;
  margin: 0 auto 0 auto;
  padding: 5px 0 0 0;
  border-top: 1px solid #222;
  /*width:  calc(100% - 44px);*/
  font-size: 1.1rem;
  text-align: left;
}
/* for PC*/
@media print, screen and (min-width:768px) {
  .con03{}
  .con03 table{}
  .con03 table th,
  .con03 table td{
    padding: 15px 0;
  }
  .con03 table th{
    font-size: 2.0rem;/*13 / 20*/
  }
  .con03 table td{
    font-size: 2.0rem;/*14 / 20*/
  }
  .con03 table tr:nth-of-type(2n+1) td{}
  .con03 table tr:nth-of-type(2n) td{}
  .con03 table .mark{
    font-size: 4.0rem;/*20 / 40*/
  }
  .con03 table td .fEn{}

  /*apro*/
  .con03 table tr th:nth-of-type(2){
    width: 47%;
  }
  .con03 table tr td:nth-of-type(2){}
  .con03 table tr td:nth-of-type(2) > span:not(.fEn){
    display: inline-block;
    vertical-align: middle;
    width: 55px;
    text-align: center;
  }
  .con03 table tr td:nth-of-type(2) > p{
    display: inline-block;
    vertical-align: middle;
    width:  calc(100% - 80px);
    margin: 0;
    padding: 0 0 0 20px;
    border-top: none;
    border-left: 1px solid #222;
    font-size: 1.8rem;
  }
}


/*
お客様の声 --- con04*/
.con04{}
.con04 .ttl01 span{
  display: inline-block;
  padding-bottom: 10px;
  font-size: 66%;
}
.con04 section{
  margin: 0 0 40px 0;
}
.con04 section:last-of-type{
  margin-bottom: 0;
}
.con04 section figure{
  float: left;
  width: 85vw;
}
.con04 section div{
  float: right;
  width: 90vw;
  margin-top: -10.66vw;
  padding: 20px;
  background: #fff;
  text-align: left;
}
.con04 section div h3{
  position: relative;
  margin: 0 0 10px 0;
  padding: 0 0 10px 0;
  font-size: 2.0rem;/*20 / 30*/
  text-align: left;
  line-height: 1.6;
}
.con04 section div h3::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 7em;
  height: 8px;
  background:repeating-linear-gradient( -45deg,#1c68aa,#1c68aa 2px,#fff 0,#fff 6px);
}
.con04 section div h4{
  margin: 0 0 10px 0;
  font-size: 1.6rem;/*16 / 24*/
  text-align: left;
  line-height: 1.6;
}
.con04 section div p{
  /*font-size: 1.4rem;*//*14 / 18*/
  /*text-align: left;*/
  line-height: 1.8;
}
/* for PC*/
@media print, screen and (min-width:768px) {
  .con04{}
  .con04 .ttl01 span{}
  .con04 section{
    position: relative;
    margin: 0 0 80px 0;
    padding: 50px 0 0 0;
  }
  .con04 section:last-of-type{}
  .con04 section figure{
    float: none;
    position: absolute;
    left: 0;
    top: 0;
    width: 38%;
    z-index: 4;
  }
  .con04 section div{
    position: relative;
    width: 66%;
    margin-top: 0;
    padding: 40px;
    z-index: 5;
  }
  .con04 section div h3{
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    font-size: 3.0rem;/*20 / 30*/
  }
  .con04 section div h4{
    margin: 0 0 30px 0;
    font-size: 2.4rem;/*16 / 24*/
  }
  .con04 section div p{
    /*font-size: 1.8rem;*//*14 / 18*/
  }
}

/*
悩み --- con05*/
.con05{
  padding-top: 0;
}
.con05 .conH h2{
  position: relative;
  padding: 30px 0;
  font-size: 2.4rem;/*24 / 36*/
  text-align: center;
  line-height: 1.6;
  font-weight: 500;
  z-index: 1;
}
.con05 .conH strong:nth-of-type(2){
  font-size: 120%;
}
.con05 .conH h2::after{
  content: "";
  position: absolute;
  bottom: -40px;
  left: 50%;
  display: block;
  width: 70px;
  height: 70px;
  background: #dde9f2;
  -webkit-transform: rotate(45deg) translate(-50%,0);
  transform: rotate(45deg) translate(-50%,0);
  z-index: -1;
}
.con05 .list > ul{
  position: relative;
}
.con05 .list > ul::before{
  content: "";
  position: absolute;
  right: 10px;
  top: -38px;
  display: block;
  width: 75px;
  height: 75px;
  background: url("../images/img_trouble02.png") no-repeat center top;
  background-size: contain;
  z-index: 10;
}
.con05 .list li{
  position: relative;
  padding: 10px 0 10px 40px;
  border-bottom: 1px dotted #ccc;
  font-size: 1.5rem;/*15 / 26*/
  text-align: left;
  line-height: 1.6;
  font-weight: bold;
}
.con05 .list li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  display: block;
  width: 30px;
  height: 27px;
  background: url("../images/img_trouble01.png") no-repeat center center;
  background-size: cover;
}


/* for PC*/
@media print, screen and (min-width:768px) {
  .con05{}
  .con05 .conH h2{
    padding: 70px 0;
    font-size: 3.6rem;/*17 / 36*/
  }
  .con05 .conH strong:nth-of-type(2){
    font-size: 130%;
  }
  .con05 .conH h2::after{
    bottom: -70px;
    width: 100px;
    height: 100px;
  }
  .con05 .list > ul{}
  .con05 .list > ul::before{
    top: -80px;
    right: 0;
    width: 28%;
    height: 280px;
  }
  .con05 .list li{
    max-width: 770px;
    padding: 20px 0 20px 80px;
    font-size: 2.6rem;/*15 / 26*/
  }
  .con05 .list li:last-of-type{
    max-width: initial;
  }
  .con05 .list li::before{
    left: 10px;
    top: 20px;
    width: 56px;
    height: 50px;
  }
  
}

/*
解決--- con06*/
.con06{
  background:repeating-linear-gradient( -45deg,#ffe4b2,#ffe4b2 1px,#fff 0,#fff 5px);
}
.con06 .ttl01{
  line-height: 1.4;
}
.con06 .ttl01:after{
  background: #ff5a44;
}
.con06 .ttl01 strong{
  font-size: 4.2rem;
  font-weight: 500;
  letter-spacing: normal;
}
.con06 .ttl01 + p{
  text-align: left;
}
.con06 figure{
  margin: 40px 0;
}
.optionBox{
  width:100%;
  background-color:#fff;
  position:relative;
  padding:40px;
  padding-bottom:10px;
  margin-top:30px;
  text-align:left;
}
.optionBox li{
  font-size: 1.6rem;
  margin-right:20px;
  padding:8px;
  margin-bottom:10px;
  display:inline-block;
  border: #003c85 1px solid;
  color: #003c85;
}

.optionBox p:first-of-type{
  font-size: 2rem;
  position:absolute;
  top:-15px;
  left:10px;
  color:#003c85;
  font-weight:bold;
}
.optionBox p:last-of-type{
  font-size: 1.4rem;
  text-align:left;
}


/* for PC*/
@media print, screen and (min-width:768px) {
  .con06{}
  .con06 .ttl01:after{}
  .con06 .ttl01 strong{
    font-size: 7.0rem;
  }
  .con06 .ttl01 + p{
    text-align: center;
  }
  .con06 figure{
    margin: 80px 0;
  }
  .optionBox{
    text-align:center;
  }

}

/*
おすすめ理由--- con07*/
.con07{}
.con07 .ttl01{
  line-height: 1.4;
}
.con07 .ttl01 strong{
  font-size: 4.2rem;
  font-weight: 500;
  letter-spacing: normal;
}
.con07 ol li{
  margin: 0 0 30px 0;
}
.con07 ol li:last-of-type{
  margin-bottom: 0;
}
.con07 ol li figure{
  position: relative;
  z-index: 1;
}
.con07 ol li figure figcaption{
  position: absolute;
  right: 5%;
  bottom: 35px;
  text-align: right;
  font-size: 1.0rem;
  line-height: 1.2;
  text-shadow: 1px 0 1px #fff,0 1px 1px #fff;
}
.con07 ol li div{
  position: relative;
  width: 90%;
  margin: -30px auto 0 auto;
  padding: 20px;
  background: #fff;
  text-align: left;
  z-index: 2;
}
.con07 ol li div h3{
  position: relative;
  margin: 0 0 20px 0;
  padding: 0 0 20px 0;
  font-size: 2.4rem;/*24 / 30*/
  text-align: left;
  line-height: 1.2;
}
.con07 ol li div h3::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100px;
  height: 8px;
  background:repeating-linear-gradient( -45deg,#1c68aa,#1c68aa 2px,#fff 0,#fff 6px);
}
.con07 ol li div h3 span{
  margin: 0 5px 0 0;
  font-size: 1.5rem;/*15 / 18*/
}
.con07 ol li div h3 p{
  display: inline;
  font-size: 22px;
  margin-left: 20px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
/* for PC*/
@media print, screen and (min-width:768px) {
  .con07{}
  .con07 .ttl01 strong{
    font-size: 7.0rem;
  }
  .con07 ol li{
    width: 47.16%;
    margin: 0 0 50px 0;
  }
  .con07 ol li:nth-of-type(2n+1){
    clear: both;
    float: left;
  }
  .con07 ol li:nth-of-type(2n){
    float: right;
  }
  .con07 ol li:nth-last-of-type(-n+2){
    margin-bottom: 0;
  }
  .con07 ol li figure{}
  .con07 ol li figure figcaption{
    right: 7%;
    bottom: 65px;
  }
  .con07 ol li div{
    width: 86%;
    margin: -60px auto 0 auto;
    padding: 30px;
  }
  .con07 ol li div h3{
    margin: 0 0 25px 0;
    padding: 0 0 25px 0;
    font-size: 3.0rem;/*24 / 30*/
  }
  .con07 ol li div h3::after{
    width: 150px;
  }
  .con07 ol li div h3 span{
    font-size: 1.8rem;/*15 / 18*/
  }
}

/*
流れ--- con08*/
.con08{}
.con08 .start{
  margin: 20px 0 0 0;
  font-size: 3.0rem;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
}

/* for PC*/
@media print, screen and (min-width:768px) {
  .con08{}
  .con08 .start{
    margin: 50px 0 0 0;
    font-size: 6.0rem;
  }
}

/*
質問--- con09*/
.con09{}
.con09 dt,
.con09 dd{
  position: relative;
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.6;
}
.con09 dt{
  margin: 5px 0 0 0;
  font-weight: 700;
}
.con09 dt:first-of-type{
  margin-top: 0;
}
.con09 dt a{
  position: relative;
  display: block;
  padding: 20px 40px 20px 55px;
  background: rgba(255,255,255,1.0);
  text-decoration: none;
  transition: .3s;
}
.con09 dt a:hover{
  opacity: 1;
  color: #1c68aa;
}
.con09 dd{
  display: none;
  padding: 20px 20px 20px 55px;
  background: #fff;
}
.con09 dt a::before,
.con09 dd::before{
  position: absolute;
  left: 10px;
  top: 15px;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 32px;
  border-radius: 100%;
  font-family: 'Lato', sans-serif;
  font-size: 2.0rem;
  text-align: center;
}

.con09 dt a::before{
  content: "Q";
  background: #1c68aa;
  color: #fff;
}
.con09 dd::before{
  content: "A";
  background: #fff;
  color: #1c68aa;
}

.con09 dt a span{
  position: absolute;
  right: 10px;
  top: 24px;
  display: block;
  width: 20px;
  height: 20px;
  transition: .3s;
}
.con09 dt a span::before,
.con09 dt a span::after{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #003c85;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}
.con09 dt a span::before{
  width: 2px;
  height: 100%;
}
.con09 dt a span::after{
  width: 100%;
  height: 2px;
}

/*open*/
.con09 dt a.open{
  background: rgba(255,255,255,0.4);
}
.con09 dt a.open span{
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* for PC*/
@media print, screen and (min-width:768px) {
  .con09{}
  .con09 dt,
  .con09 dd{
    font-size: 2.0rem;
  }
  .con09 dt{
    margin: 10px 0 0 0;
  }
  .con09 dt:first-of-type{}
  .con09 dt a{
    /*min-height: 95px;*/
    padding: 40px 70px 40px 120px;
  }
  .con09 dt a:hover{}
  .con09 dd{
    display: none;
    padding: 40px 80px 40px 120px;
    background: #fff;
  }
  .con09 dt a::before,
  .con09 dd::before{
    position: absolute;
    left: 30px;
    top: 25px;
    width: 60px;
    height: 60px;
    line-height: 58px;
    font-size: 3.0rem;
  }

  .con09 dt a::before{}
  .con09 dd::before{}

  .con09 dt a span{
    right: 30px;
    top: 28px;
    display: block;
    width: 40px;
    height: 40px;
  }
  .con09 dt a span::before,
  .con09 dt a span::after{
    top: 65%;
  }
  .con09 dt a span::before{}
  .con09 dt a span::after{}

  /*open*/
  .con09 dt a.open{}
  .con09 dt a.open span{}
}

/*
フォーム--- form99*/
.form99{}
.form99 .ttl01{
  color: #fff;
}
.form99 .ttl01::after{
  background: #fff;
}
.form99 h3{
  font-size: 2.4rem;/*24 / 30*/
  color: #ffc200;
}
.form99 .form{
  margin: 30px 0 0 0;
  padding: 20px;
  background: #fff;
}

/* for PC*/
@media print, screen and (min-width:768px) {
  .form99{}
  .form99 .ttl01{}
  .form99 .ttl01::after{}
  .form99 h3{
    font-size: 3.0rem;/*24 / 30*/
  }
  .form99 .form{
    max-width: 840px;
    margin: 55px auto 0 auto;
    padding: 50px;
  }

}

/*
CVボタン--- btnCV*/
.btnCV{
  padding: 20px 0;
  text-align: center;
  color: #fff;
}
.btnCV h2{
  margin: 0 0 10px 0;
  font-size: 1.8rem;/*18 / 30*/
}
.btnCV .btn{
  max-width: 600px;
  margin: 0 auto 10px auto;
  font-size: 1.8rem;/*18 / 30*/
  font-weight: 700;
}
.btnCV .btn a{
  display: block;
  height: 60px;
  line-height: 60px;
  background: #ffc200;
  color: #222;
}
.btnCV .tel{
  display: inline-block;
  text-align: center;
  line-height: 1.6;
  }
.btnCV .tel a{
  display: block;
  position: relative;
  /*height: auto;*/
  padding: 0 0 0 25px;
  color: #fff;
  }
.btnCV .tel a::before{
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  display: block;
  width: 20px;
  height: 20px;
  background: url("../images/ico_tel03.png") no-repeat center center;
  background-size: cover;
  }
.btnCV .tel a span{}
.btnCV .tel a span:nth-of-type(1){
  margin: 0 0 3px 0;
  font-size: 2.4rem;
  }
.btnCV .tel a span:nth-of-type(2){
  font-size: 1.1rem;
  }

/* for PC*/
@media print, screen and (min-width:768px) {
  .btnCV{
    padding: 30px 0;
  }
  .btnCV h2{
    margin: 0 0 30px 0;
    font-size: 3.0rem;/*18 / 30*/
  }
  .btnCV .btn{
    margin: 0 auto 30px auto;
    font-size: 3.0rem;/*18 / 30*/
  }
  .btnCV .btn a{
    height: 100px;
    line-height: 100px;
  }
  .btnCV .tel a:hover{
    opacity: 1;
  }
  .btnCV .tel a span:nth-of-type(1){
    margin: 0 0 3px 0;
    font-size: 3.0rem;
    letter-spacing: 0.05em;
    }
  .btnCV .tel a span:nth-of-type(2){
    font-size: 1.3rem;
    }
  
}

/* for SP iPhone5*/
@media screen and (max-width:320px) {
	
}

/* for SP landscape*/
@media screen and (max-width:767px) and (orientation: landscape) {
}


/* for iPad*/
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
/*縦横両方の記述*/

}
