/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 12 2026 | 01:03:07 */
/* 共通 */

/* フォント */
@import url('https://fonts.googleapis.com/css2?family=GFS+Didot&family=Noto+Serif+JP:wght@300..900&family=Noto+Sans+JP:wght@300..900&family=Shippori+Mincho:wght@400;500;600&display=swap');

/* サイト全体の文字色 */
body,
p,
h1, h2, h3, h4, h5, h6,
ul, ol, li,
table, th, td,
input, textarea, select, button,
label,
a,
blockquote,
figcaption,
dl, dt, dd,
header, nav, section, article, aside, footer {
	font-family: "Noto Serif JP", serif;
}

/* セクションタイトル */
.post_content .sectionTitle-en {
	position: relative;
	letter-spacing: .08em;
	font-size: 40px!important;
	color: var(--color_main);
	line-height: 1.2;
	font-family: "GFS Didot", serif;
}
@media (max-width: 599px) {
	.post_content .sectionTitle-en {
		font-size: 30px!important;
	}
}
.post_content .sectionTitle-en.mid {
	font-size: 18px!important;
	display: flex;
	align-items: center;
	width: 100%;
	gap: 20px;
}
.post_content .sectionTitle-en.mid::before,
.post_content .sectionTitle-en.mid::after {
	content: "";
	flex: 1;
	height: 1px;
	background-color: var(--color_main);
}
@media (max-width: 599px) {
	.post_content .sectionTitle-en.mid {
		font-size: 14px!important;
	}
}
.post_content .sectionTitle {
	position: relative;
	letter-spacing: .1em;
	font-size: 14px!important;
	color: #414141;
	font-weight: 400;
}
@media (max-width: 599px) {
	.post_content .sectionTitle {
		font-size: 14px!important;
	}
}
.post_content .sectionTitle.mid {
	font-size: 28px!important;
	font-weight: 500;
}
@media (max-width: 599px) {
	.post_content .sectionTitle.mid {
		font-size: 20px!important;
	}
}

/* スムーススクロール */
/* PC */
[id^="index_id"] {
	scroll-margin-top: 126px!important;
}
/* スマホ・タブレット */
@media (max-width: 959px) {
	[id^="index_id"] {
		scroll-margin-top: 50px!important;
	}
}

/* テーブルの文字をスマホでは小さく */
@media (max-width: 599px) {
	.sp-text-small th,
	.sp-text-small td {
		font-size: 11px;
	}
}

/* ラベル */
#content .label code {
	background-color: var(--color_main);
	color: #fff;
	padding: 5px 10px;
	white-space: nowrap;
}

/* ボタン */
.swell-block-button.is-style-btn_line.blue_ .swell-block-button__link {
	background-color: #fff;
}
.swell-block-button.is-style-btn_line.blue_ .swell-block-button__link:hover {
	background-color: var(--color_main);
}

/* お問い合わせボタン */
.ctaBtnWrap {
	padding-left: 1em;
}
.ctaBtn {
	font-size: 13px;
	padding: .8em 1.5em;
	display: block;
	margin-bottom: 5px;
	background-color: var(--color_main);
	border: solid  var(--color_main) 1px;
	color: #ffffff;
	transition: .3s;
}
.ctaBtn i {
	font-weight: bold;
	color: #fff;
	font-size: 20px;
	display: block;
	margin-bottom: 5px;
}
.ctaBtn:hover {
	opacity: .8;
}

/* 下層ページタイトル */
.c-pageTitle {
	text-align: center;
	letter-spacing: .1em;
}

/* CTA */
.cta-bottom .sectionTitle-en {
	font-weight: 900;
}
.cta-bottom .cta-wrap {
	transform: translatey(-100px);
	position: relative;
	padding-top: 80px;
	padding-bottom: 60px;
}
@media (max-width: 599px) {
	.cta-bottom .cta-wrap {
		transform: translatey(-60px);
		padding-top: 60px;
		padding-bottom: 40px;
	}	
}
.cta-bottom .cta-wrap .title-wrap {
	position: absolute;
	top: -25px;
	left: 50%;
	transform: translatex(-50%);
}
@media (max-width: 599px) {
	.cta-bottom .cta-wrap .title-wrap {
		top: -20px;
	}
	.cta-bottom .cta-wrap .title-wrap .sectionTitle-en {
		font-size: 34px!important;
	}
}
.cta-bottom .cta-wrap .title-wrap .sectionTitle-en {
	-webkit-text-stroke: 2px #fff;
	paint-order: stroke fill;
	text-shadow: 0 0 10px rgba(255, 255, 255, 0.8);
}
.cta-bottom .tel a {
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 30px;
}
.cta-bottom .tel .fa-phone::before {
	font-size: 24px;
	padding-right: 5px;
}
@media (max-width: 599px) {
	.cta-bottom .tel-area * {
		text-align: center;
	}
}
#body_wrap:not(.home) #before_footer_widget .cta_news {
	display: none;
}

/* フッター */
.footer .footer-logo {
	max-width: 300px;
}
.footer .left-area p a,
.footer .left-area p span,
.footer .center-area p a,
.footer .center-area p span {
	color: var(--color_main);
}
.footer a {
	transition: .3s;
}
.footer a:hover {
	opacity: .5;
}
#footer {
	background: #f2faff;
}

/* ページトップへ */
@media (max-width: 599px) {
	#body_wrap .p-fixBtnWrap {
		bottom: 90px;
	}
}

/* スマホ固定メニュー分表示調整 */
@media (max-width:599px) {
	#body_wrap {
		padding-bottom: 80px;
	}
}

/* 余白調整 */
.p-blogParts {
	margin-bottom: 0!important;
}