/* Common */
/*@import url(//fonts.googleapis.com/earlyaccess/notosansjp.css);*/

/* Hides injected WP p from lazy load fallback noscript */
img + p,
img + br,
noscript + p,
noscript + br {
  display: none !important;
}

#main-row-flow-detailpc #adv-content.wide_adv {
  padding: 0;
}

#main-row-flow-detail .container, 
#main-row-flow-detailpc .container {
  overflow: unset;
}

.kmc-wrap {
  margin: auto;
  min-width: 310px;
}

.kmc-wrap section {
  margin: 0;
}

.kmc-wrap img {
  height: auto;
  max-width: 100%;
}

.kmc-wrap img, 
.kmc-wrap iframe {
  border: 0;
  padding: 0;
}

.kmc-wrap h1,
.kmc-wrap h2,
.kmc-wrap h3,
.kmc-wrap h4 {
  color: #109cc9;
  font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro",Osaka, "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: normal;
  text-align: center;
}

.kmc-wrap h1 {
  font-size: 2rem;
}

.kmc-wrap h2 {
  font-size: 1.5rem;
}

.kmc-wrap h3 {
  font-size: 1rem;
}

.kmc-wrap h5 {
  margin: 0;
}

.kmc-wrap hgroup {
  margin: 3rem auto !important;
  text-align: center;
}

.kmc-wrap p {
  font-family: Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.kmc-wrap a {
  text-decoration: none;
}

.kmc-header {
  margin-top: 3rem;
  text-align: center;
}

.kmc-header .kmc-logo {
  padding: 2rem 0; 
}

.kmc-header-visual {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.kmc-header-visual > img {
  max-height: 400px;
  -webkit-box-flex: 1;
      -ms-flex: 1 33%;
          flex: 1 33%;
  width: 100%;
}

.kmc-wrap .kmc-intro {
  background-color: #109cc9;
  color: #fff;
  margin-bottom: 4rem;
}

.kmc-intro h2 {
  color: #fff;
  font-size: 1.5rem;
  margin-bottom: 2rem;
  padding-top: 4rem;
}

.kmc-intro p {
  margin: auto;
  width: 80%;
}

.kmc-intro figure {
  margin-top: 3rem;
  text-align: center;
}

.kmc-intro .kmc-intro-thumbs {
  bottom: -3rem;
  position: relative !important;
  text-align: center;
}

.kmc-location > p {
  padding-left: 5%;
  padding-right: 5%;
  width: 90% !important;
}

.kmc-location .kmc-location-map {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  height: 350px !important;
  margin: 0 auto 2rem !important;
  width: 100%;
}

.kmc-location .kmc-location-map iframe {
  margin: 0 !important;
  width: 100% !important;
}

.kmc-subnav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
}

.kmc-wrap .kmc-subnav-item {
  background-color: rgba(16, 156, 201,1) !important;
  -webkit-box-flex: 1;
      -ms-flex: 1 50%;
          flex: 1 50%;
}

.kmc-wrap .kmc-subnav-item:hover {
  background-color: rgba(16, 156, 201,.8) !important;
}

.kmc-wrap .kmc-subnav-item img + img {
  padding-top: 1rem;
}

.kmc-wrap .kmc-subnav-item a > div,
.kmc-wrap .kmc-subnav-item a {
  color: #fff !important;
  text-decoration: none;
}

.kmc-wrap .kmc-subnav-item a > h5 {
  padding-bottom: 1rem;
}

.kmc-wrap .kmc-subnav-item p {
  display: none;
}

.kmc-stickynav {
  background-color: rgba(16, 156, 201,.8);
  bottom: 0;
  -webkit-box-shadow: rgba(16, 156, 201,.8) 0 -2px 2px;
          box-shadow: rgba(16, 156, 201,.8) 0 -2px 2px;
  left: 0;
  min-width: 320px;
  position: fixed;
  width: 100%;
  z-index: 400;
}

.kmc-stickynav > div {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto;
  max-width: 320px;
  text-align: left;
}

.kmc-stickynav.hide {
  display: none;
}

nav.kmc-stickynav.docked {
  background-color: rgba(16, 156, 201,1);
  -webkit-box-shadow: none;
          box-shadow: none;
  bottom: unset;
  margin-bottom: .25rem;
  position: relative;
}

.kmc-stickynav > div .kmc-stickynav-item {
  -webkit-box-flex: 1;
      -ms-flex: 1 50%;
          flex: 1 50%;
  margin: .25rem 0;
  white-space: nowrap;
}

.kmc-stickynav.docked > div .kmc-stickynav-item {
  margin: .5rem 0 !important;
}

.kmc-stickynav .kmc-stickynav-item a {
  color: #fff;
  text-decoration: none;
}

.kmc-stickynav-item img {
  display: inline-block !important;
  margin: 0 .5rem !important;
}

.kmc-shoplist > h3 {
  background-color: #1782a3;
  color: #fff;
  cursor: pointer;
  margin: .5rem 0;
  padding: .5rem 0;
  position: relative !important;
  text-align: left;
}

.kmc-shoplist > h3 > span {
  padding-left: 1rem;
}

.kmc-shoplist > h3.ui-state-active {
  margin-bottom: 0;
}

.kmc-shoplist > h3:after {
  content: '\25B6';
  position: absolute !important;
  right: 1rem;
}

.kmc-shoplist > h3.ui-state-active:after {
  content: '\25BC';
}

.kmc-shoplist > ul > li {
  background-color: #ccc;
  border: 1px solid #999;
  font-size: .75rem;
  font-weight: 600;
  margin: .1rem 0;
  padding: .5rem;
  vertical-align: top;
}

.kmc-shoplist > ul > li > div:nth-of-type(1) {
  display: inline-block;
  width: 80% !important;
}

.kmc-shoplist > ul > li > div + div {
  display: inline-block;
  text-align: right;
  width: 15% !important;
}

.kmc-category > hgroup h2 {
  font-size: 2.5rem;
}

.kmc-category > hgroup h3 {
  font-size: 1.5rem;
  margin-bottom: 2rem;
}

.kmc-category > hgroup hr {
  margin-left: 3rem;
  margin-right: 3rem;
}

.kmc-card {
  padding: 1rem;
}

.kmc-card-header {
  margin-bottom: 1rem;
  text-align: center;
}

.kmc-card-header > h2,
.kmc-card-header > p {
  display: inline-block;
}

.kmc-card-header a > img {
  vertical-align: bottom;
}

.kmc-card-body {
  margin-bottom: 3rem;
}

.kmc-wrap .kmc-card-img-wrapper {
  margin-bottom: 1rem !important;
  position: relative !important;
  text-align: center;
}

.kmc-card .kmc-card-img {
  position: relative !important;
}

.kmc-card-img-wrapper p,
.kmc-card-img-wrapper br {
  display: none;
}

.kmc-card-img img {
  width: 100%;
}

.kmc-card-img img:not(.cycle-sentinel) {
  position: absolute !important;
}

.kmc-wrap .caption-text {
  background-color: rgba(99,99,99,.8) !important;
  color: #fff !important;
  font-size: .75rem;
  margin: 0;
  padding: .5rem 0 !important;
  position: absolute !important;
  text-align: center;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 300;
}

.kmc-slide-control .kmc-slide-prev,
.kmc-slide-control .kmc-slide-next {
  background-color: rgba(99,99,99,.5);
  border-radius: 50%;
  bottom: 50%;
  padding: .5rem;
  position: absolute !important;
  z-index: 100;
}

.kmc-slide-control .kmc-slide-prev {
  left: -1rem;
}

.kmc-slide-control .kmc-slide-next {
  right: -1rem;
}

.kmc-wrap .kmc-card-text,
.kmc-wrap .kmc-card-side {
  display: inline-block;
  margin-bottom: 1rem !important;
  vertical-align: top;
}

.kmc-footer-info h2 {
  color: #fff;
  text-align: left;
}

.kmc-footer-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.kmc-footer-info p,
.kmc-footer-info a {
  color: #fff !important;
}

.kmc-footer-info address {
  background-color: #109cc9;
  font-style: normal;
  padding: 2.5% !important;
  width: 95% !important;
}

.kmc-footer-info div {
  background-color: #109cc9 !important;
  padding: 2.5% !important;
  width: 95% !important;
}

.kmc-footer-info div > iframe,
.kmc-footer-info div > img {
  height: 100% !important;
  width: 100% !important;
}

div.vbox-overlay {
  min-width: 300px;
}

div.vbox-close {
  border-radius: 50%;
  height: 3rem;
  padding: .75rem 1rem;
  position: absolute;
  right: 2rem;
  top: 1rem;
  width: 3rem;
}

.kmc-shopmap {
  min-width: 320px;
  position: relative;
}

.kmc-shopmap > .kmc-shopmap-base {
  width: 100%;
}

.kmc-shopmap > .kmc-shopmap-marker {
  position: absolute;
  width: 2.5%;
}

/* Media Target >Small+ */
@media screen and (min-width: 567px)  {

  .kmc-stickynav > div {
    margin: 0 auto;
    max-width: 800px;
  }

 .kmc-stickynav:not(.docked) > div .kmc-stickynav-item {
    -webkit-box-flex: 1;
        -ms-flex: 1 25%;
            flex: 1 25%;
  }

}

/* Media Target >Medium+ */
@media screen and (min-width: 759px)  {

  .kmc-wrap vbox-content {
    float: none;
    width: 60%;
    margin: auto;
  }

  .kmc-wrap {
    width: 50.25rem;
  }

  .kmc-wrap h1 {
    font-size: 2.5rem;
  }

  .kmc-wrap h2 {
    font-size: 1.7rem;
  }

  .kmc-category > hgroup h2 {
    font-size: 3.5rem;
  }

  .kmc-box-40 {
    display: inline;
    padding: 3rem 2.5%;
    width: 35%;
  }

  .kmc-box-40 > img {
    margin-bottom: 1.5rem;
    padding: 3rem 5%;
  }

  .kmc-box-60 {
    display: inline-block;
    padding: 3rem 0 3rem 2.5%;
    width: 55% !important;
  }

  .kmc-location > p {
    padding-left: 10%;
    padding-right: 10%;
    width: 80% !important;
  }

  .kmc-wrap .kmc-subnav-item,
  .kmc-wrap .kmc-stickynav.docked > div .kmc-stickynav-item {
    -webkit-box-flex: 1;
        -ms-flex: 1 25%;
            flex: 1 25%;
  }

  .kmc-slide-control .kmc-slide-prev {
    left: -1.25rem;
  }

  .kmc-slide-control .kmc-slide-next {
    right: -1.25rem;
  }

  .kmc-wrap .kmc-card {
    padding: 0;
  }

 .kmc-wrap .kmc-card-text {
    border-right: 1px dotted #999;
    min-height: 8rem;
    padding-right: 1.25rem;
    width: 69%;
  }

  .kmc-wrap .kmc-card-side {
    padding-left: 1.25rem;
  }

  div.vbox-close {
    -webkit-transition: top .5s, right .5s;
    -o-transition: top .5s, right .5s;
    transition: top .5s, right .5s;
  }

  .kmc-footer-info address {
    padding: 5% !important;
    width: 40% !important;
  }

  .kmc-footer-info div {
    padding: 0 !important;
    width: 50% !important;
  }

  .kmc-footer-info div > iframe,
  .kmc-footer-info div > img {
    height: 100% !important;
    width: 100% !important;
  }

}