@charset "utf-8";
/* head,text */
/* Link */
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button) {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.25em;
	width: min(20.56em, 100%);
	min-height:3.33333333333em;
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--whitecolor);
	background: var(--accent02);
	border-radius: 5em;
	padding: 0.5em 2em;
	transition: var(--hover);
	text-decoration: none;
	cursor: pointer;
	translate: 0 0;
	flex-direction: column;
	text-align: center;
	max-width: 700px;
	border:none;
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button) {
	min-height: 3.8889em;
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button).contact-btn {
	flex-direction: row;
	gap: 0.5em;
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button)::after {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px var(--whitecolor);
	border-right: solid 2px var(--whitecolor);
	position: absolute;
	inset: 0 2em 0 auto;
	margin: auto;
	transform: rotate(45deg);
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button).mt {
	margin-top: 2.5em;
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button).gra-green,
:root .site-body .entry-body .gra-green :is(.btn:not(.vk_pageContent_editBtn), .smf-action button){
	background: var(--green-gra) !important;
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button).gra-orange,
:root .site-body .entry-body .gra-orange :is(.btn:not(.vk_pageContent_editBtn), .smf-action button){
	background: var(--orange-gra) !important;
}
:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button).bg-white,
:root .site-body .entry-body .bg-white :is(.btn:not(.vk_pageContent_editBtn), .smf-action button){
	background: var(--whitecolor) !important;
}
:root .end-area{
	margin-block:2em 0;
	padding-top:2em;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	gap:2em;
	border-top:dotted 1px var(--dgray);
}
:root .btn[href^="tel:"]:before,
:root .btn[href^="tel:"]:after {
	display: none;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
	:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button):hover {
		translate: 0 5px;
		text-decoration: none;
	}
}
@media screen and (max-width: 767px) {
	:root .home :is(.btn:not(.vk_pageContent_editBtn), .smf-action button) {
		min-height: 3.375em;
	}
	:root :is(.btn:not(.vk_pageContent_editBtn), .smf-action button)::after {
		width: 8px;
		height: 8px;
		border-top-width: 1px;
		border-right-width: 1px;
		inset: 0 1.5em 0 auto;
	}
	:root .end-area{
		margin-block:2em 0;
	}
	:root .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){
		max-width: inherit;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}
:root .style_news * {
	margin:0;
	padding:0;
	line-height:inherit;
}
:root .style_news .news_list {
	--border: 1px solid #b6b6b6;
	max-width: 1000px;
	margin: 0 auto;
}
:root .style_news .news_list a:not(.vk-ltc-edit-link) {
	text-decoration: none;
	border-bottom: var(--border);
	padding-block: 1em;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 4em;
}
:root .style_news .news_list a:not(.vk-ltc-edit-link) {
	position: relative;
	display: block;
	padding: 2.25em 1.5em 2.25em 0em;
	margin: 0 auto;
	transition: var(--hover);
}
:root .style_news .news_list a:not(.vk-ltc-edit-link):before {
	content: '';
	width: 8px;
	height: 8px;
	border-top: solid 3px var(--accent01);
	border-right: solid 3px var(--accent01);
	position: absolute;
	inset: 0 0.5em 0 auto;
	margin: auto;
	transform: rotate(45deg);
}
:root .style_news .news_list a:not(.vk-ltc-edit-link) * {
	transition: var(--hover);
}
:root .style_news .news_list a:not(.vk-ltc-edit-link) i {
	position: relative;
	min-width: 1.875em;
	aspect-ratio: 1/1;
	background: var(--keycolor);
	border-radius: 50%;
	overflow: clip;
	border: 1px solid var(--keycolor);
}
:root .style_news .news_list a:not(.vk-ltc-edit-link) i:before {
	content: '';
	width: 6px;
	height: 6px;
	border-top: solid 1px var(--whitecolor);
	border-right: solid 1px var(--whitecolor);
	position: absolute;
	inset: 0 0.25em 0 0;
	margin: auto;
	transform: rotate(45deg);
	transition: var(--hover);
}
:root .style_news .news_list :is(h2, h3, h4, p) {
	font-size: 1.125rem;
	line-height: 1.6;
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 0.45em;
	letter-spacing: 0;
	width: calc(100% - 12em);
	text-align: left;
	font-weight: bold;
}
:root .style_news .news_list .data {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.5em;
}
:root .style_news .news_list .data .data_head {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 1em;
	width: 12.5em;
}
:root .data time {
	font-weight: 500;
	text-decoration: none;
	width: 6em;
	color: var(--accent01);
	font-size: 1.125rem;
	letter-spacing: 0.04em;
}
:root .news_cat_wrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.5em;
	max-width: 75px;
	width: 6em;
}
:root .data .news_cat {
	--basecolor: var(--keycolor);
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 2em;
	font-size: 0.875rem;
	color: var(--basecolor);
	background: var(--whitecolor);
	border: solid 1px;
	border-radius: 3px;
	text-decoration: none;
	padding: 0em 0.25em;
	min-width: 5.286em;
	letter-spacing: 0;
	font-weight: bold;
}
:root .data .news_cat.seminar {
	--basecolor: var(--subcolor);
}
:root .vk_taxonomy-list,
:root .vk_archive-list{
	padding-left:0;
}
:root .vk_taxonomy-list li,
:root .vk_archive-list li{
	border-bottom:1px solid #ccc;
	overflow:hidden;
}
:root .vk_taxonomy-list li a,
:root .vk_archive-list li a{
	padding:0.5em;
	display:block;
	transition:var(--hover);
}

@media (any-hover: hover) {
	:root .style_news .news_list a:hover :is(h2, h3, h4, p) {
		text-decoration: underline;
	}
	:root .style_news .news_list a:hover .data .news_cat {
		color: var(--whitecolor);
		background: var(--basecolor);
	}
	:root .style_news .news_list a:hover .data {
		transform: translateX(5px);
	}
	:root .style_news .news_list a:hover i {
		background: var(--whitecolor);
	}
	:root .style_news .news_list a:hover i:before {
		border-color: var(--keycolor);
	}
	:root .vk_taxonomy-list li a:hover,
	:root .vk_archive-list li a:hover{
		transform:translateX(5px);
		background:var(--bgcolor);
	}
}
@media screen and (max-device-width:1280px) {
	:root .data .news_cat {
		min-width: 6em;
	}
}
@media screen and (max-width:1000px) {
	:root .data time {
		font-size: 1rem;
	}
	:root .style_news .news_list :is(h2, h3, h4, p) {
		font-size: 1rem;
	}
	:root .style_news .news_list a:not(.vk-ltc-edit-link)  {
		padding: 1.75em 1.5em 1.75em 0em;
	}
}
@media screen and (max-width:767px) {
	:root .style_news .news_list a:not(.vk-ltc-edit-link)  {
		padding: 1em 1.5em 1em 0em;
	}
	:root .style_news .news_list .data {
		gap: 0.5em;
		flex-grow: inherit;
		flex-wrap: wrap;
	}
	:root .style_news .news_list .data .data_head {
		gap: 0.5em;
		align-items: center;
	}
	:root .style_news .news_list .data .data_head time {
		font-size: 0.86rem;
	}
	:root .style_news .news_list :is(h2, h3, h4, p) {
		width: 100%;
	}
	:root .data .news_cat {
		min-height: 1.75em;
		font-size: 0.86rem;
	}
	:root .news_cat_wrap {
		max-width: 100%;
		width: auto;
	}
	:root .style_news .news_list a:not(.vk-ltc-edit-link):before {
		width: 6px;
		height: 6px;
		border-top-width: 2px;
		border-right-width: 2px;
	}
}
.img-fit {
	overflow: hidden;
}
.img-fit img {
	object-fit: cover;
}
a:hover .img-fit img {
	transform: scale(1.1);
}
/*	パンくずリスト	*/
#pan {
	position: relative;
	z-index: 2;
	overflow: hidden;
	margin-bottom: 2em;
}
#pan ol {
	display: flex;
	align-items: center;
	padding: 1em 0;
	margin: 0;
	gap: 0.5em;
	font-size: 0.875rem;
	width: max-content;
}
#pan li {
	list-style: none;
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	margin: 0;
}
#pan li:nth-child(n+2):before {
	content: "";
	display: block;
	width: 1px;
	height: 1em;
	border-right: solid 1px;
	transform: rotate(15deg)
}
#pan li a {
	font-weight: bold;
	text-decoration-color: inherit;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
	#pan li a:hover {
		text-decoration-color: transparent;
	}
}
@media only screen and (max-width: 767px) {
	#pan {
		position: relative;
		overflow: auto;
		margin-right: var(--outer);
	}
	#pan a {
		text-decoration: underline;
	}
	#pan li:last-child {
		position: relative;
		padding-right: 0.75em;
		margin-right: 0;
		flex-grow: 1;
	}
	#pan li:last-child:after {
		z-index: 20;
		top: -1em;
		bottom: -1em;
		background: var(--white);
	}
	:root .page-head .page-header {
		--height: 250px;
		border-top: solid 1px;
	}
	:root .page-head .page-header .page-title {
		font-size: 2.25rem;
	}
}
:root .page-header {
	min-height: 21.375em;
}
:root .page-header-title {
	font-size:2.625rem;
}
:root .site-body {
	margin: 0;
	padding: 0 0 4em;
}
:root .site-body:has(.article-cta){
	padding-bottom:0;
}
:root .site-body:has(.article-cta) .main-section{
	margin-bottom:0;
}
:root .site-body:has(+.fp-planner){
	padding-bottom:0;
}
:root .site-body:has(+.fp-planner) .main-section{
	margin-bottom:0;
}
:root .entry-body :is(h1, h2, h3, h4, h5, h6, ul, ol.li, p) {
	font-size: 1em;
	line-height: 1.8;
	margin: 0;
	padding: 0;
}
:root .site-body .entry-body :is(h1, h2, h3, h4, h5, h6) {
	font-weight: 700;
	margin-block: 1.5em;

}
:root .site-body h1 {
	font-size: 1.75rem;
	font-weight: bold;
	color: inherit;
	border-bottom: solid 1px #cdc6bd;
	padding-bottom: 0.5em;
}
:root .site-body .archive-header {
	margin-bottom: 1.5em;
}
:root .site-body .entry-header {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	align-items: center;
}
:root .site-body .entry-header time {
	font-size: 0.875rem;
	font-weight:bold;
	color:var(--accent01);
}
:root .site-body .entry-header .news-category_list span {
	--basecolor: var(--keycolor);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.875rem;
	font-weight: bold;
	color: var(--basecolor);
	background: var(--whitecolor);
	border: solid 1px;
	border-radius: 3px;
	padding: 0.1em 0.5em;
}
:root .site-body .entry-header .news-category_list span.category-seminar {
	--basecolor: var(--subcolor);
}
:root .site-body .entry-header h1 {
	flex-basis: 100%;
}
:root :is(.error404 .main-section,.site-body .entry-body) h2 {
	position:relative;
	z-index:10;
	font-size: 2rem;
	font-weight:bold;
	padding-bottom: 0.75em;
	margin-block: 3em 1.5em;
}
:root :is(.error404 .main-section,.site-body .entry-body) h2::after {
	position:absolute;
	z-index:10;
	inset:auto 0 0;
	display:inline-block;
	content:"";
	width:2.0625em;
	height:7px;
	background: #B7AC87;
	background: linear-gradient(30deg, rgba(183, 172, 135, 1) 50%, var(--keycolor) 50%);
	margin-inline:auto;
}
:root :is(.error404 .main-section,.site-body .entry-body) h2:first-child,
:root :is(.error404 .main-section,.site-body .entry-body) .vk_spacer+ :is(h2, h3, h4, h5) {
	margin-top: 0;
	margin-inline: 0 !important;
	max-width: 100%;
}
:root .site-body .entry-body h3 {
	position:relative;
	z-index:10;
	font-size: 1.75rem;
	background: var(--key);
	padding-bottom: 0.75em;
}
:root .site-body .entry-body h3::after {
	position:absolute;
	z-index:10;
	inset:auto 0 0;
	display:inline-block;
	content:"";
	width:100%;
	height:2px;
	background: var(--keycolor);
	background: linear-gradient(90deg, var(--keycolor) 30%, rgba(238, 238, 238, 1) 30%);
	margin-inline:auto;
}
:root .site-body .entry-body h4 {
	font-size: 1.5rem;
	padding: 0.75em;
	background:var(--bgcolor02);
}
:root .site-body .entry-body h5 {
	font-size: 1.25rem;
	color: var(--keycolor);
}
:root .site-body .entry-body h6 {
	font-size: 1.125rem;
}
:root .site-body .entry-body :is(p, li) {
	font-weight: 400;
	letter-spacing: 0.03em;
}
:root .site-body .entry-body :is(ul, ol):not(:is(ul, ol) :is(ul, ol)) {
	margin-block: 1em;
}
:root .site-body .entry-body ul {
	margin-left: 1.5em;
}
:root .site-body .entry-body ul.wp-block-list li{
	list-style:disc;
}
:root .site-body .entry-body ol {
	margin-left: 0.5em;
}
:root .site-body .entry-body li {
	line-height: 1.4;
	margin-block: 0.5em;
}
:root .vk_tab_labels .vk_tab_labels_label.vk_tab_labels_label-state-active,
:root .vk_tab_labels .vk_tab_labels_label.has-background,
:root .vk_tab_labels .vk_tab_labels_label.has-background.vk_tab_labels_label-state-active,
:root .vk_tab_labels .vk_tab_labels_label.has-background.has-background{
	letter-spacing:0;
}
:root .site-body .entry-body ul li::marker {
	color: var(--key);
}
:root .site-body .entry-body ol li::marker {
	color: var(--accent);
	font-weight: 600;
}
:root .site-body .entry-body p {
	line-height: 1.8;
}
:root .site-body .entry-body :is(p, figure):not(:last-child) {
	margin-block: 1em;
}
:root .site-body .entry-body a:not(.btn) {
	color: var(--subcolor);
	text-decoration-color: inherit;
	text-decoration-style: solid;
	font-weight: 600;
}
:root .site-body .entry-body a:not(.btn):is(:hover, :focus) {
	text-decoration-color: transparent;
}
:root .site-body .entry-body table {
	margin-block: 2em;
	border-inline: none;
}
:root .site-body .entry-body table :is(th, td) {
	font-size: 1rem;
	padding: 1em 1.5em;
	border-inline:none;
	border-color: #c7c7c7;
}
:root .site-body .entry-body table th {
	position:relative;
	z-index:10;
	font-weight:bold;
	padding-left: 2.5em;
	vertical-align: text-top;
}
:root .site-body .entry-body table th::before {
	position:absolute;
	z-index:10;
	content:"";
	display:inline-block;;
	width:0.75em;
	aspect-ratio:1/1;
	background:var(--keycolor);
	border-radius:100%;
	top:1.375em;
	left:1em;
}
:root :is(.error404 .main-section,.site-body .entry-body) .btn:not(.vk_pageContent_editBtn) {
	padding: 0.75em 3em;
	display: inline-flex;
	opacity: 1;
	box-shadow: none;
	min-height: 3.5em;
	background: var(--accent02) !important;
}
:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn {
	min-height: 5.8153em;
	background: var(--key) !important;
}
:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn span {
	position: relative;
	padding-left: 3em;
}
:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn span:before {
	content: "";
	width: 40px;
	height: 46px;
	background: url(../img/icon-recruit_btn.png) no-repeat center / contain;
	position: absolute;
	inset: 0 auto 0 0;
	margin: auto;
	transition: var(--hover);
}
:root .vk_outer-width-full.vk_outer-paddingLR-none>div>.vk_outer_container{
	padding-inline:0
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn:hover {
		background: #fff !important;
		color: var(--key) !important;
		border-color: var(--key) !important;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn:hover:before {
		background: var(--key) !important;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn:hover:after {
		color: var(--key) !important;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn:hover span:before {
		filter: var(--keyf);
	}
}
@media screen and (max-width:1230px) {
	:root .vk_outer-width-full.vk_outer-paddingLR-none>div>.vk_outer_container{
		padding-inline:15px;
	}
}
@media screen and (max-width:767px) {
	:root .page-header {
		min-height: 12.5em;
	}
	:root .page-header-title {
		font-size:2rem;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn {
		min-height: 4.5em;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn span {
		padding-left: 2.5em;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .recruit_btn .btn span:before {
		width: 30px;
		height: 36px;
	}
	:root :is(.error404 .main-section,.site-body .entry-body) .btn {
		padding: 0.75em 2.5em;
	}
	:root .site-body .entry-body :is(h2, h3, h4, h5){
		line-height:1.4;
	}
	:root .site-body .entry-body .is-stacked-on-mobile td{
		border-top:none;
	}
	:root .site-body .entry-body .reviews_tab .wp-block-group figure + .wp-block-group{
		width:calc(100% - 70px);
	}
}
body.single .main-section {
	max-width: 1000px;
	margin-inline: auto;
}
/*	ページャー	*/
:root .navigation {
	margin-block: 4.625em;
}
:root ul.page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0;
	padding: 0;
	margin: 0;
	line-height:1;
}
:root ul.page-numbers li {
	margin: 0;
}
:root ul.page-numbers li :is(a, span.page-numbers) {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 2.5em;
	aspect-ratio: 1/1;
	font-size: 1rem;
	font-weight: bold;
	line-height: 1;
	color: var(--fontcolor);
	background: var(--white);
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	text-decoration: none;
}
:root ul.page-numbers li a:is(.prev, .next) {
	justify-content: center;
	width: 40px;
	aspect-ratio: 1 / 1;
	font-size: 1.5rem;
	padding: 0.125em 0.5em 0.375em 0.5em;
	align-items: center;
	flex-direction: inherit;
	position: relative;
}
:root ul.page-numbers li a:is(.prev, .next) i {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 1.75em;
	aspect-ratio: 1/1;
	font-size: 0.75em;
	line-height: 0.5;
	background: var(--white);
	border: 1px solid #999999;
	border-radius: 100%;
	overflow: clip;
}
:root ul.page-numbers li a:is(.prev, .next) i::before {
	content: "→";
	font-weight: bold;
	color: var(--main_color);
	scale: 1 1;
	transform-origin: left;
	transition: scale .3s;
}
:root ul.page-numbers li a.prev {
	flex-direction: row-reverse;
	margin-left: auto;
}
ul.page-numbers li a.prev i::before {
	content: "←";
	transform-origin: right;
}
@media (hover: hover) and (pointer: fine),
(hover: none) and (pointer: coarse) {
	:root ul.page-numbers li a:hover {
		background: var(--keycolor);
		color: var(--whitecolor);
	}
	:root ul.page-numbers li a:is(.prev, .next):hover i::before {
		scale: 0 1;
		transform-origin: right;
	}
	:root ul.page-numbers li a.prev:hover i::before {
		transform-origin: left;
	}
}
@media screen and (max-width:767px) {
	:root .navigation {
		margin-block: 3em;
	}
	:root ul.page-numbers li :is(a, span.page-numbers) {
		width: 2.5em;
	}
	:root ul.page-numbers li a:is(.prev, .next) {
		justify-content: center;
		flex-direction: column;
		padding: 0 0 0.15em 0;
		width: 35px;
	}
	:root ul.page-numbers li a:is(.prev, .next) span {
		display: none;
	}
	:root ul.page-numbers li a:is(.prev, .next) i {
		text-indent: 1px;
		width: auto;
		font-size: 1em;
		background: none;
		border: none;
	}
	:root ul.page-numbers li a:is(.prev, .next) i::before {
		color: var(--black);
	}
}

/*	モーダル	*/
.modal-content {
	width: 80%;
	max-width: 1240px;
	margin: 0px;
	padding: 10px 20px;
	background: none;
	position: fixed;
	display: none;
	z-index: 1020;
}
#modal-overlay {
	z-index: 1000;
	display: none;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.66);
}
.modal_tit {
	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	margin: auto;
	max-width: 250px;
	text-align: center;
	line-height: normal;
	font-size: 20px;
	z-index: 1025;
	overflow: hidden;
	padding: 0px 30px;
	color: var(--whitecolor);
}
.modal_tit span {
	display: block;
	position: relative;
	padding: 10px 0px;
	background: rgb(0, 0, 0);
	z-index: 2;
	border-bottom: 1px solid rgb(255, 255, 255);
}
.modal-content .close_btn {
	position: absolute;
	top: -5%;
	right: 15px;
	color: rgb(255, 255, 255);
	font-size: 40px;
	line-height: 1;
	display: block;
	cursor: pointer;
	text-underline-offset: 4px;
}
.modal-content .modal_whole {
	background: var(--whitecolor);
	padding: 3em 3em;
	overflow: auto;
	max-height: 80vh;
	text-align: left;
	overscroll-behavior: contain;
}
@media screen and (max-width: 768px) {
	.modal-content {
		width: 100%;
		padding: 30px 15px 15px;
		box-sizing: border-box;
	}
	.modal-content .modal_whole {
		padding: 2em 1em;
		overflow: auto;
		max-height: 70vh;
		text-align: left;
	}
	.modal-content .close_btn {
		font-size: 2em;
		top: -1%;
		right: 10px;
	}
}
.table_wrap table {
	margin-inline: 0 auto;
}
.table_wrap table :is(th, td) {
	font-size: 1.125rem;
	padding: 1em 1em 1.25em;
	line-height: 1.4;
	border-bottom: 1px solid var(--bgcolor03);
	letter-spacing: 0;
}
.table_wrap table th {
	white-space: nowrap;
	border-bottom: 1px solid var(--keycolor);
	font-weight: bold;
}
.table_wrap table td {
	padding-inline: 3em;
}
.table_wrap table .caption {
	font-size: 0.875em;
	line-height: 1.6;
}
.table_wrap table *:not(.caption)+.caption {
	margin-top: 1em;
}
.table_wrap table.calendar_table {
	width: 100%;
	margin-bottom: 1em;
}
.table_wrap table.calendar_table :is(th, td) {
	font-size: 1.125rem;
	padding: 1em;
	line-height: 1.4;
}
.flex_list .table_wrap table :is(th, td) {
	padding: 0.5em 0.25em;
}
@media screen and (max-width: 767px) {
	.table_wrap table {
		width: 100%;
	}
	.table_wrap table th {
		white-space: normal;
		width: auto;
		padding: 0.75em 0.5em 1em;
		text-align: center;
		font-size: 0.814rem;
	}
	.table_wrap table td {
		padding: 0.75em 0.5em 1em;
		font-size: 1rem;
	}
	.table_wrap.break :is(table, thead, tbody, tr, th, td) {
		display: block;
		width: 100%;
		border: none;
	}
	.table_wrap.break :is(th, td) {
		font-size: 1rem;
		text-align: left;
	}
	.table_wrap.break td {
		border-top: none;
	}
	.table_wrap.break tr {
		margin-bottom: 1em;
	}
	.table_wrap.break th br {
		display: none;
	}
	.table_wrap table *:not(.caption)+.caption {
		margin-top: 1em;
	}
	.table_wrap table.calendar_table :is(th, td) {
		font-size: 0.875rem;
		padding: 1em 0.5em;
	}
	.table_wrap table.calendar_table tr:has(th:first-child + td:nth-child(2):last-child) th {
		white-space: nowrap;
	}
}



/*snow-monkey-form*/
:root .snow-monkey-form {
	margin-block: 2em 0;
}
:root .snow-monkey-form .smf-item__label {
	font-size: 1.1275rem;
	margin-block: 0;
}
:root .snow-monkey-form .smf-item__label .smf-item__label__text {
	display: flex;
	align-items: center;
	gap: 0.5em;
	font-weight: 600;
}
:root .snow-monkey-form a {
	color: var(--key);
	text-decoration: underline solid 1px;
}
:root .snow-monkey-form a:hover {
	text-decoration-color: transparent;
}
:root .snow-monkey-form .smf-action {
	margin-block: 3em 0;
	text-align: center;
}
:root .snow-monkey-form .smf-action button {
	display: inline-flex;
	margin: 0 auto;
}
.snow-monkey-form .smf-item {
	padding: 1rem 0;
	border-bottom: 1px solid #cdd0d2;
}
.snow-monkey-form .smf-item:last-child{
	border-bottom:none;
}
.smf-form--simple-table .smf-item{
	display:flex;
}
.smf-placeholder[data-name="your-doui"]{
	margin-block: 1em;
}
.smf-form .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control>.smf-label {
	display: inline-block;
	margin-right: 1em;
	margin-top: 0;
}
.smf-form .birth-wrap:not(.is-not-stacked-on-mobile)>.wp-block-column,
.smf-form .birth-wrap>.wp-block-column{
	flex-basis: auto;
	flex-grow: 0;
}
.snow-monkey-form .smf-item.no-form{
	border-bottom:none!important;
	padding: 0;
}
.snow-monkey-form .smf-item__col--label {
	max-width: 190px;
	flex: 100%;
}
.smf-form .smf-item .smf-item__col--label {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 100%;
	max-height: 3.5em;
	flex: 280px;
	width: 280px;
	padding-right: 5em;
	box-sizing: border-box;
}
.smf-form .smf-item.required-box .smf-item__description {
	display: inline-block;
	font-size: 0.75rem;
	line-height: 1;
	color: var(--whitecolor);
	background: #e60012;
	padding: 0.35em 0.5em;
	margin: 0;
}
.snow-monkey-form .smf-item__col--controls {
	max-width: calc(100% - 280px);
	flex: 100%;
	margin-top: 0;
	/* min-height: 3.5em; */
}
.snow-monkey-form .smf-item .smf-radio-button-control__control{
	display:none;
}
.smf-form--simple-table .smf-item--divider .smf-item__col{
	max-width:none;
}
.snow-monkey-form input,
.snow-monkey-form select{
	font-family: "Noto Sans JP", serif;
}
.snow-monkey-form .smf-form .smf-item .smf-text-control__control,
.snow-monkey-form input[type="search"],
.snow-monkey-form input[type="email"],
.snow-monkey-form input[type="tel"],
.snow-monkey-form input[type="number"],
.snow-monkey-form input[type="password"],
.snow-monkey-form .smf-form .smf-item .smf-textarea-control__control {
	appearance: none;
	-webkit-appearance: none;
	background: #fff;
	margin: 0;
	border: #cdd0d2 solid 1px;
	display: block;
	width: 100%;
	height: 2.875em;
	line-height: 2.875em;
	padding: 0 1em;
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 0 !important;
	border-radius: 0;
}
.snow-monkey-form input[type="date"]{
	max-width:170px;
}
.smf-form .smf-item .smf-select-control,
.smf-form .smf-item .smf-select-control__control{
	width: 100%;
	height: 2.875em;
	line-height: 2.875em;
	padding: 0 2em 0 1em;
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 0 !important;
	border-radius: 0;
}
.smf-form .smf-item .smf-select-control{
	padding:0;
	background: #fff;
}
.snow-monkey-form input::placeholder,
.snow-monkey-form textarea::placeholder {
	color: #a2a0a0;
}
.snow-monkey-form .smf-form .smf-item .smf-textarea-control__control {
	height: auto;
	padding: 0.5em 1em;
	line-height: 1.4em;
}
.smf-form .smf-item .smf-select-control__control:active,
.smf-form .smf-item .smf-select-control__control:focus,
.smf-form .smf-item .smf-select-control__control:focus-within,
.smf-form .smf-item .smf-select-control__control[aria-selected=true]{
	border-color:#000;
}
.smf-form .smf-item .smf-select-control__toggle:before,
.smf-form .smf-item .smf-select-control__control:focus + .smf-select-control__toggle:before{
	border-color:#000;
}
.snow-monkey-form[data-screen="confirm"] .smf-item.required-box .smf-item__description {
	display:none;
}
#autozip {
   display: none !important;
}

/*radio,checkbox*/
.snow-monkey-form label {
	cursor: pointer;
}
.smf-form .smf-item .smf-checkboxes-control__control>.smf-label{
	margin-right:0.5em;
	margin-bottom:0.5em;
}
.smf-form .smf-item.check_center .smf-checkboxes-control__control>.smf-label{
	text-align:center;
	margin-top:1.5em;
}
.smf-form .smf-item .smf-radio-control__control,
.smf-form .smf-item .smf-checkbox-control__control {
	display: none;
}
.smf-form input.smf-checkbox-control__control{
	display:none;
}
.smf-checkboxes-control__control:has(input[name="your-doui[]"]){
	margin-top: 0.5em;
}
.smf-form .smf-item .smf-select-control__toggle{
	background:transparent;
}
.snow-monkey-form input[type="radio"]+span,
.snow-monkey-form input[type="checkbox"]+span {
	display: inline-block;
	padding: 0.25em 0.25em 0.25em 1.875em;
	position: relative;
	margin-top: 0;
}
.snow-monkey-form input[type="radio"]+span{
	padding-left: 1.75em;
}
.snow-monkey-form label input[type="radio"]+span:before,
.snow-monkey-form label input[type="checkbox"]+span:before,
.snow-monkey-form label input[type="radio"]+span:after,
.snow-monkey-form label input[type="checkbox"]+span:after {
	content: "";
	display: inline-block;
	width: 1.375rem;
	height: 1.375rem;
	border: solid 1px #cdd0d2;
	border-radius: 2px;
	position: absolute;
	left: 0;
	top: 5px;
	transition: opacity .2s;
}
.snow-monkey-form label input[type="radio"]+span:before,
.snow-monkey-form label input[type="checkbox"]+span:before{
	background-color:#fff;
}
.snow-monkey-form label input[type="checkbox"]+span:after {
	border: none;
	width: 1rem;
	height: 0.5rem;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: rotate(135deg);
	top: 10px;
	left: 3px;
	opacity: 0;
}
.snow-monkey-form label input[type="radio"]+span:before {
	border-radius: 50%;
	width: 24px;
	height: 24px;
	top: 0.25em;
}
.snow-monkey-form label input[type="radio"]+span:after {
	border-radius: 50%;
	width: 18px;
	height: 18px;
	border: none;
	background: var(--keycolor);
	top: 7px;
	left: 3px;
	opacity: 0;
}
.snow-monkey-form label input[type="radio"]:checked+span:before {
	border-color: var(--keycolor);
}
.snow-monkey-form label input[type="checkbox"]:checked+span:before {
	border-color: var(--keycolor);
	background: var(--keycolor);
}
.snow-monkey-form label input[type="radio"]:checked+span:after,
.snow-monkey-form label input[type="checkbox"]:checked+span:after {
	opacity: 1;
}

/*smf-button-control__control*/
.smf-action{
	display:flex;
	justify-content:center;
	align-items:stretch;
	gap: 5%;
	margin-top: 2em
}
.smf-action > *{
	margin-top:0;
}
.smf-action .smf-button-control{
	width:330px;
}
.smf-action .smf-button-control:has(button){
	margin:0 auto;
}
.smf-action .smf-button-control__control {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.25em;
	width: min(21em,100%);
	min-height: 4.375em;
	font-size: 1rem;
	font-weight: bold;
	color: var(--whitecolor);
	background: var(--keycolor);
	border-radius:5em;
	padding: 0.5em 2em;
	transition: var(--hover);
	text-decoration: none;
	cursor: pointer;
	translate: 0 0;
	flex-direction:column;
	text-align:center;
	max-width: 500px;
}
.smf-action .smf-button-control__control[data-action="back"]{
	background:var(--whitecolor);
	color:var(--accent02);
	border:1px solid;
}
.smf-action .smf-button-control__control[data-action="back"]:after{
	border-color:var(--accent02);
}
.snow-monkey-form .style-contact{
	overflow:auto;
	max-height:250px;
	padding:1em;
	border:1px solid #ccc;
}
:root .site-body .entry-body .snow-monkey-form .style-contact p{
	margin-block:0;
}
:root .site-body .entry-body .snow-monkey-form .style-contact p:not(strong){
	margin-bottom:0.5em;
}
:root .site-body .entry-body .snow-monkey-form .style-contact p:not(strong) + p:has(strong){
	margin-top:1.5em;
}
.smf-action .smf-button-control__control[data-action="complete"] .complete-none{
	display:none;
}
@media (any-hover: hover) {
	.smf-action .smf-button-control__control:hover {
		translate: 0 5px;
		text-decoration:none;
	}
}
@media screen and (max-width:767px) {
	.snow-monkey-form .smf-item{
		padding: 1em 0;
	}
	.smf-form--simple-table .smf-item{
		display:block;
	}
	.smf-form .smf-item .smf-item__col--label{
		justify-content:flex-start;
		gap:3%;
		margin-bottom: 0.75em;
		padding-bottom: 0;
		padding-right: 0;
		width: 100%;
	}
	.smf-form .birth-wrap.is-layout-flex{
		gap:12px;
	}
	.snow-monkey-form .smf-item__col--label,
	.snow-monkey-form .smf-item__col--controls,
	.snow-monkey-form .form_harf .smf-item__col--label,
	.snow-monkey-form .form_harf .smf-item__col--controls{
		max-width: 100%;
	}
	.smf-form .smf-item .smf-select-control{
		max-width:100%;
	}
	.smf-action{
		display:flex;
		flex-direction:column-reverse;
		flex-wrap: wrap;
	}
	.smf-action > * + *{
		margin-top:1em;
	}
	.smf-action .smf-button-control+.smf-button-control{
		margin:0;
	}
	.smf-action .smf-button-control__control{
		margin:0.5em auto;
		width: 100%;
		max-width: 270px;
		border-width: 1px;
	}
	.snow-monkey-form .smf-item.privacy-box,
	.snow-monkey-form .smf-item.text-box{
		margin: 20px auto;
		padding: 20px 15px;
	}
	.snow-monkey-form .privacy-box ul li:before{
		width:4px;
		height:4px;
		left:0;
		top:0.65em;
	}
	.snow-monkey-form .sp-flex{
		gap: 0.5em;
	}
	.snow-monkey-form label input[type="radio"]+span:before {
		top: 0.375em;
		width: 18px;
		height: 18px;
	}
	.snow-monkey-form label input[type="radio"]+span:after {
		top: 8px;
		width: 12px;
		height: 12px;
		left: 3px;
	}
	.snow-monkey-form input[type="date"]{
		max-width:100%;
		width: 100%;
		min-width: 150px;
	}
	:root .smf-action .smf-button-control+.smf-button-control{
		margin-left:0;
	}
}
