html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
	display: block
}
ol, ul {
	list-style: none
}
*, *::before, *::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
html {
	overflow-y: scroll;
  scroll-behavior: smooth;
}
sup {
	font-size: 1rem;
	vertical-align: text-top
}
sub {
	font-size: 1rem;
	vertical-align: text-bottom
}
img {
	max-width: 100%;
	height: auto;
	font-size: 0;
	line-height: 0;
	vertical-align: bottom
}
html {
	font-size: 62.5%
}
/*p{font-size: 120%;}*/

body {
	background: #ffffff;
	font-size: 1.6rem;
	line-height:1.8;
	font-family: 'Montserrat','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	letter-spacing: 0.1em;
}
body.no-scroll {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}
/*
@media screen and (max-width: 960px) {
body {	letter-spacing: 0.05em
}
}*/
.wrapper {overflow: hidden}
a {
	color: inherit;
	text-decoration: none
}

@media (min-width: 1024px) {
a[href^="tel:"] {
	pointer-events: none;
	color: inherit;
	cursor: default;
	text-decoration: none
}
}

/*------------------------------------------*/
.pointer {
	pointer-events: none;
	border-radius: 50%;
	position: fixed;
	top: 0;
	left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 20px;
	height: 20px;
	background:#008080;
	opacity: 0.5;
	z-index: 1000;
	-webkit-transition: -webkit-transform ease 0.1s;
	transition: -webkit-transform ease 0.1s;
	transition: transform ease 0.1s;
	transition: transform ease 0.1s, -webkit-transform ease 0.1s;
	mix-blend-mode: difference
}
.pointer.is-active {
	-webkit-transform: scale(2);
	transform: scale(2)
}

@media screen and (max-width: 1024px) {
.pointer {
	display: none
}
}


/*header------------------------------------*/
.header {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100px;
	z-index: 100;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	/*border-bottom: 1px solid #ccc;*/
}
.header.has-bg {	background: #fff}
.header.is-active {	background: #fff !important}
.headerInner {	position: relative}
.headerInner_logo {
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 1
}
.headerInner_logo img {	width:330px;}
.menuBtn {display: none}

@media screen and (max-width: 1024px) {
.header {height: 64px}
.headerInner_logo {
	top: 5px;
	left: 15px
}
.headerInner_logo img {	width:250px;}
.menuBtn {
	display: block;
	width: 28px;
	height: 20px;
	position: absolute;
	top: 22px;
	right: 28px
}
.menuBtn span {
	display: block;
	position: absolute;
	width: 100%;
	height: 1px;
	background: #42210b;
	-webkit-transition: 0.4s;
	transition: 0.4s
}
.menuBtn span:nth-child(1) {top: 0}
.menuBtn span:nth-child(2) {top: 50%;}
.menuBtn span:nth-child(3) {top: 100%}
.menuBtn span:nth-child(4) {opacity: 0}
}
.menuBtn.is-open span {
	background: #42210b;
	width: 18px
}
.menuBtn.is-open span:nth-child(1) {
	top: auto;
	-webkit-transform: translate(0px, 8px) rotate(135deg);
	transform: translate(0px, 8px) rotate(135deg)
}
.menuBtn.is-open span:nth-child(2) {
	top: auto;
	background: #42210b;
	-webkit-transform: translate(14px, -5px) rotate(135deg);
	transform: translate(14px, -5px) rotate(135deg)
}
.menuBtn.is-open span:nth-child(3) {
	top: auto;
	-webkit-transform: translate(14px, 8px) rotate(225deg);
	transform: translate(14px, 8px) rotate(225deg)
}
.menuBtn.is-open span:nth-child(4) {
	opacity: 1;
	-webkit-transform: translate(0px, -5px) rotate(225deg);
	transform: translate(0px, -5px) rotate(225deg)
}

button {
	background: none;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}


.navigation {
	position: absolute;
	top: 0;
	right: 60px;
	width: 100%
}
.navigationInnerList {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	position: relative
}
.navigationInnerList li {
	font-size: 18px;
	font-weight: 700;
	/*letter-spacing: .2rem;*/
	height: 100px;
	margin-left: 2%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}
/*.navigationInnerList li:first-child {display: none}*/
.navigationInnerList li>a {
	position: relative;
	padding-bottom: 6px
}
.navigationInnerList li>a .c-border:before {
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	width: 0%;
	background: #42210b
}
.navigationInnerList li>a.is-current .c-border:before, .navigationInnerList li>a.is-open .c-border:before, .navigationInnerList li>a:hover .c-border:before {
	width: 100%
}
.navigationInnerList li .subNavWrap {
	display: none;
	position: fixed;
	top: 100px;
	left: 0;
	width: 100%
}
.navigationInnerList li .subNav {
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	padding: 22px;
	background: #666
}
.navigationInnerList li .subNavItem {
	width: 20%;
	margin-left: 15px
}
.navigationInnerList li .subNavItem_txt {
	font-size:1.8rem;
	display: block;
	padding-bottom: 5px;
	position: relative
}


/*SP MENU-------------------------------------*/
@media screen and (max-width: 1024px) {
.navigation {
	display: none;
	position: fixed;
	top: 64px;
	right: 0;
	height: calc(100% - 64px);
	padding: 40px 0 40px;
	overflow: scroll;
	color: #fff;
	background: #41210f;
}
.navigation::after {
	content: '';
	display: block;
	background: #000;
	position: absolute;
	top: -2px;
	left: 0;
	width: 50%;
	height: 2px
}
.navigationInnerList {	display: block}
.navigationInnerList li:first-child {display: block}
.navigationInnerList li {
	height: auto;
	display: block;
	margin: 12px 30px;
	border-bottom: 1px solid #fff
}
.navigationInnerList li>a {	font-size: 2rem}
.navigationInnerList li .subNavWrap {	position: static}
.navigationInnerList li .subNav {
	color: #42210b;
	display: block;
	background: none;
	padding: 0 0 0 5px
}
.navigationInnerList li .subNavTit {
	padding-top: 5px;
	margin: 0
}
.navigationInnerList li .subNavTit a .c-border:before, .navigationInnerList li .subNavTit a .c-border:after {	display: none}
.navigationInnerList li .subNavItem {
	width: 100%;
	margin-left: 0
}
.navigationInnerList li .subNavItem img {	display: none}
.navigationInnerList li .subNavItem_txt{
	color: #fff;
	font-size:1.6rem;}
.navigationInnerList li .subNavItem_txt:before, .navigationInnerList li .subNavItem_txt:after {	display: none}
.navigationInnerList li>a .c-border:before  {	display: none}
}
/*---------------------------------*/
/*#app{	margin-top: 100px;}*/
#app{	margin-top: 0px;}

/*---------------------------------*/
.secInner {
	max-width: 1200px;
	margin: 0 auto;
}
@media screen and (max-width: 1024px) {
.secInner {
	width: 94%;
}
}
/*---------------------------------*/
.secInner1200 {
	max-width: 1200px;
	margin: 0 auto;
}
@media screen and (max-width: 1024px) {
.secInner1200 {
	width: 90%;
}
}

/*---------------------------------*/
.secInner990 {
	max-width: 990px;
	margin: 0 auto;
}
@media screen and (max-width: 1024px) {
.secInner990 {
	width: 90%;
}
}


/*scroll------------------*/
.scroll a {
  display: inline-block;
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 2;
  padding: 10px 10px 110px;
  overflow: hidden;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  font-family: 'Josefin Sans', sans-serif;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}
.scroll a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 2px;
  height: 100px;
  background: #fff;
  animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
.scroll a::after {
  animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}


/*footer---------------------------------*/
.footer{
background: #000;
color: #fff;
font-size: 90%;
padding-bottom: 50px;}

.footerCopy{
	margin: auto 0;
	padding: 20px 0;}


@media screen and (max-width: 1024px) {
.footer img{
	width: 70%;
}
}

/*---------------
お問合せ
-------------------------------------------------------------------------------------------*/
.formInner{
	margin-top: 30px;
}
.formInner dl {
	width: 90%;
	margin: 0 auto;
	padding: 10px;
}
.formInner dt{
	font-size: 18px;
	font-weight: 400;
	padding: 15px 0px 5px 0px;
}
.formInner dt span {
	color: #ff0000;
}
/*---------------
contact form7用
-------------------------------------------------------------------------------------------*/
/* ラベルのスタイル　*/
.wpcf7-checkbox {
	font-size: 100%;
	line-height: 24px;
	display: inline-block;
	cursor: pointer;
	position: relative;
}
span.wpcf7-list-item {
	display: block;
}
.wpcf7 p{
	margin-top: .5em;
}
.wpcf7 select {
	width: 50%;
    padding: 10px;
	border: 1px #ccc solid;
	border-radius: 5px;
}
.wpcf7 input[name="your-name"], input[name="child-name"], input[name="your-adress"], .wpcf7 input[name="your-email"], .wpcf7 input[name="your-tel"] , .wpcf7 input[name="your-sns"] {	
	font-size: 100%;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width: 95%;
	height: 35px !important;
	border: 1px #ccc solid;
	border-radius: 5px;
}
.wpcf7 input[name="your-age"]{	
	font-size: 100%;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width: 50%;
	height: 35px !important;
	border: 1px #ccc solid;
	border-radius: 5px;
}
.wpcf7 textarea[name="your-message"] {	
	font-size: 100%;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width: 95%;
	height: 150px !important;
	border: 1px #ccc solid;
	margin-bottom: 20px;
	border-radius: 5px;
}
/*入力もれ
------------------------------*/
.wpcf7 span.wpcf7-not-valid-tip {
	font-size: 80%;
	color: #ff0000;
}
/*送信完了*/
.sent .formInner {
    display: none;
}
.complete-display{
    display: none;
}
.sent .complete-display{
    display: block;
}
/*送信ボタン
------------------------------*/
.wpcf7-submit {	
  font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	font-size: 1.2em;
	padding: 15px 30px;
	color: #fff;
	border-style: none;
	width: 55%;
	margin-top: 20px;
	margin-left: 20%;
	background:#ff1493;
	border-radius: 15px;
	border: solid 3px #fff;
}
.wpcf7-submit:hover:enabled {
	color: #fff;
	background: #00bfff;
	-webkit-transition: all .3s;
	transition: all .3s;
}
}
@media (max-width: 767px) {
.wpcf7-submit {	
	width: 70%;
}
}
*Safari 角丸
------------------------------*/
 input[type="button"],input[type="submit"] {
    -webkit-appearance: none;
  }
/*iphone対策*/
.wpcf7 select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff;
}



/*------------------------------------------------------------
padding
------------------------------------------------------------*/
.pd1{padding: 1em}
.pd2{padding: 2em}
.pt0   {padding-top: 0	!important}
.pt5   {padding-top: 5px   !important}
.pt10  {padding-top: 10px  !important}
.pt15  {padding-top: 15px  !important}
.pt18  {padding-top: 18px  !important}
.pt20  {padding-top: 20px  !important}
.pt25  {padding-top: 25px  !important}
.pt30  {padding-top: 30px  !important}
.pt35  {padding-top: 35px  !important}
.pt40  {padding-top: 40px  !important}
.pt50  {padding-top: 50px  !important}
.pt1em {padding-top: 1em  !important}
.pt2em {padding-top: 2em  !important}
.pt3em {padding-top: 3em  !important}
.pt4em {padding-top: 4em  !important}
.pt5em {padding-top: 5em  !important}
.pt6em {padding-top: 6em  !important}
.pt7em {padding-top: 7em  !important}
.pt8em {padding-top: 8em  !important}
.pt9em {padding-top: 9em  !important}
.pt10em {padding-top: 10em  !important}


.pr0   {padding-right: 0	!important}
.pr5   {padding-right: 5px   !important}
.pr10  {padding-right: 10px  !important}
.pr15  {padding-right: 15px  !important}
.pr20  {padding-right: 20px  !important}
.pr25  {padding-right: 25px  !important}
.pr30  {padding-right: 30px  !important}
.pr35  {padding-right: 35px  !important}
.pr40  {padding-right: 40px  !important}
.pr50  {padding-right: 50px  !important}


.pb0   {padding-bottom: 0	!important}
.pb5   {padding-bottom: 5px   !important}
.pb10  {padding-bottom: 10px  !important}
.pb15  {padding-bottom: 15px  !important}
.pb20  {padding-bottom: 20px  !important}
.pb25  {padding-bottom: 25px  !important}
.pb30  {padding-bottom: 30px  !important}
.pb35  {padding-bottom: 35px  !important}
.pb40  {padding-bottom: 40px  !important}
.pb50  {padding-bottom: 50px  !important}
.pb1em  {padding-bottom: 1em  !important}
.pb2em  {padding-bottom: 2em  !important}
.pb3em  {padding-bottom: 3em  !important}
.pb4em  {padding-bottom: 4em  !important}
.pb5em  {padding-bottom: 5em  !important}
.pb6em  {padding-bottom: 6em  !important}
.pb7em  {padding-bottom: 7em  !important}
.pb8em  {padding-bottom: 8em  !important}
.pb9em  {padding-bottom: 9em  !important}
.pb10em  {padding-bottom: 10em  !important}


.pl0   {padding-left: 0	!important}
.pl5   {padding-left: 5px   !important}
.pl10  {padding-left: 10px  !important}
.pl15  {padding-left: 15px  !important}
.pl20  {padding-left: 20px  !important}
.pl25  {padding-left: 25px  !important}
.pl30  {padding-left: 30px  !important}
.pl35  {padding-left: 35px  !important}
.pl40  {padding-left: 40px  !important}
.pl50  {padding-left: 50px  !important}


/*------------------------------------------------------------
margin
------------------------------------------------------------*/
.mt0   {margin-top: 0	!important}
.mt5   {margin-top: 5px   !important}
.mt10  {margin-top: 10px  !important}
.mt15  {margin-top: 15px  !important}
.mt20  {margin-top: 20px  !important}
.mt25  {margin-top: 25px  !important}
.mt30  {margin-top: 30px  !important}
.mt35  {margin-top: 35px  !important}
.mt40  {margin-top: 40px  !important}
.mt50  {margin-top: 50px  !important}
.mt60  {margin-top: 60px  !important}
.mt1em {margin-top: 1em !important}
.mt2em {margin-top: 2em !important}
.mt3em {margin-top: 3em !important}
.mt4em {margin-top: 4em !important}
.mt5em {margin-top: 5em !important}
.mt6em {margin-top: 6em !important}
.mt7em {margin-top: 7em !important}
.mt8em {margin-top: 8em !important}
.mt9em {margin-top: 9em !important}
.mt10em {margin-top: 10em !important}

.mr0   {margin-right: 0	!important}
.mr5   {margin-right: 5px   !important}
.mr10  {margin-right: 10px  !important}
.mr15  {margin-right: 15px  !important}
.mr18  {margin-right: 16px  !important}
.mr20  {margin-right: 20px  !important}
.mr25  {margin-right: 25px  !important}
.mr30  {margin-right: 30px  !important}
.mr35  {margin-right: 35px  !important}
.mr40  {margin-right: 40px  !important}
.mr50  {margin-right: 50px  !important}

.mb0   {margin-bottom: 0	!important}
.mb5   {margin-bottom: 5px   !important}
.mb10  {margin-bottom: 10px  !important}
.mb15  {margin-bottom: 15px  !important}
.mb20  {margin-bottom: 20px  !important}
.mb25  {margin-bottom: 25px  !important}
.mb30  {margin-bottom: 30px  !important}
.mb35  {margin-bottom: 35px  !important}
.mb40  {margin-bottom: 40px  !important}
.mb50  {margin-bottom: 50px  !important}
.mb60  {margin-bottom: 60px  !important}
.mb1em  {margin-bottom: 1em  !important}
.mb2em  {margin-bottom: 2em  !important}
.mb3em  {margin-bottom: 3em  !important}
.mb4em  {margin-bottom: 4em  !important}
.mb5em  {margin-bottom: 5em  !important}
.mb6em  {margin-bottom: 6em  !important}
.mb7em  {margin-bottom: 7em  !important}
.mb8em  {margin-bottom: 8em  !important}
.mb9em  {margin-bottom: 9em  !important}
.mb10em  {margin-bottom: 10em  !important}

.ml0   {margin-left: 0	!important}
.ml5   {margin-left: 5px   !important}
.ml10  {margin-left: 10px  !important}
.ml15  {margin-left: 15px  !important}
.ml20  {margin-left: 20px  !important}
.ml25  {margin-left: 25px  !important}
.ml30  {margin-left: 30px  !important}
.ml35  {margin-left: 35px  !important}
.ml40  {margin-left: 40px  !important}
.ml50  {margin-left: 50px  !important}


.mb30{padding-bottom: 30px;}

.img_box img{
	width: 100%;
	height: auto;
}

/*sidebar(PC）-----------------------------*/
#float_sidebar{
	position: fixed;
	right: 0px;
	bottom: 200px;
	z-index: 999999;
}
#float_sidebar .float_item{
	width: 250px;
	height: 250px;
	margin-bottom: 20%;	
}
#float_sidebar .float_item a{
	display: block;
	width: 100%;
	height: 100%;
	padding: 15px;
	box-sizing: border-box;
	text-decoration:none;
}
#float_sidebar .float_item .item_title{
	color: #fff;
	font-size: 18px;
	line-height: 2.2rem;
	text-align: center;
	font-weight: 700;
	display: block;
}
#float_sidebar .float_item .item_title i{
	font-size: 42px;
	padding-bottom: .8rem;
	display: block;
}

@media screen and (max-width: 768px) {
	#float_sidebar{
		display: none;
	}
}

/*sidebar(sp）-----------------------------*/
#float_sidebar2{
	display: none;
	position: fixed;
	right: 0px;
	bottom: 0px;
	z-index: 999999;
}
#float_sidebar2 img{
	width: 100%;
	height: auto;
	margin-bottom: 0%;	
}
@media screen and (max-width:768px) {
	#float_sidebar2{
		display: block;
	}
}
