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

/* グローバルナビの下線位置調整 */
.c-gnav>.menu-item>a:after {
	bottom: 2.1em !important; /* 表示位置を少し上に変更 */
	height: 0.2em !important; /* 線太さを少し太めに変更 */
}

/* トップページ選ばれる理由コンテナの背景設定 */
.custom-white-box {
  background-color: #ffffff !important;
}

/* 1カラムのカラムブロックを中央揃え */
.single-column-container {
    display: flex;
    justify-content: center; /* 水平方向の中央揃え */
    width: 100%;
}

.single-column-container > div {
    max-width: 800px; /* コンテンツの幅を制限（調整可能） */
    width: 100%;
}

/* Googleアイコン */
.icon-text {
    display: flex;
    align-items: center; /* アイコンとテキストを縦方向で中央揃え */
    gap: 8px; /* アイコンとテキストの間隔 */
    white-space: nowrap; /* テキストの改行を防ぐ */
}

.icon-text span {
    font-size: 1.0rem; /* デフォルトのフォントサイズ */
}

/* スマホ画面でフォントサイズを小さくする */
@media screen and (max-width: 480px) {
    .icon-text span {
        font-size: 1rem; /* スマホではフォントサイズを小さく */
    }
}

/* サンクスページでタイトル・お知らせバー・パンくずを非表示 */
.page-id-1313 .c-infoBar,
.page-id-1313 .p-breadcrumb,
.page-id-1313 #breadcrumb,
.page-id-1313 .post_title,
.page-id-1313 .c-pageTitle {
  display: none !important;
}
/* サンクスページだけ本文の余白をなくす */
.page-id-1313 .post_content {
  margin: 0 !important;
}

/* サンクスページだけ l-content の上部余白を削除 */
.page-id-1313 .l-content {
  padding-top: 0 !important;
}


/************************************
** contact form7 カスタマイズ
************************************/
.haveto{
font-size:11px;
padding:2px 5px;
background:#FF0000;/*必須 色の変更はこちら*/
color:#fff;
margin:0px 5px;
position:relative;
bottom:2px;
}

/* 行間広め */
.wpcf7-form p {
  margin-bottom: 18px;
}

/* 入力フィールド */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
  width: 100% !important;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 16px;
}

/* 送信ボタン */
.wpcf7 input[type="submit"] {
  display: block;
  width: 100% !important;
  background-color: #008B8B; /* スマネスの基調カラーに合わせる */
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 14px 0;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.wpcf7 input[type="submit"]:hover {
  background-color: #00a0a0; /* 濃いめブルー */
}

/* ===== SmartNest CTA for Fullwidth Block ===== */
:root {
	--sn-teal: #008B8B;
	--sn-teal-light: #e9f6f6;
	--sn-text: #223;
	--sn-muted: #556;
	--sn-line: var(--sn-teal);
}

.sn-footer-cta__inner {
	text-align: center;
	color: var(--sn-text);
	padding: 3rem 1rem;
	background: var(--sn-teal-light);
	margin-bottom: 0px;}

.sn-footer-cta__eyebrow {
	display: inline-block;
	font-size: .85rem;
	letter-spacing: .05em;
	color: var(--sn-teal);
	background: #fff;
	border: 1px solid #bde3e3;
	border-radius: 999px;
	padding: .25rem .75rem;
	margin-bottom: 1.5rem;
}

.sn-footer-cta__title {
	font-size: clamp(1.35rem, 2.4vw, 1.75rem);
	line-height: 1.3;
	margin-bottom: .6rem;
	font-weight: 700;
	color: var(--sn-text);
}

.sn-footer-cta__lead {
	font-size: clamp(.95rem, 1.6vw, 1rem);
	color: var(--sn-muted);
	margin-bottom: 1.25rem;
	padding: .75rem .75rem;}

.sn-footer-cta__buttons {
	display: flex;
	gap: .75rem;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin: 1rem 0 .8rem 0;
}

.sn-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	padding: .9rem 1.4rem;
	border-radius: 10px;
	font-weight: 700;
	text-decoration: none;
	line-height: 1;
	transition: all .25s ease;
	border: 2px solid transparent;
	min-width: 220px;
}
.sn-btn:active {
	transform: translateY(1px);
}

.sn-btn--line {
	background: var(--sn-line);
	color: #fff;
	box-shadow: 0 2px 8px rgba(0, 139, 139, .2); 
}
.sn-btn--line:hover {
	filter: brightness(1.05);
	box-shadow: 0 4px 12px rgba(0, 139, 139, .35); /* ← hover用も調整 */
}
.sn-btn--line i {
	font-size: 1.1rem;
}

.sn-btn--ghost {
	background: #fff;
	color: var(--sn-teal);
	border-color: #bde3e3;
}
.sn-btn--ghost:hover {
	background: #fff;
	border-color: var(--sn-teal);
	color: var(--sn-teal);
}

.sn-footer-cta__notes {
	font-size: .85rem;
	color: var(--sn-muted);
	margin-top: .4rem;
}

/* SP最適化 */
@media (max-width: 599px) {
	.sn-footer-cta__inner {
		padding: 2rem 1rem;
	}
	.sn-btn {
		width: 100%;
		min-width: 0;
	}
}

/* フッターCTA内のブログパーツを中央寄せ */
.footer_fukidashi {
	display:flex;
	align-items:center;
	justify-content:center;   /* 中央寄せのキモ */
	margin: 0 auto;
}


/* =================================================
   スマネスLPページ専用
   ================================================= */
@media not all and (min-width: 960px) {
  .sp-py-20 {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }
}

.swell-block-faq__item {
  background-color: #ffffff;
  border-radius: 12px;
  padding: 1.6em 2em;
  margin-bottom: 1.8em;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  border: 1px solid #eee;
}

/* 日付＋時間の横並び行 */
.form-date-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

/* CF7のwrapをフレックスの子要素として扱う */
.form-date-row .wpcf7-form-control-wrap{
  display:block;           /* spanをブロック化 */
}

/* SWELLのwidth:100%に勝つために上書き */
.form-date-row .wpcf7-form-control-wrap input{
  width:100% !important;   /* 各セルの中で100%にしておく */
}

/* 先頭＝日付（固定幅）／ 後ろ＝時間（短め＋可変） */
.form-date-row .wpcf7-form-control-wrap:first-child{
  flex:0 0 180px;           /* 日付を固定幅に */
  max-width:180px;
  min-width:160px;
}
.form-date-row .wpcf7-form-control-wrap:last-child{
  flex:1 1 280px;           /* 時間は短め＋可変 */
  min-width:180px;
  max-width:420px;
}

/* スマホでは縦並びに */
@media (max-width: 600px){
  .form-date-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .form-date-row .wpcf7-form-control-wrap,
  .form-date-row .wpcf7-form-control-wrap input{
    width:100% !important;
    max-width:100%;
  }
}


/* === TimeRex用 丸型CTAボタン（微調整版） === */
.sn-btn-timerex {
  display: inline-block;
  padding: 10px 100px;        /* ← 少し大きく */
  font-size: 36px;          /* ← 文字も少し大きく */
  font-weight: 700;
  color: #fff !important;
  background: #e94a2f;
  border-radius: 999px;      /* ← 999px → 28px にして角丸を弱める */
  border: 6px solid #f5c542;
  box-shadow: inset 0 0 0 6px rgba(255, 255, 255, 0.08);
  text-decoration: none !important;
  transition: all 0.25s ease;
}

.sn-btn-timerex:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
  filter: brightness(1.05);
}

.sn-btn-timerex::after {
  content: " \00BB";
  font-weight: 900;
  margin-left: 10px;
}

/* === TimeRex用 丸型CTAボタン（微調整版） === */
.sn-btn-timerex-sp {
  display: inline-block;
  padding: 10px 40px;        /* ← 少し大きく */
  font-size: 24px;          /* ← 文字も少し大きく */
  font-weight: 700;
  color: #fff !important;
  background: #e94a2f;
  border-radius: 999px;      /* ← 999px → 28px にして角丸を弱める */
  border: 6px solid #f5c542;
  box-shadow: inset 0 0 0 6px rgba(255, 255, 255, 0.08);
  text-decoration: none !important;
  transition: all 0.25s ease;
}

.sn-btn-timerex-sp:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
  filter: brightness(1.05);
}

.sn-btn-timerex-sp::after {
  content: " \00BB";
  font-weight: 900;
  margin-left: 10px;
}
