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

html{font:100% Verdana, sans-serif,meiryo,"メイリオ", Osaka, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN";}
body{-webkit-text-size-adjust:100%;font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴシック ProN", "Hiragino Kaku Gothic ProN", Meiryo, Avenir-Medium, Avenir, Arial;}
a{cursor:pointer;text-decoration:underline;}
a:link { color: #5b4487;}
a:hover {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";-webkit-transition: 0.3s ease-in-out;  -moz-transition: 0.3s ease-in-out;  -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out;}
a:hover img { opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";-webkit-transition: 0.3s ease-in-out;  -moz-transition: 0.3s ease-in-out;  -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out;}
body.home #header a{-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
.br-sp { display: none;}

/* header */
#home header { width: 100%;position: fixed; height:110px; background: none; top: 0; left: 0; z-index: 500; transition: .3s;}
#home header .head-content nav li a{font-size:16px; font-weight: bold; color:#000;position:relative;display:inline-block;}
#home header .head-content{width:1180px;margin:0 auto;position:relative; height: 110px; transition: .3s;}
#home header .head-content nav ul { margin: 0 auto 0 auto; width:100%; text-align: center; transition: .3s;}
#home header .head-content nav li{float:none; display: inline-block;}
#home header .head-content nav li:last-child { margin-right: 0;}
.is-animation {height: 40px;}
#home header .head-content h1.logo { opacity: 0; transition: .3s; display: none;}
#home header.is-animation {background-color:#FFF!important;position:fixed; height:110px; top:0;box-shadow:0 0 20px rgba(0,0,0,0.25);}
#home header.is-animation .head-content { height: 110px;}
#home header.is-animation .head-content h1.logo {width:280px;margin:auto;position:absolute;left:0;right:0;top:22px;z-index: 50; color: #000; display: inherit;opacity:1; transition: .3s; }
/* #home header.is-animation .head-content nav ul { margin: 0 auto 20px auto; width:100%; text-align: center;} */

header{width:100%;background:#000;position:fixed; top:0; z-index: 20; }
.head-content{width:1120px;height:120px;margin:0 auto;position:relative;}
.head-content nav li{float:left;}
header nav{width:100%;position:absolute;bottom:25px; z-index: 50;}
.nav-left li{margin-right:30px;}
.head-content nav li a{font-size:18px; font-weight: bold; color:#FFF;position:relative;display:inline-block; text-decoration: none;}
.head-content nav li a:after{position:absolute;bottom:-8px;left:0;content:'';width:100%;height:2px;background:#5b4487;opacity: 0;visibility: hidden;transition:0.3s;}
.head-content nav li a:hover:after{bottom:-4px;opacity:1;visibility:visible;}
.head-content .drawer-hamburger{display:none;}

.extra { font-weight: bold; font-size: 120%; color: #FF0004;}

/* page-template */
body#home.page-template header,
body#home.page-template-defalut header,
body#home.post-template-default header { width: 100%;position: fixed; height:110px; background: none; top: 0; left: 0; z-index: 500; transition: .3s; background: #FFF;}
body#home.page-template main,
body#home.page-template-default main,
body#home.post-template-default main { padding-top: 110px;}

/* post-tampalte */
.postBox h1 { font-weight: 700; font-size: 150%; text-align: center;; margin: 1em auto 2em auto; letter-spacing: 0.015em; position: relative; padding-top: 1em;}
.postBox h1:before { position: absolute; content: ''; background: #000; width: 46px; height: 5px; top: 0; left: 0; right: 0; text-align: center; margin: 0 auto;}
.postBox h2 { font-weight: 700; font-size: 130%; text-align: left; margin: 1.5em 0 1.5em 0; color: #5bc9bd; border-bottom: 1px solid #5bc9bd; padding-bottom: 0.5em;}
.postBox h3 { font-weight: 700; font-size: 120%; text-align: left; margin: 1.5em 0 1.5em 0; color: #ff94cc; border-bottom: 1px solid #ff94cc;  padding-bottom: 0.5em}
.postBox h4 { font-weight: 700; font-size: 110%; text-align: left; margin: 1.5em 0 1.5em 0; color: #dac8b0; border-bottom: 1px solid #dac8b0;  padding-bottom: 0.5em}
.postBox img { text-align: center; margin: 1em auto; max-width: 680px; width: 100%; height: auto; margin-bottom: 1em;}
.postBox p { text-align: left; margin-bottom: 1em;}

/* 共通 */
.content{width:1180px;margin:0 auto;}

/* topページ */
.top-menu { padding-top: 40px;}
.top-menu-list{margin-bottom:65px;}
.top-menu-list li{margin-left:50px;float:left;}
.top-menu-list li:nth-of-type(1){margin-left:0;}
.top-menu-list li a{width:360px;height:280px;display:block;overflow:hidden;position:relative;}
.top-menu-list li a:before{content:"";width:100%;height:100%;display:block;background:url() no-repeat center center;background-size: cover; webkit-transition: all .3s ease-out;-moz-transition:all .3s ease-out;-ms-transition:all .3s ease-out;transition:all .3s ease-out;}
.top-menu-list li:nth-of-type(1) a:before{background-image: url(../images/top/content-listIMG01.jpg);}
.top-menu-list li:nth-of-type(2) a:before{background-image: url(../images/top/content-listIMG02.jpg);}
.top-menu-list li:nth-of-type(3) a:before{background-image: url(../images/top/content-listIMG03.jpg);}
.top-menu-list li a:hover:before{-moz-transform: scale(1.05);-webkit-transform: scale(1.05);-ms-transform: scale(1.1);transform: scale(1.05);}
.top-menu-list a span{width:90%;height:auto;margin:auto;line-height:58px;background:rgba(158,114,65,0.85);display:block;color:#fff;text-align:center;position:absolute;left:0;right:0;bottom:20px;}
.top-news-title{margin-bottom:30px;text-align:center;position:relative;}
.top-news-title:before{content:"";display:block;border-top:solid 1px black;width: 100%;height:1px;position:absolute;top:50%;z-index:1;}
.top-news-title span{padding:0 20px;display:inline-block;background:#EFEFEF;position:relative;z-index:5;}
.top-news-title img{width:160px;height:auto;}
.top-news-list{margin-bottom:55px;}
.top-news-list li{width:100%;margin-bottom:20px;display:block;overflow:hidden;}
.top-news-list a{width:95%;height:30px;display:block;font-size:15px;color:#000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.top-news-list a .date{width:105px;height:100%;margin-right:30px;display:inline-block;line-height:30px;background:#525252;font-size:12px;text-align:center;color:#fff;}
.foot-content{width:100%;height:440px;background:url(../images/top/foot-contentIMG.jpg) no-repeat left top;background-size:cover;position:relative;}
.foot-content-box{width:440px;height:360px;margin:auto;padding:22px;position:absolute;background:rgba(0,0,0,0.45);top:0;bottom:0;left:0;right:0;border:1px solid rgba(255,255,255,0.85);box-sizing:border-box;}
.foot-content-box h3{margin:18px 0 30px;text-align:center;}
.foot-content-box h3 img{width:auto;height:50px;}
.foot-content-box p{font-size:14px;color:#fff;line-height:2.0;}

/* main-slider */
.Opening {
	width: 100%;
	height: 100vh;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 2rem;
}
.Opening .MainTxt { width: 80vw; display: flex; justify-content: center; z-index: 100; margin-top: 2rem; animation: fadeIn 2s ease 0s 1 normal;-webkit-animation: fadeIn 2s ease 0s 1 normal;}
.Opening #scroll { z-index: 100; animation: fadeInDown 500ms ease 0s 1 normal;-webkit-animation: fadeInDown 500ms ease 0s 1 normal;}
.fa-arrow-alt-circle-down { color: #000; font-size: 50px;}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@keyframes fadeInDown {
    0% {opacity: 0; transform: translateY(-40px); }
    100% {opacity: 1; transform: translateY(0px);}
}
@-webkit-keyframes fadeInDown {
    0% {opacity: 0; transform: translateY(-40px); }
    100% {opacity: 1; transform: translateY(0px);}
}
.Opening .MainTxt img { padding: 10px;}

/* Background */

.js-opening-bg {
	opacity: 0;
	transition: opacity .5s;
	position: absolute;
	width: 100%;
	height: 100vh;
	z-index: 0;
	top: 0;
}
.js-opening-bg.slick-slider {
	opacity: 1;
}
.js-opening-bg li {
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	position: relative;
}
.js-opening-bg li picture {
	width: 100vw;
	height: 100vh;
}
.js-opening-bg li picture img {
	width: 100vw;
	height: 100vh;
	object-fit: cover;
}

/* SP */
@media screen and (max-width: 768px) {
	.js-opening-bg li picture {
		width: 100vh;
		position: absolute;
		top: 0;
	}
	.js-opening-bg li picture img {
		width: 100vh;
	}
	.slide-animation picture {
		animation: r 10s 0s linear;
	}
	.slide-animation:nth-child(even) picture {
		animation: l 10s 0s linear;
	}
	@keyframes r {
		0%   { left: -70vw; }
		100% { left: 0; }
	}
	@keyframes l {
		0%   { left: 0; }
		100% { left: -70vw; }
	}
}

/* PC */
@media screen and (min-width: 769px) {
	.slide-animation {
		animation: fadezoom 12s 0s linear;
		transform: scale(1);
	}
	.slide-animation picture {
		animation: none;
	}
	@keyframes fadezoom {
		0% {
			transform: scale(1);
		}
		100% {
			transform: scale(1.2);
		}
	}
}

.Opening ul li{position: relative;overflow: hidden;width: 100%;text-align: center;}
.Opening ul li img.Opening__text{
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform:translate(-50%, -50%);
  z-index: 9;
}
.Opening ul li span {}
.Opening ul li span img.Opening__img{max-width: inherit;width: 100%; height: auto;}

#about h2:before,
#equipment h2:before,
#service h2:before,
#sample h2:before,
#access h2:before { content: '';position: absolute;top: -30px;display: inline-block;width: 5%;height: 5px;left: 50%;transform: translateX(-50%);background-color: #FFF;}

#terms h2:before,
#reserve h2:before,
#news h2:before{ content: '';position: absolute;top: -30px;display: inline-block;width: 5%;height: 5px;left: 50%;transform: translateX(-50%);background-color: #000;}

#about h2 span,
#equipment h2 span,
#service h2 span,
#sample h2 span,
#reserve h2 span,
#access h2 span,
#terms h2 span,
#news h2 span{ display: none;}
/* h3 {font-family: 'Dancing Script', cursive;  } */

.ico-phone { background: url(../images/ico_phone.png) no-repeat left top 4px; background-size: 24px 17px; padding-left: 30px;}
.ico-mail { background: url(../images/ico_mail.png) no-repeat left top 4px; background-size: 24px 17px; padding-left: 30px;}
.ico-phone-w { background: url(../images/ico_phone_w.png) no-repeat left top 4px; background-size: 24px 17px; padding-left: 30px;}
.ico-mail-w { background: url(../images/ico_mail_w.png) no-repeat left top 4px; background-size: 24px 17px; padding-left: 30px;}
.txt120 { font-size: 120%; font-weight: 500;}

/* bnr */
#bnr { width: 100%;display: block;position: relative;z-index: 1; /* background: #f3f3f3; */ }
#bnr .wrapbox { width: 840px; text-align: center; margin: 0 auto; padding: 60px 0;}
#bnr .wrapbox img { vertical-align: top;}
#bnr h3 { border: 2px solid #000; padding: 10px 20px; background: #FFF; width: 300px; text-align: center; font-weight: bold; margin: 0 auto 30px auto; font-size: 21px; letter-spacing: 0.1em;}

/* about */
#about { width: 100%;display: block;position: relative;z-index: 1; background: #333;}
#about:after { content: "";position: absolute; z-index: -1; top: 0; left: 0; bottom: 0; right: 0; background: url(../images/about_bg.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; opacity: 0.4;}
#about h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_about.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#about .txtbox {border-bottom: 2px solid rgba(0,0,0,0.1); padding: 50px; background: rgba(119,92,170,0.5); color: #FFF;}
#about .txtbox a { color: #FFF;}
#about .txtbox p { text-align: left; font-size: 18px; font-weight: 500; line-height: 2.1em;}
#about h3 { font-family: 'Dancing Script', cursive; font-size: 27px;font-weight: bold; margin-bottom: 20px; letter-spacing: 0.25em;}
#about h4 { font-size: 24px; font-weight: bold; text-align: left; margin-bottom: 20px;} 
#about .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}

/* before_after */
#before_after { width: 100%;display: block;position: relative;z-index: 1; background: #FFF;}
#before_after:after { content: "";position: absolute; z-index: -1; top: 0; left: 0; bottom: 0; right: 0; background: url(../images/before_after_bg.jpg) no-repeat center top; background-size: cover; background-attachment: fixed; opacity: 0.4;}
#before_after .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}
#before_after h3 { border: 2px solid #000; padding: 10px 20px; background: #FFF; width: 360px; text-align: center; font-weight: bold; margin: 0 auto 30px auto; font-size: 21px; letter-spacing: 0.1em;}
#before_after p { color: #000;}
#before_after .twentytwenty-wrapper { min-height: 747px; margin-bottom: 20px;}

/* equipment */
#equipment { width: 100%;}
#equipment h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_equipment.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#equipment h3 { border: 2px solid #000; padding: 10px 20px; background: #FFF; width: 360px; text-align: center; font-weight: bold; margin: 0 auto 30px auto; font-size: 21px; letter-spacing: 0.1em;}
#equipment .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}

#equipment .floor { width: 100%; text-align: center; padding: 40px 0 90px 0; background: #b8a2e2;
background: -moz-linear-gradient(45deg, #775caa 1%, #b8a2e2 100%);
background: -webkit-linear-gradient(45deg, #775caa 1%,#b8a2e2 100%);
background: linear-gradient(45deg, #775caa 1%,#b8a2e2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#775caa', endColorstr='#b8a2e2',GradientType=1 );}
#equipment .floor img { width: 100%; height: auto;}
#equipment .floor ul { width: 940px; text-align: center; margin: 15px auto 0 auto;}
#equipment .floor li { width: 50%; float: left; text-align: left; font-size: 17px; list-style: disc; color: #FFF; line-height: 1.5;}

#equipment .view { width: 100%; background: #FFF; text-align: center; padding:  0 0 90px 0;}
#equipment .view p { margin-bottom: 15px;}
#equipment .view .studio-list-box ul {max-width: 1120px; margin: 0 auto; padding: 0; list-style: none; text-align: center; vertical-align: top;}
#equipment .view .studio-list-box li { width: 280px; height: 280px;  overflow: hidden; position: relative; float: left; margin: 0; padding: 0; list-style: none;}
#equipment .view .studio-list-box li img { vertical-align: top; width: auto; height: auto; margin: 0; padding: 0;}
#equipment .view .studio-list-box li .mask { display:block; width:280px;height:280px;content: ''; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0,0,0,0.5);opacity: 0;color: #fff;display:flex;align-items: center;text-align: center;-webkit-transition:	all 0.6s ease;transition:all 0.6s ease; padding: 1em; z-index: 100!important; box-sizing: border-box;}
#equipment .view .studio-list-box li:hover .mask { opacity: 1;}
#equipment .view .studio-list-box li a { outline: none; vertical-align: top; margin: 0; padding: 0; text-decoration: none; color: #FFF;}
#equipment .view .studio-list-box li a:hover { background: rgba(0,0,0,0.5);}

#equipment .gadget { width: 100%;  text-align: center; padding: 0 0 90px 0; background: #775caa;
background: -moz-linear-gradient(45deg, #002b43 1%, #22709d 100%);
background: -webkit-linear-gradient(45deg, #002b43 1%,#22709d 100%);
background: linear-gradient(45deg, #002b43 1%,#22709d 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002b43', endColorstr='#22709d',GradientType=1 );}
#equipment .gadget p { margin-bottom: 15px;}
#equipment .gadget p.desc { margin-bottom: 15px; color: #FFF;}
#equipment .gadget .gadget-list-box ul {width: 100%;  margin: 0 auto; padding: 0; list-style: none; text-align: center; vertical-align: top;}
#equipment .gadget .gadget-list-box{padding:60px;background:rgba(255,255,255,0.1);}
#equipment .gadget .gadget-gallery li {box-shadow:0 0 10px rgba(0,0,0,0.20); width: 235px; height: 230px; list-style: none; float: left; background: #FFF; padding: 10px; margin: 0 20px 20px 0;}
#equipment .gadget .gadget-gallery li img { width: 235px; height: auto; margin-bottom: 10px;}
#equipment .gadget .gadget-gallery li a { outline: none;}
#equipment .gadget .gadget-gallery li:nth-child(4n) { margin-right: 0;}
#equipment .gadget .gadget-gallery li:last-child { margin-bottom: 0;}

#equipment .free { width: 100%;background: #FFF; text-align: center; padding:  0 0 90px 0;}
#equipment .free img { width: 540px;}
#equipment .free .txtbox { width: 540px; float: left; text-align: left; }
#equipment .free p { margin-bottom: 15px; }
#equipment .free h4 { font-weight: bold; font-size: 16px; padding: 10px 0;}
#equipment .free .freebox {float: right;width: 540px;}
#equipment .free li { width: 100%; text-align: left; outline-style: none; margin-bottom: 0px; border-bottom: 1px solid #CCC;}

/* service */
#service { width: 100%;background: #775caa;
background: -moz-linear-gradient(45deg, #775caa 1%, #b8a2e2 100%);
background: -webkit-linear-gradient(45deg, #775caa 1%,#b8a2e2 100%);
background: linear-gradient(45deg, #775caa 1%,#b8a2e2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#775caa', endColorstr='#b8a2e2',GradientType=1 );}
#service h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_service.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#service h3 { border: 2px solid #000; padding: 10px 20px; background: #FFF; width: 300px; text-align: center; font-weight: bold; margin: 0 auto 30px auto; font-size: 21px; letter-spacing: 0.1em;}
#service .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}
#service .wrapbox .form { margin-bottom: 40px;}
#service #fice p { font-size: 19px; text-align: center; margin: 0 auto 1em; display: block; line-height: 1.4;}
#service #fice p span { font-weight: bold; font-size: 120%; color: #FFF;}
#service #fice a { font-size: 27px; color: #FFF;}

.onlySP { display: none;}

/* reserve */
#reserve { width: 100%; background: #FFF;}
#reserve h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_reserve.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#reserve h3 { border: 2px solid #000; padding: 10px 20px; background: #FFF; width: 300px; text-align: center; font-weight: bold; margin: 0 auto 30px auto; font-size: 21px; letter-spacing: 0.1em;}
#reserve .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}
#reserve .wrapbox .form { margin-bottom: 90px;}
#reserve a { font-weight: bold;}
.cal_bg { max-width: 1120px; height: 680px;background: url(../images/ifram_bg.png) no-repeat center top; padding: 50px 0;}
.cal_head,
.cal_bottom { display: none;}
.cal_wrapper {max-width: 1020px;min-width: 580px;margin: 2.0833% auto;}
.googlecal {position: relative;padding-bottom: 53%;height: 0;}
.googlecal iframe {position: absolute;top: 0;left: 0;width: 100% !important;height: 100% !important;}

/* news */
#news { width: 100%; background: #FFF; padding: 40px 0;}
#news h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_news.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#news .wrapbox { width: 860px; text-align: center; margin: 0 auto; padding: 40px 0;}

/* article */
.article-box {
	width: 100%;
    display: block;
}

.article-box article {
	display: block;
    width: 100%;
    border-bottom: 1px dotted #CCC;
    padding: 20px;
}

.article-box article a {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 15px;
    text-decoration: none;
}

.article-box article a .img_wrap {
    display: inline-block;
	max-width: 200px;
    max-height: 200px;
	width: 100%;
	overflow: hidden;
}

.article-box article a .img_wrap img {
	width: 100%;
	height: auto;
	vertical-align: top;
	line-height: 0;
}

.article-box article a .text_wrap {
    display: inline-block;
    text-align: left;
    width: calc(100% - 220px);
}

.article-box article a .text_wrap time {
	padding-top: 0;
	display: block;
	color: #666;
}
.article-box article a .text_wrap h3 {
	padding-top: 10px;
	display: block;
	font-weight: bold;
	font-size: 18px;
    color: #000;
    line-height: 1.5;
}

.bnr-flex { display: flex; flex-wrap: wrap; justify-content: center;}
.bnr-flex a { display: inline-block; width: 50%; padding: 2.5%;}

/* access */
#access { width: 100%; background: #775caa;
background: -moz-linear-gradient(45deg, #775caa 1%, #b8a2e2 100%);
background: -webkit-linear-gradient(45deg, #775caa 1%,#b8a2e2 100%);
background: linear-gradient(45deg, #775caa 1%,#b8a2e2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#775caa', endColorstr='#b8a2e2',GradientType=1 );}
#access h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_access.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#access h3 { width: 200px; text-align: left; padding: 10px 0;}
#access h3 img { width: 200px!important; height: auto!important;}
#access .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}
#access .wrapbox a { color: #FFF;}
#access .wrapbox img { width: 840px; height: 540px;} 
#access .wrapbox .txtbox { text-align: center; margin: 0 auto; width: 840px;}
#access .wrapbox .txtbox p { margin-bottom: 10px; text-align: left; color: #FFF; line-height: 1.5;}
#access .wrapbox .btnMap { text-align: left; margin-top: 20px;}
#access .wrapbox .btnMap a { display: block; font-weight: bold; color: #FFF; background: #5b4487; font-size: 18px; letter-spacing: 0.2em; border-radius: 30px; width: 320px; height: 50px; line-height: 50px; text-align: center;text-decoration: none; position: relative;}
#access .wrapbox .btnMap a:before { position: absolute; content: ''; background: url(../images/icon_map.png) no-repeat left top; left: 13px; top: 13px; width: 24px; height: 24px; background-size: 24px 24px;}
.btn { text-align: center; margin: 0 auto;}
.btn a { display: block; font-weight: bold; color: #FFF; background: #5b4487; font-size: 18px; letter-spacing: 0.2em; border-radius: 30px; width: 320px; height: 50px; line-height: 50px; text-align: center;text-decoration: none; position: relative; margin: 0 auto 20px auto;}
#access .wrapbox .btnBabel { text-align: left; margin-top: 20px;}
#access .wrapbox .btnBabel img { width: auto; height: 18px; padding: 16px 70px 0 70px;}
#access .wrapbox .btnBabel a { display: block; font-weight: bold; color: #FFF; background: #5bc9bd; font-size: 18px; letter-spacing: 0.2em; border-radius: 30px; width: 320px; height: 50px; line-height: 50px; text-align: center;text-decoration: none; position: relative;}

/* terms */
#terms { width: 100%;background: #FFF;border-bottom: 1px solid #EEE;}
#terms h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_terms.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#terms .wrapbox { max-width: 1120px; text-align: center; margin: 0 auto; padding: 40px 0;}
#terms .wrapbox .termsbox ul { text-align: left; margin-bottom: 25px; padding-left: 20px;}
#terms .wrapbox .termsbox li { list-style: disc; margin-bottom: 10px; line-height: 1.5;}
#terms .wrapbox .termsbox li p { font-size: 15px; font-weight: 500;}
#terms .wrapbox .termsbox h4 { font-weight: bold; text-align: left; margin-bottom: 15px;}

/* sample */
#sample { width: 100%; background: #22709d;
background: -moz-linear-gradient(45deg, #002b43 1%, #22709d 100%);
background: -webkit-linear-gradient(45deg, #002b43 1%,#22709d 100%);
background: linear-gradient(45deg, #002b43 1%,#22709d 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002b43', endColorstr='#22709d',GradientType=1 );}
#sample h2 { position: relative; margin: 40px auto; padding-top: 0.5em; background: url(../images/h2_sample.png) no-repeat center top; background-size: 329px 64px; height: 64px;text-indent: 100%;white-space: nowrap;}
#sample .wrapbox { max-width: 1120px;padding: 40px 0; text-align: center; margin: 0 auto; }
#sample .sample-list-box { max-width: 1120px; padding-bottom: 40px; text-align: center; margin: 0 auto; }
#sample .sample-list-box ul { margin: 0 auto; padding: 0; list-style: none; text-align: center; vertical-align: top;}
#sample .sample-list-box li { width: auto; display: inline-block; margin: 4px 2px; padding: 0;}
#sample .sample-list-box li img { vertical-align: top; margin: 0; padding: 0;}
#sample .sample-list-box li a { outline: none; vertical-align: top; margin: 0; padding: 0;}

/* 2階層目共通 */
#page .wrapbox { max-width: 1120px;padding: 40px 0; text-align: center; margin: 0 auto; }

.image-box h2{font-size:18px;color:#fff;text-align:center;display:table-cell; font-weight: bold; letter-spacing:3px;vertical-align:middle;text-shadow:0 0 8px rgba(0,0,0,1.0);}
.image-box h2 span{font-size:45px;font-family:Arial, "Helvetica Neue", Helvetica, sans-serif;display:block;}
.page-content h3{margin-bottom:30px;padding-bottom:15px;font-size:27px;font-weight:bold;text-align:center;position:relative;}
.page-content h3:after{content:"";width:150px;height:8px;margin:0 auto;background-image:linear-gradient(-90deg,#fff 25%,#d6a261 25%,#d6a261 50%,#fff 50%, #fff 75%,#d6a261 75%, #d6a261);background-size: 4px 4px;display:block;-webkit-transform: skew(-45deg);-moz-transform: skew(-45deg);
-o-transform: skew(-45deg);transform: skew(-45deg);position:absolute;left:0;right:0;bottom:0;}

/* serviceページ */
.service{background:#efefef;}
.service .content{padding-bottom:80px;}
.service .image-box{width:100%;height:360px;background:url(../service/images/service_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.service .page-menu-list{margin-bottom:60px;background:#fff;}
.service .page-menu-list li{width:25%;float:left;}
.service .page-menu-list li a{display:block;line-height:60px;color:#000;text-align:center;border-right:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
.service .page-menu-list li:nth-of-type(4) a{border-right:0;}
.service .page-menu-list li a:hover{background:#a6773d;color:#fff;}
.service-menu-box{margin-bottom:90px;}
.comment-box{max-width:1120px;margin:0 auto;text-align:center;}
.comment-box p{font-size:17px; font-weight: 500; line-height:2.25;display:inline-block;text-align:left; color: #FFF;}
.service-menu-list{margin-bottom:90px;padding:20px;background:rgba(255,255,255,0.1);}
.service-menu-list li{width:255px;height:240px;margin:0 20px 20px 0;padding:10px 15px;box-sizing:border-box;float:left;font-size:13px; font-weight: 500;box-shadow:0 0 10px rgba(0,0,0,0.20);text-align:center;position:relative; background: #FFF; letter-spacing: -0.04em; line-height: 1.5;}
.service-menu-list li:nth-of-type(4n){margin-right:0;}
.service-menu-list li:nth-child(n+5) { margin-bottom: 0;}
.service-menu-list li.no-title{padding-top:35px;text-align:left;}
.service-menu-list li a{width:230px;margin:0 auto;line-height:40px;font-size:15px;background:#5b4487 url(../images/icon-arrow-white02.png) no-repeat 15px center;display:block;color:#fff;font-weight:bold;position:absolute;bottom:20px;left:0;right:0;-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out; text-decoration: none;}
.service-menu-list li a:hover{box-shadow:0 0 10px rgba(0,0,0,0.20);background-position:16px center;}
.service-menu-list li b{width:36px; height: 36px; margin:0 auto 20px;font-size:18px;line-height:36px;text-align:center;border:2px solid #5b4487;display:block;border-radius:50%;color:#5b4487;background:#fff;}
.service-menu-list li span{margin-bottom:10px;font-size:18px;font-weight:bold;color:#5b4487;display:block;}

/* equipment */
.equipment{background:#efefef;}
.equipment .content{padding-bottom:80px;}
.equipment .image-box{width:100%;height:360px;background:url(../equipment/images/equipment_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.equipment .page-menu-list{margin-bottom:60px;background:#fff;}
.equipment .page-menu-list li{width:50%;float:left;}
.equipment .page-menu-list li a{display:block;line-height:60px;color:#000;text-align:center;border-right:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
.equipment .page-menu-list li:nth-of-type(4) a{border-right:0;}
.equipment .page-menu-list li a:hover{background:#a6773d;color:#fff;}
.equipment-menu-box{margin-bottom:90px;}
.equipment-menu-list{margin-bottom:90px;padding:20px;background:#fff;}
.equipment-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.gadget-gallery li {box-shadow:0 0 10px rgba(0,0,0,0.20); width: 250px; height: 230px; list-style: none; float: left; background: #FFF; padding: 10px; margin: 0 20px 20px 0;}
.equipment-gallery li a { outline: none;}
.equipment-gallery li:nth-child(4n) { margin-right: 0;}
.equipment-gallery li:last-child { margin-bottom: 0;}

/* price */
.price .image-box{width:100%;height:360px;background:url(../price/iamges/price_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.price{background:#efefef;}
.price .image-box{margin-bottom:115px;}
.price-reserve{margin:0 auto 50px;text-align:center;}
.price-reserve li{margin-right:60px;display:inline-block;}
.price-reserve li:nth-of-type(2){margin-right:0;}
.price-reserve li a{width:230px;line-height:40px;color:#fff;font-size:15px;font-weight:bold;display:block;background:#e29d4f url(../images/icon-arrow-white02.png) no-repeat 15px center}
.price-reserve li a:hover{background-position:16px center;}
.price-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.price-list {width:100%;text-align:center;border:1px solid #e4e4e4; border-collapse: collapse; box-sizing:border-box; margin-bottom: 20px;}
.price-list th,.price-list td{border-right:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;box-sizing:border-box;}
.price-list th{width:33.33%;height:60px;text-align:center;}
.price-list tr:nth-of-type(1){background:#dac8b0;}
.price-list tr:nth-of-type(2){background:#dab9b0;}
.price-list tr:nth-of-type(3){background:#ff2f56;}
.price-list tr:nth-of-type(3) th { color: #FFF;}
.price-list tr:nth-of-type(4){background:#dcdcdc;}
.price-list tr:nth-of-type(5){background:#a6e2d9;}
.price-list th { font-weight: bold;}
.price-list td{ background: #ffffff; padding: 1%;}
.price-list .st { position: relative;}
.price-list .st:before { position: absolute; content: ''; width: 100%; height: 1px; top: 50%; background: #000;}
.price-list .sale { font-weight: bold; color: #ff2f56; font-size: 1.4rem;}
.price-list .saleT { border: 1px solid #ff2f56; padding: 0 2%; background: #FFF; color: #ff2f56;}

/* term */
.term .image-box{width:100%;height:360px;background:url(../term/iamges/term_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.term {background:#efefef;}
.term .image-box{margin-bottom:115px;}
.term-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.term-list-box h4 { border-bottom: 2px dotted #a6773d; background: #f9f4ed; color: #a6773d; font-weight: bold; padding: 10px; font-size: 18px; margin-bottom: 10px;}
.term-list-box li { list-style:  circle; margin:  0 0 10px 20px;}
.term-list-box li:last-child { margin-bottom: 20px;}
.term-list-box li p { font-size: 15px;}
.term-list-box .furikomi { margin: 10px 0; padding: 10px; border: 1px solid #3d6ea6; width: 340px; font-size: 110%; font-weight: bold; color: #3d6ea6; background: #edf2f9; border-radius: 6px;}

/* access */
.access .image-box{width:100%;height:360px;background:url(../term/iamges/term_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.access {background:#efefef;}
.access .image-box{margin-bottom:115px;}
.access-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.access-list-box h4 { font-weight: bold; font-size: 18px; margin-bottom: 10px;}
.access-list-box iframe { margin-bottom: 20px;}
.access-list-box p { font-size: 15px; margin-bottom: 10px;}

/* contact */
.contact .image-box{width:100%;height:360px;background:url(../term/iamges/term_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.contact {background:#efefef;}
.contact .image-box{margin-bottom:115px;}
.contact-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.contact-list-box .btn-mail,
.contact-list-box .btn-tel{ text-align: center; margin: 0px auto; }
.contact-list-box .btn-mail a { display: block; border: 2px solid #a6773d; color:#a6773d;font-size: 21px; font-weight: bold; padding: 10px 40px; text-align: center; margin: 0 auto;}
.contact-list-box .btn-mail a:hover { background: #a6773d; color: #FFF;-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
.contact-list-box .btn-tel a { display: block; border: 2px solid #a63d3d; color:#a63d3d; font-size: 21px;font-weight: bold;  padding: 10px 40px; text-align: center; margin: 0 auto;}
.contact-list-box .btn-tel a:hover { background: #a63d3d; color: #FFF;-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
.contact-list-box p { font-size: 15px; margin-top: 10px;}

/* reserve */
.reserve .image-box{width:100%;height:360px;background:url(../term/iamges/term_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.reserve {background:#efefef;}
.reserve .page-menu-list{margin-bottom:60px;background:#fff;}
.reserve .page-menu-list li{width:50%;float:left;}
.reserve .page-menu-list li a{display:block;line-height:60px;color:#000;text-align:center;border-right:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
.reserve .page-menu-list li:nth-of-type(4) a{border-right:0;}
.reserve .page-menu-list li a:hover{background:#a6773d;color:#fff;}
.reserve .image-box{margin-bottom:0;}
.reserve-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.reserve-list-box h4 { font-weight: bold; font-size: 18px; margin-bottom: 10px;}
.reserve-list-box p { font-size: 15px; margin-bottom: 10px;}
.reserve-list-box a { text-decoration: underline; font-weight: bold; color: #3d6ea6;}
.form-attention {
	background: #ffe1ea;
	border-radius: 16px;
	text-align: left;
	padding: 30px;
	padding: 1em;
	margin-top: 2em;
}
.form-attention p {
	color: #FF0004;
	font-weight: bold;
	line-height: 1.5;
}
.form-btnbox { padding-top: 40px; text-align: center; margin: 0 auto;}
.form-btnbox .btn-confirm { padding: 10px 20px; font-size: 120%; margin: 10px;}
.form-btnbox .btn-reset { padding: 10px 20px; font-size: 120%; margin: 10px;}

.reserve-table {width:100%;text-align:center;border:1px solid #e4e4e4; border-collapse: collapse; box-sizing:border-box;}
.reserve-table th,.reserve-table td{border:1px solid #DDD;box-sizing:border-box; text-align: left; padding: 0 20px;}
.reserve-table th{width:50%;height:60px;background: #EEE;}
.reserve-table td{ width: 50%;height:60px; background: #FFF;}
.reserve-table .attention { background: #ff2b9a; border-radius: 6px; font-size: 80%; color: #FFF; padding: 5px 10px;}
.btn-confirm { background: #5b4487; border: 1px solid #5b4487; border-radius: 30px; width: 200px; color: #FFF; font-weight: bold;outline: none;}
.btn-confirm:hover { background: #FFF; color: #5b4487; border: 1px solid #5b4487;}
.btn-reset { background: #c4c4c4; border: 1px solid #c4c4c4; border-radius: 30px; width: 200px; color: #FFF; font-weight: bold;outline: none;}
.btn-reset:hover { background: #FFF; color: #c4c4c4; border: 1px solid #c4c4c4;}

.form-next { text-align: center; margin: 10% 10%;}
.form-next h5 { font-weight: bold; padding-bottom: 20px;}
.form-next p {color: #FF0004; font-size: 100%;}

/* event */
.event .image-box{width:100%;height:360px;background:url(../event/iamges/event_IMG01.jpg) no-repeat center top;background-size:cover;display:table;text-align:center;}
.event {background:#efefef;}
.event .image-box{margin-bottom:115px;}
.event-list-box{margin-bottom:120px;padding:20px;background:#fff;}
.event-list-box h4 { border-bottom: 2px dotted #a6773d; background: #f9f4ed; color: #a6773d; font-weight: bold; padding: 10px; font-size: 18px; margin-bottom: 10px;}
.event-list-box article { margin-bottom: 20px;}
.event-list-box article a { text-decoration: underline; font-weight: bold; color: #3d6ea6;}
.event-list-box article ul { margin-top: 20px;}
.event-list-box article .caption p{ font-size: 13px;}
.event-list-box article li { list-style:  circle; margin:  0 0 10px 20px;}
.event-list-box article p { font-size: 16px; margin-bottom: 10px;}
.event-list-box article strong { font-weight: bold; font-size: 110%;}
.event-list-box article h5.noOne { background: #c33f51; padding: 10px 20px; margin: 20px 0; color: #FFF; font-weight: bold; font-size: 18px; border-radius: 6px;}
.event-list-box article h5.noTwo { background: #c3673f; padding: 10px 20px; margin: 20px 0; color: #FFF; font-weight: bold; font-size: 18px; border-radius: 6px;}
.event-list-box article h6 { margin-top: 40px;}
.event-list-box article h6 span { font-weight: bold; font-size: 15px;border: 1px solid #666; padding: 10px;}
.event-list-box article .level01 { background: #525252; color: #FFF; padding: 4px 8px; margin-right: 12px;}
.event-list-box article .level02 { background: #9f7259; color: #FFF; padding: 4px 8px; margin-right: 12px;}
.event-list-box article .level03 { background: #596d9f; color: #FFF; padding: 4px 8px; margin-right: 12px;}
.event-list-box article .level04 { background: #849f59; color: #FFF; padding: 4px 8px; margin-right: 12px;}

/* footer */
footer{background: #333; padding-top: 30px;}
.footer-box{width:980px;margin:0 auto 30px auto;padding:25px 0 30px 0; background: url(../images/footer_frame.png) no-repeat center top; background-size: 980px auto;}
.footer-box a { color: #FFF;}
.footer-box h3{margin-bottom:25px;font-size:15px;color:#fff;font-family:Arial, "Helvetica Neue", Helvetica, sans-serif;letter-spacing:2px;}
.footer-info{width:100%;float:none;}
.footer-logo { width: auto; text-align: center; margin: 0 auto;}
.footer-logo p { color: #FFF; line-height: 1;}
.footer-logo img { width:219px; height: auto; text-align: center; margin: 0 auto 10px auto; display: block;}
.copyright{padding:40px 0;text-align:center;background:#222;}
.copyright p{font-size:12px;color:rgba(255,255,255,0.85);}
ul.bnr_footer { display: flex; flex-wrap: wrap; max-width: 820px; margin: 0 auto 0 auto; text-align: center; justify-content: center; padding: 0;  gap: 10px;}
ul.bnr_footer li { list-style: none; width: calc(100% / 2 - 10px); margin: 0 auto;}
ul.bnr_footer li:last-child { margin-right: 0;}
.number-box { 
    display: inline-block;
    padding: 10px 20px;
    box-sizing: border-box;
    font-weight: bold;
    text-align: center;
    margin: 10px auto 0 auto;
    background: #CCC;
    font-size: 100%;
    border: 2px solid #666;
	color: #000!important;
}

/* sns-list */
.sns-list{ width: 100%; margin:0 auto 0 auto; padding: 0; text-align: center;}
.sns-list ul { display: flex; text-align: center; margin: 0 auto;}
.sns-list li{width:88px;margin:0 10px 0 0; display: inline-block;}
.sns-list li.ph a{width:88px;height:31px;float:left;position:relative;display:block;z-index:2;overflow:hidden;-webkit-transform:scale(1);transform:scale(1);}
.sns-list li a:hover img{-webkit-transform:scale(1.2);transform:scale(1.2);}

.footer-tw { text-align: center; margin: 10px auto 20px auto; justify-content: center;}
.footer-tw a{width:50px;height:50px; border-radius:50%;background:rgba(255,255,255,0.25);position:relative;display:block;z-index:2;overflow:hidden; text-align: center; margin: 0 auto; text-decoration: none;}
.footer-tw a:after{content:"";width:100%;height:100%;top:0;left:0;-webkit-transform:scale(.1);transform:scale(.1);display:block;z-index: -1;}
.footer-tw a:hover:after{background-color:rgba(255,255,255,0.45);-webkit-transform:scale(1);transform:scale(1);}
.footer-tw a,
.footer-tw a:after,
.footer-tw a img{-webkit-transition:all .3s;transition:all .3s;}
.footer-tw img{width:auto;height:25px;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:3;}

.footer-bnr {
    width: 100%;
    margin: 0 auto 30px auto;
}

.footer-bnr ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	align-items: center;
}

.footer-bnr ul li {
    display: inline-block;
    list-style: none;
	padding: 0 5px 5px 0;
}

.footer-bnr ul li a {
	color: #FFF;
	font-size: 12px;
}

.footer-bnr ul li img {
    width: auto;
    height: 42px;
}

/* topへ戻る */
p.pagetop{position:fixed;bottom:0px;right:20px;z-index:11;}
p.pagetop a{width:48px;height:48px;margin-bottom:50px;text-align:center;display:block;background:#000 url(../images/image-topButton.png) repeat left top;border:1px solid #000;box-shadow:0 0 1px rgba(255,255,255,1.0);position:relative;}
p.pagetop a:after{content:"";width:24px;height:14px;margin:auto;display:block;position:absolute;top:0;bottom:0;left:0;right:0;background:url(../images/icon-topButton.png) no-repeat left top;}


/* clearfix */
.clearfix:after {content: ".";display:block;height:0;clear:both;visibility:hidden;}.clearfix{display:inline-table;min-height:1%;}
/* Hides from IE-mac */
* html .clearfix {height:1%;}.clearfix{display:block;}
/* End hide from IE-mac */









