@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
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
@media screen and (max-width: 1023px){}
@media screen and (max-width: 834px){}
@media screen and (max-width: 480px){}
/* mobile*/
@media screen and (max-width:428px) and (min-width:320px){}
/* tablet */
@media screen and (max-width:960px) and (min-width:768px){}
/*desktop*/
@media screen and (min-width:961px){}


/*add renewal 202401-------------------------------------------------------------------*/
/*root*/
html{
  --color-black01: #0a0a0a;
  --color-gray01: #9d9d9d;
  --color-gray02: #bababa;
  --color-gray03: #f4f4f4;
  --color-gray04: #cccccc;
  --color-blue01: #006699;
  --color-blue02: #002a57;
  --color-blue03: #d9e7f0;
  --color-green01: #33af37;
  --color-orange01: #ee6a12;
  --color-red01: #dc143c;
  --color-cat01:#006699;
  --color-cat02:#2fa8b5;
  --color-cat03:#305166;
  --color-cat04:#96adbb;
  --color-cat05:#e6c0c0;
  --color-cat06:#bb6d6d;
  --color-cat07:#e6ccbe;
  --color-cat08:#bb826a;
  --color-cat09:#e6e5be;
  --color-cat10:#bbb96a;
  --color-cat11:#bee6d7;
  --color-cat12:#6abb99;
  --color-cat13:#2fa8b5;
  --color-cat14:#13c9e0;
  --color-cat15:#2fa8b5;
  --color-cat16:#64a1dd;
  --color-cat17:#2fa8b5;
  --color-cat18:#8599e2;
  --font-size32:32px;
  --font-size24:24px;
  --font-size20:20px;
  --font-size18:18px;
  --font-size16:16px;
  --font-size15:15px;
  --font-size14:14px;
  --font-size13:13px;
  --font-size12:12px;
  --wide-colum-1-12:calc((100% / 12) * 1);
  --wide-colum-2-12:calc((100% / 12) * 2);
  --wide-colum-3-12:calc((100% / 12) * 3);
  --wide-colum-4-12:calc((100% / 12) * 4);
  --wide-colum-5-12:calc((100% / 12) * 5);
  --wide-colum-6-12:calc((100% / 12) * 6);
  --wide-colum-7-12:calc((100% / 12) * 7);
  --wide-colum-8-12:calc((100% / 12) * 8);
  --wide-colum-9-12:calc((100% / 12) * 9);
  --wide-colum-10-12:calc((100% / 12) * 10);
  --wide-colum-11-12:calc((100% / 12) * 11);
  --wide-wrp1040:1040px;
  --txt-long-lineHeight:1.8em;
  --txt-short-lineHeight:1.4em;
  --transition: all 0.3s;
}
/*add renewal 202401-------------------------------------------------------------------*/
/*---------------------------------------
reset
---------------------------------------*/
.article h2,.article h3,.article h4 {
  border: none;
  margin: 0;
  padding: 0;
  color: #333;
  background-color: transparent;
}
.clearfix::after {content: "";display: block;clear: both;height: 1px;width: 100%;}
@media screen and (min-width: 768px) {.dsp {display: none !important;}}
@media screen and (max-width: 767px) {.dpc {display: none !important;}}
.entry-content a { text-decoration: underline;}
a img {opacity: 1;}
a:hover{color:var(--color-blue01);}
a.entry-card-wrap{text-decoration: none;}
@media screen and (min-width: 768px) {
  a img {transition: 1.0s;}
  a:hover img {opacity: 0.75;}
}
.note{
/*  background-color:var(--color-gray03);
  padding:20px;*/
  font-size:var(--font-size12);
}


/*element------------------------------------------------------------------------------*/
/*ttl*/
h2.ttl-sec,
body.page h1.entry-title{
  text-align:center; 
  line-height:1.4;
}
h2.ttl-sec::after,
body.single h1.wp-block-heading::after,
body.page h1.entry-title::after{
  content:'';
  position:relative;
  display:block;
  height:2px;
  background-color:var(--color-blue01);
  margin: 10px auto 0;
  width: 4em;
}

h2.ttl-sec-w{color:#ffffff;}
h2.ttl-sec-w::after{background-color:#ffffff;}

p.catch-sec{
  font-weight:bold;
  line-height:1.8em;
  text-align:center;
}

p.intro-sec{
  line-height:1.8;
  margin-bottom:24px;
  text-align:center;
}

p.excerpt{line-height:1.4;}

@media screen and (max-width:767px){
  h2.ttl-sec,
  body.page h1.entry-title{
    font-size:var(--font-size24);
    margin-bottom:24px;
  }
  h3{font-size:var(--font-size18);}
  h4{font-size:var(--font-size15);}
  p.excerpt{font-size:var(--font-size13);}
  p.cation{font-size:var(--font-size13);}
  h2.ttl-sec::after,
  body.page h1.entry-title::after{
    width:59px;
  }
  p.catch-sec{
    font-size:20px;
    margin-bottom:20px;
  }
  p.intro-sec{
    font-size:14px;
  }
}

@media screen and (min-width:768px){
  h2.ttl-sec,
  body.page h1.entry-title{
    font-size:var(--font-size32);
    margin-bottom:40px;
  }
  h3{font-size:var(--font-size24);}
  h4{font-size:var(--font-size16);}
  p.excerpt{font-size:var(--font-size14);}
  h2.ttl-sec::after,
  body.page h1.entry-title::after{
    width:86px;
  }
  p.catch-sec{
    font-size:20px;
    margin-bottom:20px;
  }
}


/*section*/
/*#content-in.wrap{
  width:100%;
}*/
/*wide*/
body.home #content-in.wrap,
body.single-renovation #content-in.wrap,
body.page-template-page_estimate #content-in.wrap,
body.page-template-page_house #content-in.wrap,
body.page-template-page_apartment #content-in.wrap,
body.archive #content-in.wrap,
body.post-type-archive-point_case #content-in.wrap,
body.page-template-page_case #content-in.wrap{
  width:100%;
}

body.single-renovation #content-in.wrap .main,
body.page-template-page_estimate #content-in.wrap .main,
body.archive #content-in.wrap .main,
body.post-type-archive-point_case #content-in.wrap .main,
body.page-template-page_case #content-in.wrap .main{
  padding: 20px 0 0;
}
body.home #content-in.wrap .main{
  padding: 0;
}

section{
  padding-top:60px;
  padding-bottom:60px;
}

.inner{
  max-width:1040px;
  width:94.6666%;
  margin-left:auto;
  margin-right:auto;
}
@media screen and (max-width:767px){
  section{
    padding:30px 0;
  }
}
/*layout-------------------------------------------------------------------------------*/




/*-------------------------------------------------------------------------------
common part
-------------------------------------------------------------------------------*/

/*page title / category name
---------------------------------------------------*/
.block_page-top,
.category-title-block,
.page-title-block{
  width: 100%;
  text-align: center;
  font-weight: bold;
  color: #fff;
  background: #069;
  margin-bottom: 10px;
  padding: 8px 0.5em;
}
.block_page-top h1.
.page-title-block h1{
 font-size: 1em;
}
@media screen and (min-width: 768px) {
  .block_page-top,
  .category-title-block,
  .page-title-block{
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .block_page-top,
  .category-title-block,
  .page-title-block{
    font-size: 20px;
  }
}





/*entry card
---------------------------------------------------*/
.a-wrap{
  padding:0;
  margin-bottom:20px;
  text-decoration:none;
}

.entry-card-wrap h2.entry-card-title{
  font-size: 14px;
  line-height:1.4em;
}
.entry-card-thumb{
  margin  :0;
  line-height: 0;
}
.entry-card-content{
  margin-left:0;
  padding-bottom:0;
}
/*tag date*/
.infotop-card-content{
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.entry-card-content .cat-label{
  min-width:60px;
  text-align:center;
  font-weight:normal;
  line-height:2;
  display:block;
  padding-left:8px;
  padding-right:8px;
}
.cat-label{
  position:relative;
  top: 0;
  left: 0;
  border:none;
  line-height:1.4em;
}
.post-update{
  margin-right:0 !important;
  margin-left:0px;
  line-height:2em;
}
/*tag date*/
.entry-card-wrap .entry-card-title{
  margin:10px auto 20px;
}
.entry-date{
  color:var(--color-gray01);
  font-weight:normal;
}
/*post information*/
.table_postInfo{}
.info_post {
  font-size: 10px;
  border-bottom: 1px dotted #ccc;
  padding:4px 0;
  display: flex;
}
.cat_infoPost,
.contents_infoPost{
  vertical-align: top;
}

.feature_box{
  padding-bottom:20px;
}
/*sidebar*/

.table_postInfo_sidebar{
  padding:0 4px 20px;
}
.table_postInfo_sidebar .info_post{
  font-size: 13px;
}
.info_post.loginUser{
  background-color:#333;
  color:#fff;
}
.cat_infoPost {
  width: 6em;
  display: inline-block;
  font-weight: bold;
}
.contents_infoPost{
  width: calc(100% - 6em);
  display: inline-block;
}
@media screen and (min-width: 415px) {
  .infotop-card-content{
    margin:16px auto 10px;
  }
  .entry-card-content .cat-label{
    font-size:10px;
  }
}
@media screen and (max-width: 414px) {
  .infotop-card-content{
    margin:10px auto;
  }
  .entry-card-content .cat-label{
    font-size:11px;
  }
}
.entry-card-snippet{
  color: var(--color-gray01);
  font-size: 12px;
}
/*colum blog*/
.post_defalut{}

@media screen and (max-width: 767px) {
  .post_defalut .entry-card-thumb{
    position: relative;
    padding-top: 21.15%!important;
    width: calc((100% / 12) * 4);
  }
   .post_award .entry-card-thumb{
    position: relative;
    padding-top: 21.15%!important;
    width: 50%;
  }
  .post_defalut .entry-card-content,
  .post_award .entry-card-content{
    width: calc((100% / 12) * 8);
    padding: 0 10px;
  }
  .post_defalut .entry-card-content .infotop-card-content{
    margin-top:0;
  }
  .post_report{
    width:100%;
  }
  #list{
    margin-bottom:20px;
  }
  body.post-type-archive-report #list{
    width:100%;
  }
  .post_report .entry-card-content{
    padding:10px 8px;
  }
}
@media screen and (min-width: 768px) {
  .post_defalut .entry-card-thumb,
  .post_award .entry-card-thumb{
    position: relative;
    padding-top: 61.15%!important;
    width: 100%;
  }
  #list{
    margin-bottom:40px;
  }
}



/*shop entry card*/



/*---------------------------------------------------
side bar
---------------------------------------------------*/
.case_info_block{
  border:1px solid #cccccc;
  padding:20px 10px 10px;
}
.sidebar h3{
 background-color: transparent;
 padding: 4px;
 line-height: 2em;
 border-bottom: 2px solid #006699;
 font-size: 15px;
 margin: 0;
}
.widget-entry-card-content{
  font-size: 12px;
}
#sidebar h4.ttl_feature,
.article h4.ttl_feature{
  border-bottom: 2px solid #069;
  margin:0 auto 20px;
  font-size: 15px;
  line-height: 1.8;
}
.feature_box a{
  border-radius: 4px;
  border:1px solid #ccc;
  padding:4px 8px;
  margin:0 4px 8px;
  text-decoration: none;
  font-weight: bold;
  font-size: 12px;
  color:#333;
  word-break: normal;
  display: inline-block;
  line-height:2em;
}

@media screen and (min-width: 768px) {
  .feature_box a{
    transition: var(--transition);
  }
  .feature_box a:hover{
    background:#006699;
    color:#fff;
    border:1px solid #006699;
  }
}

/*コラムカテゴリ―　手動入力*/
ul.cat-list__sidebar{
  padding-left: 4px;
  list-style: none;
  padding-top:10px;
}
ul.cat-list__sidebar li{

}
ul.cat-list__sidebar li a{
  position: relative;
  display: block;
  width: 100%;
  text-decoration: none;
  font-weight: bold;
  color: #333;
  font-size: 14px;
  line-height: 2.5;
}
ul.cat-list__sidebar li a:before{
  position: absolute;
  content: "";
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  right: 0.75em;
  top: calc(50% - 8px);
  background: url(/img/common/icon_arrow_o.png) no-repeat center center / contain; 
}
@media screen and (min-width: 768px) {
  ul.cat-list__sidebar li a,
  ul.cat-list__sidebar li a:before{
      transition: var(--transition);    
  }
  ul.cat-list__sidebar li a:hover{
    color:#006699;
  }
  ul.cat-list__sidebar li a:hover:before{
    right: 0.25em;
    background: url(/img/common/icon_arrow_o.png) no-repeat center center / contain; 
  }
}


/*column sidebar アコーディオンメニュー
---------------------------------------------------------------*/
.accordion .accordion-header a{
  padding: 5px 5px;
  cursor: pointer;
  font-size: 14px;
  margin-bottom: 0;
  display: block;
  text-decoration: none;
  position: relative;
  border-bottom: 1px solid #ccc;
}
.accordion .accordion-header a::after {
  position: absolute;
  content: "";
  display: inline-block;
  width: .75em;
  height: .75em;
  right: .75em;
  top: calc(50% - 8px);
  background: url(/img/common/icon_arrow_btm_o.png) no-repeat center center / contain;
}

@media screen and (min-width: 768px) {
  .accordion .accordion-header a::after {
    transition: var(--transition);
  }
  .accordion .accordion-header a:hover {
    background-color: #eeeeee;
  }
  .accordion .accordion-header a:hover:after {
    top: calc(50% - 2px);
    background: url(/img/common/icon_arrow_btm_o.png) no-repeat center center / contain;
  }
}

.accordion .accordion-content {
  display: none; /* 初期状態では非表示 */
  padding-left: 0;
  margin-bottom: 10px;
  font-size: 12px;
}

.accordion .accordion-content ul {
  list-style: none;
  padding: 0;
}

.accordion .accordion-content li {
  border-bottom: 1px solid #eee;
  line-height: 1.2;
  margin-bottom: 0;
}

.accordion .accordion-content li a {
  color: #333;
  text-decoration: none;
  padding: 0.5em;
  display: block;
}

.accordion .accordion-content li a:hover {
  color: #0073aa;
}

.accordion .accordion-content li.current-post{
  background-color:#eeeeee;
}
.accordion .accordion-content li.current-post a {
  font-weight: bold;
  color: #006699;
}
.accordion .accordion-item.open .accordion-content {
  display: block;
}


/*
custom post ranking
---------------------------------------------------*/


/*---------------------------------------------------
archive
---------------------------------------------------*/
a figure{overflow: hidden;}
a figure img{display: block;}
@media screen and (min-width: 768px) {
  a figure img{
   transition-duration: 0.3s; /*変化に掛かる時間*/
  }
  a:hover figure img{
    transform: scale(1.1); /*画像の拡大率*/
   transition-duration: 0.3s; /*変化に掛かる時間*/
  }  
}
.category-content{
  margin-left:auto;
  margin-right:auto;
  margin-bottom:40px;/*仮*/
  max-width:1040px;
  padding:0 10px;
}

main.main section:first-child{
  padding-top:0;
}

/*@media screen and (max-width:767px){
  body.archive main.main{
    padding:30px 0;
  }
}
@media screen and (min-width:768px){
  body.archive main.main{
    padding:60px 0;
  }
}*/
body.archive .content-bottom{
  margin-top:0;
}

h1.archive-title,
h2.archive-title{
  text-align: center;
  width:100%;
}
.archive-title span{
  display: none;
}
h1.archive-title::after,
h2.archive-title::after{
  content:'';
  position:relative;
  display:block;
  height:2px;
  background-color:var(--color-blue01);
  margin: 10px auto 0;
}
@media screen and (max-width:767px){
  h1.archive-title,
  h2.archive-title{
    font-size:var(--font-size24);
    margin-bottom:24px;
    margin-top:0;
/*    margin-top:30px;*/
  }
  h1.archive-title::after,
  h2.archive-title::after{
    width:59px;
  }
}
@media screen and (min-width:768px){
  h1.archive-title,
  h2.archive-title{
    font-size:var(--font-size32);
    margin-bottom:40px;
    margin-top:0;
/*    margin-top:60px;*/
  }
  h1.archive-title::after,
  h2.archive-title::after{
    width:86px;
  }

}


/*---------------------------------------------------
page
---------------------------------------------------*/
body.page .content-bottom{
  margin-top:0;
}
@media screen and (max-width:767px){
  body.page main.main{
    padding:30px 0;
  }
}
@media screen and (min-width:768px){
  body.page main.main{
    padding:60px 0;
  }
}
body.home main.main{
  padding:0;
}

.catch-large-sec {
  text-align: center;
}
.catch-large-sec span{
  display: block;
}

@media screen and (max-width:767px) {
  .catch-large-sec {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .catch-large-sec .small {
    font-size: 15px;
  }
}

@media screen and (min-width:768px) {
  .catch-large-sec {
    font-size: 32px;
    margin-bottom: 20px;
  }
  .catch-large-sec .small {
    font-size: 16px;
  }
  .catch-large-sec br.dsp{
    display:none;
    height:0;
  }
}
.anchor-list{}
.anchor-list a{
  position:relative;
  padding:10px 24px 20px;
  background-color:#006699;
  border:1px solid #006699;
  color:#ffffff;
  text-decoration:none;
  font-weight:bold;
  margin:0 10px 20px;
  position:relative;
}
.anchor-list a::after{
  content:'';
  display:block;
  width:100%;
  background:url(/img/common/icon_arrow_btm.png) no-repeat center center / contain;
  height:10px;
  position:absolute;
  bottom:5px;
  left:0;
}

@media screen and (max-width:767px){
  .anchor-list a{
    position:relative;
    padding: 10px 12px 15px;
    margin:0 5px 10px;
  }
  .anchor-list a::after{
    bottom:3px;
  }
}
@media screen and (min-width: 768px) {
  .anchor-list a{
    position:relative;
    padding:10px 24px 20px;
    margin:0 10px 20px;
  }
  .anchor-list a,
  .anchor-list a:hover::after{
    transition: var(--transition);
  }
  .anchor-list a:hover{
    background-color:#fff;
    color:#006699;
  }
  .anchor-list a:hover::after{
    background:url(/img/common/icon_arrow_btm_o.png) no-repeat center center / contain;
    bottom:3px;
  }
}




/*list common style
---------------------------------------------------*/
#list{
  max-width:1040px;
  width:97.33333%;
  width:94.6666%;
  margin-left:auto;
  margin-right:auto;
  column-gap: inherit;
}
#list .entry-card{
  display:flex;
  flex-wrap: wrap;
  align-items: flex-start;
  flex-direction: row;
}
.entry-card-thumb{
  position:relative;
  padding-top:61.15% !important;
}
.entry-card-thumb img{
  position:absolute;
  top:0;
  left: 0;
}

@media screen and (min-width: 768px) {
  #list.ect-entry-card{
    display:flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: row;
  }
  #list{
    flex-direction: row;
  }
  #list.ect-entry-card  a.entry-card-wrap{
    width: var(--wide-colum-3-12);
    padding:0 10px;
  }
}

body.post-type-archive-point_case #list{
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}


/**/
.item_info{
  line-height:1.8 !important;
  margin-bottom:0 !important;
}
.list_report,
.list_case{
  flex-direction: row !important;
  max-width: 1040px;
  margin: 0 auto 80px;
}
.table_caseInfo{
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .list_report .entry-card-wrap{
  width: calc((100% / 12) * 4) !important;
  padding: 0 10px 20px !important;
  }
}
.list_report article{
  display: flex;
  flex-wrap: wrap;
  text-align: left;
}
.list_report article .entry-card-thumb{
  width: 100%;
}

/*---------------------------------------------------
point case
---------------------------------------------------*/
@media screen and (max-width: 767px) {
  .entry-card-wrap.post_case .entry-card-content{
    padding:0 8px;
  }
  .entry-card-category{
    width:calc(100% - 5em);
  }
  #list{
    align-items: flex-start;
    justify-content: space-between;
  }
  #list .entry-card-wrap{
    width:calc(100% - 8px) ;
    margin:0 0 10px;
  }
  #list .entry-card-content{
    padding:0 8px;
    margin:0 !important;
  }
}
@media screen and (min-width: 768px) {
  .entry-card-wrap.post_case{
    width: calc((100% / 12) * 3);
    padding-left:10px;
    padding-right:10px;
    padding-bottom:20px;
  }
  .post_case.entry-card-wrap:hover{
    background: transparent;
  }
  .entry-card-category{
    width:calc(100% - 8px - 4em);
  }
  #list .entry-card-thumb{
    padding-top: 62.15%;
    float: inherit;
  }
  #list .entry-card-wrap{
    width: var(--wide-colum-3-12);
  }
  #list .entry-card-wrap:hover{
    background: transparent;
  }
}

  #list .post_case .entry-card-thumb{
    width:100%;
    margin:0;
    position: relative;
  }
  #list .entry-card-wrap.post_case span.cat-other{
    display: none;
  }
  #list .entry-card-wrap.post_case .entry-card-title{
    line-height:var(--txt-short-lineHeight);
  }
  #list .entry-card-wrap.post_case .entry-card-content{
    width:100%;
  }
@media screen and (max-width: 767px) {
  #list a.entry-card-wrap.post_case{
    width: calc(50% - 1px);
  }
  #list .entry-card-wrap.post_case .entry-card-content{
    padding:0 8px;
  }
}
@media screen and (min-width: 768px) {
  #list .entry-card-wrap.post_case{
    width: calc((100% / 12) * 3);
    padding-left:10px;
    padding-right:10px;
    padding-bottom:20px;
  }
  #list .entry-card-wrap.post_case:hover{
    background: transparent;
  }
}
/*.list_pointcase a{
  background: #fff;
}*/

/*list entry card -----------------------------------*/

.entry-card-category span{
  min-width:60px;
  text-align:center;
  color:#0a0a0a;
  font-weight:normal;
  font-size:11px;
  line-height:2;
  display:inline-block;
  margin-bottom:4px;
}
.entry-card-category .cat-living{background-color:#e6c0c0;}
.entry-card-category .cat-dining{background-color:#e6ccbe;}
.entry-card-category .cat-bath{background-color:#e6e5be;}
.entry-card-category .cat-japaneseroom{background-color:#d5e6be;}
.entry-card-category .cat-kitchen{background-color:#bee6d7;}
.entry-card-category .cat-toilet{background-color:#a1d8e6;}
.entry-card-category .cat-washroom{background-color:#bbdbf3;}
.entry-card-category .cat-entrance{background-color:#cdd7f5;}
.entry-card-category .cat-room{background-color:#dbcfe8;}
.entry-card-category .cat-storage{background-color:#cccccc;}
@media screen and (max-width:767px){
 .entry-card-category span{
  padding:0 4px;
  } 
}






/*関連コラム（部分事例のみ）20220826 追加
(parts_casePoint_colum.php)
---------------------------------------------------*/
#relate_column,
#relate_case{
  background-color:#d6ecf5;/*仮*/
}
#relate_column .inner,
#relate_case .inner{
  max-width:1040px;
  width:94.666666%;
  margin-left:auto;
  margin-right:auto;
}
#relate_column p.txt_lead,
#relate_case p.txt_lead{
  text-align:center;
  margin-bottom:20px;
}

#relate_column .list,
#relate_case .list{
  margin-bottom:0;
  align-items: stretch;
  flex-direction: row;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
    #list a.entry-card-wrap.post_case {
      width: calc(50% - 5px);
    }
}

#relate_column .list a,
#relate_case .list a{
  width:100%;
}


#relate_column .list a article,
#relate_case .list a article{
  width:100%;
  background-color: #fff;
  flex-direction: column;
}
#relate_column .entry-card-content,
#relate_case .entry-card-content{
  padding: 0 10px 10px 10px;
}


@media screen and (max-width: 767px) {
  #relate_column{
    margin-top:30px;
  }
  #relate_column .entry-card-thumb{
    margin-top:0;
  }
}
@media screen and (min-width: 768px) {
  #relate_column .list a article{
    background-color:#fff;
  }
  #relate_column{
    margin-top:60px;
  }
  #relate_column .entry-card{
    display:flex;
    flex-wrap: wrap;
  }
  #relate_column .entry-card-thumb{
    margin:0;
  }
  #relate_column .entry-card-content{
    padding:0 10px 20px;
    width:100%;
  }
  #relate_column .list a.a-wrap:hover{
    background-color: transparent;
  }
}
#relate_column .ect-entry-card,
#relate_case .ect-entry-card{
  align-items: stretch !important;
}
/*---------------------------------------------------
single page
---------------------------------------------------*/

@media screen and (max-width: 767px) {
  body.single .content{
    margin-bottom:30px;
  }
}
@media screen and (min-width: 768px) {
  body.single .content{
    margin-bottom:60px;
  }
}

.entry-content p{margin-bottom:1.2em;}

body.single-post .entry-content{
  max-width: 960px;
  margin: 0 auto;
}
body.post-template-single-shop .entry-content{
  max-width: inherit;
}
/*single / blog colum
(テンプレート：XXXXXX)
---------------------------------------------------*/

body.post-template-default .entry-title,
body.post-template-default h2.wp-block-heading{
  border-bottom:1px solid #9d9d9d;
  margin-bottom:1em;
  margin-top:3em;
  padding: 0 0 0.5em 0;
}
body.post-template-default h1.entry-title{
  padding:0;
  margin: 0 auto 1em;
  border-bottom: none;
}
body.post-template-default h3.wp-block-heading{
  border-left: 5px solid #069;
  margin:1em 0 0.5em;
  padding:0.3em 0.5em;
}
body.post-template-default h4.wp-block-heading{
  margin: 1.5em auto 1em;
}
body.post-template-default h4.wp-block-heading::before{
  content: "■";
  top: auto;
  left: 0;
  margin-right: 5px;
  color: rgba(36,0,0,.2);
  font-size:14px;
}
@media screen and (max-width: 767px) {
  body.post-template-default h2.wp-block-heading{
    font-size:18px;
  }
  body.post-template-default h3.wp-block-heading{
    font-size:15px;
  }
  body.post-template-default h4.wp-block-heading{
    font-size:14px;
  }
}
@media screen and (min-width: 768px) {
  body.post-template-default h2.wp-block-heading{
    font-size:24px;
  }
  body.post-template-default h3.wp-block-heading{
    font-size:20px;
  }
  body.post-template-default h4.wp-block-heading{
    font-size:16px;
  }
}

/*single / CV
(テンプレート：XXXXXX)
---------------------------------------------------*/
.cvBox_post{
  background-color:#f4f4f4;
  padding:20px;
}
p.ttl_contactBox{
  margin-top: 0.5em;
  text-align:center;
  font-weight:bold;
  font-size:20px;
  margin-bottom:10px !important;
}
.cvBox__post{
  display:flex;
  flex-wrap:wrap;
}
.btn_reservation_cvBox__post,
.btn_request_cvBox__post,
.btn_tel_cvBox__post{
  margin: 0 auto;
  display: block;
  position: relative;
  margin-bottom: 6px;
}
.btn_reservation_cvBox__post a,
.btn_request_cvBox__post a,
.btn_tel_cvBox__post a{
  text-decoration: none;
  color: #fff;
  font-weight: bold;
  line-height: 3em;
  display: block;
  width: 100%;
  text-align: center;
}
.btn_reservation_cvBox__post a{
  background-color: var(--color-green01);
  border: 1px solid var(--color-green01);
  background-image:url(/img/common/bg_reservation_mobile-navi.jpg);
  background-repeat:no-repeat;
  background-position: left bottom;
  background-size:contain;
}
.btn_request_cvBox__post a{
  background-color: var(--color-blue01);
  border: 1px solid var(--color-blue01);
}
.btn_tel_cvBox__post a{
  background-color:#ee6a12;
  background-color: var(--color-orange01);
  border: 1px solid var(--color-orange01);
}
.btn_reservation_cvBox__post a:after,
.btn_request_cvBox__post a:after,
.btn_tel_cvBox__post a:after {
  position: absolute;
  content: "";
  display: inline-block;
  transition: all 0.3s;
  width: 0.75em;
  height: 0.75em;
  background: url(/img/top_ver202401/icon_arrow.png) no-repeat center center / contain;
  right: 0.75em;
  top: 40%;
}
.btn_request_cvBox__post a:before,
.btn_tel_cvBox__post a:before{
  position: absolute;
  content: "";
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  left: 0.75em;
  top: 28%;
}
.btn_request_cvBox__post a:before{
  background: url(/img/common/icon_requestw_cvBtn.png) no-repeat center center / contain;
}
.btn_tel_cvBox__post a:before{
  background: url(/img/common/icon_telw_cvBtn.png) no-repeat center center / contain;
}
@media screen and (max-width: 767px) {
  .btn_reservation_cvBox__post,
  .btn_request_cvBox__post,
  .btn_tel_cvBox__post{
    width: 100%;
  }
  .btn_reservation_cvBox__post a,
  .btn_request_cvBox__post a,
  .btn_tel_cvBox__post a{
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) {
  .btn_reservation_cvBox__post,
  .btn_request_cvBox__post,
  .btn_tel_cvBox__post{
    width: calc((100% / 2) - 10px);
  }
  .btn_reservation_cvBox__post a,
  .btn_request_cvBox__post a,
  .btn_tel_cvBox__post a{
    font-size: 18px;
  }
  .btn_reservation_cvBox__post a{
    background-blend-mode: darken;
    transition: var(--transition);
  }
  .btn_request_cvBox__post a{
    transition: var(--transition);
  }
  .btn_reservation_cvBox__post a:hover{
    background-color: #279e2a;
    border: 1px solid #279e2a;
    background-blend-mode: darken;
  }
  .btn_request_cvBox__post a:hover{
    background-color: #005487;
    border: 1px solid #005487;
  }
  .btn_tel_cvBox__post a:hover{
    background-color: #e9570d;
    border: 1px solid #e9570d;
  }
  .btn_reservation_cvBox__post a:hover:after,
  .btn_request_cvBox__post a:hover:after,
  .btn_tel_cvBox__post a:hover:after {
    right: 0.5em;
  }
}

/*single / add CTA
---------------------------------------------------*/
/*CTA01_column*/
.cta01_column{
  background-color: #fff6de;
  border: 2px solid #ffe192;
  border-radius: 8px;
  padding: 10px;
  margin:40px auto;
}
.cta01_column .toc{
  border: none;
}
.cta01_column .cvBox_post{
  background-color: transparent;
  padding: 0 20px 20px;
}
.cta01_column .cvBox_post .btn_reservation_cvBox__post,
.cta01_column .cvBox_post .btn_request_cvBox__post{
  width: 100%;
}
.cta01_column h3{
  border: none !important;
  margin-bottom: 0 !important;
}


/*CTA02_column*/

  .cta02_column{
    background-color: #fff6de;
    border: 2px solid #ffe192;
    border-radius: 8px;
    display: flex;
    flex-wrap: wrap;
    padding: max(5%,10px);
  }
  h3.ttl_cta02_column{
    border-bottom: 1px solid #9d9d9d;
    margin-bottom: 0.5em !important;
    padding: 0 4px 20px 4px;
    margin-top: 40px;
  }
  .wrp_txt_cta02_column{
    width: 100%;
  }
  h4.ttl-s_cta02_column{
    width: 100%;
    margin-bottom: 0.5em;
    font-size: 1.4em;
    text-align: center;
    color: #006699;
  }
/*  p.txt_cta02_column{
    font-size: 1.2em;
  }*/

  .btn_cta02_column{
    text-align: center;
  }
  .catch_cta02_column{
    font-weight: bold;
    color: #006699;
    font-size: 1.2em;
  }
  .btn_cta02_column a{
      width: 100%;
      display: block;
      background-color: #069;
      border-radius: 2em;
      color: #fff;
      text-decoration: none;
      font-weight: 700;
      line-height: 2.5em;
      font-size: 1.6em;
      max-width: 360px;
      margin: 5px auto 0;
  }
  .img_cta02_column{
    width: 100%;
    height: 100%;
    max-width: 300px;
    text-align: center;
    margin: 10px auto;
  }
  .img_cta02_column img{}

@media screen and (min-width: 768px) {
  .cta02_column{
    padding: 40px 30px 30px;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
  .wrp_txt_cta02_column{
    width: 60%;
    padding:0 0.5em;
  }
  h4.ttl-s_cta02_column{
    font-size: 22px;

  }
  .btn_cta02_column{
    text-align: center;
  }
  .catch_cta02_column{
    font-weight: bold;
    color: #006699;
    font-size: 1.2em;
  }
  .btn_cta02_column a{
    width: 100%;
    display: block;
    background-color: #069;
    border-radius: 2em;
    color: #fff;
    text-decoration: none !important;
    font-weight: 700;
    line-height: 2.5em;
    font-size: 1.6em;
    max-width: 360px;
    margin: 5px auto 0;
    border-bottom: 4px solid #00334d;
  }
  .btn_cta02_column a:hover{
    background-color: #004e75;
    color: #fff;
  }
  .img_cta02_column{
    width: 40%;
  }
/*  .img_cta02_column img{
    max-height: 220px;
  }*/
}

/*single / 監修者
(テンプレート：XXXXXX)
---------------------------------------------------*/
.block_supervise{
  margin-top:5em;
  border:1px solid #f4f4f4;
  border-radius:5px;
  padding:0 10px 10px;
  position:relative;
}
.ttl_supervise{
  background: #0a0a0a;
  color: #ffffff;
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: -1em;
  padding: 2px 10px;
}
.profile_supervise{
  display:flex;
  flex-wrap:wrap;
  justify-content: start;
  padding-top:2em;
}
.profile_supervise p{margin:0 !important;}
.photo_supervise{
  width:100px;
  height:100px;}
  .txt_supervise{
  width:calc(100% - 120px);
  margin-left: 20px;
}
.position_supervise{font-size:12px;}
.name_supervise{font-weight:bold;}
.certification_supervise{
  font-size:12px;
  color:#555555;
}
.intro_supervise::before{
  width: 1em;
  height: 1px;
  background-color: var(--color-gray04);
  content: '';
  display: block;
  margin: 1em 0 0.5em;
}



/*single / 関連記事（ブログカード）
---------------------------------------------------*/
.wp-block-cocoon-blocks-blogcard{
  margin:2em auto !important;
}
.wp-block-cocoon-blocks-blogcard a{
  text-decoration:none;
}

/*single pointcase*/
body.point_case-template-default .entry-title{
  padding-left:0;
  padding-right:0;
}
/*shop----------------------------------------------*/


/*part::rating--------------------------------------*/
.rating{
  position: relative;
  z-index: 0;
  display: inline-block;
  white-space: nowrap;
  color: #CCCCCC; /* グレーカラー 自由に設定化 */
}
.rating:before,
.rating:after{
  content: '★★★★★';
}
.rating:after{
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  overflow: hidden;
  white-space: nowrap;
  color: #ffcf32;
}
.rating[data-rate="5"]:after{ width: 100%; }
.rating[data-rate="4.9"]:after{ width: 98%; }
.rating[data-rate="4.8"]:after{ width: 96%; }
.rating[data-rate="4.7"]:after{ width: 94%; }
.rating[data-rate="4.6"]:after{ width: 92%; }
.rating[data-rate="4.5"]:after{ width: 90%; }
.rating[data-rate="4.4"]:after{ width: 88%; }
.rating[data-rate="4.3"]:after{ width: 86%; }
.rating[data-rate="4.2"]:after{ width: 84%; }
.rating[data-rate="4.1"]:after{ width: 82%; }
.rating[data-rate="4"]:after{ width: 80%; }
.rating[data-rate="3.9"]:after{ width: 78%; }
.rating[data-rate="3.8"]:after{ width: 76%; }
.rating[data-rate="3.7"]:after{ width: 74%; }
.rating[data-rate="3.6"]:after{ width: 72%; }
.rating[data-rate="3.5"]:after{ width: 70%; }
.rating[data-rate="3.4"]:after{ width: 68%; }
.rating[data-rate="3.3"]:after{ width: 66%; }
.rating[data-rate="3.2"]:after{ width: 64%; }
.rating[data-rate="3.1"]:after{ width: 62%; }
.rating[data-rate="3"]:after{ width: 60%; }
.rating[data-rate="2.9"]:after{ width: 58%; }
.rating[data-rate="2.8"]:after{ width: 56%; }
.rating[data-rate="2.7"]:after{ width: 54%; }
.rating[data-rate="2.6"]:after{ width: 52%; }
.rating[data-rate="2.5"]:after{ width: 50%; }
.rating[data-rate="2.4"]:after{ width: 48%; }
.rating[data-rate="2.3"]:after{ width: 46%; }
.rating[data-rate="2.2"]:after{ width: 44%; }
.rating[data-rate="2.1"]:after{ width: 42%; }
.rating[data-rate="2"]:after{ width: 40%; }
.rating[data-rate="1.9"]:after{ width: 38%; }
.rating[data-rate="1.8"]:after{ width: 36%; }
.rating[data-rate="1.7"]:after{ width: 34%; }
.rating[data-rate="1.6"]:after{ width: 32%; }
.rating[data-rate="1.5"]:after{ width: 30%; }
.rating[data-rate="1.4"]:after{ width: 28%; }
.rating[data-rate="1.3"]:after{ width: 26%; }
.rating[data-rate="1.2"]:after{ width: 24%; }
.rating[data-rate="1.1"]:after{ width: 22%; }
.rating[data-rate="1"]:after{ width: 20%; }
.rating[data-rate="0.9"]:after{ width: 18%; }
.rating[data-rate="0.8"]:after{ width: 16%; }
.rating[data-rate="0.7"]:after{ width: 14%; }
.rating[data-rate="0.6"]:after{ width: 12%; }
.rating[data-rate="0.5"]:after{ width: 10%; }
.rating[data-rate="0.4"]:after{ width: 8%; }
.rating[data-rate="0.3"]:after{ width: 6%; }
.rating[data-rate="0.2"]:after{ width: 4%; }
.rating[data-rate="0.1"]:after{ width: 2%; }
.rating[data-rate="0"]:after{ width: 0%; }

/*part::rating--------------------------------------*/



/*related-list
---------------------------------------*/
.under-entry-content{
  max-width: 860px;
/*  width: 94.6666%;*/
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width:860px){
  .under-entry-content{
    font-size:13px;
  }
}
@media screen and (min-width:861px){
  .under-entry-content{
    font-size:14px;
  }
}

/*related-list
---------------------------------------*/
.related-entry-heading{
 line-height: var(--txt-short-lineHeight);
 text-align: center;
}
#related-entries{
 border: 1px solid #006699;
}
.related-entry-card-title{
  font-size: 14px;
  line-height: var(--txt-short-lineHeight);
}
.related-entry-card-thumb{
  position:relative;
  padding-top:15%;
  overflow:hidden;
}
.related-entry-card{
  display:flex;
  flex-wrap:wrap;
}
.related-entry-card-thumb{
  width: calc((100% / 6) * 2);
  margin: 0;
}
.related-entry-card-content{
  width: calc((100% / 6) * 4);
  padding: 0 10px;
  margin: 0;
  line-height:1.4;
}
.related-entry-card-wrap img{
  position:absolute;
  top:0;
}
@media screen and (max-width:767px){
  #related-entries{
    padding:0px 10px;
  }
  .related-entry-heading{
    margin-bottom:20px;
    font-size: 18px;
  }
  .related-entry-card-thumb{
    padding-top:25%;
  }
}
@media screen and (min-width:768px){
  #related-entries{
    padding:20px 10px;
  }
  .related-entry-heading{
    margin:0 10px 20px;
    font-size: 20px;
  }
  .related-list{
    display:flex;
    flex-wrap:wrap;
    flex-direction: row;
  }
  .related-list a{
    display:block;
    padding:0 10px;
    width:50%;
    margin-bottom:10px;
    font-size:13px;
  }
  .related-entry-card-thumb{
    padding-top:26%;
  }
}

/*
point case category list(single)
(parts_casePoint_categorylist.php)
---------------------------------------*/




/*
point case category list(single)
(parts_casePoint_search.php)
---------------------------------------*/





.btn_submit{
  margin:0 auto;
  display:block;
  width:100%;
  position:relative;
}
input[type=submit]{
  padding: 0;
}
.btn_submit a,
.btn_submit input{
  color:#fff;
  font-weight:bold;
  font-size:16px;
  line-height:3em;
  background-color:var(--color-blue01);
  border:1px solid var(--color-blue01);
  display:block;
  width:100%;
  text-align:center;
  position:relative;
  font-family: "Yu Gothic",Meiryo,"Hiragino Kaku Gothic ProN","Hiragino Sans",sans-serif;
  text-decoration:none;
}
.btn_submit a:after,
.btn_submit input:after{
  position:absolute;
  content: "";
  display:inline-block;
  width:0.75em;
  height:0.75em;
}
.btn_submit:after{
  position: absolute;
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  right: 10px;
  top: calc(50% - 5px);
  background:url(/img/common/icon_arrow.png) no-repeat center center / contain;
}
@media screen and (min-width:768px){
  .btn_submit input,
  .btn_submit a,
  .btn_submit:after{transition: var(--transition);}
  .btn_submit{max-width:326px;}
  .btn_submit input{font-size:16px;}
  .btn_submit:hover a,
  .btn_submit:hover input{
    color:var(--color-blue01);
    background-color:#fff;
  }
  .btn_submit:hover:after{
    right: 5px;
    background:url(/img/common/icon_arrow_o.png) no-repeat center center / contain;
  }
}
@media screen and (max-width:767px){
  .btn_submit{max-width:230px;}
  .btn_submit input{font-size:15px;}
}

/*---------------------------------------
page
---------------------------------------*/
body.page .entry-content{
  width: 94.666%;
  max-width: 1040px;
  margin-left:auto;
  margin-right:auto;
  margin-top:0;
}

@media screen and (max-width:767px){
  .entry-content{
    margin-top:30px;
    margin-bottom:30px;
  }
  .category-page-content.entry-content{
    margin-top:10px;
    margin-bottom:10px;    
  }
}
@media screen and (min-width:768px){
  .entry-content{
    margin-top:60px;
    margin-bottom:60px;
  }
  .category-page-content.entry-content{
    margin-top:20px;
    margin-bottom:20px;
  }
}
/*===========================================
info closing term(休暇中お知らせ)
===========================================*/
.block_info_closing{
  max-width: 1040px;
  margin: min(30px, 5%) auto;
  background: #ffe2e2;
  padding: 20px 10px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
h3.ttl__info_closing{
  font-weight: bold;
  color: #d71a18;
  text-align: center;
  font-size: 14px;
  width: 100%;
  padding:0 10px;
  line-height: 1.4;
  border: 0;
  margin: 0.5em 0;
}
.contents__info_closing{
  width:100%;
  padding:0 10px;
}
.contents__info_closing p{
  margin: 0.5em 0;
  line-height: 1.4;
}
.txt01__info_closing{
  font-size: 13px;
}
.txt02__info_closing{
  font-size: 18px;
  font-weight: bold;
}
.txt03__info_closing{
  font-size: 12px;
}
@media screen and (min-width: 768px){
  .block_info_closing{
    border-radius: 4px;
    padding: 20px;
    width: 100%;
  }
  h3.ttl__info_closing{
    font-size: 16px;
    width: calc((100% / 12) * 3);
  }
  .contents__info_closing{
    width: calc((100% / 12) * 9);
  }
  .contents__info_closing p{
    margin: 5px 0;
  }
  .txt01__info_closing{
    font-size: 14px;
  }
  .txt02__info_closing{
    font-size: 20px;
  }
  .txt03__info_closing{
    font-size: 12px;
  }
}
@media screen and (max-width: 767px){
  h3.ttl__info_closing br{
    display: none;
  }
  .contents__info_closing{
    text-align: center;
  }
}
/*top only------------------------------------*/
@media screen and (min-width: 768px){
  .block_info_closing.top_info{
    width: 92%;
  }
}
/*===========================================*/

/* animation-------------------------- */
.fadeInUp {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInUp;
 animation-name: fadeInUp;
 visibility: visible !important;
}
@-webkit-keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(20px); -ms-transform: translateY(20px); transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}



/*-------------------------------------------------
404
-------------------------------------------------*/
body.error404 main h1,
body.error404 main p{
  text-align:center;
}
body.error404 main p{
  margin-top:20px;
}
@media screen and (max-width: 834px){
  body.error404 main p{
    text-align:left;
  }
  body.error404 main p br{
    display:none;
  }
}
.posts-not-found{
  text-align: center;
}

/*-------------------------------------------------
タグクラウド
-------------------------------------------------*/
aside#tag_cloud-2{
  width:92%;
  max-width: 1040px;
  margin: 0 auto;
  padding: 40px 20px;
  background: #f9f9f9;
}
aside#tag_cloud-2 .widget-index-bottom-title{
  text-align: center;
  font-weight: bold;
  margin:0 0.5em;
}
aside#tag_cloud-2 .tagcloud a{
  border: #bbbbbb 1px solid;
  background-color: #ffffff;
}


.loginOnly{
  background-color: #efefef;
  padding:20px;
  color: #999999;
}

/*-------------------------------------------------
大阪　店舗一覧ページ
-------------------------------------------------*/
.category-osaka #news__shop .inner{
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .category-osaka #news__shop .inner {
      margin-bottom: 30px;
  }
}
.category-osaka .list-news__shop a{
  color: unset;
  text-decoration: none;
}
.category-osaka #related-entries{
  padding-bottom: 60px;
}





/*============================================================================
point case list
============================================================================*/

/*--------------------------------------------------------------------
archive list / point_case
--------------------------------------------------------------------*/

/*main.main{
  padding-left:0;
  padding-right: 0;
  padding-bottom:0 !important;
}
#list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width:100% !important;
}
*/
.post_case .entry-card-thumb{
  width:100%;
  margin:0;
  position: relative;
}
.entry-card-wrap.post_case span.cat-other{
  display: none;
}

.contents_itemCaseInfo{
  color:var(--color-gray01);
  font-weight:normal;
}

@media screen and (max-width: 767px) {
  a.entry-card-wrap.post_case{
    width: calc(50% - 1px);
  }
  .entry-card-wrap.post_case .entry-card-content{
    padding:0 8px;
  }
  #list.list-point_case{
    align-items: flex-start;
    justify-content: space-between;
  }
  #list.list-point_case .entry-card-wrap{
    width:calc(50% - 1px) !important;
    margin:0 0 10px !important;
  }
  #list.list-point_case .entry-card-content{
    padding:0 8px;
    margin:0 !important;
  }
}
@media screen and (min-width: 768px) {
  .entry-card-wrap.post_case{
    width: calc((100% / 12) * 3);
    padding-left:10px;
    padding-right:10px;
    padding-bottom:20px;
  }
  .post_case.entry-card-wrap:hover{
    background: transparent;
  }
  .entry-card-category{
    width:calc(100% - 8px - 4em);
  }
  #list.list-point_case .entry-card-thumb{
    padding-top: 62.15%;
    float: inherit;
  }
  #list.list-point_case .entry-card-wrap{
    width: var(--wide-colum-3-12);
  }
  #list.list-point_case .entry-card-wrap:hover{
    background: transparent;
  }
}



/*----------------------------------------------------------------------------
voice
----------------------------------------------------------------------------*/

#list.list_voice{

}
/*voice entry card*/
#list.list_voice .post_voice{
  margin-left: 10px;
  margin-right: 10px;
  width: 100%;
}
.post_voice .title_block_voice{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width:100%;
}
.txtBox_voice p{
  line-height:1.8;
}
.post_voice.a-wrap:hover{
  background-color: transparent;
}
@media screen and (max-width: 767px) {
  .post_voice .title_block_voice{
    border-bottom: 2px solid #000;
    padding:0 4px 20px;
  }
  .post_voice .img_voice{
    text-align: center;
  }
  .post_voice .entry-card-content{
    width:100%;
    padding:4px;
  }
}
@media screen and (min-width: 768px) {
  .post_voice{
    width:960px;
  }
  .post_voice .title_block_voice{
    border-bottom: 2px solid #000;
    padding:0 4px 20px;
  }
  .post_voice .entry-card-thumb{
    width:calc((100% / 12) * 4);
    padding-top: 23.15%!important;
  }
  .post_voice .entry-card-content{
    width:calc((100% / 12) * 8);
    padding:0 10px 0 20px;
  }
}



/*slider*/
.arrows_slide_renovation__top,
.arrows_slide_pointCase__top,
.arrows_slide_pointCase__top01,
.arrows_slide_pointCase__top02{
  width: 80px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.arrows_slide_renovation__top img,
.arrows_slide_pointCase__top01 img,
.arrows_slide_pointCase__top02 img,
.arrows_slide_pointCase__top img{
  width: 30px;
  height:30px;
}
@media screen and (max-width: 767px) {
  .arrows_slide_renovation__top,
  .arrows_slide_pointCase__top01,
  .arrows_slide_pointCase__top02,
  .arrows_slide_pointCase__top{
    margin: 0 auto 20px;
  }
}
@media screen and (min-width: 768px) {
  .arrows_slide_renovation__top,
  .arrows_slide_pointCase__top01,
  .arrows_slide_pointCase__top02,
  .arrows_slide_pointCase__top{
    margin: 0 auto 26px;
  }
}

/*------------------------------------------------------------------------------------------
support
------------------------------------------------------------------------------------------*/
.support_top{
  text-align: center;
  padding-bottom: 1em; 
}
.support .lead {font-weight: bold;}
.support_top p{font-size: 14px;}
.sup_listbox{text-align: center;}
div.item_sup_listbox{
  border: solid 1px #afafaf;
  padding: .5em;
  margin: .5em;
}
.sup_list_item h3.list_lead{
  text-align: center;
  margin: 0;
  color: #069;
  letter-spacing: -0.04em;
}
@media screen and (max-width: 767px){
  .support_top p.sup_top_text{font-size: 14px;}
  .support .lead {
    margin: 0 0 17px;
    font-size: 17px;
  }
  .sup_listbox{
    padding-bottom: 40px;
  }
  .support .item_sup_listbox{
    width: 49%;
    text-align: left;
  }
  .support div.sup_list_item:nth-child(2n){margin-right: 0!important;}
  .item_sup_listbox h3.list_lead{
    font-size: 12px;
    padding: 0.8em 0;
  }
  .item_sup_listbox .listbox_text{font-size: 13px;}
}

@media screen and (min-width: 768px){
  .support .lead {
    margin: 0 0 1%;
    font-size: 22px;
  }
  .sup_listbox{
    padding-bottom: 60px;
  }
  div.item_sup_listbox{
    width: calc((100% - 3em) / 3);
  }
  .item_sup_listbox h3.list_lead{
    font-size: 16px;
    padding: 0.5em 0 .3em;
  }
  .item_sup_listbox .listbox_text{
    font-size: 15px;
    text-align: justify;
    margin: 4% 0;
  }
}

.sup_after_box{text-align: center;}
.support .sup_after_lead::after {
  content:"";
  position: absolute;
  left: 50%;
  bottom: -5px;
  display: inline-block;
  width: 7em;
  height: 2px;
  -webkit-transform: translateX(-50%);
  background-color: black;
}
.support h3.sup_nunmertext{
  line-height: 1em;
  text-align: left;
}
.support .sup_number{color: #069;}
.support .sup_after_text{
  margin: 0 auto;
  text-align: justify;
  padding-bottom: 1em;
}
.sup_after_innerbox{
  display: flex;
  justify-content: center;
  padding-bottom: 2em;
}
.sup_after_innerbox .caption{display: block;}
.sup_follow{
  padding: 1.3em;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  position: relative;
}
.sup_follow .sup_follw_plus{position: absolute;}
.sup_follow .textlink{
  color: #069;
  font-weight: bold;
  position: relative;
  line-height:1;
}
.sup_follow .textlink a{
  color: #069;
  text-decoration: none;
  position: relative;
}
.sup_follow .sup_follow_text{
  font-size: 9px;
  text-align: left;
}
.sup_follow .textlink .arrow{
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 767px){
  .sup_after_box{padding-bottom: 30px;}
  .support .sup_after_lead {
    display: inline-block;
    position: relative;
    font-size: 18px;
    margin-bottom: 8%;
  }
  .support h3.sup_nunmertext{
    font-size: 15px;
    margin-bottom: 3%;
  }
  .support .sup_after_text{
    font-size: 12px;
  }
  .sup_after_innerleft{
    margin-right: 2%;
  }
  .sup_after_innerbox .caption{
    font-size: 10px;
    line-height: 1.2em;
  }
  .sup_follow .sup_follw_plus{
    width: 2.5em;
    top: -6%;
    left: 45%;
  }
  .sup_follow .sup_follow_copy{
    font-size: 13px;
    margin-bottom: .8em;
  }
  .sup_follow .textlink{
    font-size:12px;
  }
  .sup_follow .textlink .arrow{
    right: -2em;
  }
}

@media screen and (min-width: 768px){
  .sup_after_box{
    max-width: 864px;
    margin: 0 auto;
    padding-bottom: 50px;
  }
  .support .sup_after_lead {
    display: inline-block;
    position: relative;
    font-size: 22px;
    margin-bottom: 4%;
  }
  .support h3.sup_nunmertext{
    font-size: 20px;
    margin: 0 0 1%;
  }
  .support .sup_after_text{font-size: 15px;}
  .sup_after_innerleft{
    margin-right: 4%;
    width: 33%;
  }
  .sup_after_innerright{width: 33%;}
  .sup_after_innerbox .caption{
    font-size: 14px;
    padding-top: .3em;
  }
  .sup_follow{
    text-align: center;
  }
  .sup_follow .sup_follw_plus{
    top: -7%;
    left: 47%;
  }
  .sup_follow .sup_follow_copy{
    font-size: 20px;
    padding: .5em 0;
  }
  .sup_follow .textlink{font-size: 16px;}
  .sup_follow .textlink .arrow{right: -1.7em;}
  .sup_follow .sup_follow_text{padding: 0 2em;}
}

.sup_mainte_box01{
  display: table;
  padding-bottom: 1em;
}
.sup_mainte_box01 .inner_right{display: table-cell;}
.sup_mainte_box01 .sup_mainte_copy{
  font-weight: bold;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}
.sup_mainte_box02{text-align: center;}
.sup_mainte_box02 .sup_mainte_flex{
  margin-right: 2%;
  display: inline-block;
  vertical-align: top;
}
.sup_mainte_box02 .sup_mainte_flex:last-child{margin-right:0;}
.sup_mainte_box02 .bold_caption{
  font-weight: bold;
  display: block;
}
.mainte_message{
  text-align: center;
  background-color: #069;
  color: white;
  font-weight: bold;
  padding: 1em 0;
}
@media screen and (max-width: 767px){
  .sup_mainte{padding-bottom: 2em;}
  .sup_mainte_box01 .inner_right{padding-left: 1em;}
  .sup_mainte_box01 .sup_mainte_copy{
    font-size: 12px;
    width: 49%;
  }
  .sup_mainte_box02{padding-bottom: .5em;}
  .sup_mainte_box02 .sup_mainte_flex{width: 32%;}
  .sup_mainte_box02 .bold_caption{
    font-size: 10px;
    line-height: 1.2em;
  }
  .mainte_message{font-size: 15px;}
}


@media screen and (min-width: 768px){
  .sup_mainte{
    max-width: 864px;
    margin: 0 auto;
    padding-bottom: 60px;
  }
  .sup_mainte_box01{
    vertical-align: middle;
    margin: 0 auto;
  }
  .sup_mainte_box01 .inner_right{padding-left: 10%;}
  .sup_mainte_box01 .sup_mainte_copy{font-size: 20px;}
  .sup_mainte_box02 .sup_mainte_flex{width: 26%;}
  .sup_mainte_box02 .bold_caption{
    font-size: 14px;
    padding-top: .3em;
  }
  .mainte_message{
    font-size: 20px;
    max-width: 698px;
    margin: 1% auto 0;
  }
}
.sup_service{text-align: center;}
.sup_service_box{
  display: flex;
  justify-content: center;
  padding-bottom: 1.2em;
}
.sup_service .sup_service_copy,
.sup_service .sup_service_text{text-align: left;}

@media screen and (max-width: 767px){
  .sup_service{padding-bottom: 10%;}
  .sup_service_box{width: 100%;}
  .sup_service_leftbox img{width: 100%;}
  .sup_service_rightbox{
    width: 90%;
    padding-left: .5em;
  }
  .sup_service .sup_service_topcopy{
    font-size: 14px;
    padding-bottom: 1em;
  }
  .sup_service .sup_service_copy{
    font-size: 15px;
    margin: 3% 0;
  }
  .sup_service .sup_service_text{font-size: 12px;}
}

@media screen and (min-width: 768px){
  .sup_service{
    max-width: 864px;
    margin: 0 auto;
  }
  .sup_service_box{margin: 0 auto;}
  .sup_service_leftbox{width: 30%;}
  .sup_service_rightbox{
    width: 65%;
    padding-left: 2em;
  }
  .sup_service .sup_service_topcopy{
    font-size: 15px;
    margin-bottom: 3%;
  }
  .sup_service .sup_service_copy{
    font-size: 20px;
    margin: 0 0 1% 0;
  }
  .sup_service .sup_service_text{font-size: 15px;}
}



/*-----------------------------------------------------------------------
reason
-----------------------------------------------------------------------*/

@media screen and (max-width: 767px){
.reason h2 {
margin: 0 0 10px;
text-align: center;
}

.reason h2 img{
width: 100%;
}

.reason .lead {
margin: 0 0 17px;
font-size: 17px;
font-weight: bold;
text-align: center;
line-height: 1.4em;
}

.reason_top{
padding-bottom: 20px;
border-bottom: solid 1px #c2c2c2;
}

.reason_top .reason_toptext{
text-align: center;
line-height: 1.4em;
}

.reason_main{
margin: 40px 0;
}

.reason_main h2.main_topcopy{
color: #069;
padding-bottom: 8%;
}

.reason_main .reason_mainbox{
width: 90%;
margin: 0 auto;
padding-bottom: 32px;
}

.reason_mainbox::after{
content: "";
display: block;
clear: both;
}

.reason_main .reason_mainbox:nth-child(4){
padding-bottom: 0px;
}

.reason_mainbox_left img{
width: 50%;
padding: .3em .5em 0 0;
float: left;
}

.reason_mainbox_right{
text-align: justify;
}

.reason_mainbox_right h3.right_h3border{
margin-top: 0;
font-size: 20px;
padding-bottom: 5px;
}

.right_h3border.dsp{
font-size: 17px;
border-bottom: solid 2px #069;
margin-bottom: 2%;
padding-bottom: 1%;
text-align: center;
}

.reason_mainbox_right p{
margin-bottom: 0;
}

.reason_mainbox_sub{
background-color: #d6ecf5;
padding: 5%;
margin: 3% 0 13%;
border: solid 1px #069;
}

.reason_mainbox_sub h3{
font-size: 15px;
text-align: center;
}

.reason_mainbox_sub p{
margin-bottom: 0;
}

.reason_mainbox_list{
margin: 2% auto;
width: 90%;
padding: 10%;
border-top: solid 1px #c2c2c2;
border-bottom: solid 1px #c2c2c2;
}

.reason_mainbox_list h3.mainbox_list_head{
text-align: center;
color: #069;
font-size: 20px;
padding-bottom: 5%;
}

.reason_endbox .reb_box01{
widows: 22%;
}

.reason_end_boxlist{
margin: 0 auto;
}

.reason_endbox_top{
text-align: center;
margin-bottom: 20px;
}

.reason_endbox_top h3{
font-size: 17px;
line-height: 1.4em;
padding-bottom: 5px;
}

.reason_endbox_top p{
text-align: left;
}

.reason_endbox .endbox_head{
padding-bottom: 3%;
}

.reason_end_boxlist{
width: 100%;
text-align: center;
}

.reason_end_list{
width: 48%;
display: inline-block;
vertical-align: top;
border: solid 1px #afafaf;
padding: .5em;
margin: 0 1% 2% 1%;
}

.reason h4.reason_end_copy{
font-size: 13px;
padding: .4em 0;
}

.reason h4.reason_end_copy.line-height{
line-height: 2.2;
font-size: 13px;
padding: 4.7% 0%;
}

.reason_end_list .reason_end_text{
font-size: 90%;
text-align: left;
}

.reason_end_img{
margin-bottom: 0;
}

.reason_end_img img{
width: 100%;
}

.reason_footcopy p{
font-size: 14px;
line-height: 1.4em;
text-align: center;
padding-top: 10%;
}
}

@media screen and (min-width: 768px){
.reason {
padding: 5px 20px 85px;
}

.reason h2 {
margin: 0 0 28px;
text-align: center;
}

.reason .lead {
margin: 0 0 20px;
font-size: 22px;
font-weight: bold;
text-align: center;
}

.reason_top{
padding-bottom: 30px;
border-bottom: solid 2px #c2c2c2;
}

.reason_top .reason_toptext{
padding-top: 10px;
text-align: center;
}

.reason_main{
margin-bottom: 60px;
border-bottom: solid 2px #c2c2c2;
}

.reason_main h2.main_topcopy{
color: #006699;
font-size: 26px;
padding: 40px 0 20px;
}

.reason_main .reason_mainbox{
display: flex;
padding-top: 25px;
justify-content: center;
}

.reason_main .reason_mainbox:first-child{
padding-top: 60px;
}


.reason_mainbox_right{
width:690px;
padding-left: 30px;
text-align: justify;
}

.reason_mainbox_right h3.right_h3border{
margin-top: 0;
font-size: 20px;
padding-bottom: 5px;
}

.reason_mainbox_right h3.right_h3border::before{
content: "";
border-left: solid 5px #006699;
padding: 0 .5%;
}

.reason_mainbox_sub{
background-color: #d6ecf5;
border: solid 1px #069;
padding: 1.2em 1.6em;
margin-bottom: 2%;
}

.reason_mainbox_sub h3.sub_h3{
font-size: 17px;
margin-bottom: 5px;
}

.reason_mainbox_sub p{
margin-bottom: 0;
}

.reason_mainbox_list{
margin: 40px auto 30px;
padding: 30px 20px 20px;
margin-top: 60px;
border-top: solid 2px #c2c2c2;
}

.reason_mainbox_list h3.mainbox_list_head{
text-align: center;
margin-top: 0;
padding: 20px 0 25px;
color: #069;
font-size: 25px;
}

.reason_mainbox_list .mainbox_listbox{
display: flex;
flex-wrap: nowrap;
justify-content: center;
}

.mainbox_listbox .main_list_item{
padding-right: 40px;
}

.main_list_item:last-child{
padding-right: 0px;
}

.main_list_item li{
font-size: 14px;
}

.reason_endbox{
margin: 0 auto;
}

.reason_endbox .reb_box01{
widows: 22%;
}

.reason_end_boxlist{
margin: 0 auto;
}

.reason_endbox_top{
text-align: center;
margin-bottom: 20px;
}

.reason_endbox_top h3.endbox_head{
padding-bottom: 10px;
}

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

.reason_end_list{
width: 24%;
border: solid 1px #afafaf;
padding: 1.4em;
margin: 0 0.5% 30px;
}

.reason h4.reason_end_copy{
height: 48px;
margin: 0.5em 0 0.2em;
line-height: 1.4;
font-size: 14px;
text-align: center;
}

.reason_end_list .reason_end_img{
text-align: center;
}

.reason_end_list .reason_end_text{
text-align: left;
}

.reason_footcopy p{
text-align: center;
margin-top: 1.5em;
font-size: 18px;
line-height: 1.4em;
}

}



.sec_list_pointcase{
  background-color: var(--color-gray03);
}


.list_case_w{
  width: 100%;
  max-width: inherit !important;
}
h3.ttl_page_case,
h3.ttl_page_house,
h3.ttl_page_mansion{
  text-align: center;
  margin:0 auto 1em;
  color: #006699;
}
.list_report{
  flex-direction: row;
  max-width: 1040px;
  margin: 0 auto;
  align-items: flex-start;
}
.list_case{
  flex-direction: row;
  margin: 0 auto;
  align-items: flex-start;
}

.list .entry-card {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  flex-direction: row;
}
.table_caseInfo{
  margin-bottom: 10px;
}
.list_report .entry-card-wrap .entry-card-content{
  width: 100%;
}
@media screen and (min-width: 768px) {
  .list_report .entry-card-wrap{
    width: calc((100% / 12) * 4) !important;
    padding: 0 10px 20px !important;
  }
}
.list_report article{
  display: flex;
  flex-wrap: wrap;
  text-align: left;
}
.block_switch {
  display: flex;
  flex-wrap: wrap;
}
.block_switch > div.contents__blockSwitch {
  width: 100%;
  padding: 1.5em 1em;
}


/*add sidebar
------------------------------------------------------------------------------*/
ul.list__sidebar{
  padding:0;
}
ul.list__sidebar li{}
ul.list__sidebar li a{}
@media screen and (max-width: 1023px) and (min-width: 480px) {
  ul.list__sidebar{
    display: flex;
    flex-wrap: wrap;
  }
  ul.list__sidebar li{
    width: 50%;
  }
}


.sec__bg_bule {
    background-color: #d6ecf5;
}
.sec__bg_gray{
    background-color: #f4f4f4;
}
/*ul.list__sidebar li{
  list-style: none;
}
ul.list__sidebar li {
  position: relative;
}

ul.list__sidebar li:before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    left: -1.25em;
    top: calc(50% - 5px);
    z-index: 4;
     background: url(/img/common/icon_arrow_o.png) no-repeat center center / contain;
  }*/


ul.list__sidebar{
  padding-left: 4px;
  list-style: none;
  padding-top:10px;
}
ul.list__sidebar li{

}
ul.list__sidebar li a{
  position: relative;
  display: block;
  width: 100%;
  text-decoration: none;
  font-weight: bold;
  color: #333;
  font-size: 14px;
  line-height: 2.5;
}
ul.list__sidebar li a:before{
  position: absolute;
  content: "";
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  right: 0.75em;
  top: calc(50% - 8px);
  background: url(/img/common/icon_arrow_o.png) no-repeat center center / contain; 
}
@media screen and (min-width: 768px) {
  ul.list__sidebar li a,
  ul.list__sidebar li a:before{
      transition: var(--transition);    
  }
  ul.list__sidebar li a:hover{
    color:#006699;
  }
  ul.list__sidebar li a:hover:before{
    right: 0.25em;
    background: url(/img/common/icon_arrow_o.png) no-repeat center center / contain; 
  }
}