@charset "utf-8";
/* --------------------------------------------------
	reset
-------------------------------------------------- */
* { margin: 0; padding: 0; box-sizing: border-box;}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
form, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0; padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}

img{ width: 100%; vertical-align: bottom;}
ul{ list-style: none;}
ul li{ list-style-type: none;}
figure { margin: 0;}


/* =============================================================================
   Forms
   ========================================================================== */
form { margin: 0;}
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em;}
legend { border: 0;}
button,
input,
select,
textarea { font-size: 100%; margin: 0; vertical-align: baseline;}
button,
input { line-height: normal;}
button,
input[type="button"], 
input[type="reset"], 
input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"],
input[type="radio"] { box-sizing: border-box; padding: 0;}
input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}

button::-moz-focus-inner,
input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top;}
input[type="search"]:focus { outline: none;}

table {
    border-collapse: collapse;
    border-spacing: 0;
}


/*	Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box;
-webkit-user-select: none;
   -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;

-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
  	  touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}

.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0;}
.slick-list:focus { outline: none;}
.slick-list.dragging{ cursor: pointer; cursor: hand;}
.slick-slider .slick-track,
.slick-slider .slick-list{
-webkit-transform: translate3d(0, 0, 0);
   -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
     -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
}
.slick-track { position: relative; top: 0; left: 0; display: block;}
.slick-track:before,
.slick-track:after { display: table; content: '';}
.slick-track:after { clear: both;}
.slick-loading .slick-track { visibility: hidden;}
.slick-slide { display: none; float: left; height: 100%; min-height: 1px;}
[dir='rtl'] .slick-slide { float: right;}
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none;}
.slick-slide.dragging img { pointer-events: none;}
.slick-initialized .slick-slide { display: block; outline: none;}
.slick-loading .slick-slide { visibility: hidden;}
.slick-vertical .slick-slide{ display: block; height: auto;}
.slick-arrow.slick-hidden { display: none;}

.slick-arrow{ width: 50px; height: 50px; position: absolute; top: 45%; transform: translateY(-50%); border: none; z-index: 100;
 text-indent: -9999em; outline: none;
}
.slick-prev { left: 20px; background: url('../img/arw-R.png') no-repeat 50% 50% / 100% 100%;}
.slick-next { right: 20px; background: url('../img/arw-L.png') no-repeat 50% 50% / 100% 100%;}
/** Dots */
.slick-dotted.slick-slider{ margin-bottom: 30px;}
.slick-dots { position: absolute; bottom: -25px; display: block; width: 100%; padding: 0; margin: 0; text-align: center;}
.slick-dots li { position: relative; display: inline-block; width: 20px; height: 20px; margin: 0 5px; padding: 0; cursor: pointer;}
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 20px; height: 20px; padding: 5px; cursor: pointer;
 color: transparent; border: 0; outline: none; background: transparent; 
}
.slick-dots li button:hover,
.slick-dots li button:focus{ outline: none;}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before { opacity: 1;}
.slick-dots li button:before { font-family: 'slick'; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0;
	width: 20px; height: 20px; content: '•'; text-align: center; opacity: .25; color: black;
}
.slick-dots li.slick-active button:before { opacity: .75; color: black;}

@media (max-width: 481px) {
	.slick-arrow{ width: 35px; height: 35px;}
	.slick-prev { left: 10px;}
	.slick-next { right: 10px;}
}



/*		font-style
-------------------------------------------------- */
body {
	font-family: 'Arial',"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
/*	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;*/
	font-size: 16px;
	*font-size:small;
	*font:x-small;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
input, textarea {font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;}

.min {font-family: "游明朝", "Yu Mincho", "YuMincho", serif;}

::selection{ background: #feffaf; color: #000;}
::-moz-selection{ background: #feffaf; color: #000;}

em{ font-style: normal;}


#hd { background: #49290a;}
#hd .inner-hd { width: 100%; max-width: 1080px; margin: 0 auto; padding: 10px; background: url('../img/bg-hd.jpg') no-repeat 50% 50%;}
#hd h1 { color: #fff; font-size: 18px; font-weight: 600; text-align: center;}
@media (max-width: 1001px) {
	#hd h1 { font-size: 1.8vw;}
}
@media (max-width: 801px) {
	#hd .inner-hd { padding: 6px;}
	#hd h1 { font-size: 2.0vw; line-height: 1.8;}
	#hd h1 span { display: block;}
}
@media (max-width: 641px) {
	#hd h1 { font-size: 2.4vw;}
}
@media (max-width: 481px) {
	#hd h1 { font-size: 12px;}
}


#kv { background: #ffe4c0;}
#kv .inner-kv { width: 100%; max-width: 1080px; margin: 0 auto;}
#kv h2 { text-align: center;}
#kv h2 img { width: 100%;}
#kv h2 img.sp { display: none;}
@media (max-width: 641px) {
	#kv h2 img.pc { display: none;}
	#kv h2 img.sp { display: block;}
}


.wrap { width: 100%; max-width: 750px; margin: 0 auto;}
#lead {}
#lead p { text-align: center;}
#lead p img { width: 100%;}


#reason .reason01 { background: #efe4d3;}
#reason .reason01 h2 { text-align: center;}
#reason .reason01 h2 img { width: 100%;}
#reason .reason01 p { text-align: center;}
#reason .reason01 p img { width: 100%;}
#reason .reason01 .txt { padding: 40px 0;}
#reason .reason01 .txt p { color: #3e3a39; font-size: 28px; text-align: center;}
#reason .reason01 .board { padding: 0px 50px 80px;}
#reason .reason01 .case { padding: 60px 40px; background: #ffe4c0;}
#reason .reason01 .case h3 { text-align: center;}
#reason .reason01 .case h3 img { width: 100%;}
#reason .reason01 .case ul li { padding: 20px 0;}
#reason .reason01 .case ul li dl dt {}
#reason .reason01 .case ul li dl dt img { width: 100%;}
#reason .reason01 .case ul li dl dd { color: #541b04; font-size: 24px; letter-spacing: 0.05rem;}

#reason .reason02 { background: #efe4d3;}
#reason .reason02 h3,
#reason .reason02 p { text-align: center;}
#reason .reason02 h3 img,
#reason .reason02 p img { width: 100%;}

#reason .reason03 { padding-bottom: 80px; background: #ffe4c0;}
#reason .reason03 h3 { margin-bottom: 60px;}
#reason .reason03 h3 img { width: 100%;}
#reason .reason03 figure { margin-bottom: 40px; text-align: center;}
#reason .reason03 figure figcaption { color: #333; font-size: 18px;}
#reason .reason03 figure img { width: 90%; margin: 0 auto 10px;}
#reason .reason03 p { color: #333; font-size: 24px; line-height: 2; text-align: center;}
#reason .reason03 p span { display: block;}

#reason .reason04 { background: #ffe4c0;}
#reason .reason04 h3 { text-align: center;}
#reason .reason04 h3 img { width: 100%;}
#reason .reason04 .slide img { width: 100%;}

#reason .reason05 {}
#reason .reason05 h3,
#reason .reason05 p { text-align: center;}
#reason .reason05 h3 img,
#reason .reason05 p img { width: 100%;}
@media (max-width: 641px) {
	#reason .reason01 .txt p { font-size: 4.0vw;}
	#reason .reason01 .case ul li dl dd { font-size: 3.2vw;}

	#reason .reason03 figure figcaption { font-size: 14px;}
	#reason .reason03 p { font-size: 3.2vw;}
}
@media (max-width: 481px) {
	#reason .reason01 .txt { padding: 20px 0;}
	#reason .reason01 .txt p { font-size: 16px;}
	#reason .reason01 .board { padding: 0px 30px 50px;}
	#reason .reason01 .case { padding: 40px 20px;}
	#reason .reason01 .case ul li { padding: 8px 0;}
	#reason .reason01 .case ul li dl dd { font-size: 13px;}

	#reason .reason03 { padding-bottom: 40px;}
	#reason .reason03 figure figcaption { font-size: 12px;}
	#reason .reason03 p { font-size: 14px;}
}


#voice .tit { padding-top: 50px; background: #fff;}
#voice .tit h2 { text-align: center;}
#voice .tit h2 img { width: 100%;}
#voice .ctn { padding: 60px 0px 40px; background: #ffe7e1;}
#voice .ctn figure { margin-bottom: 10px; text-align: center;}
#voice .ctn figure img { width: 92%;}
#voice .ctn ul.note { text-align: center;}
#voice .ctn ul.note li { padding: 5px 0; color: #541b04; font-size: 20px;}
#voice .ctn .bloc { padding: 20px 0;}
#voice p { text-align: center;}
#voice p img { width: 100%;}
@media (max-width: 641px) {
	#voice .ctn ul.note li { font-size: 2.8vw;}
}
@media (max-width: 481px) {
	#voice .tit { padding-top: 30px;}
	#voice .ctn { padding: 40px 0px 30px;}
	#voice .ctn ul.note li { font-size: 12px;}
	#voice .ctn .bloc { padding: 10px 0;}
}

#plan { padding-bottom: 50px;}
#plan .ttl { padding: 60px 0;}
#plan .ttl h2 { text-align: center;}
#plan .ttl h2 img { width: 66.5%;}
#plan h3 { margin-bottom: 40px; text-align: center;}
#plan h3 img { width: 92%;}
#plan p.txt { margin-bottom: 60px; color: #541b04; font-size: 20px; text-align: center;}
#plan p.txt span { display: block;}

#plan .plan-member { width: 92%; max-width: 670px; margin: 0 auto 40px;}
#plan .plan-member figure { margin-bottom: 30px; text-align: center;}
#plan .plan-member figure img { width: 100%;}
#plan .plan-member p { color: #541b04; font-size: 21px;}
#plan .plan-member p span { display: block; color: #f90047; font-size: 26px; font-weight: 700;}

#plan .plan-ticket { width: 92%; max-width: 670px; margin: 0 auto;}
#plan .plan-ticket figure { margin-bottom: 30px; text-align: center;}
#plan .plan-ticket figure img { width: 100%;}
#plan .plan-ticket p { color: #541b04; font-size: 21px;}
#plan .plan-ticket p span { display: block; color: #ff6f28; font-size: 26px; font-weight: 700;}
#plan .plan-ticket p.pay { margin-top: 30px; color: #ff6f28; font-size: 21px; font-weight: 700;}
#plan .plan-ticket p.pay img { display: block; width: 100%;}
#plan .plan-ticket p.ex { margin-top: 10px; }

#plan ul.must { margin-bottom: 16px;}
#plan ul.must li { display: inline-block; margin-bottom: 10px; padding: 2px 10px; border: solid 1px #541b04; color: #541b04; font-size: 20px;}
#plan ul.must li:last-child { margin-bottom: 0px;}
#plan ul.must li span { font-size: 25px; font-weight: 700;}
#plan ul.note.mb { margin-bottom: 30px;}
#plan ul.note li { position: relative; padding-left: 1.2em; color: #541b04; font-size: 18px;}
#plan ul.note li:before { content: '※'; position: absolute; left: 0; top: 0; }
@media (max-width: 641px) {
	#plan p.txt { font-size: 3.0vw;}

	#plan .plan-member p { font-size: 3.0vw;}
	#plan .plan-member p span { font-size: 3.4vw;}
	
	#plan .plan-ticket p { font-size: 3.0vw;}
	#plan .plan-ticket p span { font-size: 3.6vw;}
	#plan .plan-ticket p.pay {font-size: 3.0vw;}


	#plan ul.must li { font-size: 2.8vw;}
	#plan ul.must li span { font-size: 3.4vw;}
	#plan ul.note li { font-size: 2.4vw;}
}
@media (max-width: 481px) {
	#plan { padding-bottom: 30px;}
	#plan p.txt { font-size: 13px;}

	#plan .plan-member figure { margin-bottom: 10px;}
	#plan .plan-member p { font-size: 13px;}
	#plan .plan-member p span { font-size: 15px;}
	
	#plan .plan-ticket figure { margin-bottom: 10px;}
	#plan .plan-ticket p { font-size: 13px;}
	#plan .plan-ticket p span { font-size: 15px;}
	#plan .plan-ticket p.pay { margin-top: 8px; font-size: 11px;}
	#plan .plan-ticket p.ex { margin-top: 6px;}

	#plan ul.must { margin-bottom: 10px;}
	#plan ul.must li { margin-bottom: 6px; font-size: 10px;}
	#plan ul.must li span { font-size: 13px;}
	#plan ul.note li { font-size: 11px;}
}

#step { padding-top: 50px;}
#step .wh { padding: 50px 0;}
#step .wh.pb0 { padding-bottom: 0px;}
#step h3,
#step p { text-align: center;}
#step h3 img,
#step p img { width: 100%;}
@media (max-width: 481px) {
	#step { padding-top: 30px;}
	#step .wh { padding: 30px 0;}
}

#access .ttl { padding: 60px 0;}
#access .ttl h2 { text-align: center;}
#access .ttl h2 img { width: 66.5%;}
#access .ctn { width: 92%; margin: 0 auto; padding-bottom: 60px;}
#access .place { margin-bottom: 20px;}
#access .place:last-child { margin-bottom: 0px;}
#access .place .tit { position: relative; padding: 5px 20px; background: #541b04; cursor: pointer;}
#access .place .tit:after { content: ''; display: block; width: 12px; height: 12px; border-bottom: solid 3px #fff; border-right: solid 3px #fff;
 position: absolute; right: 20px; top: 50%; transform: translateY(-55%) rotate(45deg);
}
#access .place .tit.open:after { border: none; border-top: solid 3px #fff; border-left: solid 3px #fff; transform: translateY(-45%) rotate(45deg);}
#access .place .tit h4 { color: #fff; font-size: 28px;}
#access .place .detail { display: none;}
#access .place .detail ul { padding: 20px;}
#access .place .detail ul li { margin-bottom: 8px;}
#access .place .detail ul li:last-child { margin-bottom: 0px;}
#access .place .detail ul li dl { display: table; width: 100%;}
#access .place .detail ul li dl dt,
#access .place .detail ul li dl dd { display: table-cell; font-size: 24px;}
#access .place .detail ul li dl dt { width: 150px;}
#access .place .detail ul li dl dd { width: auto;}
#access .place .detail .map { width: 100%; height: 360px;}
#access .place .detail .map iframe { width: 100%; height: 100%;}
@media (max-width: 801px) {
	#access .place .detail ul li dl dt,
	#access .place .detail ul li dl dd { font-size: 3.0vw;}
	#access .place .detail ul li dl dt { width: 120px;}
}
@media (max-width: 481px) {
	#access .ttl { padding: 40px 0;}
	#access .place { margin-bottom: 12px;}
	#access .place .tit { padding: 5px 12px;}
	#access .place .tit:after { width: 8px; height: 8px; right: 15px; border-width: 2px;}
	#access .place .tit.open:after { border-width: 2px;}
	#access .place .tit h4 { font-size: 16px;}
	#access .place .detail ul { padding: 12px;}
	#access .place .detail ul li { margin-bottom: 4px;}
	#access .place .detail ul li dl dt,
	#access .place .detail ul li dl dd { font-size: 13px;}
	#access .place .detail ul li dl dt { width: 80px;}
	#access .place .detail .map { height: 260px;}
}

#amanity p { text-align: center;}
#amanity p img { width: 100%;}

#coupon { background: url('../img/bg-coupon.jpg') no-repeat 50% 0% / cover;}
#coupon .inner { width: 92%; margin: 0 auto; padding: 20px 0 40px;}
#coupon p { margin-bottom: 8px; text-align: center;}



.btn-bloc { padding: 40px 0; background: url('../img/bg-btn.jpg') no-repeat 50% 50% / cover;}
.btn-bloc div{ width: 90%; margin: 0 auto;}
.btn-bloc div a { position: relative; display: block; width: 100%; transition: 0.15s linear;}
.btn-bloc div a img { width: 100%;}
.btn-bloc div a:hover { transform: scale(1.05); opacity: 0.9;}
@media (max-width: 481px) {
	.btn-bloc { padding: 30px 0;}
}

#campaign { padding-bottom: 60px;}
#campaign h3 { margin-bottom: 20px; text-align: center;}
#campaign h3 img { width: 100%;}
#campaign ul.note { width: 94%; margin: 0 auto;}
#campaign ul.note li { position: relative; padding-left: 1.2em; color: #541b04; font-size: 20px;}
#campaign ul.note li:before { content: '※'; position: absolute; left: 0; top: 0; }
@media (max-width: 641px) {
	#campaign ul.note li { font-size: 2.4vw;}
}
@media (max-width: 481px) {
	#campaign { padding-bottom: 40px;}
	#campaign ul.note li { font-size: 11px;}
}


#ft { padding-bottom: 200px;}
#ft .inner-ft{ width: 100%; max-width: 750px; margin: 0 auto;}
#ft .inner-ft img { width: 100%;}
#ft .ft-ctn { padding: 40px 0; background: #ffe4c0;}
#ft .ft-ctn h3 { margin-bottom: 30px; text-align: center;}
#ft .ft-ctn h3 img { width: 50%; max-width: 400px;}
#ft .ft-ctn ul { text-align: center;}
#ft .ft-ctn ul li { }
#ft .ft-ctn ul li a { color: #541b04; font-size: 16px; text-decoration: none;}
#ft .ft-ctn ul li a:hover { text-decoration: underline;}
#ft .copyright { padding: 10px 0; background: #541b04;}
#ft .copyright p { color: #fff; font-size: 12px; text-align: center;}

@media (max-width: 481px) {
	#ft { padding-bottom: 110px;}
	#ft .ft-ctn { padding: 30px 0;}
	#ft .ft-ctn h3 { margin-bottom: 20px;}
	#ft .copyright p { font-size: 10px;}
}


.btn-fix { width: 100%; position: fixed; bottom: 0px; left: 0px;}
.btn-fix div { width: 94%; max-width: 680px; margin: 0 auto; padding: 12px 0;}
.btn-fix a { position: relative; display: block; width: 100%; transition: 0.15s linear;}
.btn-fix a img { width: 100%;}
.btn-fix a:hover { transform: scale(1.05);}
@media (max-width: 481px) {
	.btn-fix div { padding: 8px 0;}
}
