@charset "utf-8";
/* CSS Document */
/* ---reset------------------------------------------ */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,p,blockquote,section,nav,header,footer{margin:0;padding:0;}ul li,ol li {list-style:none;} h1,h2,h3,h4,h5,h6{font-size:100%; font-weight:normal;}input,textarea,select{ font-family: inherit;font-size:inherit; font-weight:inherit;}input,textarea,select{ *font-size:100%;}a img { border:none;}

* {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-o-box-sizing: border-box;-ms-box-sizing: border-box;box-sizing: border-box;}
/* ---common---------------------------------------- */
.cf:before,.cf:after {content: " "; display: table;}.cf:after {clear: both;}.cf {*zoom: 1;}
.alpha a:hover img {opacity: 0.8;filter: alpha(opacity=80);-ms-filter: "alpha(opacity=80)";}
img {border: 0px; vertical-align: bottom;}

/*#pagetop {width:100%; max-width:1000px;position: fixed;bottom: 5%;left:50%;transform:translateY(-50%);-webkit-transform:translateY(50%); z-index:999;}*/
#pagetop {position:fixed;bottom:75px;right: 75px;}
#pagetop a {color: #FFF;padding: 2em 1em;text-align: center;font-size: 0.75em;text-decoration: none;border-radius: 6px; }
#pagetop a:hover {opacity: 0.8;-ms-filter: "alpha(opacity=80)";filter: alpha(opacity=80);}
/*pagetop float*/

.ggmap {position: relative;padding-bottom: 75%;padding-top: 30px;height: 0;overflow: hidden;}
.ggmap iframe,
.ggmap object,
.ggmap embed {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}

.pc {display: inherit;}
.sp {display: none;}

[class$="flexBox"] {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
			flex-wrap: wrap;
			flex-wrap: wrap;
	-webkit-justify-content: space-between;
			justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

body {
	font-size: 14px;
	color: #16375b;
	font-family: "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
}

.pc {display: inherit;}
.sp {display: none;}

a:link {
color: #0085B2;
}

a:visited {
color: #0085B2;
}

a:hover {
color: #99CEE0;
}

a:active {
color: #0085B2;
}

div[class*="inner"] {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

table {
	margin: 0 auto;
	border: 0;
	border-spacing: 0;
	border-collapse: collapse;
}

table.borderTable > tbody > tr > th {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	background: #ffffff;
	border:1px solid #CCCCCC;
}

table.borderTable > tbody > tr > td {
	text-align: left;
	background: #ffffff;
	border:1px solid #CCCCCC;
}

table.noBorderTable > tbody > tr > th {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	background: #ffffff;
}

table.noBorderTable > tbody > tr > td {
	text-align: left;
	background: #ffffff;
}

body {
	background: #f5f0e1;
}

body.page {
	background: #ffffff;
}
/*---pc design--------------------------------------- */
/*---header------------------------------------------ */
header {
	width: 100%;
	background: #16375b;
	z-index: 9999;
}
.header__logo {
	width: 23.4%;
}
.header__flexBox {
	padding: 0.5rem 0;
	color: #ffffff;
}
.headerNav__flexBox {
	align-items: center;
}
header a {
	padding: 0.2rem 0.5rem;
	color: #6f6855!important;
	text-decoration: none;
	display: block;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 50%, rgba(111, 104, 85, 0.8) 50%);
	background-position: 0 0;
	background-size: 200% auto;
	transition: .5s;
}
	
header a:hover {
	color: #ffffff!important;
	background-position: -100% 0;
}

.bgINBox {
	display: flex;
	align-items: center;
	background: #16375b;
	border-radius: 5px;
	position: relative;
}
.bgINBox a {
	padding: 16px 32px 16px 16px;
	color: #ffffff!important;
	line-height: 1rem;
	background-image: none;
}
.separateWindowWH::after {
	content: "";
	width: 14px;
	height: 11px;
	background: url("image/icon_separate_window_wh.png") no-repeat;
	background-size: 14px 11px;
	position: absolute;
	top: 0;
	right: 1rem;
	bottom: 0;
	margin: auto;	
}
.header__bg {
	padding: 30px 0 68px;
	min-height: 153px;
	background: url("image/header_bg.png") no-repeat;
	background-size: 100% 100%;
}


.topHeaderArea.headerSlider {}
.headerSlider .sliderItem {width: 1000px;max-width: 100vw;}
.sliderItem {filter: contrast(50%);}
.sliderItem.slick-center {filter: blur(0) grayscale(0%);}
.slick-dots li button:before {content: "●"!important;font-size: 20px!important;color: #666666!important;}
li.slick-active button:before {color: #e7003a!important;}
.slick-dots li button:before {opacity: 0.8!important;}
/*---content----------------------------------------- */
.h2Heading {
	margin-bottom: 2.5rem;
	font-size: 22px;
	font-family: "Questrial", sans-serif;
	line-height: 1rem;
	text-align: center;
}
.h2HeadingWH {
	margin-bottom: 2.5rem;
	font-size: 22px;
	font-family: "Questrial", sans-serif;
	line-height: 1rem;
	text-align: center;
	color: #ffffff;
}

.information {
	background: #f5f0e1;
}

.info__inner {height: 300px!important;}
.info__box {
	width: 100%;
}
.info__date {
	width: 14%;
	font-weight: 600;
}
.info__date::after {
	content: "：";
}
.info__text {
	width: 86%;
	text-align: left;
}
.info__b-b {
	padding: 0.5rem 0;
	border-bottom: 1px dashed #16375b;
	}
.mail_magazine {
	padding: 2.5rem 0 2rem;
	vertical-align: middle;
}
.mm__gridBox {
	margin: 2rem auto 0;
	width: 445px;
	display: grid;
	grid-template-rows: 44px 44px;
	grid-template-columns: 62px 285px 86px;
}

.mm__inputBox {
	padding-right: 1rem;
	width: 100%;
	}
.mm__inputH38 {
	width: 100%;
	height: 38px;
}

.mm__registrationBtn {
	width: 86px;
	aspect-ratio: 1 / 1;
	color: #ffffff;
	background: #16375b;
	border: 2px solid #ffffff;
	border-radius: 5px;
}

.about {
	padding: 3rem 0 0;
}

.about__inner {
	padding: 0 0.5rem;
	width: 100%;
	max-width: inherit!important;
}

.three-column {
	width: 33.33%;
	width: calc(100% / 3);
}

.hours {
	padding: 4.5rem 0 3rem;
}

.hours .h2Heading {}

.hours__textCenterBoxW30 {
	margin: 0 auto;
	width: 30%;
	text-align: center;
}
.hours__indentCenterBoxW50 {
	padding-left: 1em;
	margin: 0 auto;
	text-indent: -1em;
	width: 50%;
}


.pageContent {
	padding: 4rem 0 8rem;
	color: #000000;
}

.pageHeading {
	background: url("image/page_header.png") no-repeat;
	background-size: cover;
}
.pageHeading__filter {
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
}
.pageHeading__inner {
	padding: 5rem 0 6.5rem;
	color: #ffffff;
	font-size: 1.4rem;
	z-index: 10!important;
}

.greeting__w30Image {
	width: 30%;
}
.greeting__w30Image .textCenter {
	margin-top: 1rem;
	color: #6f6855;
	text-align: center;
	line-height: 1.4rem;
}

.greeting__w60Text {
	width: 60%;
}
	
.greeting__w60Text p + p{
	margin-top: 1.5rem;
}

.strongBgBE {
	margin: 1.5rem 0 1rem;
	padding: 0.8rem 1rem;
	font-size: 1rem;
	font-weight: 600;
	background: #f5f0e1;
}
.m-t2Strong {
	margin-top: 2rem;
	font-weight: 600;
}

.store__w30IMage {
	margin-bottom: 3rem;
	width: 30%;
}
.flexBox__Right.store__w68Text {
	margin-bottom: 3rem;
	padding-left: 1.5rem;
	width: 68%;
	border-left: 5px solid #16375b;
}

.store__w68Text .strong {
	font-weight: 600;
	font-size: 1.4rem;
}
.store__w68Text .small {font-size: 0.8rem;}

.store__w68Text .m-t2Text {margin-top: 2rem;}


.terms__headingTextBE {
	font-size: 1.4rem;
	line-height: 1.4em;
	color: #b4a885;
}
.terms__headingTextSub {font-size: 1.2rem;}
.terms p {line-height: 1.4rem;}
.terms p + p {margin-top: 2rem;}

.terms__rightTextBox {
	margin-top: 4rem;
	text-align: right;
}


.menu__nav {
	background: #16375b;
}
.menu__nav li {
	width: 25%;
	text-align: center;
	}
.menu__nav a {
	padding: 1.5rem;
	color: #ffffff;
	display: block;
	text-decoration: none;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 50%, rgba(66, 102, 142, 0.8) 50%);
	background-position: 0 0;
	background-size: 200% auto;
	transition: .5s;
}
	
.menu__nav a:hover {
	color: #ffffff!important;
	background-position: -100% 0;
}
.activeMenu {
	padding: 1.5rem;
	color: #ffffff;
	background: #42668e;
}
.menu__rightText {
	margin: 0 auto;
	width: 60%;
	text-align: right;
	color: #999999;
}
.menu__heading {
	padding: 1rem 2rem;
	margin: 0 0 0 20%;
	width: fit-content;
	font-size: 1.4rem;
	display: inline-block;
	background: #f5f0e1;
}
.menuList + .menu__heading {
	margin-top: 3rem;
}
.menuList {
	padding: 1.5rem;
	margin: 0 auto;
	width: 60%;
	border: 2px solid #f5f0e1;
}
.menuList li {
	margin-bottom: 2rem;
	width: 100%;
}
.menu__leftText {
	font-size: 1.2rem;
}
	
.menu__smallText {
	font-size: 0.8rem;
	color: #999999;
}
.menu__rightColBE {
	font-size: 1.4rem;
	color: #b4a885;
	align-content: flex-end;
}
.menu__textW60 {
	margin: 1.5rem auto;
	width: 60%;
	}
.menu__smallTextList {
	font-size: 0.8rem;
	color: #999999;
}
.menu__textW60m-t0 {
	margin: 0 auto;
	width: 60%;
}
.menu__smallTextList li {
	margin-bottom: 0.2rem;
	text-indent: -1em;
	padding-left: 1em;
}
.menu__smallTextList li::before {
	content: "・";
	width:1rem;
	height: 1rem;
}

.store__flexLeftW30pc {
	padding: 1rem;
	width: 30%;
	background: #f5f0e1;
	border-bottom: 1px dashed #b4a885;
}
.store__flexRightW70pc {
	padding: 1rem 2rem;
	width: 70%;
	background: #ffffff;
	border-bottom: 1px dashed#b4a885;
}

.inquiry__flexLeftW30pc {
	padding: 1rem;
	width: 30%;
	background: #f5f0e1;
	border-bottom: 1px dashed #b4a885;
}
.inquiry__flexRightW70pc {
	padding: 1rem 2rem;
	width: 70%;
	background: #ffffff;
	border-bottom: 1px dashed#b4a885;
}
.inquiry__Btn {
	padding: 1rem;
	width: 10rem;
	color: #6f6855;
	background: #f5f0e1;
	border: 2px solid #b4a885;
	border-radius: 5px;
}
.inquiry__Btn:hover {
	color: #ffffff;
	background: #b4a885;
	transition: 1.5s;
}

.inquiry__textarea {
	width: 80%;
	height: 6rem;
}

.pp__numberList li span {
	color: #b4a885;
}
.pp__numberList ,
.tos__numberList {
	margin: 18px 0 26px 0;
counter-reset: number 0;
}

.pp__numberList li ,
.tos__numberList li {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.tos__circleNumberList li {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.tos__circleNumberList .circleNumbe {padding-right: 0.5em;}

.tos__circleNumberList {counter-reset: circleNumber;}

.pp__numberList li::before {
	content: counter(number) "．";
	counter-increment: number 1;
	color: #A78A31;
}
.tos__numberList > li::before {
	content: counter(number) "．";
	counter-increment: number 1;
}

.pp__numberList li span {
	color: #A78A31;
}
.pp .boxRight {
	margin: 0 0 0 auto;
	width: 33%;
}

#pagetop {position:fixed;bottom:50px;right: 50px;}
#pagetop a {color: #FFF;padding: 2em 1em;text-align: center;font-size: 0.75em;text-decoration: none;border-radius: 6px; }
#pagetop a:hover {opacity: 0.8;-ms-filter: "alpha(opacity=80)";filter: alpha(opacity=80);}

/*---footer------------------------------------------ */
footer {
	color: #ffffff;
	background: #333333;
	text-align: center;
}
footer a {
	padding: 3px 10px;
	color: #ffffff!important;
	text-decoration: none;
	color: #ffffff;
	display: block;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 50%, rgba(85, 85, 85, 0.8) 50%);
	background-position: 0 0;
	background-size: 200% auto;
	transition: .5s;
}
	
footer a:hover {
	background-position: -100% 0;
}

.footer__inner {padding: 3rem 0 3.5rem;}

.footer__logo {
	margin: 0 auto 2rem;
	width: 22.8%;
}

	
.footer__nav {
	margin: 0 auto;
	width: 68%;
}
.footer__nav ul {
	align-items: center;
}

.footerNav2 {
	margin: 1.5rem auto 0;
	width: 50%;
}

.footerNav2 li {margin: 0 auto;}

.footer__map {
	margin-top: 4rem;
}

.footer__address {
	width: 25%;
	width: fit-content;
	margin: 1rem auto 3rem;
	text-align: left;
}

/*---fix-header-------------------------------------- */
.fix-header {
	width: 100%;
	height: auto;
	background: #16375b;
	top: 0;
}

.fixHeader__inner {
	padding: 20px 0 16px!important;
}

.fix-header a {
	padding: 0.2rem 0.5rem;
	color: #ffffff!important;
	text-decoration: none;
	display: block;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 50%, rgba(66, 102, 142, 0.8) 50%);
	background-position: 0 0;
	background-size: 200% auto;
	transition: .5s;
}
	
.fix-header a:hover {
	background-position: -100% 0;
}

.fix-header nav {margin: auto 0;}


.bgGYBox {
	display: flex;
	align-items: center;
	background: #e6e6e6;
	border-radius: 5px;
	position: relative;
}
.bgGYBox a {
	padding: 16px 32px 16px 16px;
	color: #16375b!important;
	line-height: 1rem;
	background-image: none;
}
.separateWindow::after {
	content: "";
	width: 14px;
	height: 11px;
	background: url("image/icon_separate_window.png") no-repeat;
	background-size: 14px 11px;
	position: absolute;
	top: 0;
	right: 1rem;
	bottom: 0;
	margin: auto;	
}

.cb-header {
	position: fixed;
	left:0;
	visibility: hidden;
}




.questrial-regular {
  font-family: "Questrial", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.textLeft {text-align: left;}
.textCenter {text-align: center;}
.textRight {text-align: right;}

.mCenter {margin: 0 auto;}
.m-tlCenter {
	margin: auto;
	text-align: center;
}

.w30pc {width: 30%;}
.w33pc {width: 33%!important;}
.w50pc {width: 50%!important;}
.w70pc {width: 70%;}


.bgGY {
	color: #ffffff;
	background: #606060;
}
.bgIN {
	color: #ffffff;
	background: #16375b;
}

/*---sp design--------------------------------------- */
@media screen and (max-width: 768px) {
.pc {display: none;}
.sp {display: inherit;}


div[class*="inner"] {
	width: 100%;
	max-width: 96vw;
	margin: 0 auto;
	overflow: hidden;
}
	
header.sp .header__inner {
	padding: 0.5rem 0;
	color: #ffffff;
	line-height: 1rem;
}
	
.header__bg {
    padding: 1rem 0;
    min-height: 100px;
    background: #eee4c6 url(image/header_bg.png) no-repeat;
    background-size: 100% 100%;
	background-size: contain;
	background-position: center bottom;
}
.header__logo {
	width: 50%;
}
/*---sp design--------------------------------------- */
/*---menu-------------------------------------------- */

.nav__trigger {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 42px;
	height: 42px;
	cursor: pointer;
	transition: transform 0.3s;
}
.nav__trigger span {
	width: 100%;
	height: 2px;
	background-color: #333;
	margin-bottom: 4px;
	transition: background-color 0.3s;
	transition: 0.6s;
}

/* active */
.nav__trigger.active span:nth-child(1) {
	transform: translateY(6px) rotate(45deg);
	transition: 0.8s;
}

.nav__trigger.active span:nth-child(2) {
	opacity: 0;
	transition: 0.8s;
}

.nav__trigger.active span:nth-child(3) {
	transform: translateY(-6px) rotate(-45deg);
	transition: 0.8s;
}
.header__nav {
	display: none;
	background: #eee4c6;
	padding: 10px;
	position: absolute;
	right: 0;
	z-index: 100;
/*	animation: slideoutRight 2s;*/
}
/*@keyframes slideoutRight {
0% {
	transform: translateX(-100%);
	opacity: 0;
}
100% {
	transform: translateX(0);
	opacity: 1;
}
}*/

.header__nav__inner {
	margin: 0 auto;
	width: 100%;
	max-width: 96vw;
	justify-content: flex-start;
}

.header__nav__inner li {
	padding: 0.5em 1em;
	font-size: 18px;
	list-style: none;
}

.header__nav__inner li a {
	text-decoration: none;
}

/* activeクラス付与 */
.active + .header__nav.slideinRight {
	display: block;
	animation: slideinRight 2s;
}

@keyframes slideinRight {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

.mm__gridBox {
	margin: 2rem auto 0;
	width: 100%;
	display: grid;
    grid-template-rows: 44px 44px;
    grid-template-columns: 62px 175px  86px;
}

.three-column {width: 100%;}

.hours__textCenterBoxW30 {width: 100%;}
.hours__indentCenterBoxW50 {width: 100%;}
.footer__nav {width: 100%;}
.footerNav7 li {width: 25%;}
.footerNav7 li.bgGYBox {width: 50%;}
.footerNav2 {width: 100%;}
.fix-header {display: none;}
	
	
.pageContent {padding: 1.5rem 0;}
.menu__nav a {padding: 0.5rem;}
.activeMenu {padding: 0.5rem;}
.menu__rightText {width: 100%;}
.menu__heading {
	padding: 0.5rem 1rem;
	margin: 0;
	font-size: 1.2rem;
}
.menuList {width: 100%;}
.menuList li {margin-bottom: 0.6rem;}
.menu__leftText {
	width: 100%;
	font-size: 1rem;
}
.menu__rightColBE {
	width: 100%;
	text-align: right;
}
.store__w30IMage {
	margin-bottom: 1rem;
	width: 100%;
}
.flexBox__Right.store__w68Text {width: 100%;}

.greeting__w30Image {width: 100%;}
.greeting__w30Image .textCenter {margin-top: 0.5rem;}
.greeting__w60Text {width: 100%;}
.store__flexLeftW30pc {
	width: 100%!important;
	display: block;
}
.store__flexRightW70pc {
	width: 100%!important;
	display: block;
}

.inquiry__flexLeftW30pc {
	width: 100%!important;
	display: block;
}
.inquiry__flexRightW70pc {
	width: 100%!important;
	display: block;
}

.ppArea .boxRight {width: 70%;}

}
