/* contents---------------
	 1.base style
	 2.module
	 3.contents
------------ */
/*----- base style -----*/
@media all and (-ms-high-contrast: none) {
  main, section {
    display: block;
  }
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.sp_disp {
  display: none !important;
}

@media screen and (max-width: 750px) {
  .sp_disp {
    display: block !important;
  }
  br.sp_disp, img.sp_disp, span.sp_disp, a.sp_disp {
    display: inline !important;
  }
  .pc_disp {
    display: none;
  }
  sup {
    font-size: 9px;
  }
  h1, h2, h3, h4, div, p, li, span, i, b {
    max-height: 100%;
  }
}

/*----- module -----*/
/* ----------------------------
 section
------------------------------*/
.section {
  position: relative;
}

.section > .inner {
  margin-left: auto;
  margin-right: auto;
  padding: 0 25px;
  max-width: 1200px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.section.fluid > .inner {
  padding: 0;
  width: 100%;
  max-width: 100%;
}

.section .basic_btn {
  text-decoration: none;
  padding: 0 10px;
  -webkit-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
  overflow: hidden;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.section .basic_btn img {
  display: inline-block;
  position: relative;
  vertical-align: top;
}

.section .basic_btn::before {
  display: none;
}

.section .basic_btn:hover img {
  -webkit-transform: translate(1px, 1px);
  -ms-transform: translate(1px, 1px);
  transform: translate(1px, 1px);
}

.section .basic_btn.no_shadow {
  overflow: visible;
}

.section .note li {
  text-indent: -1em;
  padding-left: 1em;
}

.section .note li + li {
  margin-top: .1em;
}

@media screen and (max-width: 1200px) {
  .section > .inner {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
  .section header {
    text-align: center;
  }
  .section header .title {
    margin: 0 auto;
  }
}

@media screen and (max-width: 750px) {
  .section .basic_btn {
    padding: 0;
  }
  .section .basic_btn:hover img {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .section .basic_btn.no_shadow {
    overflow: visible;
  }
}

/*----- contents -----*/
#mainContents {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  background-color: #fffded;
}

/* ------------------------------------------------
 kuma_message
------------------------------------------------ */
#kuma_message {
  background-color: #e61431;
  padding-top: 30px;
  padding-bottom: 27px;
}

#kuma_message .message {
  text-align: center;
}

@media screen and (max-width: 1200px) {
  #kuma_message {
    padding-top: 2.5%;
    padding-bottom: 2.25%;
  }
  #kuma_message .message {
    margin: 0 auto;
    width: 60.08333%;
  }
}

@media screen and (max-width: 750px) {
  #kuma_message {
    padding-top: 0;
    padding-bottom: 0;
  }
  #kuma_message .message {
    width: 100%;
  }
}

/* ------------------------------------------------
 KV
------------------------------------------------ */
#kuma_kv {
  padding-top: 38px;
  padding-bottom: 35px;
}

@media screen and (max-width: 1200px) {
  #kuma_kv {
    padding-top: 3.16667%;
    padding-bottom: 2.91667%;
  }
}

@media screen and (max-width: 750px) {
  #kuma_kv {
    padding-top: 0;
    padding-bottom: 0;
  }
}

/* ------------------------------------------------
 information
------------------------------------------------ */
#kuma_information {
  background: #f9ef9e url(../img/info_bg.jpg) 0 0 repeat-x;
  padding-top: 100px;
  padding-bottom: 66px;
}

#kuma_information .body {
  margin: 0 auto;
  width: 950px;
}

#kuma_information .body .txt {
  position: relative;
}

#kuma_information .body .txt .url {
  margin-left: 556px;
  margin-bottom: 4px;
  width: 310px;
  position: absolute;
  left: 0;
  bottom: 0;
  line-height: 1;
}

#kuma_information .body .txt .url::after {
  content: "";
  background-color: #fff;
  width: 100%;
  height: 1.5px;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: .8;
}

#kuma_information .body .txt .url:hover::after {
  opacity: 0;
}

#kuma_information .body .map {
  margin-top: 30px;
  padding-top: 26.31579%;
  width: 100%;
  height: 0;
  position: relative;
}

#kuma_information .body .map > iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

@media screen and (max-width: 1200px) {
  #kuma_information {
    background-size: auto 100%;
    padding-top: 8.33333%;
    padding-bottom: 5.5%;
  }
  #kuma_information .body {
    width: 79.16667%;
  }
  #kuma_information .body .txt .url {
    margin-left: 58.52632%;
    margin-bottom: 0.42105%;
    width: 32.63158%;
  }
  #kuma_information .body .map {
    margin-top: 3.15789%;
  }
}

@media screen and (max-width: 750px) {
  #kuma_information {
    background-image: url(../img/sp/info_bg.jpg);
    background-size: 100% auto;
    padding-top: 12%;
    padding-bottom: 7.2%;
  }
  #kuma_information .body {
    margin: 0 auto;
    width: 89.33333%;
    display: block;
  }
  #kuma_information .body .txt {
    width: 100%;
  }
  #kuma_information .body .txt .url {
    margin-left: 20.29851%;
    margin-bottom: 0;
    width: 65.97015%;
  }
  #kuma_information .body .txt .url:hover::after {
    opacity: .8;
  }
  #kuma_information .body .map {
    margin-top: 6.86567%;
    margin-left: 0;
    padding-top: 55.55556%;
    width: 100%;
  }
}

/* ------------------------------------------------
 present
------------------------------------------------ */
#kuma_presents {
  background-color: #f9ef9f;
  padding-top: 60px;
  padding-bottom: 60px;
}

#kuma_presents .img {
  text-align: center;
}

#kuma_presents .note {
  color: #92601d;
  font-size: 14px;
  text-align: center;
  margin-top: 1em;
}

@media screen and (max-width: 1200px) {
  #kuma_presents {
    padding-top: 5%;
    padding-bottom: 5%;
  }
  #kuma_presents .img {
    margin: 0 auto;
    width: 86.66667%;
  }
  #kuma_presents .note {
    font-size: 1.16667vw;
  }
}

@media screen and (max-width: 750px) {
  #kuma_presents {
    padding-top: 6.66667%;
    padding-bottom: 7.2%;
  }
  #kuma_presents .img {
    width: 89.73333%;
  }
  #kuma_presents .note {
    font-size: 2.66667vw;
    margin-top: 1em;
  }
}

/* ------------------------------------------------
 cafe menu
------------------------------------------------ */
#kuma_menu {
  background: url(../img/menu_bg.jpg) 50% 0 repeat;
  background-size: 650px auto;
  padding-top: 55px;
  padding-bottom: 65px;
}

#kuma_menu .title {
  text-align: center;
}

#kuma_menu .body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#kuma_menu .body #opensand {
  margin-top: 27px;
  margin-left: 12px;
  margin-right: -21px;
  width: 1158px;
}

#kuma_menu .body #salad {
  margin-top: -3px;
  margin-left: -25px;
  width: 1145px;
}

#kuma_menu .body #spaghetti {
  margin-top: 54px;
  margin-left: 30px;
  margin-right: -46px;
  width: 1166px;
}

#kuma_menu .body #dessert {
  margin-top: 74px;
  margin-left: 5px;
  width: 597px;
}

#kuma_menu .body #latte {
  margin-top: 55px;
  width: 490px;
}

#kuma_menu .body .note {
  margin-top: 32px;
  margin-left: 45px;
}

#kuma_menu .note {
  color: #92601d;
  font-size: 14px;
}

@media screen and (max-width: 1200px) {
  #kuma_menu {
    background-size: 50% auto;
    padding-top: 4.58333%;
    padding-bottom: 5.41667%;
  }
  #kuma_menu > .inner {
    overflow: hidden;
  }
  #kuma_menu .title {
    margin: 0 auto;
    width: 59.25%;
  }
  #kuma_menu .body {
    margin: 0 auto;
    width: 95.83333%;
  }
  #kuma_menu .body #opensand {
    margin-top: 2.34783%;
    margin-left: 1.04348%;
    margin-right: -1.82609%;
    width: 100.69565%;
  }
  #kuma_menu .body #salad {
    margin-top: -0.26087%;
    margin-left: -2.17391%;
    width: 99.56522%;
  }
  #kuma_menu .body #spaghetti {
    margin-top: 4.69565%;
    margin-left: 2.6087%;
    margin-right: -4%;
    width: 101.3913%;
  }
  #kuma_menu .body #dessert {
    margin-top: 6.43478%;
    margin-left: 0.43478%;
    width: 51.91304%;
  }
  #kuma_menu .body #latte {
    margin-top: 4.78261%;
    width: 42.6087%;
  }
  #kuma_menu .body .note {
    margin-top: 2.66667%;
    margin-left: 3.75%;
  }
  #kuma_menu .note {
    font-size: 1.16667vw;
  }
  #kuma_menu aside .presents {
    margin: 5.41667% auto 0;
    width: 94.34783%;
  }
  #kuma_menu aside .note {
    margin-top: 1.66667%;
  }
}

@media screen and (max-width: 750px) {
  #kuma_menu {
    background-size: 100% auto;
    padding-top: 7.33333%;
    padding-bottom: 8.66667%;
  }
  #kuma_menu .title {
    width: 88.93333%;
  }
  #kuma_menu .body {
    width: 100%;
    display: block;
  }
  #kuma_menu .body .original_menu {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }
  #kuma_menu .body #opensand {
    margin-top: 4.66667% !important;
  }
  #kuma_menu .body #salad {
    margin-top: 4% !important;
  }
  #kuma_menu .body #spaghetti {
    margin-top: 4.4% !important;
  }
  #kuma_menu .body #dessert {
    margin-top: 2.4% !important;
    margin-left: auto !important;
    width: 94.93333% !important;
  }
  #kuma_menu .body #latte {
    width: 88.8% !important;
  }
  #kuma_menu .body .note {
    margin: 6.66667% 4.66667% 0;
  }
  #kuma_menu .note {
    font-size: 2.66667vw;
  }
  #kuma_menu aside .presents {
    margin-top: 6.93333%;
    width: 91.73333%;
  }
  #kuma_menu aside .note {
    margin-top: 2.66667%;
  }
}

/* ------------------------------------------------
 goods
------------------------------------------------ */
#kuma_goods {
  padding-top: 65px;
}

#kuma_goods .title {
  text-align: center;
}

#kuma_goods .list {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#kuma_goods .list li {
  margin-top: 35px;
}

#kuma_goods .list li + li {
  margin-left: 30px;
}

#kuma_goods .list li:nth-child(4n + 1) {
  margin-left: 0;
}

#kuma_goods .note {
  color: #92601d;
  font-size: 14px;
  margin-top: 30px;
}

@media screen and (max-width: 1200px) {
  #kuma_goods .title {
    margin: 0 auto;
    width: 60.41667%;
  }
  #kuma_goods .list {
    margin: 0.83333% auto 0;
    width: 95.83333%;
  }
  #kuma_goods .list li {
    margin-top: 3.04348%;
    width: 23.04348%;
  }
  #kuma_goods .list li + li {
    margin-left: 2.6087%;
  }
  #kuma_goods .list li.stamp {
    width: auto;
  }
  #kuma_goods .note {
    font-size: 1.16667vw;
    margin: 2.5% auto 0;
    width: 95.83333%;
  }
}

@media screen and (max-width: 750px) {
  #kuma_goods {
    padding-top: 8%;
  }
  #kuma_goods .title {
    width: 89.33333%;
  }
  #kuma_goods .list {
    margin: 1.33333% auto 0;
    width: 89.86667%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #kuma_goods .list li {
    margin-top: 5.93472%;
    margin-left: 0 !important;
    width: 47.18101%;
  }
  #kuma_goods .list li.stamp {
    width: 100%;
  }
  #kuma_goods .note {
    font-size: 2.66667vw;
    margin: 5.33333% auto 0;
    width: 89.86667%;
  }
}

/* ------------------------------------------------
 office
------------------------------------------------ */
#kuma_office {
  padding-top: 80px;
  padding-bottom: 76px;
}

#kuma_office .body {
  border-radius: 15px;
  background-color: #fffad0;
  position: relative;
  padding-top: 55px;
  padding-bottom: 48px;
}

#kuma_office .body .title {
  margin-top: -30px;
  width: 250px;
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

#kuma_office .body .contacts {
  font-size: 28px;
  line-height: 1;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#kuma_office .body .contacts .email a {
  color: #0092c8;
}

#kuma_office .body .contacts .tel.num {
  color: #552b01;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#kuma_office .body .contacts .tel.num::before {
  content: "";
  background-color: rgba(178, 167, 124, 0.5);
  margin: 0 30px;
  padding-top: 50px;
  width: 2px;
  height: 0;
  display: block;
}

#kuma_office .body .contacts .tel.num a {
  color: #552b01;
}

#kuma_office .body .contacts .tel.txt {
  color: #552b01;
  font-size: 64.28571%;
  margin-left: 22px;
}

#kuma_office .body .contacts .tel.txt .note {
  font-size: 66.66667%;
  margin-top: .5em;
}

@media screen and (max-width: 1200px) {
  #kuma_office {
    padding-top: 6.66667%;
    padding-bottom: 6.33333%;
  }
  #kuma_office .body {
    margin: 0 auto;
    padding-top: 4.58333%;
    padding-bottom: 4%;
    width: 95.83333%;
  }
  #kuma_office .body .title {
    margin-top: -2.6087%;
    width: 21.73913%;
  }
  #kuma_office .body .contacts {
    font-size: 2.33333vw;
  }
  #kuma_office .body .contacts .tel.num::before {
    margin: 0 1.0714em;
    padding-top: 1.7857em;
  }
  #kuma_office .body .contacts .tel.txt {
    font-size: 64.28571%;
    margin-left: 22px;
  }
  #kuma_office .body .contacts .tel.txt .note {
    font-size: 66.66667%;
  }
}

@media screen and (max-width: 750px) {
  #kuma_office {
    padding-top: 12.66667%;
    padding-bottom: 9.33333%;
  }
  #kuma_office .body {
    border-radius: 7px;
    padding-top: 10.13333%;
    padding-bottom: 4.66667%;
    width: 89.33333%;
  }
  #kuma_office .body .title {
    margin-top: -5.97015%;
    width: 44.77612%;
  }
  #kuma_office .body .contacts {
    font-size: 5.06667vw;
    text-align: center;
    display: block;
  }
  #kuma_office .body .contacts .email a {
    text-decoration: none;
  }
  #kuma_office .body .contacts .tel.num {
    display: block;
  }
  #kuma_office .body .contacts .tel.num::before {
    margin: 5.22388% 8.95522%;
    padding-top: 1px;
    width: 83.58209%;
  }
  #kuma_office .body .contacts .tel.txt {
    font-size: 63.15789%;
    line-height: 1.4;
    margin-top: 2.98507%;
    margin-left: 0;
  }
  #kuma_office .body .contacts .tel.txt .note {
    font-size: 83.33333%;
  }
}

/* ------------------------------------------------
 sns
------------------------------------------------ */
#kuma_sns {
  text-align: center;
  background-color: #fff;
  padding-top: 32px;
  padding-bottom: 52px;
}

#kuma_sns .sns {
  display: inline-block;
  position: relative;
}

#kuma_sns .sns .link {
  text-align: left;
  letter-spacing: -.4em;
  margin-top: 4.86486%;
  width: 35.13514%;
  position: absolute;
  left: 64.86486%;
  top: 0;
}

#kuma_sns .sns .link a {
  letter-spacing: normal;
  padding: 0;
  width: 19.23077%;
  display: inline-block;
}

#kuma_sns .sns .link a + a {
  margin-left: 12.30769%;
}

@media screen and (max-width: 750px) {
  #kuma_sns {
    padding-top: 3.46667%;
    padding-bottom: 13.33333%;
  }
  #kuma_sns .sns {
    margin: 0 6%;
  }
  #kuma_sns .sns .link {
    text-align: center;
    margin-top: 24.24242%;
    width: 100%;
    left: 0;
    top: 0;
  }
  #kuma_sns .sns .link a {
    letter-spacing: normal;
    padding: 0;
    width: 15.15152%;
    display: inline-block;
  }
  #kuma_sns .sns .link a + a {
    margin-left: 9.69697%;
  }
}
