@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* 共通 */
body {
  font-family: 'ReadableNumberSerif', 'Cormorant Garamond', 'Freight', 'Noto Sans JP', 'YuMincho', 'Yu Mincho', serif;
}
.num {
  font-family: "Noto Serif JP", serif !important;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: inherit;
  font-feature-settings: inherit;
  font-variant-numeric: inherit;
}

/* contactページのみフッターCTA非表示 */
.page-id-50 #before_footer_widget {
  display: none !important;
}

/* worksリストの、メタデータ(日付)のみ削除 */
[class*="works"] .p-postList__meta {
  display: none !important;
}
/* works詳細の、メタデータ(日付)のみ削除 */
[class*="works"] .p-articleMetas__times {
  display: none !important;
}


/* PC設定 */
/* ヘッダーのMako&Co.テキストリンク非表示 */
.sp-header-center-text {
  display: none !important;
}

/* TOP_FV */
.fv_txt {
  margin: 12rem 8rem 0 0;
  font-size: 1.6rem;
}
.fv_txt-en {
  margin-right: 7rem;
  font-size: 2.2rem;
}

.contact_btn a {
  color: #fff!important;
}
.is-style-clmn-border>.swell-block-columns__inner>.swell-block-column {
  border: 1px solid #b49868;
  background-color: #e2ded4;
}


/* 投稿リストtitle背景縦幅調整 */
.p-postList.-type-card .p-postList__item {
  display: flex !important;
  flex-direction: column !important;
}
.p-postList.-type-card .p-postList__link {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  width: 100% !important;
}
.p-postList.-type-card .p-postList__body {
  background-color: #e2ded4;
  padding: 10px;
  flex-grow: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}
.p-postList.-type-card .p-postList__meta {
  margin-top: auto !important;
  padding-top: 10px !important;
}
.p-postList.-type-card .p-postList__title {
  font-size: 0.8rem;
  margin: 0 !important;
  line-height: 1.4;
}

/* wellbeing_media */
.media_jp {
  font-size: 1rem;
}
.media_more {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  background-image: url('https://makoandco.com/wp-content/uploads/2026/07/bg-leaf-scaled.jpg') !important;
  background-size: cover !important;
  position: relative !important;
}
.swell-block-column.media_more a {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  color: inherit !important;
  text-decoration: none !important;
}
.media_bg {
  background-color: #e2ded4;
  padding: 1em;
}
.swell-block-column:has(.media_bg) {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}
.swell-block-column:has(.media_bg) .wp-block-image {
  margin-bottom: 0 !important;
  flex-shrink: 0 !important;
}
.swell-block-column .media_bg {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  margin-top: 0 !important;
}
.media_bg .wp-block-group__inner-container {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
/* ブロック中のテキスト：改行と余白調整 */
.media_bg .wp-block-heading {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
  font-size: 1.3rem !important;
  line-height: 1.3 !important;
}
.media_bg p.wp-block-paragraph {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  line-height: 1.5 !important;
  word-break: break-all !important;
}

/* Aboutアンカーリンク ストップ位置 */
#profile,
#project {
  scroll-margin-top: 140px !important;
}

/* footer周り */
.l-footer__foot, .l-footer__widgetArea {
  padding-bottom: 0!important;
  padding-top: 0!important;
}
.l-footer .copyright {
  margin-bottom: 10px !important;
}

/* スマホ設定 */
@media screen and (max-width: 767px) {
  /* TOP_FV */
  .fv_txt {
    margin: 7rem 1rem 0 0;
    font-size: 1rem;
  }
  .fv_txt-en {
    margin-right: 1rem;
    font-size: 1.4rem;
    font-weight: bold;
  }
  /* 投稿リストtitle背景 */
  .p-postList__body {
    min-height: 5rem;
    padding: 10px 5px;
  }
  .p-postList .p-postList__title {
    font-size: 0.9rem!important;
  }

  .swell-block-columns.com_area {
    --swl-clmn-mrgn--x: 0.6rem!important;
    --swl-clmn-mrgn--y: 0.8rem!important;
    --swl-clmn-pddng: 0!important;
  }

  /* 1. フッターメニューの各項目（aタグ）の高さと並びを整える */
  .p-fixNav__item a,
  .p-fixBtnList__item a {
    height: auto !important;          /* 高さを自動にして上下の詰まりを解消 */
    padding-top: 6px !important;      /* 上部の余白 */
    padding-bottom: 6px !important;   /* 下部の余白 */
    display: flex !important;
    flex-direction: column !important; /* アイコンと文字を上下に並べる */
    justify-content: center !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
  /* 2. <li>側に付いているメールアイコン（::before）の調整 */
  .p-fixNav__item.icon-mail::before,
  .p-fixBtnList__item.icon-mail::before {
    font-size: 20px !important;       /* アイコンをすっきり見えるサイズに */
    line-height: 1 !important;
    margin-bottom: 2px !important;    /* 下の文字（Contact）との隙間 */
    display: block !important;
    height: auto !important;
  }
  /* 💡元々の不要な空の <i> タグがあれば非表示にする（予期せぬズレ防止） */
  .p-fixNav__item a i,
  .p-fixBtnList__item a i {
    display: none !important;
  }
  /* 3. 文字部分（Menu / Contactなど）の行高さ・サイズを美しく収める */
  .p-fixNav__item a span,
  .p-fixBtnList__item a span,
  .p-fixBtnList__label,
  .p-fixNav__label {
    font-size: 10px !important;       /* 文字をフッターに収まる10pxに */
    line-height: 1.2 !important;      /* 行間を詰めて下に突き抜けるのを防止 */
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
  }

  /* Aboutページ */
  .btn_about a {
    padding: 10px 5px;
    font-size: 0.8em;
  }
  /* worksリスト横スクロール */
  /* 一番外側のラッパー：はみ出しとスクロール強制 */
  /* div.scroll-sp-wlist {
    display: block !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 15px !important;
  } */
  /* スクロールバー非表示 */
  /* div.scroll-sp-wlist::-webkit-scrollbar {
    display: none !important;
  } */
  /* ul：News側スライダー設定干渉回避 */
  /* div.scroll-sp-wlist ul.p-postList {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    scroll-snap-type: x mandatory !important;
    padding: 0 4% !important;
    margin: 0 !important;
    width: max-content !important;
    animation: none !important;
    transform: none !important;
  } */
  /* li幅固定(右側チラ見せ) */
  /* div.scroll-sp-wlist .p-postList__item {
    width: 75vw !important;
    flex: 0 0 75vw !important;
    max-width: 75vw !important;
    margin-right: 16px !important;
    margin-left: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    scroll-snap-align: start !important;
  } */
  /* SWELL標準のスマホ1列設定（-sp-col1）の横幅100%を無効化 */
  /* div.scroll-sp-wlist .p-postList.-sp-col1 .p-postList__item {
    width: 75vw !important;
    flex: 0 0 75vw !important;
  } */
}

/* SWELL標準のスマホ判定幅(タブレット含) */
@media screen and (max-width: 959px) {
  /* スマホのみヘッダーにMako&Co.のテキストリンク設置 */
  .l-header__inner {
    position: relative !important;
  }
  .sp-header-center-text {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 10 !important;
    color: #333333 !important;
    font-size: 1.6rem !important;
    letter-spacing: 0.05em !important;
    text-decoration: none !important;
    font-weight: 600 !important;
  }
  .l-header__logo, .l-header__menuBtn {
    z-index: 11 !important;
  }

  /* Aboutアンカーリンクストップ位置 */
  #profile,
  #project {
    scroll-margin-top: 80px !important;
  }

  /* フッターナビ非表示 */
  /* .l-footer__nav {
    display: none;
  } */
}