@charset "UTF-8";
html,body{margin:0px;padding:0px;}em,address{font-style:normal;}table th,table td,dl,dl dt,dl dd,ul,ol,li,p{font-size:1rem;margin:0px;padding:0px;line-height:1.5;}
.row{position:relative;clear:both;margin-left:auto;margin-right:auto;box-sizing:border-box;}.row > *{display:block;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;}
@media screen and (min-width: 769px){.sp{display:none!important;}.row.w100{max-width:100%!important;}.row.w500{max-width:500px!important;}.row.w600{max-width:600px!important;}.row.w750{max-width:750px!important;}.row.w800{max-width:800px!important;}.row.w850{max-width:550px!important;}.row.w900{max-width:900px!important;}.row.w1000{max-width:1000px!important;}.row.w1200{max-width:1200px!important;}.row.col2,.row.sol2,.row.col3,.row.sol3,.row.col4,.row.col5,.row.col6,.row.col28,.row.col82,.row.col37,.row.col64,.row.col65,.row.col73,.row.col82,.row.col23s,.row.sol64,.row.sol5,.row.col46{display:flex;flex-wrap: wrap;align-items:stretch;width:100%;margin-left:auto;margin-right:auto;}.row.col65,.row.col2,.row.sol2,.row.col3,.row.col5,.row.col4,.row.col46,.row.col64,.row.col28,.row.col82,.row.col37,.row.col23s,.row.col6,.row.sol5,.row.col73{justify-content:space-between;}.row.just{justify-content:space-between!important;}.row.around{justify-content:space-around!important;}.row.evenly{justify-content: space-evenly!important;}.row.center{justify-content: center!important;}.row.left{justify-content: left!important;}.row.right{justify-content: right!important;}.row.middle{align-items:center!important;}.row.baseline{align-items:baseline!important;}.row.end{align-items:flex-end!important;}.row.start{align-items:flex-start!important;}.row.rev{flex-direction:row-reverse;}.row.column{flex-direction:column}.row.colrev{flex-direction:column-reverse;}.row.flex{display:flex;}.row.flex > *{display:block;}.row.col2 > *{flex-basis:48%;max-width:48%;}.row.col2.ms0 > *{flex-basis:50%;max-width:50%;}.row.col2.ms2 > *{flex-basis:48%;max-width:48%;}.row.col2.ms3 > *{flex-basis:47%;max-width:47%;}.row.col2.ms4 > *{flex-basis:46%;max-width:46%;}.row.col3 > *{flex-basis:31.3%;max-width:31.3%;}.row.col3.ms0 > *{flex-basis:33.3%;max-width:33.3%;}.row.col3.ms2 > *{flex-basis:31.3%;max-width:31.3%;}.row.col3.ms3 > *{flex-basis:30.3%;max-width:30.3%;}.row.col4 > *{flex-basis:24%;max-width:24%;}.row.col4.ms0 > *{flex-basis:25%;max-width:25%;}.row.col4.ms2 > *{flex-basis:23%;max-width:23%;}.row.col4.ms3 > *{flex-basis:22%;max-width:22%;}.row.col5 > *{flex-basis:18.4%;max-width:18.4%;}.row.col5.ms2 > *{flex-basis:17.4%;max-width:17.4%;}.row.col6 > *{flex-basis:14.96%;max-width:14.96%;}.row.col65 > *:nth-child(odd){flex-basis:64%;max-width:64%;}.row.col64 > *:nth-child(odd){flex-basis:58%;max-width:58%;}.row.col46 > *:nth-child(odd){flex-basis:38%;max-width:38%;}.row.col37 > *:nth-child(odd){flex-basis:29%;max-width:29%;}.row.col37.ms3 > *:nth-child(odd){flex-basis:29%;max-width:29%;}.row.col73 > *:nth-child(odd){flex-basis:67%;max-width:67%;}.row.col28 > *:nth-child(odd){flex-basis:21%;max-width:21%;}.row.col82 > *:nth-child(odd){flex-basis:75%;max-width:75%;}.row.col46 >*:nth-child(odd),.row.col28 >*:nth-child(odd),.row.col82 >*:nth-child(even),.row.col37 >*:nth-child(odd),.row.col73 >*:nth-child(odd),.row.col64 > *:nth-child(odd){flex-grow:0;}.row.col46.rev >*:nth-child(odd),.row.col28.rev >*:nth-child(odd),.row.col37.rev >*:nth-child(odd),.row.col73.rev >*:nth-child(odd){flex-grow:0;margin-right:0px;}.row.col46 >*:nth-child(even),.row.col28 >*:nth-child(even),.row.col82 >*:nth-child(odd),.row.col37 >*:nth-child(even){flex-grow:1;}.row.col65 > *:nth-child(even){flex-basis:34%;max-width:34%;}.row.col64 > *:nth-child(even){flex-basis:38%;max-width:38%;}.row.col46 > *:nth-child(even){flex-basis:58%;max-width:58%;}.row.col37 > *:nth-child(even){flex-basis:67%;max-width:67%;margin-right:0px;}.row.col37.ms3 > *:nth-child(even){flex-basis:65%;max-width:65%;}.row.col73 > *:nth-child(even){flex-basis:29%;max-width:29%;margin-right:0px;}.row.col82 > *:nth-child(even){flex-basis:21%;max-width:21%;}.row.col28 > *:nth-child(even){flex-basis:75%;max-width:75%;}.row.col23s > *{flex-basis:31.3%;max-width:31.3%;}.row.col23s > *:nth-child(5n -1),.row.col23s > *:nth-child(5n){flex-basis:48.6%;max-width:48.6%;}.row.sol2 > *{flex-basis:50%;max-width:50%;}.row.sol3 > *{flex-basis:33.3%;max-width:33.3%;}.row.sol5 > *{flex-basis:20%;max-width:20%;}.row.sol64 > *:nth-child(even){flex-basis:45%;max-width:45%;}.row.sol64 > *:nth-child(odd){flex-basis:55%;max-width:55%;}.imgs{flex-shrink:0;position:relative;}.imgs img{width:auto;height:auto;max-width:100%;display:block;margin-left:auto;margin-right:auto;}}
@media screen and (max-width: 768px){html,body{width:100%;overflow-x:hidden;line-height:1.5;}
.pc{display:none!important;}.row.sp_col2,.row.sp_col46,.row.sp_col64,.row.sp_col3,.row.sp_col4,.row.sp_sol3,.row.sp_col5{display:flex;flex-wrap: wrap;align-items:stretch;justify-content:space-between;width:100%;margin-left:auto;margin-right:auto;}.row.sp_col2 > *{flex-basis:48%;max-width:48%;}.row.sp_col3 > *{flex-basis:32%;max-width:32%;}.row.sp_col4 > *{flex-basis:23.5%;max-width:23.5%;}.row.sp_col5 > *{flex-basis:18.4%;max-width:18.4%;}.row.sp_col46 > *:nth-child(odd){flex-basis:34%;max-width:34%;}.row.sp_col46 > *:nth-child(even){flex-basis:62%;max-width:62%;}.row.sp_col64 > *:nth-child(odd){flex-basis:60%;max-width:60%;}.row.sp_col64 > *:nth-child(even){margin-right:0px;flex-basis:34%;max-width:34%;}.row.sp_sol3 > *{flex-basis:33.3%;max-width:33.3%;}.sp_imgs img,.imgs{margin:1rem 0px;position:relative;}.sp_imgs img,.imgs img{width:100%;height:auto;display:block;}}
.mt1{margin-top:1rem;}.mt2{margin-top:2rem;}.mt3{margin-top:3rem;}.mt4{margin-top:4rem;}.mt5{margin-top:5rem;}.mt6{margin-top:6rem;}.mt7{margin-top:7rem;}.mb1{margin-bottom:1rem;}.mb2{margin-bottom:2rem;}.mb3{margin-bottom:3rem;}.mb4{margin-bottom:4rem;}.mb5{margin-bottom:5rem;}.pt1{padding-top:1rem;}.pt2{padding-top:2rem;}.pt3{padding-top:3rem;}.pt4{padding-top:4rem;}.pt5{padding-top:5rem;}.pb1{padding-bottom:1rem;}.pb2{padding-bottom:2rem;}.pb3{padding-bottom:3rem;}.pb4{padding-bottom:4rem;}.pb5{padding-bottom:5rem;}
section{position:relative;}
ruby > rt {font-size:0.6em;text-indent:1em;}
.fl{float:left;margin-right:1rem;}.fr{float:right;margin-left:1rem;}
.abs{position:absolute;}

html,body{background-color:#FFF;overflow-x:hidden;line-height:1.6;font-family: "Sawarabi Mincho",serif;font-size:16px;font-weight:300;color:#000;background-size:auto;background-position:center top;background-repeat:no-repeat;}
#wrap{margin:0px auto;position:relative;}
.serif{font-family:serif;}
.center{text-align:center;}
p.right{text-align:right;}
.lead{font-size:1.25rem;line-height:2.3;}
.lead em{font-size:1.1rem;}
.clear{clear: both;}
.cf:after {visibility: hidden;display: block;font-size: 0;content: " ";clear: both;height: 0;overflow: hidden;}
* html .cf{ zoom: 1; } /* ie6 */
*:first-child+html .cf { zoom: 1; } /* ie7 */
.f_left{float: left;}
.f_right{float: right;}

h1,h2,h3,h4,h5{font-weight:normal;position:relative;line-height:1.1;margin:0px;padding:0px;font-weight:bold;}
a{color:inherit;text-decoration:none;transition:all 0.2s;}
a > img{transition:all 0.2s;}
img+small{font-size:0.7rem;display:block;margin:6px auto 1rem;text-align:center;}

p{line-height:1.8;letter-spacing:0.05em;}

.inner{box-sizing:border-box;margin-left:auto;margin-right:auto;}
section > .inner{max-width:940px;width:92vw;margin-left:auto;margin-right:auto;}

ul,ol{margin:1rem 0px;padding:0px;list-style-type:none;}
ul > li{position:relative;margin:8px 0px;line-height:1.5;padding:0px;}
ul li{position:relative;line-height:1.5;text-align: justify;text-justify: inter-ideograph;}


header{width:100%;position:absolute;left:0px;top:0px;z-index:10;display:flex;justify-content:space-between;}
header > .row{width:100%;display:flex;justify-content:space-between;height:78px;background-color:#fff;}


header .hr{padding-right:78px;display:flex;justify-content:space-between;}

header .sns{display:flex;z-index:1200;}
header .sns > a{padding:15px 10px 10px 65px;margin-right:5px;display:block;font-weight:bold;font-size:1.15rem;font-family:sun-serif;background-position:left 10px center;background-repeat:no-repeat;}
header .sns > a:hover{opacity:0.6;}
header .sns > a.icon_tel{color:#90507C;background-image:url(./images/icon_tel.png);}
header .sns > a.icon_mail{color:#657DA3;background-image:url(./images/icon_reservation.png);}
header .sns > a.icon_line{color:#39AD36;background-image:url(./images/icon_line.png);}
header .sns > a small{display:block;color:#5A5A5A;font-size:0.8rem;font-weight:normal;}


header #site_menu_btn{display:block;width:78px;height:78px;padding:50px 10px 10px;margin:0px;color:#FFF;font-family:sun-serif;font-size:0.7rem;background:#5AA8A9;position:fixed;top:0px;right:0px;box-sizing:border-box;text-align:center;z-index:1100;}
header #site_menu_btn.active{background:#879AB7;}
header #site_menu_btn span{position:absolute;left:50%;margin-left:-15px;width:30px;top:50%;height:1px;margin-top:-8px;background:#FFF;display:block;}
header #site_menu_btn span:before,
header #site_menu_btn span:after{content:'';width:30px;height:1px;display:block;position:absolute;left:50%;margin-left:-15px;background:#FFF;}
header #site_menu_btn span:before{top:-6px;}
header #site_menu_btn span:after{top:6px;}
header #site_menu_btn.active span{background:transparent;}
header #site_menu_btn.active span:before{transform:rotate(45deg);top:0px;}
header #site_menu_btn.active span:after{transform:rotate(-45deg);top:0px;}

header #site_menu{display:none;z-index:1000;transition:all 0.5s;top: 0px;left: 0px;height:0;display:none;postion:fixed;top:0px;left:0px;width:100%;align-items:center;justify-content: flex-end;background: rgba(255,255,255,0);}
header #site_menu_btn.active+#site_menu{box-sizing:boeder-box;padding:80px 0px;display:flex;background: rgba(255,255,255,0.95);height: 100vh;box-sizing:border-box;position: fixed;align-items: center;justify-content: center;}
header #site_menu .site_menu .menu_list{width:100%;max-width:940px;box-sizing:border-box;margin:0px auto;display:flex;}
header #site_menu .site_menu li{flex-grow:1;margin:0px;}
header #site_menu .site_menu li+li{margin-left:1rem;}
header #site_menu .site_menu li a{box-sizing:border-box;font-size:0.9rem;flex-direction:column;display:flex;align-items:center;justify-content:flex-start;text-align:center;font-weight:300;font-size:0.8rem;}
header #site_menu .site_menu li a:after{transition:all 0.2s;height:2px;background:#1D2087;width:0%;content:'';display:block;margin:3px auto;}
header #site_menu .site_menu li a:hover:after{width:100%;}
header #site_menu .site_menu li a:hover{color:#1D2087;}

header #site_menu .site_menu ul{flex-direction:column;}
header #site_menu .site_menu li{margin:0px;}

#site_menu ul{display:flex;justify-content:space-between;flex-direction:column;height: 50vh;}
#site_menu ul li{border-bottom:1px solid #000;margin:0px;padding: 1rem 0px;margin: 0px;font-size: 1.3rem;text-align:center;width:100%;}
#site_menu ul li a:hover{color:#90507C;}
#site_menu ul .inline{padding:0.5rem;}
#site_menu ul .inline a{margin-right:1rem;}
#site_menu ul .inline a:before{content:'・';font-size:0.9em;}

#content{}
#content #main{}

section{padding:4rem 0px;box-sizing:border-box;}
section > .row{width:92vw;max-width:960px;}


h2{letter-spacing:0.05em;font-size:2rem;font-weight:normal;text-align:center;line-height:1.5;position:relative;margin-bottom:2rem;}
h2:before,
h2:after{content:'';background-size:contain;background-position:center center;background-repeat:no-repeat;}

#front_contact h2,
#front_vita h2,
#main h2{font-size:2.24rem;justify-content:center;display:flex;align-items:center;margin-bottom:5rem;}
#front_vita h2 span,
#front_contact h2 span,
#main h2 > span{margin:0px 1em;flex-shrink:0;position:relative;text-align:center;display:block;}
#front_vita h2 > span > small,#main h2 > span > small{position:absolute;width:100%;left:0px;bottom:-2rem;font-size:0.4em;letter-spacing:0;color:#5AA8A9;display:block;text-align:center;}
#front_vita h2 > span > span,#main h2 > span > span{font-size:0.7em;}

#front_contact h2:before,
#front_contact h2:after,
#front_vita h2:before,
#front_vita h2:after,
#main h2:before,
#main h2:after{content:'';display:block;max-width:180px;width:5em;height:2px;background-position:background-size:cover;background-position:center center;background-repeat:no-repeat;margin:0px;}
#front_vita h2:before,#main h2:before{background-image:url(./images/line4_l.png);}
#front_vita h2:after,#main h2:after{background-image:url(./images/line4_r.png);}


h3{letter-spacing:0.1em;line-height:1.4;font-size:1.25rem;background:url(./images/line3.png) center top no-repeat,url(./images/line3.png) center bottom no-repeat;background-size:100% auto;text-align:center;padding:0.7em 0px;margin:2rem 0px 1rem;}


.wbg{background:rgba(255,255,255,0.6);}
p.wbg{padding:1rem;}

.btn_more{position:relative;text-align:center;display:inline-block;width:60vw;max-width:240px;background:#90507C;color:#FFF;padding:12px 20px;box-sizing:border-box;margin:2rem auto 0px;}
.btn_more:after{content:'';display:block;width:0.6em;height:0.6em;border-right:1px solid #FFF;border-bottom:1px solid #FFF;position:absolute;right:1rem;top:50%;margin-top:-0.3em;transform:rotate(-45deg);transition:all 0.3s;}
.btn_more.wb{background-color:#FFF;color:#90507C;}
.btn_more:hover{background-color:#C8507C;}
.btn_more:hover:after{right:0.7rem;}

.btn_contact{padding:0px 2rem 0px 0px;box-sizing:border-box;background:#7EBBBC url(./images/icon_mail_w.png) right 2rem center no-repeat;height:100px;display:flex;width:100%;max-width:480px;font-size:1.25rem;align-items:center;justify-content:center;color:#FFF;}
.btn_contact:hover{background-color:#879AB7;}

.gbg{background-color:#F2F2F2;}


footer{padding:2rem 0px 0px;border-top:5px solid #879AB7;background-color:#FFF;}
footer > .row{width:92vw;max-width:960px;}

footer .flogo{text-align:center;width:100%;}
footer .flogo a{margin:0px auto;display:inline-block;}
footer .flogo img{display:block;width:auto;height:auto;max-width:60vw;max-height:106px;}

footer .fm li{border-top:1px solid #000;padding:1rem 0px;margin:0px;}
footer .fm .inline{padding:0.5rem;}
footer .fm .inline a{margin-right:1rem;}
footer .fm .inline a:before{content:'・';font-size:0.9em;}


footer .copyright{font-size:0.8rem;background:#7EBBBC;padding:10px 0px;color:#FFF;font-family:sun-serif;}
footer a:hover{opacity:0.6;}

.f_menu{display: none;}

#mv{}

#vita_about{height:40vh;display:flex;align-items:center;background:url(./images/about_bg_r2.png) left center no-repeat,url(./images/about_bg_l2.png) right center no-repeat;background-size:auto 100%,contain;}
#vita_about .row.w800{margin: 0 auto;}
#vita_about h2{margin:0px;text-align:left;padding:1.5rem;font-size:2rem;background:url(./images/line1_l.png) left top no-repeat,url(./images/line1_r.png) right bottom no-repeat;background-size:1.5em 3em;}
.btn_vita{position:relative;text-align:center;display:inline-block;width:60vw;max-width:240px;background:#5AA8A9;color:#FFF;padding:12px 20px;box-sizing:border-box;margin:2rem auto 0px;}
.btn_vita:after{content:'';display:block;width:0.6em;height:0.6em;border-right:1px solid #FFF;border-bottom:1px solid #FFF;position:absolute;right:1rem;top:50%;margin-top:-0.3em;transform:rotate(-45deg);transition:all 0.3s;}
.btn_vita:hover{background-color:#87c6c6;}
.btn_vita:hover:after{right:0.7rem;}
.btn_vita{display:block;font-size: 1.5rem;}
#vita_list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}
#vita_list li{
    width: 50%;
    margin: 0;
    padding: 0 1rem;
    box-sizing: border-box;
}
#vita_list li > div{
    width: 100%;
    padding: 0.75rem 0 0.75rem 1.5rem;
    border-bottom: 1px dashed #ddd;
    box-sizing: border-box;
    position: relative;
}
#vita_list li > div::before{
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 9px;
    height: 4px;
    border-left: 3px solid #5AA8A9;
    border-bottom: 3px solid #5AA8A9;
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
}
.vita_price{text-align:center;margin-bottom:1rem;text-align:center;}
.vita_price p{font-size:1.2rem;line-height:1.2;display:inline-block;margin-left:auto;margin-right:auto;background:url(./images/price_bg.png) center bottom no-repeat;background-size:100% 0.5em;}
.vita_price small{font-size:1.2rem;}
.vita_price span{display:inline-blokc;margin-right:1em;}
.vita_price em{font-size:1.8em;}
.btn_vita2.btn_contact{background-color: #90507C;}
.btn_vita2.btn_contact:hover{background-color: #C8507C;}

@media screen and (max-width: 768px){
    #vita_about{
        padding-top: 65vw;
        height: auto;
        background-position: left top,right top;
        background-size: 50vw, 80vw;
    }
    #vita_about .row.w800{
        width: 92vw;
        max-width: 960px;
    }
    #vita_list{
        display: block;
        margin: 0;
    }
    #vita_list li{
        width: auto;
        padding: 0;
    }
    #vita_list li > div{
        padding: 0.75rem 0 0.75rem 2rem;
    }
}


#front #mv{height:84vh;width:100%;padding:5rem 0px 0;display:flex;align-items:center;justify-content:center;background:url(./images/mv_front4.jpeg) center bottom no-repeat;background-size:cover;}
#front #mv.new{background:url(./images/mv_front4_2.jpg) center bottom no-repeat;background-size:cover;}
#front #mv h1 img{margin:0px;max-height:calc(84vh - 78px - 10rem);}

#front #front_lead{padding-top:0px;}
#front #front_lead h2:after{display:block;margin-top:1rem;height:2px;width:100%;max-width:900px;background-image:url(./images/line3.png);}


#front_about{height:60vh;display:flex;align-items:center;background:url(./images/about_bg_r.png) right center no-repeat,url(./images/about_bg_l.jpg) left center no-repeat;background-size:auto 100%,contain;}
#front_about .row.w800{margin-left:48vh;}
#front_about h2{margin:0px;text-align:left;padding:1.5rem;font-size:2rem;background:url(./images/line1_l.png) left top no-repeat,url(./images/line1_r.png) right bottom no-repeat;background-size:1.5em 3em;}


#front_menu{color:#FFF;background-color:#7EBBBC;background-image: url(./images/front_menu_bg3.jpg),url(./images/menu_bg.png);background-position: right center,left top;background-repeat: no-repeat; background-size:auto 100%,contain;}
#front_menu.new{color:#FFF;background-color:#7EBBBC;background-image: url(./images/front_menu_bg3-2.jpg),url(./images/menu_bg.png);background-position: right center,left top;background-repeat: no-repeat; background-size:auto 100%,contain;}

#front_menu .row{margin-right:46vw;}
/*
#front_menu:after{content:'';display:block;width:585px;height:436px;max-width:40vw;position:absolute;right:0px;top:0px;background:url(./images/menu_bg_r.png) right top no-repeat;background-size:contain;}
*/
#front_menu h2{margin:0px 1em 0px 0px;text-align:left;padding:1.5rem;font-size:2rem;background:url(./images/line2_l.png) left top no-repeat,url(./images/line2_r.png) right bottom no-repeat;background-size:1.5em 3em;}


#front_flow{height:60vh;background:url(./images/flow_bg.jpg) left top no-repeat;background-size:auto 100%;display:flex;align-items:center;justify-content:center;}

#front_flow.new{height:60vh;background:url(./images/flow_bg-2.jpg) center top no-repeat;background-size:cover;display:flex;align-items:center;justify-content:center;}


#front_recommend{}
.recommend_blk > *{background:#FFF;padding:2rem;box-sizing:border-box;margin-bottom:3rem;}
.recommend_blk h3{color:#7EBBBC;text-align:center;margin:1.5rem 0px;font-weight:normal;font-size:1.48rem;margin:1rem 0px;background:none;}
.recommend_blk p.lead{line-height:1.4;font-size:1.15rem;margin-bottom:0.5em;}
.recommend_blk .price{text-align:center;margin-top:1rem;text-align:center;}
.recommend_blk .price p{font-size:1.2rem;line-height:1.2;display:inline-block;margin-left:auto;margin-right:auto;background:url(./images/price_bg.png) center bottom no-repeat;background-size:100% 0.5em;}
.recommend_blk .price small{font-size:1.2rem;}
.recommend_blk .price span{display:inline-blokc;margin-right:1em;}
.recommend_blk .price em{font-size:1.8em;}


#front_access{}
.map iframe{width:100%;height:440px;}


#front_contact{padding:5rem 0px;width:100%;}
#front_contact > .row{width:92vw;max-width:960px;margin:0px auto;}
#front_contact h2{font-size:1.4rem;color:#5A5A5A;margin:0px;margin-bottom:1rem;}
#front_contact h2:before,
#front_contact h2:after{background:#5A5A5A;}
#front_contact p{font-size:2rem;color:#5A5A5A;line-height:1;text-align:center;}
#front_contact a.tel{font-size:3.2rem;color:#5A5A5A;}

a.opc:hover img{transform:all 0.3s;}
a.opc:hover img{opacity:0.6;}

#second{background:url(./images/mv_bg.jpeg) center top no-repeat;background-size:100% auto;background-attachment: fixed;}
#second #content{padding:78px 0px;}
#breadcrumb{display:none;}

#second #mv{height:240px;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;}
#second h1{text-shadow:0px 0px 10px #FFF,0px 0px 20px #FFF;font-size:2.7rem;text-align:center;letter-spacing:0.1em;font-weight:normal;}
#second #main{width:100%;max-width:1080px;margin:0px auto;background:rgba(255,255,255,0.85);padding:1rem;box-sizing:border-box;}

#second #main .menu_tab{margin-bottom:3rem;}
#second #main .menu_tab a{background:#E5E5E5;display:flex;align-items:center;justify-content:center;padding:10px;font-size:1.4rem;margin-bottom:1rem;}
#second #main .menu_tab a.grn{color:#5AA8A9;}
#second #main .menu_tab a.grn.active{color:#FFF;background:#5AA8A9;}
#second #main .menu_tab a.ppl{color:#90507C;}
#second #main .menu_tab a.ppl.active{color:#FFF;background:#90507C;}
#second #main .menu_tab a.ble{color:#657DA3;}
#second #main .menu_tab a.ble.active{color:#FFF;background:#657DA3;}
#second #main .menu_tab a.bwn{color:#9e7b2a;}
#second #main .menu_tab a.bwn.active{color:#FFF;background:#9e7b2a;}
#second #main .menu_cont{display:none;}
#second #main .menu_cont.active{display:block;}


#second.about .biography{width: 100%;margin-bottom: 1rem;border-collapse:collapse;}
#second.about .biography th,#second.about .biography td{
    font-weight: normal;
    text-align: left;
    padding: 1rem;
    border-bottom: 1px dotted #000;
}

#second.about #philosophy{background-color: #7EBBBC;background-image: url(./images/menu_bg.png);background-position:left center;background-repeat: no-repeat;background-size:cover;width:100%;padding:4rem 4rem;left:-4rem;position:relative;margin:4rem 0px;color:#FFF;}
#second.about #philosophy h3{padding:0px;margin:0px auto 2rem;background:none;font-size:2rem;letter-spacing:0.2em;}
#second.about #philosophy p{font-size:1.3rem;text-align:center;}
#second.about h2:first-child+p{line-height:2.2;}

#second.about #flow{}
#second.about #flow .flow{counter-reset: flow_num;}
#second.about #flow dl{display:flex;padding:2rem 0px;border-top:1px solid #000;}
#second.about #flow dl dt{position:relative;padding-left:70px;box-sizing:border-box;width:25%;font-size:1.3rem;flex-shrink:0;}
#second.about #flow dl dt:before{font-weight:bold;counter-increment:flow_num;content: counter(flow_num) ".";display:block;font-size:4rem;color:rgba(90,168,169,0.3);position:absolute;left:0px;top:-1rem;font-family:"times";font-style:italic;line-height:1;}
#second.about #flow .btns a{height:4em;margin-bottom:1rem;flex-direction:column;display:flex;text-align:center;align-items:center;justify-content:center;background:#5AA8A9;color:#FFF;font-size:1.3rem;}
#second.about #flow .btns a:nth-child(odd){background:#657DA3;}
#second.about #flow .btns a small{display:block;font-size:0.6em;}
#second.about #flow .btns a:hover{opacity:0.6;}

#shiratama_mv img{
    vertical-align: middle;
    width: 100%;
    height: auto;
}
.shiratama_contact .row{
    flex-flow: row-reverse;
}
.shiratama section#bn{padding: 0 0 4rem;}
.shiratama #main #glutathione h2 > span > small{color: #fff;}
#second.shiratama .shiratama_image,
#second.shiratama .shiratama_text{margin-bottom: 5rem;}
#second.shiratama .shiratama_image{width: 45%;}
#second.shiratama .shiratama_text{width: 55%;box-sizing: border-box;}
#second.shiratama .shiratama_text.f_left{padding-right: 3%;}
#second.shiratama .shiratama_text.f_right{padding-left: 3%;}
#second.shiratama #glutathione{
    background-color: #7EBBBC;
    width:100%;
    padding:4rem 4rem;
    left:-4rem;
    position:relative;
    margin:4rem 0px;
    color:#FFF;
}
#second.shiratama #glutathione .shiratama_image,
#second.shiratama #glutathione .shiratama_text{margin-bottom: 0;}
#second.shiratama .shiratama_image img{width: 100%; height: auto;}
#second.shiratama .shiratama_price{text-align:center;margin-bottom:1rem;text-align:center;}
#second.shiratama .shiratama_price p{font-size:1.2rem;line-height:1.2;display:inline-block;margin-left:auto;margin-right:auto;background:url(./images/price_bg.png) center bottom no-repeat;background-size:100% 0.5em;}
#second.shiratama .shiratama_price small{font-size:1.2rem;}
#second.shiratama .shiratama_price span{display:inline-block;margin-right:1em;}
#second.shiratama .shiratama_price em{font-size:1.8em;}

@media screen and (max-width: 768px){
    .shiratama_contact .btn_contact{
        margin-top: 0;
        margin-bottom: 2rem;
    }

    #second.shiratama .shiratama_image,
    #second.shiratama #glutathione .shiratama_image{margin-bottom: 2rem;}
    #second.shiratama .shiratama_image.f_left,
    #second.shiratama .shiratama_image.f_right,
    #second.shiratama .shiratama_text.f_left,
    #second.shiratama .shiratama_text.f_right{width: auto; padding: 0; float: none;}
}




#second.menu{}
#second.menu #main h2{margin-bottom:2rem;}
#second.menu #main .item{margin-bottom:3rem;}
#second.menu #main .item h3{background:none;font-size:1.6rem;margin-bottom:1rem;padding:0px;display:flex;align-items:center;justify-content:center;height:3em;margin:5px 0px;line-height:1.4;}
#second.menu #main .item h4{text-align:center;font-size:1.2rem;margin:1rem auto;}
#second.menu #main #t1 .item h3,
#second.menu #main #t1 .item h4{color:#5AA8A9;}
#second.menu #main #t2 .item h3,
#second.menu #main #t2 .item h4{color:#90507C;}
#second.menu #main .item .recommend{margin-bottom:1rem;}
#second.menu #main .item .rh{text-align:center;margin:0px;font-family:sun-serif;}
#second.menu #main .item ul{color:#FFF;margin:0px;padding:1rem;}
#second.menu #main .item ul li{margin:0px;padding-left:1rem;position:relative;}
#second.menu #main .item ul li:before{content:'';display:block;width:4px;height:4px;background:#FFF;border-radius:50%;position:absolute;left:0.3em;top:0.55em;}
#second.menu #main .item ul li+li{margin-top:0.7rem;}
#second.menu #main #t1 .item .rh{background:#CDE5E5; color:#5AA8A9;}
#second.menu #main #t1 .item .rh+ul{background:#5AA8A9;}
#second.menu #main #t2 .item .rh{background:#DECAD8; color:#90507C;}
#second.menu #main #t2 .item .rh+ul{background:#90507C;}
#second.menu #main .item table+h4{margin-top:2.4rem;}
#second.menu #main .item table{margin-top:1rem;border-top:1px solid #000;width:100%;border-spacing:0;border-collapse:  collapse; }
#second.menu #main .item table th,
#second.menu #main .item table td{border-bottom:1px solid #000;padding:1rem;}
#second.menu #main .item table th{width:20%;background:#EEEEEE;color:#5A5A5A;font-size:0.9rem;}
#second.menu #main .item table td dl{display:flex;justify-content:space-between;align-items:center;}
#second.menu #main .item table td dl dt{order:1;flex-shrink:0;}
#second.menu #main .item table td dl dd{order:3;flex-shrink:0;font-size:1.3em;}
#second.menu #main .item table td dl dd small{font-size:0.9rem;}
#second.menu #main .item table td dl:before{order:2;margin:0px 1rem;content:'';display:block;height:3px;flex-grow:1;background-image: linear-gradient(to right, #000, #000 3px, transparent 3px, transparent 6px);background-size: 6px 1px;background-repeat: repeat-x;}
#second.menu #main #t1 .item table td dl+dl{margin-top:0.8rem;}


#second.faq{}
#second.faq .menu_cont h3{padding:1.5rem 0px 1rem 1rem;margin-bottom:0px;position:relative;text-align:left;background:url(./images/line4_r.png) left top no-repeat;background-size:100% 2px;padding-left:3rem;}
#second.faq .menu_cont h3:before,
#second.faq .menu_cont h3+p:before{color:#FFF;width:2rem;height:2rem;line-height:1;display:flex;align-items:center;justify-content:center;border-radius:50%;position:absolute;left:0.3rem;background-color:#000;font-size:1.2rem;}
#second.faq .menu_cont h3:before{content:'Q';top:1.3rem;}
#second.faq .menu_cont h3+p:before{content:'A';top:-0rem;}
#second.faq .menu_cont h3+p{padding-left:3rem;position:relative;}
#second.faq .menu_cont.grn h3{color:#5AA8A9;}
#second.faq .menu_cont.grn h3+p:before{background:#CDE5E5;color:#5AA8A9;}
#second.faq .menu_cont.grn h3:before{background-color:#5AA8A9;}
#second.faq .menu_cont.ppl h3{color:#90507C;}
#second.faq .menu_cont.ppl h3+p:before{background:#DECAD8;color:#90507C;}
#second.faq .menu_cont.ppl h3:before{background-color:#90507C;}
#second.faq .menu_cont.ble h3{color:#657DA3;}
#second.faq .menu_cont.ble h3+p:before{background:#d7d9dc;color:#657DA3;}
#second.faq .menu_cont.ble h3:before{background-color:#657DA3;}
#second.faq .menu_cont.bwn h3{color:#9e7b2a;}
#second.faq .menu_cont.bwn h3+p:before{background:#e6dbc0;color:#9e7b2a;}
#second.faq .menu_cont.bwn h3:before{background-color:#9e7b2a;}


#second.contact{}
#second.contact #main h2{margin-bottom:2rem;}
#second.contact form{}
#second.contact form dl{padding:1.4rem 0px;border-top:1px solid #ccc;}
#second.contact form p{border-top:1px solid #888;}
#second.contact form dl dt{flex-shrink:0;}
#second.contact form dl dt span{color:#CC0000;display:inline-block;margin-left:4px;}
#second.contact form dl dd{flex-grow:1;}
#second.contact form dl dd input[type=text],
#second.contact form dl dd input[type=email],
#second.contact form dl dd textarea{width:100%;border:1px solid #ababab;border-radius:5px;padding:0.2em;font-size:1rem;line-height:1.6;font-family:sun-serif;box-sizing:border-box;}
#second.contact form dl dd textarea{height:8rem;max-width:600px;}
#second.contact form a.btn_send{transition:all 0.3s;cursor:pointer;display:flex;width:70vw;max-width:240px;height:50px;margin:2rem auto;background:#90507C;color:#FFF;align-items:center;justify-content:center;padding:5px;box-sizing:border-box;font-size:1rem;letter-spacing:0.5em;}
#second.contact form a.btn_send:hover{background:#DECAD8;color:#90507C;}
#second.contact form dl dd input#your_name,
#second.contact form dl dd input#your_kana,
#second.contact form dl dd input#your_tel{max-width:14rem;}
#second.contact form dl dd input#your_age{max-width:6rem;}

#second.contact form dl dd select{font-size:1rem;}
#second.contact form dl dd .select_wrap{}
.select_wrap {overflow: hidden;width: 70%;text-align: center;}
.select_wrap select {width: 100%;padding-right: 1em;cursor: pointer;text-indent: 0.01px;text-overflow: ellipsis;border: none;outline: none;background: transparent;background-image: none;box-shadow: none;-webkit-appearance: none;appearance: none;}
.select_wrap select::-ms-expand {display: none;}
.select_wrap{position: relative;border: 1px solid #bbbbbb;border-radius: 5px;background: #ffffff;}
.select_wrap::before {position: absolute;top: 1.1em;right: 0.9em;width: 0;height: 0;padding: 0;content: '';border-left: 6px solid transparent;border-right: 6px solid transparent;border-top: 6px solid #666666;pointer-events: none;}
.select_wrap:after {position: absolute;top: 0;right: 2.5em;bottom: 0;width: 1px;content: '';border-left: 1px solid #bbbbbb;}
.select_wrap select {padding: 8px 38px 8px 8px;color: #666666;}

.err{display:block;color:#AA0000;border:1px solid #AA0000;padding:3px 10px;border-radius:5px;margin-top:10px;text-align:center;}
#second.contact .btns{display:flex;align-items:center;justify-content:center;}
#second.contact .btns a{width:30vw;max-width:240px;}
#second.contact .btns a+a{margin-left:10px!important;}

#second.contact form a.btn_send{transition:all 0.3s;cursor:pointer;display:flex;width:70vw;max-width:240px;height:50px;margin:2rem auto;background:#90507C;color:#FFF;align-items:center;justify-content:center;padding:5px;box-sizing:border-box;font-size:1rem;letter-spacing:0.5em;}
#second.contact form a.btn_send:hover{background:#DECAD8;color:#90507C;}

#second.contact form a.btn_back{transition:all 0.3s;cursor:pointer;display:flex;width:70vw;max-width:240px;height:50px;margin:2rem auto;background:#000;color:#FFF;align-items:center;justify-content:center;padding:5px;box-sizing:border-box;font-size:1rem;letter-spacing:0.5em;}
#second.contact form a.btn_back:hover{background:#777;color:#DDD;}


@media screen and (min-width: 769px){
html,body{}

a.tel{pointer-events:none;}


header{}

header .site_logo{padding-left:2rem;}
header .site_logo img{height:78px;width:auto;}
#front #mv h1 img+img{margin-right:2rem;}


#breadcrumb{width:100%;display:block;margin-top:1rem;margin-bottom:-2rem;position:relative;z-index:10;}
#breadcrumb ul{width:92vw;max-width:1100px;margin:0px auto;display:flex;}
#breadcrumb ul li{display:block;margin:0px;font-size:0.8rem;font-family:sun-serif;}
#breadcrumb ul li+li{margin-left:2rem;position:relative;}
#breadcrumb ul li+li:before{content:'';width:5px;height:5px;border-right:1px solid #000;border-bottom:1px solid #000;transform:rotate(-45deg);position:absolute;left:-1rem;top:50%;margin-top:-3px;}
#breadcrumb ul li a{display:block;text-decoration:underline;}
#breadcrumb ul li a:hover{text-decoration:none;}

#second #main{padding:4rem;}


#second.contact form dl{display:flex;}
#second.contact form dl dt{margin-right:2rem;width:10rem;}

footer > .row{display:flex;flex-wrap:wrap;align-items:center;}
footer .footer_menu{max-width:600px;margin:0px;}
footer .footer_menu li{font-size:1rem;display:inline-block;margin:5px 0px;margin-right:2rem;}
footer .footer_menu li+li{}
footer .site_logo{margin-right:4rem;}

#c3 .ylw_span span+span{margin-top:2rem;}

}

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

header .sns > a span{display:none;}

}

@media screen and (max-width: 768px){
html,body{font-size:16px;font-size:3vw;}
body{padding-bottom:65px;}

header{}
header .row{height:55px;}
header #site_menu_btn{height:55px;width:55px;padding: 32px 10px 10px;}
header .row .site_logo{display: flex;align-items: center;padding-left:10px;}
header .row .site_logo a{display: flex;align-items: center;}
header .row .site_logo img{ height: 51px;display:block;object-fit: contain;}
header .hr{padding-right:55px;}
header .sns{display: none;}
header .sns > a span{display:none;}
header .sns > a{width:45px; height:55px;padding:0px;background-position:center center;background-size:70%;}
header #site_menu_btn span{margin-top:-7px;}


section{padding:3rem 0px 3rem;}

#mv{height:50vw;}
#front #mv h1 img{margin:2rem auto;max-height:calc(40vh - 78px);}


.sp_col3{display:flex;justify-content:space-between;}
.sp_col3 > *{}

#contents{}
#main h2{font-size:2rem;margin-bottom:3.5rem;}
#main h2 > span > small{bottom:-1.4rem;}

footer .footer_menu li{margin:0px;}
footer .footer_menu {border-top:1px solid #888;}
footer .footer_menu li a{padding:10px;border-bottom:1px solid #888;display:block;}

.map+*{margin-top:2rem;}
.btn_contact{margin-top:2rem;font-size: 1.5rem;}
.btn_more{display:block;font-size: 1.5rem;}


#front #front_lead h2{font-size:5vw;}
#front #front_lead h2+p{text-align:left;}
#front_about{padding-top:65vw;height:auto;background-position:right top,left top;background-size:50vw, 80vw;}
#front_about .row.w800{margin-left:auto;}
#front_menu{background-size:100% auto,100% auto;background-position:right top -10vw,left bottom;}
#front_menu.new{background-size:100% auto,100% auto;background-position:right top -10vw,left bottom;}
#front_menu .row{margin:0px auto;padding-top:55vw;}
#front_menu:after{height: 50vw;max-width: none;}
#front_about h2,
#front_menu h2{font-size:1.5rem;padding:2vw 2vw 2vw 4vw;}
#front_flow{height:auto;}
#front_flow.new{height:auto;}

#second #mv{height:40vw;}

#second.contact form dl dt{margin-bottom:7px;}

#second.about #flow dl{display:block;}
#second.about #flow dl dt{flex-basis:auto;max-width:auto;width:100%;padding-bottom:1.3rem;}

.recommend_blk > *{padding:2rem 1rem;}

.f_menu{
    width: 100%;
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    background-color: #fff;
    box-shadow: 0 -3px 6px rgba(0,0,0,0.2);
}
.f_menu ul{
    display: flex;
    margin: 0;
}
.f_menu ul li{
    width: calc(100% / 3);
    margin: 0;
}
.f_menu ul li a.icon_tel{color:#90507C;background-image:url(./images/icon_tel.png);}
.f_menu ul li a.icon_mail{color:#657DA3;background-image:url(./images/icon_reservation.png);}
.f_menu ul li a.icon_line{color:#39AD36;background-image:url(./images/icon_line.png);}
.f_menu ul li a{
    display: block;
    font-size: 11px;
    font-weight: bold;
    line-height: 15px;
    text-align: center;
    height: 65px;
    padding: 40px 0 10px;
    background-position: center top 8px;
    background-repeat: no-repeat;
    background-size: auto 26px;
    box-sizing: border-box;
}
}



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


}

#content #bn2 {
  padding-bottom: 6rem;
  text-align: center; 
}

#content #bn2 .row img {
  margin: 0 auto;
}

@media screen and (max-width: 768px){
  #content #bn2 .row img {
    width: 100%;
    height: auto;
  }
}

.access_photo {
  padding: 2rem 0;
  margin: 0 0 1rem;
}

.access_img {
  margin: 0 0 1rem;
}

@media screen and (max-width: 768px){
  .access_img {
    margin: 0 0 2rem;
  }
}



.access_img img {
  width: 99%;
  height: auto;
}

#main h2.sub {
  font-size: 1.8rem;
  margin-bottom: 3rem;
}

.access_flow {
  margin: 0 0 1rem;
}

@media screen and (max-width: 768px){
  .access_flow {
    margin: 0 auto;
  }
}

.access_flow.flow_01 .access_img:first-child {
  position: relative;
}

.access_flow.flow_01 .access_img:first-child:before {
  content: "";
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 15px solid #7EBBBC;
  z-index: 50;
  position: absolute;
  right: -1.6rem;
  top : 40%;
  transform: translateY(-40%);
}

.access_flow.flow_03{
  position: relative;
}

.access_flow.flow_03:before {
  content: "";
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 15px solid #7EBBBC;
  z-index: 50;
  position: absolute;
  left: 48%;
  top : -1.6rem;
  transform: translateY(-48%);
}

@media screen and (max-width: 768px){
  .access_flow.flow_01 .access_img:first-child:before,
  .access_flow.flow_03:before {
    display: none;
  }
}


.access_flow.bottom {
  margin-bottom: 0;
}

.access_flow.bottom .access_img {
  margin-bottom: 0;
}

.access_description {
  text-indent: -1.4rem;
  padding-left: 1.4rem;
}

.access_text {
  max-width: 960px;
  margin: 0 auto;
}

#content #bn3 {
  padding: 2rem 0;
  text-align: center;
}

#content #bn3 .row img {
  margin: 0 auto;
}

@media screen and (max-width: 768px){
  #content #bn3 {
    overflow: hidden;
  }
  #content #bn3 .row img {
    width: 100%;
    height: auto;
  }
}

.flow_mv {
  width: 100%;
}

@media screen and (max-width: 768px){
 .flow_mv {
    margin: 1rem 0 0;
  }
}

.flow_mv img {
  width: 100%;
  height: auto;
}

.flow_item {
  clear: both;
}

.flow_img {
  float: right;
  width: 50%;
  height: auto;
  display: inline;
  margin: 0 0 1rem 1rem;
}

@media screen and (max-width: 768px){
  .flow_img {
    float: none;
    margin: 1rem 0;
    width: 100%;
  }
}
