@import url(./roundedmplus1c.css);



@charset "utf-8";

/*

 Oneplate: ver.201709290000

*/

/*

 reset

*/

* {

  box-sizing: border-box;

  border-collapse: collapse;

  overflow-wrap: break-word;

}

h1,

h2,

h3,

h4,

h5,

h6,

ul,

ol,

li,

dl,

dt,

dd {

  margin: 0;

  padding: 0;

  list-style: none;

  font-weight: normal;

}

table {

  border-collapse: collapse;

}

a img {

  border: none;

}

.hotspot {

  cursor: pointer;

}

#tt {

  position: absolute;

  display: block;

  background: url(../images/tt_left.gif) top left no-repeat;

}

#tttop {

  display: block;

  height: 5px;

  margin-left: 5px;

  background: url(../images/tt_top.gif) top right no-repeat;

  overflow: hidden;

}

#ttcont {

  display: block;

  padding: 2px 12px 3px 7px;

  margin-left: 5px;

  background: #ccc;

  color: #333;

  font-size: 10px;

  line-height: 16px;

}

#ttcont div.schedule_title {

  font-size: 13px;

}

#ttcont div.schedule_body {

  font-size: 11px;

}

#ttbot {

  display: block;

  height: 5px;

  margin-left: 5px;

  background: url(../images/tt_bottom.gif) top right no-repeat;

  overflow: hidden;

}

/*

 パーツ表示切替用style

*/

.site_description {

}

.shop_name {

}



.shop_tel {

}



.shop_rss {

}

.today_area {

}

.qr_area {

}

.counter_area {

}

.copyright {

}

.powered {

  display: none;

}



/*

 link(default)

*/

a:link,

a:visited {

  text-decoration: none;

  color: #3a3a3a;

}

a:hover,

a:active {

  text-decoration: none;

  color: #3a3a3a;

}

/*

 html / body / container

*/

html {

  font-size: 62.5%;

  line-height: 1.8;

  font-family: 'Rounded Mplus 1c';

}

@media only screen and (max-width: 600px) {

  html {

    font-size: 46.875%;

    line-height: 1.6;

  }

}

body {

  margin: 0;

  padding: 0;

  background: #ffffff;

  font-size: 1.6em;

  color: #3a3a3a;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

  overflow-y: scroll;

}



@media only screen and (max-width: 600px) {

  body {

    overflow-x: hidden;

  }

}

/*

 header

*/

#header {

  position: relative;

  left: 0;

  top: 0;

  z-index: 1000;

  width: 100%;

  margin: 0 auto;

  padding: 15px 0;

  background: #ffffff;

  box-shadow: 0 1px 10px -4px rgba(0, 0, 0, 0.6);

  -webkit-transition: top .5s;

  transition: top .5s;

}

#header > .inner {

  zoom: 1;

  position: relative;

  width: 100%;

  max-width: 960px;

  min-height: 60px;

  margin: 0 auto;

}

#header > .inner:after {

  content: '';

  display: block;

  clear: both;

}

@media only screen and (max-width: 1000px) {

  #header > .inner {

    padding-left: 20px;

    padding-right: 20px;

  }

}

#header .element {

  text-align: center;

  line-height: 1.2;

}

#header .logo {

  margin: .3em 0 .3em;

  font-weight: normal;

  font-size: 36px;

  font-size: 3.6rem;

}

#header .logo a img {

  max-width: 80%;

}

@media only screen and (max-width: 800px) {

  #header .logo {

    max-width: 80%;

    margin-left: auto;

    margin-right: auto;

  }

  #header .logo a img {

    max-width: 100%;

    margin-left: auto;

    margin-right: auto;

  }

}

#header .site_description {

  margin: .3em 0;

  font-size: 13px;

  font-size: 1.3rem;

}

@media only screen and (max-width: 800px) {

  #header .site_description {

    max-width: 80%;

    margin-left: auto;

    margin-right: auto;

  }

}

#header .shop_tel {

  position: relative;

  right: 0;

  top: 0;

  margin: 0;

  text-align: right;

  font-size: 20px;

  font-size: 2rem;

  line-height: 1;

}

#header .shop_tel i {

  font-size: 18px;

  font-size: 1.8rem;

}

@media only screen and (max-width: 800px) {

  #header .shop_tel {

    text-align: center;

  }

}

#header .navi.pc {

  margin: 1.5em 0 0;

  font-size: 15px;

  font-size: 1.5rem;

}

#header .navi.pc li {

  display: inline-block;

  margin: 0 0 0 2px;

}

#header .navi.pc li a {

  display: block;

  padding: .3em .5em;

  -ms-border-radius: 3px;

  border-radius: 3px;

}

#header .navi.pc li a:hover {

  background: #e8e8e8;

}

#header .navi.pc li.active a {

  background: #e8e8e8;

}

#header .navi.pc li.active:hover a {

  -ms-border-radius: 3px 3px 0 0;

  border-radius: 3px 3px 0 0;

}

#header .navi.pc li.active:hover .sub_navi {

  display: block;

}

#header .navi.pc .sub_navi {

  display: none;

  position: absolute;

  background: #e8e8e8;

  -ms-border-radius: 0 3px 3px 3px;

  border-radius: 0 3px 3px 3px;

}

#header .navi.pc .sub_navi li {

  display: block;

  margin: 0;

  padding: .3em;

  text-align: left;

}

#header .navi.pc .sub_navi li a {

  background: none;

}

#header .navi.pc .sub_navi li a:hover {

  background: #dbdbdb;

  -ms-border-radius: 3px;

  border-radius: 3px;

}

@media only screen and (max-width: 800px) {

  #header .navi.pc {

    display: none;

  }

}

#header.is-scroll {

  -webkit-transition: top .5s;

  transition: top .5s;

  position: fixed;

  top: 0;

  padding: 0;

}

#header.is-scroll > .inner {

  min-height: 0;

  margin: 0 auto;

  padding-top: 20px;

  padding-bottom: 20px;

}

@media only screen and (max-width: 800px) {

  #header.is-scroll > .inner {

    padding-top: 0;

    padding-bottom: 0;

  }

}

#header.is-scroll .logo {

  display: none;

}

#header.is-scroll .logo a img {

  max-width: 200px;

  max-height: 60px;

}

@media only screen and (max-width: 800px) {

  #header.is-scroll .logo {

    display: block;

    margin-top: .3em;

  }

}

#header.is-scroll .site_description {

  margin: 0;

}

#header.is-scroll .site_description span {

  display: none;

}

#header.is-scroll .shop_tel {

  display: none;

}

#header.is-scroll .navi.pc {

  margin: 0;

}

#header.hide {

  top: -200px;

}

#header .navi.mobile {

  position: absolute;

  left: 0;

  top: 0;

  display: none;

  width: 100%;

  padding: 3em;

  background: rgba(255, 255, 255, 0.95);

}

#header .navi.mobile ul {

  position: relative;

  width: 85%;

  list-style: none;

  margin: 0 auto;

  padding: 0;

}

#header .navi.mobile ul li {

  display: block;

  max-width: 800px;

  margin: 5px auto 0;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-align: center;

}

#header .navi.mobile ul li a {

  display: block;

  padding: .5em;

  background: #e8e8e8;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-decoration: none;

  font-size: 20px;

  font-size: 2rem;

  line-height: 1.1;

  color: #3a3a3a;

}

#header .navi.mobile ul li a:hover {

  background: #d6d6d6;

}

#header .navi.mobile ul li.active {

  background: #d6d6d6;

}

#header .navi.mobile ul li.active > a {

  background: transparent;

  cursor: default;

}

#header .navi.mobile ul li .sub_navi {

  width: 100%;

  margin: 0;

  padding: 5px;

}

#header .navi.mobile ul li .sub_navi li:first-child {

  margin: 0;

}

#header .navi.mobile ul li .sub_navi li a:hover {

  background: #c2c2c2;

}

#header #button_navi {

  position: absolute;

  right: 20px;

  top: 0;

  display: none;

  width: 24px;

  height: 100%;

}

@media only screen and (max-width: 800px) {

  #header #button_navi {

    display: block;

  }

  #header #button_navi div {

    position: absolute;

    left: 0;

    top: 50%;

    height: 30px;

    margin: -15px 0 0;

    font-size: 28px;

    font-size: 2.8rem;

    line-height: 30px;

  }

}

/*

 content, section

*/

#content {

  position: relative;

}

#content > .inner {

  max-width: 960px;

  margin: 0 auto;

  padding: 0;

}

@media only screen and (max-width: 1000px) {

  #content > .inner {

    padding-left: 20px;

    padding-right: 20px;

  }

}

#content h2 {

  font-weight: normal;

  font-size: 30px;

  font-size: 3rem;

  line-height: 1;

}

#content h2.page_title {

  margin: 60px 0;

  text-align: center;

}

@media only screen and (max-width: 600px) {

  #content h2.page_title {

    margin: 40px 0;

  }

}

#content h2.page_title a {

  position: relative;

  padding: .3em .2em;

  background: transparent;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-decoration: none;

  -webkit-transition: background .15s;

  transition: background .15s;

  left: 0;

}

#content h2.page_title a:hover {

  background: #e8e8e8;

  text-decoration: none;

}

#content h2 a:hover {

  text-decoration: underline;

}

/*

 pager

*/

.pager {

  zoom: 1;

  position: relative;

  margin: 0;

  font-family: 'Rounded Mplus 1c';

}

.pager:after {

  content: '';

  display: block;

  clear: both;

}

.pager > .inner {

  max-width: 960px;

  margin: 0 auto;

  padding: 50px 0;

  padding-left: 20px;

  padding-right: 20px;

}

.pager > .inner div {

  zoom: 1;

  position: relative;

  text-align: center;

}

.pager > .inner div:after {

  content: '';

  display: block;

  clear: both;

}

.pager > .inner div a {

  display: inline-block;

  width: 40px;

  height: 40px;

  margin: 3px .15em;

  -ms-border-radius: 3px;

  bo: 3px;

  text-decoration: none;

  text-align: center;

  font-size: 22px;

  fo2rem;

  line-height: 38px;

  color: #3a3a3a;

}

.pager > .inner div a.chk {

  background: #e8e8e8;

  cursor: default;

}

.pager > .inner div a:hover {

  background: #e8e8e8;

}

@media only screen and (max-width: 800px) {

  .pager .inner {

    position: relative;

    left: 0;

  }

  .pager .inner div {

    position: relative;

    left: 0;

  }

  .pager .inner div a {

    display: none;

    line-height: 42px;

  }

  .pager .inner div a.next,

  .pager .inner div a.prev {

    float: left;

    display: block;

    margin: 0;

    background: #e8e8e8;

    font-size: 24px;

    font-size: 2.4rem;

  

  .pager .inner div a.next {

    float: right;

  }

  .pager .inner div a.chk {

    display: block;

    position: absolute;

    left: 50%;

    float: none;

    background: transparent;

    margin: 0 0 0 -20px;

    font-size: 30px;

    font-size: 3rem;

  }

}

/*

 gadgets

*/

.gadgets {

  margin: 50px 0 0;

}

.gadgets > .inner {

  max-width: 960px;

  margin: 0 auto;

  padding: 0;

  text-align: center;

  padding-left: 20px;

  padding-right: 20px;

}

.gadgets #navi_parts .navi_parts_detail {

  display: inline-block;

  vertical-align: middle;

  margin: 0 10px 10px;

}

.gadgets #navi_parts .navi_parts_detail img {

  display: block;

}

.gadgets #navi_parts .navi_parts_detail img.goog-te-gadget-icon {

  display: inline;

}

.gadgets #navi_parts .navi_parts_detail .goog-te-menu-value img {

  display: inline;

}

.gadgets #navi_parts .navi_parts_detail img,

.gadgets #navi_parts .navi_parts_detail iframe,

.gadgets #navi_parts .navi_parts_detail object,

.gadgets #navi_parts .navi_parts_detail embed {

  max-width: 100%;

  overflow: hidden;

}

/*

 sidebar

*/

.s

  margin: 50px 0 0;

}

.sidebar > .inner {

  max-width: 960px;

  margin: 0 auto;

  text-align: center;

}

@media only screen and (max-width: 1000px) {

  .sidebar > .inner {

    padding-left: 20px;

    padding-right: 20px;

  }

}

@media only screen and (max-width: 600px) {

  .sidebar > .inner {

    margin-bottom: -50px;

    border-top: 1px dotted #a9a9a9;

  }

}

.sidebar .block {

  width: 33%;

  vertical-align: top;

  margin: 0;

  padding: 0 3%;

  border-left: 1px dotted #a9a9a9;

  text-align: center;

}

.sidebar .block:first-child {

  margin: 0;

  border: none;

}

.sidebar .block h3 {

  margin: 0 0 10px;

  font-size: 26px;

  font-size: 2.6rem;

  line-height: 1;

}

@media only screen and (max-width: 800px) {

  .sidebar .block {

    width: 25%;

  }

}

@media only screen and (max-width: 600px) {

  .sidebar .block {

    width: 100%;

    margin: 0;

    padding: 20px 0;

    border-left: none;

    border-top: 1px dotted #a9a9a9;

    text-align: center;

  }

  .sidebar .block.qr_area {

    display: none !important;

  }

}

/*

 social

*/

.social {

  margin: 50px 0 0;

  padding: 40px 0 0;

  border-top: 1px dotted #a9a9a9;

}

.social > .inner {

  max-width: 960px;

  margin: 0 auto;

  text-align: center;

}

@media only screen and (max-width: 1000px) {

  .social > .inner {

    padding-left: 20px;

    padding-right: 20px;

  }

}

.social #social_widgets .social_widget {

  display: inline-block;

  height: 20px;

  margin: 10px 0 0 10px;

  vertical-align: middle;

}

.social #social_widgets .social_widget:first-child {

  margin-left: 0;

}

.social #social_widgets .social_widget#widget_facebook_like {

  width: 150px;

}

.social #social_widgets .social_widget#widget_facebook_like iframe {

  width: 150px;

}

.social #social_widgets .social_widget#widget_facebook_follow {

  width: 148px;

}

.social #social_widgets .social_widget#widget_facebook_follow.social_widget_facebook_follow iframe {

  width: 148px;

}

.social #social_widgets .social_widget#widget_facebook_follow.social_widget_facebook_likebox {

  width: 300px;

  height: 72px;

  overflow: hidden;

}

.social #social_widgets .social_widget#widget_facebook_follow.social_widget_facebook_likebox > div {

  display: inline-block;

}

@media only screen and (max-width: 600px) {

  .social #social_widgets .social_widget#widget_facebook_follow.social_widget_facebook_likebox {

    width: 100%;

    margin-left: 0;

  }

}

/*

 footer

*/

#footer {

  position: relative;

  z-index: 2;

  margin: 50px 0 0;

  padding: 0;

  border-top: 1px dotted #a9a9a9;

  text-align: center;

  color: #3a3a3a;

}

#footer > .inner {

  zoom: 1;

  max-width: 960px;

  margin: 0 auto;

  padding: 40px 0 70px;

}

#footer > .inner:after {

  content: '';

  display: block;

  clear: both;

}

#footer > .inner a {

  color: #3a3a3a;

}

#footer > .inner a:hover {

  text-decoration: underline;

}

@media only screen and (max-width: 1000px) {

  #footer > .inner {

    padding-left: 20px;

    padding-right: 20px;

  }

}

#footer .social_icons {

  font-size: 29px;

  font-size: 2.9rem;

  line-height: 1;

}

#footer .social_icons a {

  display: inline-block;

  margin: 0;

  padding: .3em;

  -ms-border-radius: 3px;

  border-radius: 3px;

  vertical-align: bottom;

}

#footer .social_icons a:hover,

#footer .social_icons a:active {

  background: #e8e8e8;

  text-decoration: none;

}

#footer .social_icons a span {

  display: block;

}

#footer .shop_name {

  font-size: 30px;

  font-size: 3rem;

}

#footer .shop_name a {

  position: relative;

  padding: .3em .2em;

  background: transparent;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-decoration: none;

  -webkit-transition: background .15s;

  transition: background .15s;

}

#footer .shop_name a:hover {

  background: #e8e8e8;

  text-decoration: none;

}

/*

 totopボタン

*/

.totop {

  position: fixed;

  right: 15px;

  bottom: 15px;

  z-index: 10000;

  display: block;

  width: 44px;

  height: 44px;

}

.totop .button {

  visibility: hidden;

  display: block;

  width: 44px;

  height: 44px;

  margin: 0 0 0 auto;

  background: rgba(232, 232, 232, 0.7);

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-align: center;

  font-size: 30px;

  font-size: 3rem;

  line-height: 44px;

  color: #3a3a3a;

}

.totop .button.is-visible {

  visibility: visible;

}

.totop .button:hover {

  background: #e8e8e8;

  cursor: pointer;

}

body.modal-open .totop,

body.navi-open .totop {

  display: none;

}

@font-face {

  font-family: 'icomoon';

  src: url(../fonts/social-icon_d66b97.eot);

  src: url(../fonts/social-icon_d66b97.eot) format('embedded-opentype'), url(../fonts/social-icon_dbd6a3.ttf) format('truetype'), url(../fonts/social-icon_ee3869.woff) format('woff'), url(../images/social-icon_36756b.svg) format('svg');

  font-weight: normal;

  font-style: normal;

}

[class^='icon-'],

[class*='icon-'] {

  font-family: 'icomoon' !important;

  speak: none;

  font-style: normal;

  font-weight: normal;

  font-variant: normal;

  text-transform: none;

  line-height: 1;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

}

.icon-instagram:before {

  content: '\e900';

}

.icon-facebook:before {

  content: '\e901';

}

.icon-twitter:before {

  content: '\e902';

}

/*

 WYSIWYGフィールド表示制御

*/

.textfield {

  zoom: 1;

}

.textfield:after {

  content: '';

  display: block;

  clear: both;

}

.textfield img {

  max-width: 100% !important;

  height: auto !important;

}

.textfield p {

  margin: .5em 0 0 !important;

}

.textfield p:first-child {

  margin: 0 !important;

}

@mcreen and (max-width: 800px) {

  .textfield table {

    width: 100% !important;

    height: auto !important;

  }

}

.textfield iframe {

  max-width: 100% !important;

}

.textfield ul li {

  list-style-type: disc;

  list-style-position: inside;

}

.textfield ol li {

  list-style-type: decimal;

  list-style-position: inside;

}

@media only screen and (max-width: 600px) {

  .wysiwyg_template_profile1,

  .wysiwyg_template_profile2 {

    display: block;

  }

}

@media only screen and (max-width: 600px) {

  .wysiwyg_template_profile1 tr,

  .wysiwyg_template_profile2 tr,

  .wysiwyg_template_profile1 td,

  .wysiwyg_template_profile2 td {

    display: block;

  }

}

body#top #content > .inner {

  max-width: 960px;

  margin: 0 auto;

}

body#top .section {

  margin: 3.1em 0 0;

  padding: 0 0 3.1em;

  border-top: 1px dotted #a9a9a9;

}

body#top .section > .inner {

  max-width: 960px;

  margin: 0 auto;

}

@media only screen and (max-width: 1000px) {

  body#top .section > .inner {

    padding-left: 20px;

    padding-right: 20px;

  }

}

body#top .section_title {

  position: relative;

  top: -.5em;

  display: block;

  width: 100%;

  max-width: 960px;

  margin: 0 auto 2em;

  text-align: center;

}

body#top .section_title a,

body#top .section_title span {

  display: inline-block;

  padding: 0 1em;

  background: #ffffff;

  font-size: 30px;

  font-size: 3rem;

}

body#top .btn_details {

  margin: 10px 0 -22px;

  text-align: right;

  font-size: 18px;

  font-size: 1.8rem;

}

body#top .btn_details a {

  display: inline-block;

  padding: .7em 1em;

  -ms-border-radius: 3px;

  border-radius: 3px;

  line-height: 1;

  color: #3a3a3a;

}

body#top .btn_details a:hover {

  background: rgba(232, 232, 232, 0.5);

}

body#top #wrap_slider {

  position: relative;

  width: 100%;

  height: 500px;

}

@media only screen and (max-width: 800px) {

  body#top #wrap_slider {

    height: 400px;

  }

}

@media only screen and (max-width: 600px) {

  body#top #wrap_slider {

    height: 300px;

  }

}

@-webkit-keyframes scaleImage {

  0% {

    -webkit-transform: scale3d(1, 1, 1);

    transform: scale3d(1, 1, 1);

  }

  100% {

    -webkit-transform: scale3d(1, 1, 1);

    transform: scale3d(1, 1, 1);

  }

}

@keyframes scaleImage {

  0% {

    -webkit-transform: scale3d(1, 1, 1);

    transform: scale3d(1, 1, 1);

  }

  100% {

    -webkit-transform: scale3d(1, 1, 1);

    transform: scale3d(1, 1, 1);

  }

}

@-webkit-keyframes scaleImageMove {

  0% {

    -webkit-transform: scale3d(1, 1, 1);

    transform: scale3d(1, 1, 1);

  }

  100% {

    -webkit-transform: scale3d(1.1, 1.1, 1.1);

    transform: scale3d(1.1, 1.1, 1.1);

  }

}

@keyframes scaleImageMove {

  0% {

    -webkit-transform: scale3d(1, 1, 1);

    transform: scale3d(1, 1, 1);

  }

  100% {

    -webkit-transform: scale3d(1.1, 1.1, 1.1);

    transform: scale3d(1.1, 1.1, 1.1);

  }

}

@-webkit-keyframes textFadeIn {

  0% {

    opacity: 0;

  }

  100% {

    opacity: 1;

  }

}

@keyframes textFadeIn {

  0% {

    opacity: 0;

  }

  100% {

    opacity: 1;

  }

}

body#top #slider {

  position: relative;

  width: 100%;

  height: 500px;

  margin: 0;

  overflow: hidden;

}

body#top #slider .article {

  width: 100%;

  height: 500px;

  background-size: cover;

  background-position: 50%;

  overflow: hidden;

}

body#top #slider .article .slide_image_wrap {

  -webkit-animation-duration: 20s;

  animation-duration: 20s;

  -webkit-animation-fill-mode: both;

  animation-fill-mode: both;

  display: inline-block;

}

body#top #slider .article img {

  visibility: hidden;

  display: block;

  width: 100%;

  height: auto;

}

body#top #slider .article.move .slide_image_wrap {

  -webkit-animation-name: scaleImageMove;

  animation-name: scaleImageMove;

}

body#top #slider .article.move .caption_txt {

  -webkit-animation-duration: 5s;

  animation-duration: 5s;

  -webkit-animation-fill-mode: both;

  animation-fill-mode: both;

  -webkit-backface-visibility: hidden;

  backface-visibility: hidden;

  -webkit-animation-name: textFadeIn;

  animation-name: textFadeIn;

}

body#top #slider .article .caption {

  position: absolute;

  left: 0;

  top: 50%;

  width: 100%;

  margin: 0;

  padding: 0 30px;

  text-align: center;

  font-size: 26px;

  font-size: 2.6rem;

  color: #ffffff;

}

body#top #slider .article .caption > div {

  width: 100%;

  max-width: 960px;

  margin-left: auto;

  margin-right: auto;

  opacity: 0;

  padding: .5em;

  text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);

}

body#top #slider .article .caption .caption_txt a {

  color: #ffffff;

}

body#top #slider .article.move .caption div {

  opacity: 1;

}

@media only screen and (max-width: 800px) {

  body#top #slider {

    height: 400px;

  }

  body#top #slider .article {

    height: 400px;

  }

}

@media only screen and (max-width: 600px) {

  body#top #slider {

    height: 300px;

  }

  body#top #slider .article {

    height: 300px;

  }

}

body#top .ie #slider .article img,

body#top .ie #slider .article .caption div {

  transition: none 0s;

  transform: none;

}

body#top .ie #slider .article.move img,

body#top .ie #slider .article.move .caption div {

  transform: none;

}

body#top .slick-track {

  z-index: 1 !important;

}

body#top .slick-dots {

  bottom: 10px;

}

body#top .slick-dots li button:before {

  font-size: 14px;

  font-size: 1.4rem;

  color: #ffffff;

}

body#top .welcomemessage {

  margin-top: 1.5em;

  padding-top: 3em;

  border: none;

  text-align: center;

}

body#top .information .list {

  display: flex;

  flex-direction: row;

  flex-wrap: wrap;

  justify-content: flex-start;

  align-items: stretch;

  align-content: stretch;

  margin-top: -20px;

  text-align: center;

}

body#top .information .list.is-float .article {

  order: 0;

  flex-grow: 0;

  flex-shrink: 1;

  flex-basis: auto;

  align-self: auto;

  box-sizing: border-box;

  position: relative;

  width: calc(33.33333333%);

}

@media only screen and (max-width: 800px) {

  body#top .information .list.is-float .article {

    width: calc(50%);

  }

}

@media only screen and (max-width: 600px) {

  body#top .information .list.is-float .article {

    width: 100%;

  }

  body#top .information .list.is-float .article .summary {

    padding: 0;

  }

}

body#top .information .article {

  margin: 20px 0 0;

  text-align: left;

  -webkit-transition: opacity .15s;

  transition: opacity .15s;

  opacity: 1;

}

body#top .information .article:hover {

  opacity: 0.7;

}

body#top .information .article .photo {

  float: left;

  display: block;

  width: 120px;

  height: 120px;

  margin: 0 -140px 0 0;

  background: rgba(232, 232, 232, 0.5);

  -ms-border-radius: 3px;

  border-radius: 3px;

}

body#top .information .article .photo img {

  opacity: 0;

  -webkit-transition: opacity .3s;

  transition: opacity .3s;

}

body#top .information .article .photo img.show {

  opacity: 1;

}

body#top .information .article .summary {

  float: right;

  display: block;

  width: 100%;

  padding: 0 10px 0 0;

}

body#top .information .article .summary > .inner {

  display: block;

  margin-left: 130px;

}

body#top .information .article .summary .date {

  display: block;

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1;

  font-family: 'Rounded Mplus 1c';

}

body#top .information .article .summary .date span {

  vertical-align: .15em;

  font-size: 12px;

  font-size: 1.2rem;

}

body#top .information .article .summary .title {

  display: inline-block;

}

body#top .section_photo .slick-slider {

  margin: 0;

}

body#top .section_photo .list {

  display: block;

  width: 100%;

  height: 184px;

}

body#top .section_photo .list.float {

  text-align: center;

  letter-spacing: -.25em;

}

body#top .section_photo .list.float li {

  display: inline-block !important;

  letter-spacing: normal;

}

body#top .section_photo .list li {

  display: block;

  width: 184px;

  height: 184px;

  overflow: hidden;

  margin-left: 10px;

  -ms-border-radius: 3px;

  border-radius: 3px;

}

body#top .section_photo .list li:first-child {

  margin: 0;

}

body#top .section_photo .list li a,

body#top .section_photo .list li span {

  display: block;

  width: 100%;

  height: 100%;

  background: #ccc;

}

body#top .section_photo .list li a img,

body#top .section_photo .list li span img {

  opacity: 0;

  -webkit-transition: opacity .5s;

  transition: opacity .5s;

}

body#top .section_photo .list li a img.show,

body#top .section_photo .list li span img.show {

  opacity: 1;

}

body#top .section_photo .arrow-prev,

body#top .section_photo .arrow-next {

  cursor: pointer;

  outline: none;

  position: absolute;

  top: 50%;

  z-index: 1;

  display: block;

  width: 40px;

  height: 40px;

  margin-top: -20px;

  padding: 0;

  background: rgba(102, 102, 102, 0.5);

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-align: center;

  font-size: 44px;

  font-size: 4.4rem;

  line-height: 40px;

  color: #ffffff;

}

body#top .section_photo .arrow-prev:hover,

body#top .section_photo .arrow-next:hover {

  background: rgba(102, 102, 102, 0.8);

}

body#top .section_photo .arrow-prev {

  left: -20px;

  left: 10px;

}

body#top .section_photo .arrow-next {

  right: -20px;

  right: 10px;

}

body#top .about {

  position: relative;

  padding-top: 0;

}

body#top .about .section_title {

  max-width: none;

}

body#top .about > .inner {

  zoom: 1;

  width: 100%;

}

body#top .about > .inner:after {

  content: '';

  display: block;

  clear: both;

}

body#top .about .block {

  float: none;

  width: 100%;

}

body#top .about .block.map iframe {

  height: 470px;

}

body#top .about .block.summary {

  width: 100%;

  max-width: 960px;

  margin: 50px auto 0;

}

body#top .about .block.summary table {

  width: 65%;

  margin: 0 auto;

}

body#top .about .block.summary tr {

  display: table-row;

  margin: 0;

}

body#top .about .block.summary tr:first-child th,

body#top .about .block.summary tr:first-child td {

  border-top: none;

}

body#top .about .block.summary th,

body#top .about .block.summary td {

  display: table-cell;

  padding: 1em;

  border: 1px dotted #a9a9a9;

  border-bottom: none;

  border-left: none;

  font-size: 16px;

  font-size: 1.6rem;

  line-height: 1.6;

}

body#top .about .block.summary th {

  width: 35%;

}

body#top .about .block.summary td {

  width: 65%;

  border-right: none;

}

@media only screen and (max-width: 800px) {

  body#top .about .block.map iframe {

    height: 300px;

  }

  body#top .about .block.summary table {

    width: 80%;

  }

}

@media only screen and (max-width: 600px) {

  body#top .about .block.summary table {

    width: 100%;

  }

}

body#top .contact input[type=text],

body#top .contact input[type=tel],

body#top .contact input[type=email],

body#top .contact textarea {

  width: 100%;

  background: #ffffff;

  border: 1px solid #e4e2e1;

  -ms-border-radius: 2px;

  border-radius: 2px;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}

body#top .contact input[type=text],

body#top .contact input[type=tel],

body#top .contact input[type=email] {

  padding: 8px;

  font-size: 20px;

  font-size: 2rem;

}

body#top .contact input[type=text] {

  width: 100%;

}

body#top .contact input[type=text].contact_small {

  width: 60% !important;

}

body#top .contact textarea {

  width: 100%;

  height: 180px;

  padding: 5px;

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1.6;

}

body#top .contact input[type=text]:focus,

body#top .contact input[type=tel]:focus,

body#top .contact input[type=email]:focus,

body#top .contact textarea:focus {

  background: #ffffff;

  border: 1px solid #ffbfbf;

  outline: none;

}

body#top .contact label {

  font-size: 20px;

  font-size: 2rem;

}

body#top .contact label .requier {

  color: #993737;

}

body#top .contact .checkbox,

body#top .contact .radio {

  display: block;

}

body#top .contact .checkbox label,

body#top .contact .radio label {

  margin-right: 10px;

  font-size: 18px;

  font-size: 1.8rem;

}

body#top .contact select {

  padding: 7px;

  background: #ffffff;

  border: 1px solid #eeeeee;

  -ms-border-radius: 3px;

  border-radius: 3px;

  font-size: 18px;

  font-size: 1.8rem;

}

body#top .contact select:focus {

  outline: none;

}

body#top .contact input[type=submit]:focus {

  outline: none;

}

body#top .contact .wrap_select {

  position: relative;

  display: inline;

}

body#top .contact .select_arrow {

  position: absolute;

  right: 10px;

  bottom: 12px;

  line-height: 0;

  font-size: 12px;

  font-size: 1.2rem;

  color: #3a3a3a;

}

body#top .contact .button {

  position: relative;

  display: block;

  width: 100%;

  padding: 18px 10px;

  background: rgba(232, 232, 232, 0.5);

  border: none;

  line-height: 1;

  text-align: center;

  text-decoration: none;

  font-size: 20px;

  font-size: 2rem;

  color: #3a3a3a;

  -ms-border-radius: 4px;

  border-radius: 4px;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}

body#top .contact .button:hover,

body#top .contact .button:active {

  cursor: pointer;

  background: #ffbfbf;

  color: #5e0808;

}

body#top .contact input[type=text],

body#top .contact input[type=tel],

body#top .contact input[type=email],

body#top .contact select,

body#top .contact textarea {

  background: #ffffff;

  border-color: #dcdbdb;

}

body#top .contact .contact_area {

  display: block;

  margin-top: 2.5em;

}

body#top .contact .contact_area:first-child {

  margin-top: 0;

}

body#top .contact .button {

  margin: 1em 0 0;

}

body#top .contact .checkbox,

body#top .contact .radio {

  display: inline-block;

}

body#top .contact label {

  font-size: 18px;

  font-size: 1.8rem;

}

body#top .contact input[type=submit] {

  background: #e6e6e6;

}

body#top .contact form {

  width: 65%;

  margin: 0 auto;

}

@media only screen and (max-width: 800px) {

  body#top .contact form {

    width: 80%;

  }

}

@media only screen and (max-width: 600px) {

  body#top .contact form {

    width: 100%;

  }

}

.ie9 body#top .information .list {

  zoom: 1;

  display: block;

}

.ie9 body#top .information .list:after {

  content: '';

  display: block;

  clear: both;

}

.ie9 body#top .information .list.is-float .article {

  float: left;

}

@media only screen and (max-width: 600px) {

  .ie9 body#top .information .list.is-float .article {

    float: none;

  }

}

body#info .navi.mobile .sub_navi li {

  background: transparent;

}

body#info .navi.mobile .sub_navi li a {

  font-size: 16px;

  font-size: 1.6rem;

}

body#info .navi.mobile .sub_navi li.year {

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1;

  color: rgba(58, 58, 58, 0.7);

  color: #8b8b8b;

}

body#info .navi.mobile .sub_navi li.year div {

  margin: 0 0 10px;

}

body#info .navi.mobile .sub_navi li.year div.month {

  margin: 0;

}

body#info .navi.mobile .sub_navi li.year div.month a {

  display: inline-block;

  padding: .2em;

  margin: 0 5px 10px;

  font-size: 16px;

  font-size: 1.6rem;

}

body#info .article {

  margin: 4em 0 0;

}

body#info .article:first-child {

  margin: 0;

}

body#info .article .date {

  margin: 0;

  padding: 0;

  font-size: 20px;

  font-size: 2rem;

  line-height: 1;

  font-family: 'Rounded Mplus 1c';

}

body#info .article .date span {

  vertical-align: 2px;

  font-weight: bold;

  font-size: 16px;

  font-size: 1.6rem;

}

body#info .article .body .article_title {

  margin: 10px 0 0;

  font-weight: normal;

  font-size: 26px;

  font-size: 2.6rem;

  line-height: 1.2;

}

body#info .article .body .article_title a {

  position: relative;

  padding: .3em .2em;

  background: transparent;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-decoration: none;

  -webkit-transition: background .15s;

  transition: background .15s;

}

body#info .article .body .article_title a:hover {

  background: #e8e8e8;

  text-decoration: none;

}

body#info .article .body .photo {

  float: right;

  max-width: 50%;

  margin: 20px 0 1.2em 1.5em;

}

body#info .article .body .photo img {

  max-width: 100%;

  -ms-border-radius: 3px;

  border-radius: 3px;

}

body#info .article .body .textfield {

  margin: 20px 0 0;

}

body#info .article .body .textfield p:first-child {

  margin: 0 !important;

}

@media only screen and (max-width: 600px) {

  body#info .article .date {

    float: none;

    width: 100%;

    margin: 0 0 5px;

  }

  body#info .article .date div {

    display: inline;

  }

  body#info .article .date div.month {

    margin-right: 5px;

    font-size: 22px;

    font-size: 2.2rem;

  }

  body#info .article .body {

    float: none;

  }

  body#info .article .body .inner {

    margin: 0;

  }

  body#info .article .body h3 {

    margin: 0 0 20px;

  }

  body#info .article .body .photo {

    float: none;

    max-width: 100%;

    margin: 10px 0 0;

  }

  body#info .article .body .textfield {

    margin: 10px 0 0;

  }

}

body#photo #index {

  margin: 0;

}

body#photo #index .album {

  zoom: 1;

  margin: 30px 0 0;

}

body#photo #index .album:after {

  content: '';

  display: block;

  clear: both;

}

body#photo #index .album:first-child {

  margin: 0;

}

body#photo #index .album .album_title {

  margin: 0 0 10px;

  border-top: 1px dotted #a9a9a9;

  font-weight: normal;

  font-size: 24px;

  font-size: 2.4rem;

  line-height: 1.2;

}

body#photo #index .album .album_title > span {

  position: relative;

  top: -.6em;

  padding-right: 1em;

  background-color: #ffffff;

}

body#photo #index .album .album_title a {

  position: relative;

  padding: .3em .2em;

  background: transparent;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-decoration: none;

  -webkit-transition: background .15s;

  transition: background .15s;

}

body#photo #index .album .album_title a:hover {

  background: #e8e8e8;

  text-decoration: none;

}

body#photo #index .album .thumb {

  visibility: hidden;

  float: left;

  width: 20%;

  height: 152px;

  margin-right: 10px;

  margin-bottom: 10px;

  padding: 0;

}

body#photo #index .album .thumb a {

  position: relative;

  display: block;

  width: 100%;

  height: 100%;

  overflow: hidden;

  -ms-border-radius: 3px;

  border-radius: 3px;

  -webkit-transition: opacity .15s;

  transition: opacity .15s;

  opacity: 1;

}

body#photo #index .album .thumb a:hover {

  opacity: 0.7;

}

body#photo #index .album .thumb a:focus {

  outline: none;

}

body#photo #index .album .thumb a img {

  position: absolute;

  display: block;

  opacity: 0;

  -webkit-transition: opacity .3s;

  transition: opacity .3s;

}

body#photo #index .album .thumb a img.show {

  opacity: 1;

}

@media only screen and (max-width: 800px) {

  body#photo #index .album .thumb {

    margin-right: 5px;

    margin-bottom: 5px;

  }

}

body#photo #entries {

  position: relative;

}

body#photo #entries h3 {

  margin: 0 0 15px;

  font-weight: normal;

  font-size: 22px;

  font-size: 2.2rem;

  line-height: 1.2;

}

body#photo #entries .article {

  position: relative;

  margin: 4em 0 0;

}

body#photo #entries .article:first-child {

  margin: 0;

}

body#photo #entries .article h4 {

  margin: 1em 0 0;

  font-weight: normal;

  font-size: 22px;

  font-size: 2.2rem;

  line-height: 1.2;

}

body#photo #entries .article .textfield {

  margin: .5em 0 0;

}

body#photo #entries .article .photo {

  width: 100%;

}

body#photo #entries .article .photo img {

  display: block;

  max-width: 100%;

  -ms-border-radius: 3px;

  border-radius: 3px;

}

body#photo #navi li .sub_navi li a {

  display: block;

}

body#menu .list {

  margin: 3.5em 0 0;

}

body#menu .page_title + .list {

  margin: 0;

}

body#menu .article {

  zoom: 1;

  margin: 60px 0 0;

}

body#menu .article:after {

  content: '';

  display: block;

  clear: both;

}

body#menu .category_title {

  position: relative;

  border-top: 1px dotted #a9a9a9;

  font-size: 24px;

  font-size: 2.4rem;

  line-height: 1.2;

}

body#menu .category_title span {

  position: relative;

  top: -.6em;

  padding-right: 1em;

  background: #ffffff;

}

body#menu .category_title + .article {

  margin-top: 30px;

}

body#menu .article_title {

  margin: 10px 0 0;

  font-weight: normal;

  font-size: 26px;

  font-size: 2.6rem;

  line-height: 1.2;

}

body#menu .article_title .recommend {

  color: #f5f201;

}

body#menu .article_title a {

  position: relative;

  padding: .3em .2em;

  background: transparent;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-decoration: none;

  -webkit-transition: background .15s;

  transition: background .15s;

}

body#menu .article_title a:hover {

  background: #e8e8e8;

  text-decoration: none;

}

body#menu .photo {

  float: right;

  max-width: 50%;

  margin: 20px 0 1.2em 1.5em;

}

body#menu .photo img {

  display: block;

  max-width: 100%;

  -ms-border-radius: 3px;

  border-radius: 3px;

}

@media only screen and (max-width: 600px) {

  body#menu .photo {

    float: none;

    max-width: 100%;

    margin: 0 auto 1.5em;

  }

}

body#menu .price {

  margin: 1em 0 0;

  font-size: 20px;

  font-size: 2rem;

  line-height: 1;

}

body#menu .text {

  margin: 1em 0 0;

}

body#calendar .wrap_calendar .navi {

  margin: 0;

  text-align: center;

  font-size: 16px;

  font-size: 1.6rem;

}

body#calendar .table_calendar {

  margin: 2em 0 0;

}

body#calendar .table_calendar th {

  padding: 3px 0;

  font-size: 16px;

  font-size: 1.6rem;

  color: #3a3a3a;

}

body#calendar .table_calendar th.sun {

  color: #ffa5a5;

}

body#calendar .table_calendar td {

  position: relative;

  height: 112px;

  padding: 5px;

}

body#calendar .table_calendar td p.day {

  height: 110px;

  margin: 0;

  padding: 10px;

  background: #e8e8e8;

  -ms-border-radius: 3px;

  border-radius: 3px;

  text-align: right;

  font-family: 'Rounded Mplus 1c';

  font-size: 30px;

  font-size: 3rem;

  line-height: 146px;

}

body#calendar .table_calendar td.sun p.day,

body#calendar .table_calendar td.holiday p.day {

  background: #ffbfbf;

}

body#calendar .table_calendar td a {

  position: absolute;

  left: 10px;

  top: 10px;

}

@media only screen and (max-width: 800px) {

  body#calendar .table_calendar th {

    padding: 3px 0;

  }

  body#calendar .table_calendar td {

    height: 70px;

    padding: 5px;

  }

  body#calendar .table_calendar td p.day {

    height: 70px;

    padding: .35em;

    font-size: 20px;

    font-size: 2rem;

    line-height: 102px;

  }

  body#calendar .table_calendar td a {

    left: 5px;

    top: 8px;

  }

}

@media only screen and (max-width: 800px) {

  body#calendar .table_calendar td {

    padding: 2px;

  }

  body#calendar .table_calendar td p.day {

    padding: .25em;

  }

}

@media only screen and (max-width: 600px) {

  body#calendar .table_calendar td p.day {

    padding: .4em;

  }

}

body#calendar .schedule {

  padding: 0 0 1.5em;

}

body#calendar .schedule dl.article {

  margin: 1.5em 0 0;

  padding: 1.5em 0 0;

  border-top: 1px dotted #a9a9a9;

  border-top-style: dotted;

}

body#calendar .schedule dl.article:last-of-type {

  border-bottom: 1px dotted #a9a9a9;

  border-bottom-style: dotted;

  padding-bottom: 1.5em;

}

body#calendar .schedule dl.article dt.date {

  margin: 0 0 1em;

  padding: 0 0 0.2em;

  border: none;

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1;

  color: #3a3a3a;

}

body#calendar .schedule dl.article dd {

  zoom: 1;

  margin: 1em 0 0;

  font-size: 16px;

  font-size: 1.6rem;

}

body#calendar .schedule dl.article dd:after {

  content: '';

  display: block;

  clear: both;

}

body#calendar .schedule dl.article dd .category {

  float: left;

  margin-right: 1em;

  padding: .22em .43em;

  background: #e8e8e8;

  -ms-border-radius: 2px;

  border-radius: 2px;

  font-size: 14px;

  font-size: 1.4rem;

  font-weight: bold;

}

body#calendar .schedule dl.article dd a:link,

body#calendar .schedule dl.article dd a:visited {

  text-decoration: none;

}

body#calendar .schedule dl.article dd a:hover,

body#calendar .schedule dl.article dd a:active {

  text-decoration: underline;

}

body#calendar .details > div {

  zoom: 1;

}

body#calendar .details > div:after {

  content: '';

  display: block;

  clear: both;

}

body#calendar .details .category {

  float: left;

  margin-right: 1em;

  padding: .22em .43em;

  background: #e8e8e8;

  -ms-border-radius: 2px;

  border-radius: 2px;

  font-size: 14px;

  font-size: 1.4rem;

  font-weight: bold;

}

body#calendar .details .date {

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1;

  vertical-align: bottom;

}

body#calendar .details h3 {

  margin: .5em 0;

  font-size: 22px;

  font-size: 2.2rem;

}

body#calendar .details img {

  max-width: 100%;

  -ms-border-radius: 2px;

  border-radius: 2px;

}

body#about .map,

body#about .summary {

  width: 100%;

}

body#about .map iframe {

  height: 470px;

}

body#about .summary {

  width: 100%;

  max-width: 960px;

  margin: 50px auto 0;

}

body#about .summary table {

  width: 65%;

  margin: 0 auto;

}

body#about .summary tr {

  display: table-row;

  margin: 0;

}

body#about .summary tr:first-child th,

body#about .summary tr:first-child td {

  border-top: none;

}

body#about .summary th,

body#about .summary td {

  display: table-cell;

  padding: 1em;

  line-height: 1.2;

  border: 1px dotted #a9a9a9;

  border-bottom: none;

  border-left: none;

  font-size: 16px;

  font-size: 1.6rem;

}

body#about .summary th {

  width: 35%;

}

body#about .summary td {

  width: 65%;

  border-right: none;

}

@media only screen and (max-width: 800px) {

  body#about .summary table {

    width: 80%;

  }

}

@media only screen and (max-width: 600px) {

  body#about .summary table {

    width: 100%;

  }

}

body#contact .message {

  margin: 0 0 40px;

  padding: 1em;

  background: #ffecec;

  -ms-border-radius: 2px;

  border-radius: 2px;

  font-size: 16px;

  font-size: 1.6rem;

  color: #5e0808;

}

body#contact form {

  position: relative;

  width: 65%;

  margin: 0 auto;

}

body#contact form .contact_area,

body#contact form .button_area {

  margin: 2.5em 0 0;

}

body#contact form .contact_area:first-child,

body#contact form .button_area:first-child {

  margin: 0;

}

body#contact form .contact_area br {

  display: none;

}

body#contact form .contact_area > label {

  display: block;

  font-size: 18px;

  font-size: 1.8rem;

}

body#contact form .contact_area .checkbox label,

body#contact form .contact_area .radio label {

  position: static;

  display: inline;

  width: auto;

  padding: 0;

  background: none;

  border: none;

  -ms-border-radius: 0;

  border-radius: 0;

  font-weight: normal;

  color: #3a3a3a;

}

body#contact form input[type=text],

body#contact form input[type=tel],

body#contact form input[type=email],

body#contact form textarea {

  width: 100%;

  background: #ffffff;

  border: 1px solid #e4e2e1;

  -ms-border-radius: 2px;

  border-radius: 2px;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}

body#contact form input[type=text],

body#contact form input[type=tel],

body#contact form input[type=email] {

  padding: 8px;

  font-size: 20px;

  font-size: 2rem;

}

body#contact form input[type=text] {

  width: 100%;

}

body#contact form input[type=text].contact_small {

  width: 60% !important;

}

body#contact form textarea {

  width: 100%;

  height: 180px;

  padding: 5px;

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1.6;

}

body#contact form input[type=text]:focus,

body#contact form input[type=tel]:focus,

body#contact form input[type=email]:focus,

body#contact form textarea:focus {

  background: #ffffff;

  border: 1px solid #ffbfbf;

  outline: none;

}

body#contact form label {

  font-size: 20px;

  font-size: 2rem;

}

body#contact form label .requier {

  color: #993737;

}

body#contact form .checkbox,

body#contact form .radio {

  display: block;

}

body#contact form .checkbox label,

body#contact form .radio label {

  margin-right: 10px;

  font-size: 18px;

  font-size: 1.8rem;

}

body#contact form select {

  padding: 7px;

  background: #ffffff;

  border: 1px solid #eeeeee;

  -ms-border-radius: 3px;

  border-radius: 3px;

  font-size: 18px;

  font-size: 1.8rem;

}

body#contact form select:focus {

  outline: none;

}

body#contact form input[type=submit]:focus {

  outline: none;

}

body#contact form .wrap_select {

  position: relative;

  display: inline;

}

body#contact form .select_arrow {

  position: absolute;

  right: 10px;

  bottom: 12px;

  line-height: 0;

  font-size: 12px;

  font-size: 1.2rem;

  color: #3a3a3a;

}

body#contact form .button {

  position: relative;

  display: block;

  width: 100%;

  padding: 18px 10px;

  background: rgba(232, 232, 232, 0.5);

  border: none;

  line-height: 1;

  text-align: center;

  text-decoration: none;

  font-size: 20px;

  font-size: 2rem;

  color: #3a3a3a;

  -ms-border-radius: 4px;

  border-radius: 4px;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}

body#contact form .button:hover,

body#contact form .button:active {

  cursor: pointer;

  background: #ffbfbf;

  color: #5e0808;

}

body#contact form input[type=text],

body#contact form input[type=tel],

body#contact form input[type=email],

body#contact form select,

body#contact form textarea {

  background: #ffffff;

  border-color: #dcdbdb;

}

body#contact form select {

  width: 100% !important;

}

body#contact form input[type=submit] {

  margin: 2em 0 0;

  background: #e6e6e6;

}

@media only screen and (max-width: 800px) {

  body#contact form {

    width: 80%;

  }

}

@media only screen and (max-width: 600px) {

  body#contact form {

    width: 100%;

  }

}

body#contact .personal_info {

  margin: 2.5em 0 0;

}

body#contact .personal_info p {

  margin-bottom: 0;

}

body#coupon .autopagerize_page_element {

  zoom: 1;

  overflow: hidden;

  margin-top: -30px;

}

body#coupon .autopagerize_page_element:after {

  content: '';

  display: block;

  clear: both;

}

body#coupon .article {

  float: left;

  width: 31%;

  margin: 30px 0 0 20px;

  padding: 0;

  background: #e8e8e8;

  -ms-border-radius: 2px;

  border-radius: 2px;

}

@media screen and (max-width: 600px) {

  body#coupon .article {

    margin-left: 0;

  }

}

body#coupon .article .summary {

  padding: 10px;

}

body#coupon .article h4 {

  margin: 10px 0;

  font-weight: normal;

  font-size: 22px;

  font-size: 2.2rem;

  line-height: 1.2;

}

body#coupon .article .image {

  display: none;

  height: 200px;

  overflow: hidden;

  background-size: cover;

  background-position: 50%;

  -ms-border-radius: 2px 2px 0 0;

  border-radius: 2px 2px 0 0;

}

body#coupon .article .image img {

  display: block;

  max-width: 100%;

}

body#coupon .article .text {

  margin: 12px 0 0;

}

body#coupon .article:nth-child(odd) {

  margin-left: 0;

}

body#coupon .article .article_title {

  font-size: 26px;

  font-size: 2.6rem;

  line-height: 1.2;

  margin: .2em 0 0;

}

body#coupon .article .qrcode {

  float: right;

  margin: 0;

}

@media only screen and (max-width: 600px) {

  body#coupon .article .qrcode {

    margin: 0px 0 5px 10px;

  }

}

body#coupon .article .text {

  margin: .5em 0 0;

}

body#coupon .article .text li {

  padding-left: 5em;

  text-indent: -5em;

  font-weight: bold;

}

body#coupon .article .text li span {

  font-weight: normal;

}

body#coupon .print {

  margin: 20px 0 0;

  text-align: right;

}

body#coupon .print a {

  display: inline-block;

  padding: .5em;

  background: rgba(232, 232, 232, 0.7);

  -ms-border-radius: 3px;

  border-radius: 3px;

  line-height: 1;

}

body#coupon .print a:hover {

  background: #e8e8e8;

}

body#reservation .message {

  margin: 0 0 40px;

  padding: 1em;

  background: #ffecec;

  -ms-border-radius: 2px;

  border-radius: 2px;

  font-size: 16px;

  font-size: 1.6rem;

  color: #5e0808;

}

body#reservation form {

  position: relative;

  width: 65%;

  margin: 0 auto;

}

body#reservation form .reservation_area {

  margin: 40px 0 0;

}

body#reservation form .reservation_area:first-child {

  margin: 0;

}

body#reservation form .reservation_area > label {

  font-size: 18px;

  font-size: 1.8rem;

}

body#reservation form .reservation_area .radio {

  display: block;

}

body#reservation form .reservation_area .reservation_course_body img {

  display: block;

  max-width: 100%;

}

body#reservation form input[type=text],

body#reservation form input[type=tel],

body#reservation form input[type=email],

body#reservation form textarea {

  width: 100%;

  background: #ffffff;

  border: 1px solid #e4e2e1;

  -ms-border-radius: 2px;

  border-radius: 2px;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}

body#reservation form input[type=text],

body#reservation form input[type=tel],

body#reservation form input[type=email] {

  padding: 8px;

  font-size: 20px;

  font-size: 2rem;

}

body#reservation form input[type=text] {

  width: 100%;

}

body#reservation form input[type=text].contact_small {

  width: 60% !important;

}

body#reservation form textarea {

  width: 100%;

  height: 180px;

  padding: 5px;

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1.6;

}

body#reservation form input[type=text]:focus,

body#reservation form input[type=tel]:focus,

body#reservation form input[type=email]:focus,

body#reservation form textarea:focus {

  background: #ffffff;

  border: 1px solid #ffbfbf;

  outline: none;

}

body#reservation form label {

  font-size: 20px;

  font-size: 2rem;

}

body#reservation form label .requier {

  color: #993737;

}

body#reservation form .checkbox,

body#reservation form .radio {

  display: block;

}

body#reservation form .checkbox label,

body#reservation form .radio label {

  margin-right: 10px;

  font-size: 18px;

  font-size: 1.8rem;

}

body#reservation form select {

  padding: 7px;

  background: #ffffff;

  border: 1px solid #eeeeee;

  -ms-border-radius: 3px;

  border-radius: 3px;

  font-size: 18px;

  font-size: 1.8rem;

}

body#reservation form select:focus {

  outline: none;

}

body#reservation form input[type=submit]:focus {

  outline: none;

}

body#reservation form .wrap_select {

  position: relative;

  display: inline;

}

body#reservation form .select_arrow {

  position: absolute;

  right: 10px;

  bottom: 12px;

  line-height: 0;

  font-size: 12px;

  font-size: 1.2rem;

  color: #3a3a3a;

}

body#reservation form .button {

  position: relative;

  display: block;

  width: 100%;

  padding: 18px 10px;

  background: rgba(232, 232, 232, 0.5);

  border: none;

  line-height: 1;

  text-align: center;

  text-decoration: none;

  font-size: 20px;

  font-size: 2rem;

  color: #3a3a3a;

  -ms-border-radius: 4px;

  border-radius: 4px;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}

body#reservation form .button:hover,

body#reservation form .button:active {

  cursor: pointer;

  background: #ffbfbf;

  color: #5e0808;

}

body#reservation form input[type=text],

body#reservation form input[type=tel],

body#reservation form input[type=email],

body#reservation form select,

body#reservation form textarea {

  background: #ffffff;

  border-color: #dcdbdb;

}

body#reservation form input[type=submit] {

  margin: 2em 0 0;

  background: #e6e6e6;

}

@media only screen and (max-width: 800px) {

  body#reservation form {

    width: 80%;

  }

}

@media only screen and (max-width: 600px) {

  body#reservation form {

    width: 100%;

  }

}

body#reservation .list {

  zoom: 1;

  overflow: hidden;

}

body#reservation .list:after {

  content: '';

  display: block;

  clear: both;

}

body#reservation .list .info {

  margin-top: 0;

}

body#reservation .list .info .note {

  margin: 0 0 1em;

  text-align: center;

}

body#reservation .list .info .summary {

  margin: 0 0 1em;

  padding: 1em;

  background: #e8e8e8;

  -ms-border-radius: 2px;

  border-radius: 2px;

  text-align: center;

  font-size: 26px;

  font-size: 2.6rem;

}

body#reservation .articles {

  margin-top: -30px;

}

body#reservation .articles .article {

  float: left;

  width: 31%;

  margin: 30px 0 0 20px;

  padding: 0;

  background: #e8e8e8;

  -ms-border-radius: 2px;

  border-radius: 2px;

}

@media screen and (max-width: 600px) {

  body#reservation .articles .article {

    margin-left: 0;

  }

}

body#reservation .articles .article .summary {

  padding: 10px;

}

body#reservation .articles .article h4 {

  margin: 10px 0;

  font-weight: normal;

  font-size: 22px;

  font-size: 2.2rem;

  line-height: 1.2;

}

body#reservation .articles .article .image {

  display: none;

  height: 200px;

  overflow: hidden;

  background-size: cover;

  background-position: 50%;

  -ms-border-radius: 2px 2px 0 0;

  border-radius: 2px 2px 0 0;

}

body#reservation .articles .article .image img {

  display: block;

  max-width: 100%;

}

body#reservation .articles .article .text {

  margin: 12px 0 0;

}

body#reservation .articles .article:nth-child(odd) {

  margin-left: 0;

}

body#reservation .articles .article .article_title {

  margin: .2em 0 0;

  font-size: 26px;

  font-size: 2.6rem;

  line-height: 1.2;

}

body#reservation .articles .article .text {

  margin: .5em 0 0;

}

body#calendar .table_calendar th.sun {

  color: #ffbfbf;

}

body#calendar .table_calendar td.sun p.day {

  background: #ffbfbf;

}

#cboxOverlay {

  position: fixed;

  top: 0;

  left: 0;

  z-index: 9999;

  overflow: visible;

  width: 100%;

  height: 100%;

  background: #000;

}

#colorbox {

  position: absolute;

  top: 0;

  left: 0;

  z-index: 9999;

  overflow: visible;

  box-sizing: content-box;

  -moz-box-sizing: content-box;

  -webkit-box-sizing: content-box;

  outline: 0;

}

#cboxWrapper {

  position: absolute;

  top: 0;

  left: 0;

  z-index: 9999;

  overflow: visible;

}

#cboxMiddleLeft,

#cboxBottomLeft {

  clear: left;

}

#cboxContent {

  box-sizing: content-box;

  -moz-box-sizing: content-box;

  -webkit-box-sizing: content-box;

  position: relative;

  overflow: visible;

  margin-top: 0;

  background: transparent;

}

#cboxLoadedContent {

  box-sizing: border-box;

  -moz-box-sizing: border-box;

  -webkit-box-sizing: border-box;

  overflow: auto;

  -webkit-overflow-scrolling: touch;

  margin: auto;

  padding: 0;

  background: transparent;

}

#cboxTitle {

  margin: 0;

  position: absolute;

  top: -22px;

  left: 0;

  color: #333;

}

#cboxCurrent {

  position: absolute;

  top: -28px;

  right: auto;

  left: 50%;

  transform: translateX(-50%);

  text-indent: 0;

  font-size: 16px;

  line-height: 1;

  font-family: 'Rounded Mplus 1c';

  color: #fff;

}

#cboxPrevious,

#cboxNext,

#cboxClose {

  position: absolute;

  overflow: visible;

  width: 36px;

  height: 36px;

  margin: 0;

  padding: 0;

  background: none;

  border: 0;

  border-radius: 2px;

  text-indent: 0;

  transition: all 0.2s;

  cursor: pointer;

  outline: 0;

}

#cboxPrevious {

  top: calc(50% - 18px);

  right: auto;

  left: -40px;

  text-indent: -0.07em;

  font-weight: bold;

  font-size: 30px;

  line-height: 1;

}

#cboxNext {

  top: calc(50% - 18px);

  right: -40px;

  text-indent: 0.07em;

  font-weight: bold;

  font-size: 30px;

  line-height: 1;

}

#cboxClose {

  top: -40px;

  right: -40px;

}

@media only screen and (min-width: 769px) {

  #cboxClose {

    right: -36px;

  }

  #cboxPrevious:hover,

  #cboxNext:hover,

  #cboxClose:hover {

    background: rgba(255, 255, 255, 0.5);

  }

}

#cboxPrevious .fa,

#cboxNext .fa {

  color: #fff;

}

#cboxClose .fa {

  font-size: 20px;

  color: #fff;

}

#cboxSlideshow {

  position: absolute;

  top: -20px;

  overflow: visible;

  width: 20px;

  height: 20px;

  margin: 0;

  padding: 0;

  background: none;

  border: 0;

  text-indent: 0;

  outline: 0;

}

#cboxLoadingOverlay {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: transparent;

}

#cboxLoadingGraphic {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: none;

}

.cboxPhoto {

  float: left;

  margin: auto;

  border: 0;

  display: block;

  max-width: none;

}

@media only screen and (max-width: 800px) {

  #cboxLoadedContent table {

    width: 100%;

    height: auto;

  }

}

@media only screen and (max-width: 800px) {

  #cboxLoadedContent [class^="wysiwyg_template_profile"],

  #cboxLoadedContent [class^="wysiwyg_template_profile"] td,

  #cboxLoadedContent [class^="wysiwyg_template_profile"] img {

    display: block;

    max-width: 100%;

    height: auto;

    padding-left: 0 !important;

    padding-right: 0 !important;

  }

}

.photo-modal__image img {

  display: block;

  max-width: 100%;

  max-height: 76vh;

  margin: auto;

}

.photo-modal-body {

  box-sizing: border-box;

  margin: 0 auto;

  padding: 16px;

  background: #fff;

  color: #000;

}

.photo-modal--photo .photo-modal-body {

  display: none;

}

.photo-modal-body__item:empty {

  display: none;

}

.photo-modal-body__item + .photo-modal-body__item {

  margin: 1em 0 0;

}

.photo-modal-body__item--title {

  font-weight: bold;

  font-size: 15px;

}

.web-font {

  font-family: 'Rounded Mplus 1c';

}

.shop_sitename {

  font-size: 100%;

}

