@charset "utf-8";
/* CSS Document */

body{
height:100%;
overflow-x: hidden;
}

.fo0{font-family: 'ABeeZee', sans-serif;}
.fo1{font-family: 'Karla', sans-serif;}
.fo2{font-family: 'Monda', sans-serif;}
.fo3{font-family: 'Caveat Brush', cursive;}
.fo4{font-family: 'Jaldi', sans-serif;}
.fo5{font-family: 'Nanum Pen Script', cursive;}
.fo6{font-family: 'Scheherazade', serif;}
.fo7{font-family: 'Anton', sans-serif;}
.foj1{font-family: 'Noto Serif JP', sans-serif;}
.foj2{font-family: 'Sawarabi Gothic', sans-serif;}

.fszl{font-size:26px; margin-bottom:10px;}

.tshadow{text-shadow: 2px 2px 5px #444; }
.tshadow2{text-shadow: 2px 2px 5px #e1e1e1; }

.swh{color:#9a1e39;}

.rlogo{
	transition: .5s ;
	transform: rotateZ( 0deg ) ;
	}

.sidebar-wrapper:hover .rlogor{
	transform: rotateZ( 360deg ) ;
	}

h1, h2{
  text-align:center;
  font-weight:normal;
  font-size:68px;
  text-shadow:0 2px 2px black;
  color:white;
}

h2{
  font-size:38px;
  padding:0 16px;
  color:#333;
  text-shadow:none;
  }
}

p{
  color:silver;
  text-align:center;
}

/* 基本のスタイル */
   .foo.delighter {
      transition: all .3s ease-out;
      transform: translateX(-100%);
      opacity: 0;
   }
 
/* スタート時のスタイル */
   .foo.delighter.started {
      transform: none;
      opacity: 1;
   }
 
/* エンド時のスタイル */
   .foo.delighter.started.ended {
      border: solid red 10px;
   }

  options = {
    attribute:  'data-delighter',
    classNames: ['delighter', 'started', 'ended'],
    start:      0.75, // default start threshold
    end:        0.75, // default end threshold
    autoInit:   true  // initialize when DOMContentLoaded
  }

#object, #ex1, #ex2{
    visibility: hidden;
}

.navback{
	width:100%;
	 background-color: rgba(154,30,57,0.9);}

@media screen and (min-width: 767px) {
	.cap{
    position:absolute;
    bottom:0px;
    right:0px;
    max-width:350px;
    text-align:center;
    color:#fff;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.cap2 {
    position:absolute;
    bottom:-87px;
    right:0px;
	z-index: 2;
	max-width:350px;
	color:#fff;
	height: 120px;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
	-webkit-transition: .5s;
	transition: .5s;
}

.box a:hover .cap2 {
	bottom: 0;
}

.box a:hover .cap2 h2, h3{
	}

.cap3 {
    position:absolute;
    bottom:-100%;
    right:0px;
	z-index: 2;
	max-width:55%;
	color:#fff;
	height:100%;
	-webkit-transition: .7s;
	transition: .7s;
}

.titse{
    position:absolute;
	width:100%;
    top:0px;
	left:-50px;
	z-index: 2;
	color:#fff;
	-webkit-transition: .5s;
	transition: .5s;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

.box a:hover .cap3 {
	bottom: 0;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.box img{
  cursor: pointer;
  transition-duration: 0.7s;
}


.box a:hover img {
  opacity: 0.8;
  transition-duration: 0.7s;
}

.box a:hover .cap3 h2, h3{
	}

.roll2{
	font-size:10px;
	text-align:left;
	padding:0px 10px 10px 10px;
	color:#999;
	margin-top:-5px;
	}

}

.cap h2, h3{
	font-size:16px;
	padding:10px 10px 5px 10px;
	margin:0px;
	text-align:left;
	}

.cap2 h2, h3{
	font-size:14px;
	padding:10px 10px 10px 10px;
	margin:0px;
	text-align:left;
	}

.cap3 h2, h3{
	font-size:18px;
	padding:10px 10px 10px 10px;
	margin:0px;
	text-align:left;
	}

.cap p{
	font-size:12px;
	text-align:left;
	padding:8px 10px 10px 10px;
	line-height:150%;
	margin:0px;}

.cap2 p{
	font-size:12px;
	text-align:left;
	padding:8px 10px 10px 10px;
	line-height:150%;
	margin:0px;}

.cap3 p{
	font-size:16px;
	text-align:left;
	padding:8px 15px 15px 15px;
	line-height:150%;
	margin:0px;}

.roll{
	font-size:10px;
	text-align:left;
	padding:0px 10px 10px 10px;
	color:#999;
	margin-top:-5px;
	}

.cardt{
	background-color:#333;
	font-size:14px;
	text-align:center;
	font-weight:700;
	color:#FFF;
	padding:10px;
	margin:0;}

.card{
	padding:15px;}

.cardp{	font-size:12px;
	text-align:left;
	line-height:150%;}

.slider {
	position: relative;
}
.slider .slides {
	max-height: 390px;
	overflow: hidden;
	padding: 0;
}
.slider .slides li {
	list-style: none;
}
.slider .flex-control-nav {
	line-height: 1;
}
.slider .slides li a img {
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.slider .slides li a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=60);
}

.bg-scroll-sm {
  height: auto;
  max-height:200px;
  overflow-y: scroll;
}

/**
 *  ui-box-list
 */
.ui-box-list.list-title-middle {
  position: relative;
}
.ui-box-list.list-title-middle .col-right {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

/**
 *  ui-list-headline
 */
.ui-list-headline {
  margin-bottom: 0;
}
.ui-list-headline li span {
  margin-right: 5px;
}
.ui-list-headline li a {
  color: #2D2D2D;
  font-size: 12px;
}
.ui-list-headline li a:hover {
  color: #ed7c99;
}

/**
 *  toppage
 */

.cf{font-size:30px;
    top:47%;
    padding-left:205px;
    font-weight:700;
    color:#fff;
    position: absolute;
    text-align: left;
}

@media screen and (max-width: 767px) {
.cf{font-size:26px;
    top:48%;
    padding-left:35px;
    font-weight:700;
    color:#fff;
    position: absolute;
    text-align: center;
}
}

.atitle{
	text-align:center;
	font-size:16px;
	padding:10px 10px 10px 10px;
	margin:0px;
	background:#9a1e39;
	width:100%;
	color:#FFF;
    line-height:140%;
}
	
.adescription{
	background-image:url(../img/plate2.jpg);
    color:#333;
	text-align:center;
	font-size:14px;
	padding:10px 15px 15px 15px;
	margin:0;
	border:#000 solid double 3px;}

.topb0a{
	background-image:url(../img/topb0a.jpg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	border-bottom:#9a1e39 solid 5px;
	border-top:#9a1e39 solid 5px;
	}

.topb1{
	background-image:url(../img/back-1.jpg);
	background-size:cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	border-bottom:#555 solid 5px;
	border-top:#555 solid 0px;
	width:100%;
	}
@media screen and (max-width: 767px) {
.topb1{
	background-image:url(../img/back-1.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment:local;
	border-bottom:#555 solid 5px;
	border-top:#555 solid 0px;
	}
}
.topb2{
	background:#555;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	border-bottom:#333 solid 5px;
	border-top:#333 solid 5px;
	}

.topb3{
	background-image:url(../img/back-2.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	border-bottom:#555 solid 5px;
	border-top:#555 solid 5px;
	}
@media screen and (max-width: 767px) {
.topb3{
	background-image:url(../img/back-2.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment:local;
	border-bottom:#555 solid 5px;
	border-top:#555 solid 5px;
	}
}
.topb4{
	background:#333;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	border-top:#333 solid 5px;
	}

.topb5{
	background-image:url(../img/back-3.jpg);
	background-size:cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	border-bottom:#555 solid 5px;
	border-top:#555 solid 0px;
	}
@media screen and (max-width: 767px) {
.topb5{
	background-image:url(../img/back-3.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment:local;
	border-bottom:#555 solid 5px;
	border-top:#555 solid 0px;
	}
}

.good {
    width: 150px;
    height: 150px;
    color: #ffffff;
    background-color: #2779bd;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    top: 10%;
    left: 10%;
}

.youtube {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: 30%;
    left: 10%;
	width:50%;
}

.top3{text-align:left;
float:left;}


#myFooter {
    background-color: #3a3f46;
    color: white;
}

#myFooter .row {
    margin-bottom: 60px;
}

#myFooter .info{
    text-align: justify; 
    color: #afb0b1;
}

#myFooter ul {
    list-style-type: none;
    padding-left: 0;
    line-height: 1.7;
}

#myFooter h5 {
    font-size: 18px;
    color: white;
    font-weight: bold;
    margin-top: 30px;
}

#myFooter .logo{
    margin-top: 10px;
}

#myFooter .second-bar .logo a{
    color:white;
    font-size: 28px;
    float: left;
    font-weight: bold;
    line-height: 68px;
    margin: 0;
    padding: 0;
}

#myFooter a {
    color: #d2d1d1;
    text-decoration: none;
}

#myFooter a:hover,
#myFooter a:focus {
    text-decoration: none;
    color: white;
}

#myFooter .second-bar {
    text-align: center;
    background-color: #33373e;
    text-align: center;
}

#myFooter .second-bar a {
    font-size: 22px;
    color: #9fa3a9;
    padding: 10px;
    transition: 0.2s;
    line-height: 68px;
}

#myFooter .second-bar a:hover {
    text-decoration: none;
}

#myFooter .social-icons {
    float:right;
}


#myFooter .facebook:hover {
    color: #0077e2;
}

#myFooter .google:hover {
    color: #ef1a1a;
}

#myFooter .twitter:hover {
    color: #00aced;
}

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

.cap {
    width:100%;
    text-align:center;
    color:#fff;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.cap2 {
    width:100%;
    text-align:center;
    color:#fff;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.cap3 {
    width:100%;
    text-align:center;
    color:#fff;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.cap p{
	font-size:12px;
	text-align:left;
	padding:8px 10px 10px 10px;
	line-height:150%;
	margin:0px;}

.cap2 p{
	font-size:12px;
	text-align:left;
	padding:8px 10px 10px 10px;
	line-height:150%;
	margin:0px;}

.cap2 h2, h3{
	font-size:16px;
	padding:10px 10px 5px 10px;
	margin:0px;
	text-align:left;
	border-bottom:1px solid #CCC;
	}

.cap3 p{
	font-size:12px;
	text-align:left;
	padding:8px 10px 10px 10px;
	line-height:150%;
	margin:0px;}

.cap3 h2, h3{
	font-size:16px;
	padding:10px 10px 5px 10px;
	margin:0px;
	text-align:left;
	border-bottom:1px solid #CCC;
	}

.roll2{
	font-size:10px;
	text-align:left;
	padding:0px 10px 10px 10px;
	color:#999;
	margin-top:-5px;
	}

    #myFooter {
        text-align: center;
    }

    #myFooter .info{
        text-align: center;
    }
.topb0a{
	background-image:url(../img/topb0a2.jpg);
	background-position: center center;
	background-attachment: fixed;
	background-repeat: no-repeat;
	border-bottom:#9a1e39 solid 5px;
	border-top:#9a1e39 solid 5px;
	}

}

.carousel-item {
  height: 80vh;
  min-height: 100%;
  background: no-repeat center center scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

@media screen and (max-width: 767px) {
.carousel-item {
  height:  100vh;
  min-height: 100%;
  background: no-repeat center center scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
}

.col-2dot4,
.col-sm-2dot4,
.col-md-2dot4,
.col-lg-2dot4,
.col-xl-2dot4 {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}
.col-2dot4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}
@media (min-width: 540px) {
    .col-sm-2dot4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}
@media (min-width: 720px) {
    .col-md-2dot4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}
@media (min-width: 960px) {
    .col-lg-2dot4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}
@media (min-width: 1140px) {
    .col-xl-2dot4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

.mgb10{margin-bottom:10px;}
.mgb20{margin-bottom:20px;}
.mgb30{margin-bottom:30px;}
.mgb40{margin-bottom:40px;}
.mgb50{margin-bottom:50px;}
.mgb60{margin-bottom:60px;}

.no-gutter > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}

@media (min-width: 991px) {
.pc {
text-align:left !important;
float:left !important; }

.pc2 {
text-align:right !important;
float:left !important; }

.sp { display: none !important; }

.no-gutter2 > [class*='col-'] {
    padding-right:15px;
    padding-left:0;
}
.no-gutter3 > [class*='col-'] {
    padding-left:15px;
    padding-left:0;
}
}

@media (max-width: 990px) {
.pc { display: none !important; }
.pc2 { display: none !important; }

.no-gutter2 > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}

.no-gutter3 > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}

}

.backg{
    background: #199804;
	padding-bottom:0px;
	margin-bottom:0px;}

/* CUSTOM STYLES
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/*span {
	display: block;
	font-size: .75em;
	font-style: italic;
	position: relative;
	top: 5px;
}*/

.multi {
	display: inline;
	top: 0;
	left: 3px;
}

.programs,
.courses {
	margin: 8px 0 0 0;
}

.programs {
	font-size: 0;
	margin-bottom: 15px;
}

.programs button {
	outline: none;
	margin-bottom: 0;
	background: whitesmoke;
	width: 33.333%;
	height: auto;
	font-weight: normal;
	border: 1px solid #ededed;
	color: #000000;
	font-size: 14px;
	padding: 4px 0;
	text-shadow: 0px 0px 0px #2f6627;
}

.programs button:hover {
	background: #99cfe0;
}

.programs button.programs-filter-btn-active,
.programs button.programs-sort-btn-active {
	box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5) inset, 0px 0px 1px transparent;
	background: #3a9fbf;
	color: white;
}

.courses {
	margin-bottom: 15px;
	font-size: 0;
}

.courses li {
	text-align: center;
	font-size: 14px;
	display: inline-block;
	position: relative;
　  overflow: hidden;
}

.courses a {
	display: block;
	margin: 0px 0;
	padding-top: 0px;
	background: whitesmoke;
	color: black;
	border: 1px solid white;
	transition: all .4s ease;
}

.courses a:hover {
	background: #99cfe0;
}

.p, .p a {
  font-family: Arial, sans-serif;
  font-size: 14px;
  text-align: center;
}


/* MEDIA QUERIES STYLES
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media only screen and (min-width: 750px) {

	.container {
		width: 100%;
	}

	.courses a {
		background: #EBEBEB;
		border: none;
	}

	h4 {
		width: 50%;
		margin-top: 12px;
	}

	img {
		margin-bottom: 0;
	}

	.programs {
		margin-bottom: 0;
	}

	.programs button {
		width: 12.5%;
		margin-bottom: 15px;
	}

	.courses li {
		padding-left:-15px;
		padding-right:-15px;
	}

}

/* Effect works */

.imghov1 {
	overflow:hidden;
	position:relative;
	vertical-align: top;
}

.imghov1 img {
	display: block;
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
.imghov1 img:hover {
	transform: scale(1.1);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}

.imghov1 .caption {
	font-size:20px;
	text-align:center;
	color:#fff;
	padding-top:30%;
}

.imghov1 .mask {
	width:			100%;
	height:			100%;
	position:		absolute;
	top:			0;
	left:			0;
	opacity:		0;	/* 表示させない */
	background-color:	rgba(0,0,0,0.4);
	-webkit-transform:	rotateY(-180deg);
	transform:		rotateY(-180deg);
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.6s ease;
}
.imghov1:hover .mask {
	-webkit-transform:	rotateY(0deg);
	transform:		rotateY(0deg);
	opacity:		1;	/* ホバーで表示する */
}

.imghov2 {
  position: relative;
  overflow: hidden;
  vertical-align: top;
  transition-duration: 1.0s;	/*変化に掛かる時間*/
}

.imghov2:hover .transform1{
	transform: scale(1.2);	/*画像の拡大率*/
	transition-duration: 1.0s;	/*変化に掛かる時間*/
    overflow: hidden;
}

.imghov2 .caption2 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(239,151,1,.6);
  -webkit-transition: .7s;
  transition: .7s;
  opacity: 0;
}
.imghov2:hover .caption2 {
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
  opacity: 1;
}

.imghov2 h3 {
  padding: 20% 0 5px;
  color: #fff;
  font-size: 24px;
  text-align: center;
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
}
.imghov2 p {
  color: #fff;
  text-align: center;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
}

/*
Back to top button 
*/

.scrollTop {
    position: fixed;
    right: 2%;
    bottom: 4%;
    opacity: 0;
    transition: all 0.4s ease-in-out 0s;
}
 
.scrollTop a {
           
}
.scrollTop a:hover{
}

/*
Back to top button 
*/
#back-top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #a30239;
  opacity: 0.7;
}
#back-top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#back-top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 10px;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

.brh2{
	text-align:center;
	font-size:22px;
	padding-top:50px;
	padding-bottom:30px;
	color:#FFF;}

.wline{
	border:3px #FFFFFF solid;}

/* CSS used for positioning the footers at the bottom of the page. */
/* You can remove this. 
html{
    height: 100%;
}

body{
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    height: 100%;
}

.content{
   flex: 1 0 auto;
   -webkit-flex: 1 0 auto;
   min-height: 200px;
}

#myFooter{
   flex: 0 0 auto;
   -webkit-flex: 0 0 auto;
}*/

.facebook-wrapper {
    max-width: 500px;
    margin: 0 auto;
}
.facebook-wrapper > .fb-page {
    width: 100%;
}
.facebook-wrapper > .fb-page > span,
.facebook-wrapper iframe {
    width: 100% !important;
}

.btn-primary {
  color: #fff;
  background-color: rgba(0,98,204,0.7);
  border-color: #005cbf;
  margin-left:10px;
  margin-top:5px;
  font-size:14px;
}

.waku{border:#ccc double 3px; padding:15px; margin-bottom:20px;}
.waku2{border:#ccc solid 2px; padding:15px; margin-bottom:20px; border-radius: 15px;}

/*以下、②左側のコメント*/
.waku2 {
  width: 100%;
  margin: 10px 0;
  overflow: hidden;
}

.waku2 .faceicon {
  float: left;
  margin-right: -50px;
  width: 40px;
}

.waku2 .faceicon img{
  width: 100%;
  height: auto;
  border-radius: 50%;
}
.chatting {
      position: relative;
      background:#4fa85b;
      box-shadow: 0px 0px 0px 5px #4fa85b;
      border: dashed 2px #ffffff;
      padding: 10px 15px;
      color: #454545;
      width: 100%;
}

.says {
  display: inline-block;
  position: relative; 
  margin: 0 0 0 0px;
  padding: 0px;
  width: 100%;
  border-radius: 12px;
  background: #fff;
}

.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 30px; 
  left: -19px;
  border: 8px solid transparent;
  border-right: 18px solid #fff;
  -webkit-transform: rotate(35deg);
  transform: rotate(35deg);
}
.says p {
  margin: 0;
  padding: 15px;
  line-height:170%;
}

.says2 {
  display: inline-block;
  position: relative; 
  margin: 0 0 0 0px;
  padding: 0px;
  width: 100%;
  border-radius: 12px;
  background: #fff;
}

.says2:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 30px; 
  right: -19px;
  border: 8px solid transparent;
  border-left: 18px solid #fff;
  -webkit-transform: rotate(-35deg);
  transform: rotate(-35deg);
}
.says2 p {
  margin: 0;
  padding: 15px;
  line-height:170%;
}

@media (max-width: 767px) {
.waku{border:#ccc double 3px; padding:15px; margin-bottom:20px;}
.says:after {
  content: "";
  display:none;
  position: absolute;
  top: 30px; 
  left: -19px;
  border: 8px solid transparent;
  border-right: 18px solid #fff;
  -webkit-transform: rotate(35deg);
  transform: rotate(35deg);
}
.says2:after {
  content: "";
  display:none;
  position: absolute;
  top: 30px; 
  right: -19px;
  border: 8px solid transparent;
  border-left: 18px solid #fff;
  -webkit-transform: rotate(-35deg);
  transform: rotate(-35deg);
}
}
.wakut{font-size:20px; border-bottom:1px solid #ccc; padding-bottom:10px; margin-bottom: 15px; letter-spacing:2px;}
.wakup{padding:0; margin: 0; font-size:16px;}

.btn-primary2:hover {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary2:focus, .btn-primary2.focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary2.disabled, .btn-primary2:disabled {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary2:not(:disabled):not(.disabled):active, .btn-primary2:not(:disabled):not(.disabled).active,
.show > .btn-primary2.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary2:not(:disabled):not(.disabled):active:focus, .btn-primary2:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary2.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.fot{color: #fff; font-size:20px; letter-spacing:1px;}
.fop{color: #fff; font-size: 16px; line-height:150%;}

.footer-nav {
    top: 0;
	height:auto;
    width: 100%;
    margin: 0;
    padding-right:0px;
	padding-left:0px;
    list-style: none;
	float:left;
    font-size: 14px;
}

.footer-nav li {
    text-indent: 10px;
    line-height: 40px;
}

.footer-nav li a {
    display:block;
    text-decoration: none;
    color: #fff;
}

.footer-nav li a:hover {
    display:block;
    text-decoration: none;
    color: #ccc;
	transition: 0.7s;
}

.footer-nav li a:active,
.footer-nav li a:focus {
    text-decoration: none;
}

.omoi{line-height:200%; letter-spacing:1px; font-size:18px; padding-bottom:40px;}
.signature{line-height:170%; letter-spacing:1px; font-size:22px; text-align: right;}

.title1{font-size:20px; padding:60px 0 20px 0; border-bottom:1px #666 solid; margin:0 0 40px 0; box-sizing: border-box; text-align: left;}    

@media (max-width: 767px) {
.title1{font-size:20px; padding:60px 0 20px 0; border-bottom:1px #666 solid; margin:0 0 40px 0; box-sizing: border-box; text-align: left;}    
}

.fly {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .5s;
    transition: all .5s;
    margin: 10px 0 0 0;
}
.fly:hover {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
}

section table	{ width: 100%; }
section th, section td	{ padding: 10px; border: 1px solid #ddd; }
section th	{ background: #f4f4f4; }
 
/*----------------------------------------------------
  .demo02
----------------------------------------------------*/
.demo02 {padding-top:10px;  border-collapse: collapse; border-spacing: 0;}
.demo02 th	{ width: 16.666%; }
.demo02 td	{ text-align: center; }
.demo02 td:first-child	{ text-align: left; }
@media only screen and (max-width: 800px) { 
	.demo02 { 
		display: block; 
		width: 100%; 
		margin: 0;
	}
	.demo02 thead{ 
		display: block; 
		float: left;
		overflow-x:none;
	}
	.demo02 tbody{ 
		display: block; 
		width: auto; 
		overflow-x: auto; 
		white-space: nowrap;
	}
	.demo02 th{ 
		display: block;
		width:auto;
	}
	.demo02 tbody tr{ 
		display: inline-block; 
		margin: 0 -3px;
	}
	.demo02 td{ 
		display: block;
	}
}

.tbl-r03 {
    width: 100%;
  }

.tbl-r03 th {
  background: #9a1e39;
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
  width: 16.666%;
}
.tbl-r03 td {
  border: solid 1px #ccc;
  padding: 10px;
}

@media screen and (max-width: 800px) {
  .tbl-r03 {
    width: 100%;
    font-size: 12px;
  }
.tbl-r03 th {
  width:auto;
    font-size: 12px;
}
  .tbl-r03 tr {
    display: block;
    float: left;
  }
  .tbl-r03 tr td, 
  .tbl-r03 tr th {
    border-left: none;
    display: block;
    height: 50px;
      font-size: 12px;
  }
  .tbl-r03 thead {
    display: block;
    float: left;
    width: 20%;
  }
  .tbl-r03 thead tr {
    width: 100%;
  }
  .tbl-r03 tbody {
    display: block;
    float: left;
    width: 80%;
    text-align: center;
  }
  .tbl-r03 tbody tr {
    width: 50%;
  }
  .tbl-r03 tr td + td {
    border-left: none;
  }
  .tbl-r03 tbody td:last-child {
    border-bottom: solid 1px #ccc;
  }
}

.faq {
    background: #fff;
    padding:10px;
    margin-bottom:0px;
}

.faq-subtitle {
  font-size:24px;
}

.faq-header {
  background-color:none;
  font-size:16px;
}

.faq-header a{
  color: #333333;
  background-color:none;
  text-decoration: none;
  font-size:16px;
}

.faq-header a:hover{
  color: #666;
  background-color:none;
  text-decoration: none;
}

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

.faq {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: none;
  background-clip: border-box;
  border-radius:none;
  line-height:180%;
}

.faq-body {
    font-size: 16px;
    color: #333;
    border: 1px #ccc solid;
    padding: 10px;
    margin-bottom: 10px;
    margin-top:10px;
}

.sns-f-f{
	background:#3b5998;
	color:#FFF;
	padding:10px;
	font-size:20px;}

.sns-f-f:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:20px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}	

.sns-f-t{
	background:#55acee;
	color:#FFF;
	padding:10px;
	font-size:20px;}

.sns-f-t:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:20px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}	

.sns-f-i{
	background:#3f729b;
	color:#FFF;
	padding:10px;
	font-size:20px;}
	
.sns-f-i:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:20px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}	

.sns-f-i2{
	background:#CF2E92;
	color:#FFF;
	padding:10px;
	font-size:20px;}
	
.sns-f-i2:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:20px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}	

.sns-y-i{
	background:#ff0000;
	color:#FFF;
	padding:10px;
	font-size:20px;}
	
.sns-y-i:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:20px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}

.red{color:#9a1e39;}

#footerFloatingMenu {
    display: block;
    width: 100%;
    position: fixed;
    left: 0px;
    bottom: -6px;
    z-index: 50;
    text-align: center;
    padding: 0 auto;
	margin:0;
    background-color: #ffffff;
	height:50px;
    opacity: 0;
    transition: all 0.65s;
}

#footerFloatingMenu.isActive {
  opacity: 1;
  transition: all 0.65s;
}

#footerFloatingMenu a{
	font-size:16px;
	text-decoration:none;
	color:#FFF;	
} 

.sns-f-f-2{
	background:#3b5998;
	color:#FFF;
	padding:10px;
	font-size:20px;}

.sns-f-f-2:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:16px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}	

.sns-f-t-2{
	background:#55acee;
	color:#FFF;
	padding:10px;
	font-size:20px;}

.sns-f-t-2:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:16px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}	

.sns-f-i-2{
	background:#3f729b;
	color:#FFF;
	padding:10px;
	font-size:20px;}
	
.sns-f-i-2:hover{
	background:#a30239;
	color:#f6daa8;
	padding:10px;
	font-size:16px;
    -webkit-transition: all .5s;
    transition: all .5s;
	}

.googlemaps{width:100%; height:250px;}

@media(min-width:991px) {
	#footerFloatingMenu {
        display: none;
    }
}

@media(max-width:990px) {
.footersns {
        display: none;
    }

.googlemaps{width:100%; height:300px; padding-bottom:40px; padding-top:-50px;}

#back-top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 50px;
  background: #a30239;
  opacity: 0.7;
}
#back-top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#back-top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 15px;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
}

.square_contents {
  display: flex;
  flex-wrap: wrap;
  width:100%;
}
 
.square_contents div {
  position: relative;
  width:100%;
  background: #ffb6c1;
  margin:0;
}
 
.square_contents div::before {
  content: "";
  display: block;
  padding-top: 100%;
}
 
.square_contents p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

@media (min-width: 992px) {
.col-lg-padding{padding-left:50px; padding-right:50px;}
}
@media (min-width: 1140px) {
.col-lg-padding{padding-left:50px; padding-right:50px;}
}
@media (min-width: 1500px) {
.col-lg-padding{padding-left:50px; padding-right:50px;}
}
@media (min-width: 1700px) {
.col-lg-padding{padding-left:150px; padding-right:150px;}
}

.fb{font-weight:bold;}
