@charset "UTF-8";
@CHARSET "utf-8";
/* 全体設定 */
/* #328439  midori 
*/
li {
  list-style: none;
}

body {
  font-size: 24px;
  line-height: 1.8;
  color: #42210B;
  font-family: "Noto Sans JP", Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

p {
  line-height: 1.5;
}

/***********タイポグラフィー*************/
h1 {
  font-size: 1em;
  color: #fff;
}

h1 span {
  font-size: 0.5em;
  display: block;
}

/*********** モジュール*******************/
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.alignleft {
  float: left;
}

.alignright {
  float: right;
  margin-left: 10px;
}

.bg_gray {
  background-color: #f1f0ec;
}

/*********** ヘッダー*******************/
.header {
  display: grid;
  grid-template-columns: 50% 25% 1fr;
 column-gap: 10px;
 padding-top: 10px;
 align-items: center;
}

.header-wrap{
  background: url(../images/bg_header.png);
  border-top: #5fa234 4px solid;
}


/***********メインビジュアル *******************/

section.pain{
  padding-bottom: 0px !important;
}


.main {
text-align: center;
line-height: 1;
}

.main img{
  max-width: 100%;
}


/* flow */
.flow ul {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 20px;
  row-gap: 20px;
  margin-bottom: 2rem;
}

.flow ul li{
  margin:2rem 0;
}


.flow ul li .wrap h4{
  text-align: left;
  color: #fff000;
  background-color: #7cc576;
  border-radius: 20px 20px  0 0;
 border-top:10px solid #7cc576;
 border-left:10px solid #7cc576;
 border-right:10px solid #7cc576;
font-size: 3rem;
font-weight: bold;
font-style: italic;
padding: .5em 0 .5em 2em;
font-size: 2rem;
}

.flow ul li .wrap .body{
  background-color: #ffffed;
  border-radius: 0px 0px  20px 20px;
  border-bottom:10px solid #7cc576;
  border-left:10px solid #7cc576;
  border-right:10px solid #7cc576;
  padding: .5em .5em;
  min-height: 177px;
}


.flow ul li .wrap .body p{
  color: #282828;
  font-weight: bold;

}


section.pain{
  line-height: 0.9;
}
.triangle-down {
  width: 0;
  height: 0;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  border-top: 22px solid orange;
margin: auto;  
}

/***********理由*******************/
.reason .box{
  border-radius: 20px;
  margin-bottom: 1.5rem;
}
@media (min-width:992px){

  .reason .box .text{
padding-left: 150px;
  }

}



.reason .box .ttl{
  display: grid;
  grid-template-columns: 1fr 9fr;
  column-gap: 10px;
  margin-bottom: 1.5rem;
}

.reason .box .ttl h4{
  font-size: 3rem;
  font-weight: bold;
  display: flex;
  align-items: center;
}



/***********メリット*******************/
.merit {
  background: url(../images/bg_koushi.png);
  padding: 1.5rem 0 1.5rem;
}

.h3_ttl {
  background: url(../images/ttl_bg.png);
  position: relative;
  padding: 1em 0;
  margin-bottom: 5rem;
}

.h3_ttl:after{
  content: "";
  background: url(../images/h3_arrow.png) no-repeat center;
  width:58px;
  height:64px;
position: absolute;
left:calc(50% - 29px);
bottom: -20px;
z-index: -1;
}

.h3_ttl h3{
  color: #fff;
  text-align: center;
font-size: 3rem;
font-weight: bold;
}

/***********流れ*******************/

/* 料金 */

h3.fee-title{
  background-color: #e7ffe5;
  font-size: 2.7rem;
  font-weight: bold;
  margin-bottom: 1rem;
  padding: .5em .5em;
  color: #1d4c00;
}



table.fee.table-striped tr {
  background-color: #e3f7e1;
}

table.fee.table-striped tbody tr:nth-of-type(odd) {
  background-color: #fffde4;
}

table.fee{
  width: 100%;
  margin-bottom: 2rem;
}

table.fee thead th{
  font-size: 2.5rem;
  padding: .5rem .5rem;
  font-weight: bold;
}

table.fee tbody th{
  font-weight: bold;
  font-size: 2.5rem;
  padding: .5rem .5rem .5rem .5rem;

}

table.fee tbody td{
  font-size: 1.5rem;
  padding: .5rem .5rem .5rem 1.5rem;

}

table.fee tbody td.fee{
  color: rgb(195, 0, 0);
  font-size: 2.5rem;
  font-weight: bold;
}



/* お客様の声 */

.voice .box .img{
  text-align: center;

}
.voice .box{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  column-gap: 20px;
  row-gap: 40px;
  margin-bottom: 2rem;
  grid-template-areas:
  "order1 order2 order2 order2 order2"
  "order3 order3 order3 order3 order4"
 ;

}
.order1{
  grid-area: order1;
}
.order2{
  grid-area: order2;
}


.order3{
  grid-area: order3;
}


.order4{
  grid-area: order4;
}






.voice .box .fukidashi{
  background-color: #f6ffe9;
  padding: .8em;
  border-radius: 10px;
  border:4px solid #ff7800;
  position: relative;
}


.voice .box .fukidashi p{
  font-size: 2rem;
}

.voice .box .fukidashi:after{
  content: "";
  position: absolute;
left:-20px;
top:calc( 50% - 10px);
  border-style: solid;
  border-width: 10px 20px 10px 0;
  border-color: transparent #ff7800 transparent transparent;
}

.voice .box .fukidashi.right:after{
  content: "";
  position: absolute;
left:auto;
right:-20px;
top:calc( 50% - 10px);
  border-style: solid;
  border-width: 10px 0 10px 20px;
  border-color: transparent transparent transparent #ff7800;
}










.voice .box .fukidashi h4{
  margin-bottom: 1.5rem;
  font-size: 3rem;
  font-weight: bold;
}





/* 問い合わせフォーム */
#main form th {
  opacity: 1;
}

textarea {
  padding: 1em;
  width: 90%;
}

input[type=submit] {
  padding: 0.3em;
}

input[type=text], input[type=tel], input[type=mail] {
  width: 90%;
}

form table.table {
  width: 100%;
  margin: auto;
}

form table.table th, form table.table td {
  display: block;
}



form table span.btn-danger{
  background: #ff4d4d;
  border-radius: 5px;
  color: #fff;
  font-size: .4em;
  font-weight: normal;
  float: right;
  padding: 4px 8px 5px;
  margin: -2px 0 0;
}



