html { height:100%; width:100%; margin:0; }
body { font-family:YakuHanJP, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; font-weight: 500; min-height:100%; margin:0; padding:0; min-width:960px; color:#333; background:#fff; position:relative; font-size:1rem; line-height:1.8; letter-spacing:0.1rem; overflow-x:hidden; -webkit-overflow-scrolling:touch; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; /*font-feature-settings:"palt";*/ }


a:link { color:#333; text-decoration:none; outline-style:none; transition:0.15s; cursor:pointer; }
a:visited { color:#333; text-decoration:none; }
a:hover { color:#f80; text-decoration:none; cursor:pointer; }

.white { color:#fff; }
.blue, .blue a { color:#0af; }
.green, .green a{ color:#5a5; }
.orange, .orange a { color:#f90; }
.red, .red a { color:#f55; }
.pink, .pink a { color:#f9a; }
.black { color:#333; }

.f_l { font-size:150%; }
.f_s { font-size:80%; }

.tr { text-align:right; }
.tc { text-align:center; }
.tl { text-align:left; }

.pc_no, .pc_no2 { display:none; }
.sp_no { display:block; }
span.sp_no { display:inline; }
br.sp_no { display:inline; }
br.sp_no2 { display:inline; }

hr { width:100%; height:1px; border:none; background:#ccc; }

img { object-fit:cover; font-family:'object-fit:cover;', sans-serif; vertical-align:top; width:100%; height:auto; }
p { margin-bottom:2rem; }

@font-face { font-family:'DIN'; font-style:normal; src:url("../font/DIN.woff"); }
.en { font-family:'DIN', sans-serif; }
.ja { font-family:YakuHanJP, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; font-weight:500; }
.bold { font-family:YakuHanJP, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif; font-weight: bold; }
.min { font-family:YakuHanMP, "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }


/*校正用 20231219追記*/
body.test .mitemite_box { padding:0 1rem; flex-flow: row wrap; }
body.test .mitemite_box > div { width:calc((100% - 3rem)/4); padding:2rem 0 ; position:relative;  }
@media screen and (max-width:960px) {
body.test .mitemite_box > div { width:calc((100% - 1rem)/2);  }
}
@media screen and (max-width:480px) {
body.test .mitemite_box > div { width:100%;  }
}

/*-- ARTICLE/ --*/
.article { width:100vw; max-width:1280px; margin:0 auto; padding:0 2rem; box-sizing:border-box; position:relative; z-index:1; border-top:8rem solid #fff; }
.full { margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.full_bg { padding-left:calc(50vw - 50%); padding-right:calc(50vw - 50%); }
.flex { display:flex; flex-flow:row wrap; justify-content:space-between; }

/*-- LOADING/ --*/
.loader-bg { position:fixed; width:100vw; height:100vh; background:#fff; z-index:20000; display:none; }
.loader-bg img { position: absolute; top:50%; left:50%; width:180px; transform:translate(-50%,-60%); animation:logo_fadeIn 2s ease 0s 1 normal; }
@keyframes logo_fadeIn { 0% {opacity: 0} 30% {opacity: 0} 100% {opacity: 1} }
.loader-bg.hide { opacity:0 !important; transition:all 2s ease; z-index: -1; }


/*--OPEN予告--*/
body.open .article { border:none; height:100vh; padding:0 1rem 3rem 1rem ; display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; letter-spacing:normal; box-sizing:border-box; } 
body.open .article .open_box { text-align:center; font-size:2rem; margin-bottom:2rem; font-weight:bold; } 
.open_box img { width:160px; height:auto; margin:0 auto 1rem auto; }
body.open .article .copyright { letter-spacing:normal; text-align:center; padding:0 2rem; }
body.open .header { height:auto; padding:1rem; }


/*-- HEADER/ --*/
.header { width:100%; z-index:10000; /*background:rgba(255,255,255,0.8);*/ height:8rem; position:fixed; top:0; left:0; display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; padding:0 1.5rem; }
.header.bg { background:rgba(255,255,255,0.9); transition:0.5s; }
body.top .t_logo { display:none; }
body.temp .t_logo { height:auto; display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; position:relative; }
.t_logo .logo { display:inline-block; padding:0; margin-right:26px; position:relative; z-index:10; }
.t_logo img { width:100%; max-width:104px !important; }
.t_logo span { display:inline-block; padding:0; font-weight:700; } 

body.top .t_logo .logo { display:none; }


/*-- MENU/ --*/
.hm { z-index:100; margin-left:auto !important; text-align:center; }
.hm ul { margin:0; padding:0; display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; }
.hm ul li { display:inline-block; margin:0; letter-spacing:0.1rem; box-sizing:border-box; position:relative; }
.hm > ul > li > a { text-align:center; font-weight:700; display:block; margin:0; padding:0.5rem 1rem; line-height:1.5rem; text-decoration:none; position:relative; }
.hm ul li.m01 { margin-left:auto; }
.hm ul li.m01 a { width:4rem; text-align:center; }
.hm ul li.m01 a img { width:1.5rem; height:1.5rem; margin:auto; }
.hm ul li.m05 a { background:#f55; color:#fff; margin-left:1rem; }

.hm ul li a:hover { color:#333; }
.hm ul li.m01 a:hover { background:#f6f6f6; }
.hm ul li.m01 a.active { background:#fff; }
.hm ul li.m02 a:hover, .hm ul li.m02 a.active, body.ouchi .hm ul li.m02 a { background:#fcd9bd; }
.hm ul li.m03 a:hover, .hm ul li.m03 a.active, body.otoku .hm ul li.m03 a { background:#fff174; }
.hm ul li.m04 a:hover, .hm ul li.m04 a.active, body.ouen .hm ul li.m04 a, body.oshirase .hm ul li.m04 a { background:#d4f1d0; }
.hm ul li.m05 a:hover, .hm ul li.m05 a.active { background:#f77; color:#fff; }
.hm ul li.m06 a:hover, .hm ul li.m06 a.active, body.coupon .hm ul li.m06 a { background:#dcf2f1; }

.h_sub { position:absolute; top:0; right:0.5rem; width:auto; font-size:0.9rem; letter-spacing:normal; line-height:2.5rem;  }
.h_sub li { display:inline-block; padding:0 1rem; }

.h_sub .hm_login::before { content:""; display:inline-block; vertical-align:middle; width:1.25rem; height:1.25rem; background:url(../img/i_rock02.svg) center center /cover no-repeat; margin:-0.35rem 0.15rem 0 0; }
.h_sub .hm_login.logout::before, .h_sub .hm_logout::before { content:""; display:inline-block; vertical-align:middle; width:1.25rem; height:1.25rem; background:url(../img/i_rock01.svg) center center /cover no-repeat; margin:-0.35rem 0.15rem 0 0; }
.h_sub .hm_contact::before { content:""; display:inline-block; vertical-align:middle; width:1.25rem; height:1.25rem; background:url(../img/i_mail.svg) center center /cover no-repeat; margin:-0.35rem 0.15rem 0 0; }



/*--CONT$ENTS--*/
.contents { position:relative; }

p {  }
h2.en { font-size:4rem; font-weight:500; }
body.top h2 { text-align:left; }


/*--MAIN SLIDER--*/
.main { position:relative; display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; margin-bottom:5rem; }

.main_logo { width:43%; z-index:1000; text-align:center; } 
.main_logo .mark { width:33%; max-width:210px; margin:0 auto 2rem auto;  }
.main_logo .title { width:70%; max-width:350px; margin:0 auto 3vw auto;  }

.main_photo { width:57%; overflow:hidden; position:relative; }
.main_photo ul { padding:0; margin:0; list-style:none; }
.main_photo ul li { padding:0; margin:0; }
.main_photo ul li img { vertical-align:top; }

.main_photo .bx-wrapper .bx-viewport { left:0; border-width:0; box-shadow:none;}
.main_photo .bx-wrapper { margin:0 auto !important;  }
.main_photo .bx-viewport:before {right:100%; left:-100%;}
.main_photo .bx-viewport:after { left:100%; right:-100%; }
.main_photo .bx-wrapper .bx-viewport ul li a div { width:100vw; height:100vh; background:center center /cover no-repeat; }


.slick-dots { position:relative; z-index:1000; margin:-0.5rem 0 0 0 !important; padding:0 0.5rem !important; }
.slick-dots li { display: inline-block; padding:0.25rem !important; }
.slick-dots li button { padding:0; width:0.75rem; height:0.75rem;  min-width:0; border-radius:0.5rem; text-indent:-2rem; overflow: hidden; outline: none; background:#ccc; opacity:0.5; }
.slick-dots li button::after { display: none; }
.slick-dots li.slick-active button { opacity:1; background:#fcd9bd; }


.t_copy { text-align:center; font-weight:600; font-size:1.35rem; letter-spacing:0.25rem; margin-bottom:3rem; }
.t_copy .icon { display: inline-block; width:1.8rem; height: 1.8rem; background:url("../img/i_discover.svg") center center /1.8rem no-repeat; vertical-align: middle; margin-bottom:0.7rem;  }

.iihen_desc { text-align:center; margin-bottom:3rem; }
.iihen_desc .b_iihen { display:inline-block; margin:-0.25rem 0.5rem 0 0; vertical-align:middle; }


/*--チーム米子からのお知らせ--*/
.oshirase_box { display:flex; margin-bottom:3rem; padding:1.5rem 0; border-top:3px double #ccc; border-bottom:3px double #ccc;  }
.oshirase_box h4 { margin-right:1.5rem; padding:0; font-weight:bold; line-height:1.25; white-space:nowrap; }
.oshirase_box .list {}
.oshirase_box .list dl { line-height:1.5; }
.oshirase_box .list dl + dl { margin-top:1rem; }
.oshirase_box .list dl dt { font-size:0.875rem; letter-spacing:normal; margin-right:0.5rem; }


/*--うまめし、いいコトいいモノ、お得情報、お知らせ、--*/
.mitemite_box { display:flex; flex-flow:row wrap; justify-content:space-between; border-top:3rem solid #fff;  margin-bottom:7rem; }
.mitemite_box > div { width:calc((100% - 2rem)/3); padding:2rem 0 ; position:relative;  }
.mitemite_box > div dl { line-height:1.5; padding:1rem 0; border-bottom:1px solid #333; }
.mitemite_box > div dt { font-size:0.875rem; letter-spacing:normal; }
.mitemite_box a.more { display:block; background:#fff; width:70%; max-width:250px; margin:2rem auto -3.25rem auto; padding:1rem 0; text-align:center; font-size:1.125rem; line-height:2.5rem; font-weight:600; position:relative; }
.mitemite_box a.more::before { content:""; display:block; width:3rem; height:3rem; background:url(../img/i_shop.svg) center center /contain no-repeat; margin:0 auto; }


.new { display:inline-block; padding:0 0.25rem; border-radius:3px; background:#f55; color:#fff; font-size:0.7rem; letter-spacing:0.05rem; /*border:1px solid #fff;*/ margin:0 0.5rem; }


.ouchi_box .title, .otoku_box .title, .ouen_box .title, .coupon_box .title, .oshirase_box .title { width:90%; max-width:270px; margin:-4rem auto 1rem auto; }
.ouchi_box .title img, .otoku_box .title img, .ouen_box .title img, .coupon_box .title img, .oshirase_box .title img { width:100%; }
.ouchi_box .list, .otoku_box .list, .ouen_box .list, .coupon_box .list, .oshirase_box .list { padding:0 1.25rem; height:400px; overflow-y:auto; position:relative; }

/*うまめし*/
.ouchi_box { background:#fcd9bd; }
.ouchi_box .list { scrollbar-color: #f8a15c #fcd9bd; }
/*.ouchi_box .list::-webkit-scrollbar-track { background:#f8a15c; }
.ouchi_box .list::-webkit-scrollbar-thumb { background:#fcd9bd; }*/

/*いいコトいいモノ*/
.otoku_box { background:#fff174; }
.otoku_box .list { scrollbar-color: #ebd300 #fff174; }

/*応援情報*/
.ouen_box { background:#d4f1d0; }
.ouen_box .list { scrollbar-color: #8cda81 #d4f1d0; }

/*お知らせ*/
.oshirase_box { background:#d4f1d0; }
.oshirase_box .list { scrollbar-color: #8cda81 #d4f1d0; }


/*お得情報*/
.coupon_box { background:#dcf2f1; }
.coupon_box .list { scrollbar-color: #92d6d3 #dcf2f1; }

.ouchi_box dl dt, body.ouchi .info_box dl dt, body.ouchi .shop_intro h3, body.otoku .shop_intro h3 { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; }

.b_iihen { background:#f9a !important; font-size:0.8rem; color:#fff; width:auto; height:1.5rem; line-height:1.5; padding:0 0.5rem; margin:0.5rem; border:1px solid #f9a; border-radius:3px; white-space:nowrap; }
.b_iihen::after { display:none; }
.b_iihen:hover { background:#f9a !important; cursor:pointer; }
.b_iihen .red { color:#fff !important; }


.ouchi_box a.more::before { background-image:url(../img/i_shop02.svg); }
.otoku_box a.more::before { background-image:url(../img/i_shop03.svg); }
.ouen_box a.more::before { background-image:url(../img/i_megaphone02.svg); }
.coupon_box a.more::before { background-image:url(../img/i_coupon02.svg); }



/*--お知らせ--*/
.info_box { margin-bottom:5rem; padding:0 2rem; }
.info_box .list {  }
.info_box .list dl { line-height:1.5; padding:1rem 0; border-bottom:1px solid #333; }
.info_box .list dl:first-of-type { border-top:1px solid #333; }
.info_box .list dt { font-size:0.875rem; letter-spacing:normal; }

.pagination { text-align:center; padding:0; margin:2rem auto !important;  }
.pagination li { display:inline-block; padding:0; margin:0; }
.pagination li a, .pagination li.active span, .pagination li.disabled span { display:block; width:2.5rem; height:2.5rem; line-height:calc(2.5rem - 2px); background:#fff; color:#333; letter-spacing:1px; text-align:center; vertical-align:middle; border-radius:50%; /*box-shadow:0 3px 0 rgba(0, 0, 0, 0.1);*/ transition-delay:0s; transition:0.25s; box-sizing:border-box; }
body.info .pagination li a:hover, body.info .pagination li.active span { background:#ddd; }
body.ouchi .pagination li a:hover, body.ouchi .pagination li.active span { background:#fcd9bd; }
body.otoku .pagination li a:hover, body.otoku .pagination li.active span { background:#fff174; }
body.ouen .pagination li a:hover, body.ouen .pagination li.active span { background:#d4f1d0; }
body.coupon .pagination li a:hover, body.coupon .pagination li.active span { background:#dcf2f1; }
body.oshirase .pagination li a:hover, body.oshirase .pagination li.active span { background:#d4f1d0; }
.pagination li.disabled span { background:#fff !important; /*border:1px solid #eee;*/ color:#ddd; box-shadow:none; cursor:default; }





/*--更新情報--*/
.update_box { position:relative; margin-bottom:4rem; }
.update_box h3 { margin-bottom:3rem; }
.update_box .bx-wrapper { }
.update_box .bx-wrapper .bx-viewport { box-shadow:none; left:0; border:none; }
.update_box .index_box { }
.update_box .index_box .cat { position:absolute; display:block; width:4rem; height:4rem; left:1rem; top:1rem; z-index:10; }
.update_box .index_box .cat::after { content:""; letter-spacing:normal; font-weight:bold; display:block; width:100%; text-align:center; font-size:0.6rem; position:absolute; bottom:0.3rem; }
.update_box .index_box .cat.cat_ouchi { background:#fcd9bd url(../img/i_dish.svg) center 30% /75% no-repeat; }
.update_box .index_box .cat.cat_ouchi::after { content:"うまめし"; }
.update_box .index_box .cat.cat_otoku { background:#fff174 url(../img/i_cart.svg) 45% 15% /60% no-repeat; }
.update_box .index_box .cat.cat_otoku::after { content:"いいコト\Aいいモノ"; white-space:pre; line-height:1; }
.update_box .index_box .cat.cat_ouen { background:#d4f1d0 url(../img/i_megaphone.svg) center 30% /60% no-repeat; }
.update_box .index_box .cat.cat_ouen::after { content:"応援情報"; }

.bx-wrapper .bx-prev, .bx-wrapper .bx-prev:hover { left:0; width:4rem !important; height:4rem !important; background:#fff url(../img/i_arrow_l.svg) center center /24px no-repeat !important; }
.bx-wrapper .bx-next, .bx-wrapper .bx-next:hover { right:0; width:4rem !important; height:4rem !important; background:#fff url(../img/i_arrow_r.svg) center center /24px no-repeat !important; }


.slick-prev, .slick-next { position: absolute; top:40%; margin-top:-16px;
outline:0; padding:0; width:4rem !important; height:4rem !important;  text-indent:-9999px; z-index:9999; }
.slick-prev { left:0; background:#fff url(../img/i_arrow_l.svg) center center /20px no-repeat !important; }
.slick-next { right:0; background:#fff url(../img/i_arrow_r.svg) center center /20px no-repeat !important; }
.slick-prev::after, .slick-next::after { display:none; }



/*--Google Map--*/
.map { border:1px solid #ccc; height:600px; background:#eee; display:flex; align-items:center; justify-content:center; }

.map_box { display:flex; justify-content:center; align-items:center; position:relative; width:100%; padding-top:50%; max-width:1280px; margin:0 auto 10rem auto; background:url(../img/bg_map.png) center center /cover no-repeat; }

.b_map { display: block; color:#333; font-weight:bold; text-align:center; font-size:1.25rem; line-height:1.25; padding:1rem 1.5rem; position:absolute; bottom:-2.5rem; left:50%; max-width:360px; background:rgba(249, 180, 124, 1); border-radius:5px; transform:translate(-50%,0)}
.b_map::before { content:""; display:block; width:4rem; height:4rem; margin:-4rem auto 0 auto; background:url(../img/i_map.svg) center center /cover no-repeat; transition:0.15s; }
.map_box:hover .b_map { color:#333; background:#fcd9bd; }
.map_box:hover .b_map::before { width:4.5rem; height:4.5rem; margin:-4.5rem auto 0 auto; }

@media screen and (max-width:480px) {
.map_box { width:100%; padding-top:100%; max-width:640px; background:url(../img/bg_map_sp.png) center center /cover no-repeat; }

}


/*--Instagram--*/
.insta_box { margin-bottom:4rem; text-align:center; }
.insta_box h3::before { content:""; display:block; width:3rem; height:3rem; margin:-3rem auto 0 auto; background:url(../img/i_ig.svg) center center /cover no-repeat; transition:0.15s; }
.insta_box .list { display:flex; flex-flow:row wrap; justify-content:space-between; padding:0 2rem; }
.insta_box .list a { width:calc((100% - 5rem)/6); }
.insta_box .list a img { width:100%; }

@media screen and (max-width:960px) {
.insta_box .list a { width:calc((100% - 1rem)/3); margin-bottom:0.5rem; }
}


/*-- INDEX --*/
.index_area { display:flex; flex-flow:row wrap; justify-content:flex-start; padding-bottom:4rem; }

.index_box { display:inline-block; position:relative; width:33.3%; vertical-align:top; box-sizing:border-box; text-align:left; text-decoration:none !important; letter-spacing:normal; padding:2rem; }
.index_box a { display:block; width:100%; text-decoration:none; padding:0; background:#fff; }
.index_box .photo { width:100%; max-width:100vw; margin:0 0 0.5rem 0; position:relative; overflow:hidden; }
.index_box .photo .img { width:100%; padding-top:70.7%; background:center center /100% no-repeat; transition:1s; }
.index_box a:hover { text-decoration:none; opacity:1; }
.index_box a:hover .photo .img, .index_box.active .photo .img { background:center center /120% no-repeat; transition:1s; }

.index_box p { margin:0; word-break:break-all; }
.index_box .new { position:absolute; top:0.625rem; left:0.625rem; font-size:0.8rem; display:inline-block; vertical-align:top; padding:0 0.5rem; /*border:2px solid #fff;*/ background:#333; color:#fff; text-align:center; z-index:10; }
.index_box .text { display:flex; flex-flow:column nowrap; padding:0; }
.index_box .member { position:relative; margin:-2rem 0 -2rem 0rem; font-size:0.75rem; }
.index_box .member .member_img { width:3rem; height:3rem; border-radius:50%; background:#fff center center /100% no-repeat; border:2px solid #fff;}
.index_box .date { font-size:0.875rem; display:block; font-weight:300; margin-bottom:0.25rem; }
.index_box strong { display:block; font-size:1.25rem; line-height:1.5; margin-bottom:0.25rem; }
.index_box .cat { display:inline-block; width:auto; line-height:1.5; margin:0 0 0.5rem 0; }
.index_box label { display:block; }

.tag { display:flex; flex-flow:row wrap; justify-content:flex-end; padding:0; z-index:1; font-size:0.7rem; line-height:1.2; letter-spacing:normal; }
.index_box .tag { position:absolute; top:1rem; right:1rem; }
h3 .tag { margin-left:auto; }
.tag span { background:#fff; color:#333; width:4rem; padding:2.8rem 0.25rem 0.5rem 0.25rem; margin-left:0.25rem; text-align:center; font-size:0.7rem; line-height:1.2; font-weight:bold; letter-spacing:normal; }
.tag .tag_to { background:#fcd9bd url(../img/i_bag.svg) center 20% /60% no-repeat; }
body.otoku .tag .tag_to { background-color:#fff174; }
.tag .tag_de { background:#d4f1d0 url(../img/i_bike.svg) center 20% /60% no-repeat; }

.index_box .shop_price_box { display:flex; flex-flow:row wrap; justify-content:space-between; font-weight:bold; }
.index_box .shop { }
.index_box .price {}
.index_box .tax { font-size:0.75rem; }



.b_order { width:auto; font-size:1.125rem; line-height:1.5rem; border-radius:5px; margin:auto; font-weight:bold; padding:0.5rem 2rem 0.5rem 0.5rem; margin-top:1rem; display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; }
.b_order::before { content:""; display:inline-block; width:2rem; height:2rem; background:url(../img/i_cart.svg) center center /30px no-repeat; vertical-align:middle; margin:-0.25rem 0.5rem 0 0; }
.b_order:hover { opacity:0.7; }
button.b_order { text-align:left; }

.b_order.check { padding:0.5rem 1rem 0.5rem 0.75rem; }
.b_order.check::before { display:none; }
.b_order.check:hover { opacity:1; }
.b_order span { margin:0 !important; }

.b_order_box { position:fixed; background:rgba(255,255,255,1); left:0; bottom:-10rem; box-shadow:0 -2px 5px rgba(0,0,0,0.2); padding:0.5rem 1.5rem; width:100%; text-align:center; transition:0.5s; z-index:12000; }
.b_order_box.emerge { bottom:0; transition:0.5s; }
.b_order_box #b_order { background:#f55; color:#fff; font-weight:bold; }

.index_box.active::after { content:""; position:absolute; top:4px; left:4px; right:4px; bottom:4px; border:5px solid #f55; z-index:-1; }
/*
body.ouchi .index_box.active::after { border:5px solid #fcd9bd;}
body.otoku .index_box.active::after { border:5px solid #fff174;}
body.ouen .index_box.active::after { border:5px solid #d4f1d0;}
*/

.b_more { display:block; width:10rem; font-size:1.125rem; line-height:1.5rem; border-radius:5px; margin:1rem auto; padding:0.5rem 1rem; text-align:center; }

body.ouchi .b_order, body.ouchi .b_more { background:#fcd9bd; }
body.otoku .b_order, body.otoku .b_more { background:#fff174; }
body.ouen .b_order, body.ouen .b_more { background:#d4f1d0; }
body.oshirase .b_order, body.oshirase .b_more { background:#d4f1d0; }
body.coupon .b_order, body.coupon .b_more { background:#d4f1d0; }
body.ouchi .b_order.tel, body.otoku .b_order.tel { width:auto; height:auto; background:#c3ebfd; justify-content:center; }
.b_order.tel span { display:inline-block; margin:0 0.5rem 0 0; }
.b_order.tel strong { display:inline-block; margin:0; font-size:1.125rem; }
.b_order.tel::before { background:url(../img/i_tel.svg) center center /30px no-repeat; margin:-0.25rem 0.5rem 0 0; }

.index_box a[href^="tel:"]:hover { color:#333; cursor:default; }
.index_box a[href^="tel:"]:hover .photo .img { background:center center /100% no-repeat; }
.index_box a[href^="tel:"] .b_order:hover { opacity:1; }


body.temp h2 { background:#f8f8f8; margin-top:1rem; margin-bottom:1rem; }


/*--おうちめし--*/
body.ouchi h2 { background:#fcd9bd; margin-bottom:3rem; }
body.ouchi h2 img { display:block; margin:-3rem auto -4rem auto; width:270px; }

.shop_intro h3 {  }
.shop_intro h3 .shop_name { position:relative; padding:0.5rem 0.5rem 0.5rem 3rem; }
.shop_intro h3 .shop_name::before { content:""; position:absolute; left:-0.15rem; top:0.9rem; display:inline-block; line-height:1; width:2.8rem; height:2.8rem; background:url(../img/i_shop.svg) center center /cover no-repeat; margin:0; }

/*--お得情報--*/
body.otoku h2 { background:#fff174; margin-bottom:3rem; }
body.otoku h2 img { display:block; margin:-3rem auto -4rem auto; width:270px; }


/*--応援情報--*/
body.ouen h2 { background:#d4f1d0; margin-bottom:3rem; }
body.ouen h2 img { display:block; margin:-3rem auto -4rem auto; width:270px; }

.b_guruguru { display:block; width:100%; max-width:400px; }
.b_ouen { display:flex; justify-content:center; align-items:center; border:0.75rem double #d4f1d0; background:#fff; padding:1rem; font-size:1.4rem; font-weight:bold; text-align:center; line-height:1.25; max-height:400px; }

.b_yell_box {}
.b_yell_box h3 { padding:0 2rem; }
.b_yell_box .LCR_box { text-align:center; }
.b_yell_box .LCR_box img { margin-bottom:0.5rem; }

/*--新着メニュー--*/
.menu_box h3 { padding:0 2rem; margin:0 }
.menu_box .list { display:flex; flex-flow:row wrap; justify-content:flex-start; margin-bottom:4rem; }
.menu_box.empty h3 { margin: 0 0 2rem 0; }
.menu_box.empty .list { padding:0 2rem; }

.close_info { border-top:1px dashed #999; border-bottom:1px dashed #999; padding:0.5rem 0; margin-top:0.5rem; }


/*--店舗一覧--*/
.shop_box h3 { padding:0 2rem; margin:0; }
.shop_box .list { display:flex; flex-flow:row wrap; justify-content:flex-start; margin-bottom:4rem; }
.shop_box.empty h3 { margin: 0 0 2rem 0; }
.shop_box.empty .list { padding:0 2rem; }

/*
.shop_box .index_box { width:50%; padding:0 2rem; }
.shop_box .index_box a { display:flex; flex-flow:row wrap; justify-content:flex-start; position:relative; width:100%; vertical-align:top; box-sizing:border-box; text-align:left; text-decoration:none !important; letter-spacing:normal; padding:0.5rem 0; border-bottom:1px solid #333; }
.shop_box .index_box:nth-of-type(1) a, .shop_box .index_box:nth-of-type(2) a { border-top:1px solid #333; }
.shop_box .index_box .photo { flex-grow:1; width:150px; padding:0.5rem; margin:0; position:relative; overflow:hidden; }
.shop_box .index_box .text { flex-grow:2; padding:0.5rem; }
*/


/*--お得情報--*/
body.coupon h2 { background:#dcf2f1; margin-bottom:3rem; }
body.coupon h2 img { display:block; margin:-3rem auto -4rem auto; width:270px; }


/*--お知らせ--*/
body.oshirase h2 { background:#d4f1d0; margin-bottom:3rem; }
body.oshirase h2 img { display:block; margin:-3rem auto -4rem auto; width:270px; }



body.form .article { max-width:840px; } 

/*--掲載申込--*/
body.regist {} 
body.regist .navibar { /*padding:0;*/ }
.terms_box { max-height:400px; overflow-y:auto; border:1px solid #aaa; padding:1rem; margin-bottom:0.5rem; }


/*記載店舗一覧マップ*/
body.map_list h2 { background:#f9b47c; }
body.map_list h2::before { content:""; display:block; width:4rem; height:4rem; margin:-3rem auto 0 auto; background:url(../img/i_map.svg) center center /cover no-repeat; transition:0.15s; }




/*--注文フォーム--*/
body.order .navibar {  }
body.order .table01 th { min-width:calc(100% - 7rem); }
body.order .table01 td.tr { width:7rem; }

.exp01, .exp02 { text-align:center; }

.shop_info { text-align:center; }
.shop_info .tel { font-size:1.25rem; }



/*--ログイン--*/
.login_box { max-width:480px; margin:auto; }


/*----*/

/*要素が見えたら表示*/
.hide { opacity:0; transition:1s .5s; transform:translate(0, 60px) !important; }
.show { opacity:1; transform:translate(0, 0) !important; }



/*店舗詳細*/
.shop_intro { padding:0 2rem; }
.shop_photo ul { margin:0 0 2rem 0; padding:0; }
.shop_photo .bx-wrapper { padding:0; margin-bottom:0.5rem; }
.shop_photo .bx-wrapper .bx-viewport { border:none; background:#fff; box-shadow:none; left:0; }
.shop_photo .bx-wrapper .bx-prev { left:1em !important; width:4em; height:4em; display:none; }
.shop_photo .bx-wrapper .bx-next { right:1em !important; width:4em; height:4em; display:none; }
.shop_photo img, .shop_photo_sp img  { width:100%; max-width:100vw; margin:0 !important; }
.shop_thumb { display:block; max-height:200px; overflow:hidden; }
.shop_thumb a { display:inline-block; width:20%; height:auto; padding:0.5%; transition:0.5s; text-align:center; vertical-align:top; }
.shop_thumb a img { width:100%; max-width:100vw; margin-bottom:0; border:1px solid #ccc; background:#fff; }
.shop_thumb a:hover img, .shop_thumb a.active img { border:1px solid #f80; }

.shop_photo { display:block; position:relative; }
.shop_photo_sp { display:none; }
.shop_photo ul { list-style:none; }

.slick-list { padding:0 !important; }
.shop_thumb .slick-list .slick-track { transform:translate3d(0,0,0) !important; }
.shop_thumb .slick-current img { border:1px solid #f80; }

body.detail .b_order { /*display:none;*/ }



/*--エール--*/
.yell_box { display:none; }
.yell_box h3 { padding:0 2rem; }
.yell_box .list { display:flex; flex-flow:row wrap; justify-content:flex-start; padding-bottom:4rem; }
.yell_box .index_box { width:100%; padding:0 2rem; }
.yell_box .index_box > .inner { display:flex; flex-flow:row wrap; justify-content:flex-start; position:relative; width:100%; vertical-align:top; box-sizing:border-box; text-align:left; text-decoration:none !important; letter-spacing:normal; padding:1rem 0; border-bottom:1px solid #333; }
.yell_box .index_box:nth-of-type(1) .inner { border-top:1px solid #333; }
.yell_box .index_box .photo { flex-grow:1; width:280px; margin:0 1rem 0 0; position:relative; overflow:hidden; }
.yell_box .index_box .text { flex-grow:2;  }


/*--応援情報--*/
body.ouen .menu_box { display:none; }
body.ouen.detail .article { max-width:1080px; }





/*-- FOOT/ --*/
.footer { position:relative; padding:5rem 0; text-align:center; }
.footer .mark { display:block; margin:auto; width:120px; margin-bottom:1rem; }
.footer .fm { margin-bottom:2rem; }
.footer .fm a { display:inline-block; padding:0.5rem; }
.copyright { font-size:0.8rem; line-height:1.25; letter-spacing:normal; }
.footer .tel, .footer .fax { white-space:nowrap; display:inline-block; font-size:1.25rem; padding:0 0.5rem; }
.pagetop { position:fixed; right:0; width:4rem; height:4rem; z-index:10000; background:#333 url(../img/i_arrow_uw.svg) center center /1.5rem no-repeat; }
.footer .disclaimer { display:none; }
.footer .cooperate { font-size:1.25rem; }

.footer h4 br { display:none; } 
body.top .disclaimer { display:block; text-align:left; max-width:640px; padding:1rem; border:1px solid #ddd; margin:2rem auto }


body.form .footer .mark,
body.form .footer .fm,
body.form .footer h3,
body.form .footer .slogan,
body.form .footer .address,
body.form .footer .tel,
body.form .footer .fax,
body.form .footer br,
body.form .footer h4,
body.form .footer .cooperate { display:none; }



/*-- TEMPLARE CONTENTS --*/
body.temp .contents { display:flex; flex-flow:row wrap; }
body.temp .text_area {  }
body.temp .text_area img { max-width:100%; }



.photo { position:relative; margin-bottom:2rem; }
.photo span.caption { position:absolute; left:0; bottom:0; display:inline-block; padding:2px 10px; color:#fff; background:rgba(0,0,0,0.35); background:rgba(0,0,0,0.6); border-radius: 0 1rem; }


.cap { color:#999; font-size:small; line-height:1.5; padding:0.25rem 0; }

img.full { width:calc(100% + 50vw); max-width:100vw; }
img.full + h3 { margin-top:-1rem; } 

.navibar { color:#333; position:relative; z-index:0; padding:0 2rem 2rem 2rem; }
.navibar ul { width:100%; margin:0 0 0 auto; padding:0.25rem 70px 0.25rem 0; font-size:0.75rem; line-height:25px; }
.navibar ul li { list-style-type:none; display:inline; padding:0; letter-spacing:normal; }
.navibar ul li em { font-weight:bolder; font-style:normal; }
.navibar ul li::before { content:""; position:relative; top:-0.1rem; left:-0.15rem; display:inline-block; width:0.4rem; height:0.4rem; border-top:1px solid #333; border-right:1px solid #333; transform:rotate(45deg); margin:0 10px ; }
.navibar ul li:first-child::before { display:none; }
.navibar a, .navibar span { border:none; }
.navibar br { display:none; }

blockquote { margin:2rem 0; padding:1rem; border:1px solid #ddd;}


.page_link { margin:0 0 2rem 0 !important; padding:0; text-align:center; display:block; }
.page_link li { margin:0; padding:0; display:inline-block; }
.page_link li a { padding:1rem;  }
.page_link li::before { content:"|"; color:#ccc; }
.page_link::after { content:"|"; color:#ccc; }

h1, h2, h3, h4, h5, h6 { font-weight:bold; letter-spacing:0.2rem; padding:0; line-height:1.5; position:relative; }
h1 { font-size:3.6rem; }
h2 { font-size:3.0rem; margin:0 0 2rem 0; padding:1rem 0; box-sizing:border-box; text-align:center; }
h3 { font-size:2.25rem; margin:0 0 2rem 0; }
body.top h3 { text-align:center; }
h4 { font-size:1.8rem; font-weight:700; margin:0 0 1rem 0;  }
h5 { font-size:1.5rem; font-weight:700; margin:0 0 1rem 0; }
h6 { font-size:1.25rem; font-weight:700; margin:0 0 1rem 0; }

h1 .comment, h2 .comment, h3 .comment, 
h4 .comment, h5 .comment { display:block; font-size:1rem; font-weight:500; color:#333; margin-bottom:0.5rem; letter-spacing:0.05rem; }


/*-- 2列ボックス/ --*/
.LR_box { display:inline-block; vertical-align:top; width:49.5%; margin:0; padding:0 2rem 2rem 2rem; box-sizing:border-box; }

/*-- 3列ボックス/ --*/
.LCR_box, .LCR_box2 { display:inline-block; vertical-align:top; width:32.8%; margin:0; padding:0 2rem 2rem 2rem; box-sizing:border-box; letter-spacing:0.02rem; }
.LCR_box2 { width:66%; }
.LR_box img, .LCR_box img { width:100%; object-fit:cover; font-family:'object-fit:cover; '; margin-bottom:1rem; }
.LR_box h3, .LR_box h4, .LR_box h5, .LCR_box h3,.LCR_box h4, .LCR_box h5, .LCR_box2 h3,.LCR_box2 h4, .LCR_box2 h5 { margin-bottom:0.5rem; white-space:normal; word-break:break-all; }

/*-- 4列ボックス/ --*/
.LCCR_box { display:inline-block; vertical-align:top; width:24.5%; margin:0; padding:0 2% 2rem 2%; box-sizing:border-box; letter-spacing:0.02rem; }


td .LR_box, td .LCR_box, td .LCR_box2 { padding:0 1% 0.5rem 1%; }
td .LR_box img, td .LCR_box img, td .LCR_box2 img { margin-bottom:0.5rem; }


.in_box { border:1px solid #ddd; padding:1rem 1.5rem; } 

a.link { padding:0.5rem 0.15rem 0.5rem 1rem; margin:0; text-decoration:underline; box-sizing:border-box; position:relative; }
a.link::before { content:""; position:absolute; display:block; left:0; top:calc(50% - 0.2rem); width:0.5rem; height:0.5rem; margin:0; border-top:2px solid #333; border-right:2px solid #333; transform:rotate(45deg); box-sizing:border-box; }
a.link.active::after { border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg); }
a.link { overflow:hidden; margin:0; }
a.link.red { color:#b7282e; }


/*
.index_box a[target='_blank'] .title::after,
.LCR_box a[target='_blank']::after,
body.link .article li a[target='_blank']::after,
body.link .article a:link[target='_blank']::after,
.article a:link[target='_blank']::after
 { content:""; position:relative; display:inline-block; vertical-align:middle; width:1.2rem; height:1.2rem; margin:0 0.25rem; background:url(../img/i_blank.svg) center bottom /100% no-repeat; right:auto; }
.index_box a[target='_blank']::after { display:none !important; }


.index_box a[href$='.pdf'] .title::after, 
a[href$='.pdf']::after, 
.index_box ul li a[href$='.pdf']::after { content:"PDF" !important; position:relative; display:inline-block !important; font-size:0.75rem; line-height:1; width:auto !important; height:auto !important; padding:0.2rem 0.5rem; letter-spacing:normal; color:#b7282e; font-weight:bolder; background:#fff !important; margin:0 0.25rem; transform:translate(0,-2px); border-radius:1rem; box-shadow:1px 1px 3px rgba(0,0,0,0.2); }

.index_box a[href$='.pdf']::after, .button[href$='.pdf']::after  { display:none !important; }


.index_box a[href$='.xls'] .title::after, 
.index_box a[href$='.xlsx'] .title::after, 
a[href$='.xls']::after, 
a[href$='.xlsx']::after, 
.index_box ul li a[href$='.xls']::after, 
.index_box ul li a[href$='.xlsx']::after { content:"Excel" !important; position:relative; display:inline-block !important; font-size:0.75rem; line-height:1; width:auto !important; height:auto !important; padding:0.2rem 0.5rem; letter-spacing:normal; color:#839b5c; font-weight:bolder; background:#fff !important; margin:0 0.25rem; transform:translate(0,-2px); border-radius:1rem; box-shadow:1px 1px 3px rgba(0,0,0,0.2); } 

.index_box a[href$='.xls']::after,
.index_box a[href$='.xlsx']::after { display:none !important; }

.index_box a[href$='.doc'] .title::after, 
.index_box a[href$='.docx'] .title::after, 
a[href$='.doc']::after, 
a[href$='.docx']::after, 
.index_box ul li a[href$='.doc']::after, 
.index_box ul li a[href$='.docx']::after { content:"Word" !important; position:relative; display:inline-block !important; font-size:0.75rem; line-height:1; width:auto !important; height:auto !important; padding:0.2rem 0.5rem; letter-spacing:normal; color:#f55; font-weight:bolder; background:#fff !important; margin:0 0.5rem; transform:translate(0,-2px); border-radius:1rem; box-shadow:1px 1px 3px rgba(0,0,0,0.2); } 

.index_box a[href$='.doc']::after,
.index_box a[href$='.docx']::after { display:none !important; }

div.index_box .title, div.index_box:hover .title {  }
*/

/*-- TABLE/ --*/
caption { text-align:left; margin-bottom:10px; font-size:95%; }

table { border-collapse:collapse; width:100%; margin:0 auto 2rem auto; }
table th, table td { padding:0.75rem 0.25rem; vertical-align:top; letter-spacing:0.05rem; line-height:1.5; }

.table01 { border-bottom:1px dashed #aaa; }
.table01 th, .table01 td { border-top:1px dashed #aaa;  }
.table01 thead th { }
.table01 th { font-weight:bolder; text-align:left; }
.table01 td { }

.table02 { border-bottom:1px solid #aaa; }
.table02 th, .table02 td { border-top:1px solid #aaa; }
.table02 thead th, .table02 thead td {  }
.table02 th { font-weight:bolder; text-align:left; white-space:nowrap; }
.table02 td { }
.table02 td.tr { width:auto; }

.table03 { border:1px solid #aaa; }
.table03 th, .table03 td { border:1px solid #aaa; padding:0.75rem 0.5rem; }
.table03 thead th, .table03 thead td {  }
.table03 th { font-weight:bolder; text-align:left; }
.table03 td { }

.l_double { border-top:3px double #aaa; }
.l_dashed th, .l_dashed td { border-top:1px dashed #aaa !important; }
th p, td p { margin:0; }


body.ouchi thead th, body.ouchi thead td { background:#fcd9bd; }
body.otoku thead th, body.otoku thead td { background:#fff174; }
body.ouen thead th, body.ouen thead td { background:#d4f1d0; }



/*-- 幅の広いテーブルにスクロール表示 --*/
.scroll, #calcResult { overflow:auto; }
.scroll::-webkit-scrollbar, #calcResult::-webkit-scrollbar { height:15px; /*tableにスクロールバーを追加*/}
.scroll::-webkit-scrollbar-track, #calcResult::-webkit-scrollbar-track { background:rgba(0,0,0,0.1); /*tableにスクロールバーを追加*/}
.scroll::-webkit-scrollbar-thumb, #calcResult::-webkit-scrollbar-thumb { background:#bc6;/*tableにスクロールバーを追加*/}
.scroll table, #calcResult table { margin-bottom:20px !important; }

table.fee { }
table.fee th, table.fee td { vertical-align:middle; white-space:nowrap; }

/*-- FORM/ --*/
form { margin:0; padding:0; border:0; font-size:100%; vertical-align:middle; background:transparent; }
form label { vertical-align:middle; display:inline-block; } 

select, input, textarea, button { width:100%; max-width:100%; -webkit-appearance:none; vertical-align:middle; position:relative; line-height:30px; font-size:1.2rem; margin:5px 0; padding:3px 10px; border:1px solid #333; border-radius:0; box-shadow:none; z-index:0; box-sizing:border-box; }
input.long { width:100%; margin:5px 0; position:relative; }
button, .button, input[type="button"], input[type="submit"] { border:none; position:relative; display:block; max-width:300px; margin:1rem auto; text-align:center; padding:0.75rem 2rem; background:#f9b47c; line-height:30px; text-decoration:none; box-sizing:border-box; z-index:1; border-radius:5px; }
button:hover, .button:hover, input[type="button"]:hover, input[type="submit"]:hover { cursor:pointer; text-decoration:none; background:#f55; background:#fcd9bd; /*color:#fff; opacity:0.7;*/ }
button::after, .button::after, input[type="button"]::after, input[type="submit"]::after { content:""; position:absolute; top:50%; right:1rem; display:inline-block; width:0.5rem; height:0.5rem; border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg) translate(0,-50%); }

body.otoku button, body.otoku .button, body.otoku input[type="button"], 
body.otoku input[type="submit"] { background:#fff174; }
body.ouen button, body.ouen .button, body.ouen input[type="button"], 
body.ouen input[type="submit"] { background:#d4f1d0; }



.b_back { background:#555; }
.b_back::after { content:""; display:block; position:absolute; top:50%; right:1rem; width:0.5rem; height:0.5rem; border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg) translate(0,-50%); }
.b_back:hover { background:#555; }
option { padding:5px; font-size:1.2rem; line-height:1.5; }

.button.enq { background:#ddd; color:#333 !important; }
.button.enq:hover { background:#ddd; opacity:0.7; }

button[disabled], a.button[disabled], .button[disabled], input[type="button"][disabled], input[type="submit"][disabled],
button[disabled]:hover, a.button[disabled]:hover, .button[disabled]:hover, input[type="button"][disabled]:hover, input[type="submit"][disabled]:hover { background:#eee; border:none; color:#fff; opacity:1.0; cursor:default; position:relative; }


.required { color:#f55; }
.pp_box { max-height:20rem; overflow:auto; border:1px solid #333; padding:1.5rem; margin-bottom:1rem; }
.notice { border-top:1px solid #333; border-bottom:1px solid #333; padding:1rem; margin:1rem 0; }
.notice.red { border-top:1px solid #f55; border-bottom:1px solid #f55; }

/*-- Radio and Checkbox/ --*/
input[type="radio"], input[type="checkbox"] { margin:0 3px 0 0; width:1.25rem; height:1.25rem; display:none; }
input[type="radio"] + span, input[type="checkbox"] + span { padding-left:1.5rem; line-height:1.5; position:relative; margin-right:1rem; display:inline-block; }
input[type="radio"] + span::before{ content:""; display:block; position:absolute; top:0.25rem; left:0; width:1.2rem; height:1.2rem; border:1px solid #ccc; border-radius:50%; z-index:5; margin-right:3px; box-sizing:border-box; }
input[type="radio"]:checked + span, input[type="checkbox"]:checked + span { color:#f55; }
input[type="radio"]:checked + span::after{ content:""; display:block; position:absolute; top:calc(0.5rem - 1px); left:calc(0.25rem - 1px); width:0.8rem; height:0.8rem; background:#f55; border-radius:50%; z-index:10; }
input[type="checkbox"] + span::before { content:""; display:block; position:absolute; top:0.4rem; left:0; width:1.2rem; height:1.2rem; border:1px solid #333; border-radius:4px; background:#fff; margin-right:3px; box-sizing:border-box; }
input[type="checkbox"]:checked + span::after { content:""; display:block; position:absolute; top:0.2rem; left:0.4rem; width:0.5rem; height:1rem; transform:/*translate(0,calc(-50% - 0.4rem))*/ rotate(40deg); border-bottom:3px solid #f55; border-right:3px solid #f55; box-sizing:border-box; }

button.i_delete { min-width:0 !important; }
button.i_delete::before { display:none; }

/*-- SELECT/ --*/
select { -webkit-appearance:none; -moz-appearance:none; position:relative; z-index:auto !important; border-radius:0; font-size:inherit; text-align:left; background:#fff url(../img/i_pulldown.png) right center /24px no-repeat; border:1px solid #ccc; padding:3px 5px; margin:0 2px 0 0; box-sizing:border-box; display:none; display:block; }
select:disabled, select.disabled { border:1px solid #ccc; color:#ccc; color:silver; background:none; z-index:auto; }


/*-- INPIUT --*/
.imeOff { ime-mode:inactive; }
.inputS { width:20%; } .inputM { width:40%; }
.inputL { width:60%; }
.inputX { width:80%; } .inputXX { width:100%; }
.textarea_1 { height:250px; padding:8px; width:96%; resize:vertical; }

.b_zip { display:inline-block; height:38px; text-align:left; padding:0 2rem 0 1rem; font-size:0.9em; letter-spacing:0; min-width:0; width: auto; box-sizing:border-box; margin:0;}
.b_zip:hover { }

.error { background:#f55; color:#fff; padding:3px 10px; }



/*-- リスト/ --*/
ol { counter-reset:step; list-style:none; margin:0 0 2rem 0; padding:0; }
ol li{ padding:0; margin:0 0 1rem 2rem; }
ol > li::before { counter-increment:step; content:counter(step); background:#fcd9bd; vertical-align:middle; display:inline-block; width:1.6rem; line-height:1.6rem; letter-spacing:normal; font-size:0.8rem; font-weight:bolder; text-align:center; border-radius:50%; color:#333; margin:-0.3rem 0.4rem 0 -2rem; position:relative; }
ol ol { margin:0.5rem 0 1rem 0; }
ol li li { padding:0 0 0 1.6rem; margin:0 0 0.25rem 0; }
ol li li::before { counter-increment:step; content:counter(step); background:#ddd; vertical-align:middle; display:inline-block; width:1.4rem; line-height:1.4rem; letter-spacing:normal; font-size:0.8rem; font-weight:normal; text-align:center; border-radius:50%; color:#333; margin:-0.3rem 0.4rem 0 -2rem; }
ol > li h4, ol > li h5, ol > li h6 { vertical-align:top; display:inline-block; margin:0; line-height:1.5; }
ol li ul { padding:0 0 0 1.2rem; }
ol li ul li { padding:0; margin:0; }
ol li ul li::before { counter-increment:none; content:none; margin:0; }
ol li strong { /*color:#f77;*/ font-size:1.4rem; }
.value { background:#f77; vertical-align:middle; display:inline-block; width:1.6rem; line-height:1.6rem; font-size:1rem; font-weight:bolder; text-align:center; border-radius:50%; color:#fff; margin:-0.3rem 0.4rem 0 0; }

body.otoku ol > li::before { background:#fff174; }
body.ouen ol > li::before { background:#d4f1d0; }

.q { padding-right:2em; position:relative; }
.q::before { content:"Q. "; display:inline-block; margin-right:0.25em; transition:0.25s; }
.q.i_close::after { transform:rotate(-45deg); }
.a { margin-bottom:2rem; }
.a::before { content:"A. "; display:inline-block; font-weight:bold; margin-right:0.25em; transition:0.25s; color:#f55; font-size:1.4em; }



/*-- WordPress/ --*/
.aligncenter {display:block; margin:0 auto; }
.alignright { float:right; margin:0 0 1.5rem 2rem; position:relative; z-index:1; }
.alignleft { float:left; margin:0 2rem 1.5rem 0; position:relative; z-index:1; }
img[class*="wp-image-"],
img[class*="attachment-"] { max-width:100%; height:auto; }
img.alignright, img.alignleft { max-width:45%; }


.col1 { padding:0 2rem; }
.col2 { column-count:2; column-gap:4rem; padding:0 2rem; }
.col3 { column-count:3; column-gap:4rem; padding:0 2rem; }
.break { -webkit-column-break-before:always; break-before:column; }

.col2 ul { margin:0; padding:0 0 0 1rem; }



/*--Youtube--*/
.youtube { position:relative; width:80%; padding-top:45%; margin:auto; text-align:center }
.youtube iframe{ position:absolute; top:0; right:0; width:100%; height:100%; }


.anchor { height:10rem; margin-top:-10rem; position:relative; z-index:-1; }
.anchor#video { height:24rem; margin-top:-24rem; position:relative; z-index:-1; }


/*-- TAB --*/
ul.tab { margin:0 auto; padding:0; display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:flex-end; list-style:none; position:relative; border-bottom:1px solid #333; }
ul.tab li { width:49.5%; display:inline-block; margin:0; }
ul.tab li a {  display:block; text-align:center; vertical-align:top; width:auto; padding:1em; color:#666; border-bottom:transparent; font-size:1rem; line-height:1.25; position:relative; text-decoration:none; background:#eee;  }
ul.tab li a.select { border:1px solid #333; z-index:10; background:#fff; color:#333; margin:0 0 -1px 0; border-bottom:1px solid #fff; }
ul.tab li a:hover { cursor:pointer; }

.tab_content { overflow:hidden; padding:1rem 0 !important; margin:0; list-style:none !important; transition:0.5s; }
.tab_content > li { padding:0; margin:0; display:none; }
.tab_content > li.is_show { display:block; }

ul.tab_link { margin:0 auto; padding:0; display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:flex-end; list-style:none; position:relative; border-bottom:1px solid #333; }
ul.tab_link li { width:49.5%; display:inline-block; margin:0; }
ul.tab_link li a { display:block; text-align:center; vertical-align:top; width:auto; margin:0; padding:1em; color:#666; border-bottom:transparent; font-size:1rem; line-height:1.25; position:relative; text-decoration:none; background:#eee;  }
ul.tab_link li a.select { border:1px solid #333; margin-bottom:-1px; z-index:10; background:#fff; color:#333; border-bottom:1px solid #fff; }
ul.tab_link li a:hover { cursor:pointer; }



@media screen and (max-width:960px) {
ul.tab li { margin:0; padding:0 1px; }
ul.tab li a {  padding:0.5em ;   }
}


/*カレンダー*/
.cal_navi { display:flex; flex-flow:row wrap; justify-content:space-between; letter-spacing:normal; align-items:center; }
.cal_navi .prev { width:23%; font-size:0.9rem; text-align:left; padding:5px; }
.cal_navi .yearMonth { width:54%; font-size:1.4em; font-weight:bold; text-align:center; padding:5px; }
.cal_navi .next { width:23%; font-size:0.9rem; text-align:right; padding:5px; }

.cal { border-collapse:collapse; border-spacing:1; width:100%; border:1px solid #ddd; }
.cal tr { border:1px solid #ddd; }
.cal th { background:#eee; padding:0.25rem; border:1px solid #ddd; text-align:center; }
.cal td { text-align:center; padding:0.25rem; border:1px solid #ddd; position:static; }
.cal .ok { cursor:pointer; }
.cal .sat { background:#f2f9fb; }
.cal .sun { background:#fbf2f3; }
.cal .past { background:#f9f9f9; }
.cal .today { background:#edffed; }
.cal .select { background:#fff28f; }


#map button::after { display:none; }
#map img { object-fit:contain; font-family:'object-fit:contain;', sans-serif; }



@media print { 
html { background:none; height:auto; min-height:0; }
body { background:none; margin:0; padding:0; }

.covervid-wrapper, .covervid-video, .header, .booking_box { display:none; }

.contents { width:100%; max-width:100%; background:none; padding:0; margin:0; line-height:1.8; }

.head { background:none; height:0; padding:0; margin:0; display:none; }

.article { width:100%; padding:0; }
.full { margin-left:0; margin-right:0; padding:20px 0; width:100%; }
body.top .full { padding:20px 0; }
body.top .full_bg { padding-left:0; padding-right:0; }
.box_l.full .photo { margin-left:0; width:50vw; max-width:50vw; }
.box_r.full .photo { margin-right:0; width:50vw; max-width:50vw; }

.navibar { width:100%; padding:0; }
.navibar ul { padding:0; margin:0; }

h1 { background:none; color:#333; border-bottom:5px solid #ccc; font-weight:normal; }
h2 { font-weight:normal; }
h3, h4, h5, h6 { font-weight:normal; }
.text_box { padding:0; box-shadow:none; }

.index_title { padding:5px 0 5px 0; background:none; }

body.top .foot, .foot { margin:0; border-top:1px solid #ccc; }
.f_sub, .foot .booking, .copyright { display:none; }

.table01 { border:2px solid #ccc; border-collapse:collapse; margin-bottom:20px; }
.table01 th, .table01 td { font-weight:normal; border:2px solid #ccc; }
.table02 th, .table02 td { font-weight:normal; }
.table03 th, .table03 td { font-weight:normal; }

.sns { display:none; }

.b_box, .fm { display:none; }

}