@charset "UTF-8";

/* --------------------------
 * base style
-------------------------- */
/* pc large min */
body,html { width: 100%; height: 100%; min-height:600px;}

.sp_dspl { display:none;}
.pc_dspl { display:block;}


/* header #ffdd1e #1eaa39 #e07f00 #9e2d30*/

#contents {padding: 0px;background-color: #fff;}
#contents .title {margin-top:0px;position: relative; z-index: 9;text-align: center;padding-top: 50px;background-image: url(../images/silhouette_01.png); background-position: center top; background-repeat: no-repeat; background-size: 80px 41px;margin-bottom: 75px;}
#contents .title .top { font-weight: bold;font-size:30px; letter-spacing: 2px;line-height: 1.6em;margin-bottom: 10px; font-family: "游明朝","ヒラギノ明朝","YuMincho","ヒラギノ明朝 ProN W3";}
#contents .title .bottom {padding-top: 15px;display: inline-block; border-top: 3px solid #CC9933; font-weight: 400;font-family: "游明朝","ヒラギノ明朝","YuMincho","ヒラギノ明朝 ProN W3"; font-size:14px; font-style: italic; letter-spacing: 4px; color:#CC9933;}
#contents .section {padding-top: 75px; }

#contents #list {}
#contents #list .block {margin-bottom: 40px; position: relative;}
#contents #list .block .icon {position: absolute; top: -30px;left: 40px;}
#contents #list .block .icon img {width: 60px; height:60px;}
#contents #list .block figure {display: block;}
#contents #list .block figure img {border-radius: 0.5em;-moz-border-radius: 0.5em;-webkit-border-radius: 0.5em;-o-border-radius: 0.5em;-ms-border-radius: 0.5em;}
#contents #list .block h2 {margin-top: 20px;position: relative; font-size: 14px; font-weight: bold;display: block;}
#contents #list .block h2 span {display:block; float: right;font-weight: 400;font-family: 'Old Standard TT', serif; font-size: 20px;}
#contents #list .block .text { background-color: #fff; padding: 20px 0px 0px; font-size: 12px; min-height: 90px; line-height: 1.6em;}

#contents #guide {}
#contents #guide .block {margin-bottom: 40px; position: relative;}
#contents #guide .block .icon {position: absolute; top: -30px;left: 40px;}
#contents #guide .block .icon img {width: 60px; height:60px;}
#contents #guide .block figure {display: block;}
#contents #guide .block figure img {border-radius: 0.5em;-moz-border-radius: 0.5em;-webkit-border-radius: 0.5em;-o-border-radius: 0.5em;-ms-border-radius: 0.5em;}
#contents #guide .block h2 {margin-top: 20px;position: relative; font-size: 14px; font-weight: bold;display: block;}
#contents #guide .block h2 span {display:block; float: right;font-weight: 400;font-family: 'Old Standard TT', serif; font-size: 20px;}
#contents #guide .block .text { background-color: #fff; padding: 20px 0px 0px; font-size: 12px; min-height: 90px; line-height: 1.6em;}
#contents #guide .text {margin-bottom: 50px; text-align: center; font-size: 14px; line-height: 1.8em; font-family:"游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";}


#contents #gallery {}
#contents #gallery .row {}
#contents #gallery .row > .block {}
#contents #gallery .row > .block .inner {cursor:crosshair; overflow: hidden;display: block; position: relative; width: 100%; height: 100%; background-color: #000;-webkit-transition:all 0.5s;-moz-transition:all 0.5s;-o-transition:all 0.5s;-ms-transition:all 0.5s;}

@media (max-width: 768px) {
#contents #gallery .row > .block .inner {display:none;}
}

#contents #gallery .row > .block .inner figure { z-index: 1; overflow: hidden;}
#contents #gallery .row > .block .inner figure img {filter:alpha(opacity=50); -moz-opacity: 0.5;-moz-transition: -moz-transform 0.5s linear;-webkit-transition: -webkit-transform 0.5s linear;-o-transition: -o-transform 0.5s linear;-ms-transition: -ms-transform 0.5s linear;transition: transform 0.5s linear;-webkit-transform: scale(1.01);-moz-transform: scale(1.01);-o-transform: scale(1.01);-ms-transform: scale(1.05);transform: scale(1.01);}
#contents #gallery .row > .block:hover .inner figure img {filter:alpha(opacity=100); -moz-opacity:1; opacity: 1;-webkit-transform: scale(1.05);-moz-transform: scale(1.05);-o-transform: scale(1.05);-ms-transform: scale(1.05);transform: scale(1.05);}
#contents #gallery .row > .block:hover .inner {background-color:#FFF;}
#contents #gallery .row > .block .inner h2 { letter-spacing: 2px;font-size: 24px;color:#FFF;position: absolute;top: 70%;margin-top: -0.5em;display: block; width: 100%; height: 100%; position: absolute;left: 0px; text-align: center;font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3"; font-weight: 400;}
#contents #gallery .row > .block .inner h2 span { display: block; font-size: 13px;margin-top: 5px; font-weight: normal;font-family:'ヒラギノ逞ゴ Pro W3','Hiragino Kaku Gothic Pro','Hiragino Kaku Gothic ProN', 'ヒラギノ逞ゴ ProN W3','メイリオ',Meiryo,'掴ゴシック','YuGothic',sans-serif;}
#contents #gallery .row > .block:hover .inner h2 { color: #1eaa39;}
#contents #gallery .text {margin-bottom: 50px; text-align: center; font-size: 14px; line-height: 1.8em;}

@media (max-width: 768px) {
#contents #gallery .text {margin-bottom: 0px; text-align: center; font-size: 14px; line-height: 1.8em;}
}

#map_canvas {width: 100%; height: 400px;}

#interval { height: 500px; width: 100%; background-position: center; background-size: cover; background-repeat: no-repeat; background-attachment: fixed;}
#interval.first { background-image: url(../images/interval_01.jpg);}
#interval.second { background-image: url(../images/interval_02.jpg);}
#interval.third { background-image: url(../images/interval_03.jpg);}
#interval.four { background-image: url(../images/interval_04.jpg);}

/* contact */
#contact { color: #FFF;}
#contact.cover {margin: 0;padding: 0; height: auto;background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/contact_bg_img.jpg);}
#contact .inner {margin: 0; padding-top: 75px; padding-left: 0px; padding-right: 0px; padding-bottom: 86px; text-align: left;}
#contact .inner h2 {margin-top: 0;margin-bottom: 25px; font-size: 24px; font-weight: bold; font-family: 'Playfair Display', serif;}
#contact .inner h2 span { margin-left: 1px;color: #ffdd1e;font-size: 18px;display: block;margin-top: 15px;font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3"; font-weight: 400;letter-spacing: 2px;}
#contact .inner .tel {font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3"; font-weight: 700; font-size: 36px;letter-spacing: 2px; margin-bottom:30px;color: #FFF;}
#contact .inner .tel span { font-size: 60px;margin-left: 5px;}
#contact .inner .note { font-size: 14px;margin-top: 5px;font-weight: bold; text-align: left; width: 400px;display: block;}
#contact .inner .note span {color:#ffdd1e;margin-left: 10px;}

/* footer */
#footer {display: block;line-height: 1.6em;position: relative;z-index: 0;height:0px; background-image: url(../images/backimage_01.jpg); background-size: cover;}
#footer .footlogo {position: absolute; bottom:150px;width: 100%; text-align: center;}
#footer .footlogo img { width: 300px; height: auto;}
#footer .sns {position: absolute; bottom:120px;width: 100%; text-align: center;}
#footer .address {font-size: 14px; text-align: center;margin-bottom: 50px;color:#000;}
#footer .address span { font-size: 12px; display: block;}
#footer .pagetop {height: 35px; width: 100%; position: absolute; bottom: 60px; left: 0; display: block;}
#footer .pagetop span { display: block; width: 70px;height: 35px; cursor: pointer; margin: 0 auto;background-color: #CC9933; text-align: center; line-height: 40px; font-size: 30px;border-top-right-radius : 5em;-moz-border-top-right-radius : 5em;-webkit-border-top-right-radius : 5em;-o-border-top-right-radius : 5em;-ms-border-top-right-radius : 5em;border-top-left-radius : 5em;-moz-border-top-left-radius : 5em;-webkit-border-top-left-radius : 5em;-o-border-top-left-radius : 5em;-ms-border-top-left-radius : 5em;}
#footer .pagetop span .fa {color:#FFF;}
#footer .copyright {width: 100%;position: absolute; bottom:0; left:0;color: #fff;line-height: 60px;text-align:center;font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3"; font-weight: 400; letter-spacing: 1px;background-color: #CC9933;}
#footer .copyright .container { position: relative;font-size: 11px; display: block;}
#footer .copyright ul { position: absolute; right:25px; top: 0; text-align: right;}
#footer .copyright ul li { display: inline-block;margin-left: 15px;}
#footer .copyright ul li a {color: #FFF;}
#footer .copyright ul li a .fa { margin-right: 5px;color:#ffdd1e;}

#spNav {display: none; background-color:rgba(0,0,0,0.8);; z-index: 9999; position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow-y: auto;}
#spNav ul {padding: 50px 0px 0px; text-align: center;}
#spNav ul li {display: block;line-height: 40px;}
#spNav ul li a  {font-size: 18px;color: #fff;}
#spNav ul li a .fa {margin-left: 25px;}
#spNav ul li a:hover{color: #1eaa39;}
#spNav ul li a:hover,
#spNav ul li a:focus,
#spNav ul li a:active { text-decoration: none;}
#spNav .btn { display: block;width: 150px; margin: 25px auto 0px;}
#spNav .btn:after {content: "."; display: block; height: 0; clear: both; visibility: hidden;}
#spNav .btn a { color: #000;box-sizing: border-box;-moz-border-radius: 2em;-webkit-border-radius: 2em;-o-border-radius: 2em;-ms-border-radius: 2em; position: relative; font-size: 16px; display: block; background-color: #FFF;color:#000; text-align: center; height:40px;line-height:40px; transition:all 0.3s;-webkit-transition:all 0.3s;-moz-transition:all 0.3s;-o-transition:all 0.3s;-ms-transition:all 0.3s;}
#spNav .btn a:hover {background-color:#1eaa39;color:#fff;}


/* contact */
@media (max-width: 767px) {
#contact.cover {margin: 0;padding: 0; height: auto;background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/contact_bg_sp.jpg);}
}

/* conceptmax */
.conceptmax{
    width:100%;
}
.conceptmax .conceptleft{
    max-width:1280px;
    margin:0px auto;
    padding:10px 0px;
}

@media (max-width: 767px) {
.conceptmax .conceptleft{
    max-width:1280px;
    margin:0px auto;
    padding:10px 0px;
    margin-bottom: 20px;

}
}

/* content */
@media (min-width: 768px) {
    .conceptmax .conceptleft .conceptcontentleft {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
.conceptmax .content-leftitem {
    width:100%;
}
@media (min-width: 768px) {
    .conceptmax .content-leftitem {
        width:50%;
    }
}
.conceptmax .image{
    display:block;
    max-width:80%;
}

@media (min-width: 768px) {
.conceptmax .lefttext{
    margin-top: 0px;
    padding-right: 50px;
    padding-bottom: 0px;
    padding-left: 50px;
    text-align:center;
}
}

@media (max-width: 767px) {
.conceptmax .lefttext{
    padding-top: 20px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    text-align:center;
}
}

.conceptmax .leftcaution{
    text-align:center;
}

.conceptmax .lefttext .leftheading{
    margin:0px 0px 25px 0px;
    font-size: 30px;
    font-weight: normal;
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}

.conceptmax .lefttext .leftheadingsmall{
    margin:0px 0px 5px 0px;
    font-size: 20px;
    font-weight: normal;
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}

.conceptmax .lefttext .leftheadingssmall{
    margin:20px 0px 5px 0px;
    font-size: 16px;
    font-weight: normal;
    text-align: left;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}

@media(max-width:767px) {
.conceptmax .lefttext .leftheadingssmall{
    margin:20px 0px 5px 0px;
    font-size: 13px;
    font-weight: normal;
    text-align: left;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}
}

.conceptmax .leftcaution .leftheadingssmall{
    margin:0px 0px 5px 0px;
    font-size: 14px;
    font-weight: normal;
    text-align: left;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
    display: inline-block;
}

  .leftbun {
    display: inline-block;
    text-align: left;
    margin:0px 0px 5px 0px;
    font-size: 14px;
    font-weight: normal;
    font-weight: 500;
    display: inline-block;
    font-family: 'Playfair Display', serif;
  }

.conceptmax .lefttext .leftheadingsssmall{
    margin:0px 0px 5px 0px;
    font-size: 14px;
    font-weight: normal;
    text-align: left;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}

.conceptmax .leftcaution .leftheadingssmall{
    margin:0px 0px 5px 0px;
    font-size: 14px;
    font-weight: normal;
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}

.conceptmax .leftcaution .leftheadingsssmall{
    margin:0px 0px 5px 0px;
    font-size: 24px;
    font-weight: normal;
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}


/* conceptmax */
.conceptmax{
    width:100%;
}
.conceptmax .conceptright{
    max-width:1280px;
    margin:0px auto;
    padding:10px 0px;
}

@media (max-width: 767px) {
.conceptmax .conceptright{
    max-width:1280px;
    margin:0px auto;
    padding:10px 0px;
    margin-bottom:30px
}
}

/* conceptmax */
@media (min-width: 768px) {
    .conceptmax .conceptright .conceptcontentright {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
/* PC時のみ順番を入れ替える */
@media (min-width: 768px) {
    .conceptmax .conceptcontentright {
        flex-direction:row-reverse;
    }
}
.conceptmax .content-rightitem {
    width:100%;
}
@media (min-width: 992px) {
    .conceptmax .content-rightitem {
        width:50%;
    }
}
.conceptmax .image{
    display:block;
    max-width:80%;
    margin:0px auto;
}

@media(max-width:767px) {
.conceptmax .image{
    display:block;
    max-width:100%;
    margin:0px auto;
}
}

.conceptmax .righttext{
    padding:50px;
}

@media(max-width:767px) {
.conceptmax .righttext{
    padding-top: 20px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    text-align: left;
}
}

.conceptmax .righttext .rightheading{
    margin:0px 0px 5px 0px;
    font-size: 24px;
    font-weight: normal;
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}

@media(min-width:768px) {
.conceptmax .righttext .rightheadingsmall{
    margin:20px 0px 5px 0px;
    font-size: 16px;
    font-weight: normal;
    text-align: left;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}
}

@media(max-width:767px) {
.conceptmax .righttext .rightheadingsmall{
    margin:20px 0px 5px 0px;
    font-size: 13px;
    font-weight: normal;
    text-align: left;
    font-family: 'Playfair Display', serif;
    font-weight: 500;
}
}

@media(max-width:767px) {
.top_logo_pc {
	display:none;
}
}

@media(min-width:768px) {
.top_logo_sp {
	display:none;
}
}

@media(max-width:767px) {
.top_logo_title {
	margin-top:0px;
}
}

@media(min-width:768px) {
.top_logo_title {
	margin-top:10%;
}
}

.top_season {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #000000;
    background: #e4fcff;/*背景色*/
    border-top: solid 6px #1dc1d6;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/
}

.off_season {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #000000;
    background: #FCFFCD;/*背景色*/
    border-top: solid 6px #E8BC22;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/
}

.day_camp {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #000000;
    background: #E4FFE7;/*背景色*/
    border-top: solid 6px #4DE82D;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/
}

.guide_top {
	margin-top: 0px!important;
}

@media (max-width: 768px) {
.guide_top {
	padding: 0px!important;
}
}

.guide_title {
	margin-top: 0px!important;
}

@media (max-width: 768px) {
.guide_title {
	padding: 0px!important;
}
}

.guide_number {
	margin-top: 0px!important;
}

@media (max-width: 768px) {
.guide_number {
	padding: 0px!important;
}
}

@media (min-width: 768px) {
.col-sm-offset-4 {
    margin-left: 33.33333333%;
}
}

@media (min-width: 768px) {
.col-sm-4 {
    width: 33.33333333%;
}
}

@media (min-width: 768px) {
.col-sm-4 {
    float: left;
    position: relative;
    min-height: 1px;
    padding-left: 25px;
    padding-right: 25px;
}
}

.btn a {
    position: relative;
    font-size: 14px;
    font-weight: bold;
    display: block;
    background-color: #FFDBC9;
    color: #000000;
    height: 50px;
    text-align: center;
    line-height: 50px;
    -moz-border-radius: 0.5em;
    -webkit-border-radius: 0.5em;
    -o-border-radius: 0.5em;
    -ms-border-radius: 0.5em;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.btn a:hover {
    color: #0000ff;
}

/* pc */

@media (min-width: 768px) {
    .container {min-width: 768px; width: 100%;}

    #header {background-size: cover; position: relative;display: block;height: 100vh;}
    #header .inner { position: absolute;top:0px; left: 0px; width: 100%;}
    #header .container { position: relative;top:0px;}
    #header .container .logo { width: 250px; height: auto; position: absolute;z-index: 9999; top: 25px; left:30px;}
    #header .container .contact { width: 260px; height: auto; position: absolute;z-index: 9999; top: 60px; right: 100px;}
    #header .container .lead { width: 540px; height: auto; position: absolute;z-index: 9999;top: 170px; left: 100px;}
    #header .container .deco-pc { width: 320px; height: auto; position: absolute;z-index: 9999;top:350px; right: 100px;}
    #header .container .deco-sp { display: none;}
    #header .sliderWrap {min-width: 1100px;position: absolute;height: 100vh;width: 100%;z-index: 0;display: block;top: 0; left:0;overflow: hidden;}
    #header .sliderWrap .slider {width: 100%; height: 100vh;margin-top: -75px;}
    #header .sliderWrap .mainVisual li {outline: none; padding: 0 25px;}
    #header .container .sns { position: absolute; top: 25px; right: 10px;}
    #header .{background-color: #ffdd1e; height: 600px;}
    #header .inner .hamburger { display: none;}

    #gnav { height: 80px; background-color: #ffffff;margin-top:-80px;position: relative; z-index: 9; min-width: 1000px;}
    #gnav ul {height: 80px;text-align: center;}
    #gnav ul li { display:inline-block;height: 80px;transition:all 0.3s;-webkit-transition:all 0.3s;-moz-transition:all 0.3s;-o-transition:all 0.3s;-ms-transition:all 0.3s;}
    #gnav ul li:first-child {}
    #gnav ul li a {display: table-cell; height: 80px; padding: 25px 25px; vertical-align: middle; font-size: 16px; font-weight: bold; color: #000000;}
	#gnav ul li a:hover {color: #00FFFF;}
	#gnav ul li.nv06 a:hover {color: #0000FF;}
    #gnav ul li a img {height: 45px;}
    #gnav ul li:hover {}

    #topNav { display: none;}

    #contents #concept {padding-top: 450px; background-image: url(../images/concept_bg_img.jpg);}
    #contents #concept h2 {padding: 0px 0px;z-index: 99;font-weight: bold;display: block; position: relative; text-align: center;font-size:28px; letter-spacing: 2px;line-height: 1.4em;margin:0px 0px 25px;}

    .concept_title {padding: 0px 0px !important;z-index: 99 !important;font-weight: bold !important;display: block !important; position: relative !important; text-align: center !important;font-size:28px !important; letter-spacing: 2px !important;line-height: 1.4em !important;margin:0px 0px 25px !important; color:#fff !important;}

    #contents #concept h2 span {font-weight: 400;font-family: 'Playfair Display', serif; display: block;font-size:36px; font-style: italic; letter-spacing: 8px; color:#00FFFF;margin-bottom: 50px;}
    #contents #concept .text { padding: 0 50px;font-size: 16px; line-height: 2em;margin-bottom: 75px;}
    #contents #concept .concept_text { padding: 0 50px;font-size: 16px; line-height: 2em;margin-bottom: 75px; color: #ffffff;  font-family: 'Playfair Display', serif;}

    #contents #list {background-image: url(../images/list_bg_img.jpg);}
    #contents #guide {background-image: url(../images/guide_bg_img.jpg);}
    #contents #access {background-image: url(../images/access_bg_img.jpg);}
    #contents #gallery {background-image: url(../images/gallery_bg_img.jpg);}
}

/* smartphone */
@media screen and (max-width: 767px) {
    .sp_dspl { display:block;}
    .pc_dspl { display:none;}
    .container {margin: 0;padding: 0 25px;}

    #header { background-size: cover; height: 600px;}
    #header .inner {position: relative;top: 0;left:0;height: 600px;width: 100%;display: block; }
    #header .inner .logo {width: 360px;height: auto;position:absolute; left:20px; top: 20px;z-index: 999;}
    #header .inner .contact {width: 230px; height: auto;position: absolute;z-index: 999;bottom:15px;left: 15px;}
    #header .inner .deco-pc { width: 400px; height: auto; position: absolute;z-index: 9999;bottom:15px; right: 25px;}
    #header .inner .deco-sp { display: none;}
    #header .inner .lead { width: 100%; max-width: 540px; height: auto; padding: 0 15px;position: absolute;z-index: 9999;top: 200px; left: 0px;}
    #header .inner .sns {display: none;}
    #header .inner .hamburger {display:block; width: 40px; height: 40px;cursor: pointer;position: absolute; top: -460px; right: 25px;background-image:url(../images/hamburger.png); background-position: center; background-size: 40px; background-repeat: no-repeat; z-index: 9999;}
    #header .sliderWrap {width: 100%;position:absolute; top: 0px; left: 0px; z-index: 0; height: 480px;margin:0px auto;display: block; overflow: hidden;}
    #header .sliderWrap .slider {width: 100%; height: auto;margin-top: -25px;}
    #header .slider li {outline: none;}

    #gnav{ display: none;}
    #topNav { display: block;}
    #topNav .row {margin-left: -1px;}
    #topNav .row .block { height: 100px; display: block; float: left;margin-bottom: 1px;padding-left: 1px;}
    #topNav .row .block a {padding-top: 20px;text-align: center;height: 100px; background-color:#CC9933; color: #fff;display: block; line-height: 30px; font-weight: bold; font-size: 14px; font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";}
    #topNav .row .block a img { width: 30px;height: auto; margin: 0px auto; display: block;}

    #contents #concept {padding-top: 50px; background-image: url(../images/concept_bg_img_sp.jpg);}
    #contents #concept h2 {padding: 0px;z-index: 99;font-weight: bold;display: block; position: relative; text-align: left;font-size:28px; letter-spacing: 2px;line-height: 1.4em;margin:0px;margin-bottom: 25px;}
    #contents #concept h2 span {text-align: center;font-weight: 400;font-family: 'Playfair Display', serif; display: block;font-size:21px; font-style: italic; letter-spacing: 2px; color:#00FFFF;margin-bottom: 25px;}
    #contents #concept h2 span.concept_title {text-align: center;font-weight: bold;font-family: 'Playfair Display', serif; display: block;font-size:21px; font-style: italic; letter-spacing: 2px; color:#000;margin-bottom: 25px;}
    #contents #concept .concept_text { padding: 0px;font-size: 14px; line-height: 1.8em;margin-bottom: 50px; font-family: 'Playfair Display', serif; font-weight: bold;}

    #contents #list .block .text { padding: 20px 25px 0px;}
    #contents #list .block h2 {padding: 0 25px;}

    #contents #guide .block .text { padding: 20px 25px 0px;}
    #contents #guide .block h2 {padding: 0 25px;}


    #contents #contact .inner h2 {text-align: center; font-family: 'Playfair Display', serif;}
    #contents #contact .inner .tel {text-align: center;font-size: 24px;}
    #contents #contact .inner .tel span { font-size: 48px;}
    #contents #contact .inner .note {text-align: center; width: 100%;}
    #contents #contact .inner .note span {color:#ffdd1e;margin-left: 10px;}
    
    #contents #list {background-image: url(../images/list_bg_img_sp.jpg);}
    #contents #guide {background-image: url(../images/guide_bg_img_sp.jpg);}
    #contents #access {background-image: url(../images/access_bg_img_sp.jpg);}
    #contents #gallery {background-image: url(../images/gallery_bg_img_sp.jpg);}
    
    #contents #gallery figure { position: relative;}
    #contents #gallery .text {padding: 0 25px;text-align: left;}
    #contents #gallery .text br { display: none;}

    #interval { height: 300px; background-position: center; background-size:cover; background-repeat: no-repeat; background-attachment: inherit;;}
    #interval.first { background-image: url(../images/interval_01_sp.jpg);}
    #interval.second { background-image: url(../images/interval_02_sp.jpg);}
    #interval.third { background-image: url(../images/interval_03_sp.jpg);}
    #interval.four { background-image: url(../images/interval_04_sp.jpg);}

    #footer {height:30px;}
    #footer .footlogo img { width: 200px; height: auto;}
}


@media screen and (max-width: 600px) {
    #header {height: 480px;}
    #header .inner {position: relative;top: 0;left:0;height: 480px;width: 100%;display: block;}
    #header .inner .logo {width: 350px;height: auto;position:absolute; left:20px; top: 20px;z-index: 999;}
    #header .inner .lead { width: 500px; height: auto;position: absolute;z-index: 9999;top: 160px; left: 0px;}
    #header .inner .contact {width: 200px;top:inherit;bottom:15px;right: 15px;}
    #header .inner .deco-pc { display: none;}
    #header .inner .deco-sp { width: 240px; height: auto; position: absolute;z-index: 9999;bottom:500px; right: 15px; display: inline !important; }
    #header .sliderWrap {position:absolute; top: -10px; left: 0px;}
    #header .sliderWrap .slider {width: 110%; height: auto;margin-left: -5%;}
    #header .slider li {outline: none;}
    #header .inner .sns {display: none;}
}





@media screen and (max-width: 520px) {
    #header {height: 480px;}
    #header .inner {position: relative;top: 0;left:0;height: 480px;width: 100%;display: block;}
    #header .inner .logo {width: 80%;height: auto;padding: 20px 100px 20px 20px;position:absolute; left:0px; top: -490px;z-index: 999;}
    #header .inner .lead { width:100%; height: auto;padding: 20px;position: absolute;z-index: 9999;top: 180px; left: 0px;}
    #header .inner .contact {width: 150px;top:inherit;bottom: 15px;left: 15px;}
    #header .inner .deco-pc { display: none;}
    #header .inner .deco-sp { width: 240px; height: auto; position: absolute;z-index: 9999;bottom:500px; right: 15px;}
    #header .sliderWrap {position:absolute; top:0px; left: 0px;}
    #header .sliderWrap .slider {padding-top: 50px;width: 120%; height: auto;margin-left: -10%;}
}





@media screen and (max-width: 480px) {
    #contents #contact .inner .tel {text-align: center;font-size: 18px;}
    #contents #contact .inner .tel span { font-size: 28px;}
    #contents #contact .inner .note {text-align: center; width: 100%; font-size: 13px;}
}

table{
  margin-top: 10px;
  width: 100%;
  border-collapse:separate;
  border-spacing: 0;
  font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

@media screen and (max-width: 767px) {
table.accestable{
  margin-top: -20px;
  width: 100%;
  border-collapse:separate;
  border-spacing: 0;
  font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}
}

table th:first-child{
  border-radius: 5px 0 0 0;
}

table th:last-child{
  border-radius: 0 5px 0 0;
  border-right: 1px solid #3c6690;
}

table th{
  text-align: center;
  color:white;
  background: linear-gradient(#829ebc,#225588);
  border-left: 1px solid #3c6690;
  border-top: 1px solid #3c6690;
  border-bottom: 1px solid #3c6690;
  box-shadow: 0px 1px 1px rgba(255,255,255,0.3) inset;
  width: 25%;
  padding: 10px 0;
  font-size: 16px;
  font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

table td{
  text-align: center;
  border-left: 1px solid #a8b7c5;
  border-bottom: 1px solid #a8b7c5;
  border-top:none;
  box-shadow: 0px -3px 5px 1px #eee inset;
  width: 25%;
  padding: 10px 0;
  font-size: 16px;
  font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
  background-color: #ffffff;
  font-weight: 600;
}

table td:last-child{
  border-right: 1px solid #a8b7c5;
}

table tr:last-child td:first-child {
  border-radius: 0 0 0 5px;
}

table tr:last-child td:last-child {
  border-radius: 0 0 5px 0;
}

.map-logo {
	width: 80%;
}

.guide_top { 
	font-family:"游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

.guide_title { 
	font-family:"游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

.guide_number { 
	font-family:"游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

.guide-title {
	margin-top:20px;
	font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

.guide-tax {
	text-align: left;
	font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
	font-weight: bold;
	font-size: 16px;
}

td.guide-ame {
	text-align: left;
	padding-left:5px;
}

.br-sp {
  display: none;
}

@media screen and (max-width: 1080px) {
  .br-pc {
    display: none;
  }

  .br-sp {
    display: inline-block;
  }
}

.guide-tel {
	font-size:24px;
	color:#000000;
}

.tel-navi {
	font-size:14px;
	color:#FF0000;
}

#caution {
	padding-top: 50px;
	padding-bottom: 50px;
}

#caution .inner {
	border: 1px solid #000;
	padding: 25px;
	font-size: 14px;
}

#caution .inner h1 {
	font-size: 18px;
	border-bottom: 1px solid #000;
	margin-bottom: 20px;
	padding-bottom: 20px;
}

.content-leftitem {
	overflow: hidden;
}



@media screen and (max-width: 560px) {
    .header-deco {
        background-image: url(../images/header_right_sp.png);
    }
}

@media screen and (max-width: 960px) {
    .header-deco {
        position: absolute!important;
        height: 130px;
        z-index: 100;
        margin-top: -480px;
    }
}

@media screen and (max-width: 960px) {
    .header-deco .header_logo {
        width: calc(100% - 120px);
        padding: 10px;
        height: 28px;
    }
}

@media screen and (max-width: 960px) {
    .header-deco .header_logo a {
        display: block;
        max-width: 300px;
    }
}

@media screen and (max-width: 960px) {
.logo_b {
	border: 0;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}
}

@media screen and (max-width: 560px) {
    .header-deco:before {
        background-image: url(../images/header_left_sp.png);
    }
}

@media screen and (max-width: 960px) {
    .header-deco:before {
        height: 130px;
    }
}

@media screen and (max-width: 480px) {
    .header-deco:before {
        background-size: 100% auto;
    }
}

@media screen and (max-width: 480px) {
    .header-deco {
        background-size: 100% auto;
    }
}

@media screen and (min-width: 961px) {
    .home .header-deco, .page-template-page-language-php .header-deco {
        position: absolute;
    }
}

@media screen and (min-width: 561px) {
    .header-deco {
        background-image: url(../images/header_right.png);
    }
}

@media screen and (min-width: 1161px) {
    .header-deco {
        padding: 30px 50px;
        height: 200px;
    }
}

@media screen and (min-width: 961px) {
    .header-deco {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

@media screen and (min-width: 561px) {
    .header-deco {
        background-size: auto 100%;
    }
}

.header-deco {
    top: 0;
    left: 0;
    width: 100%;
    z-index: 3;
    position: relative;
    background-repeat: no-repeat;
    background-position: top right;
}

@media screen and (min-width: 561px) {
    .header-deco:before {
        background-image: url(../images/header_left.png);
        opacity: 0.8;
    }
}

@media screen and (min-width: 1161px) {
    .header-deco:before {
        height: 200px;
    }
}

@media screen and (min-width: 561px) {
    .header-deco:before {
        background-size: auto 100%;
    }
}

.header-deco:before {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: top left;
}

*:before, *:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}

@media screen and (min-width: 1161px) {
    .header-deco .header-deco_left {
        width: 300px;
    }
}

@media screen and (min-width: 961px) {
    .header-deco .header_logo {
        max-width: 300px;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 768px) {
    a img {
        border: 0;
        max-width: 100%;
    height: auto;
    vertical-align: bottom;
    }
}

@media screen and (min-width: 768px) and (max-width: 1024px)  {
.header-deco:before {
	height: 180px;
}
}

@media screen and (min-width: 1025px) {
.header-deco:before {
	height: 200px;
}
}

@media screen and (max-width: 767px) {
.header-deco:before {
	height: 130px;
}
}

/* ---------- home ---------- */
.home_intro {
  width: 100%;
  padding: 100px 0;
}
.home_intro .inner {
  margin: 0 auto;
  width: 680px;
  height: 450px;
}
.home_intro h1 { float: right; }
.home_intro .outline {
  float: right;
  margin: 0 50px 0 0;
  height: 450px;
}
.home_intro .outline p {
  margin: 0;
  font-size: 16px;
  line-height: 2.6;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}
.home_intro ul {
  float: left;
  position: relative;
}
.home_intro li { position: absolute; }
.home_intro li:first-child {
  left: 0;
  top: 210px;
}
.home_intro li:last-child {
  left: 0;
  top: 390px;
}
.home_intro li:last-child img { width: 30px; }
.home_feature {
  width: 100%;
  text-align: left;
}
.home_feature li {
  width: 100%;
  height: 560px;
}
.home_feature .img,
.home_feature .detail {
  width: 50%;
  height: 560px;
}
.home_feature .img {
  position: relative;
  overflow: hidden;
}
.home_feature .detail { display: table; }
.home_feature li:nth-child(odd) .img,
.home_feature li:nth-child(even) .detail { float: left; }
.home_feature li:nth-child(even) .img,
.home_feature li:nth-child(odd) .detail { float: right; }
.home_feature .img img {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 1000px;
  height: 560px;
  margin-left: -500px;
}
.home_feature li:first-child .detail { border-top: 1px solid #ddd8cd; }
.home_feature li:last-child .detail { border-bottom: 1px solid #ddd8cd; }
.home_feature .wrap {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.home_feature h2 {
  font-size: 36px;
  font-weight: normal;
  line-height: 1.4;
}
.home_feature h2 img {
  display: block;
  margin: 0 auto;
}
.home_feature h2 span {
  display: block;
  margin: 10px 0 40px;
}
.home_feature p {
  margin-bottom: 40px;
  padding: 0 60px;
  text-align:left;
}
.home_news .inner {
  width: 800px;
  margin: 0 auto;
}
.home_news dl {
  position: relative;
  border-top: 1px dotted #d5d0c6;
  line-height: 100%;
}
.home_news dt {
  position: absolute;
  padding: 20px 0 20px 60px;
  z-index: 1;
}
.home_news dd { border-bottom: 1px dotted #d5d0c6; }
.home_news dd:nth-child(4n+2) a { background: #f1efea; }
.home_news dd:nth-child(4n+4) a { background: #f3f1ec; }
.home_news a {
  position: relative;
  display: block;
  text-decoration: none;
  padding: 20px 60px 20px 170px;
}
.home_news a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 6px;
  height: 6px;
  margin-top: -5px;
  border-bottom: solid 3px #d4cfc3;
  border-right: solid 3px #d4cfc3;
  transform: rotate(-45deg);
  content: "";
}

@media screen and (min-width: 1000px) {
.home_intro { background: url(../images/concept_bg_img.jpg) no-repeat; background-size: cover;}
}

@media screen and (max-width: 999px) {
  .home_intro {
    background: url(../images/concept_bg_img_sp.jpg) no-repeat; background-size: cover;
  }

  /* ---------- home ---------- */
  .bestrate_sp {
    background-color: #786f53;
    color: #fff;
    font-size: 12rem;
    text-align: center;
    padding: 3px 0;
  }
  .bestrate_sp .icon { margin-bottom: -3px; }

  .home_intro {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 0;
  }
  .home_intro .inner {
    display: flex;
    flex-direction: row-reverse;
    width: auto;
    height: 100%;
    margin: 0 auto;
    padding: 70px 15px 70px 15px;
  }
  .home_intro h1 {
    width: 27px;
    float: none;
  }
  .home_intro h1 img.sp { width: 27px; }
  .home_intro .outline {
    float: none;
    margin: 0 20px 0 0;
    width: 310px;
    height: 510px;
  }
  .home_intro .outline p {
    font-size: 14px;
    line-height: 2.2;
  }
  .home_intro ul { display: none; }
  .home_feature li {
    width: 100%;
    height: auto;
  }
  .home_feature .img,
  .home_feature .detail {
    width: 100%;
    height: auto;
  }
  .home_feature .img {
    position: relative;
    overflow: auto;
  }
  .home_feature ul li:nth-child(odd) .img,
  .home_feature ul li:nth-child(even) .detail { float: none; }
  .home_feature ul li:nth-child(even) .img,
  .home_feature ul li:nth-child(odd) .detail { float: none; }
  .home_feature .img img {
    position: static;
    width: 100%;
    height: auto;
    margin-left: 0;
  }
  .home_feature ul li:first-child .detail { border-top: none; }
  .home_feature .wrap { padding: 30px 15px; }
  .home_feature h2 { font-size: 24rem; }
  .home_feature h2 img { height: 50px; }
  .home_feature h2 span { margin: 10px 0 20px; }
  .home_feature p {
    margin-bottom: 20px;
    padding: 0;
  }
  .home_news { margin-bottom: 0; }
  .home_news .inner { width: 100%; }
  .home_news dl { line-height: 1.5; }
  .home_news dt { padding: 15px 0 15px 15px; }
  .home_news dd:last-child { border-bottom: none; }
  .home_news a { padding: 15px 30px 15px 100px; }
}

.omo-title01 {
	text-align: center;
    margin-top: 27px;
    margin-bottom: 20px;
    font-weight: bold;
    font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

.omo-title02 {
	text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    font-weight: bold;
    font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";
}

.omo-text {
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 100px;
	font-size: 16px;
	font-family: "游明朝", "ヒラギノ明朝", "YuMincho", "ヒラギノ明朝 ProN W3";

}

.header-deco .header-deco_right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    text-align: right;
}
@media screen and (max-width: 960px) {
.header-deco .header-deco_right {
    display: none;
}
}

@media screen and (min-width: 961px) and (max-width: 1160px) {
    .header-deco .tel_icon {
        margin-right: 10px;
    }
}

p.tel_icon {
    padding-top: 0px;
}

header .tel_icon span {
    font-size: 12px;
    background: #444;
    color: #fff;
    padding: 5px 10px;
}

@media screen and (min-width: 961px) and (max-width: 1160px) {
    .top header .tel_icon a {
        color: #ffffff;
    }
}

header .tel_icon a {
    background: none;
    font-size: 30px;
}

p.head_tel_about {
    font-size: 13px;
}

@media screen and (max-width: 999px) {
    .pc {
        display: none !important;
    }
}
@media only screen and (min-width: 1000px) {
.sp {
    display: none !important;
}
}

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

.cal_wrapper-sp {
display: none !important;
max-width: 600px;
min-width: 450px;
margin: 2.0833% auto;
}

.googlecal {
position: relative;
padding-bottom: 100%;
height: 0;
}

.googlecal iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

}

@media only screen and (min-width: 768px) {
.googlecal { padding-bottom: 75%; }

}

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

.cal_wrapper-pc {
display: none !important;
max-width: 600px;
min-width: 450px;
margin: 2.0833% auto;
}

.googlecal {
position: relative;
padding-bottom: 100%;
height: 0;
}

.googlecal iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

.calendartittle { font-size: 26px; }

}

@media only screen and (min-width: 768px) {
.googlecal { padding-bottom: 75%; }
}

@media screen and (min-width: 768px) and (max-width: 1024px)  {
.logo_b {
	margin-top: 20px;
	margin-left: 20px;
}
}

.nv06 {
	background-color: #FFDBC9;
}

