@charset "UTF-8";
/*
 Theme Name: bizmatch_v2 for demo-matchingsystem.dev-salon.com/sitenew/
 Description: テーマの説明
 Version: テーマのバージョン
 Template: bizmatch-v2
*/

/* 2025/10/23　更新*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@300;400;700&display=swap');

@media (max-width: 768px) {

	/*スマホ　上からスライドメニュー　背景色*/
	.globalMenuSp {
		position: fixed;
		z-index: 8;
		top: 0;
		left: 0;
		color: #fff;
		background: #1f8ac0ea;
		text-align: center;
		width: 100%;
		opacity: 0;
		transition: opacity .6s ease, visibility .6s ease;
		display: none;
	}

	.globalMenuSp ul li:hover {
		background: #1F8AC0;
	}
}
/*----------
Footer
----------*/

footer {
	background-color: #F4E6D9;
	padding: 70px 0 5px;
	clear: both;
	border-bottom: 10px solid #1F8AC0;
}

footer .footer_logo{
	width: 350px;
}

footer .footer_logo img{
	width: 100%;
	height: auto;
}


/*　新規会員登録はこちらから　*/
.contact-container {
	margin: 0;
	padding: 0;
	width: 100%;
	background:#1F8AC0;
}

/*会員登録ボタン・ログインボタン　*/
.btn.btn_member {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 0;
	border-radius: 5px;
	background: #e2a368;
	color: #fff !important;
	padding: 8px 16px;
	font-size: 16px;
	margin: 0 10px 0 0;
	border-radius: 20px;
}
button.btn_login, .btn.btn_login {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 0;
	border-radius: 5px;
	background: #104C91;
	color: #fff !important;
	padding: 8px 16px;
	font-size: 16px;
	border-radius: 20px;
}
.btn.btn_member:hover {
	background: #f4c293;
}
.btn.btn_login:hover {
	background-color: #428EE5;
}
@media screen and (max-width: 1200px) {
	.btn.btn_member {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		border: 0;
		border-radius: 5px;
		background: #e2a368;
		color: #fff !important;
		padding: 8px 10px;
		font-size: 14px;
		margin: 0 5px 0 0;
		border-radius: 20px;
	}
	button.btn_login, .btn.btn_login {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		border: 0;
		border-radius: 5px;
		background: #104C91;
		color: #fff !important;
		padding: 8px 10px;
		font-size: 14px;
		border-radius: 20px;
	}
}

/*よくある質問ボタン　*/

.button-faq {
	display: inline-block;
	width: 250px;
	height: 55px;
	text-align: center;
	text-decoration: none;
	line-height: 53px;
	outline: none;
	background-color: #104C91;
	color: #fff;
	border-radius: 33px;
	font-size: 22px;
	cursor: pointer;
}
.button-faq::before, .button-faq::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: "";
}
.button-faq, .button-faq::before, .button-faq::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.button-faq:hover {
	background-color: #428EE5;;
	color: #fff;
}

/*お問い合わせ　送信ボタン*/
.wpcf7-form input[type=submit] {
	margin: 30px 0 0;
	padding: 10px 20px;
	background: #1F8AC0;me
	color: #fff;
	border-radius: 25px;
	border: none;
	display: block;
	width: 200px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.wpcf7-form input[type=submit]:hover {
	background: #1F90A8;
	color: #fff;
	border-radius: 25px;
	border: none;
	padding: 10px 20px;
	display: block;
	width: 200px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/*　案件トップ　*/
/*　見出し*/
.search_box h3:first-of-type {
	margin: 10px 0 20px;
	padding: 5px 15px;
	background: #f4f4f4;
	border-bottom: none;
	border-left: 10px solid #1F8AC0;
	color: #1F8AC0;
	text-align: left;
	font-size: 18px;
}
.search_box h3 {
	margin: 60px 0 20px;
	padding: 5px 15px;
	background: #f4f4f4;
	border-bottom: none;
	border-left: 10px solid #1F8AC0;
	color: #1F8AC0;
	text-align: left;
	font-size: 18px;
}

.work_view_btn .btn {
	display: inline-block;
	/*width: 170px;*/
	height: 50px;
	text-align: center;
	text-decoration: none;
	/*line-height: 53px;*/
	outline: none;
	background-color: #1F8AC0;
	color: #fff;
	border-radius: 26px;
	font-size: 16px;
	cursor: pointer;
	margin: 0 5px;
	padding: 5px 15px;
}

.work_view_btn .btn:hover {
	background-color: #5fbdec;
	color: #fff;
}

/*会員登録ページ　　登録ボタン*/
.button-touroku {
	display: inline-block;
	width: 250px;
	height: 55px;
	text-align: center;
	text-decoration: none;
	line-height: 53px;
	outline: none;
	background-color: #fff;
	color: #1F8AC0;
	border-radius: 33px;
	font-size: 22px;
	cursor: pointer;
}

.button-touroku:hover {
	background-color: #5fbdec;
	color: #fff;
}

/*登録説明*/
.i-jyouken {
	margin: 20px auto 0;
	padding: 3px;
	background: #1F8AC0;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	width: 400px;
}
.i-jyouken-text {
	margin: 0 auto;
	padding: 10px;
	background: #fff;
	font-size: 16px;
	text-align: left;
	width: 400px;
	border: 1px solid #1F8AC0;
}

@media screen and (max-width: 768px) {

	.i-jyouken {
		margin: 20px auto 0;
		padding: 10px;
		background: #1F8AC0;
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		text-align: center;
		width: 100%;
		box-sizing: border-box;
	}

	.i-jyouken-text {
		margin: 0 auto;
		padding: 10px 30px;
		background: #fff;
		font-size: 16px;
		text-align: left;
		width: 100%;
		border: 1px solid #1F8AC0;
	}
}

/*会員検索　検索ボタン*/
.um .um-button {
	color: #ffffff;
	background: #1F8AC0;
}
.um .um-button:hover {
	color: #ffffff;
	background: #5fbdec;
}

/*hタグ　フォント設定*/
h2 {
	border-bottom: 2px solid #1F8AC0;
	color: #1F8AC0;
	font-weight: bold;
}
h3 {
	color: #1F8AC0;
	border-bottom: 2px solid #1F8AC0;
	font-weight: bold;
	margin-top: 50px;
}

h4, h5, h6 {
	color: #1F8AC0 !important;
	font-weight: bold;
}
h4 {
	border-bottom: 3px solid #1F8AC0 !important;
}
h4, h5, h6 {
	color: #1F8AC0 !important;
	font-weight: bold;
}
a {
	color: #333;
	text-decoration: none;
}
a:hover {
	color: #3ba1da;
}

/*----------
新規会員登録　Progressバー
----------*/
/* 会員登録　プログレスバー　active */
.progressbar .item.active {
	z-index: 1;
	background: #1F8AC0;
	color: #FFF;
}

.progressbar .item.active:not(:last-child)::after {
	border-left-color: #1F8AC0;
}

/* タイトル */
/* 説明 */
/* ボタン */
/* 有料会員会費決済
-------------------------------------------------------------- */
/* 登録ボタン */
.wpfs-btn-primary, button.wpfs-btn-primary[type=submit], .no-touch button.wpfs-btn-primary[type=submit], button.wpfs-btn-primary:not(:hover):not(:active):not(.has-text-color) {
	background-color: #1F8AC0 !important;
}
/* 無料会員会費決済
-------------------------------------------------------------- */
/* 登録ボタン */
#um-submit-btn, .um input[type="submit"].um-button {
	background-color: #1F8AC0 !important;
}

/*よくある質問*/
/*カテゴリー見出しタイトル*/
h2.wp-block-heading {
	background: #1F8AC0;
	padding: 5px 0 5px 15px;
	margin: 0 0 10px;
	text-align: left;
	border: none;
	color: #fff;
	font-size: 22px;
}

/* ----------------------------------------------------------------------
トップページ　デザイン
---------------------------------------------------------------------- */

.main-visual {
	margin: 0;
	padding: 110px 0 0;
	height: 750px;
	background: url("images/img-mainvisual.jpg") no-repeat;
	background-size: cover;
	background-position: center center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}

.main-catch {
	margin: 30px auto 0;
	padding: 0;
	text-align: center;
	font-size: 50px;
	font-weight: bold;
}

.sub-catch {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	color: #1F8AC0;
}

.main-illust {
	margin: 50px auto 0;
	padding: 0;
	text-align: center;
	line-height: 0;
}

.site-cate {
	font-size: 13px;
	color: #000;
	margin: 0 10px 0 0 !important;
	padding: 10px;
	text-align: right;
}

@media screen and (max-width: 768px) {
	.main-visual {
		margin: 0;
		padding: 50px 0 0;
		height: 500px;
		background: url("images/img-mainvisual.jpg") no-repeat;
		background-size: cover;
		background-position: center center;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		position: relative;
	}

	.main-catch {
		margin: 0 auto;
		padding: 0;
		text-align: center;
		font-size: 30px;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: -1px;
	}
	
	.sub-catch {
		margin: 0 auto;
		padding: 0;
		text-align: center;
		font-size: 22px;
		font-weight: bold;
		color: #1F8AC0;
		line-height: 1.5;
	}

	.main-illust {
		margin: 30px auto 0;
		padding: 0;
		text-align: center;
		line-height: 0;
	}

	.main-illust img {
		width: 90%;
		height: auto;
	}
}

@media screen and (max-width: 480px) {
	.main-visual {
		margin: 0;
		padding: 100px 0 0;
		height: 500px;
		background: url("images/img-mainvisual.jpg") no-repeat;
		background-size: cover;
		background-position: center center;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		position: relative;
	}

	.main-catch {
		margin: 0 auto;
		padding: 0;
		text-align: center;
		font-size: 24px;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: -1px;
	}
	
	.sub-catch {
		margin: 0 auto;
		padding: 0;
		text-align: center;
		font-size: 18px;
		font-weight: bold;
		color: #1F8AC0;
		line-height: 1.5;
	}

	.main-illust {
		margin: 30px auto 0;
		padding: 0;
		text-align: center;
		line-height: 0;
	}

	.main-illust img {
		width: 90%;
		height: auto;
	}
}



.site-cate {
	font-size: 13px;
	color: #000;
	margin: 10px 10px 0 0;
	text-align: right;
}

.about-leadtext {
	margin: 30px auto 0;
	padding: 0;
	max-width: 740px;
	text-align: center;
}

.pl-about-base {
	margin: 60px auto 0;
	padding: 0;
	max-width: 1050px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.pl-about-base .num-01,
.pl-about-base .num-05 {
	margin: 0;
	padding: 0;
	width: 20%;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.pl-about-base .num-01 .num-01-parts,
.pl-about-base .num-05 .num-01-parts {
	margin: 50px 0 5px;
	padding: 0;
}

.pl-about-base .num-01 .num-01-parts img,
.pl-about-base .num-05 .num-01-parts img {
	width: 100%;
	height: auto;
}

.pl-about-base .num-01 .num-05-parts,
.pl-about-base .num-05 .num-05-parts {
	margin: 50px 0 5px;
	padding: 0;
}

.pl-about-base .num-01 .num-05-parts img,
.pl-about-base .num-05 .num-05-parts img {
	width: 100%;
	height: auto;
}

.pl-about-base .num-02,
.pl-about-base .num-04 {
	margin: 0;
	padding: 0;
	width: 10%;
	text-align: center;
}

.pl-about-base .num-02 .num-02-text,
.pl-about-base .num-04 .num-02-text {
	margin: 0 0 0 10px;
	padding: 0;
	font-size: 15px;
	font-weight: bold;
	color: #000;
}

.pl-about-base .num-02 .num-02-parts,
.pl-about-base .num-04 .num-02-parts {
	margin: 5px 0 0 20px;
	padding: 0;
}

.pl-about-base .num-02 .num-04-text,
.pl-about-base .num-04 .num-04-text {
	margin: 0 20px 0 0;
	padding: 0;
	font-size: 15px;
	font-weight: bold;
	color: #000;
}

.pl-about-base .num-02 .num-04-parts,
.pl-about-base .num-04 .num-04-parts {
	margin: 5px 20px 0 0;
	padding: 0;
}

.pl-about-base .num-03 {
	margin: 0;
	padding: 0;
	width: 36%;
	background: url("images/img-platform-bg.svg") no-repeat;
	background-position: center top;
	background-size: contain;
	text-align: center;
}

.pl-about-base .num-03 .num-03-text {
	margin: 60px 0 0;
	padding: 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
}

.pl-about-base .num-03 .num-03-parts {
	margin: 20px 0 20px;
	padding: 0 0 17px;
}

.pl-about-base .num-03 .num-03-parts img {
	width: 70%;
	height: auto;
}

@media screen and (max-width: 880px) {

	.pl-about-base .num-01,
	.pl-about-base .num-05 {
		margin: 0;
		padding: 0;
		width: 18%;
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}

	.pl-about-base .num-01 .num-01-parts,
	.pl-about-base .num-05 .num-01-parts {
		margin: 50px 0 5px;
		padding: 0;
	}

	.pl-about-base .num-01 .num-01-parts img,
	.pl-about-base .num-05 .num-01-parts img {
		width: 100%;
		height: auto;
	}

	.pl-about-base .num-01 .num-05-parts,
	.pl-about-base .num-05 .num-05-parts {
		margin: 50px 0 5px;
		padding: 0;
	}

	.pl-about-base .num-01 .num-05-parts img,
	.pl-about-base .num-05 .num-05-parts img {
		width: 100%;
		height: auto;
	}

	.pl-about-base .num-02,
	.pl-about-base .num-04 {
		margin: 0;
		padding: 0;
		width: 14%;
		text-align: center;
	}

	.pl-about-base .num-02 .num-02-text,
	.pl-about-base .num-04 .num-02-text {
		margin: 0 0 0 10px;
		padding: 0;
		font-size: 18px;
		font-weight: bold;
		color: #000;
	}

	.pl-about-base .num-02 .num-02-parts,
	.pl-about-base .num-04 .num-02-parts {
		margin: 5px 0 0 20px;
		padding: 0;
	}

	.pl-about-base .num-02 .num-04-text,
	.pl-about-base .num-04 .num-04-text {
		margin: 0 20px 0 0;
		padding: 0;
		font-size: 18px;
		font-weight: bold;
		color: #000;
	}

	.pl-about-base .num-02 .num-04-parts,
	.pl-about-base .num-04 .num-04-parts {
		margin: 5px 20px 0 0;
		padding: 0;
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}

	.pl-about-base .num-03 {
		margin: 0;
		padding: 0;
		width: 37%;
		background: url("images/img-platform-bg.svg") no-repeat;
		background-position: center top;
		background-size: contain;
		text-align: center;
	}

	.pl-about-base .num-03 .num-03-text {
		margin: 60px 0 0;
		padding: 0;
		color: #fff;
		font-size: 24px;
		font-weight: bold;
		line-height: 1.5;
	}

	.pl-about-base .num-03 .num-03-parts {
		margin: 20px 0 20px;
		padding: 0 0 17px;
	}

	.pl-about-base .num-03 .num-03-parts img {
		width: 70%;
		height: auto;
	}
}

@media screen and (max-width: 768px) {
	.pl-about-base {
		margin: 0px auto 0;
		padding: 0;
		max-width: 950px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.pl-about-base .num-01,
	.pl-about-base .num-05 {
		margin: 0 auto;
		padding: 0;
		width: 90%;
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}

	.pl-about-base .num-01 .num-01-parts,
	.pl-about-base .num-05 .num-01-parts {
		margin: 50px 0 5px;
		padding: 0;
	}

	.pl-about-base .num-01 .num-01-parts img,
	.pl-about-base .num-05 .num-01-parts img {
		width: 50%;
		height: auto;
	}

	.pl-about-base .num-01 .num-05-parts,
	.pl-about-base .num-05 .num-05-parts {
		margin: 10px 0 5px;
		padding: 0;
	}

	.pl-about-base .num-01 .num-05-parts img,
	.pl-about-base .num-05 .num-05-parts img {
		width: 50%;
		height: auto;
	}

	.pl-about-base .num-02,
	.pl-about-base .num-04 {
		margin: 0 auto;
		padding: 0;
		width: 90%;
		text-align: center;
	}

	.pl-about-base .num-02 .num-02-text,
	.pl-about-base .num-04 .num-02-text {
		margin: 0 0 10px;
		padding: 0;
		font-size: 20px;
		font-weight: bold;
		color: #000;
	}

	.pl-about-base .num-02 .num-02-parts,
	.pl-about-base .num-04 .num-02-parts {
		margin: 5px 0 20px;
		padding: 0;
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	.pl-about-base .num-02 .num-04-text,
	.pl-about-base .num-04 .num-04-text {
		margin: 10px 0 0;
		padding: 0;
		font-size: 20px;
		font-weight: bold;
		color: #000;
	}

	.pl-about-base .num-02 .num-04-parts,
	.pl-about-base .num-04 .num-04-parts {
		margin: 20px 0 0 0;
		padding: 0;
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	.pl-about-base .num-03 {
		margin: 0 auto;
		padding: 0;
		width: 90%;
		background: url("images/img-platform-bg.svg") no-repeat;
		background-position: center top;
		background-size: contain;
		text-align: center;
	}

	.pl-about-base .num-03 .num-03-text {
		margin: 60px 0 0;
		padding: 0;
		color: #fff;
		font-size: 24px;
		font-weight: bold;
		line-height: 1.5;
	}

	.pl-about-base .num-03 .num-03-parts {
		margin: 20px 0 20px;
		padding: 0 0 17px;
	}

	.pl-about-base .num-03 .num-03-parts img {
		width: 35%;
		height: auto;
	}
}

.pagebg-blue {
	background: #EDF8FC;
}

.page-container {
	margin: 0 auto;
	padding: 60px 15px;
	max-width: 1300px;
}

@media screen and (max-width: 992px) {
	.page-container {
		margin: 0 auto;
		padding: 50px 15px;
		max-width: 1300px;
	}
}

@media screen and (max-width: 480px) {
	.page-container {
		margin: 0;
		padding: 40px 15px;
		max-width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}

.page-merit-bg {
	margin: 0;
	padding: 0;
	max-width: 100%;
	background: url("images/img-merit-bg.jpg") no-repeat;
	background-size: cover;
	background-position: center top;
}

.service-base {
	margin: 40px auto 0;
	padding: 0 10px;
	max-width: 1200px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.service-base li {
	margin: 0;
	padding: 0;
	width: 10%;
	list-style: none;
}

.service-base li img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 768px) {
	.service-base {
		margin: 40px auto 0;
		padding: 0;
		width: 94%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.service-base li {
		margin: 0 0 40px;
		padding: 0;
		width: 45%;
		list-style: none;
		text-align: center;
	}

	.service-base li img {
		width: 80%;
		height: auto;
	}
}

.complain-base {
	margin: 50px auto 0;
	padding: 0;
	max-width: 1200px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.complain-base li {
	margin: 0;
	padding: 0;
	width: 31%;
	list-style: none;
}

.complain-base li .complain-01 {
	margin: 0;
	padding: 20px;
	border-radius: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
	min-height: 150px;
}

.complain-base li .complain-01 .face-icon {
	margin: 0;
	padding: 0;
	width: 25%;
}

.complain-base li .complain-01 .face-icon img {
	width: 100%;
	height: auto;
}

.complain-base li .complain-01 .complain-01-text {
	margin: 0;
	padding: 0;
	text-align: left;
	width: 70%;
}

.complain-base li .arrow-g {
	margin: 40px 0;
	padding: 0;
	text-align: center;
}

.complain-base li .complain-answer {
	margin: 0;
	padding: 20px 30px 25px;
	border: 3px solid #F2A700;
	border-radius: 12px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
	font-size: 18px;
	min-height: 210px;
}

@media screen and (max-width: 768px) {
	.complain-base {
		margin: 50px auto 0;
		padding: 0;
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	.complain-base li {
		margin: 0 0 50px;
		padding: 0;
		width: 100%;
		list-style: none;
	}

	.complain-base li .complain-01 {
		margin: 0;
		padding: 20px;
		border: 1px solid #227066;
		border-radius: 12px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		background: #fff;
	}

	.complain-base li .complain-01 .face-icon {
		margin: 0;
		padding: 0;
		width: 15%;
	}

	.complain-base li .complain-01 .face-icon img {
		width: 100%;
		height: auto;
	}

	.complain-base li .complain-01 .complain-01-text {
		margin: 0;
		padding: 0;
		text-align: left;
		width: 82%;
	}

	.complain-base li .arrow-g {
		margin: 20px 0;
		padding: 0;
		text-align: center;
	}

	.complain-base li .complain-answer {
		margin: 0;
		padding: 20px;
		border: 3px solid #dbae1c;
		border-radius: 12px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		background: #fff;
		min-height: 100px;
	}

	.complain-base li:last-child {
		margin: 0;
	}
}

.merit-base {
	margin: 0 auto;
	padding: 0;
	max-width: 1300px;
}

.merit-base .merit-box-01 {
	margin: 50px 0 0;
	padding: 30px;
	max-width: 900px;
	background: #EDF8FC;
	border-radius: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	float: left;
}

.merit-base .merit-box-01 .merit-mark {
	margin: 0;
	padding: 0;
	width: 17%;
	text-align: center;
}

.merit-base .merit-box-01 .merit-mark img {
	width: 100%;
	height: auto;
}

.merit-base .merit-box-01 .merit-text {
	margin: 0;
	padding: 0;
	width: 77%;
	text-align: left;
}

.merit-base .merit-box-02 {
	margin: 50px 0 0;
	padding: 30px;
	max-width: 900px;
	background: #EDF8FC;
	border-radius: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	float: right;
}

.merit-base .merit-box-02 .merit-mark {
	margin: 0;
	padding: 0;
	width: 17%;
	text-align: center;
}

.merit-base .merit-box-02 .merit-mark img {
	width: 100%;
	height: auto;
}

.merit-base .merit-box-02 .merit-text {
	margin: 0;
	padding: 0;
	width: 77%;
	text-align: left;
}

@media screen and (max-width: 768px) {
	.merit-base {
		margin: 0 auto;
		padding: 0;
		width: 100%;
		background: #eee;
	}

	.merit-base .merit-box-01 {
		margin: 50px 0 0;
		padding: 30px;
		max-width: 900px;
		background: #EDF8FC;
		border-radius: 12px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		float: left;
	}

	.merit-base .merit-box-01 .merit-mark {
		margin: 0 auto;
		padding: 0;
		width: 50%;
		text-align: center;
	}

	.merit-base .merit-box-01 .merit-mark img {
		width: 100%;
		height: auto;
	}

	.merit-base .merit-box-01 .merit-text {
		margin: 30px 0 0;
		padding: 0;
		width: 100%;
		text-align: left;
	}

	.merit-base .merit-box-02 {
		margin: 50px 0 0;
		padding: 30px;
		max-width: 900px;
		background: #EDF8FC;
		border-radius: 12px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		float: right;
	}

	.merit-base .merit-box-02 .merit-mark {
		margin: 0 auto;
		padding: 0;
		width: 50%;
		text-align: center;
	}

	.merit-base .merit-box-02 .merit-mark img {
		width: 100%;
		height: auto;
	}

	.merit-base .merit-box-02 .merit-text {
		margin: 30px 0 0;
		padding: 0;
		width: 100%;
		text-align: left;
	}
}

.taisyou-base {
	margin: 50px 0 0;
	padding: 0;
	max-width: 1300px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.taisyou-base li {
	margin: 0;
	padding: 15px 10px;
	width: 14.1%;
	text-align: center;
	font-size: 14px;
	background: #fff;
}

.taisyou-base li img {
	width: 50%;
	height: auto;
}

.taisyou-base li:nth-child(even) {
	margin: 0;
	padding: 15px 10px;
	width: 14.1%;
	text-align: center;
	font-size: 14px;
	background: #EFEFEF;
}

.taisyou-base li:nth-child(even) img {
	width: 50%;
	height: auto;
}

@media screen and (max-width: 768px) {
	.taisyou-base {
		margin: 50px 0 0;
		padding: 0;
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		list-style: none;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.taisyou-base li {
		margin: 0;
		padding: 15px 10px;
		width: 33.333%;
		text-align: center;
		font-size: 14px;
		background: #fff;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	.taisyou-base li img {
		width: 50%;
		height: auto;
	}

	.taisyou-base li:nth-child(even) {
		margin: 0;
		padding: 15px 10px;
		width: 33.333%;
		text-align: center;
		font-size: 14px;
		background: #EFEFEF;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	.taisyou-base li:nth-child(even) img {
		width: 50%;
		height: auto;
	}
}

.page-heading {
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
}

.page-heading-wh {
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	color: #fff;
}

@media screen and (max-width: 780px) {
	.page-heading {
		margin: 0;
		padding: 0;
		text-align: center;
		font-size: 24px;
		font-weight: bold;
	}

	.page-heading-wh {
		margin: 0;
		padding: 0;
		text-align: center;
		font-size: 24px;
		font-weight: bold;
		color: #fff;
	}
}

span.redmarker {
	background: #ffff00;
}

ul.guide-area {
	margin: 60px auto 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	list-style: none;
}

ul.guide-area li {
	margin: 0;
	padding: 0;
	width: 32%;
	text-align: center;
	border-radius: 12px;
}

.guide-title {
	margin: 0;
	padding: 5px 0;
	font-size: 22px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	background: #1F8AC0;
	border-radius: 12px 12px 0 0;
	border: 2px solid #1F8AC0;
}

.guide-text-base {
	margin: 0;
	padding: 20px;
	border-right: 2px solid #1F8AC0;
	border-bottom: 2px solid #1F8AC0;
	border-left: 2px solid #1F8AC0;
	border-radius: 0 0 12px 12px;
	background: #fff;
	min-height: 350px;
}

.guide-text-base .guide-text {
	text-align: left;
}

.guide-text-base .guide-img {
	margin: 30px auto 0;
	padding: 0;
}

.guide-text-base .guide-img-02 {
	margin: 30px auto 0;
	padding: 0;
}

@media screen and (max-width: 810px) {
	.guide-text-base {
		margin: 0;
		padding: 20px;
		border-right: 2px solid #1F8AC0;
		border-bottom: 2px solid #1F8AC0;
		border-left: 2px solid #1F8AC0;
		border-radius: 0 0 12px 12px;
		background: #fff;
		min-height: 320px;
	}

	.guide-text-base .guide-text {
		text-align: left;
	}

	.guide-text-base .guide-img {
		margin: 0 auto;
		padding: 0;
		width: 80%;
	}

	.guide-text-base .guide-img img {
		width: 100%;
		height: auto;
	}

	.guide-text-base .guide-img-02 {
		margin: 30px auto 0;
		padding: 0;
		width: 80%;
	}

	.guide-text-base .guide-img-02 img {
		width: 100%;
		height: auto;
	}
}

@media screen and (max-width: 768px) {
	ul.guide-area {
		margin: 40px auto 0;
		padding: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		text-align: left;
		width: 100%;
		list-style: none;
	}

	ul.guide-area li {
		margin: 0 0 30px;
		padding: 0;
		width: 100%;
		text-align: center;
		border-radius: 12px;
	}

	.guide-text-base {
		margin: 0;
		padding: 20px;
		border-right: 2px solid #1F8AC0;
		border-bottom: 2px solid #1F8AC0;
		border-left: 2px solid #1F8AC0;
		border-radius: 0 0 12px 12px;
		min-height: 310px;
		position: relative;
	}

	.guide-text-base .guide-text {
		text-align: left;
	}

	.guide-text-base .guide-img {
		margin: 20px auto 0;
		padding: 0;
		text-align: center;
	}

	.guide-text-base .guide-img-02 {
		margin: 20px auto 0;
		padding: 0;
		text-align: center;
	}
}

/*----------
Header
----------*/

.header_logo {
	padding: 10px 0px;
	text-align: center;
}

/*　ロゴの横幅サイズ*/
.header_logo h1 {
	width: 300px;
}

.header_logo h1 img {
	width: 100%;
}

@media (max-width: 768px) {

	.header_logo {
		padding: 20px 0px;
		text-align: center;
	}

	.header_logo h1 {
		width: 50%;
		margin: 0 auto;
		padding: 0;
	}

	.header_logo h1 img {
		width: 100%;
	}

	.login {
		padding: 0 0 20px;
	}

}

@media (max-width: 480px) {
	.header_logo {
		padding: 10px 0px;
		text-align: center;
	}

	.header_logo h1 {
		width: 60%;
		margin: 0 auto;
		padding: 0;
	}

	.header_logo h1 img {
		width: 100%;
	}
}

.bg-beige{
	background: #F4E6D9;
}

ul.service-menubase,
ul.service-menubase-02
{
	margin: 50px auto 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;
}

ul.service-menubase li{
	margin: 0 0 20px;
	padding: 0;
	width: 18%;
	list-style: none;
}

ul.service-menubase-02 li {
	margin: 0;
	padding: 0;
	width: 18%;
	list-style: none;
}

ul.service-menubase li img,
ul.service-menubase-02 li img {
	width: 100%;
	height: auto;
}

@media (max-width: 768px) {
	ul.service-menubase,
	ul.service-menubase-02
	{
		margin: 0 auto;
		padding: 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	
	ul.service-menubase li{
		margin: 40px 0 0;
		padding: 0;
		width: 47%;
		list-style: none;
	}
	
	ul.service-menubase-02 li {
		margin: 40px 0 0;
		padding: 0;
		width: 47%;
		list-style: none;
	}
}

ul.tokuchou-base{
	margin: 50px auto 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap: wrap;
}

ul.tokuchou-base li {
	margin: 0;
	padding: 25px;
	width: 30%;
	list-style: none;
	background: #fff;
	border-radius: 12px;
	text-align: left;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}

ul.tokuchou-base li .toku-img {
	margin: 0;
	padding: 0;
	width: 25%;
}

ul.tokuchou-base li .toku-img img {
	width: 100%;
	height: auto;
}

ul.tokuchou-base li .toku-text {
	margin: 0;
	padding: 0;
	width: 65%;
	text-align: left;
}

@media (max-width: 768px) {

ul.tokuchou-base{
	margin: 30px auto 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	webkit-flex-direction: column;
    flex-direction: column;
	flex-wrap: wrap;
}

ul.tokuchou-base li {
	margin: 10px 0;
	padding: 25px;
	width: 100%;
	list-style: none;
	background: #fff;
	border-radius: 12px;
	text-align: left;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}

}

/* スマホヘッダー対応 20250611 */
/* Tablet and smaller desktop devices (e.g., iPad Air range) */
@media screen and (max-width: 1199px) {
    .header .container .row {
        flex-direction: row; /* 基本は横並びを維持 */
        justify-content: space-between; /* 要素間のスペースを均等に */
        align-items: center; /* 垂直方向中央寄せ */
    }

    .col-lg-3 { /* ロゴ */
        width: auto; /* 必要に応じて調整 */
        flex-grow: 1; /* スペースを埋めるように拡張 */
        padding-right: var(--bs-gutter-x,.75rem);
        padding-left: var(--bs-gutter-x,.75rem);
        text-align: left; /* ロゴを左寄せ */
    }

    .header_logo h1 {
        width: 250px; /* タブレットでのロゴ幅を固定 */
        margin: 0; /* 不要なマージンを削除 */
    }
    
    /* ログイン・会員登録ボタンのコンテナ 20251023 edit*/
    .col-lg-9, .col-lg-2, .col-lg-3, .col-md-8, .col-sm-6, .col-6 {
        width: auto; /* 幅を自動調整 */
        flex-grow: 0; /* 拡張しない */
        flex-shrink: 0; /* 縮小しない */
        padding-right: var(--bs-gutter-x,.75rem);
        padding-left: var(--bs-gutter-x,.75rem);
        /*display: flex; /* flexコンテナにする */
        justify-content: flex-end; /* 右寄せ */
        align-items: center; /* 垂直中央揃え */
    }

    /* 会員登録・ログインボタンのサイズ調整 */
    .btn.btn_member,
    .btn.btn_login {
        padding: 6px 12px; /* ボタンのパディングを小さく */
        font-size: 13px; /* ボタンのフォントサイズを小さく */
        margin-left: 5px; /* ボタン間のマージンを追加 */
        margin-right: 0;
    }

    /* ハンバーガーメニューをmd以上でも表示 */
    .hamburger {
        display: block !important; /* 強制的に表示 */
        position: relative; /* 他の要素との相対位置 */
        margin-left: 15px; /* ボタンとの間隔 */
        z-index: 11; /* 最前面に */
    }

    /* PC・タブレット用の横並びナビゲーションを非表示に */
    .header_menu_wrap.d-md-block {
        display: none !important;
    }

    /* スマホ・タブレット用グローバルメニューを常に非アクティブ（隠れた）状態に */
    .globalMenuSp {
        display: block !important; /* HTML要素としては存在 */
        position: fixed;
        z-index: 8;
        top: 0;
        left: 0;
        color: #fff;
        background: #1f8ac0ea;
        text-align: center;
        width: 100%;
        opacity: 0;
        visibility: hidden; /* 最初は非表示 */
        transition: opacity .6s ease, visibility .6s ease;
        padding-top: 60px; /* ヘッダーの高さ分空ける */
    }
    .globalMenuSp.active {
        opacity: 1;
        visibility: visible;
    }
    .globalMenuSp ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }
    .globalMenuSp ul li {
        padding: 15px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }
    .globalMenuSp ul li:last-child {
        border-bottom: none;
    }
    .globalMenuSp ul li a {
        color: #fff;
        text-decoration: none;
        display: block;
    }
    .globalMenuSp ul li:hover {
        background: #1F8AC0;
    }
	/*20251026　odakura↓*/
	.work_view_wrap .work_view_btn_wrap .work_view_btn_left{
		margin-bottom:7px;
	}
	.work_view_btn_left{
		margin-bottom:7px;
	}
	/*ここまで*/
}

/* 768px以下のモバイルデバイス向け（既存のスタイルを維持） */
@media (max-width: 768px) {
    /* ここに既存のスマホ向けスタイルを記述 */
    .header .container .row {
        flex-direction: column; /* 要素を縦方向に積み重ねる */
        align-items: center; /* 中央寄せ */
    }

    .header_logo {
        padding: 10px 0;
        width: 100%;
        text-align: center;
    }

    .header_logo h1 {
        width: 50%; /* スマホ時のロゴ画像の幅を調整 */
        margin: 0 auto;
    }

    /* ハンバーガーメニューを常に表示 */
    .hamburger {
        display: block !important; /* 強制的に表示 */
        position: absolute; /* 親要素基準で配置 */
        top: 20px; /* 位置調整 */
        right: 20px; /* 位置調整 */
        z-index: 10; /* 他の要素より手前に */
    }

    /* グローバルメニューの調整 */
    .globalMenuSp {
        position: fixed;
        z-index: 8;
        top: 0;
        left: 0;
        color: #fff;
        background: #1f8ac0ea;
        text-align: center;
        width: 100%;
        opacity: 0;
        visibility: hidden; /* 最初は非表示 */
        transition: opacity .6s ease, visibility .6s ease;
        padding-top: 60px; /* ヘッダーの高さ分空ける */
    }

    .globalMenuSp.active {
        opacity: 1;
        visibility: visible;
    }

    .globalMenuSp ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .globalMenuSp ul li {
        padding: 15px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }

    .globalMenuSp ul li:last-child {
        border-bottom: none;
    }

    .globalMenuSp ul li a {
        color: #fff;
        text-decoration: none;
        display: block;
    }

    .globalMenuSp ul li:hover {
        background: #1F8AC0;
    }

    /* ログイン・会員登録ボタンの調整 */
    .login {
        width: 100%;
        text-align: center;
        padding: 10px 0;
    }

    .btn.btn_member,
    .btn.btn_login {
        margin: 5px;
        display: inline-block;
        font-size: 14px;
        padding: 8px 10px;
    }
}

/* PC向けのスタイル（1200px以上） */
@media screen and (min-width: 1200px) {
    .hamburger {
        display: none !important; /* PCではハンバーガーメニューを非表示 */
    }
    .globalMenuSp {
        display: block !important; /* PCではグローバルメニューを横並びで表示 */
        position: static;
        opacity: 1;
        visibility: visible;
        background: none;
        color: inherit;
        text-align: left;
        width: auto;
        transition: none;
        padding-top: 0;
    }
    /* header.phpでd-md-blockが設定されているため、ここでは特に何も指定しない */
    /* .header_menu_wrap.d-md-block { display: block !important; } */
}

/* 768px以下のモバイルデバイス向け（既存のスタイルを維持） */
@media (max-width: 768px) {
    /* ここに既存のスマホ向けスタイルを記述 */
    .header .container .row {
        flex-direction: column; /* 要素を縦方向に積み重ねる */
        align-items: center; /* 中央寄せ */
    }

    .header_logo {
        padding: 10px 0;
        width: 100%;
        text-align: center;
    }

    .header_logo h1 {
        width: 50%; /* スマホ時のロゴ画像の幅を調整 */
        margin: 0 auto;
    }

    /* ハンバーガーメニューを常に表示 */
    .hamburger {
        display: block !important; /* 強制的に表示 */
        position: absolute; /* 親要素基準で配置 */
        top: 20px; /* 位置調整 */
        right: 20px; /* 位置調整 */
        z-index: 10; /* 他の要素より手前に */
    }

    /* グローバルメニューの調整 */
    .globalMenuSp {
        position: fixed;
        z-index: 8;
        top: 0;
        left: 0;
        color: #fff;
        background: #1f8ac0ea;
        text-align: center;
        width: 100%;
        opacity: 0;
        visibility: hidden; /* 最初は非表示 */
        transition: opacity .6s ease, visibility .6s ease;
        padding-top: 60px; /* ヘッダーの高さ分空ける */
    }

    .globalMenuSp.active {
        opacity: 1;
        visibility: visible;
    }

    .globalMenuSp ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .globalMenuSp ul li {
        padding: 15px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }

    .globalMenuSp ul li:last-child {
        border-bottom: none;
    }

    .globalMenuSp ul li a {
        color: #fff;
        text-decoration: none;
        display: block;
    }

    .globalMenuSp ul li:hover {
        background: #1F8AC0;
    }

    /* ログイン・会員登録ボタンの調整 */
    .login {
        width: 100%;
        text-align: center;
        padding: 10px 0;
    }

    .btn.btn_member,
    .btn.btn_login {
        margin: 5px;
        display: inline-block;
        font-size: 14px;
        padding: 8px 10px;
    }
}
@media (max-width: 768px) {
    /* スマホ時のヘッダーレイアウト調整 */
    .header .container .row {
        flex-direction: column; /* 要素を縦方向に積み重ねる */
        align-items: center; /* 中央寄せ */
    }

    .header_logo {
        padding: 10px 0; /* ロゴの上下のパディングを調整 */
        width: 100%; /* ロゴのコンテナ幅を100%に */
        text-align: center; /* ロゴ画像を中央寄せ */
    }

    .header_logo h1 {
        width: 60%; /* スマホ時のロゴ画像の幅を調整 */
        margin: 0 auto; /* 中央寄せ */
    }

    /* ハンバーガーメニューを常に表示 */
    .hamburger {
        display: block !important; /* 強制的に表示 */
        position: absolute; /* 親要素基準で配置 */
        top: 20px; /* 位置調整 */
        right: 20px; /* 位置調整 */
        z-index: 10; /* 他の要素より手前に */
    }

    /* グローバルメニューの調整 (既存のものでも可) */
    .globalMenuSp {
        position: fixed;
        z-index: 8;
        top: 0;
        left: 0;
        color: #fff;
        background: #1f8ac0ea;
        text-align: center;
        width: 100%;
        opacity: 0;
        visibility: hidden; /* 最初は非表示 */
        transition: opacity .6s ease, visibility .6s ease;
        padding-top: 60px; /* ヘッダーの高さ分空ける */
    }

    .globalMenuSp.active {
        opacity: 1;
        visibility: visible;
    }

    .globalMenuSp ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .globalMenuSp ul li {
        padding: 15px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }

    .globalMenuSp ul li:last-child {
        border-bottom: none;
    }

    .globalMenuSp ul li a {
        color: #fff;
        text-decoration: none;
        display: block;
    }

    .globalMenuSp ul li:hover {
        background: #1F8AC0;
    }
    
    /* ログイン・会員登録ボタンの調整 */
    .login {
        width: 100%; /* ボタンコンテナの幅を100%に */
        text-align: center; /* ボタンを中央寄せ */
        padding: 10px 0; /* 上下のパディング調整 */
    }

    .btn.btn_member,
    .btn.btn_login {
        margin: 5px; /* ボタン間のスペースを調整 */
        display: inline-block; /* インラインブロックで横並びにする */
        font-size: 14px; /* フォントサイズ調整 */
        padding: 8px 10px; /* パディング調整 */
    }
}