@charset "utf-8";
/*
Theme Name: SEEED child
Theme URI:https://tcd-theme.com/tcd105/
Description:WordPressテーマ「SEEED」の子テーマ
Template:seeed_tcd105
Author:TCD
Author URI:https://tcd-theme.com/
Version:1.0
*/

/*
  ここから下にCSSを追記してください。
*/

/* プラグイン対策のためトップだけ二重に定義 */
body.home .blog_list { width:1030px; margin-bottom:1px !important; }

/* TCDCEから移設したもの */
.qt_google_map { width:100%; height:450px; background:#ddd; margin:0 0 35px 0 !important; }
.qt_google_map .qt_googlemap_embed { width:100%; height:450px; }
.qt_google_map .pb_googlemap_custom-overlay-inner {
  display:-webkit-box; display:-ms-flexbox; display:flex;
  position:absolute; top:-100px; left:-60px;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;
  width:120px !important; height:120px !important; border-radius:50%;
  font-size:16px; text-align:center; padding:0 15px; box-sizing:border-box; font-weight:600;
}
.qt_google_map .pb_googlemap_custom-overlay-inner::after {
  display:block; position:absolute; right:0; bottom:-15px; left:0; width:0; height:0;
  margin:auto; border-width:16px 5px 0 5px; border-style:solid; content:"";
}
@media screen and (max-width: 800px) {
  .qt_google_map { height:360px; }
  .qt_google_map .qt_googlemap_embed { height:360px; }
  .qt_google_map .pb_googlemap_custom-overlay-inner { transform:scale(0.8); left:-60px; top:-80px; }
}

/* 検索結果ページ:tcdce関連の左寄せ調整 */
#no_search_result .tcdce-box { text-align: left; }
#no_search_result .custom_ul li { text-align: left; }
#no_search_result .custom_ol li { text-align: left; }
#no_search_result .tcdce-sb-content { text-align: left; }
#no_search_result .tcdce-button { text-decoration: none !important; }

/*-------- 色指定 ---------*/
:root {
  --s-text:#2f496e; /*文字の色*/
  --s-line:#2f496e; /*線の色*/
  --s-bg1:#eaf4fc; /*ストライプ背景の色*/
}

.simple-table{
color:var(--s-text);	
background-color:white;
border:2px solid var(--s-line);
}

.simple-table thead{
border-bottom:2px solid var(--s-line);	
}

.simple-table th, .simple-table tr:nth-child(even){
background-color:var(--s-bg1);
}

.simple-table table td ,.simple-table table ,.simple-table table th {
text-align:center;
border-color:var(--s-line);
}

@media screen and (max-width: 1301px){
  #drawer_menu { background: #003266; }
  #drawer_menu a,
  #drawer_menu_sns.color_type1 a:before,
  #drawer_menu_search .button_area:before,
  #drawer_menu .close_button:before { color: #FFFFFF; }
  #drawer_menu .menu li.menu-item-has-children > a > .button:before,
  #drawer_menu .menu li.menu-item-has-children > a > .button:after { background: #FFFFFF; }
  #drawer_menu .menu ul ul { background-color: ◎; }
}

#index_achievements {
 border-top:none;
}

/* 横並び */

.flex {
  display: flex; /*横並び*/
}
.flex + .flex {
  margin-top: 2em
}
.flex .image {
  width: 300px; /*画像サイズ指定*/
  margin: 0;
  padding: 0;
  overflow: hidden;
  position: relative;
}
.flex .image img {
	margin: 0;
}
.flex .right {
	width: calc(100% - 300px);
  margin: 0 0 0 20px;
  padding: 0;
}
.flex .title {
  margin: 0;
  padding: 0;
  font-weight: bold;
  font-size: 18px;
}
.flex .text {
  margin: 0;
  padding: 0;
}



/* スマホは1列 */
@media (max-width: 768px) {
  .linenupColumnBlock {
    grid-template-columns: 1fr;
  }
}

/* ===== 強みセクション全体 ===== */
.strengths-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 16px;
}

.strengths-title {
  text-align: center;
  font-size: 28px;
  margin-bottom: 80px;
}

/* ===== 各ブロック ===== */
.strengths-item {
  display: flex;
  align-items: flex-start;
  gap: 48px;
  margin-bottom: 80px;
}

/* 交互レイアウト */
.strengths-item.reverse {
  flex-direction: row-reverse;
}

/* ===== 画像 ===== */
.strengths-item img {
  width: 45%;
  max-width: 520px;
  height: auto;
  display: block;
  border-radius: 4px; /* デザインカンプに合わせて調整可 */
}

/* ===== テキスト ===== */
.strengths-text {
  width: 55%;
}

.strengths-text h3 {
  font-size: 50px;
  margin-bottom: 16px;
	margin-top: 0 !important;
}

.strengths-text p {
  line-height: 2.0 !important;
  font-size: 16px;
	margin-top: 0 !important;
  margin-bottom: 0 !important;
	margin: 0;
}

.strengths-text h3.strength-title.strength-connect-title {
  margin-top: 150px;   /* 下に下げたい量 */
}

/* 見出し直下の本文との余白を詰める */
.wp-block-heading + p {
  margin-top: 0.5em;
}

/* フリースペース内の不要な余白をすべて無効化 */
.tcd-free-space p {
  margin-top: 0;
  margin-bottom: 0;
}

/* 見出し直下の余白調整 */
.tcd-free-space h3 {
  margin-bottom: 0.4em;
}

/* ===== 強みセクション：見出しと本文の余白調整（上書き） ===== */
.strengths-text h3 {
  margin-bottom: 4px;
}

.strengths-text h3 + p {
  margin-top: 0;
}

/* ===== 強みセクション：モバイル調整 ===== */
@media (max-width: 768px) {

  .strengths-item {
    flex-direction: column;
    gap: 10px !important;
    margin-bottom: 48px;
  }

  /* reverse指定も縦並びに */
  .strengths-item.reverse {
    flex-direction: column;
  }

  /* 画像をフル幅に */
  .strengths-item img {
    width: 100%;
    max-width: 100%;
  }

  /* テキストもフル幅に */
  .strengths-text {
    width: 100%;
  }

  /* 見出し（つながる 等） */
  .strengths-text h3 {
    font-size: 28px;
    margin-bottom: 12px;
  }

  /* 本文 */
  .strengths-text p {
    font-size: 13px;
    line-height: 1.8;
  }

}

/*　ラインナップ　*/
.lineup-section {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

.lineup-title {
  text-align: center;
  font-size: 20px;
  margin-bottom: 20px;
}

.lineup-main-title {
  text-align: center;
  font-size: 40px;
  margin-bottom: 20px;
}

.lineup-lead {
  text-align: center;
  margin-bottom: 50px;
	font-size: 18px;
}

.lineup-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

/* 各商品ブロック全体 */
.lineup-item {
  text-align: left;
}

.lineup-item img {
  width: 100%;
  height: auto;
  display: block;
}

/* 商品名 */
.lineup-item h2 {
  margin-top: 15px;
  margin-bottom: 10px;
  font-size: 25px;
  line-height: 1.8;
  font-weight: bold;
}

/* 商品説明 */
.lineup-item p {
  max-width: 420px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.8 !important;
  text-align: left;
}

.lineup-button {
  display: block;
  margin-top: 15px;
  padding: 12px 0;
  text-align: center;
  background-color: #00a0e9;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
	font-size: 16px;
}

/* マウスを乗せた時 */
.lineup-button:hover {
	background-color: #0059b2;
	color: #fff;
}

/* クリック中 */
.lineup-button:active {
  background-color: #004a96;
  color: #fff;
}

.lineup-button,
.lineup-button:hover,
.lineup-button:active {
  color: #fff !important;
}

/* CTA全体のラッパー */
.lineup-cta-wrapper {
  text-align: center;
  margin-top: 60px;
}

/* 見出し */
.lineup-cta-title {
  font-size: 30px!important;
  margin-bottom: 20px;
  line-height: 1.6;
}

/* 既存の .lineup-button を中央用に微調整 */
.lineup-cta-wrapper .lineup-button {
  display: inline-block;   /* 中央揃えに必須 */
  margin: 10px 0;
  padding: 15px 40px;
	color: #fff;
	text-align: center;
	border-radius: 50px;  /* 角丸ボタン */
}

/* スマホ対応 ラインナップ */
@media (max-width: 768px) {
  .lineup-grid {
    grid-template-columns: 1fr;
  }
	
	h1.lineup-main-title {
  font-size: 18px;
}
	
	.lineup-lead {
		font-size: 15px;
	}
	
  .lineup-item h2 {
    font-size: 17px;
  }

  .lineup-item p {
    font-size: 13px;
  }
	
	h3.lineup-cta-title {
		font-size: 18px;
	}
	
	.lineup-cta-wrapper .lineup-button  {
  margin-top: 15px;
  padding: 10px 40px;
  font-size: 13px;
}
	
	.lineup-main-title　{
		font-size: 35px !important; 
	}
	
	.lineup-cta-wrapper {
		margin-top: auto;
	}

}

/* ビジネスフォン人気ランキング*/
.popular-title {
	text-align: center;
	font-size: 25px;
	margin-bottom: 20px !important;
}

.popular-item {
  display: flex;
  gap: 40px;
  margin-bottom: 40px;
  align-items: center;
}

.popular-image img {
  max-width: 100%;
  height: auto;
}

.popular-image {
  flex: 1;
}

.popular-text {
  flex: 1;
}

.popular-text h3 {
	font-size: 23px;
	margin-top: auto !important;
}

.popular-text p {
	font-size: 18px;
	line-height: 1.8 !important;
	margin-bottom: 6px;
}

.maker {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 10px !important;
}

/* タグ */
.popular-tags {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  margin-top: 20px;
  padding: 0;
  list-style: none;
}

.popular-tags li {
  background-color: #285B9E;
  color: #fff;

  font-size: 12px;
  padding: 5px 4px;
  min-height: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  line-height: 1.2;
  border-radius: 3px;
  word-break: break-word;
	word-break: keep-all;
	font-weight: bold;
}

/* お問い合わせバナー */
.support-text {
	font-size: 40px;
	text-align: center;
	font-weight: bold;
}

.post_content p {
    line-height: 2.6;
    margin: auto;
}

/* ビジネスフォン人気ランキング　SP */
@media screen and (max-width: 768px) {
	
	.popular-title {
		font-size: 17px;
	}

  /* 全体の左右余白（画面端ベタ付きを防ぐ） */
  .popular-set {
    padding: 0 14px;
  }

  /* 1商品＝1箱（カード） */
  .popular-item {
    flex-direction: column;
    gap: 16px;
    border-radius: 12px;
    padding: 18px 14px 20px;
    margin-bottom: 28px;
  }

  /* 画像をカード内で綺麗に */
  .popular-image img {
    max-width: 100%;
    border-radius: 6px;
    display: block;
    margin: 0 auto;
  }

  /* テキスト全体を中央寄りに */
  .popular-text {
    margin-top: 8px;
  }

  .popular-text h3 {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 0 !important;
    margin-bottom: 6px;
    text-align: center;
  }

  .maker {
    font-size: 14px;
    margin-bottom: 10px;
    text-align: center;
  }

  .popular-text p {
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 10px;
  }

  /* タグ：2列で箱内に収める */
  .popular-tags {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin-top: 30px;
  }

  .popular-tags li {
    font-size: 11px;
    min-height: 26px;
    padding: 4px 3px;
  }
	
	/* お問い合わせバナー */
.support-text {
	font-size: 13px;
}
}






/* ===== SP対応 ===== */
@media (max-width: 768px) {
  .strengths-item,
  .strengths-item.reverse {
    flex-direction: column;
  }

  .strengths-item img,
  .strengths-text {
    width: 100%;
  }

  .strengths-item {
    gap: 24px;
    margin-bottom: 48px;
  }

  .strengths-title {
    font-size: 22px;
    margin-bottom: 48px;
  }
}


@media screen and (max-width: 786px){
.flex_sp {
  flex-wrap: wrap;
}
	.flex_sp .image {
		width: 100%;
	}
.flex_sp .image img{
	display: block;
	margin: 0 auto 0;
}
.flex .right {
	width: 100%;
}
}

/* ラインナップ */
.post_content .lineUpList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -4em;
  margin-bottom: 4em;
}
.post_content .lineUpItem {
  list-style: none;
  width: 45%;
  margin-top: 4em;
}
.post_content .lineUpItem:first-child {
  margin-top: 4em;
}
.post_content .lineUpItem dl {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  width: 100%;
}
.post_content .lineUpItem dt,
.post_content .lineUpItem dd{
  width: 100%;
}
.post_content .lineUpItem dt br{
  display: none;
}
.post_content .lineUpItem .label{
  display: block;
  padding: 1em;
  background-color: #0693e3;
  color: #fff;
  font-size: 1.25em;
  text-align: center;
}
.post_content .lineUpItem .subTxt{
  display: block;
  margin-top: 10px;
  font-weight: bold;
  font-size: 1em;
}
.post_content .lineUpItem img {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}
.post_content .lineUpSubImg img {
  display: block;
  margin: 0 auto;
}
.post_content .lineUpSubImg +.lineUpSubImg {
  margin-top: 4em;
}
/* 20240618追加 */
.linenupColumnBlock .wp-block-group {
  width: 100%;
}
.linenupNameLabel {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin: 0 !important;
	width: 100%;
}
.linenupNameLabel strong{
	display: block;
}

@media screen and (max-width: 786px){
.post_content .lineUpItem {
  max-width: 450px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
}

/* コメントセクション全体を非表示にする */
#comments {
    display: none;
}