@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
*, *: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;
}
a:hover img {
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
}
a{
margin:0;
padding:0;
text-decoration:underline;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#0066ff;
}
#header-container-in .wrap {
	padding:5px;
}
.clearfix:after{
content:"";
display:block;
clear:both;
}


/* text */
.f120 {
	font-size:120%;
}
.f120 {
	font-size:150%;
}
.txt-pink {
	color:#fa5692;
}
.txt-red {
	color:#ed4b40;
}
.txt-green {
	color:#59900a;
}
.uline {
	text-decoration:underline;
}
.header-container, .main, .sidebar, .footer {
    background-color: transparent;
}
.header-container.fixed-header{
    background-color: #FFF;
}
.logo-menu-button {
    display: inline !important;
    float: left;
    margin: 1%;
}
.navi {
    background-color: transparent;
}
#navi .navi-in>ul>li.btn001 {
	width:225px;
}
#navi .navi-in>ul>li.btn001 a {
	background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2025/01/btn001.png") no-repeat 0 0;
	text-indent:-99999px;
	width: 225px;
}
.navi-in a:hover {background:transparent;
	color:#ffbe62;
}
.fa-headset { color:#e93c2e !important:}
.caption-wrap {
	font-size:95%;
}
.home {	background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg01.gif") no-repeat center top;}

.home #content .wrap {
    width: 100%;}
.home #content .wrap .main {
 padding: 0;}
.home #content .wrap .main section {
	clear:both;
}
.home #content .wrap .main section .inner{
width: 1023px;
margin:0 auto;}

.home .article h1.entry-title {
display: none;
}
.home .article h2 {
    background-color: transparent !important;
}
.home .article h2:after {
	display:none;}
.home .article h3 {
border-left: 0;
    border-right: 0;
    border-top: 0;
    border-bottom: 0;
    padding: 5px;
	background-color: transparent !important;
}
.home .article h3:before {
	display:none;}
.home section {
	padding:8% 0;
	margin-bottom:0;
}
.home section.main-img {
	background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg02.gif") no-repeat center bottom;
		padding: 0;
}
.home section.nayami {
	background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg03.gif") no-repeat center center;
	background-size:auto 100%;
}
.home section.low,
.home section.soudan {
	background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg04.gif") no-repeat center center;
	background-size:auto 100%;
}
.home section.suggest {
	background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg05.gif") repeat-x center bottom;

}
.suggest01,
.suggest02 {background:#ffffda;
	padding:3% 3% 0 3%;
	width:48%;
	float:left;
	min-height:310px;
	margin-bottom:3%;
}
.suggest01 {
	margin-right:4%;
}
.suggest01 h3,
.suggest02 h3 {color:#d88e04;
	padding:0 0 0 70px !important;
}
.suggest01 h3 {background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/num01.png") no-repeat 0 0 !important;
}
.suggest02 h3 {background: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/num02.png") no-repeat 0 0 !important;
}
.home section.service {
	background: #f4fbd6;
}
.service01 {
	border:#90b26f 3px solid;
border-radius: 10px;
	padding:3% 3% 0 3%;
	background:#FFF;
	margin-bottom:3%;
}
.service01 .txt-left {
	width:65%;
	float:left;
}
.service01 h3 {
	border-bottom:#90b26f 3px solid !important;
	padding-left:0;
}

.service01 .img-right {
	width:30%;
		float:right;
}
.home section.price {
	background-image: url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg01.gif"), url("https://greview.ad-souken.co.jp/wp-content/uploads/2024/11/bg02.gif");
	background-position:center top,center bottom;
	background-repeat:no-repeat, no-repeat ;
		text-align:center;
}
.price01 {
	background:#fff2d9 ;
	border-radius:15px;
	padding:3%;
margin-bottom:3%;
}
.price01 strong span {
	font-size:150%;
}
.home section.price img.alignright {
    display: inline;
    margin:-180px 0 1em 1.5em;
}
.home section.flow{
	background: #eef4e6;
}
.home section.flow .inner{
	background: #FFF;
	border-radius: 10px;
	padding:5%;
}



/* stepbar */
.stepbar {
display: flex;
flex-direction: row;
gap: 16px;
}
.stepbar p {
	margin-bottom:1em;
}
.stepbar h3 {
	border:0;
	padding:10px 0 0 0 !important;
	margin-bottom:0;
}
.stepbar ol {
flex-direction: column;
display: flex;
align-items: flex-start;
justify-content: space-around;
gap: 24px;
}
.stepbar ol li {
position: relative;
z-index: 2;
width: calc(100% / 4 - 24px);
display: flex;
justify-content: center;
flex-direction: row;
width: 100%;
gap: 16px;
padding: 6px 4px;
align-items: stretch;
}
.stepbar ol li .step_number {
padding: 18px 10px;
background-color: #59900a;
color: #fff;
width:75px;
height: 70px;
border-radius: 50%;
text-align: center;
font-size: 1rem;
text-transform: uppercase;
}
.stepbar ol li .step_number {
    width: 75px;
    height: 65px;
}
.stepbar ol li:not(:last-child)::after {
content: "";
position: absolute;
z-index: -1;
width: 1px;
height: 100%;
background-image: linear-gradient(to bottom, #59900a, #59900a 3px, transparent 3px, transparent 8px);
background-size: 4px 6px;
background-position: right bottom;
background-repeat: repeat-y;
left: 37px;
top: 50%;
}
.stepbar ol li .step_number span {
display: block;
text-align: center;
font-size: 1.25rem;
font-weight: 700;
margin:  -6px 0 0 0;
}
.stepbar ol li .item {
display: flex;
flex-direction: column;
align-items: flex-start;
width: 100%;
margin-top: 0;
justify-content: center;
	padding: 0;
    margin: 0;
}

.qanda dt {
	font-size:120%;
	color:#59900a;
	font-weight:bold;
}
.qanda dd {
	margin-bottom:3%;
}
.qanda dd span {
	font-size:120%;
	color:#ea3f2c;
font-weight:bold;
}
.final {
	background:#ffffe0;
}

/* company
--------------------------------- */
.company table {
	border-collapse: inherit;
	width:100%;
	border-left:1px solid #da9a23;
	border-top:1px solid #da9a23;
}
.company table td,
.company table th {
	border-right:1px solid #da9a23;
	border-bottom:1px solid #da9a23;
	padding:7px 15px;
}
.company table th {
	color:#FFF;
	background: #da9a23;
		border-bottom:1px solid #FFF;
}
.entry-title  {
	color:#000;
	text-align:left;
	border-left:#da9a23 8px solid;
	    font-size: 150%;
		padding-left:20px;
}

/* contact7
--------------------------------- */
#kiyaku_area {height:250px;border:1px solid #CCC;overflow-y: auto;padding:8px;}
.panel-group {
    margin-bottom: 20px;
}

.panel-group .panel+.panel {
    margin-top: 5px;
}

.panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px;
}
.panel-default {
    border-color: #ddd;
}
.panel {
    margin-bottom: 20px;
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
	line-height:1.3;
}
.panel-body {
    border-top-color: #ddd;
	    padding: 15px;
	border: #ddd 1px solid;
}
.panel-default>.panel-heading {
    color: #333;
    background-color: #f5f5f5;
    border-top: #ddd 1px solid;
	border-right: #ddd 1px solid;
border-left: #ddd 1px solid;
}
.panel-heading {
    padding: 10px 15px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
h3.panel-title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 19px;
    color: inherit;
	border-left: 0;
    border-right: 0;
    border-top: 0;
    border-bottom: 0;
    padding: 0;
}
.midashi001_kiji,
#kiyaku_area {
	font-size:15px;
}
.midashi001_kiji p,
#kiyaku_area p {
    margin: 0 0 10px;
}
.control-label:after {
    content: '必須';
    border-radius: 0.25em;
    color: #fff;
    display: inline;
    font-size: 60%;
    font-weight: 700;
    line-height: 1;
    padding: 0.2em 0.6em 0.3em;
    text-align: center;
    vertical-align: baseline;
    white-space: nowrap;
    background-color: #f0ad4e;
    margin-left: 4px;
}
.exp {
	font-size:80%;
}
.wpcf7-form-control-wrap input {
	margin-top:5px;
		margin-bottom:20px;
}
.bg-info input {
	margin-top:5px;
	margin-bottom:5px;
}
.bg-info {
    background-color: #d9edf7;
	border-top: #ddd 1px solid;
	border-right: #ddd 1px solid;
border-left: #ddd 1px solid;
}
.bg-info p {
	margin-bottom:0;
}
.tab-img { display:none;}
.tabsmt-img { display:none;}
.smt-img { display:none;}

.sidebar h2, .sidebar h3 {
    background-color: #da9a23;
    padding: 12px;
    margin: 16px 0;
    border-radius: var(--cocoon-badge-border-radius);
	color:#FFF;
}
.cta-box {
 border: solid 1px #9d9d9d;
    border-radius: 8px;
    background-color: #fff;
    color: #444;
}
/* blog
--------------------------------- */
article .entry-content h2 {
    position: relative;
    padding: 0.6em;
    background: #da9a23 !important;
    color: #FFF;
    border-radius: 10px !important;
}

article .entry-content h2:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid #da9a23;
    width: 0;
    height: 0;
}

article .entry-content h3 {
    background: #fff1d7;
    padding: 1rem ;
    position: relative;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 0;
}

article .entry-content h3:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    content: '';
    border-radius: 3px;
    background: #da9a23;
}
.sidebar h3 {
	padding: 5px;}
.entry-card-title, .related-entry-card-title {
    background: none;
padding: 0!important;
}
.entry-card-title:before, .related-entry-card-title:before {
    background: none;
}
.article h4 {
    border-top: 2px solid #da9a23;
    border-bottom: 2px solid #da9a23;
	color:#da9a23;
}
a.a-wrap:hover {
	background:#fef9f0;
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
.home {	background: none;}
.entry-content {
    margin-top: 0;
    margin-bottom: 0;
}

/*スライドインメニューを右から*/
.navi-menu-content{
	left: auto;
	right: 0;
	transform: translateX(101%);
}
.logo-menu-button img {
    max-height: 44px;
    display: block;
    margin: 0;
}	
.home .content {
    margin-top: -25px;
}
	
.home #content .wrap .main section .inner{
width: 100%;
margin:0 auto;
	padding:0 3%;}
.home section.main-img {
	background: none;
}
.home #content .wrap .main section.flow .inner {
	padding: 3%;	

	}
section.flow {
		padding:3%;
	}
.suggest01,
.suggest02 {background:#ffffda;
	padding:3%;
	width:100%;
	float:none;
	min-height:0px;
	margin-bottom:3%;
}
.home section.main-img {
	background: none;
}
.suggest01 {
	margin-right:0;
}
.home section.suggest img.alignright {
	width:20%;
}
.service01 .txt-left {
	width:100%;
	float:none;
}

.service01 .img-right {
	width:100%;
	float:none;
text-align: center;
	display:block;
}
.home section.price img.alignright {
    display: block;
    margin:0.5em auto;
}
.pc-img { display:none;}
.tab-img {display:inline;}
.tabsmt-img {display:inline;}
}


/*834px以下*/
@media screen and (max-width: 834px){
.article ul, .article ol {
        padding-left: 0;
    }
	.article h2, .article h3, .article h4, .article h5, .article h6 {
    margin-bottom: 0;
}
.home section.price {
		padding:8% 0 3% 0;
	}
 .home section.price img.alignright {
        display: block;
        margin: 0.5em auto 0;

        float: none;
    }
.home #content .wrap .main section.soudan img.alignright {
display: block;
    margin: 0 auto 10px;
    float: none;
}
	.f120 {
		font-size:100%;
	}
.stepbar ol li:not(:last-child)::after {
top: 50%;
}
.pctab-img { display:none;}
.tab-img { display:none;}
.smt-img { display:inline;}
	
	
.company table td,
.company table th {
	width:100%;
	display:block;
}	
	
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}




/* ループスライダーのCSS全体 */
section.case {
	margin-top: 50px !important;
    margin-bottom: 0px !important;
    padding: 0 !important;
}
section.case p {
    margin-bottom: 0px !important;
}
h2.case-ttl {
    background: #FFF !important;
    padding: 0 !important;
    margin-bottom: 0;
}
.loop_container {
  width: 100%;
  height: 200px;
  overflow: hidden;
  position: relative;
  margin: 0 0 20px;
}

.loop_track {
  display: flex;
  height: 100%;
  position: relative;
  width: max-content; /* 内容に応じて幅を調整 */
}

.loop_image {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0; /* 画像コンテナが縮まないようにする */
}

.loop_image img {
  height: 100%;
  width: auto;
  object-fit: contain; /* 画像比率を維持 */
  display: block; /* 余分な隙間を防ぐ */
}

/* アニメーションを分けて定義 */
@keyframes infinite-scroll {
  from {
    transform: translateX(0);
  }
  to {
    /* アニメーション移動量はJavaScriptで動的に設定 */
  }
}
.slider-image {
    transform: translateZ(0); /* GPU加速を強制 */
    backface-visibility: hidden; /* 不要な面を非表示 */
    image-rendering: -webkit-optimize-contrast; /* Webkit用 */
    image-rendering: crisp-edges; /* 標準 */
}