/*============================
  sub-visual
============================*/
.sub-mv{
  width: 100%;
  height: 500px;
  position: relative;
}
.sub-mv__img{
  width: 100%;
  height: inherit;
  margin: 0 0 0 auto;
}
.sub-mv__img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
@media screen and (max-width:1024px) {
  .sub-mv{
    height:300px;
    margin-top: 81px;
  }
}
@media screen and (max-width: 768px) {
  .sub-mv{
    height: 250px;
	}
}

.sub-mv__title {
  display: inline-block;
  color: #fff;
  position: absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) ;
  z-index: 30;
}
.sub-mv__title h1{
  display: inline-block;
  font-size: 48px;
  font-weight: bold;
  padding-bottom:15px;
  border-bottom: 4px double #fff;    
  font-family: "Zen Old Mincho", serif;
}

@media screen and (max-width:1280px) {
  .sub-mv__title{
    left:60%;
  }
}
@media screen and (max-width:1024px) {
   .sub-mv__title{
    left:50%;
  }
  .sub-mv__title h1{
    font-size:40px;
  }
}
@media screen and (max-width: 768px) {
  .sub-mv__title h1{
    font-size: 32px;
    white-space: nowrap;
  }
}


.title-02{
  padding-bottom: 15px;
  border-bottom: 1px solid #180f06;
  color: #f3691e;
}
.title-02 .font-min{
  display: inline-block;
  font-size: 32px;
  font-weight: bold;
  position: relative;
}
.title-02 .font-min::before{
  content: "";
  width: 150px;
  height: 150px;
  position: absolute;
  top: -70px;
  right: -80px;
  background: url(../images/ttl_shape_br.png) no-repeat center top;
  background-size: contain;
  z-index: -1;
  opacity: 0.2;
}
@media screen and (max-width: 1024px) {
  .title-02 .font-min{
    font-size: 24px;
  }
  .title-02 .font-min::before{
    content: "";
    width: 120px;
    height: 120px;
    top: -50px;
    right: -60px;
  }
}
@media screen and (max-width: 599px) {
  .title-02 .font-min{
    font-size: 20px;
  }
  .title-02 .font-min::before{
    content: "";
    width: 80px;
    height: 80px;
    top: -30px;
    right: -30px;
  }
}




/*============================
    concept
============================*/
.sub-concept .copy{
  display: inline-block;
  font-size: 41px;
  padding: 5px 15px;
  background: #fff;
  margin-bottom: 5px;
}

.sub-concept .textBox__img img,
.sub-kodawari .textBox__img img{
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

/* check item */
.concept__head{
  max-width: 800px;
  margin-inline: auto;
}
.check__item {
  font-weight: bold;
  position: relative;
}
.check__item::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  margin-right: 0.5em;
  background: url(../images/icon_check.png) center center/contain no-repeat;
}
.check__items .detail{
  margin-bottom: 10px;
  letter-spacing: 0;
} 

@media screen and (max-width:768px) {
  .sub-concept .copy{
    font-size: 24px;
  }
  .sub-concept .textBox__img img,
　.sub-kodawari .textBox__img img{
    aspect-ratio: 3 / 2;
    object-fit: cover;
  }
}


/*============================
  menu
============================*/
.menu__title,.menu__title_wh{
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 10px;
  border-bottom: 1px solid #180f06;
  color: #f3691e;
}
.menu__title_wh{
  color: #fff;
  border-bottom: 1px solid #fff;
}

.menu__item {
  background: #fff;
  padding: 30px;
}
.menu__item .textBox{
  align-items: flex-start;
}
.menu__dl{
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px solid #eee;
}
.menu__name {
  display: inline-block;
  font-size: 18px;
  letter-spacing: 0;
  font-weight: bold;
  width: calc(100% - 125px);
  vertical-align: top;
}
.menu__price {
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  width: 115px;
  letter-spacing: 0;
  text-align: right;
}

.textBox.white_box{
  align-items: stretch;
  background: none;
  padding: 0;
}
.white_box .textarea{
  text-align: center;
  background: #fff;
  padding: 30px 20px;
}
.white_box .f-20{
  font-weight: bold;
  text-align: center;
  display: inline-block;
  padding-bottom: 10px;
  border-bottom: 4px double #180f06;
      letter-spacing: 0;
      color: #f3691e;
}
.white_box .f-20.sp{
  display:none;
}

.white_box{
  background: #fff;
  padding: 50px 30px;
}

/* プリン画像の縦横比 */
.sub-menu .flex__item .flex__img img{
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

@media screen and (max-width:1024px) {
  .menu__title, .menu__title_wh{
    font-size: 20px;
  }
}
@media screen and (max-width:768px) {
  .menu__item .textBox{
    row-gap:20px;
  }
  .menu__item .textBox__img{
    margin-bottom:0;
  }
  .menu__name{
    font-size: 15px;
    width: calc(100% - 125px);
  }
  .menu__price{
    font-size: 15px;
    width: 110px;
  }
  .textBox.white_box{
    row-gap:20px;
  }
}
@media screen and (max-width:599px) {
  .menu__title, .menu__title_wh{
    font-size: 18px;
  }
  .menu__item{
    padding: 30px 15px;
  }
  .white_box .textarea{
    padding: 30px 15px;
  }
  .white_box .textarea .lh{
    text-align: left;
    letter-spacing:0;
  }
  .white_box .f-20.pc{
  display:none;
  }
  .white_box .f-20.sp{
  display:inline-block;
  }
}


/*============================
  course
============================*/
.menu__th {
  display: inline-block;
  font-weight: bold;
  width: 150px;
  vertical-align: top;
}
.menu__td {
  display: inline-block;
  font-weight: bold;
  width: calc(100% - 160px);
  letter-spacing: 0;
}
@media screen and (max-width:768px) {
  .menu__th {
    width: 130px;
  }
  .menu__td {
    width: calc(100% - 140px);
  }
  .menu__item .textBox:nth-of-type(2) .textarea{
    margin-bottom:20px;
  }
}


/* padding調整 */
.sub-kodawari .inner,
.sub-limited .inner{
  padding-top: 0;
}

/*============================
    shop
============================*/

.c_01{
background: url(../images/20240220175328902506.png) no-repeat center center / cover;
  width:100%;
}

.g-map,
.g-map iframe{
  width: 100%;
  height: 400px;
}
@media screen and (max-width:1024px) {
  .g-map,
  .g-map iframe{
    width: 100%;
    height: 300px;
  }
  .shop_02 img{
    width: 100%;
    height: 300px;
  }
}
@media screen and (max-width:768px) {

  .g-map,
  .g-map iframe{
    width: 100%;
    height: 250px;
  }
  .shop_02 img{
    width: 100%;
    height: 300px;
  }
}

@media screen and (max-width:1024px) {
  .table_02 .tr{
  padding: 2px 0px;
  border-bottom: 1px solid #073c84;
  border-spacing: 0px 5px; 
  display: block;
}
  .table_02 .th{
    width: 100%;
    padding:12px 10px 12px 10px; 
    font-weight: bold; 
    vertical-align: middle; 
    background:#073c84;
    text-align: left; 
    color: #fff; 
    display: block;
}
    .table_02 .td{
      width: 100%; 
      padding: 5px 20px 12px 10px; 
      vertical-align: top; 
      background: #fff;
}
}
@media screen and (max-width:768px) {
    .table_02 .tr{
  padding: 2px 0px;
  border-bottom: 1px solid #073c84;
  border-spacing: 0px 5px; 
  display: block;
  margin:0 auto;
}
  .table_02 .th{
    width: 94%;
    margin:0 auto;
    padding: 8px 10px 15px 15px; 
    font-weight: bold; 
    vertical-align: middle; 
    background:#073c84;
    text-align: left; 
    color: #fff; 
    display: block;
}
    .table_02 .td{
    width: 94%;
    margin:0 auto;
    padding: 5px 20px 12px 10px; 
    vertical-align: top; 
    background: #fff;
}
}

.m_color{
  color: #f3691e;
}

.r_txt{
  margin: 0 auto 10px;
  width: fit-content;
  padding-left: 30px;
}

.r_gold{
  background: url(../images/r_gold.png) no-repeat center left / 20px;
}

.r_silver{
  background: url(../images/r_silver.png) no-repeat center left / 20px;
}

.r_copper{
  background: url(../images/r_copper.png) no-repeat center left / 20px;
}

@media screen and (max-width:599px) {
  .r_txt{
    margin: 0 0 6px;
    width: fit-content;
  }
}

.c13501 {
   gap:20px;
  }

.anywhere {
  overflow-wrap: anywhere;
}
@media screen and (max-width:768px) {
  .c13501 {
    flex-direction: column;
  }
  .c9809,.c14583 {
    max-width: 100% !important;
  }
}