/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 16 2026 | 23:31:40 */
/* 共通 */

/* 微調整？バグ */
@media (min-width: 960px) {
    .alignwide, .l-content .alignfull {
        left: calc(50% - 50vw + var(--swl-scrollbar_width, 0px) / 2);
        width: calc(100vw - var(--swl-scrollbar_width, 0px));
    }
}
@media (max-width: 959px) {
	.l-content {
		padding-left: 0;
		padding-right: 0;
	}
}

/* フォント */
html, body, p, a, li, dt, dd, span, input, textarea, button, select, table, th, td, h1, h2, h3, h4, h5, h6, button, input[type="submit"], strong, b, nav, label, small, caption, figcaption {
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1.6;
	letter-spacing: .03em;
}

/* ボタン */
.swell-block-button.is-style-btn_normal a {
	padding: 1.2em 4em;
	text-shadow: none;
	width: max-content;
	margin: 0 auto;
	min-width: auto;
}
@media (max-width: 959px) {
	.swell-block-button.is-style-btn_normal a {
		padding: 1.2em 2.5em;
	}
}

/* 見出し */
.midashi {
	position: relative;
	padding-bottom: 20px;
}
.midashi h2 {
	font-size: 2em;
	margin-bottom: 0;
	margin-top: 0;
	font-weight: 400;
	letter-spacing: .1em;
}
@media (max-width: 959px) {
	.midashi h2 {
		font-size: 1.4em;
	}	
}
.midashi p {
	font-size: 1em;
	margin-bottom: 0;
	font-weight: 300;
}
.midashi::before {
    content: "";
    display: block;
    width: 50px;
    height: 3px;
    background-color: var(--color_main);
    position: absolute;
    bottom: 0;
    left: 50%;
	transform: translatex(-50%);
}
@media (max-width: 959px) {
	.midashi::before {
		height: 2px;
	}
}
.cta .midashi::before {
    background-color: #fff;
}

/* CTA */
.cta a {
	width: min(600px, 100%);
	margin-left: auto;
	margin-right: auto;
	box-shadow: 0 2px 2px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2);
	border-radius: 20px;
	overflow: hidden;
	transition: .3s;
}
.cta a:hover {
	box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 12px 24px -12px rgba(0, 0, 0, .2);
}

/* CTAの余白など */
#content:not(#body_wrap.error404 #content) {
	margin-bottom: 0!important;
}
#main_content {
	padding-bottom: 0!important;
}
#before_footer_widget {
	margin-top: 0!important;
}
.w-beforeFooter {
	margin-bottom: 0!important;
	margin-top: 0!important;
}
.text-privacy-policy {
	margin-top: 8px!important;
	font-size: .6em;
}

/* iOS含め最新Safari対応。動画の外周1pxを切り落とす */
video.p-mainVisual__video {
	display: block;
	width: 100%;
	height: 100vh;
	object-fit: cover;
	border: 0;
	outline: 0;
	clip-path: inset(1px 1px 1px 1px);
	-webkit-clip-path: inset(1px 1px 1px 1px);
	backface-visibility: hidden;
	transform: translateZ(0);
}

/* 下層ページのページタイトル削除 余白削除 */
#body_wrap:not(.home):not(.page-id-305) .c-pageTitle {
	display: none;
}
#body_wrap:not(.home) .post_content {
	margin-top: 0;
}
#body_wrap:not(.home):not(.page-id-305):not(.page-id-42):not(.page-id-37) .swell-block-fullWide:not(.cta):first-of-type {
	padding-top: 0!important;
}

/* スマホメニュー内 */
.c-widget__title.-spmenu {
	border-radius: 10px;
}