/* :rootのCSS変数の宣言 */
:root {
	--light-gray: #f5f5f5;
	--yellow: #ffaa00;
	--green: #06c755;
	--orange: #ffab00;
	--light-brown: #c99f69;	
}
body {
	font-family: "Inter", "Zen Kaku Gothic Antique", sans-serif;
}

/* =============================================================================================
 * 基本設定
 * ========================================================================================== */
p,a,li {
    font-weight: 500;
}
.pt_0 {
	padding-top:0!important;
}
.pt_10 {
	padding-top:10px!important;
}
.pb_0 {
	padding-bottom:0!important;
}
.pb_10 {
	padding-bottom:10px!important;
}
.mt_0 {
	margin-top:0!important;
}
.mb_0 {
	margin-bottom:0!important;
}
.mr_0 {
	margin-right: 0!important;
}
.ml_0 {
	margin-left: 0!important;
}
.mt_10 {
	margin-top:10px!important;
}
.mb_10 {
	margin-bottom:10px!important;
}

.z_0 { z-index: 0; }
.z_1 { z-index: 1; }
.z_2 { z-index: 2; }
.z_3 { z-index: 3; }

.p_ab {
	position: absolute;
}
.p_rel {
	position: relative;
}
.d_flex {
	display:flex;
}
.d_flex.f_wrap {
    flex-wrap: wrap;
}
.inline_b {
	display:inline-block;
}
.js_sb {
	justify-content:space-between;
}
.js_fs {
	justify-content:flex-start;
}
.of_hd {
	overflow: hidden;
}
.smb-panels__item__action>a:focus:after {
    outline: none;
    outline-offset: 0px;
}

@media screen and (max-width: 639px) {
	.sp-spacer_10 { height: 10px!important; }
	.sp-spacer_20 { height: 20px!important; }
	.sp-spacer_30 { height: 30px!important; }
	.sp-spacer_40 { height: 40px!important; }
	.sp-spacer_50 { height: 50px!important; }
	.sp-spacer_60 { height: 60px!important; }
	.sp-spacer_70 { height: 70px!important; }
	.sp-spacer_80 { height: 80px!important; }
}

/* テキスト
--------------------------------------------------------------- */
.mincho {
	font-family: "Zen Antique Soft", serif;
}
.maru {
	font-family: 'Zen Maru Gothic', serif;
}
.tate {
	writing-mode: vertical-rl;
}
p.text_justify {
	text-align: justify;
}
p {
	font-size: clamp(14px, 1.6vw, 16px);
}

.lh_1-2 { line-height: 1.2; }
.lh_1-3 { line-height: 1.3; }
.lh_1-4 { line-height: 1.4; }
.lh_1-5 { line-height: 1.5; }
.lh_1-6 { line-height: 1.6; }
.lh_1-7 { line-height: 1.7; }
.lh_1-8 { line-height: 1.8; }
.lh_1-9 { line-height: 1.9; }
.lh_2 { line-height: 2; }

.has-sm-xs-font-size { font-size: clamp(10px, 1.2vw, 12px)!important; }
.has-sm-s-font-size { font-size: clamp(12px, 1.4vw, 14px)!important; }
.has-sm-m-font-size { font-size: clamp(14px, 1.6vw, 16px)!important; }
.has-sm-l-font-size { font-size: clamp(16px, 1.8vw, 18px)!important; }
.has-sm-xl-font-size { font-size: clamp(18px, 2.4vw, 24px)!important; }
.has-sm-2-xl-font-size { font-size: clamp(20px, 2.8vw, 28px)!important; }
.has-sm-3-xl-font-size { font-size: clamp(24px, 3.2vw, 32px)!important; }
.has-sm-4-xl-font-size { font-size: clamp(28px, 3.6vw, 36px)!important; }
.has-sm-5-xl-font-size { font-size: clamp(32px, 4.0vw, 40px)!important; }

/* ===============================================================
 * 共通パーツ
 * ============================================================ */

/* 既存クラス
--------------------------------------------------------------- */
.wp-block-snow-monkey-blocks-section {/*1280px基準*/
	padding: clamp(50px, 8.33vw, 120px) 0;
}
.smb-section__inner {
	width: 90vw;
	max-width: 90vw;
	margin: 0 auto;
}

/* セクションタイトル
--------------------------------------------------------------- */
.section_title {/*1280px基準*/
	margin-bottom: clamp(40px, 3.906vw, 70px)!important;
}
.section_title h2 {/*1000px基準*/
	font-size: clamp(13px, 1.6vw, 16px);
	letter-spacing: .05em;
}
.section_title p.subtitle {/*1000px基準*/
	margin-bottom: .15em!important;
	font-size: clamp(51px, 7vw, 70px);
	font-weight: 900;
	letter-spacing: .05em;
	color: var(--accent-color);
	line-height: 1.2;
}

/* アイコン
--------------------------------------------------------------- */
svg.svg-inline--fa {
    margin-right: 7px;
}
 .p-global-nav--hover-extend-underline .c-navbar__item.cta:hover>a:after {
    width: 0;
}

/* ボタン
--------------------------------------------------------------- */
.btn_box {/*1280px基準*/
	margin-top: clamp(40px,5.46vw,70px)!important;
}
.btn {
	position: relative;
	width: 300px;
	height: 60px;
	z-index: 2;
}
.btn a {
	position: relative;
	display: flex;/*必須*/
	align-items: center;/*必須*/
	justify-content: flex-start;/*必須*/
	width: 100%;
	padding-left: 2em;
	font-weight: 500;
	letter-spacing: .1em;
	border-radius: 30px;
}
.btn a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 40px;
	height: 40px;
	background-color: #fff;
	border-radius: 20px;
	transition: .3s ease;
	transform: translatey(-50%);
	z-index: 1;
}
.btn a:hover::before {
	transform: translatey(-50%) scale(1.1);
}
.btn a:hover {
	background-color: #0047b7;
	letter-spacing: .2em;
	filter: brightness(100%);
}
.btn a span {
	position: absolute;
	display: block;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 2px;
	background-color: var(--accent-color);
	transform: translatey(-50%);
	z-index: 5;
}
.btn a span::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 7px;
	height: 7px;
	border-top: solid 2px var(--accent-color);
	border-right: solid 2px var(--accent-color);
	transform: translatey(-50%) rotate(45deg);
	z-index: 5;
}
.btn a:hover span {
	background-color: #0047b7;
}
.btn a:hover span::after {
	border-color: #0047b7;
}
/*黄色ボタン*/
.btn.yellow a {
	background-color: var(--sub-accent-color);
	color: #000;
	font-weight: 600;
}
.btn.yellow a:hover {
	background-color: var(--yellow);
	color: #fff;
}
.btn.yellow a span {
	background-color: #000;
}
.btn.yellow a:hover span {
	background-color: var(--yellow);
}
.btn.yellow a span::after {
	border-color: #000;
}
.btn.yellow a:hover span::after {
	border-color: var(--yellow);
}

/*スノーモンキーボタン*/
.wp-block-snow-monkey-blocks-btn {
	position: relative;
	width: 300px;
	height: 60px;
	z-index: 2;
}
a.smb-btn {
	position: relative;
	display: flex;/*必須*/
	align-items: center;/*必須*/
	justify-content: flex-start;/*必須*/
	width: 100%;
	height: 100%;
	padding-left: 2em;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .1em;
	border-radius: 30px;
	background-color: #fff;
	color: var(--accent-color)!important;
}
a.smb-btn:hover {
	letter-spacing: .2em;
	filter: brightness(100%);
}
a.smb-btn:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 40px;
	height: 40px;
	background-color: var(--accent-color);
	border-radius: 20px;
	transition: .3s ease;
	transform: translatey(-50%);
	z-index: 1;
}
a.smb-btn:hover::before {
	border-color: transparent;
	transform: translatey(-50%) scale(1.1);
	transition: .3s ease!important;
}
a.smb-btn span::before {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 2px;
	background-color: #fff;
	transform: translatey(-50%);
	z-index: 5;
}
a.smb-btn span::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 7px;
	height: 7px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: translatey(-50%) rotate(45deg);
	z-index: 5;
}
.w_line a.smb-btn {
    border: 1px solid;
}
a.smb-btn::after,    
.cta a span::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border: 2px solid transparent;
}
a.smb-btn:hover,
.cta a:hover span {
    box-shadow: none;
    transition: .3s ease;
    filter: brightness(100%);
}

/* テーブル
--------------------------------------------------------------- */
.wp-block-table tbody {
	border-top: solid 1px var(--accent-color);
}
.wp-block-table tr {
	border-bottom: solid 1px var(--accent-color);
}
.wp-block-table tr td {
    padding: 1rem;
	font-weight: 500;
    border: none;
}
.wp-block-table tr td:first-child {
    width: 30%;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    background-color: var(--light-gray);
}
.wp-block-table tr td:last-child {
    width: 70%;
    padding-left: 1.5rem;
}
@media screen and (max-width: 639px) {
	.wp-block-table tr td {
		display: block;
		box-sizing: border-box;
		width: 100%!important;
		padding: 1rem;
		font-size: 14px;
	}
	.wp-block-table tr td:first-child {
        text-align: left;
    }
	.wp-block-table tr td:last-child {
		padding-left: 1rem;
	}
}

/* リスト
--------------------------------------------------------------- */
ul li::marker {
	color: var(--accent-color);
}

/* ふきだし
--------------------------------------------------------------- */
.smb-balloon__body {
	background-color: #fff;
	border: solid 2px var(--accent-color);
	width: 100%;
}
@media screen and (max-width: 639px) {
	.smb-balloon__body:after {
		border-bottom-color: var(--accent-color);
	}
}
@media screen and (min-width: 640px) {
	.smb-balloon__body:after {
		border-right-color: var(--accent-color);
	}
}

/* ページネーション
--------------------------------------------------------------- */
.c-pagination__item,.c-pagination__item-link {
	font-weight: bold;
	border-radius: 5px;
}
.c-pagination__item-link svg.svg-inline--fa {
	margin-right: 0;
}
.c-pagination__item-link:hover {
	transition: .3s ease;
}

/* アニメーション
--------------------------------------------------------------- */
.mv_main_text .h_text.animate-in span {
	opacity: 1;
    transform: translateX(0);	
}
.mv_main_text .h_text span {
	display: inline-block;
    opacity: 0;
    transform: translateX(-10px);
    transition: opacity 0.8s ease, transform 0.8s ease;
    transition-delay: calc(var(--i) * 0.05s);
}
.section_title .h_text.animate-in span {
    opacity: 1;
    transform: translateY(0);
}
.section_title .h_text span {
    display: inline-block;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.8s ease, transform 0.8s ease;
    transition-delay: calc(var(--i) * 0.05s);
}
/*フェードイン*/
.fadein.animate-in {
	opacity: 1;
}
.fadein {
	opacity: 0;
	transition: opacity 0.8s ease, transform 0.8s ease;
	transition-delay: .8s;
}
/*左からフェードイン*/
.section_title .fadein-left.animate-in {
	opacity: 1;
	transform: translateX(0);
}
.section_title .fadein-left {
	opacity:0;
	transform: translateX(-10px);
	transition: opacity 0.8s ease, transform 0.8s ease;
	transition-delay: calc(var(--i) * 0.05s);
}
/*左からフェードイン*/
.fadein-left.is-active {
	opacity: 1;
	transform: translateX(0);
}

/* 流れる文字
--------------------------------------------------------------- */
.loop-wrap {
	display: flex;
	align-items: center;
	overflow: hidden;
	width: 100%;
	max-width: 100%!important;
}
.loop-area {
	display: flex;
	animation: loop-slide 55s infinite linear 1s both;
	margin: 0;
	padding: 0;
}
.loop-wrap.reverse .loop-area {
	animation: loop-slide-reverse 55s infinite linear 1s both;
}
.loop-area p.content {
	padding-right: 0.3em!important;
	font-size: clamp(34px, 10vw, 100px)!important;
	font-weight: 900;
	letter-spacing: 0.05em;
	line-height: 1.3;
	color: #fff;
	white-space: nowrap;
	text-shadow: 
       1px  1px 0px #0066cc,
      -1px  1px 0px #0066cc,
       1px -1px 0px #0066cc,
      -1px -1px 0px #0066cc,
       1px  0px 0px #0066cc,
       0px  1px 0px #0066cc,
      -1px  0px 0px #0066cc,
       0px -1px 0px #0066cc;        /* 文字の影 */
}
@keyframes loop-slide {
  from { transform: translateX(0); }
  to { transform: translateX(-100%); }
}
@keyframes loop-slide-reverse {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}
@media screen and (max-width: 639px) {
	.loop-area {
		animation: loop-slide 40s infinite linear 1s both;
	}
}

/* ===============================================================
 * Header
 * ============================================================ */
.l-header {
	transition: .3s ease;
	height: 100px;
}
.l-header__content {
	width: 95%;
	height: 100%;
	margin: 0 auto;
}
.l-1row-header {
	width: 100%;
	height: 100%;
}
.l-1row-header .c-fluid-container {
	height: 100%;
}
.c-site-branding__title {
	display: flex;
	align-items: center;
}
/*ロゴリンク*/
.custom-logo-link {
	display: inline-block;
	transition: .3s ease!important;
}
.c-site-branding__title .custom-logo {
	width: auto;
	height: 70px;
	margin-left: 35px;
}
.l-header .c-row--lg-margin {
	--_gap: none;
}
.c-row>.c-row__col {
	padding: 0;
}
/*spの時*/
.c-drawer__controls {
	height: 70px;
}
@media screen and (max-width: 1023px) {
	.c-site-branding__title .custom-logo {
		margin-left: 0;
	}
}
@media screen and (max-width: 639px) {
	.l-header {
		height: 70px;
	}
	.l-header__content {
		width: 90%;
	}
	.c-site-branding__title .custom-logo {
		height: 45px;
	}
}
@media screen and (min-width: 640px) {
	.l-header .c-fluid-container {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
	}
	.l-header .c-fluid-container .c-row {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
	}
	.c-drawer__controls {
		height: 100px;
	}
}
@media screen and (min-width: 1024px) {
	.l-header__content {
		width: 100%;
	}
}
@media screen and (min-width: 1280px) {
	a.custom-logo-link:hover {
		opacity: .6;
	}
}

/* グローバルナビゲーション
--------------------------------------------------------------- */
/*共通*/
 .l-1row-header .c-fluid-container {
    padding-right: 0;
	padding-left: 0;
}
.p-global-nav .c-navbar__item.header_cta {
	display: flex;
	align-items: center;
	font-weight: 500!important;
	margin-right: 35px;
}
/*お問い合わせリンク*/
.p-global-nav .c-navbar__item.header_cta>a {
	background-color:var(--sub-accent-color);
    color: #000;
	height: 60px;
	border-radius: 30px;
	padding-left: 2em;
	padding-right: 2em;
	white-space: nowrap;
}
.p-global-nav .c-navbar__item.header_cta>a:hover {
	background-color: var(--orange);
	color: #fff;
}
.p-global-nav .c-navbar__item>a {
	padding-left: .8em;
	padding-right: .8em;
	white-space: nowrap;
}
.p-global-nav .c-navbar__item.tel>a {
    font-size: 1rem;
}
ul#menu-g_nav {
    height: 100px;
}
ul#menu-g_nav li:nth-child(5) a {
	padding-right: 1.6em;
}
li.header_cta.tel::after {
    content: "";
    width: 1px;
    height: 90%;
    position: absolute;
    top: 50%;
    left: 0;
    background-color: #fff;
    transform: translateY(-50%);
}
.p-global-nav .c-navbar__item[aria-haspopup=true]:before{
	display : none;
}
li.g_nav_sab {
    border-bottom: 1px solid #ffffff80;
}
.p-global-nav .c-navbar__item.header_cta>a:hover {
    opacity: 0.9;
    transition: 0.5s;
}
@media screen and (max-width:1280px) {
	
}
/*以下ドロワーナビゲーション「オーバーオール」の時*/
@media screen and (max-width: 1024px) {
	[id=drawer-nav].c-drawer--overall .c-drawer__controls {
		display: flex;
		align-items: center;
		justify-content: end;
		width: 100%;
		left: 0;
		right: auto;
		padding-left: 2.5%;
		padding-right: 2.5%;
	}
	#hamburger-btn {
		margin-right: 1%;
	}
	ul#menu-sp_nav li a {
		text-align: center;
	}
} 
@media screen and (max-width: 639px) {
	[id=drawer-nav].c-drawer--overall .c-drawer__controls {
		padding-left: 5%;
		padding-right: 5%;
	}
	#hamburger-btn {
		margin-right: 0px;
	}
}

/* ===============================================================
 * Footer
 * ============================================================ */
.l-footer {
	border: none;
	background-color: var(--accent-color);
	z-index: 2;
}
.l-footer .c-container {
	width: 90%;
	max-width: 1280px;
	padding: 0;
}
.l-footer p {
	color: #fff;
}
.l-footer .c-row--lg-margin-l {
	--_gap: 0;
}
.l-footer--default .l-footer-widget-area {/*1280px基準*/
	padding: clamp(40px, 5.46vw, 70px) 0 0;
}
.l-footer--footer .l-footer__body {
	border-top: none;
}
.l-footer .wp-block-image img {
	width: 100%;
	max-width: 400px;
}
@media screen and (max-width: 1023px) {
	.l-footer p {
		text-align: center;
		font-size: 13px;
	}
	.l-footer .wp-block-image {
		width: 80%;
		max-width: 300px;
	}
	.l-footer .wp-block-image img {
		text-align: center;
	}
}
@media screen and (min-width: 1024px) {
	.l-footer .wp-block-image a {
		transition: .3s ease;
	}
	.l-footer .wp-block-image a:hover {
		opacity: .6;
	}
	.l-footer-widget-area__item:nth-of-type(1) {
		--_item-width: 58%;
	}
	.l-footer-widget-area__item:nth-of-type(2) {
		--_item-width: 42%;
	}
}

/* 電話ボタン・お問い合わせボタン
--------------------------------------------------------------- */
ul#menu-footer_contact_btn a {
	position: relative;
	display: flex;/*必須*/
	align-items: center;/*必須*/
	justify-content: flex-start;/*必須*/
	width: 100%;
	padding-left: 2em;
	font-weight: 500;
	letter-spacing: .1em;
	border-radius: 30px;
}
ul#menu-footer_contact_btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 70px;
	padding-left: 1.5em;
	padding-right: 1.5em;
	background-image: var(--gra-blue);
	border-image: var(--gra-blue);
	border-image-slice: 1;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	border: solid 3px #fff;
	transition: .3s ease;
	font-family: "M PLUS 1", sans-serif;
}
ul#menu-footer_contact_btn a:hover {
	text-decoration: none;
}
@media screen and (min-width: 640px) {
	ul#menu-footer_contact_btn {
		display: flex;
	}
	ul#menu-footer_contact_btn {
		width: 100%;
		max-width: 550px;
		margin: 0 auto;
	}
	ul#menu-footer_contact_btn li {
		display: flex;
		justify-content: center;
		width: 50%;
		margin: 0;
	}
	ul#menu-footer_contact_btn a {
		width: 100%;
		max-width: 250px;
	}
}
@media screen and (min-width: 1024px) {
	ul#menu-footer_contact_btn {
		max-width: 100%;
		margin: 0 auto 0 0;
	}
	ul#menu-footer_contact_btn li {
		justify-content: flex-start;
		width: 250px;
	}
	ul#menu-footer_contact_btn li:first-child {
		margin-right: 15px;
	}
	ul#menu-footer_contact_btn a:hover {
		background-color: #fff;
		background-image: none;
		color: var(--accent-color);
		border: solid 1px var(--accent-color);
	}
	ul#menu-footer_contact_btn li:nth-of-type(2) a:hover {
		background-color: #fff;
	}
}
/*株式会社TERA追記分*/
@media screen and (max-width: 1023px) {
	.wp-block-snow-monkey-blocks-buttons {
		justify-content: center;
	}
}
/* フッターナビゲーション
--------------------------------------------------------------- */
.l-footer .widget_nav_menu {
	width: 100%;
}
ul#menu-footer {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 10px;
}
#menu-footer li {
	margin-top: 0;
}
#menu-footer li a {
	transition: .3s ease;
	font-size: 1rem;
	font-weight: normal;
	color: #fff;
}
#menu-footer a:hover {
	opacity: .6;
	text-decoration: none;
}
@media screen and (max-width: 639px) {
	ul#menu-footer::after {
		content: "";
		display: block;
		width: 50%;
	}
	#menu-footer {
		margin: 25px 0;
	}
	#menu-footer li {
		width: 50%;
		text-align: center;
		padding: 5px 0;
	}
}
@media screen and (max-width: 1190px) {
	ul#menu-footer a {
		font-size: 15px;
	}
}
@media screen and (max-width: 1023px) {
	ul#menu-footer {
		width: 100%;
		max-width: 550px;
		justify-content: space-around;
		margin: 30px auto 0;
	}
}
@media screen and (min-width: 1024px) {
	#menu-footer {
		justify-content: flex-end;
	}
	#menu-footer li:not(:first-child) {
		padding-left: 2em;
	}
}

/* コピーライト
--------------------------------------------------------------- */
.c-copyright--inverse {
	display: flex;
	align-items: center;
	padding: clamp(40px, 5.46vw, 70px) 0;
	background: none;
	color: #fff;
	font-size: 11px;
}

/* トップに戻るボタン
--------------------------------------------------------------- */
#page-top {
	right: 10px;
	bottom: 10px;
	width: 60px;
	height: 60px;
	background: url(/wp-content/uploads/2025/11/illust_retop.png) center / contain no-repeat;
	transition: .3s ease;
}
#page-top svg.svg-inline--fa {
	display: none;
	margin-right: 0;
}
#page-top:hover {
	transform: translatey(-10px);
}
.c-page-top:focus-visible {
    filter: brightness(100%);
}
@media screen and (min-width: 640px) {
	#page-top {
		width: 100px;
		height: 100px;
	}
}

/* ===============================================================
 * Main：top
 * ============================================================ */

/* メインビジュアル
--------------------------------------------------------------- */
#t-mv {
	position: relative;
	height: 100vh;
	min-height: 550px;
	padding: 100px 0 0;
	overflow: hidden;
}
#t-mv .smb-section__inner,
#t-mv .c-container, 
#t-mv .smb-section__contents-wrapper,
#t-mv .smb-section__body {
	width: 100%;
	height: 100%;
}
.mv_pop {
	position: absolute;
	right: -5%;
	bottom: 10px;
	width: 40%;
	max-width: 380px;
	z-index: 2;
	transition: .3s ease;
}
.mv_pop:hover {
	transform: translatey(-10px);
}
.mv_text_box {
	position: absolute;
	left: 0;
	bottom: 45px;
	z-index: 2;
}
.mv_text_box h2 {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: clamp(21px, 4.85vw, 50px);
	font-weight: 900;
	background-color: #fff;
	margin-bottom: .25em;
	padding: 0 0 0 10px;
	border-radius: 5px;
	white-space: nowrap;
}
.mv_text_box h3 {
	display: inline-block;
	font-size: clamp(15px, 2.91vw, 30px);
	font-weight: 900;
	background-color: #fff;
	margin-bottom: .25em;
	padding: .05em 10px;
	border-radius: 5px;
	white-space: nowrap;
}
.mv_text_box p {
	font-size: clamp(10px, 1.6vw, 16px);
	padding-left: 10px;
	text-shadow: 0px 0px 1px #fff;
}
.mv_slider {
	position: relative;
	right: -5vw;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-top-left-radius: clamp(50px, 10vw, 100px);
	border-bottom-left-radius: clamp(50px, 10vw, 100px);
}
.mv_slider .spider,
.mv_slider .spider__canvas,
.mv_slider .spider__slide,
.mv_slider .smb-spider-slider__figure-wrapper {
	height: 100%;
}
@media screen and (max-width: 639px) {
	#t-mv {
		height: 100svh;
		padding: 70px 0 0;
	}
	.mv_slider {
		height: 70%;
	}
	.mv_pop {
		left: 50%;
		right: auto;
		bottom: 1%;
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
		transform: translatex(-49%);
	}
	.mv_pop:hover {
		transform: translatex(-49%) translatey(-10px);
	}
	.mv_pop img {
		width: 100%;
	}
	.mv_text_box {
		bottom: 33%;
	}
	.mv_text_box h2 {
		font-size: clamp(21px, 6.84vw, 50px);
	}
	.mv_text_box h3 {
		font-size: clamp(15px, 4.10vw, 30px);
	}
}
/* 事業内容
--------------------------------------------------------------- */
.service_box {
	justify-content: space-between;
}
.service_box h3 {
	font-weight: 900;
}
.service_box img {
	border-radius: clamp(15px, 3vw, 30px);
	overflow: hidden;
}
.facility_box { 
	border-radius: clamp(15px, 3vw, 30px);
}
.facility_box h3:before {
	content: "・";
	color: var(--accent-color);
}
.facility_box h3:after {
	content: "・";
	color: var(--accent-color);
}
.facility_box img {
	border-radius: clamp(10px, 2vw, 20px);
	overflow: hidden;
}
#t-service .illust_img {
	position: absolute;
	top: clamp(30px, 3.80vw, 40px);
	right: 1.2vw;
	width: 220px;
	animation: illust-animation 1.8s ease-in-out infinite alternate-reverse;
	transition: .3s ease;
	transform-origin: center bottom;
}
@keyframes illust-animation {
  0% {
    transform: rotate(-2deg);
  }
  100% {
    transform: rotate(8deg);
  }
}
@media screen and (max-width: 781px) {
	#t-service .illust_img {
		width: 26%;
		top: 0;
	}
}
@media screen and (max-width: 639px) {
	#t-service .illust_img {
		width: 25%;
		top: 70px;
	}
}
@media screen and (max-width: 530px) {
	#t-service .illust_img {
		top: 85px;
	}
}
@media screen and (max-width: 420px) {
	#t-service .illust_img {
		top: 110px;
	}
}
@media screen and (min-width: 640px) {
	.service_box.reverse {
		flex-direction: row-reverse;
	}
	.facility_box {
		padding-left: clamp(30px, 6.5vw, 75px);
		padding-right: clamp(30px, 6.5vw, 75px);
	}
}

/* 施工実績
--------------------------------------------------------------- */
#t-works {
	background-image: linear-gradient(#ffffff, #e0f5ff 50%, #cce0f5);
}
#t-works .c-entry-summary__figure {
	border-radius: clamp(15px, 3vw, 30px);
}
#t-works .c-entry-summary__header {
	margin-bottom: 5px;
}
#t-works .c-entry-summary__meta {
	margin-top: 0px;
	justify-content: flex-start;
}

/*スノーモンキーブロック：リッチメディアカルーセル*/
.spider>.spider__arrow {
	width: 40px;
	height: 40px;
	background-color: #fff;
	border-radius: 20px;
	transition: .3s ease;
}
.spider__arrow:hover {
	background-color: var(--accent-color);
}
.spider__arrow:before {
	width: 7px;
	height: 7px;
	border-color: #000!important;
	border-width: 2px!important;
	transition: .3s ease;
}
.spider__arrow:hover:before {
	border-color: #fff!important;
}
.spider__arrow:after {
	content: "";
	position: absolute;
	left: 50%;
	width: 20px;
	height: 2px;
	background-color: #000;
	transform: translatex(-50%) translatey(-1px);
	transition: .3s ease;
}
.spider__arrow:hover:after {
	background-color: #fff;
}
.spider__arrow[data-direction=prev] {
    left: -20px;
}
.spider__arrow[data-direction=prev]:before {
	top: 50%!important;
	left: 0!important;
	transform: translateX(10px) translateY(-50%) rotate(45deg);
}
.spider__arrow[data-direction=next] {
    right: -20px;
}
.spider__arrow[data-direction=next]:before {
	top: 50%!important;
	right: 0!important;
	transform: translateX(-10px) translateY(-50%) rotate(45deg);
}
.spider__dots:not([data-thumbnails=true]) .spider__dot[aria-current=true] {
	background-color: var(--accent-color);
}
.spider__dots:not([data-thumbnails=true]) .spider__dot {
	background-color: #fff;
}
@media screen and (max-width: 639px) {
	.spider__arrow[data-direction=prev] {
		left: -10px;
	}
	.spider__arrow[data-direction=next] {
		right: -10px;
	}
}
@media screen and (max-width: 1023px) {
	.c-entries-carousel .spider__dots {
		margin-top: 15px;
	}
}

/* TERAの設備施工
--------------------------------------------------------------- */
.features_box {
	position: relative;
	justify-content: space-between;
}
.features_box::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -250px;
	display: block;
	width: 500px;
	height: 500px;
	background-image: linear-gradient(90deg, #e0f5ff, #cce0f5);
	transform: translatey(-50%);
	border-radius: 250px;
	animation: rotateAnimation 5s linear infinite;
	z-index: -1;
}
.features_box.reverse {
	flex-direction: row-reverse;
}
.features_box.reverse::before {
	left: auto;
	right: -250px;
}
.features_box h3 {
	font-size: clamp(24px, 3.6vw, 36px)!important;
	font-weight: 900;
	line-height: 1.4;
}
.features_box img {
	border-radius: clamp(15px, 3vw, 30px);
	overflow: hidden;
}
/* 回転アニメーションの定義 */
@keyframes rotateAnimation {
  from {
    transform: translatey(-50%) rotate(0deg);
  }
  to {
    transform: translatey(-50%) rotate(360deg);
  }
}

@media screen and (max-width: 999px) {
	.features_box::before {
		left: -25vw;
		width: clamp(250px, 50vw, 500px);
		height: clamp(250px, 50vw, 500px);
	}
	.features_box.reverse::before {
		left: auto;
		right: -25vw;
	}
}

/* お問い合わせ(CTA)
--------------------------------------------------------------- */
#cta .section_title {
	margin-bottom: clamp(20px, 3vw, 50px)!important;
}
.cta_box {
	background-color: #fff;
	border-radius: clamp(15px, 3vw, 30px);
	padding: clamp(20px, 6vw, 60px) clamp(20px, 5vw, 50px) clamp(30px, 7vw, 70px)!important;
	box-shadow: 6px 6px 5px #ddd;
}
.cta_list {
	padding-left: 0;
}
.cta_list li {
	position: relative;
	margin-top: 0;
	padding: .5em .8em .5em 2em;
	border-bottom: solid 1px #ccc;
	list-style:none;
}
.cta_list li:first-child {
	border-top: solid 1px #ccc;
}
.cta_list li svg {
	position: absolute;
	top: .5em;
	left: .4em;
	margin-right: 0.4em;
	color: var(--accent-color);
	font-size: 1.2em;
}
#cta .btn_box {/*1280px基準*/
	margin-top: 10px!important;
}
#cta .btn {
	height: 100px;
	width: 100%;
}
#cta .btn a {
	padding-left: 2.5em;
	font-size: clamp(15px, 2.0vw, 22px);
	font-weight: 700;
	color: #000;
	border-radius: 50px;
	background-color: var(--sub-accent-color);
}
#cta .btn a:hover {
	letter-spacing: .1em;
	background-color: var(--yellow);
	color: #fff;
}
#cta .btn a:before {
	right: 30px;
}
#cta .btn a span {
	right: 40px;
	background-color: #000;
}
#cta .btn a:hover span {
	background-color: var(--yellow);
}
#cta .btn a span::after {
	border-color: #000;
}
#cta .btn a:hover span::after {
	border-color: var(--yellow);
}
#cta .illust_img {
	position: absolute;
	right: 0;
	top: -130px;
	width: 20%;
	max-width: 210px;
	animation: illust-animation2 1.8s ease-in-out infinite alternate-reverse;
	transition: .3s ease;
}
@keyframes illust-animation2 {
  0% {
    transform: translatey(-7px);
  }
  100% {
    transform: translatey(7px);
  }
}
@media screen and (max-width: 1150px) {
	#cta .illust_img {
		top: -52%;
		width: 18%;
	}
}
@media screen and (max-width: 999px) {
	#cta .btn a {
		padding-left: 1.8em;
	}
	#cta .btn a:before {
		right: 20px;
	}
	#cta .btn a span {
		right: 30px;
	}
	#cta .illust_img {
		top: -50px;
		width: 15%;
	}
}
@media screen and (max-width: 781px) {
	#cta .illust_img {
		top: auto;
		bottom: 60px;
		width: 30%;
	}
}
@media screen and (max-width: 639px) {
	.cta_list li {
		font-size: 14px!important;
	}
	#cta .btn {
		height: 80px;
	}
	#cta .illust_img {
		width: 25%;
	}
	@keyframes illust-animation2 {
  0% {
    transform: translatey(-4px);
  }
  100% {
    transform: translatey(4px);
  }
}
}

/* 代表挨拶
--------------------------------------------------------------- */
.greeting_box {
	justify-content: space-between;
}
.greeting_box h3 {
	font-weight: 900;
}
.greeting_box img {
	border-radius: clamp(15px, 3vw, 30px);
	overflow: hidden;
}
@media screen and (max-width: 781px) {
	#t-greeting img {
		display: block;
		margin: 0 auto;
		width: 80%;
	}
}

/* 採用情報
--------------------------------------------------------------- */
#t-recruit .btn a {
	background-color: #000;
}
#t-recruit .btn a span {
	background-color: #000;
}
#t-recruit .btn a span::after {
	border-color: #000;
}
.recruit_box img {
	border-radius: clamp(15px, 3vw, 30px);
	overflow: hidden;
}
@media screen and (min-width: 640px) {
	.recruit_text {
		padding-bottom: 4.5em;
	}
	.recruit_list {
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 1;
	}
	.recruit_list p {
		padding-left: 2.5em;
		padding-right: 2.5em;
	}
}
/* 協力会社
--------------------------------------------------------------- */
.partner_box h3 {
	font-weight: 900;
}
.partner_box img {
	border-radius: clamp(15px, 3vw, 30px);
	overflow: hidden;
}

/* お知らせ
--------------------------------------------------------------- */
.c-entry-summary__title {
	font-weight: 600!important;
}
.c-meta__item--published {
	font-weight: 500!important;
}
.snow-monkey-posts .c-entries__item a {
	padding-left: var(--entries--gap);
	padding-right: var(--entries--gap);
}
.snow-monkey-posts .c-entries__item a time {
	color: #666666;
}
@media screen and (min-width: 782px) {
	#t-news .section_title {
		margin-bottom: 0!important;
	}
}

/* インスタグラム
--------------------------------------------------------------- */
#t-insta {
	background-image: linear-gradient(#ffffff, #e0f5ff 50%, #cce0f5);
}
#sb_instagram .sbi_follow_btn {
	display: block;
}
#sb_instagram .sbi_follow_btn a {
	display: flex;
	align-items: center;
	justify-content: center;
}
#sb_instagram .sbi_follow_btn a span {
	position: relative;
	bottom: 0.05em;
	z-index: 5px;
}

#t-insta.wp-block-snow-monkey-blocks-section {
	padding-bottom: clamp(80px, 8.33vw, 120px)!important;
}
/*既存のボタンhoverを削除*/
#sb_instagram .sbi_follow_btn a:focus, #sb_instagram .sbi_follow_btn a:hover {
    box-shadow: none!important;
}
/*イラスト*/
.illust_img.foot {
	position: absolute;
	left: 2%;
	bottom: 0;
	width: 23%;
	max-width: 220px;
	animation: foot-illust-animation 1.8s ease-in-out infinite alternate-reverse;
	transition: .3s ease;
	transform-origin: center bottom;
	z-index: 1;
}
@keyframes foot-illust-animation {
  0% {
    transform: rotate(10deg) translatey(15%);
  }
  100% {
    transform: rotate(-1deg) translatey(15%);
  }
}

/* ===============================================================
 * Main：lower
 * ============================================================ */

/* 既存クラス
--------------------------------------------------------------- */
.l-contents__container {/*HOME以外のページ左右余白*/
	padding-left: 0;
	padding-right: 0;
}
.page-id-19 .l-contents__inner:last-child,/*会社概要*/
.page-id-21 .l-contents__inner:last-child,/*事業内容*/
.page-id-166 .l-contents__inner:last-child,/*採用情報*/
.page-id-23 .l-contents__inner:last-child,/*お問い合わせ*/
.page-id-156 .l-contents__inner:last-child {
	padding-bottom: 0;
}

/* ぱんくずリスト
--------------------------------------------------------------- */
.p-breadcrumbs-wrapper {
	position: relative;
	left: 0;
	width: 90%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0;
	border-bottom: solid 1px var(--accent-color);
}
.p-breadcrumbs-wrapper a {
	position: relative;
	color: var(--accent-color);
	z-index: 2;
}

/* 下層ページヘッダー
--------------------------------------------------------------- */
.c-page-header {
	margin-top: 100px;
	margin-right: 0;
	margin-left: auto;
	padding-top: 120px;
	padding-bottom: 120px;
	width: 90%;
	border-top-left-radius: clamp(40px, 8vw, 80px);
	border-bottom-left-radius: clamp(40px, 8vw, 80px);
}
.single-works .c-page-header__bgimage {
	display: none;
}
.single-works .c-page-header {
	background-color: var(--accent-color);
}

.c-page-header::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(90deg, #ffffffcc, transparent);
	z-index: 1;
}
.single-works .c-page-header::before {
	display: none;
}
.c-page-header__title {/*1000px基準*/
	font-size: clamp(28px, 4.2vw, 42px)!important;
	padding-left: 15px;
	letter-spacing: .1em;
	text-shadow: 0 0 2px #fff;
	font-weight: 900;
	z-index: 2;
}
.c-page-header__title::first-letter {
	color: var(--accent-color);
}
.single-works .c-page-header__title::first-letter {
	color: #fff;
}
.single-works .c-page-header__title {
	color: #fff;
	text-shadow: 0 0 0 #fff;
}
.c-page-header[data-has-image=true] {
    height: unset;
}
.c-page-header[data-has-image=true] .c-page-header__content {
    color: unset;
}
.c-page-header__bgimage>img, .c-page-header__bgimage>picture>img {
	object-position: 50% 15%;
}
.page-id-19 .c-page-header__bgimage>img, .c-page-header__bgimage>picture>img {
	object-position: 50% 45%;
}

@media screen and (max-width: 639px) {
	.c-page-header {
		margin-top: 70px;
		padding-top: 70px;
		padding-bottom: 70px;
	}
	.c-page-header__meta {
		font-size: 13px;
	}
}
/* ページ導入
--------------------------------------------------------------- */
.page-intro {
	padding-top: clamp(15px, 4.5vw, 45px)!important;
}

/* 事業内容
--------------------------------------------------------------- */
.service_link_box {
	max-width: 900px;
}
.service_link a {
	position: relative;
	padding: 1em 2em;
	border: solid 2px var(--accent-color);
	background-color: #fff;
	color: var(--accent-color);
}
.service_link a:hover {
	background-color: var(--accent-color);
	color: #fff;
}
.service_link a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 40px;
	height: 40px;
	background-color: var(--accent-color);
	border-radius: 20px;
	transform: translatey(-50%);
	transition: .3s ease;
}
.service_link a:hover:before {
	background-color: #fff;
}
.service_link a:after {
	content: "↓";
	position: absolute;
	top: 50%;
	right: 21px;
	color: #fff;
	font-weight: 900;
	transform: translatey(-50%);
	transition: .3s ease;
}
.service_link a:hover:after {
	color: var(--accent-color);
}
.menu_box {
	padding: clamp(30px, 5vw, 50px) clamp(15px, 5vw, 50px) clamp(15px, 5vw, 50px)!important;
	background-image: linear-gradient(90deg, #e0f5ff, #cce0f5);
	border-radius: clamp(15px, 3vw, 30px);
}
.menu_box img {
	border-radius: clamp(15px, 3vw, 30px);
	overflow: hidden;
}
.menu_list_box {
	padding: clamp(15px, 3vw, 30px)!important;
	border-radius: clamp(7px, 1.5vw, 15px);
}
@media screen and (max-width: 639px) {
	.service_link_box {
		flex-direction: column;
	}
	.service_link {
		width: 100%!important;
	}
}

/* 対応地域
--------------------------------------------------------------- */
.service_area_text_box {
	padding: clamp(30px, 5vw, 50px);
	border: solid 1px var(--accent-color);
	border-radius: clamp(15px, 3vw, 30px);
}
.service_area_text_box:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,.6);
	border-radius: clamp(15px, 3vw, 30px);
}
@media screen and (max-width: 639px) {
	.service_area_text_box h3 {
		text-align: center;
	}
}
@media screen and (min-width: 640px) {
	.service_area_text_box {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
}

/* お知らせ
--------------------------------------------------------------- */
/*一覧*/
.blog .c-entries--simple .c-entries__item>a,
.archive .c-entries--simple .c-entries__item>a,
.single-post .c-entries--simple .c-entries__item>a {
	padding-top: 15px;
	padding-bottom: 15px;
}
.blog .l-contents__main,
.category .l-contents__main {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
/*詳細*/
article.type-post {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
.single-post .c-entry__content {
	padding-right: var(--wp--preset--spacing--20);
    padding-left: var(--wp--preset--spacing--20);
}
.single-post .c-meta__item--author/*投稿者*/ {
	display: none;
}
.single-post .c-meta__item--modified/*更新日*/ {
	display: none;
}
.c-page-header__meta {
	padding-left: 15px;
	z-index: 2;
}
/*古い投稿・新しい投稿*/
.c-prev-next-nav {
	width: 100%!important;
}
/*関連記事*/
.c-entry__footer>:where(:not(:first-child)) {
	margin-top: clamp(35px, 5vw, 50px);
}
@media screen and (max-width: 639px) {
	.blog .c-entry-summary__title,
	.archive .c-entry-summary__title {
		font-size: 14px;
	}
	.blog .c-entry-summary__meta,
	.archive .c-entry-summary__meta,
	.single-post .c-entry-summary__meta {
		margin-top: .8em;
	}
}

/* 施工実績
--------------------------------------------------------------- */
/*一覧*/
.post-type-archive-works .l-contents__main,
.single-works .l-contents__main {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
.post-type-archive-works .c-entry-summary__figure {
	border-radius: clamp(15px, 3vw, 30px);
	margin-bottom: 10px;
}
.post-type-archive-works .c-entry-summary__title {/*1000px基準*/
	font-size: clamp(16px, 1.8vw, 18px);
}
/*詳細*/
article.works .spider__arrow {
	background-color: var(--accent-color);
	transition: .3s ease;
	border-radius: 30px;
}
article.works .spider__arrow:hover {
	background-color: #000;
}
article.works .c-entry-summary__figure {
	border-radius: 20px;
	margin-bottom: 10px;
}
.c-prev-next-nav {
	width: 90%;
	margin: 0 auto;
}
@media screen and (max-width: 639px) {
	.post-type-archive-works .c-entry-summary__figure {
		margin-bottom: 10px;
	}
	article.works table td {
		font-size: 14px;
	}
	article.works .c-entry-summary__title,
	.post-type-archive-works .c-entry-summary__title {
		font-size: 14px;
	}
}

/* 採用情報
--------------------------------------------------------------- */
/*PCグローバルメニュー*/
ul#menu-g_nav li:nth-child(5) a:hover {
	color: var(--yellow);
}
ul#menu-g_nav li:nth-child(5) a[aria-current="page"] {
	color: var(--yellow);
}
/*ページヘッダー*/
.page-id-166 .c-page-header__title::first-letter {
	color: var(--yellow);
}
/*ぱんくずリスト*/
.page-id-166 .p-breadcrumbs-wrapper {
	border-bottom: solid 1px var(--sub-accent-color);
}
.page-id-166 .p-breadcrumbs-wrapper a {
	color: var(--yellow);
}
/*求める人物像*/
#person_image {
	background-image: linear-gradient(#ffffff, #ffcc0033 50%, #ffaa0033);
}
.person_image_box {
	padding: clamp(35px, 6vw, 60px) clamp(20px, 5vw, 50px) clamp(30px, 7vw, 70px)!important;
	background-color: #fff;
	border: solid 1px var(--sub-accent-color);
	border-radius: clamp(15px, 3vw, 30px);
}
.person_image_box svg {
	color: var(--yellow);
	font-size: 0.9em;
	padding-top: .1em;
}
.person_image_box .wp-block-separator {
	margin: clamp(20px, 4.5vw, 45px) 0!important;
	border-top-width: 1px;
}
/*流れる文字*/
.page-id-166 .loop-area p.content {
	padding-right: 0.3em!important;
	font-size: clamp(34px, 10vw, 100px)!important;
	font-weight: 900;
	letter-spacing: 0.05em;
	line-height: 1.3;
	color: #fff;
	white-space: nowrap;
	text-shadow: 
       1px  1px 0px #ffcc00,
      -1px  1px 0px #ffcc00,
       1px -1px 0px #ffcc00,
      -1px -1px 0px #ffcc00,
       1px  0px 0px #ffcc00,
       0px  1px 0px #ffcc00,
      -1px  0px 0px #ffcc00,
       0px -1px 0px #ffcc00;        /* 文字の影 */
}
/*表*/
.page-id-166 .wp-block-table tbody {
	border-top: solid 1px var(--sub-accent-color);
}
.page-id-166 .wp-block-table tr {
	border-bottom: solid 1px var(--sub-accent-color);
}
/*リンク*/
.page-id-166 p a {
	color: var(--yellow);
}
.page-id-166 p a:hover {
	text-decoration: none;
	opacity: .6;
}

/* お問い合わせフォーム
--------------------------------------------------------------- */
.snow-monkey-form a {
	transition: .3s ease;
}
.snow-monkey-form a:hover {
	opacity: .6;
	text-decoration: none;
}
/*ボタン共通*/
.smf-action .smf-button-control__control {
	width: 100%;
    max-width: 350px;
	height: 70px;
	margin-bottom: 20px;
	padding-left: 1.5em;
	padding-right: 1.5em;
	background: var(--accent-color);
	border: solid 1px var(--accent-color)!important;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .1em;
	border-radius: 40px;
	transition: .3s ease;
}
/*確認ボタン*/
.smf-action .smf-button-control__control[data-action="confirm"]:hover {
	background-color: #fff!important;
	color: var(--accent-color)!important;
	border: solid 1px var(--accent-color)!important;
}
/*戻るボタン*/
.smf-action .smf-button-control__control[data-action="back"] {
	background: #000;
	border: solid 1px #000!important;
	margin-left: 5px;
	margin-right: 5px;
}
.smf-action .smf-button-control__control[data-action="back"]:hover {
	background-color: #fff;
	color: #000;
	border: solid 1px #000!important;
}
/*送信ボタン*/
.smf-action .smf-button-control__control[data-action="complete"] {
    margin-left: 5px;
	margin-right: 5px;
}
.smf-action .smf-button-control__control[data-action="complete"]:hover {
	background-color: #fff!important;
	color: var(--accent-color)!important;
	border: solid 1px var(--accent-color)!important;
}
/*余白調整*/
.smf-action .smf-button-control + .smf-button-control {
	margin-left: 0;
}

@media screen and (max-width: 639px) {
	.smf-action .smf-button-control__control {
		font-size: 16px;
		margin-left: 0!important;
		margin-right: 0!important;
	}
}
/*フォームスタイル「Letter」の時の調整*/
.smf-form--letter .smf-item__col--label {
	display: flex;
}
.smf-item__description {
	padding: 0 .3em;
	margin-top: .1em;
	margin-left: .5em;
	color: #fff;
	background-color: var(--accent-color);
}
.snow-monkey-form[data-screen="confirm"] .smf-form--letter .smf-item {
	border-bottom: solid 1px var(--sub-accent-color);
}
/*フォームスタイル「Business」の時の調整*/
.smf-form--business .smf-item__description {
	display: inline-block;
	padding: .1em .8em;
	margin-top: .2em;
	margin-left: 0;
	border-radius: 5px;
}
@media screen and (max-width: 639px) {
	.smf-form--business .smf-item__col {
		padding: 1em;
	}
}

/* プライバシーポリシー
--------------------------------------------------------------- */
#privacy h3 {
    margin-bottom: 10px !important;
    padding-left: 10px;
    border-left: solid 3px var(--accent-color);
    font-weight: 700;
}

/* エラー404
--------------------------------------------------------------- */
.error404 .l-contents__main {
	width: 90%;
	margin: 0 auto;
}