@charset "UTF-8";/* @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700); *//** * mixin *//* //  @include transition; *//** * define value *//* $gothic:  "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,"Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif; *//* $googlefont : "Playfair Display SC"; *//* 背景に画像を追加  footerの背景色の削除*//* Loading背景画面設定　*/#splash {	position: fixed;	z-index: 999;	width: 100%;	height: 100%;	background: #fff url('../../img/common/loding.svg') center 42.5% no-repeat;	background-size: 100px;	text-align:center;	color: 	#4cc1ea;}/* Loadingバー中央配置　*/#splash_text {	position: absolute;	top: 52.5%;	left: 50%;	z-index: 999;	width: 100%;	transform: translate(-50%, -50%);	color: #fff;}/*IE11対策用バーの線の高さ※対応しなければ削除してください*/#splash_text svg{    height: 2px;}body {  position: relative;}#wrap { 	position: relative;	width: 100%;	height: 100%;}#wrap::before {	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;	content: "";	background:url(../../img/common/bg-top@2x.png) top no-repeat;	background-size: 100% auto; 	z-index: -1;}#wrap::after {	position: absolute;	bottom: 0;	left: 0;	width: 100%;	height: 100%;	content: "";	background:url("../../img/common/bg-bottom@2x.png") bottom no-repeat;	background-size: 100% auto; 	z-index: -1;}.footer {  background: none;}/*----------------------------------------------*/.open-hours {  padding-left: 35px;}.kids-photo {  margin-top: -10px;  margin-bottom: 90px;}.popup-msg {  z-index: 999;  background: #fffcdb;  padding: 15px;  border-radius: 5px;  -webkit-box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.5);  box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.5);}.popup-msg__content {  font-size: 15px;  padding: 50px 30px;  border: 3px dashed #f29d8d;}body .container {  position: relative;  width: 100%;  padding-left: 0;  padding-right: 0;    overflow-y: hidden;}#err_name,#err_address,#err_tel,#err_email,#err_email_confirm {  -webkit-transform: translateX(-100px);  -moz-transform: translateX(-100px);  -ms-transform: translateX(-100px);  -o-transform: translateX(-100px);  transform: translateX(-100px);}.swal2-modal .btn {  color: #fff;  border: 0;  -webkit-box-shadow: none;  box-shadow: none;  font-size: 17px;  font-weight: 500;  border-radius: 3px;  padding: 10px 32px;  margin: 0 5px;  cursor: pointer;}.swal2-modal .btn-success {  border-left-color: #3085d6;  border-right-color: #3085d6;  background-color: #3085d6;  margin-right: 20px;}.swal2-modal .btn-danger {  margin-left: 20px;  background-color: #aaaaaa;}.ui-button {  cursor: pointer;  position: absolute;  top: 40px;  right: 30px;}.ui-button:before {  content: "";  width: 20px;  height: 2px;  background: #000;  display: block;  position: relative;  left: 0px;  top: 2px;  -webkit-transform: rotate(135deg);  -moz-transform: rotate(135deg);  -ms-transform: rotate(135deg);  -o-transform: rotate(135deg);  transform: rotate(135deg);}.ui-button:after {  content: "";  width: 20px;  height: 2px;  background: #000;  display: block;  -webkit-transform: rotate(-135deg);  -moz-transform: rotate(-135deg);  -ms-transform: rotate(-135deg);  -o-transform: rotate(-135deg);  transform: rotate(-135deg);}.ui-button:focus {  outline: none;}.reward {  background: url("../../img/top/reward_bg.png") no-repeat;  position: relative;  padding: 195px 35px 130px 75px;  margin-bottom: 55px;}.reward__prize--1 {  margin-bottom: 65px;}.reward__prize--2 {  padding-left: 20px;  margin-bottom: 60px;}.reward__prize--3 {  padding-left: 40px;  margin-bottom: 65px;}.reward__prize--4 {  padding-left: 50px;}.reward__prize--last {  position: absolute;  bottom: 90px;  right: 55px;}.content01 {  margin-bottom: 85px;  padding-left: 30px;}.content01__content--left {  float: left;  margin-right: 25px;}.content01__content--right {  float: left;  position: relative;}.content01__content__note {  position: absolute;  bottom: 25px;  left: 300px;}.content02 {  position: relative;  margin-bottom: 50px;}.content02__content {  margin-bottom: 40px;  padding-left: 35px;}.content02__content--3 {  margin-bottom: 50px;}.content02__content__icon {  position: absolute;  left: 77%;  top: -20px;}.content03 {  padding-left: 15px;  margin-bottom: 45px;}.content04 {  padding-left: 100px;  margin-bottom: 40px;}.contact { padding-top: 10px;}.contact__wrapper {	background: rgba(255, 230, 230, 0.7);	border-radius: 10px;	padding: 10px 20px 25px;	max-width: 860px;	margin: auto;}.contact__table {	font-size: 16px;	width: 97.5%;	margin: auto;}.contact__table tr th {  text-align: left;  font-weight: 400;  width: 250px;  vertical-align: bottom;  padding: 30px 0 5px 10px;  border-bottom: 1px dashed #282828;}.contact__table tr td {  vertical-align: bottom;  padding: 30px 0 5px;  border-bottom: 1px dashed #282828;}.contact__table input { width: 100%;}.contact__table input:focus {  outline: none;}.contact__table #stores {  position: relative;  background: url("../../img/top/icon-arrow.png") no-repeat;  background-position: 100% 50%;  width: 235px;}.contact__table #stores:focus {  outline: none;}.contact__upload {  text-align: center;  margin: 60px 0 20px;}.contact__upload__button {  position: relative;  cursor: pointer;  background: url("../../img/top/btn-upload.png") no-repeat;  width: 241px;  height: 41px;  margin: 0 auto 20px;}.contact__upload__button input {  color: transparent;  opacity: 0;  height: 100%;  width: 100%;  cursor: pointer;}.contact__upload__status {  display: block;}.contact__submit { text-align: center;}.contact__submit input {  cursor: pointer;  background: url("../../img/top/btn-submit.png") no-repeat;  width: 356px;  height: 63px;  color: transparent;}.contact__note {	display: block;	text-align: right;	margin-top: 10px;	margin-bottom: 20px;	padding-right: 30px;	letter-spacing: 1.5px;}.contact__msg {	display: block;	text-align: center;}#wrap {padding-top: 2.75vw;}.contentpc .main_v {	position: relative;	top: 0;	left: 0;	max-width: 1920px;}.main_v .smile_icon {	display: block;	width: 8.75vw;	margin: 0 auto;}.main_v .main_title {	display: block;	width: 60.25vw;	max-width: 620px;	margin: 2.25vw auto 0;}.main_v .day {	display: block;	width: 48.75vw;	margin: 1.75vw auto 0;}.kids-photo01 {	position: absolute;	top: -2.25vw;	left: 17.5vw;	max-width: 320px;	width: 20.25vw;	z-index: -1;}.kids-photo02 {	position: absolute;	top: 0;	right: 20.25vw;	max-width: 300px;	width: 18.25vw;	z-index: -1;}.kids-photo03 {	position: absolute;	bottom: 15.25vw;	left: 0;	max-width: 320px;	width: 23.75vw;	z-index: -1;}.kids-photo04 {	position: absolute;	bottom: 10.75vw;	right: 0.5vw;	max-width: 320px;	width: 23.25vw;	z-index: -1;}.merchandise {	display: block;	width: 92.75vw;	max-width: 1080px;	margin: 1.25vw auto 0;}.ornament01 {	position: absolute;	top: 55.25vw;	right: 67.75vw;	max-width: 224px;	width: 11.25vw;	z-index: 3;}.contentpc .main_v_foot {  position: absolute;  bottom: -120px;  left: 0;  width: 100%;  height: 516px;  text-align: center;  background: url("../../img/pc/p1.png") center top no-repeat;  background-size: 960px auto;}.contentpc .main_v_foot img {  width: 100%;  max-width: 1920px;}.contentpc .main_wrap { 	position: relative;	margin-top: 2.5vw;}.contentpc .main_inner {	position: relative;	width: 90%;	max-width: 960px;	margin: 0 auto;}.contentpc .main_inner .cont2 {	width: 100%;	height: auto;	-webkit-box-sizing: border-box;	box-sizing: border-box;}.ornament02 {	position: absolute;	top: 0.75vw;	right: -0.475vw;	max-width: 182px;	width: 17.25vw;	z-index: 1;}.cont2_container > img {	display: block;	margin: 3.75vw auto 1vw;}.contentpc .main_inner .cont2_content_sp { padding: 20px 10px;}.sub-title01 {	position: relative;	top: -45px;	width: 45vw;	max-width: 1130px;	z-index: 2;}.text01 {	position: relative;	top: -75px;	width: 50vw;	max-width: 641px;	margin: auto;	z-index: 2;}.text02 {	position: relative;	top: -30px;	width: 72.5vw;	max-width: 845px;	margin: 0 auto 15px;	z-index: 2;}.text03 {	position: relative;	left: -1.75vw;	width: 72.5vw;	max-width: 569px;	z-index: 2;}.text04 {	position: relative;	width: 30vw;	max-width: 235px;	margin: 0 auto 20px;	z-index: 2;}.text05 {	position: relative;	width: 72.5vw;	max-width: 860px;	margin: 0 auto 50px;	padding: 1.5vw 8.75vw;	background-color: #fce5e6;	border-radius: 20px;	z-index: 2;}.text06 {	position: relative;	width: 30vw;	max-width: 235px;	margin: 0 auto 20px;}.contentpc .main_inner .cont1 { position: relative;}.contentpc .main_inner .box .icon1 {	position: absolute;	top: 30px;	left: -15px;	width: 70px;}.contentpc .main_inner .box .icon2 {  width: 70px;  position: absolute;  top: 70px;  right: -20px;}.contentpc .main_inner .box .icon3 {    display: none;  width: 100px;  position: absolute;  top: -50px;  right: 44.9%;}.sp_only { display: none !important;}@media screen and (max-width: 749px) {		.contentpc .main_v {		position: relative;		top: 0;		left: 0;		width: 100%;		max-width: 749px;		margin-bottom: 5vw;	}	.main_v .smile_icon {		display: block;		width: 12.75vw;		min-width: 80px;		margin: 4.75vw auto 0;	}	.main_v .main_title {		position: relative;		width: 82.5vw;		margin: 0 auto;		padding-top: 2.75vw;		z-index: 2;	}	.main_v .day {		display: block;		width: 52.75vw;		margin: 1.75vw auto 24.25vw;	}	.kids-photo01 {		position: absolute;		top: -3.75vw;		left: -1.75vw;		max-width: 150px;		width: 30.25vw;	}	.kids-photo02 {		position: absolute;		top: -1.75vw;		right: 0.75vw;		max-width: 142px;		width: 30.25vw;	}	.kids-photo03 {		position: absolute;		bottom: 47.25vw;		left: -0.25vw;		max-width: 190px;		width: 24.75vw;	}	.kids-photo04 {		position: absolute;		bottom: 57.25vw;		right: 0.25vw;		max-width: 178px;		width: 24.75vw;	}	.merchandise {		display: block;		width: 75.75vw;		max-width: 350px;		margin: 1.25vw auto 0;	}		.p2-text {		display: block;		width: 95.25% !important;		margin: 0 auto 5vw !important;	}	.p2-text.last { width: 60% !important; margin: 0 auto 2.5vw!important;}		.ornament01 {		position: absolute;		top: 130.25vw;		right: 57.75vw;		max-width: 224px;		width: 12.25vw;		z-index: 2;	}	.application {		position: absolute;		top: 55.5vw;		left: 24.75vw;		width: 55.75vw;		max-width: 448px;		z-index: 1;	}		.contentpc .main_inner .cont2 {		width: 100%;		border-style: solid;		border-width: 30px;		border-image-slice: 50;		border-image-width: 30px;		border-image-repeat: repeat;		margin-top: 50px;		height: auto;	}		.contentpc img { width: 100%;}	.contentpc .main_inner { margin: 10% auto 0;}	.cont2_container .m5.sp_only{		position: relative;		top: 0;		left: 0;		z-index: 3;		/*padding-top: 20px;*/	}	.sub-title01 {		position: relative;		top: -45px;		left: -7.5vw;		width: 75.75vw;		max-width: 565px;		margin-bottom: 40px;		z-index: 2;	}	.text01 {		position: relative;		top: -75px;		width: 80.75vw;		max-width: 300px;		margin: auto;		z-index: 2;	}	.text02 {		position: relative;		top: -50px;		width: 62.5vw;		max-width: 845px;		margin: 0 auto 15px;		z-index: 2;	}	.text03 {		position: relative;		top: -50px;		left: -9.75vw;		width: 80.75vw;		max-width: 685px;		z-index: 2;	}	.text04 {		position: relative;		top: -35px;		width: 47.5vw;		max-width: 235px;		margin: 0 auto 20px;		z-index: 2;	}	.text05 {		position: relative;		top: -10.5vw;		width: 78.75vw;		max-width: 860px;		margin: 0 0 20px;		padding: 3vw 2.5vw;		background-color: #fce5e6;		border-radius: 2px;		z-index: 2;	}	.text06 {		position: relative;		width: 30vw;		max-width: 235px;		margin: 0 auto 20px;	}	.text07 {		position: relative;		top: -18.5vw;		width: 80.75vw;		max-width: 300px;		margin: 0 auto;		z-index: 2;	}}@media screen and (max-width: 830px) {  .sp_block {    display: block;  }  .pc_block {    display: none;  }  .main_v_sp.sp_block{    position: relative;    top: 0;    left: 0;  }  .contentpc .main_v_sp .main_v_foot_sp {    /*background: url('../../img/sp/mainv_bar.png') center no-repeat;    position: absolute;    bottom: -1%;    left: 0;    width: 100%;    padding-bottom: 15%;    text-align: center;    background-size: 100% auto;*/    background: url('../../img/sp/mainv_bar.png') center top no-repeat;    background-size: auto;    position: absolute;    bottom: 0;    left: 0;    width: 100%;    padding-bottom: 20%;    text-align: center;    background-size: 101% auto;  }}@media screen and (max-width: 749px) {		#wrap { 		background: url("../../img/sp/bg-center@2x.png") no-repeat;		background-size: 100%;		background-position: 70%;		width: 100%;		height: 100%;		max-width: 749px;		z-index: 1	}		.pc_only { display: none !important;}	.sp_only { display: block !important;}		.contentpc img { width: 100%;}	.contentpc .main_inner {		width: 100%;		max-width: 100%;		margin: 0;	}	.contentpc .main_inner .cont2 {		width: 100%;		border-width: 0;		margin-top: 0;	}  .contentpc .main_inner .box {		background-color: none;		padding: 0;		width: 100%;  }	.contentpc .main_inner .cont1 {		position: relative;		top: -5.75vw;		width: 91%;		margin: auto;	}	.contact { padding-top: 0;}	.contactWrap {		position: relative;		/*background-color: #fff;*/		z-index: 2;  }  .contact__wrapper {		background: rgba(255, 230, 230, 0.8);		padding: 7%;		border-radius: 10px;	}  .contact__table {    font-size: 12px;    width: 100%;    display: block;  }  .contact__table tbody {    display: block;  }  .contact__table tr  {    display: block;  }  .contact__table tr th {    margin: 15px 0 0 0;    display: block;    width: 100%;    padding: 10px 5px;    border: none;    background-color: #e9e9e9;  }  .contact__table tr td {    display: block;    width: 100%;    box-sizing: border-box;    padding: 15px 10px;  }  .contact__table input {    width: 100%;  }  .contact__table input:focus {    outline: none;  }  .contact__upload {    text-align: center;    margin: 60px 0 20px;  }  .contact__upload__button {    background: url("../../img/top/btn-upload_sp.png") no-repeat;    background-size: 100% auto;    position: relative;    cursor: pointer;    width: 210px;    height: 36px;    margin: 0 auto 20px;  }  .contact__submit {    text-align: center;  }  .contact__submit input {    cursor: pointer;    background: url("../../img/top/btn-submit_sp.png") no-repeat center;    background-size: 100% auto;    width: 100%;    height: 50px;    color: transparent;  }  .contact__msg {    display: block;    text-align: center;  }  .contact__note {    text-align: left;    font-size: 10px;    padding: 0 10px;  }	.contentpc .main_inner .cont2 img.m5 { margin: 2% 0 8%;}	.contentpc .main_inner .cont2 .cont2_content_sp {		padding: 20px 20px;		margin: 5% 0 0;		height: auto;		box-sizing: border-box;	}  .contentpc .main_v_sp { position: relative;}  .contentpc .main_inner .cont2 .cont2_container {    width: 90.066%;    margin: 0 auto;    background: none;  }  .contact__table #stores {		position: relative;		background: url(../../img/top/icon-arrow.png) no-repeat;		background-position: 80% 50%;		width: 225px;  }}.footer__wrapper {	position: relative;	z-index: 2;	padding: 35px 32.25vw 30px;}@media screen and (max-width: 749px) {	.footer__wrapper {		position: relative;		z-index: 2;		padding: 35px 12.25vw 25px;	}		.footer img {		width: 75.75%;		margin: auto;	}  body .container {    width: 100%;    padding: 0;  }}