@charset "utf-8";

/* ================================================================================
module
================================================================================= */

/* ================================================================================
font
================================================================================= */

/* Noto Serif JP --------------------------- */
/* midium 500 */
.notoserif { font-family:'Noto Serif JP', sans-serif; }


/* ================================================================================
module parts
================================================================================= */
.md_dsr {
  position:relative;
  width:100%;
}
.md_dsr:before {
  content:"";
  display:block;
  padding-top:56.25%;
}
.md_dsr iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.pcbr {
  display:block;
}
.spbr {
  display:none;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
.md_dsr {
  margin-bottom:25px;
}
.pcbr {
  display:none;
}
.spbr {
  display:block;
}
}


/* ================================================================================
md_mv
================================================================================= */
#md_mv {
  display:-webkit-flex;
  display:flex;
  -webkit-align-items:center;
  align-items:center;
  width:100%;
  height:260px;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center center;
}
#md_mv_inner {
  width:1100px;
  margin:0 auto;
  padding:0 35px;
}
#md_mv img {
  display:block;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#md_mv {
  height:160px;
  margin-bottom:30px;
}
#md_mv_inner {
  width:auto;
}
#md_mv .ttl {
  display:none;
}
}


/* ================================================================================
md_inner
================================================================================= */
.md_inner {
  position:relative;
  max-width:1100px;
  margin:0 auto;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
.md_inner {
  padding:0 15px;
}
}


/* ================================================================================
md_ttl_page
================================================================================= */
.md_ttl_page {
  text-align:center;
}
.md_ttl_page img {
  display:block;
  margin:0 auto;
}


/* ================================================================================
md_pagetop
================================================================================= */
#md_pagetop {
  display:none;
  position:fixed;
  bottom:30px;
  right:30px;
  z-index:99;
}
#md_pagetop a {
  display:inline-block;
  width:30px;
  height:30px;
  line-height:23px;
  border-radius:100%;
  border:2px solid #fff;
  text-align:center;
  color:#000;
  font-size:1.1rem;
  transition:all .3s;
  color:#fff;
  text-shadow:1px 1px 4px rgba(0,0,0,.7);
  box-shadow:1px 1px 4px 0 rgba(0,0,0,.4), 1px 1px 4px 0 rgba(0,0,0,.3) inset;
}
#md_pagetop a:hover {
  border:2px solid rgba(91,26,44);
  background:rgba(91,26,44);
}

/* IE調整 ----------------------------　*/
@media all and (-ms-high-contrast: none){
#md_pagetop a {
  line-height:26px;
}
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#md_pagetop {
  display:none;
}
}


/* ================================================================================
md_breadcrumbs
================================================================================= */
#md_breadcrumbs {
  max-width:1100px;
  margin:0 auto;
  padding:20px 35px;
  letter-spacing:-0.4em
}
#md_breadcrumbs li {
  display:inline-block;
  font-size:1.2rem;
  letter-spacing:normal;
}
#md_breadcrumbs li:not(:last-child):after {
  content:"＞";
  margin:0 .3em;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#md_breadcrumbs {
  display:none;
}
}


/* ================================================================================
md_bt
================================================================================= */
.md_bt a,
.md_bt span {
  display:inline-block;
  padding:4px 15px 5px;
  background:#fff;
  border-radius:30px;
  color:#000 !important;
  font-size:1.2rem;
  font-weight:bold;
  line-height:1;
  transition:.3s;
}
.md_bt a:hover {
  background:#999;
}
.md_bt.bt_black a,
.md_bt.bt_black span {
  background:#000;
  color:#fff !important;
}
.md_bt.bt_black a:hover {
  background:#666;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#md_breadcrumbs {
  display:none;
}
}


/* ================================================================================
md_bt_page_top
================================================================================= */
.md_bt_page_top {
  padding-top:60px;
  text-align:center;
  font-size:1.6rem;
}
.md_bt_page_top a {
  display:inline-block;
  padding:5px 40px;
  border:1px solid #000;
}
.md_bt_page_top a:hover {
  border:1px solid #666;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
.md_bt_page_top {
  padding-top:30px;
}
}


/* ================================================================================
md_bt_list
================================================================================= */
.md_bt_list {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:space-between;
  justify-content:space-between;
  -webkit-align-items:center;
  align-items:center;
  width:820px;
  margin:60px auto 0;
  text-align:center;
}
.md_bt_list a {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:space-between;
  justify-content:space-between;
  -webkit-align-items:center;
  align-items:center;
  width:390px;
  height:70px;
  padding:0 20px 0 35px;
  background:#000;
  transition:.3s;
}
.md_bt_list a:hover {
  opacity:.7;
}
.md_bt_list img {
  display:block;
}
.md_bt_list .img_shop {
  width:119px;
}
.md_bt_list .img_traditional {
  width:167px;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
.md_bt_list {
  display:block;
  width:auto;
  margin:30px 15px 0;
}
.md_bt_list li + li {
  margin-top:1px;
}
.md_bt_list a {
  width:100%;
  height:46px;
  padding:0 15px;
}
.md_bt_list a:hover {
  opacity:1;
}
.md_bt_list .img_shop {
  width:83px;
}
.md_bt_list .img_traditional {
  width:116px;
}
}

/* ================================================================================
md_slide_bg
================================================================================= */
.md_slide_bg {
  position:relative;
  padding:25px 0;
  background:url(../img/bg_paper_02.jpg) center center repeat;
  background-size:350px 350px;
  overflow:hidden;
}
.md_slide_bg.color_2 {
  background-image:url(../img/bg_paper_05.jpg);
}
.md_slide_bg:before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  padding:35px 0;
  background:url(../img/bg_pattern_01.png) center center repeat;
  background-size:28px 25px;
}
.md_slide_bg.pattern_2:before {
  background:url(../img/bg_lattice_white.png) center center repeat;
  background-size:80px 40px;
  opacity:.2;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
.md_slide_bg {
  padding:15px 0;
}
.md_slide_bg.pattern_2:before {
  background-size:70px 41px;
}
}


/* ================================================================================
md_slider
================================================================================= */
.md_slider {
  position:relative;
}
.md_slider img {
  width:100%;
}
.md_slider .slick-arrow {
  position:absolute;
  top:0;
  width:50px;
  height:100%;
  z-index:10;
  background:url(../img/slide_arrow_white.png) center center no-repeat;
  background-size:10px 20px;
  overflow:hidden;
  text-indent:100%;
  white-space:nowrap;
  cursor:pointer;
}
.md_slider .slick-arrow:hover {
  opacity:.5;
}
.md_slider .slick-prev {
  left:0;
}
.md_slider .slick-next {
  right:0;
  -webkit-transform:rotate(180deg);
  transform:rotate(180deg);
}


/* ================================================================================
md_shop_info
================================================================================= */
.md_shop_info {
  padding:60px 0 25px;
  background:#000;
  color:#fff;
}
.md_shop_info a {
  color:#fff;
}

/* PC調整 ----------------------------　*/
@media (min-width:769px) {
.md_shop_info .inner {
  width:1100px;
  margin:0 auto;
}
.md_shop_info_header {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:center;
  justify-content:center;
  -webkit-align-items:center;
  align-items:center;
}
.md_shop_info_header .ttl img {
  width:154px;
}
.md_shop_info_header .md_bt {
  margin-left:15px;
}
.md_shop_info .sec_shop_box {
  display:-webkit-flex;
  display:flex;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
  -webkit-align-items:center;
  align-items:center;
  padding:35px 20px;
}
.md_shop_info .sec_shop_box + .sec_shop_box {
  border-top:1px solid #777;
}
.md_shop_info .box_detail {
  -webkit-flex:1;
  flex:1;
}
.md_shop_info .box_detail .txt_lead {
  margin-bottom:10px;
}
.md_shop_info .box_detail .ttl_sub {
  margin-bottom:10px;
}
.md_shop_info .box_detail .txt_add {
  display:inline-block;
}
.md_shop_info .box_detail .txt_tel {
  display:inline-block;
  margin-left:1em;
}
.md_shop_info .photo {
  width:315px;
}
.md_shop_info .map {
  width:321px;
  margin-left:35px;
}
.md_shop_info .googlemap {
  width:100%;
  margin-top:35px;
}
.md_shop_info #sec_honten .txt_lead { width:261px; }
.md_shop_info #sec_honten .ttl_sub { width:297px; }
.md_shop_info #sec_honten .ttl_sub img { width:100%; }
.md_shop_info #sec_oroshi .txt_lead { width:332px; }
.md_shop_info #sec_oroshi .ttl_sub { width:341px; }
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
.md_shop_info {
  padding:35px 0 0 0;
  text-align:center;
}
.md_shop_info .inner {
  margin:0 auto;
  padding:0 15px;
}
.md_shop_info_header .ttl img {
  display:block;
  width:107px;
  margin:0 auto;
}
.md_shop_info_header .md_bt {
  margin-top:10px;
}
.md_shop_info .sec_shop_box {
  padding:30px 0;
}
.md_shop_info .sec_shop_box + .sec_shop_box {
  border-top:1px solid #777;
}
.md_shop_info .box_detail {
  margin-bottom:10px;
}
.md_shop_info .box_detail .txt_lead {
  margin:0 auto 15px;
}
.md_shop_info .box_detail .ttl_sub {
  margin:0 auto 10px;
}
.md_shop_info .box_detail .txt_add {
  display:block;
}
.md_shop_info .box_detail .txt_tel {
  display:block;
  margin-left:0;
  font-size:3rem;
}
.md_shop_info .box_detail .txt_url {
  display:none;
}
.md_shop_info .photo {
  width:auto;
  margin-bottom:25px;
}
.md_shop_info .map {
  width:auto;
}
.md_shop_info .googlemap {
  width:100%;
  margin-top:25px;
}
.md_shop_info .googlemap iframe {
  width:100%;
  height:250px;
}
.md_shop_info #sec_honten .txt_lead { width:181px; }
.md_shop_info #sec_honten .ttl_sub { width:220px; }
.md_shop_info #sec_oroshi .txt_lead { width:226px; }
.md_shop_info #sec_oroshi .ttl_sub { width:278px; }
}


/* ================================================================================
md_fade md_list_fade
================================================================================= */
.md_fadein {
  opacity:0;
  -webkit-transform:translate(0,0);
  transform:translate(0,0);
  transition:1s;
}
.md_fadeup {
  opacity:0;
  -webkit-transform:translate(0,25px);
  transform:translate(0,25px);
  transition:1s;
}
.md_list_fadeup li {
  opacity:0;
  -webkit-transform:translate(0,25px);
  transform:translate(0,25px);
  transition:1.2s;
}
.md_fadedown {
  opacity:0;
  -webkit-transform:translate(0,-25px);
  transform:translate(0,-25px);
  transition:.8s;
}
.md_fadeleft {
  opacity:0;
  -webkit-transform:translate(20px,0);
  transform:translate(20px,0);
  transition:.8s;
}
.md_faderight {
  opacity:0;
  -webkit-transform:translate(-20px,0);
  transform:translate(-20px,0);
  transition:.8s;
}
.md_fadein.active,
.md_fadeup.active,
.md_list_fadeup li.active,
.md_fadedown.active,
.md_fadeleft.active,
.md_faderight.active {
  opacity:1;
  -webkit-transform:translate(0,0);
  transform:translate(0,0);
}


/* ================================================================================
Clearfix
================================================================================= */
.clearfix:after {
  content:"";
  display:block;
  clear:both;
  height:0;
}
