/* reset */
/*body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	box-sizing: border-box;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

input, select {
    vertical-align:middle;
}



body {
    font-family: 'M PLUS 1p', sans-serif;
    -webkit-text-size-adjust: 100%;
    line-height: 1.6;
    font-size: 100%;
    color: #212121;
    background-color: #ffffff;

}

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
body {font-size:113%;}
}
/* -------------end------------- */


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
body {font-size:100%;}
}
/* -------------end------------- */


ol, ul{
    list-style:none;
}
fieldset, img{
     border:0;
}

caption, th{
    text-align: left;
}
address, caption, cite, code, dfn, em, strong, th, var{
    font-style: normal; 
    font-weight: normal;
}

hr{
	display:none;
}

html {
	margin-bottom:1px;
	height:100%;
}

* {
    box-sizing: border-box;
}

/* line style　------------------------------*/
/* -----------------------------------------*/

a img{
	border-style:none;
}

a:hover {
opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/* link style ------------------------------*/
/* -----------------------------------------*/
a:link {
	color: #212121;
	text-decoration: none;	
}
a:visited {  color: #212121;
	text-decoration: none;	}


a:active {
	color: #ccc;
	text-decoration: none; 
}

.link_line{
	text-decoration: underline;
}

img, video, object {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	border: none;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}


a:active, a:focus,input:active, input:focus{outline:0;}

img{
	width: 100%;
	height: auto;
}

iframe {
    vertical-align: bottom;
}

/*================================================
 *  ヘッダー
 ================================================*/
 
 .keyv_logo_flex {
padding-left: 5px;
box-sizing: border-box;
width: 100%;
z-index: 1000;
background-color: #ffffff;
display: flex; /* 追加：ロゴと他の要素を横並びに */
align-items: center; /* 追加：縦方向中央揃え */
 max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
  
.keyv_logo_flex img {
  max-height: 100%;    /* 高さは親の高さまで */
  width: auto;         /* アスペクト比を保持 */
  max-width: none;     /* 横幅制限なしにしておく */
  display: block;}


 
 
.keyv_logo_flex > li{display: flex;
 height: 80px;
 box-sizing: border-box;
padding-top: 3px;
padding-bottom: 3px;}




/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.keyv_logo_flex {
position: fixed;
top: 0;
left: 0;
right: 0;
}
  
.keyv_logo_flex > li{height: 56px;}



}
/* -------------end------------- */

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
 .keyv_logo_flex {
display: none;
  }
  
	}
/* -------------end------------- */

/* ========================================

    ■ Header■ Keyv

======================================== */
/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.main_v_outside{
    background-image: url("../img/main_bg.webp");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    
}
}
/* -------------end------------- */


.main_v {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    position: relative;}
    
    /* 小さい画面用の設定-------------- */
@media (max-width:767px){
  #keyv {

    margin-top: 56px;}
  

}
/* -------------end------------- */
    

/*================================================
 * グロナビ固定
 ================================================*/

.nav_fixed {
		position:fixed;
		top:0;
		left:0;
z-index: 10000;}



/* ========================================

    ■ common_item

======================================== */
.contents{width: 98%;
max-width: 1000px;
margin-left: auto;
margin-right: auto;
word-wrap: break-word;
overflow-wrap: break-word;


}
/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.contents{width: 90%;}
}
/* -------------end------------- */


.common_lead{
margin-bottom: 20px;
font-weight: 500;
text-align: center;
font-size: 125%;}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.common_lead{padding-top: 20px;
margin-bottom: 20px;
text-align: left;
font-size: 100%;}
}
/* -------------end------------- */

.common_flex_box{display: flex;
justify-content: space-between;}

.common_flex_box li{width: 48%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.common_flex_box{flex-wrap: wrap;}

.common_flex_box li{width: 100%;}

.common_flex_box li:first-child{margin-bottom: 20px;}

}
/* -------------end------------- */


.jirei_title_wrap{ background-image: url("../img/jirei_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    
}

.common_title_inner{width: 100%;
margin-left: auto;
margin-right: auto;
/*max-width: 1280px;*/
}

.voice_title_wrap{ background-image: url("../img/voice_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    
}

.voice_kuchikomi{position: absolute;
top:10px;
right: 150px;
width:10%; }

.case_title_wrap{ background-image: url("../img/case_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    
}

.report_title_wrap{ background-image: url("../img/report_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    
}



.strengths_title_wrap{ background-image: url("../img/strengths_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;}
    
.price_title_wrap{ background-image: url("../img/price_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;}
    
.mailform_title_wrap{ background-image: url("../img/contact_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;}
    
.send_title_wrap{ background-image: url("../img/send_title_pc_bg.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;}




/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.jirei_title_wrap{display: none;}
}
/* -------------end------------- */




/* ========================================

    ■ 事例

======================================== */
.jirei_wrap{padding-bottom: 50px;}

/* 中央以外のスライド */
.slick-img {
height: auto;
opacity: .5; /* スライドを薄くする */
transform: scale(.8); /* スライドのサイズを80%にする */
transition: opacity .5s, transform .5s; /* スライド透過率と拡大のアニメーション時間を0.5秒に設定 */
margin-bottom: 10px;
box-sizing: border-box;

}

/* 中央のスライド */
.slick-center.slick-img {
  opacity: 1; /* 中央のスライドは透過しない */
  transform: scale(1); /* 中央のスライドは小さくしない */
}

.slick-dotted.slick-slider{margin-bottom: 0px!important;}

.jirei_headline{
margin-bottom: 10px;
background-color: #28A836;
text-align: center;
color: #ffffff;
    padding-top: 5px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 5px;
    border-radius: 6px;
}

.jirei_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 5px;
}



.jirei_flex > li:nth-child(2) {
  width: 10%;
  text-align: center;
}

.jirei_flex > li:first-child,
.jirei_flex > li:last-child {
  width: 45%;
  position: relative; /* 疑似要素の配置に必要 */
}

/* before画像にアイコン */
.jirei_flex > li:first-child::before {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
width: 60%;
height: 19.89%;/* 61 ÷ 184 ≒ 0.3315（＝ 高さは幅の約33.15%）高さ = 60% × 0.3315 ≒ 19.89% */
  background-image: url("../img/icon_before.png");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
}

/* after画像にアイコン */
.jirei_flex > li:last-child::before {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
width: 60%;
height: 19.89%;/* 約26.52% */
  background-image: url("../img/icon_after.png");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
}



.slide>span{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  background: #fff;
  color: #3498db;
  font-size: 36px;
  font-weight: bold;
  margin: 0 10px; /*★*/
}
.slider-thumb{
  margin-top: 20px;
}
.slider-thumb .slide>span{
  font-size: 20px;
  height: 60px;
}

/* arrow */
.slick-arrow{
  z-index: 2;
  top: 50%;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border-top: 3px solid #3498db;
  border-right: 3px solid #3498db;
  opacity: .8;
}
.slick-arrow::before{
  content: '';
}
.slick-prev{
  left: 30px;
  transform: rotate(-135deg);
}
.slick-next{
  right: 30px;
  transform: rotate(45deg);
}
/* dots */
.slick-dots{
  bottom: -25px;
}
.slick-dots li,
.slick-dots li button,
.slick-dots li button::before{
  width: 12px;
  height: 12px;
}
.slick-dots li{
  margin: 0 7px;
}
.slick-dots li button{
  background-color: #fff;
  opacity: .8;
  border-radius: 100%;
}
.slick-dots li.slick-active button{
  opacity: .4;
}
.slick-dots li button::before{
  content: '';
}



/* ========================================

    ■ お客様の声

======================================== */
.voice_wrap{padding-bottom: 50px;
background-color: #7ECEF4;
background-color: rgba(126,206,244,0.30);}

.voice_title_wrap_sp{position: relative;}

.voice_kuchikomi_sp{position: absolute;
top:10px;
right: 10px;
width:25%; }

.voice_lead{width: 80%;
margin-left: auto;
margin-right: auto;
margin-bottom: 20px;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.voice_lead{width: 100%;
margin-bottom: 0px;}
}
/* -------------end------------- */




/* ========================================

    ■ こんな症状

======================================== */
.case_wrap{/*padding-bottom: 50px;*/
background-color: #FAF3E9;}

.case_flex_box{display: flex;
justify-content: center;
flex-wrap: wrap;}

.case_flex_box li{width: 33%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.case_flex_box li{width: 50%;}
}
/* -------------end------------- */

.contact_wrap {
  background: linear-gradient(to bottom, transparent 20%, #7F6300 20%);
  padding-bottom: 20px;
padding-top: 10px;
}



.contact_wrap_inner {
width: 100%;
margin-left: auto;
margin-right: auto;
}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
	.contact_wrap {
  padding-bottom: 10px;
padding-top: 10px;
}
	
.contact_wrap_inner {
width: 100%;

}
}
/* -------------end------------- */



/* ========================================

    ■ 報告書関連
    
======================================== */
.report_wrap{padding-bottom: 50px;
background-color: rgba(158,201,58,0.50);}

.report_dl{
margin-bottom: 20px;
}

.report_dl dt{
    text-align: center;
    font-size: 138%;
    padding-top: 10px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 10px;
    background-color: #FFCE2B;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    font-weight: 700;
    line-height: 1.4;
    
}
.report_dl dd{
    padding-top: 20px;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 40px;
    background-color: #ffffff;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.report_dl dd{
    padding: 20px;
    background-color: #ffffff;
}
}
/* -------------end------------- */

.report_title{margin-bottom: 10px;
text-align: center;
font-size: 125%;
font-weight: 500;
color: #ff4002;
line-height: 1.4;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.report_title{font-size: 107%;}

}
/* -------------end------------- */



/* ========================================

    ■ 強み
    
======================================== */
.strengths_wrap{padding-bottom: 50px;}


.strengths_dl dt {
    color: #0068B6;
    font-size: 150%;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
    position: relative;
    padding-left: 45px; /* 画像の幅 + 余白 */
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.strengths_dl dt {
font-size: 125%;
padding-left: 50px; /* 画像の幅 + 余白 */
}

}
/* -------------end------------- */



/* 疑似要素で画像を表示 */
.strengths_dl dt::before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    width: 35px;     /* 画像の幅 */
    height: 50px;    /* 画像の高さ */
    background-image: url("../img/strengths_01.png");
    background-size: contain; /* 画像を要素に収める */
    background-repeat: no-repeat;
    background-position: center;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.strengths_dl dt::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 43px;     /* 画像の幅 */
    height: 60px;    /* 画像の高さ */
    background-image: url("../img/strengths_01.png");
    background-size: contain; /* 画像を要素に収める */
    background-repeat: no-repeat;
    background-position: center;
}


}
/* -------------end------------- */

.strengths_dl_2 dt::before {
background-image: url("../img/strengths_02.png");
}

.strengths_dl_3 dt::before {
background-image: url("../img/strengths_03.png");
}

.strengths_dl dd{
padding-bottom: 20px;
margin-bottom: 20px;
border-bottom: 1px solid #0068B6;
}

.strengths_dl_3 dd{
padding-bottom: 0px;
margin-bottom: 0px;
border-bottom: none;
}

.strengths_dl_3 dd img{
width: 70%;
margin-left: auto;
margin-right: auto;
display: block;
}



/* ========================================

    ■ WEBキャンペーン
    
======================================== */
.price_wrap{padding-bottom: 50px;
background-color: rgba(255,250,204,1.00);}


.price_dl{
margin-bottom: 20px;
}


.price_dl dt{
    text-align: center;
    font-size: 138%;
    padding-top: 10px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 10px;
    background-color: #72af2d;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    font-weight: 700;
    line-height: 1.4;
    color: #ffffff;
    
}
.price_dl dd{
padding-top: 20px;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 40px;
    background-color: #ffffff;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.price_dl dd{
    padding: 20px;
    background-color: #ffffff;
}
}
/* -------------end------------- */

/* .price_flex_01-------------- */
.price_flex_01{display: flex;
justify-content: space-between;
margin-bottom: 20px;}

.price_flex_01 li:first-child{width: 23%;}
.price_flex_01 li:last-child{width: 75%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){

.price_flex_01{
margin-bottom: 0px;}

.price_flex_01 li:first-child{width: 33%;}
.price_flex_01 li:last-child{width: 65%;
font-size: 88%;
line-height: 1.4;}

}
/* -------------end------------- */


/* .price_flex_02-------------- */

.price_flex_02{display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;}

.price_flex_02 li{width: 50%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.price_flex_02 li{width: 100%;}
.price_flex_02 li:first-child{margin-bottom: 10px;}
}
/* -------------end------------- */


/* .price_flex_03-------------- */

.price_flex_03{display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: flex-end;}

.price_flex_03 li{width: 50%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.price_flex_03 > li{width: 100%;
}
.price_flex_03 > li:first-child{margin-bottom: 10px;}
}
/* -------------end------------- */

/* .price_flex_04-------------- */

.price_flex_04{display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;}

.price_flex_04 li{width: 48%;}

.price_flex_04 > li:last-child{font-size: 80%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.price_flex_04 > li{width: 100%;
}
.price_flex_04 > li:first-child{margin-bottom: 10px;}
}
/* -------------end------------- */


/* .price_flow-------------- */

.price_flow > li {
    background-color: #ffd900;
    margin: 0 auto 25px; /* 下に余白を追加して間隔を広く */
    position: relative;
    padding-top: 5px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 5px;
    font-weight: bold;
    border-radius: 6px;
    width: 100%;
}

/* 矢印をliの下に表示 */
.price_flow > li:not(:last-child)::after {
  content: "\f063"; /* Font Awesomeの下向き矢印 */
  font-family: "Font Awesome 5 Free"; /* Font Awesomeのフォント指定 */
  font-weight: 900; /* Free Solidなら900 */
  position: absolute;
  bottom: -25px; /* 矢印をもっと下へ */
  left: 50%;
  transform: translateX(-50%);

}

.price_flow > li:last-child {
margin: 0 auto 0px; /* 下に余白を追加して間隔を広く */
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.price_flow {
margin-bottom: 20px;
}

}
/* -------------end------------- */



/* .price_step2_flex-------------- */

.price_step2_flex {
display: flex;
align-items: center;
}

.price_step2_flex > li:first-child {
width: 35%;
}

.price_step2_flex > li:last-child {
width: 65%;
font-size: 80%;
font-weight: 400;
line-height: 1.4;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.price_step2_flex {
flex-wrap: wrap;
}

.price_step2_flex> li:first-child {
width: 100%;
}

.price_step2_flex > li:last-child {
width: 100%;
}

}
/* -------------end------------- */



/* ========================================

    ■ ごあいさつ
    
======================================== */
.hello_wrap{padding-bottom: 80px;
background-color: #ffffff;}



.hello_lead{text-align: center;
font-size: 150%;
font-weight: 700;
line-height: 1.4;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.hello_lead{font-size: 125%;
padding-top: 20px;
}

}
/* -------------end------------- */

.hello_c_name{text-align: center;
font-size: 300%;
margin-bottom: 20px;
font-weight: 800;
color: #ff4002;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.hello_c_name{font-size: 225%;}

}
/* -------------end------------- */



.hello_txt{
font-weight: 500;
line-height: 1.8;
}

.hello_txt span{
border-bottom: 1px dashed #e9a72c;}

.orange{color: #ff4002;}

.hello_lead2{text-align: center;
font-size: 150%;
font-weight: 700;
color: #ff4002;}

.hello_flex_box{display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;
margin-bottom: 30px;}

.hello_flex_box li:first-child{width: 35%;}

.hello_flex_box li:last-child{width: 60%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.hello_flex_box li:first-child{width: 100%;}

.hello_flex_box li:last-child{width: 100%;}

.hello_mark{
width: 70%;
margin-left: auto;
margin-right: auto;
display: block;
margin-bottom: 20px;
}

.hello_lead2{font-size: 112%;}



}
/* -------------end------------- */


/* ========================================

    ■ お問合せ
    
======================================== */
.mailform_wrap{padding-bottom: 80px;
background-color: #ffffff;}



/* ========================================

    ■ footer

======================================== */
#footer {
position: relative;
    padding-top: 30px;
    padding-bottom: 220px;
    background-color: #fdf1be;

}

#footer::before {
    content: "";
    position: absolute;
    top: -40px; /* 適宜調整 */
    left: 0;
    width: 100%;
    height: 40px; /* 画像の高さに合わせる */
    background-image: url(../img/footer_house.png);
    background-repeat: repeat-x;
    background-position: top;
    background-size: auto;
    z-index: 1;
}


.footer_txt_box{
position: relative;
text-align: center;
width: 50%;
margin-left: auto;
margin-right: auto;
margin-bottom: 20px;}

.footer_logo{width: 80%;
margin-bottom: 10px;
margin-left: auto;
margin-right: auto;}


.bt_web {
background-color: #FF6347;
    border-radius: 10px;
    text-align: center;
    color: #ffffff;
    padding-top: 7px;
    padding-bottom: 7px;
-webkit-transition: all .3s;
	transition: all .3s;

	border-radius: 6px;
    width: 20em;
    margin-left: auto;
    margin-right: auto;
}
.bt_web a {
	color: #ffffff;
	display: block;
}
.bt_web:hover {
	-webkit-transform: translateY(-5px);
	-ms-transform: translateY(-5px);
	transform: translateY(-5px);
}

.line_flex{margin-bottom: 30px;
color: #00B900;
display: flex;
justify-content: center;
align-items: center;}

.line_title{font-size: 138%;
font-weight: 700;}

.line_flex li:first-child{
padding-right: 10px;}

.line_flex li:last-child{width: 16em;
}


#copyright {
    text-align: center;
    font-size: 75%;
}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.footer_txt_box{
width: 100%;}

.line_flex{flex-wrap: wrap;}

.line_title{font-size: 125%;}

.line_flex li:first-child{
padding-right: 0px;
width: 100%;
margin-bottom: 10px;
text-align: center;}

.line_flex li:last-child{width: 20em;
}


}
/* -------------end------------- */














/* ====================================================
　pagetop
==================================================== */

.pagetop {
    display: none;
    position: fixed;
    bottom: 200px;
    right: 10px;
	z-index: 1000;
}
.pagetop a {
    display: block;
   color: #CEC4A5;
    font-size: 300%;
    
}
.pagetop a:hover {
display: block;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
	
	.pagetop {
bottom: 130px;
}
	

.pagetop a {font-size: 200%;}

}
/* -------------end------------- */

/* ====================================================
　page_btm_fixed
==================================================== */
#page_btm_fixed{
position: fixed;
z-index: 99999;
background-color: #7F6300;
width: 100%;
	height: 186px;
}

.page_btm_fixed_outer_flex{display: flex;
justify-content: center;
align-items: center;
max-width: 1000px;
margin-left: auto;
margin-right: auto;
}


.page_btm_fixed_outer_flex > li:first-child
{text-align: center;
/*margin-bottom: 10px;*/
font-weight: 500;
color: #ffffff;
font-size: 107%;
width: 40%;
}

.page_btm_fixed_outer_flex > li:last-child
{width: 60%;

}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
	#page_btm_fixed{
	height: 140px;
}

	
.page_btm_fixed_outer_flex{flex-wrap: wrap;

}



.page_btm_fixed_outer_flex > li:first-child
{
display: none;

font-size: 88%;
width: 100%;
padding-bottom: 5px;
padding-top: 5px;}

.page_btm_fixed_outer_flex > li:last-child
{width: 100%;

padding-bottom: 5px;
padding-top: 5px;
}


}
/* -------------end------------- */



.page_btm_fixed_flex{display: flex;
justify-content: space-between;
width: 100%;
margin-left: auto;
margin-right: auto;}

.page_btm_fixed_flex > li{
width: 49%;
background-color: #FF4002;
border-radius: 6px;
padding-left: 10px;
 padding-right: 5px;
  padding-bottom: 10px;
 padding-top: 10px;
/* padding-bottom: 5px;
 padding-top: 5px;*/
 /*コレ*//*display: flex;*/
    /*コレ*//*align-items: center;*/
    /*line-height: 1.0;*/

    font-size: 107%;
/*    font-size: 94%;*/

    font-weight: 700;
}


.page_btm_fixed_flex > li:first-child{
 /*コレ*/display: flex;
    /*コレ*/align-items: center;
}

.page_btm_fixed_flex > li:first-child a::before{
font-family: "Font Awesome 5 Free";
content: "\f0e0";
font-weight: 900;
padding-right: 5px;
   }
   

.tel_flex{
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
   }
   
      
.tel_flex > div:first-child{
width: 65%;
   }
   
.tel_flex > div:last-child{
width: 35%;
font-size: 65%;
font-weight: 500;
line-height: 1.2;
   }
   
.tel_flex > div:first-child::before{
font-family: "Font Awesome 5 Free";
content: "\f879";
font-weight: 900;
padding-right: 5px;
   }

/* aタグをliの高さに合わせる */
.page_btm_fixed_flex > li > a {
color: #fff;

}



.page_btm_tel_time{font-size: 60%;
font-weight: 500;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.tel_flex{
flex-wrap: wrap;
}
   
      
.tel_flex > div:first-child{
width: 100%;
   }
   
.tel_flex > div:last-child{
width: 100%;
font-size: 65%;
font-weight: 500;

   }

}
/* -------------end------------- */





/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.page_btm_fixed_flex{

}

.page_btm_fixed_flex > li{
font-size: 94%;
}

.page_btm_fixed_flex_case{
width: 100%;

}

.page_btm_fixed_flex_case > li{
font-size: 94%;
}



}
/* -------------end------------- */


/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.page_btm_fixed_flex_case > li{
font-size: 125%;
}
	}
/* -------------end------------- */








/* 大きい画面用の設定-------------- */
@media (min-width:768px){

#link_home,
#link_jirei,
#link_voice,
#link_check,
#link_report,
#link_price,
#link_strengths,
#link_hello,
#link_mailform{
padding-top: 40px;
margin-top:-40px;
}
}
/* -------------end------------- */
  /* 小さい画面用の設定-------------- */
@media (max-width:767px){
#link_home,
#link_jirei,
#link_voice,
#link_check,
#link_report,
#link_price,
#link_strengths,
#link_hello,
#link_mailform{
padding-top: 56px;
margin-top:-56px;
}

}
/* -------------end------------- */



/* PC向けレイアウトの指定：481px以上では固定レイアウト */
.miniimage {
    display: none;
}  /* miniを非表示 */
.bigimage {
    display: block;
    line-height: 0px;
} /* bigを表示 */

@media screen and (max-width: 480px) {
.miniimage {
    display: block;
    line-height: 0px;
} /* miniを表示 */
.bigimage {
    display: none;
}   /* bigを非表示 */
}

/*  PCのみに表示するメニュー*/
.only_smt { display: none; }  /* miniを非表示 */
.only_pc  { display: block; 
} /* bigを表示 */
	
/*  スマホのみに表示するメニュー*/
@media only screen and (max-width: 768px) {
.only_smt {
	display: block;
	
} /* miniを表示 */
.only_pc  { display: none; }   /* bigを非表示 */
}


/************************************
送信完了
*************************************/

.send_wrap{padding-bottom: 80px;
background-color: #ffffff;}



.thanks_img{width:30%;
margin-left: auto;
margin-right: auto;
}


/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.thanks_img{width: 50%;
margin-left: auto;
margin-right: auto;
}
	}
/* -------------end------------- */





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




.slider_voice .slick-img {
  height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: center; /* 画像を中央に */

}

.slider_voice .slick-img img {
  width: auto;
  margin: 0 auto;
	
margin-bottom: 10px;}
.slider_voice .slick-img {
opacity: 1.0; /* スライドを薄くする */

}

.voice_headline{
margin-bottom: 10px;
padding-bottom: 10px;
border-bottom: 1px solid #ccc;

}


/* Remodal を最前面に */
.remodal,
.remodal-wrapper {
    z-index: 99999 !important;
}

.remodal-overlay {
    z-index: 99998 !important;
}


