/*
Theme Name: Lightning Child Sample
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.1
*/


/* common
-------------------------------------------------------------------*/
:root{
	--hover:background .3s,color .3s,border-color .3s,opacity .3s,text-decoration-color .3s,transform .3s,filter .3s,box-shadow .3s;
}
body ul li::marker{
	color: #0098bf !important;
	font-size: 1.25em;
	line-height: 1em;
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	display:flex;
	width: fit-content;
	min-width: 240px;
	border: solid 2px #004876;
	color: #FFF;
	background: #004876 !important;
	font-size: 1rem;
	font-weight: 500;
	padding: 10px 2em;
	min-height: 58px;
	align-items:center;
	justify-content:center;
	position:relative;
	z-index: 0;
	text-decoration:none;
	border-radius: 3em;
	margin-block: 1em 2em;
	transition: filter 0.3s , transform 0.3s;
	filter: drop-shadow(4px 4px 10px rgba(0, 0, 0, 0.2));
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text)::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	margin: auto;
	inset: 0 20px 0 auto;
	width: 10px;
	height: 10px;
	border-top: solid 2px #ffffff;
	border-right: solid 2px #ffffff;
	transform: rotate(45deg);
	transition: color 0.3s;
}
@media (any-hover: hover) {
  .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover {
		filter: none;
		transform: translateY(3px);
		opacity: 1;
		box-shadow: none;
		}
}
.vk_button-align-center .vk_button_link:not(.vk_button_link-type-text) {
		margin-inline: auto;
}

/* header
-------------------------------------------------------------------*/
header .menu-area{
	position: relative;
	z-index: 0;
	padding-right: 8em !important;
}
header .menu-area .gtranslate_wrapper{
	position: fixed;
	z-index: 1;
	inset: 14px 1em auto auto;
}
header .menu-area .gtranslate_wrapper .gt-current-lang{
	padding: 0.5em;
}
.wp-block-navigation__responsive-container:not(.has-modal-open) .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    background: #0d446f;
	padding:1em !important; 
}
@media screen and (max-width:599px) {
	header .img-logo{
		max-width: 120px;
	}
	header .menu-area{
		padding-right: 0em !important;
	}
	header .menu-area .gtranslate_wrapper{
		/* position: absolute; */
		z-index: 1;
		inset: 1em 4.5em auto auto;
	}
	header .menu-area .gtranslate_wrapper .gt-current-lang{
		padding: 0.25em 0.25em;
		font-size: 1.125rem;
	}
}


/* footer
-------------------------------------------------------------------*/
footer .footer_menu a{
	position: relative;
	z-index: 0;
}
footer .footer_menu a::after{
	position: absolute;
	z-index: 0;
	content: "";
	display:inline-block;
	inset: auto 0 -0.25em;
	width: calc(100% - 0);
	height: 1px;
	background: #009ac1;
	transition: all .3s;
	transform: scale(0, 1);
	transform-origin: left top;
}
@media (any-hover: hover) {
	footer .footer_menu a:hover::after{
	    transform: scale(1, 1);
	}
}
a#page_top{
	background: #004876;
	border: none !important;
	border-radius: 50%;
	width: 70px;
	height: 70px;
	box-shadow: none;
}
a#page_top:after{
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	margin: auto;
	inset: 8px 0 0 0;
	width: 14px;
	height: 14px;
	border-top: solid 3px #ffffff;
	border-right: solid 3px #ffffff;
	transform: rotate(-45deg);
	transition: color 0.3s;
}
@media screen and (max-width:768px) {
	a#page_top{
		width: 50px;
		height: 50px;
	}
}





/* top
-------------------------------------------------------------------*/
.mv_wrap{
	position: relative;
	z-index: 0;
	margin-top: -96px !important;
	aspect-ratio: 1920 / 979;
}
.mv_wrap .vk_outer_container{
	position: unset !important;
}
.mv_wrap .txt_item{
	position: absolute;
	z-index: 10;
	margin: auto;
	text-align: right;
	height: fit-content;
	inset: auto -1px 0 auto;
}
.mv_wrap .txt_item .mv_ttl{
	position: relative;
	z-index: -1;
	margin-inline: auto 0 !important;
	width: fit-content;
	font-size: min(2.7rem , 8vw) !important;
}
.mv_wrap .txt_item .mv_ttl::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 120%;
	height: 170%;
	background-color: #ffffff;
	border-radius: 50%;
	filter: blur(36px);
	z-index: -1;
	opacity: 1;
	will-change: filter;
}
.mv_wrap .txt_item #mv_txt{
	max-width: 90vw;
	margin: 0;
}
.mv_wrap .bg_item01,
.mv_wrap .bg_item02{
	position: absolute;
	z-index: 0;
	margin: auto;
}
.mv_wrap .bg_item01{
	width: 30%;
	inset: 28% auto auto 40%;
	animation: fluffy 3.5s ease-in-out infinite;
}
.mv_wrap .bg_item02{
	width: 20%;
	min-width: 240px;
	inset: 8% 7% auto auto;
	animation: fluffy 5s ease-in-out infinite;
    animation-delay: -2s !important;
}
@keyframes fluffy {
    0% {
        transform: translateY(0) rotate(0deg);
    }
    50% {
        transform: translateY(-15px) rotate(0deg);
    }
    100% {
        transform: translateY(0) rotate(0deg);
    }
}
@media screen and (max-width: 768px){
	.mv_wrap{
		margin-top: -96px !important;
		aspect-ratio: 2 / 2.5;
	}
	.mv_wrap .txt_item .mv_ttl{
		font-size: 1.75rem !important;
	}
	.mv_wrap .bg_item01,
	.mv_wrap .bg_item02{
		position: absolute;
		z-index: 0;
		margin: auto;
	}
	.mv_wrap .bg_item01{
		width: 46%;
		inset: 40% auto auto 34%;
	}
	.mv_wrap .bg_item02{
		width: 34%;
		min-width: unset;
		inset: 14% 6% auto auto;
	}
}

.news-wrap{
	/* max-width: 1400px; */
	position: relative;
	z-index: 0;
}
.news-wrap .news-area{
	
	margin-inline: auto;
}
.news-wrap .link-btn a{
	color: #282828;
	text-decoration: underline;
	text-underline-offset: 0.3em;
	position: relative;
	z-index: 0;
	padding-right: 3em;
}
.news-wrap .link-btn a::before,
.news-wrap .vk_posts-postType-news a::before{
	position:absolute;
	z-index:10;
	display:inline-block;
	content:"";
	margin:auto;
	width:34px;
	height:34px;
	background: #004876;
	border-radius:50%;
	inset:0 0 0 auto;
}
.news-wrap .link-btn a::after,
.news-wrap .vk_posts-postType-news a::after{
	position:absolute;
	z-index:10;
	display:inline-block;
	content:"\FF1E";
	line-height:1;
	font-size:0.75rem;
	font-weight:600;
	color:#ffffff;
	margin:auto;
	inset:0 .75em 0 auto;
	width:0.75rem;
	height:0.75rem;
}
@media (any-hover: hover){
	.news-wrap .link-btn a:hover{
		text-decoration: none;
	}
	.news-wrap .link-btn a:hover::after,
	.news-wrap .link-btn a:hover::before{	
		opacity: 0.8;
	}
}
.news-wrap .vk_posts-postType-news .postListText{
	border-bottom: 2px dotted #939494;
	padding: 1.25em 1em;
}
.news-wrap .vk_posts-postType-news .postListText_title{
	padding-block: 0.3em;
}
.news-wrap .vk_posts-postType-news a{
	display: block;
	position: relative;
	z-index: 0;
	padding-right: 4em;
}
.news-wrap .vk_posts-postType-news .postListText_date{
	font-size: 1rem;
	padding-block: 0.3em;
}
.news-wrap .vk_posts-postType-news .postListText .postListText_title a{
	font-size: 1rem;
	text-decoration: none;
}
.news-wrap .news-bg01,
.news-wrap .news-bg02{
	margin: auto;
	position: absolute;
	z-index: 0;
}
.news-wrap .news-bg01{
	inset: -4.5em -4em auto auto;
	animation: fluffy02 4s ease-in-out infinite;
}
.news-wrap .news-bg02{
	inset: auto auto -2em -6em;
	animation: fluffy02 4s ease-in-out infinite;
	animation-delay: -2s !important;
}
@keyframes fluffy02{
    0% {
        transform: translateY(0) rotate(0deg);
    }
    50% {
        transform: translateY(-3px) rotate(8deg);
    }
    100% {
        transform: translateY(0) rotate(0deg);
    }
}
@media screen and (max-width:1400px){
	.news-wrap .news-bg01{
		max-width: 200px;
		inset: -4em -2em auto auto;
	}
	.news-wrap .news-bg02{
		max-width: 160px;
		inset: auto auto 2em -2em  ;
	}

}
@media screen and (max-width:991px){
	.news-wrap .vk_posts-postType-news .postListText_title{
		padding-block: 0.75em;
	}
}
@media screen and (max-width: 768px){

	.news-wrap .link-btn a::before,
	.news-wrap .vk_posts-postType-news a::before{
		width:30px;
		height:30px;
	}
	.news-wrap .link-btn a::after,
	.news-wrap .vk_posts-postType-news a::after{
		inset:0 .8em 0 auto;
	}
	.news-wrap .vk_posts-postType-news .postListText{
		border-bottom: 2px dotted #939494;
		padding: 1em 1em;
	}
	.news-wrap .vk_posts-postType-news .postListText_title{
		padding-block: 0.3em;
	}
	.news-wrap .news-bg01{
		max-width: 120px;
		inset: -1em 0 auto auto;
	}
	.news-wrap .news-bg02{
		max-width: 100px;
		inset: auto auto -1em 0;
	}
}
.event-wrap .vk_post{
	border-radius: 1em;
}
.event-wrap .vk_post a:hover{
	opacity: 0.8;
}
.event-wrap .card-body{
	padding-top: 1em;
}
.event-wrap .vk_post_imgOuter_singleTermLabel{
	inset: auto auto -2.5em 1em;
	font-size: 0.875rem;
	padding: 0.15em 1em;
	border-radius: 1em;
	background: #0095bb !important;
}



.use_wrap{
	position: relative;
	z-index: 0;
} 
.use_wrap .bg_use{
	position: absolute;
	z-index: -1;
	margin: auto;
	inset: auto -19vw -4vw auto;
	width: 40%;
} 
.use_wrap .use-item{
	z-index: 0;
	transition: var(--hover);
		margin: 0;
}
.use_wrap .use-item::before{
	position:absolute;
	z-index:10;
	display:inline-block;
	content:"";
	margin:auto;
	width:34px;
	height:34px;
	background: #004876;
	border-radius:50%;
	inset:auto 0.5em 0.5em auto;
}
.use_wrap .use-item::after{
	position:absolute;
	z-index:10;
	display:inline-block;
	content:"\FF1E";
	line-height:1;
	font-size:0.75rem;
	font-weight:600;
	color:#ffffff;
	margin:auto;
	inset:auto 1.5em 1.5em auto;
	width:0.75rem;
	height:0.75rem;
}
.use_wrap .use-item:hover{
	transform: translateY(3px);
}
@media screen and (max-width:768px) {
	.use_wrap .bg_use{
		inset: auto -6% -2em auto;
		width: 60%;
	} 
	.use_wrap .vk_gridColumn_item{
		padding-inline: 0.75em;
	}
	.use_wrap .use-item{
		z-index: 0;
		transition: var(--hover);
		margin: 0;
	}
	.use_wrap .use-item::before{
		position:absolute;
		z-index:10;
		display:inline-block;
		content:"";
		margin:auto;
		width:34px;
		height:34px;
		background: #004876;
		border-radius:50%;
		inset:auto 0.5em 0.5em auto;
	}
	.use_wrap .use-item::after{
		inset:auto 1.65em 1.65em auto;
		width:0.75rem;
		height:0.75rem;
	}
}
.edu-wrap .edu-bnr{
	position: relative;
	z-index: 0;
	margin: auto;
	text-align: center;
	transition: var(--hover);
} 
.edu-wrap .edu-bnr img{
	position: relative;
	z-index: 0;
	filter: drop-shadow(3px 3px 10px rgba(0, 0, 0, 0.25));
	border: 5px solid #fff;
	border-radius: 30px;
} 
.edu-wrap .edu-bnr h2{
	position: absolute;
	z-index: 1;
	margin: auto;
	inset: 0;
	width: fit-content;
	height: fit-content;
	font-size: min(3.125rem , 4vw);
	font-weight: 800 !important;
}
.edu-wrap .edu-bnr:hover{
		transform: translateY(5px);
}
@media screen and (max-width:768px) {
	.edu-wrap .edu-bnr img{
		border: 3px solid #fff;
		border-radius: 15px;
		aspect-ratio: 3.875/2;
		width: 100%;
		height: auto;
		object-fit: cover;
	} 
	.edu-wrap .edu-bnr h2{
		font-size: min(3.125rem , 6.25vw);
	}
}
.access-wrap {
	overflow: visible;
}
.access-wrap .access-area{
	margin-top: -18em;
}
.access-wrap iframe{
	border-radius: 15px;
}
@media screen and (max-width:768px) {
	.access-wrap .access-area{
		margin-top: -12em;
		padding-inline: 15px !important;
	}
	.access-wrap iframe{
		border-radius: 10px;
		height: 200px;
	}
}



/* pages
-------------------------------------------------------------------*/
/* header */
.page-header {
	margin-top: 0;
	min-height: 280px;
	background-size: cover;
	background-position-y: bottom;
	background-position: 60%;
	aspect-ratio: 1920/376;
	max-width: 100%;
}
.page-header .page-header-title {
  font-size: min(3.125rem,8vw);
  font-weight: 600;
  text-align: center;
  color: #004876;
}
/* breadcrumb */
.breadcrumb{
	border: none;
}
.breadcrumb-list {
	text-align: left;
	font-size: .875rem;
	padding: 2.5em 0;
}
.breadcrumb-list li:after {
  content: "/";
}
.breadcrumb-list li a {
  text-decoration: none;
}
.breadcrumb-list li a .fas {
  display: none;
}
.breadcrumbs ul {
  padding-left: 0;
}
@media screen and (max-width:767px) {
	.breadcrumb-list {
		padding: 1em 0;
	}
}


/* content */
.site-body{
	text-align: left;
	padding-bottom: 0;
}
.container {
	max-width: 1100px;
	--main-color: #1684b7;
}
:where(:not(.wp-block-table))>table :is(thead, tbody, tfoot, th, td) {
  border-color: transparent;
}
.entry-body h2:not(.is-style-vk-heading-plain),
.section-wrap h2:not(.is-style-vk-heading-plain),
.archive-header-title{
	position: relative;
	z-index: 0;
	text-align: left;
	font-size: 2rem;
	font-weight: bold;
	padding: 0 0 .35em 1.35em;
	margin-bottom: 1em;
	border-bottom: 2px dotted #d5d5d5;
}
.entry-body h2:not(.is-style-vk-heading-plain)::before,
.section-wrap h2:not(.is-style-vk-heading-plain)::before,
.archive-header-title::before{
	display: block;
	position: absolute;
	z-index: 1;
	content: "";
	height: 47px;
	width: 21px;
	margin: auto; 
	background: url(assets/img/common/icon_h2.png) no-repeat;
	background-size: contain;
	inset: 0 auto 0 0.4em;
}
.entry-body h3:not(.is-style-vk-heading-plain){
	font-size: 1.65rem;
	font-weight: bold;
	margin-bottom: 1em;
	padding: 0.2em 0.75em;
	background: linear-gradient(to right, #009ac1 0 0.35em, #eef8fb 0.3em 100%);
	border-radius: 5px;
}
.entry-body h4:not(.is-style-vk-heading-plain){
	font-size: 1.5rem;
	color: #009ac1;
	font-weight: 600;
	padding: 0 0 0.25em 1.25em;
	margin-bottom: 0.75em;
	margin-top: 1em;
}
.entry-body h4:not(.is-style-vk-heading-plain)::before{
	display: block;
	position: absolute;
	z-index: 1;
	content: "";
	height: 0.75em;
	width: 0.75em;
	margin: auto; 
	border-radius: 50%;
	background: #009ac1;
	background-size: contain;
	inset: 0.35em auto auto 0;
}
.entry-body h5 {
	font-size: 1.25rem;
	font-weight: 600;
}
.entry-body h6 {
	font-size: 1.125rem;
	font-weight: bold;
	color: var(--main-color);
}
#vk-mobile-nav-menu-btn {
  display: none;
}
.entry-body ul li {
  list-style-type: disc;
}
.entry-body a {
  color: #0368be;
  text-decoration: underline;
  text-underline-offset: 0.35em;
}
.entry-body a:hover {
  text-decoration: none;
}
.entry-body a:focus {
  text-decoration: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  outline: none;
}
.entry-title{
	position: relative;
	z-index: 0;
	text-align: left;
	font-size: 1.875rem;
	font-weight: bold;
	padding-bottom: .25em;
	margin-bottom: 1em;
	border-bottom: 2px solid #2092b6;
}
.widget_block .wp-block-heading{
	font-weight:600;
	font-size:1.25rem;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em !important;
	border-bottom: 1px solid #1684b7;
}
.vk_archive-list{
	padding-left: 0 !important;
}
.sub-section .localNavi .cat-item a{
	font-weight: 500;
	color: unset;
	transition: background 0.3s;
}
@media (any-hover: hover) {
	.sub-section .localNavi .cat-item a:hover{
		background: #eee;
	}
}
.has-fixed-layout th,
.has-fixed-layout td {
  border-top: 1px solid #e9e9e9;
  border-bottom: 1px solid #e9e9e9;
  font-size: 1rem;
}
.has-fixed-layout th {
  font-weight: bold;
}
.wp-block-vk-blocks-button.vk_button-align-block .vk_button_link,
.wp-block-vk-blocks-button.vk_button-align-wide .vk_button_link {
  max-width: 100%;
}
.radius-item .vk_gridColumn_item_inner{
	border-radius: 10px;
	overflow: hidden;
}
.page_link{
	margin-top: -80px;
	padding-top: 80px;
	height: 0;
	display: block;
}

@media screen and (max-width: 1124px) {
  .page-header {
    margin-top: 0px;
  }
}
@media screen and (max-width: 767px) {
	.page-header {
		min-height: 12em;
		margin-top: 0;
		background-position: 50%;
	}
	.page-header .page-header-title {
		font-size: 1.7rem;
	}
	.entry-body h2:not(.is-style-vk-heading-plain),
	.section-wrap h2:not(.is-style-vk-heading-plain),
	.archive-header-title{
	  font-size: 1.5rem;
	}
	.entry-body h2:not(.is-style-vk-heading-plain)::before,
	.section-wrap h2:not(.is-style-vk-heading-plain)::before,
	.archive-header-title::before{
		height: 34px;
		width: 16px;
		inset: 0 auto 0 0.4em;
	}
	.entry-body h3:not(.is-style-vk-heading-plain){
		font-size: 1.45rem;
		padding: 0.5em 0.5em 0.5em 1em;
	}
	.entry-body h4:not(.is-style-vk-heading-plain){
		font-size: 1.35rem;
	}
	.entry-body h4:not(.is-style-vk-heading-plain)::before{
		height: 0.75em;
		width: 0.75em;
		inset: 0.35em auto auto 0;
	}
	
	.entry-body h5 {
		font-size: 1.25rem;
	}
	.entry-body h6 {
		font-size: 1.125rem;
	}
	table.has-fixed-layout,
	.has-fixed-layout tbody {
		border: none;
	}
	.has-fixed-layout th,
	.has-fixed-layout td {
		font-size: 1rem;
	}
	.has-fixed-layout.is-stacked-on-mobile tr:not(:first-of-type) th,
	.has-fixed-layout.is-stacked-on-mobile td {
		border-top-color: #fff;
	}
	.has-fixed-layout.is-stacked-on-mobile th,
	.has-fixed-layout.is-stacked-on-mobile td {
		padding: 0.75em 1em !important;
	}
	.has-fixed-layout th {
		font-weight: bold;
	}
	.wp-block-button {
		width: 100%;
	}
	 .wp-block-vk-blocks-button{
		 text-align: center;
	 }
  .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	max-width: 300px;
	width: auto;
	min-height: 4em;
	min-width: auto;
	margin-inline: auto;
	margin-bottom: 1.5em;
	}
  .wp-block-vk-blocks-button.vk_button-align-wide .vk_button_link {
    width: 100%;
  }
  .wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link {
    max-width: 100%;
  }
  .wp-block-button .wp-block-button__link:hover {
    transform: none;
  }
  .wp-block-vk-blocks-button .vk_button_link::after {
    width: 6px;
    height: 6px;
    border-width: 2px;
    right: 14px;
  }
}
.entry-body a img {
  transition: opacity .4s;
}
@media (any-hover: hover) {
  .entry-body a:hover img {
    opacity: 0.6;
  }
}
body.post-name-corporate .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th,
body.post-name-corporate .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr td {
  border-color: #e9e9e9;
}





/*  ãƒ•ã‚©ãƒ¼ãƒ   */
.smf-form .smf-item .smf-item__label__text{
	font-weight:500;
}
.smf-form .smf-item .smf-item__label__text mark{
	display:inline-block;
	font-size:0.875rem;
	font-weight:bold;
	line-height: 1;
	color: #fff !important;
	background: #f42c2c !important;
	padding: 0.25em 0.5em;
}
.smf-form .smf-item input[type="text"],
.smf-form .smf-item input[type="search"],
.smf-form .smf-item input[type="email"],
.smf-form .smf-item input[type="tel"],
.smf-form .smf-item input[type="number"],
.smf-form .smf-item input[type="password"],
.smf-form .smf-item input[type="date"],
.smf-form .smf-item textarea,
.smf-form .smf-item select {
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	vertical-align: middle;
	border: solid 1px #fff;
	border-radius: 0;
	font-size: 0.875rem;
	padding: 0 0.5em;
	height: 2.5em;
	line-height: 2.5em;
	background: #fff;
	margin: 0;
}
.smf-form .smf-item input::placeholder,
.smf-form .smf-item textarea::placeholder {
	color: #d2d2d2;
}
.smf-form .smf-item input[type="text"],
.smf-form .smf-item input[type="search"],
.smf-form .smf-item input[type="email"],
.smf-form .smf-item input[type="tel"],
.smf-form .smf-item input[type="number"],
.smf-form .smf-item input[type="password"],
.smf-form .smf-item input[type="date"],
.smf-form .smf-item textarea,
.smf-form .smf-item select {
	border: #d2d2d2 solid 1px;
	display: block;
	width: 100%;
	height: 3.5em;
	line-height: 3.5em;
	padding: 0 1em;
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 0 !important;
	border-radius: 0;
}
.smf-form .smf-item select{
	padding: 0 2rem 0 1em;
	background: none;
}
.smf-form .smf-item input[name="zip"] {
	width: 180px;
	display: inline-block;
}
.smf-form .smf-item input.other_text{
	margin-top: 0.5em;
	width: 20%;
	min-width: 20em;
}
.smf-form .smf-item textarea {
	height: auto;
	line-height: 1.5em;
	padding: 1em;
}
.smf-form .smf-item label {
	cursor: pointer;
}
.smf-form .smf-item input[type="radio"],
.smf-form .smf-item input[type="checkbox"] {
    position: absolute;
    z-index: -10;
    font-size: 0;
    line-height: 0;
    border: none;
    background: transparent;
    outline: none;
    box-shadow: none;
    width: 0;
    height: 0;
    margin: 0
}
.smf-form .smf-item input[type="radio"]::before,
.smf-form .smf-item input[type="checkbox"]::before {
   display: none !important;
}
.smf-form .smf-item input[type="radio"]+span,
.smf-form .smf-item input[type="checkbox"]+span {
	display: inline-block;
	padding: 0.25em 0.25em 0.25em 1.5em;
	position: relative;
}
.smf-form .smf-item label input[type="radio"]+span:before,
.smf-form .smf-item label input[type="checkbox"]+span:before,
.smf-form .smf-item label input[type="radio"]+span:after,
.smf-form .smf-item label input[type="checkbox"]+span:after{
	content: "";
	display: inline-block;
	width: 1.25rem;
	height: 1.25rem;
	border: solid 1px #000000;
	border-radius: 2px;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: opacity .2s;
	font-weight: 400;
}
.smf-form .smf-item label input[type="checkbox"]+span:after{	
	border: none;
	width: 0.875rem;
	height: 0.5rem;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: rotate(135deg);
	top: -4px;
	left: 3px;
	opacity: 0;
}
.smf-form .smf-item label input[type="radio"]+span:before {
	border-radius: 50%;
	width: 20px;
	height: 20px;
}
.smf-form .smf-item label input[type="radio"]+span:after {
	border-radius: 50%;
	width: 14px;
	height: 14px;
	border: none;
	background: #28a7e1;
	top: 0;
	left: 3px;
	opacity: 0;
}
.smf-form .smf-item label input[type="checkbox"]:checked+span:before {
	border-color: #28a7e1;
	background: #28a7e1;
}
.smf-form .smf-item label input[type="radio"]:checked+span:after,
.smf-form .smf-item label input[type="checkbox"]:checked+span:after {
	opacity: 1;
}
.smf-form .smf-item input[type="radio"]:focus+span::before,
.smf-form .smf-item input[type="checkbox"]:focus+span::before {
	outline: 1px solid;
}
.smf-form .smf-item input[type="radio"]+label {
	padding: 0.25em 0 0.25em 2em;
}
.smf-form .smf-item input[type="radio"]+label:before {
	border: #b0b0b0 solid 1px;
	width: 1.5em;
	height: 1.5em;
}
.smf-form .smf-item input[type="radio"]+label:after {
	width: 0.5625em;
	height: 0.5625em;
	top: 0.975em;
	left: 0.5em;
}
.smf-form .smf-item input[type="checkbox"]+label {
	padding: 0.5em 0 0.5em 2em;
}
.smf-form .smf-item input[type="checkbox"]+label:before {
	border: #b0b0b0 solid 1px;
	width: 1.5em;
	height: 1.5em;
}
.smf-form .smf-item input[type="checkbox"]+label:after {

}
.smf-form .smf-checkbox-control__control{
	width: 1.5em;
	height: 1.5em;
	margin-top: 0.2em;
}
.smf-form .smf-checkbox-control__control:checked{
	background-color: #28a7e1;
	border-color: #28a7e1;
}
.smf-form .smf-checkbox-control:after{
	width: 1.25rem;
	height: 1.25rem;
}
.smf-action {
	display: flex;
	justify-content: center;
	margin-top: 4em;
	gap: 0 1em;
}
.smf-action .smf-button-control__control {
	display:flex;
	width: fit-content;
	min-width: 240px;
	border: solid 2px #004876;
	color: #FFF;
	background: #004876 !important;
	font-size: 1rem;
	font-weight: 500;
	padding: 10px 2em;
	min-height: 58px;
	align-items:center;
	justify-content:center;
	position:relative;
	z-index: 0;
	text-decoration:none;
	border-radius: 3em;
	margin-block: 1em 1em;
	margin-inline: auto;
	transition: filter 0.3s , transform 0.3s;
	filter: drop-shadow(4px 4px 10px rgba(0, 0, 0, 0.2));
}
.smf-action .smf-button-control__control:after {
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	margin: auto;
	inset: 0 20px 0 auto;
	width: 10px;
	height: 10px;
	border-top: solid 2px #ffffff;
	border-right: solid 2px #ffffff;
	transform: rotate(45deg);
	transition: color 0.3s;
}
@media (any-hover: hover) {
	.smf-action .smf-button-control__control:hover {
		filter: none;
		transform: translateY(3px);
		opacity: 1;
		box-shadow: none;
	}
}

.snow-monkey-form[data-screen="input"] .form-confirm,
.snow-monkey-form[data-screen="invalid"] .form-confirm,
.snow-monkey-form[data-screen="confirm"] .form-input,
.snow-monkey-form[data-screen="invalid"] .form-input {
	display:none;
}

.smf-form--letter .smf-text-control__control,
.smf-form .smf-textarea-control__control:active,.smf-form .smf-textarea-control__control:focus,.smf-form .smf-textarea-control__control:focus-within,.smf-form .smf-textarea-control__control[aria-selected=true] {
	font-weight: 500;
}
.smf-form .form-agree-area{
	font-size: 1.125rem;
	font-weight: 600;
	padding: 2em 0 0;
	text-align: center;
}
.smf-form .form-agree-area a{
	font-size: 1rem;
}
.smf-action .smf-button-control__control[data-action="back"] {
	color: #004876;
	background: #ffffff !important;
}
.smf-action .smf-button-control__control[data-action="back"]:after {
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	margin: auto;
	inset: 0 auto 0 20px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #004876;
	border-right: solid 2px #004876;
	transform: rotate(225deg);
	transition: color 0.3s;
}
@media screen and (max-width:767px) {
	.smf-form .form-agree-area .text_lead,
	.smf-form .form-promotion-area .text_lead{
		text-align: left;
	}
	.smf-action .smf-button-control+.smf-button-control{
		margin-left: 0;
	}
}


@media screen and (max-width: 767px) {
	.smf-form .smf-item input[type="text"],
	.smf-form .smf-item input[type="search"],
	.smf-form .smf-item input[type="email"],
	.smf-form .smf-item input[type="tel"],
	.smf-form .smf-item input[type="number"],
	.smf-form .smf-item input[type="password"],
	.smf-form .smf-item input[type="date"],
	.smf-form .smf-item textarea,
	.smf-form .smf-item select {
		font-size: 1rem;
	}
	.smf-form .smf-item label input[type="radio"]+span,
	.smf-form .smf-item label input[type="checkbox"]+span {
		font-size: 1rem;
		padding-left: 1.25em;
	}
	.smf-form .smf-item label input[type="checkbox"]+span::before {
		width: 1.125rem;
		height: 1.125rem;
	}
	.smf-form .smf-item label input[type="checkbox"]+span::after {
		width: 1rem;
		height: 0.5rem;
		border-width: 3px;
		left: 1px;
		top: 0;
	}
	.smf-form .smf-item label input[type="radio"]+span::before {
		width: 14px;
		height: 14px;
	}
	.smf-form .smf-item label input[type="radio"]+span::after {
		width: 8px;
		height: 8px;
	}
	.smf-action {
		flex-direction: column;
		justify-content: center;
		margin-top: 3em;
		gap: 0 1em;
	}
	.smf-action .smf-button-control+.smf-button-control {
	    margin-left: 0;
	}
	.smf-form .sp_t-left{
		text-align: left;
	}
}





