html{
height:100%;
max-width:1920px;
margin:auto;
    overflow-y: scroll;
    overflow-x: hidden;
}

img{
	margin:auto;
}



* { max-height: 999999px; }
body {
font-family:'Roboto Condensed',"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
max-width:1920px;
overflow-x: hidden;
}

html body{
    font-family:'Roboto Condensed',"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;

}


.modal-open {
overflow: auto;
}


a {
color: #cc0000;
text-decoration: underline;
}
a:visited { color: #cc0000; }
a:hover { text-decoration: underline; }
::selection {
	background: #80ccda;
	color: #fff;
}
a:hover img{
opacity: 0.7;
}
img:hover{
opacity: 0.7;
}


ul{
	list-style-type: none
}

li{
	list-style-type: none
}



/*loader*/
#loader {
opacity: 1;
position: fixed;
z-index: 100000;
width: 100%;
height: 100%;
background: #fff;
top: 0;
left: 0;
}
.spinner {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
margin: auto;
width: 50px;
height: 40px;
text-align: center;
font-size: 10px
}
.spinner>div {
background-color: #808080;
height: 100%;
width: 6px;
display: inline-block;
-webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
animation: sk-stretchdelay 1.2s infinite ease-in-out
}
.spinner .rect2 {
-webkit-animation-delay: -1.1s;
animation-delay: -1.1s
}
.spinner .rect3 {
-webkit-animation-delay: -1s;
animation-delay: -1s
}
.spinner .rect4 {
-webkit-animation-delay: -.9s;
animation-delay: -.9s
}
.spinner .rect5 {
-webkit-animation-delay: -.8s;
animation-delay: -.8s
}
@-webkit-keyframes sk-stretchdelay {
0%, 40%, 100% {
-webkit-transform: scaleY(0.4)
}
20% {
-webkit-transform: scaleY(1.0)
}
}
@keyframes sk-stretchdelay {
0%, 40%, 100% {
transform: scaleY(0.4);
-webkit-transform: scaleY(0.4);
}
20% {
transform: scaleY(1.0);
-webkit-transform: scaleY(1.0);
}
}
/* end loader*/



#photo01{
	padding-top:10px;
	padding-bottom:20px;
	text-align:center;
}


#loadinggawa{
	position:relative;
	min-height:700px;
	border:0px solid #ff66cc;
	overflow: hidden;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	z-index:9999;
}

#loading2 {
	position: absolute;
	left: 0;
	top: 0;
	min-height: 700px;
	min-width: 1000px;
/*	height: 100%;*/
	height:750px;
	width: 100%;
	z-index: -1;
}

#loading2In {
	position: absolute;
	width: 1000px;
	top: 0;
	bottom: 0;
	left: 50%;
	margin-left: -500px;
	overflow: hidden;
	height:100%;
}





#loadinggawasp{
	position:relative;
	height:580px;
	overflow: hidden;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	z-index:10;

}


#loading2sp {
	position: absolute;
	left: 0;
	top: 0;
/*	height: 100%;*/
	height:580px;
	width: 100%;
	z-index: 3;
}


#loading2Insp {
	position: absolute;
	width: 600px;
	top: 0;
	bottom: 0;
	left: 50%;
	margin-left: -300px;
	overflow: hidden;
	height:100%;
}




#logosp {
	width: 570px;
	height: 380px;
	margin-left: -285px;
	margin-top: -190px;
	position: absolute;
	left: 50%;
	top: 50%;
	opacity: 0;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	will-change: transform;
	transform: rotate(0deg) scale(1.2);
}



/*=========kokokara framein==========*/




@-webkit-keyframes fadeInLeft {

from {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	-webkit-transform: translateX(100px);
	        transform: translateX(100px);
}

to {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

}

@keyframes fadeInLeft {

from {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	-webkit-transform: translateX(100px);
	        transform: translateX(100px);
}

to {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

}






.animate-elmr {
	margin: 0 auto;
	width: 1000px;
/*	height: 420px;*/
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.animate-elmr.type01 {
 
}

.animate-elmr.fadein {
	-webkit-animation-name: fadeInRight;
	        animation-name: fadeInRight;
	-webkit-animation-duration: 500ms;
	        animation-duration: 500ms;
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
}



@-webkit-keyframes fadeInRight {

from {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	-webkit-transform: translateX(-100px);
	        transform: translateX(-100px);
}

to {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

}

@keyframes fadeInRight {

from {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	-webkit-transform: translateX(-100px);
	        transform: translateX(-100px);
}

to {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

}

.animate-elmsp {
	margin: 0 auto;
	padding:3%;
	width: 610px;
/*	height: 420px;*/
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.animate-elmsp.type01 {
 
}

.animate-elmsp.ZoomIn {
	-webkit-animation-name: ZoomIn1;
	        animation-name: ZoomIn1;
	-webkit-animation-duration: 500ms;
	        animation-duration: 500ms;
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
}





@-webkit-keyframes ZoomIn1 {

from {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.4s ease-in-out 0s;
    -webkit-transition: all 0.4s ease-in-out 0s;
    transform: scale(0.8, 0.8);
    -webkit-transform: scale(0.8, 0.8);
}

to {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);

}

}

@keyframes ZoomIn1 {

from {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.4s ease-in-out 0s;
    -webkit-transition: all 0.4s ease-in-out 0s;
    transform: scale(0.8, 0.8);
    -webkit-transform: scale(0.8, 0.8);
}

to {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
}

}



/*========end framein=========*/


.white{
	color: #fff;
	}

.white a{
	color: #fff;
	text-decoration:underline;
	}
.white a:hover{
	color: #fff;
	}

.black {
	color: #000000;
}
.black a{
	color: #000000;
	text-decoration:underline;
}

.brown{
	color: #cc0000;
}
.brown a{
	color: #cc0000;
	text-decoration:underline;
}


.gray{
	color:#44;
}
.gray a{
	color: #444;
	text-decoration:underline;
}

.gray2{
	color:#666;
}
.gray2 a{
	color: #666;
	text-decoration:underline;
}

.red{
	color:#ff0000
}
.red a{
	color: #ff0000;
	text-decoration:underline;
}

.red2{
	color:#f97353;}

.pink{
	color:#dd585c
}
.pink a{
	color: #dd585c;
	text-decoration:underline;
}

.pink2{
	color: #f29c9f
}
.pink2 a{
	color: #f29c9f;
	text-decoration:underline;
	background:#faf6df;
}


.yellow{
color:#ffe03f
}

.yellow a{
color:#ffe03f
	text-decoration:underline;
}

.yellow2{
	color:#ddc710;
}


.green{
color:#bbdb07;
}

.grayback{
	 background:#efefef;
}

.blue{
	color:#3fbbce;
}




#concious{
	font-weight:normal;
	color:#eb5871;
	background:#fff6ba;
}




.gall{
}
.gall img{
/*	width:16%;*/
	border-bottom:transparent 4px solid;

}





.cen{
	text-align:center;
	margin:auto;
}



.pcpad{
	padding:0px 20px 0px 20px;
}



.box2 {
  margin     : auto;
  max-width  : auto;

                                             /* 三角模様のCSS */
  border     : 0px solid #ccc;    /* ←枠線が不要な場合は削除 */
  background-image   : 
      linear-gradient( -45deg,
                       #ffffff   0%, #ffffff  50%,
                       #064c71  50%, #064c71 100% );
  background-position: left top;
  background-size    : 70px 70px;
	background-repeat:no-repeat;
	padding:12px 12px 12px 12px;
}


.row-eq-height {
display: flex;
flex-wrap: wrap;
}


.psn{
	font-family:"Noto Sans JP", sans-serif;
	width:78%;
	margin:auto;
	container-type: inline-size;
	text-align:center;
}


.psn h2{

	font-weight:900;
/*font-size:2.4vw;
font-size: clamp(1.5rem, 2.0vw, 2.6vw);*/
	font-size: clamp(17px, 3.7cqw, 4.0cqw);
	color:#333;
	line-height:160%;


}

.psn .content{
	text-align: left;
	font-size: clamp(14px, 2.27cqw, 4.0cqw);
	font-weight: bold;
	line-height: 170%;
	margin-top: 35px;
	margin-bottom:20px;
}
.subtitle{
	font-family:"Noto Sans JP", sans-serif;
	font-weight:900;
	text-align: left;
	font-size: clamp(16px, 4.0cqw, 4.0cqw);
	line-height: 170%;
}

.discription{
	font-family:"Noto Sans JP", sans-serif;
	text-align: left;
	font-size: clamp(14px, 3.2cqw, 3.2cqw);
	line-height: 170%;
}



.book{
	font-family:"Noto Sans JP", sans-serif;
	margin:auto;
	container-type: inline-size;
}
.book h1{

	font-weight:900;
	font-size: clamp(24px, 6.4cqw, 6.4cqw);
	line-height: 130%;
	margin:5px 0px 10px 0px;
	padding:0px;
}

.book h2{

	font-weight:700;
	font-size: clamp(14px, 2.8cqw, 2.8cqw);
	line-height:140%;
	margin:0px;
}

.book h3{

	font-weight:900;
	font-size: clamp(20px, 5.8cqw, 5.8cqw);
	line-height: 160%;
	margin:0px 0px 10px 0px;
}

.book h4{

	font-weight:600;
	font-size: clamp(14px, 3.2cqw, 3.2cqw );
	line-height:160%;
	margin-top: 0px;
}


.book h5{

	font-weight:500;
	font-size: clamp(16px, 1.5cqw, 1.5cqw );
	line-height:160%;
	margin-top: 0px;
}


.book .content{
	text-align: left;
	font-size: clamp(16px, 3.1cqw, 3.1cqw);
	font-weight: 500;
	line-height: 170%;
}

.book p{
	font-weight:800;
	margin:0px 0px 10px 0px;
	font-size: clamp(16px, 1.7cqw, 1.7cqw);
}


.book h6{
	font-size: clamp(10px, 1.2cqw, 1.2cqw);
}


.sixcrm{
	font-family:"Noto Sans JP", sans-serif;
	margin:auto;
	container-type: inline-size;
}
.sixcrm h1{

	font-weight:900;
	font-size: clamp(24px, 6.4cqw, 6.4cqw);
	line-height: 130%;
	margin:5px 0px 10px 0px;
	padding:0px;
}

.sixcrm h2{
	text-align: left;
	font-size: clamp(14px, 3.6cqw, 3.6cqw);
	line-height: 170%;
}

.sixcrm h3{
	text-align: left;
	font-size: clamp(14px, 3.0cqw, 3.0cqw);
	line-height: 150%;
}


#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #ef3f40;
  opacity: 0.6;
	z-index:100;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f0d8';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0px;
  bottom: 10px;
  right: 0px;
  left: 0px;
  margin: auto;
  text-align: center;
}





/*===============================================
画面の横幅が769px以上（パソコン用）
===============================================*/
@media screen and (min-width: 769px){

body{
/*background-image: url(../img/bg.png);
background-position:top center;
background-size: cover;
background-size:contain;
background-repeat:no-repeat;*/
}

.pc { display: block !important; }
.sp { display: none !important; }

.contents_inner{
	max-width: 1100px;
	margin: 0px auto;
	padding: 0em 10px 3em 10px;
	text-align: center;
 	font-size: 1.6em;
	text-align:left;
}

.contents_inner h1 {
	margin-bottom: 30px;
 	font-size: 1.8em;
	color: #333;
	line-height:160%;
	text-align:left;
	font-weight:normal
	}
.contents_inner p {
	padding:0px 0px 0px 0px;
	margin:15px 0px 0px 0px;
	font-size: 0.8em;
	text-align: left;
	color: #fff;
	line-height:150%;
	}

.contents_inner p a{
	color: #fff;
text-decoration: underline;
}


.mar{
	margin:0px auto 0px auto;
}


.containerwaku{
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1200px;
	margin: 0px auto;
	text-align: center;
}
.containerwaku2{
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 980px;
	margin: 0px auto;
	text-align: center;
}


#footer{
	padding-top:30px;
	padding-bottom:30px;
	background-image:url('../img/photo02.png');
	background-size:cover;
	background-position:center top;
	text-align:center;
	}





.socialwaku{
	width:200px;
	margin:10px auto 40px auto;
}



.discimg{
	margin: 0px auto;
 	font-size: 15px;
	text-align:left;
	line-height:180%;
	color:#333;
	padding:60px 0px 0px 0px;
}



  .br-pc { display:block; }
  .br-sp { display:none; }


.pccen{
	tex-align:center;
}


.padpcsp{
	margin:60px 0px 20px 0px;
}
.padpcsp2{
	margin:0px 30px 0px 30px;
}


.hana{
	background-image: url(../img/haikei_hana.png);
	background-size: contain;
	background-position:center top;
	background-repeat:repeat-y;
}










}/*end pc*/


/*===============================================
画面の横幅が640pxまで（スマホ用）
===============================================*/
@media screen and (max-width:768px){


body{
/*background-image: url(../img/bg.png);
background-position:top center;
background-size:contain;
background-repeat:no-repeat;
background-size:1570px;*/
}

.pc { display: none !important; }
.sp { display: block !important; }


.contents_inner{
	max-width: 1020px;
	margin: 0px 10px 15px 10px;
	padding: 15px auto 15px auto;
	text-align: center;
}
.contents_inner h1 {
	margin-bottom: 10px;
 	font-size: 1.6em;
	color: #fff;
	}
.contents_inner p {
	padding:0px 0px 15px 0px;
	margin:10px 0px 0px 0px;
	font-size: 1.3em;
	text-align: left;
	color: #fff;
	}

.contents_inner p a{
	color: #fff;
}

.mar{
	padding:0px 15px 0px 15px;
}



.containerwaku{
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 768px;
	margin: 0px auto;
	text-align: center;
}
.containerwaku900{
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 768px;
	margin: 0px auto;
	text-align: center;
}

#footer{
	padding-top:30px;
	padding-bottom:30px;
	background-image:url('../img/photo02.png');
	background-size:cover;
	background-position:center top;
	}

.socialwaku{
	width:270px;
	margin:0px auto 20px auto;
}

.gall{
}
.gall img{
/*	width:24%;*/
	border-bottom:transparent 4px solid;

}
.of{
	width:24%;
/*height:100px;
	width:200px; height:200px;
	object-fit:cover;*/
}



.of2waku{
	position:relative;
	float:left;
	height:140px;
	width:33%;
	box-sizing:border-box;
	margin:0px 0px 20px 0px;
}

.of2{
	position:absolute;
	left:6%;
	top:0px;
	width:90%;
	z-index:0;
}
.of2 img{
	width:100%;
	height:110px;
	object-fit:cover;
	box-sizing:border-box;
	z-index:-9999;
}

.of2comment {
	width:90%;
	position:absolute;
	left:6%;
	top:0px;
	padding:5px;
	color:#fff;
	text-align: left;
	font-size: 12px;
	font-weight: bold;
	line-height: 26px;
	z-index:9999;
	background-color: rgba(0,0,0,0.3);
}

.of2comment a{
	color:#fff;
}


.of2margin{
	position:absolute;
	bottom:0px;
	right:0px;
}

@media all and (-ms-high-contrast: none) {
.of2margin img{
	width:90%;
}
}





.pcpad{
	padding:0px 0px 0px 0px;
}

.cen{
	text-align:center;
	margin:auto;
}


.discimg{
	margin: 0px auto;
 	font-size: 15px;
	text-align:left;
	line-height:180%;
	color:#333;
	padding:25px 0px 10px 0px;
}



  .br-pc { display:none; }
  .br-sp { display:block; }


.pccen{
	tex-align:left !important;
}


.padpcsp{
	padding:30px 0px 20px 0px;
}
.padpcsp2{
	padding:0px 0px 0px 0px;
}


.hana{
 background-image:none;
}




}/*end sp*/

/*===============================================
ここまで画面の横幅が640pxまで（スマホ用）
===============================================*/




.qaa{
	padding:0px 0px 0px 0px;
}
.qaa p{
	font-size: 1.2em;
}

.qaa span{
	color:#00963b;
}


.clearfix:after {
    clear: both;
    content: “”;
    display: block;
    height: 0;
}




/*bootstrap 5column*/

.col-15, .col-sm-15, .col-md-15, .col-lg-15 {
	position: relative;
	min-height: 1px;
	padding-right: 15px;
	padding-left: 15px;
	width: 100%;
}


@media screen and (max-width:768px){
  .col-lg-15 {
    width: 30%;
    flex: 0 0 30%;
  }
}


@media (min-width: 768px) {
  .col-sm-15 {
    width: 20%;
    flex: 0 0 20%;
  }
.col-15{
  width: 20%;
  flex: 0 0 20%;
}
}
@media (min-width: 992px) {
  .col-md-15 {
    width: 20%;
    flex: 0 0 20%;

  }
.col-15{
  width: 20%;
  flex: 0 0 20%;
}
}
@media (min-width: 1200px) {
  .col-lg-15 {
    width: 20%;
    flex: 0 0 20%;
  }
.col-15{
  width: 20%;
  flex: 0 0 20%;
}
}





.guest_list{
	display:	flex;
	flex-wrap:	wrap;
	justify-content:	space-between;
	align-content:	stretch;
	align-content:	flex-start;
	gap:	5.0rem 2.0rem;
	overflow:	hidden;
	width:	100%;
	padding:	0 0 20px 0;
}

.guest_list figure.guest_item {
	overflow:	hidden;
	flex-basis:	30%;
	text-align:	center;
}

.guest_list figure.guest_item img {
	box-sizing:	border-box;
	width:	100%;
	height:	auto;
	margin:	0 0 15px 0;
	-moz-border-radius:	50%;
	-webkit-border-radius:	50%;
	border-radius:	50%;
	border:	15px solid #f19a00;
}



