/* spNavi / remodal 用スタイル抜粋（jstork19 より） */

html.remodal-is-locked {
	overflow: hidden;
	touch-action: none;
}

.remodal,
[data-remodal-id] {
	display: none;
}

.remodal-overlay {
	position: fixed;
	z-index: 9999;
	top: -5000px;
	right: -5000px;
	bottom: -5000px;
	left: -5000px;
	display: none;
	background: rgba(43, 46, 56, 0.9);
}

.remodal-wrapper {
	position: fixed;
	z-index: 11000;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	text-align: center;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.remodal-wrapper::after {
	display: inline-block;
	height: 100%;
	margin-left: -0.05em;
	content: "";
}

.remodal {
	position: relative;
	outline: none;
	width: 100%;
	max-width: 700px;
	color: var(--side-text-color, #3e3e3e);
	background: var(--inner-content-bg, #ffffff);
	text-align: left;
}

@media only screen and (max-width: 480px) {
	.remodal {
		font-size: .88em;
	}
}

.remodal-is-initialized {
	display: inline-block;
}

.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
	filter: blur(3px);
}

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing,
.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
}

.remodal-overlay.remodal-is-opening {
	animation-name: fadeIn;
}

.remodal-overlay.remodal-is-closing {
	animation-name: fadeIn;
	animation-direction: reverse;
}

.remodal.remodal-is-opening {
	animation-name: remodal-opening;
}

.remodal.remodal-is-opening.--modeleft {
	animation-name: remodal-opening-left;
}

.remodal.remodal-is-closing {
	animation-name: remodal-closing;
}

.remodal.remodal-is-closing.--modeleft {
	animation-name: remodal-opening-left;
	animation-direction: reverse;
}

#navbtn_menu_content,
#navbtn_search_content {
	width: calc(100% - 40px);
	margin: 10px 20px;
}

#navbtn_menu_content {
	padding: clamp(0.5em, 2%, 1em);
}

#navbtn_menu_content.--modeleft {
	margin: 0 !important;
	position: absolute;
	top: 0;
	left: 0;
	min-height: 100%;
}

#navbtn_search_content {
	background: none;
	color: #fff;
}

.remodal,
.remodal-wrapper::after {
	vertical-align: middle;
}

.remodal .widget {
	margin: 0 0 1em;
}

.remodal-close {
	display: flex;
	align-items: center;
	margin: 1em auto;
	padding: .5em;
	cursor: pointer;
	transition: opacity 0.2s;
	color: currentColor;
	background: none;
	font-size: 19px;
	border: 0;
}

.remodal-close:not(:hover):not(:focus) {
	opacity: 0.5;
}

.remodal-close .svgicon_close {
	width: 1.2em;
}

.remodal-close::-moz-focus-inner {
	padding: 0;
	border: 0;
}

@keyframes remodal-opening {
	from {
		transform: scale(1.05);
		opacity: 0;
	}
	to {
		transform: none;
		opacity: 1;
	}
}

@keyframes remodal-opening-left {
	from {
		transform: translateX(-100%);
	}
	to {
		transform: translateX(0);
	}
}

@keyframes remodal-closing {
	from {
		transform: scale(1);
		opacity: 1;
	}
	to {
		transform: scale(0.95);
		opacity: 0;
	}
}

/* ========================================
   ヘッダー内での menu / logo / contact 配置
   PC：menu 左端 / ロゴ 中央 / contact 右端
======================================== */

.stk_header .inner-header {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.stk_header .nav_btn.menu_btn {
	position: absolute;
	left: 0;
	right: auto;
}
.stk_header .nav_btn.menu_btn .text{
	margin-top: 6px;
}
.stk_header .nav_btn.menu_btn .text::after{
	display: none;
}

.stk_header .nav_btn.contact_btn {
	position: absolute;
	right: 0;
	top: 40px;
}


.widgettitle {
	font-size: 100%;
	padding: 0.65em 0.8em;
	margin-top: 0;
	margin-bottom: 0;
	background-color: #1bb4d3;
	color: #fff;
	font-size: 16px;
	line-height: 2;
}

.widget_text .widgettitle,
.widget_search .widgettitle,
.widget_media_video .widgettitle,
.widget_media_image .widgettitle,
.widget_media_gallery .widgettitle {
	margin-bottom: 1em;
}
.widget_categories .cat-item, .widget_nav_menu .menu-item, .widget_pages .page_item {
    position: relative;
}
.widget_categories .cat-item, .widget_recent_entries__li, .widget_newentryimagewidget .cat_postlist__li, .widget_nav_menu .menu-item, .widget_pages .page_item, .widget_archive li, .widget_mycategoryorder li, .ul__g_nav ul li {
    border-bottom: 1px dotted rgba(125, 125, 125, .3);
    margin: 0;
    padding: 0;
}
.widget:not(.widget_text):not(.widget_recent_comments):not(.widget_calendar):not(.widget_stk_profilewidget) a {
    text-decoration: none;
    color: inherit;
}
.scn-sp-menu-list li a{
	border-bottom: 1px dotted rgba(125, 125, 125, .3);
	font-size: 15px;
	line-height: 2;
	padding: 14px 16px;
	display: flex;
	justify-content: space-between;
}
.widget_categories .cat-item a, .widget_recent_entries__link, .widget_newentryimagewidget a, .widget_nav_menu .menu-item a, .widget_pages .page_item a, .widget_archive li a, .widget_mycategoryorder li a, .ul__g_nav ul li a {
    display: block;
    padding: 1em 1.3em 1em 0.3em;
    margin: 0;
    position: relative;
	font-size: 16px;
	line-height: 2;
}
.widget_categories .cat-item a::after, .widget_recent_entries__li a::after, .widget_newentryimagewidget .cat_postlist__li a::after, .widget_nav_menu .menu-item a::after, .widget_pages .page_item a::after, .widget_archive li a::after, .widget_mycategoryorder li a::after, .ul__g_nav ul li a::after {
	content: "";
	border-right: 2px solid #1bb4d3;
	border-bottom: 2px solid #1bb4d3;
	width: 10px;
	height: 10px;
	transform: rotate(-45deg);
	right: 10px;
	top: calc(50% - 5px);
	position: absolute;
}

@media only screen and (max-width:767px){
	.widget_categories .cat-item a, .widget_recent_entries__link, .widget_newentryimagewidget a, .widget_nav_menu .menu-item a, .widget_pages .page_item a, .widget_archive li a, .widget_mycategoryorder li a, .ul__g_nav ul li a {
		padding: 1em 1.3em 1em 0.3em;
		font-size: 14px;
		line-height: 2;
	}
	.widgettitle{
		font-size: 14px;
	}
	.widget_categories .cat-item a::after, .widget_recent_entries__li a::after, .widget_newentryimagewidget .cat_postlist__li a::after, .widget_nav_menu .menu-item a::after, .widget_pages .page_item a::after, .widget_archive li a::after, .widget_mycategoryorder li a::after, .ul__g_nav ul li a::after {
		width: 8px;
		height: 8px;
		top: calc(50% - 4px);
	}
	.scn-sp-menu-list li a {
		font-size: 14px;
	}
	.stk_header .nav_btn.menu_btn {
		position: absolute;
		left: 15px;
		right: auto;
	}
	.stk_header .nav_btn.contact_btn {
		right: 15px;
		top: 25px;
	}
	.nav_btn svg{
		transform: scale(0.8);
	}
	.stk_header .nav_btn.menu_btn .text{
		margin-top: 2px;
	}
	.nav_btn .text {
        margin-top: 18px;
    }
	.nav_btn .text::after{
		top: -28px;
	}
}