@charset "utf-8";
/* ------------------------------------------------------------ common */

/*
#fv-index li { padding: 27%; position: relative; background-size: cover !important; }
#fv-index li h2 { position: absolute; top: 0; left: 0; right: 0; padding: 14% 0 0; width: 100%; text-align: center; }
*/

/* #fv-index { background: url(../images/index/fv3.jpg) no-repeat center center; background-size: cover; text-align: center; padding: 90px 0; position: relative; } */
/*
#fv-index .fv1 { position: relative; }
#fv-index .fv1 h2 { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; text-align: center; z-index: 100; padding: 11% 0 0; }
#fv-index .fv1 h2 img { margin: 0px auto; }
#fv-index img.SP { display: none; }
*/

#fv-index { position: relative; }
#fv-index img.coverImg { width: 100%; height: auto; }
#fv-index .fv1 .reserve { position: absolute; right: 2%; bottom: -40px; width: 190px; height: 190px; border-radius: 100%; background: #ffe509; }
#fv-index .fv1 .reserve a{ display: flex; align-items: center; justify-content: center; height: 100%; font-size: 25px; color: #3b1d86; font-weight: 600; text-align: center; line-height: 120%; }
#fv-index img.SP { display: none; }

.fv-slider{ will-change: transform, opacity; }
#fv-index .slick-dots{ bottom: 10px; top: initial; left: 0; }
#fv-index .slick-dots li{ width: 25px; }
#fv-index .slick-dots li button::before{ display: none; }
#fv-index .slick-dotted.slick-slider{ margin-bottom: 10px; }

p.news{ font-size: 14px; }

.circle { position: absolute; right: 35px; bottom: -30px; }
.summer_open { position: relative; max-width: 1100px; width: 84%; margin: 0 auto; padding: 0 6%; }
.summer_open img { position: absolute; top: -143px; right: 0; }
#onebnr { text-align: center; }
/* ------------------------------------------------------------ slick */

ul.slick-dots { position: absolute; bottom: -25px; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center; }
ul.slick-dots li { display: inline-block; *display: inline; *zoom: 1; margin: 0 2px; }
ul.slick-dots li button { font-size: 0; line-height: 0; color: transparent; width: 12px; height: 10px; background: url(../images/index/dot2.png) no-repeat center center; }
ul.slick-dots li.slick-active button { background: url(../images/index/dot1.png) no-repeat center center; }

/* ------------------------------------------------------------ */
#pause { padding: 80px 0 0; font-size: 20px; text-align: center; }
#pause p { padding: 20px 40px; border: 1px solid #3c1b84; color: #3c1b84; width: 870px; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; margin: 0 auto 30px; }
#pause p span { display: block; padding: 20px 0 15px; }
#pause p span a { color: #fff; background: #6666cc; padding: 15px 50px; }

.caution { padding: 20px 40px; border: 1px solid #3c1b84; color: #3c1b84; width: 835px; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; margin: 0 auto 30px; text-align: center; }


/* ------------------------------------------------------------ announcement */
#announcement{ padding: 50px 0; }
#announcement p{ padding: 30px 0 0; text-align: center; }


/* ------------------------------------------------------------ enjyoumore */
#enjyoumore{ padding: 0 0 50px; }
#enjyoumore .box{ padding: 40px 100px; background: #f5f6f9; border-radius: 20px; }
#enjyoumore .text{ margin: 0 0 30px; text-align: center; }
#enjyoumore .smile{ margin: 0 20px 0 0; }
#enjyoumore .bnr a{ display: flex; align-items: flex-end; justify-content: space-between; }
#enjyoumore .bnr p{ width: 300px; padding: 10px 0; background: #3c1b84; font-size: 25px; text-align: center; color: #fff; border-radius: 10px; }


/* ------------------------------------------------------------ bnrarea */
#bnrarea { padding: 110px 0; }
#bnrarea p { background: url(../images/index/smile.png) no-repeat left center; text-align: center; width: 400px; margin: 0 auto; padding: 0 0 0 110px; }
#bnrarea p img { padding: 0 0 10px; }
#bnrarea ul { padding: 40px 0 0; }
#bnrarea ul li { margin: 0 10px; }
#bnrarea ul li:first-child {}
#bnrarea ul li a {}
#bnrarea ul li a img { }

#bnrarea .slick-prev,
#bnrarea .slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 58%;
    
    display: block;

    width: 45px;
    height: 45px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

#bnrarea .slick-prev
{
    left: 15px;
    z-index: 99;
}
#bnrarea [dir='rtl'] .slick-prev
{
    right: -15px;
    left: auto;
}
#bnrarea .slick-prev:before
{
    content: url(../images/common/arrow_left.gif);
}
#bnrarea [dir='rtl'] .slick-prev:before
{
    content: '→';
}

#bnrarea .slick-next
{
    right: 15px;
    z-index: 99;
}
#bnrarea [dir='rtl'] .slick-next
{
    right: auto;
    left: -15px;
}
#bnrarea .slick-next:before
{
    content: url(../images/common/arrow_right.gif);
}
[dir='rtl'] .slick-next:before
{
    content: '←';
}

/* ------------------------------------------------------------ movie*/
#movie { }
#movie .youtube { margin: 40px auto 62px; position:relative; width:100%; padding-top:56.25%; }
#movie .youtube iframe { position:absolute; top:0; right:0; width:100%; height:100%; }
/* ------------------------------------------------------------ */

#about { padding: 70px 0 25px; margin: 0 auto; width: 100%; max-width: 1160px; }
#about img { width: 48%; height: auto; float: left; }
#about .a-info { float: right; width: 600px; min-height: 630px; padding: 30px 0 0; }
#about .a-info p.text { font-size: 17px; padding: 36px 0 0; line-height: 220%; }
#about .a-info p.text span { font-size: 23px; font-weight: bold; display: block; padding: 0 0 22px; }

#bb-hunting { padding: 142px 0 155px; background: url(../images/index/bg_01.jpg) no-repeat center center; background-size: cover; margin: 100px 0 0; }
#bb-hunting .hunt-info { background: #fff; padding: 48px 40px 30px 40px; width: 482px; float: left; }
#bb-hunting .hunt-info h3.h3-main span { font-size: 74px; }
#bb-hunting .hunt-info p.text { font-size: 17px; padding: 36px 0 0; line-height: 220%; }
#bb-hunting .hunt-info p.text span { font-size: 23px; font-weight: bold; display: block; padding: 0 0 22px; }
#bb-hunting .hunt-info p.btn.purple1 a { width: 353px; }

#bb-picbook { margin: 22px 0 0; padding: 82px 0 75px; background: url(../images/index/bg_02.jpg) no-repeat center top;  }
#bb-picbook .picbook-img { float: left; /* width: 550px; padding: 98px 0 0; */ width: 250px; padding: 190px 0 0 25%; }
#bb-picbook .picbook-info { float: right; width: 495px; }
#bb-picbook .picbook-info h3.h3-main span { font-size: 68px; line-height: 150%; }
#bb-picbook .picbook-info p.text { font-size: 17px; padding: 12px 0 0; line-height: 220%; }
#bb-picbook .picbook-info p.btn.purple1 a { width: 353px; }

#bb-magazine { padding: 75px 0 80px; background: #3c1b84; }
#bb-magazine ul { padding: 50px 0 0; margin: 0 0 0 -20px; }
#bb-magazine ul li { float: left; width: 353px; margin: 0 0 20px 20px; }
#bb-magazine ul li img { width: 100%; height: auto; }
#bb-magazine ul li.big { width: 540px; }
#bb-magazine ul li a { display: block; background: #fff; position: relative; }
#bb-magazine ul li a span.new { color: #fff; position: absolute; top: 0; left: 0;  display: block; background: #bc2a0e; font-size: 14px; width: 73px; height: 33px; line-height: 33px; text-align: center;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; 
}
#bb-magazine ul li a div { height: 113px; padding: 9px 14px 39px; overflow: hidden; }
#bb-magazine ul li a div span.mag-cat { margin: 0 16px 0 0; font-family: 'learning-curve', cursive; font-size: 40px; line-height: 100%; min-width: 136px; text-align: center; color: #3c1b84; padding: 0 7px;
	background: url(../images/common/cat-bg.png) repeat-x center 18px; 
	display: inline-block; *display: inline; *zoom: 1;
}
#bb-magazine ul li a div span.mag-date { letter-spacing: 1px;  color: #8a8a8a; font-size: 14px; display: block; }
#bb-magazine ul li a div h4 { padding: 12px 3px 0; }
#bb-magazine p.empty { color: #fff; padding: 80px 0 30px; }

#pick_up { padding: 60px 0 0; }
#pick_up ul { padding: 30px 0 40px; }
#pick_up ul li { float: left; width: 353px; margin: 0 0 20px 20px; }
#pick_up ul li:first-child { margin: 0;}
#pick_up ul li img { width: 100%; height: auto; }
#pick_up ul li.big { width: 540px; }
#pick_up ul li a { display: block; background: #fff; position: relative; }
#pick_up ul li a span.new { color: #fff; position: absolute; top: 0; left: 0;  display: block; background: #bc2a0e; font-size: 14px; width: 73px; height: 33px; line-height: 33px; text-align: center;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; 
}
#pick_up ul li a div { height: 113px; padding: 9px 14px 39px; overflow: hidden; }
#pick_up ul li a div span.mag-cat { margin: 0 16px 0 0; font-family: 'learning-curve', cursive; font-size: 40px; line-height: 100%; min-width: 136px; text-align: center; color: #3c1b84; padding: 0 7px;
	background: url(../images/common/cat-bg.png) repeat-x center 18px; 
	display: inline-block; *display: inline; *zoom: 1;
}
#pick_up ul li a div span.mag-date { letter-spacing: 1px;  color: #8a8a8a; font-size: 14px; display: block; }
#pick_up ul li a div h4 { padding: 12px 3px 0; }


#indexcontact { padding: 50px 0 0 0; }
#indexcontact .cta-block {width: 870px; margin: 0 auto; padding: 20px;  background: #f9f7ed; }
#indexcontact .cta-block h4  { text-align: center; font-size: 20px; color: #2f2079; text-align: center; }
#indexcontact .cta-block div { width: 690px; margin: 0 auto; padding: 10px 0 0; }
#indexcontact .cta-block div .tel,
#indexcontact .cta-block div .mail { width: 50%; float: left; }
#indexcontact .cta-block div .tel a { font-size: 43px; color: #2f2079; font-family:Helvetica ;  font-weight: bold; line-height: 100%;}
#indexcontact .cta-block div .tel a img { vertical-align: baseline; padding: 0 5px 0 0; }
#indexcontact .cta-block div .tel p { color: #2f2079;  }
#indexcontact .cta-block div .mail {  }
#indexcontact .cta-block div .mail a { background: #2f2079; display: block; width: 316px; line-height: 64px; height: 64px; color: #fff; text-align: center; }
#indexcontact .cta-block div .mail a img { padding: 0 5px 0 0; }

#indexcontact .calendar{ display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; padding: 50px 0; }
#indexcontact .calendar img{ width: 49%; height: auto; padding: 0 0 10px; }

#client-record{ position: relative; padding: 70px 0 0; }
#client-record ul{ width: 900px; margin: 40px auto 0; padding: 20px 20px 10px; display: flex; flex-wrap: wrap; /* justify-content: center; */ border: 1px solid #3c1b84; }
#client-record li{ width: calc(100% / 3); padding-bottom: 10px; }
#client-record .character{ width: 200px; height: auto; position: absolute; left: calc(50% - 500px); top: 34%; }

#areareservation{ padding: 100px 0 50px; }
#areareservation a{ display: flex; align-items: center; justify-content: center; margin: 20px 0 0; }
#areareservation p{ margin-left: 50px; 	font-weight: bold; color: #3c1b84; }
#areareservation .note{ display: block; margin: 40px 0 0; text-align: center; font-size: 23px; line-height: 170%; }
#areareservation .note span{ color: #3c1b84; font-weight: 700; }


/* ------------------------------------------------------------ cost-table */
#cost-table{ padding: 50px 0; }
#cost-table h3{ margin-bottom: 50px; }

#cost-table table,
#cost-table tr{ width: 100%; border: 1px solid #3c1b84; }

#cost-table th,
#cost-table td{ width: 50%; padding: 20px; font-size: 20px; text-align: center; }

#cost-table thead th{ font-size: 25px; font-weight: bold; color: #3c1b84; }
#cost-table tbody th{ background: #d9d9ff; }




/* ------------------------------------------------------------ mobile */
@media only screen and (max-width:640px){

/* ------------------------------------------------------------ */

/*
#fv-index { background: url(../images/index/fv3_sp.jpg) no-repeat center center; background-size: 100%; padding: 83px 0; }
#fv-index .coverImg { width: 85%; height: auto; }
*/
/*
#fv-index .fv1 h2 { padding: 22% 0 0; }
#fv-index .fv1 h2 img { width: 74%; height: auto; }
#fv-index img.PC { display: none; }
#fv-index img.SP { display: block; }
*/

#fv-index img.PC { display: none; }
#fv-index img.SP { display: block; width: 100%; height: auto; }

#fv-index { position: inherit; }

#fv-index .fv1 .reserve { position: absolute; right: 2%; bottom: -10%; }
#fv-index .fv1 .reserve{ width: 100px; height: 100px; }
#fv-index .fv1 .reserve a{ font-size: 15px; }
#fv-index .fv1 .reserve img { width: 100px; height: auto; }

#fv-index .slick-dots li{ width: 10px; }
#fv-index .slick-dotted.slick-slider{ margin-bottom: 20px; }

p.news{ font-size: 12px; }

#onebnr img { width: 100%; height: auto;}

.summer_open img { width: 80px; height: auto; top: -60px; }

.circle { position: absolute; right: 10px; bottom: -20px; }
.circle img { width: 70px; height: auto; }

ul.slick-dots li { margin: 0 4px; }
ul.slick-dots li button { background: url(../images/index/dot2_sp.png) no-repeat center center; background-size: 12px auto; }
ul.slick-dots li.slick-active button { background: url(../images/index/dot1_sp.png) no-repeat center center; background-size: 12px auto; }




/* ------------------------------------------------------------ */

#pause { padding: 50px 0 0; font-size: 15px; }
#pause p { display: block; font-size: 14px; padding: 15px; width: 100%; text-align: left; }
#pause p span { text-align: center; }

.caution{ font-size: 14px; display: block; padding: 15px 5%; width: 100%; text-align: left; }


/* ------------------------------------------------------------ announcement */
#announcement{ padding: 50px 0 0; }
#announcement p{ padding: 20px 0 0; font-size: 14px; }


/* ------------------------------------------------------------ enjyoumore */
#enjyoumore .box{ padding: 40px 20px; border-radius: 10px; }
#enjyoumore .text img{ width: 100%; }
#enjyoumore .text .smile{ width: 20%; height: auto; margin: 0 0 10px; }

#enjyoumore .bnr a{ display: block; }
#enjyoumore .bnr img{ width: 100%; height: auto; }
#enjyoumore .bnr p{ width: 80%; margin: 10px auto 0; padding: 7px 0; font-size: 18px; }


/* ------------------------------------------------------------ bnrarea */
#bnrarea { padding: 50px 0 0; }
#bnrarea p { background: none; width: 100%; margin: 0 auto; padding: 0; }
#bnrarea p img { width: 240px; height: auto; padding: 7px 0 15px 50px; background: url(../images/index/smile.png) no-repeat left 2px; background-size: 40px; } 
#bnrarea ul { padding: 20px 0 0; }
#bnrarea ul li { margin: 0 3px; }
#bnrarea ul li:first-child { padding: 0 0 3%; }
#bnrarea ul li img { width: 100%; height: auto; }
#bnrarea ul li a img { width: 100%; height: auto; }
#bnrarea .slick-prev,
#bnrarea .slick-next
{
    top: 37%;
}

#bnrarea .slick-prev
{
    left: -8px;
}
#bnrarea .slick-next
{
    right: -8px;
}
#bnrarea .slick-prev:before
{
    content: url(../images/common/arrow_left_sp.gif);
}
#bnrarea .slick-next:before
{
    content: url(../images/common/arrow_right_sp.gif);
}
#bnrarea .slick-dots { 
	left: 0;
	top: 65%;
}

#bnrarea .slick-dots li button::before { 
	display: none;
}


/* ------------------------------------------------------------ */

#about { padding: 60px 0 5px; text-align: center; }
#about .a-info { width: 100%; float: none; padding: 0; min-height: inherit; text-align: left; }
#about .a-info h3 { padding: 20px 0; }
#about .a-info p.text { font-size: 14px; padding: 30px 3% 0; }
#about .a-info p.text span { font-size: 16px; padding: 0 0 12px; }
#about img { float: none; margin: 0 auto; width: 94%; max-width: 420px; }

#bb-hunting { padding: 30px 3%; margin: 40px 0 0; }
#bb-hunting .hunt-info h3.h3-main { padding: 30px 0 0; }
#bb-hunting .hunt-info h3.h3-main span { font-size: 38px; }
#bb-hunting .hunt-info { width: 88%; padding: 30px 6% 20px;}
#bb-hunting .hunt-info p.text { font-size: 14px; }
#bb-hunting .hunt-info p.text span { font-size: 16px; }
#bb-hunting .hunt-info p.btn.purple1 { padding: 30px 0 10px; }
#bb-hunting .hunt-info p.btn.purple1 a { width: 100%; }

#bb-picbook { margin: 12px 0 0; padding: 10px 3% 20px; background-size: 120% auto; background-position: left top; }
#bb-picbook .picbook-img { float: none; width: 100%; padding: 10px 0; text-align: right; }
#bb-picbook .picbook-img img { width: 150px; height: auto; }
#bb-picbook .picbook-info { float: none; width: 94%; padding: 30px 3% 0; background: #fff; }
#bb-picbook .picbook-info h3.h3-main { padding: 30px 0 0; }
#bb-picbook .picbook-info h3.h3-main span { font-size: 36px; line-height: 120%; }
#bb-picbook .picbook-info p.text { font-size: 14px; padding: 30px 0 0; }
#bb-picbook .picbook-info p.btn.purple1 a { width: 100%; }

#bb-magazine { padding: 50px 3% 10px; }
#bb-magazine h3.h3-main span { font-size: 38px; }
#bb-magazine ul { padding: 30px 0 0; margin: 0; }
#bb-magazine ul li.big { width: 100%; }
#bb-magazine ul li { float: none; width: 100%; margin: 0 0 3%; }
#bb-magazine ul li img { width: 100%; height: auto; }
#bb-magazine ul li a span.new { font-size: 12px; width: 60px; height: 28px; line-height: 28px; }
#bb-magazine ul li a div { height: inherit; padding: 9px 3% 20px; }
#bb-magazine ul li a div span.mag-cat { font-size: 30px; min-width: 80px; margin: 0 12px 0 0; background-position: center 16px; }
#bb-magazine ul li a div span.mag-date { font-size: 12px; }
#bb-magazine ul li a div h4 { font-size: 14px; padding: 12px 0 0; }

#pick_up ul { padding: 30px 0; margin: 0; }
#pick_up ul li { float: none; width: 100%; margin: 0 0 3%; }
#pick_up ul li img { width: 100%; height: auto; }
#pick_up ul li a span.new { font-size: 12px; width: 60px; height: 28px; line-height: 28px; }
#pick_up ul li a div { height: inherit; padding: 9px 3% 20px; }
#pick_up ul li a div span.mag-cat { font-size: 30px; min-width: 80px; margin: 0 12px 0 0; background-position: center 16px; }
#pick_up ul li a div span.mag-date { font-size: 12px; }
#pick_up ul li a div h4 { font-size: 14px; padding: 12px 0 0; }


#indexcontact { padding: 50px 0 0 0; }
#indexcontact .cta-block {width: 94%; margin: 0 auto; padding:5% 3%;  background: #f9f7ed; }
#indexcontact .cta-block h4  { text-align: center; font-size: 15px; color: #2f2079; text-align: center; }
#indexcontact .cta-block div { width: 100%; margin: 0 auto; padding: 10px 0 0; }
#indexcontact .cta-block div .tel,
#indexcontact .cta-block div .mail { width: 100%; float: none; }
#indexcontact .cta-block div .tel { text-align: center; }
#indexcontact .cta-block div .tel a { font-size: 43px; color: #2f2079; font-family:Helvetica ;  font-weight: bold; line-height: 100%;}
#indexcontact .cta-block div .tel a img { vertical-align: baseline; padding: 0 5px 0 0; }
#indexcontact .cta-block div .tel p { color: #2f2079;  }
#indexcontact .cta-block div .mail {  }
#indexcontact .cta-block div .mail a { background: #2f2079; display: block; width: 100%; line-height: 64px; height: 64px; color: #fff; text-align: center; }
#indexcontact .cta-block div .mail a img { padding: 0 5px 0 0; }

#indexcontact .calendar{ padding: 30px 0 0; }
#indexcontact .calendar img{ width: 100%; height: auto; }

#client-record{ padding: 50px 0 0; }
#client-record ul{ display: block; width: 100%; margin: 25px auto 0; padding: 20px 10px 10px; box-sizing: border-box; }
#client-record li{ width: 100%; padding-bottom: 5px; font-size: 14px; }
#client-record .character{ width: 120px; left: -2%; top: 19%; }

#areareservation{ padding: 60px 0 30px; }
#areareservation a{ display: block; }
#areareservation img{ display: block; width: 80%; height: auto; margin: 0 auto; }
#areareservation p{ margin: 20px 0 0; text-align: center; }
#areareservation .note{ margin: 30px 0 0; font-size: 19px; }


/* ------------------------------------------------------------ cost-table */
#cost-table{ padding: 25px 0; }
#cost-table h3{ margin-bottom: 30px; }

#cost-table th,
#cost-table td{ padding: 15px; font-size: 15px; }

#cost-table thead th{ font-size: 20px; }



}














