@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Pinyon+Script&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400&display=swap');

html{
	font-size: 100%;
	scroll-behavior: smooth;
}

@media(max-width: 767px){
html{
	font-size: .9em;
}}

html,body{
	margin: 0;
	padding: 0;
        overflow-x: hidden;
}


body {
	-webkit-animation: fadeIn 2.5s ease 0s 1 normal;
	animation: fadeIn 2.5s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {
		opacity: 0
	}
	100% {
		opacity: 1
	}
}
@-webkit-keyframes fadeIn {
	0% {
		opacity: 0
	}
	100% {
		opacity: 1
	}
}




*{
	margin: 0;
	padding: 0;
}

.Noto{font-family: 'Noto Serif JP', serif;}
.Gothic{font-family: 'Noto Sans JP', sans-serif;}
.cursive {font-family: 'Pinyon Script', cursive;font-weight:100;}
.cursives{font-size:1.3em;}
@media screen and (max-width: 767px){
.cursive {font-size: 1.0em;}}




.formarea{
	position:relative;
	margin:0 auto;
	width:66%;
	text-align:left;
	border: 1px solid #ccc;
	padding:28px;

	background-image: url(../img/illust-dress.png);
	background-position: right 10% bottom 50%;
	background-repeat: no-repeat;
	background-size: 60% auto;
}

@media screen and (max-width: 767px){
.formarea{
	width:96%;
	padding:8px;
}}







.formareav{
	position:relative;
	margin:0 auto;
	width:66%;
	text-align:left;
	border: 1px solid #ccc;
	padding:28px;

	background-image: url(../img/illust-dress2.png);
	background-position: right 10% bottom 50%;
	background-repeat: no-repeat;
	background-size: 34% auto;



}

@media screen and (max-width: 767px){
.formareav{
	width:96%;
	padding:8px;
}}


.expla{
	position:relative;
	margin:0 auto;
	padding:0;
	text-align:center;
	font-size: .5em;
	line-height:1;
}
@media screen and (max-width: 767px){
.expla{
	padding:0 20px 0 20px;
	font-size:.6em;
}}



.cate{
	position:relative;
	font-size:.6em;
	text-align:left;
	margin-left:10px;
	margin-top:-40px;
}


.gothic{
font-family: 'Noto Sans JP', sans-serif;
}




header {
  margin:0 auto;
  background: rgba(255,255,255, .95);
  padding: 10px;
  position: fixed;
  z-index: 2;
  width: 100%;max-width:100%;
  top: 0;
  display: none;

}

a {
	text-decoration:none;
}
a:hover {
	text-decoration:none;
}



h1{
	margin:0;
	padding:0;
	font-weight:300;
	font-family: 'Noto Serif JP', serif;
	font-size:1.6em;
	line-height:1.4;
	padding-bottom:10px;
}

@media(max-width: 768px){
h1{
	font-size:1.2em;
}}



h2{
	margin:0;
	padding:0;
	color:rgba(255,255,255, .8);
	text-shadow: none;
	font-weight:100;
}

h3{
	margin:0;
	padding:0;
	font-family: 'Noto Serif JP', serif;
	color: #fff;
	font-weight: 500;
	font-size:1.4em;
	word-wrap: break-word;
}
.h3l {
	padding: 6px 0;
	background: #f2f2eb;
	color: #333;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}




h4 {
  position: relative;
  margin:0;
  padding:0;
  display: block;
  text-align:left;
  padding: 0 55px;
  font-size:.8em;
  font-weight:100;
  margin-bottom:50px;
  margin-top:80px;
}

h4:before, h4:after {
  content: '';
  position: absolute;
  top: 30%;
  display: block;
  width: 40px;
  height: 10px;
  background-color:#999;
}

h4:before {
  left:0;
}
h4:after {
  right: 0;
}






h5{
	margin:0;
	padding:0;
	color: #111;
	font-weight: 100;
	font-size:1.2em;
	word-wrap: break-word;
}



h6{
	margin:0;
	padding:0;
	color: #111;
	font-weight: 100;
	font-size:1.0em;
	word-wrap: break-word;
}


.logo_fadein{
	background: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 999;
}
.logo_fadein p {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 9999;
	width: 280px;
}



.pfade
{
 animation-name: textanime;/*keyname*/
 animation-duration:5s;
 animation-iteration-count:infinite;
}

@keyframes textanime
{
 0%{
  opacity: 0;
 }

 100%{
  opacity: 1;
 }
}








/* Main */
	#main {
		background: #transparent;
	}
.main {
  height: auto;
  padding: 16px;
}




.ivory{
  color:#f8f8f8;
}


.text-center{
  text-align:center;
}

.menusub{
  font-size:.7em;
  display:block;

}


.event-section{

    position:relative;
    margin:0 auto;
    padding:40px;
}
.event-section img{
   width:40%;
   height:auto;
}

.event-section p{
   margin-top:20px;
   text-align:left;
   font-size:.9em;
   line-height:2.0;
}

.time{
   font-size:3.0em;
}



.load-fade {
  opacity: 0;
  visibility: hidden;
  transition: all 4.9s;
}
.load-fade.is-show {
  opacity: 1;
  visibility: visible;
}

.load-fade img{
	width:auto;
	height:auto;
}


@media(max-width: 768px){
.load-fade img{
	margin-top:70px;
}}






.space-section{

    position:relative;
    margin:0 auto;
    padding:40px;
}
.space-section img{
   width:40%;
   height:auto;
}

.space-section p{
   margin-top:20px;
   text-align:left;
   font-size:.9em;
   line-height:2.0;
}


.area{
	margin-top:30%;
}


.keikakomi {
	position:relative;
	margin: 0 auto;
	width:100%;
	max-width:100%;
	height: auto;
	padding:8px;
	border:1px solid #eee;
	border-style: double;
	text-align:left;
	word-wrap: break-word;
	color: #121212;
	font-size:13px;
}

.newsarea{
    position:relative;
    margin: 0 auto;
    width:50%;
}
.newsarea a{
	text-decoration:none;
        color:#111;
}

@media(max-width: 768px){
.newsarea{
    width:98%;
}}


h6.news{
    margin-bottom: 0.1rem;
    padding: 0.7rem;
    border-left: 5px solid #999;
    color: #353535;
    font-weight: 100;
    font-size: 1.0em;
    line-height:1.8;
}





.topcol4{
	position:relative;
	margin:1px;
	padding:1px;

	text-align:right;
	width: 100%;
	max-width:100%;
	display: flex;
        flex-wrap:wrap;
	justify-content: center;
	align-items:start;

}
.topcol4 > div{
	width: 49.6%;
	margin-right:3px;
}


.topcol4 img{
	width:100%;
	height:auto;
	transition: 0.5s;
}
.topcol4 div:hover{
    opacity: 0.7;
    transition: 0.7s;
}



.topcol4  p{
	position:absolute;
	margin-top:-200px;
	margin-left:30%;
	color:#fff;
	font-size:1.4em;
	font-family: 'Noto Serif JP', serif;
	transition: 0.5s;
}

@media screen and (max-width: 768px) {
.topcol4 p{
	width: 15%;
	margin-top:-100px;
	margin-left:28%;
	font-size:.9em;
}}



@media screen and (max-width: 768px) {
.topcol4 > div{
		width: 48%;
	}
}





.colcon3{
	position:relative;
	margin:1px;
	padding:1px;

	text-align:right;
	width: 100%;
	max-width:100%;
	display: flex;
        flex-wrap:wrap;
	justify-content: center;
	align-items:start;

}
.colcon3 > div{
	width: 33.3333%;

}


.colcon3 img{
	width:100%;
	height:auto;
	transition: 0.5s;
}
.colcon3 div:hover{
    opacity: 0.7;
    transition: 0.7s;
}



.colcon3  p{
	position:absolute;
	margin-top:-200px;
	margin-left:30%;
	color:#fff;
	font-size:1.4em;
	font-family: 'Noto Serif JP', serif;
	transition: 0.5s;
}





@media screen and (max-width: 768px) {
.topcol4 > div{
		width: 48%;
	}
}








.bg-section{
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 1;
    background-size:cover;
    background: center center;

    background-repeat:no-repeat;
    background-attachment: fixed;
}



.cbg-section{
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 70vh;
    z-index: 1;
    background-size:cover;


    background-repeat:no-repeat;
    background-attachment: fixed;
}

@media(max-width: 768px){
.cbg-section{
    height: auto;
    padding:100px 20px;
}}



.sbg-section{
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 60vh;
    z-index: 1;
    background-size:cover;


    background-repeat:no-repeat;
    background-attachment: fixed;
}

@media(max-width: 768px){
.sbg-section{
    height: auto;
    padding:100px 20px;
}}




.contentbg-section{
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    background:rgba(255,255,255, .99);
    height: auto;
    z-index: 1;
    color:#111;
}







.bg-section00{
    background:transparent;
}


.bg-section::before {
  content: '';
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); 
}


.bg-section01{
    background-image: url('../img/bg01.jpg');
}

.bg-section01 a{
	color:#fff;
}

.bg-section02{
    background-image: url('../img/bg02.jpg');
}

.bg-section002 a{
	color:#fff;
}

.bg-section03{
    background-image: url('../img/bg03.jpg');

}

.bg-section04{
    background-image: url('../img/bg04.jpg');
}

.bg-section05{
    background-image: url('../img/bg05.jpg');
}

.bg-section06{
    background-image: url('../img/bg06.jpg');
}





@media screen and (max-width: 768px){

.bg-section01{
    background-image: url('../img/bg01s.jpg');
	height: auto;
	padding: 0 0 240px 0 ;
    	background-size:cover;
	object-fit: cover;
        background-attachment: scroll;
}


.bg-section02{
    background-image: url('../img/bg02s.jpg');
	height: auto;
	padding: 0 0 240px 0 ;
    	background-size:cover;
	object-fit: cover;
        background-attachment: scroll;
}

.bg-section03{
    background-image: url('../img/bg03s.jpg');
	height: auto;
	padding: 0 0 240px 0 ;
    	background-size:cover;
	object-fit: cover;
        background-attachment: scroll;
}

.bg-section04{
    background-image: url('../img/bg04s.jpg');
	height: auto;
	padding: 0 0 240px 0 ;
    	background-size:cover;
	object-fit: cover;
        background-attachment: scroll;

}

.bg-section05{
    background-image: url('../img/bg05s.jpg');
	height: auto;
	padding: 0 0 240px 0 ;
    	background-size:cover;
	object-fit: cover;
        background-attachment: scroll;
}

.bg-section06{
    background-image: url('../img/bg06s.jpg');
	height: auto;
	padding: 0 0 240px 0 ;
    	background-size:cover;
	object-fit: cover;
        background-attachment: scroll;
}}





.title{
    letter-spacing: 4px;   
}


.pagetitle{
    position:relative;
    margin:0 auto;
    width:14%;
    top:0;
    background:rgba(255,255,255, .88);
    padding:80px 16px 20px 16px;
    border-radius: 0 0 4px 4px;
    color:#111f;
    text-align:center;
}



@media(max-width: 768px){
.pagetitle{
   top:0;
    padding:16px 16px 16px 16px;
   width:35%;}
}





.pagetitle2{
    position:absolute;
      left: 0;
	right: 0;
	margin: auto;
    width:14%;
    bottom:0;
    background:rgba(255,255,255, .88);
    padding:60px 16px 40px 16px;
    border-radius: 4px 4px 0 0;
    color:#111f;
    text-align:center;
}



@media(max-width: 768px){
.pagetitle2{
    padding:14px 16px 14px 16px;
   width:35%;}
}





.contenttitle{
    position:relative;
    margin:0 auto;
    width:14%;
    top:0;
    background:rgba(255,255,255, .93);
    padding:60px 20px 20px 20px;
    border-radius: 4px 4px 0 0;
    color:#111f;
    text-align:center;
}
@media(max-width: 768px){
.contenttitle{
   width:30%;
}}







.content-inner{
    max-width: 96%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding: 13vh 30px; 
    font-size: 1.5rem;
}



.content-inner p{
    max-width: 98%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding: 5vh 8px; 
    font-size:1.0rem;
    line-height:2.0;
}
.content-inner a{
    color:#fff;
}


@media(max-width: 768px){
.content-inner{
	padding:0;
        font-size: 1.3rem;
    }


.content-inner h2{
	padding-top: 180px;

}}



.ccontent-inner{
    max-width: 96%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding: 10vh 0; 
    font-size: 1.5rem;
}


.ccontent-inner p{
    max-width: 98%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding: 5vh 8px; 
    font-size:.95rem;
    line-height:2.5;
}


@media(max-width: 768px){
.ccontent-inner{
	padding:0;
        font-size: 1.3rem;
}}





.redwing{

    max-width: 94%;
    position: relative;
    left: 94%;
    transform: translateX(-100%);
    z-index: 2;
    padding: 1vh 0; 
    font-size: 1.5rem;
    font-size:1.1em;
    line-height:1.7;
    color:#111;
}

.redwing a{
    color:#111;
}
.redwing a:visited{
    color:#333;
}

.redwing p{
   text-align:right;
}
















.explanation{
    position:relative;
    max-width:100%;
    color: #222;
    padding: 50px 20px;
    font-size: 1.0em;
    text-align: center;
    background: #f5f5f5;
}



.explanation span {
   font-size:.5em;
}


@media(max-width: 768px){
.explanation{
       width:96%;
    }
}




#footer{
    color: #222;
    padding: 10px 20px 50px 20px;
    font-size: 1.0em;
    text-align: center;
    background: url(../img/logo-wall.png) no-repeat rgb(243, 243, 243);
    background-size: 40%;
    background-position: right center;
}


@media(max-width: 768px){
#footer{
    background-size: 98%;
}}




@media(max-width: 767px){
        
    #section02,#section04,#section06{
        padding: 40px 0;
    }
}



#footer a{
	color:#666;
}

#footer a:hover{
	color:#111;
}

.copyright{
	margin-top:70px;
	font-size:.8em;
}









@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300&display=swap');
/*-- pc/sp  --*/
.pc_area{
  display:block;
}
.phone_area{
  display:none;
}

@media screen and (max-width: 768px){
.pc_area{
    display:none;
  }
.phone_area{
    display:block;
  }
}


@media screen and (max-width: 768px){
.spNone { display: none;}
}
@media only screen and (min-width:640px){
.pnone {display:none}
}

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

/* pc */
.pc { display: block !important; }
.sp { display: none !important; }
/* smartphone */
@media only screen and (max-width: 767px) {
.pc { display: none !important; }
.sp { display: block !important; }
}






.box {
	position:relative;
	margin: 0 auto;
	margin-top:100px;
	width:70%;
	height: auto;
	padding:18px;
	border:1px solid #999;
	text-align:center;
	word-wrap: break-word;
	color: #121212;
	font-size:1.0em;
	line-height:2.0;
}

.box a{
	color:#333;
}
.box a:hover{
	color:#111;
}


@media screen and (max-width: 840px) {

.box{
	margin-top:130px;
}}




.sectinner{
        margin:0 auto;
        padding:0;
	width:70%;
	max-width: 70%;
	height: auto;
	text-align:left;
	background-color: none;
}
@media screen and (max-width: 840px) {
.sectinner{
	width:90%;
	max-width: 90%;
}}





.h3f{
	margin:60px 0 5px 0;
	background: #f3f3f3;
	border: 0px solid #ccc;
	color: #111;
	font-weight: 300;
	font-size:1.3em;
	word-wrap: break-word;
	width: 80%;
	padding: 4px 10px;
}

.h3fl {
	padding: 6px 0;
	background: #f2f2eb;
	color: #333;
	font-size: 17px;
	font-weight: 300;
	text-align: center;
}



.fnumber{
	position:absolute;
	font-size:2.2em;
	margin-top:-40px;
}

.wordspaces{
	padding-left:60px;
}




.circle{
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align:center;
  font-size:12px;
  color:#fff;
  line-height:40px;
  border-radius: 50%;
  background: #dab300;
  background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
}



.kikan{
    display: inline-block;
    margin: .3em .1em;
    padding: 0.4em .9em;
    font-size:12px;
    font-weight: 100;
    color: #fff;
    background: red;
    border: solid 0px red;
   -webkit-border-radius: 7px;/* for Safari and Chrome */
   -moz-border-radius: 7px; /* for Firefox */
   -o-border-radius: 7px; /* for opera */
   border-radius: 7px;
}




.yoyaku{
    display: inline-block;
    margin: .3em .1em;
    padding: 0.4em .9em;
    font-size:12px;
    font-weight: 100;
    color: #fff;
    background: #990000;
    border: solid 0px #ff9900;
   -webkit-border-radius: 7px;/* for Safari and Chrome */
   -moz-border-radius: 7px; /* for Firefox */
   -o-border-radius: 7px; /* for opera */
   border-radius: 7px;
}



.komoku{ display: inline-block;margin: .03em .1em;padding: 0.05em .8em;font-weight: 100;color: #fff; background: #ff9900;border: solid 1px #d7c588; border-radius: 3px;}





.instaicon{
position:absolute;
top:100px;
left:40px;
margin:10px;
z-index:9;
}

.locacome{
font-size:.8em;
}



.image__list {
  display: flex;
  align-items: start;
  justify-content: center;
}
.image__list img {
  opacity: 0;
  width: 100%;
  height: auto;
}
.image__list img.show {
  opacity: 1;
  animation-name: showOrder;
  animation-duration: 1.2s;
}

@keyframes showOrder {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.2;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}


