@charset "utf-8";
/*---------------------------------------------------
*
* base
*
----------------------------------------------------*/
/*--Firefox Yu Gothic(17.05.30対策)--*/
@font-face {
  font-family: "YuGothic M";
  src: local("Yu Gothic Medium");
}

html {
  font-size: 62.5%;
}
body{
  font-size: 15px;
  font-size: 1.5rem;
  -webkit-text-size-adjust: 100%;
  font-family:Verdana,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","Yu Gothic Medium", "游ゴシック Medium","YuGothic M","YuGothic","メイリオ","Meiryo",sans-serif;
  color: #444;
}
a{ text-decoration:none; }
p{ line-height:1.7;}
/*---------------------------------------------------
*
* clearfix & reset
*
----------------------------------------------------*/
/*--clearfix--*/
.cf:before, .cf:after {
  content:"";
  display:table;
}
.cf:after {clear:both;}
.cf {zoom:1;}

/*reset*/
button, input, select, textarea{
  -webkit-appearance: none;
  font-family : inherit;
}

/*--box sizing--*/
*, *:before, *:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
/*---------------------------------------------------
*
* common
*
----------------------------------------------------*/
.container{
  max-width: 1020px;
  margin:0 auto;
  padding-left: 10px;
  padding-right: 10px;
}
img{
  max-width: 100%;
  height:auto;
}

/*--pagetop--*/
.pagetopBtn {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 55px;
}
.pagetopBtn a {
    display: block;
    width: 50px;
    height: 50px;
    background-color: #333;
    text-align: center;
    color: #fff;
    font-size: 24px;
    text-decoration: none;
    line-height: 50px;
}
/*---------------------------------------------------
*
 * parts（共通使用するパーツ）
*
----------------------------------------------------*/
/*--lineConsultation--*/
.lineConsultation{
  padding: 10px 15px 20px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #00b900;
  display: none;
  position: fixed;
  bottom: -8px;
  right: 220px;
  z-index: 10;
  background: #fffdec;
  display: block;
  line-height: 1.2;
  border: 3px solid #00b900;
  border-radius:5px;
  -moz-border-radius:5px;
  -webkit-border-radius:5px;
}
.lineConsultation span{
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
}

/*--webYoyaku--*/
.webYoyaku{
  padding: 10px 15px 20px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #25546d;
  display: block;
  position: fixed;
  bottom: -8px;
  right: 20px;
  z-index: 10;
  background: #fffdec;
  line-height: 1.2;
  border: 3px solid #25546d;
  border-radius:5px;
  -moz-border-radius:5px;
  -webkit-border-radius:5px;
}
.webYoyaku span{
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
}

/*--secTtl--*/
.secTtl{
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
}
.secTtl span{
  padding: 0 15px 20px;
  display: inline-block;
  background: url(../img/common/secttl_line.png) left bottom repeat-x;
}

/*--telParts--*/
.telParts{
  font-size: 21px;
  font-size: 2.1rem;
  color:#24536c;
  vertical-align: middle;
  font-weight: bold;
  display: inline-block;
}
.telParts:before{
  margin-right: 5px;
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
  content: "";
  width: 14px;
  height: 14px;
  background: url(../img/common/icon_tel.png) no-repeat;
}

/*--verticalTtl--*/
.verticalTtl{
  text-align: center;
}
.verticalTtl img{
  margin-top: -55px;

}

/*--basicBtn--*/
.basicBtn{
  display: inline-block;
  padding: 1.2em 3em 1.2em 1em;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border:3px solid #f39436;
  background: #fff;
  color: #f39436;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  transition: all .2s;
  letter-spacing: 0.05em;
}
.basicBtn:hover{
  border: 3px solid #ffcd9b;

}
.basicBtn:after{
  position: absolute;
  top: 50%;
  right: .3em;
  content: '';
  margin-top: -5px;
  border: 7px solid transparent;
  border-top-width: 5px;
  border-bottom-width: 5px;
  border-left-color: #f39436;
  transition: all .2s;
}
.basicBtn:hover:after{
  right: -.02em;
}

/*--introBox--*/
.introBox{
  text-align:center;
}
.introBox .txt{
  line-height:2;
}
.introBox .pTtlWrap .ph{
  width: 100%;
}
.introBox .pTtlWrap{
  position: relative;
}
.introBox .pTtlWrap .name{
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
}

/*--contactBox--*/
.contactBox{
  margin: 54px 0;
}
.contactBox:last-child{
  margin-bottom: 0;
}
.casePageWrap .intro + .contactBox{
  margin-top: -20px;
}
.contactBox a{
  display: block;
  position: absolute;
  bottom: 18px;
  padding: 8px 0px 7px;;
  width: 100%;
  max-width: 180px;
  min-height: 32px;
  border: 2px solid #e27000;
  border-radius: 4px;
  background-color: #fff;
  color: #e27000;
  font-weight: bold;
  font-size: 1.3rem;
  line-height: 1;
  /* letter-spacing: 0.05em; */
  opacity: 1 !important;
  transition: all .2s;
}
.contactBox a:hover{
  background-color: #e27000;
  color: #fff;
}
.contactBox .line,
.contactBox .tel{
  overflow: hidden;
  position: relative;
  z-index: 1;
  width: 49.1573%;
  height: 171px;
  border-radius: 8px;
}
.contactBox .line{
  float: left;
  background-color: #00b900;
}
.contactBox .line img{
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  /* height: 100%;
  object-fit: contain; */
}
.contactBox .line a{
  right: 15px;
  padding-left: 16px;
}
.contactBox .line a::after{
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 12px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #e27000;
  border-right: 2px solid #e27000;
  transform: translateY(-50%) rotate(45deg);
  transition: all .2s;
}
.contactBox .line a:hover::after{
  border-top-color: #fff;
  border-right-color: #fff;
}
.contactBox .tel{
  float: right;
  padding-top: 30px;
  background-color: #fff1e3;
  text-align: center;
}
.contactBox .tel strong{
  color: #e27000;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
.contactBox .tel a{
  left: 0;
  right: 0;
  margin: 0 auto;
  padding-left: 15px;
  background-image: url(../img/common/icon_tel2.svg);
  background-repeat: no-repeat;
  background-position: 12px center;
}
.contactBox .tel a:hover{
  background-image: url(../img/common/icon_tel2w.svg);
}
/* .contactBox .tel a::before{
  content: "";
  display: inline-block;
  position: absolute;
  left: 12px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  width: 17px;
  height: 17px;
  background: url(../img/common/icon_tel2.png) no-repeat;
} */



/*---------------------------------------------------
*
* header
*
----------------------------------------------------*/
.pageTtl{
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: normal;
  vertical-align: middle;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
}
#pcNavWrap{
  margin: 0 auto;
  padding: 20px 10px 25px;
  max-width: 1020px;
}
#pcNavWrap .logo{
  width: 17.5%;
  float: left;
}
#pcNavWrap .main{
  width: 77%;
  float: right;
}
#pcNavWrap .nav {
  margin: 18px 0 0;
}
#pcNavWrap .nav li{
  margin-right: 18px;
  color: #9b9fac;
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
  font-weight: bold;
}
#pcNavWrap .nav li a{
  color: #24536c;
}

/*--headerTop--*/
#headerTop .nav{
  margin: 30px auto 155px;
  max-width: 1000px;
}
#headerTop .nav li{
  margin-left: 40px;
  display: inline-block;
  color: #9b9fac;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
#headerTop .nav li.first{
  margin-left: 0;
}
#headerTop .nav a{
  color: #24536c;
}


/*---------------------------------------------------
*
* top
*
----------------------------------------------------*/

.mainImgBox .ph{
  position: relative;
}
.mainImgBox .ph{
  width: 100%;
}
.mainImgBox .mainImgWrap{
  position: relative;
}
.mainImgBox .mainImgWrap .logo{
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top:0;
  bottom:0;
  z-index: 100;
}
.mainImgBox .infoArea{
  margin: auto;
  left: 0;
  right: 0;
  top: 20px;
  width: 100%;
  max-width: 1000px;
  position: absolute;
  z-index: 100;
}
.mainImgBox .topPageTtl{
  margin: 30px 0 0;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.5;
}

/*--topInfoBox--*/
.topInfoBox{
  padding: 0 0 150px;

}
.topInfoBox .verticalTtl{
  margin-bottom: 65px;
}
.topInfoBox .ph{
  width: 50%;
  float: left;

}
.topInfoBox .main{
  width: 50%;
  padding: 0 100px 0 40px;
  float: left;
  color: #686053;
}
.topInfoBox .main .ttl{
  margin: 0 0 35px;
  font-size: 24px;
  font-size: 2.4rem;
}
.topInfoBox .main .txt{
  font-size: 16px;
  font-size: 1.6rem;
  margin:0 0 40px;
}
.topInfoBox .basicBtn{
  display: block;
  max-width: 355px;
}
  /*reverse*/
  .topInfoBox.reverse .main{
    padding-left: 100px;
    float: left;
  }
  .topInfoBox.reverse .ph{
    float: right;
    text-align: right;
  }
  .topInfoBox.bgColor{
    background: #f3f2eb;
  }


/*--symptomBox--*/
.symptomBox{
  text-align: center;
}
.symptomBox .ph{
  width: 100%;

}
.symptomBox .ttlWrap{
  margin: 0 0 45px;
  position: relative;
}
.symptomBox .ttlWrap .ttl{
  width: 100%;
  top: 55px;
  position: absolute;
  text-align: center;
}
/*list*/
.symptomBox .list{
  margin-left: -3%;
}
.symptomBox .list li{
  margin-left:3%;
  width: 21.8%;
  float: left;
}
.symptomBox .list .name{
  font-size: 20px;
  font-size: 2rem;
  color: #25546d;
  font-weight: bold;
}
.symptomBox .info{
  margin-bottom: 55px;
}

/*--topMenuBox--*/
.topMenuBox{
  padding: 100px 0 90px;
  background: #f3f2eb;
}
.topMenuBox .list{
  margin-left: -2.1%;
  text-align: center;
}
.topMenuBox .list li{
  margin-left: 2.1%;
  width: 30.8%;
  display: inline-block;
  text-align: left;
  vertical-align:top;
}

.topMenuBox .list .ph{
  margin-bottom: 10px;
}
.topMenuBox .list .name{
  margin-bottom: 10px;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.topMenuBox .list a{
  color:#25546d;

}

/*--topBlogBox--*/
.topBlogBox{
  padding: 0 0 90px;
  background: url(../img/top/bg_blog.jpg) center top no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.topBlogBox .ttl{
  margin: 0 0 45px;
  text-align: center;
}
.topBlogBox .ttl img{
  margin-top: -10px;
}
.topBlogBox .lead{
  margin: 0 0 50px;
  color: #f39436;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
}
/*list*/
.topBlogBox{
  margin: 0 0 100px;
}
.topBlogBox .list{
  margin-left: -2.1%;
}
.topBlogBox .list li{
  margin-left: 2.1%;
  width: 31.2%;
  float: left;
}
.topBlogBox .list li a{
  color: #25546d;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.topBlogBox .list li .ph{
  margin-bottom: 10px;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  border-radius: 7px;
}
.topBlogBox .list li .name{
  margin-bottom: 10px;
}
/*thumbnail*/
.topBlogBox .list .imgBox{
  margin: 0 0 10px;
  position: relative;
  overflow: hidden;
  text-align: left;
}
.topBlogBox .list .thumbBg {
    background-size: cover !important;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    border-radius: 7px;
}
.topBlogBox .list .imgBox > * {
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
}
.topBlogBox .list .imgBox:after {
    padding-top: 61.9%;
    display: block;
    content: "";
}

/*---------------------------------------------------
*
* about
*
----------------------------------------------------*/
/*--introBox--*/
#id_about .introBox{
  margin:0 0 70px;
}
#id_about .introBox .pTtlWrap{
  margin: 0 0 140px;
}
#id_about .introBox .pTtlWrap .name{
  bottom:-100px;
}

/*
.aboutBox{
  margin: 0 0 150px;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
}

.aboutBox .pTtlWrap{
  margin:0 0 140px;
}
*/
/*--mottoBox--*/
.mottoBox .secTtl{
  margin:0 0 100px;
}
.mottoBox .mottoNumWrap{
  width: 100%;
  display: table;
}
.mottoBox .mottoNum{
  position: relative;
  height: 449px;
  display: table-cell;
  vertical-align: middle;
  -webkit-background-size: cover;
  background-size:cover;
  background-position: center top;
  background-repeat: no-repeat;
}
  /*m1*/
  .mottoBox #m1{
    background-image: url(../img/about/motto_01.jpg);

  }
  .mottoBox #m2{
    background-image: url(../img/about/motto_02.jpg);
  }
  .mottoBox #m3{
    background-image: url(../img/about/motto_03.jpg);
  }
.mottoBox .mottoNum .num{
  position: absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin: auto;
}
.mottoBox .mottoNum .ph{
  width: 100%;
}
.mottoBox .mottoNum .lead{
  margin: auto;
  max-width: 1000px;
  font-size: 30px;
  font-size: 3rem;
}
.mottoBox .txtArea{
  padding: 0 10px;
  margin: 60px auto 130px;
  max-width: 635px;
}

/*--costBox--*/
.costBox{
  padding: 110px 0 120px;
  background: #f3f2eb;
  text-align: center;
}
.costBox .secTtl{
  margin: 0 0 30px;
}
.costBox .guide{
  margin-bottom: 15px;
}
/*case*/
.costBox .caseTtl{
  margin: 0 0 25px;
  font-size: 20px;
  font-size: 2rem;
  color: #f39436;
  font-weight: bold;
}
.costBox .caseSubTtl{
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
.costBox .case{
  margin: 0 auto 60px;
}

.costBox .case table{
  margin: 15px auto 25px;
  width: 100%;
  max-width: 445px;
  border-collapse:separate;
  border-spacing:1px;
  color: #2c4a5a;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.3;

}
.costBox .case table .right{
  text-align: right;
}
.costBox .case th{
  padding: 15px 10px;
  background: #d6e3ea;
  vertical-align: middle;

}
.costBox .case td{
  padding: 15px 15px;
  background: #e3ebf0;
}
.costBox .case .memo{
  margin: 0 auto;
  max-width: 445px;
  text-align: left;
}
.costBox .case .memo a{
  color: #f39436;
}
/*free*/
.costBox .free{
  max-width: 445px;
  margin: 40px auto 70px;
}
.costBox .free .caseSubTtl{
  margin-bottom: 15px;

}
.costBox .free .single{
  padding: 15px 15px;
  background: #e3ebf0;
}
/*accident*/
.costBox .accident .guide{
  margin: 0 0 10px;
  color: #25546d;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
.costBox .accident .maker{
  background: #ffde00;
}
.costBox .accident .txt{
  margin-bottom: 30px;
}
.costBox .accident ul{
  margin: 0 0 20px;
}
.costBox .accident li{
  margin:0 0 20px;
  line-height: 1.4;
  font-weight: bold;
}

/*--therapeuticBox--*/
.therapeuticBox{
  padding-top: 125px;
  padding-bottom: 35px;
}
.therapeuticBox .secTtl{
  margin: 0 0 60px;
}
.therapeuticBox .list{
  margin-left: -3.1%;
}
.therapeuticBox .list li{
  margin: 0 0 75px 3.1%;
  width: 46.8%;
  float: left;
}
.therapeuticBox .list .ph{
  margin: 0 0 20px;
  border: 1px solid #c8c8c8;
}
.therapeuticBox .list .name{
  margin: 0 0 15px;
  color: #25546d;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.therapeuticBox .list .txt{
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
}
.therapeuticBox .list a{
  color:#f39436;
  line-height: 1.7;
  font-size: 1.6rem;
  font-size: 16px;
}
.therapeuticBox .list .example{
  color: #f39436;
}

/*--profileBox--*/
.profileBox{
  padding: 120px 0;
  background: #F3F2EB;
}
.profileBox .secTtl{
  margin: 0 0 75px;
}
.profileBox .name01{
  margin: 0 0 5px;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.2em;
}
.profileBox .name02{
  margin: 0 0 50px;
}
.profileBox .main{
  width: 46.5%;
  float: left;
}
.profileBox .ph{
  width: 47.6%;
  float: right;
}
.profileBox .ph01{
  margin: 0 0 35px;
}
.profileBox .ph02{
  float: left;
}
.profileBox .ph03{
  float: right;
}
.profileBox .ph02,
.profileBox .ph03{
  width: 46.21%;
}

/*---------------------------------------------------
*
* menu
*
----------------------------------------------------*/
/*--introBox--*/
#id_menu .introBox{
  margin:0 0 70px;
}
#id_menu .introBox .pTtlWrap{
  margin: 0 0 140px;
}
#id_menu .introBox .pTtlWrap .name{
  bottom:-100px;
}

/*--caseBox--*/
.caseBox{
  margin-bottom:100px;
}
/*caseList*/
.caseBox .caseList{
  margin-left:-3.8%;
}
.caseBox .caseList li{
  margin: 0 0 50px 3.8%;
  width:21.10%;
  float:left;
  text-align:center;
}
.caseBox .caseList .icon{
  margin:0 0 8px;
}
.caseBox .caseList .ttl{
  margin:0 0 20px;
  color:#25546d;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing:0.1em;
  line-height:1.2;
}
.caseBox .caseList .ttl .small{
  font-size: 14px;
  font-size: 1.4rem;
}
.caseBox .caseList a{
  color:#f39436;
  font-size: 16px;
  font-size: 1.6rem;
}

/*--case(page)--*/
.casePageTtl{
  margin:0 0 50px;
  padding:45px 0;
  background: #f8f1e9;
  color:#25546d;
}
.casePageTtl .icon{
  margin-right: 25px;
  float: left;
  vertical-align:middle;
}
.casePageTtl .ttl{
  font-size: 30px;
  font-size: 3rem;
  letter-spacing:0.1em;
  vertical-align:middle;
}
.casePageTtl .ttl .small{
  vertical-align: middle;
  font-size: 17px;
  font-size: 1.7rem;
}
/*--column--*/
.casePageWrap{
  margin:0 auto 100px;
}
.casePageWrap .sideCol{
  margin-top: -15%;
  width:25%;
  float:right;
}
.casePageWrap .mainCol{
  width:71.5%;
  float:left;
  font-size: 16px;
  font-size: 1.6rem;
}
/*-------casePageWrap(▼症状各ページ共通使用)----------*/

/*イメージ画像*/
.casePageWrap .image{
  margin: 0 0 35px;
}
/*余白(PC上でのピクセル数)*/
.casePageWrap .mb20{
  margin-bottom: 20px;
}
.casePageWrap .mb30{
  margin-bottom: 30px;
}
.casePageWrap .mb40{
  margin-bottom: 40px;
}
.casePageWrap .mb60{
  margin-bottom: 60px;
}
/*イメージ画像下の文言*/
.casePageWrap .intro{
  margin:0 0 55px;
}
.casePageWrap .intro h3{
  line-height:1.5;
}
/*--テキストサイズ--*/
.casePageWrap .font14{
  font-size: 14px;
  font-size: 1.4rem;
}
.casePageWrap .font18{
  font-size: 18px;
  font-size: 1.8rem;
}
.casePageWrap .font19{
  font-size: 19px;
  font-size: 1.9rem;
}
.casePageWrap .font20{
  font-size: 20px;
  font-size: 2rem;
}
/*--テキストカラー--*/
  /*オレンジ*/
  .casePageWrap .fontColor01{
    color:#e27000;
  }

/*--テキスト装飾--*/
.casePageWrap .fontBold{
  font-weight: bold;
}
.casePageWrap .marker{
  background: #ffdf04;
}

/*--テーブル--*/
.casePageWrap .basicTbl{
  max-width:445px;
  width:100%;
  border-collapse:separate;
  border-spacing:1px;
  color:#2c4a5a;
  line-height:1.5;
}
.casePageWrap .basicTbl th{
  padding:12px;
  width:10em;
  background: #d6e3ea;
}
.casePageWrap .basicTbl td{
  padding:12px 30px;
  background: #e3ebf0;
  text-align:right;
}
/*--説明＆解説エリア--*/
.casePageWrap .explainArea{
  padding:40px 35px;
  color:#25546d;
  border-top:3px solid #567b8f;
  border-bottom:3px solid #567b8f;
  background: #e9f0f4;
}
.casePageWrap .explainArea .ttl{
  margin:0 0 30px;
  font-size: 24px;
  font-size: 2.4rem;
  color:#25546d;
  line-height:1.3;
}
.casePageWrap .explainArea .txtMargin{
  margin-bottom: 40px;
}

  /*カラーバリエーション - オレンジ*/
  .casePageWrap .explainArea.color01{
    color:#ae6e2f;
    border-top:3px solid #f3983d;
    border-bottom:3px solid #f3983d;
    background: #fcf6ef;
  }
  .casePageWrap .explainArea.color01 .ttl{
    color:#f39436;
  }

/*通常リスト*/
.casePageWrap .explainArea .list{
  text-indent:-1em;
  padding-left:1em;
  line-height:1.8;
}

/*順番有リスト*/
.casePageWrap .flowList{
  border-top: 1px solid #c2c2c2;
}
.casePageWrap .flowList li{
  padding:25px 0;
  border-bottom:1px solid #c2c2c2;
}
.casePageWrap .flowList .ttl{
  margin:0 0 12px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height:1.5;
  display:table;
}
.casePageWrap .flowList .ttl span{
  display:table-cell;
  vertical-align:top;
}

/*チェックリスト*/
.casePageWrap .checkList{
  margin-top:40px;
}
.casePageWrap .checkList li{
  position: relative;
  padding-left: 30px;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.4;
}
.casePageWrap .checkList li + li{
  margin-top: 12px;
}
.casePageWrap .checkList li::before{
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 1px;
  z-index: 1;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e27000;
  color: #fff;
  text-align: center;
  margin-right: 10px;
  vertical-align: middle;
}
.casePageWrap .checkList li::after{
  content: "";
  position: absolute;
  left: 6px;
  top: 7px;
  z-index: 2;
  width: 8px;
  height: 5px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}


/*-----------casePageWrap(▼特定のページのみ使用)----------*/
/*--case05--*/
#id_case05{
}

/*---sideMenu--*/
.casePageWrap .sideMenu{
  padding:10px 5px;
  background: #fff;
  border:3px solid #f39436;
  border-right:none;
  border-radius: 10px 0px 0px 10px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-bottom-left-radius: 10px;
}
.casePageWrap .sideMenu li {
  width:100%;
  padding:10px 25px;
  display:table;
  line-height:1.4;
}
.casePageWrap .sideMenu li+li{
  border-top: 1px solid #ccd5da;
}
.casePageWrap .sideMenu .icon {
  width:40px;
  display:table-cell;
}
.casePageWrap .sideMenu .icon img{
  margin:0 12px 0 0;
  width:27px;
}
.casePageWrap .sideMenu .txt{
  padding:5px 0 0;
  display:table-cell;
  font-size: 16px;
  font-size: 1.6rem;
  color:#25546d;
  text-align:left;
  vertical-align:top;
}
/*---------------------------------------------------
*
* flow
*
----------------------------------------------------*/
/*--introBox--*/
#id_flow .introBox{
  margin:0 0 70px;
}
#id_flow .introBox .pTtlWrap{
  margin: 0 0 140px;
}
#id_flow .introBox .pTtlWrap .name{
  bottom:-100px;
}

/*--stepBox--*/
.stepBox{
  padding: 100px 0;
  background-position: top center;
  background-repeat: no-repeat;
  background-image: url(../img/flow/arrow_color.png);
}
  .stepBox.stepColor{
    background-color: #f3f2eb;
    background-image: url(../img/flow/arrow_white.png);
  }
.stepBoxInner{
  margin: 0 auto;
  max-width: 1400px;
}
.stepBox .main{
  max-width: 600px;
  width: 50%;
  padding: 0 100px 0 40px;
  float: right;
  color: #686053;
  font-size: 16px;
  font-size: 1.6rem;
}
.stepBox .ph{
  width: 50%;
  float: left;
}
.stepBox .ph img{
  width: 100%;
}
.stepBox .ttl{
  margin: 0 0 30px;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
}
  /*reverse*/
  .stepBox.reverse .main{
    padding: 0 40px 0 100px;
    float: left;
  }
  .stepBox.reverse .ph{
    float: right;
    text-align: right;
  }

/*---------------------------------------------------
*
* Q and A
*
----------------------------------------------------*/
/*--introBox--*/
#id_qa .introBox{
  margin:0 0 70px;
}
#id_qa .introBox .pTtlWrap{
  margin: 0 0 140px;
}
#id_qa .introBox .pTtlWrap .name{
  bottom:-100px;
}

/*--qaListBox--*/
.qaListBox{
  margin:0 auto 100px;
}
.qaListBox .secTtl{
  margin:0 0 40px;
}
.qaListBox dt{
  margin:0 0 10px;
  padding:0 30px 8px 0;
  color:#f39436;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  border-bottom: 3px solid #f39436;
  background: url(../img/qa/arrow.png) right center no-repeat;
}
.qaListBox dt .icon{
  margin:0 20px 0 0;
  float:left;
}
.qaListBox dt .txt{
  display:inline-block;
  padding:5px 0 0;
  line-height: 1.4;
}
.qaListBox dd{
  display:none;
  padding:0 0 30px;
  color:#25546d;
}
.qaListBox dd .icon {
  margin: 0 20px 0 0;
  float:left;
}
.qaListBox dd p{
  padding: 0 0 0 58px;
}
.qaListBox dd li{
  margin:0 0 1em;
  padding-left:2.1em;
  text-indent:-2.1em;
}
.qaListBox dd .bold{
  font-weight: bold;
}
.qaListBox dl p .marker{
  background: #ffdf04;
}


/*---------------------------------------------------
*
* voice
*
----------------------------------------------------*/
/*--introBox--*/
#id_voice .introBox{
  margin:0 0 70px;
}
#id_voice .introBox .pTtlWrap{
  margin: 0 0 140px;
}
#id_voice .introBox .pTtlWrap .name{
  bottom:-100px;
}

/*--voiceBox--*/
.voiceBox{
  padding:70px 0;
}
.voiceBox.colorBg{
  background: #f3f2eb;
}
.voiceBox.last{
  margin:0 0 100px;
}
/*balloon*/
.voiceBox .balloon{
  margin:0 0 30px;
  padding:10px;
  position: relative;
  border: 2px solid #f39436;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  color:#f39436;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align:center;
}
.voiceBox .balloon:after,
.voiceBox .balloon:before{
  top: 100%;
  left: 10%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.voiceBox .balloon:after{
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #fff;
  border-width: 13px 10px;
  margin-left: -13px;
}
.voiceBox .balloon:before{
  border-color: rgba(243, 148, 54, 0);
  border-top-color: #f39436;
  border-width: 16px 13px;
  margin-left: -16px;
}
.voiceBox.colorBg .balloon:after{
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #f3f2eb;
}
/*commentWrap*/
.voiceBox .commentWrap{
  display:table;
}
.voiceBox .commentWrap .profile{
  padding:0 20px 0 0;
  width:34%;
  display:table-cell;
}
.voiceBox .commentWrap .profile img{
  margin-right: 15px;
  float:left;
}
.voiceBox .commentWrap .profileInfo{
  font-size: 14px;
  font-size: 1.4rem;
}
.voiceBox .commentWrap .comment{
  display:table-cell;
  vertical-align:top;
  font-size: 16px;
  font-size: 1.6rem;
  line-height:1.8;
}
/*---------------------------------------------------
*
* access
*
----------------------------------------------------*/
/*--introBox--*/
#id_access .introBox{
  margin:0 0 70px;
}
#id_access .introBox .pTtlWrap{
  margin: 0 0 140px;
}
#id_access .introBox .pTtlWrap .name{
  bottom:-100px;
}

/*--mapBox--*/
.mapBox{
  margin-bottom: 100px;
}
.mapBox .addressWrap{
  width: 45%;
  float: left;
}
.mapBox .txt{
  margin: 0 0 25px;
}
/*--mapBox--*/
.mapBox .gmapBox{
  margin: 0 0 65px;
  position: relative;
  padding-bottom: 40%;
  height: 0;
  overflow: hidden;
}
.mapBox .gmapBox iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
/*--transportation--*/
.mapBox .transportation {
  padding: 16px;
  background: #e8f1f4;
  font-size: 16px;
  font-size: 1.6rem;

}
.mapBox .transportation li{
  min-height: 25px;
  line-height: 1.3;
  padding-left: 45px;
}

.mapBox .transportation .car{
  margin-bottom: 25px;
  background: url(../img/access/icon_car.png) left top no-repeat;
}

.mapBox .transportation .bus{
  background: url(../img/access/icon_bus.png) left top no-repeat;
}

/*--table--*/
.mapBox .table{
  width: 48.8%;
  float: right;
}
/*---------------------------------------------------
*
* footer
*
----------------------------------------------------*/
#footer{
  padding: 45px 10px 80px;
  margin: 0 auto;
  max-width: 730px;
  text-align: center;
}
#footer .logo{
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
  margin: 0 0 35px;
}
#footer .nav {
  margin: 0 auto 35px;
}
#footer .nav li{
  margin-right: 18px;
  color: #9b9fac;
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
  font-weight: bold;
}
#footer .nav li a{
  color: #24536c;
}
#footer .contact{
  margin: 0 auto;
  max-width: 710px;
  text-align: left;
  float: left
}
#footer .tel{
  margin-right: 15px;
  font-size: 21px;
  font-size: 2.1rem;
  color:#24536c;
  vertical-align: middle;
  font-weight: bold;
}
#footer .tel:before{
  margin-right: 5px;
  display: inline-block;
  *display: inline;/*IE7*/
  *zoom: 1;/*IE7*/
  content: "";
  width: 14px;
  height: 14px;
  background: url(../img/common/icon_tel.png) no-repeat;
}
#footer .copyright{
  padding: 5px 0;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: right;
}
/*---------------------------------------------------
*
* PC_only
*
----------------------------------------------------*/
@media only screen and (min-width: 800px){
/*SP hidden*/
.sp{ display:none !important;}
}
