@charset "utf-8";
/* CSS Document */

@import url(//fonts.googleapis.com/css?family=Open+Sans);
html { overflow-y: scroll; font-size: 62.5%; }
body { font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #555555; background: #FFF; margin: 0px; -webkit-text-size-adjust: none; font-size: 1.5rem; line-height: 1.5; letter-spacing: -0.001em; padding-top: 62px; }
img, hr { border: none; }
ol, ul, li, dl, dt, dd, p, h1, h2, h3, h4, h5, h6, form, input, textarea, select, address, em, article, section, aside { margin: 0; padding: 0; }
ol, ul { list-style: none }
address, em { font-style: normal; }
table { border-collapse: collapse; border-spacing: 0; }
th, td { text-align: left; font-weight: normal; }
object, embed, button { vertical-align: top; line-height: 1.1 }
input, select { vertical-align: bottom; }
header, footer { display: block; }
a { cursor: pointer; color: #ea2b5b; text-decoration: none; }
fieldset.inline label { display: inline-block; margin-right: 10px; }
fieldset.half label { width: 49%; display: inline-block; vertical-align: top; }
fieldset.onetherd label { width: 32%; display: inline-block; vertical-align: top; }
fieldset.auto select { width: auto; vertical-align: middle; margin-right: 4px; }
input[type=submit], input[type=reset] { -webkit-appearance: none; appearance: none; }
input[type=text], select, textarea, input[type=password] { width: 100%; box-sizing: border-box; -webkit-box-sizing: border-box; padding: 7px; border-radius: 4px; -webkit-border-radius: 4px; margin: 4px 0; }
input[type=tel] { width: 100%; box-sizing: border-box; -webkit-box-sizing: border-box; padding: 7px; border-radius: 4px; -webkit-border-radius: 4px; margin: 4px 0; }
input[type=radio], input[type=checkbox] { margin-right: 4px; vertical-align: middle; }
select { -webkit-appearance: button; appearance: button; background: url(../../images/sp/pageparts/blt_select_down.png) no-repeat right 50%; }
.clr { zoom: 1; }
.clr:after { content: ""; display: block; clear: both; }


.img-full{ width:100%; height:auto;}
.pdd-10{ padding:10px;box-sizing: border-box;-webkit-box-sizing: border-box;}
.text-center{ text-align:center;}

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


div.bg { background: #AFB2D1; padding: 0 0 1px 0; margin: 0 auto; width: 430px; position: relative; }
@media (max-width: 640px) {
    div.bg { width: 100%; }
}
/*----------------------------------------------------*/
.shadow { margin-bottom: 10px; box-shadow : 0px 2px 1px rgba(0, 0, 0, 0.33); background: #FFFFFF; width: 100%; box-sizing: border-box; -webkit-box-sizing: border-box; }
.hide { display: none !important; }
/*----------------------------------------------------*/

.title { padding: 10px 60px 10px 10px; position: relative; }
.title h2, .title h1 { font-size: 1.4rem; font-weight: bold; margin: 4.5px 0; }
.title p { font-size: 1.2rem; margin: 4.5px 0; }
.title em { position: absolute; display: block; top: 18px; right: 10px; color: #FFFFFF; font-size: 1rem; font-family: 'Open Sans', sans-serif; }
.title em a { padding: 0; display: block; color: #FFFFFF }
.title.page { padding: 10px 60px 10px 50px; }
.title.page span { width: 40px; height: 40px; background: #fff; position: absolute; top: 10px; left: 10px; }
.title.areatop { padding: 10px 60px 10px 50px; }
.title.areatop span { width: 40px; height: 40px; background: #fff; position: absolute; top: 10px; left: 10px; }
.title.areatop h2 { font-size: 1.6rem; }
/*----------------------------------------------------*/
.slider { width: 100%; }
.slider .item { width: 100%; position: relative; }
.slider .item .photo { width: 100%; }
.slider .item .photo img { width: 100%; height: auto; }
.slider .item .new { width: 36px; height: 36px; position: absolute; top: 0; right: 0; }
.slider .item dl { display: block; width: 100%; padding: 6px 10px; box-sizing: border-box; -webkit-box-sizing: border-box; height: 66px; }
.slider .item dl dt { font-size: 1.4rem; color: #e82b88; font-weight: bold; margin: 4px 0; line-height: 1.1 }
.slider .item dl dd { font-size: 1.2rem; margin: 4px 0; line-height: 1.1; white-space: nowrap }
.slider .item a dl dd { color: #555555 }
.slider .item a dl dd span { color: #76B39E; font-weight: bold; }
.slider .item a dl dd span.repeat { color: #EA2B5B }
.slick-slider { margin-bottom: 0 !important; }
/*----------------------------------------------------*/

.ctrl_arrow { position: relative; width: 100%; }
.ctrl_arrow .left, .ctrl_arrow .right { width: 22px; height: 22px; cursor: pointer; padding: 22px 17px; position: absolute; background: #6A2968 }
.ctrl_arrow .left { bottom: 0; left: 0; }
.ctrl_arrow .right { bottom: 0; right: 0; }
.ctrl_arrow .left img { -webkit-transform: scaleX(-1); }

.ctrl_arrow .left_s, .ctrl_arrow .right_s { width: 22px; height: 22px; cursor: pointer; padding: 22px 3px; position: absolute; background: #6A2968 }
.ctrl_arrow .left_s { bottom: 0; left: 0; }
.ctrl_arrow .right_s { bottom: 0; right: 0; }
.ctrl_arrow .left_s img { -webkit-transform: scaleX(-1); }

/*----------------------------------------------------*/
.list_a { display: block; width: 100%; }
.list_a li { border-top: solid 1px #B3B3B3; background: url(../../images/sp/pageparts/blt_arrow_gray.png) no-repeat right 10px center; display: block; }
.list_a li a { display: block; padding: 4px 30px 4px 10px; }
.list_a li a p { color: #555555; margin: 6px 0; font-size: 1.2rem; }
.list_a li a h3 { font-weight: bold; margin: 6px 0; font-size: 1.4rem; }
.list_a li a h3.aki { color: #EB7742 }
.list_a li a h3.nyuten { color: #8CA823 }
.list_a li a h3.event { color: #0097BD }
.list_a li a h3.photo { color: #E36367 }
.list_a li a h3.pickup { color: #B90180 }
/*----------------------------------------------------*/
.list_b { display: block; width: 100%; }
.list_b li { border-top: solid 1px #B3B3B3; background: url(../../images/sp/pageparts/blt_arrow_gray.png) no-repeat right 10px center; display: block; box-sizing: border-box; -webkit-box-sizing: border-box; min-height: 170px; }
.list_b li a { display: block; padding: 10px 30px 10px 120px; width: 100%; min-height: 170px; box-sizing: border-box; -webkit-box-sizing: border-box; position: relative; }
.list_b li a .photo { position: absolute; top: 10px; left: 10px; width: 100px }
.list_b li a .photo img { width: 100%; }
.list_b li dt { font-size: 1.4rem; margin: 6px 0; font-weight: bold; }
.list_b li .comment { color: #555555; margin: 6px 0; line-height: 1.2 }
/*----------------------------------------------------*/

footer { background: #000000; width: 430px; padding: 0 0 1px; margin: 0 auto; }
@media (max-width: 640px) {
    footer { width: 100%; }
}
footer #textlink { display: block; background: #FFFFFF; background: #AFB2D1; }
footer #textlink li { display: block; position: relative; border-bottom: 1px dotted #B3B3B3; width: 100%; min-height: 40px; box-sizing: border-box; -webkit-box-sizing: border-box; background: url(../../images/sp/pageparts/blt_arrow_gray.png) no-repeat right 10px center; font-size: 1.4rem; line-height: 24px; background: #FFFFFF }
footer #textlink li:last-child { box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.33); }
footer #textlink li a { display: block; padding: 8px 30px 8px 44px; color: #555555 }
footer #textlink li span { position: absolute; top: 8px; left: 10px; background: #fff; height: 24px; width: 24px; }
footer #textlink li.disable { color: #B3B3B3; }
footer #textlink li.disable a { color: #B3B3B3 }
footer #textlink li.disable span { background: #B3B3B3 }
footer .banner { width: 100%; display: block; background: #AFB2D1; padding: 0 0 10px; }
footer .banner img { width: 100%; box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.33); display: block; }
/*----------------------------------------------------*/

.phone_footer { width: 100%; padding: 15px; color: #FFFFFF; box-sizing: border-box; -webkit-box-sizing: border-box; background: #000000 }
.phone_footer h4 { font-weight: normal; font-size: 1.4rem; text-align: center }
.phone_footer p { text-align: center; font-size: 1.4rem; margin: 0.8rem 0; }
.phone_footer p.number { font-family: 'Open Sans', sans-serif; font-size: 36px; }
.phone_footer p.sub a { color: #FFFFFF; font-family: 'Open Sans', sans-serif; }
.phone_footer .btn_call { background: #EA2B5B url(../../images/sp/pageparts/icon_phone_1.png) no-repeat 10px 50%; background-size: 40px 40px; font-size: 1.5rem; font-weight: bold; text-align: center; border-radius: 21px; -webkit-border-radius: 21px; }
.phone_footer .btn_call a { color: #FFFFFF; display: block; padding: 15px 10px 15px 40px; }
/*----------------------------------------------------*/

footer .copyright { text-align: center; font-family: 'Open Sans', sans-serif; font-size: 1rem; color: #B3B3B3; margin: 1.6rem 0; }
/*----------------------------------------------------*/

.btn_pagetop { width: 40px; height: 40px; position: fixed; right: 6px; bottom: 40px; cursor: pointer; }
.btn_back_btm { width: 40px; height: 40px; position: fixed; left: 6px; bottom: 40px; cursor: pointer; }
/*----------------------------------------------------*/

.btn_back { border: 1px solid #FFFFFF; border-radius: 4px; -webkit-border-radius: 4px; margin: 1px 10px 10px; width: auto; text-align: center; }
.btn_back a { padding: 10px 30px; display: block; background: url(../../images/sp/pageparts/blt_back_arrow.png) no-repeat 4px 50%; color: #FFFFFF }
/*----------------------------------------------------*/
.btn_close { border: 1px solid #FFFFFF; border-radius: 4px; -webkit-border-radius: 4px; margin: 1px 10px 10px; width: auto; text-align: center; }
.btn_close a { padding: 10px 30px; display: block; color: #FFFFFF }
/*----------------------------------------------------*/
.btn_link { background: #EA2B5B; font-size: 1.4rem; font-weight: bold; text-align: center; border-radius: 21px; -webkit-border-radius: 21px; margin: 10px; width: auto; }
.btn_link a { color: #FFFFFF; display: block; padding: 15px 30px 15px 30px; width: 100%; box-sizing: border-box; -webkit-box-sizing: border-box; position: relative; }
.btn_link a span { width: 22px; height: 22px; position: absolute; top: 50%; margin-top: -11px; right: 10px; }
/*----------------------------------------------------*/
.btn_read { background: #FFFFFF; font-size: 1.4rem; font-weight: bold; text-align: center; margin: 10px; width: auto; border: 1px solid #e82b88; }
.btn_read a { color: #e82b88; display: block; padding: 15px 30px 15px 30px; width: 100%; box-sizing: border-box; -webkit-box-sizing: border-box; position: relative; }
.btn_read a span { width: 22px; height: 22px; position: absolute; top: 50%; margin-top: -11px; left: 10px; }
.btn_read a span img { -webkit-transform: rotate( 90deg ); transform: rotate( 90deg ); }
/*----------------------------------------------------*/

.time { text-align: center; }
.time p { padding: 10px 0 10px 10px; border-top: 1px solid #B3B3B3; text-align: left; }
.time td p { border: none; text-align: center; padding: 0; }
.time p em { font-weight: bold; font-size: 1.4rem; }
.time p em span { color: #ea2b5b; }
.time p img { vertical-align: -4px; margin: 0 1px; }
.time table { width: 100%; }
.time table th { font-size: 1.4rem; color: #FFFFFF; background: #6A2968; text-align: center; padding: 6px 0; word-wrap: break-word; }
.time table td { text-align: center; }
.time table th, .time table td { border-right: 1px solid #B3B3B3; border-bottom: 1px solid #B3B3B3; padding: 4px 0; }
.time table th.soldout { background: #000000; color: #e82b88; padding: 12px 0; }
.time table { border-left: 1px solid #B3B3B3; border-top: 1px solid #B3B3B3; }
.time .scroll { width: 100%; overflow: auto; }
.time .scroll::-webkit-scrollbar {
height: 5px;
}
.time .scroll::-webkit-scrollbar-track {
background: #F1F1F1;
}
.time .scroll::-webkit-scrollbar-thumb {
background: #BCBCBC;
}
/*----------------------------------------------------*/
.day { text-align: center; }
/*.day p { padding: 10px 0 10px 10px; border-top: 1px solid #B3B3B3; text-align: left; }*/
.day p { padding: 10px 0 10px 10px; text-align: left; }
.day p em { font-weight: bold; font-size: 1.4rem; }
.day table { width: 100%; }
.day table th { font-size: 1.2rem; color: #FFFFFF; background: #000000; text-align: center; padding: 6px 0; }
.day table td { text-align: center; }
.day table th, .day table td { border-right: 1px solid #B3B3B3; border-bottom: 1px solid #B3B3B3; padding: 4px 0; }
.day table { border-left: 1px solid #B3B3B3; border-top: 1px solid #B3B3B3; }
.day table th.on { background: #EA2B5B }
.day table td.on { color: #EA2B5B }
/*----------------------------------------------------*/



fieldset { border: 4px solid #AFB2D1; border-radius: 8px; -webkit-border-radius: 8px; margin: 0 0 10px 0; padding: 5px 10px; box-sizing: border-box; -webkit-box-sizing: border-box; }
input[type=text], input[type=tel] { font-size: 1.4rem; line-height: 30px; padding: 0 4px; border-radius: 0px; -webkit-border-radius: 0px; box-shadow: 0px 0px 4px 0px #CFCFCF inset; margin: 5px 0; border: 1px solid #000000; }
textarea { font-size: 1.4rem; padding: 4px 4px; border-radius: 0px; -webkit-border-radius: 0px; box-shadow: 0px 0px 4px 0px #CFCFCF inset; margin: 5px 0; border: 1px solid #000000; height: 140px; }
select { -webkit-appearance: none; appearance: none; background: #000000 url(../../images/sp/search/blt_select_arrow.png) no-repeat right center; border: 1px solid #000000; box-sizing: border-box; -webkit-box-sizing: border-box; color: #FFFFFF; font-size: 1.4rem; margin: 5px 0; font-size: 1.4rem; line-height: 30px; border-radius: 4px; -webkit-border-radius: 4px; padding: 0 4px }
select span { font-size: 1rem }
input[type="checkbox"] { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; appearance: none; width: 18px; height: 18px; background: #fff; -webkit-box-shadow: 0px 0px 5px 0px inset; position: relative; margin-bottom: 3px; margin-right: 5px; }
input[type="checkbox"]:checked:before { position: absolute; left: 0px; top: 14px; display: block; -webkit-box-shadow: 0 1px 1px; content: ""; width: 10px; height: 4px; background: #EA2B5B; -webkit-transform: rotate(45deg); -webkit-transform-origin: right center; }
input[type="checkbox"]:checked:after { display: block; position: absolute; left: 8px; top: 14px; content: ""; -webkit-box-shadow: 0 1px 1px; width: 16px; height: 4px; background: #EA2B5B; -webkit-transform: rotate(-53deg); -webkit-transform-origin: left center; }
input[type="radio"] { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; width: 18px; height: 18px; background: #fff; -webkit-box-shadow: 0px 0px 5px 0px inset; -webkit-border-radius: 10px / 10px; position: relative; margin-bottom: 3px; margin-right: 5px; }
input[type="radio"]:disabled { background-color: #cccccc; }
input[type="radio"]:checked:before { position: absolute; left: 50%; top: 50%; display: block; margin: -4px 0 0 -4px; -webkit-box-shadow: 1 1px 1px; -webkit-border-radius: 10px / 10px; content: ""; width: 8px; height: 8px; background: -webkit-gradient( linear, left top, left bottom, from(#000), to(#000) ); }
div.checkbox { width: 100%; }
div.checkbox label { width: 49%; padding: 5px 0 5px 24px; box-sizing: border-box; -webkit-box-sizing: border-box; float: left; position: relative; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; margin-right: 1% }
div.checkbox label:nth-child(even) { margin-left: 1%; margin-right: 0; }
div.checkbox label div { width: 18px; height: 18px; position: absolute; top: 5px; left: 0px; }
div.checkbox label span { display: block; font-size: 1rem; width: 100%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
div.radio { width: 100%; }
div.radio label { display: inline-block; padding: 5px 0 5px 24px; box-sizing: border-box; -webkit-box-sizing: border-box; position: relative; overflow: hidden; text-overflow: ellipsis; margin-right: 2% }
div.radio label div { width: 18px; height: 18px; position: absolute; top: 1px; left: 0px; }
button.search { -webkit-appearance: none; appearance: none; -webkit-appearance: button; appearance: button; font-size: 15px; background: #EA2B5B url(../../images/sp/pageparts/icon_loupe_white.png) 10px 50% no-repeat; background-size: 24px 24px; font-weight: bold; color: #FFFFFF; text-align: center; width: 100%; border: none; border-radius: 4px; -webkit-border-radius: 4px; padding: 14px 60px; overflow: hidden; white-space: nowrap; }
/*----------------------------------------------------*/


.syasyo_cmt { padding: 10px; box-sizing: border-box; -webkit-box-sizing: border-box; width: 100%; position: relative; min-height: 80px; border-top: 1px solid #B3B3B3; background: #FFFFFF }
.syasyo_cmt p { margin-bottom: 1rem; }
.syasyo_cmt p strong { font-weight: bold; font-size: 1.6rem; color: #EA2B5B }
.syasyo_cmt span { width: 56px; position: absolute; top: 10px; left: 10px; }
#infscr-loading { text-align: center; margin: 0 auto; margin-bottom: 10px; padding: 10px; background: #F1F1F1; opacity: 0.8; color: #000; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }
.error_msg { color: #EA2B5B; }
div.error-message { color: #EA2B5B; }

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

.item .pattern { position: absolute; bottom: 0; left: 0; }
.item .pattern img { width: 100% }

.underline { text-decoration: underline }
