@charset "UTF-8";
/*=================================
	overwrite
===================================*/
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;600;700&family=Zen+Old+Mincho&display=swap");

em {
  font-style: normal; }

body .main {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

article a {
  transition: .2s linear; }

article a:hover {
  opacity: 0.6; }

.w-90per {
	width: 90%;
}
.mw-900 {
	max-width: 900px;
}


/* .category_outer {
    padding-top: 100px;
} */
.category {
  background: #fff;
  margin: auto auto 0;
  padding-bottom: 2em; }

@media print, screen and (max-width: 768px) {
  .category_outer {
    padding-top: 85px; }

  .category {
    width: 95%; }
}
@media print, screen and (max-width: 640px) {
  .category_outer {
    padding-top: 76px; } }
/*=======================
	// grand-header 
=====================*/
#grand-header {
  height: 40px;
  margin-bottom: 0;
  background-color: #3c3c41;
  display: flex;
  justify-content: center;
  align-items: center; }

#grand-header a {
  width: 92px; }

#grand-header a img {
  width: 100%; }

@media print, screen and (min-width: 1000px) {
  #grand-header {
    height: 60px; }

  #grand-header a {
    width: 132px; } }
/*===================
	// font
=====================*/
/*100 - 900*/
/* .noto-sans-jp-<uniquifier> {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
} */
.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal; }

.noto-sans-jp.fw600 {
  font-weight: 600; }

.noto-sans-jp.fw900 {
  font-weight: 900; }

/*=================================
	// note arrow
===================================*/
.arrow_r.medium {
  margin-right: .25em;
  width: 10px;
  margin-top: -3px; }

.arrow {
  width: .5em;
  height: .5em;
  margin-right: 5px;
  display: inline-block;
  vertical-align: top; }

/*===================
	// note common
=====================*/
/* .flexbox {
    display: flex;
    justify-content: space-between;
} */
/*=====================
	// note color
=======================*/
.red-f00 {
  color: #f00; }

.red-2 {
  color: #ee343d; }

.orange {
  /* color: #ff6224; */
  color: #fa7c00; }

.orange2 {
  color: #ff5917; }

.purple {
  color: #852D6E; }

.bg-purple {
  background-color: #efdaf7; }

.bg-purple2 {
  background-color: #852D6E; }

.gray {
  color: #999; }

.text-999 {
  color: #999; }

.text-666 {
  color: #666; }

.text-333 {
  color: #333; }

.border-purple2-3px {
  border: #852D6E 3px solid; }

/*==================
	
======================*/
.diagonal-bg {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  /* clip-path: polygon(0 20%, 100% 0, 100% 80%, 0 100%); */
  /* clip-path: polygon(0 10%, 100% 0, 100% 90%, 0 100%); */
  /* clip-path: polygon(0 10%, 100% 0, 100% 90%, 0 100%); */
  clip-path: polygon(0 5%, 100% 0, 100% 90%, 0 95%);
  /* 左上 → 右上 → 右下 → 左下 の順に頂点を指定 */
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

/*==================
	// layout
======================*/
.bg-all {
  background-color: #ffe000;
  background: url('../img/all_bg.png') repeat-y top center;
	background-size: contain;
}

.lv-02 {
  width: 100%;
  margin: auto; 
  background: url('../img/bg_title_1.png') no-repeat top center;
  background-size: contain; }

/*==================
	// id #title
======================*/
/* 
#title {
    border: #f00 thin solid;
} */
#title .link-to-top {
  position: absolute;
  top: -2px;
  left: 0%;
  left: auto;
  z-index: 100; }

#title .inside .link-to-top a {
  font-size: 1.1rem;
  padding: .25em .5em .15em;
  display: inline-block; }

#title .tax {
  padding-top: 0; }

.link ul {
  padding: 0; }

.link li {
  width: 95%; }

/* .link a {
    padding: 1.4rem 0;
} */
.link a::after {
  border-bottom: 15px solid #F8C5A0;
  border-left: 15px solid transparent; }

#title {
  position: relative; }

#title .link-to-top {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10; }

#title .inside .link-to-top a {
  font-size: 1.3rem;
  color: #fff;
  padding: .5em 1em .25em;
  display: inline-block;
  background-color: #666; }

#title .place {
  margin: auto auto 1em;
  padding: 0;
  font-size: 3.6rem;
  text-align: center;
  display: block;
  overflow: hidden; }

#title .place span {
  padding: .15em 0 0;
  display: inline-block; }

#title .place .place_name {
  width: 80%; }

#title .tax {
  text-align: right;
  font-size: 1.2rem;
  margin-bottom: 0em; }

.link a {
  color: #fff;
  background-color: #000;
  border-radius: 3em; }

#h1-mob {
  display: block; }

#h1-pc {
  display: none; }

@media screen and (min-width: 1000px) {
  #title {
    background: url(../img/bg_title_1.png) no-repeat top center;
	background-size: contain; }

  #title h1 {
    margin-left: auto;
    margin-right: auto;
    padding-top: 45px; }

  #h1-mob {
    display: none; }

  #h1-pc {
    display: block; } }
@media screen and (min-width: 1660px) {
  #title h1 {
    margin-left: auto;
    margin-right: auto;
    padding-top: 45px; } }
/*=================================
	.title-notice
===================================*/
.outer-title-notice {
  /* width: 80%; */
  width: 90%;
  max-width: 900px;
  position: relative; }

.title-notice {
  width: 90%;
  max-width: 900px;
  border-radius: 15px;
  background: #fff;
  position: relative;
  overflow: hidden; }

.outer-title-notice .title-notice {
  width: 100%; }

.title-notice h4 {
  padding: 20px 0;
  color: #fff; }

.title-notice .inside {
  width: 90%;
  margin-left: auto;
  margin-right: auto; }

/* /////  #moritown /////  */
.outer-title-notice .kaisai {
  color: #d01b2c;
  width: 80px;
  height: 80px;
  background-color: #ffea60;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -45px;
  left: -10px;
  z-index: 1; }

#moritown h4 {
  background-color: #1c4c96;
  /*text-shadow: 2px 2px 0 #8f0a00;*/ }

#reserve h4 {
  background-color: #00a0e9;
  /*text-shadow: 2px 2px 0 #311f0c;*/ }

#reserve .link a {
  background-color: #e5b020;
  /* text-shadow: 2px 2px 0 #583716; */
  box-shadow: 2px 2px 0 0 #d99901; }

@media screen and (min-width: 1000px) {
  .outer-title-notice .kaisai {
    width: 120px;
    height: 120px;
    top: -30px;
    left: 12%;
    z-index: 1; }

  .title-notice .inside {
    width: 80%; } }
/*=================================
	// id #local-nav
===================================*/
#local-nav a {
  width: 100%;
  height: 100%;
  color: #fff;
  background-color: #666;
  border-radius: 10px;
  display: block; }

#local-nav li:first-child a {
  /* background-color: #ed2020; */
  background-color: #79c49b;
  box-shadow: 3px 3px 0 0 #2bb067; }

#local-nav li:nth-child(2) a {
  background-color: #a4ce69;
  box-shadow: 3px 3px 0 0 #5d9c06; }

#local-nav li:nth-child(3) a {
  background-color: #f3f08d;
  box-shadow: 3px 3px 0 0 #eab600; }

#local-nav a .bg {
  width: 100%;
  height: 100%;
  background: url(../img/bg-h2-mob.png) no-repeat center center;
  background-size: 100%;
  display: flex;
  align-items: center;
  justify-content: center; }

#local-nav li:first-child a .bg {
  -webkit-text-stroke: 4px #2bb067;
  paint-order: stroke; }

#local-nav li:nth-child(2) a .bg {
  -webkit-text-stroke: 4px #5d9c06;
  paint-order: stroke; }

#local-nav li:nth-child(3) a .bg {
  -webkit-text-stroke: 4px #e48c01;
  paint-order: stroke; }

#local-nav li {
  height: 80px; }

@media screen and (min-width: 640px) {
  #local-nav li {
    height: 140px; }

  #local-nav a .bg {
    background: url(../img/bg-h2-mob.png) no-repeat top center;
    background-size: contain; } }
/*=================================
	// class .contents
===================================*/
.contents {
  margin-bottom: 60px;
  padding-bottom: 90px; }

.contents img {
  width: 100%; }

.contents .tax {
  width: 98%;
  max-width: 1260px;
  margin: auto auto 2em;
  font-size: 1.2rem;
  text-align: right; }

.contents h2 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  /* height: 150px; */
  height: 100px;
  color: #fff; }

.contents h2 .bg-img {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/bg-h2-mob.png) no-repeat top center;
  background-size: 100%; }

#tokka h2 {
  background-color: #d6333b; }

#chair h2 {
  background-color: #a54a2f;
  /* text-shadow: 2px 2px 0 #632816; */ }

#clv h2 {
  background-color: #5a3787;
  /* text-shadow: 2px 2px 0 #06295f; */ }

#standard h2 {
  background-color: #0847a5;
  /* text-shadow: 2px 2px 0 #06295f; */ }

.contents h3 {
  width: 80%;
  margin: auto auto 15px;
  color: #cd0000;
  margin-bottom: 1.4em;
  padding: 15px 0;
  font-size: 2.9rem;
  font-weight: normal;
  text-align: center;
  border-top: #cd0000 thin solid;
  border-bottom: #cd0000 thin solid; }

.contents h3 span {
  display: block; }

.contents h3 .jp {
  font-size: 2.0rem; }

.contents h3 span.sub {
  font-size: 1.8rem;
  display: block; }

.contents .lead {
  width: 95%;
  margin: auto auto 30px; }

.contents .lead p {
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 1em; }

.contents .lead .tax {
  font-size: 1.2rem;
  text-align: right; }

.link-lineup a {
  width: 50%;
  margin: auto auto 3em;
  padding: 1.5em 0;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  display: block;
  background: #C5343B url(../img/tokka_h2.png) repeat;
  text-shadow: 0 1px 3px #b3365d; }

@media screen and (min-width: 1000px) {
  .contents h2 {
    height: 220px; }

  .contents h2 .bg-img {
    background: url(../img/bg-h2.png) no-repeat center center;
    background-size: 100%; } }
.leadtxt {
  width: 70%;
  display: block;
  margin: 0 auto;
  font-size: 19px;
  padding: 10px 0 30px 0;
  font-weight: bold;
  line-height: 1.5; }

.leadtxt h4 {
  text-align: center;
  font-weight: bold;
  margin: 0 auto;
  margin-bottom: 10px;
  letter-spacing: 1px; }

#leadtxt-01 {
  width: 98%;
  display: block;
  margin: 0 auto;
  margin-bottom: 1em;
  font-size: 16px;
  text-align: center; }

.leadtxt #red {
  width: 93%;
  border: 1px solid #000;
  padding: 10px;
  margin: 0 auto;
  font-weight: normal;
  font-size: 14px; }

.leadtxt #red span {
  color: orangered;
  font-weight: bold; }

@media print, screen and (max-width: 900px) {
  .link-lineup a {
    width: 90% !important; }

  .contents h3 .jp {
    font-size: 1.2rem; } }
@media print, screen and (max-width: 768px) {
  .contents {
    padding: 1.5em 0 45px 0;
    /*1.5em 0*/ }

  .contents h2 span {
    margin-left: 0;
    display: block; }

  .sub_category h3 {
    font-size: 2.2rem; }

  .contents .lead p {
    width: 95%;
    margin: auto;
    font-size: 1.4rem; }

  .contents h3 {
    font-size: 2.0rem;
    /*2.2*/ }

  .contents h3 span.sub {
    font-size: 1.4rem; }

  .leadtxt {
    width: 90%;
    /* margin-bottom: 30px; */ }

  .summary {
    width: 90%;
    margin: 0 auto;
    font-size: 16px; } }
@media print, screen and (max-width: 640px) {
  .ledtxtmob {
    display: block; }

  .leadtxt h4 {
    text-align: center;
    font-size: 18px;
    /*22*/ } }
/*==================================
	// id #access
====================================*/
/* #access {
    width: 98%;
    max-width: 1260px;
    margin: auto;
} */
/* #access .inside {
    display: flex;
    justify-content: space-between;
} */
#access .mapbox {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1440px; }

#access .mapbox iframe {
  width: 100%;
  margin-bottom: 10px;
  /* height: 380px; */ }

#access .txtbox {
  width: 57%;
  padding: 1em 0 0;
  font-size: 1.6rem; }

#access h4 {
  color: #c8373c;
  font-size: 3.0rem;
  margin-bottom: 0; }

#access .telephone {
  font-size: 2.4rem;
  display: block; }

/********************** 768 ************************/
@media print, screen and (max-width: 768px) {
  #access .inside {
    display: block; }

  #access .mapbox {
    width: 90%;
    margin: auto; }

  #access .mapbox iframe {
    width: 100%;
    height: 300px; }

  #access .txtbox {
    width: 95%;
    margin: auto; }

  #access .txtbox p {
    font-size: 1.4rem; }

  #access h4 {
    font-size: 2.2rem; }

  #access .telephone {
    font-size: 2.0rem; } }
/*====================================================
	advance_notice
=====================================================*/
.advance_notice {
  font-size: 1.4rem;
  text-align: center;
  background: #fff;
  padding: 10em 0 10em; }

.advance_notice p {
  margin-bottom: 1em; }

.advance_notice a {
  display: block;
  margin-bottom: 1em; }

.advance_notice .shoplogo {
  width: 20%;
  max-width: 250px;
  margin: auto; }

/********************** 768 ************************/
@media print, screen and (max-width: 768px) {
  .advance_notice .shoplogo {
    width: 50%;
    max-width: 50%;
    margin: auto; } }
/*=================================

	// 特価品値段部分の修正
    （価格改定時期がサイト掲載期間とかぶるため特価表示にすることになったから）
    
===================================*/
/* #tokka .red-price {
    font-size: 26px;
    color: #f00;
}

#tokka .red-price small,
#up .red-price small {
    font-size: 1.4rem;
    color: #fff;
    background: #f00;
    border-radius: 50px;
    margin-right: 3px;
    padding: 2px 11px 0;
    font-weight: normal;
    display: inline-block;
    vertical-align: middle;
}

 */
/*=================================

	present
    
===================================*/
.present h5 .bg {
  width: 100%;
  height: 100%;
  display: block;
  background: url(../img/bg-h2.png) repeat-x center center;
  background-size: contain;
  /* border: #f00 thin solid; */ }

/*=====================
	// 202603 追記分
=======================*/

  #wrapper .bg-all .bg-title-2 #title {
    background-size: contain;
    background-position-y: -20px; }
    #wrapper .bg-all .bg-title-2 #title #moritown h4 {
      background: #3cbee7;
      text-shadow: 2px 2px 0 #3693af; }
    #wrapper .bg-all .bg-title-2 #title #reserve h4 {
      background: #ea5514;
      text-shadow: 2px 2px 0 #af542c; }
    #wrapper .bg-all .bg-title-2 #title #reserve a {
      background: #ff7437;
      box-shadow: 2px 2px 0 0 #cc5320; }
    #wrapper .bg-all .bg-title-2 #title #reserve .info-tel a {
      background: none !important;
      box-shadow: none !important; }
    #wrapper .bg-all .bg-title-2 #title #local-nav ul li:nth-of-type(1) a {
      background-color: #79c49b;
      box-shadow: 3px 3px 0 0 #2bb067; }
      #wrapper .bg-all .bg-title-2 #title #local-nav ul li:nth-of-type(1) a span {
        text-shadow: 2px 2px 0 #2bb067; }
    #wrapper .bg-all .bg-title-2 #title #local-nav ul li:nth-of-type(2) a {
      background-color: #a4ce69;
      box-shadow: 3px 3px 0 0 #5d9c06; }
      #wrapper .bg-all .bg-title-2 #title #local-nav ul li:nth-of-type(2) a span {
        text-shadow: 2px 2px 0 #5d9c06; }
    #wrapper .bg-all .bg-title-2 #title #local-nav ul li:nth-of-type(3) a {
      background-color: #f3f08d;
      box-shadow: 3px 3px 0 0 #eab600; }
      #wrapper .bg-all .bg-title-2 #title #local-nav ul li:nth-of-type(3) a span {
        text-shadow: 2px 2px 0 #eab600; }
  @media screen and (max-width: 999px) {
    #wrapper .bg-all .contents h2 span {
      font-size: clamp(24px, 5vw, 32px); } }
  #wrapper .bg-all .contents #elc h2 {
    background: #79c49b;
    text-shadow: 5px 5px 0 #2bb067;
	-webkit-text-stroke: 4px #2bb067;
	paint-order: stroke; }
    @media screen and (max-width: 999px) {
      #wrapper .bg-all .contents #elc h2 span {
        font-size: clamp(15px, 3.4vw, 26px); } }
  @media screen and (max-width: 999px) {
    #wrapper .bg-all .contents #elc .box-1 {
      width: 85%;
      margin: 0 auto; } }
  #wrapper .bg-all .contents #elc .box-1 .item {
    justify-content: center; }
    #wrapper .bg-all .contents #elc .box-1 .item-photo {
      width: 50%;
      max-width: 420px; }
      @media screen and (max-width: 999px) {
        #wrapper .bg-all .contents #elc .box-1 .item-photo {
          width: 80%;
          max-width: 690px; } }
    #wrapper .bg-all .contents #elc .box-1 .item-txt {
      width: fit-content; }
      @media screen and (max-width: 999px) {
        #wrapper .bg-all .contents #elc .box-1 .item-txt .spec dt {
          font-size: 1.6rem !important; } }
  #wrapper .bg-all .contents #elc .box-1 .speciality_2 {
    width: fit-content;
    padding: 6px 20px; }
  #wrapper .bg-all .contents #tokka h2 {
    background: #a4ce69;
    text-shadow: 5px 5px 0 #5d9c06;
	-webkit-text-stroke: 4px #5d9c06;
	paint-order: stroke; }
  #wrapper .bg-all .contents #standard h2 {
    background: #f3f08d;
    text-shadow: 5px 5px 0 #e48c01;
	-webkit-text-stroke: 4px #e48c01;
	paint-order: stroke; }
