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

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


/*フッター背景*/
#footer {
	background-image: url( https://hama.majorss.jp/wp-content/uploads/2025/05/f-back2.png );
	background-size: cover;
	height: auto;
}

/*左右余白*/
.wp-block-image {
    margin-left: -29px;
    margin-right: -29px;
}
@media screen and (max-width: 834px) {
   .wp-block-image { 
        margin-left: -24px;
        margin-right: -24px;
    }
  }

/* Cocoon 画像センター */
/* ブロックエディター（Gutenberg）用 */
.wp-block-image .aligncenter,
.wp-block-image img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* 従来の投稿（Classic Editor）用 */
.entry-content img {
  display: block;
  margin: 0 auto;
}
/* 投稿（single）ページの本文内画像を中央寄せ */
.single .entry-content img,
.single .entry-content .aligncenter {
  display: block !important;
  margin: 0 auto !important;
  float: none !important;
}

/* HOMEとsingle以外をタイトル調整 */
body:not(.single):not(.home):not(.category):not(.archive) .entry-title{
  position: absolute;
  z-index: 1;
  top: 130px;
  left: 50%;

  letter-spacing: 1.2rem;
  text-shadow:
  2px 2px .5px black,
  3px 3px 5px #fff;
  
  color: #2ca9e1;
  transform: translate(-50%, -50%);

  /*  top: calc(50% - 11px); 48px のフォントサイズを前提に半分 */
  transform: translateX(-50%);
  font-size: 2.5vw;
}
 





body.inquiry .entry-title, .archive-title{
  top: 50px;
}
body.category .entry-title, .archive-title{
  position:relative !important;
  font-size:1.2rem !important;
  top: 0;
}



body.category .main {
  padding: 0px 29px;
}


/*ヘッダー下余白*/
.entry-content {
	margin-top: 0;
}
.content {
	margin-top: 0;
}

/*日付非表示*/
.page .date-tags {
display: none;
}

/*画像表示*/
#media_image-2 {/*PC用*/
   display: block;
}

#media_image-3 {/*スマホ用*/
   display: none;
}

@media screen and (max-width:480px) {/*画面幅が480px以下のとき*/
   #media_image-2 {/*PC用*/
      display: none;
   }ss

    #media_image-3 {/*スマホ用*/
      display: block;
   }
}

/*見出し*/ 
/*H2見出し*/
.sitemap h2 {
	text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
	border-bottom: 3px solid #2181c8;
	border-right: 3px solid #2181c8;
	background: #9abce6;

}



.article h2 {
  color: #344178;
  text-align: center;
  padding: 1em;
  border-top: solid 2px #6cb4e4;
  border-bottom: solid 2px #6cb4e4;
  background: #f0f8ff;
	text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
}




/*H3見出し*/
.article h3 {
    background: #e9eff1;/*背景色（白）*/
    border-left: 4px double #339ecc;/*左線（太さ 二重線 色）*/
    display:block;
    font-size: 18px;/*文字サイズ*/
    padding: 0.7rem;/*文字回りの余白（上下左右）*/
}

/*H4見出し*/
.article h4 {
    border-top: 4px double #339ecc;/*上線（太さ 二重線 色）*/
    border-bottom: 1px solid #339ecc;/*下線（太さ 実線 色）*/
    display: block;
    font-size: 16px;/*文字サイズ*/
    padding: 1rem;/*文字回りの余白（上下左右）*/
}
/*ヘッダーに電話番号と問い合わせ*/
.header-in {
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.header-in:after {
  content: none;
}

.logo-text {
  padding: 10px 0;
}
 
.my-header {
  align-items: center;
  display: flex;
  gap: 1px;
 height: 80px;

}

.my-header a {
  color: #333;
  text-decoration: none;
}

.my-box > span {
  display: block;
  font-size: 12px;
}

.my-box .my-box2 {
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
  color: #333;
}

#text {
	height: 0px;
}

.moji {
	color: #333;
}

.my-banner a {
  background-color: #8bc34a;
  border-radius: 15px;
  color: #fff;
  font-size: clamp(10px, 2vw, 16px);
  padding: 10px;
}

.my-banner {
	margin-right: 10px;
}


/************************************
** 追加CSS
************************************/
.home h1.entry-title{
  text-align: center;
  font-size:.7rem;
}

.tbl_st_01 table th, .tbl_st_01 table td, .tbl_st_01 table{
  border: none;
  padding: 1em;
} 
.tbl_st_01 table tr{
  
  border-bottom: 1px solid #fff;
}
.tbl_st_01 table th{
  width:15%;
  white-space: nowrap;
}

.btn_map a {
  background: #00BB00;
  border: 2px solid #009900;
  border-radius: 10px;
  box-shadow: 3px 3px 1px rgba(0, 0, 0, 0.3);
}
.btn_map a:hover{
  background: #ffffff;
  color: #009900;
  border: 2px solid #009900;
  border-radius: 10px;
  box-shadow: 3px 3px 1px rgba(0, 0, 0, 0.3);
}



/* Hedder */
.wp-block-cover .wp-block-cover__inner-container, .wp-block-cover-image .wp-block-cover__inner-container {
  text-shadow: 0 0 3px #fff;
}
.wp-block-cover p.has-cocoon-white-color strong{
  text-shadow: 1px 1px black;
}

/************************************
** 特集ページイメージ横幅
************************************/
.report .widget-entry-cards.card-large-image .a-wrap {
  max-width: 100%;
}


/************************************
** 業務内容
************************************/
.wp-block-group.box5-4 {
  height: 100%;
}


/************************************
** フッターロゴ白
************************************/
img.site-logo-image.footer-site-logo-image {
  filter: brightness(0) invert(1);
}
#footer, #footer a:not(.sns-button), .footer-title {
  color: #fff;
  text-shadow: 1px 1px 3px black;
}

@media (width <=1023px) {
  .header-in {
    flex-direction: column;
  }
}

@media (width > 768px) {
  a[href*="tel:"] {
    pointer-events: none;
  }
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
  .mobile-footer-menu-buttons .menu-button {
      border: 1px solid #fff;
  }
}

/*834px以下*/
@media screen and (max-width: 834px){

  /*タイトル*/
  body.page .entry-title {
    font-size: clamp(16px, 5vw, 48px);
    width: 100%;
    padding: 0;
    margin: 0;
    text-align: center;
    top: calc(300px / 2);
}


  /*必要ならばここにコードを書く*/

 
  .blk_greeting .wp-block-column.is-layout-flow.wp-block-column-is-layout-flow {
      padding: 0 !important;
      text-align: center;
  }
  .blk_greeting .wp-block-column.is-layout-flow.wp-block-column-is-layout-flow img{
    width: 50%!important;
    text-align: center;
    margin: 0 auto;
  }

  ul.footer-bottom-contents-list{
    padding: 0!important;
  }
  ul.footer-bottom-contents-list li{
    text-align: center;
  }
  /*
  ul.menu-drawer li::before {
    content: "> ";  
    color: #333;
    margin-right: 0.5em;
  }*/
    /*モバイル時はヘッダーではなくフッターに問い合わせ表示*/
    .my-header{
      display:none!important;
    }
  ul.menu-drawer a{
    padding: 5px;
  }
  ul.menu-drawer a::before{
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    font-weight: 900;
    margin-right: 0.5em;
  }


  ul.menu-drawer > li:last-child {
    display: block;
    border: 1px solid #cdcdcd;
    text-align: center;
    padding: .5em;
    border-radius: 20px;
    box-shadow: 2px 2px 0 #bdbdbd;
  }
  ul.menu-drawer > li:last-child a{
    color: #fff;
  }
  ul.menu-drawer > li:last-child a::before{
    content: "\f0e0";
    display: inline-block;
    font: normal normal normal 14px / 1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-right: 1em;;
  }

  /* モバイルボタン */
  .mobile-footer-menu-buttons,
  .navi-menu-content,
  .mobile-footer-menu-buttons .menu-button > a,
  .mobile-footer-menu-buttons .menu-button:hover,
  .navi-menu-content a,
  .navi-menu-content a:hover {
    background: hwb(206.57deg 7.06% 14.12%);
    color: #fff;
  }

}


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

.logo-image {
	padding-top: 15px;
}
.article h1 {
 font-size: 22px;
}