@charset "UTF-8";

/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/

html,body{height:100%;}
html{
    font-size:62.5%;
    overflow-y: scroll;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
    margin: 0;
    padding: 0;
    border: none;
    line-height: 100%;
    list-style-type: none;
    font-style: normal;
    font-weight: normal;
    font-family:"メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
    text-align: left;
    color:#000;
    letter-spacing: -0.01em;
}
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
*{
    box-sizing: border-box;
}
a{
  text-decoration: none;
  color: #000;
}
img{
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

em{
  font-style: normal;
}

.font-min{
  font-family: "ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.hover {
 transition: opacity 0.3s ease-out;
}
.hover:hover {
 opacity: 0.7;
}

.center{
  text-align: center;
}
.inner{
   width: 1000px;
   margin: auto;
}

.ttl{
  min-width: 1062px;
  height: 124px;
  margin-bottom: 50px;
  line-height: 124px;
  font-size: 6.0rem;
  color: #fff;
  background-color: #FEA70B;
}

@media screen and (min-width : 768px) {
  .sp{
    display: none;
  }
}
@media screen and (max-width : 767px) {
  body.fixed{
    position: fixed;
    width: 100%;
    height: 100%;
  }
  .pc{
    display: none;
  }
  .inner{
    width: 90.625%;
  }
  .ttl{
    min-width: 0;
    height: auto;
    margin-bottom: 8%;
    padding: 3%;
    line-height: 1; 
    font-size: 2.4rem;  
  }
}

/* ------------------------------
    header
------------------------------ */
#header{
  background-color: #fff;
}
#header .inner{
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 60px;
}
#header .hd_title a{
  display: block;
}
#header .txt_lead{
  font-size: 1.4rem;
}

@media screen and (max-width : 767px) {
  #header{
    position: fixed;
    height: 50px;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 9999;
	border-bottom: 1px solid #ccc;
  }
  #header .inner{
    width: auto;
    margin: 0 1.7% 0 4.68%;
    height: 50px;
  }
  #header .hd_title{
    width: 53%;
  }
  #header .hd_title img{
    vertical-align: middle; 
  }
  #header .hd_spbtn{
    display: flex;
  }
  #header .hd_spbtn li{
    width: 40px;
  }
  #header .hd_spbtn .btn02{
    margin-left: 1.7%;
    background: url(../img/hd_btn02_close.png);
    background-size: 100% auto;
  }
  #header .hd_spbtn .btn02.active img{
    opacity: 0;
    transition: opacity 0.3s ease-out;
  }
}

/* ------------------------------
    header_menu_pc
------------------------------ */
#merit,#service,#charge,#faq,#contact{
  margin-top: -53px;
  padding-top: 53px;
}
.header_menu_pc{
  position: fixed;
  width: 100%;
  height: 53px;
  min-width: 1062px;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 9999;
  opacity: 0;
  transition: opacity 0.3s ease-out;
  pointer-events: none;
}
.header_menu_pc.fixed{
  opacity: 1;
  pointer-events: auto;
  border-bottom: 1px solid #ccc;
}
.header_menu_pc .inner{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 53px;
}
.header_menu_pc .hd_title{
  margin-right: 40px;
}
.header_menu_pc .gmenu{
  display: flex;
  justify-content: center;
  align-items: center;
}
.header_menu_pc .gmenu li{
  margin-right: 1.5em;
  font-size: 1.5rem;
}
.header_menu_pc .gmenu li:before{
  content: "\00ff5c";
  display: inline-block;
  padding-right: 1.5em;
}
.header_menu_pc .gmenu .list01:before,
.header_menu_pc .gmenu .list05:before{
  display: none;
}

/* ------------------------------
    header_menu_sp
------------------------------ */
@media screen and (max-width : 767px) {
  #merit,#service,#charge,#faq,#contact{
    margin-top: -50px;
    padding-top: 50px;
  }
  .header_menu_sp{
    position: fixed;
    display: none;
    width: 100%;
    top: 50px;
    left: 0;
    padding-bottom: 4.6%;
    background-color: rgba(0,0,0,0.89);
    z-index: 9999;
  }
  .header_menu_sp .gmenu li{
    border-bottom: 1px solid #fff;
  }
  .header_menu_sp .gmenu li a{
    position: relative;
    display: block;
    padding: 4.2% 0 3.9% 4.6%;
    font-size: 1.2rem;
    color: #fff;
  }
  .header_menu_sp .gmenu li a:after{
    content: "";
    position: absolute;
    display: block;
    width: 6px;
    height: 11px;
    top: 0;
    bottom: 0;
    right: 2%;
    margin: auto;
    background: url(../img/ico_hdarrow.png) no-repeat;
    background-size: 100% auto;
  }
  .header_menu_sp .box_contact{
    width: 90.625%;
    margin: auto;
    margin-top: 4.6%;
    padding: 3.4%;
    background-color: #fff;
  }
  .header_menu_sp .box_contact .list02{
    margin-top: 3.4%;
  }
}

/* ------------------------------
    sec_fv
------------------------------ */
.sec_fv{
  min-width: 1062px;
  background: url(../img/bg_fv.jpg) 50% 50% no-repeat;
  background-size: auto 100%;
}
.sec_fv .txt_fv01{
  height: 50px;
  padding-top: 7px;
  background-color: #FEA70B;
}

@media screen and (max-width : 767px) {
  .sec_fv{
    min-width: 0;
    padding-top: 50px;
    background: none;
  }
  .sec_fv .txt_fv01{
    height: auto;
    padding: 2.5% 0;  
  }
  .sec_fv > .inner{
    width: auto;
  }
}

/* ------------------------------
    sec_opt
------------------------------ */
.sec_opt{
  position: relative;
  min-width: 1062px;
  padding: 0 0 22px;
  background-color: #003D59;
  z-index: 10;
}
.sec_opt .inner{
  position: relative;
}
.sec_opt .btn_contact{
  position: absolute;
  width: 426px;
  height: 56px;
  right: 20px;
  bottom: 20px;
}

@media screen and (max-width : 767px) {
  .sec_opt{
    min-width: 0;
    padding: 5% 0;
  }
  .sec_opt .inner{
    padding-bottom: 3.4%; 
    background-color: #EFEFEF;  
  }
  .sec_opt .btn_contact{
    position: static; 
  }
  .sec_opt .btn_tel,
  .sec_opt .btn_contact{
    display: block; 
    margin: 3.4%; 
  }
  .sec_opt .btn_contact{
    width: auto;
    height: auto;
    margin-bottom: 0; 
  }
}

/* ------------------------------
    sec_sec01
------------------------------ */
.sec_sec01{
  min-width: 1062px;
  padding: 60px 0 70px;
  overflow-x: hidden;
  background-color: #EDEDED;
}
.sec_sec01 .ttl{
  position: relative;
  min-width: 0;
  height: auto;
  padding: 0 35px 20px;
  line-height: 1;
  background: none;
  border-bottom: 3px solid #FEA70B;
}

.sec_sec01 .ttl:after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  bottom: -20px;
  margin: auto;
  border-style: solid;
  border-width: 20px 12px 0 12px;
  border-color: #FEA70B transparent transparent transparent;
}
 .txt_sec01_01{
  width: 1062px;
  margin: -40px -20px 25px 0;
}
.txt_sec01_02{
  line-height: 1.58;
  font-size: 2.4rem;
}
.txt_sec01_02 em{
  font-size: 2.8rem;  
  color: #D3001A; 
}
.txt_sec01_02 .em_lg{
  line-height: 1.2; 
  font-size: 3.84rem; 
}

@media screen and (max-width : 767px) {
  .sec_sec01{
    min-width: 0;
    padding: 10% 0 13.4%; 
  }
  .sec_sec01 .ttl{
    margin-bottom: 6%;  
    padding: 0 8.6%;
    border: none;
  }
  .sec_sec01 .ttl:after{
    display: none;  
  }
  .sec_sec01 .txt_sec01_01{
    width: auto;  
    margin: 0 0 5%;  
  }
  .txt_sec01_02{
    font-size: 1.2rem;
  }
  .txt_sec01_02 em{
    font-size: 1.4rem;
  }
  .txt_sec01_02 .em_lg{
    font-size: 1.8rem; 
  }

}

/* ------------------------------
    sec_sec02
------------------------------ */
.sec_sec02{
  min-width: 1062px;
  background: url(../img/bg_sec02.jpg);
  background-size: cover;
}
.sec_sec02 .inner img{
  margin-top: -23px;
}

@media screen and (max-width : 767px) {
    .sec_sec02 {
      min-width: 0;
      background: none; 
    }
    .sec_sec02 .inner{
      width: auto;  
    }
    .sec_sec02 .inner img{
      margin-top: 0;  
    }
}

/* ------------------------------
    sec_sec03
------------------------------ */
.sec_sec03{
  padding-bottom: 60px;
}
.sec_sec03 .txt01{
  margin-bottom: 20px;
  line-height: 1.5;
  font-size: 1.8rem;
}
.sec_sec03 .txt01 em{
  color: #FEA70B;
}
.sec_sec03 .list_sec03{
  margin: 0 30px 30px;
  padding: 30px;
  background: -moz-linear-gradient(top, #1e5799 0%, #207cca 0%, #e6e6e6 0%, #ffffff 100%);
  background: -webkit-linear-gradient(top, #1e5799 0%,#207cca 0%,#e6e6e6 0%,#ffffff 100%);
  background: linear-gradient(to bottom, #1e5799 0%,#207cca 0%,#e6e6e6 0%,#ffffff 100%);
  border: 1px solid #D1D1D1;
}
.sec_sec03 .list_sec03 li{
  position: relative;
  vertical-align: baseline;
  font-size: 2.4rem;
}
.sec_sec03 .list_sec03 li + li{
  margin-top: 30px;
}
.sec_sec03 .list_sec03 li em{
  font-size: 2.8rem;
  background: linear-gradient(transparent 80%, #FCEA0D 80%);
}
.sec_sec03 .list_sec03 li:before{
  display: inline-block;
  width: 34px;
  height: 34px;
  margin-right: 28px;
  text-align: center;
  line-height: 34px;
  font-family: "ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.9rem;
  color: #fff;
  background: #77B550;
}
.sec_sec03 .list_sec03 .list01:before{
  content: "01";
}
.sec_sec03 .list_sec03 .list02:before{
  content: "02";
}
.sec_sec03 .list_sec03 .list03:before{
  content: "03";
}
.sec_sec03 .list_sec03 .list04:before{
  content: "04";
}
.sec_sec03 .list_sec03 .list05:before{
  content: "05";
}
.sec_sec03 .list_sec03 li:after{
  content: "";
  position: absolute;
  display: inline-block;
  width: 0;
  height: 0;
  top: 0;
  left: 34px;
  border-style: solid;
  border-width: 17px 0 17px 8px;
  border-color: transparent transparent transparent #77B550;
}
.sec_sec03 .txt02{
  line-height: 1.58;
  font-size: 2.4rem;
}
.sec_sec03 .txt02 em{
  font-size: 2.8rem;
  color: #D3001A;
}

@media screen and (max-width : 767px) {
  .sec_sec03{
    padding-bottom: 13.6%;  
  }
  .sec_sec03 .txt01{
    margin-bottom: 5%;  
    font-size: 1.0rem;  
  }
  .sec_sec03 .list_sec03{
    margin: 0 0 5%;
    padding: 5%;  
  }
  .sec_sec03 .list_sec03 li{
    padding-left: 32px; 
    line-height: 1.3; 
    font-size: 1.2rem;  
  }
  .sec_sec03 .list_sec03 li + li{
    margin-top: 1em;  
  }
  .sec_sec03 .list_sec03 li em{
    font-size: 1.4rem;  
  }
  .sec_sec03 .list_sec03 li:before{
    position: absolute; 
    width: 18px;
    height: 18px; 
    top: 3px;
    left: 0;
    line-height: 18px;  
    font-size: 1rem;  
  }
  .sec_sec03 .list_sec03 li:after{
    top: 3px;
    left: 18px;
    border-width: 9px 0 9px 4px;
  }
  .sec_sec03 .txt02{
    font-size: 1.2rem;  
  }
  .sec_sec03 .txt02 em{
    font-size: 1.4rem;  
  }
}

/* ------------------------------
    sec_sec04
------------------------------ */
.sec_sec04{
  position: relative;
  min-width: 1062px;
  padding-bottom: 70px;
  overflow: hidden;
  background: url(../img/bg_check.png);
}
.sec_sec04 .inner{
  padding: 30px 0 40px;
  background-color: #fff;
  border: 1px solid #D1D1D1;
}
.sec_sec04 .ttl_h3{
  position: relative;
  display: inline-block;
  height: 60px;
  margin-bottom: 30px;
  padding: 0 15px 0 20px;
  line-height: 60px;
  font-size: 3.8rem;
  color: #fff;
  background-color: #003D59;
}
.sec_sec04 .ttl_h3:after{
  content: "";
  position: absolute;
  display: inline-block;
  top: 0;
  right: -20px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 20px 0 0;
  border-color: #003D59 transparent transparent transparent;
}

@media screen and (max-width : 767px) {
  .sec_sec04 {
    min-width: 0;
    padding-bottom: 13.6%;  
  }
  .sec_sec04 .inner{
    padding: 5% 0;  
  }
  .sec_sec04 .ttl_h3{
    height: 30px; 
    margin-bottom: 5%;  
    padding: 0 3%; 
    line-height: 30px;  
    font-size: 1.4rem;  
  }
  .sec_sec04 .ttl_h3:after{
    right: -10px;
    border-width: 30px 10px 0 0;
  }
  .sec_sec04 .att_txt{
    margin-bottom: 1em;
    font-size: 0.8rem;
  }
}

/*---- block_sec04_01 ----*/
.sec_sec04 .block_sec04_01 .box_service{
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
}
.sec_sec04 .block_sec04_01 .box_service div{
  width: 230px;
  margin-bottom: 10px;
}
.sec_sec04 .block_sec04_01 .box_service div + div{
  margin-left: 85px;
}
.sec_sec04 .block_sec04_01 .box_service .ttl_service{
  margin-bottom: 15px;
  padding-bottom: 5px;
  white-space: nowrap;
  font-size: 3.3rem;
  border-bottom: 3px solid #003D59;
}
.sec_sec04 .block_sec04_01 .box_service .txt{
  line-height: 1.5;
  font-size: 1.8rem;
}
.sec_sec04 .block_sec04_01 .box_service .txt em{
  font-weight: bold;
  font-size: 2.1rem;
  color: #D3001A;
}

@media screen and (max-width : 767px) {
  .sec_sec04 .block_sec04_01 .box_service{
    margin-bottom: 5%;
  }
  .sec_sec04 .block_sec04_01 .box_service{
    margin: 0 3%;
  }
  .sec_sec04 .block_sec04_01 .box_service div{
    width: auto;
  }
  .sec_sec04 .block_sec04_01 .box_service div + div{
    margin-left: 3%;
  }
  .sec_sec04 .block_sec04_01 .box_service .ttl_service{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: 2.5em;
    margin-bottom: 5%;
    font-size: 1.6rem;
    border-bottom: none;
    border-bottom: 2px solid #003D59;
  }
  .sec_sec04 .block_sec04_01 .box_service .txt{
    line-height: 1.5;
    font-size: 0.9rem;
  }
  .sec_sec04 .block_sec04_01 .box_service .txt em{
    font-size: 0.9rem;
  }
}

/*---- block_sec04_02 ----*/
.sec_sec04 .block_sec04_02{
  position: relative;
  height: 400px;
  margin-bottom: 50px;
  background: url(../img/bg_sec04_02.jpg) 50% 50% no-repeat;
  background-size: auto 100%;
}
.sec_sec04 .block_sec04_02_inner{
  position: absolute;
  width: 93%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.sec_sec04 .block_sec04_02 .ttl_h3{
  display: inline-block;
  margin: 0 auto;
  padding: 0 30px;
}
.sec_sec04 .block_sec04_02 .ttl_h3:after{
  display: none;
}

@media screen and (max-width : 767px) {
  .sec_sec04 .block_sec04_02{
    height: auto;
    margin-bottom: 5%;
    padding: 15.625% 0 13.28%;
    background-image: url(../img/bg_sec04_02_sp.jpg);
    background-size: cover;
  }
  .sec_sec04 .block_sec04_02_inner{
    position: static;
    width: 93.75%;
    margin: auto;
    transform: translate(0,0);
  }
  .sec_sec04 .block_sec04_02 .ttl_h3{
    height: 30px;
    margin-bottom: 2%;
    padding: 0 3%;
  }
}

/*---- block_sec04_03 ----*/
.sec_sec04 .block_sec04_03 .ttl_h4{
  margin: 0 0 25px 30px;
  padding-left: 8px;
  font-size: 2.8rem;
  border-left: 5px solid #003D59;
}
.sec_sec04 .block_sec04_03 .list_sec04_03{
  margin: 0 0 40px 30px;
}
.sec_sec04 .block_sec04_03 .list_sec04_03 li{
  position: relative;
  padding-left: 50px;
}
.sec_sec04 .block_sec04_03 .list_sec04_03 .list02{
  margin-top: 20px;
}
.sec_sec04 .block_sec04_03 .list_sec04_03 li:before{
  position: absolute;
  display: inline-block;
  width: 34px;
  height: 34px;
  top: 0;
  left: 0;
  text-align: center;
  line-height: 34px;
  font-family: "ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.9rem;
  color: #fff;
  background: #FEA70B;
}
.sec_sec04 .block_sec04_03 .list_sec04_03 .list01:before{
  content: "01";
}
.sec_sec04 .block_sec04_03 .list_sec04_03 .list02:before{
  content: "02";
}
.sec_sec04 .block_sec04_03 .list_sec04_03 li:after{
  content: "";
  position: absolute;
  display: inline-block;
  width: 0;
  height: 0;
  top: 0;
  left: 34px;
  border-style: solid;
  border-width: 17px 0 17px 8px;
  border-color: transparent transparent transparent #FEA70B;
}
.sec_sec04 .block_sec04_03 .list_sec04_03 li .txt_ttl{
  line-height: 1.45;
  font-size: 2.2rem;
}
.sec_sec04 .block_sec04_03 .list_sec04_03 li .txt{
  line-height: 1.75;
  font-size: 1.6rem;
}

@media screen and (max-width : 767px) {
  .sec_sec04 .block_sec04_03 .ttl_h4{
    margin: 0 0 5% 5%;
    padding-left: 5px;
    font-size: 1.4rem;
    border-left: 3px solid #003D59;
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03{
    margin: 0 5% 8% 5%;
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03 li{
    padding-left: 32px;
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03 .list02{
    margin-top: 1em;
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03 li:before{
    position: absolute; 
    width: 18px;
    height: 18px; 
    top: 3px;
    left: 0;
    line-height: 18px;  
    font-size: 1rem;  
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03 li:after{
    top: 3px;
    left: 18px;
    border-width: 9px 0 9px 4px;
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03 li .txt_ttl{
    font-size: 1.4rem;
  }
  .sec_sec04 .block_sec04_03 .list_sec04_03 li .txt{
    font-size: 1.2rem;
  }
}

/*---- block_sec04_04 ----*/
.sec_sec04 .block_sec04_04 .ttl_h3{
  display: block;
  height: auto;
  margin: 0;
  padding: 50px 0 25px;
  line-height: 1;
}
.sec_sec04 .block_sec04_04 .ttl_h3:after{
  display: none;
}
.sec_sec04 .block_sec04_04 .txt01{
  line-height: 1.625;
  font-size: 1.6rem;
  color: #fff;
  background-color: #003D59;
}
.sec_sec04 .block_sec04_04 .sec04_04_cover{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 30px;
  background-color: #003D59;
}
.sec_sec04 .block_sec04_04 .sec04_04_cover div{
  width: 455px;
  margin-bottom: 20px;
  background-color: #fff;
}
.sec_sec04 .block_sec04_04 .sec04_04_cover .txt_ttl{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  height: 55px;
  line-height: 1.2;
  font-weight: bold;
  font-size: 1.8rem;
  background-color: #FFFFB6;
}
.sec_sec04 .block_sec04_04 .sec04_04_cover .txt{
  padding: 0 10px 20px;
  line-height: 1.7;
  font-size: 1.4rem;
}
.sec_sec04 .block_sec04_04 .txt02{
  padding: 25px 0 40px;
  line-height: 1.58;
  font-size: 2.4rem;
}
.sec_sec04 .block_sec04_04 .txt02 em{
  font-size: 2.8rem;
  color: #D3001A;
}
.sec_sec04 .block_sec04_04 .sec04_image{
  margin: 0 30px 50px;
  padding: 0 30px 30px;
  border: 2px solid #77B550;
}
.sec_sec04 .block_sec04_04 .sec04_image .ttl_h4{
  height: 50px;
  margin: 0 -30px 30px;
  line-height: 54px;
  font-size: 2.8rem;
  color: #fff;
  background-color: #77B550;
}

@media screen and (max-width : 767px) {
  .sec_sec04 .block_sec04_04 .ttl_h3{
    padding: 13% 0 5%;
  }
  .sec_sec04 .block_sec04_04 .txt01{
    padding: 0 5%;
    font-size: 1.0rem;
  }
  .sec_sec04 .block_sec04_04 .sec04_04_cover{
    padding: 3%;
  }
  .sec_sec04 .block_sec04_04 .sec04_04_cover div{
    width: 100%;
    margin-bottom: 5%;
  }
  .sec_sec04 .block_sec04_04 .sec04_04_cover .txt_ttl{
    height: auto;
    margin-bottom: 0;
    padding: 3%;
    font-size: 1.4rem;
  }
  .sec_sec04 .block_sec04_04 .sec04_04_cover .txt{
    padding: 3%;
    font-size: 1.2rem;
  }
  .sec_sec04 .block_sec04_04 .txt02{
    padding: 8% 3%;
    font-size: 1.2rem;
  }
  .sec_sec04 .block_sec04_04 .txt02 em{
    font-size: 1.4rem;
  }
  .sec_sec04 .block_sec04_04 .sec04_image{
    margin: 0 3% 8%;
    padding: 0 10px 3%;
  }
  .sec_sec04 .block_sec04_04 .sec04_image .ttl_h4{
    height: auto;
    margin: 0 -10px 5%;
    padding: 3%;
    line-height: 1.3;
    font-size: 1.4rem;
  }
  .sec_sec04 .block_sec04_04 .sec04_image .scroll_cover{
    overflow-x: scroll;
  }
  .sec_sec04 .block_sec04_04 .sec04_image .img{
    min-width: 600px
  }
}

/*---- block_sec04_05 ----*/
.sec_sec04 .block_sec04_05 .sec04_05{
  width: 940px;
  margin: 0 auto 50px;
  border-collapse:collapse;
}
.sec_sec04 .block_sec04_05 .sec04_05 th,
.sec_sec04 .block_sec04_05 .sec04_05 td{
  text-align: center;
  vertical-align: middle;
  line-height: 1.2;
  font-size: 1.8rem;
}
.sec_sec04 .block_sec04_05 .sec04_05 thead th{
  height: 57px;
  background-color: #D1D1D1;
  border-bottom: 1px solid #3A3A3A;
}
.sec_sec04 .block_sec04_05 .sec04_05 thead .empty{
  background: none;
}
.sec_sec04 .block_sec04_05 .sec04_05 thead .th01{
  width: 243px;
  color: #fff;
  background-color: #FEA70B;
  border-top: 12px solid #FEA70B;
  border-bottom: 1px solid #FEA70B;
  padding-bottom: 8px;
}
.sec_sec04 .block_sec04_05 .sec04_05 thead .th02{
  border-right: 1px solid #3A3A3A;
}
.sec_sec04 .block_sec04_05 .sec04_05 thead .th03{
  border-right: 1px solid #D1D1D1;
}
.sec_sec04 .block_sec04_05 .sec04_05 tbody th{
  width: 234px;
  color: #fff;
  background-color: #3A3A3A;
  border-bottom: 1px solid #fff;
}
.sec_sec04 .block_sec04_05 .sec04_05 tbody td{
  width: 233px;
  height: 65px;
  border-right: 1px solid #3A3A3A;
  border-bottom: 1px solid #3A3A3A;
}
.sec_sec04 .block_sec04_05 .sec04_05 tbody .td01{
  font-size: 2.0rem;
  color: #D3001A;
  border-left: 2px solid #FEA70B;
  border-right: 2px solid #FEA70B;
  border-bottom: 1px solid #FEA70B;
}
.sec_sec04 .block_sec04_05 .sec04_05 tbody tr:last-child .td01{
  border-bottom: 2px solid #FEA70B;
}

@media screen and (max-width : 767px) {
 .sec_sec04 .block_sec04_05 .table_cover{
    margin: 5% 3% 8%;
    overflow-x: scroll;
 }
  .sec_sec04 .block_sec04_05 .sec04_05{
    width: 400px;
    margin: 0;
  }
  .sec_sec04 .block_sec04_05 .sec04_05 th,
  .sec_sec04 .block_sec04_05 .sec04_05 td,
  .sec_sec04 .block_sec04_05 .sec04_05 tbody .td01{
    font-size: 1.2rem;
  }
  .sec_sec04 .block_sec04_05 .sec04_05 thead th{
    height: 40px;
  }
  .sec_sec04 .block_sec04_05 .sec04_05 thead .th01,
  .sec_sec04 .block_sec04_05 .sec04_05 tbody th,
  .sec_sec04 .block_sec04_05 .sec04_05 tbody td{
    width: 100px;
  }
  .sec_sec04 .block_sec04_05 .sec04_05 tbody td{
    height: 40px;
  }
}

/*---- block_sec04_06 ----*/
.sec_sec04 .block_sec04_06 .dl_sec04_06{
  display: flex;
  margin: 0 30px 30px;
  border: 2px solid #77B550;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dt{
  position: relative;
  width: 420px;
  height: 140px;
  padding: 20px 0 0 25px;
  background-color: #77B550;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dt:after{
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  top: 0;
  right: -16px;
  border-style: solid;
  border-width: 70px 0 70px 16px;
  border-color: transparent transparent transparent #77B550;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dt .txt_ttl{
  margin-bottom: 10px;
  font-size: 4.0rem;
  color: #fff;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dt .txt{
  line-height: 1.3;
  font-size: 1.6rem;
  color: #fff;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dd{
  padding: 20px 0 0 40px;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dd .charge{
  margin-bottom: 10px;
  font-size: 3.6rem;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dd .charge .num{
  line-height: 0.8;
  font-size: 8.5rem;
}
.sec_sec04 .block_sec04_06 .dl_sec04_06 dd .txt{
  font-size: 1.5rem;
}
.sec_sec04 .block_sec04_06 .box_point{
  position: relative;
  margin: 0 0 20px 30px;
  padding-left: 105px;
}
.sec_sec04 .block_sec04_06 .box_point:before{
  content: "POINT";
  position: absolute;
  display: inline-block;
  width: 80px;
  height: 34px;
  top: 0;
  left: 0;
  text-align: center;
  line-height: 34px;
  font-family: "ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.9rem;
  color: #fff;
  background: #FEA70B;
}
.sec_sec04 .block_sec04_06 .box_point:after{
  content: "";
  position: absolute;
  display: inline-block;
  width: 0;
  height: 0;
  top: 0;
  left: 80px;
  border-style: solid;
  border-width: 17px 0 17px 8px;
  border-color: transparent transparent transparent #FEA70B;
}
.sec_sec04 .block_sec04_06 .box_point .txt_ttl{
  line-height: 1.45;
  font-size: 2.2rem;
}
.sec_sec04 .block_sec04_06 .box_point .txt{
  line-height: 1.75;
  font-size: 1.6rem;
}
.sec_sec04 .block_sec04_06 .txt01{
  line-height: 1.58;
  font-size: 2.4rem;
}
.sec_sec04 .block_sec04_06 .txt01 em{
  font-size: 2.8rem;
  color: #D3001A;
}

@media screen and (max-width : 767px) {
  .sec_sec04 .block_sec04_06 .dl_sec04_06{
    display: block;
    margin: 0 3% 5%;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dt{
    width: auto;
    height: 70px;
    padding: 3% 5%;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dt:after{
    display: none;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dt .txt_ttl{
    margin-bottom: 0.5em;
    font-size: 2.0rem;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dt .txt{
    font-size: 1.0rem;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dd{
    padding: 5%;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dd .charge{
    margin-bottom: 0.5em;
    font-size: 1.8rem;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dd .charge .num{
    font-size: 4rem;
  }
  .sec_sec04 .block_sec04_06 .dl_sec04_06 dd .txt{
    font-size: 1.0rem;
  }
  .sec_sec03 .list_sec03 li em{
    font-size: 1.4rem;  
  }
  .sec_sec04 .block_sec04_06 .box_point{
    margin: 0 5% 5%;
    padding-left: 50px;
  }
  .sec_sec04 .block_sec04_06 .box_point:before{
    position: absolute; 
    width: 40px;
    height: 18px; 
    top: 3px;
    left: 0;
    line-height: 18px;  
    font-size: 1rem;  
  }
  .sec_sec04 .block_sec04_06 .box_point:after{
    top: 3px;
    left: 40px;
    border-width: 9px 0 9px 4px;
  }
  .sec_sec04 .block_sec04_06 .box_point .txt_ttl{
    padding-top: 0.2em;
    font-size: 1.4rem;
  }
  .sec_sec04 .block_sec04_06 .box_point .txt{
    font-size: 1.2rem;
  }
  .sec_sec04 .block_sec04_06 .txt01{
    padding: 0 5%;
    font-size: 1.2rem;
  }
  .sec_sec04 .block_sec04_06 .txt01 em{
    font-size: 1.4rem;
  }
}

/* ------------------------------
    sec_sec05
------------------------------ */
.sec_sec05{
  min-width: 1062px;
  padding-bottom: 50px;
  background-color: #EDEDED;
}
.sec_sec05 .box_voice{
  display: flex;
  justify-content: space-between;
  padding: 30px;
  background-color: #fff;
  border: 1px solid #D1D1D1;
}
.sec_sec05 .box_voice + .box_voice{
  margin-top: 30px;
}
.sec_sec05 .box_voice .img{
  width: 225px;
  margin-right: 30px;
}
.sec_sec05 .box_voice .txt_box{
  position: relative;
  width: 682px;
}
.sec_sec05 .box_voice .txt_ttl{
  margin-bottom: 20px;
  padding-bottom: 10px;
  font-size: 2.4rem;
  border-bottom: 2px solid #FEA70B;
}
.sec_sec05 .box_voice .txt{
  padding-bottom: 2em;
  line-height: 1.625;
  font-size: 1.6rem;
}
.sec_sec05 .box_voice .detail{
  position: absolute;
  min-width: 182px;
  right: 0;
  bottom: 0;
  padding: 8px 10px;
  font-size: 1.4rem;
  background-color: #EDEDED;
}

@media screen and (max-width : 767px) {
  .sec_sec05{
  min-width: 0;
    padding-bottom: 13.6%;
  }
  .sec_sec05 .box_voice{
    display: block;
    padding: 5%;
    text-align: right;
  }
  .sec_sec05 .box_voice + .box_voice{
    margin-top: 8%;
  }
  .sec_sec05 .box_voice .img{
    width: 70%;
    margin: 0 auto 5%;
  }
  .sec_sec05 .box_voice .txt_box{
    width: auto;
  }
  .sec_sec05 .box_voice .txt_ttl{
    margin-bottom: 1em;
    padding-bottom: 0.5em;
    line-height: 1.3;
    font-size: 1.4rem;
  }
  .sec_sec05 .box_voice .txt{
    font-size: 1.2rem;
  }
  .sec_sec05 .box_voice .detail{
    position: static;
    display: inline-block;
    min-width: 0;
    padding: 1% 5%;
    font-size: 1.2rem;
  }
}

/* ------------------------------
    sec_sec06
------------------------------ */
.sec_sec06{
  padding-bottom: 70px;
}
.sec_sec06 .dl_faq{
  padding: 30px;
  background: -moz-linear-gradient(top, #e6e6e6 0%, #ffffff 100%);
  background: -webkit-linear-gradient(top, #e6e6e6 0%,#ffffff 100%);
  background: linear-gradient(to bottom, #e6e6e6 0%,#ffffff 100%);
  border: 1px solid #D1D1D1;
}
.sec_sec06 .dl_faq + .dl_faq{
  margin-top: 20px;
}
.sec_sec06 .dl_faq dt{
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #D1D1D1;
}
.sec_sec06 .dl_faq dt .ico{
  margin-right: 20px;
}
.sec_sec06 .dl_faq dt .txt_q{
  line-height: 1.5;
  font-weight: bold;
  font-size: 1.8rem;
}
.sec_sec06 .dl_faq dd .txt_a{
  line-height: 1.6;
  font-size: 1.7rem;
}

@media screen and (max-width : 767px) {
  .sec_sec06{
    padding-bottom: 13.6%;
  }
  .sec_sec06 .dl_faq{
    padding: 5%;
  }
  .sec_sec06 .dl_faq + .dl_faq{
    margin-top: 5%;
  }
  .sec_sec06 .dl_faq dt{
    align-items: flex-start;
    margin-bottom: 0;
    padding-bottom: 0;
    border: none;
  }
  .sec_sec06 .dl_faq dt .ico{
    width: 8%;
    margin-right: 3%;
  }
  .sec_sec06 .dl_faq dt .txt_q{
    width: 89%;
    font-size: 1.2rem;
  }
  .sec_sec06 .dl_faq dd{
    margin-top: 5%;
    padding-top: 5%;
    border-top: 1px solid #D1D1D1;
  }
  .sec_sec06 .dl_faq dd .txt_a{
    font-size: 1.2rem;
  }
}

/* ------------------------------
    sec_sec07
------------------------------ */
.sec_sec07{
  min-width: 1062px;
  padding-bottom: 60px;
  background: url(../img/bg_check.png);
}
.sec_sec07 .inner{
  padding: 30px 30px 25px;
  background-color: #fff;
  border: 1px solid #D1D1D1;
}
.sec_sec07 .step_sec07{
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}
.sec_sec07 .step_sec07 li{
  position: relative;
  width: 280px;
  border: 1px solid #D1D1D1;
}
.sec_sec07 .step_sec07 li + li:before{
  content: "";
  position: absolute;
  display: block;
  width: 20px;
  height: 36px;
  top: 50%;
  left: -35px;
  background: url(../img/ico_arrow.png) no-repeat;
  background-size: 100% auto;
  transform: translateY(-50%);
}
.sec_sec07 .step_sec07 dt{
  display: flex;
  align-items: center;
  margin: -1px;
  background-color: #77B550;
}
.sec_sec07 .step_sec07 dt .ico{
  width: 57px;
}
.sec_sec07 .step_sec07 dt .txt_ttl{
  width: 223px;
  font-size: 2.4rem;
  color: #fff;
}
.sec_sec07 .step_sec07 dd{
  padding: 20px;
}
.sec_sec07 .step_sec07 dd .txt{
  line-height: 1.5;
  font-size: 1.8rem;
}
.sec_sec07 .txt01{
  line-height: 1.58;
  font-size: 2.4rem;
}
.sec_sec07 .txt01 em{
  font-size: 2.8rem;
  color: #D3001A;
}

@media screen and (max-width : 767px) {
  .sec_sec07{
    min-width: 0;
    padding-bottom: 13.6%;
  }
  .sec_sec07 .inner{
    padding: 3%;
  }
  .sec_sec07 .step_sec07{
    display: block;
    margin-bottom: 5%;
  }
  .sec_sec07 .step_sec07 li{
    width: auto;
  }
  .sec_sec07 .step_sec07 li + li{
    margin-top: 30px;
  }
  .sec_sec07 .step_sec07 li + li:before{
    width: 10px;
    height: 24px;
    top: -28px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
  .sec_sec07 .step_sec07 dt .ico{
    width: 40px;
  }
  .sec_sec07 .step_sec07 dt .txt_ttl{
    width: calc(100% - 40px);
    font-size: 1.4rem;
  }
  .sec_sec07 .step_sec07 dd{
    padding: 5%;
  }
  .sec_sec07 .step_sec07 dd .txt{
    font-size: 1.2rem;
  }
  .sec_sec07 .txt01{
    font-size: 1.2rem;
  }
  .sec_sec07 .txt01 em{
    font-size: 1.4rem;
  }
}

/* ------------------------------
    sec_sec08
------------------------------ */
.sec_sec08{
  min-width: 1062px;
  padding: 55px 0;
  background-color: #EDEDED;
}
.sec_sec08 .box_sec08{
  background-color: #fff;
  border: 1px solid #D1D1D1;
}
.sec_sec08 .box_sec08 + .box_sec08{
  margin-top: 50px;
}
.sec_sec08 .box_sec08 .ttl_h3{
  height: 80px;
  margin-bottom: 25px;
  line-height: 80px;
  font-size: 5.0rem;
  color: #fff;
  background-color: #003D59;
}
.sec_sec08 .box_sec08 .flex_sec08{
  display: flex;
  justify-content: space-between;
  padding: 0 30px 20px;
}
.sec_sec08 .box_sec08 .txt_box{
  width: 595px;
}
.sec_sec08 .box_sec08 .txt_box .table_sec08 th{
  padding-right: 1.5em;
  white-space: nowrap;
  font-weight: bold;
}
.sec_sec08 .box_sec08 .txt_box .table_sec08 th,
.sec_sec08 .box_sec08 .txt_box .table_sec08 td{
  line-height: 1.55;
  font-size: 1.8rem;
}
.sec_sec08 .box_sec08 .txt_box .txt{
  line-height: 1.55;
  font-size: 1.8rem;
}
.sec_sec08 .box_sec08 .img{
  width: 293px;
}

@media screen and (max-width : 767px) {
  .sec_sec08{
    min-width: 0;
    padding: 10% 0;
  }
  .sec_sec08 .box_sec08 + .box_sec08{
    margin-top: 8%;
  }
  .sec_sec08 .box_sec08 .ttl_h3{
    height: auto;
    line-height: 1;
    margin-bottom: 5%;
    padding: 3%;
    font-size: 2.2rem;
  }
  .sec_sec08 .box_sec08 .flex_sec08{
    display: block;
    padding: 0 5% 5%;
  }
  .sec_sec08 .box_sec08 .txt_box{
    width: auto;
    margin-bottom: 3%;
  }
  .sec_sec08 .box_sec08 .txt_box .table_sec08 th{
    white-space: nowrap;
  }
  .sec_sec08 .box_sec08 .txt_box .table_sec08 th,
  .sec_sec08 .box_sec08 .txt_box .table_sec08 td,
  .sec_sec08 .box_sec08 .txt_box .txt{
    line-height: 1.8;
    font-size: 1.2rem;
  }
  .sec_sec08 .box_sec08 .img{
    width: auto;
  }
}

/* ------------------------------
    sec_contact
------------------------------ */
.sec_contact{
  padding-bottom: 70px;
}
.sec_contact .ttl{
  margin-bottom: 45px;
}
.sec_contact .txt01{
    line-height:1.6;
  margin-bottom: 30px;
  font-size: 1.8rem;
}
.sec_contact .contact_cover{
  padding: 45px 45px 50px 50px;
  background-color: #EDEDED;
}
.sec_contact .txt02{
  margin-bottom: 5px;
  text-align: right;
  font-size: 1.2rem;
}
.sec_contact .att{
  font-weight: normal;
  color: #D3001A;
}
.sec_contact .dl_contact{
  font-size: 0;
}
.sec_contact .dl_contact + .dl_contact{
  margin-top: 25px;
}
.sec_contact .dl_contact dt{
  display: inline-block;
  width: 195px;
  line-height: 40px;
  vertical-align: top;
  font-weight: bold;
  font-size: 1.8rem;
}
.sec_contact .dl_contact dt label{
  padding-left: 0.5em;
  border-left: 5px solid #003D59;
}
.sec_contact .dl_contact dt .att{
  padding-left: 0.5rem;
}
.sec_contact .dl_contact dd{
  display: inline-block;
  width: 702px;
  vertical-align: top;
}
.confirm .sec_contact .dl_contact dd{
  font-size:1.8rem;
  line-height:1.6;
  padding-top:6px;
}
.confirm .back{
    display:block;
    background:#333;
    color:#fff;
    width:200px;
    font-size:1.6rem;
    font-family:"ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-align:center;
    margin:50px auto 0;
    padding:5px 0;
    cursor:pointer;
    transition: opacity 0.3s ease-out;
}
.confirm .back:hover{
    opacity:0.7;
}
.sec_contact .dl_contact dd input,
.sec_contact .dl_contact dd textarea{
  width: 100%;
  padding: 0 1%;
  font-size: 1.8rem;
  font-family: "メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
  background-color: #fff;
  border: 1px solid #D1D1D1;
}
.sec_contact .dl_contact dd input{
  height: 40px;
}
.sec_contact .dl_contact dd textarea{
  height: 200px;
  resize: none;
}
.sec_contact .btn_submit{
  display: block;
  width: 427px;
  height: 57px;
  margin: 50px auto 0;
  white-space: nowrap;
  text-indent: 1000%;
  overflow: hidden;
  border: none;
  background: url(../img/btn_submit.png);
  background-size: 100% auto;
  border-radius: 0;
  cursor: pointer;
}
.confirm .sec_contact .btn_submit{
    margin-top:20px;
}
.confirm .sec_contact .btn_submit{
  background: url(../img/btn_send.png);
  background-size: 100% auto;
}
.sec_contact .btn_submit::-webkit-search-decoration{
  display: none;
}

@media screen and (max-width : 767px) {
  .sec_contact{
    padding-bottom: 13.6%;
  }
  .sec_contact .ttl{
    margin-bottom: 5%;
  }
  .sec_contact .txt01{
    margin-bottom: 6%;
    font-size: 1.0rem;
  }
  .sec_contact .contact_cover{
    padding: 5% 5% 10%;
  }
  .sec_contact .dl_contact + .dl_contact{
    margin-top: 10%;
  }
  .confirm .sec_contact .dl_contact + .dl_contact{
    margin-top:5%;
  }
  .sec_contact .dl_contact dt{
    display: block;
    width: auto;
    margin-bottom: 1em;
    line-height: 1;
    font-size: 1.2rem;
  }
  .confirm .sec_contact .dl_contact dd{
    font-size:1.2rem;
    padding-top:0;
  }
  .sec_contact .dl_contact dt label{
    border-left: 3px solid #003D59;
  }
  .sec_contact .dl_contact dd{
    display: block;
    width: auto;
  }
  .sec_contact .dl_contact dd input,
  .sec_contact .dl_contact dd textarea{
    font-size: 1.2rem;
  }
  .sec_contact .btn_submit{
    width: 80%;
    height: 0;
    margin-top: 10%;
    padding-top: 10%;
    background-repeat: no-repeat;
  }
  .confirm .back{
    width:50%;
    font-size:1.1rem;
    margin:10% auto 0;
    padding:3px 0;
  }
  .confirm .sec_contact .btn_submit{
    margin-top:5%;
  }
}


/* ------------------------------
    footer
------------------------------ */
#footer{
  min-width: 1062px;
  height: 30px;
  padding-top: 10px;
  background-color: #3A3A3A;
}
.txt_copy{
  font-size: 1.1rem;
  color: #fff;
}
@media screen and (max-width : 767px) {
  #footer{
    min-width: 0;
    height: auto;
    padding: 3%;
  }
  .txt_copy{
    font-size: 0.8rem;
  }
}


/** thanks **/

.thanks.btn{
    width:300px;
    text-align:center;
    font-size:1.8rem;
    font-family:"ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin:0 auto;
}
.thanks.btn a{
    display:block;
    background: linear-gradient(to bottom, rgba(87,202,64,1) 0%,rgba(27,151,54,1) 100%);
    color:#fff;
    line-height:1.0;
    padding:10px 0;
    transition: opacity 0.3s ease-out;
}
.thanks.btn a:hover{
    opacity:0.7;
}
@media screen and (max-width : 767px) {
    .thanks.btn{
        width:auto;
        font-size:1.4rem;
    }
}

/* ------------------------------
    clearfix
------------------------------ */

.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */