@charset "utf-8";
/* head,text */
/* Link */
.block_link a,
a.block_link {
  display: block;
  transition: background 0.4s, color 0.4s, border 0.4s;
}
.block_link a img {
  transition: opacity 0.4s;
}
.common_btn {
  text-align: center;
  margin: 0 auto;
  width: fit-content;
}
.common_btn a {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: left;
  min-width: 450px;
  width: fit-content;
  min-height: 4.625em;
  font-size: 1.5rem;
  font-weight: 500;
  background: #ffff00;
  border-radius: 3.125em;
  padding: 0.75em 2.25em;
  text-decoration: none;
  transition: transform .4s;
  border: 1px solid #ffff00;
  color: #282828;
}
.common_btn a::after {
  content: "";
  width: 35px;
  height: 26px;
  background: url(../img/common/icon-arrow.svg) no-repeat center / contain;
  position: absolute;
  inset: 0 10% 0 auto;
  margin: auto;
  transition: .5s filter;
}
header .drop_menu .contact-btn a{
	position: relative;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: left;
	min-width:290px;
	width: fit-content;
	min-height:3em;
	font-size: 1.25rem;
	font-weight: 500;
	background: #ffff00;
	border-radius: 3.125em;
	padding: 0.791em 2.25em;
	text-decoration: none;
	transition: transform .4s,box-shadow .4s;
	border: 1px solid #ffff00;
	color: #282828;
	text-align:center;
	box-shadow: 5px 5px 0px #000;
	border:1px solid;
}
header .drop_menu .contact-btn a span{
	display:flex;
	justify-content:center;
	align-items:center;
}
header .drop_menu .contact-btn a em{
	color:#f05357;
	font-size:1.625rem;
	font-weight:bold;
	margin-right:0.125em;
}
header .drop_menu .contact-btn a::after {
  content: "";
  width: 22px;
  height: 17px;
  background: url(../img/common/icon-arrow.svg) no-repeat center / contain;
  position: absolute;
  inset: 0 10% 0 auto;
  margin: auto;
  transition: .5s filter;
}
@media (any-hover: hover) {
  .block_link a:hover,
  a.block_link:hover {
    text-decoration: none;
  }
  .block_link a:hover img,
  a:hover img.opacity {
    opacity: 0.7;
    text-decoration: none;
  }
  .common_btn a:hover,
	header .drop_menu .contact-btn a:hover{
    transform: translate(5px,5px);
    box-shadow: none;
  }
  .common_btn a:hover:after,
	header .drop_menu .contact-btn a:hover:after{
    animation-name: arrowRightUp;
    animation-duration: 0.5s;
    animation-iteration-count: 1;
  }
}
@keyframes arrowRightUp{
	0% {
		transform: translate(0);
	}
	48% {
		transform: translateX(100%);
	}
	49% {
		transform: translateX(100%);
		visibility: hidden;
		opacity: 0;
	}
	50% {
		transform: translateX(-100%);
		visibility: hidden;
		opacity: 0;
	}
	51% {
		transform: translateX(-100%);
		visibility: visible;
		opacity: 1;
	}
	100% {
		transform: translate(0);
	}
}
@media screen and (max-width: 767px) {
.common_btn {
  text-align: center;
  margin: 0 auto;
  width: fit-content;
}
.common_btn a {
	  min-width: 230px;
	  min-height: 4em;
	  font-size: 1rem;
	  font-weight: 600;
	  padding: 1.5em 2.25em;
	}
	.common_btn a::after {
	  width: 15px;
	  height: 12px;
	}
	header .drop_menu .contact-btn a::after{
	 right:19%;
	 width: 20px;
	 height: 15px;
	}
}
/* image */
@media screen and (max-width: 767px) {
  .scale_sp img {
    max-width: inherit;
    width: 100%;
    height: auto;
  }
}
/*  GoogleMAP・動画埋め込み  */
.map_wrap iframe {
  width: 100%;
}
.movie_wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}
.movie_wrap iframe,
.movie_wrap video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
/*  パンくずリスト  */
#pan {
  position: relative;
  z-index: 2;
  margin-top: 1.75rem;
  margin-bottom: 6.25rem;
  overflow: hidden;
}
#pan ol {
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
  font-size: 0;
  overflow-y: hidden;
  overflow-x: auto;
}
#pan li,
#pan li * {
  display: inline-block;
  vertical-align: middle;
  font-size: 0.875rem;
  text-transform: uppercase;
  white-space: nowrap;
}
#pan li::after {
  display: inline-block;
  vertical-align: middle;
  content: "\003E";
}
#pan li:not(:last-child) {
  margin-right: 0.5em;
}
#pan li:last-child::after {
  display: none;
}
#pan li * {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  color: var(--black);
}
#pan li a {
  text-decoration: underline;
  text-underline-offset: 0.625em;
}
@media (any-hover: hover) {
  #pan li a:hover {
    text-decoration: none;
  }
}
@media only screen and (max-width: 767px) {
  #pan {
    position: relative;
    z-index: 10;
    margin-top: 1em;
    margin-bottom: 2.5em;
    overflow: hidden;
  }
  #pan:after,
  #pan li:last-child:after {
    position: absolute;
    z-index: 10;
    content: "";
    display: block;
    top: 0;
    bottom: 0;
    right: 0;
    width: 0.75em;
    background: var(--black);
    background: linear-gradient(-90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 50%);
  }
  #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);
  }
}
/*  モーダル  */
.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-content .close_btn {
  position: absolute;
  top: -10%;
  right: 0px;
  color: rgb(255, 255, 255);
  font-size: 40px;
  line-height: 1;
  display: block;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .modal-content {
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
  }
}
/*フォーム*/
.snow-monkey-form .smf-item {
	padding: 1rem 0;
	border-bottom: 1px solid #e4e4e4;
}
.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: 2em 3em;
	text-align:center;
}
.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.625rem;
	line-height: 1;
	color: #fff !important;
	background: #e52331 !important;
	border: 1px solid #e52331;
	padding: 0.35em 1.0875em;
	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: #bfbfbf 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;
	font-family: 'Noto Sans JP', sans-serif;
}
.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 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[]"]){
	text-align:center;
	margin-top: 1.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 #d2d2d2;
	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;
	bottom: 0;
	margin: auto;
}
.snow-monkey-form label input[type="radio"]+span:after {
	border-radius: 50%;
	width: 18px;
	height: 18px;
	border: none;
	background: var(--main_color);
	top: 0;
	left: 3px;
	opacity: 0;
	bottom: 0;
	margin: auto;
}
.snow-monkey-form label input[type="radio"]:checked+span:before {
	border-color:#f05357;
}
.snow-monkey-form label input[type="checkbox"]:checked+span:before {
	border-color: #f05357;
	background: #f05357;
}
.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__control,
.common_btn button{
 position: relative;
 z-index: 10;
 display: flex;
 align-items: center;
 justify-content: center;
 min-width: 205px;
 width: fit-content;
 min-height: 3.3334em;
 font-size: 1.125rem;
 font-weight: 500;
 color: #282828;
 background: #ffff00;
 border-radius: 3.125em;
 padding: 0.75em 3.5em 0.7em 2.25em;
 text-decoration: none;
 transition: color .4s, transform .4s;
 border: 1px solid #ffff00;
 font-family: 'Noto Sans JP', sans-serif;
}
.smf-action .smf-button-control__control:after,
.common_btn button:after{
	content: "";
	width:18px;
	height:11px;
	background:url(../img/common/icon-arrow.svg) no-repeat center / contain;
	position:absolute;
	inset: 0 10% 0 auto;
	margin:auto;
	transition:.5s filter;
}
.smf-action .smf-button-control__control[data-action="back"]{
	color: #fff;
	background: #f05357;
	border-color: #f05357;
}
.smf-action .smf-button-control__control[data-action="back"]:after{
	filter: brightness(0) invert(1);
}
@keyframes arrowRightUp {
	0% {
		transform: translate(0);
	}
	48% {
		transform: translateX(100%);
	}
	49% {
		transform: translateX(100%);
		visibility: hidden;
		opacity: 0;
	}
	50% {
		transform: translateX(-100%);
		visibility: hidden;
		opacity: 0;
	}
	51% {
		transform: translateX(-100%);
		visibility: visible;
		opacity: 1;
	}
	100% {
		transform: translate(0);
	}
}
@media (any-hover: hover) {
	.smf-action .smf-button-control__control:hover,
	.common_btn button:hover{
	  color: #282828;
	  opacity: 1;
	  transform: translateY(5px);
	}
	.smf-action .smf-button-control__control:hover:after,
	.common_btn button:hover:after{
	  animation-name: arrowRightUp;
	  animation-duration: 0.5s;
	}
	.smf-action .smf-button-control__control[data-action="back"]:hover{
		color: var(--white) !important;
	}
}
@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;
		gap: 1em;
	}
	.smf-action .smf-button-control{
		margin-top:0;
	}
	.smf-action > * + *{
		margin-top:1em;
	}
	.smf-action .smf-button-control+.smf-button-control{
		margin:0;
	}
	.smf-action .smf-button-control__control{
		margin: 0 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: 2px;
		width: 18px;
		height: 18px;
	}
	.snow-monkey-form label input[type="radio"]+span:after {
		top: 10px;
		bottom:auto;
		width: 12px;
		height: 12px;
		left: 3px;
	}
	.snow-monkey-form input[type="date"]{
		max-width:100%;
	}
}