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

html, body {
  overflow-x: hidden;
}

ul {
	list-style-type: none;
}

.t-align-center {
	text-align: center;
}
.t-align-right {
	text-align: right;
}

/* ハンバーガーメニュー */
.p-spMenu__body {
	z-index: 9999 !important;
}

	

/* ---------------------------------------------------------
// 追従ヘッダー
// カスタマイズから追従ヘッダーOFF時の追従CSS
// --------------------------------------------------------- */

#header.l-header {
	/* 100vwの代わりに左右0指定で全幅にする */
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	width: auto; /* width固定を解除 */
	z-index: 100; /* 他の要素の下に潜り込まないように */
	margin: 0;    /* 念のためmarginリセット */
	border: 0px solid red;	/* 検証用の赤い枠 */
	will-change: transform;	/* スクロール時のガタつき防止 */
}


/* --- 通常時（透過） --- */
#header.l-header, #header.l-header .l-container {
    background-color: transparent !important;
    transition: background-color 0.4s ease; /* ふわっと色を変える */
    border: none; /* 余計な線を消す */
}

/* --- スクロール時（背景色を出す） --- */
.is-my-header-scrolled #header.l-header {
    background-color: rgba(255, 255, 255, 0.8) !important; /* 少し濃いめ */
	
	/* 10px分後ろをぼかす */
    /* backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); */ /* Safari対策 */
}


/* 文字色の変更 */
.is-my-header-scrolled #header.l-header .c-gnav .ttl {
    color: #333333;
}



/* ログイン中（管理バーがある時）の調整 */
/* 管理バーの高さ分下げる */
/*
.admin-bar #header.l-header {
	top: 32px;
} */



/* ---------------------------------------------------------
// 追従ヘッダー ここまで
// --------------------------------------------------------- */


/* ---------------------------------------------------------
// レスポンシブ
// ブレイクポイント
// --------------------------------------------------------- */
.dw_pc_only{ /* PC表示 */ }
.dw_tab_only{ /* タブレット表示 */ }
.dw_sp_only{ /* スマホ表示 */ }


/* スマホ（599px以下）のみ表示 */
@media screen and (max-width: 599px) {
	/* スマホ非表示 タブレット */
	.dw_tab_only{
		display: none !important;
	}
	
	/* スマホ非表示 PC */
	.dw_pc_only {	
		display: none !important;
	}
	
	.dw_sp_only {	
		display: block !important;
	}
	
	/* スマホ非表示 */
	.dw_not_sp {
		display: none !important;
	}


	.l-header {
		background-color: rgba(255, 255, 255, 0.8) !important;
	}
	.page-id-8 .l-header {	/* スマホ トップページ */
		background-color: transparent !important; /* 白の80%透明 */
	}
	.home_top_comment .div_main .h5{
		text-shrink: per-line;
	}
	
	.image-waku1 p{
		font-size: 0.8em;
		font-weight: 400;
	}

  /* --- ロゴの色を変える --- */
	.c-headLogo img {
		filter: none;
	}
	/*
	[data-scrolled="true"] .c-headLogo img {
		filter: invert(999%) sepia(9%) saturate(4661%) hue-rotate(9821deg) brightness(23%) contrast(9%) !important;
	}
	*/

}


/* スマホのみ表示 */
@media screen and (min-width: 600px) {
	.dw_sp_only {	
		display: none !important;
	}
	.dw_not_sp {	/* スマホのみ非表示 */
		display: block !important;
	}
}

/* タブレット（600px〜959px）のみ表示 */
@media screen and (min-width: 600px) and (max-width: 959px) {
	/* PC非表示 タブレット */
	.dw_pc_only{
		display: none !important;
	}
	.dw_tab_only{
		display: block !important;
	}
	.image-waku1 p{
		font-size: 1.3em;
		font-weight: 900;
	}
	.p-spMenu__inner {	/* ハンバーガーメニュー幅 */
		max-width: 60vw;
	}
}

/* PC（960px以上）のみ表示 */
@media screen and (min-width: 960px) {
	/* PC非表示 タブレット */
	.dw_tab_only{
		display: none !important;
	}
	.dw_pc_only {
		display: block !important;
	}

	.image-waku1 p{
		font-size: 1.3em;
		font-weight: 900;
	}
	.p-spMenu__inner {	/* ハンバーガーメニュー幅 */
		max-width: 40vw;
	}

}



.single #header.l-header {
	background-color: rgba(255, 255, 255, 0.8) !important;
}


/* ---------------------------------------------------------
// ヘッダーウィジェット
// --------------------------------------------------------- */
@media screen and (min-width: 600px) {
	.w-header {
		display: block !important;
	}
}


/* ---------------------------------------------------------
// PCヘッダーメニュー
// --------------------------------------------------------- */
.c-gnav .ttl {
	font-weight: 900;
}

/* 固定ページのみ*/
.page .c-gnav .ttl, .id_945 .c-gnav .ttl {
	color: #fff;
}


.c-gnavWrap{
	margin: 0;
	padding: 0;
}


/* メインメニュー マウスオーバー時 下線表示 */
.c-gnav a::after {
	background: none !important;
}

/* マウスオーバーで色を変える */
#header #gnav li:hover {
	color : #e03a98;
	text-shadow: 0px 0 15px #e03a98;
	background: url("/wordpress/wp-content/uploads/2026/03/dw_img_bg_line4.png") no-repeat;	/* 背景画像 */
	background-size: contain;
	background-position: center 75%;
}


/* 追従ヘッダー マウスオーバーで色を変える */
#fix_header .c-gnav li:hover {
	color : #e03a98;
	text-shadow: 0px 0 15px #e03a98;
	background: url("/wordpress/wp-content/uploads/2026/03/dw_img_bg_line4.png") no-repeat;
	background-size: contain;
	background-position: center 75%;
}

/* サイド開閉メニュー（ハンバーガーメニュー色） */
.l-header__menuBtn {
	color: #fff;
}
.single .l-header__menuBtn, .is-my-header-scrolled .l-header__menuBtn {
	color: #333333;
}


[data-spmenu="opened"] .l-header__menuBtn, [data-spmenu="opened"] .l-header__menuBtn::before, [data-spmenu="opened"] .l-header__menuBtn::after {
	opacity: 0 !important;
	background-color: transparent !important;
	transition: all 0.3s;
}

#sp_menu li{
	list-style: none;	
}
#sp_menu li::marker { display: none;}


/* ---------------------------------------------------------
// ブレイクポイント：width 600-1220px　
// PCヘッダー制御
// --------------------------------------------------------- */
@media screen and (min-width: 600px) and (max-width: 1220px) {
	.l-header {
		position: fixed !important;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 100;
	}
	
/* 1. PC要素を消す */
	#gnav {
		display: none !important;
	}
		
/* 2. ヘッダーの中身をSWELLのモバイル版と同じ構成に強制 */
	.l-header__inner {
		display: flex !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		align-items: center !important;
		height: 100% !important;
		border: 0px solid green;
	}
	
	
/* 3. バーガーボタンを出現させる */
	.l-header__menuBtn, .is-my-header-scrolled .l-header__menuBtn {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important; /* クリックを有効にする */
		cursor: pointer !important; /* マウスを乗せた時に指マークにする */
		z-index: 99999 !important;	/* ロゴの透明な枠より手前に出す */
		order: 1; /* 一番左へ */
		margin-right: 0; /* 右側を押し出す */
		margin-top: -12px;
		border: 0px solid red;
	}
	
	

	
/* 4. ロゴの位置を調整（SWELLのモバイル版の挙動を再現） */
	.l-header__logo {
		order: 2; /* 真ん中へ */
		margin-left: auto;
		margin-right: auto;
		/*
		transform: translateX(-50%);
		*/
		/* margin: 0 auto !important; 左右中央に配置 */
		border: 0px solid brown;
		/* min-width: 200px !important; */
		/*
		width: 100vw !important;
		*/
		/* margin-left: 57vw !important; */		
	}

	 /* ヘッダーウィジェット */
	header .w-header {
		order: 3;
		margin-left: auto !important;
		border: 0px solid red !important;
	}
	/* ヘッダー内の wp-block-columns を折り返さないようにする */
	header .w-header .wp-block-columns {
		display: flex;
		flex-wrap: nowrap !important;
		align-items: center;
		gap: 0.5em;
		white-space: nowrap;
	}
	
	/* 各カラムも縮むように */
	header .w-header .wp-block-column {
		flex: 0 1 auto !important;
		white-space: nowrap;
	}
	
	/* 電話番号と受付時間の折り返し防止 */
	header .w-header .pc_navi_tel dt,
	header .w-header .pc_navi_tel dd {
		white-space: nowrap;
	}
	
	/* 古い iOS Safari（iOS12〜14）だけに適用される */
	@supports (-webkit-touch-callout: none) and (not (translate: none)) {
		header .w-header .wp-block-columns .wp-block-column:first-child {
			margin-right: 0.8em !important;
		}
	}
	
	
/* バーガーボタンの開閉用 */
	.p-spMenu {
		display: block !important;
	}

/* バーガーボタンの位置 */
	.c-iconBtn {
		margin-left: 10px;
	}

/* 1. フッターメニュー本体を表示させる */
	/*
	#fix_bottom_menu {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		transform: translateY(0) !important;
	}
	*/

/* 2. ページトップボタン（#pagetop）がメニューに被らないよう上に逃がす */
	.p-fixBtnWrap {
		bottom: 75px !important;	/* メニューの高さ（約60px〜70px）分だけ上に持ち上げます */
		transition: bottom 0.3s ease; /* 動きを滑らかにする */
	}
}

/* @media screen and (min-width: 600px) and (max-width: 1260px) { */
@media screen and (min-width: 600px) and (max-width: 1220px) {
	/* 通常時のヘッダー（透明） */
	.l-header {
		background-color: transparent;
		transition: background-color 0.3s ease;
		color: #fff;
	}
	
	/* スクロール時のヘッダー（白） */
	.is-my-header-scrolled .l-header {
		background-color: rgba(255, 255, 255, 0.8) !important;
	}
	
	/* 通常時のロゴ（白抜き） */
	.c-headLogo img {
		filter: none;
		transition: filter 0.3s ease;
	}
	
	/* スクロール時のロゴ（着色） */
	[data-scrolled="true"] .page-id-8 .c-headLogo img {
		filter: invert(999%) sepia(9%) saturate(4661%) hue-rotate(9821deg) brightness(23%) contrast(9%) !important;
	}
	
	.is-my-header-scrolled .c-headLogo img {
		filter: invert(999%) sepia(9%) saturate(4661%) hue-rotate(9821deg) brightness(23%) contrast(9%) !important;
	}
}




/* ---------------------------------------------------------
// ブレイクポイント：width1220px　ここまで
// --------------------------------------------------------- */



/* ---------------------------------------------------------
// キーフレーム
// --------------------------------------------------------- */
.dw_fuwafuwa {	/* ふわふわ・ゆらゆら アニメーション */
	animation: fuwafuwa 3s ease-in-out infinite alternate;
	background: url("/wordpress/wp-content/uploads/2026/02/0002.png") no-repeat center center / 60px auto;
	transition: 1.5s ease-in-out;
	justify-content: center;
	width: 70px;
	height: 70px;
	margin: 50px auto;
}

@keyframes fuwafuwa {
  0%, 100% {
    /* 元の位置 */
    transform: translateY(0);
  }
  50% {
    /* 上に7px移動 */
    transform: translateY(-7px);
  }
}

/* rotateを付けると角度がつくので左右に揺れます */
@keyframes fuwafuwa2 {
	0% {
		transform:translate(0, 0) rotate(-7deg);
	}
	50% {
		transform:translate(0, -7px) rotate(0deg);
	}
	100% {
		transform:translate(0, 0) rotate(7deg);
	}
}


.dw_kakukaku-box {	/* カクカク アニメーション */
	width: 70px;
	height: 70px;
	background: url("/wordpress/wp-content/uploads/2026/02/0002.png") no-repeat center center / 60px auto;
	justify-content: center;
	margin: 50px auto;
	animation: kakukaku-animation 5s steps(2) infinite;  /* アニメーションの設定 */
	z-index: -1;
}

/* アニメーションの定義 */
@keyframes kakukaku-animation {
	0%, 100% { transform: rotate(-30deg); }
	50% { transform: rotate(30deg); }
}
/* ---------------------------------------------------------
// キーフレーム　ここまで
// --------------------------------------------------------- */




/* ---------------------------------------------------------
// フルワイド
// --------------------------------------------------------- */
.dw_full_wide{
	padding: 0;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	
	position: relative;
}



/* ---------------------------------------------------------
// パンくずリスト非表示
// --------------------------------------------------------- */
#breadcrumb { display: none; }



/* ---------------------------------------------------------
// ハンバーガーメニュー（スマホ、タブレット、PC画面縮小時
// --------------------------------------------------------- */
.c-iconBtn__icon{
	/*
	border: 1px solid pink;
	padding: 10px;
	background: url("/wp-content/uploads/2026/03/dw_img_bg_rakugaki1.png") no-repeat;
	background: url("/wp-content/uploads/2026/02/0002.png") no-repeat;
	background-size: cover;
	*/
}



/* ---------------------------------------------------------
// 固定ページ
// --------------------------------------------------------- */
.page:not(.page-id-8) .l-topTitleArea, .id_945 .l-topTitleArea, .single .l-topTitleArea {	/* トップページ以外 */
	height: 500px;
}
.div_main_wrapper {
	margin-top: -190px;
	border: 0px solid red;
}
/* スマホ（599px以下）のみ表示 */
@media screen and (max-width: 599px) {
	.div_main_wrapper {
		margin-top: -175px; /* 176px */
		border: 0px solid red;
	}
}

/*　白画像　*/
.dw_div_top {
	background: url("/wordpress/wp-content/uploads/2026/03/dw_white_nami_top.png") no-repeat;
	height: 150px;
	width: 100%;
	background-size: cover;
	border: 0px solid #000000;
	background-position: center bottom;
}
.div_main {
	margin: 0px auto 0 auto;
	padding: 0 10px;
	border: 0px solid green;
	max-width: 1000px;
}

/* トップページ以外メインビジュアル */
.page #top_title_area{
	margin-top: -110px;
	text-align: center;
}
#top_title_area img {
	filter: brightness(0.8); /* ヘッダー画像 明るさ調整 */
}
	
.id_945 #top_title_area img {
	border-top: 0px solid red;
	background: url("/wordpress/wp-content/uploads/2026/03/dw_white_nami_top.png" no-repeat);
	background-size: cover;
	background-position: center bottom;
	width: 100%;
	height: 150px;
}

/* 投稿ページヘッダー画像エリア */
.single #top_title_area {
	
}

/* 各ページタイトル h1 */
.c-pageTitle{
	font-size: 1.72em;
	margin-top: 50px;
}

.c-pageTitle small.c-pageTitle__subTitle {
    display: block !important;
    font-weight: normal; /* サブタイトルを細くして強弱をつける */
    letter-spacing: 0.05em; /* 文字間隔を少し広げて読みやすく */
    margin-top: 8px;
	font-size: 0.58em;
    color: #fff; /* 少し色を薄くするとメインタイトルが引き立ちます */
}


/* ---------------------------------------------------------
// 固定ページ：プラン
// --------------------------------------------------------- */
/* サブメニュー全体 */
#subMenuWrapper {
	width: 100%;
	background: #fff;
	z-index: 1000;
}

.subMenu_3 {
	justify-content: space-between;
	padding: 0;
	margin: 0;
	width: 100%;
}

.subMenu_3 ul {
	display: flex;
	list-style-type: none;
	padding: 0;
	margin: 0;
	background-color: none;
}



.subMenu_3 li {
	flex: 1; /* これで 1/6 ずつの幅になる */
	margin: 0; /* 余白をなくす */
	font-size: 1em;
	width: 100%;
	height: 100px;
	/* 座標指定: 左上(1) -> 右上(2) -> 右下(3) -> 先端(4) -> 左下(5) */
	/* clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 50% 100%, 0% 80%); */	/* 下向き五角形：ホームベース型 */
}



.subMenu_3 li a {
	display: flex;             /* テキスト中央 */
	flex-direction: column; /* 中身を「縦」に並べる */
	justify-content: center;   /* 横中央 */
	align-items: center;       /* 縦中央 */
	padding: 0;
	width: 100%;               /* 全幅 */
	height: 100%;
	text-align: center;
	text-decoration: none;
	font-weight: 900;
	color: #00501a;
/*	border-radius: 6px; */
	background-size: contain;
  
	/* 色が “ヌルッと変わる” アニメーション */
	transition: background-color 0.3s ease, 
              filter 0.3s ease,
              color 0.3s ease;
}

/* サブメニュー PC */
.subMenu_3 li.menu01 a { background: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn1-3.png") no-repeat; }
.subMenu_3 li.menu02 a { background: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn2-3.png") no-repeat; }
.subMenu_3 li.menu03 a { background: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn2-3.png") no-repeat; }
.subMenu_3 li.menu04 a { background: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn3-3.png") no-repeat; }
.subMenu_3 li.menu05 a { background: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn3-3.png") no-repeat; }
.subMenu_3 li.menu06 a { background: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn4-3.png") no-repeat; }

.subMenu_3 li a:hover {
	opacity: 0.5; /* 通常時 */
	transition: opacity 0.5s; /* 滑らかに変化させる */
    transform: translateY(-1px); /* 少し浮き上がらせる */
	filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.1));
}

/*
.subMenu li.menu01 a { background: linear-gradient(to bottom, #ffa0e8, #ffd9e8); }
.subMenu li.menu02 a { background: #FFFFF0; }
.subMenu li.menu03 a { background: #FFFFF0; }
.subMenu li.menu04 a { background: #F0FFFF; }
.subMenu li.menu05 a { background: #F0FFFF; }
.subMenu li.menu06 a { background: #F5FFFA; }

.subMenu li.menu01 a:hover { background: linear-gradient(to bottom, #ffd9e8, #ffa0e8); }
.subMenu li.menu02 a:hover { background: #ffffcd; }
.subMenu li.menu03 a:hover { background: #ffffcd; }
.subMenu li.menu04 a:hover { background: #cdffff; }
.subMenu li.menu05 a:hover { background: #cdffff; }
.subMenu li.menu06 a:hover { background: #d3ffe9; }
*/

/* アクティブ（スクロール該当時） */
/*
.subMenu li.menu01 a.active { background: #ffd9e8; }
.subMenu li.menu02 a.active { background: #f5ffb1; }
.subMenu li.menu03 a.active { background: #f5ffb1; }
.subMenu li.menu04 a.active { background: #9de7ff; }
.subMenu li.menu05 a.active { background: #9de7ff; }
.subMenu li.menu06 a.active { background: #d5ffd9; }

.subMenu li a.active {
	color: #999999;
}
*/

/* スクロール固定用 */
.subMenu.fixed {
  position: fixed !important;
  top: 90.8px !important;
  bottom: auto !important; /* ←これが決定的 */
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  max-width: 980px;
  z-index: 1000;
/*  box-shadow: 0 2px 4px rgba(0,0,0,0.15);	*/
}

/* タブレット（600px〜959px）のみ表示 */
@media screen and (min-width: 600px) and (max-width: 959px) {
	.subMenu_3 li {
		flex: 1;                 /* 6等分 */
		margin: 0 5px !important;    /* ボタン同士の隙間を消す */
		padding: 0 !important;
		height: auto !important;
		aspect-ratio: 160 / 100; /* 1.6:1 の比率を維持 */
		font-size: 0.9em;
	}

	.subMenu_3 li a {
		display: flex;
		width: 100%;
		height: 100%;
		background-size: 100% 100% !important; /* 画像を枠いっぱいに */
		background-repeat: no-repeat;
		background-position: center;
	}
}
	
/* スマホ用（幅599px以下） */
@media screen and (max-width: 599px) {
	.subMenu_4 {
		justify-content: center;
		padding: 0;
		margin: 0 auto;
		width: 100% !important;
		box-sizing: border-box !important;
		border: 0px solid red;
	}
	.subMenu_4 ul {
		display: grid;
		grid-template-columns: repeat(3, 1fr); /* 1行に3つ */
		gap: 5px; /* 隙間（任意） */
		list-style-type: none;
		margin: 0 auto !important;
		padding: 0;
		width: calc(100% - 2px);
		/* width: 90%; */
		table-layout: fixed;
		border: 0px solid green;
	}
	
	/* --- Safari（iPhone）のみに適用するハック --- */
	_::-webkit-full-page-media, _:future, :root .subMenu_4 ul { /* iPhoneだけで右が切れるなら、全体を96%くらいに絞って中央に置く */
		width: 95%;
		max-width: 360px;
		margin: 0 auto;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	
	.subMenu_4 li {
		border: 0px solid #000;
		width: 100%; /* グリッドに合わせる */
		font-size: 0.8em;
		aspect-ratio: 160 / 100; /* 1.6:1 の比率を維持 */
	}
	.subMenu_4 li a {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center; 
		padding: 0;
		width: 100%;
		height: 100%;
		text-align: center;
		text-decoration: none;
		font-weight: 900;
		color: #00501a;
		background-size: 100% 100% !important;
		background-repeat: no-repeat !important;
		background-position: center !important;
	}
		
	.subMenu_4 li.menu01 a { background-image: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn1-3.png"); }
	.subMenu_4 li.menu02 a { background-image: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn2-3.png"); }
	.subMenu_4 li.menu03 a { background-image: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn2-3.png"); }
	.subMenu_4 li.menu04 a { background-image: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn3-3.png"); }
	.subMenu_4 li.menu05 a { background-image: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn3-3.png"); }
	.subMenu_4 li.menu06 a { background-image: url("/wordpress/wp-content/uploads/2026/04/dw_sub_btn4-3.png"); }
}







/* ---------------------------------------------------------
// 固定ページ：h2 背景画像あり
// --------------------------------------------------------- */
/* 各コンテンツタイトル */
.dw_section_title h2, .dw_section_title_2 h2, .dw_section_title_3 h2, .dw_section_title_4 h2, .dw_section_title_5 h2 {
	font-weight: 900;
	text-align: center;
	margin: 0;
	color: #333333;
}

.dw_section_title h2 {
	background: url("/wordpress/wp-content/uploads/2026/03/dw_img_bg_line4.png") no-repeat;	/* ピンク背景画 */
	background-position: center 10px;
	background-size: contain;
	padding: 10px 0;
}
.dw_section_title_2 h2 {
	background: url("/wordpress/wp-content/uploads/2026/03/dw_img_bg_line4.png") no-repeat center;	/* ピンク背景画 */
	background-position: center 10px;
	background-size: 100% 40px; /* ← 横幅を100%、高さは元画像に合わせる */
	padding: 10px 0;
}

.dw_section_title_3 h2 {	/* プラン：ムーンロード・スターゲイト */
	background: url("/wordpress/wp-content/uploads/2026/04/dw_obi_yellow.png") no-repeat center;	/*  */
	background-position: center 10px;
	background-size: contain; /* ← 横幅を100%、高さは元画像に合わせる */
	padding: 10px 0;
}

.dw_section_title_4 h2 {	/* プラン：一任個別・一任合同 */
	background: url("/wordpress/wp-content/uploads/2026/04/dw_obi_blue.png") no-repeat center;	/*  */
	background-position: center 10px;
	background-size: contain; /* ← 横幅を100%、高さは元画像に合わせる */
	padding: 10px 0;
}


.dw_section_title_5 h2 {	/* プラン：リトルスター */
	background: url("/wordpress/wp-content/uploads/2026/04/dw_obi_green.png") no-repeat center;	/*  */
	background-position: center 10px;
	background-size: contain; /* ← 横幅を100%、高さは元画像に合わせる */
	padding: 10px 0;
}


/* ---------------------------------------------------------
// 投稿一覧
// --------------------------------------------------------- */
@media (min-width: 1020px) {
	.-pc-col4 .-type-card.-pc-col3 .p-postList__item {
		width: calc(100% / 4);	/* 4カラム */
	}
}



/* ---------------------------------------------------------
// SVG画像用
// --------------------------------------------------------- */

/* ---- テキスト用ロゴ ---- */
.svg_logo_text{
--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBpZD0iX+ODrOOCpOODpOODvF8xIiBkYXRhLW5hbWU9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDM0Mi4wNyAzMTUuODUiPjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOS44LjQsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiAyLjEuMSBCdWlsZCA2KSAtLT48ZGVmcz48c3R5bGU+IC5zdDAgeyBmaWxsOiAjYzY2OTc0OyB9IDwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0zMDYuNzksMjA3Ljg4Yy4zMi0uNzYsMCwwLC45NS0uNzQsMjEuNi0xNy4wMSwyOC4yLTM0LjUyLDE1LjktNjIuNzYtMTMuMzUtMzAuNjctNjAuOTItMjcuOS05MC44OC0yOC40NS03LjI4LS4xMy0xOS44My0uMjMtMzAuNzQsMS4xMi0uMjQtMS42My0uODEtMy4yLTEuNjYtNC42OSwyOC45OC0zLjIxLDU5LjI4LTIuNTQsODcuNTgtNi4xMSwxNi4zNi0yLjA2LDM3LjY3LTExLjY1LDM2LjAxLTMwLjY5LS4yNi0yLjk2LTIuMzItOC4yOC00LjAzLTEwLjgyLTEzLjM2LTE5Ljg2LTI3LjQyLTI3LjUyLTU4LjQzLTI1LjY3LS43My4wNC0uNzMtLjQyLTEuMjUtLjkzLS40NS0uNDMsMCwwLS4yNy0uODgtNi4xNC0yMC4wNC0xNi43MS0yOS40Ni0zOS45Ni0yOC4yMi0yNS4yNiwxLjM0LTQyLjY4LDM0LjYxLTQ0LjcyLDU3LjQ3LS41Myw1LjkzLTEuMDMsMjIuNDUuNywzMy42Mi0xLjA4LS4wOC0yLjE4LS4xMi0zLjI5LS4xMi0xLjgsMC0zLjU2LjExLTUuMjguMzEsMS41LTExLjExLDEuMDItMjYuNjQuNTEtMzIuMzUtMi4wMy0yMi44Ni0xOS40Ni01Ni4xMy00NC43Mi01Ny40Ny0yMy4yNi0xLjIzLTMzLjgyLDguMTktMzkuOTYsMjguMjItLjI3Ljg4LjE4LjQ0LS4yNy44OC0uNTIuNTEtLjUyLjk3LTEuMjUuOTMtMzEuMDEtMS44NC00NS4wNyw1LjgxLTU4LjQzLDI1LjY3LTEuNzEsMi41NC0zLjc3LDcuODYtNC4wMywxMC44Mi0xLjY2LDE5LjA0LDE5LjY1LDI4LjYzLDM2LjAxLDMwLjY5LDI4Ljc2LDMuNjIsNTkuNTcsMi44Niw4OC45Niw2LjI1LS40MiwxLjAxLS43MiwyLjA1LS44NywzLjEyLTEwLjk4LTEuMzktMjMuNjYtMS4yOS0zMS4wMS0xLjE1LTI5Ljk2LjU1LTc3LjUzLTIuMjItOTAuODgsMjguNDUtMTIuMjksMjguMjQtNS43LDQ1Ljc1LDE1LjksNjIuNzYuOTUuNzQuNjItLjAxLjk1Ljc0LjM4Ljg5Ljk0LDEuMS41NSwxLjk5LTE2LjYzLDM3LjU1LTEzLjgyLDU4LjU4LDQuMjIsODQuNDQsMi4zMSwzLjMxLDcuODQsOC4zNiwxMS4zNCwxMC4wNywyMi40NiwxMC45OSw0NC4wNS0xMC45MSw1NC4xNS0zMC4yMiwyMC4xMi0zOC40NSwzNC42LTk4LjY3LDU2LjI0LTEzNy4xNCwyLjUuNDQsNS4xNC42OCw3Ljg2LjY4czUuMTktLjIyLDcuNjEtLjY0YzIxLjYzLDM4LjQ3LDM2LjEsOTguNjYsNTYuMjIsMTM3LjEsMTAuMSwxOS4zMSwzMS42OSw0MS4yMSw1NC4xNSwzMC4yMiwzLjUtMS43MSw5LjAzLTYuNzYsMTEuMzQtMTAuMDcsMTguMDQtMjUuODcsMjAuODYtNDYuODksNC4yMi04NC40NC0uMzktLjg4LjE4LTEuMS41NS0xLjk5WiIvPjwvc3ZnPg==)
}



/* ---------------------------------------------------------
// トップページ
// コメント枠
// --------------------------------------------------------- */
.image-waku1 {
	background-image:
		url("/wp-content/uploads/2026/03/dw_img_waku_top_left1.png"),
		url("/wp-content/uploads/2026/03/dw_img_waku_bottom_right1.png");
	background-repeat: no-repeat;
	background-position: top left, bottom right;
	padding: 50px 100px 50px 100px;
}




/* ---------------------------------------------------------
// トップページ
// --------------------------------------------------------- */

/* ---- ゆらゆら画像 ---- */
.floating-image img{
	border-radius: 51% 49% 70% 30% / 44% 44% 56% 56% ;
	box-shadow: 5px 9px 18px 8px #e090ba;
height: auto;
	/* アニメーションの設定 */
	animation: floating 15s ease-in-out infinite;
	/* 動きがスムーズになるように少し余裕を持つ */
	will-change: transform;
}

@keyframes floating {
	0% { transform: translate(0, 0); }
	25% { transform: translate(15px, -15px); } /* 右上 */
	50% { transform: translate(0, -25px); }    /* 上 */
	75% { transform: translate(-15px, -15px); } /* 左上 */
	100% { transform: translate(0, 0); }       /* 元に戻る */
}
/* ---- ゆらゆら画像 ここまで ---- */






/* ---------------------------------------------------------
// アクセス（当社について）
// Googleマップの色を変更する
// --------------------------------------------------------- */
.googlemap iframe {
	-webkit-filter: grayscale(1);
			filter: grayscale(1); /* Googleマップをグレースケールにする */
}

/* 色を変えるためのオーバーレイ要素の設定 */
.googlemap.wp-block-group {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
}

.googlemap > div {
	position: relative;
}

.googlemap > div::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	pointer-events: none;
	mix-blend-mode: overlay;
	 /* background: #ff3377; 好きな色コードに変更 */
}
/* ---- Googleマップ ここまで ---- */


/* ---------------------------------------------------------
// コラム
// 対談
// --------------------------------------------------------- */
.tidn_text1{
	display: flex;
	align-items: center;
}
.tidn_text1:before, .tidn_text1:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #444;
	display: block;
}
.tidn_text1:before {
	margin-right: .4em;
	background: linear-gradient(-90deg, #888, transparent);	/* グラデーション */
}
.tidn_text1:after {
	margin-left: .4em;
	background: linear-gradient(90deg, #888, transparent);
}

.flex-d_row{
flex-direction: row;
display: flex;
}

.tdn_name{
width: 80px;
flex-shrink: 0;
font-weight: bold;
border: 0px solid #000000;
}
/* ---- コラム　対談 ここまで ---- */


/* ---------------------------------------------------------
// 流れ
// 
// --------------------------------------------------------- */
/* gridテーブル */
.flow_grid-table {
  display: grid;
  grid-template-columns: repeat(12, 1fr); 	/* 12列を均等に配置 */ 
  gap: 0px;
  border: 0px solid #ccc;
}

.flow_cell {
	padding: 10px;
	text-align: center;
	border: 0px solid #ccc;
}

.flow_grid_column_12 {	grid-column: span 12;}	/* 12列 */
.flow_grid_column_3 {	grid-column: span 3;}	/* 3列 */
.flow_grid_column_4 {	grid-column: span 4;}	/* 4列 */
.flow_grid_column_6 {	grid-column: span 6;}	/* 6列 */
.flow_grid_column_9 {	grid-column: span 9;}	/* 9列 */

.flow_span-row_3 {	grid-row: span 3;}	/* 3行 */
/* gridテーブル ここまで */

/* ---- 流れ ここまで ---- */


/* ---------------------------------------------------------
// お申し込み：お問い合わせ
// --------------------------------------------------------- */
.contact_required {	/* 必須 */
	color: #fff;
	background-color: pink;
	padding: 0 5px;
	margin-right: 5px;
	border-radius: 5px;
	font-size: 0.8em;
	font-weight: 900;
}

/* Contact Form 7 */
/* フォーム全体のコンテナ */
.dw-form-container {
	max-width: 900px;
	margin: 0 auto;
}

/* セクションタイトル */
.form-section-title {
	border-bottom: 2px solid #ffd4e4;
	padding-bottom: 10px;
	margin: 40px 0 20px;
	font-size: 1.2rem;
	color: #333;
}

/* 各行のレイアウト（PC: 横並び） */
.form-row {
	display: flex;
	margin-bottom: 20px;
	align-items: flex-start; /* 複数行の際も上揃え */
}

/* ラベル部分 */
.form-label {
	width: 250px; /* PC時のラベル幅 */
	font-weight: bold;
	padding-top: 10px;
	color: #664d0f;
}

/* 必須ラベル */
.required {
	background: #ff3366;
	color: #fff;
	font-size: 0.7rem;
	padding: 2px 6px;
	border-radius: 3px;
	margin-right: 8px;
	vertical-align: middle;
	font-weight: 600;
}

/* 入力フィールド部分 */
.form-field {
	flex: 1; /* 残りの幅をすべて使う */
}

/* CF7特有の入力パーツ幅を100%に */
.form-field input[type="text"],
.form-field input[type="email"],
.form-field input[type="tel"],
.form-field input[type="date"],
.form-field select,
.form-field textarea {
	width: 100%;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
}

/* ラジオボタンの間隔 */
.wpcf7-list-item {
	margin-right: 15px;
}

/* 送信ボタンのカスタマイズ */
.submit-btn-wrap {
    text-align: center;   /* インライン要素を中央へ */
    display: flex;        /* flexを使うとより強力 */
    flex-direction: column;
    align-items: center;  /* 子要素を水平中央へ */
    width: 100%;
	margin-top: 40px;
}

/* CF7が勝手に入れる p タグの余白を殺す */
.submit-btn-wrap p {
    margin: 0;
    padding: 0;
    display: contents; /* pタグの存在をレイアウト上無視させる（裏技） */
}

/* 送信ボタン */
.wpcf7-submit {
	appearance: none;          /* ブラウザ固有のスタイルをリセット */
	background-color: #ff4fc4; /* ##ed91b5 */
	margin: 0 auto;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 15px 50px;        /* ボタンの大きさ */
	border: none;
	border-radius: 50px;
	cursor: pointer;
	transition: background-color 0.3s, transform 0.2s;
}

/* ホバー時の演出 */
.wpcf7-submit:hover {
	background-color: #ffb3d1;
	transform: translateY(-1px); /* 少し浮き上がらせる */
	filter: drop-shadow(0px 0px 15px rgba(0,0,0,0.1));
}


/* 送信成功メッセージの枠（緑色の箱）を非表示にする */
.wpcf7-response-output {
    display: none !important;
}

/* レスポンシブ対応（959px以下、またはスマホ用） */
@media screen and (max-width: 767px) {
	.form-row {
		flex-direction: column; /* 上下に並べる */
	}
	.form-label {
		width: 100%;
		margin-bottom: 8px;
		padding-top: 0;
	}
	.form-field {
		width: 100%;
	}
}

/* Contact Form 7 ここまで */






/* =========================================================
// ページトップへ戻るボタンをオリジナル画像に変更する
// ========================================================= */
/*
.icon-chevron-small-up:before, .icon-chevron-up:before {	// アイコンを消す
	content: none;
}

.c-fixBtn {	// ボーダー、影を消す
	border: none;
	box-shadow: none;
	overflow: visible; // ラベル表示対応
	background-color: transparent !important;
}

.c-fixBtn__label {	// ラベルの位置
	position: absolute;
	bottom: -1em;
}

.c-fixBtn:hover {	// マウスオーバー時の背景を消す
	background-color: transparent !important;
}

#pagetop.c-fixBtn .c-fixBtn__icon {	// 画像を配置
	display: block;
	background: url("/wp-content/uploads/2026/02/0002.png") no-repeat; // 画像のパス
	background-size: contain;
	width: 100%;
	height: 100%;
}
#pagetop.c-fixBtn .c-fixBtn__icon:hover {	// マウスオーバー時、画像に影を付ける
	filter: drop-shadow(0px 0px 10px #666666);
}
*/



/* ---------------------------------------------------------
// フッターエリア
// --------------------------------------------------------- */

.l-container .w-footer {
    max-width: 100%;
	padding: 0;
	margin: 0;
}

.p-blogParts a:hover{	/* フッターメニュー色 マウスオーバー時 */
	color: #ff1493;
}

/* ---------------------------------------------------------
// フッター　フルワイド
// --------------------------------------------------------- */

#before_footer_widget center{
	margin-top: 0px;
	padding-bottom: 50px;
	background-color: #dfefff;
}

.dw_footer_area_top {
	height: 150px;
	width: 100vw;
	margin: 0;
	padding: 0;
	background: url("/wordpress/wp-content/uploads/2026/03/dw_awai_blue_nami_top.png") repeat-x;
}
.page-id-8 .dw_footer_area_top {	/* トップページ フッタートップ */
	background: url("/wordpress/wp-content/uploads/2026/03/dw_awai_blue_nami_top2.png") repeat-x;
}
.page-id-8 .w-beforeFooter{	/* メインエリアとフッターウィジェットエリアの隙間を埋める処置 */
	margin-top: -6em !important;
}

/* プランページ フッタートップ */
/* page-id-2002 クラスを持っている要素そのもの、  もしくはその直近の親要素として指定 */
#body_wrap.page-id-2002 .dw_footer_area_top {
    background: url("https://dogwood.co.jp/wordpress/wp-content/uploads/2026/04/dw_usumidori_mizuiro_nami_footer2.png") repeat-x !important;
}

.l-footer__widgetArea{	/* フッター 町画像 */
/*	background: url("/wordpress/wp-content/uploads/2026/03/dw_img_footer1.png");	*/
	background: url("/wordpress/wp-content/uploads/2026/04/dw_footer_machi.png");
	background-size: contain;
	background-position: bottom;
	background-color: #dfefff;
	margin-top: -60px;
}
.l-footer__foot{
	margin-top: -5px;
	border-top: 0px solid red;
/*	background-color: #fde784; */
	background-color: #f5e17d;
	}



/* ブラウザ縮小時のフッター隙間 制御 */
/* 画面サイズ（599px以下）のみ表示 */
@media screen and (max-width: 599px) {
	.w-beforeFooter {
		border: 0px solid red;
		margin-bottom: 0em !important
	}
	.l-footer__widgetArea {
		background-position: top;
		margin-bottom: 0em !important;
		margin-top: 0px;
	}
	
}



/* ---------------------------------------------------------
// フッターメニュー
// PC
// --------------------------------------------------------- */
.footer_menu_pc{
	list-style-type: none;
}

.footer_menu_pc li .svg_logo_text{
	color: pink;
	padding-right: 15px;
}

.footer_menu_pc li a {
	
}
.footer_menu_pc li a:hover{
	text-shadow: 0px 0px 10px #F53DAE;
}

/* ---- フッターメニューPC ここまで ---- */


/* ---------------------------------------------------------
// フッターメニュー
// SP
// --------------------------------------------------------- */

#fix_bottom_menu .menu_list li a{
	display: block;
	border: 0px solid #ffffff;
	align-items: center;
	/* height: 75px; */
	height: 52px;
}

#fix_bottom_menu .menu_list li:first-child {	/* SPフッターメニュー メニューリスト非表示 */
	display: none;
}
#fix_bottom_menu .menu_list li:nth-child(2) {	/* SPフッターメニュー 電話 */
	background-color: #fc8bcf;
	color: #ffffff;
	font-weight: bold;
}
#fix_bottom_menu .menu_list li:nth-child(2) span {	/* SPフッターメニュー 電話 */
	font-weight: bold;
}
#fix_bottom_menu .menu_list li:nth-child(2) span .icon-phone {	/* SPフッターメニュー 電話 */
}

#fix_bottom_menu .menu_list li:last-child {	/* SPフッターメニュー 問合せページリンク */
	background-color: #a39b89;
	color: #ffffff;	
}


/* スマホフッターボタン カスタマイズ */
.sp_footer_btn_area {}
.sp_fba_icon{}
.sp_fba_tel{}
.sp_fba_telnumber{}



/* PC・タブレット（600px〜1260px）のみ表示 */
/*
@media (max-width: 1190px) and (min-width: 600px) {
	.sp_footer_btn_area {
		display: flex;
		justify-content: center;
		border: 0px solid #cccccc;
		font-size: 2.4em;
		padding: 0 10px;
	}
	#fix_bottom_menu .menu_list li:nth-child(2) span .icon-phone, #fix_bottom_menu .menu_list li:nth-child(3) span .icon-mail {
		font-size: 1.2em;
	}
	.sp_fba_tel {
		display: none;
	}
	.sp_fba_telnumber, .sp_fba_contact{
		margin-left: 10px;
		font-weight: bold;
		white-space: nowrap;		
	}
	
}
*/
/* スマホ（599px以下）のみ表示 */
@media screen and (max-width: 599px) {
	.sp_footer_btn_area{
		border: 0px solid #ccc;
		margin-top: -14px;
		padding: 0px 10px;
	}
	.sp_fba_icon {
		margin-bottom: 0px;
	}
	#fix_bottom_menu .menu_list li:nth-child(2) span .icon-phone, #fix_bottom_menu .menu_list li:nth-child(3) span .icon-mail {
		font-size: 2em;
	}
	.sp_fba_tel, .sp_fba_contact{
		white-space: nowrap;
		text-align: center;
	}
	
	.sp_fba_tel {
		font-size: 1.6em;	
	}
	.sp_fba_contact {
		font-size: 1.4em;
	}
	
	.sp_fba_telnumber {
		display: none;
	}
}

/* スマホ（599px以下）以外 */
@media screen and (min-width: 600px) {
	/* スマホフッター固定メニュー スマホ以外非表示 */
	#fix_bottom_menu {
        display: none;
    }
}

/* ---- フッターメニューSP ここまで ---- */
